Conversation trees (#223) (#807)
* work on branching
* branching
* work on input field
* wip
* wip
* helper stuff
* pass tests
* add type guards and clean up type requirements
* fixed shared conv type
* more helpers stuff
* clean up code
* addChildren helper
* addSibling
* add test for addSibling & refacto addChildren tests
* backend work pt. 1
* backend done
* add children property to messages for easier frontend rendering
* fix message id type rail
* front-end work on simple linear conversation
* fix title generation
* convert conversations on post
* server side retry works with branching
* clean up buttons
* fix retry feature backend
* Send new messages in any subtree
* make edit previous prompts feature work
* fix padding
* revert unneeded changes
* bring back pending message
* fix front-end streaming
* fix initial message
* Revert "fix initial message"
This reverts commit 6257fe8789c52a20e7506aa453efda55c16e95bb.
* Fix bug subtree state refresh
* fix continue feature on shared conversations
* fix websearch updates
* Fix first message streaming
* fix fornt-end websearch updates
* fix loading icon
* fix bottom padding
* move children nav to below the message
* Show current message in continue & retry
* children nav styling
* you can now edit the first message
* bottom padding on assistant message
* fix test
* lint
* use <form>
* tree navigation
* misc
* mobile: hide download link
* forgot to implem continue feature lol
* fix continue feature on llama 70b
* fix edit mode
* disable submit button & nav when loading
* fix bug when interrupting
* hide arrows in edit mode
* forgot to reset edit mode when submitting retry
* reset editing when switching conversations
---------
Co-authored-by: Victor Mustar <victor.mustar@gmail.com>