@assistant-ui/react 0.5.100 → 0.7.1
Sign up to get free protection for your applications and to get access to all the features.
- package/dist/api/AssistantRuntime.d.ts +6 -86
- package/dist/api/AssistantRuntime.d.ts.map +1 -1
- package/dist/api/AssistantRuntime.js +0 -8
- package/dist/api/AssistantRuntime.js.map +1 -1
- package/dist/api/AssistantRuntime.mjs +0 -8
- package/dist/api/AssistantRuntime.mjs.map +1 -1
- package/dist/api/AttachmentRuntime.d.ts +4 -16
- package/dist/api/AttachmentRuntime.d.ts.map +1 -1
- package/dist/api/AttachmentRuntime.js.map +1 -1
- package/dist/api/AttachmentRuntime.mjs.map +1 -1
- package/dist/api/ComposerRuntime.d.ts +15 -131
- package/dist/api/ComposerRuntime.d.ts.map +1 -1
- package/dist/api/ComposerRuntime.js +4 -84
- package/dist/api/ComposerRuntime.js.map +1 -1
- package/dist/api/ComposerRuntime.mjs +4 -84
- package/dist/api/ComposerRuntime.mjs.map +1 -1
- package/dist/api/ContentPartRuntime.d.ts +2 -6
- package/dist/api/ContentPartRuntime.d.ts.map +1 -1
- package/dist/api/ContentPartRuntime.js.map +1 -1
- package/dist/api/ContentPartRuntime.mjs.map +1 -1
- package/dist/api/MessageRuntime.d.ts +8 -19
- package/dist/api/MessageRuntime.d.ts.map +1 -1
- package/dist/api/MessageRuntime.js +11 -7
- package/dist/api/MessageRuntime.js.map +1 -1
- package/dist/api/MessageRuntime.mjs +10 -6
- package/dist/api/MessageRuntime.mjs.map +1 -1
- package/dist/api/RuntimePathTypes.d.ts +33 -33
- package/dist/api/RuntimePathTypes.d.ts.map +1 -1
- package/dist/api/RuntimePathTypes.js.map +1 -1
- package/dist/api/ThreadListItemRuntime.d.ts +12 -8
- package/dist/api/ThreadListItemRuntime.d.ts.map +1 -1
- package/dist/api/ThreadListItemRuntime.js +10 -6
- package/dist/api/ThreadListItemRuntime.js.map +1 -1
- package/dist/api/ThreadListItemRuntime.mjs +10 -6
- package/dist/api/ThreadListItemRuntime.mjs.map +1 -1
- package/dist/api/ThreadListRuntime.d.ts +10 -28
- package/dist/api/ThreadListRuntime.d.ts.map +1 -1
- package/dist/api/ThreadListRuntime.js +23 -26
- package/dist/api/ThreadListRuntime.js.map +1 -1
- package/dist/api/ThreadListRuntime.mjs +23 -26
- package/dist/api/ThreadListRuntime.mjs.map +1 -1
- package/dist/api/ThreadRuntime.d.ts +53 -211
- package/dist/api/ThreadRuntime.d.ts.map +1 -1
- package/dist/api/ThreadRuntime.js +2 -94
- package/dist/api/ThreadRuntime.js.map +1 -1
- package/dist/api/ThreadRuntime.mjs +2 -94
- package/dist/api/ThreadRuntime.mjs.map +1 -1
- package/dist/api/index.d.ts +1 -0
- package/dist/api/index.d.ts.map +1 -1
- package/dist/api/index.js.map +1 -1
- package/dist/context/providers/AssistantRuntimeProvider.d.ts.map +1 -1
- package/dist/context/providers/AssistantRuntimeProvider.js +0 -1
- package/dist/context/providers/AssistantRuntimeProvider.js.map +1 -1
- package/dist/context/providers/AssistantRuntimeProvider.mjs +0 -1
- package/dist/context/providers/AssistantRuntimeProvider.mjs.map +1 -1
- package/dist/context/providers/TextContentPartProvider.d.ts.map +1 -1
- package/dist/context/providers/TextContentPartProvider.js +0 -2
- package/dist/context/providers/TextContentPartProvider.js.map +1 -1
- package/dist/context/providers/TextContentPartProvider.mjs +0 -2
- package/dist/context/providers/TextContentPartProvider.mjs.map +1 -1
- package/dist/context/providers/ThreadListItemRuntimeProvider.d.ts +1 -4
- package/dist/context/providers/ThreadListItemRuntimeProvider.d.ts.map +1 -1
- package/dist/context/providers/ThreadRuntimeProvider.d.ts.map +1 -1
- package/dist/context/providers/ThreadRuntimeProvider.js +1 -13
- package/dist/context/providers/ThreadRuntimeProvider.js.map +1 -1
- package/dist/context/providers/ThreadRuntimeProvider.mjs +1 -13
- package/dist/context/providers/ThreadRuntimeProvider.mjs.map +1 -1
- package/dist/context/react/AssistantContext.d.ts +10 -120
- package/dist/context/react/AssistantContext.d.ts.map +1 -1
- package/dist/context/react/AssistantContext.js +0 -15
- package/dist/context/react/AssistantContext.js.map +1 -1
- package/dist/context/react/AssistantContext.mjs +0 -11
- package/dist/context/react/AssistantContext.mjs.map +1 -1
- package/dist/context/react/AttachmentContext.d.ts +32 -48
- package/dist/context/react/AttachmentContext.d.ts.map +1 -1
- package/dist/context/react/ComposerContext.d.ts +0 -5
- package/dist/context/react/ComposerContext.d.ts.map +1 -1
- package/dist/context/react/ComposerContext.js +3 -5
- package/dist/context/react/ComposerContext.js.map +1 -1
- package/dist/context/react/ComposerContext.mjs +2 -3
- package/dist/context/react/ComposerContext.mjs.map +1 -1
- package/dist/context/react/ContentPartContext.d.ts +0 -5
- package/dist/context/react/ContentPartContext.d.ts.map +1 -1
- package/dist/context/react/ContentPartContext.js +3 -5
- package/dist/context/react/ContentPartContext.js.map +1 -1
- package/dist/context/react/ContentPartContext.mjs +2 -3
- package/dist/context/react/ContentPartContext.mjs.map +1 -1
- package/dist/context/react/MessageContext.d.ts +6 -46
- package/dist/context/react/MessageContext.d.ts.map +1 -1
- package/dist/context/react/MessageContext.js +2 -6
- package/dist/context/react/MessageContext.js.map +1 -1
- package/dist/context/react/MessageContext.mjs +2 -4
- package/dist/context/react/MessageContext.mjs.map +1 -1
- package/dist/context/react/ThreadContext.d.ts +11 -1749
- package/dist/context/react/ThreadContext.d.ts.map +1 -1
- package/dist/context/react/ThreadContext.js +4 -30
- package/dist/context/react/ThreadContext.js.map +1 -1
- package/dist/context/react/ThreadContext.mjs +4 -22
- package/dist/context/react/ThreadContext.mjs.map +1 -1
- package/dist/context/react/ThreadListItemContext.d.ts +6 -24
- package/dist/context/react/ThreadListItemContext.d.ts.map +1 -1
- package/dist/context/react/index.d.ts +5 -101
- package/dist/context/react/index.d.ts.map +1 -1
- package/dist/context/react/index.js +0 -38
- package/dist/context/react/index.js.map +1 -1
- package/dist/context/react/index.mjs +5 -49
- package/dist/context/react/index.mjs.map +1 -1
- package/dist/context/stores/AssistantToolUIs.d.ts +9 -6
- package/dist/context/stores/AssistantToolUIs.d.ts.map +1 -1
- package/dist/context/stores/AssistantToolUIs.js.map +1 -1
- package/dist/context/stores/AssistantToolUIs.mjs.map +1 -1
- package/dist/context/stores/MessageUtils.d.ts +7 -12
- package/dist/context/stores/MessageUtils.d.ts.map +1 -1
- package/dist/context/stores/MessageUtils.js.map +1 -1
- package/dist/context/stores/MessageUtils.mjs.map +1 -1
- package/dist/context/stores/ThreadViewport.d.ts +6 -10
- package/dist/context/stores/ThreadViewport.d.ts.map +1 -1
- package/dist/context/stores/ThreadViewport.js +0 -1
- package/dist/context/stores/ThreadViewport.js.map +1 -1
- package/dist/context/stores/ThreadViewport.mjs +0 -2
- package/dist/context/stores/ThreadViewport.mjs.map +1 -1
- package/dist/index.d.ts +0 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +0 -2
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +0 -1
- package/dist/index.mjs.map +1 -1
- package/dist/internal.d.ts +1 -0
- package/dist/internal.d.ts.map +1 -1
- package/dist/internal.js +3 -0
- package/dist/internal.js.map +1 -1
- package/dist/internal.mjs +2 -0
- package/dist/internal.mjs.map +1 -1
- package/dist/model-config/useAssistantToolUI.d.ts.map +1 -1
- package/dist/model-config/useAssistantToolUI.js.map +1 -1
- package/dist/model-config/useAssistantToolUI.mjs.map +1 -1
- package/dist/primitive-hooks/contentPart/useContentPartDisplay.d.ts +1 -4
- package/dist/primitive-hooks/contentPart/useContentPartDisplay.d.ts.map +1 -1
- package/dist/primitive-hooks/contentPart/useContentPartDisplay.js.map +1 -1
- package/dist/primitive-hooks/contentPart/useContentPartDisplay.mjs.map +1 -1
- package/dist/primitive-hooks/contentPart/useContentPartImage.d.ts +1 -4
- package/dist/primitive-hooks/contentPart/useContentPartImage.d.ts.map +1 -1
- package/dist/primitive-hooks/contentPart/useContentPartImage.js.map +1 -1
- package/dist/primitive-hooks/contentPart/useContentPartImage.mjs.map +1 -1
- package/dist/primitive-hooks/contentPart/useContentPartText.d.ts +1 -4
- package/dist/primitive-hooks/contentPart/useContentPartText.d.ts.map +1 -1
- package/dist/primitive-hooks/contentPart/useContentPartText.js.map +1 -1
- package/dist/primitive-hooks/contentPart/useContentPartText.mjs.map +1 -1
- package/dist/primitive-hooks/index.d.ts +0 -5
- package/dist/primitive-hooks/index.d.ts.map +1 -1
- package/dist/primitive-hooks/index.js +1 -11
- package/dist/primitive-hooks/index.js.map +1 -1
- package/dist/primitive-hooks/index.mjs +0 -5
- package/dist/primitive-hooks/index.mjs.map +1 -1
- package/dist/primitives/actionBar/ActionBarCopy.d.ts +1 -5
- package/dist/primitives/actionBar/ActionBarCopy.d.ts.map +1 -1
- package/dist/primitives/actionBar/ActionBarCopy.js.map +1 -1
- package/dist/primitives/actionBar/ActionBarCopy.mjs.map +1 -1
- package/dist/primitives/actionBar/ActionBarEdit.d.ts +0 -4
- package/dist/primitives/actionBar/ActionBarEdit.d.ts.map +1 -1
- package/dist/primitives/actionBar/ActionBarEdit.js.map +1 -1
- package/dist/primitives/actionBar/ActionBarEdit.mjs.map +1 -1
- package/dist/primitives/actionBar/ActionBarFeedbackNegative.d.ts +0 -4
- package/dist/primitives/actionBar/ActionBarFeedbackNegative.d.ts.map +1 -1
- package/dist/primitives/actionBar/ActionBarFeedbackNegative.js.map +1 -1
- package/dist/primitives/actionBar/ActionBarFeedbackNegative.mjs.map +1 -1
- package/dist/primitives/actionBar/ActionBarFeedbackPositive.d.ts +0 -4
- package/dist/primitives/actionBar/ActionBarFeedbackPositive.d.ts.map +1 -1
- package/dist/primitives/actionBar/ActionBarFeedbackPositive.js.map +1 -1
- package/dist/primitives/actionBar/ActionBarFeedbackPositive.mjs.map +1 -1
- package/dist/primitives/actionBar/ActionBarReload.d.ts +0 -4
- package/dist/primitives/actionBar/ActionBarReload.d.ts.map +1 -1
- package/dist/primitives/actionBar/ActionBarReload.js.map +1 -1
- package/dist/primitives/actionBar/ActionBarReload.mjs.map +1 -1
- package/dist/primitives/actionBar/ActionBarRoot.d.ts +0 -4
- package/dist/primitives/actionBar/ActionBarRoot.d.ts.map +1 -1
- package/dist/primitives/actionBar/ActionBarRoot.js.map +1 -1
- package/dist/primitives/actionBar/ActionBarRoot.mjs.map +1 -1
- package/dist/primitives/actionBar/ActionBarSpeak.d.ts +0 -4
- package/dist/primitives/actionBar/ActionBarSpeak.d.ts.map +1 -1
- package/dist/primitives/actionBar/ActionBarSpeak.js.map +1 -1
- package/dist/primitives/actionBar/ActionBarSpeak.mjs.map +1 -1
- package/dist/primitives/actionBar/ActionBarStopSpeaking.d.ts +0 -4
- package/dist/primitives/actionBar/ActionBarStopSpeaking.d.ts.map +1 -1
- package/dist/primitives/actionBar/ActionBarStopSpeaking.js.map +1 -1
- package/dist/primitives/actionBar/ActionBarStopSpeaking.mjs.map +1 -1
- package/dist/primitives/assistantModal/AssistantModalContent.d.ts +0 -4
- package/dist/primitives/assistantModal/AssistantModalContent.d.ts.map +1 -1
- package/dist/primitives/assistantModal/AssistantModalContent.js.map +1 -1
- package/dist/primitives/assistantModal/AssistantModalContent.mjs.map +1 -1
- package/dist/primitives/assistantModal/AssistantModalRoot.d.ts +0 -4
- package/dist/primitives/assistantModal/AssistantModalRoot.d.ts.map +1 -1
- package/dist/primitives/assistantModal/AssistantModalRoot.js.map +1 -1
- package/dist/primitives/assistantModal/AssistantModalRoot.mjs.map +1 -1
- package/dist/primitives/assistantModal/AssistantModalTrigger.d.ts +0 -4
- package/dist/primitives/assistantModal/AssistantModalTrigger.d.ts.map +1 -1
- package/dist/primitives/assistantModal/AssistantModalTrigger.js.map +1 -1
- package/dist/primitives/assistantModal/AssistantModalTrigger.mjs.map +1 -1
- package/dist/primitives/branchPicker/BranchPickerCount.d.ts +0 -4
- package/dist/primitives/branchPicker/BranchPickerCount.d.ts.map +1 -1
- package/dist/primitives/branchPicker/BranchPickerCount.js.map +1 -1
- package/dist/primitives/branchPicker/BranchPickerCount.mjs.map +1 -1
- package/dist/primitives/branchPicker/BranchPickerNext.d.ts +0 -4
- package/dist/primitives/branchPicker/BranchPickerNext.d.ts.map +1 -1
- package/dist/primitives/branchPicker/BranchPickerNext.js.map +1 -1
- package/dist/primitives/branchPicker/BranchPickerNext.mjs.map +1 -1
- package/dist/primitives/branchPicker/BranchPickerNumber.d.ts +0 -4
- package/dist/primitives/branchPicker/BranchPickerNumber.d.ts.map +1 -1
- package/dist/primitives/branchPicker/BranchPickerNumber.js.map +1 -1
- package/dist/primitives/branchPicker/BranchPickerNumber.mjs.map +1 -1
- package/dist/primitives/branchPicker/BranchPickerPrevious.d.ts +0 -4
- package/dist/primitives/branchPicker/BranchPickerPrevious.d.ts.map +1 -1
- package/dist/primitives/branchPicker/BranchPickerPrevious.js.map +1 -1
- package/dist/primitives/branchPicker/BranchPickerPrevious.mjs.map +1 -1
- package/dist/primitives/branchPicker/BranchPickerRoot.d.ts +0 -4
- package/dist/primitives/branchPicker/BranchPickerRoot.d.ts.map +1 -1
- package/dist/primitives/branchPicker/BranchPickerRoot.js.map +1 -1
- package/dist/primitives/branchPicker/BranchPickerRoot.mjs.map +1 -1
- package/dist/primitives/composer/ComposerAddAttachment.d.ts +1 -5
- package/dist/primitives/composer/ComposerAddAttachment.d.ts.map +1 -1
- package/dist/primitives/composer/ComposerAddAttachment.js +2 -2
- package/dist/primitives/composer/ComposerAddAttachment.js.map +1 -1
- package/dist/primitives/composer/ComposerAddAttachment.mjs +1 -1
- package/dist/primitives/composer/ComposerAddAttachment.mjs.map +1 -1
- package/dist/primitives/composer/ComposerAttachments.d.ts +0 -4
- package/dist/primitives/composer/ComposerAttachments.d.ts.map +1 -1
- package/dist/primitives/composer/ComposerAttachments.js.map +1 -1
- package/dist/primitives/composer/ComposerAttachments.mjs.map +1 -1
- package/dist/primitives/composer/ComposerCancel.d.ts +0 -4
- package/dist/primitives/composer/ComposerCancel.d.ts.map +1 -1
- package/dist/primitives/composer/ComposerCancel.js.map +1 -1
- package/dist/primitives/composer/ComposerCancel.mjs.map +1 -1
- package/dist/primitives/composer/ComposerIf.d.ts +0 -4
- package/dist/primitives/composer/ComposerIf.d.ts.map +1 -1
- package/dist/primitives/composer/ComposerIf.js.map +1 -1
- package/dist/primitives/composer/ComposerIf.mjs.map +1 -1
- package/dist/primitives/composer/ComposerInput.d.ts +0 -4
- package/dist/primitives/composer/ComposerInput.d.ts.map +1 -1
- package/dist/primitives/composer/ComposerInput.js.map +1 -1
- package/dist/primitives/composer/ComposerInput.mjs.map +1 -1
- package/dist/primitives/composer/ComposerRoot.d.ts +0 -1
- package/dist/primitives/composer/ComposerRoot.d.ts.map +1 -1
- package/dist/primitives/composer/ComposerRoot.js +2 -2
- package/dist/primitives/composer/ComposerRoot.js.map +1 -1
- package/dist/primitives/composer/ComposerRoot.mjs +1 -1
- package/dist/primitives/composer/ComposerRoot.mjs.map +1 -1
- package/dist/primitives/composer/ComposerSend.d.ts +1 -5
- package/dist/primitives/composer/ComposerSend.d.ts.map +1 -1
- package/dist/primitives/composer/ComposerSend.js +2 -2
- package/dist/primitives/composer/ComposerSend.js.map +1 -1
- package/dist/primitives/composer/ComposerSend.mjs +1 -1
- package/dist/primitives/composer/ComposerSend.mjs.map +1 -1
- package/dist/primitives/contentPart/ContentPartDisplay.d.ts +0 -4
- package/dist/primitives/contentPart/ContentPartDisplay.d.ts.map +1 -1
- package/dist/primitives/contentPart/ContentPartDisplay.js.map +1 -1
- package/dist/primitives/contentPart/ContentPartDisplay.mjs.map +1 -1
- package/dist/primitives/contentPart/ContentPartImage.d.ts +0 -4
- package/dist/primitives/contentPart/ContentPartImage.d.ts.map +1 -1
- package/dist/primitives/contentPart/ContentPartImage.js.map +1 -1
- package/dist/primitives/contentPart/ContentPartImage.mjs.map +1 -1
- package/dist/primitives/contentPart/ContentPartInProgress.d.ts +0 -4
- package/dist/primitives/contentPart/ContentPartInProgress.d.ts.map +1 -1
- package/dist/primitives/contentPart/ContentPartInProgress.js.map +1 -1
- package/dist/primitives/contentPart/ContentPartInProgress.mjs.map +1 -1
- package/dist/primitives/contentPart/ContentPartText.d.ts +0 -4
- package/dist/primitives/contentPart/ContentPartText.d.ts.map +1 -1
- package/dist/primitives/contentPart/ContentPartText.js.map +1 -1
- package/dist/primitives/contentPart/ContentPartText.mjs.map +1 -1
- package/dist/primitives/index.d.ts +0 -7
- package/dist/primitives/index.d.ts.map +1 -1
- package/dist/primitives/index.js.map +1 -1
- package/dist/primitives/index.mjs.map +1 -1
- package/dist/primitives/message/MessageAttachments.d.ts +0 -4
- package/dist/primitives/message/MessageAttachments.d.ts.map +1 -1
- package/dist/primitives/message/MessageAttachments.js +2 -4
- package/dist/primitives/message/MessageAttachments.js.map +1 -1
- package/dist/primitives/message/MessageAttachments.mjs +2 -4
- package/dist/primitives/message/MessageAttachments.mjs.map +1 -1
- package/dist/primitives/message/MessageContent.d.ts +0 -4
- package/dist/primitives/message/MessageContent.d.ts.map +1 -1
- package/dist/primitives/message/MessageContent.js +6 -6
- package/dist/primitives/message/MessageContent.js.map +1 -1
- package/dist/primitives/message/MessageContent.mjs +7 -7
- package/dist/primitives/message/MessageContent.mjs.map +1 -1
- package/dist/primitives/message/MessageIf.d.ts +0 -4
- package/dist/primitives/message/MessageIf.d.ts.map +1 -1
- package/dist/primitives/message/MessageIf.js.map +1 -1
- package/dist/primitives/message/MessageIf.mjs.map +1 -1
- package/dist/primitives/message/MessageRoot.d.ts +0 -4
- package/dist/primitives/message/MessageRoot.d.ts.map +1 -1
- package/dist/primitives/message/MessageRoot.js.map +1 -1
- package/dist/primitives/message/MessageRoot.mjs.map +1 -1
- package/dist/primitives/message/index.d.ts +0 -1
- package/dist/primitives/message/index.d.ts.map +1 -1
- package/dist/primitives/message/index.js +0 -3
- package/dist/primitives/message/index.js.map +1 -1
- package/dist/primitives/message/index.mjs +0 -2
- package/dist/primitives/message/index.mjs.map +1 -1
- package/dist/primitives/thread/ThreadEmpty.d.ts +0 -4
- package/dist/primitives/thread/ThreadEmpty.d.ts.map +1 -1
- package/dist/primitives/thread/ThreadEmpty.js +2 -2
- package/dist/primitives/thread/ThreadEmpty.js.map +1 -1
- package/dist/primitives/thread/ThreadEmpty.mjs +1 -1
- package/dist/primitives/thread/ThreadEmpty.mjs.map +1 -1
- package/dist/primitives/thread/ThreadIf.d.ts +0 -4
- package/dist/primitives/thread/ThreadIf.d.ts.map +1 -1
- package/dist/primitives/thread/ThreadIf.js.map +1 -1
- package/dist/primitives/thread/ThreadIf.mjs.map +1 -1
- package/dist/primitives/thread/ThreadMessages.d.ts +0 -4
- package/dist/primitives/thread/ThreadMessages.d.ts.map +1 -1
- package/dist/primitives/thread/ThreadMessages.js.map +1 -1
- package/dist/primitives/thread/ThreadMessages.mjs.map +1 -1
- package/dist/primitives/thread/ThreadRoot.d.ts +0 -4
- package/dist/primitives/thread/ThreadRoot.d.ts.map +1 -1
- package/dist/primitives/thread/ThreadRoot.js.map +1 -1
- package/dist/primitives/thread/ThreadRoot.mjs.map +1 -1
- package/dist/primitives/thread/ThreadScrollToBottom.d.ts +0 -4
- package/dist/primitives/thread/ThreadScrollToBottom.d.ts.map +1 -1
- package/dist/primitives/thread/ThreadScrollToBottom.js.map +1 -1
- package/dist/primitives/thread/ThreadScrollToBottom.mjs.map +1 -1
- package/dist/primitives/thread/ThreadSuggestion.d.ts +0 -4
- package/dist/primitives/thread/ThreadSuggestion.d.ts.map +1 -1
- package/dist/primitives/thread/ThreadSuggestion.js.map +1 -1
- package/dist/primitives/thread/ThreadSuggestion.mjs.map +1 -1
- package/dist/primitives/thread/ThreadViewport.d.ts +0 -4
- package/dist/primitives/thread/ThreadViewport.d.ts.map +1 -1
- package/dist/primitives/thread/ThreadViewport.js.map +1 -1
- package/dist/primitives/thread/ThreadViewport.mjs.map +1 -1
- package/dist/primitives/threadListItem/ThreadListItemArchive.d.ts.map +1 -1
- package/dist/primitives/threadListItem/ThreadListItemArchive.js +3 -2
- package/dist/primitives/threadListItem/ThreadListItemArchive.js.map +1 -1
- package/dist/primitives/threadListItem/ThreadListItemArchive.mjs +3 -2
- package/dist/primitives/threadListItem/ThreadListItemArchive.mjs.map +1 -1
- package/dist/primitives/threadListItem/ThreadListItemRoot.d.ts +14 -0
- package/dist/primitives/threadListItem/ThreadListItemRoot.d.ts.map +1 -0
- package/dist/primitives/threadListItem/ThreadListItemRoot.js +47 -0
- package/dist/primitives/threadListItem/ThreadListItemRoot.js.map +1 -0
- package/dist/primitives/threadListItem/ThreadListItemRoot.mjs +23 -0
- package/dist/primitives/threadListItem/ThreadListItemRoot.mjs.map +1 -0
- package/dist/primitives/threadListItem/ThreadListItemTitle.d.ts +8 -0
- package/dist/primitives/threadListItem/ThreadListItemTitle.d.ts.map +1 -0
- package/dist/primitives/{message/MessageInProgress.js → threadListItem/ThreadListItemTitle.js} +13 -10
- package/dist/primitives/threadListItem/ThreadListItemTitle.js.map +1 -0
- package/dist/primitives/threadListItem/ThreadListItemTitle.mjs +14 -0
- package/dist/primitives/threadListItem/ThreadListItemTitle.mjs.map +1 -0
- package/dist/primitives/threadListItem/ThreadListItemTrigger.d.ts +13 -0
- package/dist/primitives/threadListItem/ThreadListItemTrigger.d.ts.map +1 -0
- package/dist/{runtimes/core/subscribeToMainThread.js → primitives/threadListItem/ThreadListItemTrigger.js} +17 -22
- package/dist/primitives/threadListItem/ThreadListItemTrigger.js.map +1 -0
- package/dist/primitives/threadListItem/ThreadListItemTrigger.mjs +21 -0
- package/dist/primitives/threadListItem/ThreadListItemTrigger.mjs.map +1 -0
- package/dist/primitives/threadListItem/index.d.ts +3 -0
- package/dist/primitives/threadListItem/index.d.ts.map +1 -1
- package/dist/primitives/threadListItem/index.js +9 -0
- package/dist/primitives/threadListItem/index.js.map +1 -1
- package/dist/primitives/threadListItem/index.mjs +6 -0
- package/dist/primitives/threadListItem/index.mjs.map +1 -1
- package/dist/runtimes/attachment/AttachmentAdapter.d.ts +3 -7
- package/dist/runtimes/attachment/AttachmentAdapter.d.ts.map +1 -1
- package/dist/runtimes/attachment/AttachmentAdapter.js.map +1 -1
- package/dist/runtimes/attachment/CompositeAttachmentAdapter.d.ts +2 -6
- package/dist/runtimes/attachment/CompositeAttachmentAdapter.d.ts.map +1 -1
- package/dist/runtimes/attachment/CompositeAttachmentAdapter.js +1 -2
- package/dist/runtimes/attachment/CompositeAttachmentAdapter.js.map +1 -1
- package/dist/runtimes/attachment/CompositeAttachmentAdapter.mjs +1 -2
- package/dist/runtimes/attachment/CompositeAttachmentAdapter.mjs.map +1 -1
- package/dist/runtimes/composer/BaseComposerRuntimeCore.d.ts.map +1 -1
- package/dist/runtimes/composer/BaseComposerRuntimeCore.js +0 -6
- package/dist/runtimes/composer/BaseComposerRuntimeCore.js.map +1 -1
- package/dist/runtimes/composer/BaseComposerRuntimeCore.mjs +0 -6
- package/dist/runtimes/composer/BaseComposerRuntimeCore.mjs.map +1 -1
- package/dist/runtimes/core/BaseThreadRuntimeCore.d.ts +6 -7
- package/dist/runtimes/core/BaseThreadRuntimeCore.d.ts.map +1 -1
- package/dist/runtimes/core/BaseThreadRuntimeCore.js +8 -4
- package/dist/runtimes/core/BaseThreadRuntimeCore.js.map +1 -1
- package/dist/runtimes/core/BaseThreadRuntimeCore.mjs +8 -4
- package/dist/runtimes/core/BaseThreadRuntimeCore.mjs.map +1 -1
- package/dist/runtimes/core/ComposerRuntimeCore.d.ts +0 -3
- package/dist/runtimes/core/ComposerRuntimeCore.d.ts.map +1 -1
- package/dist/runtimes/core/ComposerRuntimeCore.js.map +1 -1
- package/dist/runtimes/core/ThreadListRuntimeCore.d.ts +7 -10
- package/dist/runtimes/core/ThreadListRuntimeCore.d.ts.map +1 -1
- package/dist/runtimes/core/ThreadListRuntimeCore.js.map +1 -1
- package/dist/runtimes/core/ThreadRuntimeCore.d.ts +30 -17
- package/dist/runtimes/core/ThreadRuntimeCore.d.ts.map +1 -1
- package/dist/runtimes/core/ThreadRuntimeCore.js.map +1 -1
- package/dist/runtimes/core/index.d.ts +1 -2
- package/dist/runtimes/core/index.d.ts.map +1 -1
- package/dist/runtimes/core/index.js +0 -12
- package/dist/runtimes/core/index.js.map +1 -1
- package/dist/runtimes/core/index.mjs +0 -5
- package/dist/runtimes/core/index.mjs.map +1 -1
- package/dist/runtimes/edge/converters/toCoreMessages.d.ts +1 -1
- package/dist/runtimes/edge/converters/toCoreMessages.d.ts.map +1 -1
- package/dist/runtimes/edge/converters/toCoreMessages.js.map +1 -1
- package/dist/runtimes/edge/converters/toCoreMessages.mjs.map +1 -1
- package/dist/runtimes/edge/createEdgeRuntimeAPI.d.ts +0 -4
- package/dist/runtimes/edge/createEdgeRuntimeAPI.d.ts.map +1 -1
- package/dist/runtimes/edge/createEdgeRuntimeAPI.js +0 -2
- package/dist/runtimes/edge/createEdgeRuntimeAPI.js.map +1 -1
- package/dist/runtimes/edge/createEdgeRuntimeAPI.mjs +0 -2
- package/dist/runtimes/edge/createEdgeRuntimeAPI.mjs.map +1 -1
- package/dist/runtimes/edge/streams/runResultStream.js +0 -2
- package/dist/runtimes/edge/streams/runResultStream.js.map +1 -1
- package/dist/runtimes/edge/streams/runResultStream.mjs +0 -2
- package/dist/runtimes/edge/streams/runResultStream.mjs.map +1 -1
- package/dist/runtimes/external-store/ExternalStoreAdapter.d.ts +3 -16
- package/dist/runtimes/external-store/ExternalStoreAdapter.d.ts.map +1 -1
- package/dist/runtimes/external-store/ExternalStoreAdapter.js.map +1 -1
- package/dist/runtimes/external-store/ExternalStoreRuntimeCore.d.ts.map +1 -1
- package/dist/runtimes/external-store/ExternalStoreRuntimeCore.js +0 -3
- package/dist/runtimes/external-store/ExternalStoreRuntimeCore.js.map +1 -1
- package/dist/runtimes/external-store/ExternalStoreRuntimeCore.mjs +0 -3
- package/dist/runtimes/external-store/ExternalStoreRuntimeCore.mjs.map +1 -1
- package/dist/runtimes/external-store/ExternalStoreThreadListRuntimeCore.d.ts +10 -12
- package/dist/runtimes/external-store/ExternalStoreThreadListRuntimeCore.d.ts.map +1 -1
- package/dist/runtimes/external-store/ExternalStoreThreadListRuntimeCore.js +29 -7
- package/dist/runtimes/external-store/ExternalStoreThreadListRuntimeCore.js.map +1 -1
- package/dist/runtimes/external-store/ExternalStoreThreadListRuntimeCore.mjs +29 -7
- package/dist/runtimes/external-store/ExternalStoreThreadListRuntimeCore.mjs.map +1 -1
- package/dist/runtimes/external-store/ExternalStoreThreadRuntimeCore.d.ts +2 -12
- package/dist/runtimes/external-store/ExternalStoreThreadRuntimeCore.d.ts.map +1 -1
- package/dist/runtimes/external-store/ExternalStoreThreadRuntimeCore.js +4 -3
- package/dist/runtimes/external-store/ExternalStoreThreadRuntimeCore.js.map +1 -1
- package/dist/runtimes/external-store/ExternalStoreThreadRuntimeCore.mjs +4 -3
- package/dist/runtimes/external-store/ExternalStoreThreadRuntimeCore.mjs.map +1 -1
- package/dist/runtimes/external-store/ThreadMessageLike.d.ts.map +1 -1
- package/dist/runtimes/external-store/ThreadMessageLike.js +2 -0
- package/dist/runtimes/external-store/ThreadMessageLike.js.map +1 -1
- package/dist/runtimes/external-store/ThreadMessageLike.mjs +2 -0
- package/dist/runtimes/external-store/ThreadMessageLike.mjs.map +1 -1
- package/dist/runtimes/local/ChatModelAdapter.d.ts +0 -8
- package/dist/runtimes/local/ChatModelAdapter.d.ts.map +1 -1
- package/dist/runtimes/local/ChatModelAdapter.js.map +1 -1
- package/dist/runtimes/local/LocalRuntimeOptions.d.ts +1 -6
- package/dist/runtimes/local/LocalRuntimeOptions.d.ts.map +1 -1
- package/dist/runtimes/local/LocalRuntimeOptions.js +1 -2
- package/dist/runtimes/local/LocalRuntimeOptions.js.map +1 -1
- package/dist/runtimes/local/LocalRuntimeOptions.mjs +1 -2
- package/dist/runtimes/local/LocalRuntimeOptions.mjs.map +1 -1
- package/dist/runtimes/local/LocalThreadListRuntimeCore.d.ts +16 -20
- package/dist/runtimes/local/LocalThreadListRuntimeCore.d.ts.map +1 -1
- package/dist/runtimes/local/LocalThreadListRuntimeCore.js +112 -72
- package/dist/runtimes/local/LocalThreadListRuntimeCore.js.map +1 -1
- package/dist/runtimes/local/LocalThreadListRuntimeCore.mjs +112 -72
- package/dist/runtimes/local/LocalThreadListRuntimeCore.mjs.map +1 -1
- package/dist/runtimes/local/LocalThreadMetadataRuntimeCore.d.ts +19 -0
- package/dist/runtimes/local/LocalThreadMetadataRuntimeCore.d.ts.map +1 -0
- package/dist/runtimes/local/LocalThreadMetadataRuntimeCore.js +87 -0
- package/dist/runtimes/local/LocalThreadMetadataRuntimeCore.js.map +1 -0
- package/dist/runtimes/local/LocalThreadMetadataRuntimeCore.mjs +62 -0
- package/dist/runtimes/local/LocalThreadMetadataRuntimeCore.mjs.map +1 -0
- package/dist/runtimes/local/LocalThreadRuntimeCore.d.ts +1 -1
- package/dist/runtimes/local/LocalThreadRuntimeCore.d.ts.map +1 -1
- package/dist/runtimes/local/LocalThreadRuntimeCore.js +15 -11
- package/dist/runtimes/local/LocalThreadRuntimeCore.js.map +1 -1
- package/dist/runtimes/local/LocalThreadRuntimeCore.mjs +15 -11
- package/dist/runtimes/local/LocalThreadRuntimeCore.mjs.map +1 -1
- package/dist/styles/index.css.map +1 -1
- package/dist/types/AssistantTypes.d.ts +1 -18
- package/dist/types/AssistantTypes.d.ts.map +1 -1
- package/dist/types/AssistantTypes.js.map +1 -1
- package/dist/types/AttachmentTypes.d.ts +1 -1
- package/dist/types/AttachmentTypes.d.ts.map +1 -1
- package/dist/types/AttachmentTypes.js.map +1 -1
- package/dist/types/ContentPartComponentTypes.d.ts +4 -28
- package/dist/types/ContentPartComponentTypes.d.ts.map +1 -1
- package/dist/types/ContentPartComponentTypes.js.map +1 -1
- package/dist/ui/assistant-message.d.ts +1 -10
- package/dist/ui/assistant-message.d.ts.map +1 -1
- package/dist/ui/assistant-message.js.map +1 -1
- package/dist/ui/assistant-message.mjs.map +1 -1
- package/dist/ui/composer.d.ts +1 -25
- package/dist/ui/composer.d.ts.map +1 -1
- package/dist/ui/composer.js.map +1 -1
- package/dist/ui/composer.mjs.map +1 -1
- package/dist/ui/index.d.ts +6 -14
- package/dist/ui/index.d.ts.map +1 -1
- package/dist/ui/index.js +0 -4
- package/dist/ui/index.js.map +1 -1
- package/dist/ui/index.mjs +14 -24
- package/dist/ui/index.mjs.map +1 -1
- package/dist/ui/thread-welcome.d.ts +5 -17
- package/dist/ui/thread-welcome.d.ts.map +1 -1
- package/dist/ui/thread-welcome.js.map +1 -1
- package/dist/ui/thread-welcome.mjs.map +1 -1
- package/dist/ui/thread.d.ts +1 -19
- package/dist/ui/thread.d.ts.map +1 -1
- package/dist/ui/thread.js.map +1 -1
- package/dist/ui/thread.mjs.map +1 -1
- package/dist/ui/user-message.d.ts +1 -18
- package/dist/ui/user-message.d.ts.map +1 -1
- package/dist/ui/user-message.js.map +1 -1
- package/dist/ui/user-message.mjs.map +1 -1
- package/dist/utils/smooth/SmoothContext.js +2 -2
- package/dist/utils/smooth/SmoothContext.js.map +1 -1
- package/dist/utils/smooth/SmoothContext.mjs +3 -3
- package/dist/utils/smooth/SmoothContext.mjs.map +1 -1
- package/dist/utils/smooth/useSmooth.d.ts.map +1 -1
- package/dist/utils/smooth/useSmooth.js +0 -1
- package/dist/utils/smooth/useSmooth.js.map +1 -1
- package/dist/utils/smooth/useSmooth.mjs +0 -1
- package/dist/utils/smooth/useSmooth.mjs.map +1 -1
- package/package.json +7 -7
- package/src/api/AssistantRuntime.ts +3 -25
- package/src/api/AttachmentRuntime.ts +4 -16
- package/src/api/ComposerRuntime.ts +18 -214
- package/src/api/ContentPartRuntime.ts +2 -6
- package/src/api/MessageRuntime.ts +16 -20
- package/src/api/RuntimePathTypes.ts +26 -26
- package/src/api/ThreadListItemRuntime.ts +19 -11
- package/src/api/ThreadListRuntime.ts +39 -58
- package/src/api/ThreadRuntime.ts +52 -213
- package/src/api/index.ts +4 -0
- package/src/context/providers/AssistantRuntimeProvider.tsx +0 -1
- package/src/context/providers/TextContentPartProvider.tsx +0 -2
- package/src/context/providers/ThreadRuntimeProvider.tsx +1 -17
- package/src/context/react/AssistantContext.ts +0 -25
- package/src/context/react/ComposerContext.ts +1 -1
- package/src/context/react/ContentPartContext.ts +1 -1
- package/src/context/react/MessageContext.ts +2 -2
- package/src/context/react/ThreadContext.ts +5 -42
- package/src/context/react/index.ts +2 -125
- package/src/context/stores/AssistantToolUIs.ts +9 -2
- package/src/context/stores/MessageUtils.ts +6 -6
- package/src/context/stores/ThreadViewport.tsx +5 -6
- package/src/index.ts +0 -1
- package/src/internal.ts +1 -0
- package/src/model-config/useAssistantToolUI.tsx +0 -1
- package/src/primitive-hooks/contentPart/useContentPartDisplay.tsx +1 -1
- package/src/primitive-hooks/contentPart/useContentPartImage.tsx +1 -2
- package/src/primitive-hooks/contentPart/useContentPartText.tsx +1 -1
- package/src/primitive-hooks/index.ts +0 -5
- package/src/primitives/actionBar/ActionBarCopy.tsx +0 -5
- package/src/primitives/actionBar/ActionBarEdit.tsx +0 -5
- package/src/primitives/actionBar/ActionBarFeedbackNegative.tsx +0 -6
- package/src/primitives/actionBar/ActionBarFeedbackPositive.tsx +0 -6
- package/src/primitives/actionBar/ActionBarReload.tsx +0 -5
- package/src/primitives/actionBar/ActionBarRoot.tsx +0 -5
- package/src/primitives/actionBar/ActionBarSpeak.tsx +0 -5
- package/src/primitives/actionBar/ActionBarStopSpeaking.tsx +0 -6
- package/src/primitives/assistantModal/AssistantModalContent.tsx +1 -7
- package/src/primitives/assistantModal/AssistantModalRoot.tsx +0 -6
- package/src/primitives/assistantModal/AssistantModalTrigger.tsx +0 -6
- package/src/primitives/branchPicker/BranchPickerCount.tsx +0 -5
- package/src/primitives/branchPicker/BranchPickerNext.tsx +0 -6
- package/src/primitives/branchPicker/BranchPickerNumber.tsx +0 -5
- package/src/primitives/branchPicker/BranchPickerPrevious.tsx +1 -6
- package/src/primitives/branchPicker/BranchPickerRoot.tsx +0 -5
- package/src/primitives/composer/ComposerAddAttachment.tsx +2 -7
- package/src/primitives/composer/ComposerAttachments.tsx +0 -6
- package/src/primitives/composer/ComposerCancel.tsx +0 -5
- package/src/primitives/composer/ComposerIf.tsx +0 -5
- package/src/primitives/composer/ComposerInput.tsx +0 -5
- package/src/primitives/composer/ComposerRoot.tsx +1 -3
- package/src/primitives/composer/ComposerSend.tsx +2 -7
- package/src/primitives/contentPart/ContentPartDisplay.tsx +0 -6
- package/src/primitives/contentPart/ContentPartImage.tsx +0 -5
- package/src/primitives/contentPart/ContentPartInProgress.tsx +0 -6
- package/src/primitives/contentPart/ContentPartText.tsx +0 -5
- package/src/primitives/index.ts +0 -8
- package/src/primitives/message/MessageAttachments.tsx +2 -10
- package/src/primitives/message/MessageContent.tsx +7 -15
- package/src/primitives/message/MessageIf.tsx +0 -5
- package/src/primitives/message/MessageRoot.tsx +0 -5
- package/src/primitives/message/index.ts +0 -1
- package/src/primitives/thread/ThreadEmpty.tsx +1 -6
- package/src/primitives/thread/ThreadIf.tsx +0 -5
- package/src/primitives/thread/ThreadMessages.tsx +0 -5
- package/src/primitives/thread/ThreadRoot.tsx +0 -5
- package/src/primitives/thread/ThreadScrollToBottom.tsx +0 -6
- package/src/primitives/thread/ThreadSuggestion.tsx +0 -5
- package/src/primitives/thread/ThreadViewport.tsx +0 -5
- package/src/primitives/threadListItem/ThreadListItemArchive.ts +3 -2
- package/src/primitives/threadListItem/ThreadListItemRoot.tsx +29 -0
- package/src/primitives/threadListItem/ThreadListItemTitle.tsx +19 -0
- package/src/primitives/threadListItem/ThreadListItemTrigger.ts +25 -0
- package/src/primitives/threadListItem/index.ts +4 -1
- package/src/runtimes/attachment/AttachmentAdapter.ts +2 -12
- package/src/runtimes/attachment/CompositeAttachmentAdapter.ts +1 -1
- package/src/runtimes/composer/BaseComposerRuntimeCore.tsx +0 -8
- package/src/runtimes/core/BaseThreadRuntimeCore.tsx +11 -5
- package/src/runtimes/core/ComposerRuntimeCore.tsx +0 -3
- package/src/runtimes/core/ThreadListRuntimeCore.tsx +7 -11
- package/src/runtimes/core/ThreadRuntimeCore.tsx +33 -17
- package/src/runtimes/core/index.ts +1 -2
- package/src/runtimes/edge/converters/toCoreMessages.ts +1 -1
- package/src/runtimes/edge/createEdgeRuntimeAPI.ts +0 -6
- package/src/runtimes/edge/streams/runResultStream.ts +0 -2
- package/src/runtimes/external-store/ExternalStoreAdapter.tsx +3 -17
- package/src/runtimes/external-store/ExternalStoreRuntimeCore.tsx +0 -3
- package/src/runtimes/external-store/ExternalStoreThreadListRuntimeCore.tsx +39 -7
- package/src/runtimes/external-store/ExternalStoreThreadRuntimeCore.tsx +4 -3
- package/src/runtimes/external-store/ThreadMessageLike.tsx +4 -3
- package/src/runtimes/local/ChatModelAdapter.tsx +0 -9
- package/src/runtimes/local/LocalRuntimeOptions.tsx +1 -7
- package/src/runtimes/local/LocalThreadListRuntimeCore.tsx +140 -96
- package/src/runtimes/local/LocalThreadMetadataRuntimeCore.tsx +79 -0
- package/src/runtimes/local/LocalThreadRuntimeCore.tsx +16 -11
- package/src/types/AssistantTypes.ts +1 -20
- package/src/types/AttachmentTypes.ts +1 -2
- package/src/types/ContentPartComponentTypes.tsx +4 -31
- package/src/ui/assistant-message.tsx +0 -5
- package/src/ui/composer.tsx +0 -5
- package/src/ui/index.ts +5 -23
- package/src/ui/thread-welcome.tsx +6 -9
- package/src/ui/thread.tsx +0 -5
- package/src/ui/user-message.tsx +2 -12
- package/src/utils/smooth/SmoothContext.tsx +3 -3
- package/src/utils/smooth/useSmooth.tsx +0 -1
- package/dist/hooks/index.d.ts +0 -3
- package/dist/hooks/index.d.ts.map +0 -1
- package/dist/hooks/index.js +0 -34
- package/dist/hooks/index.js.map +0 -1
- package/dist/hooks/index.mjs +0 -8
- package/dist/hooks/index.mjs.map +0 -1
- package/dist/hooks/useAppendMessage.d.ts +0 -6
- package/dist/hooks/useAppendMessage.d.ts.map +0 -1
- package/dist/hooks/useAppendMessage.js +0 -42
- package/dist/hooks/useAppendMessage.js.map +0 -1
- package/dist/hooks/useAppendMessage.mjs +0 -17
- package/dist/hooks/useAppendMessage.mjs.map +0 -1
- package/dist/hooks/useSwitchToNewThread.d.ts +0 -5
- package/dist/hooks/useSwitchToNewThread.d.ts.map +0 -1
- package/dist/hooks/useSwitchToNewThread.js +0 -39
- package/dist/hooks/useSwitchToNewThread.js.map +0 -1
- package/dist/hooks/useSwitchToNewThread.mjs +0 -14
- package/dist/hooks/useSwitchToNewThread.mjs.map +0 -1
- package/dist/primitive-hooks/actionBar/index.d.ts +0 -34
- package/dist/primitive-hooks/actionBar/index.d.ts.map +0 -1
- package/dist/primitive-hooks/actionBar/index.js +0 -49
- package/dist/primitive-hooks/actionBar/index.js.map +0 -1
- package/dist/primitive-hooks/actionBar/index.mjs +0 -20
- package/dist/primitive-hooks/actionBar/index.mjs.map +0 -1
- package/dist/primitive-hooks/branchPicker/index.d.ts +0 -17
- package/dist/primitive-hooks/branchPicker/index.d.ts.map +0 -1
- package/dist/primitive-hooks/branchPicker/index.js +0 -40
- package/dist/primitive-hooks/branchPicker/index.js.map +0 -1
- package/dist/primitive-hooks/branchPicker/index.mjs +0 -12
- package/dist/primitive-hooks/branchPicker/index.mjs.map +0 -1
- package/dist/primitive-hooks/composer/index.d.ts +0 -17
- package/dist/primitive-hooks/composer/index.d.ts.map +0 -1
- package/dist/primitive-hooks/composer/index.js +0 -40
- package/dist/primitive-hooks/composer/index.js.map +0 -1
- package/dist/primitive-hooks/composer/index.mjs +0 -12
- package/dist/primitive-hooks/composer/index.mjs.map +0 -1
- package/dist/primitive-hooks/message/index.d.ts +0 -5
- package/dist/primitive-hooks/message/index.d.ts.map +0 -1
- package/dist/primitive-hooks/message/index.js +0 -31
- package/dist/primitive-hooks/message/index.js.map +0 -1
- package/dist/primitive-hooks/message/index.mjs +0 -6
- package/dist/primitive-hooks/message/index.mjs.map +0 -1
- package/dist/primitive-hooks/thread/index.d.ts +0 -17
- package/dist/primitive-hooks/thread/index.d.ts.map +0 -1
- package/dist/primitive-hooks/thread/index.js +0 -40
- package/dist/primitive-hooks/thread/index.js.map +0 -1
- package/dist/primitive-hooks/thread/index.mjs +0 -12
- package/dist/primitive-hooks/thread/index.mjs.map +0 -1
- package/dist/primitives/actionBar/types.d.ts +0 -9
- package/dist/primitives/actionBar/types.d.ts.map +0 -1
- package/dist/primitives/actionBar/types.js +0 -19
- package/dist/primitives/actionBar/types.js.map +0 -1
- package/dist/primitives/actionBar/types.mjs +0 -1
- package/dist/primitives/actionBar/types.mjs.map +0 -1
- package/dist/primitives/assistantModal/types.d.ts +0 -4
- package/dist/primitives/assistantModal/types.d.ts.map +0 -1
- package/dist/primitives/assistantModal/types.js +0 -19
- package/dist/primitives/assistantModal/types.js.map +0 -1
- package/dist/primitives/assistantModal/types.mjs +0 -1
- package/dist/primitives/assistantModal/types.mjs.map +0 -1
- package/dist/primitives/attachment/types.d.ts +0 -1
- package/dist/primitives/attachment/types.d.ts.map +0 -1
- package/dist/primitives/attachment/types.js +0 -2
- package/dist/primitives/attachment/types.js.map +0 -1
- package/dist/primitives/attachment/types.mjs +0 -1
- package/dist/primitives/attachment/types.mjs.map +0 -1
- package/dist/primitives/branchPicker/types.d.ts +0 -6
- package/dist/primitives/branchPicker/types.d.ts.map +0 -1
- package/dist/primitives/branchPicker/types.js +0 -19
- package/dist/primitives/branchPicker/types.js.map +0 -1
- package/dist/primitives/branchPicker/types.mjs +0 -1
- package/dist/primitives/branchPicker/types.mjs.map +0 -1
- package/dist/primitives/composer/types.d.ts +0 -6
- package/dist/primitives/composer/types.d.ts.map +0 -1
- package/dist/primitives/composer/types.js +0 -19
- package/dist/primitives/composer/types.js.map +0 -1
- package/dist/primitives/composer/types.mjs +0 -1
- package/dist/primitives/composer/types.mjs.map +0 -1
- package/dist/primitives/contentPart/types.d.ts +0 -5
- package/dist/primitives/contentPart/types.d.ts.map +0 -1
- package/dist/primitives/contentPart/types.js +0 -19
- package/dist/primitives/contentPart/types.js.map +0 -1
- package/dist/primitives/contentPart/types.mjs +0 -1
- package/dist/primitives/contentPart/types.mjs.map +0 -1
- package/dist/primitives/message/MessageInProgress.d.ts +0 -13
- package/dist/primitives/message/MessageInProgress.d.ts.map +0 -1
- package/dist/primitives/message/MessageInProgress.js.map +0 -1
- package/dist/primitives/message/MessageInProgress.mjs +0 -11
- package/dist/primitives/message/MessageInProgress.mjs.map +0 -1
- package/dist/primitives/message/types.d.ts +0 -5
- package/dist/primitives/message/types.d.ts.map +0 -1
- package/dist/primitives/message/types.js +0 -19
- package/dist/primitives/message/types.js.map +0 -1
- package/dist/primitives/message/types.mjs +0 -1
- package/dist/primitives/message/types.mjs.map +0 -1
- package/dist/primitives/thread/types.d.ts +0 -8
- package/dist/primitives/thread/types.d.ts.map +0 -1
- package/dist/primitives/thread/types.js +0 -19
- package/dist/primitives/thread/types.js.map +0 -1
- package/dist/primitives/thread/types.mjs +0 -1
- package/dist/primitives/thread/types.mjs.map +0 -1
- package/dist/runtimes/core/subscribeToMainThread.d.ts +0 -6
- package/dist/runtimes/core/subscribeToMainThread.d.ts.map +0 -1
- package/dist/runtimes/core/subscribeToMainThread.js.map +0 -1
- package/dist/runtimes/core/subscribeToMainThread.mjs +0 -23
- package/dist/runtimes/core/subscribeToMainThread.mjs.map +0 -1
- package/src/hooks/index.ts +0 -2
- package/src/hooks/useAppendMessage.tsx +0 -19
- package/src/hooks/useSwitchToNewThread.tsx +0 -14
- package/src/primitive-hooks/actionBar/index.ts +0 -39
- package/src/primitive-hooks/branchPicker/index.ts +0 -18
- package/src/primitive-hooks/composer/index.ts +0 -17
- package/src/primitive-hooks/message/index.ts +0 -4
- package/src/primitive-hooks/thread/index.ts +0 -16
- package/src/primitives/actionBar/types.ts +0 -8
- package/src/primitives/assistantModal/types.ts +0 -3
- package/src/primitives/attachment/types.ts +0 -0
- package/src/primitives/branchPicker/types.ts +0 -5
- package/src/primitives/composer/types.ts +0 -5
- package/src/primitives/contentPart/types.ts +0 -4
- package/src/primitives/message/MessageInProgress.tsx +0 -22
- package/src/primitives/message/types.ts +0 -4
- package/src/primitives/thread/types.ts +0 -7
- package/src/runtimes/core/subscribeToMainThread.ts +0 -30
@@ -2,17 +2,17 @@ import { AppendMessage, ThreadMessage } from "../../types";
|
|
2
2
|
import { AttachmentAdapter } from "../attachment";
|
3
3
|
import {
|
4
4
|
AddToolResultOptions,
|
5
|
+
ThreadMetadata,
|
5
6
|
ThreadSuggestion,
|
6
7
|
} from "../core/ThreadRuntimeCore";
|
7
8
|
import { FeedbackAdapter } from "../feedback/FeedbackAdapter";
|
8
9
|
import { SpeechSynthesisAdapter } from "../speech/SpeechAdapterTypes";
|
9
|
-
import { ThreadListMetadata } from "../core/ThreadListRuntimeCore";
|
10
10
|
import { ThreadMessageLike } from "./ThreadMessageLike";
|
11
11
|
|
12
12
|
export type ExternalStoreThreadListAdapter = {
|
13
13
|
threadId?: string | undefined;
|
14
|
-
threads?: readonly
|
15
|
-
archivedThreads?: readonly
|
14
|
+
threads?: readonly ThreadMetadata[] | undefined;
|
15
|
+
archivedThreads?: readonly ThreadMetadata[] | undefined;
|
16
16
|
onSwitchToNewThread?: (() => Promise<void> | void) | undefined;
|
17
17
|
onSwitchToThread?: ((threadId: string) => Promise<void> | void) | undefined;
|
18
18
|
onRename?: (
|
@@ -34,20 +34,6 @@ type ExternalStoreMessageConverterAdapter<T> = {
|
|
34
34
|
};
|
35
35
|
|
36
36
|
type ExternalStoreAdapterBase<T> = {
|
37
|
-
/**
|
38
|
-
* @deprecated Use `adapterst.threadList.threadId` instead. This will be removed in 0.6.0.
|
39
|
-
*/
|
40
|
-
threadId?: string | undefined;
|
41
|
-
|
42
|
-
/**
|
43
|
-
* @deprecated Use `adapters..threadList.onSwitchToThread` instead. This will be removed in 0.6.0.
|
44
|
-
*/
|
45
|
-
onSwitchToThread?: ((threadId: string) => Promise<void> | void) | undefined;
|
46
|
-
/**
|
47
|
-
* @deprecated Use `adapters.threadList.onSwitchToNewThread` instead. This will be removed in 0.6.0.
|
48
|
-
*/
|
49
|
-
onSwitchToNewThread?: (() => Promise<void> | void) | undefined;
|
50
|
-
|
51
37
|
isDisabled?: boolean | undefined;
|
52
38
|
isRunning?: boolean | undefined;
|
53
39
|
messages: T[];
|
@@ -5,9 +5,6 @@ import { ExternalStoreThreadRuntimeCore } from "./ExternalStoreThreadRuntimeCore
|
|
5
5
|
|
6
6
|
const getThreadListAdapter = (store: ExternalStoreAdapter<any>) => {
|
7
7
|
return {
|
8
|
-
threadId: store.threadId,
|
9
|
-
onSwitchToNewThread: store.onSwitchToNewThread,
|
10
|
-
onSwitchToThread: store.onSwitchToThread,
|
11
8
|
...store.adapters?.threadList,
|
12
9
|
};
|
13
10
|
};
|
@@ -13,12 +13,19 @@ const DEFAULT_THREAD_ID = "DEFAULT_THREAD_ID";
|
|
13
13
|
export class ExternalStoreThreadListRuntimeCore
|
14
14
|
implements ThreadListRuntimeCore
|
15
15
|
{
|
16
|
+
private _threads: readonly string[] = [];
|
17
|
+
private _archivedThreads: readonly string[] = [];
|
18
|
+
|
19
|
+
public get newThread() {
|
20
|
+
return undefined;
|
21
|
+
}
|
22
|
+
|
16
23
|
public get threads() {
|
17
|
-
return this.
|
24
|
+
return this._threads;
|
18
25
|
}
|
19
26
|
|
20
27
|
public get archivedThreads() {
|
21
|
-
return this.
|
28
|
+
return this._archivedThreads;
|
22
29
|
}
|
23
30
|
|
24
31
|
private _mainThread: ExternalStoreThreadRuntimeCore;
|
@@ -35,10 +42,10 @@ export class ExternalStoreThreadListRuntimeCore
|
|
35
42
|
}
|
36
43
|
|
37
44
|
public getThreadMetadataById(threadId: string) {
|
38
|
-
for (const thread of this.threads) {
|
45
|
+
for (const thread of this.adapter.threads ?? []) {
|
39
46
|
if (thread.threadId === threadId) return thread;
|
40
47
|
}
|
41
|
-
for (const thread of this.archivedThreads) {
|
48
|
+
for (const thread of this.adapter.archivedThreads ?? []) {
|
42
49
|
if (thread.threadId === threadId) return thread;
|
43
50
|
}
|
44
51
|
return undefined;
|
@@ -65,17 +72,42 @@ export class ExternalStoreThreadListRuntimeCore
|
|
65
72
|
return;
|
66
73
|
}
|
67
74
|
|
75
|
+
if (previousAdapter.threads !== newThreads) {
|
76
|
+
this._threads =
|
77
|
+
this.adapter.threads?.map((t) => t.threadId) ?? EMPTY_ARRAY;
|
78
|
+
}
|
79
|
+
|
80
|
+
if (previousAdapter.archivedThreads !== newArchivedThreads) {
|
81
|
+
this._archivedThreads =
|
82
|
+
this.adapter.archivedThreads?.map((t) => t.threadId) ?? EMPTY_ARRAY;
|
83
|
+
}
|
84
|
+
|
68
85
|
if (previousAdapter.threadId !== newThreadId) {
|
69
86
|
this._mainThread._notifyEventSubscribers("switched-away");
|
70
87
|
this._mainThread = this.threadFactory(newThreadId);
|
71
88
|
this._mainThread._notifyEventSubscribers("switched-to");
|
72
89
|
}
|
73
90
|
|
91
|
+
const previousMainState = this._mainThread.metadata.state;
|
92
|
+
const mainState = this.archivedThreads.includes(
|
93
|
+
this._mainThread.metadata.threadId,
|
94
|
+
)
|
95
|
+
? "archived"
|
96
|
+
: "regular";
|
97
|
+
|
98
|
+
if (previousMainState !== mainState) {
|
99
|
+
if (mainState === "archived") {
|
100
|
+
this._mainThread.metadata.archive();
|
101
|
+
} else {
|
102
|
+
this._mainThread.metadata.unarchive();
|
103
|
+
}
|
104
|
+
}
|
105
|
+
|
74
106
|
this._notifySubscribers();
|
75
107
|
}
|
76
108
|
|
77
|
-
public switchToThread(threadId: string): void {
|
78
|
-
if (this._mainThread?.threadId === threadId) return;
|
109
|
+
public async switchToThread(threadId: string): Promise<void> {
|
110
|
+
if (this._mainThread?.metadata.threadId === threadId) return;
|
79
111
|
const onSwitchToThread = this.adapter.onSwitchToThread;
|
80
112
|
if (!onSwitchToThread)
|
81
113
|
throw new Error(
|
@@ -84,7 +116,7 @@ export class ExternalStoreThreadListRuntimeCore
|
|
84
116
|
onSwitchToThread(threadId);
|
85
117
|
}
|
86
118
|
|
87
|
-
public switchToNewThread(): void {
|
119
|
+
public async switchToNewThread(): Promise<void> {
|
88
120
|
const onSwitchToNewThread = this.adapter.onSwitchToNewThread;
|
89
121
|
if (!onSwitchToNewThread)
|
90
122
|
throw new Error(
|
@@ -18,6 +18,7 @@ import {
|
|
18
18
|
ThreadRuntimeCore,
|
19
19
|
} from "../core/ThreadRuntimeCore";
|
20
20
|
import { BaseThreadRuntimeCore } from "../core/BaseThreadRuntimeCore";
|
21
|
+
import { LocalThreadMetadataRuntimeCore } from "../local/LocalThreadMetadataRuntimeCore";
|
21
22
|
|
22
23
|
const EMPTY_ARRAY = Object.freeze([]);
|
23
24
|
|
@@ -49,7 +50,6 @@ export class ExternalStoreThreadRuntimeCore
|
|
49
50
|
return this._capabilities;
|
50
51
|
}
|
51
52
|
|
52
|
-
public threadId!: string;
|
53
53
|
private _messages!: ThreadMessage[];
|
54
54
|
public isDisabled!: boolean;
|
55
55
|
|
@@ -80,8 +80,9 @@ export class ExternalStoreThreadRuntimeCore
|
|
80
80
|
threadId: string,
|
81
81
|
store: ExternalStoreAdapter<any>,
|
82
82
|
) {
|
83
|
-
|
84
|
-
|
83
|
+
const metadata = new LocalThreadMetadataRuntimeCore(threadId);
|
84
|
+
metadata.create();
|
85
|
+
super(configProvider, metadata);
|
85
86
|
this.setStore(store);
|
86
87
|
}
|
87
88
|
|
@@ -33,6 +33,7 @@ export type ThreadMessageLike = {
|
|
33
33
|
createdAt?: Date | undefined;
|
34
34
|
status?: MessageStatus | undefined;
|
35
35
|
attachments?: CompleteAttachment[] | undefined;
|
36
|
+
// TODO metadata
|
36
37
|
};
|
37
38
|
|
38
39
|
export const fromThreadMessageLike = (
|
@@ -53,9 +54,9 @@ export const fromThreadMessageLike = (
|
|
53
54
|
|
54
55
|
if (role !== "user" && attachments)
|
55
56
|
throw new Error("Attachments are only supported for user messages");
|
56
|
-
|
57
|
-
|
58
|
-
|
57
|
+
|
58
|
+
if (role !== "assistant" && status)
|
59
|
+
throw new Error("Status is only supported for assistant messages");
|
59
60
|
|
60
61
|
switch (role) {
|
61
62
|
case "assistant":
|
@@ -17,10 +17,6 @@ export type ChatModelRunResult = {
|
|
17
17
|
content?: ThreadAssistantContentPart[];
|
18
18
|
status?: MessageStatus;
|
19
19
|
metadata?: {
|
20
|
-
/**
|
21
|
-
* @internal Use `steps` instead. This field will be removed in v0.6.
|
22
|
-
*/
|
23
|
-
roundtrips?: ThreadStep[];
|
24
20
|
steps?: ThreadStep[];
|
25
21
|
custom?: Record<string, unknown>;
|
26
22
|
};
|
@@ -32,11 +28,6 @@ export type ChatModelRunOptions = {
|
|
32
28
|
config: ModelConfig;
|
33
29
|
|
34
30
|
unstable_assistantMessageId?: string;
|
35
|
-
|
36
|
-
/**
|
37
|
-
* @deprecated Declare the run function as an AsyncGenerator instead. This method will be removed in v0.6
|
38
|
-
*/
|
39
|
-
onUpdate: (result: ChatModelRunUpdate) => void;
|
40
31
|
};
|
41
32
|
|
42
33
|
export type ChatModelAdapter = {
|
@@ -6,10 +6,6 @@ import { ChatModelAdapter } from "./ChatModelAdapter";
|
|
6
6
|
|
7
7
|
export type LocalRuntimeOptionsBase = {
|
8
8
|
maxSteps?: number | undefined;
|
9
|
-
/**
|
10
|
-
* @deprecated Use `maxSteps` (which is `maxToolRoundtrips` + 1; if you set `maxToolRoundtrips` to 2, set `maxSteps` to 3) instead. This field will be removed in v0.6.
|
11
|
-
*/
|
12
|
-
maxToolRoundtrips?: number | undefined;
|
13
9
|
adapters: {
|
14
10
|
chatModel: ChatModelAdapter;
|
15
11
|
attachments?: AttachmentAdapter | undefined;
|
@@ -27,13 +23,11 @@ export type LocalRuntimeOptions = Omit<LocalRuntimeOptionsBase, "adapters"> & {
|
|
27
23
|
export const splitLocalRuntimeOptions = <T extends LocalRuntimeOptions>(
|
28
24
|
options: T,
|
29
25
|
) => {
|
30
|
-
const { initialMessages,
|
31
|
-
options;
|
26
|
+
const { initialMessages, maxSteps, adapters, ...rest } = options;
|
32
27
|
|
33
28
|
return {
|
34
29
|
localRuntimeOptions: {
|
35
30
|
initialMessages,
|
36
|
-
maxToolRoundtrips,
|
37
31
|
maxSteps,
|
38
32
|
adapters,
|
39
33
|
},
|
@@ -1,16 +1,18 @@
|
|
1
1
|
import type { Unsubscribe } from "../../types";
|
2
|
-
import {
|
3
|
-
ThreadListMetadata,
|
4
|
-
ThreadListRuntimeCore,
|
5
|
-
} from "../core/ThreadListRuntimeCore";
|
2
|
+
import { ThreadListRuntimeCore } from "../core/ThreadListRuntimeCore";
|
6
3
|
import { ExportedMessageRepository } from "../utils/MessageRepository";
|
7
4
|
import { generateId } from "../../utils/idUtils";
|
8
5
|
import { LocalThreadRuntimeCore } from "./LocalThreadRuntimeCore";
|
6
|
+
import { ThreadMetadata } from "../core/ThreadRuntimeCore";
|
7
|
+
|
8
|
+
export type ThreadListAdapter = {
|
9
|
+
subscribe(callback: () => void): Unsubscribe;
|
10
|
+
};
|
9
11
|
|
10
12
|
export type LocalThreadData = {
|
11
|
-
|
12
|
-
|
13
|
-
|
13
|
+
runtime: LocalThreadRuntimeCore;
|
14
|
+
lastState: ThreadMetadata["state"];
|
15
|
+
dispose: Unsubscribe;
|
14
16
|
};
|
15
17
|
|
16
18
|
export type LocalThreadFactory = (
|
@@ -20,9 +22,13 @@ export type LocalThreadFactory = (
|
|
20
22
|
|
21
23
|
export class LocalThreadListRuntimeCore implements ThreadListRuntimeCore {
|
22
24
|
private _threadData = new Map<string, LocalThreadData>();
|
25
|
+
private _threads: readonly string[] = [];
|
26
|
+
private _archivedThreads: readonly string[] = [];
|
27
|
+
private _newThread: string | undefined;
|
23
28
|
|
24
|
-
|
25
|
-
|
29
|
+
public get newThread() {
|
30
|
+
return this._newThread;
|
31
|
+
}
|
26
32
|
|
27
33
|
public get threads() {
|
28
34
|
return this._threads;
|
@@ -32,134 +38,172 @@ export class LocalThreadListRuntimeCore implements ThreadListRuntimeCore {
|
|
32
38
|
return this._archivedThreads;
|
33
39
|
}
|
34
40
|
|
35
|
-
private _mainThread
|
41
|
+
private _mainThread!: LocalThreadRuntimeCore;
|
36
42
|
|
37
43
|
public get mainThread(): LocalThreadRuntimeCore {
|
38
44
|
return this._mainThread;
|
39
45
|
}
|
40
46
|
|
41
47
|
constructor(private _threadFactory: LocalThreadFactory) {
|
42
|
-
|
43
|
-
this._threadData.set(threadId, {
|
44
|
-
data: { messages: [] },
|
45
|
-
metadata: { threadId },
|
46
|
-
isArchived: false,
|
47
|
-
});
|
48
|
-
this._threads = [{ threadId }];
|
49
|
-
this._mainThread = this._threadFactory(threadId, { messages: [] });
|
48
|
+
this.switchToNewThread();
|
50
49
|
}
|
51
50
|
|
52
51
|
public getThreadMetadataById(threadId: string) {
|
53
|
-
return this._threadData.get(threadId)?.metadata;
|
52
|
+
return this._threadData.get(threadId)?.runtime.metadata;
|
54
53
|
}
|
55
54
|
|
56
|
-
public switchToThread(threadId: string): void {
|
57
|
-
if (this._mainThread.threadId === threadId)
|
55
|
+
public switchToThread(threadId: string): Promise<void> {
|
56
|
+
if (this._mainThread?.metadata.threadId === threadId)
|
57
|
+
return Promise.resolve();
|
58
58
|
|
59
59
|
const data = this._threadData.get(threadId);
|
60
60
|
if (!data) throw new Error("Thread not found");
|
61
61
|
|
62
|
-
|
63
|
-
this._performThreadSwitch(thread);
|
64
|
-
}
|
62
|
+
if (data.runtime.metadata.state === "archived") this.unarchive(threadId);
|
65
63
|
|
66
|
-
|
67
|
-
|
68
|
-
this.
|
69
|
-
data: { messages: [] },
|
70
|
-
metadata: { threadId },
|
71
|
-
isArchived: false,
|
72
|
-
});
|
73
|
-
this._threads = [{ threadId }];
|
74
|
-
const thread = this._threadFactory(threadId, { messages: [] });
|
75
|
-
this._performThreadSwitch(thread);
|
76
|
-
}
|
77
|
-
|
78
|
-
private _performThreadSwitch(newThreadCore: LocalThreadRuntimeCore) {
|
79
|
-
const data = this._threadData.get(this._mainThread.threadId);
|
80
|
-
if (!data) throw new Error("Thread not found");
|
64
|
+
this._mainThread?._notifyEventSubscribers("switched-away");
|
65
|
+
this._mainThread = data.runtime;
|
66
|
+
this._notifySubscribers();
|
81
67
|
|
82
|
-
|
83
|
-
|
68
|
+
data.runtime._notifyEventSubscribers("switched-to");
|
69
|
+
return Promise.resolve();
|
70
|
+
}
|
84
71
|
|
85
|
-
|
86
|
-
this.
|
87
|
-
|
72
|
+
public switchToNewThread(): Promise<void> {
|
73
|
+
if (this._newThread === undefined) {
|
74
|
+
let threadId: string;
|
75
|
+
do {
|
76
|
+
threadId = generateId();
|
77
|
+
} while (this._threadData.has(threadId));
|
78
|
+
|
79
|
+
const runtime = this._threadFactory(threadId, { messages: [] });
|
80
|
+
const dispose = runtime.metadata.subscribe(() => {
|
81
|
+
this._syncState(threadId, runtime.metadata);
|
82
|
+
threadId = runtime.metadata.threadId;
|
83
|
+
});
|
84
|
+
this._threadData.set(threadId, { runtime, lastState: "new", dispose });
|
85
|
+
this._newThread = threadId;
|
86
|
+
}
|
88
87
|
|
89
|
-
this.
|
88
|
+
this.switchToThread(this._newThread);
|
89
|
+
return Promise.resolve();
|
90
90
|
}
|
91
91
|
|
92
|
-
private
|
93
|
-
|
94
|
-
|
92
|
+
private async _syncState(
|
93
|
+
lastThreadId: string,
|
94
|
+
{ state, threadId }: ThreadMetadata,
|
95
95
|
) {
|
96
|
-
const data = this._threadData.get(
|
96
|
+
const data = this._threadData.get(lastThreadId);
|
97
97
|
if (!data) throw new Error("Thread not found");
|
98
|
-
|
99
|
-
if (
|
100
|
-
|
101
|
-
|
102
|
-
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
|
108
|
-
|
109
|
-
|
110
|
-
|
111
|
-
|
98
|
+
const lastState = data.lastState;
|
99
|
+
if (lastState === state && lastThreadId === threadId) return;
|
100
|
+
|
101
|
+
if (lastThreadId !== threadId) {
|
102
|
+
this._threadData.delete(lastThreadId);
|
103
|
+
if (lastState === "new") {
|
104
|
+
this._newThread = threadId;
|
105
|
+
}
|
106
|
+
if (lastState === "regular") {
|
107
|
+
this._threads = this._threads.map((t) =>
|
108
|
+
t === lastThreadId ? threadId : t,
|
109
|
+
);
|
110
|
+
}
|
111
|
+
if (lastState === "archived") {
|
112
|
+
this._archivedThreads = this._archivedThreads.map((t) =>
|
113
|
+
t === lastThreadId ? threadId : t,
|
114
|
+
);
|
115
|
+
}
|
112
116
|
}
|
113
117
|
|
114
|
-
if (
|
115
|
-
|
116
|
-
|
117
|
-
|
118
|
-
|
119
|
-
|
120
|
-
|
118
|
+
if (lastState !== state) {
|
119
|
+
if (lastState === "new") {
|
120
|
+
this._newThread = undefined;
|
121
|
+
}
|
122
|
+
|
123
|
+
if (lastState === "regular") {
|
124
|
+
this._threads = this._threads.filter((t) => t !== threadId);
|
125
|
+
}
|
126
|
+
|
127
|
+
if (lastState === "archived") {
|
128
|
+
this._archivedThreads = this._archivedThreads.filter(
|
129
|
+
(t) => t !== threadId,
|
130
|
+
);
|
131
|
+
}
|
132
|
+
|
133
|
+
if (state === "new") {
|
134
|
+
if (this._newThread) {
|
135
|
+
this.delete(this._newThread);
|
136
|
+
}
|
137
|
+
this._newThread = threadId;
|
138
|
+
}
|
139
|
+
if (state === "archived") {
|
140
|
+
this._archivedThreads = [
|
141
|
+
...this._archivedThreads,
|
142
|
+
data.runtime.metadata.threadId,
|
143
|
+
];
|
144
|
+
}
|
145
|
+
if (state === "regular") {
|
146
|
+
this._threads = [...this._threads, data.runtime.metadata.threadId];
|
147
|
+
}
|
148
|
+
if (state === "deleted") {
|
149
|
+
data.dispose();
|
150
|
+
this._threadData.delete(threadId);
|
151
|
+
}
|
152
|
+
|
153
|
+
data.lastState = state;
|
121
154
|
}
|
122
155
|
|
156
|
+
this._notifySubscribers();
|
157
|
+
|
123
158
|
if (
|
124
|
-
|
125
|
-
(
|
159
|
+
threadId === this._mainThread.metadata.threadId &&
|
160
|
+
(state === "archived" || state === "deleted")
|
126
161
|
) {
|
127
|
-
|
162
|
+
const lastThread = this._threads[0];
|
163
|
+
if (lastThread) {
|
164
|
+
await this.switchToThread(lastThread);
|
165
|
+
} else {
|
166
|
+
await this.switchToNewThread();
|
167
|
+
}
|
128
168
|
}
|
129
|
-
|
130
|
-
this._notifySubscribers();
|
131
169
|
}
|
132
170
|
|
133
|
-
public
|
171
|
+
public rename(threadId: string, newTitle: string): Promise<void> {
|
134
172
|
const data = this._threadData.get(threadId);
|
135
173
|
if (!data) throw new Error("Thread not found");
|
174
|
+
data.runtime.metadata.rename(newTitle);
|
136
175
|
|
137
|
-
|
138
|
-
...data.metadata,
|
139
|
-
title: newTitle,
|
140
|
-
};
|
141
|
-
|
142
|
-
const threadList = data.isArchived ? this.archivedThreads : this.threads;
|
143
|
-
const idx = threadList.findIndex((t) => t.threadId === threadId);
|
144
|
-
const updatedThreadList = threadList.toSpliced(idx, 1, data.metadata);
|
145
|
-
if (data.isArchived) {
|
146
|
-
this._archivedThreads = updatedThreadList;
|
147
|
-
} else {
|
148
|
-
this._threads = updatedThreadList;
|
149
|
-
}
|
150
|
-
this._notifySubscribers();
|
176
|
+
return Promise.resolve();
|
151
177
|
}
|
152
178
|
|
153
|
-
public
|
154
|
-
this.
|
179
|
+
public archive(threadId: string): Promise<void> {
|
180
|
+
const data = this._threadData.get(threadId);
|
181
|
+
if (!data) throw new Error("Thread not found");
|
182
|
+
if (data.lastState !== "regular")
|
183
|
+
throw new Error("Thread is not yet created or archived");
|
184
|
+
data.runtime.metadata.archive();
|
185
|
+
|
186
|
+
return Promise.resolve();
|
155
187
|
}
|
156
188
|
|
157
|
-
public
|
158
|
-
this.
|
189
|
+
public unarchive(threadId: string): Promise<void> {
|
190
|
+
const data = this._threadData.get(threadId);
|
191
|
+
if (!data) throw new Error("Thread not found");
|
192
|
+
if (data.lastState !== "archived")
|
193
|
+
throw new Error("Thread is not archived");
|
194
|
+
data.runtime.metadata.unarchive();
|
195
|
+
|
196
|
+
return Promise.resolve();
|
159
197
|
}
|
160
198
|
|
161
|
-
public
|
162
|
-
this.
|
199
|
+
public delete(threadId: string): Promise<void> {
|
200
|
+
const data = this._threadData.get(threadId);
|
201
|
+
if (!data) throw new Error("Thread not found");
|
202
|
+
if (data.lastState !== "regular" && data.lastState !== "archived")
|
203
|
+
throw new Error("Thread is not yet created or already deleted");
|
204
|
+
data.runtime.metadata.delete();
|
205
|
+
|
206
|
+
return Promise.resolve();
|
163
207
|
}
|
164
208
|
|
165
209
|
private _subscriptions = new Set<() => void>();
|
@@ -0,0 +1,79 @@
|
|
1
|
+
import { ThreadMetadataRuntimeCore } from "../core/ThreadRuntimeCore";
|
2
|
+
|
3
|
+
export class LocalThreadMetadataRuntimeCore
|
4
|
+
implements ThreadMetadataRuntimeCore
|
5
|
+
{
|
6
|
+
private _state: "regular" | "archived" | "deleted" | "new" = "new";
|
7
|
+
private _title: string | undefined;
|
8
|
+
private _subscribers = new Set<() => void>();
|
9
|
+
|
10
|
+
constructor(private _threadId: string) {}
|
11
|
+
|
12
|
+
public get threadId() {
|
13
|
+
return this._threadId;
|
14
|
+
}
|
15
|
+
|
16
|
+
public get state() {
|
17
|
+
return this._state;
|
18
|
+
}
|
19
|
+
|
20
|
+
public get title() {
|
21
|
+
return this._title;
|
22
|
+
}
|
23
|
+
|
24
|
+
public rename(newTitle: string) {
|
25
|
+
this._title = newTitle;
|
26
|
+
this._notifySubscribers();
|
27
|
+
|
28
|
+
return Promise.resolve();
|
29
|
+
}
|
30
|
+
|
31
|
+
public archive() {
|
32
|
+
if (this._state === "new") throw new Error("Thread not created");
|
33
|
+
if (this._state === "archived") throw new Error("Thread already archived");
|
34
|
+
if (this._state === "deleted") throw new Error("Thread deleted");
|
35
|
+
|
36
|
+
this._state = "archived";
|
37
|
+
this._notifySubscribers();
|
38
|
+
|
39
|
+
return Promise.resolve();
|
40
|
+
}
|
41
|
+
|
42
|
+
public unarchive() {
|
43
|
+
if (this._state !== "archived") throw new Error("Thread not archived");
|
44
|
+
|
45
|
+
this._state = "regular";
|
46
|
+
this._notifySubscribers();
|
47
|
+
|
48
|
+
return Promise.resolve();
|
49
|
+
}
|
50
|
+
|
51
|
+
public delete() {
|
52
|
+
if (this._state === "new") throw new Error("Thread not created");
|
53
|
+
if (this._state === "deleted") throw new Error("Thread already deleted");
|
54
|
+
|
55
|
+
this._state = "deleted";
|
56
|
+
this._notifySubscribers();
|
57
|
+
|
58
|
+
return Promise.resolve();
|
59
|
+
}
|
60
|
+
|
61
|
+
public create(title?: string) {
|
62
|
+
if (this.state !== "new") throw new Error("Thread not new");
|
63
|
+
|
64
|
+
this._state = "regular";
|
65
|
+
this._title = title ?? this._title;
|
66
|
+
this._notifySubscribers();
|
67
|
+
|
68
|
+
return Promise.resolve();
|
69
|
+
}
|
70
|
+
|
71
|
+
public subscribe(callback: () => void) {
|
72
|
+
this._subscribers.add(callback);
|
73
|
+
return () => this._subscribers.delete(callback);
|
74
|
+
}
|
75
|
+
|
76
|
+
private _notifySubscribers() {
|
77
|
+
for (const callback of this._subscribers) callback();
|
78
|
+
}
|
79
|
+
}
|