@assistant-ui/react 0.10.50 → 0.11.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/api/AttachmentRuntime.d.ts.map +1 -1
- package/dist/api/AttachmentRuntime.js +1 -0
- package/dist/api/AttachmentRuntime.js.map +1 -1
- package/dist/api/ComposerRuntime.d.ts +5 -2
- package/dist/api/ComposerRuntime.d.ts.map +1 -1
- package/dist/api/ComposerRuntime.js +4 -6
- package/dist/api/ComposerRuntime.js.map +1 -1
- package/dist/api/MessagePartRuntime.d.ts.map +1 -1
- package/dist/api/MessagePartRuntime.js +1 -0
- package/dist/api/MessagePartRuntime.js.map +1 -1
- package/dist/api/MessageRuntime.d.ts.map +1 -1
- package/dist/api/MessageRuntime.js +1 -0
- package/dist/api/MessageRuntime.js.map +1 -1
- package/dist/api/ThreadListItemRuntime.d.ts.map +1 -1
- package/dist/api/ThreadListItemRuntime.js +5 -0
- package/dist/api/ThreadListItemRuntime.js.map +1 -1
- package/dist/api/ThreadListRuntime.d.ts +2 -3
- package/dist/api/ThreadListRuntime.d.ts.map +1 -1
- package/dist/api/ThreadListRuntime.js +6 -7
- package/dist/api/ThreadListRuntime.js.map +1 -1
- package/dist/api/ThreadRuntime.d.ts +6 -6
- package/dist/api/ThreadRuntime.d.ts.map +1 -1
- package/dist/api/ThreadRuntime.js +5 -4
- package/dist/api/ThreadRuntime.js.map +1 -1
- package/dist/client/AssistantRuntimeClient.d.ts +86 -0
- package/dist/client/AssistantRuntimeClient.d.ts.map +1 -0
- package/dist/client/AssistantRuntimeClient.js +138 -0
- package/dist/client/AssistantRuntimeClient.js.map +1 -0
- package/dist/client/AttachmentClient.d.ts +6 -0
- package/dist/client/AttachmentClient.d.ts.map +1 -0
- package/dist/client/AttachmentClient.js +1 -0
- package/dist/client/AttachmentClient.js.map +1 -0
- package/dist/client/ComposerClient.d.ts +42 -0
- package/dist/client/ComposerClient.d.ts.map +1 -0
- package/dist/client/ComposerClient.js +76 -0
- package/dist/client/ComposerClient.js.map +1 -0
- package/dist/client/EventManagerClient.d.ts +9 -0
- package/dist/client/EventManagerClient.d.ts.map +1 -0
- package/dist/client/EventManagerClient.js +40 -0
- package/dist/client/EventManagerClient.js.map +1 -0
- package/dist/client/MessageClient.d.ts +67 -0
- package/dist/client/MessageClient.d.ts.map +1 -0
- package/dist/client/MessageClient.js +108 -0
- package/dist/client/MessageClient.js.map +1 -0
- package/dist/client/MessagePartClient.d.ts +21 -0
- package/dist/client/MessagePartClient.d.ts.map +1 -0
- package/dist/client/MessagePartClient.js +25 -0
- package/dist/client/MessagePartClient.js.map +1 -0
- package/dist/client/ThreadClient.d.ts +111 -0
- package/dist/client/ThreadClient.d.ts.map +1 -0
- package/dist/client/ThreadClient.js +126 -0
- package/dist/client/ThreadClient.js.map +1 -0
- package/dist/client/ThreadListClient.d.ts +33 -0
- package/dist/client/ThreadListClient.d.ts.map +1 -0
- package/dist/client/ThreadListClient.js +87 -0
- package/dist/client/ThreadListClient.js.map +1 -0
- package/dist/client/ThreadListItemClient.d.ts +32 -0
- package/dist/client/ThreadListItemClient.d.ts.map +1 -0
- package/dist/client/ThreadListItemClient.js +53 -0
- package/dist/client/ThreadListItemClient.js.map +1 -0
- package/dist/client/util-hooks/tapLookupResources.d.ts +16 -0
- package/dist/client/util-hooks/tapLookupResources.d.ts.map +1 -0
- package/dist/client/util-hooks/tapLookupResources.js +21 -0
- package/dist/client/util-hooks/tapLookupResources.js.map +1 -0
- package/dist/client/util-hooks/tapSubscribable.d.ts +3 -0
- package/dist/client/util-hooks/tapSubscribable.d.ts.map +1 -0
- package/dist/client/util-hooks/tapSubscribable.js +16 -0
- package/dist/client/util-hooks/tapSubscribable.js.map +1 -0
- package/dist/cloud/AssistantCloudThreadHistoryAdapter.d.ts.map +1 -1
- package/dist/cloud/AssistantCloudThreadHistoryAdapter.js +21 -12
- package/dist/cloud/AssistantCloudThreadHistoryAdapter.js.map +1 -1
- package/dist/context/providers/AssistantRuntimeProvider.d.ts +3 -3
- package/dist/context/providers/AssistantRuntimeProvider.d.ts.map +1 -1
- package/dist/context/providers/AssistantRuntimeProvider.js +14 -42
- package/dist/context/providers/AssistantRuntimeProvider.js.map +1 -1
- package/dist/context/providers/AttachmentProvider.d.ts +8 -0
- package/dist/context/providers/AttachmentProvider.d.ts.map +1 -0
- package/dist/context/providers/AttachmentProvider.js +41 -0
- package/dist/context/providers/AttachmentProvider.js.map +1 -0
- package/dist/context/providers/MessageProvider.d.ts +5 -0
- package/dist/context/providers/MessageProvider.d.ts.map +1 -0
- package/dist/context/providers/MessageProvider.js +47 -0
- package/dist/context/providers/MessageProvider.js.map +1 -0
- package/dist/context/providers/PartProvider.d.ts +5 -0
- package/dist/context/providers/PartProvider.d.ts.map +1 -0
- package/dist/context/providers/PartProvider.js +27 -0
- package/dist/context/providers/PartProvider.js.map +1 -0
- package/dist/context/providers/TextMessagePartProvider.d.ts +5 -8
- package/dist/context/providers/TextMessagePartProvider.d.ts.map +1 -1
- package/dist/context/providers/TextMessagePartProvider.js +42 -53
- package/dist/context/providers/TextMessagePartProvider.js.map +1 -1
- package/dist/context/providers/ThreadListItemProvider.d.ts +9 -0
- package/dist/context/providers/ThreadListItemProvider.d.ts.map +1 -0
- package/dist/context/providers/ThreadListItemProvider.js +65 -0
- package/dist/context/providers/ThreadListItemProvider.js.map +1 -0
- package/dist/context/providers/index.d.ts +4 -1
- package/dist/context/providers/index.d.ts.map +1 -1
- package/dist/context/providers/index.js +17 -3
- package/dist/context/providers/index.js.map +1 -1
- package/dist/context/react/AssistantApiContext.d.ts +112 -0
- package/dist/context/react/AssistantApiContext.d.ts.map +1 -0
- package/dist/context/react/AssistantApiContext.js +197 -0
- package/dist/context/react/AssistantApiContext.js.map +1 -0
- package/dist/context/react/index.d.ts +9 -12
- package/dist/context/react/index.d.ts.map +1 -1
- package/dist/context/react/index.js +38 -33
- package/dist/context/react/index.js.map +1 -1
- package/dist/context/react/legacy/AssistantContext.d.ts +58 -0
- package/dist/context/react/legacy/AssistantContext.d.ts.map +1 -0
- package/dist/context/react/legacy/AssistantContext.js +20 -0
- package/dist/context/react/legacy/AssistantContext.js.map +1 -0
- package/dist/context/react/{AttachmentContext.d.ts → legacy/AttachmentContext.d.ts} +133 -139
- package/dist/context/react/legacy/AttachmentContext.d.ts.map +1 -0
- package/dist/context/react/{AttachmentContext.js → legacy/AttachmentContext.js} +9 -15
- package/dist/context/react/legacy/AttachmentContext.js.map +1 -0
- package/dist/context/react/{ComposerContext.d.ts → legacy/ComposerContext.d.ts} +12 -12
- package/dist/context/react/legacy/ComposerContext.d.ts.map +1 -0
- package/dist/context/react/legacy/ComposerContext.js +19 -0
- package/dist/context/react/legacy/ComposerContext.js.map +1 -0
- package/dist/context/react/{MessageContext.d.ts → legacy/MessageContext.d.ts} +23 -47
- package/dist/context/react/legacy/MessageContext.d.ts.map +1 -0
- package/dist/context/react/legacy/MessageContext.js +24 -0
- package/dist/context/react/legacy/MessageContext.js.map +1 -0
- package/dist/context/react/legacy/MessagePartContext.d.ts +35 -0
- package/dist/context/react/legacy/MessagePartContext.d.ts.map +1 -0
- package/dist/context/react/legacy/MessagePartContext.js +19 -0
- package/dist/context/react/legacy/MessagePartContext.js.map +1 -0
- package/dist/context/react/{ThreadContext.d.ts → legacy/ThreadContext.d.ts} +24 -30
- package/dist/context/react/legacy/ThreadContext.d.ts.map +1 -0
- package/dist/context/react/legacy/ThreadContext.js +33 -0
- package/dist/context/react/legacy/ThreadContext.js.map +1 -0
- package/dist/context/react/legacy/ThreadListItemContext.d.ts +35 -0
- package/dist/context/react/legacy/ThreadListItemContext.d.ts.map +1 -0
- package/dist/context/react/legacy/ThreadListItemContext.js +21 -0
- package/dist/context/react/legacy/ThreadListItemContext.js.map +1 -0
- package/dist/context/stores/index.d.ts +0 -2
- package/dist/context/stores/index.d.ts.map +1 -1
- package/dist/hooks/useAssistantEvent.d.ts +3 -0
- package/dist/hooks/useAssistantEvent.d.ts.map +1 -0
- package/dist/hooks/useAssistantEvent.js +22 -0
- package/dist/hooks/useAssistantEvent.js.map +1 -0
- package/dist/model-context/makeAssistantVisible.js +4 -4
- package/dist/model-context/makeAssistantVisible.js.map +1 -1
- package/dist/model-context/useAssistantInstructions.js +4 -4
- package/dist/model-context/useAssistantInstructions.js.map +1 -1
- package/dist/model-context/useAssistantTool.d.ts.map +1 -1
- package/dist/model-context/useAssistantTool.js +7 -10
- package/dist/model-context/useAssistantTool.js.map +1 -1
- package/dist/model-context/useAssistantToolUI.js +5 -5
- package/dist/model-context/useAssistantToolUI.js.map +1 -1
- package/dist/primitives/actionBar/ActionBarCopy.d.ts.map +1 -1
- package/dist/primitives/actionBar/ActionBarCopy.js +12 -17
- package/dist/primitives/actionBar/ActionBarCopy.js.map +1 -1
- package/dist/primitives/actionBar/ActionBarEdit.js +5 -5
- package/dist/primitives/actionBar/ActionBarEdit.js.map +1 -1
- package/dist/primitives/actionBar/ActionBarFeedbackNegative.d.ts.map +1 -1
- package/dist/primitives/actionBar/ActionBarFeedbackNegative.js +6 -7
- package/dist/primitives/actionBar/ActionBarFeedbackNegative.js.map +1 -1
- package/dist/primitives/actionBar/ActionBarFeedbackPositive.js +6 -6
- package/dist/primitives/actionBar/ActionBarFeedbackPositive.js.map +1 -1
- package/dist/primitives/actionBar/ActionBarReload.d.ts.map +1 -1
- package/dist/primitives/actionBar/ActionBarReload.js +6 -10
- package/dist/primitives/actionBar/ActionBarReload.js.map +1 -1
- package/dist/primitives/actionBar/ActionBarSpeak.js +6 -6
- package/dist/primitives/actionBar/ActionBarSpeak.js.map +1 -1
- package/dist/primitives/actionBar/ActionBarStopSpeaking.d.ts.map +1 -1
- package/dist/primitives/actionBar/ActionBarStopSpeaking.js +5 -8
- package/dist/primitives/actionBar/ActionBarStopSpeaking.js.map +1 -1
- package/dist/primitives/actionBar/useActionBarFloatStatus.d.ts.map +1 -1
- package/dist/primitives/actionBar/useActionBarFloatStatus.js +10 -21
- package/dist/primitives/actionBar/useActionBarFloatStatus.js.map +1 -1
- package/dist/primitives/assistantModal/AssistantModalRoot.js +4 -4
- package/dist/primitives/assistantModal/AssistantModalRoot.js.map +1 -1
- package/dist/primitives/attachment/AttachmentName.js +2 -2
- package/dist/primitives/attachment/AttachmentName.js.map +1 -1
- package/dist/primitives/attachment/AttachmentRemove.js +4 -4
- package/dist/primitives/attachment/AttachmentRemove.js.map +1 -1
- package/dist/primitives/attachment/AttachmentThumb.d.ts.map +1 -1
- package/dist/primitives/attachment/AttachmentThumb.js +5 -2
- package/dist/primitives/attachment/AttachmentThumb.js.map +1 -1
- package/dist/primitives/branchPicker/BranchPickerCount.js +2 -2
- package/dist/primitives/branchPicker/BranchPickerCount.js.map +1 -1
- package/dist/primitives/branchPicker/BranchPickerNext.d.ts.map +1 -1
- package/dist/primitives/branchPicker/BranchPickerNext.js +7 -8
- package/dist/primitives/branchPicker/BranchPickerNext.js.map +1 -1
- package/dist/primitives/branchPicker/BranchPickerNumber.js +2 -2
- package/dist/primitives/branchPicker/BranchPickerNumber.js.map +1 -1
- package/dist/primitives/branchPicker/BranchPickerPrevious.d.ts.map +1 -1
- package/dist/primitives/branchPicker/BranchPickerPrevious.js +7 -8
- package/dist/primitives/branchPicker/BranchPickerPrevious.js.map +1 -1
- package/dist/primitives/composer/ComposerAddAttachment.js +6 -6
- package/dist/primitives/composer/ComposerAddAttachment.js.map +1 -1
- package/dist/primitives/composer/ComposerAttachmentDropzone.js +4 -4
- package/dist/primitives/composer/ComposerAttachmentDropzone.js.map +1 -1
- package/dist/primitives/composer/ComposerAttachments.d.ts.map +1 -1
- package/dist/primitives/composer/ComposerAttachments.js +11 -13
- package/dist/primitives/composer/ComposerAttachments.js.map +1 -1
- package/dist/primitives/composer/ComposerCancel.js +5 -5
- package/dist/primitives/composer/ComposerCancel.js.map +1 -1
- package/dist/primitives/composer/ComposerIf.js +2 -2
- package/dist/primitives/composer/ComposerIf.js.map +1 -1
- package/dist/primitives/composer/ComposerInput.d.ts.map +1 -1
- package/dist/primitives/composer/ComposerInput.js +22 -32
- package/dist/primitives/composer/ComposerInput.js.map +1 -1
- package/dist/primitives/composer/ComposerSend.d.ts.map +1 -1
- package/dist/primitives/composer/ComposerSend.js +6 -10
- package/dist/primitives/composer/ComposerSend.js.map +1 -1
- package/dist/primitives/error/ErrorMessage.d.ts.map +1 -1
- package/dist/primitives/error/ErrorMessage.js +3 -3
- package/dist/primitives/error/ErrorMessage.js.map +1 -1
- package/dist/primitives/message/MessageAttachments.d.ts.map +1 -1
- package/dist/primitives/message/MessageAttachments.js +9 -11
- package/dist/primitives/message/MessageAttachments.js.map +1 -1
- package/dist/primitives/message/MessageError.d.ts.map +1 -1
- package/dist/primitives/message/MessageError.js +3 -3
- package/dist/primitives/message/MessageError.js.map +1 -1
- package/dist/primitives/message/MessageIf.d.ts.map +1 -1
- package/dist/primitives/message/MessageIf.js +28 -34
- package/dist/primitives/message/MessageIf.js.map +1 -1
- package/dist/primitives/message/MessageParts.d.ts.map +1 -1
- package/dist/primitives/message/MessageParts.js +25 -27
- package/dist/primitives/message/MessageParts.js.map +1 -1
- package/dist/primitives/message/MessagePartsGrouped.d.ts.map +1 -1
- package/dist/primitives/message/MessagePartsGrouped.js +24 -26
- package/dist/primitives/message/MessagePartsGrouped.js.map +1 -1
- package/dist/primitives/message/MessageRoot.d.ts.map +1 -1
- package/dist/primitives/message/MessageRoot.js +8 -7
- package/dist/primitives/message/MessageRoot.js.map +1 -1
- package/dist/primitives/messagePart/MessagePartInProgress.d.ts.map +1 -1
- package/dist/primitives/messagePart/MessagePartInProgress.js +4 -2
- package/dist/primitives/messagePart/MessagePartInProgress.js.map +1 -1
- package/dist/primitives/messagePart/useMessagePartFile.js +4 -4
- package/dist/primitives/messagePart/useMessagePartFile.js.map +1 -1
- package/dist/primitives/messagePart/useMessagePartImage.js +4 -4
- package/dist/primitives/messagePart/useMessagePartImage.js.map +1 -1
- package/dist/primitives/messagePart/useMessagePartReasoning.js +4 -4
- package/dist/primitives/messagePart/useMessagePartReasoning.js.map +1 -1
- package/dist/primitives/messagePart/useMessagePartSource.js +4 -4
- package/dist/primitives/messagePart/useMessagePartSource.js.map +1 -1
- package/dist/primitives/messagePart/useMessagePartText.js +4 -4
- package/dist/primitives/messagePart/useMessagePartText.js.map +1 -1
- package/dist/primitives/thread/ThreadEmpty.js +2 -2
- package/dist/primitives/thread/ThreadEmpty.js.map +1 -1
- package/dist/primitives/thread/ThreadIf.js +2 -2
- package/dist/primitives/thread/ThreadIf.js.map +1 -1
- package/dist/primitives/thread/ThreadMessages.d.ts.map +1 -1
- package/dist/primitives/thread/ThreadMessages.js +9 -12
- package/dist/primitives/thread/ThreadMessages.js.map +1 -1
- package/dist/primitives/thread/ThreadSuggestion.d.ts.map +1 -1
- package/dist/primitives/thread/ThreadSuggestion.js +8 -8
- package/dist/primitives/thread/ThreadSuggestion.js.map +1 -1
- package/dist/primitives/thread/useThreadViewportAutoScroll.d.ts.map +1 -1
- package/dist/primitives/thread/useThreadViewportAutoScroll.js +3 -6
- package/dist/primitives/thread/useThreadViewportAutoScroll.js.map +1 -1
- package/dist/primitives/threadList/ThreadListItems.d.ts.map +1 -1
- package/dist/primitives/threadList/ThreadListItems.js +7 -10
- package/dist/primitives/threadList/ThreadListItems.js.map +1 -1
- package/dist/primitives/threadList/ThreadListNew.d.ts +1 -3
- package/dist/primitives/threadList/ThreadListNew.d.ts.map +1 -1
- package/dist/primitives/threadList/ThreadListNew.js +7 -11
- package/dist/primitives/threadList/ThreadListNew.js.map +1 -1
- package/dist/primitives/threadListItem/ThreadListItemArchive.js +4 -4
- package/dist/primitives/threadListItem/ThreadListItemArchive.js.map +1 -1
- package/dist/primitives/threadListItem/ThreadListItemDelete.d.ts.map +1 -1
- package/dist/primitives/threadListItem/ThreadListItemDelete.js +6 -5
- package/dist/primitives/threadListItem/ThreadListItemDelete.js.map +1 -1
- package/dist/primitives/threadListItem/ThreadListItemRoot.d.ts.map +1 -1
- package/dist/primitives/threadListItem/ThreadListItemRoot.js +4 -2
- package/dist/primitives/threadListItem/ThreadListItemRoot.js.map +1 -1
- package/dist/primitives/threadListItem/ThreadListItemTitle.js +2 -2
- package/dist/primitives/threadListItem/ThreadListItemTitle.js.map +1 -1
- package/dist/primitives/threadListItem/ThreadListItemTrigger.d.ts.map +1 -1
- package/dist/primitives/threadListItem/ThreadListItemTrigger.js +6 -5
- package/dist/primitives/threadListItem/ThreadListItemTrigger.js.map +1 -1
- package/dist/primitives/threadListItem/ThreadListItemUnarchive.d.ts.map +1 -1
- package/dist/primitives/threadListItem/ThreadListItemUnarchive.js +6 -5
- package/dist/primitives/threadListItem/ThreadListItemUnarchive.js.map +1 -1
- package/dist/runtimes/adapters/attachment/index.js.map +1 -1
- package/dist/runtimes/composer/BaseComposerRuntimeCore.d.ts +1 -1
- package/dist/runtimes/composer/BaseComposerRuntimeCore.d.ts.map +1 -1
- package/dist/runtimes/composer/BaseComposerRuntimeCore.js +3 -3
- package/dist/runtimes/composer/BaseComposerRuntimeCore.js.map +1 -1
- package/dist/runtimes/core/BaseThreadRuntimeCore.d.ts +1 -1
- package/dist/runtimes/core/BaseThreadRuntimeCore.d.ts.map +1 -1
- package/dist/runtimes/core/BaseThreadRuntimeCore.js +5 -1
- package/dist/runtimes/core/BaseThreadRuntimeCore.js.map +1 -1
- package/dist/runtimes/core/ComposerRuntimeCore.d.ts +2 -2
- package/dist/runtimes/core/ComposerRuntimeCore.d.ts.map +1 -1
- package/dist/runtimes/core/ThreadListRuntimeCore.d.ts +5 -5
- package/dist/runtimes/core/ThreadListRuntimeCore.d.ts.map +1 -1
- package/dist/runtimes/external-store/ExternalStoreAdapter.d.ts +5 -2
- package/dist/runtimes/external-store/ExternalStoreAdapter.d.ts.map +1 -1
- package/dist/runtimes/external-store/ExternalStoreThreadListRuntimeCore.d.ts +6 -4
- package/dist/runtimes/external-store/ExternalStoreThreadListRuntimeCore.d.ts.map +1 -1
- package/dist/runtimes/external-store/ExternalStoreThreadListRuntimeCore.js +42 -7
- package/dist/runtimes/external-store/ExternalStoreThreadListRuntimeCore.js.map +1 -1
- package/dist/runtimes/external-store/ExternalStoreThreadRuntimeCore.d.ts.map +1 -1
- package/dist/runtimes/external-store/ExternalStoreThreadRuntimeCore.js +3 -0
- package/dist/runtimes/external-store/ExternalStoreThreadRuntimeCore.js.map +1 -1
- package/dist/runtimes/external-store/createMessageConverter.d.ts +2 -2
- package/dist/runtimes/external-store/createMessageConverter.d.ts.map +1 -1
- package/dist/runtimes/external-store/createMessageConverter.js +9 -6
- package/dist/runtimes/external-store/createMessageConverter.js.map +1 -1
- package/dist/runtimes/local/LocalThreadListRuntimeCore.d.ts +10 -1
- package/dist/runtimes/local/LocalThreadListRuntimeCore.d.ts.map +1 -1
- package/dist/runtimes/local/LocalThreadListRuntimeCore.js +15 -2
- package/dist/runtimes/local/LocalThreadListRuntimeCore.js.map +1 -1
- package/dist/runtimes/remote-thread-list/EMPTY_THREAD_CORE.d.ts.map +1 -1
- package/dist/runtimes/remote-thread-list/EMPTY_THREAD_CORE.js +3 -5
- package/dist/runtimes/remote-thread-list/EMPTY_THREAD_CORE.js.map +1 -1
- package/dist/runtimes/remote-thread-list/RemoteThreadListHookInstanceManager.d.ts.map +1 -1
- package/dist/runtimes/remote-thread-list/RemoteThreadListHookInstanceManager.js +13 -19
- package/dist/runtimes/remote-thread-list/RemoteThreadListHookInstanceManager.js.map +1 -1
- package/dist/runtimes/remote-thread-list/RemoteThreadListThreadListRuntimeCore.d.ts +11 -7
- package/dist/runtimes/remote-thread-list/RemoteThreadListThreadListRuntimeCore.d.ts.map +1 -1
- package/dist/runtimes/remote-thread-list/RemoteThreadListThreadListRuntimeCore.js +41 -35
- package/dist/runtimes/remote-thread-list/RemoteThreadListThreadListRuntimeCore.js.map +1 -1
- package/dist/tests/setup.js +8 -8
- package/dist/tests/setup.js.map +1 -1
- package/dist/types/EventTypes.d.ts +49 -0
- package/dist/types/EventTypes.d.ts.map +1 -0
- package/dist/types/EventTypes.js +22 -0
- package/dist/types/EventTypes.js.map +1 -0
- package/dist/types/index.d.ts +1 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/utils/smooth/SmoothContext.js +3 -3
- package/dist/utils/smooth/SmoothContext.js.map +1 -1
- package/dist/utils/smooth/useSmooth.d.ts.map +1 -1
- package/dist/utils/smooth/useSmooth.js +2 -5
- package/dist/utils/smooth/useSmooth.js.map +1 -1
- package/dist/utils/tap-store/index.d.ts +3 -0
- package/dist/utils/tap-store/index.d.ts.map +1 -0
- package/dist/utils/tap-store/index.js +8 -0
- package/dist/utils/tap-store/index.js.map +1 -0
- package/dist/utils/tap-store/store.d.ts +21 -0
- package/dist/utils/tap-store/store.d.ts.map +1 -0
- package/dist/utils/tap-store/store.js +29 -0
- package/dist/utils/tap-store/store.js.map +1 -0
- package/dist/utils/tap-store/tap-store-api.d.ts +8 -0
- package/dist/utils/tap-store/tap-store-api.d.ts.map +1 -0
- package/dist/utils/tap-store/tap-store-api.js +57 -0
- package/dist/utils/tap-store/tap-store-api.js.map +1 -0
- package/dist/utils/useToolArgsFieldStatus.js +6 -6
- package/dist/utils/useToolArgsFieldStatus.js.map +1 -1
- package/package.json +2 -1
- package/src/api/AttachmentRuntime.ts +3 -1
- package/src/api/ComposerRuntime.ts +16 -9
- package/src/api/MessagePartRuntime.ts +3 -1
- package/src/api/MessageRuntime.ts +2 -0
- package/src/api/ThreadListItemRuntime.ts +11 -1
- package/src/api/ThreadListRuntime.ts +9 -9
- package/src/api/ThreadRuntime.ts +9 -7
- package/src/client/AssistantRuntimeClient.ts +197 -0
- package/src/client/AttachmentClient.ts +11 -0
- package/src/client/ComposerClient.ts +133 -0
- package/src/client/EventManagerClient.ts +63 -0
- package/src/client/MessageClient.ts +196 -0
- package/src/client/MessagePartClient.ts +53 -0
- package/src/client/ThreadClient.ts +280 -0
- package/src/client/ThreadListClient.ts +135 -0
- package/src/client/ThreadListItemClient.ts +88 -0
- package/src/client/util-hooks/tapLookupResources.ts +31 -0
- package/src/client/util-hooks/tapSubscribable.ts +16 -0
- package/src/cloud/AssistantCloudThreadHistoryAdapter.tsx +24 -13
- package/src/context/providers/AssistantRuntimeProvider.tsx +27 -51
- package/src/context/providers/AttachmentProvider.tsx +48 -0
- package/src/context/providers/MessageProvider.tsx +57 -0
- package/src/context/providers/PartProvider.tsx +28 -0
- package/src/context/providers/TextMessagePartProvider.tsx +53 -78
- package/src/context/providers/ThreadListItemProvider.tsx +84 -0
- package/src/context/providers/index.ts +10 -3
- package/src/context/react/AssistantApiContext.tsx +392 -0
- package/src/context/react/index.ts +30 -37
- package/src/context/react/{AssistantContext.ts → legacy/AssistantContext.ts} +12 -31
- package/src/context/react/{AttachmentContext.ts → legacy/AttachmentContext.ts} +11 -22
- package/src/context/react/{ComposerContext.ts → legacy/ComposerContext.ts} +11 -9
- package/src/context/react/{MessageContext.ts → legacy/MessageContext.ts} +12 -29
- package/src/context/react/legacy/MessagePartContext.ts +24 -0
- package/src/context/react/{ThreadContext.ts → legacy/ThreadContext.ts} +15 -25
- package/src/context/react/legacy/ThreadListItemContext.ts +28 -0
- package/src/context/stores/index.ts +0 -2
- package/src/hooks/useAssistantEvent.ts +24 -0
- package/src/model-context/makeAssistantVisible.tsx +4 -4
- package/src/model-context/useAssistantInstructions.tsx +4 -4
- package/src/model-context/useAssistantTool.tsx +7 -12
- package/src/model-context/useAssistantToolUI.tsx +5 -5
- package/src/primitives/actionBar/ActionBarCopy.tsx +14 -20
- package/src/primitives/actionBar/ActionBarEdit.tsx +5 -5
- package/src/primitives/actionBar/ActionBarFeedbackNegative.tsx +6 -7
- package/src/primitives/actionBar/ActionBarFeedbackPositive.tsx +6 -6
- package/src/primitives/actionBar/ActionBarReload.tsx +9 -10
- package/src/primitives/actionBar/ActionBarSpeak.tsx +7 -7
- package/src/primitives/actionBar/ActionBarStopSpeaking.tsx +5 -8
- package/src/primitives/actionBar/useActionBarFloatStatus.tsx +22 -34
- package/src/primitives/assistantModal/AssistantModalRoot.tsx +4 -4
- package/src/primitives/attachment/AttachmentName.tsx +2 -2
- package/src/primitives/attachment/AttachmentRemove.tsx +4 -4
- package/src/primitives/attachment/AttachmentThumb.tsx +5 -2
- package/src/primitives/branchPicker/BranchPickerCount.tsx +2 -2
- package/src/primitives/branchPicker/BranchPickerNext.tsx +7 -8
- package/src/primitives/branchPicker/BranchPickerNumber.tsx +2 -2
- package/src/primitives/branchPicker/BranchPickerPrevious.tsx +7 -8
- package/src/primitives/composer/ComposerAddAttachment.tsx +6 -6
- package/src/primitives/composer/ComposerAttachmentDropzone.tsx +4 -4
- package/src/primitives/composer/ComposerAttachments.tsx +12 -15
- package/src/primitives/composer/ComposerCancel.tsx +5 -5
- package/src/primitives/composer/ComposerIf.tsx +2 -2
- package/src/primitives/composer/ComposerInput.tsx +32 -32
- package/src/primitives/composer/ComposerSend.tsx +6 -10
- package/src/primitives/error/ErrorMessage.tsx +5 -4
- package/src/primitives/message/MessageAttachments.tsx +10 -13
- package/src/primitives/message/MessageError.tsx +5 -3
- package/src/primitives/message/MessageIf.tsx +43 -52
- package/src/primitives/message/MessageParts.tsx +26 -31
- package/src/primitives/message/MessagePartsGrouped.tsx +25 -30
- package/src/primitives/message/MessageRoot.tsx +10 -8
- package/src/primitives/messagePart/MessagePartInProgress.tsx +4 -2
- package/src/primitives/messagePart/useMessagePartFile.tsx +4 -4
- package/src/primitives/messagePart/useMessagePartImage.tsx +4 -4
- package/src/primitives/messagePart/useMessagePartReasoning.tsx +4 -4
- package/src/primitives/messagePart/useMessagePartSource.tsx +4 -4
- package/src/primitives/messagePart/useMessagePartText.tsx +4 -4
- package/src/primitives/thread/ThreadEmpty.tsx +2 -2
- package/src/primitives/thread/ThreadIf.tsx +2 -2
- package/src/primitives/thread/ThreadMessages.tsx +10 -14
- package/src/primitives/thread/ThreadSuggestion.tsx +8 -8
- package/src/primitives/thread/useThreadViewportAutoScroll.tsx +3 -6
- package/src/primitives/threadList/ThreadListItems.tsx +8 -15
- package/src/primitives/threadList/ThreadListNew.tsx +9 -13
- package/src/primitives/threadListItem/ThreadListItemArchive.ts +4 -4
- package/src/primitives/threadListItem/ThreadListItemDelete.ts +6 -5
- package/src/primitives/threadListItem/ThreadListItemRoot.tsx +4 -2
- package/src/primitives/threadListItem/ThreadListItemTitle.tsx +2 -2
- package/src/primitives/threadListItem/ThreadListItemTrigger.ts +6 -5
- package/src/primitives/threadListItem/ThreadListItemUnarchive.ts +6 -5
- package/src/runtimes/adapters/attachment/index.ts +1 -1
- package/src/runtimes/composer/BaseComposerRuntimeCore.tsx +3 -3
- package/src/runtimes/core/BaseThreadRuntimeCore.tsx +5 -1
- package/src/runtimes/core/ComposerRuntimeCore.tsx +2 -2
- package/src/runtimes/core/ThreadListRuntimeCore.tsx +6 -4
- package/src/runtimes/external-store/ExternalStoreAdapter.tsx +5 -2
- package/src/runtimes/external-store/ExternalStoreThreadListRuntimeCore.tsx +53 -12
- package/src/runtimes/external-store/ExternalStoreThreadRuntimeCore.tsx +4 -0
- package/src/runtimes/external-store/createMessageConverter.tsx +10 -6
- package/src/runtimes/local/LocalThreadListRuntimeCore.tsx +16 -2
- package/src/runtimes/remote-thread-list/EMPTY_THREAD_CORE.tsx +3 -6
- package/src/runtimes/remote-thread-list/RemoteThreadListHookInstanceManager.tsx +14 -19
- package/src/runtimes/remote-thread-list/RemoteThreadListThreadListRuntimeCore.tsx +50 -43
- package/src/types/EventTypes.ts +92 -0
- package/src/types/index.ts +6 -0
- package/src/utils/smooth/SmoothContext.tsx +3 -3
- package/src/utils/smooth/useSmooth.tsx +2 -5
- package/src/utils/tap-store/index.ts +2 -0
- package/src/utils/tap-store/store.ts +51 -0
- package/src/utils/tap-store/tap-store-api.ts +75 -0
- package/src/utils/useToolArgsFieldStatus.tsx +6 -6
- package/dist/context/providers/AttachmentRuntimeProvider.d.ts +0 -9
- package/dist/context/providers/AttachmentRuntimeProvider.d.ts.map +0 -1
- package/dist/context/providers/AttachmentRuntimeProvider.js +0 -33
- package/dist/context/providers/AttachmentRuntimeProvider.js.map +0 -1
- package/dist/context/providers/MessagePartRuntimeProvider.d.ts +0 -9
- package/dist/context/providers/MessagePartRuntimeProvider.d.ts.map +0 -1
- package/dist/context/providers/MessagePartRuntimeProvider.js +0 -28
- package/dist/context/providers/MessagePartRuntimeProvider.js.map +0 -1
- package/dist/context/providers/MessageRuntimeProvider.d.ts +0 -9
- package/dist/context/providers/MessageRuntimeProvider.d.ts.map +0 -1
- package/dist/context/providers/MessageRuntimeProvider.js +0 -37
- package/dist/context/providers/MessageRuntimeProvider.js.map +0 -1
- package/dist/context/providers/ThreadListItemRuntimeProvider.d.ts +0 -9
- package/dist/context/providers/ThreadListItemRuntimeProvider.d.ts.map +0 -1
- package/dist/context/providers/ThreadListItemRuntimeProvider.js +0 -30
- package/dist/context/providers/ThreadListItemRuntimeProvider.js.map +0 -1
- package/dist/context/providers/ThreadRuntimeProvider.d.ts +0 -10
- package/dist/context/providers/ThreadRuntimeProvider.d.ts.map +0 -1
- package/dist/context/providers/ThreadRuntimeProvider.js +0 -33
- package/dist/context/providers/ThreadRuntimeProvider.js.map +0 -1
- package/dist/context/react/AssistantContext.d.ts +0 -85
- package/dist/context/react/AssistantContext.d.ts.map +0 -1
- package/dist/context/react/AssistantContext.js +0 -34
- package/dist/context/react/AssistantContext.js.map +0 -1
- package/dist/context/react/AttachmentContext.d.ts.map +0 -1
- package/dist/context/react/AttachmentContext.js.map +0 -1
- package/dist/context/react/ComposerContext.d.ts.map +0 -1
- package/dist/context/react/ComposerContext.js +0 -17
- package/dist/context/react/ComposerContext.js.map +0 -1
- package/dist/context/react/MessageContext.d.ts.map +0 -1
- package/dist/context/react/MessageContext.js +0 -35
- package/dist/context/react/MessageContext.js.map +0 -1
- package/dist/context/react/MessagePartContext.d.ts +0 -41
- package/dist/context/react/MessagePartContext.d.ts.map +0 -1
- package/dist/context/react/MessagePartContext.js +0 -25
- package/dist/context/react/MessagePartContext.js.map +0 -1
- package/dist/context/react/ThreadContext.d.ts.map +0 -1
- package/dist/context/react/ThreadContext.js +0 -38
- package/dist/context/react/ThreadContext.js.map +0 -1
- package/dist/context/react/ThreadListItemContext.d.ts +0 -41
- package/dist/context/react/ThreadListItemContext.d.ts.map +0 -1
- package/dist/context/react/ThreadListItemContext.js +0 -25
- package/dist/context/react/ThreadListItemContext.js.map +0 -1
- package/dist/context/stores/AssistantToolUIs.d.ts +0 -14
- package/dist/context/stores/AssistantToolUIs.d.ts.map +0 -1
- package/dist/context/stores/AssistantToolUIs.js +0 -35
- package/dist/context/stores/AssistantToolUIs.js.map +0 -1
- package/dist/context/stores/MessageUtils.d.ts +0 -8
- package/dist/context/stores/MessageUtils.d.ts.map +0 -1
- package/dist/context/stores/MessageUtils.js +0 -18
- package/dist/context/stores/MessageUtils.js.map +0 -1
- package/dist/utils/combined/createCombinedStore.d.ts +0 -8
- package/dist/utils/combined/createCombinedStore.d.ts.map +0 -1
- package/dist/utils/combined/createCombinedStore.js +0 -22
- package/dist/utils/combined/createCombinedStore.js.map +0 -1
- package/dist/utils/combined/useCombinedStore.d.ts +0 -3
- package/dist/utils/combined/useCombinedStore.d.ts.map +0 -1
- package/dist/utils/combined/useCombinedStore.js +0 -15
- package/dist/utils/combined/useCombinedStore.js.map +0 -1
- package/src/context/providers/AttachmentRuntimeProvider.tsx +0 -44
- package/src/context/providers/MessagePartRuntimeProvider.tsx +0 -42
- package/src/context/providers/MessageRuntimeProvider.tsx +0 -50
- package/src/context/providers/ThreadListItemRuntimeProvider.tsx +0 -43
- package/src/context/providers/ThreadRuntimeProvider.tsx +0 -53
- package/src/context/react/MessagePartContext.ts +0 -37
- package/src/context/react/ThreadListItemContext.ts +0 -38
- package/src/context/stores/AssistantToolUIs.ts +0 -51
- package/src/context/stores/MessageUtils.ts +0 -23
- package/src/utils/combined/createCombinedStore.ts +0 -31
- package/src/utils/combined/useCombinedStore.ts +0 -17
@@ -1,9 +1,8 @@
|
|
1
1
|
"use client";
|
2
2
|
|
3
|
-
import {
|
4
|
-
import {
|
5
|
-
import {
|
6
|
-
import { createStateHookForRuntime } from "./utils/createStateHookForRuntime";
|
3
|
+
import { useAssistantApi } from "..";
|
4
|
+
import { ComposerRuntime } from "../../../api/ComposerRuntime";
|
5
|
+
import { createStateHookForRuntime } from "../utils/createStateHookForRuntime";
|
7
6
|
|
8
7
|
/**
|
9
8
|
* Hook to access the ComposerRuntime from the current context.
|
@@ -52,11 +51,14 @@ export function useComposerRuntime(options?: {
|
|
52
51
|
export function useComposerRuntime(options?: {
|
53
52
|
optional?: boolean | undefined;
|
54
53
|
}): ComposerRuntime | null {
|
55
|
-
const
|
56
|
-
const
|
57
|
-
|
58
|
-
|
59
|
-
|
54
|
+
const api = useAssistantApi();
|
55
|
+
const runtime = api.composer.source
|
56
|
+
? api.composer().__internal_getRuntime()
|
57
|
+
: null;
|
58
|
+
if (!runtime && !options?.optional) {
|
59
|
+
throw new Error("ComposerRuntime is not available");
|
60
|
+
}
|
61
|
+
return runtime;
|
60
62
|
}
|
61
63
|
|
62
64
|
/**
|
@@ -1,26 +1,9 @@
|
|
1
1
|
"use client";
|
2
2
|
|
3
|
-
import {
|
4
|
-
import {
|
5
|
-
import {
|
6
|
-
import {
|
7
|
-
import { createContextStoreHook } from "./utils/createContextStoreHook";
|
8
|
-
import { UseBoundStore } from "zustand";
|
9
|
-
import { MessageRuntime } from "../../api/MessageRuntime";
|
10
|
-
import { createStateHookForRuntime } from "./utils/createStateHookForRuntime";
|
11
|
-
import { EditComposerRuntime } from "../../api";
|
12
|
-
|
13
|
-
export type MessageContextValue = {
|
14
|
-
useMessageRuntime: UseBoundStore<ReadonlyStore<MessageRuntime>>;
|
15
|
-
useMessageUtils: UseBoundStore<ReadonlyStore<MessageUtilsState>>;
|
16
|
-
};
|
17
|
-
|
18
|
-
export const MessageContext = createContext<MessageContextValue | null>(null);
|
19
|
-
|
20
|
-
const useMessageContext = createContextHook(
|
21
|
-
MessageContext,
|
22
|
-
"a component passed to <ThreadPrimitive.Messages components={...} />",
|
23
|
-
);
|
3
|
+
import { MessageRuntime } from "../../../api/MessageRuntime";
|
4
|
+
import { useAssistantApi } from "..";
|
5
|
+
import { createStateHookForRuntime } from "../utils/createStateHookForRuntime";
|
6
|
+
import { EditComposerRuntime } from "../../../api";
|
24
7
|
|
25
8
|
/**
|
26
9
|
* Hook to access the MessageRuntime from the current context.
|
@@ -63,9 +46,14 @@ export function useMessageRuntime(options?: {
|
|
63
46
|
export function useMessageRuntime(options?: {
|
64
47
|
optional?: boolean | undefined;
|
65
48
|
}) {
|
66
|
-
const
|
67
|
-
|
68
|
-
|
49
|
+
const api = useAssistantApi();
|
50
|
+
const runtime = api.message.source
|
51
|
+
? api.message().__internal_getRuntime()
|
52
|
+
: null;
|
53
|
+
if (!runtime && !options?.optional) {
|
54
|
+
throw new Error("MessageRuntime is not available");
|
55
|
+
}
|
56
|
+
return runtime;
|
69
57
|
}
|
70
58
|
|
71
59
|
/**
|
@@ -100,8 +88,3 @@ const useEditComposerRuntime = (opt: {
|
|
100
88
|
export const useEditComposer = createStateHookForRuntime(
|
101
89
|
useEditComposerRuntime,
|
102
90
|
);
|
103
|
-
|
104
|
-
export const { useMessageUtils, useMessageUtilsStore } = createContextStoreHook(
|
105
|
-
useMessageContext,
|
106
|
-
"useMessageUtils",
|
107
|
-
);
|
@@ -0,0 +1,24 @@
|
|
1
|
+
"use client";
|
2
|
+
|
3
|
+
import { MessagePartRuntime } from "../../../api/MessagePartRuntime";
|
4
|
+
import { createStateHookForRuntime } from "../utils/createStateHookForRuntime";
|
5
|
+
import { useAssistantApi } from "..";
|
6
|
+
|
7
|
+
export function useMessagePartRuntime(options?: {
|
8
|
+
optional?: false | undefined;
|
9
|
+
}): MessagePartRuntime;
|
10
|
+
export function useMessagePartRuntime(options?: {
|
11
|
+
optional?: boolean | undefined;
|
12
|
+
}): MessagePartRuntime | null;
|
13
|
+
export function useMessagePartRuntime(options?: {
|
14
|
+
optional?: boolean | undefined;
|
15
|
+
}) {
|
16
|
+
const api = useAssistantApi();
|
17
|
+
const runtime = api.part.source ? api.part().__internal_getRuntime() : null;
|
18
|
+
if (!runtime && !options?.optional) {
|
19
|
+
throw new Error("MessagePartRuntime is not available");
|
20
|
+
}
|
21
|
+
return runtime;
|
22
|
+
}
|
23
|
+
|
24
|
+
export const useMessagePart = createStateHookForRuntime(useMessagePartRuntime);
|
@@ -1,24 +1,11 @@
|
|
1
1
|
"use client";
|
2
2
|
|
3
|
-
import {
|
4
|
-
import {
|
5
|
-
import {
|
6
|
-
import {
|
7
|
-
import {
|
8
|
-
import {
|
9
|
-
import { createStateHookForRuntime } from "./utils/createStateHookForRuntime";
|
10
|
-
import { ThreadComposerRuntime } from "../../api";
|
11
|
-
|
12
|
-
export type ThreadContextValue = {
|
13
|
-
useThreadRuntime: UseBoundStore<ReadonlyStore<ThreadRuntime>>;
|
14
|
-
};
|
15
|
-
|
16
|
-
export const ThreadContext = createContext<ThreadContextValue | null>(null);
|
17
|
-
|
18
|
-
const useThreadContext = createContextHook(
|
19
|
-
ThreadContext,
|
20
|
-
"AssistantRuntimeProvider",
|
21
|
-
);
|
3
|
+
import { useState } from "react";
|
4
|
+
import { ThreadRuntime } from "../../../api/ThreadRuntime";
|
5
|
+
import { ModelContext } from "../../../model-context";
|
6
|
+
import { createStateHookForRuntime } from "../utils/createStateHookForRuntime";
|
7
|
+
import { ThreadComposerRuntime } from "../../../api";
|
8
|
+
import { useAssistantApi, useAssistantEvent } from "..";
|
22
9
|
|
23
10
|
/**
|
24
11
|
* Hook to access the ThreadRuntime from the current context.
|
@@ -50,9 +37,14 @@ export function useThreadRuntime(options?: {
|
|
50
37
|
optional?: boolean | undefined;
|
51
38
|
}): ThreadRuntime | null;
|
52
39
|
export function useThreadRuntime(options?: { optional?: boolean | undefined }) {
|
53
|
-
const
|
54
|
-
|
55
|
-
|
40
|
+
const api = useAssistantApi();
|
41
|
+
const runtime = api.thread.source
|
42
|
+
? api.thread().__internal_getRuntime()
|
43
|
+
: null;
|
44
|
+
if (!runtime && !options?.optional) {
|
45
|
+
throw new Error("ThreadRuntime is not available");
|
46
|
+
}
|
47
|
+
return runtime;
|
56
48
|
}
|
57
49
|
|
58
50
|
/**
|
@@ -95,9 +87,7 @@ export function useThreadModelContext(options?: {
|
|
95
87
|
const [, rerender] = useState({});
|
96
88
|
|
97
89
|
const runtime = useThreadRuntime(options);
|
98
|
-
|
99
|
-
return runtime?.unstable_on("model-context-update", () => rerender({}));
|
100
|
-
}, [runtime]);
|
90
|
+
useAssistantEvent("thread.model-context-update", () => rerender({}));
|
101
91
|
|
102
92
|
if (!runtime) return null;
|
103
93
|
return runtime?.getModelContext();
|
@@ -0,0 +1,28 @@
|
|
1
|
+
"use client";
|
2
|
+
|
3
|
+
import { ThreadListItemRuntime } from "../../../api/ThreadListItemRuntime";
|
4
|
+
import { createStateHookForRuntime } from "../utils/createStateHookForRuntime";
|
5
|
+
import { useAssistantApi } from "..";
|
6
|
+
|
7
|
+
export function useThreadListItemRuntime(options?: {
|
8
|
+
optional?: false | undefined;
|
9
|
+
}): ThreadListItemRuntime;
|
10
|
+
export function useThreadListItemRuntime(options?: {
|
11
|
+
optional?: boolean | undefined;
|
12
|
+
}): ThreadListItemRuntime | null;
|
13
|
+
export function useThreadListItemRuntime(options?: {
|
14
|
+
optional?: boolean | undefined;
|
15
|
+
}) {
|
16
|
+
const api = useAssistantApi();
|
17
|
+
const runtime = api.threadListItem.source
|
18
|
+
? api.threadListItem().__internal_getRuntime()
|
19
|
+
: null;
|
20
|
+
if (!runtime && !options?.optional) {
|
21
|
+
throw new Error("ThreadListItemRuntime is not available");
|
22
|
+
}
|
23
|
+
return runtime;
|
24
|
+
}
|
25
|
+
|
26
|
+
export const useThreadListItem = createStateHookForRuntime(
|
27
|
+
useThreadListItemRuntime,
|
28
|
+
);
|
@@ -0,0 +1,24 @@
|
|
1
|
+
import { useEffect, useRef } from "react";
|
2
|
+
import { useAssistantApi } from "../context/react/AssistantApiContext";
|
3
|
+
import {
|
4
|
+
AssistantEventSelector,
|
5
|
+
AssistantEvents,
|
6
|
+
normalizeEventSelector,
|
7
|
+
} from "../types/EventTypes";
|
8
|
+
|
9
|
+
export const useAssistantEvent = <TEvent extends keyof AssistantEvents>(
|
10
|
+
selector: AssistantEventSelector<TEvent>,
|
11
|
+
callback: (e: AssistantEvents[TEvent]) => void,
|
12
|
+
) => {
|
13
|
+
const api = useAssistantApi();
|
14
|
+
const callbackRef = useRef(callback);
|
15
|
+
useEffect(() => {
|
16
|
+
callbackRef.current = callback;
|
17
|
+
});
|
18
|
+
|
19
|
+
const { scope, event } = normalizeEventSelector(selector);
|
20
|
+
useEffect(
|
21
|
+
() => api.on({ scope, event }, (e) => callbackRef.current(e)),
|
22
|
+
[api, scope, event],
|
23
|
+
);
|
24
|
+
};
|
@@ -12,7 +12,7 @@ import {
|
|
12
12
|
useContext,
|
13
13
|
} from "react";
|
14
14
|
import { z } from "zod";
|
15
|
-
import {
|
15
|
+
import { useAssistantApi } from "../context/react/AssistantApiContext";
|
16
16
|
import { useComposedRefs } from "@radix-ui/react-compose-refs";
|
17
17
|
import { tool } from "./tool";
|
18
18
|
|
@@ -72,11 +72,11 @@ export const makeAssistantVisible = <T extends ComponentType<any>>(
|
|
72
72
|
const clickId = useId();
|
73
73
|
const componentRef = useRef<HTMLElement>(null);
|
74
74
|
|
75
|
-
const
|
75
|
+
const api = useAssistantApi();
|
76
76
|
|
77
77
|
const { clickable, editable } = config ?? {};
|
78
78
|
useEffect(() => {
|
79
|
-
return
|
79
|
+
return api.registerModelContextProvider({
|
80
80
|
getModelContext: () => {
|
81
81
|
return {
|
82
82
|
tools: {
|
@@ -89,7 +89,7 @@ export const makeAssistantVisible = <T extends ComponentType<any>>(
|
|
89
89
|
};
|
90
90
|
},
|
91
91
|
});
|
92
|
-
}, [isNestedReadable,
|
92
|
+
}, [isNestedReadable, api, clickable, editable]);
|
93
93
|
|
94
94
|
const ref = useComposedRefs(componentRef, outerRef);
|
95
95
|
|
@@ -1,7 +1,7 @@
|
|
1
1
|
"use client";
|
2
2
|
|
3
3
|
import { useEffect } from "react";
|
4
|
-
import {
|
4
|
+
import { useAssistantApi } from "../context/react/AssistantApiContext";
|
5
5
|
|
6
6
|
export type AssistantInstructionsConfig = {
|
7
7
|
disabled?: boolean | undefined;
|
@@ -19,7 +19,7 @@ export const useAssistantInstructions = (
|
|
19
19
|
config: string | AssistantInstructionsConfig,
|
20
20
|
) => {
|
21
21
|
const { instruction, disabled = false } = getInstructions(config);
|
22
|
-
const
|
22
|
+
const api = useAssistantApi();
|
23
23
|
|
24
24
|
useEffect(() => {
|
25
25
|
if (disabled) return;
|
@@ -27,8 +27,8 @@ export const useAssistantInstructions = (
|
|
27
27
|
const config = {
|
28
28
|
system: instruction,
|
29
29
|
};
|
30
|
-
return
|
30
|
+
return api.registerModelContextProvider({
|
31
31
|
getModelContext: () => config,
|
32
32
|
});
|
33
|
-
}, [
|
33
|
+
}, [api, instruction, disabled]);
|
34
34
|
};
|
@@ -1,10 +1,7 @@
|
|
1
1
|
"use client";
|
2
2
|
|
3
3
|
import { useEffect } from "react";
|
4
|
-
import {
|
5
|
-
useAssistantRuntime,
|
6
|
-
useToolUIsStore,
|
7
|
-
} from "../context/react/AssistantContext";
|
4
|
+
import { useAssistantApi } from "../context/react/AssistantApiContext";
|
8
5
|
import type { ToolCallMessagePartComponent } from "../types/MessagePartComponentTypes";
|
9
6
|
import type { Tool } from "assistant-stream";
|
10
7
|
|
@@ -22,14 +19,12 @@ export const useAssistantTool = <
|
|
22
19
|
>(
|
23
20
|
tool: AssistantToolProps<TArgs, TResult>,
|
24
21
|
) => {
|
25
|
-
const
|
26
|
-
const toolUIsStore = useToolUIsStore();
|
22
|
+
const api = useAssistantApi();
|
27
23
|
|
28
24
|
useEffect(() => {
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
}, [toolUIsStore, tool.toolName, tool.render]);
|
25
|
+
if (!tool.render) return undefined;
|
26
|
+
return api.toolUIs().setToolUI(tool.toolName, tool.render);
|
27
|
+
}, [api, tool.toolName, tool.render]);
|
33
28
|
|
34
29
|
useEffect(() => {
|
35
30
|
const { toolName, render, ...rest } = tool;
|
@@ -38,8 +33,8 @@ export const useAssistantTool = <
|
|
38
33
|
[toolName]: rest,
|
39
34
|
},
|
40
35
|
};
|
41
|
-
return
|
36
|
+
return api.registerModelContextProvider({
|
42
37
|
getModelContext: () => context,
|
43
38
|
});
|
44
|
-
}, [
|
39
|
+
}, [api, tool]);
|
45
40
|
};
|
@@ -1,7 +1,7 @@
|
|
1
1
|
"use client";
|
2
2
|
|
3
3
|
import { useEffect } from "react";
|
4
|
-
import {
|
4
|
+
import { useAssistantApi } from "../context/react/AssistantApiContext";
|
5
5
|
import type { ToolCallMessagePartComponent } from "../types/MessagePartComponentTypes";
|
6
6
|
|
7
7
|
export type AssistantToolUIProps<TArgs, TResult> = {
|
@@ -12,9 +12,9 @@ export type AssistantToolUIProps<TArgs, TResult> = {
|
|
12
12
|
export const useAssistantToolUI = (
|
13
13
|
tool: AssistantToolUIProps<any, any> | null,
|
14
14
|
) => {
|
15
|
-
const
|
15
|
+
const api = useAssistantApi();
|
16
16
|
useEffect(() => {
|
17
|
-
if (!tool?.toolName || !tool?.render) return;
|
18
|
-
return
|
19
|
-
}, [
|
17
|
+
if (!tool?.toolName || !tool?.render) return undefined;
|
18
|
+
return api.toolUIs().setToolUI(tool.toolName, tool.render);
|
19
|
+
}, [api, tool?.toolName, tool?.render]);
|
20
20
|
};
|
@@ -4,13 +4,8 @@ import { forwardRef } from "react";
|
|
4
4
|
import { ActionButtonProps } from "../../utils/createActionButton";
|
5
5
|
import { composeEventHandlers } from "@radix-ui/primitive";
|
6
6
|
import { Primitive } from "@radix-ui/react-primitive";
|
7
|
-
import { useMessageUtils } from "../../context";
|
8
7
|
import { useCallback } from "react";
|
9
|
-
import {
|
10
|
-
useMessage,
|
11
|
-
useMessageRuntime,
|
12
|
-
} from "../../context/react/MessageContext";
|
13
|
-
import { useComposerRuntime } from "../../context";
|
8
|
+
import { useAssistantState, useAssistantApi } from "../../context";
|
14
9
|
|
15
10
|
/**
|
16
11
|
* Hook that provides copy functionality for action bar buttons.
|
@@ -39,28 +34,27 @@ import { useComposerRuntime } from "../../context";
|
|
39
34
|
const useActionBarPrimitiveCopy = ({
|
40
35
|
copiedDuration = 3000,
|
41
36
|
}: { copiedDuration?: number | undefined } = {}) => {
|
42
|
-
const
|
43
|
-
const
|
44
|
-
const setIsCopied = useMessageUtils((s) => s.setIsCopied);
|
45
|
-
const hasCopyableContent = useMessage((message) => {
|
37
|
+
const api = useAssistantApi();
|
38
|
+
const hasCopyableContent = useAssistantState(({ message }) => {
|
46
39
|
return (
|
47
|
-
(message.role !== "assistant" || message.status
|
48
|
-
message.
|
40
|
+
(message.role !== "assistant" || message.status?.type !== "running") &&
|
41
|
+
message.parts.some((c) => c.type === "text" && c.text.length > 0)
|
49
42
|
);
|
50
43
|
});
|
51
44
|
|
45
|
+
const isEditing = useAssistantState(({ composer }) => composer.isEditing);
|
46
|
+
const composerValue = useAssistantState(({ composer }) => composer.text);
|
47
|
+
|
52
48
|
const callback = useCallback(() => {
|
53
|
-
const
|
49
|
+
const valueToCopy = isEditing ? composerValue : api.message().getCopyText();
|
54
50
|
|
55
|
-
|
56
|
-
? composerValue
|
57
|
-
: messageRuntime.unstable_getCopyText();
|
51
|
+
if (!valueToCopy) return;
|
58
52
|
|
59
53
|
navigator.clipboard.writeText(valueToCopy).then(() => {
|
60
|
-
setIsCopied(true);
|
61
|
-
setTimeout(() => setIsCopied(false), copiedDuration);
|
54
|
+
api.message().setIsCopied(true);
|
55
|
+
setTimeout(() => api.message().setIsCopied(false), copiedDuration);
|
62
56
|
});
|
63
|
-
}, [
|
57
|
+
}, [api, isEditing, composerValue, copiedDuration]);
|
64
58
|
|
65
59
|
if (!hasCopyableContent) return null;
|
66
60
|
return callback;
|
@@ -93,7 +87,7 @@ export const ActionBarPrimitiveCopy = forwardRef<
|
|
93
87
|
ActionBarPrimitiveCopy.Element,
|
94
88
|
ActionBarPrimitiveCopy.Props
|
95
89
|
>(({ copiedDuration, onClick, disabled, ...props }, forwardedRef) => {
|
96
|
-
const isCopied =
|
90
|
+
const isCopied = useAssistantState(({ message }) => message.isCopied);
|
97
91
|
const callback = useActionBarPrimitiveCopy({ copiedDuration });
|
98
92
|
return (
|
99
93
|
<Primitive.button
|
@@ -6,7 +6,7 @@ import {
|
|
6
6
|
createActionButton,
|
7
7
|
} from "../../utils/createActionButton";
|
8
8
|
import { useCallback } from "react";
|
9
|
-
import {
|
9
|
+
import { useAssistantState, useAssistantApi } from "../../context";
|
10
10
|
|
11
11
|
/**
|
12
12
|
* Hook that provides edit functionality for action bar buttons.
|
@@ -30,12 +30,12 @@ import { useEditComposer, useMessageRuntime } from "../../context";
|
|
30
30
|
* ```
|
31
31
|
*/
|
32
32
|
const useActionBarEdit = () => {
|
33
|
-
const
|
34
|
-
const disabled =
|
33
|
+
const api = useAssistantApi();
|
34
|
+
const disabled = useAssistantState(({ composer }) => composer.isEditing);
|
35
35
|
|
36
36
|
const callback = useCallback(() => {
|
37
|
-
|
38
|
-
}, [
|
37
|
+
api.composer().beginEdit();
|
38
|
+
}, [api]);
|
39
39
|
|
40
40
|
if (disabled) return null;
|
41
41
|
return callback;
|
@@ -3,17 +3,16 @@
|
|
3
3
|
import { forwardRef } from "react";
|
4
4
|
import { ActionButtonProps } from "../../utils/createActionButton";
|
5
5
|
import { composeEventHandlers } from "@radix-ui/primitive";
|
6
|
-
import { useMessage } from "../../context";
|
7
6
|
import { Primitive } from "@radix-ui/react-primitive";
|
8
7
|
import { useCallback } from "react";
|
9
|
-
import {
|
8
|
+
import { useAssistantState, useAssistantApi } from "../../context";
|
10
9
|
|
11
10
|
const useActionBarFeedbackNegative = () => {
|
12
|
-
const
|
11
|
+
const api = useAssistantApi();
|
13
12
|
|
14
13
|
const callback = useCallback(() => {
|
15
|
-
|
16
|
-
}, [
|
14
|
+
api.message().submitFeedback({ type: "negative" });
|
15
|
+
}, [api]);
|
17
16
|
|
18
17
|
return callback;
|
19
18
|
};
|
@@ -27,8 +26,8 @@ export const ActionBarPrimitiveFeedbackNegative = forwardRef<
|
|
27
26
|
ActionBarPrimitiveFeedbackNegative.Element,
|
28
27
|
ActionBarPrimitiveFeedbackNegative.Props
|
29
28
|
>(({ onClick, disabled, ...props }, forwardedRef) => {
|
30
|
-
const isSubmitted =
|
31
|
-
(
|
29
|
+
const isSubmitted = useAssistantState(
|
30
|
+
(s) => s.message.submittedFeedback?.type === "negative",
|
32
31
|
);
|
33
32
|
const callback = useActionBarFeedbackNegative();
|
34
33
|
return (
|
@@ -3,15 +3,15 @@
|
|
3
3
|
import { forwardRef, useCallback } from "react";
|
4
4
|
import { ActionButtonProps } from "../../utils/createActionButton";
|
5
5
|
import { composeEventHandlers } from "@radix-ui/primitive";
|
6
|
-
import {
|
6
|
+
import { useAssistantState, useAssistantApi } from "../../context";
|
7
7
|
import { Primitive } from "@radix-ui/react-primitive";
|
8
8
|
|
9
9
|
const useActionBarFeedbackPositive = () => {
|
10
|
-
const
|
10
|
+
const api = useAssistantApi();
|
11
11
|
|
12
12
|
const callback = useCallback(() => {
|
13
|
-
|
14
|
-
}, [
|
13
|
+
api.message().submitFeedback({ type: "positive" });
|
14
|
+
}, [api]);
|
15
15
|
|
16
16
|
return callback;
|
17
17
|
};
|
@@ -25,8 +25,8 @@ export const ActionBarPrimitiveFeedbackPositive = forwardRef<
|
|
25
25
|
ActionBarPrimitiveFeedbackPositive.Element,
|
26
26
|
ActionBarPrimitiveFeedbackPositive.Props
|
27
27
|
>(({ onClick, disabled, ...props }, forwardedRef) => {
|
28
|
-
const isSubmitted =
|
29
|
-
(
|
28
|
+
const isSubmitted = useAssistantState(
|
29
|
+
(s) => s.message.submittedFeedback?.type === "positive",
|
30
30
|
);
|
31
31
|
const callback = useActionBarFeedbackPositive();
|
32
32
|
return (
|
@@ -6,9 +6,7 @@ import {
|
|
6
6
|
createActionButton,
|
7
7
|
} from "../../utils/createActionButton";
|
8
8
|
import { useCallback } from "react";
|
9
|
-
import {
|
10
|
-
import { useThreadRuntime } from "../../context/react/ThreadContext";
|
11
|
-
import { useCombinedStore } from "../../utils/combined/useCombinedStore";
|
9
|
+
import { useAssistantState, useAssistantApi } from "../../context";
|
12
10
|
|
13
11
|
/**
|
14
12
|
* Hook that provides reload functionality for action bar buttons.
|
@@ -32,17 +30,18 @@ import { useCombinedStore } from "../../utils/combined/useCombinedStore";
|
|
32
30
|
* ```
|
33
31
|
*/
|
34
32
|
const useActionBarReload = () => {
|
35
|
-
const
|
36
|
-
const threadRuntime = useThreadRuntime();
|
33
|
+
const api = useAssistantApi();
|
37
34
|
|
38
|
-
const disabled =
|
39
|
-
|
40
|
-
|
35
|
+
const disabled = useAssistantState(
|
36
|
+
(s) =>
|
37
|
+
s.thread.isRunning ||
|
38
|
+
s.thread.isDisabled ||
|
39
|
+
s.message.role !== "assistant",
|
41
40
|
);
|
42
41
|
|
43
42
|
const callback = useCallback(() => {
|
44
|
-
|
45
|
-
}, [
|
43
|
+
api.message().reload();
|
44
|
+
}, [api]);
|
46
45
|
|
47
46
|
if (disabled) return null;
|
48
47
|
return callback;
|
@@ -1,7 +1,7 @@
|
|
1
1
|
"use client";
|
2
2
|
|
3
3
|
import { useCallback } from "react";
|
4
|
-
import {
|
4
|
+
import { useAssistantState, useAssistantApi } from "../../context";
|
5
5
|
import {
|
6
6
|
ActionButtonElement,
|
7
7
|
ActionButtonProps,
|
@@ -9,15 +9,15 @@ import {
|
|
9
9
|
} from "../../utils/createActionButton";
|
10
10
|
|
11
11
|
const useActionBarSpeak = () => {
|
12
|
-
const
|
12
|
+
const api = useAssistantApi();
|
13
13
|
const callback = useCallback(async () => {
|
14
|
-
|
15
|
-
}, [
|
14
|
+
api.message().speak();
|
15
|
+
}, [api]);
|
16
16
|
|
17
|
-
const hasSpeakableContent =
|
17
|
+
const hasSpeakableContent = useAssistantState(({ message }) => {
|
18
18
|
return (
|
19
|
-
(
|
20
|
-
|
19
|
+
(message.role !== "assistant" || message.status?.type !== "running") &&
|
20
|
+
message.parts.some((c) => c.type === "text" && c.text.length > 0)
|
21
21
|
);
|
22
22
|
});
|
23
23
|
|
@@ -6,18 +6,15 @@ import { useEscapeKeydown } from "@radix-ui/react-use-escape-keydown";
|
|
6
6
|
import { Primitive } from "@radix-ui/react-primitive";
|
7
7
|
import { composeEventHandlers } from "@radix-ui/primitive";
|
8
8
|
import { useCallback } from "react";
|
9
|
-
import {
|
10
|
-
useMessage,
|
11
|
-
useMessageRuntime,
|
12
|
-
} from "../../context/react/MessageContext";
|
9
|
+
import { useAssistantState, useAssistantApi } from "../../context";
|
13
10
|
|
14
11
|
const useActionBarStopSpeaking = () => {
|
15
|
-
const
|
16
|
-
const isSpeaking =
|
12
|
+
const api = useAssistantApi();
|
13
|
+
const isSpeaking = useAssistantState(({ message }) => message.speech != null);
|
17
14
|
|
18
15
|
const callback = useCallback(() => {
|
19
|
-
|
20
|
-
}, [
|
16
|
+
api.message().stopSpeaking();
|
17
|
+
}, [api]);
|
21
18
|
|
22
19
|
if (!isSpeaking) return null;
|
23
20
|
|