🧪 feat: Experimental: Enable Switching Endpoints Mid-Conversation (#1483)

* fix: load all existing conversation settings on refresh

* refactor(buildDefaultConvo): use `lastConversationSetup.endpointType` before `conversation.endpointType`

* refactor(TMessage/messageSchema): add `endpoint` field to messages to differentiate generation origin

* feat(useNewConvo): `keepLatestMessage` param to prevent reseting the `latestMessage` mid-conversation

* style(Settings): adjust height styling to allow more space in dialog for additional settings

* feat: Modular Chat: experimental setting to Enable switching Endpoints mid-conversation

* fix(ChatRoute): fix potential parsing issue with tPresetSchema
This commit is contained in:
Danny Avila 2024-01-03 19:17:42 -05:00 committed by GitHub
parent 4befee829b
commit e1a529b5ae
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
16 changed files with 129 additions and 26 deletions

View file

@ -50,6 +50,25 @@ const autoScroll = atom<boolean>({
] as const,
});
const modularChat = atom<boolean>({
key: 'modularChat',
default: localStorage.getItem('modularChat') === 'true',
effects: [
({ setSelf, onSet }) => {
const savedValue = localStorage.getItem('modularChat');
if (savedValue != null) {
setSelf(savedValue === 'true');
}
onSet((newValue: unknown) => {
if (typeof newValue === 'boolean') {
localStorage.setItem('modularChat', newValue.toString());
}
});
},
] as const,
});
export default {
abortScroll,
optionSettings,
@ -58,4 +77,5 @@ export default {
showBingToneSetting,
showPopover,
autoScroll,
modularChat,
};