@assistant-ui/react 0.7.7 → 0.7.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/api/AssistantRuntime.js +3 -3
- package/dist/api/ComposerRuntime.d.ts.map +1 -1
- package/dist/api/ComposerRuntime.js +4 -4
- package/dist/api/MessageRuntime.js +7 -7
- package/dist/api/ThreadListRuntime.js +4 -4
- package/dist/api/ThreadRuntime.js +6 -6
- package/dist/api/subscribable/LazyMemoizeSubject.js +2 -2
- package/dist/api/subscribable/NestedSubscriptionSubject.js +1 -1
- package/dist/api/subscribable/ShallowMemoizeSubject.js +3 -3
- package/dist/context/index.js +6 -6
- package/dist/context/index.js.map +1 -1
- package/dist/context/providers/AssistantRuntimeProvider.js +4 -4
- package/dist/context/providers/AttachmentRuntimeProvider.js +2 -2
- package/dist/context/providers/ContentPartRuntimeProvider.js +2 -2
- package/dist/context/providers/MessageRuntimeProvider.js +3 -3
- package/dist/context/providers/TextContentPartProvider.js +3 -3
- package/dist/context/providers/ThreadListItemRuntimeProvider.js +2 -2
- package/dist/context/providers/ThreadRuntimeProvider.js +3 -3
- package/dist/context/providers/index.js +2 -2
- package/dist/context/react/AssistantContext.js +2 -2
- package/dist/context/react/AttachmentContext.js +1 -1
- package/dist/context/react/ComposerContext.js +3 -3
- package/dist/context/react/ContentPartContext.js +2 -2
- package/dist/context/react/MessageContext.js +2 -2
- package/dist/context/react/ThreadContext.js +2 -2
- package/dist/context/react/ThreadListItemContext.js +2 -2
- package/dist/context/react/index.js +6 -6
- package/dist/context/react/utils/createContextStoreHook.d.ts.map +1 -1
- package/dist/edge.js +1 -1
- package/dist/index.js +17 -17
- package/dist/index.js.map +1 -1
- package/dist/internal.js +11 -11
- package/dist/internal.js.map +1 -1
- package/dist/model-config/index.js +6 -6
- package/dist/model-config/makeAssistantTool.js +1 -1
- package/dist/model-config/makeAssistantToolUI.js +1 -1
- package/dist/model-config/useAssistantInstructions.js +1 -1
- package/dist/model-config/useAssistantTool.js +1 -1
- package/dist/model-config/useAssistantToolUI.js +1 -1
- package/dist/primitive-hooks/actionBar/useActionBarCopy.js +2 -2
- package/dist/primitive-hooks/actionBar/useActionBarEdit.js +1 -1
- package/dist/primitive-hooks/actionBar/useActionBarFeedbackNegative.js +1 -1
- package/dist/primitive-hooks/actionBar/useActionBarFeedbackPositive.js +1 -1
- package/dist/primitive-hooks/actionBar/useActionBarReload.js +3 -3
- package/dist/primitive-hooks/actionBar/useActionBarSpeak.js +1 -1
- package/dist/primitive-hooks/actionBar/useActionBarStopSpeaking.js +1 -1
- package/dist/primitive-hooks/attachment/useAttachmentRemove.js +1 -1
- package/dist/primitive-hooks/branchPicker/useBranchPickerCount.js +1 -1
- package/dist/primitive-hooks/branchPicker/useBranchPickerNext.js +1 -1
- package/dist/primitive-hooks/branchPicker/useBranchPickerNumber.js +1 -1
- package/dist/primitive-hooks/branchPicker/useBranchPickerPrevious.js +1 -1
- package/dist/primitive-hooks/composer/useComposerAddAttachment.js +1 -1
- package/dist/primitive-hooks/composer/useComposerCancel.js +1 -1
- package/dist/primitive-hooks/composer/useComposerIf.js +1 -1
- package/dist/primitive-hooks/composer/useComposerSend.js +3 -3
- package/dist/primitive-hooks/contentPart/index.js +3 -3
- package/dist/primitive-hooks/contentPart/useContentPartDisplay.js +1 -1
- package/dist/primitive-hooks/contentPart/useContentPartImage.js +1 -1
- package/dist/primitive-hooks/contentPart/useContentPartText.js +1 -1
- package/dist/primitive-hooks/index.js +2 -2
- package/dist/primitive-hooks/index.js.map +1 -1
- package/dist/primitive-hooks/message/useMessageIf.js +2 -2
- package/dist/primitive-hooks/thread/useThreadEmpty.js +1 -1
- package/dist/primitive-hooks/thread/useThreadIf.js +1 -1
- package/dist/primitive-hooks/thread/useThreadScrollToBottom.js +2 -2
- package/dist/primitive-hooks/thread/useThreadSuggestion.js +2 -2
- package/dist/primitive-hooks/thread/useThreadViewportAutoScroll.js +5 -5
- package/dist/primitives/actionBar/ActionBarCopy.js +2 -2
- package/dist/primitives/actionBar/ActionBarEdit.js +2 -2
- package/dist/primitives/actionBar/ActionBarFeedbackNegative.js +2 -2
- package/dist/primitives/actionBar/ActionBarFeedbackPositive.js +2 -2
- package/dist/primitives/actionBar/ActionBarReload.js +2 -2
- package/dist/primitives/actionBar/ActionBarRoot.js +1 -1
- package/dist/primitives/actionBar/ActionBarSpeak.js +2 -2
- package/dist/primitives/actionBar/ActionBarStopSpeaking.js +1 -1
- package/dist/primitives/actionBar/index.js +8 -8
- package/dist/primitives/actionBar/useActionBarFloatStatus.js +3 -3
- package/dist/primitives/assistantModal/AssistantModalAnchor.js +1 -1
- package/dist/primitives/assistantModal/AssistantModalContent.js +1 -1
- package/dist/primitives/assistantModal/AssistantModalRoot.js +2 -2
- package/dist/primitives/assistantModal/AssistantModalTrigger.js +1 -1
- package/dist/primitives/assistantModal/index.js +4 -4
- package/dist/primitives/attachment/AttachmentName.js +1 -1
- package/dist/primitives/attachment/AttachmentRemove.js +2 -2
- package/dist/primitives/attachment/AttachmentThumb.js +1 -1
- package/dist/primitives/attachment/index.js +4 -4
- package/dist/primitives/branchPicker/BranchPickerCount.js +1 -1
- package/dist/primitives/branchPicker/BranchPickerNext.js +2 -2
- package/dist/primitives/branchPicker/BranchPickerNumber.js +1 -1
- package/dist/primitives/branchPicker/BranchPickerPrevious.js +2 -2
- package/dist/primitives/branchPicker/BranchPickerRoot.js +1 -1
- package/dist/primitives/branchPicker/index.js +5 -5
- package/dist/primitives/composer/ComposerAddAttachment.js +2 -2
- package/dist/primitives/composer/ComposerAttachments.js +3 -3
- package/dist/primitives/composer/ComposerCancel.js +2 -2
- package/dist/primitives/composer/ComposerIf.js +1 -1
- package/dist/primitives/composer/ComposerInput.js +3 -3
- package/dist/primitives/composer/ComposerRoot.js +1 -1
- package/dist/primitives/composer/ComposerSend.js +2 -2
- package/dist/primitives/composer/index.js +7 -7
- package/dist/primitives/contentPart/ContentPartDisplay.js +1 -1
- package/dist/primitives/contentPart/ContentPartImage.js +1 -1
- package/dist/primitives/contentPart/ContentPartInProgress.js +1 -1
- package/dist/primitives/contentPart/ContentPartText.js +2 -2
- package/dist/primitives/contentPart/index.js +4 -4
- package/dist/primitives/index.js +10 -10
- package/dist/primitives/message/MessageAttachments.js +3 -3
- package/dist/primitives/message/MessageContent.js +8 -8
- package/dist/primitives/message/MessageIf.js +1 -1
- package/dist/primitives/message/MessageRoot.js +2 -2
- package/dist/primitives/message/index.js +4 -4
- package/dist/primitives/thread/ThreadEmpty.js +1 -1
- package/dist/primitives/thread/ThreadIf.js +1 -1
- package/dist/primitives/thread/ThreadMessages.js +3 -3
- package/dist/primitives/thread/ThreadScrollToBottom.js +2 -2
- package/dist/primitives/thread/ThreadSuggestion.js +2 -2
- package/dist/primitives/thread/ThreadViewport.js +1 -1
- package/dist/primitives/thread/index.js +7 -7
- package/dist/primitives/threadList/ThreadListItems.d.ts +2 -2
- package/dist/primitives/threadList/ThreadListItems.d.ts.map +1 -1
- package/dist/primitives/threadList/ThreadListItems.js +2 -2
- package/dist/primitives/threadList/ThreadListItems.js.map +1 -1
- package/dist/primitives/threadList/ThreadListItems.mjs.map +1 -1
- package/dist/primitives/threadList/ThreadListNew.d.ts.map +1 -1
- package/dist/primitives/threadList/ThreadListNew.js +24 -7
- package/dist/primitives/threadList/ThreadListNew.js.map +1 -1
- package/dist/primitives/threadList/ThreadListNew.mjs +24 -9
- package/dist/primitives/threadList/ThreadListNew.mjs.map +1 -1
- package/dist/primitives/threadList/index.js +2 -2
- package/dist/primitives/threadListItem/ThreadListItemArchive.js +2 -2
- package/dist/primitives/threadListItem/ThreadListItemDelete.js +2 -2
- package/dist/primitives/threadListItem/ThreadListItemRoot.js +2 -2
- package/dist/primitives/threadListItem/ThreadListItemRoot.js.map +1 -1
- package/dist/primitives/threadListItem/ThreadListItemRoot.mjs +1 -1
- package/dist/primitives/threadListItem/ThreadListItemRoot.mjs.map +1 -1
- package/dist/primitives/threadListItem/ThreadListItemTitle.js +1 -1
- package/dist/primitives/threadListItem/ThreadListItemTrigger.js +2 -2
- package/dist/primitives/threadListItem/ThreadListItemUnarchive.js +2 -2
- package/dist/primitives/threadListItem/index.js +6 -6
- package/dist/runtimes/attachment/index.js +3 -3
- package/dist/runtimes/composer/DefaultEditComposerRuntimeCore.js +2 -2
- package/dist/runtimes/composer/DefaultThreadComposerRuntimeCore.js +1 -1
- package/dist/runtimes/core/BaseAssistantRuntimeCore.js +1 -1
- package/dist/runtimes/core/BaseThreadRuntimeCore.js +4 -4
- package/dist/runtimes/dangerous-in-browser/DangerousInBrowserAdapter.js +6 -6
- package/dist/runtimes/dangerous-in-browser/index.js +1 -1
- package/dist/runtimes/dangerous-in-browser/useDangerousInBrowserRuntime.js +3 -3
- package/dist/runtimes/edge/EdgeChatAdapter.js +7 -7
- package/dist/runtimes/edge/EdgeRuntimeRequestOptions.js +1 -1
- package/dist/runtimes/edge/converters/fromCoreMessage.js +1 -1
- package/dist/runtimes/edge/converters/index.js +6 -6
- package/dist/runtimes/edge/createEdgeRuntimeAPI.js +9 -9
- package/dist/runtimes/edge/index.js +6 -6
- package/dist/runtimes/edge/index.js.map +1 -1
- package/dist/runtimes/edge/partial-json/parse-partial-json.js +1 -1
- package/dist/runtimes/edge/streams/assistantDecoderStream.js +1 -1
- package/dist/runtimes/edge/streams/assistantEncoderStream.js +1 -1
- package/dist/runtimes/edge/streams/runResultStream.js +1 -1
- package/dist/runtimes/edge/streams/utils/index.js +2 -2
- package/dist/runtimes/edge/streams/utils/streamPartDecoderStream.js +2 -2
- package/dist/runtimes/edge/streams/utils/streamPartEncoderStream.d.ts +1 -1
- package/dist/runtimes/edge/streams/utils/streamPartEncoderStream.d.ts.map +1 -1
- package/dist/runtimes/edge/streams/utils/streamPartEncoderStream.js +1 -1
- package/dist/runtimes/edge/useEdgeRuntime.js +3 -3
- package/dist/runtimes/external-store/ExternalStoreRuntimeCore.js +3 -3
- package/dist/runtimes/external-store/ExternalStoreThreadRuntimeCore.js +7 -7
- package/dist/runtimes/external-store/external-message-converter.js +4 -4
- package/dist/runtimes/external-store/index.js +3 -3
- package/dist/runtimes/external-store/useExternalStoreRuntime.js +3 -3
- package/dist/runtimes/index.js +16 -16
- package/dist/runtimes/index.js.map +1 -1
- package/dist/runtimes/local/LocalRuntimeCore.js +4 -4
- package/dist/runtimes/local/LocalThreadListRuntimeCore.js +1 -1
- package/dist/runtimes/local/LocalThreadRuntimeCore.js +5 -5
- package/dist/runtimes/local/index.js +1 -1
- package/dist/runtimes/local/useLocalRuntime.js +3 -3
- package/dist/runtimes/speech/index.js +1 -1
- package/dist/runtimes/utils/MessageRepository.js +2 -2
- package/dist/styles/index.css +78 -0
- package/dist/styles/index.css.map +1 -1
- package/dist/styles/tailwindcss/thread.css +30 -0
- package/dist/styles/tailwindcss/thread.css.json +21 -0
- package/dist/ui/assistant-action-bar.d.ts +7 -7
- package/dist/ui/assistant-action-bar.d.ts.map +1 -1
- package/dist/ui/assistant-action-bar.js +5 -5
- package/dist/ui/assistant-action-bar.js.map +1 -1
- package/dist/ui/assistant-action-bar.mjs +1 -3
- package/dist/ui/assistant-action-bar.mjs.map +1 -1
- package/dist/ui/assistant-message.js +7 -7
- package/dist/ui/assistant-modal.d.ts +3 -3
- package/dist/ui/assistant-modal.d.ts.map +1 -1
- package/dist/ui/assistant-modal.js +5 -5
- package/dist/ui/assistant-modal.js.map +1 -1
- package/dist/ui/assistant-modal.mjs +1 -3
- package/dist/ui/assistant-modal.mjs.map +1 -1
- package/dist/ui/attachment-ui.d.ts +2 -2
- package/dist/ui/attachment-ui.d.ts.map +1 -1
- package/dist/ui/attachment-ui.js +7 -7
- package/dist/ui/attachment-ui.js.map +1 -1
- package/dist/ui/attachment-ui.mjs +1 -3
- package/dist/ui/attachment-ui.mjs.map +1 -1
- package/dist/ui/base/avatar.js +1 -1
- package/dist/ui/base/index.d.ts +1 -1
- package/dist/ui/base/index.d.ts.map +1 -1
- package/dist/ui/base/index.js +5 -5
- package/dist/ui/base/index.js.map +1 -1
- package/dist/ui/base/index.mjs +1 -3
- package/dist/ui/base/index.mjs.map +1 -1
- package/dist/ui/base/tooltip-icon-button.d.ts +6 -4
- package/dist/ui/base/tooltip-icon-button.d.ts.map +1 -1
- package/dist/ui/base/tooltip-icon-button.js +2 -2
- package/dist/ui/base/tooltip-icon-button.js.map +1 -1
- package/dist/ui/base/tooltip-icon-button.mjs.map +1 -1
- package/dist/ui/base/tooltip.js +1 -1
- package/dist/ui/branch-picker.d.ts +3 -3
- package/dist/ui/branch-picker.d.ts.map +1 -1
- package/dist/ui/branch-picker.js +5 -5
- package/dist/ui/branch-picker.js.map +1 -1
- package/dist/ui/branch-picker.mjs +1 -3
- package/dist/ui/branch-picker.mjs.map +1 -1
- package/dist/ui/composer.d.ts +4 -4
- package/dist/ui/composer.d.ts.map +1 -1
- package/dist/ui/composer.js +7 -7
- package/dist/ui/composer.js.map +1 -1
- package/dist/ui/composer.mjs +1 -3
- package/dist/ui/composer.mjs.map +1 -1
- package/dist/ui/content-part.js +2 -2
- package/dist/ui/edit-composer.js +4 -4
- package/dist/ui/index.d.ts +4 -2
- package/dist/ui/index.d.ts.map +1 -1
- package/dist/ui/index.js +19 -13
- package/dist/ui/index.js.map +1 -1
- package/dist/ui/index.mjs +18 -14
- package/dist/ui/index.mjs.map +1 -1
- package/dist/ui/thread-config.d.ts +13 -0
- package/dist/ui/thread-config.d.ts.map +1 -1
- package/dist/ui/thread-config.js +2 -2
- package/dist/ui/thread-config.js.map +1 -1
- package/dist/ui/thread-config.mjs.map +1 -1
- package/dist/ui/thread-list-item.d.ts +15 -0
- package/dist/ui/thread-list-item.d.ts.map +1 -0
- package/dist/ui/thread-list-item.js +94 -0
- package/dist/ui/thread-list-item.js.map +1 -0
- package/dist/ui/thread-list-item.mjs +64 -0
- package/dist/ui/thread-list-item.mjs.map +1 -0
- package/dist/ui/thread-list.d.ts +27 -0
- package/dist/ui/thread-list.d.ts.map +1 -0
- package/dist/ui/thread-list.js +91 -0
- package/dist/ui/thread-list.js.map +1 -0
- package/dist/ui/thread-list.mjs +61 -0
- package/dist/ui/thread-list.mjs.map +1 -0
- package/dist/ui/thread-welcome.js +5 -5
- package/dist/ui/thread.d.ts +2 -2
- package/dist/ui/thread.d.ts.map +1 -1
- package/dist/ui/thread.js +10 -10
- package/dist/ui/thread.js.map +1 -1
- package/dist/ui/thread.mjs +1 -3
- package/dist/ui/thread.mjs.map +1 -1
- package/dist/ui/user-action-bar.d.ts +2 -2
- package/dist/ui/user-action-bar.d.ts.map +1 -1
- package/dist/ui/user-action-bar.js +5 -5
- package/dist/ui/user-action-bar.js.map +1 -1
- package/dist/ui/user-action-bar.mjs +1 -3
- package/dist/ui/user-action-bar.mjs.map +1 -1
- package/dist/ui/user-message.js +6 -6
- package/dist/utils/ProxyConfigProvider.js +1 -1
- package/dist/utils/combined/createCombinedStore.d.ts.map +1 -1
- package/dist/utils/combined/useCombinedStore.d.ts.map +1 -1
- package/dist/utils/combined/useCombinedStore.js +1 -1
- package/dist/utils/hooks/useOnResizeContent.js +1 -1
- package/dist/utils/hooks/useOnScrollToBottom.js +1 -1
- package/dist/utils/smooth/SmoothContext.js +2 -2
- package/dist/utils/smooth/index.js +3 -3
- package/dist/utils/smooth/useSmooth.js +3 -3
- package/package.json +5 -5
- package/src/primitives/threadList/ThreadListItems.tsx +3 -3
- package/src/primitives/threadList/ThreadListNew.tsx +45 -0
- package/src/primitives/threadListItem/ThreadListItemRoot.tsx +1 -1
- package/src/styles/tailwindcss/thread.css +30 -0
- package/src/ui/assistant-action-bar.tsx +7 -10
- package/src/ui/assistant-modal.tsx +3 -6
- package/src/ui/attachment-ui.tsx +2 -5
- package/src/ui/base/index.ts +1 -4
- package/src/ui/base/tooltip-icon-button.tsx +7 -5
- package/src/ui/branch-picker.tsx +3 -6
- package/src/ui/composer.tsx +4 -7
- package/src/ui/index.ts +7 -3
- package/src/ui/thread-config.tsx +13 -0
- package/src/ui/thread-list-item.tsx +91 -0
- package/src/ui/thread-list.tsx +78 -0
- package/src/ui/thread.tsx +2 -5
- package/src/ui/user-action-bar.tsx +2 -5
- package/src/primitives/threadList/ThreadListNew.ts +0 -25
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"user-action-bar.d.ts","sourceRoot":"","sources":["../../src/ui/user-action-bar.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAc,KAAK,EAAE,EAAE,MAAM,OAAO,CAAC;AAG5C,OAAO,
|
|
1
|
+
{"version":3,"file":"user-action-bar.d.ts","sourceRoot":"","sources":["../../src/ui/user-action-bar.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAc,KAAK,EAAE,EAAE,MAAM,OAAO,CAAC;AAG5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAY/D,QAAA,MAAM,aAAa,EAAE,EAQpB,CAAC;AAkCF,QAAA,MAAM,OAAO;;;;;;;CAGZ,CAAC;wBAEsD,OAAO,aAAa,GAC1E,OAAO,OAAO;AADhB,wBACiB"}
|
|
@@ -26,11 +26,11 @@ __export(user_action_bar_exports, {
|
|
|
26
26
|
module.exports = __toCommonJS(user_action_bar_exports);
|
|
27
27
|
var import_react = require("react");
|
|
28
28
|
var import_lucide_react = require("lucide-react");
|
|
29
|
-
var import_tooltip_icon_button = require("./base/tooltip-icon-button.
|
|
30
|
-
var import_withDefaults = require("./utils/withDefaults.
|
|
31
|
-
var import_thread_config = require("./thread-config.
|
|
32
|
-
var import_context = require("../context/index.
|
|
33
|
-
var import_primitives = require("../primitives/index.
|
|
29
|
+
var import_tooltip_icon_button = require("./base/tooltip-icon-button.js");
|
|
30
|
+
var import_withDefaults = require("./utils/withDefaults.js");
|
|
31
|
+
var import_thread_config = require("./thread-config.js");
|
|
32
|
+
var import_context = require("../context/index.js");
|
|
33
|
+
var import_primitives = require("../primitives/index.js");
|
|
34
34
|
var import_jsx_runtime = require("react/jsx-runtime");
|
|
35
35
|
var useAllowEdit = (ensureCapability = false) => {
|
|
36
36
|
const { userMessage: { allowEdit = true } = {} } = (0, import_thread_config.useThreadConfig)();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/ui/user-action-bar.tsx"],"sourcesContent":["\"use client\";\n\nimport { forwardRef, type FC } from \"react\";\nimport { PencilIcon } from \"lucide-react\";\n\nimport {
|
|
1
|
+
{"version":3,"sources":["../../src/ui/user-action-bar.tsx"],"sourcesContent":["\"use client\";\n\nimport { forwardRef, type FC } from \"react\";\nimport { PencilIcon } from \"lucide-react\";\n\nimport { TooltipIconButton } from \"./base/tooltip-icon-button\";\nimport { withDefaults } from \"./utils/withDefaults\";\nimport { useThreadConfig } from \"./thread-config\";\nimport { useThread } from \"../context\";\nimport { ActionBarPrimitive } from \"../primitives\";\n\nconst useAllowEdit = (ensureCapability = false) => {\n const { userMessage: { allowEdit = true } = {} } = useThreadConfig();\n const editSupported = useThread((t) => t.capabilities.edit);\n return allowEdit && (!ensureCapability || editSupported);\n};\n\nconst UserActionBar: FC = () => {\n const allowEdit = useAllowEdit(true);\n if (!allowEdit) return null;\n return (\n <UserActionBarRoot hideWhenRunning autohide=\"not-last\">\n <UserActionBarEdit />\n </UserActionBarRoot>\n );\n};\n\nUserActionBar.displayName = \"UserActionBar\";\n\nconst UserActionBarRoot = withDefaults(ActionBarPrimitive.Root, {\n className: \"aui-user-action-bar-root\",\n});\n\nUserActionBarRoot.displayName = \"UserActionBarRoot\";\n\nnamespace UserActionBarEdit {\n export type Element = ActionBarPrimitive.Edit.Element;\n export type Props = Partial<TooltipIconButton.Props>;\n}\n\nconst UserActionBarEdit = forwardRef<\n UserActionBarEdit.Element,\n UserActionBarEdit.Props\n>((props, ref) => {\n const {\n strings: { userMessage: { edit: { tooltip = \"Edit\" } = {} } = {} } = {},\n } = useThreadConfig();\n const allowEdit = useAllowEdit();\n return (\n <ActionBarPrimitive.Edit disabled={!allowEdit} asChild>\n <TooltipIconButton tooltip={tooltip} {...props} ref={ref}>\n {props.children ?? <PencilIcon />}\n </TooltipIconButton>\n </ActionBarPrimitive.Edit>\n );\n});\n\nUserActionBarEdit.displayName = \"UserActionBarEdit\";\n\nconst exports = {\n Root: UserActionBarRoot,\n Edit: UserActionBarEdit,\n};\n\nexport default Object.assign(UserActionBar, exports) as typeof UserActionBar &\n typeof exports;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,mBAAoC;AACpC,0BAA2B;AAE3B,iCAAkC;AAClC,0BAA6B;AAC7B,2BAAgC;AAChC,qBAA0B;AAC1B,wBAAmC;AAa7B;AAXN,IAAM,eAAe,CAAC,mBAAmB,UAAU;AACjD,QAAM,EAAE,aAAa,EAAE,YAAY,KAAK,IAAI,CAAC,EAAE,QAAI,sCAAgB;AACnE,QAAM,oBAAgB,0BAAU,CAAC,MAAM,EAAE,aAAa,IAAI;AAC1D,SAAO,cAAc,CAAC,oBAAoB;AAC5C;AAEA,IAAM,gBAAoB,MAAM;AAC9B,QAAM,YAAY,aAAa,IAAI;AACnC,MAAI,CAAC,UAAW,QAAO;AACvB,SACE,4CAAC,qBAAkB,iBAAe,MAAC,UAAS,YAC1C,sDAAC,qBAAkB,GACrB;AAEJ;AAEA,cAAc,cAAc;AAE5B,IAAM,wBAAoB,kCAAa,qCAAmB,MAAM;AAAA,EAC9D,WAAW;AACb,CAAC;AAED,kBAAkB,cAAc;AAOhC,IAAM,wBAAoB,yBAGxB,CAAC,OAAO,QAAQ;AAChB,QAAM;AAAA,IACJ,SAAS,EAAE,aAAa,EAAE,MAAM,EAAE,UAAU,OAAO,IAAI,CAAC,EAAE,IAAI,CAAC,EAAE,IAAI,CAAC;AAAA,EACxE,QAAI,sCAAgB;AACpB,QAAM,YAAY,aAAa;AAC/B,SACE,4CAAC,qCAAmB,MAAnB,EAAwB,UAAU,CAAC,WAAW,SAAO,MACpD,sDAAC,gDAAkB,SAAmB,GAAG,OAAO,KAC7C,gBAAM,YAAY,4CAAC,kCAAW,GACjC,GACF;AAEJ,CAAC;AAED,kBAAkB,cAAc;AAEhC,IAAMA,WAAU;AAAA,EACd,MAAM;AAAA,EACN,MAAM;AACR;AAEA,IAAO,0BAAQ,OAAO,OAAO,eAAeA,QAAO;","names":["exports"]}
|
|
@@ -3,9 +3,7 @@
|
|
|
3
3
|
// src/ui/user-action-bar.tsx
|
|
4
4
|
import { forwardRef } from "react";
|
|
5
5
|
import { PencilIcon } from "lucide-react";
|
|
6
|
-
import {
|
|
7
|
-
TooltipIconButton
|
|
8
|
-
} from "./base/tooltip-icon-button.mjs";
|
|
6
|
+
import { TooltipIconButton } from "./base/tooltip-icon-button.mjs";
|
|
9
7
|
import { withDefaults } from "./utils/withDefaults.mjs";
|
|
10
8
|
import { useThreadConfig } from "./thread-config.mjs";
|
|
11
9
|
import { useThread } from "../context/index.mjs";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/ui/user-action-bar.tsx"],"sourcesContent":["\"use client\";\n\nimport { forwardRef, type FC } from \"react\";\nimport { PencilIcon } from \"lucide-react\";\n\nimport {
|
|
1
|
+
{"version":3,"sources":["../../src/ui/user-action-bar.tsx"],"sourcesContent":["\"use client\";\n\nimport { forwardRef, type FC } from \"react\";\nimport { PencilIcon } from \"lucide-react\";\n\nimport { TooltipIconButton } from \"./base/tooltip-icon-button\";\nimport { withDefaults } from \"./utils/withDefaults\";\nimport { useThreadConfig } from \"./thread-config\";\nimport { useThread } from \"../context\";\nimport { ActionBarPrimitive } from \"../primitives\";\n\nconst useAllowEdit = (ensureCapability = false) => {\n const { userMessage: { allowEdit = true } = {} } = useThreadConfig();\n const editSupported = useThread((t) => t.capabilities.edit);\n return allowEdit && (!ensureCapability || editSupported);\n};\n\nconst UserActionBar: FC = () => {\n const allowEdit = useAllowEdit(true);\n if (!allowEdit) return null;\n return (\n <UserActionBarRoot hideWhenRunning autohide=\"not-last\">\n <UserActionBarEdit />\n </UserActionBarRoot>\n );\n};\n\nUserActionBar.displayName = \"UserActionBar\";\n\nconst UserActionBarRoot = withDefaults(ActionBarPrimitive.Root, {\n className: \"aui-user-action-bar-root\",\n});\n\nUserActionBarRoot.displayName = \"UserActionBarRoot\";\n\nnamespace UserActionBarEdit {\n export type Element = ActionBarPrimitive.Edit.Element;\n export type Props = Partial<TooltipIconButton.Props>;\n}\n\nconst UserActionBarEdit = forwardRef<\n UserActionBarEdit.Element,\n UserActionBarEdit.Props\n>((props, ref) => {\n const {\n strings: { userMessage: { edit: { tooltip = \"Edit\" } = {} } = {} } = {},\n } = useThreadConfig();\n const allowEdit = useAllowEdit();\n return (\n <ActionBarPrimitive.Edit disabled={!allowEdit} asChild>\n <TooltipIconButton tooltip={tooltip} {...props} ref={ref}>\n {props.children ?? <PencilIcon />}\n </TooltipIconButton>\n </ActionBarPrimitive.Edit>\n );\n});\n\nUserActionBarEdit.displayName = \"UserActionBarEdit\";\n\nconst exports = {\n Root: UserActionBarRoot,\n Edit: UserActionBarEdit,\n};\n\nexport default Object.assign(UserActionBar, exports) as typeof UserActionBar &\n typeof exports;\n"],"mappings":";;;AAEA,SAAS,kBAA2B;AACpC,SAAS,kBAAkB;AAE3B,SAAS,yBAAyB;AAClC,SAAS,oBAAoB;AAC7B,SAAS,uBAAuB;AAChC,SAAS,iBAAiB;AAC1B,SAAS,0BAA0B;AAa7B;AAXN,IAAM,eAAe,CAAC,mBAAmB,UAAU;AACjD,QAAM,EAAE,aAAa,EAAE,YAAY,KAAK,IAAI,CAAC,EAAE,IAAI,gBAAgB;AACnE,QAAM,gBAAgB,UAAU,CAAC,MAAM,EAAE,aAAa,IAAI;AAC1D,SAAO,cAAc,CAAC,oBAAoB;AAC5C;AAEA,IAAM,gBAAoB,MAAM;AAC9B,QAAM,YAAY,aAAa,IAAI;AACnC,MAAI,CAAC,UAAW,QAAO;AACvB,SACE,oBAAC,qBAAkB,iBAAe,MAAC,UAAS,YAC1C,8BAAC,qBAAkB,GACrB;AAEJ;AAEA,cAAc,cAAc;AAE5B,IAAM,oBAAoB,aAAa,mBAAmB,MAAM;AAAA,EAC9D,WAAW;AACb,CAAC;AAED,kBAAkB,cAAc;AAOhC,IAAM,oBAAoB,WAGxB,CAAC,OAAO,QAAQ;AAChB,QAAM;AAAA,IACJ,SAAS,EAAE,aAAa,EAAE,MAAM,EAAE,UAAU,OAAO,IAAI,CAAC,EAAE,IAAI,CAAC,EAAE,IAAI,CAAC;AAAA,EACxE,IAAI,gBAAgB;AACpB,QAAM,YAAY,aAAa;AAC/B,SACE,oBAAC,mBAAmB,MAAnB,EAAwB,UAAU,CAAC,WAAW,SAAO,MACpD,8BAAC,qBAAkB,SAAmB,GAAG,OAAO,KAC7C,gBAAM,YAAY,oBAAC,cAAW,GACjC,GACF;AAEJ,CAAC;AAED,kBAAkB,cAAc;AAEhC,IAAM,UAAU;AAAA,EACd,MAAM;AAAA,EACN,MAAM;AACR;AAEA,IAAO,0BAAQ,OAAO,OAAO,eAAe,OAAO;","names":[]}
|
package/dist/ui/user-message.js
CHANGED
|
@@ -35,12 +35,12 @@ __export(user_message_exports, {
|
|
|
35
35
|
});
|
|
36
36
|
module.exports = __toCommonJS(user_message_exports);
|
|
37
37
|
var import_react = require("react");
|
|
38
|
-
var import_branch_picker = __toESM(require("./branch-picker.
|
|
39
|
-
var import_withDefaults = require("./utils/withDefaults.
|
|
40
|
-
var import_user_action_bar = __toESM(require("./user-action-bar.
|
|
41
|
-
var import_content_part = __toESM(require("./content-part.
|
|
42
|
-
var import_primitives = require("../primitives/index.
|
|
43
|
-
var import_attachment_ui = __toESM(require("./attachment-ui.
|
|
38
|
+
var import_branch_picker = __toESM(require("./branch-picker.js"));
|
|
39
|
+
var import_withDefaults = require("./utils/withDefaults.js");
|
|
40
|
+
var import_user_action_bar = __toESM(require("./user-action-bar.js"));
|
|
41
|
+
var import_content_part = __toESM(require("./content-part.js"));
|
|
42
|
+
var import_primitives = require("../primitives/index.js");
|
|
43
|
+
var import_attachment_ui = __toESM(require("./attachment-ui.js"));
|
|
44
44
|
var import_jsx_runtime = require("react/jsx-runtime");
|
|
45
45
|
var UserMessage = () => {
|
|
46
46
|
return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(UserMessageRoot, { children: [
|
|
@@ -23,7 +23,7 @@ __export(ProxyConfigProvider_exports, {
|
|
|
23
23
|
ProxyConfigProvider: () => ProxyConfigProvider
|
|
24
24
|
});
|
|
25
25
|
module.exports = __toCommonJS(ProxyConfigProvider_exports);
|
|
26
|
-
var import_ModelConfigTypes = require("../types/ModelConfigTypes.
|
|
26
|
+
var import_ModelConfigTypes = require("../types/ModelConfigTypes.js");
|
|
27
27
|
var ProxyConfigProvider = class {
|
|
28
28
|
_providers = /* @__PURE__ */ new Set();
|
|
29
29
|
getModelConfig() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createCombinedStore.d.ts","sourceRoot":"","sources":["../../../src/utils/combined/createCombinedStore.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAE3D,MAAM,MAAM,cAAc,CAAC,CAAC,IAAI;IAC9B,QAAQ,EAAE,MAAM,CAAC,CAAC;IAClB,SAAS,EAAE,CAAC,QAAQ,EAAE,MAAM,IAAI,KAAK,WAAW,CAAC;CAClD,CAAC;AAEF,MAAM,MAAM,gBAAgB,CAAC,CAAC,SAAS,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC;AAE9E,eAAO,MAAM,mBAAmB,GAAI,CAAC,SAAS,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,GACtE,
|
|
1
|
+
{"version":3,"file":"createCombinedStore.d.ts","sourceRoot":"","sources":["../../../src/utils/combined/createCombinedStore.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAE3D,MAAM,MAAM,cAAc,CAAC,CAAC,IAAI;IAC9B,QAAQ,EAAE,MAAM,CAAC,CAAC;IAClB,SAAS,EAAE,CAAC,QAAQ,EAAE,MAAM,IAAI,KAAK,WAAW,CAAC;CAClD,CAAC;AAEF,MAAM,MAAM,gBAAgB,CAAC,CAAC,SAAS,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC;AAE9E,eAAO,MAAM,mBAAmB,GAAI,CAAC,SAAS,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,GACtE,CAAC,IAAI,MAAM,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GACrC,gBAUmB,gBAAgB,CAAC,CAAC,EAAE,CAAC,CAAC,KAAG,CAM5C,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useCombinedStore.d.ts","sourceRoot":"","sources":["../../../src/utils/combined/useCombinedStore.ts"],"names":[],"mappings":"AACA,OAAO,EACL,KAAK,gBAAgB,EAErB,cAAc,EACf,MAAM,uBAAuB,CAAC;AAE/B,eAAO,MAAM,gBAAgB,GAAI,CAAC,SAAS,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,UAClD,GAAG,
|
|
1
|
+
{"version":3,"file":"useCombinedStore.d.ts","sourceRoot":"","sources":["../../../src/utils/combined/useCombinedStore.ts"],"names":[],"mappings":"AACA,OAAO,EACL,KAAK,gBAAgB,EAErB,cAAc,EACf,MAAM,uBAAuB,CAAC;AAE/B,eAAO,MAAM,gBAAgB,GAAI,CAAC,SAAS,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,UAClD,GAAG,CAAC,IAAI,MAAM,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAE,YACtC,gBAAgB,CAAC,CAAC,EAAE,CAAC,CAAC,KAC/B,CAIF,CAAC"}
|
|
@@ -24,7 +24,7 @@ __export(useCombinedStore_exports, {
|
|
|
24
24
|
});
|
|
25
25
|
module.exports = __toCommonJS(useCombinedStore_exports);
|
|
26
26
|
var import_react = require("react");
|
|
27
|
-
var import_createCombinedStore = require("./createCombinedStore.
|
|
27
|
+
var import_createCombinedStore = require("./createCombinedStore.js");
|
|
28
28
|
var useCombinedStore = (stores, selector) => {
|
|
29
29
|
const useCombined = (0, import_react.useMemo)(() => (0, import_createCombinedStore.createCombinedStore)(stores), stores);
|
|
30
30
|
return useCombined(selector);
|
|
@@ -25,7 +25,7 @@ __export(useOnResizeContent_exports, {
|
|
|
25
25
|
module.exports = __toCommonJS(useOnResizeContent_exports);
|
|
26
26
|
var import_react_use_callback_ref = require("@radix-ui/react-use-callback-ref");
|
|
27
27
|
var import_react = require("react");
|
|
28
|
-
var import_useManagedRef = require("./useManagedRef.
|
|
28
|
+
var import_useManagedRef = require("./useManagedRef.js");
|
|
29
29
|
var useOnResizeContent = (callback) => {
|
|
30
30
|
const callbackRef = (0, import_react_use_callback_ref.useCallbackRef)(callback);
|
|
31
31
|
const refCallback = (0, import_react.useCallback)(
|
|
@@ -25,7 +25,7 @@ __export(useOnScrollToBottom_exports, {
|
|
|
25
25
|
module.exports = __toCommonJS(useOnScrollToBottom_exports);
|
|
26
26
|
var import_react_use_callback_ref = require("@radix-ui/react-use-callback-ref");
|
|
27
27
|
var import_react = require("react");
|
|
28
|
-
var import_ThreadContext = require("../../context/react/ThreadContext.
|
|
28
|
+
var import_ThreadContext = require("../../context/react/ThreadContext.js");
|
|
29
29
|
var useOnScrollToBottom = (callback) => {
|
|
30
30
|
const callbackRef = (0, import_react_use_callback_ref.useCallbackRef)(callback);
|
|
31
31
|
const onScrollToBottom = (0, import_ThreadContext.useThreadViewport)((vp) => vp.onScrollToBottom);
|
|
@@ -28,8 +28,8 @@ __export(SmoothContext_exports, {
|
|
|
28
28
|
module.exports = __toCommonJS(SmoothContext_exports);
|
|
29
29
|
var import_react = require("react");
|
|
30
30
|
var import_zustand = require("zustand");
|
|
31
|
-
var import_ContentPartContext = require("../../context/react/ContentPartContext.
|
|
32
|
-
var import_createContextStoreHook = require("../../context/react/utils/createContextStoreHook.
|
|
31
|
+
var import_ContentPartContext = require("../../context/react/ContentPartContext.js");
|
|
32
|
+
var import_createContextStoreHook = require("../../context/react/utils/createContextStoreHook.js");
|
|
33
33
|
var import_jsx_runtime = require("react/jsx-runtime");
|
|
34
34
|
var SmoothContext = (0, import_react.createContext)(null);
|
|
35
35
|
var makeSmoothContext = (initialState) => {
|
|
@@ -25,9 +25,9 @@ __export(smooth_exports, {
|
|
|
25
25
|
withSmoothContextProvider: () => import_SmoothContext2.withSmoothContextProvider
|
|
26
26
|
});
|
|
27
27
|
module.exports = __toCommonJS(smooth_exports);
|
|
28
|
-
var import_useSmooth = require("./useSmooth.
|
|
29
|
-
var import_SmoothContext = require("./SmoothContext.
|
|
30
|
-
var import_SmoothContext2 = require("./SmoothContext.
|
|
28
|
+
var import_useSmooth = require("./useSmooth.js");
|
|
29
|
+
var import_SmoothContext = require("./SmoothContext.js");
|
|
30
|
+
var import_SmoothContext2 = require("./SmoothContext.js");
|
|
31
31
|
// Annotate the CommonJS export names for ESM import in node:
|
|
32
32
|
0 && (module.exports = {
|
|
33
33
|
useSmooth,
|
|
@@ -25,10 +25,10 @@ __export(useSmooth_exports, {
|
|
|
25
25
|
});
|
|
26
26
|
module.exports = __toCommonJS(useSmooth_exports);
|
|
27
27
|
var import_react = require("react");
|
|
28
|
-
var import_context = require("../../context/index.
|
|
28
|
+
var import_context = require("../../context/index.js");
|
|
29
29
|
var import_react_use_callback_ref = require("@radix-ui/react-use-callback-ref");
|
|
30
|
-
var import_SmoothContext = require("./SmoothContext.
|
|
31
|
-
var import_ReadonlyStore = require("../../context/ReadonlyStore.
|
|
30
|
+
var import_SmoothContext = require("./SmoothContext.js");
|
|
31
|
+
var import_ReadonlyStore = require("../../context/ReadonlyStore.js");
|
|
32
32
|
var TextStreamAnimator = class {
|
|
33
33
|
constructor(currentText, setText) {
|
|
34
34
|
this.currentText = currentText;
|
package/package.json
CHANGED
|
@@ -29,7 +29,7 @@
|
|
|
29
29
|
"conversational-ui",
|
|
30
30
|
"conversational-ai"
|
|
31
31
|
],
|
|
32
|
-
"version": "0.7.
|
|
32
|
+
"version": "0.7.9",
|
|
33
33
|
"license": "MIT",
|
|
34
34
|
"exports": {
|
|
35
35
|
".": {
|
|
@@ -65,7 +65,7 @@
|
|
|
65
65
|
],
|
|
66
66
|
"sideEffects": false,
|
|
67
67
|
"dependencies": {
|
|
68
|
-
"@ai-sdk/provider": "^1.0.
|
|
68
|
+
"@ai-sdk/provider": "^1.0.1",
|
|
69
69
|
"@radix-ui/primitive": "^1.1.0",
|
|
70
70
|
"@radix-ui/react-avatar": "^1.1.1",
|
|
71
71
|
"@radix-ui/react-compose-refs": "^1.1.0",
|
|
@@ -108,7 +108,7 @@
|
|
|
108
108
|
},
|
|
109
109
|
"devDependencies": {
|
|
110
110
|
"@types/json-schema": "^7.0.15",
|
|
111
|
-
"@types/node": "^22.9.
|
|
111
|
+
"@types/node": "^22.9.3",
|
|
112
112
|
"autoprefixer": "^10.4.20",
|
|
113
113
|
"esbuild-plugin-file-path-extensions": "^2.1.3",
|
|
114
114
|
"eslint": "^9",
|
|
@@ -121,8 +121,8 @@
|
|
|
121
121
|
"tsup": "8.3.5",
|
|
122
122
|
"tsx": "^4.19.2",
|
|
123
123
|
"@assistant-ui/tailwindcss-transformer": "0.1.0",
|
|
124
|
-
"@assistant-ui/
|
|
125
|
-
"@assistant-ui/
|
|
124
|
+
"@assistant-ui/tsbuildutils": "^0.0.0",
|
|
125
|
+
"@assistant-ui/tsconfig": "0.0.0"
|
|
126
126
|
},
|
|
127
127
|
"publishConfig": {
|
|
128
128
|
"access": "public",
|
|
@@ -4,7 +4,7 @@ import { ComponentType, FC, memo, useMemo } from "react";
|
|
|
4
4
|
import { ThreadListItemRuntimeProvider } from "../../context/providers/ThreadListItemRuntimeProvider";
|
|
5
5
|
import { useAssistantRuntime, useThreadList } from "../../context";
|
|
6
6
|
|
|
7
|
-
export namespace
|
|
7
|
+
export namespace ThreadListPrimitiveItems {
|
|
8
8
|
export type Props = {
|
|
9
9
|
archived?: boolean | undefined;
|
|
10
10
|
components: {
|
|
@@ -16,7 +16,7 @@ export namespace MessagePrimitiveContent {
|
|
|
16
16
|
type ThreadListItemProps = {
|
|
17
17
|
partIndex: number;
|
|
18
18
|
archived: boolean;
|
|
19
|
-
components:
|
|
19
|
+
components: ThreadListPrimitiveItems.Props["components"];
|
|
20
20
|
};
|
|
21
21
|
|
|
22
22
|
const ThreadListItemImpl: FC<ThreadListItemProps> = ({
|
|
@@ -52,7 +52,7 @@ const ThreadListItem = memo(
|
|
|
52
52
|
prev.components.ThreadListItem === next.components.ThreadListItem,
|
|
53
53
|
);
|
|
54
54
|
|
|
55
|
-
export const ThreadListPrimitiveItems: FC<
|
|
55
|
+
export const ThreadListPrimitiveItems: FC<ThreadListPrimitiveItems.Props> = ({
|
|
56
56
|
archived = false,
|
|
57
57
|
components,
|
|
58
58
|
}) => {
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
|
|
3
|
+
import {
|
|
4
|
+
ActionButtonElement,
|
|
5
|
+
ActionButtonProps,
|
|
6
|
+
} from "../../utils/createActionButton";
|
|
7
|
+
import { useAssistantRuntime, useThreadList } from "../../context";
|
|
8
|
+
import { forwardRef } from "react";
|
|
9
|
+
import { Primitive } from "@radix-ui/react-primitive";
|
|
10
|
+
import { composeEventHandlers } from "@radix-ui/primitive";
|
|
11
|
+
|
|
12
|
+
const useThreadListNew = () => {
|
|
13
|
+
const runtime = useAssistantRuntime();
|
|
14
|
+
return () => {
|
|
15
|
+
runtime.switchToNewThread();
|
|
16
|
+
};
|
|
17
|
+
};
|
|
18
|
+
|
|
19
|
+
export namespace ThreadListPrimitiveNew {
|
|
20
|
+
export type Element = ActionButtonElement;
|
|
21
|
+
export type Props = ActionButtonProps<typeof useThreadListNew>;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
export const ThreadListPrimitiveNew = forwardRef<
|
|
25
|
+
ThreadListPrimitiveNew.Element,
|
|
26
|
+
ThreadListPrimitiveNew.Props
|
|
27
|
+
>(({ onClick, disabled, ...props }, forwardedRef) => {
|
|
28
|
+
const isMain = useThreadList((t) => t.newThread === t.mainThreadId);
|
|
29
|
+
const callback = useThreadListNew();
|
|
30
|
+
|
|
31
|
+
return (
|
|
32
|
+
<Primitive.button
|
|
33
|
+
type="button"
|
|
34
|
+
{...(isMain ? { "data-active": "true", "aria-current": "true" } : null)}
|
|
35
|
+
{...props}
|
|
36
|
+
ref={forwardedRef}
|
|
37
|
+
disabled={disabled || !callback}
|
|
38
|
+
onClick={composeEventHandlers(onClick, () => {
|
|
39
|
+
callback?.();
|
|
40
|
+
})}
|
|
41
|
+
/>
|
|
42
|
+
);
|
|
43
|
+
});
|
|
44
|
+
|
|
45
|
+
ThreadListPrimitiveNew.displayName = "ThreadListPrimitive.New";
|
|
@@ -219,3 +219,33 @@
|
|
|
219
219
|
.aui-text-running::after {
|
|
220
220
|
@apply animate-pulse font-sans content-['\25CF'] ltr:ml-1 rtl:mr-1;
|
|
221
221
|
}
|
|
222
|
+
|
|
223
|
+
/* thread-list */
|
|
224
|
+
|
|
225
|
+
.aui-thread-list-root {
|
|
226
|
+
@apply flex flex-col items-stretch gap-1.5;
|
|
227
|
+
}
|
|
228
|
+
|
|
229
|
+
.aui-thread-list-item {
|
|
230
|
+
@apply data-[active]:bg-aui-muted hover:bg-aui-muted focus-visible:bg-aui-muted focus-visible:ring-aui-ring flex items-center gap-2 rounded-lg transition-all focus-visible:outline-none focus-visible:ring-2;
|
|
231
|
+
}
|
|
232
|
+
|
|
233
|
+
.aui-thread-list-new {
|
|
234
|
+
@apply data-[active]:bg-aui-muted hover:bg-aui-muted flex items-center justify-start gap-1 rounded-lg px-2.5 py-2 text-start;
|
|
235
|
+
}
|
|
236
|
+
|
|
237
|
+
.aui-thread-list-new > .lucide-plus {
|
|
238
|
+
@apply size-5;
|
|
239
|
+
}
|
|
240
|
+
|
|
241
|
+
.aui-thread-list-item-trigger {
|
|
242
|
+
@apply flex-grow px-3 py-2 text-start;
|
|
243
|
+
}
|
|
244
|
+
|
|
245
|
+
.aui-thread-list-item-title {
|
|
246
|
+
@apply text-sm;
|
|
247
|
+
}
|
|
248
|
+
|
|
249
|
+
.aui-thread-list-item-archive {
|
|
250
|
+
@apply hover:text-aui-primary text-aui-foreground ml-auto mr-3 size-4 p-0;
|
|
251
|
+
}
|
|
@@ -11,10 +11,7 @@ import {
|
|
|
11
11
|
ThumbsUpIcon,
|
|
12
12
|
} from "lucide-react";
|
|
13
13
|
import { ActionBarPrimitive, MessagePrimitive } from "../primitives";
|
|
14
|
-
import {
|
|
15
|
-
TooltipIconButton,
|
|
16
|
-
TooltipIconButtonProps,
|
|
17
|
-
} from "./base/tooltip-icon-button";
|
|
14
|
+
import { TooltipIconButton } from "./base/tooltip-icon-button";
|
|
18
15
|
import { withDefaults } from "./utils/withDefaults";
|
|
19
16
|
import { useThreadConfig } from "./thread-config";
|
|
20
17
|
import { useThread } from "../context";
|
|
@@ -91,7 +88,7 @@ AssistantActionBarRoot.displayName = "AssistantActionBarRoot";
|
|
|
91
88
|
|
|
92
89
|
namespace AssistantActionBarCopy {
|
|
93
90
|
export type Element = ActionBarPrimitive.Copy.Element;
|
|
94
|
-
export type Props = Partial<
|
|
91
|
+
export type Props = Partial<TooltipIconButton.Props> & {
|
|
95
92
|
copiedDuration?: number | undefined;
|
|
96
93
|
};
|
|
97
94
|
}
|
|
@@ -141,7 +138,7 @@ const AssistantActionBarSpeechControl: FC = () => {
|
|
|
141
138
|
|
|
142
139
|
namespace AssistantActionBarSpeak {
|
|
143
140
|
export type Element = ActionBarPrimitive.Speak.Element;
|
|
144
|
-
export type Props = Partial<
|
|
141
|
+
export type Props = Partial<TooltipIconButton.Props>;
|
|
145
142
|
}
|
|
146
143
|
|
|
147
144
|
const AssistantActionBarSpeak = forwardRef<
|
|
@@ -168,7 +165,7 @@ AssistantActionBarSpeak.displayName = "AssistantActionBarSpeak";
|
|
|
168
165
|
|
|
169
166
|
namespace AssistantActionBarStopSpeaking {
|
|
170
167
|
export type Element = ActionBarPrimitive.StopSpeaking.Element;
|
|
171
|
-
export type Props = Partial<
|
|
168
|
+
export type Props = Partial<TooltipIconButton.Props>;
|
|
172
169
|
}
|
|
173
170
|
|
|
174
171
|
const AssistantActionBarStopSpeaking = forwardRef<
|
|
@@ -197,7 +194,7 @@ AssistantActionBarStopSpeaking.displayName = "AssistantActionBarStopSpeaking";
|
|
|
197
194
|
|
|
198
195
|
namespace AssistantActionBarReload {
|
|
199
196
|
export type Element = ActionBarPrimitive.Reload.Element;
|
|
200
|
-
export type Props = Partial<
|
|
197
|
+
export type Props = Partial<TooltipIconButton.Props>;
|
|
201
198
|
}
|
|
202
199
|
|
|
203
200
|
const AssistantActionBarReload = forwardRef<
|
|
@@ -223,7 +220,7 @@ AssistantActionBarReload.displayName = "AssistantActionBarReload";
|
|
|
223
220
|
|
|
224
221
|
namespace AssistantActionBarFeedbackPositive {
|
|
225
222
|
export type Element = ActionBarPrimitive.FeedbackPositive.Element;
|
|
226
|
-
export type Props = Partial<
|
|
223
|
+
export type Props = Partial<TooltipIconButton.Props>;
|
|
227
224
|
}
|
|
228
225
|
|
|
229
226
|
const AssistantActionBarFeedbackPositive = forwardRef<
|
|
@@ -256,7 +253,7 @@ AssistantActionBarFeedbackPositive.displayName =
|
|
|
256
253
|
|
|
257
254
|
namespace AssistantActionBarFeedbackNegative {
|
|
258
255
|
export type Element = ActionBarPrimitive.FeedbackNegative.Element;
|
|
259
|
-
export type Props = Partial<
|
|
256
|
+
export type Props = Partial<TooltipIconButton.Props>;
|
|
260
257
|
}
|
|
261
258
|
|
|
262
259
|
const AssistantActionBarFeedbackNegative = forwardRef<
|
|
@@ -6,10 +6,7 @@ import { BotIcon, ChevronDownIcon } from "lucide-react";
|
|
|
6
6
|
import { AssistantModalPrimitive } from "../primitives";
|
|
7
7
|
import Thread from "./thread";
|
|
8
8
|
import { withDefaults } from "./utils/withDefaults";
|
|
9
|
-
import {
|
|
10
|
-
TooltipIconButton,
|
|
11
|
-
TooltipIconButtonProps,
|
|
12
|
-
} from "./base/tooltip-icon-button";
|
|
9
|
+
import { TooltipIconButton } from "./base/tooltip-icon-button";
|
|
13
10
|
import {
|
|
14
11
|
ThreadConfig,
|
|
15
12
|
ThreadConfigProvider,
|
|
@@ -50,7 +47,7 @@ AssistantModalRoot.displayName = "AssistantModalRoot";
|
|
|
50
47
|
|
|
51
48
|
namespace AssistantModalTrigger {
|
|
52
49
|
export type Element = HTMLButtonElement;
|
|
53
|
-
export type Props = Partial<
|
|
50
|
+
export type Props = Partial<TooltipIconButton.Props>;
|
|
54
51
|
}
|
|
55
52
|
|
|
56
53
|
const AssistantModalTrigger = forwardRef<
|
|
@@ -81,7 +78,7 @@ const ModalButtonStyled = withDefaults(TooltipIconButton, {
|
|
|
81
78
|
|
|
82
79
|
namespace AssistantModalButton {
|
|
83
80
|
export type Element = HTMLButtonElement;
|
|
84
|
-
export type Props = Partial<
|
|
81
|
+
export type Props = Partial<TooltipIconButton.Props> & {
|
|
85
82
|
"data-state"?: "open" | "closed";
|
|
86
83
|
};
|
|
87
84
|
}
|
package/src/ui/attachment-ui.tsx
CHANGED
|
@@ -10,10 +10,7 @@ import {
|
|
|
10
10
|
import { CircleXIcon, FileIcon } from "lucide-react";
|
|
11
11
|
import { withDefaults } from "./utils/withDefaults";
|
|
12
12
|
import { useThreadConfig } from "./thread-config";
|
|
13
|
-
import {
|
|
14
|
-
TooltipIconButton,
|
|
15
|
-
TooltipIconButtonProps,
|
|
16
|
-
} from "./base/tooltip-icon-button";
|
|
13
|
+
import { TooltipIconButton } from "./base/tooltip-icon-button";
|
|
17
14
|
import { AttachmentPrimitive } from "../primitives";
|
|
18
15
|
import { useAttachment } from "../context/react/AttachmentContext";
|
|
19
16
|
import {
|
|
@@ -169,7 +166,7 @@ AttachmentUI.displayName = "Attachment";
|
|
|
169
166
|
|
|
170
167
|
namespace AttachmentRemove {
|
|
171
168
|
export type Element = HTMLButtonElement;
|
|
172
|
-
export type Props = Partial<
|
|
169
|
+
export type Props = Partial<TooltipIconButton.Props>;
|
|
173
170
|
}
|
|
174
171
|
|
|
175
172
|
const AttachmentRemove = forwardRef<
|
package/src/ui/base/index.ts
CHANGED
|
@@ -10,9 +10,6 @@ export { Button, buttonVariants, type ButtonProps } from "./button";
|
|
|
10
10
|
|
|
11
11
|
export { Tooltip, TooltipContent, TooltipTrigger } from "./tooltip";
|
|
12
12
|
|
|
13
|
-
export {
|
|
14
|
-
TooltipIconButton,
|
|
15
|
-
type TooltipIconButtonProps,
|
|
16
|
-
} from "./tooltip-icon-button";
|
|
13
|
+
export { TooltipIconButton } from "./tooltip-icon-button";
|
|
17
14
|
|
|
18
15
|
export { CircleStopIcon } from "./CircleStopIcon";
|
|
@@ -4,14 +4,16 @@ import { forwardRef } from "react";
|
|
|
4
4
|
import { Tooltip, TooltipContent, TooltipTrigger } from "./tooltip";
|
|
5
5
|
import { Button, ButtonProps } from "./button";
|
|
6
6
|
|
|
7
|
-
export
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
7
|
+
export namespace TooltipIconButton {
|
|
8
|
+
export type Props = ButtonProps & {
|
|
9
|
+
tooltip: string;
|
|
10
|
+
side?: "top" | "bottom" | "left" | "right";
|
|
11
|
+
};
|
|
12
|
+
}
|
|
11
13
|
|
|
12
14
|
export const TooltipIconButton = forwardRef<
|
|
13
15
|
HTMLButtonElement,
|
|
14
|
-
|
|
16
|
+
TooltipIconButton.Props
|
|
15
17
|
>(({ children, tooltip, side = "bottom", ...rest }, ref) => {
|
|
16
18
|
return (
|
|
17
19
|
<Tooltip>
|
package/src/ui/branch-picker.tsx
CHANGED
|
@@ -3,10 +3,7 @@
|
|
|
3
3
|
import { ComponentPropsWithoutRef, forwardRef, type FC } from "react";
|
|
4
4
|
import { ChevronLeftIcon, ChevronRightIcon } from "lucide-react";
|
|
5
5
|
|
|
6
|
-
import {
|
|
7
|
-
TooltipIconButton,
|
|
8
|
-
TooltipIconButtonProps,
|
|
9
|
-
} from "./base/tooltip-icon-button";
|
|
6
|
+
import { TooltipIconButton } from "./base/tooltip-icon-button";
|
|
10
7
|
import { withDefaults } from "./utils/withDefaults";
|
|
11
8
|
import { useThreadConfig } from "./thread-config";
|
|
12
9
|
import { BranchPickerPrimitive } from "../primitives";
|
|
@@ -40,7 +37,7 @@ BranchPickerRoot.displayName = "BranchPickerRoot";
|
|
|
40
37
|
|
|
41
38
|
namespace BranchPickerPrevious {
|
|
42
39
|
export type Element = BranchPickerPrimitive.Previous.Element;
|
|
43
|
-
export type Props = Partial<
|
|
40
|
+
export type Props = Partial<TooltipIconButton.Props>;
|
|
44
41
|
}
|
|
45
42
|
|
|
46
43
|
const BranchPickerPrevious = forwardRef<
|
|
@@ -88,7 +85,7 @@ BranchPickerState.displayName = "BranchPickerState";
|
|
|
88
85
|
|
|
89
86
|
namespace BranchPickerNext {
|
|
90
87
|
export type Element = BranchPickerPrimitive.Next.Element;
|
|
91
|
-
export type Props = Partial<
|
|
88
|
+
export type Props = Partial<TooltipIconButton.Props>;
|
|
92
89
|
}
|
|
93
90
|
|
|
94
91
|
const BranchPickerNext = forwardRef<
|
package/src/ui/composer.tsx
CHANGED
|
@@ -5,10 +5,7 @@ import { ComponentPropsWithoutRef, forwardRef, type FC } from "react";
|
|
|
5
5
|
import { PaperclipIcon, SendHorizontalIcon } from "lucide-react";
|
|
6
6
|
import { withDefaults } from "./utils/withDefaults";
|
|
7
7
|
import { useThreadConfig } from "./thread-config";
|
|
8
|
-
import {
|
|
9
|
-
TooltipIconButton,
|
|
10
|
-
TooltipIconButtonProps,
|
|
11
|
-
} from "./base/tooltip-icon-button";
|
|
8
|
+
import { TooltipIconButton } from "./base/tooltip-icon-button";
|
|
12
9
|
import { CircleStopIcon } from "./base/CircleStopIcon";
|
|
13
10
|
import { ComposerPrimitive, ThreadPrimitive } from "../primitives";
|
|
14
11
|
import { useThread } from "../context/react/ThreadContext";
|
|
@@ -94,7 +91,7 @@ const ComposerAttachButton = withDefaults(TooltipIconButton, {
|
|
|
94
91
|
|
|
95
92
|
namespace ComposerAddAttachment {
|
|
96
93
|
export type Element = HTMLButtonElement;
|
|
97
|
-
export type Props = Partial<
|
|
94
|
+
export type Props = Partial<TooltipIconButton.Props>;
|
|
98
95
|
}
|
|
99
96
|
|
|
100
97
|
const ComposerAddAttachment = forwardRef<
|
|
@@ -152,7 +149,7 @@ const ComposerSendButton = withDefaults(TooltipIconButton, {
|
|
|
152
149
|
|
|
153
150
|
namespace ComposerSend {
|
|
154
151
|
export type Element = HTMLButtonElement;
|
|
155
|
-
export type Props = Partial<
|
|
152
|
+
export type Props = Partial<TooltipIconButton.Props>;
|
|
156
153
|
}
|
|
157
154
|
|
|
158
155
|
const ComposerSend = forwardRef<ComposerSend.Element, ComposerSend.Props>(
|
|
@@ -179,7 +176,7 @@ const ComposerCancelButton = withDefaults(TooltipIconButton, {
|
|
|
179
176
|
|
|
180
177
|
namespace ComposerCancel {
|
|
181
178
|
export type Element = HTMLButtonElement;
|
|
182
|
-
export type Props = Partial<
|
|
179
|
+
export type Props = Partial<TooltipIconButton.Props>;
|
|
183
180
|
}
|
|
184
181
|
|
|
185
182
|
const ComposerCancel = forwardRef<ComposerCancel.Element, ComposerCancel.Props>(
|
package/src/ui/index.ts
CHANGED
|
@@ -20,6 +20,8 @@ export { default as BranchPicker } from "./branch-picker";
|
|
|
20
20
|
|
|
21
21
|
export { default as Composer } from "./composer";
|
|
22
22
|
|
|
23
|
+
export { default as ContentPart } from "./content-part";
|
|
24
|
+
|
|
23
25
|
export {
|
|
24
26
|
default as AttachmentUI, // TODO name collision with Attachment
|
|
25
27
|
} from "./attachment-ui";
|
|
@@ -28,10 +30,12 @@ export { default as EditComposer } from "./edit-composer";
|
|
|
28
30
|
|
|
29
31
|
export { default as Thread } from "./thread";
|
|
30
32
|
|
|
31
|
-
export { default as
|
|
33
|
+
export { default as ThreadList } from "./thread-list";
|
|
32
34
|
|
|
33
|
-
export { default as
|
|
35
|
+
export { default as ThreadListItem } from "./thread-list-item";
|
|
34
36
|
|
|
35
37
|
export { default as ThreadWelcome } from "./thread-welcome";
|
|
36
38
|
|
|
37
|
-
export { default as
|
|
39
|
+
export { default as UserMessage } from "./user-message";
|
|
40
|
+
|
|
41
|
+
export { default as UserActionBar } from "./user-action-bar";
|
package/src/ui/thread-config.tsx
CHANGED
|
@@ -65,6 +65,19 @@ export type StringsConfig = {
|
|
|
65
65
|
};
|
|
66
66
|
};
|
|
67
67
|
};
|
|
68
|
+
threadList?: {
|
|
69
|
+
new?: {
|
|
70
|
+
label?: string | undefined;
|
|
71
|
+
};
|
|
72
|
+
item?: {
|
|
73
|
+
title?: {
|
|
74
|
+
fallback?: string | undefined;
|
|
75
|
+
};
|
|
76
|
+
archive?: {
|
|
77
|
+
tooltip?: string | undefined;
|
|
78
|
+
};
|
|
79
|
+
};
|
|
80
|
+
};
|
|
68
81
|
thread?: {
|
|
69
82
|
scrollToBottom?: {
|
|
70
83
|
tooltip?: string | undefined;
|