mirror of
https://github.com/voideditor/void
synced 2026-05-24 09:58:23 +00:00
fix annoying refactor
This commit is contained in:
parent
971ce88df2
commit
6d6e2fa974
3 changed files with 16 additions and 15 deletions
|
|
@ -979,7 +979,7 @@ export const SidebarChat = () => {
|
|||
const previousMessages = currentThread?.messages ?? []
|
||||
|
||||
const selections = currentThread.state.stagingSelections
|
||||
const setSelections = (s: StagingSelectionItem[]) => { chatThreadsService.setCurrentThreadStagingSelections(s) }
|
||||
const setSelections = (s: StagingSelectionItem[]) => { chatThreadsService.setCurrentThreadState({ stagingSelections: s }) }
|
||||
|
||||
// stream state
|
||||
const currThreadStreamState = useChatThreadsStreamState(chatThreadsState.currentThreadId)
|
||||
|
|
|
|||
|
|
@ -141,8 +141,8 @@ registerAction2(class extends Action2 {
|
|||
let setSelections = (s: StagingSelectionItem[]) => { }
|
||||
|
||||
if (focusedMessageIdx === undefined) {
|
||||
selections = chatThreadService.getCurrentThreadStagingSelections()
|
||||
setSelections = (s: StagingSelectionItem[]) => chatThreadService.setCurrentThreadStagingSelections(s)
|
||||
selections = chatThreadService.getCurrentThreadState().stagingSelections
|
||||
setSelections = (s: StagingSelectionItem[]) => chatThreadService.setCurrentThreadState({ stagingSelections: s })
|
||||
} else {
|
||||
selections = chatThreadService.getCurrentMessageState(focusedMessageIdx).stagingSelections
|
||||
setSelections = (s) => chatThreadService.setCurrentMessageState(focusedMessageIdx, { stagingSelections: s })
|
||||
|
|
|
|||
|
|
@ -94,13 +94,18 @@ export type ChatThreads = {
|
|||
state: {
|
||||
stagingSelections: StagingSelectionItem[];
|
||||
focusedMessageIdx: number | undefined; // index of the message that is being edited (undefined if none)
|
||||
isCheckedOfSelectionId: { [selectionId: string]: boolean };
|
||||
isCheckedOfSelectionId: { [selectionId: string]: boolean }; // TODO
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
type ThreadType = ChatThreads[string]
|
||||
|
||||
const defaultThreadState: ThreadType['state'] = {
|
||||
stagingSelections: [],
|
||||
focusedMessageIdx: undefined,
|
||||
isCheckedOfSelectionId: {}
|
||||
}
|
||||
|
||||
export type ThreadsState = {
|
||||
allThreads: ChatThreads;
|
||||
|
|
@ -124,11 +129,7 @@ const newThreadObject = () => {
|
|||
createdAt: now,
|
||||
lastModified: now,
|
||||
messages: [],
|
||||
state: {
|
||||
stagingSelections: [],
|
||||
focusedMessageIdx: undefined,
|
||||
isCheckedOfSelectionId: {}
|
||||
},
|
||||
state: defaultThreadState,
|
||||
|
||||
} satisfies ChatThreads[string]
|
||||
}
|
||||
|
|
@ -159,8 +160,8 @@ export interface IChatThreadService {
|
|||
// exposed getters/setters
|
||||
getCurrentMessageState: (messageIdx: number) => UserMessageState
|
||||
setCurrentMessageState: (messageIdx: number, newState: Partial<UserMessageState>) => void
|
||||
getCurrentThreadStagingSelections: () => StagingSelectionItem[]
|
||||
setCurrentThreadStagingSelections: (stagingSelections: StagingSelectionItem[]) => void
|
||||
getCurrentThreadState: () => ThreadType['state']
|
||||
setCurrentThreadState: (newState: Partial<ThreadType['state']>) => void
|
||||
|
||||
|
||||
// call to edit a message
|
||||
|
|
@ -589,13 +590,13 @@ class ChatThreadService extends Disposable implements IChatThreadService {
|
|||
|
||||
}
|
||||
|
||||
getCurrentThreadStagingSelections = () => {
|
||||
getCurrentThreadState = () => {
|
||||
const currentThread = this.getCurrentThread()
|
||||
return currentThread.state.stagingSelections
|
||||
return currentThread.state
|
||||
}
|
||||
|
||||
setCurrentThreadStagingSelections = (stagingSelections: StagingSelectionItem[]) => {
|
||||
this._setCurrentThreadState({ stagingSelections })
|
||||
setCurrentThreadState = (newState: Partial<ThreadType['state']>) => {
|
||||
this._setCurrentThreadState(newState)
|
||||
}
|
||||
|
||||
// gets `staging` and `setStaging` of the currently focused element, given the index of the currently selected message (or undefined if no message is selected)
|
||||
|
|
|
|||
Loading…
Reference in a new issue