@assistant-ui/react 0.12.15 → 0.12.17
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/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/internal.d.ts +1 -1
- package/dist/internal.d.ts.map +1 -1
- package/dist/internal.js +1 -1
- package/dist/internal.js.map +1 -1
- package/dist/legacy-runtime/cloud/AssistantCloudThreadHistoryAdapter.d.ts +1 -4
- package/dist/legacy-runtime/cloud/AssistantCloudThreadHistoryAdapter.d.ts.map +1 -1
- package/dist/legacy-runtime/cloud/AssistantCloudThreadHistoryAdapter.js +2 -527
- package/dist/legacy-runtime/cloud/AssistantCloudThreadHistoryAdapter.js.map +1 -1
- package/dist/legacy-runtime/hooks/AttachmentContext.d.ts +96 -96
- package/dist/legacy-runtime/runtime-cores/adapters/RuntimeAdapterProvider.d.ts +1 -16
- package/dist/legacy-runtime/runtime-cores/adapters/RuntimeAdapterProvider.d.ts.map +1 -1
- package/dist/legacy-runtime/runtime-cores/adapters/RuntimeAdapterProvider.js +1 -14
- package/dist/legacy-runtime/runtime-cores/adapters/RuntimeAdapterProvider.js.map +1 -1
- package/dist/legacy-runtime/runtime-cores/adapters/attachment/CloudFileAttachmentAdapter.d.ts +1 -13
- package/dist/legacy-runtime/runtime-cores/adapters/attachment/CloudFileAttachmentAdapter.d.ts.map +1 -1
- package/dist/legacy-runtime/runtime-cores/adapters/attachment/CloudFileAttachmentAdapter.js +2 -82
- package/dist/legacy-runtime/runtime-cores/adapters/attachment/CloudFileAttachmentAdapter.js.map +1 -1
- package/dist/legacy-runtime/runtime-cores/assistant-transport/useToolInvocations.d.ts +1 -23
- package/dist/legacy-runtime/runtime-cores/assistant-transport/useToolInvocations.d.ts.map +1 -1
- package/dist/legacy-runtime/runtime-cores/assistant-transport/useToolInvocations.js +1 -410
- package/dist/legacy-runtime/runtime-cores/assistant-transport/useToolInvocations.js.map +1 -1
- package/dist/legacy-runtime/runtime-cores/external-store/createMessageConverter.d.ts +1 -16
- package/dist/legacy-runtime/runtime-cores/external-store/createMessageConverter.d.ts.map +1 -1
- package/dist/legacy-runtime/runtime-cores/external-store/createMessageConverter.js +1 -48
- package/dist/legacy-runtime/runtime-cores/external-store/createMessageConverter.js.map +1 -1
- package/dist/legacy-runtime/runtime-cores/external-store/external-message-converter.d.ts +1 -33
- 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 +1 -307
- package/dist/legacy-runtime/runtime-cores/external-store/external-message-converter.js.map +1 -1
- package/dist/legacy-runtime/runtime-cores/external-store/useExternalStoreRuntime.d.ts +1 -3
- package/dist/legacy-runtime/runtime-cores/external-store/useExternalStoreRuntime.d.ts.map +1 -1
- package/dist/legacy-runtime/runtime-cores/external-store/useExternalStoreRuntime.js +1 -17
- package/dist/legacy-runtime/runtime-cores/external-store/useExternalStoreRuntime.js.map +1 -1
- package/dist/legacy-runtime/runtime-cores/local/LocalRuntimeOptions.d.ts +2 -26
- package/dist/legacy-runtime/runtime-cores/local/LocalRuntimeOptions.d.ts.map +1 -1
- package/dist/legacy-runtime/runtime-cores/local/LocalRuntimeOptions.js +1 -13
- package/dist/legacy-runtime/runtime-cores/local/LocalRuntimeOptions.js.map +1 -1
- package/dist/legacy-runtime/runtime-cores/local/useLocalRuntime.d.ts +1 -3
- package/dist/legacy-runtime/runtime-cores/local/useLocalRuntime.d.ts.map +1 -1
- package/dist/legacy-runtime/runtime-cores/local/useLocalRuntime.js +1 -51
- package/dist/legacy-runtime/runtime-cores/local/useLocalRuntime.js.map +1 -1
- package/dist/legacy-runtime/runtime-cores/remote-thread-list/RemoteThreadListHookInstanceManager.d.ts +1 -96
- package/dist/legacy-runtime/runtime-cores/remote-thread-list/RemoteThreadListHookInstanceManager.d.ts.map +1 -1
- package/dist/legacy-runtime/runtime-cores/remote-thread-list/RemoteThreadListHookInstanceManager.js +1 -110
- package/dist/legacy-runtime/runtime-cores/remote-thread-list/RemoteThreadListHookInstanceManager.js.map +1 -1
- package/dist/legacy-runtime/runtime-cores/remote-thread-list/RemoteThreadListThreadListRuntimeCore.d.ts +1 -112
- package/dist/legacy-runtime/runtime-cores/remote-thread-list/RemoteThreadListThreadListRuntimeCore.d.ts.map +1 -1
- package/dist/legacy-runtime/runtime-cores/remote-thread-list/RemoteThreadListThreadListRuntimeCore.js +1 -439
- package/dist/legacy-runtime/runtime-cores/remote-thread-list/RemoteThreadListThreadListRuntimeCore.js.map +1 -1
- package/dist/legacy-runtime/runtime-cores/remote-thread-list/adapter/cloud.d.ts +1 -12
- package/dist/legacy-runtime/runtime-cores/remote-thread-list/adapter/cloud.d.ts.map +1 -1
- package/dist/legacy-runtime/runtime-cores/remote-thread-list/adapter/cloud.js +1 -102
- package/dist/legacy-runtime/runtime-cores/remote-thread-list/adapter/cloud.js.map +1 -1
- package/dist/legacy-runtime/runtime-cores/remote-thread-list/useRemoteThreadListRuntime.d.ts +1 -3
- 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 +1 -46
- package/dist/legacy-runtime/runtime-cores/remote-thread-list/useRemoteThreadListRuntime.js.map +1 -1
- package/dist/primitives/actionBar/ActionBarCopy.d.ts.map +1 -1
- package/dist/primitives/actionBar/ActionBarCopy.js +7 -20
- package/dist/primitives/actionBar/ActionBarCopy.js.map +1 -1
- package/dist/primitives/actionBar/ActionBarEdit.d.ts.map +1 -1
- package/dist/primitives/actionBar/ActionBarEdit.js +3 -8
- package/dist/primitives/actionBar/ActionBarEdit.js.map +1 -1
- package/dist/primitives/actionBar/ActionBarFeedbackNegative.d.ts.map +1 -1
- package/dist/primitives/actionBar/ActionBarFeedbackNegative.js +4 -7
- package/dist/primitives/actionBar/ActionBarFeedbackNegative.js.map +1 -1
- package/dist/primitives/actionBar/ActionBarFeedbackPositive.d.ts.map +1 -1
- package/dist/primitives/actionBar/ActionBarFeedbackPositive.js +5 -7
- package/dist/primitives/actionBar/ActionBarFeedbackPositive.js.map +1 -1
- package/dist/primitives/actionBar/ActionBarReload.d.ts.map +1 -1
- package/dist/primitives/actionBar/ActionBarReload.js +3 -10
- package/dist/primitives/actionBar/ActionBarReload.js.map +1 -1
- package/dist/primitives/composer/ComposerAddAttachment.d.ts.map +1 -1
- package/dist/primitives/composer/ComposerAddAttachment.js +5 -4
- package/dist/primitives/composer/ComposerAddAttachment.js.map +1 -1
- package/dist/primitives/composer/ComposerCancel.d.ts.map +1 -1
- package/dist/primitives/composer/ComposerCancel.js +3 -8
- package/dist/primitives/composer/ComposerCancel.js.map +1 -1
- package/dist/primitives/composer/ComposerSend.d.ts.map +1 -1
- package/dist/primitives/composer/ComposerSend.js +3 -8
- package/dist/primitives/composer/ComposerSend.js.map +1 -1
- package/dist/utils/createActionButton.js +1 -1
- package/dist/utils/createActionButton.js.map +1 -1
- package/package.json +3 -3
- package/src/index.ts +1 -1
- package/src/internal.ts +1 -1
- package/src/legacy-runtime/cloud/AssistantCloudThreadHistoryAdapter.ts +2 -784
- package/src/legacy-runtime/runtime-cores/adapters/RuntimeAdapterProvider.tsx +5 -43
- package/src/legacy-runtime/runtime-cores/adapters/attachment/CloudFileAttachmentAdapter.ts +2 -100
- package/src/legacy-runtime/runtime-cores/assistant-transport/useToolInvocations.ts +4 -580
- package/src/legacy-runtime/runtime-cores/external-store/createMessageConverter.ts +1 -76
- package/src/legacy-runtime/runtime-cores/external-store/external-message-converter.ts +4 -483
- package/src/legacy-runtime/runtime-cores/external-store/useExternalStoreRuntime.ts +1 -27
- package/src/legacy-runtime/runtime-cores/local/LocalRuntimeOptions.ts +2 -35
- package/src/legacy-runtime/runtime-cores/local/useLocalRuntime.ts +1 -67
- package/src/legacy-runtime/runtime-cores/remote-thread-list/RemoteThreadListHookInstanceManager.tsx +1 -178
- package/src/legacy-runtime/runtime-cores/remote-thread-list/RemoteThreadListThreadListRuntimeCore.tsx +1 -529
- package/src/legacy-runtime/runtime-cores/remote-thread-list/adapter/cloud.tsx +1 -152
- package/src/legacy-runtime/runtime-cores/remote-thread-list/useRemoteThreadListRuntime.ts +1 -80
- package/src/primitives/actionBar/ActionBarCopy.tsx +7 -26
- package/src/primitives/actionBar/ActionBarEdit.ts +3 -10
- package/src/primitives/actionBar/ActionBarFeedbackNegative.tsx +4 -9
- package/src/primitives/actionBar/ActionBarFeedbackPositive.tsx +5 -9
- package/src/primitives/actionBar/ActionBarReload.ts +3 -16
- package/src/primitives/composer/ComposerAddAttachment.ts +5 -4
- package/src/primitives/composer/ComposerCancel.ts +3 -10
- package/src/primitives/composer/ComposerSend.ts +3 -13
- package/src/tests/BaseComposerRuntimeCore.test.ts +2 -3
- package/src/utils/createActionButton.tsx +1 -1
|
@@ -1,48 +1,3 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
|
|
3
|
-
import { BaseAssistantRuntimeCore, AssistantRuntimeImpl, } from "@assistant-ui/core/internal";
|
|
4
|
-
import { RemoteThreadListThreadListRuntimeCore } from "./RemoteThreadListThreadListRuntimeCore.js";
|
|
5
|
-
import { useAui } from "@assistant-ui/store";
|
|
6
|
-
class RemoteThreadListRuntimeCore extends BaseAssistantRuntimeCore {
|
|
7
|
-
threads;
|
|
8
|
-
constructor(options) {
|
|
9
|
-
super();
|
|
10
|
-
this.threads = new RemoteThreadListThreadListRuntimeCore(options, this._contextProvider);
|
|
11
|
-
}
|
|
12
|
-
get RenderComponent() {
|
|
13
|
-
return this.threads.__internal_RenderComponent;
|
|
14
|
-
}
|
|
15
|
-
}
|
|
16
|
-
const useRemoteThreadListRuntimeImpl = (options) => {
|
|
17
|
-
const [runtime] = useState(() => new RemoteThreadListRuntimeCore(options));
|
|
18
|
-
useEffect(() => {
|
|
19
|
-
runtime.threads.__internal_setOptions(options);
|
|
20
|
-
runtime.threads.__internal_load();
|
|
21
|
-
}, [runtime, options]);
|
|
22
|
-
return useMemo(() => new AssistantRuntimeImpl(runtime), [runtime]);
|
|
23
|
-
};
|
|
24
|
-
export const useRemoteThreadListRuntime = (options) => {
|
|
25
|
-
const runtimeHookRef = useRef(options.runtimeHook);
|
|
26
|
-
runtimeHookRef.current = options.runtimeHook;
|
|
27
|
-
const stableRuntimeHook = useCallback(() => {
|
|
28
|
-
return runtimeHookRef.current();
|
|
29
|
-
}, []);
|
|
30
|
-
const stableOptions = useMemo(() => ({
|
|
31
|
-
adapter: options.adapter,
|
|
32
|
-
allowNesting: options.allowNesting,
|
|
33
|
-
runtimeHook: stableRuntimeHook,
|
|
34
|
-
}), [options.adapter, options.allowNesting, stableRuntimeHook]);
|
|
35
|
-
const aui = useAui();
|
|
36
|
-
const isNested = aui.threadListItem.source !== null;
|
|
37
|
-
if (isNested) {
|
|
38
|
-
if (!stableOptions.allowNesting) {
|
|
39
|
-
throw new Error("useRemoteThreadListRuntime cannot be nested inside another RemoteThreadListRuntime. " +
|
|
40
|
-
"Set allowNesting: true to allow nesting (the inner runtime will become a no-op).");
|
|
41
|
-
}
|
|
42
|
-
// If allowNesting is true and already inside a thread list context,
|
|
43
|
-
// just call the runtimeHook directly (no-op behavior)
|
|
44
|
-
return stableRuntimeHook();
|
|
45
|
-
}
|
|
46
|
-
return useRemoteThreadListRuntimeImpl(stableOptions);
|
|
47
|
-
};
|
|
2
|
+
export { useRemoteThreadListRuntime } from "@assistant-ui/core/react";
|
|
48
3
|
//# sourceMappingURL=useRemoteThreadListRuntime.js.map
|
package/dist/legacy-runtime/runtime-cores/remote-thread-list/useRemoteThreadListRuntime.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useRemoteThreadListRuntime.js","sourceRoot":"","sources":["../../../../src/legacy-runtime/runtime-cores/remote-thread-list/useRemoteThreadListRuntime.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"useRemoteThreadListRuntime.js","sourceRoot":"","sources":["../../../../src/legacy-runtime/runtime-cores/remote-thread-list/useRemoteThreadListRuntime.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,EAAE,0BAA0B,EAAE,MAAM,0BAA0B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ActionBarCopy.d.ts","sourceRoot":"","sources":["../../../src/primitives/actionBar/ActionBarCopy.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,iBAAiB,EAAE,0CAAuC;AAMnE;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,QAAA,MAAM,yBAAyB,GAAI,sBAEhC;IACD,cAAc,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAChC,
|
|
1
|
+
{"version":3,"file":"ActionBarCopy.d.ts","sourceRoot":"","sources":["../../../src/primitives/actionBar/ActionBarCopy.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,iBAAiB,EAAE,0CAAuC;AAMnE;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,QAAA,MAAM,yBAAyB,GAAI,sBAEhC;IACD,cAAc,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAChC,wBAOL,CAAC;AAEF,yBAAiB,sBAAsB,CAAC;IACtC,KAAY,OAAO,GAAG,iBAAiB,CAAC;IACxC;;;OAGG;IACH,KAAY,KAAK,GAAG,iBAAiB,CAAC,OAAO,yBAAyB,CAAC,CAAC;CACzE;AAED;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,sBAAsB;;;qBAjChB,MAAM,GAAG,SAAS;qDAmDnC,CAAC"}
|
|
@@ -3,8 +3,8 @@ import { jsx as _jsx } from "react/jsx-runtime";
|
|
|
3
3
|
import { forwardRef } from "react";
|
|
4
4
|
import { composeEventHandlers } from "@radix-ui/primitive";
|
|
5
5
|
import { Primitive } from "@radix-ui/react-primitive";
|
|
6
|
-
import {
|
|
7
|
-
import { useAuiState
|
|
6
|
+
import { useActionBarCopy } from "@assistant-ui/core/react";
|
|
7
|
+
import { useAuiState } from "@assistant-ui/store";
|
|
8
8
|
/**
|
|
9
9
|
* Hook that provides copy functionality for action bar buttons.
|
|
10
10
|
*
|
|
@@ -30,26 +30,13 @@ import { useAuiState, useAui } from "@assistant-ui/store";
|
|
|
30
30
|
* ```
|
|
31
31
|
*/
|
|
32
32
|
const useActionBarPrimitiveCopy = ({ copiedDuration = 3000, } = {}) => {
|
|
33
|
-
const
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
s.message.status?.type !== "running") &&
|
|
37
|
-
s.message.parts.some((c) => c.type === "text" && c.text.length > 0));
|
|
33
|
+
const { copy, disabled } = useActionBarCopy({
|
|
34
|
+
copiedDuration,
|
|
35
|
+
copyToClipboard: (text) => navigator.clipboard.writeText(text),
|
|
38
36
|
});
|
|
39
|
-
|
|
40
|
-
const composerValue = useAuiState((s) => s.composer.text);
|
|
41
|
-
const callback = useCallback(() => {
|
|
42
|
-
const valueToCopy = isEditing ? composerValue : aui.message().getCopyText();
|
|
43
|
-
if (!valueToCopy)
|
|
44
|
-
return;
|
|
45
|
-
navigator.clipboard.writeText(valueToCopy).then(() => {
|
|
46
|
-
aui.message().setIsCopied(true);
|
|
47
|
-
setTimeout(() => aui.message().setIsCopied(false), copiedDuration);
|
|
48
|
-
});
|
|
49
|
-
}, [aui, isEditing, composerValue, copiedDuration]);
|
|
50
|
-
if (!hasCopyableContent)
|
|
37
|
+
if (disabled)
|
|
51
38
|
return null;
|
|
52
|
-
return
|
|
39
|
+
return copy;
|
|
53
40
|
};
|
|
54
41
|
/**
|
|
55
42
|
* A button component that copies message content to the clipboard.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ActionBarCopy.js","sourceRoot":"","sources":["../../../src/primitives/actionBar/ActionBarCopy.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAEnC,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AACtD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"ActionBarCopy.js","sourceRoot":"","sources":["../../../src/primitives/actionBar/ActionBarCopy.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAEnC,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAElD;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,yBAAyB,GAAG,CAAC,EACjC,cAAc,GAAG,IAAI,MAGnB,EAAE,EAAE,EAAE;IACR,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,gBAAgB,CAAC;QAC1C,cAAc;QACd,eAAe,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC;KAC/D,CAAC,CAAC;IACH,IAAI,QAAQ;QAAE,OAAO,IAAI,CAAC;IAC1B,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAWF;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,UAAU,CAG9C,CAAC,EAAE,cAAc,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,KAAK,EAAE,EAAE,YAAY,EAAE,EAAE;IAClE,MAAM,QAAQ,GAAG,WAAW,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACxD,MAAM,QAAQ,GAAG,yBAAyB,CAAC,EAAE,cAAc,EAAE,CAAC,CAAC;IAC/D,OAAO,CACL,KAAC,SAAS,CAAC,MAAM,IACf,IAAI,EAAC,QAAQ,KACT,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,KAC3C,KAAK,EACT,GAAG,EAAE,YAAY,EACjB,QAAQ,EAAE,QAAQ,IAAI,CAAC,QAAQ,EAC/B,OAAO,EAAE,oBAAoB,CAAC,OAAO,EAAE,GAAG,EAAE;YAC1C,QAAQ,EAAE,EAAE,CAAC;QACf,CAAC,CAAC,GACF,CACH,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,sBAAsB,CAAC,WAAW,GAAG,yBAAyB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ActionBarEdit.d.ts","sourceRoot":"","sources":["../../../src/primitives/actionBar/ActionBarEdit.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,mBAAmB,EACnB,iBAAiB,EAElB,0CAAuC;
|
|
1
|
+
{"version":3,"file":"ActionBarEdit.d.ts","sourceRoot":"","sources":["../../../src/primitives/actionBar/ActionBarEdit.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,mBAAmB,EACnB,iBAAiB,EAElB,0CAAuC;AAGxC;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,QAAA,MAAM,gBAAgB,2BAIrB,CAAC;AAEF,yBAAiB,sBAAsB,CAAC;IACtC,KAAY,OAAO,GAAG,mBAAmB,CAAC;IAC1C;;;OAGG;IACH,KAAY,KAAK,GAAG,iBAAiB,CAAC,OAAO,gBAAgB,CAAC,CAAC;CAChE;AAED;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,sBAAsB;;6DAGlC,CAAC"}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { createActionButton, } from "../../utils/createActionButton.js";
|
|
3
|
-
import {
|
|
4
|
-
import { useAuiState, useAui } from "@assistant-ui/store";
|
|
3
|
+
import { useActionBarEdit as useActionBarEditBehavior } from "@assistant-ui/core/react";
|
|
5
4
|
/**
|
|
6
5
|
* Hook that provides edit functionality for action bar buttons.
|
|
7
6
|
*
|
|
@@ -24,14 +23,10 @@ import { useAuiState, useAui } from "@assistant-ui/store";
|
|
|
24
23
|
* ```
|
|
25
24
|
*/
|
|
26
25
|
const useActionBarEdit = () => {
|
|
27
|
-
const
|
|
28
|
-
const disabled = useAuiState((s) => s.composer.isEditing);
|
|
29
|
-
const callback = useCallback(() => {
|
|
30
|
-
aui.composer().beginEdit();
|
|
31
|
-
}, [aui]);
|
|
26
|
+
const { disabled, edit } = useActionBarEditBehavior();
|
|
32
27
|
if (disabled)
|
|
33
28
|
return null;
|
|
34
|
-
return
|
|
29
|
+
return edit;
|
|
35
30
|
};
|
|
36
31
|
/**
|
|
37
32
|
* A button component that starts editing the current message.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ActionBarEdit.js","sourceRoot":"","sources":["../../../src/primitives/actionBar/ActionBarEdit.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,EAGL,kBAAkB,GACnB,0CAAuC;AACxC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"ActionBarEdit.js","sourceRoot":"","sources":["../../../src/primitives/actionBar/ActionBarEdit.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,EAGL,kBAAkB,GACnB,0CAAuC;AACxC,OAAO,EAAE,gBAAgB,IAAI,wBAAwB,EAAE,MAAM,0BAA0B,CAAC;AAExF;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,gBAAgB,GAAG,GAAG,EAAE;IAC5B,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,wBAAwB,EAAE,CAAC;IACtD,IAAI,QAAQ;QAAE,OAAO,IAAI,CAAC;IAC1B,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAWF;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,kBAAkB,CACtD,yBAAyB,EACzB,gBAAgB,CACjB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ActionBarFeedbackNegative.d.ts","sourceRoot":"","sources":["../../../src/primitives/actionBar/ActionBarFeedbackNegative.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,iBAAiB,EAAE,0CAAuC;AAMnE,QAAA,MAAM,4BAA4B,
|
|
1
|
+
{"version":3,"file":"ActionBarFeedbackNegative.d.ts","sourceRoot":"","sources":["../../../src/primitives/actionBar/ActionBarFeedbackNegative.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,iBAAiB,EAAE,0CAAuC;AAMnE,QAAA,MAAM,4BAA4B,kBAGjC,CAAC;AAEF,yBAAiB,kCAAkC,CAAC;IAClD,KAAY,OAAO,GAAG,iBAAiB,CAAC;IACxC,KAAY,KAAK,GAAG,iBAAiB,CAAC,OAAO,4BAA4B,CAAC,CAAC;CAC5E;AAED,eAAO,MAAM,kCAAkC;;6DAoB7C,CAAC"}
|
|
@@ -3,14 +3,11 @@ import { jsx as _jsx } from "react/jsx-runtime";
|
|
|
3
3
|
import { forwardRef } from "react";
|
|
4
4
|
import { composeEventHandlers } from "@radix-ui/primitive";
|
|
5
5
|
import { Primitive } from "@radix-ui/react-primitive";
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
6
|
+
import { useAuiState } from "@assistant-ui/store";
|
|
7
|
+
import { useActionBarFeedbackNegative as useActionBarFeedbackNegativeBehavior } from "@assistant-ui/core/react";
|
|
8
8
|
const useActionBarFeedbackNegative = () => {
|
|
9
|
-
const
|
|
10
|
-
|
|
11
|
-
aui.message().submitFeedback({ type: "negative" });
|
|
12
|
-
}, [aui]);
|
|
13
|
-
return callback;
|
|
9
|
+
const { submit } = useActionBarFeedbackNegativeBehavior();
|
|
10
|
+
return submit;
|
|
14
11
|
};
|
|
15
12
|
export const ActionBarPrimitiveFeedbackNegative = forwardRef(({ onClick, disabled, ...props }, forwardedRef) => {
|
|
16
13
|
const isSubmitted = useAuiState((s) => s.message.metadata.submittedFeedback?.type === "negative");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ActionBarFeedbackNegative.js","sourceRoot":"","sources":["../../../src/primitives/actionBar/ActionBarFeedbackNegative.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAEnC,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"ActionBarFeedbackNegative.js","sourceRoot":"","sources":["../../../src/primitives/actionBar/ActionBarFeedbackNegative.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAEnC,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,4BAA4B,IAAI,oCAAoC,EAAE,MAAM,0BAA0B,CAAC;AAEhH,MAAM,4BAA4B,GAAG,GAAG,EAAE;IACxC,MAAM,EAAE,MAAM,EAAE,GAAG,oCAAoC,EAAE,CAAC;IAC1D,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AAOF,MAAM,CAAC,MAAM,kCAAkC,GAAG,UAAU,CAG1D,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,KAAK,EAAE,EAAE,YAAY,EAAE,EAAE;IAClD,MAAM,WAAW,GAAG,WAAW,CAC7B,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,EAAE,IAAI,KAAK,UAAU,CACjE,CAAC;IACF,MAAM,QAAQ,GAAG,4BAA4B,EAAE,CAAC;IAChD,OAAO,CACL,KAAC,SAAS,CAAC,MAAM,IACf,IAAI,EAAC,QAAQ,KACT,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,KACjD,KAAK,EACT,GAAG,EAAE,YAAY,EACjB,QAAQ,EAAE,QAAQ,IAAI,CAAC,QAAQ,EAC/B,OAAO,EAAE,oBAAoB,CAAC,OAAO,EAAE,GAAG,EAAE;YAC1C,QAAQ,EAAE,EAAE,CAAC;QACf,CAAC,CAAC,GACF,CACH,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,kCAAkC,CAAC,WAAW;IAC5C,qCAAqC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ActionBarFeedbackPositive.d.ts","sourceRoot":"","sources":["../../../src/primitives/actionBar/ActionBarFeedbackPositive.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,iBAAiB,EAAE,0CAAuC;
|
|
1
|
+
{"version":3,"file":"ActionBarFeedbackPositive.d.ts","sourceRoot":"","sources":["../../../src/primitives/actionBar/ActionBarFeedbackPositive.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,iBAAiB,EAAE,0CAAuC;AAMnE,QAAA,MAAM,4BAA4B,kBAGjC,CAAC;AAEF,yBAAiB,kCAAkC,CAAC;IAClD,KAAY,OAAO,GAAG,iBAAiB,CAAC;IACxC,KAAY,KAAK,GAAG,iBAAiB,CAAC,OAAO,4BAA4B,CAAC,CAAC;CAC5E;AAED,eAAO,MAAM,kCAAkC;;6DAoB7C,CAAC"}
|
|
@@ -1,15 +1,13 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
3
|
-
import { forwardRef
|
|
3
|
+
import { forwardRef } from "react";
|
|
4
4
|
import { composeEventHandlers } from "@radix-ui/primitive";
|
|
5
|
-
import { useAuiState
|
|
5
|
+
import { useAuiState } from "@assistant-ui/store";
|
|
6
6
|
import { Primitive } from "@radix-ui/react-primitive";
|
|
7
|
+
import { useActionBarFeedbackPositive as useActionBarFeedbackPositiveBehavior } from "@assistant-ui/core/react";
|
|
7
8
|
const useActionBarFeedbackPositive = () => {
|
|
8
|
-
const
|
|
9
|
-
|
|
10
|
-
aui.message().submitFeedback({ type: "positive" });
|
|
11
|
-
}, [aui]);
|
|
12
|
-
return callback;
|
|
9
|
+
const { submit } = useActionBarFeedbackPositiveBehavior();
|
|
10
|
+
return submit;
|
|
13
11
|
};
|
|
14
12
|
export const ActionBarPrimitiveFeedbackPositive = forwardRef(({ onClick, disabled, ...props }, forwardedRef) => {
|
|
15
13
|
const isSubmitted = useAuiState((s) => s.message.metadata.submittedFeedback?.type === "positive");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ActionBarFeedbackPositive.js","sourceRoot":"","sources":["../../../src/primitives/actionBar/ActionBarFeedbackPositive.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,EAAE,UAAU,EAAE,
|
|
1
|
+
{"version":3,"file":"ActionBarFeedbackPositive.js","sourceRoot":"","sources":["../../../src/primitives/actionBar/ActionBarFeedbackPositive.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAEnC,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AACtD,OAAO,EAAE,4BAA4B,IAAI,oCAAoC,EAAE,MAAM,0BAA0B,CAAC;AAEhH,MAAM,4BAA4B,GAAG,GAAG,EAAE;IACxC,MAAM,EAAE,MAAM,EAAE,GAAG,oCAAoC,EAAE,CAAC;IAC1D,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AAOF,MAAM,CAAC,MAAM,kCAAkC,GAAG,UAAU,CAG1D,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,KAAK,EAAE,EAAE,YAAY,EAAE,EAAE;IAClD,MAAM,WAAW,GAAG,WAAW,CAC7B,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,EAAE,IAAI,KAAK,UAAU,CACjE,CAAC;IACF,MAAM,QAAQ,GAAG,4BAA4B,EAAE,CAAC;IAChD,OAAO,CACL,KAAC,SAAS,CAAC,MAAM,IACf,IAAI,EAAC,QAAQ,KACT,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,KACjD,KAAK,EACT,GAAG,EAAE,YAAY,EACjB,QAAQ,EAAE,QAAQ,IAAI,CAAC,QAAQ,EAC/B,OAAO,EAAE,oBAAoB,CAAC,OAAO,EAAE,GAAG,EAAE;YAC1C,QAAQ,EAAE,EAAE,CAAC;QACf,CAAC,CAAC,GACF,CACH,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,kCAAkC,CAAC,WAAW;IAC5C,qCAAqC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ActionBarReload.d.ts","sourceRoot":"","sources":["../../../src/primitives/actionBar/ActionBarReload.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,mBAAmB,EACnB,iBAAiB,EAElB,0CAAuC;
|
|
1
|
+
{"version":3,"file":"ActionBarReload.d.ts","sourceRoot":"","sources":["../../../src/primitives/actionBar/ActionBarReload.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,mBAAmB,EACnB,iBAAiB,EAElB,0CAAuC;AAGxC;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,QAAA,MAAM,kBAAkB,2BAIvB,CAAC;AAEF,yBAAiB,wBAAwB,CAAC;IACxC,KAAY,OAAO,GAAG,mBAAmB,CAAC;IAC1C;;;OAGG;IACH,KAAY,KAAK,GAAG,iBAAiB,CAAC,OAAO,kBAAkB,CAAC,CAAC;CAClE;AAED;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,wBAAwB;;6DAGpC,CAAC"}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { createActionButton, } from "../../utils/createActionButton.js";
|
|
3
|
-
import {
|
|
4
|
-
import { useAuiState, useAui } from "@assistant-ui/store";
|
|
3
|
+
import { useActionBarReload as useActionBarReloadBehavior } from "@assistant-ui/core/react";
|
|
5
4
|
/**
|
|
6
5
|
* Hook that provides reload functionality for action bar buttons.
|
|
7
6
|
*
|
|
@@ -24,16 +23,10 @@ import { useAuiState, useAui } from "@assistant-ui/store";
|
|
|
24
23
|
* ```
|
|
25
24
|
*/
|
|
26
25
|
const useActionBarReload = () => {
|
|
27
|
-
const
|
|
28
|
-
const disabled = useAuiState((s) => s.thread.isRunning ||
|
|
29
|
-
s.thread.isDisabled ||
|
|
30
|
-
s.message.role !== "assistant");
|
|
31
|
-
const callback = useCallback(() => {
|
|
32
|
-
aui.message().reload();
|
|
33
|
-
}, [aui]);
|
|
26
|
+
const { disabled, reload } = useActionBarReloadBehavior();
|
|
34
27
|
if (disabled)
|
|
35
28
|
return null;
|
|
36
|
-
return
|
|
29
|
+
return reload;
|
|
37
30
|
};
|
|
38
31
|
/**
|
|
39
32
|
* A button component that reloads/regenerates the current assistant message.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ActionBarReload.js","sourceRoot":"","sources":["../../../src/primitives/actionBar/ActionBarReload.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,EAGL,kBAAkB,GACnB,0CAAuC;AACxC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"ActionBarReload.js","sourceRoot":"","sources":["../../../src/primitives/actionBar/ActionBarReload.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,EAGL,kBAAkB,GACnB,0CAAuC;AACxC,OAAO,EAAE,kBAAkB,IAAI,0BAA0B,EAAE,MAAM,0BAA0B,CAAC;AAE5F;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,kBAAkB,GAAG,GAAG,EAAE;IAC9B,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,0BAA0B,EAAE,CAAC;IAC1D,IAAI,QAAQ;QAAE,OAAO,IAAI,CAAC;IAC1B,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AAWF;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,kBAAkB,CACxD,2BAA2B,EAC3B,kBAAkB,CACnB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ComposerAddAttachment.d.ts","sourceRoot":"","sources":["../../../src/primitives/composer/ComposerAddAttachment.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,mBAAmB,EACnB,iBAAiB,EAElB,0CAAuC;
|
|
1
|
+
{"version":3,"file":"ComposerAddAttachment.d.ts","sourceRoot":"","sources":["../../../src/primitives/composer/ComposerAddAttachment.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,mBAAmB,EACnB,iBAAiB,EAElB,0CAAuC;AAKxC,QAAA,MAAM,wBAAwB,GAAI,gBAE/B;IACD,qCAAqC;IACrC,QAAQ,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CAC3B,wBAsCL,CAAC;AAEF,yBAAiB,8BAA8B,CAAC;IAC9C,KAAY,OAAO,GAAG,mBAAmB,CAAC;IAC1C,KAAY,KAAK,GAAG,iBAAiB,CAAC,OAAO,wBAAwB,CAAC,CAAC;CACxE;AAED,eAAO,MAAM,8BAA8B;;;IA/CzC,qCAAqC;eAC1B,OAAO,GAAG,SAAS;qDAkD/B,CAAC"}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { createActionButton, } from "../../utils/createActionButton.js";
|
|
3
3
|
import { useCallback } from "react";
|
|
4
|
-
import {
|
|
4
|
+
import { useAui } from "@assistant-ui/store";
|
|
5
|
+
import { useComposerAddAttachment as useComposerAddAttachmentBehavior } from "@assistant-ui/core/react";
|
|
5
6
|
const useComposerAddAttachment = ({ multiple = true, } = {}) => {
|
|
6
|
-
const disabled =
|
|
7
|
+
const { disabled, addAttachment } = useComposerAddAttachmentBehavior();
|
|
7
8
|
const aui = useAui();
|
|
8
9
|
const callback = useCallback(() => {
|
|
9
10
|
const input = document.createElement("input");
|
|
@@ -20,7 +21,7 @@ const useComposerAddAttachment = ({ multiple = true, } = {}) => {
|
|
|
20
21
|
if (!fileList)
|
|
21
22
|
return;
|
|
22
23
|
for (const file of fileList) {
|
|
23
|
-
|
|
24
|
+
addAttachment(file);
|
|
24
25
|
}
|
|
25
26
|
document.body.removeChild(input);
|
|
26
27
|
};
|
|
@@ -30,7 +31,7 @@ const useComposerAddAttachment = ({ multiple = true, } = {}) => {
|
|
|
30
31
|
}
|
|
31
32
|
};
|
|
32
33
|
input.click();
|
|
33
|
-
}, [aui, multiple]);
|
|
34
|
+
}, [aui, multiple, addAttachment]);
|
|
34
35
|
if (disabled)
|
|
35
36
|
return null;
|
|
36
37
|
return callback;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ComposerAddAttachment.js","sourceRoot":"","sources":["../../../src/primitives/composer/ComposerAddAttachment.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,EAGL,kBAAkB,GACnB,0CAAuC;AACxC,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AACpC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"ComposerAddAttachment.js","sourceRoot":"","sources":["../../../src/primitives/composer/ComposerAddAttachment.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,EAGL,kBAAkB,GACnB,0CAAuC;AACxC,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,wBAAwB,IAAI,gCAAgC,EAAE,MAAM,0BAA0B,CAAC;AAExG,MAAM,wBAAwB,GAAG,CAAC,EAChC,QAAQ,GAAG,IAAI,MAIb,EAAE,EAAE,EAAE;IACR,MAAM,EAAE,QAAQ,EAAE,aAAa,EAAE,GAAG,gCAAgC,EAAE,CAAC;IACvE,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC;IAErB,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,EAAE;QAChC,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;QAC9C,KAAK,CAAC,IAAI,GAAG,MAAM,CAAC;QACpB,KAAK,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAC1B,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC;QAEpB,MAAM,gBAAgB,GAAG,GAAG,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC,gBAAgB,CAAC;QACpE,IAAI,gBAAgB,KAAK,GAAG,EAAE,CAAC;YAC7B,KAAK,CAAC,MAAM,GAAG,gBAAgB,CAAC;QAClC,CAAC;QAED,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAEjC,KAAK,CAAC,QAAQ,GAAG,CAAC,CAAC,EAAE,EAAE;YACrB,MAAM,QAAQ,GAAI,CAAC,CAAC,MAA2B,CAAC,KAAK,CAAC;YACtD,IAAI,CAAC,QAAQ;gBAAE,OAAO;YACtB,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE,CAAC;gBAC5B,aAAa,CAAC,IAAI,CAAC,CAAC;YACtB,CAAC;YAED,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QACnC,CAAC,CAAC;QAEF,KAAK,CAAC,QAAQ,GAAG,GAAG,EAAE;YACpB,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC7C,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;YACnC,CAAC;QACH,CAAC,CAAC;QAEF,KAAK,CAAC,KAAK,EAAE,CAAC;IAChB,CAAC,EAAE,CAAC,GAAG,EAAE,QAAQ,EAAE,aAAa,CAAC,CAAC,CAAC;IAEnC,IAAI,QAAQ;QAAE,OAAO,IAAI,CAAC;IAC1B,OAAO,QAAQ,CAAC;AAClB,CAAC,CAAC;AAOF,MAAM,CAAC,MAAM,8BAA8B,GAAG,kBAAkB,CAC9D,iCAAiC,EACjC,wBAAwB,EACxB,CAAC,UAAU,CAAC,CACb,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ComposerCancel.d.ts","sourceRoot":"","sources":["../../../src/primitives/composer/ComposerCancel.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,mBAAmB,EACnB,iBAAiB,EAElB,0CAAuC;
|
|
1
|
+
{"version":3,"file":"ComposerCancel.d.ts","sourceRoot":"","sources":["../../../src/primitives/composer/ComposerCancel.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,mBAAmB,EACnB,iBAAiB,EAElB,0CAAuC;AAGxC,QAAA,MAAM,iBAAiB,2BAItB,CAAC;AAEF,yBAAiB,uBAAuB,CAAC;IACvC,KAAY,OAAO,GAAG,mBAAmB,CAAC;IAC1C;;;OAGG;IACH,KAAY,KAAK,GAAG,iBAAiB,CAAC,OAAO,iBAAiB,CAAC,CAAC;CACjE;AAED;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,uBAAuB;;6DAGnC,CAAC"}
|
|
@@ -1,16 +1,11 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { createActionButton, } from "../../utils/createActionButton.js";
|
|
3
|
-
import {
|
|
4
|
-
import { useAuiState, useAui } from "@assistant-ui/store";
|
|
3
|
+
import { useComposerCancel as useComposerCancelBehavior } from "@assistant-ui/core/react";
|
|
5
4
|
const useComposerCancel = () => {
|
|
6
|
-
const
|
|
7
|
-
const disabled = useAuiState((s) => !s.composer.canCancel);
|
|
8
|
-
const callback = useCallback(() => {
|
|
9
|
-
aui.composer().cancel();
|
|
10
|
-
}, [aui]);
|
|
5
|
+
const { disabled, cancel } = useComposerCancelBehavior();
|
|
11
6
|
if (disabled)
|
|
12
7
|
return null;
|
|
13
|
-
return
|
|
8
|
+
return cancel;
|
|
14
9
|
};
|
|
15
10
|
/**
|
|
16
11
|
* A button component that cancels the current message composition.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ComposerCancel.js","sourceRoot":"","sources":["../../../src/primitives/composer/ComposerCancel.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,EAGL,kBAAkB,GACnB,0CAAuC;AACxC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"ComposerCancel.js","sourceRoot":"","sources":["../../../src/primitives/composer/ComposerCancel.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,EAGL,kBAAkB,GACnB,0CAAuC;AACxC,OAAO,EAAE,iBAAiB,IAAI,yBAAyB,EAAE,MAAM,0BAA0B,CAAC;AAE1F,MAAM,iBAAiB,GAAG,GAAG,EAAE;IAC7B,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,yBAAyB,EAAE,CAAC;IACzD,IAAI,QAAQ;QAAE,OAAO,IAAI,CAAC;IAC1B,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AAWF;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,kBAAkB,CACvD,0BAA0B,EAC1B,iBAAiB,CAClB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ComposerSend.d.ts","sourceRoot":"","sources":["../../../src/primitives/composer/ComposerSend.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,mBAAmB,EACnB,iBAAiB,EAElB,0CAAuC;
|
|
1
|
+
{"version":3,"file":"ComposerSend.d.ts","sourceRoot":"","sources":["../../../src/primitives/composer/ComposerSend.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,mBAAmB,EACnB,iBAAiB,EAElB,0CAAuC;AAGxC,eAAO,MAAM,eAAe,2BAI3B,CAAC;AAEF,yBAAiB,qBAAqB,CAAC;IACrC,KAAY,OAAO,GAAG,mBAAmB,CAAC;IAC1C;;;OAGG;IACH,KAAY,KAAK,GAAG,iBAAiB,CAAC,OAAO,eAAe,CAAC,CAAC;CAC/D;AAED;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,qBAAqB;;6DAGjC,CAAC"}
|
|
@@ -1,16 +1,11 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { createActionButton, } from "../../utils/createActionButton.js";
|
|
3
|
-
import {
|
|
4
|
-
import { useAuiState, useAui } from "@assistant-ui/store";
|
|
3
|
+
import { useComposerSend as useComposerSendBehavior } from "@assistant-ui/core/react";
|
|
5
4
|
export const useComposerSend = () => {
|
|
6
|
-
const
|
|
7
|
-
const disabled = useAuiState((s) => s.thread.isRunning || !s.composer.isEditing || s.composer.isEmpty);
|
|
8
|
-
const callback = useCallback(() => {
|
|
9
|
-
aui.composer().send();
|
|
10
|
-
}, [aui]);
|
|
5
|
+
const { disabled, send } = useComposerSendBehavior();
|
|
11
6
|
if (disabled)
|
|
12
7
|
return null;
|
|
13
|
-
return
|
|
8
|
+
return send;
|
|
14
9
|
};
|
|
15
10
|
/**
|
|
16
11
|
* A button component that sends the current message in the composer.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ComposerSend.js","sourceRoot":"","sources":["../../../src/primitives/composer/ComposerSend.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,EAGL,kBAAkB,GACnB,0CAAuC;AACxC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"ComposerSend.js","sourceRoot":"","sources":["../../../src/primitives/composer/ComposerSend.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,EAGL,kBAAkB,GACnB,0CAAuC;AACxC,OAAO,EAAE,eAAe,IAAI,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AAEtF,MAAM,CAAC,MAAM,eAAe,GAAG,GAAG,EAAE;IAClC,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,uBAAuB,EAAE,CAAC;IACrD,IAAI,QAAQ;QAAE,OAAO,IAAI,CAAC;IAC1B,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAWF;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,kBAAkB,CACrD,wBAAwB,EACxB,eAAe,CAChB,CAAC"}
|
|
@@ -15,7 +15,7 @@ export const createActionButton = (displayName, useActionButton, forwardProps =
|
|
|
15
15
|
}
|
|
16
16
|
});
|
|
17
17
|
const callback = useActionButton(forwardedProps) ?? undefined;
|
|
18
|
-
return (_jsx(Primitive.button, { type: "button",
|
|
18
|
+
return (_jsx(Primitive.button, { ...primitiveProps, type: "button", ref: forwardedRef, disabled: primitiveProps.disabled || !callback, onClick: composeEventHandlers(primitiveProps.onClick, callback) }));
|
|
19
19
|
});
|
|
20
20
|
ActionButton.displayName = displayName;
|
|
21
21
|
return ActionButton;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createActionButton.js","sourceRoot":"","sources":["../../src/utils/createActionButton.tsx"],"names":[],"mappings":";AAAA,OAAO,EAEL,UAAU,GAGX,MAAM,OAAO,CAAC;AACf,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AACtD,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAa3D,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAChC,WAAmB,EACnB,eAA6C,EAC7C,eAA8C,EAAE,EAChD,EAAE;IACF,MAAM,YAAY,GAAG,UAAU,CAG7B,CAAC,KAAK,EAAE,YAAY,EAAE,EAAE;QACxB,MAAM,cAAc,GAAG,EAAY,CAAC;QACpC,MAAM,cAAc,GAAG,EAA0B,CAAC;QAEjD,MAAM,CAAC,IAAI,CAAC,KAAK,CAA+B,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;YAChE,IAAI,YAAY,CAAC,QAAQ,CAAC,GAAmB,CAAC,EAAE,CAAC;gBAC9C,cAAsB,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;YAC5C,CAAC;iBAAM,CAAC;gBACL,cAAsB,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;YAC5C,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,MAAM,QAAQ,GAAG,eAAe,CAAC,cAAwB,CAAC,IAAI,SAAS,CAAC;QACxE,OAAO,CACL,KAAC,SAAS,CAAC,MAAM,
|
|
1
|
+
{"version":3,"file":"createActionButton.js","sourceRoot":"","sources":["../../src/utils/createActionButton.tsx"],"names":[],"mappings":";AAAA,OAAO,EAEL,UAAU,GAGX,MAAM,OAAO,CAAC;AACf,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AACtD,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAa3D,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAChC,WAAmB,EACnB,eAA6C,EAC7C,eAA8C,EAAE,EAChD,EAAE;IACF,MAAM,YAAY,GAAG,UAAU,CAG7B,CAAC,KAAK,EAAE,YAAY,EAAE,EAAE;QACxB,MAAM,cAAc,GAAG,EAAY,CAAC;QACpC,MAAM,cAAc,GAAG,EAA0B,CAAC;QAEjD,MAAM,CAAC,IAAI,CAAC,KAAK,CAA+B,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;YAChE,IAAI,YAAY,CAAC,QAAQ,CAAC,GAAmB,CAAC,EAAE,CAAC;gBAC9C,cAAsB,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;YAC5C,CAAC;iBAAM,CAAC;gBACL,cAAsB,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;YAC5C,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,MAAM,QAAQ,GAAG,eAAe,CAAC,cAAwB,CAAC,IAAI,SAAS,CAAC;QACxE,OAAO,CACL,KAAC,SAAS,CAAC,MAAM,OACX,cAAc,EAClB,IAAI,EAAC,QAAQ,EACb,GAAG,EAAE,YAAY,EACjB,QAAQ,EAAE,cAAc,CAAC,QAAQ,IAAI,CAAC,QAAQ,EAC9C,OAAO,EAAE,oBAAoB,CAAC,cAAc,CAAC,OAAO,EAAE,QAAQ,CAAC,GAC/D,CACH,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,YAAY,CAAC,WAAW,GAAG,WAAW,CAAC;IAEvC,OAAO,YAAY,CAAC;AACtB,CAAC,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@assistant-ui/react",
|
|
3
|
-
"version": "0.12.
|
|
3
|
+
"version": "0.12.17",
|
|
4
4
|
"description": "TypeScript/React library for AI Chat",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"radix-ui",
|
|
@@ -49,7 +49,7 @@
|
|
|
49
49
|
],
|
|
50
50
|
"sideEffects": false,
|
|
51
51
|
"dependencies": {
|
|
52
|
-
"@assistant-ui/core": "^0.1.
|
|
52
|
+
"@assistant-ui/core": "^0.1.5",
|
|
53
53
|
"@assistant-ui/store": "^0.2.2",
|
|
54
54
|
"@assistant-ui/tap": "^0.5.2",
|
|
55
55
|
"@radix-ui/primitive": "^1.1.3",
|
|
@@ -90,7 +90,7 @@
|
|
|
90
90
|
"react": "^19.2.4",
|
|
91
91
|
"react-dom": "^19.2.4",
|
|
92
92
|
"vitest": "^4.0.18",
|
|
93
|
-
"@assistant-ui/x-buildutils": "0.0.
|
|
93
|
+
"@assistant-ui/x-buildutils": "0.0.2"
|
|
94
94
|
},
|
|
95
95
|
"publishConfig": {
|
|
96
96
|
"access": "public",
|
package/src/index.ts
CHANGED
package/src/internal.ts
CHANGED
|
@@ -26,6 +26,6 @@ export { splitLocalRuntimeOptions } from "./legacy-runtime/runtime-cores/local/L
|
|
|
26
26
|
export {
|
|
27
27
|
useToolInvocations,
|
|
28
28
|
type ToolExecutionStatus,
|
|
29
|
-
} from "
|
|
29
|
+
} from "@assistant-ui/core/react";
|
|
30
30
|
|
|
31
31
|
export * from "./utils/smooth";
|