@assistant-ui/react 0.15.19 → 0.15.21
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/assistant-transport.d.ts +10 -10
- package/dist/assistant-transport.d.ts.map +1 -1
- package/dist/augmentations.d.ts +3 -4
- package/dist/augmentations.d.ts.map +1 -1
- package/dist/context/ReadonlyStore.d.ts +2 -3
- package/dist/context/ReadonlyStore.d.ts.map +1 -1
- package/dist/context/providers/MessageProvider.d.ts +1 -2
- package/dist/context/providers/MessageProvider.d.ts.map +1 -1
- package/dist/context/providers/ThreadViewportProvider.d.ts +2 -3
- package/dist/context/providers/ThreadViewportProvider.d.ts.map +1 -1
- package/dist/context/react/ThreadViewportContext.d.ts +3 -4
- package/dist/context/react/ThreadViewportContext.d.ts.map +1 -1
- package/dist/context/react/utils/createContextHook.d.ts +1 -2
- package/dist/context/react/utils/createContextHook.d.ts.map +1 -1
- package/dist/context/react/utils/createContextStoreHook.d.ts +1 -2
- package/dist/context/react/utils/createContextStoreHook.d.ts.map +1 -1
- package/dist/context/stores/ThreadViewport.d.ts +4 -5
- package/dist/context/stores/ThreadViewport.d.ts.map +1 -1
- package/dist/context/stores/ThreadViewport.js +2 -1
- package/dist/context/stores/ThreadViewport.js.map +1 -1
- package/dist/devtools/DevToolsHooks.d.ts +3 -4
- package/dist/devtools/DevToolsHooks.d.ts.map +1 -1
- package/dist/hooks/useMessageQuote.d.ts +1 -2
- package/dist/hooks/useMessageQuote.d.ts.map +1 -1
- package/dist/hooks/useMessageTiming.d.ts +1 -2
- package/dist/hooks/useMessageTiming.d.ts.map +1 -1
- package/dist/hooks/useToolCallElapsed.d.ts +1 -2
- package/dist/hooks/useToolCallElapsed.d.ts.map +1 -1
- package/dist/index.d.ts +4 -4
- package/dist/index.js +2 -2
- package/dist/legacy-runtime/AssistantRuntimeProvider.d.ts +3 -4
- package/dist/legacy-runtime/AssistantRuntimeProvider.d.ts.map +1 -1
- package/dist/legacy-runtime/runtime-cores/external-store/external-message-converter.d.ts +2 -2
- package/dist/legacy-runtime/runtime-cores/external-store/external-message-converter.js +2 -2
- package/dist/mcp-apps/McpAppRenderer.d.ts +3 -4
- package/dist/mcp-apps/McpAppRenderer.d.ts.map +1 -1
- package/dist/mcp-apps/McpAppRenderer.js +1 -1
- package/dist/mcp-apps/McpAppsRemoteHost.d.ts +1 -2
- package/dist/mcp-apps/McpAppsRemoteHost.d.ts.map +1 -1
- package/dist/mcp-apps/app-frame.d.ts +1 -2
- package/dist/mcp-apps/app-frame.d.ts.map +1 -1
- package/dist/mcp-apps/app-frame.js +1 -1
- package/dist/mcp-apps/bridge.d.ts +4 -5
- package/dist/mcp-apps/bridge.d.ts.map +1 -1
- package/dist/mcp-apps/types.d.ts +20 -20
- package/dist/mcp-apps/types.d.ts.map +1 -1
- package/dist/mcp-apps/utils.d.ts +1 -2
- package/dist/mcp-apps/utils.d.ts.map +1 -1
- package/dist/model-context/frame/useAssistantFrameHost.d.ts +1 -2
- package/dist/model-context/frame/useAssistantFrameHost.d.ts.map +1 -1
- package/dist/model-context/frame/useAssistantFrameHost.js +20 -2
- package/dist/model-context/frame/useAssistantFrameHost.js.map +1 -1
- package/dist/model-context/makeAssistantVisible.d.ts +2 -2
- package/dist/model-context/makeAssistantVisible.d.ts.map +1 -1
- package/dist/primitives/actionBar/ActionBarCopy.d.ts +2 -3
- package/dist/primitives/actionBar/ActionBarCopy.d.ts.map +1 -1
- package/dist/primitives/actionBar/ActionBarEdit.d.ts +2 -3
- package/dist/primitives/actionBar/ActionBarEdit.d.ts.map +1 -1
- package/dist/primitives/actionBar/ActionBarExportMarkdown.d.ts +2 -3
- package/dist/primitives/actionBar/ActionBarExportMarkdown.d.ts.map +1 -1
- package/dist/primitives/actionBar/ActionBarFeedbackNegative.d.ts +2 -3
- package/dist/primitives/actionBar/ActionBarFeedbackNegative.d.ts.map +1 -1
- package/dist/primitives/actionBar/ActionBarFeedbackPositive.d.ts +2 -3
- package/dist/primitives/actionBar/ActionBarFeedbackPositive.d.ts.map +1 -1
- package/dist/primitives/actionBar/ActionBarInteractionContext.d.ts +3 -4
- package/dist/primitives/actionBar/ActionBarInteractionContext.d.ts.map +1 -1
- package/dist/primitives/actionBar/ActionBarReload.d.ts +2 -3
- package/dist/primitives/actionBar/ActionBarReload.d.ts.map +1 -1
- package/dist/primitives/actionBar/ActionBarRoot.d.ts +2 -3
- package/dist/primitives/actionBar/ActionBarRoot.d.ts.map +1 -1
- package/dist/primitives/actionBar/ActionBarSpeak.d.ts +2 -3
- package/dist/primitives/actionBar/ActionBarSpeak.d.ts.map +1 -1
- package/dist/primitives/actionBar/ActionBarStopSpeaking.d.ts +2 -3
- package/dist/primitives/actionBar/ActionBarStopSpeaking.d.ts.map +1 -1
- package/dist/primitives/actionBar/useActionBarFloatStatus.d.ts +4 -5
- package/dist/primitives/actionBar/useActionBarFloatStatus.d.ts.map +1 -1
- package/dist/primitives/actionBarMore/ActionBarMoreContent.d.ts +2 -3
- package/dist/primitives/actionBarMore/ActionBarMoreContent.d.ts.map +1 -1
- package/dist/primitives/actionBarMore/ActionBarMoreItem.d.ts +2 -3
- package/dist/primitives/actionBarMore/ActionBarMoreItem.d.ts.map +1 -1
- package/dist/primitives/actionBarMore/ActionBarMoreRoot.d.ts +2 -3
- package/dist/primitives/actionBarMore/ActionBarMoreRoot.d.ts.map +1 -1
- package/dist/primitives/actionBarMore/ActionBarMoreSeparator.d.ts +2 -3
- package/dist/primitives/actionBarMore/ActionBarMoreSeparator.d.ts.map +1 -1
- package/dist/primitives/actionBarMore/ActionBarMoreTrigger.d.ts +2 -3
- package/dist/primitives/actionBarMore/ActionBarMoreTrigger.d.ts.map +1 -1
- package/dist/primitives/actionBarMore/scope.d.ts +2 -3
- package/dist/primitives/actionBarMore/scope.d.ts.map +1 -1
- package/dist/primitives/assistantModal/AssistantModalAnchor.d.ts +2 -3
- package/dist/primitives/assistantModal/AssistantModalAnchor.d.ts.map +1 -1
- package/dist/primitives/assistantModal/AssistantModalContent.d.ts +2 -3
- package/dist/primitives/assistantModal/AssistantModalContent.d.ts.map +1 -1
- package/dist/primitives/assistantModal/AssistantModalRoot.d.ts +2 -3
- package/dist/primitives/assistantModal/AssistantModalRoot.d.ts.map +1 -1
- package/dist/primitives/assistantModal/AssistantModalTrigger.d.ts +2 -3
- package/dist/primitives/assistantModal/AssistantModalTrigger.d.ts.map +1 -1
- package/dist/primitives/assistantModal/popoverRenderPrimitives.d.ts +3 -4
- package/dist/primitives/assistantModal/popoverRenderPrimitives.d.ts.map +1 -1
- package/dist/primitives/assistantModal/scope.d.ts +2 -3
- package/dist/primitives/assistantModal/scope.d.ts.map +1 -1
- package/dist/primitives/attachment/AttachmentName.d.ts +2 -3
- package/dist/primitives/attachment/AttachmentName.d.ts.map +1 -1
- package/dist/primitives/attachment/AttachmentRemove.d.ts +2 -3
- package/dist/primitives/attachment/AttachmentRemove.d.ts.map +1 -1
- package/dist/primitives/attachment/AttachmentRoot.d.ts +2 -3
- package/dist/primitives/attachment/AttachmentRoot.d.ts.map +1 -1
- package/dist/primitives/attachment/AttachmentThumb.d.ts +2 -3
- package/dist/primitives/attachment/AttachmentThumb.d.ts.map +1 -1
- package/dist/primitives/branchPicker/BranchPickerCount.d.ts +2 -3
- package/dist/primitives/branchPicker/BranchPickerCount.d.ts.map +1 -1
- package/dist/primitives/branchPicker/BranchPickerNext.d.ts +2 -3
- package/dist/primitives/branchPicker/BranchPickerNext.d.ts.map +1 -1
- package/dist/primitives/branchPicker/BranchPickerNumber.d.ts +2 -3
- package/dist/primitives/branchPicker/BranchPickerNumber.d.ts.map +1 -1
- package/dist/primitives/branchPicker/BranchPickerPrevious.d.ts +2 -3
- package/dist/primitives/branchPicker/BranchPickerPrevious.d.ts.map +1 -1
- package/dist/primitives/branchPicker/BranchPickerRoot.d.ts +2 -3
- package/dist/primitives/branchPicker/BranchPickerRoot.d.ts.map +1 -1
- package/dist/primitives/chainOfThought/ChainOfThoughtAccordionTrigger.d.ts +2 -3
- package/dist/primitives/chainOfThought/ChainOfThoughtAccordionTrigger.d.ts.map +1 -1
- package/dist/primitives/chainOfThought/ChainOfThoughtRoot.d.ts +2 -3
- package/dist/primitives/chainOfThought/ChainOfThoughtRoot.d.ts.map +1 -1
- package/dist/primitives/composer/ComposerAddAttachment.d.ts +2 -3
- package/dist/primitives/composer/ComposerAddAttachment.d.ts.map +1 -1
- package/dist/primitives/composer/ComposerAttachmentDropzone.d.ts +2 -3
- package/dist/primitives/composer/ComposerAttachmentDropzone.d.ts.map +1 -1
- package/dist/primitives/composer/ComposerCancel.d.ts +2 -3
- package/dist/primitives/composer/ComposerCancel.d.ts.map +1 -1
- package/dist/primitives/composer/ComposerCompactContext.d.ts +3 -4
- package/dist/primitives/composer/ComposerCompactContext.d.ts.map +1 -1
- package/dist/primitives/composer/ComposerDictate.d.ts +2 -3
- package/dist/primitives/composer/ComposerDictate.d.ts.map +1 -1
- package/dist/primitives/composer/ComposerDictationTranscript.d.ts +2 -3
- package/dist/primitives/composer/ComposerDictationTranscript.d.ts.map +1 -1
- package/dist/primitives/composer/ComposerInput.d.ts +2 -3
- package/dist/primitives/composer/ComposerInput.d.ts.map +1 -1
- package/dist/primitives/composer/ComposerInputPluginContext.d.ts +5 -6
- package/dist/primitives/composer/ComposerInputPluginContext.d.ts.map +1 -1
- package/dist/primitives/composer/ComposerQuote.d.ts +6 -7
- package/dist/primitives/composer/ComposerQuote.d.ts.map +1 -1
- package/dist/primitives/composer/ComposerRoot.d.ts +2 -3
- package/dist/primitives/composer/ComposerRoot.d.ts.map +1 -1
- package/dist/primitives/composer/ComposerSend.d.ts +3 -4
- package/dist/primitives/composer/ComposerSend.d.ts.map +1 -1
- package/dist/primitives/composer/ComposerStopDictation.d.ts +2 -3
- package/dist/primitives/composer/ComposerStopDictation.d.ts.map +1 -1
- package/dist/primitives/composer/trigger/TriggerPopover.d.ts +6 -7
- package/dist/primitives/composer/trigger/TriggerPopover.d.ts.map +1 -1
- package/dist/primitives/composer/trigger/TriggerPopoverAction.d.ts +2 -3
- package/dist/primitives/composer/trigger/TriggerPopoverAction.d.ts.map +1 -1
- package/dist/primitives/composer/trigger/TriggerPopoverBack.d.ts +2 -3
- package/dist/primitives/composer/trigger/TriggerPopoverBack.d.ts.map +1 -1
- package/dist/primitives/composer/trigger/TriggerPopoverCategories.d.ts +4 -5
- package/dist/primitives/composer/trigger/TriggerPopoverCategories.d.ts.map +1 -1
- package/dist/primitives/composer/trigger/TriggerPopoverDirective.d.ts +2 -3
- package/dist/primitives/composer/trigger/TriggerPopoverDirective.d.ts.map +1 -1
- package/dist/primitives/composer/trigger/TriggerPopoverItems.d.ts +4 -5
- package/dist/primitives/composer/trigger/TriggerPopoverItems.d.ts.map +1 -1
- package/dist/primitives/composer/trigger/TriggerPopoverResource.d.ts +4 -4
- package/dist/primitives/composer/trigger/TriggerPopoverResource.d.ts.map +1 -1
- package/dist/primitives/composer/trigger/TriggerPopoverRootContext.d.ts +12 -13
- package/dist/primitives/composer/trigger/TriggerPopoverRootContext.d.ts.map +1 -1
- package/dist/primitives/composer/trigger/detectTrigger.d.ts +3 -4
- package/dist/primitives/composer/trigger/detectTrigger.d.ts.map +1 -1
- package/dist/primitives/composer/trigger/index.d.ts +2 -2
- package/dist/primitives/composer/trigger/index.d.ts.map +1 -1
- package/dist/primitives/composer/trigger/matchesTriggerItemQuery.d.ts +1 -2
- package/dist/primitives/composer/trigger/matchesTriggerItemQuery.d.ts.map +1 -1
- package/dist/primitives/composer/trigger/triggerDetectionResource.d.ts +3 -4
- package/dist/primitives/composer/trigger/triggerDetectionResource.d.ts.map +1 -1
- package/dist/primitives/composer/trigger/triggerKeyboardResource.d.ts +3 -4
- package/dist/primitives/composer/trigger/triggerKeyboardResource.d.ts.map +1 -1
- package/dist/primitives/composer/trigger/triggerNavigationResource.d.ts +2 -3
- package/dist/primitives/composer/trigger/triggerNavigationResource.d.ts.map +1 -1
- package/dist/primitives/composer/trigger/triggerSelectionResource.d.ts +4 -5
- package/dist/primitives/composer/trigger/triggerSelectionResource.d.ts.map +1 -1
- package/dist/primitives/composer/useComposerInputState.d.ts +4 -5
- package/dist/primitives/composer/useComposerInputState.d.ts.map +1 -1
- package/dist/primitives/dropdownMenuRenderPrimitives.d.ts +4 -5
- package/dist/primitives/dropdownMenuRenderPrimitives.d.ts.map +1 -1
- package/dist/primitives/error/ErrorMessage.d.ts +2 -3
- package/dist/primitives/error/ErrorMessage.d.ts.map +1 -1
- package/dist/primitives/error/ErrorRoot.d.ts +2 -3
- package/dist/primitives/error/ErrorRoot.d.ts.map +1 -1
- package/dist/primitives/message/MessageError.d.ts +1 -2
- package/dist/primitives/message/MessageError.d.ts.map +1 -1
- package/dist/primitives/message/MessageIf.d.ts +2 -3
- package/dist/primitives/message/MessageIf.d.ts.map +1 -1
- package/dist/primitives/message/MessageParts.d.ts +3 -3
- package/dist/primitives/message/MessageParts.d.ts.map +1 -1
- package/dist/primitives/message/MessagePartsGrouped.d.ts +4 -5
- package/dist/primitives/message/MessagePartsGrouped.d.ts.map +1 -1
- package/dist/primitives/message/MessageRoot.d.ts +2 -3
- package/dist/primitives/message/MessageRoot.d.ts.map +1 -1
- package/dist/primitives/messagePart/MessagePartImage.d.ts +2 -3
- package/dist/primitives/messagePart/MessagePartImage.d.ts.map +1 -1
- package/dist/primitives/messagePart/MessagePartText.d.ts +3 -4
- package/dist/primitives/messagePart/MessagePartText.d.ts.map +1 -1
- package/dist/primitives/messagePart/useMessagePartData.d.ts +1 -2
- package/dist/primitives/messagePart/useMessagePartData.d.ts.map +1 -1
- package/dist/primitives/messagePart/useMessagePartFile.d.ts +1 -2
- package/dist/primitives/messagePart/useMessagePartFile.d.ts.map +1 -1
- package/dist/primitives/messagePart/useMessagePartImage.d.ts +1 -2
- package/dist/primitives/messagePart/useMessagePartImage.d.ts.map +1 -1
- package/dist/primitives/messagePart/useMessagePartReasoning.d.ts +1 -2
- package/dist/primitives/messagePart/useMessagePartReasoning.d.ts.map +1 -1
- package/dist/primitives/messagePart/useMessagePartSource.d.ts +1 -2
- package/dist/primitives/messagePart/useMessagePartSource.d.ts.map +1 -1
- package/dist/primitives/messagePart/useMessagePartText.d.ts +1 -2
- package/dist/primitives/messagePart/useMessagePartText.d.ts.map +1 -1
- package/dist/primitives/queueItem/QueueItemRemove.d.ts +2 -3
- package/dist/primitives/queueItem/QueueItemRemove.d.ts.map +1 -1
- package/dist/primitives/queueItem/QueueItemSteer.d.ts +2 -3
- package/dist/primitives/queueItem/QueueItemSteer.d.ts.map +1 -1
- package/dist/primitives/queueItem/QueueItemText.d.ts +2 -3
- package/dist/primitives/queueItem/QueueItemText.d.ts.map +1 -1
- package/dist/primitives/reasoning/useScrollLock.d.ts +1 -2
- package/dist/primitives/reasoning/useScrollLock.d.ts.map +1 -1
- package/dist/primitives/selectionToolbar/SelectionToolbarQuote.d.ts +2 -3
- package/dist/primitives/selectionToolbar/SelectionToolbarQuote.d.ts.map +1 -1
- package/dist/primitives/selectionToolbar/SelectionToolbarRoot.d.ts +3 -4
- package/dist/primitives/selectionToolbar/SelectionToolbarRoot.d.ts.map +1 -1
- package/dist/primitives/selectionToolbar/SelectionToolbarRoot.js +5 -1
- package/dist/primitives/selectionToolbar/SelectionToolbarRoot.js.map +1 -1
- package/dist/primitives/suggestion/SuggestionDescription.d.ts +2 -3
- package/dist/primitives/suggestion/SuggestionDescription.d.ts.map +1 -1
- package/dist/primitives/suggestion/SuggestionTitle.d.ts +2 -3
- package/dist/primitives/suggestion/SuggestionTitle.d.ts.map +1 -1
- package/dist/primitives/suggestion/SuggestionTrigger.d.ts +2 -3
- package/dist/primitives/suggestion/SuggestionTrigger.d.ts.map +1 -1
- package/dist/primitives/thread/ThreadEmpty.d.ts +2 -3
- package/dist/primitives/thread/ThreadEmpty.d.ts.map +1 -1
- package/dist/primitives/thread/ThreadIf.d.ts +2 -3
- package/dist/primitives/thread/ThreadIf.d.ts.map +1 -1
- package/dist/primitives/thread/ThreadRoot.d.ts +2 -3
- package/dist/primitives/thread/ThreadRoot.d.ts.map +1 -1
- package/dist/primitives/thread/ThreadScrollToBottom.d.ts +3 -3
- package/dist/primitives/thread/ThreadScrollToBottom.d.ts.map +1 -1
- package/dist/primitives/thread/ThreadSuggestion.d.ts +2 -3
- package/dist/primitives/thread/ThreadSuggestion.d.ts.map +1 -1
- package/dist/primitives/thread/ThreadViewport.d.ts +2 -3
- package/dist/primitives/thread/ThreadViewport.d.ts.map +1 -1
- package/dist/primitives/thread/ThreadViewportFooter.d.ts +2 -3
- package/dist/primitives/thread/ThreadViewportFooter.d.ts.map +1 -1
- package/dist/primitives/thread/topAnchor/computeTopAnchorSlack.d.ts +4 -5
- package/dist/primitives/thread/topAnchor/computeTopAnchorSlack.d.ts.map +1 -1
- package/dist/primitives/thread/topAnchor/createReserveObservers.d.ts +1 -2
- package/dist/primitives/thread/topAnchor/createReserveObservers.d.ts.map +1 -1
- package/dist/primitives/thread/topAnchor/mountTopAnchorReserve.d.ts +2 -3
- package/dist/primitives/thread/topAnchor/mountTopAnchorReserve.d.ts.map +1 -1
- package/dist/primitives/thread/topAnchor/topAnchorTurn.d.ts +5 -6
- package/dist/primitives/thread/topAnchor/topAnchorTurn.d.ts.map +1 -1
- package/dist/primitives/thread/topAnchor/topAnchorUtils.d.ts +5 -6
- package/dist/primitives/thread/topAnchor/topAnchorUtils.d.ts.map +1 -1
- package/dist/primitives/thread/topAnchor/useTopAnchorReserve.d.ts +1 -2
- package/dist/primitives/thread/topAnchor/useTopAnchorReserve.d.ts.map +1 -1
- package/dist/primitives/thread/useThreadViewportAutoScroll.d.ts +2 -3
- package/dist/primitives/thread/useThreadViewportAutoScroll.d.ts.map +1 -1
- package/dist/primitives/thread/useThreadViewportAutoScroll.js +23 -15
- package/dist/primitives/thread/useThreadViewportAutoScroll.js.map +1 -1
- package/dist/primitives/threadList/ThreadListLoadMore.d.ts +2 -3
- package/dist/primitives/threadList/ThreadListLoadMore.d.ts.map +1 -1
- package/dist/primitives/threadList/ThreadListNew.d.ts +2 -3
- package/dist/primitives/threadList/ThreadListNew.d.ts.map +1 -1
- package/dist/primitives/threadList/ThreadListRoot.d.ts +2 -3
- package/dist/primitives/threadList/ThreadListRoot.d.ts.map +1 -1
- package/dist/primitives/threadListFocusGroup.d.ts +4 -4
- package/dist/primitives/threadListFocusGroup.d.ts.map +1 -1
- package/dist/primitives/threadListItem/ThreadListItemArchive.d.ts +2 -3
- package/dist/primitives/threadListItem/ThreadListItemArchive.d.ts.map +1 -1
- package/dist/primitives/threadListItem/ThreadListItemDelete.d.ts +2 -3
- package/dist/primitives/threadListItem/ThreadListItemDelete.d.ts.map +1 -1
- package/dist/primitives/threadListItem/ThreadListItemRoot.d.ts +2 -3
- package/dist/primitives/threadListItem/ThreadListItemRoot.d.ts.map +1 -1
- package/dist/primitives/threadListItem/ThreadListItemTrigger.d.ts +2 -3
- package/dist/primitives/threadListItem/ThreadListItemTrigger.d.ts.map +1 -1
- package/dist/primitives/threadListItem/ThreadListItemUnarchive.d.ts +2 -3
- package/dist/primitives/threadListItem/ThreadListItemUnarchive.d.ts.map +1 -1
- package/dist/primitives/threadListItemMore/ThreadListItemMoreContent.d.ts +2 -3
- package/dist/primitives/threadListItemMore/ThreadListItemMoreContent.d.ts.map +1 -1
- package/dist/primitives/threadListItemMore/ThreadListItemMoreItem.d.ts +2 -3
- package/dist/primitives/threadListItemMore/ThreadListItemMoreItem.d.ts.map +1 -1
- package/dist/primitives/threadListItemMore/ThreadListItemMoreRoot.d.ts +4 -5
- package/dist/primitives/threadListItemMore/ThreadListItemMoreRoot.d.ts.map +1 -1
- package/dist/primitives/threadListItemMore/ThreadListItemMoreSeparator.d.ts +2 -3
- package/dist/primitives/threadListItemMore/ThreadListItemMoreSeparator.d.ts.map +1 -1
- package/dist/primitives/threadListItemMore/ThreadListItemMoreTrigger.d.ts +2 -3
- package/dist/primitives/threadListItemMore/ThreadListItemMoreTrigger.d.ts.map +1 -1
- package/dist/primitives/threadListItemMore/scope.d.ts +2 -3
- package/dist/primitives/threadListItemMore/scope.d.ts.map +1 -1
- package/dist/sandbox-host/SandboxHost.d.ts +8 -9
- package/dist/sandbox-host/SandboxHost.d.ts.map +1 -1
- package/dist/sandbox-host/SandboxHost.js +1 -1
- package/dist/tests/remote-thread-list-test-helpers.d.ts +1 -2
- package/dist/tests/remote-thread-list-test-helpers.d.ts.map +1 -1
- package/dist/unstable/useComposerInput.d.ts +5 -6
- package/dist/unstable/useComposerInput.d.ts.map +1 -1
- package/dist/unstable/useComposerInputHistory.d.ts +2 -3
- package/dist/unstable/useComposerInputHistory.d.ts.map +1 -1
- package/dist/unstable/useLiveCompletionAdapter.d.ts +2 -3
- package/dist/unstable/useLiveCompletionAdapter.d.ts.map +1 -1
- package/dist/unstable/useMentionAdapter.d.ts +7 -8
- package/dist/unstable/useMentionAdapter.d.ts.map +1 -1
- package/dist/unstable/useMessageStallDetection.d.ts +3 -4
- package/dist/unstable/useMessageStallDetection.d.ts.map +1 -1
- package/dist/unstable/useModelContextSnapshot.d.ts +3 -4
- package/dist/unstable/useModelContextSnapshot.d.ts.map +1 -1
- package/dist/unstable/useSlashCommandAdapter.d.ts +4 -5
- package/dist/unstable/useSlashCommandAdapter.d.ts.map +1 -1
- package/dist/unstable/webmcp/WebMcpRegistrationResource.d.ts +2 -3
- package/dist/unstable/webmcp/WebMcpRegistrationResource.d.ts.map +1 -1
- package/dist/unstable/webmcp/convertTools.d.ts +4 -5
- package/dist/unstable/webmcp/convertTools.d.ts.map +1 -1
- package/dist/unstable/webmcp/useWebMcpProvider.d.ts +3 -4
- package/dist/unstable/webmcp/useWebMcpProvider.d.ts.map +1 -1
- package/dist/unstable/webmcp/webmcp-host.d.ts +6 -7
- package/dist/unstable/webmcp/webmcp-host.d.ts.map +1 -1
- package/dist/utils/Primitive.d.ts +4 -4
- package/dist/utils/RequireAtLeastOne.d.ts +1 -2
- package/dist/utils/RequireAtLeastOne.d.ts.map +1 -1
- package/dist/utils/createActionButton.d.ts +3 -4
- package/dist/utils/createActionButton.d.ts.map +1 -1
- package/dist/utils/getSelectionMessageId.d.ts +1 -2
- package/dist/utils/getSelectionMessageId.d.ts.map +1 -1
- package/dist/utils/hooks/useManagedRef.d.ts +1 -2
- package/dist/utils/hooks/useManagedRef.d.ts.map +1 -1
- package/dist/utils/hooks/useMediaQuery.d.ts +1 -2
- package/dist/utils/hooks/useMediaQuery.d.ts.map +1 -1
- package/dist/utils/hooks/useOnResizeContent.d.ts +1 -2
- package/dist/utils/hooks/useOnResizeContent.d.ts.map +1 -1
- package/dist/utils/hooks/useOnScrollToBottom.d.ts +1 -2
- package/dist/utils/hooks/useOnScrollToBottom.d.ts.map +1 -1
- package/dist/utils/hooks/useSizeHandle.d.ts +1 -2
- package/dist/utils/hooks/useSizeHandle.d.ts.map +1 -1
- package/dist/utils/smooth/SmoothContext.d.ts +3 -4
- package/dist/utils/smooth/SmoothContext.d.ts.map +1 -1
- package/dist/utils/smooth/useSmooth.d.ts +2 -3
- package/dist/utils/smooth/useSmooth.d.ts.map +1 -1
- package/package.json +17 -16
- package/src/context/stores/ThreadViewport.test.ts +29 -0
- package/src/context/stores/ThreadViewport.ts +6 -3
- package/src/index.ts +5 -0
- package/src/legacy-runtime/runtime-cores/external-store/external-message-converter.ts +2 -0
- package/src/mcp-apps/McpAppRenderer.test.tsx +1 -2
- package/src/mcp-apps/app-frame.test.tsx +0 -1
- package/src/model-context/frame/useAssistantFrameHost.test.tsx +42 -0
- package/src/model-context/frame/useAssistantFrameHost.ts +25 -2
- package/src/primitives/composer/ComposerAddAttachment.test.tsx +7 -5
- package/src/primitives/composer/ComposerRoot.test.tsx +5 -3
- package/src/primitives/selectionToolbar/SelectionToolbarRoot.test.tsx +44 -0
- package/src/primitives/selectionToolbar/SelectionToolbarRoot.tsx +7 -1
- package/src/primitives/thread/useThreadViewportAutoScroll.test.tsx +95 -0
- package/src/primitives/thread/useThreadViewportAutoScroll.ts +10 -0
- package/src/tests/RemoteThreadListRuntime.reloadMainThread.test.tsx +2 -4
- package/src/tests/threadListItemIsRunning.test.tsx +3 -2
- package/src/unstable/useMentionAdapter.test.tsx +15 -21
- package/src/unstable/useModelContextSnapshot.test.tsx +3 -2
- package/src/unstable/webmcp/convertTools.test.ts +59 -37
- package/src/unstable/webmcp/useWebMcpProvider.test.tsx +12 -3
|
@@ -82,20 +82,21 @@ describe("unstable_useMentionAdapter", () => {
|
|
|
82
82
|
|
|
83
83
|
it("does not expose flat items when the last category is removed", () => {
|
|
84
84
|
const items = [{ id: "alice", type: "person", label: "Alice" }];
|
|
85
|
+
const initialOptions: Unstable_UseMentionAdapterOptions = {
|
|
86
|
+
items,
|
|
87
|
+
categories: [
|
|
88
|
+
{
|
|
89
|
+
id: "people",
|
|
90
|
+
label: "People",
|
|
91
|
+
items: [{ id: "bob", type: "person", label: "Bob" }],
|
|
92
|
+
},
|
|
93
|
+
],
|
|
94
|
+
};
|
|
85
95
|
const { result, rerender } = renderHook(
|
|
86
96
|
(options: Unstable_UseMentionAdapterOptions) =>
|
|
87
97
|
unstable_useMentionAdapter(options),
|
|
88
98
|
{
|
|
89
|
-
initialProps:
|
|
90
|
-
items,
|
|
91
|
-
categories: [
|
|
92
|
-
{
|
|
93
|
-
id: "people",
|
|
94
|
-
label: "People",
|
|
95
|
-
items: [{ id: "bob", type: "person", label: "Bob" }],
|
|
96
|
-
},
|
|
97
|
-
],
|
|
98
|
-
},
|
|
99
|
+
initialProps: initialOptions,
|
|
99
100
|
},
|
|
100
101
|
);
|
|
101
102
|
|
|
@@ -334,23 +335,16 @@ describe("unstable_useMentionAdapter", () => {
|
|
|
334
335
|
createIssue: { description: "Create an issue" },
|
|
335
336
|
};
|
|
336
337
|
|
|
338
|
+
const initialOptions: Unstable_UseMentionAdapterOptions = { items: [] };
|
|
337
339
|
const { result, rerender } = renderHook(
|
|
338
|
-
({
|
|
339
|
-
items,
|
|
340
|
-
}: {
|
|
341
|
-
items: readonly {
|
|
342
|
-
id: string;
|
|
343
|
-
type: string;
|
|
344
|
-
label: string;
|
|
345
|
-
}[];
|
|
346
|
-
}) =>
|
|
340
|
+
({ items }: Unstable_UseMentionAdapterOptions) =>
|
|
347
341
|
unstable_useMentionAdapter({
|
|
348
|
-
items,
|
|
342
|
+
...(items === undefined ? {} : { items }),
|
|
349
343
|
includeModelContextTools: {
|
|
350
344
|
category: { id: "actions", label: "Actions" },
|
|
351
345
|
},
|
|
352
346
|
}),
|
|
353
|
-
{ initialProps:
|
|
347
|
+
{ initialProps: initialOptions },
|
|
354
348
|
);
|
|
355
349
|
|
|
356
350
|
expect(result.current.adapter.categories()).toEqual([]);
|
|
@@ -15,6 +15,7 @@ const createSource = (
|
|
|
15
15
|
overrides: Partial<
|
|
16
16
|
ModelContextSnapshotSource<Readonly<Record<string, string>>>
|
|
17
17
|
> = {},
|
|
18
|
+
includeIsEqual = true,
|
|
18
19
|
) => {
|
|
19
20
|
const listeners = new Set<() => void>();
|
|
20
21
|
const state = { tools: EMPTY as Record<string, string> };
|
|
@@ -29,7 +30,7 @@ const createSource = (
|
|
|
29
30
|
unsubscribe();
|
|
30
31
|
};
|
|
31
32
|
}),
|
|
32
|
-
isEqual: shallowEqualRecords,
|
|
33
|
+
...(includeIsEqual ? { isEqual: shallowEqualRecords } : {}),
|
|
33
34
|
...overrides,
|
|
34
35
|
};
|
|
35
36
|
return {
|
|
@@ -90,7 +91,7 @@ describe("useModelContextSnapshot", () => {
|
|
|
90
91
|
});
|
|
91
92
|
|
|
92
93
|
it("takes every notification when the source omits isEqual", () => {
|
|
93
|
-
const { source, state, notify } = createSource({
|
|
94
|
+
const { source, state, notify } = createSource({}, false);
|
|
94
95
|
state.tools = { a: "1" };
|
|
95
96
|
|
|
96
97
|
const { result } = renderHook(() =>
|
|
@@ -7,25 +7,41 @@ import {
|
|
|
7
7
|
toWebMcpTool,
|
|
8
8
|
} from "./convertTools";
|
|
9
9
|
|
|
10
|
-
|
|
10
|
+
type WeatherArgs = { city: string };
|
|
11
|
+
type FrontendTool = Extract<Tool<WeatherArgs, unknown>, { type: "frontend" }>;
|
|
12
|
+
|
|
13
|
+
const jsonSchema: FrontendTool["parameters"] = {
|
|
11
14
|
type: "object",
|
|
12
15
|
properties: { city: { type: "string" } },
|
|
13
16
|
required: ["city"],
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
const frontendTool = (
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
17
|
+
};
|
|
18
|
+
|
|
19
|
+
const frontendTool = (overrides: Partial<FrontendTool> = {}): FrontendTool => ({
|
|
20
|
+
type: "frontend",
|
|
21
|
+
description: "Get the weather for a city.",
|
|
22
|
+
parameters: jsonSchema,
|
|
23
|
+
execute: async ({ city }) => `Sunny in ${city}`,
|
|
24
|
+
...overrides,
|
|
25
|
+
});
|
|
26
|
+
|
|
27
|
+
const frontendToolWithoutExecute = (): FrontendTool => ({
|
|
28
|
+
type: "frontend",
|
|
29
|
+
description: "Get the weather for a city.",
|
|
30
|
+
parameters: jsonSchema,
|
|
31
|
+
});
|
|
32
|
+
|
|
33
|
+
const typeLessTool = (): Tool<WeatherArgs, unknown> => ({
|
|
34
|
+
description: "Get the weather for a city.",
|
|
35
|
+
parameters: jsonSchema,
|
|
36
|
+
execute: async ({ city }) => `Sunny in ${city}`,
|
|
37
|
+
});
|
|
38
|
+
|
|
39
|
+
const typeLessToolWithoutExecute = (): Tool<WeatherArgs, unknown> => ({
|
|
40
|
+
type: undefined,
|
|
41
|
+
});
|
|
26
42
|
|
|
27
43
|
const descriptorFor = (
|
|
28
|
-
overrides: Partial<
|
|
44
|
+
overrides: Partial<FrontendTool> = {},
|
|
29
45
|
lifecycleSignal?: AbortSignal,
|
|
30
46
|
) => toWebMcpTool("t", () => frontendTool(overrides), lifecycleSignal);
|
|
31
47
|
|
|
@@ -33,20 +49,29 @@ const text = (value: string) => ({ type: "text", text: value });
|
|
|
33
49
|
|
|
34
50
|
describe("defaultWebMcpFilter", () => {
|
|
35
51
|
it.for([
|
|
36
|
-
["exposes an enabled frontend tool",
|
|
37
|
-
[
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
52
|
+
["exposes an enabled frontend tool", frontendTool(), true],
|
|
53
|
+
[
|
|
54
|
+
"hides a backend tool",
|
|
55
|
+
{ ...frontendTool(), type: "backend" } as unknown as Tool<
|
|
56
|
+
WeatherArgs,
|
|
57
|
+
unknown
|
|
58
|
+
>,
|
|
59
|
+
false,
|
|
60
|
+
],
|
|
61
|
+
[
|
|
62
|
+
"hides a frontend tool with no execute",
|
|
63
|
+
frontendToolWithoutExecute(),
|
|
64
|
+
false,
|
|
65
|
+
],
|
|
66
|
+
["hides a disabled frontend tool", frontendTool({ disabled: true }), false],
|
|
67
|
+
["exposes a tool authored without a type", typeLessTool(), true],
|
|
41
68
|
[
|
|
42
69
|
"hides a type-less tool with no execute",
|
|
43
|
-
|
|
70
|
+
typeLessToolWithoutExecute(),
|
|
44
71
|
false,
|
|
45
72
|
],
|
|
46
|
-
] as const)("%s", ([,
|
|
47
|
-
expect(defaultWebMcpFilter("t",
|
|
48
|
-
expected,
|
|
49
|
-
);
|
|
73
|
+
] as const)("%s", ([, tool, expected]) => {
|
|
74
|
+
expect(defaultWebMcpFilter("t", tool)).toBe(expected);
|
|
50
75
|
});
|
|
51
76
|
});
|
|
52
77
|
|
|
@@ -61,10 +86,7 @@ describe("toWebMcpTool descriptor", () => {
|
|
|
61
86
|
descriptorFor({ parameters: z.object({ city: z.string() }) }).inputSchema,
|
|
62
87
|
).toMatchObject(jsonSchema);
|
|
63
88
|
|
|
64
|
-
const bare =
|
|
65
|
-
description: undefined,
|
|
66
|
-
parameters: undefined,
|
|
67
|
-
});
|
|
89
|
+
const bare = toWebMcpTool("bare", () => ({ type: "backend" }));
|
|
68
90
|
expect(bare.description).toBe("");
|
|
69
91
|
expect(bare.inputSchema).toEqual({ type: "object", properties: {} });
|
|
70
92
|
});
|
|
@@ -80,7 +102,7 @@ describe("toWebMcpTool descriptor", () => {
|
|
|
80
102
|
describe("toWebMcpTool execute", () => {
|
|
81
103
|
it("passes the arguments through, defaulting missing arguments to {}", async () => {
|
|
82
104
|
const execute = vi.fn(async () => "Sunny in Paris");
|
|
83
|
-
const descriptor = descriptorFor({ execute
|
|
105
|
+
const descriptor = descriptorFor({ execute });
|
|
84
106
|
|
|
85
107
|
const result = await descriptor.execute({ city: "Paris" });
|
|
86
108
|
expect(execute).toHaveBeenCalledWith(
|
|
@@ -137,7 +159,7 @@ describe("toWebMcpTool execute", () => {
|
|
|
137
159
|
|
|
138
160
|
it("reports an error when a published tool has no client-side execute", async () => {
|
|
139
161
|
await expect(
|
|
140
|
-
|
|
162
|
+
toWebMcpTool("t", frontendToolWithoutExecute).execute({}),
|
|
141
163
|
).resolves.toEqual({
|
|
142
164
|
isError: true,
|
|
143
165
|
content: [text('Tool "t" has no client-side implementation.')],
|
|
@@ -155,7 +177,7 @@ describe("toWebMcpTool execute", () => {
|
|
|
155
177
|
|
|
156
178
|
it("rejects human input requests", async () => {
|
|
157
179
|
const result = await descriptorFor({
|
|
158
|
-
execute: async (_args
|
|
180
|
+
execute: async (_args, context) => await context.human(undefined),
|
|
159
181
|
}).execute({});
|
|
160
182
|
expect(result).toEqual({
|
|
161
183
|
isError: true,
|
|
@@ -165,7 +187,7 @@ describe("toWebMcpTool execute", () => {
|
|
|
165
187
|
});
|
|
166
188
|
|
|
167
189
|
describe("toWebMcpTool schema validation", () => {
|
|
168
|
-
const zodTool = (overrides: Partial<
|
|
190
|
+
const zodTool = (overrides: Omit<Partial<FrontendTool>, "parameters"> = {}) =>
|
|
169
191
|
descriptorFor({
|
|
170
192
|
parameters: z.object({ city: z.string() }),
|
|
171
193
|
...overrides,
|
|
@@ -521,12 +543,12 @@ describe("toMcpContent", () => {
|
|
|
521
543
|
});
|
|
522
544
|
|
|
523
545
|
it("projects a successful result through toModelOutput", async () => {
|
|
524
|
-
const toModelOutput = vi.fn(
|
|
525
|
-
{ type: "text", text: "projected" },
|
|
526
|
-
|
|
546
|
+
const toModelOutput = vi.fn<NonNullable<FrontendTool["toModelOutput"]>>(
|
|
547
|
+
async () => [{ type: "text", text: "projected" }],
|
|
548
|
+
);
|
|
527
549
|
const response = await toMcpContent("raw", {
|
|
528
550
|
...options,
|
|
529
|
-
tool: frontendTool({ toModelOutput }
|
|
551
|
+
tool: frontendTool({ toModelOutput }),
|
|
530
552
|
});
|
|
531
553
|
expect(toModelOutput).toHaveBeenCalledWith({
|
|
532
554
|
toolCallId: "1",
|
|
@@ -544,7 +566,7 @@ describe("toMcpContent", () => {
|
|
|
544
566
|
toModelOutput: () => {
|
|
545
567
|
throw new Error("bad projection");
|
|
546
568
|
},
|
|
547
|
-
}
|
|
569
|
+
}),
|
|
548
570
|
});
|
|
549
571
|
expect(response).toEqual({ content: [text("raw")] });
|
|
550
572
|
expect(warn).toHaveBeenCalled();
|
|
@@ -445,7 +445,11 @@ describe("unstable_useWebMcpProvider", () => {
|
|
|
445
445
|
available: true,
|
|
446
446
|
registerTool: (def, onError) => {
|
|
447
447
|
const dispose = vi.fn();
|
|
448
|
-
calls.push({
|
|
448
|
+
calls.push({
|
|
449
|
+
def,
|
|
450
|
+
...(onError === undefined ? {} : { onError }),
|
|
451
|
+
dispose,
|
|
452
|
+
});
|
|
449
453
|
return dispose;
|
|
450
454
|
},
|
|
451
455
|
});
|
|
@@ -457,10 +461,15 @@ describe("unstable_useWebMcpProvider", () => {
|
|
|
457
461
|
provider.setTools({ search: frontendTool({ description: "renamed" }) });
|
|
458
462
|
await vi.waitFor(() => expect(calls).toHaveLength(2));
|
|
459
463
|
|
|
460
|
-
calls
|
|
464
|
+
const initialCall = calls.at(0);
|
|
465
|
+
const replacementCall = calls.at(1);
|
|
466
|
+
if (!initialCall?.onError || !replacementCall) {
|
|
467
|
+
throw new Error("Expected both tool registrations");
|
|
468
|
+
}
|
|
469
|
+
initialCall.onError(new Error("late failure"));
|
|
461
470
|
|
|
462
471
|
expect(providerResult().registeredToolNames).toEqual(["search"]);
|
|
463
|
-
expect(
|
|
472
|
+
expect(replacementCall.dispose).not.toHaveBeenCalled();
|
|
464
473
|
expect(warn).not.toHaveBeenCalled();
|
|
465
474
|
});
|
|
466
475
|
});
|