@assistant-ui/react 0.12.25 → 0.12.26
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/augmentations.d.ts.map +1 -1
- package/dist/client/InMemoryThreadList.d.ts.map +1 -1
- package/dist/client/InMemoryThreadList.js +1 -0
- package/dist/client/InMemoryThreadList.js.map +1 -1
- package/dist/client/SingleThreadList.d.ts.map +1 -1
- package/dist/client/SingleThreadList.js +1 -0
- package/dist/client/SingleThreadList.js.map +1 -1
- package/dist/context/providers/MessageProvider.d.ts +1 -1
- package/dist/context/providers/MessageProvider.d.ts.map +1 -1
- package/dist/context/react/ThreadViewportContext.d.ts +3 -3
- package/dist/context/react/ThreadViewportContext.d.ts.map +1 -1
- package/dist/context/react/utils/createContextHook.d.ts +1 -1
- package/dist/context/react/utils/createContextHook.d.ts.map +1 -1
- package/dist/context/react/utils/createContextHook.js.map +1 -1
- package/dist/context/react/utils/createContextStoreHook.d.ts +1 -1
- package/dist/context/react/utils/createContextStoreHook.d.ts.map +1 -1
- package/dist/context/react/utils/createStateHookForRuntime.d.ts +1 -1
- package/dist/context/react/utils/createStateHookForRuntime.d.ts.map +1 -1
- package/dist/context/react/utils/createStateHookForRuntime.js +1 -0
- package/dist/context/react/utils/createStateHookForRuntime.js.map +1 -1
- package/dist/devtools/DevToolsHooks.d.ts +1 -1
- package/dist/devtools/DevToolsHooks.d.ts.map +1 -1
- package/dist/devtools/DevToolsHooks.js +4 -0
- package/dist/devtools/DevToolsHooks.js.map +1 -1
- package/dist/index.d.ts +3 -5
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6 -32
- package/dist/index.js.map +1 -1
- package/dist/legacy-runtime/AssistantRuntimeProvider.d.ts +3 -3
- package/dist/legacy-runtime/AssistantRuntimeProvider.d.ts.map +1 -1
- package/dist/legacy-runtime/AssistantRuntimeProvider.js.map +1 -1
- package/dist/legacy-runtime/cloud/auiV0.d.ts +3 -3
- package/dist/legacy-runtime/cloud/auiV0.d.ts.map +1 -1
- package/dist/legacy-runtime/cloud/auiV0.js.map +1 -1
- package/dist/legacy-runtime/cloud/useCloudThreadListRuntime.d.ts +1 -1
- package/dist/legacy-runtime/cloud/useCloudThreadListRuntime.d.ts.map +1 -1
- package/dist/legacy-runtime/hooks/AssistantContext.d.ts +1 -1
- package/dist/legacy-runtime/hooks/AssistantContext.d.ts.map +1 -1
- package/dist/legacy-runtime/hooks/AttachmentContext.d.ts +1 -1
- package/dist/legacy-runtime/hooks/AttachmentContext.d.ts.map +1 -1
- package/dist/legacy-runtime/hooks/ComposerContext.d.ts +1 -1
- package/dist/legacy-runtime/hooks/ComposerContext.d.ts.map +1 -1
- package/dist/legacy-runtime/hooks/MessageContext.d.ts +1 -1
- package/dist/legacy-runtime/hooks/MessageContext.d.ts.map +1 -1
- package/dist/legacy-runtime/hooks/MessagePartContext.d.ts +1 -1
- package/dist/legacy-runtime/hooks/MessagePartContext.d.ts.map +1 -1
- package/dist/legacy-runtime/hooks/ThreadContext.d.ts +1 -1
- package/dist/legacy-runtime/hooks/ThreadContext.d.ts.map +1 -1
- package/dist/legacy-runtime/hooks/ThreadListItemContext.d.ts +1 -1
- package/dist/legacy-runtime/hooks/ThreadListItemContext.d.ts.map +1 -1
- package/dist/legacy-runtime/runtime-cores/assistant-transport/commandQueue.d.ts +1 -1
- package/dist/legacy-runtime/runtime-cores/assistant-transport/commandQueue.d.ts.map +1 -1
- package/dist/legacy-runtime/runtime-cores/assistant-transport/types.d.ts +2 -2
- package/dist/legacy-runtime/runtime-cores/assistant-transport/types.d.ts.map +1 -1
- package/dist/legacy-runtime/runtime-cores/assistant-transport/useAssistantTransportRuntime.d.ts +3 -3
- package/dist/legacy-runtime/runtime-cores/assistant-transport/useAssistantTransportRuntime.d.ts.map +1 -1
- package/dist/legacy-runtime/runtime-cores/assistant-transport/useAssistantTransportRuntime.js +14 -1
- package/dist/legacy-runtime/runtime-cores/assistant-transport/useAssistantTransportRuntime.js.map +1 -1
- package/dist/model-context/frame/useAssistantFrameHost.d.ts +1 -1
- package/dist/model-context/frame/useAssistantFrameHost.d.ts.map +1 -1
- package/dist/model-context/frame/useAssistantFrameHost.js.map +1 -1
- package/dist/model-context/makeAssistantVisible.d.ts +1 -1
- package/dist/model-context/makeAssistantVisible.d.ts.map +1 -1
- package/dist/primitives/actionBar/ActionBarCopy.d.ts +1 -1
- package/dist/primitives/actionBar/ActionBarCopy.d.ts.map +1 -1
- package/dist/primitives/actionBar/ActionBarEdit.d.ts +1 -1
- package/dist/primitives/actionBar/ActionBarEdit.d.ts.map +1 -1
- package/dist/primitives/actionBar/ActionBarExportMarkdown.d.ts +1 -1
- package/dist/primitives/actionBar/ActionBarExportMarkdown.d.ts.map +1 -1
- package/dist/primitives/actionBar/ActionBarFeedbackNegative.d.ts +1 -1
- package/dist/primitives/actionBar/ActionBarFeedbackNegative.d.ts.map +1 -1
- package/dist/primitives/actionBar/ActionBarFeedbackPositive.d.ts +1 -1
- package/dist/primitives/actionBar/ActionBarFeedbackPositive.d.ts.map +1 -1
- package/dist/primitives/actionBar/ActionBarReload.d.ts +1 -1
- package/dist/primitives/actionBar/ActionBarReload.d.ts.map +1 -1
- package/dist/primitives/actionBar/ActionBarRoot.d.ts +1 -1
- package/dist/primitives/actionBar/ActionBarRoot.d.ts.map +1 -1
- package/dist/primitives/actionBar/ActionBarSpeak.d.ts +1 -1
- package/dist/primitives/actionBar/ActionBarSpeak.d.ts.map +1 -1
- package/dist/primitives/actionBar/ActionBarStopSpeaking.d.ts +1 -1
- package/dist/primitives/actionBar/ActionBarStopSpeaking.d.ts.map +1 -1
- package/dist/primitives/actionBarMore/ActionBarMoreContent.d.ts +5 -2
- package/dist/primitives/actionBarMore/ActionBarMoreContent.d.ts.map +1 -1
- package/dist/primitives/actionBarMore/ActionBarMoreContent.js +3 -2
- package/dist/primitives/actionBarMore/ActionBarMoreContent.js.map +1 -1
- package/dist/primitives/actionBarMore/ActionBarMoreItem.d.ts +7 -4
- package/dist/primitives/actionBarMore/ActionBarMoreItem.d.ts.map +1 -1
- package/dist/primitives/actionBarMore/ActionBarMoreItem.js +2 -2
- package/dist/primitives/actionBarMore/ActionBarMoreItem.js.map +1 -1
- package/dist/primitives/actionBarMore/ActionBarMoreRoot.d.ts +1 -1
- package/dist/primitives/actionBarMore/ActionBarMoreRoot.d.ts.map +1 -1
- package/dist/primitives/actionBarMore/ActionBarMoreRoot.js.map +1 -1
- package/dist/primitives/actionBarMore/ActionBarMoreSeparator.d.ts +7 -4
- package/dist/primitives/actionBarMore/ActionBarMoreSeparator.d.ts.map +1 -1
- package/dist/primitives/actionBarMore/ActionBarMoreSeparator.js +2 -2
- package/dist/primitives/actionBarMore/ActionBarMoreSeparator.js.map +1 -1
- package/dist/primitives/actionBarMore/ActionBarMoreTrigger.d.ts +7 -4
- package/dist/primitives/actionBarMore/ActionBarMoreTrigger.d.ts.map +1 -1
- package/dist/primitives/actionBarMore/ActionBarMoreTrigger.js +2 -2
- package/dist/primitives/actionBarMore/ActionBarMoreTrigger.js.map +1 -1
- package/dist/primitives/assistantModal/AssistantModalAnchor.d.ts +1 -1
- package/dist/primitives/assistantModal/AssistantModalAnchor.d.ts.map +1 -1
- package/dist/primitives/assistantModal/AssistantModalAnchor.js +1 -1
- package/dist/primitives/assistantModal/AssistantModalAnchor.js.map +1 -1
- package/dist/primitives/assistantModal/AssistantModalContent.d.ts +1 -1
- package/dist/primitives/assistantModal/AssistantModalContent.d.ts.map +1 -1
- package/dist/primitives/assistantModal/AssistantModalContent.js +1 -1
- package/dist/primitives/assistantModal/AssistantModalContent.js.map +1 -1
- package/dist/primitives/assistantModal/AssistantModalRoot.d.ts +1 -1
- package/dist/primitives/assistantModal/AssistantModalRoot.d.ts.map +1 -1
- package/dist/primitives/assistantModal/AssistantModalRoot.js.map +1 -1
- package/dist/primitives/assistantModal/AssistantModalTrigger.d.ts +1 -1
- package/dist/primitives/assistantModal/AssistantModalTrigger.d.ts.map +1 -1
- package/dist/primitives/assistantModal/AssistantModalTrigger.js +1 -1
- package/dist/primitives/assistantModal/AssistantModalTrigger.js.map +1 -1
- package/dist/primitives/attachment/AttachmentRemove.d.ts +1 -1
- package/dist/primitives/attachment/AttachmentRemove.d.ts.map +1 -1
- package/dist/primitives/attachment/AttachmentRoot.d.ts +1 -1
- package/dist/primitives/attachment/AttachmentRoot.d.ts.map +1 -1
- package/dist/primitives/attachment/AttachmentRoot.js +1 -1
- package/dist/primitives/attachment/AttachmentRoot.js.map +1 -1
- package/dist/primitives/attachment/AttachmentThumb.d.ts +1 -1
- package/dist/primitives/attachment/AttachmentThumb.d.ts.map +1 -1
- package/dist/primitives/attachment/AttachmentThumb.js +1 -1
- package/dist/primitives/attachment/AttachmentThumb.js.map +1 -1
- package/dist/primitives/branchPicker/BranchPickerNext.d.ts +1 -1
- package/dist/primitives/branchPicker/BranchPickerNext.d.ts.map +1 -1
- package/dist/primitives/branchPicker/BranchPickerPrevious.d.ts +1 -1
- package/dist/primitives/branchPicker/BranchPickerPrevious.d.ts.map +1 -1
- package/dist/primitives/branchPicker/BranchPickerRoot.d.ts +1 -1
- package/dist/primitives/branchPicker/BranchPickerRoot.d.ts.map +1 -1
- package/dist/primitives/branchPicker/BranchPickerRoot.js +1 -1
- package/dist/primitives/branchPicker/BranchPickerRoot.js.map +1 -1
- package/dist/primitives/chainOfThought/ChainOfThoughtAccordionTrigger.d.ts +1 -1
- package/dist/primitives/chainOfThought/ChainOfThoughtAccordionTrigger.d.ts.map +1 -1
- package/dist/primitives/chainOfThought/ChainOfThoughtRoot.d.ts +1 -1
- package/dist/primitives/chainOfThought/ChainOfThoughtRoot.d.ts.map +1 -1
- package/dist/primitives/chainOfThought/ChainOfThoughtRoot.js +1 -1
- package/dist/primitives/chainOfThought/ChainOfThoughtRoot.js.map +1 -1
- package/dist/primitives/composer/ComposerAddAttachment.d.ts +1 -1
- package/dist/primitives/composer/ComposerAddAttachment.d.ts.map +1 -1
- package/dist/primitives/composer/ComposerAttachmentDropzone.d.ts +1 -1
- package/dist/primitives/composer/ComposerAttachmentDropzone.d.ts.map +1 -1
- package/dist/primitives/composer/ComposerAttachmentDropzone.js +3 -2
- package/dist/primitives/composer/ComposerAttachmentDropzone.js.map +1 -1
- package/dist/primitives/composer/ComposerCancel.d.ts +1 -1
- package/dist/primitives/composer/ComposerCancel.d.ts.map +1 -1
- package/dist/primitives/composer/ComposerDictationTranscript.d.ts +1 -1
- package/dist/primitives/composer/ComposerDictationTranscript.d.ts.map +1 -1
- package/dist/primitives/composer/ComposerDictationTranscript.js +1 -1
- package/dist/primitives/composer/ComposerDictationTranscript.js.map +1 -1
- package/dist/primitives/composer/ComposerInput.d.ts.map +1 -1
- package/dist/primitives/composer/ComposerInput.js +28 -0
- package/dist/primitives/composer/ComposerInput.js.map +1 -1
- package/dist/primitives/composer/ComposerInputPluginContext.d.ts +11 -3
- package/dist/primitives/composer/ComposerInputPluginContext.d.ts.map +1 -1
- package/dist/primitives/composer/ComposerInputPluginContext.js +13 -9
- package/dist/primitives/composer/ComposerInputPluginContext.js.map +1 -1
- package/dist/primitives/composer/ComposerRoot.d.ts +1 -1
- package/dist/primitives/composer/ComposerRoot.d.ts.map +1 -1
- package/dist/primitives/composer/ComposerSend.d.ts +1 -1
- package/dist/primitives/composer/ComposerSend.d.ts.map +1 -1
- package/dist/primitives/composer/trigger/TriggerPopover.d.ts +60 -0
- package/dist/primitives/composer/trigger/TriggerPopover.d.ts.map +1 -0
- package/dist/primitives/composer/trigger/TriggerPopover.js +108 -0
- package/dist/primitives/composer/trigger/TriggerPopover.js.map +1 -0
- package/dist/primitives/composer/trigger/TriggerPopoverAction.d.ts +31 -0
- package/dist/primitives/composer/trigger/TriggerPopoverAction.d.ts.map +1 -0
- package/dist/primitives/composer/trigger/TriggerPopoverAction.js +39 -0
- package/dist/primitives/composer/trigger/TriggerPopoverAction.js.map +1 -0
- package/dist/primitives/composer/trigger/TriggerPopoverBack.d.ts.map +1 -1
- package/dist/primitives/composer/trigger/TriggerPopoverBack.js +3 -3
- package/dist/primitives/composer/trigger/TriggerPopoverBack.js.map +1 -1
- package/dist/primitives/composer/trigger/TriggerPopoverCategories.d.ts.map +1 -1
- package/dist/primitives/composer/trigger/TriggerPopoverCategories.js +11 -9
- package/dist/primitives/composer/trigger/TriggerPopoverCategories.js.map +1 -1
- package/dist/primitives/composer/trigger/TriggerPopoverDirective.d.ts +28 -0
- package/dist/primitives/composer/trigger/TriggerPopoverDirective.d.ts.map +1 -0
- package/dist/primitives/composer/trigger/TriggerPopoverDirective.js +37 -0
- package/dist/primitives/composer/trigger/TriggerPopoverDirective.js.map +1 -0
- package/dist/primitives/composer/trigger/TriggerPopoverItems.d.ts.map +1 -1
- package/dist/primitives/composer/trigger/TriggerPopoverItems.js +9 -6
- package/dist/primitives/composer/trigger/TriggerPopoverItems.js.map +1 -1
- package/dist/primitives/composer/trigger/TriggerPopoverResource.d.ts +16 -17
- package/dist/primitives/composer/trigger/TriggerPopoverResource.d.ts.map +1 -1
- package/dist/primitives/composer/trigger/TriggerPopoverResource.js +53 -248
- package/dist/primitives/composer/trigger/TriggerPopoverResource.js.map +1 -1
- package/dist/primitives/composer/trigger/TriggerPopoverRootContext.d.ts +60 -0
- package/dist/primitives/composer/trigger/TriggerPopoverRootContext.d.ts.map +1 -0
- package/dist/primitives/composer/trigger/TriggerPopoverRootContext.js +117 -0
- package/dist/primitives/composer/trigger/TriggerPopoverRootContext.js.map +1 -0
- package/dist/primitives/composer/trigger/detectTrigger.js +1 -1
- package/dist/primitives/composer/trigger/detectTrigger.js.map +1 -1
- package/dist/primitives/composer/trigger/index.d.ts +16 -3
- package/dist/primitives/composer/trigger/index.d.ts.map +1 -1
- package/dist/primitives/composer/trigger/index.js +9 -2
- package/dist/primitives/composer/trigger/index.js.map +1 -1
- package/dist/primitives/composer/trigger/triggerDetectionResource.d.ts +22 -0
- package/dist/primitives/composer/trigger/triggerDetectionResource.d.ts.map +1 -0
- package/dist/primitives/composer/trigger/triggerDetectionResource.js +17 -0
- package/dist/primitives/composer/trigger/triggerDetectionResource.js.map +1 -0
- package/dist/primitives/composer/trigger/triggerKeyboardResource.d.ts +45 -0
- package/dist/primitives/composer/trigger/triggerKeyboardResource.d.ts.map +1 -0
- package/dist/primitives/composer/trigger/triggerKeyboardResource.js +94 -0
- package/dist/primitives/composer/trigger/triggerKeyboardResource.js.map +1 -0
- package/dist/primitives/composer/trigger/triggerNavigationResource.d.ts +31 -0
- package/dist/primitives/composer/trigger/triggerNavigationResource.d.ts.map +1 -0
- package/dist/primitives/composer/trigger/triggerNavigationResource.js +94 -0
- package/dist/primitives/composer/trigger/triggerNavigationResource.js.map +1 -0
- package/dist/primitives/composer/trigger/triggerSelectionResource.d.ts +42 -0
- package/dist/primitives/composer/trigger/triggerSelectionResource.d.ts.map +1 -0
- package/dist/primitives/composer/trigger/triggerSelectionResource.js +62 -0
- package/dist/primitives/composer/trigger/triggerSelectionResource.js.map +1 -0
- package/dist/primitives/composer.d.ts +8 -13
- package/dist/primitives/composer.d.ts.map +1 -1
- package/dist/primitives/composer.js +7 -17
- package/dist/primitives/composer.js.map +1 -1
- package/dist/primitives/dropdownMenuRenderPrimitives.d.ts +14 -0
- package/dist/primitives/dropdownMenuRenderPrimitives.d.ts.map +1 -0
- package/dist/primitives/dropdownMenuRenderPrimitives.js +7 -0
- package/dist/primitives/dropdownMenuRenderPrimitives.js.map +1 -0
- package/dist/primitives/error/ErrorMessage.d.ts +1 -1
- package/dist/primitives/error/ErrorMessage.d.ts.map +1 -1
- package/dist/primitives/error/ErrorMessage.js +1 -1
- package/dist/primitives/error/ErrorMessage.js.map +1 -1
- package/dist/primitives/error/ErrorRoot.d.ts +1 -1
- package/dist/primitives/error/ErrorRoot.d.ts.map +1 -1
- package/dist/primitives/error/ErrorRoot.js +1 -1
- package/dist/primitives/error/ErrorRoot.js.map +1 -1
- package/dist/primitives/message/MessageError.d.ts +1 -1
- package/dist/primitives/message/MessageError.d.ts.map +1 -1
- package/dist/primitives/message/MessagePartsGrouped.d.ts +1 -1
- package/dist/primitives/message/MessagePartsGrouped.d.ts.map +1 -1
- package/dist/primitives/message/MessageRoot.d.ts +1 -1
- package/dist/primitives/message/MessageRoot.d.ts.map +1 -1
- package/dist/primitives/messagePart/MessagePartImage.d.ts +1 -1
- package/dist/primitives/messagePart/MessagePartImage.d.ts.map +1 -1
- package/dist/primitives/messagePart/MessagePartImage.js +2 -1
- package/dist/primitives/messagePart/MessagePartImage.js.map +1 -1
- package/dist/primitives/messagePart/MessagePartInProgress.d.ts +1 -1
- package/dist/primitives/messagePart/MessagePartInProgress.d.ts.map +1 -1
- package/dist/primitives/messagePart/MessagePartText.d.ts +2 -2
- package/dist/primitives/messagePart/MessagePartText.d.ts.map +1 -1
- package/dist/primitives/queueItem/QueueItemRemove.d.ts +1 -1
- package/dist/primitives/queueItem/QueueItemRemove.d.ts.map +1 -1
- package/dist/primitives/queueItem/QueueItemSteer.d.ts +1 -1
- package/dist/primitives/queueItem/QueueItemSteer.d.ts.map +1 -1
- package/dist/primitives/suggestion/SuggestionDescription.d.ts +1 -1
- package/dist/primitives/suggestion/SuggestionDescription.d.ts.map +1 -1
- package/dist/primitives/suggestion/SuggestionDescription.js +1 -1
- package/dist/primitives/suggestion/SuggestionDescription.js.map +1 -1
- package/dist/primitives/suggestion/SuggestionTitle.d.ts +1 -1
- package/dist/primitives/suggestion/SuggestionTitle.d.ts.map +1 -1
- package/dist/primitives/suggestion/SuggestionTitle.js +1 -1
- package/dist/primitives/suggestion/SuggestionTitle.js.map +1 -1
- package/dist/primitives/suggestion/SuggestionTrigger.d.ts +1 -1
- package/dist/primitives/suggestion/SuggestionTrigger.d.ts.map +1 -1
- package/dist/primitives/thread/ThreadRoot.d.ts +1 -1
- package/dist/primitives/thread/ThreadRoot.d.ts.map +1 -1
- package/dist/primitives/thread/ThreadRoot.js +1 -1
- package/dist/primitives/thread/ThreadRoot.js.map +1 -1
- package/dist/primitives/thread/ThreadScrollToBottom.d.ts +1 -1
- package/dist/primitives/thread/ThreadScrollToBottom.d.ts.map +1 -1
- package/dist/primitives/thread/ThreadSuggestion.d.ts +1 -1
- package/dist/primitives/thread/ThreadSuggestion.d.ts.map +1 -1
- package/dist/primitives/thread/ThreadSuggestion.js +0 -2
- package/dist/primitives/thread/ThreadSuggestion.js.map +1 -1
- package/dist/primitives/thread/ThreadViewport.d.ts +1 -1
- package/dist/primitives/thread/ThreadViewport.d.ts.map +1 -1
- package/dist/primitives/thread/ThreadViewportFooter.d.ts +1 -1
- package/dist/primitives/thread/ThreadViewportFooter.d.ts.map +1 -1
- package/dist/primitives/threadList/ThreadListNew.d.ts +1 -1
- package/dist/primitives/threadList/ThreadListNew.d.ts.map +1 -1
- package/dist/primitives/threadList/ThreadListRoot.d.ts +1 -1
- package/dist/primitives/threadList/ThreadListRoot.d.ts.map +1 -1
- package/dist/primitives/threadList/ThreadListRoot.js +1 -1
- package/dist/primitives/threadList/ThreadListRoot.js.map +1 -1
- package/dist/primitives/threadListItem/ThreadListItemArchive.d.ts +1 -1
- package/dist/primitives/threadListItem/ThreadListItemArchive.d.ts.map +1 -1
- package/dist/primitives/threadListItem/ThreadListItemDelete.d.ts +1 -1
- package/dist/primitives/threadListItem/ThreadListItemDelete.d.ts.map +1 -1
- package/dist/primitives/threadListItem/ThreadListItemRoot.d.ts +1 -1
- package/dist/primitives/threadListItem/ThreadListItemRoot.d.ts.map +1 -1
- package/dist/primitives/threadListItem/ThreadListItemRoot.js +1 -1
- package/dist/primitives/threadListItem/ThreadListItemRoot.js.map +1 -1
- package/dist/primitives/threadListItem/ThreadListItemTrigger.d.ts +1 -1
- package/dist/primitives/threadListItem/ThreadListItemTrigger.d.ts.map +1 -1
- package/dist/primitives/threadListItem/ThreadListItemUnarchive.d.ts +1 -1
- package/dist/primitives/threadListItem/ThreadListItemUnarchive.d.ts.map +1 -1
- package/dist/primitives/threadListItemMore/ThreadListItemMoreContent.d.ts +5 -2
- package/dist/primitives/threadListItemMore/ThreadListItemMoreContent.d.ts.map +1 -1
- package/dist/primitives/threadListItemMore/ThreadListItemMoreContent.js +3 -2
- package/dist/primitives/threadListItemMore/ThreadListItemMoreContent.js.map +1 -1
- package/dist/primitives/threadListItemMore/ThreadListItemMoreItem.d.ts +7 -4
- package/dist/primitives/threadListItemMore/ThreadListItemMoreItem.d.ts.map +1 -1
- package/dist/primitives/threadListItemMore/ThreadListItemMoreItem.js +2 -2
- package/dist/primitives/threadListItemMore/ThreadListItemMoreItem.js.map +1 -1
- package/dist/primitives/threadListItemMore/ThreadListItemMoreRoot.d.ts +1 -1
- package/dist/primitives/threadListItemMore/ThreadListItemMoreRoot.d.ts.map +1 -1
- package/dist/primitives/threadListItemMore/ThreadListItemMoreRoot.js.map +1 -1
- package/dist/primitives/threadListItemMore/ThreadListItemMoreSeparator.d.ts +7 -4
- package/dist/primitives/threadListItemMore/ThreadListItemMoreSeparator.d.ts.map +1 -1
- package/dist/primitives/threadListItemMore/ThreadListItemMoreSeparator.js +2 -2
- package/dist/primitives/threadListItemMore/ThreadListItemMoreSeparator.js.map +1 -1
- package/dist/primitives/threadListItemMore/ThreadListItemMoreTrigger.d.ts +7 -4
- package/dist/primitives/threadListItemMore/ThreadListItemMoreTrigger.d.ts.map +1 -1
- package/dist/primitives/threadListItemMore/ThreadListItemMoreTrigger.js +2 -2
- package/dist/primitives/threadListItemMore/ThreadListItemMoreTrigger.js.map +1 -1
- package/dist/unstable/useMentionAdapter.d.ts +80 -0
- package/dist/unstable/useMentionAdapter.d.ts.map +1 -0
- package/dist/unstable/useMentionAdapter.js +129 -0
- package/dist/unstable/useMentionAdapter.js.map +1 -0
- package/dist/unstable/useSlashCommandAdapter.d.ts +32 -17
- package/dist/unstable/useSlashCommandAdapter.d.ts.map +1 -1
- package/dist/unstable/useSlashCommandAdapter.js +56 -32
- package/dist/unstable/useSlashCommandAdapter.js.map +1 -1
- package/dist/utils/Primitive.d.ts +6 -4
- package/dist/utils/Primitive.d.ts.map +1 -1
- package/dist/utils/Primitive.js +15 -8
- package/dist/utils/Primitive.js.map +1 -1
- package/dist/utils/createActionButton.d.ts +1 -1
- package/dist/utils/createActionButton.d.ts.map +1 -1
- package/dist/utils/hooks/useManagedRef.d.ts +1 -1
- package/dist/utils/hooks/useManagedRef.d.ts.map +1 -1
- package/dist/utils/hooks/useManagedRef.js.map +1 -1
- package/dist/utils/json/is-json.d.ts +1 -1
- package/dist/utils/json/is-json.d.ts.map +1 -1
- package/dist/utils/smooth/SmoothContext.d.ts +2 -2
- package/dist/utils/smooth/SmoothContext.d.ts.map +1 -1
- package/dist/utils/smooth/SmoothContext.js.map +1 -1
- package/package.json +9 -9
- package/src/augmentations.ts +2 -0
- package/src/client/InMemoryThreadList.ts +1 -0
- package/src/client/SingleThreadList.ts +1 -0
- package/src/context/providers/MessageProvider.tsx +1 -1
- package/src/context/providers/ThreadViewportProvider.tsx +1 -1
- package/src/context/react/ThreadViewportContext.ts +3 -3
- package/src/context/react/utils/createContextHook.ts +1 -1
- package/src/context/react/utils/createContextStoreHook.ts +2 -2
- package/src/context/react/utils/createStateHookForRuntime.ts +2 -1
- package/src/devtools/DevToolsHooks.ts +5 -1
- package/src/index.ts +27 -56
- package/src/legacy-runtime/AssistantRuntimeProvider.tsx +3 -3
- package/src/legacy-runtime/cloud/auiV0.ts +6 -3
- package/src/legacy-runtime/cloud/useCloudThreadListRuntime.ts +1 -1
- package/src/legacy-runtime/hooks/AssistantContext.ts +1 -1
- package/src/legacy-runtime/hooks/AttachmentContext.ts +1 -1
- package/src/legacy-runtime/hooks/ComposerContext.ts +1 -1
- package/src/legacy-runtime/hooks/MessageContext.ts +1 -1
- package/src/legacy-runtime/hooks/MessagePartContext.ts +1 -1
- package/src/legacy-runtime/hooks/ThreadContext.ts +1 -1
- package/src/legacy-runtime/hooks/ThreadListItemContext.ts +1 -1
- package/src/legacy-runtime/runtime-cores/assistant-transport/commandQueue.ts +1 -1
- package/src/legacy-runtime/runtime-cores/assistant-transport/types.ts +2 -2
- package/src/legacy-runtime/runtime-cores/assistant-transport/useAssistantTransportRuntime.ts +20 -4
- package/src/legacy-runtime/runtime-cores/assistant-transport/useToolInvocations.test.ts +8 -2
- package/src/model-context/frame/useAssistantFrameHost.ts +1 -1
- package/src/model-context/makeAssistantVisible.tsx +3 -3
- package/src/primitives/actionBar/ActionBarCopy.tsx +1 -1
- package/src/primitives/actionBar/ActionBarEdit.ts +2 -2
- package/src/primitives/actionBar/ActionBarExportMarkdown.tsx +1 -1
- package/src/primitives/actionBar/ActionBarFeedbackNegative.tsx +1 -1
- package/src/primitives/actionBar/ActionBarFeedbackPositive.tsx +1 -1
- package/src/primitives/actionBar/ActionBarReload.ts +2 -2
- package/src/primitives/actionBar/ActionBarRoot.tsx +1 -1
- package/src/primitives/actionBar/ActionBarSpeak.ts +2 -2
- package/src/primitives/actionBar/ActionBarStopSpeaking.tsx +1 -1
- package/src/primitives/actionBarMore/ActionBarMoreContent.tsx +10 -4
- package/src/primitives/actionBarMore/ActionBarMoreItem.tsx +7 -7
- package/src/primitives/actionBarMore/ActionBarMoreRoot.tsx +2 -2
- package/src/primitives/actionBarMore/ActionBarMoreSeparator.tsx +7 -5
- package/src/primitives/actionBarMore/ActionBarMoreTrigger.tsx +7 -7
- package/src/primitives/assistantModal/AssistantModalAnchor.tsx +6 -2
- package/src/primitives/assistantModal/AssistantModalContent.tsx +6 -2
- package/src/primitives/assistantModal/AssistantModalRoot.tsx +2 -2
- package/src/primitives/assistantModal/AssistantModalTrigger.tsx +6 -2
- package/src/primitives/attachment/AttachmentRemove.ts +2 -2
- package/src/primitives/attachment/AttachmentRoot.tsx +5 -1
- package/src/primitives/attachment/AttachmentThumb.tsx +5 -1
- package/src/primitives/branchPicker/BranchPickerNext.ts +2 -2
- package/src/primitives/branchPicker/BranchPickerPrevious.ts +2 -2
- package/src/primitives/branchPicker/BranchPickerRoot.tsx +5 -1
- package/src/primitives/chainOfThought/ChainOfThoughtAccordionTrigger.ts +2 -2
- package/src/primitives/chainOfThought/ChainOfThoughtRoot.tsx +5 -1
- package/src/primitives/composer/ComposerAddAttachment.ts +2 -2
- package/src/primitives/composer/ComposerAttachmentDropzone.test.tsx +125 -0
- package/src/primitives/composer/ComposerAttachmentDropzone.tsx +11 -8
- package/src/primitives/composer/ComposerCancel.ts +2 -2
- package/src/primitives/composer/ComposerDictationTranscript.tsx +5 -1
- package/src/primitives/composer/ComposerInput.tsx +33 -1
- package/src/primitives/composer/ComposerInputPluginContext.tsx +37 -24
- package/src/primitives/composer/ComposerRoot.tsx +1 -1
- package/src/primitives/composer/ComposerSend.ts +2 -2
- package/src/primitives/composer/trigger/TriggerPopover.tsx +207 -0
- package/src/primitives/composer/trigger/TriggerPopoverAction.tsx +61 -0
- package/src/primitives/composer/trigger/TriggerPopoverBack.tsx +4 -3
- package/src/primitives/composer/trigger/TriggerPopoverCategories.tsx +14 -17
- package/src/primitives/composer/trigger/TriggerPopoverDirective.tsx +57 -0
- package/src/primitives/composer/trigger/TriggerPopoverItems.tsx +44 -40
- package/src/primitives/composer/trigger/TriggerPopoverResource.ts +76 -315
- package/src/primitives/composer/trigger/TriggerPopoverRootContext.tsx +212 -0
- package/src/primitives/composer/trigger/detectTrigger.test.ts +36 -0
- package/src/primitives/composer/trigger/detectTrigger.ts +1 -1
- package/src/primitives/composer/trigger/index.ts +21 -5
- package/src/primitives/composer/trigger/triggerDetectionResource.ts +43 -0
- package/src/primitives/composer/trigger/triggerKeyboardResource.ts +151 -0
- package/src/primitives/composer/trigger/triggerNavigationResource.ts +145 -0
- package/src/primitives/composer/trigger/triggerSelectionResource.ts +122 -0
- package/src/primitives/composer.ts +8 -18
- package/src/primitives/dropdownMenuRenderPrimitives.test.tsx +64 -0
- package/src/primitives/dropdownMenuRenderPrimitives.ts +15 -0
- package/src/primitives/error/ErrorMessage.tsx +5 -1
- package/src/primitives/error/ErrorRoot.tsx +5 -1
- package/src/primitives/message/MessageError.ts +1 -1
- package/src/primitives/message/MessagePartsGrouped.tsx +1 -1
- package/src/primitives/message/MessageRoot.tsx +1 -1
- package/src/primitives/messagePart/MessagePartImage.tsx +6 -1
- package/src/primitives/messagePart/MessagePartInProgress.ts +1 -1
- package/src/primitives/messagePart/MessagePartText.tsx +3 -3
- package/src/primitives/queueItem/QueueItemRemove.ts +2 -2
- package/src/primitives/queueItem/QueueItemSteer.ts +2 -2
- package/src/primitives/suggestion/SuggestionDescription.tsx +5 -1
- package/src/primitives/suggestion/SuggestionTitle.tsx +5 -1
- package/src/primitives/suggestion/SuggestionTrigger.ts +2 -2
- package/src/primitives/thread/ThreadRoot.tsx +5 -1
- package/src/primitives/thread/ThreadScrollToBottom.ts +2 -2
- package/src/primitives/thread/ThreadSuggestion.ts +2 -4
- package/src/primitives/thread/ThreadViewport.tsx +1 -1
- package/src/primitives/thread/ThreadViewportFooter.tsx +1 -1
- package/src/primitives/threadList/ThreadListNew.tsx +1 -1
- package/src/primitives/threadList/ThreadListRoot.tsx +5 -1
- package/src/primitives/threadListItem/ThreadListItemArchive.ts +2 -2
- package/src/primitives/threadListItem/ThreadListItemDelete.ts +2 -2
- package/src/primitives/threadListItem/ThreadListItemRoot.tsx +5 -1
- package/src/primitives/threadListItem/ThreadListItemTrigger.ts +2 -2
- package/src/primitives/threadListItem/ThreadListItemUnarchive.ts +2 -2
- package/src/primitives/threadListItemMore/ThreadListItemMoreContent.tsx +10 -4
- package/src/primitives/threadListItemMore/ThreadListItemMoreItem.tsx +7 -7
- package/src/primitives/threadListItemMore/ThreadListItemMoreRoot.tsx +2 -2
- package/src/primitives/threadListItemMore/ThreadListItemMoreSeparator.tsx +7 -5
- package/src/primitives/threadListItemMore/ThreadListItemMoreTrigger.tsx +7 -7
- package/src/tests/DataRenderers.test.ts +174 -41
- package/src/unstable/useMentionAdapter.ts +220 -0
- package/src/unstable/useSlashCommandAdapter.ts +79 -50
- package/src/utils/Primitive.test.tsx +7 -1
- package/src/utils/Primitive.tsx +49 -16
- package/src/utils/createActionButton.tsx +3 -3
- package/src/utils/hooks/useManagedRef.ts +2 -2
- package/src/utils/json/is-json.ts +1 -1
- package/src/utils/smooth/SmoothContext.tsx +5 -5
- package/dist/primitives/composer/mention/ComposerMentionContext.d.ts +0 -25
- package/dist/primitives/composer/mention/ComposerMentionContext.d.ts.map +0 -1
- package/dist/primitives/composer/mention/ComposerMentionContext.js +0 -74
- package/dist/primitives/composer/mention/ComposerMentionContext.js.map +0 -1
- package/dist/primitives/composer/mention/index.d.ts +0 -6
- package/dist/primitives/composer/mention/index.d.ts.map +0 -1
- package/dist/primitives/composer/mention/index.js +0 -8
- package/dist/primitives/composer/mention/index.js.map +0 -1
- package/dist/primitives/composer/slash-command/ComposerSlashCommandRoot.d.ts +0 -36
- package/dist/primitives/composer/slash-command/ComposerSlashCommandRoot.d.ts.map +0 -1
- package/dist/primitives/composer/slash-command/ComposerSlashCommandRoot.js +0 -36
- package/dist/primitives/composer/slash-command/ComposerSlashCommandRoot.js.map +0 -1
- package/dist/primitives/composer/slash-command/index.d.ts +0 -2
- package/dist/primitives/composer/slash-command/index.d.ts.map +0 -1
- package/dist/primitives/composer/slash-command/index.js +0 -2
- package/dist/primitives/composer/slash-command/index.js.map +0 -1
- package/dist/primitives/composer/trigger/TriggerPopoverContext.d.ts +0 -37
- package/dist/primitives/composer/trigger/TriggerPopoverContext.d.ts.map +0 -1
- package/dist/primitives/composer/trigger/TriggerPopoverContext.js +0 -70
- package/dist/primitives/composer/trigger/TriggerPopoverContext.js.map +0 -1
- package/dist/primitives/composer/trigger/TriggerPopoverPopover.d.ts +0 -26
- package/dist/primitives/composer/trigger/TriggerPopoverPopover.d.ts.map +0 -1
- package/dist/primitives/composer/trigger/TriggerPopoverPopover.js +0 -28
- package/dist/primitives/composer/trigger/TriggerPopoverPopover.js.map +0 -1
- package/dist/unstable/useToolMentionAdapter.d.ts +0 -42
- package/dist/unstable/useToolMentionAdapter.d.ts.map +0 -1
- package/dist/unstable/useToolMentionAdapter.js +0 -65
- package/dist/unstable/useToolMentionAdapter.js.map +0 -1
- package/src/primitives/composer/mention/ComposerMentionContext.tsx +0 -175
- package/src/primitives/composer/mention/index.ts +0 -19
- package/src/primitives/composer/slash-command/ComposerSlashCommandRoot.tsx +0 -76
- package/src/primitives/composer/slash-command/index.ts +0 -1
- package/src/primitives/composer/trigger/TriggerPopoverContext.tsx +0 -129
- package/src/primitives/composer/trigger/TriggerPopoverPopover.tsx +0 -51
- package/src/unstable/useToolMentionAdapter.ts +0 -114
|
@@ -1,7 +1,11 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
|
|
3
3
|
import { Primitive } from "../../utils/Primitive";
|
|
4
|
-
import {
|
|
4
|
+
import {
|
|
5
|
+
type ComponentRef,
|
|
6
|
+
forwardRef,
|
|
7
|
+
type ComponentPropsWithoutRef,
|
|
8
|
+
} from "react";
|
|
5
9
|
import { useMessagePartImage } from "./useMessagePartImage";
|
|
6
10
|
|
|
7
11
|
export namespace MessagePartPrimitiveImage {
|
|
@@ -33,6 +37,7 @@ export const MessagePartPrimitiveImage = forwardRef<
|
|
|
33
37
|
MessagePartPrimitiveImage.Props
|
|
34
38
|
>((props, forwardedRef) => {
|
|
35
39
|
const { image } = useMessagePartImage();
|
|
40
|
+
// biome-ignore lint/performance/noImgElement: next/image not applicable here
|
|
36
41
|
return <Primitive.img src={image} {...props} ref={forwardedRef} />;
|
|
37
42
|
});
|
|
38
43
|
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
|
|
3
|
-
import { Primitive } from "../../utils/Primitive";
|
|
3
|
+
import type { Primitive } from "../../utils/Primitive";
|
|
4
4
|
import {
|
|
5
5
|
type ComponentRef,
|
|
6
6
|
forwardRef,
|
|
7
|
-
ComponentPropsWithoutRef,
|
|
8
|
-
ElementType,
|
|
7
|
+
type ComponentPropsWithoutRef,
|
|
8
|
+
type ElementType,
|
|
9
9
|
} from "react";
|
|
10
10
|
import { useMessagePartText } from "./useMessagePartText";
|
|
11
11
|
import { useSmooth } from "../../utils/smooth/useSmooth";
|
|
@@ -1,7 +1,11 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
|
|
3
3
|
import { Primitive } from "../../utils/Primitive";
|
|
4
|
-
import {
|
|
4
|
+
import {
|
|
5
|
+
type ElementRef,
|
|
6
|
+
forwardRef,
|
|
7
|
+
type ComponentPropsWithoutRef,
|
|
8
|
+
} from "react";
|
|
5
9
|
import { useAuiState } from "@assistant-ui/store";
|
|
6
10
|
|
|
7
11
|
export namespace SuggestionPrimitiveDescription {
|
|
@@ -1,7 +1,11 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
|
|
3
3
|
import { Primitive } from "../../utils/Primitive";
|
|
4
|
-
import {
|
|
4
|
+
import {
|
|
5
|
+
type ElementRef,
|
|
6
|
+
forwardRef,
|
|
7
|
+
type ComponentPropsWithoutRef,
|
|
8
|
+
} from "react";
|
|
5
9
|
import { useAuiState } from "@assistant-ui/store";
|
|
6
10
|
|
|
7
11
|
export namespace SuggestionPrimitiveTitle {
|
|
@@ -1,7 +1,11 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
|
|
3
3
|
import { Primitive } from "../../utils/Primitive";
|
|
4
|
-
import {
|
|
4
|
+
import {
|
|
5
|
+
type ComponentRef,
|
|
6
|
+
forwardRef,
|
|
7
|
+
type ComponentPropsWithoutRef,
|
|
8
|
+
} from "react";
|
|
5
9
|
|
|
6
10
|
export namespace ThreadPrimitiveRoot {
|
|
7
11
|
export type Element = ComponentRef<typeof Primitive.div>;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
|
|
3
3
|
import {
|
|
4
|
-
ActionButtonElement,
|
|
5
|
-
ActionButtonProps,
|
|
4
|
+
type ActionButtonElement,
|
|
5
|
+
type ActionButtonProps,
|
|
6
6
|
createActionButton,
|
|
7
7
|
} from "../../utils/createActionButton";
|
|
8
8
|
import { useSuggestionTrigger as useSuggestionTriggerBehavior } from "@assistant-ui/core/react";
|
|
@@ -38,9 +38,7 @@ const useThreadSuggestion = ({
|
|
|
38
38
|
/** @deprecated Use `clearComposer` instead. */
|
|
39
39
|
method?: "replace";
|
|
40
40
|
}) => {
|
|
41
|
-
// ========== Deprecation Mapping ==========
|
|
42
41
|
const resolvedSend = send ?? autoSend ?? false;
|
|
43
|
-
// ==========================================
|
|
44
42
|
|
|
45
43
|
const { disabled, trigger } = useSuggestionTriggerBehavior({
|
|
46
44
|
prompt,
|
|
@@ -5,7 +5,7 @@ import { Primitive } from "../../utils/Primitive";
|
|
|
5
5
|
import {
|
|
6
6
|
type ComponentRef,
|
|
7
7
|
forwardRef,
|
|
8
|
-
ComponentPropsWithoutRef,
|
|
8
|
+
type ComponentPropsWithoutRef,
|
|
9
9
|
useCallback,
|
|
10
10
|
} from "react";
|
|
11
11
|
import { useThreadViewportAutoScroll } from "./useThreadViewportAutoScroll";
|
|
@@ -1,7 +1,11 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
|
|
3
3
|
import { Primitive } from "../../utils/Primitive";
|
|
4
|
-
import {
|
|
4
|
+
import {
|
|
5
|
+
type ComponentPropsWithoutRef,
|
|
6
|
+
type ComponentRef,
|
|
7
|
+
forwardRef,
|
|
8
|
+
} from "react";
|
|
5
9
|
|
|
6
10
|
type PrimitiveDivProps = ComponentPropsWithoutRef<typeof Primitive.div>;
|
|
7
11
|
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
|
|
3
3
|
import {
|
|
4
|
-
ActionButtonElement,
|
|
5
|
-
ActionButtonProps,
|
|
4
|
+
type ActionButtonElement,
|
|
5
|
+
type ActionButtonProps,
|
|
6
6
|
createActionButton,
|
|
7
7
|
} from "../../utils/createActionButton";
|
|
8
8
|
import { useThreadListItemArchive as useThreadListItemArchiveBehavior } from "@assistant-ui/core/react";
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
|
|
3
3
|
import {
|
|
4
|
-
ActionButtonElement,
|
|
5
|
-
ActionButtonProps,
|
|
4
|
+
type ActionButtonElement,
|
|
5
|
+
type ActionButtonProps,
|
|
6
6
|
createActionButton,
|
|
7
7
|
} from "../../utils/createActionButton";
|
|
8
8
|
import { useThreadListItemDelete as useThreadListItemDeleteBehavior } from "@assistant-ui/core/react";
|
|
@@ -1,7 +1,11 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
|
|
3
3
|
import { Primitive } from "../../utils/Primitive";
|
|
4
|
-
import {
|
|
4
|
+
import {
|
|
5
|
+
type ComponentRef,
|
|
6
|
+
forwardRef,
|
|
7
|
+
type ComponentPropsWithoutRef,
|
|
8
|
+
} from "react";
|
|
5
9
|
import { useAuiState } from "@assistant-ui/store";
|
|
6
10
|
|
|
7
11
|
type PrimitiveDivProps = ComponentPropsWithoutRef<typeof Primitive.div>;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
|
|
3
3
|
import {
|
|
4
|
-
ActionButtonElement,
|
|
5
|
-
ActionButtonProps,
|
|
4
|
+
type ActionButtonElement,
|
|
5
|
+
type ActionButtonProps,
|
|
6
6
|
createActionButton,
|
|
7
7
|
} from "../../utils/createActionButton";
|
|
8
8
|
import { useThreadListItemTrigger as useThreadListItemTriggerBehavior } from "@assistant-ui/core/react";
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
|
|
3
3
|
import {
|
|
4
|
-
ActionButtonElement,
|
|
5
|
-
ActionButtonProps,
|
|
4
|
+
type ActionButtonElement,
|
|
5
|
+
type ActionButtonProps,
|
|
6
6
|
createActionButton,
|
|
7
7
|
} from "../../utils/createActionButton";
|
|
8
8
|
import { useThreadListItemUnarchive as useThreadListItemUnarchiveBehavior } from "@assistant-ui/core/react";
|
|
@@ -1,12 +1,18 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
|
|
3
|
-
import {
|
|
3
|
+
import {
|
|
4
|
+
type ComponentPropsWithoutRef,
|
|
5
|
+
type ComponentRef,
|
|
6
|
+
forwardRef,
|
|
7
|
+
} from "react";
|
|
4
8
|
import { DropdownMenu as DropdownMenuPrimitive } from "radix-ui";
|
|
5
|
-
import {
|
|
9
|
+
import type { WithRenderPropProps } from "../../utils/Primitive";
|
|
10
|
+
import { DropdownMenuRenderContent } from "../dropdownMenuRenderPrimitives";
|
|
11
|
+
import { type ScopedProps, useDropdownMenuScope } from "./scope";
|
|
6
12
|
|
|
7
13
|
export namespace ThreadListItemMorePrimitiveContent {
|
|
8
14
|
export type Element = ComponentRef<typeof DropdownMenuPrimitive.Content>;
|
|
9
|
-
export type Props =
|
|
15
|
+
export type Props = WithRenderPropProps<
|
|
10
16
|
typeof DropdownMenuPrimitive.Content
|
|
11
17
|
> & {
|
|
12
18
|
portalProps?:
|
|
@@ -32,7 +38,7 @@ export const ThreadListItemMorePrimitiveContent = forwardRef<
|
|
|
32
38
|
|
|
33
39
|
return (
|
|
34
40
|
<DropdownMenuPrimitive.Portal {...scope} {...portalProps}>
|
|
35
|
-
<
|
|
41
|
+
<DropdownMenuRenderContent
|
|
36
42
|
{...scope}
|
|
37
43
|
{...props}
|
|
38
44
|
ref={forwardedRef}
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
|
|
3
|
-
import {
|
|
4
|
-
import { DropdownMenu as DropdownMenuPrimitive } from "radix-ui";
|
|
5
|
-
import {
|
|
3
|
+
import { type ComponentRef, forwardRef } from "react";
|
|
4
|
+
import type { DropdownMenu as DropdownMenuPrimitive } from "radix-ui";
|
|
5
|
+
import type { WithRenderPropProps } from "../../utils/Primitive";
|
|
6
|
+
import { DropdownMenuRenderItem } from "../dropdownMenuRenderPrimitives";
|
|
7
|
+
import { type ScopedProps, useDropdownMenuScope } from "./scope";
|
|
6
8
|
|
|
7
9
|
export namespace ThreadListItemMorePrimitiveItem {
|
|
8
10
|
export type Element = ComponentRef<typeof DropdownMenuPrimitive.Item>;
|
|
9
|
-
export type Props =
|
|
10
|
-
typeof DropdownMenuPrimitive.Item
|
|
11
|
-
>;
|
|
11
|
+
export type Props = WithRenderPropProps<typeof DropdownMenuPrimitive.Item>;
|
|
12
12
|
}
|
|
13
13
|
|
|
14
14
|
export const ThreadListItemMorePrimitiveItem = forwardRef<
|
|
@@ -24,7 +24,7 @@ export const ThreadListItemMorePrimitiveItem = forwardRef<
|
|
|
24
24
|
) => {
|
|
25
25
|
const scope = useDropdownMenuScope(__scopeThreadListItemMore);
|
|
26
26
|
|
|
27
|
-
return <
|
|
27
|
+
return <DropdownMenuRenderItem {...scope} {...rest} ref={ref} />;
|
|
28
28
|
},
|
|
29
29
|
);
|
|
30
30
|
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
|
|
3
|
-
import { FC } from "react";
|
|
3
|
+
import type { FC } from "react";
|
|
4
4
|
import { DropdownMenu as DropdownMenuPrimitive } from "radix-ui";
|
|
5
|
-
import { ScopedProps, useDropdownMenuScope } from "./scope";
|
|
5
|
+
import { type ScopedProps, useDropdownMenuScope } from "./scope";
|
|
6
6
|
|
|
7
7
|
export namespace ThreadListItemMorePrimitiveRoot {
|
|
8
8
|
export type Props = DropdownMenuPrimitive.DropdownMenuProps;
|
|
@@ -1,12 +1,14 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
|
|
3
|
-
import {
|
|
4
|
-
import { DropdownMenu as DropdownMenuPrimitive } from "radix-ui";
|
|
5
|
-
import {
|
|
3
|
+
import { type ComponentRef, forwardRef } from "react";
|
|
4
|
+
import type { DropdownMenu as DropdownMenuPrimitive } from "radix-ui";
|
|
5
|
+
import type { WithRenderPropProps } from "../../utils/Primitive";
|
|
6
|
+
import { DropdownMenuRenderSeparator } from "../dropdownMenuRenderPrimitives";
|
|
7
|
+
import { type ScopedProps, useDropdownMenuScope } from "./scope";
|
|
6
8
|
|
|
7
9
|
export namespace ThreadListItemMorePrimitiveSeparator {
|
|
8
10
|
export type Element = ComponentRef<typeof DropdownMenuPrimitive.Separator>;
|
|
9
|
-
export type Props =
|
|
11
|
+
export type Props = WithRenderPropProps<
|
|
10
12
|
typeof DropdownMenuPrimitive.Separator
|
|
11
13
|
>;
|
|
12
14
|
}
|
|
@@ -24,7 +26,7 @@ export const ThreadListItemMorePrimitiveSeparator = forwardRef<
|
|
|
24
26
|
) => {
|
|
25
27
|
const scope = useDropdownMenuScope(__scopeThreadListItemMore);
|
|
26
28
|
|
|
27
|
-
return <
|
|
29
|
+
return <DropdownMenuRenderSeparator {...scope} {...rest} ref={ref} />;
|
|
28
30
|
},
|
|
29
31
|
);
|
|
30
32
|
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
|
|
3
|
-
import {
|
|
4
|
-
import { DropdownMenu as DropdownMenuPrimitive } from "radix-ui";
|
|
5
|
-
import {
|
|
3
|
+
import { type ComponentRef, forwardRef } from "react";
|
|
4
|
+
import type { DropdownMenu as DropdownMenuPrimitive } from "radix-ui";
|
|
5
|
+
import type { WithRenderPropProps } from "../../utils/Primitive";
|
|
6
|
+
import { DropdownMenuRenderTrigger } from "../dropdownMenuRenderPrimitives";
|
|
7
|
+
import { type ScopedProps, useDropdownMenuScope } from "./scope";
|
|
6
8
|
|
|
7
9
|
export namespace ThreadListItemMorePrimitiveTrigger {
|
|
8
10
|
export type Element = ComponentRef<typeof DropdownMenuPrimitive.Trigger>;
|
|
9
|
-
export type Props =
|
|
10
|
-
typeof DropdownMenuPrimitive.Trigger
|
|
11
|
-
>;
|
|
11
|
+
export type Props = WithRenderPropProps<typeof DropdownMenuPrimitive.Trigger>;
|
|
12
12
|
}
|
|
13
13
|
|
|
14
14
|
export const ThreadListItemMorePrimitiveTrigger = forwardRef<
|
|
@@ -24,7 +24,7 @@ export const ThreadListItemMorePrimitiveTrigger = forwardRef<
|
|
|
24
24
|
) => {
|
|
25
25
|
const scope = useDropdownMenuScope(__scopeThreadListItemMore);
|
|
26
26
|
|
|
27
|
-
return <
|
|
27
|
+
return <DropdownMenuRenderTrigger {...scope} {...rest} ref={ref} />;
|
|
28
28
|
},
|
|
29
29
|
);
|
|
30
30
|
|
|
@@ -1,52 +1,65 @@
|
|
|
1
1
|
import { describe, it, expect } from "vitest";
|
|
2
|
-
import type {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
2
|
+
import type {
|
|
3
|
+
DataMessagePartComponent,
|
|
4
|
+
DataRenderersState,
|
|
5
|
+
} from "@assistant-ui/core/react";
|
|
6
|
+
|
|
7
|
+
// The resource in DataRenderers.ts requires fiber infrastructure, so these
|
|
8
|
+
// tests replicate the reducer directly and exercise it in isolation.
|
|
9
|
+
|
|
10
|
+
type StateHarness = {
|
|
11
|
+
state: DataRenderersState;
|
|
12
|
+
setDataUI: (name: string, render: DataMessagePartComponent) => () => void;
|
|
13
|
+
setFallbackDataUI: (render: DataMessagePartComponent) => () => void;
|
|
14
|
+
};
|
|
15
|
+
|
|
16
|
+
const createState = (): StateHarness => {
|
|
17
|
+
let state: DataRenderersState = { renderers: {}, fallbacks: [] };
|
|
18
|
+
|
|
19
|
+
const setDataUI = (name: string, render: DataMessagePartComponent) => {
|
|
20
|
+
state = {
|
|
21
|
+
...state,
|
|
22
|
+
renderers: {
|
|
23
|
+
...state.renderers,
|
|
24
|
+
[name]: [...(state.renderers[name] ?? []), render],
|
|
25
|
+
},
|
|
26
|
+
};
|
|
27
|
+
return () => {
|
|
19
28
|
state = {
|
|
20
29
|
...state,
|
|
21
30
|
renderers: {
|
|
22
31
|
...state.renderers,
|
|
23
|
-
[name]:
|
|
32
|
+
[name]: state.renderers[name]?.filter((r) => r !== render) ?? [],
|
|
24
33
|
},
|
|
25
34
|
};
|
|
35
|
+
};
|
|
36
|
+
};
|
|
26
37
|
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
},
|
|
34
|
-
};
|
|
38
|
+
const setFallbackDataUI = (render: DataMessagePartComponent) => {
|
|
39
|
+
state = { ...state, fallbacks: [...state.fallbacks, render] };
|
|
40
|
+
return () => {
|
|
41
|
+
state = {
|
|
42
|
+
...state,
|
|
43
|
+
fallbacks: state.fallbacks.filter((r) => r !== render),
|
|
35
44
|
};
|
|
36
45
|
};
|
|
46
|
+
};
|
|
37
47
|
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
48
|
+
return {
|
|
49
|
+
get state() {
|
|
50
|
+
return state;
|
|
51
|
+
},
|
|
52
|
+
setDataUI,
|
|
53
|
+
setFallbackDataUI,
|
|
44
54
|
};
|
|
55
|
+
};
|
|
45
56
|
|
|
57
|
+
describe("DataRenderers state logic", () => {
|
|
46
58
|
describe("initial state", () => {
|
|
47
|
-
it("should start with empty renderers", () => {
|
|
59
|
+
it("should start with empty renderers and fallbacks", () => {
|
|
48
60
|
const { state } = createState();
|
|
49
61
|
expect(state.renderers).toEqual({});
|
|
62
|
+
expect(state.fallbacks).toEqual([]);
|
|
50
63
|
});
|
|
51
64
|
});
|
|
52
65
|
|
|
@@ -129,8 +142,78 @@ describe("DataRenderers state logic", () => {
|
|
|
129
142
|
});
|
|
130
143
|
});
|
|
131
144
|
|
|
145
|
+
describe("DataRenderers fallback state logic", () => {
|
|
146
|
+
it("should register a fallback renderer", () => {
|
|
147
|
+
const s = createState();
|
|
148
|
+
const Fallback = (() => null) as unknown as DataMessagePartComponent;
|
|
149
|
+
|
|
150
|
+
s.setFallbackDataUI(Fallback);
|
|
151
|
+
|
|
152
|
+
expect(s.state.fallbacks).toHaveLength(1);
|
|
153
|
+
expect(s.state.fallbacks[0]).toBe(Fallback);
|
|
154
|
+
});
|
|
155
|
+
|
|
156
|
+
it("should unregister the fallback renderer on cleanup", () => {
|
|
157
|
+
const s = createState();
|
|
158
|
+
const Fallback = (() => null) as unknown as DataMessagePartComponent;
|
|
159
|
+
|
|
160
|
+
const unsub = s.setFallbackDataUI(Fallback);
|
|
161
|
+
expect(s.state.fallbacks).toHaveLength(1);
|
|
162
|
+
|
|
163
|
+
unsub();
|
|
164
|
+
expect(s.state.fallbacks).toHaveLength(0);
|
|
165
|
+
});
|
|
166
|
+
|
|
167
|
+
it("should stack fallbacks; the first registered takes priority", () => {
|
|
168
|
+
const s = createState();
|
|
169
|
+
const Fallback1 = (() => null) as unknown as DataMessagePartComponent;
|
|
170
|
+
const Fallback2 = (() => null) as unknown as DataMessagePartComponent;
|
|
171
|
+
|
|
172
|
+
s.setFallbackDataUI(Fallback1);
|
|
173
|
+
s.setFallbackDataUI(Fallback2);
|
|
174
|
+
|
|
175
|
+
expect(s.state.fallbacks).toEqual([Fallback1, Fallback2]);
|
|
176
|
+
});
|
|
177
|
+
|
|
178
|
+
it("should only unregister the specific fallback on cleanup", () => {
|
|
179
|
+
const s = createState();
|
|
180
|
+
const Fallback1 = (() => null) as unknown as DataMessagePartComponent;
|
|
181
|
+
const Fallback2 = (() => null) as unknown as DataMessagePartComponent;
|
|
182
|
+
|
|
183
|
+
const unsub1 = s.setFallbackDataUI(Fallback1);
|
|
184
|
+
s.setFallbackDataUI(Fallback2);
|
|
185
|
+
|
|
186
|
+
unsub1();
|
|
187
|
+
expect(s.state.fallbacks).toEqual([Fallback2]);
|
|
188
|
+
});
|
|
189
|
+
|
|
190
|
+
it("should restore the previous fallback when the active one unmounts", () => {
|
|
191
|
+
const s = createState();
|
|
192
|
+
const Fallback1 = (() => null) as unknown as DataMessagePartComponent;
|
|
193
|
+
const Fallback2 = (() => null) as unknown as DataMessagePartComponent;
|
|
194
|
+
|
|
195
|
+
s.setFallbackDataUI(Fallback1);
|
|
196
|
+
const unsub2 = s.setFallbackDataUI(Fallback2);
|
|
197
|
+
|
|
198
|
+
unsub2();
|
|
199
|
+
expect(s.state.fallbacks).toEqual([Fallback1]);
|
|
200
|
+
});
|
|
201
|
+
|
|
202
|
+
it("should not affect named renderers when setting fallback", () => {
|
|
203
|
+
const s = createState();
|
|
204
|
+
const Named = (() => null) as unknown as DataMessagePartComponent;
|
|
205
|
+
const Fallback = (() => null) as unknown as DataMessagePartComponent;
|
|
206
|
+
|
|
207
|
+
s.setDataUI("chart", Named);
|
|
208
|
+
s.setFallbackDataUI(Fallback);
|
|
209
|
+
|
|
210
|
+
expect(s.state.renderers["chart"]).toHaveLength(1);
|
|
211
|
+
expect(s.state.renderers["chart"]![0]).toBe(Named);
|
|
212
|
+
expect(s.state.fallbacks[0]).toBe(Fallback);
|
|
213
|
+
});
|
|
214
|
+
});
|
|
215
|
+
|
|
132
216
|
describe("Data part component resolution", () => {
|
|
133
|
-
// Replicate the component lookup logic from MessageParts.tsx
|
|
134
217
|
const resolveDataComponent = (
|
|
135
218
|
partName: string,
|
|
136
219
|
inlineConfig?: {
|
|
@@ -138,16 +221,13 @@ describe("Data part component resolution", () => {
|
|
|
138
221
|
Fallback?: DataMessagePartComponent;
|
|
139
222
|
},
|
|
140
223
|
globalRenderers?: Record<string, DataMessagePartComponent[]>,
|
|
224
|
+
globalFallbacks?: DataMessagePartComponent[],
|
|
141
225
|
): DataMessagePartComponent | undefined => {
|
|
226
|
+
const named = globalRenderers?.[partName]?.[0];
|
|
227
|
+
if (named) return named;
|
|
142
228
|
const inlineFallback =
|
|
143
229
|
inlineConfig?.by_name?.[partName] ?? inlineConfig?.Fallback;
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
// Global takes priority (first element), then inline fallback
|
|
147
|
-
if (globalRenderer && globalRenderer.length > 0) {
|
|
148
|
-
return globalRenderer[0] ?? inlineFallback;
|
|
149
|
-
}
|
|
150
|
-
return inlineFallback;
|
|
230
|
+
return globalFallbacks?.[0] ?? inlineFallback;
|
|
151
231
|
};
|
|
152
232
|
|
|
153
233
|
it("should return undefined when no config provided", () => {
|
|
@@ -219,4 +299,57 @@ describe("Data part component resolution", () => {
|
|
|
219
299
|
);
|
|
220
300
|
expect(result).toBe(Fallback);
|
|
221
301
|
});
|
|
302
|
+
|
|
303
|
+
// --- Global fallback stack resolution ---
|
|
304
|
+
|
|
305
|
+
it("should use global fallback when no name-specific renderer exists", () => {
|
|
306
|
+
const GlobalFallback = (() => null) as unknown as DataMessagePartComponent;
|
|
307
|
+
|
|
308
|
+
const result = resolveDataComponent("unknown-widget", undefined, {}, [
|
|
309
|
+
GlobalFallback,
|
|
310
|
+
]);
|
|
311
|
+
expect(result).toBe(GlobalFallback);
|
|
312
|
+
});
|
|
313
|
+
|
|
314
|
+
it("should prefer global name-match over global fallback", () => {
|
|
315
|
+
const NamedComponent = (() => null) as unknown as DataMessagePartComponent;
|
|
316
|
+
const GlobalFallback = (() => null) as unknown as DataMessagePartComponent;
|
|
317
|
+
|
|
318
|
+
const result = resolveDataComponent(
|
|
319
|
+
"chart",
|
|
320
|
+
undefined,
|
|
321
|
+
{ chart: [NamedComponent] },
|
|
322
|
+
[GlobalFallback],
|
|
323
|
+
);
|
|
324
|
+
expect(result).toBe(NamedComponent);
|
|
325
|
+
});
|
|
326
|
+
|
|
327
|
+
it("should prefer the first global fallback over inline Fallback", () => {
|
|
328
|
+
const InlineFallback = (() => null) as unknown as DataMessagePartComponent;
|
|
329
|
+
const GlobalFallback = (() => null) as unknown as DataMessagePartComponent;
|
|
330
|
+
|
|
331
|
+
const result = resolveDataComponent(
|
|
332
|
+
"unknown",
|
|
333
|
+
{ Fallback: InlineFallback },
|
|
334
|
+
{},
|
|
335
|
+
[GlobalFallback],
|
|
336
|
+
);
|
|
337
|
+
expect(result).toBe(GlobalFallback);
|
|
338
|
+
});
|
|
339
|
+
|
|
340
|
+
it("should pick the first registered when multiple fallbacks are stacked", () => {
|
|
341
|
+
const First = (() => null) as unknown as DataMessagePartComponent;
|
|
342
|
+
const Second = (() => null) as unknown as DataMessagePartComponent;
|
|
343
|
+
|
|
344
|
+
const result = resolveDataComponent("anything", undefined, {}, [
|
|
345
|
+
First,
|
|
346
|
+
Second,
|
|
347
|
+
]);
|
|
348
|
+
expect(result).toBe(First);
|
|
349
|
+
});
|
|
350
|
+
|
|
351
|
+
it("should return undefined when no fallbacks of any kind exist", () => {
|
|
352
|
+
const result = resolveDataComponent("unknown", undefined, {}, []);
|
|
353
|
+
expect(result).toBeUndefined();
|
|
354
|
+
});
|
|
222
355
|
});
|