inline-chat-kit 0.57.0 → 0.58.0
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/CHANGELOG.md +41 -0
- package/README.md +70 -2
- package/dist/ChatExperience/ChatExperience.d.ts +43 -2
- package/dist/{ChatExperience-Bawy_cnn.js → ChatExperience-CrWU56fi.js} +739 -679
- package/dist/ChatExperience-CrWU56fi.js.map +1 -0
- package/dist/ChatInput/ChatInput.d.ts +10 -0
- package/dist/ChatTurnRow/ChatTurnRow.d.ts +14 -1
- package/dist/Conversation/Conversation.d.ts +11 -0
- package/dist/TextHighlighter/TextHighlighter.d.ts +12 -1
- package/dist/demo/ChatExperienceDemo.d.ts +4 -1
- package/dist/demo.js +152 -140
- package/dist/demo.js.map +1 -1
- package/dist/inline-chat-kit.css +1 -1
- package/dist/inline-chat-kit.js +1 -1
- package/dist/useChatTurns/useChatTurns.d.ts +14 -1
- package/package.json +1 -1
- package/dist/ChatExperience-Bawy_cnn.js.map +0 -1
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
import e, { createContext as t, createElement as n, forwardRef as r, isValidElement as i, memo as a, useCallback as o, useContext as s, useEffect as c, useId as l, useImperativeHandle as u, useLayoutEffect as d, useMemo as f, useRef as p, useState as m, useSyncExternalStore as h } from "react";
|
|
3
3
|
import { Fragment as g, jsx as _, jsxs as v } from "react/jsx-runtime";
|
|
4
4
|
import { AnimatePresence as y, LayoutGroup as b, MotionConfig as x, animate as S, motion as C, useAnimationControls as w, useMotionValue as T, useReducedMotion as E } from "motion/react";
|
|
5
|
-
import { ArrowDown as D, ArrowLeft as O, Bookmark as k, Brain as A, Check as j, ChevronDown as M, ChevronLeft as
|
|
5
|
+
import { ArrowDown as D, ArrowLeft as O, Bookmark as k, Brain as A, Check as j, ChevronDown as M, ChevronLeft as N, ChevronRight as ee, Copy as P, CornerDownLeft as F, File as I, FileText as te, Film as L, Highlighter as ne, Image as re, Link2 as ie, Maximize2 as R, MessageCircle as ae, Mic as oe, Minimize2 as se, Moon as ce, MoreHorizontal as le, Music as ue, Palette as z, Paperclip as de, Pencil as fe, Plus as pe, RotateCcw as me, Save as he, Share as ge, Square as _e, Sun as ve, TextCursor as ye, ThumbsDown as be, ThumbsUp as xe, Trash2 as Se, TriangleAlert as Ce, X as we } from "lucide-react";
|
|
6
6
|
var B = {
|
|
7
7
|
btn: "ick-btn-ZW5E",
|
|
8
8
|
xs: "ick-xs-rDs4",
|
|
@@ -67,7 +67,7 @@ var B = {
|
|
|
67
67
|
})
|
|
68
68
|
]
|
|
69
69
|
});
|
|
70
|
-
}),
|
|
70
|
+
}), De = {
|
|
71
71
|
list: "ick-list-4-Xw",
|
|
72
72
|
item: "ick-item-5jP3",
|
|
73
73
|
picture: "ick-picture-JacB",
|
|
@@ -76,7 +76,7 @@ var B = {
|
|
|
76
76
|
name: "ick-name-6t7S",
|
|
77
77
|
size: "ick-size-sR5p",
|
|
78
78
|
remove: "ick-remove-6I5y"
|
|
79
|
-
},
|
|
79
|
+
}, Oe = {
|
|
80
80
|
approval: {
|
|
81
81
|
once: "Allow once",
|
|
82
82
|
always: "Always allow",
|
|
@@ -226,9 +226,9 @@ var B = {
|
|
|
226
226
|
paragraph: "Paragraph {index}",
|
|
227
227
|
responding: "Generating response"
|
|
228
228
|
}
|
|
229
|
-
},
|
|
230
|
-
function
|
|
231
|
-
let n = s(
|
|
229
|
+
}, ke = t({});
|
|
230
|
+
function Ae({ labels: e, children: t }) {
|
|
231
|
+
let n = s(ke), r = e ? JSON.stringify(e) : "", i = f(() => {
|
|
232
232
|
if (!r) return n;
|
|
233
233
|
let e = JSON.parse(r), t = { ...n };
|
|
234
234
|
for (let r of Object.keys(e)) t[r] = {
|
|
@@ -237,25 +237,25 @@ function ke({ labels: e, children: t }) {
|
|
|
237
237
|
};
|
|
238
238
|
return t;
|
|
239
239
|
}, [n, r]);
|
|
240
|
-
return /* @__PURE__ */ _(
|
|
240
|
+
return /* @__PURE__ */ _(ke.Provider, {
|
|
241
241
|
value: i,
|
|
242
242
|
children: t
|
|
243
243
|
});
|
|
244
244
|
}
|
|
245
|
-
function
|
|
246
|
-
let n = s(
|
|
245
|
+
function H(e, t) {
|
|
246
|
+
let n = s(ke)[e];
|
|
247
247
|
return {
|
|
248
|
-
...
|
|
248
|
+
...Oe[e],
|
|
249
249
|
...n,
|
|
250
250
|
...t
|
|
251
251
|
};
|
|
252
252
|
}
|
|
253
|
-
function
|
|
253
|
+
function je(e, t) {
|
|
254
254
|
return e.replace(/\{(\w+)\}/g, (e, n) => n in t ? String(t[n]) : e);
|
|
255
255
|
}
|
|
256
256
|
//#endregion
|
|
257
257
|
//#region src/Attachments/Attachments.tsx
|
|
258
|
-
function
|
|
258
|
+
function U(e) {
|
|
259
259
|
if (e === void 0 || !Number.isFinite(e) || e < 0) return "";
|
|
260
260
|
if (e < 1024) return `${e} B`;
|
|
261
261
|
let t = [
|
|
@@ -269,40 +269,40 @@ function je(e) {
|
|
|
269
269
|
var Me = (e) => !!e.url && (e.type ?? "").startsWith("image/"), Ne = (e) => e.replace(/["\\]/g, encodeURIComponent);
|
|
270
270
|
function Pe({ type: e }) {
|
|
271
271
|
let t = (e ?? "").split("/")[0];
|
|
272
|
-
return _(t === "image" ?
|
|
272
|
+
return _(t === "image" ? re : t === "video" ? L : t === "audio" ? ue : e === "application/pdf" || t === "text" ? te : I, {
|
|
273
273
|
size: 16,
|
|
274
274
|
"aria-hidden": !0
|
|
275
275
|
});
|
|
276
276
|
}
|
|
277
277
|
function Fe({ attachments: e, onRemove: t, labels: n, className: r, ...i }) {
|
|
278
|
-
let a =
|
|
278
|
+
let a = H("attachments", n);
|
|
279
279
|
return e.length === 0 ? null : /* @__PURE__ */ _("ul", {
|
|
280
|
-
className: [
|
|
280
|
+
className: [De.list, r ?? ""].filter(Boolean).join(" "),
|
|
281
281
|
...i,
|
|
282
282
|
children: e.map((e) => {
|
|
283
|
-
let n =
|
|
283
|
+
let n = U(e.size);
|
|
284
284
|
return /* @__PURE__ */ v("li", {
|
|
285
|
-
className:
|
|
285
|
+
className: De.item,
|
|
286
286
|
"data-picture": Me(e) || void 0,
|
|
287
287
|
children: [Me(e) ? /* @__PURE__ */ _("span", {
|
|
288
|
-
className:
|
|
288
|
+
className: De.picture,
|
|
289
289
|
style: { backgroundImage: `url("${Ne(e.url)}")` },
|
|
290
290
|
role: "img",
|
|
291
291
|
"aria-label": e.name
|
|
292
292
|
}) : /* @__PURE__ */ v(g, { children: [/* @__PURE__ */ _("span", {
|
|
293
|
-
className:
|
|
293
|
+
className: De.glyph,
|
|
294
294
|
children: /* @__PURE__ */ _(Pe, { type: e.type })
|
|
295
295
|
}), /* @__PURE__ */ v("span", {
|
|
296
|
-
className:
|
|
296
|
+
className: De.body,
|
|
297
297
|
children: [/* @__PURE__ */ _("span", {
|
|
298
|
-
className:
|
|
298
|
+
className: De.name,
|
|
299
299
|
children: e.name
|
|
300
300
|
}), n && /* @__PURE__ */ _("span", {
|
|
301
|
-
className:
|
|
301
|
+
className: De.size,
|
|
302
302
|
children: n
|
|
303
303
|
})]
|
|
304
304
|
})] }), t && /* @__PURE__ */ _("span", {
|
|
305
|
-
className:
|
|
305
|
+
className: De.remove,
|
|
306
306
|
children: /* @__PURE__ */ _(V, {
|
|
307
307
|
variant: "glass",
|
|
308
308
|
size: "s",
|
|
@@ -371,7 +371,7 @@ function Le({ mode: e, color: t = "currentColor", duration: n = .22, size: r = 1
|
|
|
371
371
|
strokeWidth: 1.8,
|
|
372
372
|
strokeLinecap: "round",
|
|
373
373
|
strokeLinejoin: "round"
|
|
374
|
-
}) : e === "mic" ? /* @__PURE__ */ _(
|
|
374
|
+
}) : e === "mic" ? /* @__PURE__ */ _(oe, {
|
|
375
375
|
size: r,
|
|
376
376
|
color: t,
|
|
377
377
|
strokeWidth: 1.8,
|
|
@@ -421,7 +421,7 @@ var W = {
|
|
|
421
421
|
//#endregion
|
|
422
422
|
//#region src/ChatInput/HoverActionsRow.tsx
|
|
423
423
|
function Re({ showActions: e, showReadMore: t, isExpanded: n, setIsExpanded: r, onCopy: i, onEdit: a, value: o, ac: s }) {
|
|
424
|
-
let c =
|
|
424
|
+
let c = H("input");
|
|
425
425
|
return /* @__PURE__ */ _(y, {
|
|
426
426
|
initial: !1,
|
|
427
427
|
children: e && /* @__PURE__ */ v(C.div, {
|
|
@@ -491,7 +491,7 @@ function Re({ showActions: e, showReadMore: t, isExpanded: n, setIsExpanded: r,
|
|
|
491
491
|
label: c.copy
|
|
492
492
|
}, {
|
|
493
493
|
id: "edit",
|
|
494
|
-
icon: /* @__PURE__ */ _(
|
|
494
|
+
icon: /* @__PURE__ */ _(fe, {
|
|
495
495
|
size: 14,
|
|
496
496
|
"aria-hidden": !0
|
|
497
497
|
}),
|
|
@@ -528,12 +528,12 @@ function Re({ showActions: e, showReadMore: t, isExpanded: n, setIsExpanded: r,
|
|
|
528
528
|
//#endregion
|
|
529
529
|
//#region src/ChatInput/AddCardsOverlay.tsx
|
|
530
530
|
function ze() {
|
|
531
|
-
let e =
|
|
531
|
+
let e = H("input");
|
|
532
532
|
return [
|
|
533
533
|
{
|
|
534
534
|
id: "attach",
|
|
535
535
|
label: e.attach,
|
|
536
|
-
icon: /* @__PURE__ */ _(
|
|
536
|
+
icon: /* @__PURE__ */ _(de, {
|
|
537
537
|
size: 16,
|
|
538
538
|
"aria-hidden": !0
|
|
539
539
|
})
|
|
@@ -541,7 +541,7 @@ function ze() {
|
|
|
541
541
|
{
|
|
542
542
|
id: "design",
|
|
543
543
|
label: e.design,
|
|
544
|
-
icon: /* @__PURE__ */ _(
|
|
544
|
+
icon: /* @__PURE__ */ _(z, {
|
|
545
545
|
size: 16,
|
|
546
546
|
"aria-hidden": !0
|
|
547
547
|
})
|
|
@@ -549,7 +549,7 @@ function ze() {
|
|
|
549
549
|
{
|
|
550
550
|
id: "connectors",
|
|
551
551
|
label: e.connectors,
|
|
552
|
-
icon: /* @__PURE__ */ _(
|
|
552
|
+
icon: /* @__PURE__ */ _(ie, {
|
|
553
553
|
size: 16,
|
|
554
554
|
"aria-hidden": !0
|
|
555
555
|
})
|
|
@@ -557,7 +557,7 @@ function ze() {
|
|
|
557
557
|
];
|
|
558
558
|
}
|
|
559
559
|
function Be({ isAddOpen: e, setIsAddOpen: t, onAdd: n, items: r, showInlineGlyph: i, showButtons: a, ac: o }) {
|
|
560
|
-
let s = ze(), c = r ?? s, { closeMenu: l } =
|
|
560
|
+
let s = ze(), c = r ?? s, { closeMenu: l } = H("input");
|
|
561
561
|
return /* @__PURE__ */ _(y, { children: e && /* @__PURE__ */ v(g, { children: [/* @__PURE__ */ _(C.div, {
|
|
562
562
|
className: W.addBackdrop,
|
|
563
563
|
initial: { opacity: 0 },
|
|
@@ -698,7 +698,7 @@ function Ge(e) {
|
|
|
698
698
|
let n = document.createElement("div");
|
|
699
699
|
return n.setAttribute("role", e === "assertive" ? "alert" : "status"), n.setAttribute("aria-live", e), n.setAttribute("aria-atomic", "true"), n.dataset.inlineChatKit = "live-region", Object.assign(n.style, We), document.body.appendChild(n), He.set(e, n), n;
|
|
700
700
|
}
|
|
701
|
-
function
|
|
701
|
+
function Ke(e, t = "polite") {
|
|
702
702
|
if (!e) return;
|
|
703
703
|
let n = Ge(t);
|
|
704
704
|
if (!n) return;
|
|
@@ -709,9 +709,9 @@ function G(e, t = "polite") {
|
|
|
709
709
|
}
|
|
710
710
|
//#endregion
|
|
711
711
|
//#region src/reducedMotion/reducedMotion.ts
|
|
712
|
-
var
|
|
712
|
+
var G = "(prefers-reduced-motion: reduce)", K;
|
|
713
713
|
function q() {
|
|
714
|
-
return
|
|
714
|
+
return K === void 0 && (K = typeof window < "u" && window.matchMedia ? window.matchMedia(G) : null), K?.matches ?? !1;
|
|
715
715
|
}
|
|
716
716
|
//#endregion
|
|
717
717
|
//#region src/voice/useVoiceInput.ts
|
|
@@ -730,7 +730,7 @@ function Qe({ onTranscribe: e, onTranscript: t, onDone: n, meterRef: r, labels:
|
|
|
730
730
|
onTranscript: t,
|
|
731
731
|
onDone: n
|
|
732
732
|
}), w = p({
|
|
733
|
-
...
|
|
733
|
+
...Oe.voice,
|
|
734
734
|
...i
|
|
735
735
|
});
|
|
736
736
|
c(() => {
|
|
@@ -739,7 +739,7 @@ function Qe({ onTranscribe: e, onTranscript: t, onDone: n, meterRef: r, labels:
|
|
|
739
739
|
onTranscript: t,
|
|
740
740
|
onDone: n
|
|
741
741
|
}, w.current = {
|
|
742
|
-
...
|
|
742
|
+
...Oe.voice,
|
|
743
743
|
...i
|
|
744
744
|
};
|
|
745
745
|
});
|
|
@@ -777,7 +777,7 @@ function Qe({ onTranscribe: e, onTranscript: t, onDone: n, meterRef: r, labels:
|
|
|
777
777
|
return;
|
|
778
778
|
}
|
|
779
779
|
let r = new AbortController();
|
|
780
|
-
x.current = r, l("transcribing"),
|
|
780
|
+
x.current = r, l("transcribing"), Ke(w.current.transcribing);
|
|
781
781
|
try {
|
|
782
782
|
let i = await D(n(e, {
|
|
783
783
|
signal: r.signal,
|
|
@@ -785,13 +785,13 @@ function Qe({ onTranscribe: e, onTranscript: t, onDone: n, meterRef: r, labels:
|
|
|
785
785
|
}));
|
|
786
786
|
if (r.signal.aborted) return;
|
|
787
787
|
if (!i) {
|
|
788
|
-
|
|
788
|
+
Ke(w.current.nothingHeard), l("idle");
|
|
789
789
|
return;
|
|
790
790
|
}
|
|
791
|
-
C.current.onTranscript?.(i), C.current.onDone?.(i),
|
|
791
|
+
C.current.onTranscript?.(i), C.current.onDone?.(i), Ke(w.current.transcriptAdded), l("idle");
|
|
792
792
|
} catch (e) {
|
|
793
793
|
if (r.signal.aborted) return;
|
|
794
|
-
d(e instanceof Error ? e.message : w.current.transcriptFailed), l("failed"),
|
|
794
|
+
d(e instanceof Error ? e.message : w.current.transcriptFailed), l("failed"), Ke(w.current.transcriptFailed, "assertive");
|
|
795
795
|
} finally {
|
|
796
796
|
x.current = null;
|
|
797
797
|
}
|
|
@@ -803,7 +803,7 @@ function Qe({ onTranscribe: e, onTranscript: t, onDone: n, meterRef: r, labels:
|
|
|
803
803
|
e = await navigator.mediaDevices.getUserMedia({ audio: !0 });
|
|
804
804
|
} catch (e) {
|
|
805
805
|
let t = e?.name;
|
|
806
|
-
t === "NotAllowedError" || t === "SecurityError" ? (l("denied"),
|
|
806
|
+
t === "NotAllowedError" || t === "SecurityError" ? (l("denied"), Ke(w.current.refused, "assertive")) : (d(t === "NotFoundError" ? w.current.notFound : w.current.couldNotOpen), l("failed"), Ke(w.current.couldNotOpen, "assertive"));
|
|
807
807
|
return;
|
|
808
808
|
}
|
|
809
809
|
_.current = e, b.current = [];
|
|
@@ -823,7 +823,7 @@ function Qe({ onTranscribe: e, onTranscript: t, onDone: n, meterRef: r, labels:
|
|
|
823
823
|
return;
|
|
824
824
|
}
|
|
825
825
|
O(r, e);
|
|
826
|
-
}, n.start(), l("listening"),
|
|
826
|
+
}, n.start(), l("listening"), Ke(w.current.listening);
|
|
827
827
|
}, [
|
|
828
828
|
E,
|
|
829
829
|
T,
|
|
@@ -831,7 +831,7 @@ function Qe({ onTranscribe: e, onTranscript: t, onDone: n, meterRef: r, labels:
|
|
|
831
831
|
]), A = o(() => {
|
|
832
832
|
let e = g.current;
|
|
833
833
|
if (e && e.state !== "inactive") {
|
|
834
|
-
|
|
834
|
+
Ke(w.current.stoppedListening), e.stop();
|
|
835
835
|
return;
|
|
836
836
|
}
|
|
837
837
|
x.current?.abort(), x.current = null, T(), l("idle");
|
|
@@ -944,24 +944,24 @@ var nt = .9, rt = {
|
|
|
944
944
|
n.deleteContents();
|
|
945
945
|
let r = document.createTextNode(e);
|
|
946
946
|
return n.insertNode(r), n.setStartAfter(r), n.collapse(!0), t.removeAllRanges(), t.addRange(n), !1;
|
|
947
|
-
}, ot = r(function({ state: e, value: t, onChange: n, onSubmit: r, onStop: i, onAdd: a, attachments: s, onAttach: d, onRemoveAttachment: f, accept: h = "image/*", multiple: T = !1, onTranscribe: E, onCopy: D, onEdit: O, onCancelEdit: k, isEditing: A = !1,
|
|
948
|
-
let te = l(),
|
|
947
|
+
}, ot = r(function({ state: e, value: t, onChange: n, onSubmit: r, onStop: i, onAdd: a, attachments: s, onAttach: d, onRemoveAttachment: f, accept: h = "image/*", multiple: T = !1, onTranscribe: E, onCopy: D, onEdit: O, onCancelEdit: k, isEditing: A = !1, busy: j = !1, placeholder: M, menu: N, labels: ee, animationConfig: P, style: F }, I) {
|
|
948
|
+
let te = l(), L = H("input", ee), ne = H("voice"), re = M ?? L.placeholder, ie = N !== !1, R = p(null), ae = p(null), oe = p(null), se = p(0), ce = p(!1), le = p(null), [ue, z] = m(!1), [de, fe] = m(!1), [me, he] = m(!1), [ge, _e] = m(!0), [ve, ye] = m(!1), [be, xe] = m(!1), [Se, Ce] = m(!1), B = p(0), Te = p(!1), Ee = p(0), De = p(!1), Oe = p(null);
|
|
949
949
|
c(() => () => {
|
|
950
|
-
|
|
950
|
+
Oe.current && clearTimeout(Oe.current);
|
|
951
951
|
}, []);
|
|
952
|
-
let
|
|
953
|
-
|
|
954
|
-
let
|
|
955
|
-
|
|
956
|
-
let
|
|
952
|
+
let ke = w(), Ae = p(e), je = p(P);
|
|
953
|
+
je.current = P;
|
|
954
|
+
let U = p(null), [Me, Ne] = m([]), Pe = s ?? Me, Ie = p(Pe);
|
|
955
|
+
Ie.current = Pe;
|
|
956
|
+
let ze = p([]);
|
|
957
957
|
c(() => () => {
|
|
958
|
-
|
|
958
|
+
ze.current.forEach((e) => URL.revokeObjectURL(e)), ze.current = [];
|
|
959
959
|
}, []);
|
|
960
|
-
let
|
|
960
|
+
let Ve = o((e) => {
|
|
961
961
|
if (!e) return;
|
|
962
|
-
let t =
|
|
963
|
-
t !== -1 && (URL.revokeObjectURL(e),
|
|
964
|
-
}, []),
|
|
962
|
+
let t = ze.current.indexOf(e);
|
|
963
|
+
t !== -1 && (URL.revokeObjectURL(e), ze.current.splice(t, 1));
|
|
964
|
+
}, []), He = (e) => {
|
|
965
965
|
let t = Array.from(e.target.files ?? []);
|
|
966
966
|
if (e.target.value = "", t.length === 0) return;
|
|
967
967
|
if (d) {
|
|
@@ -970,7 +970,7 @@ var nt = .9, rt = {
|
|
|
970
970
|
}
|
|
971
971
|
let n = t.map((e) => {
|
|
972
972
|
let t = URL.createObjectURL(e);
|
|
973
|
-
return
|
|
973
|
+
return ze.current.push(t), {
|
|
974
974
|
id: `${e.name}-${e.size}-${e.lastModified}`,
|
|
975
975
|
name: e.name,
|
|
976
976
|
type: e.type,
|
|
@@ -978,56 +978,56 @@ var nt = .9, rt = {
|
|
|
978
978
|
url: t
|
|
979
979
|
};
|
|
980
980
|
});
|
|
981
|
-
|
|
981
|
+
Ne((e) => {
|
|
982
982
|
if (T) return [...e, ...n];
|
|
983
983
|
let t = n.slice(-1);
|
|
984
|
-
return e.forEach((e) =>
|
|
984
|
+
return e.forEach((e) => Ve(e.url)), n.slice(0, -1).forEach((e) => Ve(e.url)), t;
|
|
985
985
|
});
|
|
986
|
-
},
|
|
986
|
+
}, Ue = o((e) => {
|
|
987
987
|
if (f) {
|
|
988
988
|
f(e);
|
|
989
989
|
return;
|
|
990
990
|
}
|
|
991
|
-
|
|
992
|
-
}, [f,
|
|
993
|
-
u(
|
|
994
|
-
focus: (e) =>
|
|
991
|
+
Ne((t) => (Ve(t.find((t) => t.id === e)?.url), t.filter((t) => t.id !== e)));
|
|
992
|
+
}, [f, Ve]);
|
|
993
|
+
u(I, () => ({
|
|
994
|
+
focus: (e) => R.current?.focus(e),
|
|
995
995
|
setValue: (e) => {
|
|
996
|
-
let t =
|
|
996
|
+
let t = R.current;
|
|
997
997
|
t && (t.textContent = e, $e(t)), n(e);
|
|
998
998
|
},
|
|
999
999
|
getValue: () => t
|
|
1000
1000
|
}), [n, t]);
|
|
1001
|
-
let
|
|
1001
|
+
let We = p(null), Ge = p(null), Ke = p(null);
|
|
1002
1002
|
c(() => {
|
|
1003
1003
|
if (!E) return;
|
|
1004
|
-
let e =
|
|
1004
|
+
let e = R.current;
|
|
1005
1005
|
if (!e) return;
|
|
1006
1006
|
let t = () => {
|
|
1007
1007
|
let t = window.getSelection();
|
|
1008
|
-
!t || t.rangeCount === 0 || e.contains(t.getRangeAt(0).endContainer) && (
|
|
1008
|
+
!t || t.rangeCount === 0 || e.contains(t.getRangeAt(0).endContainer) && (Ke.current = et(e));
|
|
1009
1009
|
};
|
|
1010
1010
|
return document.addEventListener("selectionchange", t), () => document.removeEventListener("selectionchange", t);
|
|
1011
1011
|
}, [E]);
|
|
1012
1012
|
let G = Qe({
|
|
1013
1013
|
onTranscribe: E,
|
|
1014
1014
|
onTranscript: o((e) => {
|
|
1015
|
-
let t =
|
|
1015
|
+
let t = Ge.current, r = R.current;
|
|
1016
1016
|
if (!t || !r) return;
|
|
1017
1017
|
let i = t.base.slice(0, t.at) + e + t.base.slice(t.at);
|
|
1018
1018
|
r.textContent = i, tt(r, t.at + e.length), n(i);
|
|
1019
1019
|
}, [n]),
|
|
1020
1020
|
onDone: () => {
|
|
1021
|
-
|
|
1021
|
+
Ge.current = null, R.current?.focus();
|
|
1022
1022
|
},
|
|
1023
|
-
meterRef:
|
|
1023
|
+
meterRef: We,
|
|
1024
1024
|
labels: ne
|
|
1025
|
-
}), K = e === "responding" || e === "resting",
|
|
1025
|
+
}), K = e === "responding" || e === "resting", q = K, qe = t.trim().length > 0 || Pe.length > 0, Je = e === "typing" || e === "idle", Ye = Je && qe && !j, Xe = !!i && (e === "responding" || j && Je), Ze = j && Je && qe && !i, rt = e === "resting" && ue, ot = rt, st = e === "resting" && be, ct = G.state === "listening" || G.state === "requesting" || G.state === "transcribing", lt = !!E && G.supported && !A, ut = Ye || Xe || Ze, J = P, dt = J ? {
|
|
1026
1026
|
type: "spring",
|
|
1027
1027
|
stiffness: J.bubble.stiffness,
|
|
1028
1028
|
damping: J.bubble.damping,
|
|
1029
1029
|
mass: J.bubble.mass
|
|
1030
|
-
} : it,
|
|
1030
|
+
} : it, ft = o(() => {
|
|
1031
1031
|
let e = ae.current, t = oe.current;
|
|
1032
1032
|
if (!e || !t) return;
|
|
1033
1033
|
if (!(e.scrollHeight > e.clientHeight)) {
|
|
@@ -1039,27 +1039,27 @@ var nt = .9, rt = {
|
|
|
1039
1039
|
}, []);
|
|
1040
1040
|
c(() => {
|
|
1041
1041
|
let e = ae.current;
|
|
1042
|
-
if (e) return e.addEventListener("scroll",
|
|
1043
|
-
}, [
|
|
1042
|
+
if (e) return e.addEventListener("scroll", ft, { passive: !0 }), () => e.removeEventListener("scroll", ft);
|
|
1043
|
+
}, [ft]), c(() => {
|
|
1044
1044
|
let e = requestAnimationFrame(() => {
|
|
1045
1045
|
let e = ae.current;
|
|
1046
|
-
e && !
|
|
1046
|
+
e && !q && (e.scrollTop = e.scrollHeight), ft();
|
|
1047
1047
|
});
|
|
1048
1048
|
return () => cancelAnimationFrame(e);
|
|
1049
1049
|
}, [
|
|
1050
1050
|
t,
|
|
1051
|
-
|
|
1052
|
-
|
|
1051
|
+
q,
|
|
1052
|
+
ft
|
|
1053
1053
|
]), c(() => {
|
|
1054
|
-
(e === "idle" || e === "typing") &&
|
|
1054
|
+
(e === "idle" || e === "typing") && R.current?.focus({ preventScroll: !0 });
|
|
1055
1055
|
}, [e]), c(() => {
|
|
1056
|
-
let e =
|
|
1057
|
-
e && (
|
|
1056
|
+
let e = R.current;
|
|
1057
|
+
e && (B.current = e.scrollHeight || 17);
|
|
1058
1058
|
}, []), c(() => {
|
|
1059
|
-
let e =
|
|
1060
|
-
!e || !
|
|
1061
|
-
let n = t ? t.offsetWidth : 0, r = e.clientWidth - 16, i = (ae.current?.scrollHeight ?? 0) >
|
|
1062
|
-
|
|
1059
|
+
let e = R.current, t = le.current;
|
|
1060
|
+
!e || !B.current || requestAnimationFrame(() => {
|
|
1061
|
+
let n = t ? t.offsetWidth : 0, r = e.clientWidth - 16, i = (ae.current?.scrollHeight ?? 0) > B.current + 2, a = je.current;
|
|
1062
|
+
Te.current ? !(i || n >= r - 2) && n < Ee.current * (a?.wrap?.exitThreshold ?? .75) && (Te.current = !1, De.current = !1, he(!1), _e(!0), Oe.current &&= (clearTimeout(Oe.current), null)) : (Ee.current = r, (i || n >= Ee.current * (a?.wrap?.nearThreshold ?? .92)) && (Te.current = !0, De.current = !0, _e(!1)));
|
|
1063
1063
|
});
|
|
1064
1064
|
}, [t]), c(() => {
|
|
1065
1065
|
if (!K) return;
|
|
@@ -1076,24 +1076,24 @@ var nt = .9, rt = {
|
|
|
1076
1076
|
}
|
|
1077
1077
|
});
|
|
1078
1078
|
}, [K]), c(() => {
|
|
1079
|
-
K ?
|
|
1079
|
+
K ? Ce(!1) : (ye(!1), xe(!1));
|
|
1080
1080
|
}, [K]), c(() => {
|
|
1081
1081
|
if (!K) return;
|
|
1082
1082
|
let e = oe.current;
|
|
1083
|
-
e && (
|
|
1083
|
+
e && (be && !ve ? e.dataset.fade = "bottom" : e.removeAttribute("data-fade"));
|
|
1084
1084
|
}, [
|
|
1085
1085
|
K,
|
|
1086
|
-
|
|
1087
|
-
|
|
1086
|
+
be,
|
|
1087
|
+
ve
|
|
1088
1088
|
]), c(() => {
|
|
1089
|
-
let t =
|
|
1090
|
-
if (
|
|
1089
|
+
let t = Ae.current;
|
|
1090
|
+
if (Ae.current = e, t !== "responding" || e !== "resting") return;
|
|
1091
1091
|
requestAnimationFrame(() => {
|
|
1092
1092
|
let e = ae.current;
|
|
1093
|
-
e && (se.current = e.scrollHeight,
|
|
1093
|
+
e && (se.current = e.scrollHeight, xe(e.scrollHeight > 241), ft());
|
|
1094
1094
|
}), fe(!0);
|
|
1095
|
-
let n =
|
|
1096
|
-
|
|
1095
|
+
let n = je.current;
|
|
1096
|
+
ke.start({
|
|
1097
1097
|
scaleX: [
|
|
1098
1098
|
1,
|
|
1099
1099
|
n?.ripple?.scaleX ?? 1.018,
|
|
@@ -1118,26 +1118,31 @@ var nt = .9, rt = {
|
|
|
1118
1118
|
return () => clearTimeout(r);
|
|
1119
1119
|
}, [
|
|
1120
1120
|
e,
|
|
1121
|
-
|
|
1122
|
-
|
|
1121
|
+
ke,
|
|
1122
|
+
ft
|
|
1123
1123
|
]);
|
|
1124
|
-
let
|
|
1125
|
-
let e =
|
|
1126
|
-
e && (
|
|
1127
|
-
}, [n]),
|
|
1128
|
-
e.preventDefault(), at(e.clipboardData.getData("text/plain")) ||
|
|
1129
|
-
}, [
|
|
1130
|
-
e.key === "Enter"
|
|
1124
|
+
let pt = o(() => {
|
|
1125
|
+
let e = R.current;
|
|
1126
|
+
e && (ce.current = !0, n(e.textContent ?? ""));
|
|
1127
|
+
}, [n]), mt = o((e) => {
|
|
1128
|
+
e.preventDefault(), at(e.clipboardData.getData("text/plain")) || pt();
|
|
1129
|
+
}, [pt]), ht = o((e) => {
|
|
1130
|
+
if (e.key === "Enter") {
|
|
1131
|
+
if (e.preventDefault(), e.shiftKey) at("\n") || pt();
|
|
1132
|
+
else if (j) return;
|
|
1133
|
+
else (t.trim().length > 0 || Ie.current.length > 0) && r(t, Ie.current);
|
|
1134
|
+
}
|
|
1131
1135
|
}, [
|
|
1132
1136
|
t,
|
|
1133
1137
|
r,
|
|
1134
|
-
|
|
1138
|
+
pt,
|
|
1139
|
+
j
|
|
1135
1140
|
]);
|
|
1136
1141
|
return c(() => {
|
|
1137
|
-
let e =
|
|
1142
|
+
let e = R.current;
|
|
1138
1143
|
if (e) {
|
|
1139
|
-
if (
|
|
1140
|
-
|
|
1144
|
+
if (ce.current) {
|
|
1145
|
+
ce.current = !1;
|
|
1141
1146
|
return;
|
|
1142
1147
|
}
|
|
1143
1148
|
e.textContent !== t && (e.textContent = t, document.activeElement === e && $e(e));
|
|
@@ -1148,21 +1153,21 @@ var nt = .9, rt = {
|
|
|
1148
1153
|
id: te,
|
|
1149
1154
|
children: /* @__PURE__ */ v("div", {
|
|
1150
1155
|
className: W.wrap,
|
|
1151
|
-
onMouseEnter: () =>
|
|
1152
|
-
onMouseLeave: () =>
|
|
1153
|
-
style:
|
|
1156
|
+
onMouseEnter: () => z(!0),
|
|
1157
|
+
onMouseLeave: () => z(!1),
|
|
1158
|
+
style: F,
|
|
1154
1159
|
children: [
|
|
1155
1160
|
/* @__PURE__ */ _(C.div, {
|
|
1156
1161
|
className: `${W.root} ${K ? W.isGlassRoot : ""}`,
|
|
1157
1162
|
layout: !0,
|
|
1158
|
-
animate: { filter:
|
|
1163
|
+
animate: { filter: Se ? `blur(${J?.addCards?.inputBlur ?? 2}px)` : "blur(0px)" },
|
|
1159
1164
|
style: {
|
|
1160
|
-
pointerEvents:
|
|
1161
|
-
width:
|
|
1162
|
-
maxWidth:
|
|
1165
|
+
pointerEvents: Se ? "none" : "auto",
|
|
1166
|
+
width: F?.width === "100%" ? "100%" : void 0,
|
|
1167
|
+
maxWidth: F?.maxWidth
|
|
1163
1168
|
},
|
|
1164
1169
|
transition: {
|
|
1165
|
-
...
|
|
1170
|
+
...dt,
|
|
1166
1171
|
filter: {
|
|
1167
1172
|
type: "tween",
|
|
1168
1173
|
duration: .2,
|
|
@@ -1170,25 +1175,25 @@ var nt = .9, rt = {
|
|
|
1170
1175
|
}
|
|
1171
1176
|
},
|
|
1172
1177
|
children: /* @__PURE__ */ v(C.div, {
|
|
1173
|
-
className: `${W.surface} ${K ? W.glass : ""} ${
|
|
1178
|
+
className: `${W.surface} ${K ? W.glass : ""} ${rt ? W.hovered : ""} ${de ? W.pulsed : ""}`,
|
|
1174
1179
|
style: {
|
|
1175
1180
|
alignItems: "stretch",
|
|
1176
1181
|
flexDirection: "column",
|
|
1177
1182
|
justifyContent: "center"
|
|
1178
1183
|
},
|
|
1179
|
-
transition:
|
|
1180
|
-
animate:
|
|
1181
|
-
onClick: () =>
|
|
1184
|
+
transition: dt,
|
|
1185
|
+
animate: ke,
|
|
1186
|
+
onClick: () => R.current?.focus(),
|
|
1182
1187
|
children: [
|
|
1183
1188
|
/* @__PURE__ */ _("input", {
|
|
1184
1189
|
type: "file",
|
|
1185
|
-
ref:
|
|
1190
|
+
ref: U,
|
|
1186
1191
|
accept: h,
|
|
1187
1192
|
multiple: T,
|
|
1188
1193
|
style: { display: "none" },
|
|
1189
|
-
onChange:
|
|
1194
|
+
onChange: He
|
|
1190
1195
|
}),
|
|
1191
|
-
/* @__PURE__ */ _(y, { children:
|
|
1196
|
+
/* @__PURE__ */ _(y, { children: Pe.length > 0 && /* @__PURE__ */ _(C.div, {
|
|
1192
1197
|
initial: {
|
|
1193
1198
|
opacity: 0,
|
|
1194
1199
|
height: 0
|
|
@@ -1215,8 +1220,8 @@ var nt = .9, rt = {
|
|
|
1215
1220
|
className: W.attachedTray,
|
|
1216
1221
|
"data-glass": K || void 0,
|
|
1217
1222
|
children: /* @__PURE__ */ _(Fe, {
|
|
1218
|
-
attachments:
|
|
1219
|
-
onRemove: K ? void 0 :
|
|
1223
|
+
attachments: Pe,
|
|
1224
|
+
onRemove: K ? void 0 : Ue
|
|
1220
1225
|
})
|
|
1221
1226
|
})
|
|
1222
1227
|
}) }),
|
|
@@ -1225,15 +1230,15 @@ var nt = .9, rt = {
|
|
|
1225
1230
|
display: "flex",
|
|
1226
1231
|
flexDirection: "row",
|
|
1227
1232
|
alignItems: "center",
|
|
1228
|
-
flexWrap:
|
|
1229
|
-
justifyContent:
|
|
1233
|
+
flexWrap: me ? "wrap" : "nowrap",
|
|
1234
|
+
justifyContent: me ? "flex-end" : "flex-start",
|
|
1230
1235
|
width: "100%",
|
|
1231
1236
|
minWidth: 0,
|
|
1232
1237
|
flex: 1
|
|
1233
1238
|
},
|
|
1234
1239
|
children: [
|
|
1235
1240
|
/* @__PURE__ */ _("span", {
|
|
1236
|
-
ref:
|
|
1241
|
+
ref: le,
|
|
1237
1242
|
"aria-hidden": "true",
|
|
1238
1243
|
style: {
|
|
1239
1244
|
position: "absolute",
|
|
@@ -1248,14 +1253,14 @@ var nt = .9, rt = {
|
|
|
1248
1253
|
/* @__PURE__ */ _("div", {
|
|
1249
1254
|
ref: oe,
|
|
1250
1255
|
className: W.editorClip,
|
|
1251
|
-
style: { flexBasis:
|
|
1256
|
+
style: { flexBasis: me ? "100%" : void 0 },
|
|
1252
1257
|
children: /* @__PURE__ */ _(C.div, {
|
|
1253
1258
|
ref: ae,
|
|
1254
1259
|
className: `${W.editorWrap} ${K ? W.editorWrapGlass : ""}`,
|
|
1255
1260
|
layout: "position",
|
|
1256
|
-
animate: K &&
|
|
1261
|
+
animate: K && be ? { maxHeight: ve ? se.current : 240 } : void 0,
|
|
1257
1262
|
transition: {
|
|
1258
|
-
...
|
|
1263
|
+
...dt,
|
|
1259
1264
|
maxHeight: {
|
|
1260
1265
|
type: "spring",
|
|
1261
1266
|
stiffness: 300,
|
|
@@ -1264,24 +1269,24 @@ var nt = .9, rt = {
|
|
|
1264
1269
|
}
|
|
1265
1270
|
},
|
|
1266
1271
|
children: /* @__PURE__ */ _("div", {
|
|
1267
|
-
ref:
|
|
1272
|
+
ref: R,
|
|
1268
1273
|
className: W.editor,
|
|
1269
|
-
contentEditable:
|
|
1274
|
+
contentEditable: q ? "false" : "plaintext-only",
|
|
1270
1275
|
suppressContentEditableWarning: !0,
|
|
1271
|
-
onInput:
|
|
1272
|
-
onKeyDown:
|
|
1273
|
-
onPaste:
|
|
1276
|
+
onInput: pt,
|
|
1277
|
+
onKeyDown: ht,
|
|
1278
|
+
onPaste: mt,
|
|
1274
1279
|
spellCheck: !1,
|
|
1275
1280
|
role: "textbox",
|
|
1276
1281
|
"aria-multiline": "true",
|
|
1277
1282
|
"aria-label": re,
|
|
1278
|
-
"data-placeholder":
|
|
1283
|
+
"data-placeholder": q ? "" : re
|
|
1279
1284
|
})
|
|
1280
1285
|
})
|
|
1281
1286
|
}),
|
|
1282
1287
|
/* @__PURE__ */ v("div", {
|
|
1283
1288
|
className: W.buttonGroup,
|
|
1284
|
-
children: [!K &&
|
|
1289
|
+
children: [!K && ge && lt && /* @__PURE__ */ _(C.div, {
|
|
1285
1290
|
initial: {
|
|
1286
1291
|
opacity: 0,
|
|
1287
1292
|
scale: nt,
|
|
@@ -1299,7 +1304,7 @@ var nt = .9, rt = {
|
|
|
1299
1304
|
scale: nt,
|
|
1300
1305
|
width: 0,
|
|
1301
1306
|
marginLeft: 0,
|
|
1302
|
-
transition:
|
|
1307
|
+
transition: De.current ? {
|
|
1303
1308
|
type: "tween",
|
|
1304
1309
|
duration: J?.wrap?.exitDuration ?? .15,
|
|
1305
1310
|
ease: "easeOut",
|
|
@@ -1328,7 +1333,7 @@ var nt = .9, rt = {
|
|
|
1328
1333
|
variant: "ghost",
|
|
1329
1334
|
"data-voice": G.state,
|
|
1330
1335
|
icon: /* @__PURE__ */ v(g, { children: [/* @__PURE__ */ _("span", {
|
|
1331
|
-
ref:
|
|
1336
|
+
ref: We,
|
|
1332
1337
|
className: W.voiceMeter,
|
|
1333
1338
|
"data-live": G.state === "listening" || void 0,
|
|
1334
1339
|
"aria-hidden": !0
|
|
@@ -1338,9 +1343,9 @@ var nt = .9, rt = {
|
|
|
1338
1343
|
})] }),
|
|
1339
1344
|
onClick: (e) => {
|
|
1340
1345
|
if (e.stopPropagation(), G.state !== "denied") {
|
|
1341
|
-
if (!
|
|
1342
|
-
let e = Math.min(
|
|
1343
|
-
|
|
1346
|
+
if (!ct) {
|
|
1347
|
+
let e = Math.min(Ke.current ?? t.length, t.length);
|
|
1348
|
+
Ge.current = {
|
|
1344
1349
|
base: t,
|
|
1345
1350
|
at: e
|
|
1346
1351
|
};
|
|
@@ -1351,7 +1356,7 @@ var nt = .9, rt = {
|
|
|
1351
1356
|
"aria-busy": G.state === "requesting" || G.state === "transcribing",
|
|
1352
1357
|
"aria-pressed": G.state === "listening",
|
|
1353
1358
|
disabled: G.state === "denied",
|
|
1354
|
-
"aria-label": G.state === "listening" ?
|
|
1359
|
+
"aria-label": G.state === "listening" ? L.stopListening : G.state === "requesting" ? L.waitingForMicrophone : G.state === "transcribing" ? L.cancelTranscription : G.state === "denied" ? L.microphoneBlocked : L.dictate,
|
|
1355
1360
|
style: {
|
|
1356
1361
|
width: "100%",
|
|
1357
1362
|
height: "100%",
|
|
@@ -1361,11 +1366,11 @@ var nt = .9, rt = {
|
|
|
1361
1366
|
}, "mic"), /* @__PURE__ */ v(y, {
|
|
1362
1367
|
initial: !1,
|
|
1363
1368
|
onExitComplete: () => {
|
|
1364
|
-
|
|
1365
|
-
|
|
1366
|
-
},
|
|
1369
|
+
De.current && (De.current = !1, he(!0), Oe.current && clearTimeout(Oe.current), Oe.current = window.setTimeout(() => {
|
|
1370
|
+
_e(!0), Oe.current = null;
|
|
1371
|
+
}, je.current?.wrap?.slideInDelay ?? 120));
|
|
1367
1372
|
},
|
|
1368
|
-
children: [!K &&
|
|
1373
|
+
children: [!K && ge && (ie || A) && /* @__PURE__ */ _(C.div, {
|
|
1369
1374
|
initial: {
|
|
1370
1375
|
opacity: 0,
|
|
1371
1376
|
scale: nt,
|
|
@@ -1380,7 +1385,7 @@ var nt = .9, rt = {
|
|
|
1380
1385
|
opacity: 0,
|
|
1381
1386
|
scale: nt,
|
|
1382
1387
|
width: 0,
|
|
1383
|
-
transition:
|
|
1388
|
+
transition: De.current ? {
|
|
1384
1389
|
type: "tween",
|
|
1385
1390
|
duration: J?.wrap?.exitDuration ?? .15,
|
|
1386
1391
|
ease: "easeOut",
|
|
@@ -1441,14 +1446,14 @@ var nt = .9, rt = {
|
|
|
1441
1446
|
onClick: (e) => {
|
|
1442
1447
|
e.stopPropagation(), k?.();
|
|
1443
1448
|
},
|
|
1444
|
-
"aria-label":
|
|
1445
|
-
title:
|
|
1449
|
+
"aria-label": L.cancelEdit,
|
|
1450
|
+
title: L.cancelEdit,
|
|
1446
1451
|
style: {
|
|
1447
1452
|
width: "100%",
|
|
1448
1453
|
height: "100%"
|
|
1449
1454
|
}
|
|
1450
1455
|
})
|
|
1451
|
-
}, "cancel-btn") : ie && !
|
|
1456
|
+
}, "cancel-btn") : ie && !Se ? /* @__PURE__ */ _(C.div, {
|
|
1452
1457
|
initial: {
|
|
1453
1458
|
opacity: 0,
|
|
1454
1459
|
scale: .5
|
|
@@ -1476,10 +1481,10 @@ var nt = .9, rt = {
|
|
|
1476
1481
|
"aria-hidden": !0
|
|
1477
1482
|
}),
|
|
1478
1483
|
onClick: (e) => {
|
|
1479
|
-
e.stopPropagation(),
|
|
1484
|
+
e.stopPropagation(), Ce(!0);
|
|
1480
1485
|
},
|
|
1481
|
-
"aria-label":
|
|
1482
|
-
title:
|
|
1486
|
+
"aria-label": L.add,
|
|
1487
|
+
title: L.add,
|
|
1483
1488
|
style: {
|
|
1484
1489
|
width: "100%",
|
|
1485
1490
|
height: "100%"
|
|
@@ -1487,7 +1492,7 @@ var nt = .9, rt = {
|
|
|
1487
1492
|
})
|
|
1488
1493
|
}, "plus-btn") : null
|
|
1489
1494
|
})
|
|
1490
|
-
}, "lead"),
|
|
1495
|
+
}, "lead"), ut && ge && /* @__PURE__ */ _(C.div, {
|
|
1491
1496
|
initial: {
|
|
1492
1497
|
opacity: 0,
|
|
1493
1498
|
scale: nt,
|
|
@@ -1505,7 +1510,7 @@ var nt = .9, rt = {
|
|
|
1505
1510
|
scale: nt,
|
|
1506
1511
|
width: 0,
|
|
1507
1512
|
marginLeft: 0,
|
|
1508
|
-
transition:
|
|
1513
|
+
transition: De.current ? {
|
|
1509
1514
|
type: "tween",
|
|
1510
1515
|
duration: J?.wrap?.exitDuration ?? .15,
|
|
1511
1516
|
ease: "easeOut"
|
|
@@ -1517,8 +1522,8 @@ var nt = .9, rt = {
|
|
|
1517
1522
|
type: "tween",
|
|
1518
1523
|
duration: .15
|
|
1519
1524
|
},
|
|
1520
|
-
width:
|
|
1521
|
-
marginLeft:
|
|
1525
|
+
width: dt,
|
|
1526
|
+
marginLeft: dt
|
|
1522
1527
|
}
|
|
1523
1528
|
},
|
|
1524
1529
|
transition: {
|
|
@@ -1541,11 +1546,12 @@ var nt = .9, rt = {
|
|
|
1541
1546
|
},
|
|
1542
1547
|
children: /* @__PURE__ */ _(V, {
|
|
1543
1548
|
variant: "primary",
|
|
1544
|
-
icon: /* @__PURE__ */ _(Le, { mode:
|
|
1549
|
+
icon: /* @__PURE__ */ _(Le, { mode: Xe ? "stop" : A ? "check" : "send" }),
|
|
1545
1550
|
onClick: (e) => {
|
|
1546
|
-
e.stopPropagation(),
|
|
1551
|
+
e.stopPropagation(), Xe ? i?.() : j || r(t, Pe);
|
|
1547
1552
|
},
|
|
1548
|
-
|
|
1553
|
+
disabled: Ze,
|
|
1554
|
+
"aria-label": Xe ? L.stop : A ? L.save : L.send,
|
|
1549
1555
|
style: {
|
|
1550
1556
|
flexShrink: 0,
|
|
1551
1557
|
width: 28
|
|
@@ -1560,31 +1566,31 @@ var nt = .9, rt = {
|
|
|
1560
1566
|
})
|
|
1561
1567
|
}),
|
|
1562
1568
|
/* @__PURE__ */ _(Be, {
|
|
1563
|
-
isAddOpen:
|
|
1564
|
-
setIsAddOpen:
|
|
1565
|
-
items:
|
|
1569
|
+
isAddOpen: Se,
|
|
1570
|
+
setIsAddOpen: Ce,
|
|
1571
|
+
items: N || void 0,
|
|
1566
1572
|
onAdd: (e, t) => {
|
|
1567
|
-
let n =
|
|
1568
|
-
t === "attach" && !n?.onSelect &&
|
|
1573
|
+
let n = N ? N.find((e) => e.id === t) : void 0;
|
|
1574
|
+
t === "attach" && !n?.onSelect && U.current?.click(), a?.();
|
|
1569
1575
|
},
|
|
1570
|
-
showInlineGlyph:
|
|
1571
|
-
showButtons:
|
|
1576
|
+
showInlineGlyph: ut,
|
|
1577
|
+
showButtons: ge,
|
|
1572
1578
|
ac: J
|
|
1573
1579
|
}),
|
|
1574
1580
|
/* @__PURE__ */ _(Re, {
|
|
1575
|
-
showActions:
|
|
1576
|
-
showReadMore:
|
|
1577
|
-
isExpanded:
|
|
1578
|
-
setIsExpanded:
|
|
1581
|
+
showActions: ot,
|
|
1582
|
+
showReadMore: st,
|
|
1583
|
+
isExpanded: ve,
|
|
1584
|
+
setIsExpanded: ye,
|
|
1579
1585
|
onCopy: D,
|
|
1580
1586
|
onEdit: O,
|
|
1581
1587
|
value: t,
|
|
1582
1588
|
ac: J
|
|
1583
1589
|
}),
|
|
1584
|
-
|
|
1590
|
+
lt && (G.state === "denied" || G.state === "failed") && /* @__PURE__ */ _("p", {
|
|
1585
1591
|
className: W.voiceNote,
|
|
1586
1592
|
"data-tone": G.state,
|
|
1587
|
-
children: G.state === "denied" ?
|
|
1593
|
+
children: G.state === "denied" ? L.microphoneBlockedHelp : G.error ?? ne.couldNotOpen
|
|
1588
1594
|
})
|
|
1589
1595
|
]
|
|
1590
1596
|
})
|
|
@@ -1604,8 +1610,8 @@ function st(e, t) {
|
|
|
1604
1610
|
}
|
|
1605
1611
|
//#endregion
|
|
1606
1612
|
//#region src/useChatTurns/useChatTurns.ts
|
|
1607
|
-
var
|
|
1608
|
-
id:
|
|
1613
|
+
var ct = 260, lt = 220, ut = "Generating response", J = () => typeof crypto < "u" && "randomUUID" in crypto ? crypto.randomUUID() : Math.random().toString(36).slice(2, 11), dt = () => ({
|
|
1614
|
+
id: J(),
|
|
1609
1615
|
user: "",
|
|
1610
1616
|
ai: "",
|
|
1611
1617
|
parts: [],
|
|
@@ -1633,13 +1639,13 @@ var J = 260, ct = 220, lt = "Generating response", ut = () => typeof crypto < "u
|
|
|
1633
1639
|
}
|
|
1634
1640
|
return i;
|
|
1635
1641
|
};
|
|
1636
|
-
function ht({ onSend: e, revealSpeed: t =
|
|
1637
|
-
let [
|
|
1642
|
+
function ht({ onSend: e, revealSpeed: t = ct, sentencePause: n = lt, announcements: r, nextTurn: i = "after-answer" }) {
|
|
1643
|
+
let [a, s] = m(() => [dt()]), [l, u] = m(!1), d = p(null), f = p(null), h = p(/* @__PURE__ */ new Map()), g = p(/* @__PURE__ */ new Map()), _ = p(null), v = p(e), y = p(r), b = p(a);
|
|
1638
1644
|
c(() => {
|
|
1639
|
-
|
|
1645
|
+
v.current = e, b.current = a, y.current = r;
|
|
1640
1646
|
});
|
|
1641
|
-
let
|
|
1642
|
-
|
|
1647
|
+
let x = o((e, t) => {
|
|
1648
|
+
s((n) => {
|
|
1643
1649
|
let r = !1, i = n.map((n) => {
|
|
1644
1650
|
if (n.id !== e) return n;
|
|
1645
1651
|
r = !0;
|
|
@@ -1649,14 +1655,14 @@ function ht({ onSend: e, revealSpeed: t = J, sentencePause: n = ct, announcement
|
|
|
1649
1655
|
};
|
|
1650
1656
|
return "versionIndex" in t || "versions" in t ? i : ft(i);
|
|
1651
1657
|
});
|
|
1652
|
-
return r ? (
|
|
1658
|
+
return r ? (b.current = i, i) : n;
|
|
1653
1659
|
});
|
|
1654
|
-
}, []),
|
|
1655
|
-
|
|
1656
|
-
let e =
|
|
1660
|
+
}, []), S = o(() => {
|
|
1661
|
+
f.current = null;
|
|
1662
|
+
let e = h.current, t = g.current;
|
|
1657
1663
|
if (e.size === 0 && t.size === 0) return;
|
|
1658
1664
|
let n = [...e], r = [...t];
|
|
1659
|
-
e.clear(), t.clear(),
|
|
1665
|
+
e.clear(), t.clear(), s((e) => {
|
|
1660
1666
|
let t = e.map((e) => {
|
|
1661
1667
|
let t = n.find(([t]) => t === e.id)?.[1], i = r.find(([t]) => t === e.id)?.[1];
|
|
1662
1668
|
return t === void 0 && !i ? e : ft({
|
|
@@ -1665,40 +1671,42 @@ function ht({ onSend: e, revealSpeed: t = J, sentencePause: n = ct, announcement
|
|
|
1665
1671
|
...i ? { parts: i.reduce(st, e.parts) } : null
|
|
1666
1672
|
});
|
|
1667
1673
|
});
|
|
1668
|
-
return
|
|
1674
|
+
return b.current = t, t;
|
|
1669
1675
|
});
|
|
1670
|
-
}, []),
|
|
1671
|
-
|
|
1672
|
-
}, [x]), C = o((e, t) => {
|
|
1673
|
-
f.current.set(e, t), S();
|
|
1676
|
+
}, []), C = o(() => {
|
|
1677
|
+
f.current === null && (f.current = requestAnimationFrame(S));
|
|
1674
1678
|
}, [S]), w = o((e, t) => {
|
|
1675
|
-
|
|
1676
|
-
|
|
1677
|
-
|
|
1678
|
-
|
|
1679
|
-
}, [
|
|
1679
|
+
h.current.set(e, t), C();
|
|
1680
|
+
}, [C]), T = o((e, t) => {
|
|
1681
|
+
let n = g.current.get(e);
|
|
1682
|
+
n ? n.push(t) : g.current.set(e, [t]), C();
|
|
1683
|
+
}, [C]), E = o((e, t) => {
|
|
1684
|
+
T(e, t);
|
|
1685
|
+
}, [T]);
|
|
1680
1686
|
c(() => () => {
|
|
1681
|
-
|
|
1687
|
+
f.current !== null && cancelAnimationFrame(f.current), d.current?.abort();
|
|
1682
1688
|
}, []);
|
|
1683
|
-
let
|
|
1684
|
-
|
|
1685
|
-
if (e.some((e) => e.state === "idle"
|
|
1689
|
+
let D = o(() => {
|
|
1690
|
+
s((e) => {
|
|
1691
|
+
if (e.some((e) => (e.state === "idle" || e.state === "typing") && e.ai === "")) return e;
|
|
1686
1692
|
let t = [...e, dt()];
|
|
1687
|
-
return
|
|
1693
|
+
return b.current = t, t;
|
|
1688
1694
|
});
|
|
1689
|
-
}, [
|
|
1695
|
+
}, []), O = o((e, t) => {
|
|
1696
|
+
u(!1), d.current = null, x(e, { state: "resting" }), t || D();
|
|
1697
|
+
}, [x, D]), k = o((e, r, i) => new Promise((a) => {
|
|
1690
1698
|
if (q()) {
|
|
1691
|
-
|
|
1699
|
+
w(e, r), a();
|
|
1692
1700
|
return;
|
|
1693
1701
|
}
|
|
1694
1702
|
let o = mt(r, t, n), s = performance.now(), c = 0, l = () => {
|
|
1695
1703
|
if (i.aborted) {
|
|
1696
|
-
|
|
1704
|
+
w(e, r), a();
|
|
1697
1705
|
return;
|
|
1698
1706
|
}
|
|
1699
1707
|
let t = performance.now() - s;
|
|
1700
1708
|
for (; c < r.length && o[c] <= t;) c++;
|
|
1701
|
-
if (
|
|
1709
|
+
if (w(e, r.slice(0, c)), c >= r.length) {
|
|
1702
1710
|
a();
|
|
1703
1711
|
return;
|
|
1704
1712
|
}
|
|
@@ -1706,105 +1714,108 @@ function ht({ onSend: e, revealSpeed: t = J, sentencePause: n = ct, announcement
|
|
|
1706
1714
|
};
|
|
1707
1715
|
requestAnimationFrame(l);
|
|
1708
1716
|
}), [
|
|
1709
|
-
|
|
1717
|
+
w,
|
|
1710
1718
|
t,
|
|
1711
1719
|
n
|
|
1712
|
-
]),
|
|
1713
|
-
let n =
|
|
1720
|
+
]), A = o((e, t = "") => {
|
|
1721
|
+
let n = y.current;
|
|
1714
1722
|
if (n === !1) return;
|
|
1715
1723
|
if (e === "responding") {
|
|
1716
|
-
let e = n && "responding" in n ? n.responding :
|
|
1717
|
-
e &&
|
|
1724
|
+
let e = n && "responding" in n ? n.responding : ut;
|
|
1725
|
+
e && Ke(e);
|
|
1718
1726
|
return;
|
|
1719
1727
|
}
|
|
1720
1728
|
let r = n?.answer ? n.answer(t) : t;
|
|
1721
|
-
r &&
|
|
1722
|
-
}, []),
|
|
1723
|
-
let
|
|
1724
|
-
|
|
1725
|
-
let
|
|
1726
|
-
id: `${e}-v${(
|
|
1729
|
+
r && Ke(r);
|
|
1730
|
+
}, []), j = o(async (e, t, n, r = []) => {
|
|
1731
|
+
let a = new AbortController();
|
|
1732
|
+
d.current = a, u(!0);
|
|
1733
|
+
let o = b.current.find((t) => t.id === e), s = [...o?.versions ?? [], {
|
|
1734
|
+
id: `${e}-v${(o?.versions?.length ?? 0) + 1}`,
|
|
1727
1735
|
ai: "",
|
|
1728
1736
|
parts: []
|
|
1729
1737
|
}];
|
|
1730
|
-
|
|
1738
|
+
x(e, {
|
|
1731
1739
|
user: t,
|
|
1732
1740
|
state: "responding",
|
|
1733
1741
|
ai: "",
|
|
1734
1742
|
parts: [],
|
|
1735
|
-
versions:
|
|
1736
|
-
versionIndex:
|
|
1737
|
-
}),
|
|
1738
|
-
let
|
|
1743
|
+
versions: s,
|
|
1744
|
+
versionIndex: s.length - 1
|
|
1745
|
+
}), A("responding"), i === "at-send" && !n && D();
|
|
1746
|
+
let c = "";
|
|
1739
1747
|
try {
|
|
1740
|
-
let n =
|
|
1741
|
-
signal:
|
|
1748
|
+
let n = v.current(t, {
|
|
1749
|
+
signal: a.signal,
|
|
1742
1750
|
turnId: e,
|
|
1743
1751
|
attachments: r
|
|
1744
1752
|
});
|
|
1745
1753
|
if (pt(n)) for await (let t of n) {
|
|
1746
|
-
if (
|
|
1747
|
-
typeof t == "string" ? (
|
|
1754
|
+
if (a.signal.aborted) break;
|
|
1755
|
+
typeof t == "string" ? (c += t, w(e, c)) : T(e, t);
|
|
1748
1756
|
}
|
|
1749
|
-
else
|
|
1757
|
+
else c = await n ?? "", await k(e, c, a.signal);
|
|
1750
1758
|
} catch (e) {
|
|
1751
|
-
if (!
|
|
1759
|
+
if (!a.signal.aborted) throw e;
|
|
1752
1760
|
} finally {
|
|
1753
|
-
|
|
1761
|
+
S(), O(e, n), A("answer", c);
|
|
1754
1762
|
}
|
|
1755
1763
|
}, [
|
|
1764
|
+
S,
|
|
1765
|
+
i,
|
|
1766
|
+
D,
|
|
1756
1767
|
x,
|
|
1757
|
-
b,
|
|
1758
|
-
C,
|
|
1759
1768
|
w,
|
|
1760
|
-
|
|
1761
|
-
|
|
1762
|
-
O
|
|
1769
|
+
T,
|
|
1770
|
+
k,
|
|
1771
|
+
O,
|
|
1772
|
+
A
|
|
1763
1773
|
]);
|
|
1764
1774
|
return {
|
|
1765
|
-
turns:
|
|
1775
|
+
turns: a,
|
|
1766
1776
|
setDraft: o((e, t) => {
|
|
1767
|
-
|
|
1777
|
+
x(e, {
|
|
1768
1778
|
user: t,
|
|
1769
1779
|
state: t.length > 0 ? "typing" : "idle"
|
|
1770
1780
|
});
|
|
1771
|
-
}, [
|
|
1781
|
+
}, [x]),
|
|
1772
1782
|
submit: o((e, t, n) => {
|
|
1773
|
-
|
|
1783
|
+
if (d.current) return;
|
|
1784
|
+
let r = b.current.find((t) => t.id === e);
|
|
1774
1785
|
if (!r) return;
|
|
1775
1786
|
let i = (t ?? r.user).trim(), a = n ?? r.attachments ?? [];
|
|
1776
1787
|
if (!i && a.length === 0) return;
|
|
1777
|
-
(a.length > 0 || r.attachments) &&
|
|
1788
|
+
(a.length > 0 || r.attachments) && x(e, { attachments: a });
|
|
1778
1789
|
let o = r.ai.length > 0;
|
|
1779
|
-
|
|
1780
|
-
}, [
|
|
1790
|
+
_.current = null, j(e, i, o, a);
|
|
1791
|
+
}, [j, x]),
|
|
1781
1792
|
showVersion: o((e, t) => {
|
|
1782
|
-
let n =
|
|
1783
|
-
n &&
|
|
1793
|
+
let n = b.current.find((t) => t.id === e)?.versions?.[t];
|
|
1794
|
+
n && x(e, {
|
|
1784
1795
|
versionIndex: t,
|
|
1785
1796
|
ai: n.ai,
|
|
1786
1797
|
parts: n.parts
|
|
1787
1798
|
});
|
|
1788
|
-
}, [
|
|
1799
|
+
}, [x]),
|
|
1789
1800
|
stop: o(() => {
|
|
1790
|
-
|
|
1801
|
+
d.current?.abort();
|
|
1791
1802
|
}, []),
|
|
1792
1803
|
beginEdit: o((e) => {
|
|
1793
|
-
let t =
|
|
1794
|
-
t && (
|
|
1804
|
+
let t = b.current.find((t) => t.id === e);
|
|
1805
|
+
t && (_.current = {
|
|
1795
1806
|
id: e,
|
|
1796
1807
|
user: t.user
|
|
1797
|
-
}),
|
|
1798
|
-
}, [
|
|
1808
|
+
}), x(e, { state: "typing" });
|
|
1809
|
+
}, [x]),
|
|
1799
1810
|
cancelEdit: o((e) => {
|
|
1800
|
-
let t =
|
|
1801
|
-
|
|
1811
|
+
let t = _.current;
|
|
1812
|
+
_.current = null, x(e, {
|
|
1802
1813
|
state: "resting",
|
|
1803
1814
|
...t && t.id === e ? { user: t.user } : {}
|
|
1804
1815
|
});
|
|
1805
|
-
}, [
|
|
1806
|
-
isStreaming:
|
|
1807
|
-
updatePart:
|
|
1816
|
+
}, [x]),
|
|
1817
|
+
isStreaming: l,
|
|
1818
|
+
updatePart: E
|
|
1808
1819
|
};
|
|
1809
1820
|
}
|
|
1810
1821
|
var Y = {
|
|
@@ -1857,7 +1868,7 @@ var Y = {
|
|
|
1857
1868
|
}
|
|
1858
1869
|
return window;
|
|
1859
1870
|
}, Ct = r(function({ title: e, subtitle: t, avatar: n, headingLevel: r = 2, truncate: i = !0, onBack: a, backHref: s, backLabel: l, actions: u = [], overflowLabel: d, variant: f = "plain", size: h = "m", align: g = "start", sticky: y = !1, elevateOnScroll: b = y, collapseActionsAt: x = 520, landmark: S = !0, children: C, className: w, ...T }, E) {
|
|
1860
|
-
let D =
|
|
1871
|
+
let D = H("header"), k = l ?? D.back, A = d ?? D.more, j = p(null), [M, N] = m(!1), [ee, P] = m(!1), F = o((e) => {
|
|
1861
1872
|
j.current = e, typeof E == "function" ? E(e) : E && (E.current = e);
|
|
1862
1873
|
}, [E]);
|
|
1863
1874
|
c(() => {
|
|
@@ -1865,7 +1876,7 @@ var Y = {
|
|
|
1865
1876
|
if (!e || x === !1 || typeof ResizeObserver > "u") return;
|
|
1866
1877
|
let t = new ResizeObserver(([e]) => {
|
|
1867
1878
|
let t = e.contentRect.width;
|
|
1868
|
-
|
|
1879
|
+
N(t > 0 && t < x);
|
|
1869
1880
|
});
|
|
1870
1881
|
return t.observe(e), () => t.disconnect();
|
|
1871
1882
|
}, [x]), c(() => {
|
|
@@ -1876,7 +1887,7 @@ var Y = {
|
|
|
1876
1887
|
};
|
|
1877
1888
|
return t(), e.addEventListener("scroll", t, { passive: !0 }), () => e.removeEventListener("scroll", t);
|
|
1878
1889
|
}, [b]);
|
|
1879
|
-
let
|
|
1890
|
+
let I = x !== !1 && M, te = I ? u.filter((e) => e.pinned) : u, L = I ? u.filter((e) => !e.pinned) : [], ne = r ? `h${r}` : "span";
|
|
1880
1891
|
return /* @__PURE__ */ v(S ? "header" : "div", {
|
|
1881
1892
|
ref: F,
|
|
1882
1893
|
className: [
|
|
@@ -1887,7 +1898,7 @@ var Y = {
|
|
|
1887
1898
|
y ? Y.sticky : "",
|
|
1888
1899
|
w ?? ""
|
|
1889
1900
|
].filter(Boolean).join(" "),
|
|
1890
|
-
"data-scrolled": b &&
|
|
1901
|
+
"data-scrolled": b && ee || void 0,
|
|
1891
1902
|
...T,
|
|
1892
1903
|
children: [/* @__PURE__ */ v("div", {
|
|
1893
1904
|
className: Y.start,
|
|
@@ -1916,7 +1927,7 @@ var Y = {
|
|
|
1916
1927
|
}),
|
|
1917
1928
|
(e || t) && /* @__PURE__ */ v("div", {
|
|
1918
1929
|
className: Y.titles,
|
|
1919
|
-
children: [e && /* @__PURE__ */ _(
|
|
1930
|
+
children: [e && /* @__PURE__ */ _(ne, {
|
|
1920
1931
|
className: [Y.title, i ? Y.truncate : ""].filter(Boolean).join(" "),
|
|
1921
1932
|
title: typeof e == "string" && i ? e : void 0,
|
|
1922
1933
|
children: e
|
|
@@ -1930,12 +1941,12 @@ var Y = {
|
|
|
1930
1941
|
className: Y.end,
|
|
1931
1942
|
children: [
|
|
1932
1943
|
C,
|
|
1933
|
-
|
|
1944
|
+
te.map((e) => /* @__PURE__ */ _(wt, {
|
|
1934
1945
|
action: e,
|
|
1935
1946
|
size: h
|
|
1936
1947
|
}, e.id)),
|
|
1937
|
-
|
|
1938
|
-
actions:
|
|
1948
|
+
L.length > 0 && /* @__PURE__ */ _(Tt, {
|
|
1949
|
+
actions: L,
|
|
1939
1950
|
size: h,
|
|
1940
1951
|
label: A
|
|
1941
1952
|
})
|
|
@@ -2056,12 +2067,12 @@ var Et = {
|
|
|
2056
2067
|
reveal: "ick-reveal-z3mw"
|
|
2057
2068
|
}, Dt = 1600;
|
|
2058
2069
|
function Ot({ text: e, onCopy: t, onRegenerate: n, onFeedback: r, feedback: i = null, children: a, reveal: s = !1, busy: l = !1, labels: u, className: d, ...f }) {
|
|
2059
|
-
let [h, y] = m(!1), b = p(null), x =
|
|
2070
|
+
let [h, y] = m(!1), b = p(null), x = H("answerActions", u);
|
|
2060
2071
|
c(() => () => {
|
|
2061
2072
|
b.current && clearTimeout(b.current);
|
|
2062
2073
|
}, []);
|
|
2063
2074
|
let S = o(() => {
|
|
2064
|
-
t ? t(e) : navigator.clipboard?.writeText(e), y(!0),
|
|
2075
|
+
t ? t(e) : navigator.clipboard?.writeText(e), y(!0), Ke(x.copied), b.current && clearTimeout(b.current), b.current = setTimeout(() => y(!1), Dt);
|
|
2065
2076
|
}, [
|
|
2066
2077
|
x.copied,
|
|
2067
2078
|
t,
|
|
@@ -2131,7 +2142,7 @@ var kt = {
|
|
|
2131
2142
|
//#endregion
|
|
2132
2143
|
//#region src/Branch/Branch.tsx
|
|
2133
2144
|
function At({ total: e, index: t, onSelect: n, labels: r, className: i, ...a }) {
|
|
2134
|
-
let o =
|
|
2145
|
+
let o = H("branch", r);
|
|
2135
2146
|
if (e < 2) return null;
|
|
2136
2147
|
let s = Math.min(Math.max(t, 0), e - 1), c = o.position.replace("{index}", String(s + 1)).replace("{total}", String(e));
|
|
2137
2148
|
return /* @__PURE__ */ v("div", {
|
|
@@ -2147,7 +2158,7 @@ function At({ total: e, index: t, onSelect: n, labels: r, className: i, ...a })
|
|
|
2147
2158
|
onPointerDown: (e) => e.stopPropagation(),
|
|
2148
2159
|
disabled: s === 0,
|
|
2149
2160
|
"aria-label": o.previous,
|
|
2150
|
-
children: /* @__PURE__ */ _(
|
|
2161
|
+
children: /* @__PURE__ */ _(N, {
|
|
2151
2162
|
size: 14,
|
|
2152
2163
|
"aria-hidden": !0
|
|
2153
2164
|
})
|
|
@@ -2170,7 +2181,7 @@ function At({ total: e, index: t, onSelect: n, labels: r, className: i, ...a })
|
|
|
2170
2181
|
onPointerDown: (e) => e.stopPropagation(),
|
|
2171
2182
|
disabled: s === e - 1,
|
|
2172
2183
|
"aria-label": o.next,
|
|
2173
|
-
children: /* @__PURE__ */ _(
|
|
2184
|
+
children: /* @__PURE__ */ _(ee, {
|
|
2174
2185
|
size: 14,
|
|
2175
2186
|
"aria-hidden": !0
|
|
2176
2187
|
})
|
|
@@ -2336,7 +2347,7 @@ var Bt = {
|
|
|
2336
2347
|
//#endregion
|
|
2337
2348
|
//#region src/Reasoning/Reasoning.tsx
|
|
2338
2349
|
function Vt({ children: e, state: t = "done", duration: n, open: r, defaultOpen: i, onOpenChange: a, labels: o, className: s, ...c }) {
|
|
2339
|
-
let u =
|
|
2350
|
+
let u = H("reasoning", o), d = l(), f = t === "thinking", { isOpen: p, toggle: h } = Nt({
|
|
2340
2351
|
open: r,
|
|
2341
2352
|
defaultOpen: i,
|
|
2342
2353
|
onOpenChange: a,
|
|
@@ -2464,7 +2475,7 @@ var $t = {
|
|
|
2464
2475
|
pre: "ick-pre-qaBX"
|
|
2465
2476
|
}, en = 1600;
|
|
2466
2477
|
function tn({ code: e, lang: t, label: n, copyable: r = !0, onCopy: i, copiedFor: a = en, labels: s, className: l, ...u }) {
|
|
2467
|
-
let d =
|
|
2478
|
+
let d = H("codeBlock", s), [h, g] = m(!1), y = p(null), [b, x] = m(Zt);
|
|
2468
2479
|
c(() => {
|
|
2469
2480
|
if (b || !qt(t)) return;
|
|
2470
2481
|
let e = !0;
|
|
@@ -2483,7 +2494,7 @@ function tn({ code: e, lang: t, label: n, copyable: r = !0, onCopy: i, copiedFor
|
|
|
2483
2494
|
y.current && clearTimeout(y.current);
|
|
2484
2495
|
}, []);
|
|
2485
2496
|
let C = o(() => {
|
|
2486
|
-
i ? i(e) : navigator.clipboard?.writeText(e), g(!0),
|
|
2497
|
+
i ? i(e) : navigator.clipboard?.writeText(e), g(!0), Ke(d.copiedAnnouncement), y.current && clearTimeout(y.current), y.current = setTimeout(() => g(!1), a);
|
|
2487
2498
|
}, [
|
|
2488
2499
|
e,
|
|
2489
2500
|
a,
|
|
@@ -2597,7 +2608,7 @@ function sn({ label: e, value: t, tone: n }) {
|
|
|
2597
2608
|
});
|
|
2598
2609
|
}
|
|
2599
2610
|
function cn({ name: e, state: t = "done", summary: n, input: r, output: i, error: a, duration: o, open: s, defaultOpen: c, onOpenChange: u, labels: d, className: f, ...p }) {
|
|
2600
|
-
let m =
|
|
2611
|
+
let m = H("tool", d), h = l(), g = t === "error", { isOpen: y, toggle: b } = Nt({
|
|
2601
2612
|
open: s,
|
|
2602
2613
|
defaultOpen: c,
|
|
2603
2614
|
onOpenChange: u,
|
|
@@ -2673,7 +2684,7 @@ var ln = {
|
|
|
2673
2684
|
denied: "wasDenied"
|
|
2674
2685
|
};
|
|
2675
2686
|
function fn({ title: e, description: t, children: n, decision: r = null, onDecide: i, readOnly: a = !1, choices: o = un, labels: s, className: c, ...u }) {
|
|
2676
|
-
let d =
|
|
2687
|
+
let d = H("approval", s), f = (e) => o.includes(e), p = l(), m = r !== null;
|
|
2677
2688
|
return /* @__PURE__ */ v("section", {
|
|
2678
2689
|
className: [ln.approval, c ?? ""].filter(Boolean).join(" "),
|
|
2679
2690
|
"data-decision": r ?? void 0,
|
|
@@ -2741,7 +2752,7 @@ var pn = {
|
|
|
2741
2752
|
//#endregion
|
|
2742
2753
|
//#region src/TaskList/TaskList.tsx
|
|
2743
2754
|
function mn({ tasks: e, title: t, collapsible: n = !1, open: r, defaultOpen: i, onOpenChange: a, labels: o, className: s, ...c }) {
|
|
2744
|
-
let u =
|
|
2755
|
+
let u = H("tasks", o), d = l(), f = q(), p = e.filter((e) => (e.state ?? "pending") === "done").length, m = Nt({
|
|
2745
2756
|
open: r,
|
|
2746
2757
|
defaultOpen: i,
|
|
2747
2758
|
onOpenChange: a,
|
|
@@ -2818,7 +2829,7 @@ var hn = {
|
|
|
2818
2829
|
//#endregion
|
|
2819
2830
|
//#region src/ChainOfThought/ChainOfThought.tsx
|
|
2820
2831
|
function gn({ steps: e, state: t = "done", duration: n, open: r, defaultOpen: i, onOpenChange: a, labels: o, className: s, ...c }) {
|
|
2821
|
-
let u =
|
|
2832
|
+
let u = H("chain", o), d = l(), f = q(), p = t === "thinking", { isOpen: m, toggle: h } = Nt({
|
|
2822
2833
|
open: r,
|
|
2823
2834
|
defaultOpen: i,
|
|
2824
2835
|
onOpenChange: a,
|
|
@@ -2898,7 +2909,7 @@ var _n = {
|
|
|
2898
2909
|
//#endregion
|
|
2899
2910
|
//#region src/Sources/Sources.tsx
|
|
2900
2911
|
function vn({ sources: e, title: t, collapsible: n = !1, activeId: r = null, onSelect: i, open: a, defaultOpen: o, onOpenChange: s, labels: c, className: u, ...d }) {
|
|
2901
|
-
let f =
|
|
2912
|
+
let f = H("sources", c), p = l(), m = Nt({
|
|
2902
2913
|
open: a,
|
|
2903
2914
|
defaultOpen: o,
|
|
2904
2915
|
onOpenChange: s,
|
|
@@ -3264,7 +3275,7 @@ function Mn({ question: e, number: t, answer: n, onCommit: r, labels: i }) {
|
|
|
3264
3275
|
});
|
|
3265
3276
|
}
|
|
3266
3277
|
function Nn({ question: e, number: t, state: n, answer: r, onCommit: i, onEdit: a, readOnly: o = !1, labels: s }) {
|
|
3267
|
-
let c =
|
|
3278
|
+
let c = H("question", s), l = n !== "upcoming", u = q(), d = p(null), f = En(d), m;
|
|
3268
3279
|
if (n === "active") m = /* @__PURE__ */ _(Mn, {
|
|
3269
3280
|
question: e,
|
|
3270
3281
|
number: t,
|
|
@@ -3284,7 +3295,7 @@ function Nn({ question: e, number: t, state: n, answer: r, onCommit: i, onEdit:
|
|
|
3284
3295
|
})]
|
|
3285
3296
|
}), /* @__PURE__ */ v("span", {
|
|
3286
3297
|
className: X.collapsedAnswer,
|
|
3287
|
-
children: [n.map((e, t) => /* @__PURE__ */ _(bn, { children: e }, `${e}-${t}`)), !o && /* @__PURE__ */ _(
|
|
3298
|
+
children: [n.map((e, t) => /* @__PURE__ */ _(bn, { children: e }, `${e}-${t}`)), !o && /* @__PURE__ */ _(fe, {
|
|
3288
3299
|
className: X.pencil,
|
|
3289
3300
|
size: 14,
|
|
3290
3301
|
"aria-hidden": !0
|
|
@@ -3357,17 +3368,17 @@ var Pn = {
|
|
|
3357
3368
|
fadeInDelay: .08
|
|
3358
3369
|
};
|
|
3359
3370
|
function Ln({ id: e, title: t, questions: n, answers: r, activeIndex: i = null, collapsible: a = !1, onCommit: o, onEdit: s, readOnly: c = !1, labels: u, foldMotion: d, className: f }) {
|
|
3360
|
-
let [h, g] = m(!1), [x, S] = m(!1), w = l(), T = p(null), E = En(T), D =
|
|
3371
|
+
let [h, g] = m(!1), [x, S] = m(!1), w = l(), T = p(null), E = En(T), D = H("questionGroup", u), O = q(), k = a && !h, A = n.map((e) => e.shortTitle).join(" · "), j = {
|
|
3361
3372
|
...In,
|
|
3362
3373
|
...d
|
|
3363
3374
|
}, M = O ? { duration: 0 } : {
|
|
3364
3375
|
type: "spring",
|
|
3365
3376
|
visualDuration: j.visualDuration,
|
|
3366
3377
|
bounce: j.bounce
|
|
3367
|
-
},
|
|
3378
|
+
}, N = {
|
|
3368
3379
|
hidden: { transition: { staggerChildren: O ? 0 : j.stagger } },
|
|
3369
3380
|
shown: { transition: { staggerChildren: O ? 0 : j.stagger } }
|
|
3370
|
-
},
|
|
3381
|
+
}, ee = (e, t = 0) => O ? { duration: 0 } : {
|
|
3371
3382
|
type: "spring",
|
|
3372
3383
|
visualDuration: j.rowDuration,
|
|
3373
3384
|
bounce: j.rowBounce,
|
|
@@ -3380,15 +3391,15 @@ function Ln({ id: e, title: t, questions: n, answers: r, activeIndex: i = null,
|
|
|
3380
3391
|
hidden: {
|
|
3381
3392
|
opacity: 0,
|
|
3382
3393
|
y: O ? 0 : j.rowOffset,
|
|
3383
|
-
transition:
|
|
3394
|
+
transition: ee(j.fadeOut)
|
|
3384
3395
|
},
|
|
3385
3396
|
shown: {
|
|
3386
3397
|
opacity: 1,
|
|
3387
3398
|
y: 0,
|
|
3388
|
-
transition:
|
|
3399
|
+
transition: ee(j.fadeIn, O ? 0 : j.fadeInDelay)
|
|
3389
3400
|
}
|
|
3390
3401
|
}, F = {
|
|
3391
|
-
variants:
|
|
3402
|
+
variants: N,
|
|
3392
3403
|
initial: "hidden",
|
|
3393
3404
|
animate: "shown",
|
|
3394
3405
|
exit: "hidden",
|
|
@@ -3993,7 +4004,7 @@ var yr = {
|
|
|
3993
4004
|
//#endregion
|
|
3994
4005
|
//#region src/InlineCitation/InlineCitation.tsx
|
|
3995
4006
|
function br({ index: e, source: t, children: n, onSelect: r, labels: i, className: a, ...o }) {
|
|
3996
|
-
let { cite: s } =
|
|
4007
|
+
let { cite: s } = H("citation", i), c = t ? `${s} ${e}: ${t.title}` : `${s} ${e}`, l = r ? /* @__PURE__ */ _("button", {
|
|
3997
4008
|
type: "button",
|
|
3998
4009
|
className: yr.marker,
|
|
3999
4010
|
onClick: () => r(e, t),
|
|
@@ -4069,40 +4080,40 @@ var xr = {
|
|
|
4069
4080
|
t += `M ${r} ${n} L ${i} ${n} `;
|
|
4070
4081
|
}), t.trim();
|
|
4071
4082
|
};
|
|
4072
|
-
function Ar({ text: t,
|
|
4073
|
-
let
|
|
4074
|
-
e.viaKeyboard && (
|
|
4083
|
+
function Ar({ text: t, marking: r = !0, selectionMode: i = "marker", onHighlightComplete: a, onReplyInThread: s, sources: u, onSelectSource: d }) {
|
|
4084
|
+
let h = H("highlighter"), g = p(null), [b, S] = m([]), [w, T] = m([]), [E, D] = m(null), [O, k] = m(!1), [A, j] = m(null), [M, N] = m(0), ee = p(null), P = p(null), [F, I] = m(null), [te, L] = m(null), ne = o((e) => {
|
|
4085
|
+
e.viaKeyboard && (P.current = document.activeElement), N(0), j(e);
|
|
4075
4086
|
}, []), re = o((e = "none") => {
|
|
4076
|
-
let t =
|
|
4077
|
-
|
|
4087
|
+
let t = P.current;
|
|
4088
|
+
P.current = null, j(null), e !== "none" && (e === "restore" && t?.isConnected ? t.focus() : g.current?.focus());
|
|
4078
4089
|
}, []);
|
|
4079
4090
|
c(() => {
|
|
4080
4091
|
let e = (e) => {
|
|
4081
|
-
|
|
4092
|
+
A && g.current && !g.current.contains(e.target) && re();
|
|
4082
4093
|
};
|
|
4083
4094
|
return window.addEventListener("pointerdown", e), () => window.removeEventListener("pointerdown", e);
|
|
4084
|
-
}, [
|
|
4085
|
-
let ie = f(() => vr(t), [t]),
|
|
4095
|
+
}, [A, re]);
|
|
4096
|
+
let ie = f(() => vr(t), [t]), R = ie.tokens, oe = p(w), se = p(a), ce = p(A);
|
|
4086
4097
|
c(() => {
|
|
4087
|
-
|
|
4098
|
+
oe.current = w, se.current = a, ce.current = A;
|
|
4088
4099
|
});
|
|
4089
|
-
let
|
|
4100
|
+
let le = f(() => [...b.map((e) => ({
|
|
4090
4101
|
id: e.id,
|
|
4091
4102
|
d: wr(e.points),
|
|
4092
4103
|
kind: "path",
|
|
4093
4104
|
item: e,
|
|
4094
|
-
text: Dr(e.highlightedIndices,
|
|
4095
|
-
})), ...
|
|
4105
|
+
text: Dr(e.highlightedIndices, R)
|
|
4106
|
+
})), ...w.map((e) => ({
|
|
4096
4107
|
id: e.id,
|
|
4097
4108
|
d: kr(e.rects),
|
|
4098
4109
|
kind: "selection",
|
|
4099
4110
|
item: e,
|
|
4100
4111
|
text: e.text
|
|
4101
4112
|
}))], [
|
|
4102
|
-
|
|
4103
|
-
|
|
4104
|
-
|
|
4105
|
-
]),
|
|
4113
|
+
b,
|
|
4114
|
+
w,
|
|
4115
|
+
R
|
|
4116
|
+
]), ue = (e, t = !1) => {
|
|
4106
4117
|
let n = e.kind === "path" ? Tr(e.item.points) : Er(e.item.rects);
|
|
4107
4118
|
ne({
|
|
4108
4119
|
x: n.x,
|
|
@@ -4111,8 +4122,8 @@ function Ar({ text: t, selectionMode: r = "marker", onHighlightComplete: i, onRe
|
|
|
4111
4122
|
kind: e.kind,
|
|
4112
4123
|
viaKeyboard: t
|
|
4113
4124
|
});
|
|
4114
|
-
},
|
|
4115
|
-
let r =
|
|
4125
|
+
}, z = o((e, t, n = !1) => {
|
|
4126
|
+
let r = g.current, i = t.trim();
|
|
4116
4127
|
if (!r || !i) return;
|
|
4117
4128
|
let a = /* @__PURE__ */ new Set();
|
|
4118
4129
|
r.querySelectorAll("span[data-index]").forEach((t) => {
|
|
@@ -4139,7 +4150,7 @@ function Ar({ text: t, selectionMode: r = "marker", onHighlightComplete: i, onRe
|
|
|
4139
4150
|
h: i
|
|
4140
4151
|
};
|
|
4141
4152
|
}), u = Date.now().toString();
|
|
4142
|
-
|
|
4153
|
+
T((e) => [...e, {
|
|
4143
4154
|
id: u,
|
|
4144
4155
|
rects: l,
|
|
4145
4156
|
text: i,
|
|
@@ -4156,13 +4167,13 @@ function Ar({ text: t, selectionMode: r = "marker", onHighlightComplete: i, onRe
|
|
|
4156
4167
|
}, [ne]);
|
|
4157
4168
|
c(() => {
|
|
4158
4169
|
let e = (e) => {
|
|
4159
|
-
if (
|
|
4160
|
-
let t =
|
|
4170
|
+
if (ce.current) return;
|
|
4171
|
+
let t = g.current;
|
|
4161
4172
|
if (!t) return;
|
|
4162
4173
|
let n = window.getSelection();
|
|
4163
4174
|
if (!n || n.isCollapsed || n.rangeCount === 0 || !n.toString().trim()) return;
|
|
4164
4175
|
let r = n.getRangeAt(0);
|
|
4165
|
-
t.contains(r.commonAncestorContainer) && (
|
|
4176
|
+
t.contains(r.commonAncestorContainer) && (z(r, n.toString(), e), requestAnimationFrame(() => window.getSelection()?.removeAllRanges()));
|
|
4166
4177
|
}, t = () => e(!1), n = (t) => {
|
|
4167
4178
|
let n = (t.ctrlKey || t.metaKey) && t.key.toLowerCase() === "a";
|
|
4168
4179
|
!t.shiftKey && !n || e(!0);
|
|
@@ -4170,82 +4181,82 @@ function Ar({ text: t, selectionMode: r = "marker", onHighlightComplete: i, onRe
|
|
|
4170
4181
|
return document.addEventListener("mouseup", t), document.addEventListener("keyup", n), () => {
|
|
4171
4182
|
document.removeEventListener("mouseup", t), document.removeEventListener("keyup", n);
|
|
4172
4183
|
};
|
|
4173
|
-
}, [
|
|
4174
|
-
let [de, fe] = m(
|
|
4175
|
-
de !==
|
|
4176
|
-
let
|
|
4177
|
-
from: Math.min(
|
|
4178
|
-
to: Math.max(
|
|
4179
|
-
}, [
|
|
4180
|
-
|
|
4181
|
-
},
|
|
4182
|
-
let e =
|
|
4183
|
-
if (!e || !
|
|
4184
|
-
let t = e.querySelector(`span[data-index="${
|
|
4184
|
+
}, [z]);
|
|
4185
|
+
let [de, fe] = m(i);
|
|
4186
|
+
de !== i && (fe(i), j(null));
|
|
4187
|
+
let pe = f(() => R.map((e, t) => e.trim() ? t : -1).filter((e) => e >= 0), [R]), [me, he] = m(null), [ge, _e] = m(null), ve = l(), ye = f(() => me === null || ge === null ? null : {
|
|
4188
|
+
from: Math.min(ge, me),
|
|
4189
|
+
to: Math.max(ge, me)
|
|
4190
|
+
}, [me, ge]), be = () => {
|
|
4191
|
+
he(null), _e(null);
|
|
4192
|
+
}, xe = () => {
|
|
4193
|
+
let e = g.current;
|
|
4194
|
+
if (!e || !ye) return;
|
|
4195
|
+
let t = e.querySelector(`span[data-index="${ye.from}"]`), n = e.querySelector(`span[data-index="${ye.to}"]`);
|
|
4185
4196
|
if (!t || !n) return;
|
|
4186
4197
|
let r = document.createRange();
|
|
4187
4198
|
r.setStartBefore(t), r.setEndAfter(n);
|
|
4188
4199
|
let i = "";
|
|
4189
|
-
for (let e =
|
|
4190
|
-
|
|
4191
|
-
},
|
|
4200
|
+
for (let e = ye.from; e <= ye.to; e++) i += R[e];
|
|
4201
|
+
z(r, i, !0), be();
|
|
4202
|
+
}, Ce = () => [...ee.current?.querySelectorAll("[role=\"menuitem\"]") ?? []];
|
|
4192
4203
|
c(() => {
|
|
4193
|
-
if (!
|
|
4194
|
-
let e =
|
|
4204
|
+
if (!A) return;
|
|
4205
|
+
let e = Ce();
|
|
4195
4206
|
if (e.length === 0) return;
|
|
4196
4207
|
let t = ee.current?.contains(document.activeElement);
|
|
4197
|
-
(
|
|
4198
|
-
}, [
|
|
4199
|
-
let
|
|
4200
|
-
let t =
|
|
4208
|
+
(A.viaKeyboard || t) && e[Math.min(M, e.length - 1)]?.focus();
|
|
4209
|
+
}, [A, M]);
|
|
4210
|
+
let we = (e) => {
|
|
4211
|
+
let t = Ce().length;
|
|
4201
4212
|
if (t === 0) return;
|
|
4202
4213
|
let n = (n) => {
|
|
4203
|
-
e.preventDefault(), e.stopPropagation(),
|
|
4214
|
+
e.preventDefault(), e.stopPropagation(), N((e) => (e + n + t) % t);
|
|
4204
4215
|
};
|
|
4205
4216
|
switch (e.key) {
|
|
4206
4217
|
case "ArrowRight":
|
|
4207
4218
|
case "ArrowDown": return n(1);
|
|
4208
4219
|
case "ArrowLeft":
|
|
4209
4220
|
case "ArrowUp": return n(-1);
|
|
4210
|
-
case "Home": return e.preventDefault(),
|
|
4211
|
-
case "End": return e.preventDefault(),
|
|
4221
|
+
case "Home": return e.preventDefault(), N(0);
|
|
4222
|
+
case "End": return e.preventDefault(), N(t - 1);
|
|
4212
4223
|
default: return;
|
|
4213
4224
|
}
|
|
4214
|
-
},
|
|
4215
|
-
if (e.target !== e.currentTarget && e.key !== "Escape" ||
|
|
4225
|
+
}, B = (e) => {
|
|
4226
|
+
if (e.target !== e.currentTarget && e.key !== "Escape" || pe.length === 0) return;
|
|
4216
4227
|
let t = (t, n) => {
|
|
4217
4228
|
e.preventDefault();
|
|
4218
|
-
let r =
|
|
4219
|
-
|
|
4229
|
+
let r = me === null ? -1 : pe.indexOf(me), i = r === -1 ? pe[t === 1 ? 0 : pe.length - 1] : pe[Math.min(pe.length - 1, Math.max(0, r + t))];
|
|
4230
|
+
he(i), (!n || ge === null) && _e(i);
|
|
4220
4231
|
}, n = (t) => {
|
|
4221
|
-
e.preventDefault(),
|
|
4232
|
+
e.preventDefault(), he(t), (!e.shiftKey || ge === null) && _e(t);
|
|
4222
4233
|
};
|
|
4223
4234
|
switch (e.key) {
|
|
4224
4235
|
case "ArrowRight": return t(1, e.shiftKey);
|
|
4225
4236
|
case "ArrowLeft": return t(-1, e.shiftKey);
|
|
4226
|
-
case "Home": return n(
|
|
4227
|
-
case "End": return n(
|
|
4237
|
+
case "Home": return n(pe[0]);
|
|
4238
|
+
case "End": return n(pe[pe.length - 1]);
|
|
4228
4239
|
case "Enter":
|
|
4229
|
-
case " ": return
|
|
4230
|
-
case "Escape": return !
|
|
4240
|
+
case " ": return ye ? (e.preventDefault(), xe()) : void 0;
|
|
4241
|
+
case "Escape": return !A && me === null ? void 0 : (e.preventDefault(), re("restore"), be());
|
|
4231
4242
|
default: return;
|
|
4232
4243
|
}
|
|
4233
|
-
},
|
|
4244
|
+
}, Te = (e, t, n) => {
|
|
4234
4245
|
let r = document.elementFromPoint(e, t);
|
|
4235
4246
|
if (r && r.hasAttribute("data-index")) {
|
|
4236
4247
|
let e = parseInt(r.getAttribute("data-index"), 10);
|
|
4237
4248
|
n.add(e);
|
|
4238
4249
|
}
|
|
4239
|
-
},
|
|
4240
|
-
if (
|
|
4250
|
+
}, Ee = (e) => {
|
|
4251
|
+
if (A) {
|
|
4241
4252
|
re();
|
|
4242
4253
|
return;
|
|
4243
4254
|
}
|
|
4244
|
-
if (
|
|
4245
|
-
e.preventDefault(),
|
|
4255
|
+
if (i === "precise" || e.button !== 0 && e.pointerType === "mouse") return;
|
|
4256
|
+
e.preventDefault(), k(!0);
|
|
4246
4257
|
let t = e.currentTarget;
|
|
4247
4258
|
t.setPointerCapture(e.pointerId);
|
|
4248
|
-
let n = t.getBoundingClientRect(),
|
|
4259
|
+
let n = t.getBoundingClientRect(), r = e.clientX - n.left, a = e.clientY - n.top, o = r - a * Cr, s = {
|
|
4249
4260
|
id: Date.now().toString(),
|
|
4250
4261
|
points: [{
|
|
4251
4262
|
x: o,
|
|
@@ -4253,78 +4264,78 @@ function Ar({ text: t, selectionMode: r = "marker", onHighlightComplete: i, onRe
|
|
|
4253
4264
|
}],
|
|
4254
4265
|
highlightedIndices: /* @__PURE__ */ new Set()
|
|
4255
4266
|
};
|
|
4256
|
-
|
|
4257
|
-
},
|
|
4258
|
-
if (
|
|
4259
|
-
let t =
|
|
4260
|
-
|
|
4267
|
+
D(s), re(), Te(e.clientX, e.clientY, s.highlightedIndices);
|
|
4268
|
+
}, De = (e) => {
|
|
4269
|
+
if (i === "precise" || !E) return;
|
|
4270
|
+
let t = g.current.getBoundingClientRect(), n = e.clientX - t.left, r = e.clientY - t.top, a = n - r * Cr;
|
|
4271
|
+
D((t) => {
|
|
4261
4272
|
if (!t) return t;
|
|
4262
4273
|
let n = new Set(t.highlightedIndices);
|
|
4263
|
-
return
|
|
4274
|
+
return Te(e.clientX, e.clientY, n), {
|
|
4264
4275
|
...t,
|
|
4265
4276
|
points: [...t.points, {
|
|
4266
4277
|
x: a,
|
|
4267
|
-
y:
|
|
4278
|
+
y: r
|
|
4268
4279
|
}],
|
|
4269
4280
|
highlightedIndices: n
|
|
4270
4281
|
};
|
|
4271
4282
|
});
|
|
4272
|
-
},
|
|
4273
|
-
if (
|
|
4274
|
-
if (e.currentTarget.releasePointerCapture(e.pointerId),
|
|
4275
|
-
let e = Tr(
|
|
4283
|
+
}, Oe = (e) => {
|
|
4284
|
+
if (i !== "precise" && (k(!1), E)) {
|
|
4285
|
+
if (e.currentTarget.releasePointerCapture(e.pointerId), S((e) => [...e, E]), E.highlightedIndices.size > 0) {
|
|
4286
|
+
let e = Tr(E.points);
|
|
4276
4287
|
ne({
|
|
4277
4288
|
x: e.x,
|
|
4278
4289
|
y: e.y,
|
|
4279
|
-
pathId:
|
|
4290
|
+
pathId: E.id,
|
|
4280
4291
|
kind: "path"
|
|
4281
4292
|
});
|
|
4282
4293
|
}
|
|
4283
|
-
|
|
4294
|
+
a && E.highlightedIndices.size > 0 && a(Dr(E.highlightedIndices, R)), D(null);
|
|
4284
4295
|
}
|
|
4285
|
-
}, De = (e) => {
|
|
4286
|
-
r !== "precise" && (O(!1), T && (e.currentTarget.releasePointerCapture(e.pointerId), E(null)));
|
|
4287
|
-
}, Oe = (e) => {
|
|
4288
|
-
let t = g.find((t) => t.id === e);
|
|
4289
|
-
return t ? Dr(t.highlightedIndices, L) : "";
|
|
4290
4296
|
}, ke = (e) => {
|
|
4291
|
-
|
|
4292
|
-
|
|
4293
|
-
|
|
4294
|
-
|
|
4295
|
-
|
|
4296
|
-
|
|
4297
|
-
|
|
4297
|
+
i !== "precise" && (k(!1), E && (e.currentTarget.releasePointerCapture(e.pointerId), D(null)));
|
|
4298
|
+
}, Ae = (e) => {
|
|
4299
|
+
let t = b.find((t) => t.id === e);
|
|
4300
|
+
return t ? Dr(t.highlightedIndices, R) : "";
|
|
4301
|
+
}, U = (e) => {
|
|
4302
|
+
let t = A?.viaKeyboard;
|
|
4303
|
+
A?.kind === "selection" ? T((t) => t.filter((t) => t.id !== e)) : S((t) => t.filter((t) => t.id !== e)), re(t ? "container" : "none");
|
|
4304
|
+
}, Me = () => {
|
|
4305
|
+
let e = A?.viaKeyboard;
|
|
4306
|
+
if (A && s) {
|
|
4307
|
+
if (A.kind === "selection") {
|
|
4308
|
+
let e = w.find((e) => e.id === A.pathId), t = g.current;
|
|
4298
4309
|
if (e && t) {
|
|
4299
|
-
let n = t.getBoundingClientRect(), r = Infinity, i = Infinity,
|
|
4310
|
+
let n = t.getBoundingClientRect(), r = Infinity, i = Infinity, a = -Infinity, o = -Infinity;
|
|
4300
4311
|
e.rects.forEach((e) => {
|
|
4301
|
-
r = Math.min(r, e.x), i = Math.min(i, e.y),
|
|
4312
|
+
r = Math.min(r, e.x), i = Math.min(i, e.y), a = Math.max(a, e.x + e.w), o = Math.max(o, e.y + e.h);
|
|
4302
4313
|
});
|
|
4303
|
-
let c = new DOMRect(n.left + r, n.top + i,
|
|
4304
|
-
|
|
4314
|
+
let c = new DOMRect(n.left + r, n.top + i, a - r, o - i);
|
|
4315
|
+
s(e.text, c);
|
|
4305
4316
|
}
|
|
4306
4317
|
} else {
|
|
4307
|
-
let e =
|
|
4308
|
-
t &&
|
|
4318
|
+
let e = Ae(A.pathId), t = document.getElementById(`highlight-path-${A.pathId}`);
|
|
4319
|
+
t && s(e, t.getBoundingClientRect());
|
|
4309
4320
|
}
|
|
4310
4321
|
}
|
|
4311
4322
|
re(e ? "restore" : "none");
|
|
4312
|
-
},
|
|
4313
|
-
let t =
|
|
4314
|
-
|
|
4323
|
+
}, Ne = (e) => {
|
|
4324
|
+
let t = R[e], n = !1;
|
|
4325
|
+
A && (n = (A.kind === "path" ? b.find((e) => e.id === A.pathId) : w.find((e) => e.id === A.pathId))?.highlightedIndices?.has(e) ?? !1);
|
|
4315
4326
|
let r = !1;
|
|
4316
|
-
return
|
|
4327
|
+
return F && (r = (b.find((e) => e.id === F) ?? w.find((e) => e.id === F))?.highlightedIndices?.has(e) ?? !1), /* @__PURE__ */ _("span", {
|
|
4317
4328
|
"data-index": e,
|
|
4318
4329
|
className: xr.token,
|
|
4319
4330
|
"data-space": !t.trim() || void 0,
|
|
4320
4331
|
"data-active": n || void 0,
|
|
4321
4332
|
"data-pressed": r || void 0,
|
|
4322
|
-
"data-kbd-cursor":
|
|
4323
|
-
"data-kbd-selected":
|
|
4333
|
+
"data-kbd-cursor": me === e || void 0,
|
|
4334
|
+
"data-kbd-selected": ye && e >= ye.from && e <= ye.to || void 0,
|
|
4324
4335
|
children: t
|
|
4325
4336
|
}, e);
|
|
4326
|
-
},
|
|
4327
|
-
if (e.type === "token") return
|
|
4337
|
+
}, Pe = (e) => e.map((e, t) => {
|
|
4338
|
+
if (e.type === "token") return Ne(e.index);
|
|
4328
4339
|
if (e.type === "code") return /* @__PURE__ */ _(tn, {
|
|
4329
4340
|
code: e.value,
|
|
4330
4341
|
lang: e.lang
|
|
@@ -4333,21 +4344,21 @@ function Ar({ text: t, selectionMode: r = "marker", onHighlightComplete: i, onRe
|
|
|
4333
4344
|
let n = Number(e.props?.index ?? 0);
|
|
4334
4345
|
return /* @__PURE__ */ _(br, {
|
|
4335
4346
|
index: n,
|
|
4336
|
-
source:
|
|
4337
|
-
onSelect:
|
|
4347
|
+
source: u?.[n - 1],
|
|
4348
|
+
onSelect: d ? (e, t) => d(e, t) : void 0
|
|
4338
4349
|
}, `q${t}`);
|
|
4339
4350
|
}
|
|
4340
4351
|
return n(e.tag, {
|
|
4341
4352
|
key: `e${t}`,
|
|
4342
4353
|
...e.props
|
|
4343
|
-
}, e.children.length > 0 ?
|
|
4354
|
+
}, e.children.length > 0 ? Pe(e.children) : void 0);
|
|
4344
4355
|
});
|
|
4345
4356
|
return /* @__PURE__ */ _(x, {
|
|
4346
4357
|
reducedMotion: "user",
|
|
4347
4358
|
children: /* @__PURE__ */ v(C.div, {
|
|
4348
|
-
ref:
|
|
4349
|
-
"data-cursor": r === "precise" ? "text" : "marker",
|
|
4350
|
-
"data-cursor-active":
|
|
4359
|
+
ref: g,
|
|
4360
|
+
"data-cursor": r ? i === "precise" ? "text" : "marker" : void 0,
|
|
4361
|
+
"data-cursor-active": r ? O ? "true" : "false" : void 0,
|
|
4351
4362
|
animate: {
|
|
4352
4363
|
scale: 1,
|
|
4353
4364
|
y: 0
|
|
@@ -4357,82 +4368,84 @@ function Ar({ text: t, selectionMode: r = "marker", onHighlightComplete: i, onRe
|
|
|
4357
4368
|
stiffness: 400,
|
|
4358
4369
|
damping: 30
|
|
4359
4370
|
},
|
|
4360
|
-
"data-drawing":
|
|
4361
|
-
"data-menu": !!
|
|
4362
|
-
onPointerDown: Te,
|
|
4363
|
-
onPointerMove: Ee,
|
|
4364
|
-
onPointerUp: H,
|
|
4365
|
-
onPointerCancel: De,
|
|
4371
|
+
"data-drawing": O || void 0,
|
|
4372
|
+
"data-menu": !!A || void 0,
|
|
4366
4373
|
className: xr.surface,
|
|
4367
|
-
|
|
4368
|
-
|
|
4369
|
-
|
|
4370
|
-
|
|
4374
|
+
...r ? {
|
|
4375
|
+
onPointerDown: Ee,
|
|
4376
|
+
onPointerMove: De,
|
|
4377
|
+
onPointerUp: Oe,
|
|
4378
|
+
onPointerCancel: ke,
|
|
4379
|
+
tabIndex: 0,
|
|
4380
|
+
onKeyDown: B,
|
|
4381
|
+
onBlur: be,
|
|
4382
|
+
"aria-describedby": ve
|
|
4383
|
+
} : null,
|
|
4371
4384
|
children: [
|
|
4372
|
-
/* @__PURE__ */ _("span", {
|
|
4373
|
-
id:
|
|
4385
|
+
r && /* @__PURE__ */ _("span", {
|
|
4386
|
+
id: ve,
|
|
4374
4387
|
className: xr.srOnly,
|
|
4375
4388
|
"aria-hidden": "true",
|
|
4376
|
-
children:
|
|
4389
|
+
children: h.keyboardHint
|
|
4377
4390
|
}),
|
|
4378
|
-
/* @__PURE__ */ _("div", { className: xr.hitbox }),
|
|
4391
|
+
r && /* @__PURE__ */ _("div", { className: xr.hitbox }),
|
|
4379
4392
|
/* @__PURE__ */ _("div", {
|
|
4380
4393
|
className: xr.tokens,
|
|
4381
|
-
"data-focus": !!
|
|
4382
|
-
children:
|
|
4394
|
+
"data-focus": !!A || void 0,
|
|
4395
|
+
children: Pe(ie.nodes)
|
|
4383
4396
|
}),
|
|
4384
|
-
/* @__PURE__ */ _("svg", {
|
|
4397
|
+
r && /* @__PURE__ */ _("svg", {
|
|
4385
4398
|
className: xr.canvas,
|
|
4386
4399
|
children: /* @__PURE__ */ v("g", {
|
|
4387
4400
|
transform: `skewX(${Sr})`,
|
|
4388
|
-
children: [
|
|
4401
|
+
children: [le.map((t) => /* @__PURE__ */ v(e.Fragment, { children: [/* @__PURE__ */ _("path", {
|
|
4389
4402
|
id: `highlight-${t.kind}-${t.id}`,
|
|
4390
4403
|
className: xr.marker,
|
|
4391
4404
|
d: t.d,
|
|
4392
4405
|
"data-cursor": "pointer",
|
|
4393
|
-
"data-pressed":
|
|
4394
|
-
"data-active":
|
|
4395
|
-
"data-dimmed":
|
|
4396
|
-
style: { pointerEvents:
|
|
4406
|
+
"data-pressed": F === t.id || void 0,
|
|
4407
|
+
"data-active": A?.pathId === t.id || te === t.id || void 0,
|
|
4408
|
+
"data-dimmed": A && A.pathId !== t.id || void 0,
|
|
4409
|
+
style: { pointerEvents: O ? "none" : "stroke" },
|
|
4397
4410
|
onPointerDown: (e) => {
|
|
4398
|
-
|
|
4411
|
+
O || (e.stopPropagation(), I(t.id));
|
|
4399
4412
|
},
|
|
4400
4413
|
onPointerUp: (e) => {
|
|
4401
|
-
|
|
4414
|
+
F === t.id && (e.stopPropagation(), ue(t), I(null));
|
|
4402
4415
|
},
|
|
4403
|
-
onPointerLeave: () =>
|
|
4404
|
-
onPointerCancel: () =>
|
|
4416
|
+
onPointerLeave: () => I(null),
|
|
4417
|
+
onPointerCancel: () => I(null)
|
|
4405
4418
|
}), /* @__PURE__ */ _("path", {
|
|
4406
4419
|
className: xr.shimmer,
|
|
4407
4420
|
d: t.d,
|
|
4408
4421
|
pathLength: 1,
|
|
4409
|
-
"data-active":
|
|
4410
|
-
})] }, t.id)),
|
|
4422
|
+
"data-active": A?.pathId === t.id || te === t.id || void 0
|
|
4423
|
+
})] }, t.id)), E && /* @__PURE__ */ _("path", {
|
|
4411
4424
|
className: xr.marker,
|
|
4412
|
-
d: wr(
|
|
4425
|
+
d: wr(E.points)
|
|
4413
4426
|
})]
|
|
4414
4427
|
})
|
|
4415
4428
|
}),
|
|
4416
|
-
|
|
4429
|
+
r && le.length > 0 && /* @__PURE__ */ _("div", {
|
|
4417
4430
|
role: "group",
|
|
4418
|
-
"aria-label":
|
|
4419
|
-
children:
|
|
4431
|
+
"aria-label": je(le.length === 1 ? h.countOne : h.countMany, { count: le.length }),
|
|
4432
|
+
children: le.map((e) => /* @__PURE__ */ _("button", {
|
|
4420
4433
|
type: "button",
|
|
4421
4434
|
className: xr.srOnly,
|
|
4422
4435
|
onPointerDown: (e) => e.stopPropagation(),
|
|
4423
|
-
onFocus: () =>
|
|
4424
|
-
onBlur: () =>
|
|
4436
|
+
onFocus: () => L(e.id),
|
|
4437
|
+
onBlur: () => L(null),
|
|
4425
4438
|
onClick: (t) => {
|
|
4426
|
-
t.stopPropagation(),
|
|
4439
|
+
t.stopPropagation(), ue(e, !0);
|
|
4427
4440
|
},
|
|
4428
|
-
children: `${
|
|
4441
|
+
children: `${h.highlight} ${Or(e.text)}`
|
|
4429
4442
|
}, e.id))
|
|
4430
4443
|
}),
|
|
4431
|
-
/* @__PURE__ */ _(y, { children:
|
|
4444
|
+
/* @__PURE__ */ _(y, { children: r && A && /* @__PURE__ */ v(C.div, {
|
|
4432
4445
|
ref: ee,
|
|
4433
4446
|
role: "menu",
|
|
4434
|
-
"aria-label":
|
|
4435
|
-
onKeyDown:
|
|
4447
|
+
"aria-label": h.menu,
|
|
4448
|
+
onKeyDown: we,
|
|
4436
4449
|
onBlur: (e) => {
|
|
4437
4450
|
e.currentTarget.contains(e.relatedTarget) || re();
|
|
4438
4451
|
},
|
|
@@ -4450,8 +4463,8 @@ function Ar({ text: t, selectionMode: r = "marker", onHighlightComplete: i, onRe
|
|
|
4450
4463
|
},
|
|
4451
4464
|
className: xr.menu,
|
|
4452
4465
|
style: {
|
|
4453
|
-
left:
|
|
4454
|
-
top:
|
|
4466
|
+
left: A.x,
|
|
4467
|
+
top: A.y
|
|
4455
4468
|
},
|
|
4456
4469
|
onPointerDown: (e) => e.stopPropagation(),
|
|
4457
4470
|
children: [/* @__PURE__ */ _(C.div, {
|
|
@@ -4478,13 +4491,13 @@ function Ar({ text: t, selectionMode: r = "marker", onHighlightComplete: i, onRe
|
|
|
4478
4491
|
children: /* @__PURE__ */ _(V, {
|
|
4479
4492
|
variant: "primary",
|
|
4480
4493
|
role: "menuitem",
|
|
4481
|
-
tabIndex:
|
|
4482
|
-
icon: /* @__PURE__ */ _(
|
|
4494
|
+
tabIndex: M === 0 ? 0 : -1,
|
|
4495
|
+
icon: /* @__PURE__ */ _(ae, { size: 14 }),
|
|
4483
4496
|
onClick: (e) => {
|
|
4484
|
-
e.stopPropagation(),
|
|
4497
|
+
e.stopPropagation(), Me();
|
|
4485
4498
|
},
|
|
4486
|
-
title:
|
|
4487
|
-
children:
|
|
4499
|
+
title: h.reply,
|
|
4500
|
+
children: h.reply
|
|
4488
4501
|
})
|
|
4489
4502
|
}), /* @__PURE__ */ _(C.div, {
|
|
4490
4503
|
initial: {
|
|
@@ -4510,13 +4523,13 @@ function Ar({ text: t, selectionMode: r = "marker", onHighlightComplete: i, onRe
|
|
|
4510
4523
|
children: /* @__PURE__ */ _(V, {
|
|
4511
4524
|
variant: "primary",
|
|
4512
4525
|
role: "menuitem",
|
|
4513
|
-
tabIndex:
|
|
4526
|
+
tabIndex: M === 1 ? 0 : -1,
|
|
4514
4527
|
icon: /* @__PURE__ */ _(Se, { size: 14 }),
|
|
4515
4528
|
onClick: (e) => {
|
|
4516
|
-
e.stopPropagation(),
|
|
4529
|
+
e.stopPropagation(), U(A.pathId);
|
|
4517
4530
|
},
|
|
4518
|
-
title:
|
|
4519
|
-
"aria-label":
|
|
4531
|
+
title: h.remove,
|
|
4532
|
+
"aria-label": h.remove
|
|
4520
4533
|
})
|
|
4521
4534
|
})]
|
|
4522
4535
|
}) })
|
|
@@ -4533,15 +4546,15 @@ var jr = {
|
|
|
4533
4546
|
actions: "ick-actions-CWq8"
|
|
4534
4547
|
}, Mr = (e) => {
|
|
4535
4548
|
navigator.clipboard?.writeText(e);
|
|
4536
|
-
}, Nr = a(function({ turn: e, isActiveInput: t = !1, inputRef: n = null, placeholder: r, animationConfig: i, foldMotion: a, openArtifactId: o = null, onOpenArtifact: s, onArtifactChange: c, entranceDelay: l = 0, selectionMode: u = "marker",
|
|
4537
|
-
let
|
|
4549
|
+
}, Nr = a(function({ turn: e, isActiveInput: t = !1, inputRef: n = null, placeholder: r, animationConfig: i, foldMotion: a, openArtifactId: o = null, onOpenArtifact: s, onArtifactChange: c, entranceDelay: l = 0, selectionMode: u = "marker", highlights: d = !0, questionAlign: f = "end", onDraft: p, onSubmit: m, onStop: h, busy: g, onEdit: y, onCancelEdit: b, onCopy: x = Mr, onHighlight: S, onReplyInThread: w, onRegenerate: T, onShowVersion: E, onFeedback: D, feedback: O = null, answerActions: k = !0, onAnswerQuestion: A, onEditQuestion: j, onDecideApproval: M, renderPart: N, composerMenu: ee, labels: P, className: F, onTranscribe: I }) {
|
|
4550
|
+
let te = q(), L = te ? 0 : -16, ne = e.parts ?? [], re = ne.find((e) => e.kind === "sources")?.sources, ie = /* @__PURE__ */ v(C.article, {
|
|
4538
4551
|
id: `turn-${e.id}`,
|
|
4539
|
-
className: [jr.turn,
|
|
4552
|
+
className: [jr.turn, F ?? ""].filter(Boolean).join(" "),
|
|
4540
4553
|
"data-active-input": t || void 0,
|
|
4541
4554
|
"aria-busy": e.state === "responding" || void 0,
|
|
4542
4555
|
initial: {
|
|
4543
4556
|
opacity: 0,
|
|
4544
|
-
y:
|
|
4557
|
+
y: L
|
|
4545
4558
|
},
|
|
4546
4559
|
animate: {
|
|
4547
4560
|
opacity: 1,
|
|
@@ -4549,10 +4562,10 @@ var jr = {
|
|
|
4549
4562
|
},
|
|
4550
4563
|
exit: {
|
|
4551
4564
|
opacity: 0,
|
|
4552
|
-
y:
|
|
4565
|
+
y: L
|
|
4553
4566
|
},
|
|
4554
4567
|
transition: {
|
|
4555
|
-
duration:
|
|
4568
|
+
duration: te ? .15 : .4,
|
|
4556
4569
|
ease: [
|
|
4557
4570
|
.22,
|
|
4558
4571
|
1,
|
|
@@ -4563,29 +4576,30 @@ var jr = {
|
|
|
4563
4576
|
},
|
|
4564
4577
|
children: [/* @__PURE__ */ _("div", {
|
|
4565
4578
|
className: jr.question,
|
|
4566
|
-
"data-align":
|
|
4579
|
+
"data-align": f,
|
|
4567
4580
|
children: /* @__PURE__ */ _(ot, {
|
|
4568
4581
|
ref: n,
|
|
4569
|
-
style:
|
|
4582
|
+
style: f === "stretch" ? { width: "100%" } : void 0,
|
|
4570
4583
|
state: e.state,
|
|
4571
4584
|
value: e.user,
|
|
4572
|
-
onChange: (t) =>
|
|
4573
|
-
onSubmit: (t, n) =>
|
|
4585
|
+
onChange: (t) => p?.(e.id, t),
|
|
4586
|
+
onSubmit: (t, n) => m?.(e.id, t, n),
|
|
4574
4587
|
attachments: e.attachments,
|
|
4575
|
-
onStop:
|
|
4576
|
-
|
|
4577
|
-
|
|
4578
|
-
|
|
4579
|
-
|
|
4588
|
+
onStop: h,
|
|
4589
|
+
busy: g,
|
|
4590
|
+
onTranscribe: I,
|
|
4591
|
+
onCopy: x,
|
|
4592
|
+
onEdit: () => y?.(e.id),
|
|
4593
|
+
onCancelEdit: () => b?.(e.id),
|
|
4580
4594
|
isEditing: e.ai.length > 0 && e.state === "typing",
|
|
4581
4595
|
animationConfig: i,
|
|
4582
4596
|
placeholder: r,
|
|
4583
|
-
menu:
|
|
4597
|
+
menu: ee
|
|
4584
4598
|
})
|
|
4585
4599
|
}), /* @__PURE__ */ v("div", {
|
|
4586
4600
|
className: jr.body,
|
|
4587
4601
|
children: [
|
|
4588
|
-
|
|
4602
|
+
ne.map((t) => {
|
|
4589
4603
|
switch (t.kind) {
|
|
4590
4604
|
case "reasoning": return /* @__PURE__ */ _(Vt, {
|
|
4591
4605
|
state: t.state,
|
|
@@ -4621,7 +4635,7 @@ var jr = {
|
|
|
4621
4635
|
description: t.description,
|
|
4622
4636
|
decision: t.decision ?? null,
|
|
4623
4637
|
choices: t.choices,
|
|
4624
|
-
onDecide: (n) =>
|
|
4638
|
+
onDecide: (n) => M?.(e.id, t.id, n),
|
|
4625
4639
|
children: t.tool && /* @__PURE__ */ _(cn, {
|
|
4626
4640
|
name: t.tool.name,
|
|
4627
4641
|
state: "pending",
|
|
@@ -4653,11 +4667,11 @@ var jr = {
|
|
|
4653
4667
|
collapsible: t.collapsible,
|
|
4654
4668
|
readOnly: t.readOnly,
|
|
4655
4669
|
foldMotion: a,
|
|
4656
|
-
onCommit: (n, r) =>
|
|
4657
|
-
onEdit: (n) =>
|
|
4670
|
+
onCommit: (n, r) => A?.(e.id, t.id, n, r),
|
|
4671
|
+
onEdit: (n) => j?.(e.id, t.id, n)
|
|
4658
4672
|
}, t.id);
|
|
4659
4673
|
case "custom": {
|
|
4660
|
-
let n =
|
|
4674
|
+
let n = N?.(t, {
|
|
4661
4675
|
turnId: e.id,
|
|
4662
4676
|
openArtifact: (t) => c ? c(t) : s?.(e.id, t),
|
|
4663
4677
|
closeArtifact: () => c?.(null)
|
|
@@ -4671,7 +4685,7 @@ var jr = {
|
|
|
4671
4685
|
}
|
|
4672
4686
|
}
|
|
4673
4687
|
}),
|
|
4674
|
-
e.state === "responding" && !e.ai &&
|
|
4688
|
+
e.state === "responding" && !e.ai && ne.length === 0 && /* @__PURE__ */ _("div", {
|
|
4675
4689
|
className: jr.answer,
|
|
4676
4690
|
children: /* @__PURE__ */ _(Mt, {})
|
|
4677
4691
|
}),
|
|
@@ -4679,32 +4693,33 @@ var jr = {
|
|
|
4679
4693
|
className: jr.answer,
|
|
4680
4694
|
children: [/* @__PURE__ */ _(Ar, {
|
|
4681
4695
|
text: e.ai,
|
|
4696
|
+
marking: d,
|
|
4682
4697
|
selectionMode: u,
|
|
4683
|
-
sources:
|
|
4684
|
-
onHighlightComplete: (t) =>
|
|
4685
|
-
onReplyInThread:
|
|
4686
|
-
}),
|
|
4698
|
+
sources: re,
|
|
4699
|
+
onHighlightComplete: d ? (t) => S?.(e.id, t) : void 0,
|
|
4700
|
+
onReplyInThread: d ? w : void 0
|
|
4701
|
+
}), k && e.state === "resting" && /* @__PURE__ */ v("div", {
|
|
4687
4702
|
className: jr.actions,
|
|
4688
4703
|
children: [/* @__PURE__ */ _(At, {
|
|
4689
4704
|
total: e.versions?.length ?? 0,
|
|
4690
4705
|
index: e.versionIndex ?? 0,
|
|
4691
|
-
onSelect: (t) =>
|
|
4706
|
+
onSelect: (t) => E?.(e.id, t)
|
|
4692
4707
|
}), /* @__PURE__ */ _(Ot, {
|
|
4693
4708
|
text: e.ai,
|
|
4694
|
-
onCopy:
|
|
4695
|
-
onRegenerate:
|
|
4696
|
-
onFeedback:
|
|
4697
|
-
feedback:
|
|
4709
|
+
onCopy: x,
|
|
4710
|
+
onRegenerate: T ? () => T(e.id) : void 0,
|
|
4711
|
+
onFeedback: D ? (t) => D(e.id, t) : void 0,
|
|
4712
|
+
feedback: O
|
|
4698
4713
|
})]
|
|
4699
4714
|
})]
|
|
4700
4715
|
})
|
|
4701
4716
|
]
|
|
4702
4717
|
})]
|
|
4703
4718
|
});
|
|
4704
|
-
return
|
|
4705
|
-
labels:
|
|
4706
|
-
children:
|
|
4707
|
-
}) :
|
|
4719
|
+
return P ? /* @__PURE__ */ _(Ae, {
|
|
4720
|
+
labels: P,
|
|
4721
|
+
children: ie
|
|
4722
|
+
}) : ie;
|
|
4708
4723
|
}, (e, t) => {
|
|
4709
4724
|
let n = /* @__PURE__ */ new Set([...Object.keys(e), ...Object.keys(t)]);
|
|
4710
4725
|
for (let r of n) {
|
|
@@ -4739,7 +4754,7 @@ function Fr(e) {
|
|
|
4739
4754
|
}
|
|
4740
4755
|
var Ir = 6, Lr = 2 * Math.PI * Ir;
|
|
4741
4756
|
function Rr({ used: e, total: t, warnAt: n = .8, label: r, labels: i, className: a, ...o }) {
|
|
4742
|
-
let s =
|
|
4757
|
+
let s = H("context", i), c = t > 0 ? Math.min(1, Math.max(0, e / t)) : 0, l = Math.round(c * 100), u = c >= n, d = r === !1 ? null : r ?? `${l}%`, f = `${s.name}: ${l}%, ${Fr(e)} ${s.of} ${Fr(t)} ${s.tokens}${u ? `. ${s.nearlyFull}` : ""}`;
|
|
4743
4758
|
return /* @__PURE__ */ v("div", {
|
|
4744
4759
|
className: [Pr.context, a ?? ""].filter(Boolean).join(" "),
|
|
4745
4760
|
"data-warn": u || void 0,
|
|
@@ -4790,7 +4805,7 @@ var zr = {
|
|
|
4790
4805
|
//#endregion
|
|
4791
4806
|
//#region src/Artifact/ArtifactPane.tsx
|
|
4792
4807
|
function Br({ title: e, meta: t, children: n, onClose: r, modal: i = !1, expanded: a = !1, onToggleExpanded: o, closeLabel: s, expandLabel: u, collapseLabel: d, className: f, ...m }) {
|
|
4793
|
-
let h =
|
|
4808
|
+
let h = H("pane"), g = s ?? h.close, y = u ?? h.expand, b = d ?? h.collapse, x = l(), S = p(null), C = p(null);
|
|
4794
4809
|
return c(() => {
|
|
4795
4810
|
C.current?.focus({ preventScroll: !0 });
|
|
4796
4811
|
}, []), c(() => {
|
|
@@ -4837,7 +4852,7 @@ function Br({ title: e, meta: t, children: n, onClose: r, modal: i = !1, expande
|
|
|
4837
4852
|
o && !i && /* @__PURE__ */ _(V, {
|
|
4838
4853
|
variant: "ghost",
|
|
4839
4854
|
size: "s",
|
|
4840
|
-
icon: _(a ?
|
|
4855
|
+
icon: _(a ? se : R, {
|
|
4841
4856
|
size: 15,
|
|
4842
4857
|
"aria-hidden": !0
|
|
4843
4858
|
}),
|
|
@@ -5055,30 +5070,48 @@ var Qr = {
|
|
|
5055
5070
|
jump: "ick-jump-nd6O"
|
|
5056
5071
|
}, $r = 64, ei = 500, ti = 4, ni = (e, t) => e.offsetTop - t.offsetTop, ri = (e, t) => t ? e.querySelector(`[id="${CSS.escape(t)}"]`) : null, ii = (e, t, n) => {
|
|
5057
5072
|
n !== t.current && (t.current = n, e.style.setProperty("--ick-conversation-tail", `${Math.round(n)}px`));
|
|
5058
|
-
}, ai = r(function({ children: e, anchorId: t, anchorOffset: n = 0, endOffset: r = 0, tail: i = "auto", threshold: a = $r, scrollButton: s = !0, scrollButtonLabel: l, follow: f = !0,
|
|
5059
|
-
let
|
|
5060
|
-
u(
|
|
5061
|
-
let
|
|
5062
|
-
|
|
5073
|
+
}, ai = r(function({ children: e, anchorId: t, anchorOffset: n = 0, endOffset: r = 0, tail: i = "auto", threshold: a = $r, scrollButton: s = !0, scrollButtonLabel: l, follow: f = !0, dock: h = !1, className: g, viewportClassName: y, onScroll: b, ...x }, S) {
|
|
5074
|
+
let C = H("conversation").jump, w = l ?? C, T = p(null);
|
|
5075
|
+
u(S, () => T.current, []);
|
|
5076
|
+
let E = p(null), O = p(null), [k, A] = m(!0);
|
|
5077
|
+
c(() => {
|
|
5078
|
+
if (!h) return;
|
|
5079
|
+
let e = E.current, t = O.current;
|
|
5080
|
+
if (!e || !t || typeof ResizeObserver > "u") return;
|
|
5081
|
+
let n = () => {
|
|
5082
|
+
let n = e.lastElementChild;
|
|
5083
|
+
t.style.setProperty("--ick-dock-height", `${n?.offsetHeight ?? 0}px`);
|
|
5084
|
+
}, r = new ResizeObserver(n);
|
|
5085
|
+
return r.observe(e), n(), () => {
|
|
5086
|
+
r.disconnect(), t.style.removeProperty("--ick-dock-height");
|
|
5087
|
+
};
|
|
5088
|
+
}, [h]);
|
|
5089
|
+
let j = p(-1), M = p(null), N = p(!1), ee = o(() => {
|
|
5090
|
+
let e = T.current, t = E.current;
|
|
5063
5091
|
if (!e || !t) return 0;
|
|
5064
|
-
if (i === "auto" &&
|
|
5065
|
-
let n = t.lastElementChild, a = n ? ni(n, e) + n.offsetHeight : ni(t, e) + t.offsetHeight -
|
|
5092
|
+
if (i === "auto" && N.current) return Math.max(0, e.scrollHeight - e.clientHeight);
|
|
5093
|
+
let n = h ? null : t.lastElementChild, a = n ? ni(n, e) + n.offsetHeight : ni(t, e) + t.offsetHeight - (h ? 0 : j.current);
|
|
5066
5094
|
return Math.max(0, a + r - e.clientHeight);
|
|
5067
|
-
}, [
|
|
5068
|
-
|
|
5095
|
+
}, [
|
|
5096
|
+
h,
|
|
5097
|
+
r,
|
|
5098
|
+
i
|
|
5099
|
+
]), P = o(() => {
|
|
5100
|
+
let e = T.current, a = E.current;
|
|
5069
5101
|
if (!e || !a) return;
|
|
5070
|
-
if (i !== "auto") return ii(a,
|
|
5071
|
-
let o = parseFloat(getComputedStyle(e).paddingBottom) || 0, s = Math.max(0, r - o), c = a.lastElementChild, l = ri(e,
|
|
5072
|
-
if (
|
|
5073
|
-
let u = ni(c, e) + c.offsetHeight - ni(l, e), d = Math.max(s, e.clientHeight - n - u - o);
|
|
5074
|
-
ii(a,
|
|
5102
|
+
if (i !== "auto") return ii(a, j, Math.max(0, i));
|
|
5103
|
+
let o = parseFloat(getComputedStyle(e).paddingBottom) || 0, s = Math.max(0, r - o), c = a.lastElementChild, l = ri(e, M.current);
|
|
5104
|
+
if (N.current = !!c && !!l, !N.current || !c || !l) return ii(a, j, s);
|
|
5105
|
+
let u = ni(c, e) + c.offsetHeight - ni(l, e), d = h ? Math.max(s, j.current + (ni(l, e) - n - (e.scrollHeight - e.clientHeight))) : Math.max(s, e.clientHeight - n - u - o);
|
|
5106
|
+
ii(a, j, t ? Math.max(d, j.current) : d);
|
|
5075
5107
|
}, [
|
|
5076
5108
|
i,
|
|
5077
5109
|
n,
|
|
5078
5110
|
r,
|
|
5079
|
-
t
|
|
5080
|
-
|
|
5081
|
-
|
|
5111
|
+
t,
|
|
5112
|
+
h
|
|
5113
|
+
]), F = o(() => {
|
|
5114
|
+
let e = T.current;
|
|
5082
5115
|
if (!e) return 0;
|
|
5083
5116
|
if (t) {
|
|
5084
5117
|
let r = e.querySelector(`[id="${CSS.escape(t)}"]`);
|
|
@@ -5087,66 +5120,66 @@ var Qr = {
|
|
|
5087
5120
|
return Math.max(0, Math.min(Math.max(a, o), t));
|
|
5088
5121
|
}
|
|
5089
5122
|
}
|
|
5090
|
-
return
|
|
5123
|
+
return ee();
|
|
5091
5124
|
}, [
|
|
5092
5125
|
t,
|
|
5093
5126
|
n,
|
|
5094
|
-
|
|
5095
|
-
]),
|
|
5096
|
-
let t =
|
|
5127
|
+
ee
|
|
5128
|
+
]), I = p(0), te = p(null), L = o((e) => {
|
|
5129
|
+
let t = T.current;
|
|
5097
5130
|
if (!t) return;
|
|
5098
5131
|
let n = e && !q();
|
|
5099
|
-
|
|
5100
|
-
top:
|
|
5132
|
+
I.current = n ? performance.now() + ei : 0, t.scrollTo({
|
|
5133
|
+
top: F(),
|
|
5101
5134
|
behavior: n ? "smooth" : "auto"
|
|
5102
|
-
}),
|
|
5103
|
-
}, [
|
|
5135
|
+
}), A(!0);
|
|
5136
|
+
}, [F]);
|
|
5104
5137
|
d(() => {
|
|
5105
|
-
t && (
|
|
5106
|
-
let e =
|
|
5107
|
-
if (
|
|
5108
|
-
let r = new ResizeObserver(
|
|
5138
|
+
t && (M.current = t);
|
|
5139
|
+
let e = T.current, n = E.current;
|
|
5140
|
+
if (P(), !e || !n || typeof ResizeObserver > "u") return;
|
|
5141
|
+
let r = new ResizeObserver(P);
|
|
5109
5142
|
return r.observe(n), r.observe(e), () => r.disconnect();
|
|
5110
|
-
}, [t,
|
|
5111
|
-
if (!f || !
|
|
5112
|
-
let e =
|
|
5143
|
+
}, [t, P]), d(() => {
|
|
5144
|
+
if (!f || !k && !t) return;
|
|
5145
|
+
let e = T.current, n = E.current;
|
|
5113
5146
|
if (!e || !n || typeof ResizeObserver > "u") return;
|
|
5114
5147
|
let r = () => {
|
|
5115
|
-
let n =
|
|
5116
|
-
if (
|
|
5117
|
-
if (performance.now() <
|
|
5118
|
-
|
|
5148
|
+
let n = F();
|
|
5149
|
+
if (I.current) {
|
|
5150
|
+
if (performance.now() < I.current && Math.abs(e.scrollTop - n) > 1) return;
|
|
5151
|
+
I.current = 0;
|
|
5119
5152
|
}
|
|
5120
5153
|
let r = n - e.scrollTop;
|
|
5121
|
-
if (
|
|
5122
|
-
|
|
5154
|
+
if (M.current && !t && Math.abs(r) > a && !q()) {
|
|
5155
|
+
I.current = performance.now() + ei, e.scrollTo({
|
|
5123
5156
|
top: n,
|
|
5124
5157
|
behavior: "smooth"
|
|
5125
5158
|
});
|
|
5126
5159
|
return;
|
|
5127
5160
|
}
|
|
5128
5161
|
e.scrollTop = n;
|
|
5129
|
-
}, i = t != null && t !==
|
|
5130
|
-
t && (
|
|
5131
|
-
top:
|
|
5162
|
+
}, i = t != null && t !== te.current;
|
|
5163
|
+
t && (te.current = t), i && !q() && Math.abs(e.scrollTop - F()) > a ? (I.current = performance.now() + ei, e.scrollTo({
|
|
5164
|
+
top: F(),
|
|
5132
5165
|
behavior: "smooth"
|
|
5133
5166
|
})) : r();
|
|
5134
5167
|
let o = new ResizeObserver(r);
|
|
5135
5168
|
return o.observe(n), () => o.disconnect();
|
|
5136
5169
|
}, [
|
|
5137
5170
|
f,
|
|
5138
|
-
|
|
5139
|
-
|
|
5171
|
+
k,
|
|
5172
|
+
F,
|
|
5140
5173
|
t,
|
|
5141
5174
|
a
|
|
5142
5175
|
]), c(() => {
|
|
5143
5176
|
if (!f) return;
|
|
5144
|
-
let e =
|
|
5177
|
+
let e = T.current;
|
|
5145
5178
|
if (!e) return;
|
|
5146
5179
|
let n = () => {
|
|
5147
|
-
|
|
5180
|
+
I.current = 0, Math.abs(e.scrollTop - F()) > a && A(!1);
|
|
5148
5181
|
}, r = (e) => {
|
|
5149
|
-
t ? n() : e.deltaY < 0 &&
|
|
5182
|
+
t ? n() : e.deltaY < 0 && A(!1);
|
|
5150
5183
|
}, i = (e) => {
|
|
5151
5184
|
[
|
|
5152
5185
|
"ArrowUp",
|
|
@@ -5159,10 +5192,10 @@ var Qr = {
|
|
|
5159
5192
|
"ArrowUp",
|
|
5160
5193
|
"PageUp",
|
|
5161
5194
|
"Home"
|
|
5162
|
-
].includes(e.key) &&
|
|
5195
|
+
].includes(e.key) && A(!1));
|
|
5163
5196
|
}, o = (e) => {
|
|
5164
5197
|
let t = e.target;
|
|
5165
|
-
t instanceof Element && t.closest("[aria-expanded]") &&
|
|
5198
|
+
t instanceof Element && t.closest("[aria-expanded]") && A(!1);
|
|
5166
5199
|
};
|
|
5167
5200
|
return e.addEventListener("wheel", r, { passive: !0 }), e.addEventListener("touchmove", n, { passive: !0 }), e.addEventListener("keydown", i), e.addEventListener("pointerdown", o, { passive: !0 }), () => {
|
|
5168
5201
|
e.removeEventListener("wheel", r), e.removeEventListener("touchmove", n), e.removeEventListener("keydown", i), e.removeEventListener("pointerdown", o);
|
|
@@ -5170,38 +5203,41 @@ var Qr = {
|
|
|
5170
5203
|
}, [
|
|
5171
5204
|
f,
|
|
5172
5205
|
a,
|
|
5173
|
-
|
|
5206
|
+
F,
|
|
5174
5207
|
t
|
|
5175
5208
|
]);
|
|
5176
|
-
let
|
|
5177
|
-
if (
|
|
5178
|
-
let t =
|
|
5179
|
-
t && Math.abs(t.scrollTop -
|
|
5209
|
+
let ne = o((e) => {
|
|
5210
|
+
if (b?.(e), !f) return;
|
|
5211
|
+
let t = T.current;
|
|
5212
|
+
t && Math.abs(t.scrollTop - F()) <= ti && (I.current = 0, A(!0));
|
|
5180
5213
|
}, [
|
|
5181
5214
|
f,
|
|
5182
|
-
|
|
5183
|
-
|
|
5184
|
-
]),
|
|
5215
|
+
b,
|
|
5216
|
+
F
|
|
5217
|
+
]), re = f && !k;
|
|
5185
5218
|
return /* @__PURE__ */ v("div", {
|
|
5186
|
-
|
|
5219
|
+
ref: O,
|
|
5220
|
+
className: [Qr.root, g ?? ""].filter(Boolean).join(" "),
|
|
5221
|
+
"data-dock": h || void 0,
|
|
5187
5222
|
children: [/* @__PURE__ */ _("div", {
|
|
5188
|
-
ref:
|
|
5189
|
-
className: [Qr.viewport,
|
|
5190
|
-
onScroll:
|
|
5191
|
-
...
|
|
5223
|
+
ref: T,
|
|
5224
|
+
className: [Qr.viewport, y ?? ""].filter(Boolean).join(" "),
|
|
5225
|
+
onScroll: ne,
|
|
5226
|
+
...x,
|
|
5192
5227
|
children: /* @__PURE__ */ _("div", {
|
|
5193
|
-
ref:
|
|
5228
|
+
ref: E,
|
|
5194
5229
|
className: Qr.content,
|
|
5230
|
+
"data-dock": h || void 0,
|
|
5195
5231
|
children: e
|
|
5196
5232
|
})
|
|
5197
5233
|
}), s && /* @__PURE__ */ _("button", {
|
|
5198
5234
|
type: "button",
|
|
5199
5235
|
className: Qr.jump,
|
|
5200
|
-
"data-shown":
|
|
5201
|
-
tabIndex:
|
|
5202
|
-
"aria-hidden": !
|
|
5203
|
-
onClick: () =>
|
|
5204
|
-
"aria-label":
|
|
5236
|
+
"data-shown": re || void 0,
|
|
5237
|
+
tabIndex: re ? 0 : -1,
|
|
5238
|
+
"aria-hidden": !re || void 0,
|
|
5239
|
+
onClick: () => L(!0),
|
|
5240
|
+
"aria-label": w,
|
|
5205
5241
|
children: /* @__PURE__ */ _(D, {
|
|
5206
5242
|
size: 15,
|
|
5207
5243
|
"aria-hidden": !0
|
|
@@ -5218,7 +5254,7 @@ var Qr = {
|
|
|
5218
5254
|
//#endregion
|
|
5219
5255
|
//#region src/EmptyState/EmptyState.tsx
|
|
5220
5256
|
function si({ icon: e, title: t, description: n, suggestions: r, onSuggestion: i, suggestionsLabel: a, children: o, className: s, ...c }) {
|
|
5221
|
-
let l =
|
|
5257
|
+
let l = H("emptyState").suggestions, u = a ?? l, d = i ? r ?? [] : [];
|
|
5222
5258
|
return /* @__PURE__ */ v("div", {
|
|
5223
5259
|
className: [oi.empty, s ?? ""].filter(Boolean).join(" "),
|
|
5224
5260
|
...c,
|
|
@@ -5304,7 +5340,7 @@ var Q = {
|
|
|
5304
5340
|
}
|
|
5305
5341
|
}, hi = "a[href], button:not([disabled]), input:not([disabled]), select:not([disabled]), textarea:not([disabled]), [contenteditable]:not([contenteditable=\"false\"]), [tabindex]:not([tabindex=\"-1\"])";
|
|
5306
5342
|
function gi({ activeReply: e, onClose: t, onSave: n, onSendMessage: r }) {
|
|
5307
|
-
let i =
|
|
5343
|
+
let i = H("thread"), { responding: a } = H("experience"), [o, s] = m("none"), u = p(null), d = p(null), f = p(null), [h] = m(() => typeof document > "u" ? null : document.activeElement), g = l(), y = l(), b = rt, [S, w] = m(() => typeof window > "u" ? !1 : window.matchMedia?.(`(max-width: ${pi}px)`)?.matches ?? !1);
|
|
5308
5344
|
c(() => {
|
|
5309
5345
|
let e = window.matchMedia?.(`(max-width: ${pi}px)`);
|
|
5310
5346
|
if (!e?.addEventListener) return;
|
|
@@ -5357,7 +5393,7 @@ function gi({ activeReply: e, onClose: t, onSave: n, onSendMessage: r }) {
|
|
|
5357
5393
|
behavior: "smooth"
|
|
5358
5394
|
});
|
|
5359
5395
|
}, [E]);
|
|
5360
|
-
let { x:
|
|
5396
|
+
let { x: N, y: ee, width: P, maxHeight: F } = typeof window > "u" ? {
|
|
5361
5397
|
x: 0,
|
|
5362
5398
|
y: 0,
|
|
5363
5399
|
width: 480,
|
|
@@ -5385,8 +5421,8 @@ function gi({ activeReply: e, onClose: t, onSave: n, onSendMessage: r }) {
|
|
|
5385
5421
|
opacity: 0
|
|
5386
5422
|
},
|
|
5387
5423
|
animate: S ? "open" : {
|
|
5388
|
-
left:
|
|
5389
|
-
top:
|
|
5424
|
+
left: N,
|
|
5425
|
+
top: ee,
|
|
5390
5426
|
width: P,
|
|
5391
5427
|
borderRadius: 28,
|
|
5392
5428
|
opacity: 1
|
|
@@ -5705,8 +5741,10 @@ function vi(e) {
|
|
|
5705
5741
|
}
|
|
5706
5742
|
var $ = {
|
|
5707
5743
|
page: "ick-page-NK01",
|
|
5708
|
-
paned: "ick-paned-MM8c",
|
|
5709
5744
|
feed: "ick-feed-XqZl",
|
|
5745
|
+
dock: "ick-dock-tvIC",
|
|
5746
|
+
centred: "ick-centred-5tu8",
|
|
5747
|
+
paned: "ick-paned-MM8c",
|
|
5710
5748
|
topBlur: "ick-topBlur-69Dl",
|
|
5711
5749
|
bottomBlur: "ick-bottomBlur-MXmb",
|
|
5712
5750
|
header: "ick-header-pQ7Z",
|
|
@@ -5723,116 +5761,134 @@ var $ = {
|
|
|
5723
5761
|
groupTitle: "ick-groupTitle-jiBB",
|
|
5724
5762
|
marks: "ick-marks-gwsN",
|
|
5725
5763
|
mark: "ick-mark-QkpW"
|
|
5726
|
-
}, yi = () => ""
|
|
5727
|
-
|
|
5728
|
-
|
|
5764
|
+
}, yi = () => "", bi = {
|
|
5765
|
+
stiffness: 170,
|
|
5766
|
+
damping: 24,
|
|
5767
|
+
mass: 1
|
|
5768
|
+
};
|
|
5769
|
+
function xi({ onSend: e, chat: t, renderPart: n, labels: r, headerActions: i = !0, composerMenu: a, onTranscribe: s, onThreadReply: l, title: u, backHref: d, backLabel: h, actions: b, placeholder: x, empty: S, contextTotal: w, contextBase: T = 0, artifact: E, openArtifactId: D, onOpenArtifactChange: O, pane: A = "inline", surface: j = "flush", composer: M = "inline", theme: N, onThemeChange: ee, cursor: P = !1, selectionToggle: F = !1, highlights: I = !0, bookmarks: te = !0, anchorOffset: L = 100, endOffset: re = 120, animationConfig: ie, foldMotion: R, feedDelay: ae = 0, onAnswerQuestion: oe, onEditQuestion: se, onDecideApproval: le, className: ue }) {
|
|
5770
|
+
let z = H("experience", r?.experience), de = u ?? z.title, [fe, pe] = m([]), [me, he] = m(!1), [_e, be] = m(null), [xe, Se] = m("marker"), Ce = p(null), we = N !== void 0, [B, Te] = m(null), Ee = we ? N : B, [V, De] = m(() => typeof window < "u" && !!window.matchMedia?.("(prefers-color-scheme: dark)").matches);
|
|
5729
5771
|
c(() => {
|
|
5730
|
-
let e = window.matchMedia("(prefers-color-scheme: dark)"), t = () =>
|
|
5772
|
+
let e = window.matchMedia("(prefers-color-scheme: dark)"), t = () => De(e.matches);
|
|
5731
5773
|
return e.addEventListener("change", t), () => e.removeEventListener("change", t);
|
|
5732
5774
|
}, []);
|
|
5733
|
-
let
|
|
5734
|
-
vi(
|
|
5735
|
-
let
|
|
5736
|
-
|
|
5737
|
-
}, [
|
|
5775
|
+
let Oe = Ee ?? (V ? "dark" : "light");
|
|
5776
|
+
vi(Ee);
|
|
5777
|
+
let ke = o((e) => {
|
|
5778
|
+
we || Te(e), ee?.(e);
|
|
5779
|
+
}, [we, ee]), U = M === "docked", Me = f(() => U ? {
|
|
5780
|
+
...rt,
|
|
5781
|
+
...ie,
|
|
5782
|
+
bubble: ie?.bubble ?? bi
|
|
5783
|
+
} : ie, [U, ie]), Ne = ht({
|
|
5738
5784
|
onSend: e ?? yi,
|
|
5739
|
-
announcements: { responding:
|
|
5740
|
-
|
|
5741
|
-
|
|
5742
|
-
|
|
5743
|
-
|
|
5744
|
-
|
|
5785
|
+
announcements: { responding: z.responding },
|
|
5786
|
+
nextTurn: U ? "at-send" : "after-answer"
|
|
5787
|
+
}), { turns: Pe, setDraft: Fe, submit: Ie, showVersion: Le, stop: W, beginEdit: Re, cancelEdit: ze, updatePart: Be, isStreaming: Ve } = t ?? Ne, [He, Ue] = m(null), We = o((e, t, n) => {
|
|
5788
|
+
Ue(e), Ie(e, t, n);
|
|
5789
|
+
}, [Ie]), Ge = He ? Pe.find((e) => e.id === He) ?? null : null, G = Ge && Ge.state !== "resting" ? He : null, [K, q] = m(0);
|
|
5790
|
+
c(() => {
|
|
5791
|
+
if (!U) return;
|
|
5792
|
+
let e = window.visualViewport;
|
|
5793
|
+
if (!e) return;
|
|
5794
|
+
let t = () => q(Math.max(0, Math.round(window.innerHeight - e.height)));
|
|
5795
|
+
return t(), e.addEventListener("resize", t), () => e.removeEventListener("resize", t);
|
|
5796
|
+
}, [U]);
|
|
5797
|
+
let qe = o((e) => {
|
|
5798
|
+
Ue(e), Ie(e);
|
|
5799
|
+
}, [Ie]), Je = Pe.length === 1 && !Pe[0].user && !Pe[0].ai, Ye = T + Math.round(Pe.reduce((e, t) => e + t.user.length + t.ai.length + JSON.stringify(t.parts ?? []).length, 0) / 4), Xe = w !== void 0 && Ye >= w, Ze = p(!1);
|
|
5745
5800
|
c(() => {
|
|
5746
|
-
if (!
|
|
5747
|
-
|
|
5801
|
+
if (!Xe) {
|
|
5802
|
+
Ze.current = !1;
|
|
5748
5803
|
return;
|
|
5749
5804
|
}
|
|
5750
|
-
|
|
5751
|
-
}, [
|
|
5752
|
-
let
|
|
5753
|
-
openArtifactId:
|
|
5754
|
-
artifactHeld:
|
|
5805
|
+
Ze.current || (Ze.current = !0, Ke(z.windowFull));
|
|
5806
|
+
}, [Xe, z.windowFull]);
|
|
5807
|
+
let Qe = Zr(), $e = D !== void 0, et = $e ? D : Qe.openId, tt = p({
|
|
5808
|
+
openArtifactId: et,
|
|
5809
|
+
artifactHeld: $e,
|
|
5755
5810
|
onOpenArtifactChange: O
|
|
5756
5811
|
});
|
|
5757
5812
|
c(() => {
|
|
5758
|
-
|
|
5759
|
-
openArtifactId:
|
|
5760
|
-
artifactHeld:
|
|
5813
|
+
tt.current = {
|
|
5814
|
+
openArtifactId: et,
|
|
5815
|
+
artifactHeld: $e,
|
|
5761
5816
|
onOpenArtifactChange: O
|
|
5762
5817
|
};
|
|
5763
5818
|
});
|
|
5764
|
-
let
|
|
5765
|
-
let { artifactHeld: t, onOpenArtifactChange: n } =
|
|
5766
|
-
t || (e === null ?
|
|
5767
|
-
}, [
|
|
5768
|
-
|
|
5819
|
+
let nt = Qe.open, it = Qe.close, at = o((e) => {
|
|
5820
|
+
let { artifactHeld: t, onOpenArtifactChange: n } = tt.current;
|
|
5821
|
+
t || (e === null ? it() : nt(e)), n?.(e);
|
|
5822
|
+
}, [nt, it]), ot = o(() => at(null), [at]), [st, ct] = m({}), lt = o((e, t) => {
|
|
5823
|
+
ct((n) => ({
|
|
5769
5824
|
...n,
|
|
5770
5825
|
[e]: t
|
|
5771
5826
|
}));
|
|
5772
|
-
}, []),
|
|
5773
|
-
t.trim().length > 0 &&
|
|
5827
|
+
}, []), ut = Pe.find((e) => e.state !== "idle" && e.state !== "typing" && e.user.trim())?.user.trim() ?? de, J = o((e, t) => {
|
|
5828
|
+
te && t.trim().length > 0 && pe((n) => [...n, {
|
|
5774
5829
|
turnId: e,
|
|
5775
5830
|
text: t.trim()
|
|
5776
5831
|
}]);
|
|
5777
|
-
}, []),
|
|
5778
|
-
|
|
5832
|
+
}, [te]), dt = o((e, t) => at(tt.current.openArtifactId === t ? null : t), [at]), ft = o((e, t) => {
|
|
5833
|
+
be({
|
|
5779
5834
|
text: e,
|
|
5780
5835
|
rect: t
|
|
5781
5836
|
});
|
|
5782
|
-
}, []),
|
|
5837
|
+
}, []), pt = f(() => oe ? (e, t, n, r) => oe(Be, e, t, n, r) : void 0, [oe, Be]), mt = f(() => se ? (e, t, n) => se(Be, e, t, n) : void 0, [se, Be]), Y = f(() => le ? (e, t, n) => le(Be, e, t, n) : void 0, [le, Be]), [gt, _t] = m(() => typeof window > "u" || !window.matchMedia || window.matchMedia("(pointer: fine)").matches);
|
|
5783
5838
|
c(() => {
|
|
5784
|
-
if (!
|
|
5785
|
-
let e = window.matchMedia("(pointer: fine)"), t = () =>
|
|
5839
|
+
if (!P) return;
|
|
5840
|
+
let e = window.matchMedia("(pointer: fine)"), t = () => _t(e.matches);
|
|
5786
5841
|
return t(), e.addEventListener("change", t), () => e.removeEventListener("change", t);
|
|
5787
|
-
}, [
|
|
5788
|
-
let
|
|
5789
|
-
...
|
|
5842
|
+
}, [P]);
|
|
5843
|
+
let vt = (e) => i === !0 || Array.isArray(i) && i.includes(e), yt = [
|
|
5844
|
+
...I && te && fe.length > 0 ? [{
|
|
5790
5845
|
id: "bookmarks",
|
|
5791
|
-
label:
|
|
5846
|
+
label: z.savedHighlights,
|
|
5792
5847
|
icon: /* @__PURE__ */ _(k, {
|
|
5793
5848
|
size: 16,
|
|
5794
5849
|
"aria-hidden": !0
|
|
5795
5850
|
}),
|
|
5796
|
-
count:
|
|
5851
|
+
count: fe.length,
|
|
5797
5852
|
pinned: !0,
|
|
5798
|
-
onClick: () =>
|
|
5853
|
+
onClick: () => he(!0)
|
|
5799
5854
|
}] : [],
|
|
5800
|
-
...
|
|
5855
|
+
...vt("theme") ? [{
|
|
5801
5856
|
id: "theme",
|
|
5802
|
-
label:
|
|
5803
|
-
icon: _(
|
|
5857
|
+
label: Oe === "dark" ? z.themeToLight : z.themeToDark,
|
|
5858
|
+
icon: _(Oe === "dark" ? ve : ce, {
|
|
5804
5859
|
size: 16,
|
|
5805
5860
|
"aria-hidden": !0
|
|
5806
5861
|
}),
|
|
5807
|
-
active:
|
|
5808
|
-
onClick: () =>
|
|
5862
|
+
active: Oe === "dark",
|
|
5863
|
+
onClick: () => ke(Oe === "dark" ? "light" : "dark")
|
|
5809
5864
|
}] : [],
|
|
5810
|
-
...
|
|
5865
|
+
...vt("share") ? [{
|
|
5811
5866
|
id: "share",
|
|
5812
|
-
label:
|
|
5867
|
+
label: z.share,
|
|
5813
5868
|
icon: /* @__PURE__ */ _(ge, {
|
|
5814
5869
|
size: 16,
|
|
5815
5870
|
"aria-hidden": !0
|
|
5816
5871
|
}),
|
|
5817
5872
|
onClick: () => navigator.share?.({
|
|
5818
|
-
title:
|
|
5873
|
+
title: ut,
|
|
5819
5874
|
url: window.location.href
|
|
5820
5875
|
})
|
|
5821
5876
|
}] : [],
|
|
5822
5877
|
...b ?? []
|
|
5823
|
-
],
|
|
5878
|
+
], bt = A === "inline" && et ? E?.(et) : null, xt = /* @__PURE__ */ v(C.div, {
|
|
5824
5879
|
className: [
|
|
5825
5880
|
$.page,
|
|
5826
5881
|
j === "panes" ? $.paned : "",
|
|
5827
5882
|
"ick-chat-page",
|
|
5828
|
-
|
|
5883
|
+
ue
|
|
5829
5884
|
].filter(Boolean).join(" "),
|
|
5830
|
-
style: { "--ick-experience-anchor": `${
|
|
5885
|
+
style: { "--ick-experience-anchor": `${L}px` },
|
|
5886
|
+
"data-composer": U ? "docked" : void 0,
|
|
5831
5887
|
initial: { opacity: 0 },
|
|
5832
5888
|
animate: {
|
|
5833
|
-
opacity:
|
|
5834
|
-
filter:
|
|
5835
|
-
scale:
|
|
5889
|
+
opacity: _e || me ? .4 : 1,
|
|
5890
|
+
filter: _e || me ? "blur(3px)" : "blur(0px)",
|
|
5891
|
+
scale: _e || me ? .9 : 1
|
|
5836
5892
|
},
|
|
5837
5893
|
transition: {
|
|
5838
5894
|
type: "spring",
|
|
@@ -5841,126 +5897,130 @@ function bi({ onSend: e, chat: t, renderPart: n, labels: r, headerActions: i = !
|
|
|
5841
5897
|
mass: .9
|
|
5842
5898
|
},
|
|
5843
5899
|
onAnimationComplete: () => {
|
|
5844
|
-
document.activeElement && document.activeElement !== document.body ||
|
|
5900
|
+
document.activeElement && document.activeElement !== document.body || Ce.current?.focus();
|
|
5845
5901
|
},
|
|
5846
5902
|
children: [
|
|
5847
5903
|
/* @__PURE__ */ _("div", { className: $.topBlur }),
|
|
5848
5904
|
/* @__PURE__ */ v(Ct, {
|
|
5849
5905
|
className: `${$.header} ick-chat-header`,
|
|
5850
|
-
title:
|
|
5906
|
+
title: ut,
|
|
5851
5907
|
backHref: d,
|
|
5852
5908
|
backLabel: h,
|
|
5853
5909
|
elevateOnScroll: !1,
|
|
5854
5910
|
collapseActionsAt: 480,
|
|
5855
|
-
actions:
|
|
5911
|
+
actions: yt,
|
|
5856
5912
|
children: [w !== void 0 && /* @__PURE__ */ _(Rr, {
|
|
5857
5913
|
className: $.context,
|
|
5858
|
-
used:
|
|
5914
|
+
used: Ye,
|
|
5859
5915
|
total: w
|
|
5860
|
-
}),
|
|
5916
|
+
}), F && I && /* @__PURE__ */ v("div", {
|
|
5861
5917
|
className: $.selectMode,
|
|
5862
5918
|
role: "group",
|
|
5863
|
-
"aria-label":
|
|
5919
|
+
"aria-label": z.selectionMode,
|
|
5864
5920
|
children: [/* @__PURE__ */ _("button", {
|
|
5865
5921
|
type: "button",
|
|
5866
|
-
"data-active":
|
|
5867
|
-
onClick: () =>
|
|
5868
|
-
"aria-label":
|
|
5869
|
-
title:
|
|
5870
|
-
children: /* @__PURE__ */ _(
|
|
5922
|
+
"data-active": xe === "marker",
|
|
5923
|
+
onClick: () => Se("marker"),
|
|
5924
|
+
"aria-label": z.marker,
|
|
5925
|
+
title: z.marker,
|
|
5926
|
+
children: /* @__PURE__ */ _(ne, { size: 16 })
|
|
5871
5927
|
}), /* @__PURE__ */ _("button", {
|
|
5872
5928
|
type: "button",
|
|
5873
|
-
"data-active":
|
|
5874
|
-
onClick: () =>
|
|
5875
|
-
"aria-label":
|
|
5876
|
-
title:
|
|
5929
|
+
"data-active": xe === "precise",
|
|
5930
|
+
onClick: () => Se("precise"),
|
|
5931
|
+
"aria-label": z.precise,
|
|
5932
|
+
title: z.precise,
|
|
5877
5933
|
children: /* @__PURE__ */ _(ye, { size: 16 })
|
|
5878
5934
|
})]
|
|
5879
5935
|
})]
|
|
5880
5936
|
}),
|
|
5881
5937
|
/* @__PURE__ */ v(ai, {
|
|
5882
5938
|
viewportClassName: `${$.feed} ick-chat-feed`,
|
|
5883
|
-
anchorId:
|
|
5884
|
-
|
|
5885
|
-
|
|
5939
|
+
anchorId: G ? `turn-${G}` : void 0,
|
|
5940
|
+
dock: U,
|
|
5941
|
+
anchorOffset: L,
|
|
5942
|
+
endOffset: U ? 0 : re,
|
|
5886
5943
|
children: [
|
|
5887
|
-
|
|
5888
|
-
className: $.opening,
|
|
5944
|
+
Je && S && /* @__PURE__ */ _(si, {
|
|
5945
|
+
className: U ? `${$.opening} ${$.centred}` : $.opening,
|
|
5889
5946
|
title: S.title,
|
|
5890
5947
|
description: S.description,
|
|
5891
5948
|
suggestions: S.suggestions,
|
|
5892
|
-
onSuggestion: (e) =>
|
|
5949
|
+
onSuggestion: (e) => We(Pe[0].id, e)
|
|
5893
5950
|
}),
|
|
5894
|
-
/* @__PURE__ */ _(y, { children:
|
|
5895
|
-
let r = t ===
|
|
5951
|
+
/* @__PURE__ */ _(y, { children: Pe.map((e, t) => {
|
|
5952
|
+
let r = t === Pe.length - 1 && (e.state === "idle" || e.state === "typing");
|
|
5896
5953
|
return /* @__PURE__ */ _(Nr, {
|
|
5897
5954
|
turn: e,
|
|
5898
|
-
questionAlign:
|
|
5899
|
-
className:
|
|
5955
|
+
questionAlign: U && r || Je && t === 0 ? "stretch" : "end",
|
|
5956
|
+
className: U && r ? $.dock : Je && t === 0 ? $.opening : void 0,
|
|
5900
5957
|
onTranscribe: s,
|
|
5901
5958
|
isActiveInput: r,
|
|
5902
|
-
inputRef: r ?
|
|
5903
|
-
entranceDelay: t === 0 ?
|
|
5904
|
-
selectionMode:
|
|
5905
|
-
|
|
5906
|
-
|
|
5907
|
-
|
|
5908
|
-
|
|
5909
|
-
|
|
5959
|
+
inputRef: r ? Ce : null,
|
|
5960
|
+
entranceDelay: t === 0 ? ae : 0,
|
|
5961
|
+
selectionMode: xe,
|
|
5962
|
+
highlights: I,
|
|
5963
|
+
animationConfig: Me,
|
|
5964
|
+
foldMotion: R,
|
|
5965
|
+
openArtifactId: et,
|
|
5966
|
+
onOpenArtifact: dt,
|
|
5967
|
+
onArtifactChange: at,
|
|
5910
5968
|
placeholder: x,
|
|
5911
|
-
onDraft:
|
|
5912
|
-
onSubmit:
|
|
5913
|
-
onRegenerate:
|
|
5914
|
-
onShowVersion:
|
|
5915
|
-
onFeedback:
|
|
5916
|
-
feedback:
|
|
5917
|
-
onStop:
|
|
5918
|
-
|
|
5919
|
-
|
|
5920
|
-
|
|
5921
|
-
|
|
5922
|
-
|
|
5923
|
-
|
|
5924
|
-
|
|
5969
|
+
onDraft: Fe,
|
|
5970
|
+
onSubmit: We,
|
|
5971
|
+
onRegenerate: qe,
|
|
5972
|
+
onShowVersion: Le,
|
|
5973
|
+
onFeedback: lt,
|
|
5974
|
+
feedback: st[e.id] ?? null,
|
|
5975
|
+
onStop: !U || r ? W : void 0,
|
|
5976
|
+
busy: U && r ? Ve : void 0,
|
|
5977
|
+
onEdit: Re,
|
|
5978
|
+
onCancelEdit: ze,
|
|
5979
|
+
onHighlight: J,
|
|
5980
|
+
onReplyInThread: l ? ft : void 0,
|
|
5981
|
+
onAnswerQuestion: pt,
|
|
5982
|
+
onEditQuestion: mt,
|
|
5983
|
+
onDecideApproval: Y,
|
|
5925
5984
|
renderPart: n,
|
|
5926
5985
|
composerMenu: a
|
|
5927
5986
|
}, e.id);
|
|
5928
5987
|
}) }),
|
|
5929
|
-
|
|
5988
|
+
Xe && /* @__PURE__ */ _(zn, { children: z.windowFull })
|
|
5930
5989
|
]
|
|
5931
5990
|
}),
|
|
5932
5991
|
/* @__PURE__ */ _("div", { className: $.bottomBlur })
|
|
5933
5992
|
]
|
|
5934
5993
|
});
|
|
5935
|
-
return /* @__PURE__ */ v(
|
|
5994
|
+
return /* @__PURE__ */ v(Ae, {
|
|
5936
5995
|
labels: r,
|
|
5937
5996
|
children: [
|
|
5938
|
-
|
|
5997
|
+
P && /* @__PURE__ */ v(g, { children: [/* @__PURE__ */ _("style", { dangerouslySetInnerHTML: { __html: "@media (pointer: fine) { * { cursor: none !important; } }" } }), gt && /* @__PURE__ */ _(_i, {})] }),
|
|
5939
5998
|
/* @__PURE__ */ _(Xr, {
|
|
5940
5999
|
className: $.workspace,
|
|
5941
6000
|
surface: j,
|
|
5942
|
-
|
|
5943
|
-
|
|
5944
|
-
|
|
5945
|
-
|
|
6001
|
+
style: K > 0 ? { "--ick-keyboard": `${K}px` } : void 0,
|
|
6002
|
+
onDismiss: ot,
|
|
6003
|
+
pane: ({ narrow: e, expanded: t, toggleExpanded: n }) => bt ? /* @__PURE__ */ _(Br, {
|
|
6004
|
+
title: bt.title,
|
|
6005
|
+
meta: bt.meta,
|
|
5946
6006
|
modal: e,
|
|
5947
6007
|
expanded: t,
|
|
5948
6008
|
onToggleExpanded: n,
|
|
5949
|
-
onClose:
|
|
5950
|
-
children:
|
|
6009
|
+
onClose: ot,
|
|
6010
|
+
children: bt.children
|
|
5951
6011
|
}) : null,
|
|
5952
|
-
children:
|
|
6012
|
+
children: xt
|
|
5953
6013
|
}),
|
|
5954
|
-
/* @__PURE__ */ _(y, { children:
|
|
6014
|
+
/* @__PURE__ */ _(y, { children: me && /* @__PURE__ */ _(C.div, {
|
|
5955
6015
|
className: $.scrim,
|
|
5956
6016
|
initial: { opacity: 0 },
|
|
5957
6017
|
animate: { opacity: 1 },
|
|
5958
6018
|
exit: { opacity: 0 },
|
|
5959
|
-
onClick: () =>
|
|
6019
|
+
onClick: () => he(!1),
|
|
5960
6020
|
children: /* @__PURE__ */ v(C.div, {
|
|
5961
6021
|
className: $.sheet,
|
|
5962
6022
|
role: "dialog",
|
|
5963
|
-
"aria-label":
|
|
6023
|
+
"aria-label": z.savedHighlights,
|
|
5964
6024
|
initial: {
|
|
5965
6025
|
y: 20,
|
|
5966
6026
|
scale: .95
|
|
@@ -5978,24 +6038,24 @@ function bi({ onSend: e, chat: t, renderPart: n, labels: r, headerActions: i = !
|
|
|
5978
6038
|
className: $.sheetHead,
|
|
5979
6039
|
children: [/* @__PURE__ */ _("h2", {
|
|
5980
6040
|
className: $.sheetTitle,
|
|
5981
|
-
children:
|
|
6041
|
+
children: z.highlights
|
|
5982
6042
|
}), /* @__PURE__ */ _("button", {
|
|
5983
6043
|
className: $.close,
|
|
5984
|
-
onClick: () =>
|
|
5985
|
-
children:
|
|
6044
|
+
onClick: () => he(!1),
|
|
6045
|
+
children: z.close
|
|
5986
6046
|
})]
|
|
5987
|
-
}), Array.from(new Set(
|
|
6047
|
+
}), Array.from(new Set(fe.map((e) => e.turnId))).map((e, t) => /* @__PURE__ */ v("div", {
|
|
5988
6048
|
className: $.group,
|
|
5989
6049
|
children: [/* @__PURE__ */ _("h3", {
|
|
5990
6050
|
className: $.groupTitle,
|
|
5991
|
-
children:
|
|
6051
|
+
children: je(z.paragraph, { index: t + 1 })
|
|
5992
6052
|
}), /* @__PURE__ */ _("div", {
|
|
5993
6053
|
className: $.marks,
|
|
5994
|
-
children:
|
|
6054
|
+
children: fe.filter((t) => t.turnId === e).map((t, n) => /* @__PURE__ */ _("button", {
|
|
5995
6055
|
type: "button",
|
|
5996
6056
|
className: $.mark,
|
|
5997
6057
|
onClick: () => {
|
|
5998
|
-
|
|
6058
|
+
he(!1), setTimeout(() => {
|
|
5999
6059
|
let t = document.getElementById(`turn-${e}`), n = document.querySelector(".ick-chat-feed"), r = document.querySelector(".ick-chat-header");
|
|
6000
6060
|
if (t && n) {
|
|
6001
6061
|
let e = r ? r.offsetHeight : 80;
|
|
@@ -6015,15 +6075,15 @@ function bi({ onSend: e, chat: t, renderPart: n, labels: r, headerActions: i = !
|
|
|
6015
6075
|
}, e))]
|
|
6016
6076
|
})
|
|
6017
6077
|
}) }),
|
|
6018
|
-
/* @__PURE__ */ _(y, { children:
|
|
6019
|
-
activeReply:
|
|
6020
|
-
onClose: () =>
|
|
6078
|
+
/* @__PURE__ */ _(y, { children: _e && l && /* @__PURE__ */ _(gi, {
|
|
6079
|
+
activeReply: _e,
|
|
6080
|
+
onClose: () => be(null),
|
|
6021
6081
|
onSendMessage: l
|
|
6022
6082
|
}, "thread-popup") })
|
|
6023
6083
|
]
|
|
6024
6084
|
});
|
|
6025
6085
|
}
|
|
6026
6086
|
//#endregion
|
|
6027
|
-
export {
|
|
6087
|
+
export { Oe as $, fn as A, _t as B, Sn as C, vn as D, bn as E, Vt as F, Qe as G, st as H, Mt as I, Re as J, Ke as K, At as L, tn as M, qt as N, gn as O, Qt as P, Ae as Q, Ot as R, Cn as S, Tn as T, ot as U, ht as V, rt as W, Fe as X, Le as Y, U as Z, Ln as _, si as a, jn as b, Xr as c, Nr as d, V as et, Ar as f, Fn as g, zn as h, gi as i, cn as j, mn as k, Br as l, Un as m, vi as n, ai as o, br as p, Be as q, _i as r, Zr as s, xi as t, Rr as u, In as v, wn as w, xn as x, Nn as y, Ct as z };
|
|
6028
6088
|
|
|
6029
|
-
//# sourceMappingURL=ChatExperience-
|
|
6089
|
+
//# sourceMappingURL=ChatExperience-CrWU56fi.js.map
|