@assistant-ui/react 0.12.11 → 0.12.12
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/README.md +68 -58
- package/dist/client/ExternalThread.d.ts.map +1 -1
- package/dist/client/ExternalThread.js +25 -13
- package/dist/client/ExternalThread.js.map +1 -1
- package/dist/client/InMemoryThreadList.d.ts.map +1 -1
- package/dist/client/InMemoryThreadList.js +1 -2
- package/dist/client/InMemoryThreadList.js.map +1 -1
- package/dist/client/index.d.ts +1 -2
- package/dist/client/index.d.ts.map +1 -1
- package/dist/client/index.js +2 -2
- package/dist/client/index.js.map +1 -1
- package/dist/context/providers/AttachmentByIndexProvider.d.ts +1 -7
- package/dist/context/providers/AttachmentByIndexProvider.d.ts.map +1 -1
- package/dist/context/providers/AttachmentByIndexProvider.js +1 -22
- package/dist/context/providers/AttachmentByIndexProvider.js.map +1 -1
- package/dist/context/providers/ChainOfThoughtByIndicesProvider.d.ts +1 -5
- package/dist/context/providers/ChainOfThoughtByIndicesProvider.d.ts.map +1 -1
- package/dist/context/providers/ChainOfThoughtByIndicesProvider.js +1 -19
- package/dist/context/providers/ChainOfThoughtByIndicesProvider.js.map +1 -1
- package/dist/context/providers/ChainOfThoughtPartByIndexProvider.d.ts +1 -4
- package/dist/context/providers/ChainOfThoughtPartByIndexProvider.d.ts.map +1 -1
- package/dist/context/providers/ChainOfThoughtPartByIndexProvider.js +1 -12
- package/dist/context/providers/ChainOfThoughtPartByIndexProvider.js.map +1 -1
- package/dist/context/providers/MessageByIndexProvider.d.ts +1 -4
- package/dist/context/providers/MessageByIndexProvider.d.ts.map +1 -1
- package/dist/context/providers/MessageByIndexProvider.js +1 -17
- package/dist/context/providers/MessageByIndexProvider.js.map +1 -1
- package/dist/context/providers/PartByIndexProvider.d.ts +1 -4
- package/dist/context/providers/PartByIndexProvider.d.ts.map +1 -1
- package/dist/context/providers/PartByIndexProvider.js +1 -12
- package/dist/context/providers/PartByIndexProvider.js.map +1 -1
- package/dist/context/providers/SuggestionByIndexProvider.d.ts +1 -5
- package/dist/context/providers/SuggestionByIndexProvider.d.ts.map +1 -1
- package/dist/context/providers/SuggestionByIndexProvider.js +1 -12
- package/dist/context/providers/SuggestionByIndexProvider.js.map +1 -1
- package/dist/context/providers/TextMessagePartProvider.d.ts +1 -5
- package/dist/context/providers/TextMessagePartProvider.d.ts.map +1 -1
- package/dist/context/providers/TextMessagePartProvider.js +1 -25
- package/dist/context/providers/TextMessagePartProvider.js.map +1 -1
- package/dist/context/providers/ThreadListItemProvider.d.ts +1 -9
- package/dist/context/providers/ThreadListItemProvider.d.ts.map +1 -1
- package/dist/context/providers/ThreadListItemProvider.js +1 -19
- package/dist/context/providers/ThreadListItemProvider.js.map +1 -1
- package/dist/context/providers/index.d.ts +1 -0
- package/dist/context/providers/index.d.ts.map +1 -1
- package/dist/context/providers/index.js +1 -0
- package/dist/context/providers/index.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/legacy-runtime/AssistantRuntimeProvider.d.ts.map +1 -1
- package/dist/legacy-runtime/AssistantRuntimeProvider.js +8 -9
- package/dist/legacy-runtime/AssistantRuntimeProvider.js.map +1 -1
- package/dist/legacy-runtime/RuntimeAdapter.d.ts +1 -2
- package/dist/legacy-runtime/RuntimeAdapter.d.ts.map +1 -1
- package/dist/legacy-runtime/RuntimeAdapter.js +1 -48
- package/dist/legacy-runtime/RuntimeAdapter.js.map +1 -1
- package/dist/legacy-runtime/hooks/AttachmentContext.d.ts +280 -112
- package/dist/legacy-runtime/hooks/AttachmentContext.d.ts.map +1 -1
- package/dist/legacy-runtime/runtime-cores/adapters/attachment/CloudFileAttachmentAdapter.js +1 -1
- package/dist/legacy-runtime/runtime-cores/adapters/attachment/CloudFileAttachmentAdapter.js.map +1 -1
- package/dist/legacy-runtime/runtime-cores/assistant-transport/index.d.ts +1 -1
- package/dist/legacy-runtime/runtime-cores/assistant-transport/index.d.ts.map +1 -1
- package/dist/legacy-runtime/runtime-cores/assistant-transport/types.d.ts +22 -0
- package/dist/legacy-runtime/runtime-cores/assistant-transport/types.d.ts.map +1 -1
- package/dist/legacy-runtime/runtime-cores/assistant-transport/types.js.map +1 -1
- package/dist/legacy-runtime/runtime-cores/assistant-transport/useAssistantTransportRuntime.d.ts.map +1 -1
- package/dist/legacy-runtime/runtime-cores/assistant-transport/useAssistantTransportRuntime.js +17 -13
- package/dist/legacy-runtime/runtime-cores/assistant-transport/useAssistantTransportRuntime.js.map +1 -1
- package/dist/legacy-runtime/runtime-cores/external-store/external-message-converter.d.ts.map +1 -1
- package/dist/legacy-runtime/runtime-cores/external-store/external-message-converter.js +8 -6
- package/dist/legacy-runtime/runtime-cores/external-store/external-message-converter.js.map +1 -1
- package/dist/legacy-runtime/runtime-cores/external-store/getExternalStoreMessage.d.ts +1 -1
- package/dist/legacy-runtime/runtime-cores/external-store/getExternalStoreMessage.d.ts.map +1 -1
- package/dist/legacy-runtime/runtime-cores/external-store/getExternalStoreMessage.js +1 -1
- package/dist/legacy-runtime/runtime-cores/external-store/getExternalStoreMessage.js.map +1 -1
- package/dist/legacy-runtime/runtime-cores/external-store/index.d.ts +1 -1
- package/dist/legacy-runtime/runtime-cores/external-store/index.d.ts.map +1 -1
- package/dist/legacy-runtime/runtime-cores/external-store/index.js +1 -1
- package/dist/legacy-runtime/runtime-cores/external-store/index.js.map +1 -1
- package/dist/legacy-runtime/runtime-cores/remote-thread-list/useRemoteThreadListRuntime.d.ts.map +1 -1
- package/dist/legacy-runtime/runtime-cores/remote-thread-list/useRemoteThreadListRuntime.js +14 -4
- package/dist/legacy-runtime/runtime-cores/remote-thread-list/useRemoteThreadListRuntime.js.map +1 -1
- package/dist/model-context/index.d.ts +4 -13
- package/dist/model-context/index.d.ts.map +1 -1
- package/dist/model-context/index.js +6 -11
- package/dist/model-context/index.js.map +1 -1
- package/dist/primitives/actionBarMore/ActionBarMoreContent.d.ts +1 -1
- package/dist/primitives/actionBarMore/ActionBarMoreContent.d.ts.map +1 -1
- package/dist/primitives/actionBarMore/ActionBarMoreContent.js +1 -1
- package/dist/primitives/actionBarMore/ActionBarMoreContent.js.map +1 -1
- package/dist/primitives/actionBarMore/ActionBarMoreItem.d.ts +1 -1
- package/dist/primitives/actionBarMore/ActionBarMoreItem.d.ts.map +1 -1
- package/dist/primitives/actionBarMore/ActionBarMoreItem.js +1 -1
- 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 +1 -1
- package/dist/primitives/actionBarMore/ActionBarMoreRoot.js.map +1 -1
- package/dist/primitives/actionBarMore/ActionBarMoreSeparator.d.ts +1 -1
- package/dist/primitives/actionBarMore/ActionBarMoreSeparator.d.ts.map +1 -1
- package/dist/primitives/actionBarMore/ActionBarMoreSeparator.js +1 -1
- package/dist/primitives/actionBarMore/ActionBarMoreSeparator.js.map +1 -1
- package/dist/primitives/actionBarMore/ActionBarMoreTrigger.d.ts +1 -1
- package/dist/primitives/actionBarMore/ActionBarMoreTrigger.d.ts.map +1 -1
- package/dist/primitives/actionBarMore/ActionBarMoreTrigger.js +1 -1
- package/dist/primitives/actionBarMore/ActionBarMoreTrigger.js.map +1 -1
- package/dist/primitives/actionBarMore/scope.d.ts +1 -1
- package/dist/primitives/actionBarMore/scope.d.ts.map +1 -1
- package/dist/primitives/actionBarMore/scope.js +1 -1
- package/dist/primitives/actionBarMore/scope.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 +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/assistantModal/scope.d.ts +1 -1
- package/dist/primitives/assistantModal/scope.d.ts.map +1 -1
- package/dist/primitives/assistantModal/scope.js +1 -1
- package/dist/primitives/assistantModal/scope.js.map +1 -1
- package/dist/primitives/chainOfThought/ChainOfThoughtParts.d.ts +1 -38
- package/dist/primitives/chainOfThought/ChainOfThoughtParts.d.ts.map +1 -1
- package/dist/primitives/chainOfThought/ChainOfThoughtParts.js +1 -38
- package/dist/primitives/chainOfThought/ChainOfThoughtParts.js.map +1 -1
- package/dist/primitives/composer/ComposerAttachmentDropzone.js +2 -2
- package/dist/primitives/composer/ComposerAttachmentDropzone.js.map +1 -1
- package/dist/primitives/composer/ComposerAttachments.d.ts +1 -36
- package/dist/primitives/composer/ComposerAttachments.d.ts.map +1 -1
- package/dist/primitives/composer/ComposerAttachments.js +1 -61
- package/dist/primitives/composer/ComposerAttachments.js.map +1 -1
- package/dist/primitives/composer/ComposerIf.d.ts +2 -17
- package/dist/primitives/composer/ComposerIf.d.ts.map +1 -1
- package/dist/primitives/composer/ComposerIf.js +1 -23
- package/dist/primitives/composer/ComposerIf.js.map +1 -1
- package/dist/primitives/composer/ComposerInput.js +2 -2
- package/dist/primitives/composer/ComposerInput.js.map +1 -1
- package/dist/primitives/message/MessageAttachments.d.ts +1 -36
- package/dist/primitives/message/MessageAttachments.d.ts.map +1 -1
- package/dist/primitives/message/MessageAttachments.js +1 -65
- package/dist/primitives/message/MessageAttachments.js.map +1 -1
- package/dist/primitives/message/MessageIf.d.ts +1 -1
- package/dist/primitives/message/MessageIf.js +1 -1
- package/dist/primitives/message/MessageParts.d.ts +5 -219
- package/dist/primitives/message/MessageParts.d.ts.map +1 -1
- package/dist/primitives/message/MessageParts.js +29 -270
- package/dist/primitives/message/MessageParts.js.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/MessagePartsGrouped.js +2 -2
- package/dist/primitives/message/MessagePartsGrouped.js.map +1 -1
- package/dist/primitives/thread/ThreadEmpty.d.ts +3 -0
- package/dist/primitives/thread/ThreadEmpty.d.ts.map +1 -1
- package/dist/primitives/thread/ThreadEmpty.js +4 -1
- package/dist/primitives/thread/ThreadEmpty.js.map +1 -1
- package/dist/primitives/thread/ThreadIf.d.ts +1 -1
- package/dist/primitives/thread/ThreadIf.js +1 -1
- package/dist/primitives/thread/ThreadMessages.d.ts +1 -94
- package/dist/primitives/thread/ThreadMessages.d.ts.map +1 -1
- package/dist/primitives/thread/ThreadMessages.js +1 -109
- package/dist/primitives/thread/ThreadMessages.js.map +1 -1
- package/dist/primitives/thread/ThreadSuggestions.d.ts +1 -52
- package/dist/primitives/thread/ThreadSuggestions.d.ts.map +1 -1
- package/dist/primitives/thread/ThreadSuggestions.js +1 -56
- package/dist/primitives/thread/ThreadSuggestions.js.map +1 -1
- package/dist/primitives/thread/ThreadViewportSlack.js +2 -2
- package/dist/primitives/thread/ThreadViewportSlack.js.map +1 -1
- package/dist/primitives/threadList/ThreadListItems.d.ts +1 -34
- package/dist/primitives/threadList/ThreadListItems.d.ts.map +1 -1
- package/dist/primitives/threadList/ThreadListItems.js +1 -35
- package/dist/primitives/threadList/ThreadListItems.js.map +1 -1
- package/dist/primitives/threadListItem/ThreadListItemTitle.d.ts +1 -7
- package/dist/primitives/threadListItem/ThreadListItemTitle.d.ts.map +1 -1
- package/dist/primitives/threadListItem/ThreadListItemTitle.js +1 -7
- package/dist/primitives/threadListItem/ThreadListItemTitle.js.map +1 -1
- package/dist/primitives/threadListItemMore/ThreadListItemMoreContent.d.ts +1 -1
- package/dist/primitives/threadListItemMore/ThreadListItemMoreContent.d.ts.map +1 -1
- package/dist/primitives/threadListItemMore/ThreadListItemMoreContent.js +1 -1
- package/dist/primitives/threadListItemMore/ThreadListItemMoreContent.js.map +1 -1
- package/dist/primitives/threadListItemMore/ThreadListItemMoreItem.d.ts +1 -1
- package/dist/primitives/threadListItemMore/ThreadListItemMoreItem.d.ts.map +1 -1
- package/dist/primitives/threadListItemMore/ThreadListItemMoreItem.js +1 -1
- 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 +1 -1
- package/dist/primitives/threadListItemMore/ThreadListItemMoreRoot.js.map +1 -1
- package/dist/primitives/threadListItemMore/ThreadListItemMoreSeparator.d.ts +1 -1
- package/dist/primitives/threadListItemMore/ThreadListItemMoreSeparator.d.ts.map +1 -1
- package/dist/primitives/threadListItemMore/ThreadListItemMoreSeparator.js +1 -1
- package/dist/primitives/threadListItemMore/ThreadListItemMoreSeparator.js.map +1 -1
- package/dist/primitives/threadListItemMore/ThreadListItemMoreTrigger.d.ts +1 -1
- package/dist/primitives/threadListItemMore/ThreadListItemMoreTrigger.d.ts.map +1 -1
- package/dist/primitives/threadListItemMore/ThreadListItemMoreTrigger.js +1 -1
- package/dist/primitives/threadListItemMore/ThreadListItemMoreTrigger.js.map +1 -1
- package/dist/primitives/threadListItemMore/scope.d.ts +1 -1
- package/dist/primitives/threadListItemMore/scope.d.ts.map +1 -1
- package/dist/primitives/threadListItemMore/scope.js +1 -1
- package/dist/primitives/threadListItemMore/scope.js.map +1 -1
- package/dist/types/index.d.ts +2 -2
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/scopes/index.d.ts +1 -2
- package/dist/types/scopes/index.d.ts.map +1 -1
- package/package.json +10 -12
- package/src/client/ExternalThread.ts +25 -13
- package/src/client/InMemoryThreadList.ts +1 -2
- package/src/client/index.ts +3 -2
- package/src/context/providers/AttachmentByIndexProvider.tsx +4 -34
- package/src/context/providers/ChainOfThoughtByIndicesProvider.tsx +1 -34
- package/src/context/providers/ChainOfThoughtPartByIndexProvider.tsx +1 -18
- package/src/context/providers/MessageByIndexProvider.tsx +1 -23
- package/src/context/providers/PartByIndexProvider.tsx +1 -18
- package/src/context/providers/SuggestionByIndexProvider.tsx +4 -21
- package/src/context/providers/TextMessagePartProvider.tsx +1 -46
- package/src/context/providers/ThreadListItemProvider.tsx +4 -33
- package/src/context/providers/index.ts +1 -0
- package/src/index.ts +1 -1
- package/src/legacy-runtime/AssistantRuntimeProvider.tsx +13 -21
- package/src/legacy-runtime/RuntimeAdapter.ts +1 -66
- package/src/legacy-runtime/runtime-cores/adapters/attachment/CloudFileAttachmentAdapter.ts +1 -1
- package/src/legacy-runtime/runtime-cores/assistant-transport/index.ts +1 -0
- package/src/legacy-runtime/runtime-cores/assistant-transport/types.ts +25 -0
- package/src/legacy-runtime/runtime-cores/assistant-transport/useAssistantTransportRuntime.ts +22 -13
- package/src/legacy-runtime/runtime-cores/external-store/external-message-converter.ts +19 -21
- package/src/legacy-runtime/runtime-cores/external-store/getExternalStoreMessage.ts +1 -0
- package/src/legacy-runtime/runtime-cores/external-store/index.ts +1 -0
- package/src/legacy-runtime/runtime-cores/remote-thread-list/useRemoteThreadListRuntime.ts +20 -4
- package/src/model-context/index.ts +29 -22
- package/src/primitives/actionBarMore/ActionBarMoreContent.tsx +1 -1
- package/src/primitives/actionBarMore/ActionBarMoreItem.tsx +1 -1
- package/src/primitives/actionBarMore/ActionBarMoreRoot.tsx +1 -1
- package/src/primitives/actionBarMore/ActionBarMoreSeparator.tsx +1 -1
- package/src/primitives/actionBarMore/ActionBarMoreTrigger.tsx +1 -1
- package/src/primitives/actionBarMore/scope.ts +1 -1
- package/src/primitives/assistantModal/AssistantModalAnchor.tsx +1 -1
- package/src/primitives/assistantModal/AssistantModalContent.tsx +1 -1
- package/src/primitives/assistantModal/AssistantModalRoot.tsx +1 -1
- package/src/primitives/assistantModal/AssistantModalTrigger.tsx +1 -1
- package/src/primitives/assistantModal/scope.ts +1 -1
- package/src/primitives/chainOfThought/ChainOfThoughtParts.tsx +1 -85
- package/src/primitives/composer/ComposerAttachmentDropzone.tsx +2 -2
- package/src/primitives/composer/ComposerAttachments.tsx +4 -110
- package/src/primitives/composer/ComposerIf.ts +2 -42
- package/src/primitives/composer/ComposerInput.tsx +2 -2
- package/src/primitives/message/MessageAttachments.tsx +4 -113
- package/src/primitives/message/MessageIf.ts +1 -1
- package/src/primitives/message/MessageParts.tsx +43 -642
- package/src/primitives/message/MessagePartsGrouped.tsx +3 -3
- package/src/primitives/thread/ThreadEmpty.ts +4 -3
- package/src/primitives/thread/ThreadIf.ts +1 -1
- package/src/primitives/thread/ThreadMessages.tsx +4 -217
- package/src/primitives/thread/ThreadSuggestions.tsx +4 -106
- package/src/primitives/thread/ThreadViewportSlack.tsx +2 -2
- package/src/primitives/threadList/ThreadListItems.tsx +4 -79
- package/src/primitives/threadListItem/ThreadListItemTitle.test.tsx +7 -3
- package/src/primitives/threadListItem/ThreadListItemTitle.tsx +1 -17
- package/src/primitives/threadListItemMore/ThreadListItemMoreContent.tsx +1 -1
- package/src/primitives/threadListItemMore/ThreadListItemMoreItem.tsx +1 -1
- package/src/primitives/threadListItemMore/ThreadListItemMoreRoot.tsx +1 -1
- package/src/primitives/threadListItemMore/ThreadListItemMoreSeparator.tsx +1 -1
- package/src/primitives/threadListItemMore/ThreadListItemMoreTrigger.tsx +1 -1
- package/src/primitives/threadListItemMore/scope.ts +1 -1
- package/src/tests/BaseComposerRuntimeCore.test.ts +106 -1
- package/src/tests/DataRenderers.test.ts +1 -2
- package/src/types/index.ts +3 -2
- package/src/types/scopes/index.ts +5 -3
- package/dist/client/DataRenderers.d.ts +0 -3
- package/dist/client/DataRenderers.d.ts.map +0 -1
- package/dist/client/DataRenderers.js +0 -33
- package/dist/client/DataRenderers.js.map +0 -1
- package/dist/client/Tools.d.ts +0 -8
- package/dist/client/Tools.d.ts.map +0 -1
- package/dist/client/Tools.js +0 -68
- package/dist/client/Tools.js.map +0 -1
- package/dist/model-context/makeAssistantDataUI.d.ts +0 -7
- package/dist/model-context/makeAssistantDataUI.d.ts.map +0 -1
- package/dist/model-context/makeAssistantDataUI.js +0 -11
- package/dist/model-context/makeAssistantDataUI.js.map +0 -1
- package/dist/model-context/makeAssistantTool.d.ts +0 -7
- package/dist/model-context/makeAssistantTool.d.ts.map +0 -1
- package/dist/model-context/makeAssistantTool.js +0 -11
- package/dist/model-context/makeAssistantTool.js.map +0 -1
- package/dist/model-context/makeAssistantToolUI.d.ts +0 -7
- package/dist/model-context/makeAssistantToolUI.d.ts.map +0 -1
- package/dist/model-context/makeAssistantToolUI.js +0 -11
- package/dist/model-context/makeAssistantToolUI.js.map +0 -1
- package/dist/model-context/toolbox.d.ts +0 -10
- package/dist/model-context/toolbox.d.ts.map +0 -1
- package/dist/model-context/toolbox.js +0 -3
- package/dist/model-context/toolbox.js.map +0 -1
- package/dist/model-context/useAssistantDataUI.d.ts +0 -7
- package/dist/model-context/useAssistantDataUI.d.ts.map +0 -1
- package/dist/model-context/useAssistantDataUI.js +0 -12
- package/dist/model-context/useAssistantDataUI.js.map +0 -1
- package/dist/model-context/useAssistantInstructions.d.ts +0 -4
- package/dist/model-context/useAssistantInstructions.d.ts.map +0 -1
- package/dist/model-context/useAssistantInstructions.js +0 -23
- package/dist/model-context/useAssistantInstructions.js.map +0 -1
- package/dist/model-context/useAssistantTool.d.ts +0 -7
- package/dist/model-context/useAssistantTool.d.ts.map +0 -1
- package/dist/model-context/useAssistantTool.js +0 -23
- package/dist/model-context/useAssistantTool.js.map +0 -1
- package/dist/model-context/useAssistantToolUI.d.ts +0 -7
- package/dist/model-context/useAssistantToolUI.d.ts.map +0 -1
- package/dist/model-context/useAssistantToolUI.js +0 -12
- package/dist/model-context/useAssistantToolUI.js.map +0 -1
- package/dist/model-context/useInlineRender.d.ts +0 -4
- package/dist/model-context/useInlineRender.d.ts.map +0 -1
- package/dist/model-context/useInlineRender.js +0 -16
- package/dist/model-context/useInlineRender.js.map +0 -1
- package/dist/types/MessagePartComponentTypes.d.ts +0 -33
- package/dist/types/MessagePartComponentTypes.d.ts.map +0 -1
- package/dist/types/MessagePartComponentTypes.js +0 -2
- package/dist/types/MessagePartComponentTypes.js.map +0 -1
- package/dist/types/scopes/dataRenderers.d.ts +0 -13
- package/dist/types/scopes/dataRenderers.d.ts.map +0 -1
- package/dist/types/scopes/dataRenderers.js +0 -2
- package/dist/types/scopes/dataRenderers.js.map +0 -1
- package/dist/types/scopes/tools.d.ts +0 -13
- package/dist/types/scopes/tools.d.ts.map +0 -1
- package/dist/types/scopes/tools.js +0 -2
- package/dist/types/scopes/tools.js.map +0 -1
- package/dist/types/store-augmentation.d.ts +0 -10
- package/dist/types/store-augmentation.d.ts.map +0 -1
- package/dist/types/store-augmentation.js +0 -2
- package/dist/types/store-augmentation.js.map +0 -1
- package/src/client/DataRenderers.ts +0 -42
- package/src/client/Tools.ts +0 -97
- package/src/model-context/makeAssistantDataUI.ts +0 -22
- package/src/model-context/makeAssistantTool.ts +0 -22
- package/src/model-context/makeAssistantToolUI.ts +0 -22
- package/src/model-context/toolbox.ts +0 -17
- package/src/model-context/useAssistantDataUI.ts +0 -18
- package/src/model-context/useAssistantInstructions.ts +0 -32
- package/src/model-context/useAssistantTool.ts +0 -39
- package/src/model-context/useAssistantToolUI.ts +0 -20
- package/src/model-context/useInlineRender.ts +0 -27
- package/src/types/MessagePartComponentTypes.ts +0 -66
- package/src/types/scopes/dataRenderers.ts +0 -15
- package/src/types/scopes/tools.ts +0 -18
- package/src/types/store-augmentation.ts +0 -11
|
@@ -26,7 +26,7 @@ import type {
|
|
|
26
26
|
ToolCallMessagePartProps,
|
|
27
27
|
FileMessagePartComponent,
|
|
28
28
|
ReasoningMessagePartComponent,
|
|
29
|
-
} from "../../types
|
|
29
|
+
} from "../../types";
|
|
30
30
|
import { MessagePartPrimitiveInProgress } from "../messagePart/MessagePartInProgress";
|
|
31
31
|
import type { MessagePartStatus } from "@assistant-ui/core";
|
|
32
32
|
|
|
@@ -337,8 +337,8 @@ const MessagePartComponent: FC<MessagePartComponentProps> = ({
|
|
|
337
337
|
}
|
|
338
338
|
|
|
339
339
|
default:
|
|
340
|
-
|
|
341
|
-
|
|
340
|
+
console.warn(`Unknown message part type: ${type}`);
|
|
341
|
+
return null;
|
|
342
342
|
}
|
|
343
343
|
};
|
|
344
344
|
|
|
@@ -7,12 +7,13 @@ export namespace ThreadPrimitiveEmpty {
|
|
|
7
7
|
export type Props = PropsWithChildren;
|
|
8
8
|
}
|
|
9
9
|
|
|
10
|
+
/**
|
|
11
|
+
* @deprecated Use `<AuiIf condition={(s) => s.thread.isEmpty} />` instead.
|
|
12
|
+
*/
|
|
10
13
|
export const ThreadPrimitiveEmpty: FC<ThreadPrimitiveEmpty.Props> = ({
|
|
11
14
|
children,
|
|
12
15
|
}) => {
|
|
13
|
-
const empty = useAuiState(
|
|
14
|
-
(s) => s.thread.messages.length === 0 && !s.thread.isLoading,
|
|
15
|
-
);
|
|
16
|
+
const empty = useAuiState((s) => s.thread.isEmpty);
|
|
16
17
|
return empty ? children : null;
|
|
17
18
|
};
|
|
18
19
|
|
|
@@ -31,7 +31,7 @@ export namespace ThreadPrimitiveIf {
|
|
|
31
31
|
}
|
|
32
32
|
|
|
33
33
|
/**
|
|
34
|
-
* @deprecated Use `<AuiIf condition={(
|
|
34
|
+
* @deprecated Use `<AuiIf condition={(s) => s.thread...} />` instead.
|
|
35
35
|
*/
|
|
36
36
|
export const ThreadPrimitiveIf: FC<ThreadPrimitiveIf.Props> = ({
|
|
37
37
|
children,
|
|
@@ -1,220 +1,7 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
import { useAuiState } from "@assistant-ui/store";
|
|
6
|
-
import { MessageByIndexProvider } from "../../context/providers";
|
|
7
|
-
|
|
8
|
-
export namespace ThreadPrimitiveMessages {
|
|
9
|
-
export type Props = {
|
|
10
|
-
/**
|
|
11
|
-
* Component configuration for rendering different types of messages and composers.
|
|
12
|
-
*
|
|
13
|
-
* You can provide either:
|
|
14
|
-
* 1. A single `Message` component that handles all message types
|
|
15
|
-
* 2. Specific components for `UserMessage` and `AssistantMessage` (with optional `SystemMessage`)
|
|
16
|
-
*
|
|
17
|
-
* Optional edit composer components can be provided to customize the editing experience
|
|
18
|
-
* for different message types when users edit their messages.
|
|
19
|
-
*/
|
|
20
|
-
components:
|
|
21
|
-
| {
|
|
22
|
-
/** Component used to render all message types */
|
|
23
|
-
Message: ComponentType;
|
|
24
|
-
/** Component used when editing any message type */
|
|
25
|
-
EditComposer?: ComponentType | undefined;
|
|
26
|
-
/** Component used when editing user messages specifically */
|
|
27
|
-
UserEditComposer?: ComponentType | undefined;
|
|
28
|
-
/** Component used when editing assistant messages specifically */
|
|
29
|
-
AssistantEditComposer?: ComponentType | undefined;
|
|
30
|
-
/** Component used when editing system messages specifically */
|
|
31
|
-
SystemEditComposer?: ComponentType | undefined;
|
|
32
|
-
/** Component used to render user messages specifically */
|
|
33
|
-
UserMessage?: ComponentType | undefined;
|
|
34
|
-
/** Component used to render assistant messages specifically */
|
|
35
|
-
AssistantMessage?: ComponentType | undefined;
|
|
36
|
-
/** Component used to render system messages specifically */
|
|
37
|
-
SystemMessage?: ComponentType | undefined;
|
|
38
|
-
}
|
|
39
|
-
| {
|
|
40
|
-
/** Component used to render all message types (fallback) */
|
|
41
|
-
Message?: ComponentType | undefined;
|
|
42
|
-
/** Component used when editing any message type */
|
|
43
|
-
EditComposer?: ComponentType | undefined;
|
|
44
|
-
/** Component used when editing user messages specifically */
|
|
45
|
-
UserEditComposer?: ComponentType | undefined;
|
|
46
|
-
/** Component used when editing assistant messages specifically */
|
|
47
|
-
AssistantEditComposer?: ComponentType | undefined;
|
|
48
|
-
/** Component used when editing system messages specifically */
|
|
49
|
-
SystemEditComposer?: ComponentType | undefined;
|
|
50
|
-
/** Component used to render user messages */
|
|
51
|
-
UserMessage: ComponentType;
|
|
52
|
-
/** Component used to render assistant messages */
|
|
53
|
-
AssistantMessage: ComponentType;
|
|
54
|
-
/** Component used to render system messages */
|
|
55
|
-
SystemMessage?: ComponentType | undefined;
|
|
56
|
-
};
|
|
57
|
-
};
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
const isComponentsSame = (
|
|
61
|
-
prev: ThreadPrimitiveMessages.Props["components"],
|
|
62
|
-
next: ThreadPrimitiveMessages.Props["components"],
|
|
63
|
-
) => {
|
|
64
|
-
return (
|
|
65
|
-
prev.Message === next.Message &&
|
|
66
|
-
prev.EditComposer === next.EditComposer &&
|
|
67
|
-
prev.UserEditComposer === next.UserEditComposer &&
|
|
68
|
-
prev.AssistantEditComposer === next.AssistantEditComposer &&
|
|
69
|
-
prev.SystemEditComposer === next.SystemEditComposer &&
|
|
70
|
-
prev.UserMessage === next.UserMessage &&
|
|
71
|
-
prev.AssistantMessage === next.AssistantMessage &&
|
|
72
|
-
prev.SystemMessage === next.SystemMessage
|
|
73
|
-
);
|
|
74
|
-
};
|
|
75
|
-
|
|
76
|
-
const DEFAULT_SYSTEM_MESSAGE = () => null;
|
|
77
|
-
|
|
78
|
-
const getComponent = (
|
|
79
|
-
components: ThreadPrimitiveMessages.Props["components"],
|
|
80
|
-
role: ThreadMessageType["role"],
|
|
81
|
-
isEditing: boolean,
|
|
82
|
-
) => {
|
|
83
|
-
switch (role) {
|
|
84
|
-
case "user":
|
|
85
|
-
if (isEditing) {
|
|
86
|
-
return (
|
|
87
|
-
components.UserEditComposer ??
|
|
88
|
-
components.EditComposer ??
|
|
89
|
-
components.UserMessage ??
|
|
90
|
-
(components.Message as ComponentType)
|
|
91
|
-
);
|
|
92
|
-
} else {
|
|
93
|
-
return components.UserMessage ?? (components.Message as ComponentType);
|
|
94
|
-
}
|
|
95
|
-
case "assistant":
|
|
96
|
-
if (isEditing) {
|
|
97
|
-
return (
|
|
98
|
-
components.AssistantEditComposer ??
|
|
99
|
-
components.EditComposer ??
|
|
100
|
-
components.AssistantMessage ??
|
|
101
|
-
(components.Message as ComponentType)
|
|
102
|
-
);
|
|
103
|
-
} else {
|
|
104
|
-
return (
|
|
105
|
-
components.AssistantMessage ?? (components.Message as ComponentType)
|
|
106
|
-
);
|
|
107
|
-
}
|
|
108
|
-
case "system":
|
|
109
|
-
if (isEditing) {
|
|
110
|
-
return (
|
|
111
|
-
components.SystemEditComposer ??
|
|
112
|
-
components.EditComposer ??
|
|
113
|
-
components.SystemMessage ??
|
|
114
|
-
(components.Message as ComponentType)
|
|
115
|
-
);
|
|
116
|
-
} else {
|
|
117
|
-
return components.SystemMessage ?? DEFAULT_SYSTEM_MESSAGE;
|
|
118
|
-
}
|
|
119
|
-
default:
|
|
120
|
-
const _exhaustiveCheck: never = role;
|
|
121
|
-
throw new Error(`Unknown message role: ${_exhaustiveCheck}`);
|
|
122
|
-
}
|
|
123
|
-
};
|
|
124
|
-
|
|
125
|
-
type ThreadMessageComponentProps = {
|
|
126
|
-
components: ThreadPrimitiveMessages.Props["components"];
|
|
127
|
-
};
|
|
128
|
-
|
|
129
|
-
const ThreadMessageComponent: FC<ThreadMessageComponentProps> = ({
|
|
130
|
-
components,
|
|
131
|
-
}) => {
|
|
132
|
-
const role = useAuiState((s) => s.message.role);
|
|
133
|
-
const isEditing = useAuiState((s) => s.message.composer.isEditing);
|
|
134
|
-
const Component = getComponent(components, role, isEditing);
|
|
135
|
-
|
|
136
|
-
return <Component />;
|
|
137
|
-
};
|
|
138
|
-
export namespace ThreadPrimitiveMessageByIndex {
|
|
139
|
-
export type Props = {
|
|
140
|
-
index: number;
|
|
141
|
-
components: ThreadPrimitiveMessages.Props["components"];
|
|
142
|
-
};
|
|
143
|
-
}
|
|
144
|
-
|
|
145
|
-
/**
|
|
146
|
-
* Renders a single message at the specified index in the current thread.
|
|
147
|
-
*
|
|
148
|
-
* This component provides message context for a specific message in the thread
|
|
149
|
-
* and renders it using the provided component configuration.
|
|
150
|
-
*
|
|
151
|
-
* @example
|
|
152
|
-
* ```tsx
|
|
153
|
-
* <ThreadPrimitive.MessageByIndex
|
|
154
|
-
* index={0}
|
|
155
|
-
* components={{
|
|
156
|
-
* UserMessage: MyUserMessage,
|
|
157
|
-
* AssistantMessage: MyAssistantMessage
|
|
158
|
-
* }}
|
|
159
|
-
* />
|
|
160
|
-
* ```
|
|
161
|
-
*/
|
|
162
|
-
export const ThreadPrimitiveMessageByIndex: FC<ThreadPrimitiveMessageByIndex.Props> =
|
|
163
|
-
memo(
|
|
164
|
-
({ index, components }) => {
|
|
165
|
-
return (
|
|
166
|
-
<MessageByIndexProvider index={index}>
|
|
167
|
-
<ThreadMessageComponent components={components} />
|
|
168
|
-
</MessageByIndexProvider>
|
|
169
|
-
);
|
|
170
|
-
},
|
|
171
|
-
(prev, next) =>
|
|
172
|
-
prev.index === next.index &&
|
|
173
|
-
isComponentsSame(prev.components, next.components),
|
|
174
|
-
);
|
|
175
|
-
|
|
176
|
-
ThreadPrimitiveMessageByIndex.displayName = "ThreadPrimitive.MessageByIndex";
|
|
177
|
-
|
|
178
|
-
/**
|
|
179
|
-
* Renders all messages in the current thread using the provided component configuration.
|
|
180
|
-
*
|
|
181
|
-
* This component automatically renders all messages in the thread, providing the appropriate
|
|
182
|
-
* message context for each message. It handles different message types (user, assistant, system)
|
|
183
|
-
* and supports editing mode through the provided edit composer components.
|
|
184
|
-
*
|
|
185
|
-
* @example
|
|
186
|
-
* ```tsx
|
|
187
|
-
* <ThreadPrimitive.Messages
|
|
188
|
-
* components={{
|
|
189
|
-
* UserMessage: MyUserMessage,
|
|
190
|
-
* AssistantMessage: MyAssistantMessage,
|
|
191
|
-
* EditComposer: MyEditComposer
|
|
192
|
-
* }}
|
|
193
|
-
* />
|
|
194
|
-
* ```
|
|
195
|
-
*/
|
|
196
|
-
export const ThreadPrimitiveMessagesImpl: FC<ThreadPrimitiveMessages.Props> = ({
|
|
197
|
-
components,
|
|
198
|
-
}) => {
|
|
199
|
-
const messagesLength = useAuiState((s) => s.thread.messages.length);
|
|
200
|
-
|
|
201
|
-
const messageElements = useMemo(() => {
|
|
202
|
-
if (messagesLength === 0) return null;
|
|
203
|
-
return Array.from({ length: messagesLength }, (_, index) => (
|
|
204
|
-
<ThreadPrimitiveMessageByIndex
|
|
205
|
-
key={index}
|
|
206
|
-
index={index}
|
|
207
|
-
components={components}
|
|
208
|
-
/>
|
|
209
|
-
));
|
|
210
|
-
}, [messagesLength, components]);
|
|
211
|
-
|
|
212
|
-
return messageElements;
|
|
213
|
-
};
|
|
214
|
-
|
|
215
|
-
ThreadPrimitiveMessagesImpl.displayName = "ThreadPrimitive.Messages";
|
|
216
|
-
|
|
217
|
-
export const ThreadPrimitiveMessages = memo(
|
|
3
|
+
export {
|
|
4
|
+
ThreadPrimitiveMessages,
|
|
218
5
|
ThreadPrimitiveMessagesImpl,
|
|
219
|
-
|
|
220
|
-
|
|
6
|
+
ThreadPrimitiveMessageByIndex,
|
|
7
|
+
} from "@assistant-ui/core/react";
|
|
@@ -1,109 +1,7 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
import { SuggestionByIndexProvider } from "../../context/providers";
|
|
6
|
-
|
|
7
|
-
export namespace ThreadPrimitiveSuggestions {
|
|
8
|
-
export type Props = {
|
|
9
|
-
/**
|
|
10
|
-
* Component to render for each suggestion.
|
|
11
|
-
*/
|
|
12
|
-
components: {
|
|
13
|
-
/** Component used to render each suggestion */
|
|
14
|
-
Suggestion: ComponentType;
|
|
15
|
-
};
|
|
16
|
-
};
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
type SuggestionComponentProps = {
|
|
20
|
-
components: ThreadPrimitiveSuggestions.Props["components"];
|
|
21
|
-
};
|
|
22
|
-
|
|
23
|
-
const SuggestionComponent: FC<SuggestionComponentProps> = ({ components }) => {
|
|
24
|
-
const Component = components.Suggestion;
|
|
25
|
-
return <Component />;
|
|
26
|
-
};
|
|
27
|
-
|
|
28
|
-
export namespace ThreadPrimitiveSuggestionByIndex {
|
|
29
|
-
export type Props = {
|
|
30
|
-
index: number;
|
|
31
|
-
components: ThreadPrimitiveSuggestions.Props["components"];
|
|
32
|
-
};
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
/**
|
|
36
|
-
* Renders a single suggestion at the specified index.
|
|
37
|
-
*
|
|
38
|
-
* This component provides suggestion context for a specific suggestion
|
|
39
|
-
* and renders it using the provided component configuration.
|
|
40
|
-
*
|
|
41
|
-
* @example
|
|
42
|
-
* ```tsx
|
|
43
|
-
* <ThreadPrimitive.SuggestionByIndex
|
|
44
|
-
* index={0}
|
|
45
|
-
* components={{
|
|
46
|
-
* Suggestion: MySuggestion
|
|
47
|
-
* }}
|
|
48
|
-
* />
|
|
49
|
-
* ```
|
|
50
|
-
*/
|
|
51
|
-
export const ThreadPrimitiveSuggestionByIndex: FC<ThreadPrimitiveSuggestionByIndex.Props> =
|
|
52
|
-
memo(
|
|
53
|
-
({ index, components }) => {
|
|
54
|
-
return (
|
|
55
|
-
<SuggestionByIndexProvider index={index}>
|
|
56
|
-
<SuggestionComponent components={components} />
|
|
57
|
-
</SuggestionByIndexProvider>
|
|
58
|
-
);
|
|
59
|
-
},
|
|
60
|
-
(prev, next) =>
|
|
61
|
-
prev.index === next.index &&
|
|
62
|
-
prev.components.Suggestion === next.components.Suggestion,
|
|
63
|
-
);
|
|
64
|
-
|
|
65
|
-
ThreadPrimitiveSuggestionByIndex.displayName =
|
|
66
|
-
"ThreadPrimitive.SuggestionByIndex";
|
|
67
|
-
|
|
68
|
-
/**
|
|
69
|
-
* Renders all suggestions using the provided component configuration.
|
|
70
|
-
*
|
|
71
|
-
* This component automatically renders all suggestions from the suggestions scope,
|
|
72
|
-
* providing the appropriate suggestion context for each one.
|
|
73
|
-
*
|
|
74
|
-
* @example
|
|
75
|
-
* ```tsx
|
|
76
|
-
* <ThreadPrimitive.Suggestions
|
|
77
|
-
* components={{
|
|
78
|
-
* Suggestion: MySuggestion
|
|
79
|
-
* }}
|
|
80
|
-
* />
|
|
81
|
-
* ```
|
|
82
|
-
*/
|
|
83
|
-
export const ThreadPrimitiveSuggestionsImpl: FC<
|
|
84
|
-
ThreadPrimitiveSuggestions.Props
|
|
85
|
-
> = ({ components }) => {
|
|
86
|
-
const suggestionsLength = useAuiState(
|
|
87
|
-
(s) => s.suggestions.suggestions.length,
|
|
88
|
-
);
|
|
89
|
-
|
|
90
|
-
const suggestionElements = useMemo(() => {
|
|
91
|
-
if (suggestionsLength === 0) return null;
|
|
92
|
-
return Array.from({ length: suggestionsLength }, (_, index) => (
|
|
93
|
-
<ThreadPrimitiveSuggestionByIndex
|
|
94
|
-
key={index}
|
|
95
|
-
index={index}
|
|
96
|
-
components={components}
|
|
97
|
-
/>
|
|
98
|
-
));
|
|
99
|
-
}, [suggestionsLength, components]);
|
|
100
|
-
|
|
101
|
-
return suggestionElements;
|
|
102
|
-
};
|
|
103
|
-
|
|
104
|
-
ThreadPrimitiveSuggestionsImpl.displayName = "ThreadPrimitive.Suggestions";
|
|
105
|
-
|
|
106
|
-
export const ThreadPrimitiveSuggestions = memo(
|
|
3
|
+
export {
|
|
4
|
+
ThreadPrimitiveSuggestions,
|
|
107
5
|
ThreadPrimitiveSuggestionsImpl,
|
|
108
|
-
|
|
109
|
-
|
|
6
|
+
ThreadPrimitiveSuggestionByIndex,
|
|
7
|
+
} from "@assistant-ui/core/react";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
|
|
3
|
-
import { Slot } from "
|
|
3
|
+
import { Slot } from "radix-ui";
|
|
4
4
|
import {
|
|
5
5
|
createContext,
|
|
6
6
|
type FC,
|
|
@@ -108,7 +108,7 @@ export const ThreadPrimitiveViewportSlack: FC<ThreadViewportSlackProps> = ({
|
|
|
108
108
|
|
|
109
109
|
return (
|
|
110
110
|
<SlackNestingContext.Provider value={true}>
|
|
111
|
-
<Slot ref={ref}>{children}</Slot>
|
|
111
|
+
<Slot.Root ref={ref}>{children}</Slot.Root>
|
|
112
112
|
</SlackNestingContext.Provider>
|
|
113
113
|
);
|
|
114
114
|
};
|
|
@@ -1,81 +1,6 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
export namespace ThreadListPrimitiveItems {
|
|
8
|
-
export type Props = {
|
|
9
|
-
archived?: boolean | undefined;
|
|
10
|
-
components: {
|
|
11
|
-
ThreadListItem: ComponentType;
|
|
12
|
-
};
|
|
13
|
-
};
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
export namespace ThreadListPrimitiveItemByIndex {
|
|
17
|
-
export type Props = {
|
|
18
|
-
index: number;
|
|
19
|
-
archived?: boolean | undefined;
|
|
20
|
-
components: ThreadListPrimitiveItems.Props["components"];
|
|
21
|
-
};
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
/**
|
|
25
|
-
* Renders a single thread list item at the specified index.
|
|
26
|
-
*
|
|
27
|
-
* This component provides direct access to render a specific thread
|
|
28
|
-
* from the thread list using the provided component configuration.
|
|
29
|
-
*
|
|
30
|
-
* @example
|
|
31
|
-
* ```tsx
|
|
32
|
-
* <ThreadListPrimitive.ItemByIndex
|
|
33
|
-
* index={0}
|
|
34
|
-
* components={{
|
|
35
|
-
* ThreadListItem: MyThreadListItem
|
|
36
|
-
* }}
|
|
37
|
-
* />
|
|
38
|
-
* ```
|
|
39
|
-
*/
|
|
40
|
-
export const ThreadListPrimitiveItemByIndex: FC<ThreadListPrimitiveItemByIndex.Props> =
|
|
41
|
-
memo(
|
|
42
|
-
({ index, archived = false, components }) => {
|
|
43
|
-
const ThreadListItemComponent = components.ThreadListItem;
|
|
44
|
-
|
|
45
|
-
return (
|
|
46
|
-
<ThreadListItemByIndexProvider index={index} archived={archived}>
|
|
47
|
-
<ThreadListItemComponent />
|
|
48
|
-
</ThreadListItemByIndexProvider>
|
|
49
|
-
);
|
|
50
|
-
},
|
|
51
|
-
(prev, next) =>
|
|
52
|
-
prev.index === next.index &&
|
|
53
|
-
prev.archived === next.archived &&
|
|
54
|
-
prev.components.ThreadListItem === next.components.ThreadListItem,
|
|
55
|
-
);
|
|
56
|
-
|
|
57
|
-
ThreadListPrimitiveItemByIndex.displayName = "ThreadListPrimitive.ItemByIndex";
|
|
58
|
-
|
|
59
|
-
export const ThreadListPrimitiveItems: FC<ThreadListPrimitiveItems.Props> = ({
|
|
60
|
-
archived = false,
|
|
61
|
-
components,
|
|
62
|
-
}) => {
|
|
63
|
-
const contentLength = useAuiState((s) =>
|
|
64
|
-
archived ? s.threads.archivedThreadIds.length : s.threads.threadIds.length,
|
|
65
|
-
);
|
|
66
|
-
|
|
67
|
-
const listElements = useMemo(() => {
|
|
68
|
-
return Array.from({ length: contentLength }, (_, index) => (
|
|
69
|
-
<ThreadListPrimitiveItemByIndex
|
|
70
|
-
key={index}
|
|
71
|
-
index={index}
|
|
72
|
-
archived={archived}
|
|
73
|
-
components={components}
|
|
74
|
-
/>
|
|
75
|
-
));
|
|
76
|
-
}, [contentLength, archived, components]);
|
|
77
|
-
|
|
78
|
-
return listElements;
|
|
79
|
-
};
|
|
80
|
-
|
|
81
|
-
ThreadListPrimitiveItems.displayName = "ThreadListPrimitive.Items";
|
|
3
|
+
export {
|
|
4
|
+
ThreadListPrimitiveItems,
|
|
5
|
+
ThreadListPrimitiveItemByIndex,
|
|
6
|
+
} from "@assistant-ui/core/react";
|
|
@@ -8,9 +8,13 @@ type UseAuiStateSelector = Parameters<
|
|
|
8
8
|
typeof import("@assistant-ui/store")["useAuiState"]
|
|
9
9
|
>[0];
|
|
10
10
|
|
|
11
|
-
vi.mock("@assistant-ui/store", () =>
|
|
12
|
-
|
|
13
|
-
|
|
11
|
+
vi.mock("@assistant-ui/store", async (importOriginal) => {
|
|
12
|
+
const actual = await importOriginal<typeof import("@assistant-ui/store")>();
|
|
13
|
+
return {
|
|
14
|
+
...actual,
|
|
15
|
+
useAuiState: (selector: UseAuiStateSelector) => mockUseAuiState(selector),
|
|
16
|
+
};
|
|
17
|
+
});
|
|
14
18
|
|
|
15
19
|
const renderTitle = (
|
|
16
20
|
title: string | undefined,
|
|
@@ -1,19 +1,3 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
import { useAuiState } from "@assistant-ui/store";
|
|
5
|
-
|
|
6
|
-
export namespace ThreadListItemPrimitiveTitle {
|
|
7
|
-
export type Props = {
|
|
8
|
-
fallback?: ReactNode;
|
|
9
|
-
};
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
export const ThreadListItemPrimitiveTitle: FC<
|
|
13
|
-
ThreadListItemPrimitiveTitle.Props
|
|
14
|
-
> = ({ fallback }) => {
|
|
15
|
-
const title = useAuiState((s) => s.threadListItem.title);
|
|
16
|
-
return <>{title || fallback}</>;
|
|
17
|
-
};
|
|
18
|
-
|
|
19
|
-
ThreadListItemPrimitiveTitle.displayName = "ThreadListItemPrimitive.Title";
|
|
3
|
+
export { ThreadListItemPrimitiveTitle } from "@assistant-ui/core/react";
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
|
|
3
3
|
import { ComponentPropsWithoutRef, ComponentRef, forwardRef } from "react";
|
|
4
|
-
import
|
|
4
|
+
import { DropdownMenu as DropdownMenuPrimitive } from "radix-ui";
|
|
5
5
|
import { ScopedProps, useDropdownMenuScope } from "./scope";
|
|
6
6
|
|
|
7
7
|
export namespace ThreadListItemMorePrimitiveContent {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
|
|
3
3
|
import { ComponentPropsWithoutRef, ComponentRef, forwardRef } from "react";
|
|
4
|
-
import
|
|
4
|
+
import { DropdownMenu as DropdownMenuPrimitive } from "radix-ui";
|
|
5
5
|
import { ScopedProps, useDropdownMenuScope } from "./scope";
|
|
6
6
|
|
|
7
7
|
export namespace ThreadListItemMorePrimitiveItem {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
|
|
3
3
|
import { FC } from "react";
|
|
4
|
-
import
|
|
4
|
+
import { DropdownMenu as DropdownMenuPrimitive } from "radix-ui";
|
|
5
5
|
import { ScopedProps, useDropdownMenuScope } from "./scope";
|
|
6
6
|
|
|
7
7
|
export namespace ThreadListItemMorePrimitiveRoot {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
|
|
3
3
|
import { ComponentPropsWithoutRef, ComponentRef, forwardRef } from "react";
|
|
4
|
-
import
|
|
4
|
+
import { DropdownMenu as DropdownMenuPrimitive } from "radix-ui";
|
|
5
5
|
import { ScopedProps, useDropdownMenuScope } from "./scope";
|
|
6
6
|
|
|
7
7
|
export namespace ThreadListItemMorePrimitiveSeparator {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
|
|
3
3
|
import { ComponentPropsWithoutRef, ComponentRef, forwardRef } from "react";
|
|
4
|
-
import
|
|
4
|
+
import { DropdownMenu as DropdownMenuPrimitive } from "radix-ui";
|
|
5
5
|
import { ScopedProps, useDropdownMenuScope } from "./scope";
|
|
6
6
|
|
|
7
7
|
export namespace ThreadListItemMorePrimitiveTrigger {
|