@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,12 +1,7 @@
|
|
1
1
|
"use client";
|
2
2
|
|
3
3
|
// src/primitives/actionBar/useActionBarFloatStatus.tsx
|
4
|
-
import {
|
5
|
-
useMessageRuntime,
|
6
|
-
useMessageUtilsStore
|
7
|
-
} from "../../context/react/MessageContext.js";
|
8
|
-
import { useThreadRuntime } from "../../context/react/ThreadContext.js";
|
9
|
-
import { useCombinedStore } from "../../utils/combined/useCombinedStore.js";
|
4
|
+
import { useAssistantState } from "../../context/index.js";
|
10
5
|
var HideAndFloatStatus = /* @__PURE__ */ ((HideAndFloatStatus2) => {
|
11
6
|
HideAndFloatStatus2["Hidden"] = "hidden";
|
12
7
|
HideAndFloatStatus2["Floating"] = "floating";
|
@@ -18,21 +13,15 @@ var useActionBarFloatStatus = ({
|
|
18
13
|
autohide,
|
19
14
|
autohideFloat
|
20
15
|
}) => {
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
(
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
if (!mu.isHovering) return "hidden" /* Hidden */;
|
31
|
-
if (autohideFloat === "always" || autohideFloat === "single-branch" && m.branchCount <= 1)
|
32
|
-
return "floating" /* Floating */;
|
33
|
-
return "normal" /* Normal */;
|
34
|
-
}
|
35
|
-
);
|
16
|
+
return useAssistantState(({ thread, message }) => {
|
17
|
+
if (hideWhenRunning && thread.isRunning) return "hidden" /* Hidden */;
|
18
|
+
const autohideEnabled = autohide === "always" || autohide === "not-last" && !message.isLast;
|
19
|
+
if (!autohideEnabled) return "normal" /* Normal */;
|
20
|
+
if (!message.isHovering) return "hidden" /* Hidden */;
|
21
|
+
if (autohideFloat === "always" || autohideFloat === "single-branch" && message.branchCount <= 1)
|
22
|
+
return "floating" /* Floating */;
|
23
|
+
return "normal" /* Normal */;
|
24
|
+
});
|
36
25
|
};
|
37
26
|
export {
|
38
27
|
HideAndFloatStatus,
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["../../../src/primitives/actionBar/useActionBarFloatStatus.tsx"],"sourcesContent":["\"use client\";\n\nimport {
|
1
|
+
{"version":3,"sources":["../../../src/primitives/actionBar/useActionBarFloatStatus.tsx"],"sourcesContent":["\"use client\";\n\nimport { useAssistantState } from \"../../context\";\n\nexport enum HideAndFloatStatus {\n Hidden = \"hidden\",\n Floating = \"floating\",\n Normal = \"normal\",\n}\n\nexport type UseActionBarFloatStatusProps = {\n hideWhenRunning?: boolean | undefined;\n autohide?: \"always\" | \"not-last\" | \"never\" | undefined;\n autohideFloat?: \"always\" | \"single-branch\" | \"never\" | undefined;\n};\n\nexport const useActionBarFloatStatus = ({\n hideWhenRunning,\n autohide,\n autohideFloat,\n}: UseActionBarFloatStatusProps) => {\n return useAssistantState(({ thread, message }) => {\n if (hideWhenRunning && thread.isRunning) return HideAndFloatStatus.Hidden;\n\n const autohideEnabled =\n autohide === \"always\" || (autohide === \"not-last\" && !message.isLast);\n\n // normal status\n if (!autohideEnabled) return HideAndFloatStatus.Normal;\n\n // hidden status\n if (!message.isHovering) return HideAndFloatStatus.Hidden;\n\n // floating status\n if (\n autohideFloat === \"always\" ||\n (autohideFloat === \"single-branch\" && message.branchCount <= 1)\n )\n return HideAndFloatStatus.Floating;\n\n return HideAndFloatStatus.Normal;\n });\n};\n"],"mappings":";;;AAEA,SAAS,yBAAyB;AAE3B,IAAK,qBAAL,kBAAKA,wBAAL;AACL,EAAAA,oBAAA,YAAS;AACT,EAAAA,oBAAA,cAAW;AACX,EAAAA,oBAAA,YAAS;AAHC,SAAAA;AAAA,GAAA;AAYL,IAAM,0BAA0B,CAAC;AAAA,EACtC;AAAA,EACA;AAAA,EACA;AACF,MAAoC;AAClC,SAAO,kBAAkB,CAAC,EAAE,QAAQ,QAAQ,MAAM;AAChD,QAAI,mBAAmB,OAAO,UAAW,QAAO;AAEhD,UAAM,kBACJ,aAAa,YAAa,aAAa,cAAc,CAAC,QAAQ;AAGhE,QAAI,CAAC,gBAAiB,QAAO;AAG7B,QAAI,CAAC,QAAQ,WAAY,QAAO;AAGhC,QACE,kBAAkB,YACjB,kBAAkB,mBAAmB,QAAQ,eAAe;AAE7D,aAAO;AAET,WAAO;AAAA,EACT,CAAC;AACH;","names":["HideAndFloatStatus"]}
|
@@ -4,7 +4,7 @@
|
|
4
4
|
import { useEffect, useState } from "react";
|
5
5
|
import * as PopoverPrimitive from "@radix-ui/react-popover";
|
6
6
|
import { usePopoverScope } from "./scope.js";
|
7
|
-
import {
|
7
|
+
import { useAssistantApi } from "../../context/index.js";
|
8
8
|
import { jsx } from "react/jsx-runtime";
|
9
9
|
var useAssistantModalOpenState = ({
|
10
10
|
defaultOpen = false,
|
@@ -12,13 +12,13 @@ var useAssistantModalOpenState = ({
|
|
12
12
|
}) => {
|
13
13
|
const state = useState(defaultOpen);
|
14
14
|
const [, setOpen] = state;
|
15
|
-
const
|
15
|
+
const api = useAssistantApi();
|
16
16
|
useEffect(() => {
|
17
17
|
if (!unstable_openOnRunStart) return void 0;
|
18
|
-
return
|
18
|
+
return api.on("thread.run-start", () => {
|
19
19
|
setOpen(true);
|
20
20
|
});
|
21
|
-
}, [unstable_openOnRunStart, setOpen,
|
21
|
+
}, [unstable_openOnRunStart, setOpen, api]);
|
22
22
|
return state;
|
23
23
|
};
|
24
24
|
var AssistantModalPrimitiveRoot = ({
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["../../../src/primitives/assistantModal/AssistantModalRoot.tsx"],"sourcesContent":["\"use client\";\n\nimport { FC, useEffect, useState } from \"react\";\nimport * as PopoverPrimitive from \"@radix-ui/react-popover\";\nimport { ScopedProps, usePopoverScope } from \"./scope\";\nimport {
|
1
|
+
{"version":3,"sources":["../../../src/primitives/assistantModal/AssistantModalRoot.tsx"],"sourcesContent":["\"use client\";\n\nimport { FC, useEffect, useState } from \"react\";\nimport * as PopoverPrimitive from \"@radix-ui/react-popover\";\nimport { ScopedProps, usePopoverScope } from \"./scope\";\nimport { useAssistantApi } from \"../../context\";\n\nexport namespace AssistantModalPrimitiveRoot {\n export type Props = PopoverPrimitive.PopoverProps & {\n unstable_openOnRunStart?: boolean | undefined;\n };\n}\n\nconst useAssistantModalOpenState = ({\n defaultOpen = false,\n unstable_openOnRunStart = true,\n}: {\n defaultOpen?: boolean | undefined;\n unstable_openOnRunStart?: boolean | undefined;\n}) => {\n const state = useState(defaultOpen);\n\n const [, setOpen] = state;\n const api = useAssistantApi();\n useEffect(() => {\n if (!unstable_openOnRunStart) return undefined;\n\n return api.on(\"thread.run-start\", () => {\n setOpen(true);\n });\n }, [unstable_openOnRunStart, setOpen, api]);\n\n return state;\n};\n\nexport const AssistantModalPrimitiveRoot: FC<\n AssistantModalPrimitiveRoot.Props\n> = ({\n __scopeAssistantModal,\n defaultOpen,\n unstable_openOnRunStart,\n open,\n onOpenChange,\n ...rest\n}: ScopedProps<AssistantModalPrimitiveRoot.Props>) => {\n const scope = usePopoverScope(__scopeAssistantModal);\n\n const [modalOpen, setOpen] = useAssistantModalOpenState({\n defaultOpen,\n unstable_openOnRunStart,\n });\n\n const openChangeHandler = (open: boolean) => {\n onOpenChange?.(open);\n setOpen(open);\n };\n\n return (\n <PopoverPrimitive.Root\n {...scope}\n open={open === undefined ? modalOpen : open}\n onOpenChange={openChangeHandler}\n {...rest}\n />\n );\n};\n\nAssistantModalPrimitiveRoot.displayName = \"AssistantModalPrimitive.Root\";\n"],"mappings":";;;AAEA,SAAa,WAAW,gBAAgB;AACxC,YAAY,sBAAsB;AAClC,SAAsB,uBAAuB;AAC7C,SAAS,uBAAuB;AAqD5B;AA7CJ,IAAM,6BAA6B,CAAC;AAAA,EAClC,cAAc;AAAA,EACd,0BAA0B;AAC5B,MAGM;AACJ,QAAM,QAAQ,SAAS,WAAW;AAElC,QAAM,CAAC,EAAE,OAAO,IAAI;AACpB,QAAM,MAAM,gBAAgB;AAC5B,YAAU,MAAM;AACd,QAAI,CAAC,wBAAyB,QAAO;AAErC,WAAO,IAAI,GAAG,oBAAoB,MAAM;AACtC,cAAQ,IAAI;AAAA,IACd,CAAC;AAAA,EACH,GAAG,CAAC,yBAAyB,SAAS,GAAG,CAAC;AAE1C,SAAO;AACT;AAEO,IAAM,8BAET,CAAC;AAAA,EACH;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,GAAG;AACL,MAAsD;AACpD,QAAM,QAAQ,gBAAgB,qBAAqB;AAEnD,QAAM,CAAC,WAAW,OAAO,IAAI,2BAA2B;AAAA,IACtD;AAAA,IACA;AAAA,EACF,CAAC;AAED,QAAM,oBAAoB,CAACA,UAAkB;AAC3C,mBAAeA,KAAI;AACnB,YAAQA,KAAI;AAAA,EACd;AAEA,SACE;AAAA,IAAkB;AAAA,IAAjB;AAAA,MACE,GAAG;AAAA,MACJ,MAAM,SAAS,SAAY,YAAY;AAAA,MACvC,cAAc;AAAA,MACb,GAAG;AAAA;AAAA,EACN;AAEJ;AAEA,4BAA4B,cAAc;","names":["open"]}
|
@@ -1,10 +1,10 @@
|
|
1
1
|
"use client";
|
2
2
|
|
3
3
|
// src/primitives/attachment/AttachmentName.tsx
|
4
|
-
import {
|
4
|
+
import { useAssistantState } from "../../context/index.js";
|
5
5
|
import { Fragment, jsx } from "react/jsx-runtime";
|
6
6
|
var AttachmentPrimitiveName = () => {
|
7
|
-
const name =
|
7
|
+
const name = useAssistantState(({ attachment }) => attachment.name);
|
8
8
|
return /* @__PURE__ */ jsx(Fragment, { children: name });
|
9
9
|
};
|
10
10
|
AttachmentPrimitiveName.displayName = "AttachmentPrimitive.Name";
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["../../../src/primitives/attachment/AttachmentName.tsx"],"sourcesContent":["\"use client\";\n\nimport type { FC } from \"react\";\nimport {
|
1
|
+
{"version":3,"sources":["../../../src/primitives/attachment/AttachmentName.tsx"],"sourcesContent":["\"use client\";\n\nimport type { FC } from \"react\";\nimport { useAssistantState } from \"../../context\";\n\nexport namespace AttachmentPrimitiveName {\n export type Props = Record<string, never>;\n}\n\nexport const AttachmentPrimitiveName: FC<\n AttachmentPrimitiveName.Props\n> = () => {\n const name = useAssistantState(({ attachment }) => attachment.name);\n return <>{name}</>;\n};\n\nAttachmentPrimitiveName.displayName = \"AttachmentPrimitive.Name\";\n"],"mappings":";;;AAGA,SAAS,yBAAyB;AAUzB;AAJF,IAAM,0BAET,MAAM;AACR,QAAM,OAAO,kBAAkB,CAAC,EAAE,WAAW,MAAM,WAAW,IAAI;AAClE,SAAO,gCAAG,gBAAK;AACjB;AAEA,wBAAwB,cAAc;","names":[]}
|
@@ -5,12 +5,12 @@ import {
|
|
5
5
|
createActionButton
|
6
6
|
} from "../../utils/createActionButton.js";
|
7
7
|
import { useCallback } from "react";
|
8
|
-
import {
|
8
|
+
import { useAssistantApi } from "../../context/index.js";
|
9
9
|
var useAttachmentRemove = () => {
|
10
|
-
const
|
10
|
+
const api = useAssistantApi();
|
11
11
|
const handleRemoveAttachment = useCallback(() => {
|
12
|
-
|
13
|
-
}, [
|
12
|
+
api.attachment().remove();
|
13
|
+
}, [api]);
|
14
14
|
return handleRemoveAttachment;
|
15
15
|
};
|
16
16
|
var AttachmentPrimitiveRemove = createActionButton(
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["../../../src/primitives/attachment/AttachmentRemove.tsx"],"sourcesContent":["\"use client\";\n\nimport {\n ActionButtonElement,\n ActionButtonProps,\n createActionButton,\n} from \"../../utils/createActionButton\";\nimport { useCallback } from \"react\";\nimport {
|
1
|
+
{"version":3,"sources":["../../../src/primitives/attachment/AttachmentRemove.tsx"],"sourcesContent":["\"use client\";\n\nimport {\n ActionButtonElement,\n ActionButtonProps,\n createActionButton,\n} from \"../../utils/createActionButton\";\nimport { useCallback } from \"react\";\nimport { useAssistantApi } from \"../../context\";\n\nconst useAttachmentRemove = () => {\n const api = useAssistantApi();\n\n const handleRemoveAttachment = useCallback(() => {\n api.attachment().remove();\n }, [api]);\n\n return handleRemoveAttachment;\n};\n\nexport namespace AttachmentPrimitiveRemove {\n export type Element = ActionButtonElement;\n export type Props = ActionButtonProps<typeof useAttachmentRemove>;\n}\n\nexport const AttachmentPrimitiveRemove = createActionButton(\n \"AttachmentPrimitive.Remove\",\n useAttachmentRemove,\n);\n"],"mappings":";;;AAEA;AAAA,EAGE;AAAA,OACK;AACP,SAAS,mBAAmB;AAC5B,SAAS,uBAAuB;AAEhC,IAAM,sBAAsB,MAAM;AAChC,QAAM,MAAM,gBAAgB;AAE5B,QAAM,yBAAyB,YAAY,MAAM;AAC/C,QAAI,WAAW,EAAE,OAAO;AAAA,EAC1B,GAAG,CAAC,GAAG,CAAC;AAER,SAAO;AACT;AAOO,IAAM,4BAA4B;AAAA,EACvC;AAAA,EACA;AACF;","names":[]}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"AttachmentThumb.d.ts","sourceRoot":"","sources":["../../../src/primitives/attachment/AttachmentThumb.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,wBAAwB,EAAc,KAAK,YAAY,EAAE,MAAM,OAAO,CAAC;AAEhF,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAEtD,KAAK,iBAAiB,GAAG,wBAAwB,CAAC,OAAO,SAAS,CAAC,GAAG,CAAC,CAAC;AAExE,yBAAiB,wBAAwB,CAAC;IACxC,KAAY,OAAO,GAAG,YAAY,CAAC,OAAO,SAAS,CAAC,GAAG,CAAC,CAAC;IACzD,KAAY,KAAK,GAAG,iBAAiB,CAAC;CACvC;AAED,eAAO,MAAM,wBAAwB;;
|
1
|
+
{"version":3,"file":"AttachmentThumb.d.ts","sourceRoot":"","sources":["../../../src/primitives/attachment/AttachmentThumb.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,wBAAwB,EAAc,KAAK,YAAY,EAAE,MAAM,OAAO,CAAC;AAEhF,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAEtD,KAAK,iBAAiB,GAAG,wBAAwB,CAAC,OAAO,SAAS,CAAC,GAAG,CAAC,CAAC;AAExE,yBAAiB,wBAAwB,CAAC;IACxC,KAAY,OAAO,GAAG,YAAY,CAAC,OAAO,SAAS,CAAC,GAAG,CAAC,CAAC;IACzD,KAAY,KAAK,GAAG,iBAAiB,CAAC;CACvC;AAED,eAAO,MAAM,wBAAwB;;0DAanC,CAAC"}
|
@@ -2,11 +2,14 @@
|
|
2
2
|
|
3
3
|
// src/primitives/attachment/AttachmentThumb.tsx
|
4
4
|
import { forwardRef } from "react";
|
5
|
-
import {
|
5
|
+
import { useAssistantState } from "../../context/index.js";
|
6
6
|
import { Primitive } from "@radix-ui/react-primitive";
|
7
7
|
import { jsxs } from "react/jsx-runtime";
|
8
8
|
var AttachmentPrimitiveThumb = forwardRef((props, ref) => {
|
9
|
-
const ext =
|
9
|
+
const ext = useAssistantState(({ attachment }) => {
|
10
|
+
const parts = attachment.name.split(".");
|
11
|
+
return parts.length > 1 ? parts.pop() : "";
|
12
|
+
});
|
10
13
|
return /* @__PURE__ */ jsxs(Primitive.div, { ...props, ref, children: [
|
11
14
|
".",
|
12
15
|
ext
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["../../../src/primitives/attachment/AttachmentThumb.tsx"],"sourcesContent":["\"use client\";\n\nimport { ComponentPropsWithoutRef, forwardRef, type ComponentRef } from \"react\";\nimport {
|
1
|
+
{"version":3,"sources":["../../../src/primitives/attachment/AttachmentThumb.tsx"],"sourcesContent":["\"use client\";\n\nimport { ComponentPropsWithoutRef, forwardRef, type ComponentRef } from \"react\";\nimport { useAssistantState } from \"../../context\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\n\ntype PrimitiveDivProps = ComponentPropsWithoutRef<typeof Primitive.div>;\n\nexport namespace AttachmentPrimitiveThumb {\n export type Element = ComponentRef<typeof Primitive.div>;\n export type Props = PrimitiveDivProps;\n}\n\nexport const AttachmentPrimitiveThumb = forwardRef<\n AttachmentPrimitiveThumb.Element,\n AttachmentPrimitiveThumb.Props\n>((props, ref) => {\n const ext = useAssistantState(({ attachment }) => {\n const parts = attachment.name.split(\".\");\n return parts.length > 1 ? parts.pop()! : \"\";\n });\n return (\n <Primitive.div {...props} ref={ref}>\n .{ext}\n </Primitive.div>\n );\n});\n\nAttachmentPrimitiveThumb.displayName = \"AttachmentPrimitive.Thumb\";\n"],"mappings":";;;AAEA,SAAmC,kBAAqC;AACxE,SAAS,yBAAyB;AAClC,SAAS,iBAAiB;AAkBtB;AATG,IAAM,2BAA2B,WAGtC,CAAC,OAAO,QAAQ;AAChB,QAAM,MAAM,kBAAkB,CAAC,EAAE,WAAW,MAAM;AAChD,UAAM,QAAQ,WAAW,KAAK,MAAM,GAAG;AACvC,WAAO,MAAM,SAAS,IAAI,MAAM,IAAI,IAAK;AAAA,EAC3C,CAAC;AACD,SACE,qBAAC,UAAU,KAAV,EAAe,GAAG,OAAO,KAAU;AAAA;AAAA,IAChC;AAAA,KACJ;AAEJ,CAAC;AAED,yBAAyB,cAAc;","names":[]}
|
@@ -1,10 +1,10 @@
|
|
1
1
|
"use client";
|
2
2
|
|
3
3
|
// src/primitives/branchPicker/BranchPickerCount.tsx
|
4
|
-
import {
|
4
|
+
import { useAssistantState } from "../../context/index.js";
|
5
5
|
import { Fragment, jsx } from "react/jsx-runtime";
|
6
6
|
var useBranchPickerCount = () => {
|
7
|
-
const branchCount =
|
7
|
+
const branchCount = useAssistantState(({ message }) => message.branchCount);
|
8
8
|
return branchCount;
|
9
9
|
};
|
10
10
|
var BranchPickerPrimitiveCount = () => {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["../../../src/primitives/branchPicker/BranchPickerCount.tsx"],"sourcesContent":["\"use client\";\n\nimport type { FC } from \"react\";\nimport {
|
1
|
+
{"version":3,"sources":["../../../src/primitives/branchPicker/BranchPickerCount.tsx"],"sourcesContent":["\"use client\";\n\nimport type { FC } from \"react\";\nimport { useAssistantState } from \"../../context\";\n\nconst useBranchPickerCount = () => {\n const branchCount = useAssistantState(({ message }) => message.branchCount);\n return branchCount;\n};\n\nexport namespace BranchPickerPrimitiveCount {\n /**\n * Props for the BranchPickerPrimitive.Count component.\n * This component takes no props.\n */\n export type Props = Record<string, never>;\n}\n\n/**\n * A component that displays the total number of branches for the current message.\n *\n * This component renders the branch count as plain text, useful for showing\n * users how many alternative responses are available.\n *\n * @example\n * ```tsx\n * <div>\n * Branch <BranchPickerPrimitive.Count /> of {totalBranches}\n * </div>\n * ```\n */\nexport const BranchPickerPrimitiveCount: FC<\n BranchPickerPrimitiveCount.Props\n> = () => {\n const branchCount = useBranchPickerCount();\n return <>{branchCount}</>;\n};\n\nBranchPickerPrimitiveCount.displayName = \"BranchPickerPrimitive.Count\";\n"],"mappings":";;;AAGA,SAAS,yBAAyB;AAgCzB;AA9BT,IAAM,uBAAuB,MAAM;AACjC,QAAM,cAAc,kBAAkB,CAAC,EAAE,QAAQ,MAAM,QAAQ,WAAW;AAC1E,SAAO;AACT;AAuBO,IAAM,6BAET,MAAM;AACR,QAAM,cAAc,qBAAqB;AACzC,SAAO,gCAAG,uBAAY;AACxB;AAEA,2BAA2B,cAAc;","names":[]}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"BranchPickerNext.d.ts","sourceRoot":"","sources":["../../../src/primitives/branchPicker/BranchPickerNext.tsx"],"names":[],"mappings":"AAEA,OAAO,EACL,mBAAmB,EACnB,iBAAiB,EAElB,MAAM,gCAAgC,CAAC;
|
1
|
+
{"version":3,"file":"BranchPickerNext.d.ts","sourceRoot":"","sources":["../../../src/primitives/branchPicker/BranchPickerNext.tsx"],"names":[],"mappings":"AAEA,OAAO,EACL,mBAAmB,EACnB,iBAAiB,EAElB,MAAM,gCAAgC,CAAC;AAIxC,QAAA,MAAM,mBAAmB,2BAYxB,CAAC;AAEF,yBAAiB,yBAAyB,CAAC;IACzC,KAAY,OAAO,GAAG,mBAAmB,CAAC;IAC1C;;;OAGG;IACH,KAAY,KAAK,GAAG,iBAAiB,CAAC,OAAO,mBAAmB,CAAC,CAAC;CACnE;AAED;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,yBAAyB;;6DAGrC,CAAC"}
|
@@ -5,16 +5,15 @@ import {
|
|
5
5
|
createActionButton
|
6
6
|
} from "../../utils/createActionButton.js";
|
7
7
|
import { useCallback } from "react";
|
8
|
-
import {
|
9
|
-
useMessage,
|
10
|
-
useMessageRuntime
|
11
|
-
} from "../../context/react/MessageContext.js";
|
8
|
+
import { useAssistantState, useAssistantApi } from "../../context/index.js";
|
12
9
|
var useBranchPickerNext = () => {
|
13
|
-
const
|
14
|
-
const disabled =
|
10
|
+
const api = useAssistantApi();
|
11
|
+
const disabled = useAssistantState(
|
12
|
+
({ message }) => message.branchNumber >= message.branchCount
|
13
|
+
);
|
15
14
|
const callback = useCallback(() => {
|
16
|
-
|
17
|
-
}, [
|
15
|
+
api.message().switchToBranch({ position: "next" });
|
16
|
+
}, [api]);
|
18
17
|
if (disabled) return null;
|
19
18
|
return callback;
|
20
19
|
};
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["../../../src/primitives/branchPicker/BranchPickerNext.tsx"],"sourcesContent":["\"use client\";\n\nimport {\n ActionButtonElement,\n ActionButtonProps,\n createActionButton,\n} from \"../../utils/createActionButton\";\nimport { useCallback } from \"react\";\nimport {
|
1
|
+
{"version":3,"sources":["../../../src/primitives/branchPicker/BranchPickerNext.tsx"],"sourcesContent":["\"use client\";\n\nimport {\n ActionButtonElement,\n ActionButtonProps,\n createActionButton,\n} from \"../../utils/createActionButton\";\nimport { useCallback } from \"react\";\nimport { useAssistantState, useAssistantApi } from \"../../context\";\n\nconst useBranchPickerNext = () => {\n const api = useAssistantApi();\n const disabled = useAssistantState(\n ({ message }) => message.branchNumber >= message.branchCount,\n );\n\n const callback = useCallback(() => {\n api.message().switchToBranch({ position: \"next\" });\n }, [api]);\n\n if (disabled) return null;\n return callback;\n};\n\nexport namespace BranchPickerPrimitiveNext {\n export type Element = ActionButtonElement;\n /**\n * Props for the BranchPickerPrimitive.Next component.\n * Inherits all button element props and action button functionality.\n */\n export type Props = ActionButtonProps<typeof useBranchPickerNext>;\n}\n\n/**\n * A button component that navigates to the next branch in the message tree.\n *\n * This component automatically handles switching to the next available branch\n * and is disabled when there are no more branches to navigate to.\n *\n * @example\n * ```tsx\n * <BranchPickerPrimitive.Next>\n * Next →\n * </BranchPickerPrimitive.Next>\n * ```\n */\nexport const BranchPickerPrimitiveNext = createActionButton(\n \"BranchPickerPrimitive.Next\",\n useBranchPickerNext,\n);\n"],"mappings":";;;AAEA;AAAA,EAGE;AAAA,OACK;AACP,SAAS,mBAAmB;AAC5B,SAAS,mBAAmB,uBAAuB;AAEnD,IAAM,sBAAsB,MAAM;AAChC,QAAM,MAAM,gBAAgB;AAC5B,QAAM,WAAW;AAAA,IACf,CAAC,EAAE,QAAQ,MAAM,QAAQ,gBAAgB,QAAQ;AAAA,EACnD;AAEA,QAAM,WAAW,YAAY,MAAM;AACjC,QAAI,QAAQ,EAAE,eAAe,EAAE,UAAU,OAAO,CAAC;AAAA,EACnD,GAAG,CAAC,GAAG,CAAC;AAER,MAAI,SAAU,QAAO;AACrB,SAAO;AACT;AAwBO,IAAM,4BAA4B;AAAA,EACvC;AAAA,EACA;AACF;","names":[]}
|
@@ -1,10 +1,10 @@
|
|
1
1
|
"use client";
|
2
2
|
|
3
3
|
// src/primitives/branchPicker/BranchPickerNumber.tsx
|
4
|
-
import {
|
4
|
+
import { useAssistantState } from "../../context/index.js";
|
5
5
|
import { Fragment, jsx } from "react/jsx-runtime";
|
6
6
|
var useBranchPickerNumber = () => {
|
7
|
-
const branchNumber =
|
7
|
+
const branchNumber = useAssistantState(({ message }) => message.branchNumber);
|
8
8
|
return branchNumber;
|
9
9
|
};
|
10
10
|
var BranchPickerPrimitiveNumber = () => {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["../../../src/primitives/branchPicker/BranchPickerNumber.tsx"],"sourcesContent":["\"use client\";\n\nimport type { FC } from \"react\";\nimport {
|
1
|
+
{"version":3,"sources":["../../../src/primitives/branchPicker/BranchPickerNumber.tsx"],"sourcesContent":["\"use client\";\n\nimport type { FC } from \"react\";\nimport { useAssistantState } from \"../../context\";\n\nconst useBranchPickerNumber = () => {\n const branchNumber = useAssistantState(({ message }) => message.branchNumber);\n return branchNumber;\n};\n\nexport namespace BranchPickerPrimitiveNumber {\n export type Props = Record<string, never>;\n}\n\nexport const BranchPickerPrimitiveNumber: FC<\n BranchPickerPrimitiveNumber.Props\n> = () => {\n const branchNumber = useBranchPickerNumber();\n return <>{branchNumber}</>;\n};\n\nBranchPickerPrimitiveNumber.displayName = \"BranchPickerPrimitive.Number\";\n"],"mappings":";;;AAGA,SAAS,yBAAyB;AAezB;AAbT,IAAM,wBAAwB,MAAM;AAClC,QAAM,eAAe,kBAAkB,CAAC,EAAE,QAAQ,MAAM,QAAQ,YAAY;AAC5E,SAAO;AACT;AAMO,IAAM,8BAET,MAAM;AACR,QAAM,eAAe,sBAAsB;AAC3C,SAAO,gCAAG,wBAAa;AACzB;AAEA,4BAA4B,cAAc;","names":[]}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"BranchPickerPrevious.d.ts","sourceRoot":"","sources":["../../../src/primitives/branchPicker/BranchPickerPrevious.tsx"],"names":[],"mappings":"AAEA,OAAO,EACL,mBAAmB,EACnB,iBAAiB,EAElB,MAAM,gCAAgC,CAAC;
|
1
|
+
{"version":3,"file":"BranchPickerPrevious.d.ts","sourceRoot":"","sources":["../../../src/primitives/branchPicker/BranchPickerPrevious.tsx"],"names":[],"mappings":"AAEA,OAAO,EACL,mBAAmB,EACnB,iBAAiB,EAElB,MAAM,gCAAgC,CAAC;AAIxC;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,QAAA,MAAM,uBAAuB,2BAY5B,CAAC;AAEF,yBAAiB,6BAA6B,CAAC;IAC7C,KAAY,OAAO,GAAG,mBAAmB,CAAC;IAC1C;;;OAGG;IACH,KAAY,KAAK,GAAG,iBAAiB,CAAC,OAAO,uBAAuB,CAAC,CAAC;CACvE;AAED;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,6BAA6B;;6DAGzC,CAAC"}
|
@@ -5,16 +5,15 @@ import {
|
|
5
5
|
createActionButton
|
6
6
|
} from "../../utils/createActionButton.js";
|
7
7
|
import { useCallback } from "react";
|
8
|
-
import {
|
9
|
-
useMessage,
|
10
|
-
useMessageRuntime
|
11
|
-
} from "../../context/react/MessageContext.js";
|
8
|
+
import { useAssistantState, useAssistantApi } from "../../context/index.js";
|
12
9
|
var useBranchPickerPrevious = () => {
|
13
|
-
const
|
14
|
-
const disabled =
|
10
|
+
const api = useAssistantApi();
|
11
|
+
const disabled = useAssistantState(
|
12
|
+
({ message }) => message.branchNumber <= 1
|
13
|
+
);
|
15
14
|
const callback = useCallback(() => {
|
16
|
-
|
17
|
-
}, [
|
15
|
+
api.message().switchToBranch({ position: "previous" });
|
16
|
+
}, [api]);
|
18
17
|
if (disabled) return null;
|
19
18
|
return callback;
|
20
19
|
};
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["../../../src/primitives/branchPicker/BranchPickerPrevious.tsx"],"sourcesContent":["\"use client\";\n\nimport {\n ActionButtonElement,\n ActionButtonProps,\n createActionButton,\n} from \"../../utils/createActionButton\";\nimport { useCallback } from \"react\";\nimport {
|
1
|
+
{"version":3,"sources":["../../../src/primitives/branchPicker/BranchPickerPrevious.tsx"],"sourcesContent":["\"use client\";\n\nimport {\n ActionButtonElement,\n ActionButtonProps,\n createActionButton,\n} from \"../../utils/createActionButton\";\nimport { useCallback } from \"react\";\nimport { useAssistantState, useAssistantApi } from \"../../context\";\n\n/**\n * Hook that provides navigation to the previous branch functionality.\n *\n * This hook returns a callback function that switches to the previous branch\n * in the message branch tree, or null if there is no previous branch available.\n *\n * @returns A previous branch callback function, or null if navigation is disabled\n *\n * @example\n * ```tsx\n * function CustomPreviousButton() {\n * const previous = useBranchPickerPrevious();\n *\n * return (\n * <button onClick={previous} disabled={!previous}>\n * {previous ? \"Previous Branch\" : \"No Previous Branch\"}\n * </button>\n * );\n * }\n * ```\n */\nconst useBranchPickerPrevious = () => {\n const api = useAssistantApi();\n const disabled = useAssistantState(\n ({ message }) => message.branchNumber <= 1,\n );\n\n const callback = useCallback(() => {\n api.message().switchToBranch({ position: \"previous\" });\n }, [api]);\n\n if (disabled) return null;\n return callback;\n};\n\nexport namespace BranchPickerPrimitivePrevious {\n export type Element = ActionButtonElement;\n /**\n * Props for the BranchPickerPrimitive.Previous component.\n * Inherits all button element props and action button functionality.\n */\n export type Props = ActionButtonProps<typeof useBranchPickerPrevious>;\n}\n\n/**\n * A button component that navigates to the previous branch in the message tree.\n *\n * This component automatically handles switching to the previous available branch\n * and is disabled when there are no previous branches to navigate to.\n *\n * @example\n * ```tsx\n * <BranchPickerPrimitive.Previous>\n * ← Previous\n * </BranchPickerPrimitive.Previous>\n * ```\n */\nexport const BranchPickerPrimitivePrevious = createActionButton(\n \"BranchPickerPrimitive.Previous\",\n useBranchPickerPrevious,\n);\n"],"mappings":";;;AAEA;AAAA,EAGE;AAAA,OACK;AACP,SAAS,mBAAmB;AAC5B,SAAS,mBAAmB,uBAAuB;AAuBnD,IAAM,0BAA0B,MAAM;AACpC,QAAM,MAAM,gBAAgB;AAC5B,QAAM,WAAW;AAAA,IACf,CAAC,EAAE,QAAQ,MAAM,QAAQ,gBAAgB;AAAA,EAC3C;AAEA,QAAM,WAAW,YAAY,MAAM;AACjC,QAAI,QAAQ,EAAE,eAAe,EAAE,UAAU,WAAW,CAAC;AAAA,EACvD,GAAG,CAAC,GAAG,CAAC;AAER,MAAI,SAAU,QAAO;AACrB,SAAO;AACT;AAwBO,IAAM,gCAAgC;AAAA,EAC3C;AAAA,EACA;AACF;","names":[]}
|
@@ -5,18 +5,18 @@ import {
|
|
5
5
|
createActionButton
|
6
6
|
} from "../../utils/createActionButton.js";
|
7
7
|
import { useCallback } from "react";
|
8
|
-
import {
|
8
|
+
import { useAssistantState, useAssistantApi } from "../../context/index.js";
|
9
9
|
var useComposerAddAttachment = ({
|
10
10
|
multiple = true
|
11
11
|
} = {}) => {
|
12
|
-
const disabled =
|
13
|
-
const
|
12
|
+
const disabled = useAssistantState(({ composer }) => !composer.isEditing);
|
13
|
+
const api = useAssistantApi();
|
14
14
|
const callback = useCallback(() => {
|
15
15
|
const input = document.createElement("input");
|
16
16
|
input.type = "file";
|
17
17
|
input.multiple = multiple;
|
18
18
|
input.hidden = true;
|
19
|
-
const attachmentAccept =
|
19
|
+
const attachmentAccept = api.composer().getState().attachmentAccept;
|
20
20
|
if (attachmentAccept !== "*") {
|
21
21
|
input.accept = attachmentAccept;
|
22
22
|
}
|
@@ -25,7 +25,7 @@ var useComposerAddAttachment = ({
|
|
25
25
|
const fileList = e.target.files;
|
26
26
|
if (!fileList) return;
|
27
27
|
for (const file of fileList) {
|
28
|
-
|
28
|
+
api.composer().addAttachment(file);
|
29
29
|
}
|
30
30
|
document.body.removeChild(input);
|
31
31
|
};
|
@@ -35,7 +35,7 @@ var useComposerAddAttachment = ({
|
|
35
35
|
}
|
36
36
|
};
|
37
37
|
input.click();
|
38
|
-
}, [
|
38
|
+
}, [api, multiple]);
|
39
39
|
if (disabled) return null;
|
40
40
|
return callback;
|
41
41
|
};
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["../../../src/primitives/composer/ComposerAddAttachment.tsx"],"sourcesContent":["\"use client\";\n\nimport {\n ActionButtonElement,\n ActionButtonProps,\n createActionButton,\n} from \"../../utils/createActionButton\";\nimport { useCallback } from \"react\";\nimport {
|
1
|
+
{"version":3,"sources":["../../../src/primitives/composer/ComposerAddAttachment.tsx"],"sourcesContent":["\"use client\";\n\nimport {\n ActionButtonElement,\n ActionButtonProps,\n createActionButton,\n} from \"../../utils/createActionButton\";\nimport { useCallback } from \"react\";\nimport { useAssistantState, useAssistantApi } from \"../../context\";\n\nconst useComposerAddAttachment = ({\n multiple = true,\n}: {\n /** allow selecting multiple files */\n multiple?: boolean | undefined;\n} = {}) => {\n const disabled = useAssistantState(({ composer }) => !composer.isEditing);\n const api = useAssistantApi();\n\n const callback = useCallback(() => {\n const input = document.createElement(\"input\");\n input.type = \"file\";\n input.multiple = multiple;\n input.hidden = true;\n\n const attachmentAccept = api.composer().getState().attachmentAccept;\n if (attachmentAccept !== \"*\") {\n input.accept = attachmentAccept;\n }\n\n document.body.appendChild(input);\n\n input.onchange = (e) => {\n const fileList = (e.target as HTMLInputElement).files;\n if (!fileList) return;\n for (const file of fileList) {\n api.composer().addAttachment(file);\n }\n\n document.body.removeChild(input);\n };\n\n input.oncancel = () => {\n if (!input.files || input.files.length === 0) {\n document.body.removeChild(input);\n }\n };\n\n input.click();\n }, [api, multiple]);\n\n if (disabled) return null;\n return callback;\n};\n\nexport namespace ComposerPrimitiveAddAttachment {\n export type Element = ActionButtonElement;\n export type Props = ActionButtonProps<typeof useComposerAddAttachment>;\n}\n\nexport const ComposerPrimitiveAddAttachment = createActionButton(\n \"ComposerPrimitive.AddAttachment\",\n useComposerAddAttachment,\n [\"multiple\"],\n);\n"],"mappings":";;;AAEA;AAAA,EAGE;AAAA,OACK;AACP,SAAS,mBAAmB;AAC5B,SAAS,mBAAmB,uBAAuB;AAEnD,IAAM,2BAA2B,CAAC;AAAA,EAChC,WAAW;AACb,IAGI,CAAC,MAAM;AACT,QAAM,WAAW,kBAAkB,CAAC,EAAE,SAAS,MAAM,CAAC,SAAS,SAAS;AACxE,QAAM,MAAM,gBAAgB;AAE5B,QAAM,WAAW,YAAY,MAAM;AACjC,UAAM,QAAQ,SAAS,cAAc,OAAO;AAC5C,UAAM,OAAO;AACb,UAAM,WAAW;AACjB,UAAM,SAAS;AAEf,UAAM,mBAAmB,IAAI,SAAS,EAAE,SAAS,EAAE;AACnD,QAAI,qBAAqB,KAAK;AAC5B,YAAM,SAAS;AAAA,IACjB;AAEA,aAAS,KAAK,YAAY,KAAK;AAE/B,UAAM,WAAW,CAAC,MAAM;AACtB,YAAM,WAAY,EAAE,OAA4B;AAChD,UAAI,CAAC,SAAU;AACf,iBAAW,QAAQ,UAAU;AAC3B,YAAI,SAAS,EAAE,cAAc,IAAI;AAAA,MACnC;AAEA,eAAS,KAAK,YAAY,KAAK;AAAA,IACjC;AAEA,UAAM,WAAW,MAAM;AACrB,UAAI,CAAC,MAAM,SAAS,MAAM,MAAM,WAAW,GAAG;AAC5C,iBAAS,KAAK,YAAY,KAAK;AAAA,MACjC;AAAA,IACF;AAEA,UAAM,MAAM;AAAA,EACd,GAAG,CAAC,KAAK,QAAQ,CAAC;AAElB,MAAI,SAAU,QAAO;AACrB,SAAO;AACT;AAOO,IAAM,iCAAiC;AAAA,EAC5C;AAAA,EACA;AAAA,EACA,CAAC,UAAU;AACb;","names":[]}
|
@@ -1,11 +1,11 @@
|
|
1
1
|
// src/primitives/composer/ComposerAttachmentDropzone.tsx
|
2
2
|
import { forwardRef, useCallback, useState } from "react";
|
3
3
|
import { Slot } from "@radix-ui/react-slot";
|
4
|
-
import {
|
4
|
+
import { useAssistantApi } from "../../context/index.js";
|
5
5
|
import { jsx } from "react/jsx-runtime";
|
6
6
|
var ComposerAttachmentDropzone = forwardRef(({ disabled, asChild = false, children, ...rest }, ref) => {
|
7
7
|
const [isDragging, setIsDragging] = useState(false);
|
8
|
-
const
|
8
|
+
const api = useAssistantApi();
|
9
9
|
const handleDrag = useCallback(
|
10
10
|
(e) => {
|
11
11
|
if (disabled) return;
|
@@ -23,13 +23,13 @@ var ComposerAttachmentDropzone = forwardRef(({ disabled, asChild = false, childr
|
|
23
23
|
setIsDragging(false);
|
24
24
|
for (const file of e.dataTransfer.files) {
|
25
25
|
try {
|
26
|
-
await
|
26
|
+
await api.composer().addAttachment(file);
|
27
27
|
} catch (error) {
|
28
28
|
console.error("Failed to add attachment:", error);
|
29
29
|
}
|
30
30
|
}
|
31
31
|
},
|
32
|
-
[disabled,
|
32
|
+
[disabled, api]
|
33
33
|
);
|
34
34
|
const dragProps = {
|
35
35
|
onDragEnter: handleDrag,
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["../../../src/primitives/composer/ComposerAttachmentDropzone.tsx"],"sourcesContent":["import { forwardRef, useCallback, useState } from \"react\";\n\nimport { Slot } from \"@radix-ui/react-slot\";\nimport React from \"react\";\nimport {
|
1
|
+
{"version":3,"sources":["../../../src/primitives/composer/ComposerAttachmentDropzone.tsx"],"sourcesContent":["import { forwardRef, useCallback, useState } from \"react\";\n\nimport { Slot } from \"@radix-ui/react-slot\";\nimport React from \"react\";\nimport { useAssistantApi } from \"../../context\";\n\nexport namespace ComposerAttachmentDropzonePrimitive {\n export type Element = HTMLDivElement;\n export type Props = React.HTMLAttributes<HTMLDivElement> & {\n asChild?: boolean | undefined;\n disabled?: boolean | undefined;\n };\n}\n\nexport const ComposerAttachmentDropzone = forwardRef<\n HTMLDivElement,\n ComposerAttachmentDropzonePrimitive.Props\n>(({ disabled, asChild = false, children, ...rest }, ref) => {\n const [isDragging, setIsDragging] = useState(false);\n const api = useAssistantApi();\n\n const handleDrag = useCallback(\n (e: React.DragEvent) => {\n if (disabled) return;\n e.preventDefault();\n e.stopPropagation();\n setIsDragging(e.type === \"dragenter\" || e.type === \"dragover\");\n },\n [disabled],\n );\n\n const handleDrop = useCallback(\n async (e: React.DragEvent) => {\n if (disabled) return;\n e.preventDefault();\n e.stopPropagation();\n setIsDragging(false);\n for (const file of e.dataTransfer.files) {\n try {\n await api.composer().addAttachment(file);\n } catch (error) {\n console.error(\"Failed to add attachment:\", error);\n }\n }\n },\n [disabled, api],\n );\n\n const dragProps = {\n onDragEnter: handleDrag,\n onDragOver: handleDrag,\n onDragLeave: handleDrag,\n onDrop: handleDrop,\n };\n\n const Comp = asChild ? Slot : \"div\";\n\n return (\n <Comp\n {...(isDragging ? { \"data-dragging\": \"true\" } : null)}\n ref={ref}\n {...dragProps}\n {...rest}\n >\n {children}\n </Comp>\n );\n});\n\nComposerAttachmentDropzone.displayName = \"ComposerPrimitive.AttachmentDropzone\";\n"],"mappings":";AAAA,SAAS,YAAY,aAAa,gBAAgB;AAElD,SAAS,YAAY;AAErB,SAAS,uBAAuB;AAsD5B;AA5CG,IAAM,6BAA6B,WAGxC,CAAC,EAAE,UAAU,UAAU,OAAO,UAAU,GAAG,KAAK,GAAG,QAAQ;AAC3D,QAAM,CAAC,YAAY,aAAa,IAAI,SAAS,KAAK;AAClD,QAAM,MAAM,gBAAgB;AAE5B,QAAM,aAAa;AAAA,IACjB,CAAC,MAAuB;AACtB,UAAI,SAAU;AACd,QAAE,eAAe;AACjB,QAAE,gBAAgB;AAClB,oBAAc,EAAE,SAAS,eAAe,EAAE,SAAS,UAAU;AAAA,IAC/D;AAAA,IACA,CAAC,QAAQ;AAAA,EACX;AAEA,QAAM,aAAa;AAAA,IACjB,OAAO,MAAuB;AAC5B,UAAI,SAAU;AACd,QAAE,eAAe;AACjB,QAAE,gBAAgB;AAClB,oBAAc,KAAK;AACnB,iBAAW,QAAQ,EAAE,aAAa,OAAO;AACvC,YAAI;AACF,gBAAM,IAAI,SAAS,EAAE,cAAc,IAAI;AAAA,QACzC,SAAS,OAAO;AACd,kBAAQ,MAAM,6BAA6B,KAAK;AAAA,QAClD;AAAA,MACF;AAAA,IACF;AAAA,IACA,CAAC,UAAU,GAAG;AAAA,EAChB;AAEA,QAAM,YAAY;AAAA,IAChB,aAAa;AAAA,IACb,YAAY;AAAA,IACZ,aAAa;AAAA,IACb,QAAQ;AAAA,EACV;AAEA,QAAM,OAAO,UAAU,OAAO;AAE9B,SACE;AAAA,IAAC;AAAA;AAAA,MACE,GAAI,aAAa,EAAE,iBAAiB,OAAO,IAAI;AAAA,MAChD;AAAA,MACC,GAAG;AAAA,MACH,GAAG;AAAA,MAEH;AAAA;AAAA,EACH;AAEJ,CAAC;AAED,2BAA2B,cAAc;","names":[]}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"ComposerAttachments.d.ts","sourceRoot":"","sources":["../../../src/primitives/composer/ComposerAttachments.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,EAAiB,MAAM,OAAO,CAAC;
|
1
|
+
{"version":3,"file":"ComposerAttachments.d.ts","sourceRoot":"","sources":["../../../src/primitives/composer/ComposerAttachments.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,EAAiB,MAAM,OAAO,CAAC;AAO9D,yBAAiB,4BAA4B,CAAC;IAC5C,KAAY,KAAK,GAAG;QAClB,UAAU,EACN;YACE,KAAK,CAAC,EAAE,aAAa,GAAG,SAAS,CAAC;YAClC,QAAQ,CAAC,EAAE,aAAa,GAAG,SAAS,CAAC;YACrC,IAAI,CAAC,EAAE,aAAa,GAAG,SAAS,CAAC;YACjC,UAAU,CAAC,EAAE,aAAa,GAAG,SAAS,CAAC;SACxC,GACD,SAAS,CAAC;KACf,CAAC;CACH;AA+BD,yBAAiB,kCAAkC,CAAC;IAClD,KAAY,KAAK,GAAG;QAClB,KAAK,EAAE,MAAM,CAAC;QACd,UAAU,CAAC,EAAE,4BAA4B,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;KAC/D,CAAC;CACH;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,kCAAkC,EAAE,EAAE,CAAC,kCAAkC,CAAC,KAAK,CAezF,CAAC;AAKJ,eAAO,MAAM,4BAA4B,EAAE,EAAE,CAC3C,4BAA4B,CAAC,KAAK,CAiBnC,CAAC"}
|
@@ -2,9 +2,10 @@
|
|
2
2
|
|
3
3
|
// src/primitives/composer/ComposerAttachments.tsx
|
4
4
|
import { memo, useMemo } from "react";
|
5
|
-
import {
|
6
|
-
|
7
|
-
|
5
|
+
import {
|
6
|
+
useAssistantState,
|
7
|
+
ComposerAttachmentByIndexProvider
|
8
|
+
} from "../../context/index.js";
|
8
9
|
import { jsx } from "react/jsx-runtime";
|
9
10
|
var getComponent = (components, attachment) => {
|
10
11
|
const type = attachment.type;
|
@@ -21,26 +22,23 @@ var getComponent = (components, attachment) => {
|
|
21
22
|
}
|
22
23
|
};
|
23
24
|
var AttachmentComponent = ({ components }) => {
|
24
|
-
const
|
25
|
-
|
26
|
-
);
|
25
|
+
const attachment = useAssistantState(({ attachment: attachment2 }) => attachment2);
|
26
|
+
if (!attachment) return null;
|
27
|
+
const Component = getComponent(components, attachment);
|
27
28
|
if (!Component) return null;
|
28
29
|
return /* @__PURE__ */ jsx(Component, {});
|
29
30
|
};
|
30
31
|
var ComposerPrimitiveAttachmentByIndex = memo(
|
31
32
|
({ index, components }) => {
|
32
|
-
|
33
|
-
const runtime = useMemo(
|
34
|
-
() => composerRuntime.getAttachmentByIndex(index),
|
35
|
-
[composerRuntime, index]
|
36
|
-
);
|
37
|
-
return /* @__PURE__ */ jsx(AttachmentRuntimeProvider, { runtime, children: /* @__PURE__ */ jsx(AttachmentComponent, { components }) });
|
33
|
+
return /* @__PURE__ */ jsx(ComposerAttachmentByIndexProvider, { index, children: /* @__PURE__ */ jsx(AttachmentComponent, { components }) });
|
38
34
|
},
|
39
35
|
(prev, next) => prev.index === next.index && prev.components?.Image === next.components?.Image && prev.components?.Document === next.components?.Document && prev.components?.File === next.components?.File && prev.components?.Attachment === next.components?.Attachment
|
40
36
|
);
|
41
37
|
ComposerPrimitiveAttachmentByIndex.displayName = "ComposerPrimitive.AttachmentByIndex";
|
42
38
|
var ComposerPrimitiveAttachments = ({ components }) => {
|
43
|
-
const attachmentsCount =
|
39
|
+
const attachmentsCount = useAssistantState(
|
40
|
+
(s) => s.composer.attachments.length
|
41
|
+
);
|
44
42
|
const attachmentElements = useMemo(() => {
|
45
43
|
return Array.from({ length: attachmentsCount }, (_, index) => /* @__PURE__ */ jsx(
|
46
44
|
ComposerPrimitiveAttachmentByIndex,
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["../../../src/primitives/composer/ComposerAttachments.tsx"],"sourcesContent":["\"use client\";\n\nimport { ComponentType, type FC, memo, useMemo } from \"react\";\nimport { Attachment } from \"../../types\";\nimport {
|
1
|
+
{"version":3,"sources":["../../../src/primitives/composer/ComposerAttachments.tsx"],"sourcesContent":["\"use client\";\n\nimport { ComponentType, type FC, memo, useMemo } from \"react\";\nimport { Attachment } from \"../../types\";\nimport {\n useAssistantState,\n ComposerAttachmentByIndexProvider,\n} from \"../../context\";\n\nexport namespace ComposerPrimitiveAttachments {\n export type Props = {\n components:\n | {\n Image?: ComponentType | undefined;\n Document?: ComponentType | undefined;\n File?: ComponentType | undefined;\n Attachment?: ComponentType | undefined;\n }\n | undefined;\n };\n}\n\nconst getComponent = (\n components: ComposerPrimitiveAttachments.Props[\"components\"],\n attachment: Attachment,\n) => {\n const type = attachment.type;\n switch (type) {\n case \"image\":\n return components?.Image ?? components?.Attachment;\n case \"document\":\n return components?.Document ?? components?.Attachment;\n case \"file\":\n return components?.File ?? components?.Attachment;\n default:\n const _exhaustiveCheck: never = type;\n throw new Error(`Unknown attachment type: ${_exhaustiveCheck}`);\n }\n};\n\nconst AttachmentComponent: FC<{\n components: ComposerPrimitiveAttachments.Props[\"components\"];\n}> = ({ components }) => {\n const attachment = useAssistantState(({ attachment }) => attachment);\n if (!attachment) return null;\n\n const Component = getComponent(components, attachment);\n if (!Component) return null;\n return <Component />;\n};\n\nexport namespace ComposerPrimitiveAttachmentByIndex {\n export type Props = {\n index: number;\n components?: ComposerPrimitiveAttachments.Props[\"components\"];\n };\n}\n\n/**\n * Renders a single attachment at the specified index within the composer.\n *\n * This component provides direct access to render a specific attachment\n * from the composer's attachment list using the provided component configuration.\n *\n * @example\n * ```tsx\n * <ComposerPrimitive.AttachmentByIndex\n * index={0}\n * components={{\n * Image: MyImageAttachment,\n * Document: MyDocumentAttachment\n * }}\n * />\n * ```\n */\nexport const ComposerPrimitiveAttachmentByIndex: FC<ComposerPrimitiveAttachmentByIndex.Props> =\n memo(\n ({ index, components }) => {\n return (\n <ComposerAttachmentByIndexProvider index={index}>\n <AttachmentComponent components={components} />\n </ComposerAttachmentByIndexProvider>\n );\n },\n (prev, next) =>\n prev.index === next.index &&\n prev.components?.Image === next.components?.Image &&\n prev.components?.Document === next.components?.Document &&\n prev.components?.File === next.components?.File &&\n prev.components?.Attachment === next.components?.Attachment,\n );\n\nComposerPrimitiveAttachmentByIndex.displayName =\n \"ComposerPrimitive.AttachmentByIndex\";\n\nexport const ComposerPrimitiveAttachments: FC<\n ComposerPrimitiveAttachments.Props\n> = ({ components }) => {\n const attachmentsCount = useAssistantState(\n (s) => s.composer.attachments.length,\n );\n\n const attachmentElements = useMemo(() => {\n return Array.from({ length: attachmentsCount }, (_, index) => (\n <ComposerPrimitiveAttachmentByIndex\n key={index}\n index={index}\n components={components}\n />\n ));\n }, [attachmentsCount, components]);\n\n return attachmentElements;\n};\n\nComposerPrimitiveAttachments.displayName = \"ComposerPrimitive.Attachments\";\n"],"mappings":";;;AAEA,SAAiC,MAAM,eAAe;AAEtD;AAAA,EACE;AAAA,EACA;AAAA,OACK;AAyCE;AA1BT,IAAM,eAAe,CACnB,YACA,eACG;AACH,QAAM,OAAO,WAAW;AACxB,UAAQ,MAAM;AAAA,IACZ,KAAK;AACH,aAAO,YAAY,SAAS,YAAY;AAAA,IAC1C,KAAK;AACH,aAAO,YAAY,YAAY,YAAY;AAAA,IAC7C,KAAK;AACH,aAAO,YAAY,QAAQ,YAAY;AAAA,IACzC;AACE,YAAM,mBAA0B;AAChC,YAAM,IAAI,MAAM,4BAA4B,gBAAgB,EAAE;AAAA,EAClE;AACF;AAEA,IAAM,sBAED,CAAC,EAAE,WAAW,MAAM;AACvB,QAAM,aAAa,kBAAkB,CAAC,EAAE,YAAAA,YAAW,MAAMA,WAAU;AACnE,MAAI,CAAC,WAAY,QAAO;AAExB,QAAM,YAAY,aAAa,YAAY,UAAU;AACrD,MAAI,CAAC,UAAW,QAAO;AACvB,SAAO,oBAAC,aAAU;AACpB;AA0BO,IAAM,qCACX;AAAA,EACE,CAAC,EAAE,OAAO,WAAW,MAAM;AACzB,WACE,oBAAC,qCAAkC,OACjC,8BAAC,uBAAoB,YAAwB,GAC/C;AAAA,EAEJ;AAAA,EACA,CAAC,MAAM,SACL,KAAK,UAAU,KAAK,SACpB,KAAK,YAAY,UAAU,KAAK,YAAY,SAC5C,KAAK,YAAY,aAAa,KAAK,YAAY,YAC/C,KAAK,YAAY,SAAS,KAAK,YAAY,QAC3C,KAAK,YAAY,eAAe,KAAK,YAAY;AACrD;AAEF,mCAAmC,cACjC;AAEK,IAAM,+BAET,CAAC,EAAE,WAAW,MAAM;AACtB,QAAM,mBAAmB;AAAA,IACvB,CAAC,MAAM,EAAE,SAAS,YAAY;AAAA,EAChC;AAEA,QAAM,qBAAqB,QAAQ,MAAM;AACvC,WAAO,MAAM,KAAK,EAAE,QAAQ,iBAAiB,GAAG,CAAC,GAAG,UAClD;AAAA,MAAC;AAAA;AAAA,QAEC;AAAA,QACA;AAAA;AAAA,MAFK;AAAA,IAGP,CACD;AAAA,EACH,GAAG,CAAC,kBAAkB,UAAU,CAAC;AAEjC,SAAO;AACT;AAEA,6BAA6B,cAAc;","names":["attachment"]}
|
@@ -5,13 +5,13 @@ import {
|
|
5
5
|
createActionButton
|
6
6
|
} from "../../utils/createActionButton.js";
|
7
7
|
import { useCallback } from "react";
|
8
|
-
import {
|
8
|
+
import { useAssistantState, useAssistantApi } from "../../context/index.js";
|
9
9
|
var useComposerCancel = () => {
|
10
|
-
const
|
11
|
-
const disabled =
|
10
|
+
const api = useAssistantApi();
|
11
|
+
const disabled = useAssistantState(({ composer }) => !composer.canCancel);
|
12
12
|
const callback = useCallback(() => {
|
13
|
-
|
14
|
-
}, [
|
13
|
+
api.composer().cancel();
|
14
|
+
}, [api]);
|
15
15
|
if (disabled) return null;
|
16
16
|
return callback;
|
17
17
|
};
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["../../../src/primitives/composer/ComposerCancel.tsx"],"sourcesContent":["\"use client\";\n\nimport {\n ActionButtonElement,\n ActionButtonProps,\n createActionButton,\n} from \"../../utils/createActionButton\";\nimport { useCallback } from \"react\";\nimport {
|
1
|
+
{"version":3,"sources":["../../../src/primitives/composer/ComposerCancel.tsx"],"sourcesContent":["\"use client\";\n\nimport {\n ActionButtonElement,\n ActionButtonProps,\n createActionButton,\n} from \"../../utils/createActionButton\";\nimport { useCallback } from \"react\";\nimport { useAssistantState, useAssistantApi } from \"../../context\";\n\nconst useComposerCancel = () => {\n const api = useAssistantApi();\n const disabled = useAssistantState(({ composer }) => !composer.canCancel);\n\n const callback = useCallback(() => {\n api.composer().cancel();\n }, [api]);\n\n if (disabled) return null;\n return callback;\n};\n\nexport namespace ComposerPrimitiveCancel {\n export type Element = ActionButtonElement;\n /**\n * Props for the ComposerPrimitive.Cancel component.\n * Inherits all button element props and action button functionality.\n */\n export type Props = ActionButtonProps<typeof useComposerCancel>;\n}\n\n/**\n * A button component that cancels the current message composition.\n *\n * This component automatically handles the cancel functionality and is disabled\n * when canceling is not available.\n *\n * @example\n * ```tsx\n * <ComposerPrimitive.Cancel>\n * Cancel\n * </ComposerPrimitive.Cancel>\n * ```\n */\nexport const ComposerPrimitiveCancel = createActionButton(\n \"ComposerPrimitive.Cancel\",\n useComposerCancel,\n);\n"],"mappings":";;;AAEA;AAAA,EAGE;AAAA,OACK;AACP,SAAS,mBAAmB;AAC5B,SAAS,mBAAmB,uBAAuB;AAEnD,IAAM,oBAAoB,MAAM;AAC9B,QAAM,MAAM,gBAAgB;AAC5B,QAAM,WAAW,kBAAkB,CAAC,EAAE,SAAS,MAAM,CAAC,SAAS,SAAS;AAExE,QAAM,WAAW,YAAY,MAAM;AACjC,QAAI,SAAS,EAAE,OAAO;AAAA,EACxB,GAAG,CAAC,GAAG,CAAC;AAER,MAAI,SAAU,QAAO;AACrB,SAAO;AACT;AAwBO,IAAM,0BAA0B;AAAA,EACrC;AAAA,EACA;AACF;","names":[]}
|
@@ -1,9 +1,9 @@
|
|
1
1
|
"use client";
|
2
2
|
|
3
3
|
// src/primitives/composer/ComposerIf.tsx
|
4
|
-
import {
|
4
|
+
import { useAssistantState } from "../../context/index.js";
|
5
5
|
var useComposerIf = (props) => {
|
6
|
-
return
|
6
|
+
return useAssistantState(({ composer }) => {
|
7
7
|
if (props.editing === true && !composer.isEditing) return false;
|
8
8
|
if (props.editing === false && composer.isEditing) return false;
|
9
9
|
return true;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["../../../src/primitives/composer/ComposerIf.tsx"],"sourcesContent":["\"use client\";\n\nimport type { FC, PropsWithChildren } from \"react\";\nimport {
|
1
|
+
{"version":3,"sources":["../../../src/primitives/composer/ComposerIf.tsx"],"sourcesContent":["\"use client\";\n\nimport type { FC, PropsWithChildren } from \"react\";\nimport { useAssistantState } from \"../../context\";\nimport type { RequireAtLeastOne } from \"../../utils/RequireAtLeastOne\";\n\ntype ComposerIfFilters = {\n editing: boolean | undefined;\n};\n\nexport type UseComposerIfProps = RequireAtLeastOne<ComposerIfFilters>;\n\nconst useComposerIf = (props: UseComposerIfProps) => {\n return useAssistantState(({ composer }) => {\n if (props.editing === true && !composer.isEditing) return false;\n if (props.editing === false && composer.isEditing) return false;\n\n return true;\n });\n};\n\nexport namespace ComposerPrimitiveIf {\n export type Props = PropsWithChildren<UseComposerIfProps>;\n}\n\nexport const ComposerPrimitiveIf: FC<ComposerPrimitiveIf.Props> = ({\n children,\n ...query\n}) => {\n const result = useComposerIf(query);\n return result ? children : null;\n};\n\nComposerPrimitiveIf.displayName = \"ComposerPrimitive.If\";\n"],"mappings":";;;AAGA,SAAS,yBAAyB;AASlC,IAAM,gBAAgB,CAAC,UAA8B;AACnD,SAAO,kBAAkB,CAAC,EAAE,SAAS,MAAM;AACzC,QAAI,MAAM,YAAY,QAAQ,CAAC,SAAS,UAAW,QAAO;AAC1D,QAAI,MAAM,YAAY,SAAS,SAAS,UAAW,QAAO;AAE1D,WAAO;AAAA,EACT,CAAC;AACH;AAMO,IAAM,sBAAqD,CAAC;AAAA,EACjE;AAAA,EACA,GAAG;AACL,MAAM;AACJ,QAAM,SAAS,cAAc,KAAK;AAClC,SAAO,SAAS,WAAW;AAC7B;AAEA,oBAAoB,cAAc;","names":[]}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"ComposerInput.d.ts","sourceRoot":"","sources":["../../../src/primitives/composer/ComposerInput.tsx"],"names":[],"mappings":"AAaA,OAAyB,EACvB,KAAK,qBAAqB,EAC3B,MAAM,yBAAyB,CAAC;
|
1
|
+
{"version":3,"file":"ComposerInput.d.ts","sourceRoot":"","sources":["../../../src/primitives/composer/ComposerInput.tsx"],"names":[],"mappings":"AAaA,OAAyB,EACvB,KAAK,qBAAqB,EAC3B,MAAM,yBAAyB,CAAC;AAKjC,yBAAiB,sBAAsB,CAAC;IACtC,KAAY,OAAO,GAAG,mBAAmB,CAAC;IAC1C,KAAY,KAAK,GAAG,qBAAqB,GAAG;QAC1C;;;WAGG;QACH,OAAO,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;QAC9B;;;WAGG;QACH,aAAa,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;QACpC;;;WAGG;QACH,cAAc,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;QACrC;;;WAGG;QACH,wBAAwB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;QAC/C;;;WAGG;QACH,8BAA8B,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;QACrD;;;WAGG;QACH,8BAA8B,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;QACrD;;;WAGG;QACH,oBAAoB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;KAC5C,CAAC;CACH;AAED;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,sBAAsB;IAtD/B;;;OAGG;cACO,OAAO,GAAG,SAAS;IAC7B;;;OAGG;oBACa,OAAO,GAAG,SAAS;IACnC;;;OAGG;qBACc,OAAO,GAAG,SAAS;IACpC;;;OAGG;+BACwB,OAAO,GAAG,SAAS;IAC9C;;;OAGG;qCAC8B,OAAO,GAAG,SAAS;IACpD;;;OAGG;qCAC8B,OAAO,GAAG,SAAS;IACpD;;;OAGG;2BACoB,OAAO,GAAG,SAAS;uDA6J7C,CAAC"}
|