@assistant-ui/react 0.5.74 → 0.5.75
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.mts +521 -181
- package/dist/index.d.ts +521 -181
- package/dist/index.js +219 -182
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +152 -115
- package/dist/index.mjs.map +1 -1
- package/package.json +3 -3
package/dist/index.mjs
CHANGED
@@ -605,20 +605,13 @@ var useActionBarReload = () => {
|
|
605
605
|
// src/primitive-hooks/actionBar/useActionBarSpeak.tsx
|
606
606
|
import { useCallback as useCallback6 } from "react";
|
607
607
|
var useActionBarSpeak = () => {
|
608
|
-
const messageStore = useMessageStore();
|
609
|
-
const editComposerStore = useEditComposerStore();
|
610
608
|
const messageRunime = useMessageRuntime();
|
611
|
-
const messageUtilsStore = useMessageUtilsStore();
|
612
|
-
const hasSpeakableContent = useCombinedStore(
|
613
|
-
[messageStore, editComposerStore],
|
614
|
-
(message, c) => {
|
615
|
-
return !c.isEditing && (message.role !== "assistant" || message.status.type !== "running") && message.content.some((c2) => c2.type === "text" && c2.text.length > 0);
|
616
|
-
}
|
617
|
-
);
|
618
609
|
const callback = useCallback6(async () => {
|
619
|
-
|
620
|
-
|
621
|
-
|
610
|
+
messageRunime.speak();
|
611
|
+
}, [messageRunime]);
|
612
|
+
const hasSpeakableContent = useMessage((m) => {
|
613
|
+
return (m.role !== "assistant" || m.status.type !== "running") && m.content.some((c) => c.type === "text" && c.text.length > 0);
|
614
|
+
});
|
622
615
|
if (!hasSpeakableContent) return null;
|
623
616
|
return callback;
|
624
617
|
};
|
@@ -626,11 +619,11 @@ var useActionBarSpeak = () => {
|
|
626
619
|
// src/primitive-hooks/actionBar/useActionBarStopSpeaking.tsx
|
627
620
|
import { useCallback as useCallback7 } from "react";
|
628
621
|
var useActionBarStopSpeaking = () => {
|
629
|
-
const
|
630
|
-
const isSpeaking =
|
622
|
+
const messageRuntime = useMessageRuntime();
|
623
|
+
const isSpeaking = useMessage((u) => u.speech != null);
|
631
624
|
const callback = useCallback7(async () => {
|
632
|
-
|
633
|
-
}, [
|
625
|
+
messageRuntime.stopSpeaking();
|
626
|
+
}, [messageRuntime]);
|
634
627
|
if (!isSpeaking) return null;
|
635
628
|
return callback;
|
636
629
|
};
|
@@ -810,7 +803,7 @@ var useMessageIf = (props) => {
|
|
810
803
|
const messageUtilsStore = useMessageUtilsStore();
|
811
804
|
return useCombinedStore(
|
812
805
|
[messageStore, messageUtilsStore],
|
813
|
-
({ role, attachments, branchCount, isLast }, { isCopied, isHovering,
|
806
|
+
({ role, attachments, branchCount, isLast, speech }, { isCopied, isHovering, submittedFeedback }) => {
|
814
807
|
if (props.hasBranches === true && branchCount < 2) return false;
|
815
808
|
if (props.user && role !== "user") return false;
|
816
809
|
if (props.assistant && role !== "assistant") return false;
|
@@ -818,8 +811,8 @@ var useMessageIf = (props) => {
|
|
818
811
|
if (props.lastOrHover === true && !isHovering && !isLast) return false;
|
819
812
|
if (props.copied === true && !isCopied) return false;
|
820
813
|
if (props.copied === false && isCopied) return false;
|
821
|
-
if (props.speaking === true &&
|
822
|
-
if (props.speaking === false &&
|
814
|
+
if (props.speaking === true && speech == null) return false;
|
815
|
+
if (props.speaking === false && speech != null) return false;
|
823
816
|
if (props.hasAttachments === true && (role !== "user" || !attachments.length))
|
824
817
|
return false;
|
825
818
|
if (props.hasAttachments === false && role === "user" && !!attachments.length)
|
@@ -1348,7 +1341,7 @@ __export(branchPicker_exports, {
|
|
1348
1341
|
Count: () => BranchPickerPrimitiveCount,
|
1349
1342
|
Next: () => BranchPickerPrimitiveNext,
|
1350
1343
|
Number: () => BranchPickerPrimitiveNumber,
|
1351
|
-
Previous: () =>
|
1344
|
+
Previous: () => BranchPickerPrimitivePrevious,
|
1352
1345
|
Root: () => BranchPickerPrimitiveRoot
|
1353
1346
|
});
|
1354
1347
|
|
@@ -1359,7 +1352,7 @@ var BranchPickerPrimitiveNext = createActionButton(
|
|
1359
1352
|
);
|
1360
1353
|
|
1361
1354
|
// src/primitives/branchPicker/BranchPickerPrevious.tsx
|
1362
|
-
var
|
1355
|
+
var BranchPickerPrimitivePrevious = createActionButton(
|
1363
1356
|
"BranchPickerPrimitive.Previous",
|
1364
1357
|
useBranchPickerPrevious
|
1365
1358
|
);
|
@@ -2173,6 +2166,16 @@ var MessageRuntimeImpl = class {
|
|
2173
2166
|
if (!state) throw new Error("Message is not available");
|
2174
2167
|
return this._threadBinding.getState().speak(state.id);
|
2175
2168
|
}
|
2169
|
+
stopSpeaking() {
|
2170
|
+
const state = this._core.getState();
|
2171
|
+
if (!state) throw new Error("Message is not available");
|
2172
|
+
const thread = this._threadBinding.getState();
|
2173
|
+
if (thread.speech?.messageId === state.id) {
|
2174
|
+
this._threadBinding.getState().stopSpeaking();
|
2175
|
+
} else {
|
2176
|
+
throw new Error("Message is not being spoken");
|
2177
|
+
}
|
2178
|
+
}
|
2176
2179
|
submitFeedback({ type }) {
|
2177
2180
|
const state = this._core.getState();
|
2178
2181
|
if (!state) throw new Error("Message is not available");
|
@@ -2817,7 +2820,6 @@ import { create as create10 } from "zustand";
|
|
2817
2820
|
// src/context/stores/MessageUtils.ts
|
2818
2821
|
import { create as create9 } from "zustand";
|
2819
2822
|
var makeMessageUtilsStore = () => create9((set) => {
|
2820
|
-
let utterance = null;
|
2821
2823
|
return {
|
2822
2824
|
isCopied: false,
|
2823
2825
|
setIsCopied: (value) => {
|
@@ -2827,17 +2829,6 @@ var makeMessageUtilsStore = () => create9((set) => {
|
|
2827
2829
|
setIsHovering: (value) => {
|
2828
2830
|
set({ isHovering: value });
|
2829
2831
|
},
|
2830
|
-
isSpeaking: false,
|
2831
|
-
stopSpeaking: () => {
|
2832
|
-
utterance?.cancel();
|
2833
|
-
},
|
2834
|
-
addUtterance: (utt) => {
|
2835
|
-
utterance = utt;
|
2836
|
-
set({ isSpeaking: true });
|
2837
|
-
utt.onEnd(() => {
|
2838
|
-
set({ isSpeaking: false });
|
2839
|
-
});
|
2840
|
-
},
|
2841
2832
|
submittedFeedback: null,
|
2842
2833
|
setSubmittedFeedback: (feedback) => {
|
2843
2834
|
set({ submittedFeedback: feedback });
|
@@ -3571,7 +3562,8 @@ var getThreadState = (runtime) => {
|
|
3571
3562
|
isRunning: lastMessage?.role !== "assistant" ? false : lastMessage.status.type === "running",
|
3572
3563
|
messages: runtime.messages,
|
3573
3564
|
suggestions: runtime.suggestions,
|
3574
|
-
extras: runtime.extras
|
3565
|
+
extras: runtime.extras,
|
3566
|
+
speech: runtime.speech
|
3575
3567
|
});
|
3576
3568
|
};
|
3577
3569
|
var ThreadRuntimeImpl = class {
|
@@ -3618,6 +3610,12 @@ var ThreadRuntimeImpl = class {
|
|
3618
3610
|
get messages() {
|
3619
3611
|
return this._threadBinding.getState().messages;
|
3620
3612
|
}
|
3613
|
+
/**
|
3614
|
+
* @deprecated Use `getState().speechState` instead. This will be removed in 0.6.0.
|
3615
|
+
*/
|
3616
|
+
get speech() {
|
3617
|
+
return this._threadBinding.getState().speech;
|
3618
|
+
}
|
3621
3619
|
unstable_getCore() {
|
3622
3620
|
return this._threadBinding.getState();
|
3623
3621
|
}
|
@@ -3678,15 +3676,18 @@ var ThreadRuntimeImpl = class {
|
|
3678
3676
|
switchToBranch(branchId) {
|
3679
3677
|
return this._threadBinding.getState().switchToBranch(branchId);
|
3680
3678
|
}
|
3681
|
-
|
3682
|
-
|
3683
|
-
|
3679
|
+
/**
|
3680
|
+
* @deprecated Use `getMesssageById(id).speak()` instead. This will be removed in 0.6.0.
|
3681
|
+
*/
|
3684
3682
|
speak(messageId) {
|
3685
3683
|
return this._threadBinding.getState().speak(messageId);
|
3686
3684
|
}
|
3687
|
-
|
3688
|
-
|
3689
|
-
|
3685
|
+
stopSpeaking() {
|
3686
|
+
return this._threadBinding.getState().stopSpeaking();
|
3687
|
+
}
|
3688
|
+
/**
|
3689
|
+
* @deprecated Use `getMesssageById(id).submitFeedback({ type })` instead. This will be removed in 0.6.0.
|
3690
|
+
*/
|
3690
3691
|
submitFeedback(options) {
|
3691
3692
|
return this._threadBinding.getState().submitFeedback(options);
|
3692
3693
|
}
|
@@ -3713,7 +3714,7 @@ var ThreadRuntimeImpl = class {
|
|
3713
3714
|
return new MessageRuntimeImpl(
|
3714
3715
|
new ShallowMemoizeSubject({
|
3715
3716
|
getState: () => {
|
3716
|
-
const messages2 = this.getState()
|
3717
|
+
const { messages: messages2, speech: speechState } = this.getState();
|
3717
3718
|
const message = messages2[idx];
|
3718
3719
|
if (!message) return SKIP_UPDATE;
|
3719
3720
|
const branches = this._threadBinding.getState().getBranches(message.id);
|
@@ -3724,7 +3725,8 @@ var ThreadRuntimeImpl = class {
|
|
3724
3725
|
parentId: messages2[idx - 1]?.id ?? null,
|
3725
3726
|
branches,
|
3726
3727
|
branchNumber: branches.indexOf(message.id) + 1,
|
3727
|
-
branchCount: branches.length
|
3728
|
+
branchCount: branches.length,
|
3729
|
+
speech: speechState?.messageId === message.id ? speechState : null
|
3728
3730
|
};
|
3729
3731
|
},
|
3730
3732
|
subscribe: (callback) => this._threadBinding.subscribe(callback)
|
@@ -4364,24 +4366,35 @@ var LocalThreadRuntimeCore = class {
|
|
4364
4366
|
this.performRoundtrip(parentId, message);
|
4365
4367
|
}
|
4366
4368
|
}
|
4367
|
-
// TODO
|
4368
|
-
|
4369
|
+
// TODO speech runtime?
|
4370
|
+
_stopSpeaking;
|
4371
|
+
speech = null;
|
4369
4372
|
speak(messageId) {
|
4370
4373
|
const adapter = this.options.adapters?.speech;
|
4371
4374
|
if (!adapter) throw new Error("Speech adapter not configured");
|
4372
4375
|
const { message } = this.repository.getMessage(messageId);
|
4373
|
-
|
4374
|
-
this._utterance.cancel();
|
4375
|
-
this._utterance = void 0;
|
4376
|
-
}
|
4376
|
+
this._stopSpeaking?.();
|
4377
4377
|
const utterance = adapter.speak(message);
|
4378
|
-
utterance.
|
4379
|
-
if (
|
4380
|
-
this.
|
4378
|
+
const unsub = utterance.subscribe(() => {
|
4379
|
+
if (utterance.status.type === "ended") {
|
4380
|
+
this._stopSpeaking = void 0;
|
4381
|
+
this.speech = null;
|
4382
|
+
} else {
|
4383
|
+
this.speech = { messageId, status: utterance.status };
|
4381
4384
|
}
|
4385
|
+
this.notifySubscribers();
|
4382
4386
|
});
|
4383
|
-
this.
|
4384
|
-
|
4387
|
+
this.speech = { messageId, status: utterance.status };
|
4388
|
+
this._stopSpeaking = () => {
|
4389
|
+
utterance.cancel();
|
4390
|
+
unsub();
|
4391
|
+
this.speech = null;
|
4392
|
+
this._stopSpeaking = void 0;
|
4393
|
+
};
|
4394
|
+
}
|
4395
|
+
stopSpeaking() {
|
4396
|
+
if (!this._stopSpeaking) throw new Error("No message is being spoken");
|
4397
|
+
this._stopSpeaking();
|
4385
4398
|
}
|
4386
4399
|
submitFeedback({ messageId, type }) {
|
4387
4400
|
const adapter = this.options.adapters?.feedback;
|
@@ -4740,11 +4753,38 @@ var ExternalStoreThreadRuntimeCore = class {
|
|
4740
4753
|
throw new Error("Runtime does not support tool results.");
|
4741
4754
|
this._store.onAddToolResult(options);
|
4742
4755
|
}
|
4756
|
+
// TODO speech runtime?
|
4757
|
+
_stopSpeaking;
|
4758
|
+
speech = null;
|
4743
4759
|
speak(messageId) {
|
4744
|
-
|
4745
|
-
|
4760
|
+
let adapter = this.store.adapters?.speech;
|
4761
|
+
if (!adapter && this.store.onSpeak) {
|
4762
|
+
adapter = { speak: this.store.onSpeak };
|
4763
|
+
}
|
4764
|
+
if (!adapter) throw new Error("Speech adapter not configured");
|
4746
4765
|
const { message } = this.repository.getMessage(messageId);
|
4747
|
-
|
4766
|
+
this._stopSpeaking?.();
|
4767
|
+
const utterance = adapter.speak(message);
|
4768
|
+
const unsub = utterance.subscribe(() => {
|
4769
|
+
if (utterance.status.type === "ended") {
|
4770
|
+
this._stopSpeaking = void 0;
|
4771
|
+
this.speech = null;
|
4772
|
+
} else {
|
4773
|
+
this.speech = { messageId, status: utterance.status };
|
4774
|
+
}
|
4775
|
+
this.notifySubscribers();
|
4776
|
+
});
|
4777
|
+
this.speech = { messageId, status: utterance.status };
|
4778
|
+
this._stopSpeaking = () => {
|
4779
|
+
utterance.cancel();
|
4780
|
+
unsub();
|
4781
|
+
this.speech = null;
|
4782
|
+
this._stopSpeaking = void 0;
|
4783
|
+
};
|
4784
|
+
}
|
4785
|
+
stopSpeaking() {
|
4786
|
+
if (!this._stopSpeaking) throw new Error("No message is being spoken");
|
4787
|
+
this._stopSpeaking();
|
4748
4788
|
}
|
4749
4789
|
submitFeedback({ messageId, type }) {
|
4750
4790
|
const adapter = this._store.adapters?.feedback;
|
@@ -5011,11 +5051,11 @@ var WebSpeechSynthesisAdapter = class {
|
|
5011
5051
|
speak(message) {
|
5012
5052
|
const text = getThreadMessageText(message);
|
5013
5053
|
const utterance = new SpeechSynthesisUtterance(text);
|
5014
|
-
const
|
5054
|
+
const subscribers = /* @__PURE__ */ new Set();
|
5015
5055
|
const handleEnd = (reason, error) => {
|
5016
5056
|
if (res.status.type === "ended") return;
|
5017
5057
|
res.status = { type: "ended", reason, error };
|
5018
|
-
|
5058
|
+
subscribers.forEach((handler) => handler());
|
5019
5059
|
};
|
5020
5060
|
utterance.addEventListener("end", () => handleEnd("finished"));
|
5021
5061
|
utterance.addEventListener("error", (e) => handleEnd("error", e.error));
|
@@ -5026,7 +5066,7 @@ var WebSpeechSynthesisAdapter = class {
|
|
5026
5066
|
window.speechSynthesis.cancel();
|
5027
5067
|
handleEnd("cancelled");
|
5028
5068
|
},
|
5029
|
-
|
5069
|
+
subscribe: (callback) => {
|
5030
5070
|
if (res.status.type === "ended") {
|
5031
5071
|
let cancelled = false;
|
5032
5072
|
queueMicrotask(() => {
|
@@ -5036,9 +5076,9 @@ var WebSpeechSynthesisAdapter = class {
|
|
5036
5076
|
cancelled = true;
|
5037
5077
|
};
|
5038
5078
|
} else {
|
5039
|
-
|
5079
|
+
subscribers.add(callback);
|
5040
5080
|
return () => {
|
5041
|
-
|
5081
|
+
subscribers.delete(callback);
|
5042
5082
|
};
|
5043
5083
|
}
|
5044
5084
|
}
|
@@ -5288,13 +5328,13 @@ var AssistantActionBarRoot = withDefaults(actionBar_exports.Root, {
|
|
5288
5328
|
className: "aui-assistant-action-bar-root"
|
5289
5329
|
});
|
5290
5330
|
AssistantActionBarRoot.displayName = "AssistantActionBarRoot";
|
5291
|
-
var AssistantActionBarCopy = forwardRef24((props, ref) => {
|
5331
|
+
var AssistantActionBarCopy = forwardRef24(({ copiedDuration, ...props }, ref) => {
|
5292
5332
|
const {
|
5293
5333
|
strings: {
|
5294
5334
|
assistantMessage: { copy: { tooltip = "Copy" } = {} } = {}
|
5295
5335
|
} = {}
|
5296
5336
|
} = useThreadConfig();
|
5297
|
-
return /* @__PURE__ */ jsx39(actionBar_exports.Copy, { asChild: true, children: /* @__PURE__ */ jsx39(TooltipIconButton, { tooltip, ...props, ref, children: props.children ?? /* @__PURE__ */ jsxs4(Fragment5, { children: [
|
5337
|
+
return /* @__PURE__ */ jsx39(actionBar_exports.Copy, { copiedDuration, asChild: true, children: /* @__PURE__ */ jsx39(TooltipIconButton, { tooltip, ...props, ref, children: props.children ?? /* @__PURE__ */ jsxs4(Fragment5, { children: [
|
5298
5338
|
/* @__PURE__ */ jsx39(message_exports.If, { copied: true, children: /* @__PURE__ */ jsx39(CheckIcon, {}) }),
|
5299
5339
|
/* @__PURE__ */ jsx39(message_exports.If, { copied: false, children: /* @__PURE__ */ jsx39(CopyIcon, {}) })
|
5300
5340
|
] }) }) });
|
@@ -5409,7 +5449,7 @@ var BranchPicker = () => {
|
|
5409
5449
|
const allowBranchPicker = useAllowBranchPicker(true);
|
5410
5450
|
if (!allowBranchPicker) return null;
|
5411
5451
|
return /* @__PURE__ */ jsxs5(BranchPickerRoot, { hideWhenSingleBranch: true, children: [
|
5412
|
-
/* @__PURE__ */ jsx40(
|
5452
|
+
/* @__PURE__ */ jsx40(BranchPickerPrevious, {}),
|
5413
5453
|
/* @__PURE__ */ jsx40(BranchPickerState, {}),
|
5414
5454
|
/* @__PURE__ */ jsx40(BranchPickerNext, {})
|
5415
5455
|
] });
|
@@ -5419,7 +5459,7 @@ var BranchPickerRoot = withDefaults(branchPicker_exports.Root, {
|
|
5419
5459
|
className: "aui-branch-picker-root"
|
5420
5460
|
});
|
5421
5461
|
BranchPickerRoot.displayName = "BranchPickerRoot";
|
5422
|
-
var
|
5462
|
+
var BranchPickerPrevious = forwardRef25((props, ref) => {
|
5423
5463
|
const {
|
5424
5464
|
strings: {
|
5425
5465
|
branchPicker: { previous: { tooltip = "Previous" } = {} } = {}
|
@@ -5428,7 +5468,7 @@ var BranchPickerPrevious2 = forwardRef25((props, ref) => {
|
|
5428
5468
|
const allowBranchPicker = useAllowBranchPicker();
|
5429
5469
|
return /* @__PURE__ */ jsx40(branchPicker_exports.Previous, { disabled: !allowBranchPicker, asChild: true, children: /* @__PURE__ */ jsx40(TooltipIconButton, { tooltip, ...props, ref, children: props.children ?? /* @__PURE__ */ jsx40(ChevronLeftIcon, {}) }) });
|
5430
5470
|
});
|
5431
|
-
|
5471
|
+
BranchPickerPrevious.displayName = "BranchPickerPrevious";
|
5432
5472
|
var BranchPickerStateWrapper = withDefaults("span", {
|
5433
5473
|
className: "aui-branch-picker-state"
|
5434
5474
|
});
|
@@ -5450,7 +5490,7 @@ var BranchPickerNext = forwardRef25((props, ref) => {
|
|
5450
5490
|
BranchPickerNext.displayName = "BranchPickerNext";
|
5451
5491
|
var exports2 = {
|
5452
5492
|
Root: BranchPickerRoot,
|
5453
|
-
Previous:
|
5493
|
+
Previous: BranchPickerPrevious,
|
5454
5494
|
Next: BranchPickerNext
|
5455
5495
|
};
|
5456
5496
|
var branch_picker_default = Object.assign(BranchPicker, exports2);
|
@@ -5720,23 +5760,27 @@ var ComposerSendButton = withDefaults(TooltipIconButton, {
|
|
5720
5760
|
variant: "default",
|
5721
5761
|
className: "aui-composer-send"
|
5722
5762
|
});
|
5723
|
-
var ComposerSend = forwardRef28(
|
5724
|
-
|
5725
|
-
|
5726
|
-
|
5727
|
-
|
5728
|
-
});
|
5763
|
+
var ComposerSend = forwardRef28(
|
5764
|
+
(props, ref) => {
|
5765
|
+
const {
|
5766
|
+
strings: { composer: { send: { tooltip = "Send" } = {} } = {} } = {}
|
5767
|
+
} = useThreadConfig();
|
5768
|
+
return /* @__PURE__ */ jsx46(composer_exports.Send, { asChild: true, children: /* @__PURE__ */ jsx46(ComposerSendButton, { tooltip, ...props, ref, children: props.children ?? /* @__PURE__ */ jsx46(SendHorizontalIcon, {}) }) });
|
5769
|
+
}
|
5770
|
+
);
|
5729
5771
|
ComposerSend.displayName = "ComposerSend";
|
5730
5772
|
var ComposerCancelButton = withDefaults(TooltipIconButton, {
|
5731
5773
|
variant: "default",
|
5732
5774
|
className: "aui-composer-cancel"
|
5733
5775
|
});
|
5734
|
-
var ComposerCancel = forwardRef28(
|
5735
|
-
|
5736
|
-
|
5737
|
-
|
5738
|
-
|
5739
|
-
});
|
5776
|
+
var ComposerCancel = forwardRef28(
|
5777
|
+
(props, ref) => {
|
5778
|
+
const {
|
5779
|
+
strings: { composer: { cancel: { tooltip = "Cancel" } = {} } = {} } = {}
|
5780
|
+
} = useThreadConfig();
|
5781
|
+
return /* @__PURE__ */ jsx46(composer_exports.Cancel, { asChild: true, children: /* @__PURE__ */ jsx46(ComposerCancelButton, { tooltip, ...props, ref, children: props.children ?? /* @__PURE__ */ jsx46(CircleStopIcon, {}) }) });
|
5782
|
+
}
|
5783
|
+
);
|
5740
5784
|
ComposerCancel.displayName = "ComposerCancel";
|
5741
5785
|
var exports6 = {
|
5742
5786
|
Root: ComposerRoot,
|
@@ -5768,11 +5812,9 @@ var ThreadWelcomeRootStyled = withDefaults("div", {
|
|
5768
5812
|
var ThreadWelcomeCenter = withDefaults("div", {
|
5769
5813
|
className: "aui-thread-welcome-center"
|
5770
5814
|
});
|
5771
|
-
var ThreadWelcomeRoot = forwardRef29(
|
5772
|
-
(props, ref)
|
5773
|
-
|
5774
|
-
}
|
5775
|
-
);
|
5815
|
+
var ThreadWelcomeRoot = forwardRef29((props, ref) => {
|
5816
|
+
return /* @__PURE__ */ jsx47(thread_exports.Empty, { children: /* @__PURE__ */ jsx47(ThreadWelcomeRootStyled, { ...props, ref }) });
|
5817
|
+
});
|
5776
5818
|
ThreadWelcomeRoot.displayName = "ThreadWelcomeRoot";
|
5777
5819
|
var ThreadWelcomeAvatar = () => {
|
5778
5820
|
const { assistantAvatar: avatar = { fallback: "A" } } = useThreadConfig();
|
@@ -5889,19 +5931,17 @@ UserMessageRoot.displayName = "UserMessageRoot";
|
|
5889
5931
|
var UserMessageContentWrapper = withDefaults("div", {
|
5890
5932
|
className: "aui-user-message-content"
|
5891
5933
|
});
|
5892
|
-
var UserMessageContent = forwardRef31(
|
5893
|
-
({
|
5894
|
-
|
5895
|
-
|
5896
|
-
{
|
5897
|
-
components
|
5898
|
-
|
5899
|
-
Text: components?.Text ?? content_part_default.Text
|
5900
|
-
}
|
5934
|
+
var UserMessageContent = forwardRef31(({ components, ...props }, ref) => {
|
5935
|
+
return /* @__PURE__ */ jsx50(UserMessageContentWrapper, { ...props, ref, children: /* @__PURE__ */ jsx50(
|
5936
|
+
message_exports.Content,
|
5937
|
+
{
|
5938
|
+
components: {
|
5939
|
+
...components,
|
5940
|
+
Text: components?.Text ?? content_part_default.Text
|
5901
5941
|
}
|
5902
|
-
|
5903
|
-
}
|
5904
|
-
);
|
5942
|
+
}
|
5943
|
+
) });
|
5944
|
+
});
|
5905
5945
|
UserMessageContent.displayName = "UserMessageContent";
|
5906
5946
|
var UserMessageAttachmentsContainer = withDefaults("div", {
|
5907
5947
|
className: "aui-user-message-attachments"
|
@@ -5951,25 +5991,19 @@ var EditComposerFooter = withDefaults("div", {
|
|
5951
5991
|
className: "aui-edit-composer-footer"
|
5952
5992
|
});
|
5953
5993
|
EditComposerFooter.displayName = "EditComposerFooter";
|
5954
|
-
var EditComposerCancel = forwardRef32(
|
5955
|
-
|
5956
|
-
|
5957
|
-
|
5958
|
-
|
5959
|
-
|
5960
|
-
} = useThreadConfig();
|
5961
|
-
return /* @__PURE__ */ jsx51(composer_exports.Cancel, { asChild: true, children: /* @__PURE__ */ jsx51(Button, { variant: "ghost", ...props, ref, children: props.children ?? label }) });
|
5962
|
-
}
|
5963
|
-
);
|
5994
|
+
var EditComposerCancel = forwardRef32((props, ref) => {
|
5995
|
+
const {
|
5996
|
+
strings: { editComposer: { cancel: { label = "Cancel" } = {} } = {} } = {}
|
5997
|
+
} = useThreadConfig();
|
5998
|
+
return /* @__PURE__ */ jsx51(composer_exports.Cancel, { asChild: true, children: /* @__PURE__ */ jsx51(Button, { variant: "ghost", ...props, ref, children: props.children ?? label }) });
|
5999
|
+
});
|
5964
6000
|
EditComposerCancel.displayName = "EditComposerCancel";
|
5965
|
-
var EditComposerSend = forwardRef32(
|
5966
|
-
|
5967
|
-
|
5968
|
-
|
5969
|
-
|
5970
|
-
|
5971
|
-
}
|
5972
|
-
);
|
6001
|
+
var EditComposerSend = forwardRef32((props, ref) => {
|
6002
|
+
const {
|
6003
|
+
strings: { editComposer: { send: { label = "Send" } = {} } = {} } = {}
|
6004
|
+
} = useThreadConfig();
|
6005
|
+
return /* @__PURE__ */ jsx51(composer_exports.Send, { asChild: true, children: /* @__PURE__ */ jsx51(Button, { ...props, ref, children: props.children ?? label }) });
|
6006
|
+
});
|
5973
6007
|
EditComposerSend.displayName = "EditComposerSend";
|
5974
6008
|
var exports11 = {
|
5975
6009
|
Root: EditComposerRoot,
|
@@ -6081,7 +6115,10 @@ var AssistantModal = (config) => {
|
|
6081
6115
|
] });
|
6082
6116
|
};
|
6083
6117
|
AssistantModal.displayName = "AssistantModal";
|
6084
|
-
var AssistantModalRoot = ({
|
6118
|
+
var AssistantModalRoot = ({
|
6119
|
+
config,
|
6120
|
+
...props
|
6121
|
+
}) => {
|
6085
6122
|
return /* @__PURE__ */ jsx53(ThreadConfigProvider, { config, children: /* @__PURE__ */ jsx53(assistantModal_exports.Root, { ...props }) });
|
6086
6123
|
};
|
6087
6124
|
AssistantModalRoot.displayName = "AssistantModalRoot";
|