@pstdio/ui 0.43.0 → 0.43.1-nightly.20261013030813

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.
Files changed (65) hide show
  1. package/README.md +11 -0
  2. package/dist/{MermaidComponent-X7N-8w2S.js → MermaidComponent-CJCip-GB.js} +3 -3
  3. package/dist/{MermaidComponent-X7N-8w2S.js.map → MermaidComponent-CJCip-GB.js.map} +1 -1
  4. package/dist/chat-ui.d.ts +1 -1
  5. package/dist/chat-ui.js +621 -640
  6. package/dist/chat-ui.js.map +1 -1
  7. package/dist/{collection-view-grouping-DnuJ1U4R.js → collection-view-grouping-Bm7Hlt5w.js} +2 -2
  8. package/dist/{collection-view-grouping-DnuJ1U4R.js.map → collection-view-grouping-Bm7Hlt5w.js.map} +1 -1
  9. package/dist/{collection-view-search-D_7Qvz7p.js → collection-view-search-BqYMZQ4q.js} +166 -156
  10. package/dist/collection-view-search-BqYMZQ4q.js.map +1 -0
  11. package/dist/collection-view.d.ts +3 -90
  12. package/dist/collection-view.js +2 -2
  13. package/dist/{data-table-stats-row-C8CtvdDt.js → data-table-stats-row-RwLXF9EW.js} +2 -2
  14. package/dist/{data-table-stats-row-C8CtvdDt.js.map → data-table-stats-row-RwLXF9EW.js.map} +1 -1
  15. package/dist/data-table.d.ts +1 -0
  16. package/dist/data-table.js +8 -8
  17. package/dist/{diff-drawer-BGQhxyOh.js → diff-drawer-BMl0zobj.js} +2 -2
  18. package/dist/{diff-drawer-BGQhxyOh.js.map → diff-drawer-BMl0zobj.js.map} +1 -1
  19. package/dist/{diff-viewer-DYcswG6O.js → diff-viewer-BD2PQ4SS.js} +5 -5
  20. package/dist/{diff-viewer-DYcswG6O.js.map → diff-viewer-BD2PQ4SS.js.map} +1 -1
  21. package/dist/diff.js +2 -2
  22. package/dist/{display-sort-control-n3L5WvkJ.js → display-sort-control-BSFhWHgn.js} +194 -183
  23. package/dist/display-sort-control-BSFhWHgn.js.map +1 -0
  24. package/dist/{edit-mode-data-table-BclZ-pWe.js → edit-mode-data-table-TdIRPVU1.js} +8 -8
  25. package/dist/{edit-mode-data-table-BclZ-pWe.js.map → edit-mode-data-table-TdIRPVU1.js.map} +1 -1
  26. package/dist/{index-5Lw7YMKy.d.ts → index-Bc2BsdD1.d.ts} +6 -0
  27. package/dist/index-r6SFPkUI.d.ts +91 -0
  28. package/dist/index.js +6 -6
  29. package/dist/kanban-renderer.js +8 -8
  30. package/dist/{list-row-CmFG_jCC.js → list-row-DCHZXCVH.js} +2 -2
  31. package/dist/{list-row-CmFG_jCC.js.map → list-row-DCHZXCVH.js.map} +1 -1
  32. package/dist/{markdown-editor-CN4qOKky.js → markdown-editor-6jAy_E3r.js} +6 -6
  33. package/dist/{markdown-editor-CN4qOKky.js.map → markdown-editor-6jAy_E3r.js.map} +1 -1
  34. package/dist/{mermaid-renderer-DybQ_2Cp.js → mermaid-renderer-BtW_13Sz.js} +2 -2
  35. package/dist/{mermaid-renderer-DybQ_2Cp.js.map → mermaid-renderer-BtW_13Sz.js.map} +1 -1
  36. package/dist/mermaid.js +1 -1
  37. package/dist/{number-input-CyrMrDxB.js → number-input-QDqWYzTR.js} +2 -2
  38. package/dist/{number-input-CyrMrDxB.js.map → number-input-QDqWYzTR.js.map} +1 -1
  39. package/dist/{param-editor-28dBRSV4.js → param-editor-f57ea8V9.js} +2 -2
  40. package/dist/{param-editor-28dBRSV4.js.map → param-editor-f57ea8V9.js.map} +1 -1
  41. package/dist/{param-editor-field-GxhFb86w.js → param-editor-field-CePT5hCj.js} +5 -5
  42. package/dist/{param-editor-field-GxhFb86w.js.map → param-editor-field-CePT5hCj.js.map} +1 -1
  43. package/dist/param-editor.js +3 -3
  44. package/dist/{prism-CnkSh-ZG.js → prism-EZSmZh-a.js} +2 -2
  45. package/dist/{prism-CnkSh-ZG.js.map → prism-EZSmZh-a.js.map} +1 -1
  46. package/dist/{rich-text-DOK4dDeb.js → rich-text-bKBLAco5.js} +384 -363
  47. package/dist/rich-text-bKBLAco5.js.map +1 -0
  48. package/dist/rich-text.d.ts +1 -1
  49. package/dist/rich-text.js +3 -3
  50. package/dist/{scroll-area-crJfiiuF.js → scroll-area-IeoRS73V.js} +3 -5
  51. package/dist/scroll-area-IeoRS73V.js.map +1 -0
  52. package/dist/terminal.js +1 -1
  53. package/dist/{theme-Bd_a7sU8.js → theme-bxwJIMKe.js} +22 -2
  54. package/dist/theme-bxwJIMKe.js.map +1 -0
  55. package/dist/theme.js +1 -1
  56. package/dist/{tree-list-B_qqiIoM.js → tree-list-nFNO7MV4.js} +2 -2
  57. package/dist/{tree-list-B_qqiIoM.js.map → tree-list-nFNO7MV4.js.map} +1 -1
  58. package/dist/{workspace-badge-BfSkiGP_.js → workspace-badge-BgiTennO.js} +2 -2
  59. package/dist/{workspace-badge-BfSkiGP_.js.map → workspace-badge-BgiTennO.js.map} +1 -1
  60. package/package.json +2 -2
  61. package/dist/collection-view-search-D_7Qvz7p.js.map +0 -1
  62. package/dist/display-sort-control-n3L5WvkJ.js.map +0 -1
  63. package/dist/rich-text-DOK4dDeb.js.map +0 -1
  64. package/dist/scroll-area-crJfiiuF.js.map +0 -1
  65. package/dist/theme-Bd_a7sU8.js.map +0 -1
package/dist/chat-ui.js CHANGED
@@ -1,24 +1,24 @@
1
1
  import { t as e } from "./alert-MQ47wy7f.js";
2
- import { n as t, t as n } from "./scroll-area-crJfiiuF.js";
3
- import { a as r, t as i } from "./list-row-CmFG_jCC.js";
2
+ import { n as t, t as n } from "./scroll-area-IeoRS73V.js";
3
+ import { a as r, t as i } from "./list-row-DCHZXCVH.js";
4
4
  import { t as a } from "./use-virtualizer-CfDHoDer.js";
5
- import { i as o } from "./prism-CnkSh-ZG.js";
5
+ import { i as o } from "./prism-EZSmZh-a.js";
6
6
  import { t as s } from "./drop-indicator-HjlBSIeV.js";
7
7
  import { t as c } from "./empty-state-3mVV_pV-.js";
8
8
  import { t as l } from "./icon-options-Tt6Wzhtv.js";
9
9
  import { n as u, t as d } from "./radio-CiFrDN6O.js";
10
10
  import { n as f, t as p } from "./queued-follow-up-Bj_vtMgd.js";
11
- import { A as m, C as h, E as g, M as _, S as v, T as y, j as b, k as x, w as S } from "./markdown-editor-CN4qOKky.js";
12
- import { c as C, l as w, o as T, s as E } from "./rich-text-DOK4dDeb.js";
11
+ import { A as m, C as h, E as g, M as _, S as v, T as y, j as b, k as x, w as S } from "./markdown-editor-6jAy_E3r.js";
12
+ import { c as C, l as w, o as T, s as E } from "./rich-text-bKBLAco5.js";
13
13
  import { t as D } from "./diff-bubble-DewUd_2w.js";
14
- import { AbsoluteCenter as O, Avatar as k, Box as A, Button as j, Card as M, Code as N, Field as P, Flex as F, HStack as I, Icon as L, IconButton as R, Image as z, Input as B, Kbd as V, Link as H, Menu as U, Popover as ee, Portal as te, Skeleton as ne, Span as re, Spinner as W, Stack as G, Tag as ie, Text as K, Textarea as ae, Timeline as oe, Tooltip as q, chakra as se, createSlotRecipeContext as ce, defineSlotRecipe as le, useRecipe as ue, useSlotRecipe as de } from "@chakra-ui/react";
14
+ import { AbsoluteCenter as O, Avatar as k, Box as A, Button as j, Card as M, Code as N, Field as P, Flex as F, HStack as I, Icon as L, IconButton as R, Image as z, Input as B, Kbd as V, Link as H, Menu as U, Popover as ee, Portal as te, Skeleton as ne, Span as re, Spinner as W, Stack as G, Tag as ie, Text as K, Textarea as ae, Timeline as oe, Tooltip as se, chakra as q, createSlotRecipeContext as ce, defineSlotRecipe as le, useRecipe as ue, useSlotRecipe as de } from "@chakra-ui/react";
15
15
  import { c as J } from "react/compiler-runtime";
16
16
  import { Fragment as fe, jsx as Y, jsxs as X } from "react/jsx-runtime";
17
17
  import { Fragment as pe, Suspense as me, createContext as he, lazy as ge, useContext as _e, useEffect as Z, useLayoutEffect as ve, useRef as ye, useState as Q } from "react";
18
18
  import { AlertTriangle as be, ArrowDownIcon as xe, ArrowRight as Se, ArrowUp as Ce, Check as we, ChevronUpIcon as Te, CircleQuestionMark as Ee, Copy as De, DotIcon as Oe, File as ke, FileDiff as Ae, FileDown as je, FilePen as Me, FileText as Ne, FileUp as Pe, Globe as Fe, GripVertical as Ie, ListTodo as Le, ListTree as Re, MessageCircleIcon as ze, Move as Be, Pause as Ve, Search as He, ShieldCheck as Ue, ShieldX as We, Terminal as Ge, Trash2 as Ke } from "lucide-react";
19
19
  import { DndContext as qe, KeyboardSensor as Je, PointerSensor as Ye, pointerWithin as Xe, rectIntersection as Ze, useDraggable as Qe, useDroppable as $e, useSensor as et, useSensors as tt } from "@dnd-kit/core";
20
20
  import { StickToBottom as nt, useStickToBottomContext as rt } from "use-stick-to-bottom";
21
- var it = se(nt, { base: {
21
+ var it = q(nt, { base: {
22
22
  position: "relative",
23
23
  flex: 1,
24
24
  overflow: "hidden",
@@ -36,6 +36,7 @@ var it = se(nt, { base: {
36
36
  t[0] === e ? (r = t[1], i = t[2]) : ({children: r, ...i} = e, t[0] = e, t[1] = r, t[2] = i);
37
37
  let { contentRef: a, scrollRef: o } = rt(), s = o, c = a, l, u;
38
38
  t[3] === Symbol.for("react.memo_cache_sentinel") ? (l = { zIndex: 2 }, u = {
39
+ layerStyle: "chatContent",
39
40
  py: "sm",
40
41
  "aria-live": "polite",
41
42
  role: "list"
@@ -382,14 +383,14 @@ var xt = (e = "") => JSON.stringify(C(e)), St = (e) => e.trim().length > 0, Ct =
382
383
  })
383
384
  ] }) : a, t[12] = i, t[13] = a, t[14] = e) : e = t[14];
384
385
  let n = e, r;
385
- t[15] === u ? r = t[16] : (r = /* @__PURE__ */ Y(q.Trigger, {
386
+ t[15] === u ? r = t[16] : (r = /* @__PURE__ */ Y(se.Trigger, {
386
387
  asChild: !0,
387
388
  children: u
388
389
  }), t[15] = u, t[16] = r);
389
390
  let o;
390
- t[17] === n ? o = t[18] : (o = /* @__PURE__ */ Y(te, { children: /* @__PURE__ */ Y(q.Positioner, { children: /* @__PURE__ */ Y(q.Content, { children: n }) }) }), t[17] = n, t[18] = o);
391
+ t[17] === n ? o = t[18] : (o = /* @__PURE__ */ Y(te, { children: /* @__PURE__ */ Y(se.Positioner, { children: /* @__PURE__ */ Y(se.Content, { children: n }) }) }), t[17] = n, t[18] = o);
391
392
  let s;
392
- return t[19] !== r || t[20] !== o ? (s = /* @__PURE__ */ X(q.Root, {
393
+ return t[19] !== r || t[20] !== o ? (s = /* @__PURE__ */ X(se.Root, {
393
394
  closeDelay: 50,
394
395
  openDelay: 100,
395
396
  children: [r, o]
@@ -1119,48 +1120,26 @@ var jn = (e) => e.questions.map((e, t) => ({
1119
1120
  }, e), t[5] = a, t[6] = c, t[7] = r, t[8] = e, t[9] = n, t[10] = i) : i = t[10], i;
1120
1121
  }
1121
1122
  return null;
1122
- }, zn = (e) => {
1123
- let t = e?.querySelector("[contenteditable=\"true\"]");
1124
- t instanceof HTMLElement && t.focus();
1125
- }, Bn = (e, t) => requestAnimationFrame(() => {
1126
- zn(e), t?.();
1127
- }), Vn = (e, t, n, r, i) => {
1128
- let a = J(17), [o, s] = Q(!1), c, l;
1129
- a[0] !== e || a[1] !== n || a[2] !== i || a[3] !== o ? (c = () => {
1130
- if (!o || !n) return;
1131
- let t = Bn(e.current, () => {
1132
- i(!0), s(!1);
1133
- });
1134
- return () => cancelAnimationFrame(t);
1135
- }, l = [
1136
- o,
1137
- n,
1138
- e,
1139
- i
1140
- ], a[0] = e, a[1] = n, a[2] = i, a[3] = o, a[4] = c, a[5] = l) : (c = a[4], l = a[5]), Z(c, l);
1141
- let u, d;
1142
- a[6] !== t || a[7] !== e || a[8] !== i ? (u = () => {
1143
- if (!t) return;
1144
- let n = Bn(e.current, () => i(!0));
1145
- return () => cancelAnimationFrame(n);
1146
- }, d = [
1147
- t,
1148
- e,
1149
- i
1150
- ], a[6] = t, a[7] = e, a[8] = i, a[9] = u, a[10] = d) : (u = a[9], d = a[10]), Z(u, d);
1151
- let f, p;
1152
- a[11] !== e || a[12] !== r || a[13] !== i ? (f = () => {
1153
- if (r === 0) return;
1154
- let t = Bn(e.current, () => i(!0));
1155
- return () => cancelAnimationFrame(t);
1156
- }, p = [
1157
- r,
1158
- e,
1159
- i
1160
- ], a[11] = e, a[12] = r, a[13] = i, a[14] = f, a[15] = p) : (f = a[14], p = a[15]), Z(f, p);
1161
- let m;
1162
- return a[16] === Symbol.for("react.memo_cache_sentinel") ? (m = () => s(!0), a[16] = m) : m = a[16], m;
1163
- }, Hn = (e) => {
1123
+ }, zn = (e, t) => {
1124
+ let n = J(7), [r, i] = Q(e || t !== 0), a;
1125
+ n[0] !== e || n[1] !== t ? (a = {
1126
+ autoFocus: e,
1127
+ focusSignal: t
1128
+ }, n[0] = e, n[1] = t, n[2] = a) : a = n[2];
1129
+ let [o, s] = Q(a);
1130
+ (o.autoFocus !== e || o.focusSignal !== t) && (s({
1131
+ autoFocus: e,
1132
+ focusSignal: t
1133
+ }), (e && !o.autoFocus || t !== 0 && t !== o.focusSignal) && i(!0));
1134
+ let c, l;
1135
+ n[3] === Symbol.for("react.memo_cache_sentinel") ? (c = () => i(!0), l = () => i(!1), n[3] = c, n[4] = l) : (c = n[3], l = n[4]);
1136
+ let u;
1137
+ return n[5] === r ? u = n[6] : (u = {
1138
+ requested: r,
1139
+ request: c,
1140
+ complete: l
1141
+ }, n[5] = r, n[6] = u), u;
1142
+ }, Bn = (e) => {
1164
1143
  let t = [];
1165
1144
  for (let n = e.length - 1; n >= 0 && t.length < 10; n--) {
1166
1145
  let r = e[n];
@@ -1169,7 +1148,7 @@ var jn = (e) => e.questions.map((e, t) => ({
1169
1148
  i.trim() && t.push(i);
1170
1149
  }
1171
1150
  return t;
1172
- }, Un = (e, t, n, r) => r === 0 ? null : e === null ? t === "previous" && n === "" ? { index: 0 } : null : t === "previous" ? { index: Math.min(e + 1, r - 1) } : { index: e === 0 ? null : e - 1 }, Wn = (e) => {
1151
+ }, Vn = (e, t, n, r) => r === 0 ? null : e === null ? t === "previous" && n === "" ? { index: 0 } : null : t === "previous" ? { index: Math.min(e + 1, r - 1) } : { index: e === 0 ? null : e - 1 }, Hn = (e) => {
1173
1152
  let t = J(24), { recentUserMessages: n, text: r, blocked: i, resetKey: a, onChange: o } = e, s = ye(null), c = ye(null), l, u;
1174
1153
  if (t[0] !== i || t[1] !== n || t[2] !== a) {
1175
1154
  l = n.slice(0, 10);
@@ -1195,7 +1174,7 @@ var jn = (e) => e.questions.map((e, t) => ({
1195
1174
  let v = _, y;
1196
1175
  t[12] !== i || t[13] !== o || t[14] !== l || t[15] !== r ? (y = (e) => {
1197
1176
  if (i) return !1;
1198
- let t = Un(c.current, e, r, l.length);
1177
+ let t = Vn(c.current, e, r, l.length);
1199
1178
  if (!t) return !1;
1200
1179
  c.current = t.index;
1201
1180
  let n = t.index === null ? "" : l[t.index];
@@ -1211,12 +1190,12 @@ var jn = (e) => e.questions.map((e, t) => ({
1211
1190
  recallPrevious: x,
1212
1191
  recallNext: S
1213
1192
  }, t[20] = v, t[21] = x, t[22] = S, t[23] = C) : C = t[23], C;
1214
- }, Gn = (e) => {
1193
+ }, Un = (e) => {
1215
1194
  let t = J(7), [n, r] = Q(e), [i, a] = Q(e), [o, s] = Q(0), c;
1216
1195
  t[0] === e ? c = t[1] : (c = () => w(e), t[0] = e, t[1] = c);
1217
1196
  let [l, u] = Q(c), d;
1218
1197
  t[2] === Symbol.for("react.memo_cache_sentinel") ? (d = (e) => {
1219
- a(e), s(Kn);
1198
+ a(e), s(Wn);
1220
1199
  }, t[2] = d) : d = t[2];
1221
1200
  let f = d;
1222
1201
  if (n !== e) {
@@ -1234,12 +1213,12 @@ var jn = (e) => e.questions.map((e, t) => ({
1234
1213
  text: l
1235
1214
  }, t[3] = o, t[4] = i, t[5] = l, t[6] = p) : p = t[6], p;
1236
1215
  };
1237
- function Kn(e) {
1216
+ function Wn(e) {
1238
1217
  return e + 1;
1239
1218
  }
1240
1219
  //#endregion
1241
1220
  //#region src/components/chat-ui/components/composer-request.ts
1242
- var qn = (e, t, n) => {
1221
+ var Gn = (e, t, n) => {
1243
1222
  let r = [];
1244
1223
  return e && r.push({
1245
1224
  kind: "question",
@@ -1248,10 +1227,10 @@ var qn = (e, t, n) => {
1248
1227
  kind: "decision",
1249
1228
  id: t.id
1250
1229
  }), r.find((e) => e.kind === n?.kind && e.id === n.id) ?? r[0];
1251
- }, Jn = (e, t) => {
1252
- let [n, r] = Q(), i = qn(e, t, n);
1230
+ }, Kn = (e, t) => {
1231
+ let [n, r] = Q(), i = Gn(e, t, n);
1253
1232
  return (i?.kind !== n?.kind || i?.id !== n?.id) && r(i), i;
1254
- }, Yn = (e) => {
1233
+ }, qn = (e) => {
1255
1234
  let t = J(2), { placeholder: n } = e;
1256
1235
  if (!n) return null;
1257
1236
  let r;
@@ -1263,52 +1242,51 @@ var qn = (e, t, n) => {
1263
1242
  top: "0",
1264
1243
  children: n
1265
1244
  }), t[0] = n, t[1] = r), r;
1266
- }, Xn = "border.accent-light", Zn = (e) => {
1267
- let { defaultState: t, recentUserMessages: r = [], onSubmit: i = () => {}, onInterrupt: a, onAttachFiles: o, onAttachText: s, textAttachmentPasteLineThreshold: c = 200, streaming: l = !1, attachedResources: u = [], onClearAttachments: d, isDisabled: f = !1, submitDisabled: p = !1, onChange: m, placeholder: h, attachmentList: g, actions: _, submitActions: v, attachmentActions: y, attachedToTop: b = !1, recessed: x = !1, questionPrompt: S, decision: C, autoFocus: w = !1, focusSignal: T = 0, submitTitle: D, submitLabel: O, initialSelection: k, onSelectionChange: j, onEditorStateChange: M, retainTextUntilAcknowledged: N = !1, commands: P = [] } = e, I = Jn(S, C), L = !!I, R = x ? "border.subtle" : "border", [z, B] = Q(!1), [V, H] = Q(!1), { editorKey: U, editorState: ee, remountEditor: te, setEditorState: ne, setText: re, text: W } = Gn(t), G = ye(null), ie = Vn(G, w, !f && !z && !L, T, H), K = Wn({
1245
+ }, Jn = "border.accent-light", Yn = (e) => {
1246
+ let { defaultState: t, recentUserMessages: r = [], onSubmit: i = () => {}, onInterrupt: a, onAttachFiles: o, onAttachText: s, textAttachmentPasteLineThreshold: c = 200, streaming: l = !1, attachedResources: u = [], onClearAttachments: d, isDisabled: f = !1, submitDisabled: p = !1, onChange: m, placeholder: h, attachmentList: g, actions: _, submitActions: v, attachmentActions: y, attachedToTop: b = !1, recessed: x = !1, questionPrompt: S, decision: C, autoFocus: w = !1, focusSignal: T = 0, submitTitle: D, submitLabel: O, initialSelection: k, onSelectionChange: j, onEditorStateChange: M, retainTextUntilAcknowledged: N = !1, commands: P = [] } = e, I = Kn(S, C), L = !!I, R = x ? "border.subtle" : "border", [z, B] = Q(!1), { editorKey: V, editorState: H, remountEditor: U, setEditorState: ee, setText: te, text: ne } = Un(t), re = zn(w, T), W = Hn({
1268
1247
  recentUserMessages: r,
1269
- text: W,
1248
+ text: ne,
1270
1249
  blocked: f || z || L,
1271
- resetKey: String(U),
1250
+ resetKey: String(V),
1272
1251
  onChange: (e) => {
1273
- re(e), m?.(e);
1252
+ te(e), m?.(e);
1274
1253
  }
1275
- }), ae = (e) => {
1254
+ }), G = (e) => {
1276
1255
  let t = e.target;
1277
- t instanceof Element && e.currentTarget.contains(t) && (t.closest("button, input, textarea, select, a, label, [role=button], [role=combobox]") || L || (H(!0), zn(G.current)));
1278
- }, oe = (e) => {
1279
- te(xt(e)), K.change(e);
1280
- }, q = !f && !z && !p && !L, se = {
1256
+ t instanceof Element && e.currentTarget.contains(t) && (t.closest("button, input, textarea, select, a, label, [role=button], [role=combobox]") || L || re.request());
1257
+ }, ie = (e) => {
1258
+ U(xt(e)), W.change(e);
1259
+ }, K = !f && !z && !p && !L, ae = {
1281
1260
  canInterrupt: !L && !!a,
1282
1261
  canSubmit: !p && !L,
1283
1262
  hasQuestionPrompt: L,
1284
1263
  isDisabled: f || z,
1285
1264
  streaming: l,
1286
- text: W
1287
- }, ce = wt(se), le = l ? "Queue message" : "Send message", ue = async () => {
1288
- if (!q || !W.trim()) return;
1289
- let e = W;
1290
- K.reset(), B(!0), N || oe("");
1265
+ text: ne
1266
+ }, oe = wt(ae), se = l ? "Queue message" : "Send message", q = async () => {
1267
+ if (!K || !ne.trim()) return;
1268
+ let e = ne;
1269
+ W.reset(), B(!0), N || ie("");
1291
1270
  try {
1292
1271
  await kt({
1293
- text: W.trim(),
1272
+ text: ne.trim(),
1294
1273
  attachments: u,
1295
1274
  onSubmit: i,
1296
1275
  onClearAttachments: d
1297
1276
  });
1298
1277
  } catch {
1299
- N || oe(e);
1278
+ N || ie(e);
1300
1279
  } finally {
1301
- B(!1), ie();
1280
+ B(!1), re.request();
1302
1281
  }
1303
- }, de = (e) => {
1304
- e === "interrupt" && a?.(), e === "submit" && ue();
1305
- }, J = Et({
1282
+ }, ce = (e) => {
1283
+ e === "interrupt" && a?.(), e === "submit" && q();
1284
+ }, le = Et({
1306
1285
  onAttachFiles: o,
1307
1286
  onAttachText: s,
1308
1287
  textAttachmentPasteLineThreshold: c
1309
1288
  });
1310
1289
  return /* @__PURE__ */ Y(A, {
1311
- ref: G,
1312
1290
  position: "relative",
1313
1291
  width: "100%",
1314
1292
  paddingX: "xs",
@@ -1319,22 +1297,18 @@ var qn = (e, t, n) => {
1319
1297
  borderTopRadius: b ? "0" : void 0,
1320
1298
  borderWidth: "1px",
1321
1299
  borderStyle: "solid",
1322
- borderColor: V ? Xn : R,
1323
- zIndex: +!!V,
1300
+ borderColor: R,
1301
+ zIndex: 0,
1324
1302
  transition: "border-color 0.2s ease-in-out",
1325
- _hover: {
1326
- borderColor: V ? Xn : R,
1327
- zIndex: 1
1328
- },
1303
+ _hover: { zIndex: 1 },
1329
1304
  _focusWithin: {
1330
- borderColor: Xn,
1305
+ borderColor: Jn,
1331
1306
  zIndex: 1
1332
1307
  },
1333
- onPasteCapture: L ? void 0 : J.onPasteCapture,
1334
- onDropCapture: L ? void 0 : J.onDropCapture,
1335
- onDragOver: L ? void 0 : J.onDragOver,
1336
- onClick: ae,
1337
- onBlur: () => H(!1),
1308
+ onPasteCapture: L ? void 0 : le.onPasteCapture,
1309
+ onDropCapture: L ? void 0 : le.onDropCapture,
1310
+ onDragOver: L ? void 0 : le.onDragOver,
1311
+ onClick: G,
1338
1312
  children: /* @__PURE__ */ X(F, {
1339
1313
  direction: "column",
1340
1314
  color: "fg",
@@ -1368,20 +1342,22 @@ var qn = (e, t, n) => {
1368
1342
  minH: "7",
1369
1343
  align: "center",
1370
1344
  children: /* @__PURE__ */ Y(E, {
1371
- ref: K.editorRef,
1372
- onRecallPrevious: K.recallPrevious,
1373
- onRecallNext: K.recallNext,
1374
- defaultState: ee,
1345
+ ref: W.editorRef,
1346
+ onRecallPrevious: W.recallPrevious,
1347
+ onRecallNext: W.recallNext,
1348
+ defaultState: H,
1375
1349
  initialSelection: k,
1376
1350
  onSelectionChange: j,
1377
1351
  isEditable: !f && !z && !L,
1378
- placeholder: /* @__PURE__ */ Y(Yn, { placeholder: h }),
1352
+ focusRequested: re.requested,
1353
+ onFocusRequestComplete: re.complete,
1354
+ placeholder: /* @__PURE__ */ Y(qn, { placeholder: h }),
1379
1355
  onChange: (e, t) => {
1380
- ne(JSON.stringify(t)), M?.(e, JSON.stringify(t)), K.change(e);
1356
+ ee(JSON.stringify(t)), M?.(e, JSON.stringify(t)), W.change(e);
1381
1357
  },
1382
- onSubmit: () => de(Ct(se)),
1358
+ onSubmit: () => ce(Ct(ae)),
1383
1359
  commands: P
1384
- }, U)
1360
+ }, V)
1385
1361
  })
1386
1362
  })]
1387
1363
  }),
@@ -1391,21 +1367,21 @@ var qn = (e, t, n) => {
1391
1367
  skipDisabled: !1,
1392
1368
  skipTitle: "",
1393
1369
  onSkip: () => {},
1394
- buttonAction: ce,
1370
+ buttonAction: oe,
1395
1371
  submitTitle: D,
1396
1372
  submitLabel: O,
1397
1373
  submitActions: v,
1398
- messageTitle: le,
1399
- runAction: de
1374
+ messageTitle: se,
1375
+ runAction: ce
1400
1376
  })
1401
1377
  ]
1402
1378
  })
1403
1379
  });
1404
- }, Qn = {
1380
+ }, Xn = {
1405
1381
  animationName: "message-fade-in",
1406
1382
  animationDuration: "200ms",
1407
1383
  animationTimingFunction: "ease-out"
1408
- }, $n = (e) => {
1384
+ }, Zn = (e) => {
1409
1385
  let t = /* @__PURE__ */ new Set(), n = new Set(e.state.seenKeys);
1410
1386
  for (let r of e.itemKeys) e.state.initialized && !n.has(r) && t.add(r), n.add(r);
1411
1387
  return {
@@ -1415,17 +1391,17 @@ var qn = (e, t, n) => {
1415
1391
  seenKeys: n
1416
1392
  }
1417
1393
  };
1418
- }, er = (e, t) => {
1394
+ }, Qn = (e, t) => {
1419
1395
  if (e.length !== t.length) return !1;
1420
1396
  for (let n = 0; n < e.length; n += 1) if (e[n] !== t[n]) return !1;
1421
1397
  return !0;
1422
- }, tr = (e) => {
1398
+ }, $n = (e) => {
1423
1399
  let t = ye({
1424
1400
  initialized: !1,
1425
1401
  seenKeys: /* @__PURE__ */ new Set()
1426
1402
  }), n = ye(null);
1427
- if (n.current && er(n.current.itemKeys, e)) return n.current.animatedKeys;
1428
- let r = $n({
1403
+ if (n.current && Qn(n.current.itemKeys, e)) return n.current.animatedKeys;
1404
+ let r = Zn({
1429
1405
  itemKeys: e,
1430
1406
  state: t.current
1431
1407
  });
@@ -1433,15 +1409,15 @@ var qn = (e, t, n) => {
1433
1409
  itemKeys: [...e],
1434
1410
  animatedKeys: r.animatedKeys
1435
1411
  }, r.animatedKeys;
1436
- }, nr = (e) => e.type === "text", rr = (e) => (e.parts ?? []).filter(nr).map((e) => e.text.trim()).filter(Boolean).join("\n\n"), ir = (e, t, n) => e.delivery === "unsent" ? "Not sent" : e.createdAt ? new Intl.DateTimeFormat(t, {
1412
+ }, er = (e) => e.type === "text", tr = (e) => (e.parts ?? []).filter(er).map((e) => e.text.trim()).filter(Boolean).join("\n\n"), nr = (e, t, n) => e.delivery === "unsent" ? "Not sent" : e.createdAt ? new Intl.DateTimeFormat(t, {
1437
1413
  hour: "numeric",
1438
1414
  minute: "2-digit",
1439
1415
  timeZone: n
1440
- }).format(new Date(e.createdAt)) : "", ar = (e) => {
1416
+ }).format(new Date(e.createdAt)) : "", rr = (e) => {
1441
1417
  let n = J(20), { message: r, alwaysVisible: i, copyAlwaysVisible: a } = e, o = i !== void 0 && i, s = a === void 0 ? o : a, [c, l] = Q(!1), u = ye(null), d;
1442
- n[0] === r ? d = n[1] : (d = rr(r), n[0] = r, n[1] = d);
1418
+ n[0] === r ? d = n[1] : (d = tr(r), n[0] = r, n[1] = d);
1443
1419
  let f = d, p;
1444
- n[2] === r ? p = n[3] : (p = ir(r), n[2] = r, n[3] = p);
1420
+ n[2] === r ? p = n[3] : (p = nr(r), n[2] = r, n[3] = p);
1445
1421
  let m = p, h, g;
1446
1422
  n[4] === Symbol.for("react.memo_cache_sentinel") ? (h = () => () => {
1447
1423
  u.current !== null && window.clearTimeout(u.current);
@@ -1467,7 +1443,7 @@ var qn = (e, t, n) => {
1467
1443
  opacity: s ? "1" : "0",
1468
1444
  pointerEvents: s ? "auto" : "none",
1469
1445
  transition: "opacity 120ms ease",
1470
- css: or,
1446
+ css: ir,
1471
1447
  children: /* @__PURE__ */ Y(t, {
1472
1448
  content: c ? "Copied" : "Copy message",
1473
1449
  children: /* @__PURE__ */ Y(R, {
@@ -1487,10 +1463,10 @@ var qn = (e, t, n) => {
1487
1463
  opacity: y,
1488
1464
  pointerEvents: b,
1489
1465
  transition: "opacity 120ms ease",
1490
- css: or,
1466
+ css: ir,
1491
1467
  children: [x, S]
1492
1468
  }), n[15] = S, n[16] = y, n[17] = b, n[18] = x, n[19] = C) : C = n[19], C;
1493
- }, or = {
1469
+ }, ir = {
1494
1470
  "[data-chat-message-with-actions]:hover &, [data-chat-message-with-actions]:focus-within &": {
1495
1471
  opacity: 1,
1496
1472
  pointerEvents: "auto"
@@ -1503,7 +1479,7 @@ var qn = (e, t, n) => {
1503
1479
  opacity: 1,
1504
1480
  pointerEvents: "auto"
1505
1481
  }
1506
- }, sr = (e) => {
1482
+ }, ar = (e) => {
1507
1483
  let t = J(12), n, r, i, a;
1508
1484
  t[0] === e ? (n = t[1], r = t[2], i = t[3], a = t[4]) : ({children: n, linkHandler: r, streaming: a, ...i} = e, t[0] = e, t[1] = n, t[2] = r, t[3] = i, t[4] = a);
1509
1485
  let o;
@@ -1518,7 +1494,7 @@ var qn = (e, t, n) => {
1518
1494
  ...i,
1519
1495
  children: o
1520
1496
  }), t[9] = i, t[10] = o, t[11] = s) : s = t[11], s;
1521
- }, cr = (e) => {
1497
+ }, or = (e) => {
1522
1498
  let t = J(12), { part: n } = e, r = ln(n.state?.input), i = yn(), a;
1523
1499
  t[0] === Symbol.for("react.memo_cache_sentinel") ? (a = { recipe: f }, t[0] = a) : a = t[0];
1524
1500
  let o = ue(a);
@@ -1528,7 +1504,7 @@ var qn = (e, t, n) => {
1528
1504
  let c = s, l = c && !!i, u = G, d;
1529
1505
  t[3] !== l || t[4] !== i || t[5] !== n || t[6] !== c || t[7] !== o ? (d = (e, t) => {
1530
1506
  let r = _n(n, t) ?? e.options[0]?.label ?? "Your answer", a = i?.activeKey === fn(n) && i?.selection?.index === t;
1531
- return /* @__PURE__ */ X(se.button, {
1507
+ return /* @__PURE__ */ X(q.button, {
1532
1508
  type: "button",
1533
1509
  css: o({ multiline: e.question.includes("\n") }),
1534
1510
  "data-state": c ? "pending" : "answered",
@@ -1554,14 +1530,14 @@ var qn = (e, t, n) => {
1554
1530
  align: "start",
1555
1531
  children: p
1556
1532
  }), t[9] = u, t[10] = p, t[11] = m) : m = t[11], m;
1557
- }, lr = (e) => e.replace(/^tool-/i, "").replace(/([a-z0-9])([A-Z])/g, "$1_$2").replace(/[\s-]+/g, "_").toLowerCase(), ur = (e) => {
1558
- let t = lr(e), n = t.replace(/_/g, "");
1533
+ }, sr = (e) => e.replace(/^tool-/i, "").replace(/([a-z0-9])([A-Z])/g, "$1_$2").replace(/[\s-]+/g, "_").toLowerCase(), cr = (e) => {
1534
+ let t = sr(e), n = t.replace(/_/g, "");
1559
1535
  return [.../* @__PURE__ */ new Set([
1560
1536
  e,
1561
1537
  t,
1562
1538
  n
1563
1539
  ])];
1564
- }, dr = {
1540
+ }, lr = {
1565
1541
  shell: Ge,
1566
1542
  ls: Re,
1567
1543
  read_file: Ne,
@@ -1571,7 +1547,7 @@ var qn = (e, t, n) => {
1571
1547
  upload_files: Pe,
1572
1548
  download_file: je,
1573
1549
  move_file: Be
1574
- }, fr = {
1550
+ }, ur = {
1575
1551
  dot: Oe,
1576
1552
  danger: be,
1577
1553
  search: He,
@@ -1580,11 +1556,11 @@ var qn = (e, t, n) => {
1580
1556
  question: Ee,
1581
1557
  todo: Le,
1582
1558
  terminal: Ge,
1583
- ...dr
1584
- }, pr = "dot", mr = (e) => Object.hasOwn(dr, e), hr = (e) => fr[e], gr = (e) => {
1585
- if (!e) return pr;
1586
- let t = lr(e);
1587
- if (mr(t)) return t;
1559
+ ...lr
1560
+ }, dr = "dot", fr = (e) => Object.hasOwn(lr, e), pr = (e) => ur[e], mr = (e) => {
1561
+ if (!e) return dr;
1562
+ let t = sr(e);
1563
+ if (fr(t)) return t;
1588
1564
  let n = t.replace(/_/g, "");
1589
1565
  switch (t) {
1590
1566
  case "read": return "file";
@@ -1599,79 +1575,79 @@ var qn = (e, t, n) => {
1599
1575
  case "question": return "question";
1600
1576
  case "fs":
1601
1577
  case "file": return "file";
1602
- default: return n === "todowrite" || n === "todo" ? "todo" : pr;
1578
+ default: return n === "todowrite" || n === "todo" ? "todo" : dr;
1603
1579
  }
1604
1580
  };
1605
1581
  //#endregion
1606
1582
  //#region src/components/chat-ui/utils/diff.ts
1607
- function _r(e) {
1583
+ function hr(e) {
1608
1584
  let t = e.lastIndexOf("/");
1609
1585
  return t >= 0 ? e.slice(t + 1) : e;
1610
1586
  }
1611
- function vr(e) {
1587
+ function gr(e) {
1612
1588
  if (!e) return null;
1613
1589
  let t = e.split(" ")[0].trim();
1614
1590
  if (t === "/dev/null") return null;
1615
1591
  let n = t;
1616
1592
  return (n.startsWith("a/") || n.startsWith("b/")) && (n = n.slice(2)), n.replace(/^\/+/, "").replace(/\\/g, "/");
1617
1593
  }
1618
- var yr = (e) => e.startsWith("--- "), br = (e) => e.startsWith("+++ "), xr = (e) => e.startsWith("@@"), Sr = (e) => e.startsWith("+") && !(br(e) || e === "+++"), Cr = (e) => e.startsWith("-") && !(yr(e) || e === "---"), wr = (e, t) => {
1594
+ var _r = (e) => e.startsWith("--- "), vr = (e) => e.startsWith("+++ "), yr = (e) => e.startsWith("@@"), br = (e) => e.startsWith("+") && !(vr(e) || e === "+++"), xr = (e) => e.startsWith("-") && !(_r(e) || e === "---"), Sr = (e, t) => {
1619
1595
  e.has(t) || e.set(t, {
1620
1596
  additions: 0,
1621
1597
  deletions: 0
1622
1598
  });
1623
- }, Tr = (e, t) => {
1599
+ }, Cr = (e, t) => {
1624
1600
  let n = e.get(t);
1625
1601
  n && (n.additions += 1);
1626
- }, Er = (e, t) => {
1602
+ }, wr = (e, t) => {
1627
1603
  let n = e.get(t);
1628
1604
  n && (n.deletions += 1);
1629
- }, Dr = (e, t, n) => {
1630
- if (yr(e)) return {
1605
+ }, Tr = (e, t, n) => {
1606
+ if (_r(e)) return {
1631
1607
  ...t,
1632
- lastMinusHeader: vr(e.slice(4)),
1608
+ lastMinusHeader: gr(e.slice(4)),
1633
1609
  inHunk: !1
1634
1610
  };
1635
- if (br(e)) {
1636
- let r = vr(e.slice(4)) ?? t.lastMinusHeader;
1637
- return r && wr(n, r), {
1611
+ if (vr(e)) {
1612
+ let r = gr(e.slice(4)) ?? t.lastMinusHeader;
1613
+ return r && Sr(n, r), {
1638
1614
  ...t,
1639
1615
  currentPath: r,
1640
1616
  inHunk: !1
1641
1617
  };
1642
1618
  }
1643
- return t.currentPath ? xr(e) ? {
1619
+ return t.currentPath ? yr(e) ? {
1644
1620
  ...t,
1645
1621
  inHunk: !0
1646
- } : t.inHunk ? Sr(e) ? (Tr(n, t.currentPath), t) : (Cr(e) && Er(n, t.currentPath), t) : t : t;
1622
+ } : t.inHunk ? br(e) ? (Cr(n, t.currentPath), t) : (xr(e) && wr(n, t.currentPath), t) : t : t;
1647
1623
  };
1648
- function Or(e) {
1624
+ function Er(e) {
1649
1625
  if (!e || typeof e != "string") return [];
1650
1626
  let t = /* @__PURE__ */ new Map(), n = {
1651
1627
  currentPath: null,
1652
1628
  lastMinusHeader: null,
1653
1629
  inHunk: !1
1654
1630
  }, r = e.split(/\r?\n/);
1655
- for (let e of r) n = Dr(e, n, t);
1631
+ for (let e of r) n = Tr(e, n, t);
1656
1632
  return Array.from(t.entries()).map(([e, { additions: t, deletions: n }]) => ({
1657
1633
  filePath: e,
1658
1634
  additions: t,
1659
1635
  deletions: n
1660
1636
  }));
1661
1637
  }
1662
- function kr(e) {
1663
- return Or(e).map((e) => ({
1638
+ function Dr(e) {
1639
+ return Er(e).map((e) => ({
1664
1640
  kind: "diff",
1665
- fileName: _r(e.filePath),
1641
+ fileName: hr(e.filePath),
1666
1642
  filePath: e.filePath,
1667
1643
  additions: e.additions,
1668
1644
  deletions: e.deletions
1669
1645
  }));
1670
1646
  }
1671
- function Ar(e) {
1672
- return Or(e).map((e) => e.filePath);
1647
+ function Or(e) {
1648
+ return Er(e).map((e) => e.filePath);
1673
1649
  }
1674
- var jr = (e) => yr(e) || e.startsWith("diff --git "), Mr = (e) => e.startsWith(" ") || e.startsWith("+") || e.startsWith("-") ? !1 : e.trim() !== "", Nr = (e, t, n) => {
1650
+ var kr = (e) => _r(e) || e.startsWith("diff --git "), Ar = (e) => e.startsWith(" ") || e.startsWith("+") || e.startsWith("-") ? !1 : e.trim() !== "", jr = (e, t, n) => {
1675
1651
  if (e.startsWith(" ")) {
1676
1652
  let r = e.slice(1);
1677
1653
  t.push(r), n.push(r);
@@ -1682,26 +1658,26 @@ var jr = (e) => yr(e) || e.startsWith("diff --git "), Mr = (e) => e.startsWith("
1682
1658
  return;
1683
1659
  }
1684
1660
  e.startsWith("+") && n.push(e.slice(1));
1685
- }, Pr = (e, t, n, r) => {
1661
+ }, Mr = (e, t, n, r) => {
1686
1662
  let i = t;
1687
1663
  for (; i < e.length;) {
1688
1664
  let t = e[i] || "";
1689
- if (jr(t) || xr(t) || Mr(t)) break;
1690
- Nr(t, n, r), i += 1;
1665
+ if (kr(t) || yr(t) || Ar(t)) break;
1666
+ jr(t, n, r), i += 1;
1691
1667
  }
1692
1668
  return (n.length > 0 || r.length > 0) && (n.push(""), r.push("")), i;
1693
- }, Fr = (e, t) => {
1694
- let n = vr((e[t] || "").slice(4)), r = e[t + 1] || "";
1695
- if (!br(r)) return { nextIndex: t + 1 };
1696
- let i = vr(r.slice(4)) ?? n ?? "", a = [], o = [], s = t + 2;
1669
+ }, Nr = (e, t) => {
1670
+ let n = gr((e[t] || "").slice(4)), r = e[t + 1] || "";
1671
+ if (!vr(r)) return { nextIndex: t + 1 };
1672
+ let i = gr(r.slice(4)) ?? n ?? "", a = [], o = [], s = t + 2;
1697
1673
  for (; s < e.length;) {
1698
1674
  let t = e[s] || "";
1699
- if (jr(t)) break;
1700
- if (!xr(t)) {
1675
+ if (kr(t)) break;
1676
+ if (!yr(t)) {
1701
1677
  s += 1;
1702
1678
  continue;
1703
1679
  }
1704
- s = Pr(e, s + 1, a, o);
1680
+ s = Mr(e, s + 1, a, o);
1705
1681
  }
1706
1682
  return {
1707
1683
  nextIndex: s,
@@ -1712,22 +1688,22 @@ var jr = (e) => yr(e) || e.startsWith("diff --git "), Mr = (e) => e.startsWith("
1712
1688
  }
1713
1689
  };
1714
1690
  };
1715
- function Ir(e) {
1691
+ function Pr(e) {
1716
1692
  if (!e || typeof e != "string") return [];
1717
1693
  let t = e.split(/\r?\n/), n = [], r = 0;
1718
1694
  for (; r < t.length;) {
1719
- if (!yr(t[r] || "")) {
1695
+ if (!_r(t[r] || "")) {
1720
1696
  r += 1;
1721
1697
  continue;
1722
1698
  }
1723
- let { nextIndex: e, preview: i } = Fr(t, r);
1699
+ let { nextIndex: e, preview: i } = Nr(t, r);
1724
1700
  i && n.push(i), r = Math.max(e, r + 1);
1725
1701
  }
1726
1702
  return n;
1727
1703
  }
1728
1704
  //#endregion
1729
1705
  //#region src/components/chat-ui/tool-rendering/shared.ts
1730
- var Lr = {
1706
+ var Fr = {
1731
1707
  apply_patch: "Apply patch",
1732
1708
  bash: "Run command",
1733
1709
  edit: "Edit file",
@@ -1736,34 +1712,34 @@ var Lr = {
1736
1712
  read: "Read file",
1737
1713
  skill: "Load skill",
1738
1714
  todowrite: "Update todos"
1739
- }, Rr = {
1715
+ }, Ir = {
1740
1716
  error: "failed",
1741
1717
  "output-error": "failed",
1742
1718
  input_streaming: "running",
1743
1719
  running: "running",
1744
1720
  completed: "completed",
1745
1721
  failed: "failed"
1746
- }, zr = (e) => e.replace(/^tool-/, "").toLowerCase(), Br = (e) => e.split(" ").filter((e) => e.length > 0).map((e) => e[0].toUpperCase() + e.slice(1)).join(" "), Vr = (e) => zr(e.tool ?? "tool"), Hr = (e) => {
1747
- let t = zr(e);
1748
- return Lr[t] ?? Br(t.replace(/_/g, " "));
1749
- }, Ur = (e) => {
1722
+ }, Lr = (e) => e.replace(/^tool-/, "").toLowerCase(), Rr = (e) => e.split(" ").filter((e) => e.length > 0).map((e) => e[0].toUpperCase() + e.slice(1)).join(" "), zr = (e) => Lr(e.tool ?? "tool"), Br = (e) => {
1723
+ let t = Lr(e);
1724
+ return Fr[t] ?? Rr(t.replace(/_/g, " "));
1725
+ }, Vr = (e) => {
1750
1726
  let t = e.state?.status ?? e.status;
1751
1727
  if (!t || typeof t != "string") return null;
1752
1728
  let n = t.replace(/-/g, "_");
1753
- return Rr[n] ? Rr[n] : n.includes("stream") ? "running" : null;
1754
- }, Wr = (e) => {
1729
+ return Ir[n] ? Ir[n] : n.includes("stream") ? "running" : null;
1730
+ }, Hr = (e) => {
1755
1731
  let t = e.state?.status ?? e.status;
1756
1732
  return t === "error" || t === "output-error" || t === "failed";
1757
- }, Gr = (e) => Wr(e) ? {
1733
+ }, Ur = (e) => Hr(e) ? {
1758
1734
  type: "icon",
1759
1735
  icon: "danger"
1760
1736
  } : {
1761
1737
  type: "icon",
1762
- icon: gr(Vr(e))
1763
- }, Kr = (e, t, n, r) => {
1738
+ icon: mr(zr(e))
1739
+ }, Wr = (e, t, n, r) => {
1764
1740
  let i = [{
1765
1741
  kind: "text",
1766
- text: n ?? Hr(e.tool ?? "tool"),
1742
+ text: n ?? Br(e.tool ?? "tool"),
1767
1743
  bold: !0
1768
1744
  }];
1769
1745
  t && i.push({
@@ -1775,100 +1751,100 @@ var Lr = {
1775
1751
  monospace: !0
1776
1752
  } : {}
1777
1753
  });
1778
- let a = Ur(e);
1754
+ let a = Vr(e);
1779
1755
  return a && a !== "completed" && i.push({
1780
1756
  kind: "text",
1781
1757
  text: a,
1782
1758
  muted: !0
1783
1759
  }), i;
1784
- }, qr = (e) => {
1760
+ }, Gr = (e) => {
1785
1761
  let t = e.state?.input;
1786
1762
  return !t || typeof t != "object" || Array.isArray(t) ? null : t;
1787
- }, Jr = (e) => {
1763
+ }, Kr = (e) => {
1788
1764
  let t = e.state?.output;
1789
1765
  return !t || typeof t != "object" || Array.isArray(t) ? null : t;
1790
- }, $ = (e) => typeof e == "string" && e.trim().length > 0 ? e : null, Yr = (e) => !e || typeof e != "object" || Array.isArray(e) ? null : e, Xr = (e, t) => {
1791
- let n = Yr(e.state);
1792
- return n ? Yr(n[t]) : null;
1793
- }, Zr = (e) => e.replace(/\\/g, "/").replace(/^\/+/, ""), Qr = (e) => e.includes("--- ") && e.includes("+++ ") && e.includes("@@"), $r = (e) => {
1794
- let t = Jr(e);
1795
- return [Xr(e, "metadata"), Yr(t?.metadata)].filter(Boolean);
1796
- }, ei = (e) => {
1797
- let t = Yr(e);
1766
+ }, $ = (e) => typeof e == "string" && e.trim().length > 0 ? e : null, qr = (e) => !e || typeof e != "object" || Array.isArray(e) ? null : e, Jr = (e, t) => {
1767
+ let n = qr(e.state);
1768
+ return n ? qr(n[t]) : null;
1769
+ }, Yr = (e) => e.replace(/\\/g, "/").replace(/^\/+/, ""), Xr = (e) => e.includes("--- ") && e.includes("+++ ") && e.includes("@@"), Zr = (e) => {
1770
+ let t = Kr(e);
1771
+ return [Jr(e, "metadata"), qr(t?.metadata)].filter(Boolean);
1772
+ }, Qr = (e) => {
1773
+ let t = qr(e);
1798
1774
  if (!t) return null;
1799
1775
  let n = $(t.filePath) ?? $(t.relativePath) ?? $(t.path);
1800
1776
  return n ? {
1801
- filePath: Zr(n),
1777
+ filePath: Yr(n),
1802
1778
  additions: typeof t.additions == "number" ? t.additions : 0,
1803
1779
  deletions: typeof t.deletions == "number" ? t.deletions : 0,
1804
1780
  diff: $(t.diff) ?? void 0,
1805
1781
  before: $(t.before) ?? void 0,
1806
1782
  after: $(t.after) ?? void 0
1807
1783
  } : null;
1808
- }, ti = (e) => {
1784
+ }, $r = (e) => {
1809
1785
  let t = [];
1810
- for (let n of $r(e)) {
1786
+ for (let n of Zr(e)) {
1811
1787
  let e = Array.isArray(n.files) ? n.files : [];
1812
1788
  for (let n of e) {
1813
- let e = ei(n);
1789
+ let e = Qr(n);
1814
1790
  e && t.push(e);
1815
1791
  }
1816
1792
  }
1817
1793
  return t;
1818
- }, ni = (e) => {
1819
- let t = qr(e), n = (Array.isArray(t?.changes) ? t.changes : []).map((e) => $(Yr(e)?.path)).filter((e) => !!e).map(Zr);
1794
+ }, ei = (e) => {
1795
+ let t = Gr(e), n = (Array.isArray(t?.changes) ? t.changes : []).map((e) => $(qr(e)?.path)).filter((e) => !!e).map(Yr);
1820
1796
  return Array.from(new Set(n));
1821
- }, ri = (e) => {
1822
- let t = qr(e), n = $(t?.diff);
1797
+ }, ti = (e) => {
1798
+ let t = Gr(e), n = $(t?.diff);
1823
1799
  if (n) return n;
1824
- for (let t of $r(e)) {
1800
+ for (let t of Zr(e)) {
1825
1801
  let e = $(t.diff);
1826
1802
  if (e) return e;
1827
1803
  }
1828
- let r = ti(e).map((e) => e.diff).filter((e) => !!e);
1804
+ let r = $r(e).map((e) => e.diff).filter((e) => !!e);
1829
1805
  if (r.length > 0) return r.join("\n");
1830
1806
  let i = $(t?.patchText);
1831
- return i && Qr(i) ? i : null;
1832
- }, ii = (e) => {
1807
+ return i && Xr(i) ? i : null;
1808
+ }, ni = (e) => {
1833
1809
  let t = /* @__PURE__ */ new Set(), n = [];
1834
1810
  for (let r of e) t.has(r.filePath) || (t.add(r.filePath), n.push({
1835
1811
  kind: "diff",
1836
- fileName: _r(r.filePath),
1812
+ fileName: hr(r.filePath),
1837
1813
  filePath: r.filePath,
1838
1814
  additions: r.additions,
1839
1815
  deletions: r.deletions
1840
1816
  }));
1841
1817
  return n;
1842
- }, ai = (e) => Array.from(new Set(e.map((e) => e.filePath))), oi = (e) => {
1843
- let t = Jr(e);
1818
+ }, ri = (e) => Array.from(new Set(e.map((e) => e.filePath))), ii = (e) => {
1819
+ let t = Kr(e);
1844
1820
  return $(e.state?.output) ?? $(t?.returnDisplay) ?? $(t?.preview) ?? $(t?.stdout) ?? $(t?.content);
1845
- }, si = (e) => {
1821
+ }, ai = (e) => {
1846
1822
  let t = e.match(/<skill_content(?:\s+name="([^"]+)")?>([\s\S]*?)<\/skill_content>/);
1847
1823
  return t ? {
1848
1824
  skillName: $(t[1]) ?? void 0,
1849
1825
  content: $(t[2]) ?? ""
1850
1826
  } : null;
1851
- }, ci = (e) => {
1852
- let t = qr(e);
1827
+ }, oi = (e) => {
1828
+ let t = Gr(e);
1853
1829
  return $(t?.name) ?? $(t?.skillName) ?? $(t?.skill) ?? $(t?.skill_name) ?? void 0;
1854
- }, li = (e, t) => ({
1830
+ }, si = (e, t) => ({
1855
1831
  kind: "link",
1856
- text: _r(e),
1832
+ text: hr(e),
1857
1833
  filePath: e,
1858
1834
  ...t ? { variant: t } : {}
1859
- }), ui = (e, t) => !Wr(e) || !e.state?.errorText ? t : [{
1835
+ }), ci = (e, t) => !Hr(e) || !e.state?.errorText ? t : [{
1860
1836
  type: "comment",
1861
1837
  text: e.state.errorText
1862
- }, ...t], di = (e) => Ir(e ?? void 0).map((e) => ({
1838
+ }, ...t], li = (e) => Pr(e ?? void 0).map((e) => ({
1863
1839
  type: "diff",
1864
1840
  language: "diff",
1865
1841
  original: e.original,
1866
1842
  modified: e.modified,
1867
1843
  sideBySide: !1
1868
- })), fi = (e) => kr(e ?? void 0), pi = (e) => Ar(e ?? void 0), mi = (e) => {
1869
- let t = ri(e), n = ti(e), r = ni(e), i = Kr(e, void 0, "Apply patch"), a = fi(t);
1870
- a.length > 0 ? i.push(...a) : n.length > 0 ? i.push(...ii(n)) : i.push(...r.map((e) => li(e, "bubble")));
1871
- let o = [...di(t)];
1844
+ })), ui = (e) => Dr(e ?? void 0), di = (e) => Or(e ?? void 0), fi = (e) => {
1845
+ let t = ti(e), n = $r(e), r = ei(e), i = Wr(e, void 0, "Apply patch"), a = ui(t);
1846
+ a.length > 0 ? i.push(...a) : n.length > 0 ? i.push(...ni(n)) : i.push(...r.map((e) => si(e, "bubble")));
1847
+ let o = [...li(t)];
1872
1848
  if (o.length === 0) for (let e of n) (e.before || e.after) && o.push({
1873
1849
  type: "diff",
1874
1850
  language: "diff",
@@ -1877,33 +1853,33 @@ var Lr = {
1877
1853
  sideBySide: !1
1878
1854
  });
1879
1855
  if (o.length === 0) {
1880
- let e = pi(t);
1881
- e.length === 0 && e.push(...ai(n)), e.length === 0 && e.push(...r), e.length > 0 && o.push({
1856
+ let e = di(t);
1857
+ e.length === 0 && e.push(...ri(n)), e.length === 0 && e.push(...r), e.length > 0 && o.push({
1882
1858
  type: "references",
1883
1859
  references: e
1884
1860
  });
1885
1861
  }
1886
1862
  return {
1887
- indicator: Gr(e),
1863
+ indicator: Ur(e),
1888
1864
  title: i,
1889
- blocks: ui(e, o)
1865
+ blocks: ci(e, o)
1890
1866
  };
1891
- }, hi = (e, t) => [{
1867
+ }, pi = (e, t) => [{
1892
1868
  type: "diff",
1893
1869
  language: "text",
1894
1870
  original: e,
1895
1871
  modified: t,
1896
1872
  sideBySide: !1
1897
- }], gi = (e) => {
1898
- let t = qr(e), n = Jr(e), r = $(t?.filePath) ?? $(t?.file_path) ?? $(n?.filePath) ?? void 0, i = $(n?.oldString) ?? $(t?.old_string) ?? void 0, a = $(n?.newString) ?? $(t?.new_string) ?? void 0, o = Kr(e, void 0, "Edit file");
1899
- r && o.push(li(r));
1900
- let s = i !== void 0 && a !== void 0 ? hi(i, a) : di($(n?.diff));
1873
+ }], mi = (e) => {
1874
+ let t = Gr(e), n = Kr(e), r = $(t?.filePath) ?? $(t?.file_path) ?? $(n?.filePath) ?? void 0, i = $(n?.oldString) ?? $(t?.old_string) ?? void 0, a = $(n?.newString) ?? $(t?.new_string) ?? void 0, o = Wr(e, void 0, "Edit file");
1875
+ r && o.push(si(r));
1876
+ let s = i !== void 0 && a !== void 0 ? pi(i, a) : li($(n?.diff));
1901
1877
  return {
1902
- indicator: Gr(e),
1878
+ indicator: Ur(e),
1903
1879
  title: o,
1904
- blocks: ui(e, s)
1880
+ blocks: ci(e, s)
1905
1881
  };
1906
- }, _i = (e) => {
1882
+ }, hi = (e) => {
1907
1883
  let { buildBaseTitle: t, buildIndicator: n, prependErrorBlock: r } = e;
1908
1884
  return (e) => {
1909
1885
  let i = on(e.state?.output) || on(e.state?.metadata), a = ln(e.state?.input), o = a ? {
@@ -1919,15 +1895,15 @@ var Lr = {
1919
1895
  expandable: !1
1920
1896
  };
1921
1897
  };
1922
- }, vi = (e) => {
1923
- let t = qr(e), n = Jr(e), r = $(t?.filePath) ?? $(t?.file_path) ?? $(t?.file) ?? $(n?.filePath) ?? $(n?.file) ?? $(n?.path) ?? void 0, i = Kr(e, void 0, "Read file");
1924
- return r && i.push(li(r)), {
1925
- indicator: Gr(e),
1898
+ }, gi = (e) => {
1899
+ let t = Gr(e), n = Kr(e), r = $(t?.filePath) ?? $(t?.file_path) ?? $(t?.file) ?? $(n?.filePath) ?? $(n?.file) ?? $(n?.path) ?? void 0, i = Wr(e, void 0, "Read file");
1900
+ return r && i.push(si(r)), {
1901
+ indicator: Ur(e),
1926
1902
  title: i,
1927
- blocks: ui(e, [])
1903
+ blocks: ci(e, [])
1928
1904
  };
1929
- }, yi = (e, t) => {
1930
- let n = qr(e), r = Jr(e), i = Kr(e, $(n?.command) ?? void 0, t, "monospace"), a = [], o = oi(e);
1905
+ }, _i = (e, t) => {
1906
+ let n = Gr(e), r = Kr(e), i = Wr(e, $(n?.command) ?? void 0, t, "monospace"), a = [], o = ii(e);
1931
1907
  o && a.push({
1932
1908
  type: "code",
1933
1909
  language: "text",
@@ -1942,23 +1918,23 @@ var Lr = {
1942
1918
  type: "text",
1943
1919
  text: `Exit code: ${r.exitCode}`
1944
1920
  }), {
1945
- indicator: Gr(e),
1921
+ indicator: Ur(e),
1946
1922
  title: i,
1947
- blocks: ui(e, a)
1923
+ blocks: ci(e, a)
1948
1924
  };
1949
- }, bi = (e) => yi(e, "Run command"), xi = (e) => yi(e, "Shell"), Si = (e) => {
1950
- let t = qr(e), n = oi(e), r = Kr(e, $(t?.pattern) ?? void 0, "Search files"), i = n ? [{
1925
+ }, vi = (e) => _i(e, "Run command"), yi = (e) => _i(e, "Shell"), bi = (e) => {
1926
+ let t = Gr(e), n = ii(e), r = Wr(e, $(t?.pattern) ?? void 0, "Search files"), i = n ? [{
1951
1927
  type: "code",
1952
1928
  language: "text",
1953
1929
  code: n
1954
1930
  }] : [];
1955
1931
  return {
1956
- indicator: Gr(e),
1932
+ indicator: Ur(e),
1957
1933
  title: r,
1958
- blocks: ui(e, i)
1934
+ blocks: ci(e, i)
1959
1935
  };
1960
- }, Ci = (e) => {
1961
- let t = qr(e), n = oi(e), r = Kr(e, $(t?.pattern) ?? void 0, "Find files"), i = [];
1936
+ }, xi = (e) => {
1937
+ let t = Gr(e), n = ii(e), r = Wr(e, $(t?.pattern) ?? void 0, "Find files"), i = [];
1962
1938
  if (n) {
1963
1939
  let e = n.split(/\r?\n/).map((e) => e.trim()).filter((e) => e.length > 0);
1964
1940
  e.length > 0 && i.push({
@@ -1967,50 +1943,50 @@ var Lr = {
1967
1943
  });
1968
1944
  }
1969
1945
  return {
1970
- indicator: Gr(e),
1946
+ indicator: Ur(e),
1971
1947
  title: r,
1972
- blocks: ui(e, i)
1948
+ blocks: ci(e, i)
1973
1949
  };
1974
- }, wi = (e) => {
1975
- let t = oi(e), n = t ? si(t) : null, r = Kr(e, ci(e) ?? n?.skillName, "Load skill"), i = n?.content ?? t, a = i ? [{
1950
+ }, Si = (e) => {
1951
+ let t = ii(e), n = t ? ai(t) : null, r = Wr(e, oi(e) ?? n?.skillName, "Load skill"), i = n?.content ?? t, a = i ? [{
1976
1952
  type: "code",
1977
1953
  language: "markdown",
1978
1954
  code: i
1979
1955
  }] : [];
1980
1956
  return {
1981
- indicator: Gr(e),
1957
+ indicator: Ur(e),
1982
1958
  title: r,
1983
- blocks: ui(e, a)
1959
+ blocks: ci(e, a)
1984
1960
  };
1985
- }, Ti = (e) => typeof e == "string" && e.trim().length > 0 ? e : null, Ei = (e) => !e || typeof e != "object" || Array.isArray(e) ? null : e, Di = (e) => {
1986
- let t = Ei(e);
1961
+ }, Ci = (e) => typeof e == "string" && e.trim().length > 0 ? e : null, wi = (e) => !e || typeof e != "object" || Array.isArray(e) ? null : e, Ti = (e) => {
1962
+ let t = wi(e);
1987
1963
  if (!t) return null;
1988
- let n = Ti(t.content) ?? Ti(t.title);
1964
+ let n = Ci(t.content) ?? Ci(t.title);
1989
1965
  return n ? {
1990
1966
  label: n,
1991
- checked: Ti(t.status) === "completed"
1967
+ checked: Ci(t.status) === "completed"
1992
1968
  } : null;
1993
- }, Oi = (e) => {
1969
+ }, Ei = (e) => {
1994
1970
  if (!e) return {
1995
1971
  items: [],
1996
1972
  explicit: !1
1997
1973
  };
1998
1974
  let t = (() => {
1999
1975
  if (Array.isArray(e)) return e;
2000
- let t = Ei(e);
1976
+ let t = wi(e);
2001
1977
  return !t || !Array.isArray(t.todos) ? null : t.todos;
2002
1978
  })();
2003
1979
  return t ? {
2004
- items: t.map(Di).filter((e) => e !== null),
1980
+ items: t.map(Ti).filter((e) => e !== null),
2005
1981
  explicit: !0
2006
1982
  } : {
2007
1983
  items: [],
2008
1984
  explicit: !1
2009
1985
  };
2010
- }, ki = (e) => {
1986
+ }, Di = (e) => {
2011
1987
  let { buildBaseTitle: t, buildIndicator: n, prependErrorBlock: r } = e;
2012
1988
  return (e) => {
2013
- let i = Oi(e.state?.input), a = Oi(e.state?.output), o = a.explicit ? a : i;
1989
+ let i = Ei(e.state?.input), a = Ei(e.state?.output), o = a.explicit ? a : i;
2014
1990
  if (!o.explicit) return null;
2015
1991
  let s = o.items, c = `${s.length} item${s.length === 1 ? "" : "s"}`, l = t(e, c, "Update todos");
2016
1992
  if (s.length === 0) return {
@@ -2031,37 +2007,37 @@ var Lr = {
2031
2007
  blocks: r(e, u)
2032
2008
  };
2033
2009
  };
2034
- }, Ai = _i({
2035
- buildBaseTitle: Kr,
2036
- buildIndicator: Gr,
2037
- prependErrorBlock: ui
2038
- }), ji = ki({
2039
- buildBaseTitle: Kr,
2040
- buildIndicator: Gr,
2041
- prependErrorBlock: ui
2042
- }), Mi = () => ({
2043
- apply_patch: mi,
2044
- bash: bi,
2045
- edit: gi,
2046
- glob: Ci,
2047
- grep: Si,
2048
- question: Ai,
2049
- read: vi,
2050
- shell: xi,
2051
- skill: wi,
2052
- todo_write: ji,
2053
- todowrite: ji
2054
- }), Ni = {
2010
+ }, Oi = hi({
2011
+ buildBaseTitle: Wr,
2012
+ buildIndicator: Ur,
2013
+ prependErrorBlock: ci
2014
+ }), ki = Di({
2015
+ buildBaseTitle: Wr,
2016
+ buildIndicator: Ur,
2017
+ prependErrorBlock: ci
2018
+ }), Ai = () => ({
2019
+ apply_patch: fi,
2020
+ bash: vi,
2021
+ edit: mi,
2022
+ glob: xi,
2023
+ grep: bi,
2024
+ question: Oi,
2025
+ read: gi,
2026
+ shell: yi,
2027
+ skill: Si,
2028
+ todo_write: ki,
2029
+ todowrite: ki
2030
+ }), ji = {
2055
2031
  error: "failed",
2056
2032
  "output-error": "failed",
2057
2033
  "input-streaming": "running"
2058
- }, Pi = (e) => e.split(" ").filter((e) => e.length > 0).map((e) => e[0].toUpperCase() + e.slice(1)).join(" "), Fi = (e) => Pi(lr(e ?? "tool").replace(/_/g, " ")), Ii = (e) => e === "error" || e === "output-error", Li = (e) => Ii(e.state?.status) ? {
2034
+ }, Mi = (e) => e.split(" ").filter((e) => e.length > 0).map((e) => e[0].toUpperCase() + e.slice(1)).join(" "), Ni = (e) => Mi(sr(e ?? "tool").replace(/_/g, " ")), Pi = (e) => e === "error" || e === "output-error", Fi = (e) => Pi(e.state?.status) ? {
2059
2035
  type: "icon",
2060
2036
  icon: "danger"
2061
2037
  } : {
2062
2038
  type: "icon",
2063
- icon: gr(e.tool ?? "tool")
2064
- }, Ri = (e) => !e || typeof e != "string" ? null : Ni[e] ? Ni[e] : e.includes("stream") ? "running" : null, zi = (e) => {
2039
+ icon: mr(e.tool ?? "tool")
2040
+ }, Ii = (e) => !e || typeof e != "string" ? null : ji[e] ? ji[e] : e.includes("stream") ? "running" : null, Li = (e) => {
2065
2041
  if (typeof e == "string") return e;
2066
2042
  if (e == null) return null;
2067
2043
  try {
@@ -2069,30 +2045,30 @@ var Lr = {
2069
2045
  } catch {
2070
2046
  return null;
2071
2047
  }
2072
- }, Bi = (e) => e == null ? !0 : typeof e == "string" ? e.trim().length === 0 : Array.isArray(e) ? e.length === 0 || e.every(Bi) : typeof e == "object" && Object.values(e).every(Bi), Vi = (e) => !e || typeof e != "object" || Array.isArray(e) ? null : e, Hi = (e) => typeof e == "string" && e.trim().length > 0 ? e : null, Ui = (e) => Hi(e.mime_type) ?? Hi(e.mediaType) ?? Hi(e.mimeType), Wi = (e) => !!e?.startsWith("image/"), Gi = /\.(avif|bmp|gif|jpe?g|png|svg|webp)(\?.*)?$/i, Ki = (e, t) => {
2073
- let n = Vi(e);
2048
+ }, Ri = (e) => e == null ? !0 : typeof e == "string" ? e.trim().length === 0 : Array.isArray(e) ? e.length === 0 || e.every(Ri) : typeof e == "object" && Object.values(e).every(Ri), zi = (e) => !e || typeof e != "object" || Array.isArray(e) ? null : e, Bi = (e) => typeof e == "string" && e.trim().length > 0 ? e : null, Vi = (e) => Bi(e.mime_type) ?? Bi(e.mediaType) ?? Bi(e.mimeType), Hi = (e) => !!e?.startsWith("image/"), Ui = /\.(avif|bmp|gif|jpe?g|png|svg|webp)(\?.*)?$/i, Wi = (e, t) => {
2049
+ let n = zi(e);
2074
2050
  if (!n) return null;
2075
- let r = Ui(n), i = Hi(n.data);
2076
- if (i && Wi(r)) return {
2051
+ let r = Vi(n), i = Bi(n.data);
2052
+ if (i && Hi(r)) return {
2077
2053
  type: "image",
2078
2054
  src: `data:${r};base64,${i}`,
2079
2055
  alt: t
2080
2056
  };
2081
- let a = Hi(n.url) ?? Hi(n.src);
2082
- return a && (Wi(r) || Gi.test(a)) ? {
2057
+ let a = Bi(n.url) ?? Bi(n.src);
2058
+ return a && (Hi(r) || Ui.test(a)) ? {
2083
2059
  type: "image",
2084
2060
  src: a,
2085
2061
  alt: t
2086
2062
  } : null;
2087
- }, qi = (e) => {
2088
- let t = Vi(e);
2063
+ }, Gi = (e) => {
2064
+ let t = zi(e);
2089
2065
  if (!t) return null;
2090
- let n = Hi(t.path) ?? Hi(t.filePath) ?? Hi(t.filename), r = Hi(t.content) ?? Hi(t.body) ?? Hi(t.text);
2066
+ let n = Bi(t.path) ?? Bi(t.filePath) ?? Bi(t.filename), r = Bi(t.content) ?? Bi(t.body) ?? Bi(t.text);
2091
2067
  return !n || r === null ? null : {
2092
2068
  filePath: n,
2093
2069
  content: r
2094
2070
  };
2095
- }, Ji = {
2071
+ }, Ki = {
2096
2072
  css: "css",
2097
2073
  html: "html",
2098
2074
  js: "js",
@@ -2104,88 +2080,88 @@ var Lr = {
2104
2080
  tsx: "tsx",
2105
2081
  yaml: "yaml",
2106
2082
  yml: "yaml"
2107
- }, Yi = (e) => {
2083
+ }, qi = (e) => {
2108
2084
  let t = e.split(".").pop()?.toLowerCase();
2109
- return t ? Ji[t] ?? t : "text";
2110
- }, Xi = (e, t) => t.length === 0 ? [] : [{
2085
+ return t ? Ki[t] ?? t : "text";
2086
+ }, Ji = (e, t) => t.length === 0 ? [] : [{
2111
2087
  type: "text",
2112
2088
  text: e
2113
- }, ...t], Zi = (e, t) => {
2089
+ }, ...t], Yi = (e, t) => {
2114
2090
  let n = [];
2115
2091
  for (let r of e) {
2116
- let e = Vi(r), i = Hi(e?.type);
2092
+ let e = zi(r), i = Bi(e?.type);
2117
2093
  if (i === "image") {
2118
- let e = Ki(r, t);
2094
+ let e = Wi(r, t);
2119
2095
  e && n.push(e);
2120
2096
  continue;
2121
2097
  }
2122
2098
  if (i === "text") {
2123
- let t = Hi(e?.text);
2099
+ let t = Bi(e?.text);
2124
2100
  t && n.push({
2125
2101
  type: "text",
2126
2102
  text: t
2127
2103
  });
2128
2104
  continue;
2129
2105
  }
2130
- n.push(...ea(r, t));
2106
+ n.push(...Qi(r, t));
2131
2107
  }
2132
2108
  return n;
2133
- }, Qi = (e) => {
2134
- let t = qi(e);
2109
+ }, Xi = (e) => {
2110
+ let t = Gi(e);
2135
2111
  return t ? [{
2136
2112
  type: "code",
2137
- language: Yi(t.filePath),
2113
+ language: qi(t.filePath),
2138
2114
  code: t.content
2139
2115
  }] : null;
2140
- }, $i = (e) => {
2141
- let t = Vi(e), n = Hi(t?.attachment_name) ?? Hi(t?.attachmentName), r = Hi(t?.attachment_file_id) ?? Hi(t?.attachmentFileId);
2116
+ }, Zi = (e) => {
2117
+ let t = zi(e), n = Bi(t?.attachment_name) ?? Bi(t?.attachmentName), r = Bi(t?.attachment_file_id) ?? Bi(t?.attachmentFileId);
2142
2118
  return !n && !r ? null : [{
2143
2119
  type: "text",
2144
2120
  text: n ?? `Attachment ${r}`
2145
2121
  }];
2146
- }, ea = (e, t) => {
2147
- if (Bi(e)) return [];
2148
- let n = Ki(e, t);
2122
+ }, Qi = (e, t) => {
2123
+ if (Ri(e)) return [];
2124
+ let n = Wi(e, t);
2149
2125
  if (n) return [n];
2150
- if (Array.isArray(e)) return Zi(e, t);
2151
- let r = Qi(e);
2126
+ if (Array.isArray(e)) return Yi(e, t);
2127
+ let r = Xi(e);
2152
2128
  if (r) return r;
2153
- let i = $i(e);
2129
+ let i = Zi(e);
2154
2130
  if (i) return i;
2155
- let a = zi(e);
2131
+ let a = Li(e);
2156
2132
  return a?.trim() ? [{
2157
2133
  type: "code",
2158
2134
  language: typeof e == "string" ? "text" : "json",
2159
2135
  code: a
2160
2136
  }] : [];
2161
- }, ta = (e) => {
2162
- let t = [], n = Fi(e.tool);
2163
- return Ii(e.state?.status) && e.state?.errorText && t.push({
2137
+ }, $i = (e) => {
2138
+ let t = [], n = Ni(e.tool);
2139
+ return Pi(e.state?.status) && e.state?.errorText && t.push({
2164
2140
  type: "comment",
2165
2141
  text: e.state.errorText
2166
- }), t.push(...Xi("Input", ea(e.state?.input, `${n} input`))), t.push(...Xi("Output", ea(e.state?.output, `${n} output`))), t;
2167
- }, na = (e) => {
2142
+ }), t.push(...Ji("Input", Qi(e.state?.input, `${n} input`))), t.push(...Ji("Output", Qi(e.state?.output, `${n} output`))), t;
2143
+ }, ea = (e) => {
2168
2144
  let t = [{
2169
2145
  kind: "text",
2170
- text: Fi(e.tool),
2146
+ text: Ni(e.tool),
2171
2147
  bold: !0
2172
- }], n = qi(e.state?.output);
2148
+ }], n = Gi(e.state?.output);
2173
2149
  n && t.push({
2174
2150
  kind: "link",
2175
2151
  text: n.filePath,
2176
2152
  filePath: n.filePath
2177
2153
  });
2178
- let r = Ri(e.state?.status);
2154
+ let r = Ii(e.state?.status);
2179
2155
  return r && t.push({
2180
2156
  kind: "text",
2181
2157
  text: r,
2182
2158
  muted: !0
2183
2159
  }), {
2184
- indicator: Li(e),
2160
+ indicator: Fi(e),
2185
2161
  title: t,
2186
- blocks: ta(e)
2162
+ blocks: $i(e)
2187
2163
  };
2188
- }, ra = (e) => e.kind === "text" || e.kind === "link" ? e.text.trim().length > 0 : e.kind !== "diff" || e.fileName.trim().length > 0, ia = (e) => {
2164
+ }, ta = (e) => e.kind === "text" || e.kind === "link" ? e.text.trim().length > 0 : e.kind !== "diff" || e.fileName.trim().length > 0, na = (e) => {
2189
2165
  switch (e.type) {
2190
2166
  case "comment":
2191
2167
  case "code":
@@ -2198,43 +2174,43 @@ var Lr = {
2198
2174
  case "input":
2199
2175
  case "component": return !0;
2200
2176
  }
2201
- }, aa = (e) => {
2202
- let t = e.title.some(ra), n = (e.blocks ?? []).some(ia);
2177
+ }, ra = (e) => {
2178
+ let t = e.title.some(ta), n = (e.blocks ?? []).some(na);
2203
2179
  return t || n;
2204
- }, oa = (e) => e ? {
2205
- ...Mi(),
2180
+ }, ia = (e) => e ? {
2181
+ ...Ai(),
2206
2182
  ...e
2207
- } : Mi(), sa = (e, t) => {
2183
+ } : Ai(), aa = (e, t) => {
2208
2184
  let n = e.tool ?? "tool";
2209
- for (let e of ur(n)) {
2185
+ for (let e of cr(n)) {
2210
2186
  let n = t[e];
2211
2187
  if (n) return n;
2212
2188
  }
2213
- }, ca = (e, t, n) => {
2214
- let r = sa(e, t);
2189
+ }, oa = (e, t, n) => {
2190
+ let r = aa(e, t);
2215
2191
  if (r) {
2216
2192
  let t = r(e, n);
2217
2193
  if (t) return t;
2218
2194
  }
2219
- return na(e);
2220
- }, la = (e, t) => {
2221
- let n = oa(t?.toolRenderers);
2222
- return { items: e.map((e) => ca(e, n, t)).filter(aa) };
2223
- }, ua = ge(() => import("./diff-editor-CGpeyoCE.js").then((e) => e.n).then((e) => ({ default: e.DiffEditor }))), da = (e) => {
2195
+ return ea(e);
2196
+ }, sa = (e, t) => {
2197
+ let n = ia(t?.toolRenderers);
2198
+ return { items: e.map((e) => oa(e, n, t)).filter(ra) };
2199
+ }, ca = ge(() => import("./diff-editor-CGpeyoCE.js").then((e) => e.n).then((e) => ({ default: e.DiffEditor }))), la = (e) => {
2224
2200
  let t = J(2), n;
2225
2201
  return t[0] === e ? n = t[1] : (n = /* @__PURE__ */ Y(me, {
2226
2202
  fallback: null,
2227
- children: /* @__PURE__ */ Y(ua, { ...e })
2203
+ children: /* @__PURE__ */ Y(ca, { ...e })
2228
2204
  }), t[0] = e, t[1] = n), n;
2229
2205
  };
2230
2206
  //#endregion
2231
2207
  //#region src/components/chat-ui/components/timeline-indicator.tsx
2232
- function fa(e) {
2208
+ function ua(e) {
2233
2209
  let t = J(10), { ind: n } = e;
2234
2210
  if (!n || n.type === "none") return null;
2235
2211
  if (n.type === "icon") {
2236
2212
  let e;
2237
- t[0] === n.icon ? e = t[1] : (e = hr(n.icon), t[0] = n.icon, t[1] = e);
2213
+ t[0] === n.icon ? e = t[1] : (e = pr(n.icon), t[0] = n.icon, t[1] = e);
2238
2214
  let r = e, i;
2239
2215
  return t[2] === r ? i = t[3] : (i = /* @__PURE__ */ Y(oe.Indicator, {
2240
2216
  outline: "none",
@@ -2269,10 +2245,10 @@ function fa(e) {
2269
2245
  }
2270
2246
  //#endregion
2271
2247
  //#region src/components/chat-ui/components/timeline-title.tsx
2272
- var pa = (e, t, n, r = !1) => {
2248
+ var da = (e, t, n, r = !1) => {
2273
2249
  r && e.stopPropagation(), t.href || e.preventDefault(), t.filePath && n?.(t.filePath);
2274
2250
  };
2275
- function ma(e) {
2251
+ function fa(e) {
2276
2252
  let t = J(6), { seg: n } = e, r;
2277
2253
  t[0] !== n.alt || t[1] !== n.src ? (r = /* @__PURE__ */ Y(k.Image, {
2278
2254
  src: n.src,
@@ -2290,7 +2266,7 @@ function ma(e) {
2290
2266
  children: [r, i]
2291
2267
  }), t[4] = r, t[5] = a), a;
2292
2268
  }
2293
- function ha(e) {
2269
+ function pa(e) {
2294
2270
  let t = J(9), { seg: n, onOpenFile: r } = e, i = n.additions ?? 0, a = n.deletions ?? 0, o;
2295
2271
  t[0] !== r || t[1] !== n.fileName || t[2] !== n.filePath ? (o = () => {
2296
2272
  let e = n.filePath ?? n.fileName;
@@ -2304,9 +2280,9 @@ function ha(e) {
2304
2280
  onClickFileLink: o
2305
2281
  }), t[4] = n.fileName, t[5] = i, t[6] = a, t[7] = o, t[8] = s) : s = t[8], s;
2306
2282
  }
2307
- function ga(e) {
2283
+ function ma(e) {
2308
2284
  let t = J(13), { seg: n, onOpenFile: r } = e, i = n.bold ? "medium" : void 0, a = !!(n.href || n.filePath), o = n.href ?? "#", s = (n.muted, "fg.muted"), c = a ? "pointer" : "default", l;
2309
- t[0] !== r || t[1] !== n ? (l = (e) => pa(e, n, r, !0), t[0] = r, t[1] = n, t[2] = l) : l = t[2];
2285
+ t[0] !== r || t[1] !== n ? (l = (e) => da(e, n, r, !0), t[0] = r, t[1] = n, t[2] = l) : l = t[2];
2310
2286
  let u = n.muted ? "fg.muted" : "fg.blue-dark", d;
2311
2287
  t[3] === u ? d = t[4] : (d = {
2312
2288
  textDecoration: "underline",
@@ -2324,9 +2300,9 @@ function ga(e) {
2324
2300
  children: n.text
2325
2301
  }), t[5] = i, t[6] = n.text, t[7] = o, t[8] = s, t[9] = c, t[10] = l, t[11] = d, t[12] = f) : f = t[12], f;
2326
2302
  }
2327
- function _a(e) {
2303
+ function ha(e) {
2328
2304
  let t = J(12), { seg: n, onOpenFile: r } = e, i = n.bold ? "medium" : void 0, a = n.href ?? "#", o = n.muted ? "fg.muted" : "accent.primary", s;
2329
- t[0] !== r || t[1] !== n ? (s = (e) => pa(e, n, r), t[0] = r, t[1] = n, t[2] = s) : s = t[2];
2305
+ t[0] !== r || t[1] !== n ? (s = (e) => da(e, n, r), t[0] = r, t[1] = n, t[2] = s) : s = t[2];
2330
2306
  let c = n.muted ? "fg.muted" : "accent.primary", l;
2331
2307
  t[3] === c ? l = t[4] : (l = {
2332
2308
  color: c,
@@ -2343,7 +2319,7 @@ function _a(e) {
2343
2319
  children: n.text
2344
2320
  }), t[5] = i, t[6] = n.text, t[7] = a, t[8] = o, t[9] = s, t[10] = l, t[11] = u) : u = t[11], u;
2345
2321
  }
2346
- function va(e) {
2322
+ function ga(e) {
2347
2323
  let n = J(14), { seg: r, isClickable: i } = e, a = r.bold ? "medium" : void 0, o = r.monospace ? "mono/XS" : void 0, s = r.truncate ? "0" : void 0, c = r.truncate ? "hidden" : void 0, l = r.truncate ? "ellipsis" : void 0, u = r.truncate ? "nowrap" : void 0, d = i && !r.muted ? "fg" : "fg.muted", f;
2348
2324
  n[0] === d ? f = n[1] : (f = { color: d }, n[0] = d, n[1] = f);
2349
2325
  let p;
@@ -2366,7 +2342,7 @@ function va(e) {
2366
2342
  children: m
2367
2343
  }), n[11] = r.text, n[12] = m, n[13] = h) : h = n[13], h;
2368
2344
  }
2369
- function ya(e) {
2345
+ function _a(e) {
2370
2346
  let t = J(22), { seg: n, isClickable: r, onOpenFile: i } = e;
2371
2347
  if (b() && (n.kind === "link" || n.kind === "diff") && (n.filePath || n.kind === "diff")) {
2372
2348
  let e = n.filePath ?? (n.kind === "diff" ? n.fileName : n.text), r;
@@ -2389,28 +2365,28 @@ function ya(e) {
2389
2365
  switch (n.kind) {
2390
2366
  case "avatar": {
2391
2367
  let e;
2392
- return t[11] === n ? e = t[12] : (e = /* @__PURE__ */ Y(ma, { seg: n }), t[11] = n, t[12] = e), e;
2368
+ return t[11] === n ? e = t[12] : (e = /* @__PURE__ */ Y(fa, { seg: n }), t[11] = n, t[12] = e), e;
2393
2369
  }
2394
2370
  case "diff": {
2395
2371
  let e;
2396
- return t[13] !== i || t[14] !== n ? (e = /* @__PURE__ */ Y(ha, {
2372
+ return t[13] !== i || t[14] !== n ? (e = /* @__PURE__ */ Y(pa, {
2397
2373
  seg: n,
2398
2374
  onOpenFile: i
2399
2375
  }), t[13] = i, t[14] = n, t[15] = e) : e = t[15], e;
2400
2376
  }
2401
2377
  case "link": {
2402
2378
  let e;
2403
- return t[16] !== i || t[17] !== n ? (e = n.variant === "bubble" ? /* @__PURE__ */ Y(ga, {
2379
+ return t[16] !== i || t[17] !== n ? (e = n.variant === "bubble" ? /* @__PURE__ */ Y(ma, {
2404
2380
  seg: n,
2405
2381
  onOpenFile: i
2406
- }) : /* @__PURE__ */ Y(_a, {
2382
+ }) : /* @__PURE__ */ Y(ha, {
2407
2383
  seg: n,
2408
2384
  onOpenFile: i
2409
2385
  }), t[16] = i, t[17] = n, t[18] = e) : e = t[18], e;
2410
2386
  }
2411
2387
  case "text": {
2412
2388
  let e;
2413
- return t[19] !== r || t[20] !== n ? (e = /* @__PURE__ */ Y(va, {
2389
+ return t[19] !== r || t[20] !== n ? (e = /* @__PURE__ */ Y(ga, {
2414
2390
  seg: n,
2415
2391
  isClickable: r
2416
2392
  }), t[19] = r, t[20] = n, t[21] = e) : e = t[21], e;
@@ -2420,8 +2396,8 @@ function ya(e) {
2420
2396
  }
2421
2397
  //#endregion
2422
2398
  //#region src/components/chat-ui/components/timeline.tsx
2423
- var ba = oe;
2424
- function xa(e) {
2399
+ var va = oe;
2400
+ function ya(e) {
2425
2401
  let t = J(5), { code: r, language: i } = e, a = i ? `${i} code block` : "code block", o;
2426
2402
  t[0] === r ? o = t[1] : (o = /* @__PURE__ */ Y(A, {
2427
2403
  as: "code",
@@ -2446,7 +2422,7 @@ function xa(e) {
2446
2422
  })
2447
2423
  }), t[2] = a, t[3] = o, t[4] = s) : s = t[4], s;
2448
2424
  }
2449
- function Sa(e) {
2425
+ function ba(e) {
2450
2426
  let t = J(38), { b: n, onOpenFile: r } = e;
2451
2427
  switch (n.type) {
2452
2428
  case "comment": {
@@ -2464,7 +2440,7 @@ function Sa(e) {
2464
2440
  padding: "0",
2465
2441
  children: /* @__PURE__ */ Y(M.Body, {
2466
2442
  padding: "0",
2467
- children: /* @__PURE__ */ Y(xa, {
2443
+ children: /* @__PURE__ */ Y(ya, {
2468
2444
  language: n.language,
2469
2445
  code: n.code
2470
2446
  })
@@ -2482,7 +2458,7 @@ function Sa(e) {
2482
2458
  height: "240px",
2483
2459
  minW: "320px",
2484
2460
  overflow: "hidden",
2485
- children: /* @__PURE__ */ Y(da, {
2461
+ children: /* @__PURE__ */ Y(la, {
2486
2462
  original: n.original,
2487
2463
  modified: n.modified,
2488
2464
  language: n.language,
@@ -2516,7 +2492,7 @@ function Sa(e) {
2516
2492
  }
2517
2493
  case "references": {
2518
2494
  let e;
2519
- t[21] === n.references ? e = t[22] : (e = n.references.map(Ca), t[21] = n.references, t[22] = e);
2495
+ t[21] === n.references ? e = t[22] : (e = n.references.map(xa), t[21] = n.references, t[22] = e);
2520
2496
  let r;
2521
2497
  return t[23] === e ? r = t[24] : (r = /* @__PURE__ */ Y(G, {
2522
2498
  mt: "xs",
@@ -2565,7 +2541,7 @@ function Sa(e) {
2565
2541
  }
2566
2542
  }
2567
2543
  }
2568
- function Ca(e) {
2544
+ function xa(e) {
2569
2545
  return /* @__PURE__ */ Y(x, {
2570
2546
  candidate: {
2571
2547
  source: e,
@@ -2574,13 +2550,13 @@ function Ca(e) {
2574
2550
  children: /* @__PURE__ */ Y(o, { fileName: e })
2575
2551
  }, e);
2576
2552
  }
2577
- function wa(e) {
2553
+ function Sa(e) {
2578
2554
  let t = J(23), { item: n, itemKey: r, isOpen: i, canExpand: a, hasBlocks: o, onToggle: s, onOpenFile: c } = e, l;
2579
- t[0] === Symbol.for("react.memo_cache_sentinel") ? (l = /* @__PURE__ */ Y(ba.Separator, {}), t[0] = l) : l = t[0];
2555
+ t[0] === Symbol.for("react.memo_cache_sentinel") ? (l = /* @__PURE__ */ Y(va.Separator, {}), t[0] = l) : l = t[0];
2580
2556
  let u;
2581
- t[1] === n.indicator ? u = t[2] : (u = /* @__PURE__ */ X(ba.Connector, { children: [l, /* @__PURE__ */ Y(fa, { ind: n.indicator })] }), t[1] = n.indicator, t[2] = u);
2557
+ t[1] === n.indicator ? u = t[2] : (u = /* @__PURE__ */ X(va.Connector, { children: [l, /* @__PURE__ */ Y(ua, { ind: n.indicator })] }), t[1] = n.indicator, t[2] = u);
2582
2558
  let d = i ? "auto" : "20px", f;
2583
- t[3] !== a || t[4] !== i || t[5] !== n.title || t[6] !== r || t[7] !== c || t[8] !== s ? (f = n.title.length > 0 && /* @__PURE__ */ Y(ba.Title, {
2559
+ t[3] !== a || t[4] !== i || t[5] !== n.title || t[6] !== r || t[7] !== c || t[8] !== s ? (f = n.title.length > 0 && /* @__PURE__ */ Y(va.Title, {
2584
2560
  className: "group",
2585
2561
  fontWeight: "normal",
2586
2562
  display: "flex",
@@ -2605,7 +2581,7 @@ function wa(e) {
2605
2581
  minW: "0",
2606
2582
  flex: "1",
2607
2583
  overflow: "hidden",
2608
- children: n.title.map((e, t) => /* @__PURE__ */ Y(ya, {
2584
+ children: n.title.map((e, t) => /* @__PURE__ */ Y(_a, {
2609
2585
  seg: e,
2610
2586
  isClickable: a,
2611
2587
  onOpenFile: c
@@ -2632,33 +2608,33 @@ function wa(e) {
2632
2608
  opacity: 1,
2633
2609
  transform: "translateY(0)",
2634
2610
  transition: "opacity 200ms ease, transform 200ms ease",
2635
- children: n.blocks.map((e, t) => /* @__PURE__ */ Y(A, { children: /* @__PURE__ */ Y(Sa, {
2611
+ children: n.blocks.map((e, t) => /* @__PURE__ */ Y(A, { children: /* @__PURE__ */ Y(ba, {
2636
2612
  b: e,
2637
2613
  onOpenFile: c
2638
2614
  }) }, t))
2639
2615
  }) : null
2640
2616
  }) : null, t[10] = o, t[11] = i, t[12] = n.blocks, t[13] = c, t[14] = p) : p = t[14];
2641
2617
  let m;
2642
- t[15] !== d || t[16] !== f || t[17] !== p ? (m = /* @__PURE__ */ X(ba.Content, {
2618
+ t[15] !== d || t[16] !== f || t[17] !== p ? (m = /* @__PURE__ */ X(va.Content, {
2643
2619
  h: d,
2644
2620
  children: [f, p]
2645
2621
  }), t[15] = d, t[16] = f, t[17] = p, t[18] = m) : m = t[18];
2646
2622
  let h;
2647
- return t[19] !== r || t[20] !== u || t[21] !== m ? (h = /* @__PURE__ */ X(ba.Item, {
2623
+ return t[19] !== r || t[20] !== u || t[21] !== m ? (h = /* @__PURE__ */ X(va.Item, {
2648
2624
  gap: "xs",
2649
2625
  children: [u, m]
2650
2626
  }, r), t[19] = r, t[20] = u, t[21] = m, t[22] = h) : h = t[22], h;
2651
2627
  }
2652
- function Ta(e) {
2628
+ function Ca(e) {
2653
2629
  let t = J(5), n = b(), r = e.linkHandler ?? n, i;
2654
- t[0] === e ? i = t[1] : (i = /* @__PURE__ */ Y(Ea, { ...e }), t[0] = e, t[1] = i);
2630
+ t[0] === e ? i = t[1] : (i = /* @__PURE__ */ Y(wa, { ...e }), t[0] = e, t[1] = i);
2655
2631
  let a;
2656
2632
  return t[2] !== r || t[3] !== i ? (a = /* @__PURE__ */ Y(m, {
2657
2633
  handler: r,
2658
2634
  children: i
2659
2635
  }), t[2] = r, t[3] = i, t[4] = a) : a = t[4], a;
2660
2636
  }
2661
- function Ea(e) {
2637
+ function wa(e) {
2662
2638
  let t = J(14), { data: n, onOpenFile: r } = e, i = b(), a;
2663
2639
  t[0] !== i || t[1] !== r ? (a = i ? (e) => {
2664
2640
  i.open({
@@ -2668,7 +2644,7 @@ function Ea(e) {
2668
2644
  } : r, t[0] = i, t[1] = r, t[2] = a) : a = t[2];
2669
2645
  let o = a, s;
2670
2646
  t[3] === Symbol.for("react.memo_cache_sentinel") ? (s = {}, t[3] = s) : s = t[3];
2671
- let [c, l] = Q(s), u = Da, d;
2647
+ let [c, l] = Q(s), u = Ta, d;
2672
2648
  t[4] === Symbol.for("react.memo_cache_sentinel") ? (d = (e) => {
2673
2649
  l((t) => ({
2674
2650
  ...t,
@@ -2680,7 +2656,7 @@ function Ea(e) {
2680
2656
  let e;
2681
2657
  t[9] !== c || t[10] !== o ? (e = (e, t) => {
2682
2658
  let n = u(e, t), r = (e.blocks?.length ?? 0) > 0, i = (e.expandable ?? !0) && r, a = i ? c[n] ?? !1 : r;
2683
- return /* @__PURE__ */ Y(wa, {
2659
+ return /* @__PURE__ */ Y(Sa, {
2684
2660
  item: e,
2685
2661
  itemKey: n,
2686
2662
  isOpen: a,
@@ -2692,60 +2668,60 @@ function Ea(e) {
2692
2668
  }, t[9] = c, t[10] = o, t[11] = e) : e = t[11], p = n.items.map(e), t[5] = n.items, t[6] = c, t[7] = o, t[8] = p;
2693
2669
  } else p = t[8];
2694
2670
  let m;
2695
- return t[12] === p ? m = t[13] : (m = /* @__PURE__ */ Y(ba.Root, {
2671
+ return t[12] === p ? m = t[13] : (m = /* @__PURE__ */ Y(va.Root, {
2696
2672
  variant: "tool",
2697
2673
  children: p
2698
2674
  }), t[12] = p, t[13] = m), m;
2699
2675
  }
2700
- function Da(e, t) {
2676
+ function Ta(e, t) {
2701
2677
  return e.id ? `id:${e.id}` : `idx:${t}`;
2702
2678
  }
2703
2679
  //#endregion
2704
2680
  //#region src/components/chat-ui/components/tool-invocation-timeline.tsx
2705
- var Oa = (e) => lr(e.tool ?? "").replace(/_/g, "") === "question", ka = (e) => {
2681
+ var Ea = (e) => sr(e.tool ?? "").replace(/_/g, "") === "question", Da = (e) => {
2706
2682
  let t = e.state?.output;
2707
2683
  return typeof t == "string" ? t.trim().length > 0 : Array.isArray(t) ? t.length > 0 : t && typeof t == "object" ? Object.keys(t).length > 0 : t != null;
2708
2684
  };
2709
- function Aa(e) {
2685
+ function Oa(e) {
2710
2686
  let t = J(9), { invocations: n, labeledBlocks: r, hideQuestionForms: i, onOpenFile: a, linkHandler: o } = e, s = i !== void 0 && i, c, l;
2711
2687
  if (t[0] !== s || t[1] !== n || t[2] !== r) {
2712
2688
  l = Symbol.for("react.early_return_sentinel");
2713
2689
  bb0: {
2714
- let e = s ? n.filter(ja) : n;
2690
+ let e = s ? n.filter(ka) : n;
2715
2691
  if (e.length === 0) {
2716
2692
  l = null;
2717
2693
  break bb0;
2718
2694
  }
2719
- c = la(e, { labeledBlocks: r });
2695
+ c = sa(e, { labeledBlocks: r });
2720
2696
  }
2721
2697
  t[0] = s, t[1] = n, t[2] = r, t[3] = c, t[4] = l;
2722
2698
  } else c = t[3], l = t[4];
2723
2699
  if (l !== Symbol.for("react.early_return_sentinel")) return l;
2724
2700
  let u = c, d;
2725
- return t[5] !== u || t[6] !== o || t[7] !== a ? (d = /* @__PURE__ */ Y(Ta, {
2701
+ return t[5] !== u || t[6] !== o || t[7] !== a ? (d = /* @__PURE__ */ Y(Ca, {
2726
2702
  data: u,
2727
2703
  linkHandler: o,
2728
2704
  onOpenFile: a
2729
2705
  }), t[5] = u, t[6] = o, t[7] = a, t[8] = d) : d = t[8], d;
2730
2706
  }
2731
- function ja(e) {
2732
- return !Oa(e) || ka(e);
2707
+ function ka(e) {
2708
+ return !Ea(e) || Da(e);
2733
2709
  }
2734
2710
  //#endregion
2735
2711
  //#region src/components/chat-ui/components/message-parts-renderer.tsx
2736
- var Ma = (e) => e.type === "tool", Na = (e) => e.filename ?? e.url.split("/").pop() ?? "attachment", Pa = /\.(avif|bmp|gif|jpe?g|png|svg|webp)$/i, Fa = (e) => e.mediaType?.startsWith("image/") || Pa.test(Na(e)), Ia = (e) => Fa(e) ? /* @__PURE__ */ Y(z, {
2712
+ var Aa = (e) => e.type === "tool", ja = (e) => e.filename ?? e.url.split("/").pop() ?? "attachment", Ma = /\.(avif|bmp|gif|jpe?g|png|svg|webp)$/i, Na = (e) => e.mediaType?.startsWith("image/") || Ma.test(ja(e)), Pa = (e) => Na(e) ? /* @__PURE__ */ Y(z, {
2737
2713
  src: e.url,
2738
- alt: `${Na(e)} preview thumbnail`,
2714
+ alt: `${ja(e)} preview thumbnail`,
2739
2715
  boxSize: "18px",
2740
2716
  borderRadius: "xs",
2741
2717
  objectFit: "cover"
2742
- }) : void 0, La = (e, t) => {
2718
+ }) : void 0, Fa = (e, t) => {
2743
2719
  if (t) {
2744
2720
  t(e.url);
2745
2721
  return;
2746
2722
  }
2747
2723
  typeof window < "u" && window.open(e.url, "_blank", "noopener,noreferrer");
2748
- }, Ra = (e) => {
2724
+ }, Ia = (e) => {
2749
2725
  if (e.message && e.message.trim().length > 0) return e.message;
2750
2726
  let { errorType: t } = e;
2751
2727
  switch (t) {
@@ -2754,17 +2730,17 @@ var Ma = (e) => e.type === "tool", Na = (e) => e.filename ?? e.url.split("/").po
2754
2730
  case "permission": return "Permission denied.";
2755
2731
  default: return "An error occurred.";
2756
2732
  }
2757
- }, za = {
2733
+ }, La = {
2758
2734
  info: "blue",
2759
2735
  warning: "orange",
2760
2736
  error: "red",
2761
2737
  success: "green",
2762
2738
  loading: "blue"
2763
- }, Ba = (e, t) => {
2739
+ }, Ra = (e, t) => {
2764
2740
  let n = [], r = t;
2765
2741
  for (; r < e.length;) {
2766
2742
  let t = e[r];
2767
- if (!Ma(t) || t.tool === "question" && ln(t.state?.input)) break;
2743
+ if (!Aa(t) || t.tool === "question" && ln(t.state?.input)) break;
2768
2744
  n.push(t), r += 1;
2769
2745
  }
2770
2746
  return {
@@ -2772,19 +2748,19 @@ var Ma = (e) => e.type === "tool", Na = (e) => e.filename ?? e.url.split("/").po
2772
2748
  nextIndex: r - 1
2773
2749
  };
2774
2750
  };
2775
- function Va(e) {
2751
+ function za(e) {
2776
2752
  let t = J(5), n = b(), r = e.linkHandler ?? n, i;
2777
- t[0] === e ? i = t[1] : (i = /* @__PURE__ */ Y(Ha, { ...e }), t[0] = e, t[1] = i);
2753
+ t[0] === e ? i = t[1] : (i = /* @__PURE__ */ Y(Ba, { ...e }), t[0] = e, t[1] = i);
2778
2754
  let a;
2779
2755
  return t[2] !== r || t[3] !== i ? (a = /* @__PURE__ */ Y(m, {
2780
2756
  handler: r,
2781
2757
  children: i
2782
2758
  }), t[2] = r, t[3] = i, t[4] = a) : a = t[4], a;
2783
2759
  }
2784
- function Ha(t) {
2760
+ function Ba(t) {
2785
2761
  let n = J(10), { message: r, streaming: i, hideQuestionForms: a, onOpenFile: s, toolInvocationTimeline: c } = t, l = i !== void 0 && i, u = a !== void 0 && a, d = b(), f = g(), p;
2786
2762
  if (n[0] !== u || n[1] !== f || n[2] !== d || n[3] !== r || n[4] !== s || n[5] !== l || n[6] !== c) {
2787
- let t = y([r], d), i = c ?? Aa, a;
2763
+ let t = y([r], d), i = c ?? Oa, a;
2788
2764
  n[8] === r.parts ? a = n[9] : (a = r.parts ?? [], n[8] = r.parts, n[9] = a);
2789
2765
  let m = a, g = [];
2790
2766
  for (let n = 0; n < m.length; n += 1) {
@@ -2793,7 +2769,7 @@ function Ha(t) {
2793
2769
  case "text":
2794
2770
  g.push(/* @__PURE__ */ Y(h, {
2795
2771
  value: f.get(a) ?? t.get(a) ?? S,
2796
- children: /* @__PURE__ */ Y("div", { children: /* @__PURE__ */ Y(sr, {
2772
+ children: /* @__PURE__ */ Y("div", { children: /* @__PURE__ */ Y(ar, {
2797
2773
  streaming: l,
2798
2774
  children: a.text
2799
2775
  }) })
@@ -2815,10 +2791,10 @@ function Ha(t) {
2815
2791
  break bb0;
2816
2792
  case "tool": {
2817
2793
  if (a.tool === "question" && ln(a.state?.input)) {
2818
- g.push(/* @__PURE__ */ Y(cr, { part: a }, c));
2794
+ g.push(/* @__PURE__ */ Y(or, { part: a }, c));
2819
2795
  break bb0;
2820
2796
  }
2821
- let { invocations: e, nextIndex: t } = Ba(m, n);
2797
+ let { invocations: e, nextIndex: t } = Ra(m, n);
2822
2798
  n = t, g.push(/* @__PURE__ */ Y(A, {
2823
2799
  width: "full",
2824
2800
  children: /* @__PURE__ */ Y(i, {
@@ -2835,11 +2811,11 @@ function Ha(t) {
2835
2811
  g.push(/* @__PURE__ */ Y(A, {
2836
2812
  width: "fit-content",
2837
2813
  children: /* @__PURE__ */ Y(o, {
2838
- fileName: Na(a),
2814
+ fileName: ja(a),
2839
2815
  size: "sm",
2840
2816
  tone: "neutral",
2841
- icon: Ia(a),
2842
- onSelect: () => La(a, s)
2817
+ icon: Pa(a),
2818
+ onSelect: () => Fa(a, s)
2843
2819
  })
2844
2820
  }, c));
2845
2821
  break bb0;
@@ -2851,7 +2827,7 @@ function Ha(t) {
2851
2827
  borderRadius: "xs",
2852
2828
  status: "error",
2853
2829
  colorPalette: "red",
2854
- title: Ra(a),
2830
+ title: Ia(a),
2855
2831
  size: "sm"
2856
2832
  })
2857
2833
  }, c));
@@ -2863,7 +2839,7 @@ function Ha(t) {
2863
2839
  children: /* @__PURE__ */ Y(e, {
2864
2840
  borderRadius: "xs",
2865
2841
  status: a.status === "loading" ? "info" : a.status,
2866
- colorPalette: za[a.status],
2842
+ colorPalette: La[a.status],
2867
2843
  title: a.title,
2868
2844
  icon: a.status === "loading" ? /* @__PURE__ */ Y(W, { size: "sm" }) : void 0,
2869
2845
  size: "sm",
@@ -2880,17 +2856,17 @@ function Ha(t) {
2880
2856
  }
2881
2857
  //#endregion
2882
2858
  //#region src/components/chat-ui/components/message-types.ts
2883
- var Ua = (e) => e === "user" || e === "assistant" || e === "developer" ? e : "assistant", Wa = (e) => e.text.trim().length > 0, Ga = (e) => e.title.trim().length > 0 || !!e.message?.trim(), Ka = (e) => {
2859
+ var Va = (e) => e === "user" || e === "assistant" || e === "developer" ? e : "assistant", Ha = (e) => e.text.trim().length > 0, Ua = (e) => e.title.trim().length > 0 || !!e.message?.trim(), Wa = (e) => {
2884
2860
  switch (e.type) {
2885
2861
  case "text":
2886
- case "reasoning": return Wa(e);
2862
+ case "reasoning": return Ha(e);
2887
2863
  case "tool":
2888
2864
  case "file":
2889
2865
  case "error": return !0;
2890
- case "alert": return Ga(e);
2866
+ case "alert": return Ua(e);
2891
2867
  default: return !1;
2892
2868
  }
2893
- }, qa = (e) => e.type === "reasoning" || e.type === "tool" && e.tool.toLowerCase() !== "question", Ja = (e) => e.role === "user" || e.parts.length === 0 ? !1 : e.parts.every(qa), Ya = (e) => {
2869
+ }, Ga = (e) => e.type === "reasoning" || e.type === "tool" && e.tool.toLowerCase() !== "question", Ka = (e) => e.role === "user" || e.parts.length === 0 ? !1 : e.parts.every(Ga), qa = (e) => {
2894
2870
  if (e.length === 0) return null;
2895
2871
  let [t, ...n] = e;
2896
2872
  return t ? {
@@ -2900,12 +2876,12 @@ var Ua = (e) => e === "user" || e === "assistant" || e === "developer" ? e : "as
2900
2876
  modelId: n.at(-1)?.modelId ?? t.modelId,
2901
2877
  providerId: n.at(-1)?.providerId ?? t.providerId
2902
2878
  } : null;
2903
- }, Xa = (e, t = {}) => {
2879
+ }, Ja = (e, t = {}) => {
2904
2880
  let n = [], r = [], i = () => {
2905
2881
  r = [];
2906
2882
  };
2907
2883
  for (let t of e) {
2908
- let e = (t.parts ?? []).filter(Ka);
2884
+ let e = (t.parts ?? []).filter(Wa);
2909
2885
  if (e.length === 0) continue;
2910
2886
  let a = e.length === t.parts.length ? t : {
2911
2887
  ...t,
@@ -2915,7 +2891,7 @@ var Ua = (e) => e === "user" || e === "assistant" || e === "developer" ? e : "as
2915
2891
  i(), n.push(a);
2916
2892
  continue;
2917
2893
  }
2918
- if (Ja(a)) {
2894
+ if (Ka(a)) {
2919
2895
  r.push(a);
2920
2896
  continue;
2921
2897
  }
@@ -2929,14 +2905,14 @@ var Ua = (e) => e === "user" || e === "assistant" || e === "developer" ? e : "as
2929
2905
  n.push(a);
2930
2906
  }
2931
2907
  if (t.streaming && r.length > 0) {
2932
- let e = Ya(r);
2908
+ let e = qa(r);
2933
2909
  e && n.push(e);
2934
2910
  }
2935
2911
  return n;
2936
- }, Za = (e) => {
2912
+ }, Ya = (e) => {
2937
2913
  let t = e.at(-1);
2938
- return t?.role === "assistant" && t.parts.some((e) => e.type === "text" && Wa(e)) ? t.id : null;
2939
- }, Qa = (e) => {
2914
+ return t?.role === "assistant" && t.parts.some((e) => e.type === "text" && Ha(e)) ? t.id : null;
2915
+ }, Xa = (e) => {
2940
2916
  let t = [], n = [];
2941
2917
  for (let r of e) r.role === "user" ? t.push({
2942
2918
  userMessage: r,
@@ -2946,17 +2922,17 @@ var Ua = (e) => e === "user" || e === "assistant" || e === "developer" ? e : "as
2946
2922
  groups: t,
2947
2923
  leadingResponses: n
2948
2924
  };
2949
- }, $a = (e) => {
2925
+ }, Za = (e) => {
2950
2926
  let t = J(18), { message: n, streaming: r, hideQuestionForms: i, animate: a, showAssistantActions: o } = e, s = i !== void 0 && i, c = a !== void 0 && a, l;
2951
- t[0] === n.role ? l = t[1] : (l = Ua(n.role), t[0] = n.role, t[1] = l);
2952
- let u = l, d = u === "user" || u === "assistant" && o, f = c ? Qn : void 0, p = r && u === "assistant", m;
2953
- t[2] !== s || t[3] !== n || t[4] !== p ? (m = /* @__PURE__ */ Y(Va, {
2927
+ t[0] === n.role ? l = t[1] : (l = Va(n.role), t[0] = n.role, t[1] = l);
2928
+ let u = l, d = u === "user" || u === "assistant" && o, f = c ? Xn : void 0, p = r && u === "assistant", m;
2929
+ t[2] !== s || t[3] !== n || t[4] !== p ? (m = /* @__PURE__ */ Y(za, {
2954
2930
  message: n,
2955
2931
  streaming: p,
2956
2932
  hideQuestionForms: s
2957
2933
  }), t[2] = s, t[3] = n, t[4] = p, t[5] = m) : m = t[5];
2958
2934
  let h;
2959
- t[6] !== u || t[7] !== n || t[8] !== d ? (h = d ? /* @__PURE__ */ Y(ar, {
2935
+ t[6] !== u || t[7] !== n || t[8] !== d ? (h = d ? /* @__PURE__ */ Y(rr, {
2960
2936
  message: n,
2961
2937
  alwaysVisible: u === "user",
2962
2938
  copyAlwaysVisible: u !== "user"
@@ -2972,16 +2948,16 @@ var Ua = (e) => e === "user" || e === "assistant" || e === "developer" ? e : "as
2972
2948
  ...f,
2973
2949
  children: g
2974
2950
  }), t[14] = u, t[15] = f, t[16] = g, t[17] = _) : _ = t[17], _;
2975
- }, eo = (e) => {
2951
+ }, Qa = (e) => {
2976
2952
  let t = J(6), { message: n, streaming: r, hideQuestionForms: i, animate: a, showAssistantActions: o } = e, s;
2977
- return t[0] !== a || t[1] !== i || t[2] !== n || t[3] !== o || t[4] !== r ? (s = /* @__PURE__ */ Y(A, { children: /* @__PURE__ */ Y($a, {
2953
+ return t[0] !== a || t[1] !== i || t[2] !== n || t[3] !== o || t[4] !== r ? (s = /* @__PURE__ */ Y(A, { children: /* @__PURE__ */ Y(Za, {
2978
2954
  message: n,
2979
2955
  streaming: r,
2980
2956
  hideQuestionForms: i,
2981
2957
  animate: a,
2982
2958
  showAssistantActions: o
2983
2959
  }) }), t[0] = a, t[1] = i, t[2] = n, t[3] = o, t[4] = r, t[5] = s) : s = t[5], s;
2984
- }, to = (e) => {
2960
+ }, $a = (e) => {
2985
2961
  let t = J(7), { label: n, onClick: r, actionPanel: i } = e, a = i ? "space-between" : "flex-end", o;
2986
2962
  t[0] !== n || t[1] !== r ? (o = /* @__PURE__ */ Y(j, {
2987
2963
  size: "2xs",
@@ -3008,37 +2984,37 @@ var Ua = (e) => e === "user" || e === "assistant" || e === "developer" ? e : "as
3008
2984
  pointerEvents: "none",
3009
2985
  children: [i, o]
3010
2986
  }), t[3] = i, t[4] = a, t[5] = o, t[6] = s) : s = t[6], s;
3011
- }, no = "min(10vh, 4rem)", ro = "min(70dvh, calc(100dvh - 12rem), 22rem)", io = 1, ao = (e) => e.parts.reduce((e, t) => t.type === "text" ? {
2987
+ }, eo = "min(10vh, 4rem)", to = "min(70dvh, calc(100dvh - 12rem), 22rem)", no = 1, ro = (e) => e.parts.reduce((e, t) => t.type === "text" ? {
3012
2988
  lineCount: e.lineCount + t.text.split(/\r\n|\r|\n/).length,
3013
2989
  textLength: e.textLength + t.text.length
3014
2990
  } : e, {
3015
2991
  lineCount: 0,
3016
2992
  textLength: 0
3017
- }), oo = (e) => {
2993
+ }), io = (e) => {
3018
2994
  if (e.role !== "user") return !1;
3019
- let { lineCount: t, textLength: n } = ao(e);
2995
+ let { lineCount: t, textLength: n } = ro(e);
3020
2996
  return n > 360 || t > 4;
3021
- }, so = (e, t) => {
2997
+ }, ao = (e, t) => {
3022
2998
  let n = Math.max(0, e.scrollHeight - e.clientHeight);
3023
- return t === 0 || n <= io ? !1 : t < 0 ? e.scrollTop > io : e.scrollTop < n - io;
3024
- }, co = 3, lo = 20, uo = 1, fo = (e, t) => Math.abs(e.scrollTop - t.scrollTop) <= uo && Math.abs(e.totalSize - t.totalSize) <= uo, po = (e, t) => !!e && Math.max(e.scrollHeight, t) <= e.clientHeight, mo = (e, t) => ({
2999
+ return t === 0 || n <= no ? !1 : t < 0 ? e.scrollTop > no : e.scrollTop < n - no;
3000
+ }, oo = 3, so = 20, co = 1, lo = (e, t) => Math.abs(e.scrollTop - t.scrollTop) <= co && Math.abs(e.totalSize - t.totalSize) <= co, uo = (e, t) => !!e && Math.max(e.scrollHeight, t) <= e.clientHeight, fo = (e, t) => ({
3025
3001
  scrollTop: e?.scrollTop ?? 0,
3026
3002
  totalSize: t
3027
- }), ho = (e) => {
3003
+ }), po = (e) => {
3028
3004
  let t = J(8), { itemCount: n, onReady: r, scrollRef: i, totalSize: a } = e, o = ye(r), s, c;
3029
3005
  t[0] === r ? (s = t[1], c = t[2]) : (s = () => {
3030
3006
  o.current = r;
3031
3007
  }, c = [r], t[0] = r, t[1] = s, t[2] = c), Z(s, c);
3032
3008
  let l, u;
3033
3009
  t[3] !== n || t[4] !== i || t[5] !== a ? (l = () => {
3034
- if (n === 0 || typeof requestAnimationFrame > "u" || po(i.current, a)) {
3010
+ if (n === 0 || typeof requestAnimationFrame > "u" || uo(i.current, a)) {
3035
3011
  o.current?.();
3036
3012
  return;
3037
3013
  }
3038
3014
  let e = 0, t = 0, r = 0, s = null, c = () => {
3039
3015
  t += 1;
3040
- let n = mo(i.current, a);
3041
- if (r = s && fo(n, s) ? r + 1 : 0, s = n, r >= co || t >= lo) {
3016
+ let n = fo(i.current, a);
3017
+ if (r = s && lo(n, s) ? r + 1 : 0, s = n, r >= oo || t >= so) {
3042
3018
  o.current?.();
3043
3019
  return;
3044
3020
  }
@@ -3050,8 +3026,8 @@ var Ua = (e) => e === "user" || e === "assistant" || e === "developer" ? e : "as
3050
3026
  i,
3051
3027
  a
3052
3028
  ], t[3] = n, t[4] = i, t[5] = a, t[6] = l, t[7] = u) : (l = t[6], u = t[7]), ve(l, u);
3053
- }, go = 720, _o = 1, vo = 4, yo = 8, bo = (e, t) => {
3054
- let n = Za(e);
3029
+ }, mo = 720, ho = 1, go = 4, _o = 8, vo = (e, t) => {
3030
+ let n = Ya(e);
3055
3031
  return [...e.map((e) => ({
3056
3032
  type: "leading-response",
3057
3033
  key: e.id,
@@ -3063,31 +3039,31 @@ var Ua = (e) => e === "user" || e === "assistant" || e === "developer" ? e : "as
3063
3039
  group: e,
3064
3040
  groupIndex: t
3065
3041
  }))];
3066
- }, xo = (e, t) => {
3042
+ }, yo = (e, t) => {
3067
3043
  if (e === 0) return 0;
3068
- let n = e * go + (e - 1) * yo;
3044
+ let n = e * mo + (e - 1) * _o;
3069
3045
  return Math.max(n - t, 0);
3070
- }, So = (e) => e?.clientHeight || _o, Co = (e) => {
3071
- so(e.currentTarget, e.deltaY) && e.stopPropagation();
3046
+ }, bo = (e) => e?.clientHeight || ho, xo = (e) => {
3047
+ ao(e.currentTarget, e.deltaY) && e.stopPropagation();
3048
+ }, So = (e, t) => {
3049
+ if (e) return t ? to : eo;
3050
+ }, Co = (e) => {
3051
+ if (e) return to;
3072
3052
  }, wo = (e, t) => {
3073
- if (e) return t ? ro : no;
3074
- }, To = (e) => {
3075
- if (e) return ro;
3076
- }, Eo = (e, t) => {
3077
3053
  if (e) return t ? "expanded" : "collapsed";
3078
- }, Do = (e) => {
3054
+ }, To = (e) => {
3079
3055
  let t = J(84), { group: n, streaming: r, hideQuestionForms: i, isExpanded: a, animate: o, onToggleStickyMessage: s } = e, c, l, u, d, f, p, m, h, g, _, v, y, b, x, S, C, w, T, E, D, O;
3080
3056
  if (t[0] !== o || t[1] !== n.responses || t[2] !== n.userMessage || t[3] !== a || t[4] !== s) {
3081
- m = oo(n.userMessage), h = m && a;
3082
- let e = wo(m, a), r;
3057
+ m = io(n.userMessage), h = m && a;
3058
+ let e = So(m, a), r;
3083
3059
  t[26] !== n.userMessage.id || t[27] !== s ? (r = () => s(n.userMessage.id), t[26] = n.userMessage.id, t[27] = s, t[28] = r) : r = t[28], O = r;
3084
3060
  let i;
3085
- t[29] === n.responses ? i = t[30] : (i = Za(n.responses), t[29] = n.responses, t[30] = i), p = i, f = A, d = A, D = "sticky", v = "0", y = 1, u = dt.Root, w = "user", T = n.userMessage.delivery ?? "sent", E = o ? Qn : void 0, l = dt.Content, _ = "user", b = e, x = "hidden", S = m ? "0" : void 0, C = m ? "relative" : void 0, c = A, g = Eo(m, a), t[0] = o, t[1] = n.responses, t[2] = n.userMessage, t[3] = a, t[4] = s, t[5] = c, t[6] = l, t[7] = u, t[8] = d, t[9] = f, t[10] = p, t[11] = m, t[12] = h, t[13] = g, t[14] = _, t[15] = v, t[16] = y, t[17] = b, t[18] = x, t[19] = S, t[20] = C, t[21] = w, t[22] = T, t[23] = E, t[24] = D, t[25] = O;
3061
+ t[29] === n.responses ? i = t[30] : (i = Ya(n.responses), t[29] = n.responses, t[30] = i), p = i, f = A, d = A, D = "sticky", v = "0", y = 1, u = dt.Root, w = "user", T = n.userMessage.delivery ?? "sent", E = o ? Xn : void 0, l = dt.Content, _ = "user", b = e, x = "hidden", S = m ? "0" : void 0, C = m ? "relative" : void 0, c = A, g = wo(m, a), t[0] = o, t[1] = n.responses, t[2] = n.userMessage, t[3] = a, t[4] = s, t[5] = c, t[6] = l, t[7] = u, t[8] = d, t[9] = f, t[10] = p, t[11] = m, t[12] = h, t[13] = g, t[14] = _, t[15] = v, t[16] = y, t[17] = b, t[18] = x, t[19] = S, t[20] = C, t[21] = w, t[22] = T, t[23] = E, t[24] = D, t[25] = O;
3086
3062
  } else c = t[5], l = t[6], u = t[7], d = t[8], f = t[9], p = t[10], m = t[11], h = t[12], g = t[13], _ = t[14], v = t[15], y = t[16], b = t[17], x = t[18], S = t[19], C = t[20], w = t[21], T = t[22], E = t[23], D = t[24], O = t[25];
3087
3063
  let k;
3088
- t[31] === h ? k = t[32] : (k = To(h), t[31] = h, t[32] = k);
3089
- let j = h ? "auto" : "visible", M = m ? "xs" : void 0, N = m ? "xs" : void 0, P = h ? "3rem" : void 0, F = h ? Co : void 0, I;
3090
- t[33] === n.userMessage ? I = t[34] : (I = /* @__PURE__ */ Y(Va, { message: n.userMessage }), t[33] = n.userMessage, t[34] = I);
3064
+ t[31] === h ? k = t[32] : (k = Co(h), t[31] = h, t[32] = k);
3065
+ let j = h ? "auto" : "visible", M = m ? "xs" : void 0, N = m ? "xs" : void 0, P = h ? "3rem" : void 0, F = h ? xo : void 0, I;
3066
+ t[33] === n.userMessage ? I = t[34] : (I = /* @__PURE__ */ Y(za, { message: n.userMessage }), t[33] = n.userMessage, t[34] = I);
3091
3067
  let L;
3092
3068
  t[35] !== c || t[36] !== g || t[37] !== k || t[38] !== j || t[39] !== M || t[40] !== N || t[41] !== P || t[42] !== F || t[43] !== I ? (L = /* @__PURE__ */ Y(c, {
3093
3069
  "data-sticky-user-message-content": g,
@@ -3104,15 +3080,15 @@ var Ua = (e) => e === "user" || e === "assistant" || e === "developer" ? e : "as
3104
3080
  children: I
3105
3081
  }), t[35] = c, t[36] = g, t[37] = k, t[38] = j, t[39] = M, t[40] = N, t[41] = P, t[42] = F, t[43] = I, t[44] = L) : L = t[44];
3106
3082
  let R;
3107
- t[45] !== n.userMessage || t[46] !== m || t[47] !== a || t[48] !== O ? (R = m ? /* @__PURE__ */ Y(to, {
3083
+ t[45] !== n.userMessage || t[46] !== m || t[47] !== a || t[48] !== O ? (R = m ? /* @__PURE__ */ Y($a, {
3108
3084
  label: a ? "Show less" : "Show more",
3109
3085
  onClick: O,
3110
- actionPanel: /* @__PURE__ */ Y(ar, {
3086
+ actionPanel: /* @__PURE__ */ Y(rr, {
3111
3087
  message: n.userMessage,
3112
3088
  alwaysVisible: !0,
3113
3089
  copyAlwaysVisible: !1
3114
3090
  })
3115
- }) : /* @__PURE__ */ Y(ar, {
3091
+ }) : /* @__PURE__ */ Y(rr, {
3116
3092
  message: n.userMessage,
3117
3093
  alwaysVisible: !0,
3118
3094
  copyAlwaysVisible: !1
@@ -3143,7 +3119,7 @@ var Ua = (e) => e === "user" || e === "assistant" || e === "developer" ? e : "as
3143
3119
  let H;
3144
3120
  if (t[71] !== p || t[72] !== n.responses || t[73] !== i || t[74] !== r) {
3145
3121
  let e;
3146
- t[76] !== p || t[77] !== i || t[78] !== r ? (e = (e) => /* @__PURE__ */ Y(eo, {
3122
+ t[76] !== p || t[77] !== i || t[78] !== r ? (e = (e) => /* @__PURE__ */ Y(Qa, {
3147
3123
  message: e,
3148
3124
  streaming: r && e.id === p,
3149
3125
  hideQuestionForms: i,
@@ -3152,11 +3128,11 @@ var Ua = (e) => e === "user" || e === "assistant" || e === "developer" ? e : "as
3152
3128
  } else H = t[75];
3153
3129
  let U;
3154
3130
  return t[80] !== f || t[81] !== V || t[82] !== H ? (U = /* @__PURE__ */ X(f, { children: [V, H] }), t[80] = f, t[81] = V, t[82] = H, t[83] = U) : U = t[83], U;
3155
- }, Oo = (e) => {
3131
+ }, Eo = (e) => {
3156
3132
  let t = J(16), { item: n, groupCount: r, streaming: i, hideActiveQuestionForms: a, expandedStickyMessageIds: o, animate: s, onToggleStickyMessage: c } = e;
3157
3133
  if (n.type === "leading-response") {
3158
3134
  let e = i && r === 0 && n.showAssistantActions, o = r > 0 || a, c;
3159
- return t[0] !== s || t[1] !== n.message || t[2] !== n.showAssistantActions || t[3] !== e || t[4] !== o ? (c = /* @__PURE__ */ Y($a, {
3135
+ return t[0] !== s || t[1] !== n.message || t[2] !== n.showAssistantActions || t[3] !== e || t[4] !== o ? (c = /* @__PURE__ */ Y(Za, {
3160
3136
  message: n.message,
3161
3137
  streaming: e,
3162
3138
  hideQuestionForms: o,
@@ -3167,7 +3143,7 @@ var Ua = (e) => e === "user" || e === "assistant" || e === "developer" ? e : "as
3167
3143
  let l = n.group, u = i && n.groupIndex === r - 1, d = n.groupIndex < r - 1 || a, f;
3168
3144
  t[6] !== o || t[7] !== n.group.userMessage.id ? (f = o.has(n.group.userMessage.id), t[6] = o, t[7] = n.group.userMessage.id, t[8] = f) : f = t[8];
3169
3145
  let p;
3170
- return t[9] !== s || t[10] !== n.group || t[11] !== c || t[12] !== u || t[13] !== d || t[14] !== f ? (p = /* @__PURE__ */ Y(Do, {
3146
+ return t[9] !== s || t[10] !== n.group || t[11] !== c || t[12] !== u || t[13] !== d || t[14] !== f ? (p = /* @__PURE__ */ Y(To, {
3171
3147
  group: l,
3172
3148
  streaming: u,
3173
3149
  hideQuestionForms: d,
@@ -3175,21 +3151,21 @@ var Ua = (e) => e === "user" || e === "assistant" || e === "developer" ? e : "as
3175
3151
  animate: s,
3176
3152
  onToggleStickyMessage: c
3177
3153
  }), t[9] = s, t[10] = n.group, t[11] = c, t[12] = u, t[13] = d, t[14] = f, t[15] = p) : p = t[15], p;
3178
- }, ko = (e) => {
3179
- let { leadingResponses: t, groups: n, streaming: r, hideActiveQuestionForms: i, expandedStickyMessageIds: o, onToggleStickyMessage: s, onReady: c } = e, { scrollRef: l } = rt(), u = bo(t, n), d = tr(u.map((e) => e.key)), f = So(l.current), p = a({
3154
+ }, Do = (e) => {
3155
+ let { leadingResponses: t, groups: n, streaming: r, hideActiveQuestionForms: i, expandedStickyMessageIds: o, onToggleStickyMessage: s, onReady: c } = e, { scrollRef: l } = rt(), u = vo(t, n), d = $n(u.map((e) => e.key)), f = bo(l.current), p = a({
3180
3156
  count: u.length,
3181
3157
  getScrollElement: () => l.current,
3182
- estimateSize: () => go,
3158
+ estimateSize: () => mo,
3183
3159
  getItemKey: (e) => u[e]?.key ?? e,
3184
- overscan: vo,
3185
- gap: yo,
3160
+ overscan: go,
3161
+ gap: _o,
3186
3162
  initialRect: {
3187
3163
  width: 0,
3188
3164
  height: f
3189
3165
  },
3190
- initialOffset: () => xo(u.length, f)
3166
+ initialOffset: () => yo(u.length, f)
3191
3167
  }), m = p.getTotalSize();
3192
- return ho({
3168
+ return po({
3193
3169
  itemCount: u.length,
3194
3170
  onReady: c,
3195
3171
  scrollRef: l,
@@ -3211,7 +3187,7 @@ var Ua = (e) => e === "user" || e === "assistant" || e === "developer" ? e : "as
3211
3187
  left: "0",
3212
3188
  width: "100%",
3213
3189
  style: { top: e.start },
3214
- children: /* @__PURE__ */ Y(Oo, {
3190
+ children: /* @__PURE__ */ Y(Eo, {
3215
3191
  item: t,
3216
3192
  groupCount: n.length,
3217
3193
  streaming: r,
@@ -3224,7 +3200,7 @@ var Ua = (e) => e === "user" || e === "assistant" || e === "developer" ? e : "as
3224
3200
  })
3225
3201
  })
3226
3202
  });
3227
- }, Ao = (e) => {
3203
+ }, Oo = (e) => {
3228
3204
  let { queuedFollowUps: t, defaultValue: n, onChange: r, onSubmit: i, onUpdate: a, onCreate: o, onRestoreDraft: s, canRestoreDraft: c = !1, disabled: l = !1, onSelect: u, onDiscard: d } = e, [f, p] = Q(null), [m, h] = Q({}), [g, _] = Q(null), [v, y] = Q(0), [b, x] = Q({}), [S, C] = Q(null), [w, T] = Q(!1), [E, D] = Q(null), [O, k] = Q(null), A = t.find((e) => e.id === f?.id), j = !(!f || A), M = !!(f && A && f.revision && f.revision !== A.revision), N = f ? m[f.id]?.text ?? f.prompt : n, P = g?.text === n ? g.state : void 0, F = f ? m[f.id]?.state : P, I = (e) => {
3229
3205
  p(e), C(null), k(null), u?.(e), y((e) => e + 1);
3230
3206
  };
@@ -3336,7 +3312,7 @@ var Ua = (e) => e === "user" || e === "assistant" || e === "developer" ? e : "as
3336
3312
  stale: M,
3337
3313
  dirtyItemIds: Object.keys(m).filter((e) => m[e].text !== t.find((t) => t.id === e)?.prompt)
3338
3314
  };
3339
- }, jo = (e) => {
3315
+ }, ko = (e) => {
3340
3316
  let t = J(51), { conversationKey: n, recentUserMessages: r, actions: i, attachmentActions: a, attachedResources: o, attachmentList: s, chatInputAutoFocus: c, chatInputPlaceholder: l, chatInputQuestionPrompt: u, composerDecision: d, chatInputCommands: f, hasWorkspaceHub: p, inputDisabled: m, submitDisabled: h, onAttachFiles: g, onAttachText: _, onClearAttachments: v, onInterrupt: y, queuedComposer: b, streaming: x } = e, { editing: S, hasQueuedFollowUps: C } = e, w = b.createNew ? "Create new queue item" : "Update", T = b.updating ? "Saving…" : w, E;
3341
3317
  t[0] !== S || t[1] !== m || t[2] !== b ? (E = (e) => {
3342
3318
  e.key !== "Escape" || e.defaultPrevented || e.nativeEvent.isComposing || !S || m || b.updating || !e.currentTarget.contains(e.target) || (e.preventDefault(), e.stopPropagation(), b.discard());
@@ -3352,7 +3328,7 @@ var Ua = (e) => e === "user" || e === "assistant" || e === "developer" ? e : "as
3352
3328
  children: "Cancel"
3353
3329
  }) : null, t[7] = S, t[8] = m, t[9] = b.discard, t[10] = b.updating, t[11] = N) : N = t[11];
3354
3330
  let P = m || b.updating, F = h || S && b.stale, I = !S && C, L = S ? w : void 0, R = S ? T : void 0, z;
3355
- t[12] !== i || t[13] !== o || t[14] !== a || t[15] !== s || t[16] !== c || t[17] !== f || t[18] !== l || t[19] !== u || t[20] !== d || t[21] !== S || t[22] !== p || t[23] !== g || t[24] !== _ || t[25] !== v || t[26] !== b.change || t[27] !== b.changeSelection || t[28] !== b.changeState || t[29] !== b.focusSignal || t[30] !== b.initialSelection || t[31] !== b.submit || t[32] !== r || t[33] !== D || t[34] !== R || t[35] !== O || t[36] !== k || t[37] !== M || t[38] !== N || t[39] !== P || t[40] !== F || t[41] !== I || t[42] !== L ? (z = /* @__PURE__ */ Y(Zn, {
3331
+ t[12] !== i || t[13] !== o || t[14] !== a || t[15] !== s || t[16] !== c || t[17] !== f || t[18] !== l || t[19] !== u || t[20] !== d || t[21] !== S || t[22] !== p || t[23] !== g || t[24] !== _ || t[25] !== v || t[26] !== b.change || t[27] !== b.changeSelection || t[28] !== b.changeState || t[29] !== b.focusSignal || t[30] !== b.initialSelection || t[31] !== b.submit || t[32] !== r || t[33] !== D || t[34] !== R || t[35] !== O || t[36] !== k || t[37] !== M || t[38] !== N || t[39] !== P || t[40] !== F || t[41] !== I || t[42] !== L ? (z = /* @__PURE__ */ Y(Yn, {
3356
3332
  recentUserMessages: r,
3357
3333
  placeholder: l,
3358
3334
  defaultState: O,
@@ -3385,7 +3361,7 @@ var Ua = (e) => e === "user" || e === "assistant" || e === "developer" ? e : "as
3385
3361
  commands: f
3386
3362
  }, D), t[12] = i, t[13] = o, t[14] = a, t[15] = s, t[16] = c, t[17] = f, t[18] = l, t[19] = u, t[20] = d, t[21] = S, t[22] = p, t[23] = g, t[24] = _, t[25] = v, t[26] = b.change, t[27] = b.changeSelection, t[28] = b.changeState, t[29] = b.focusSignal, t[30] = b.initialSelection, t[31] = b.submit, t[32] = r, t[33] = D, t[34] = R, t[35] = O, t[36] = k, t[37] = M, t[38] = N, t[39] = P, t[40] = F, t[41] = I, t[42] = L, t[43] = z) : z = t[43];
3387
3363
  let B;
3388
- t[44] !== S || t[45] !== b ? (B = /* @__PURE__ */ Y(Mo, {
3364
+ t[44] !== S || t[45] !== b ? (B = /* @__PURE__ */ Y(Ao, {
3389
3365
  queuedComposer: b,
3390
3366
  editing: S
3391
3367
  }), t[44] = S, t[45] = b, t[46] = B) : B = t[46];
@@ -3394,7 +3370,7 @@ var Ua = (e) => e === "user" || e === "assistant" || e === "developer" ? e : "as
3394
3370
  onKeyDown: E,
3395
3371
  children: [z, B]
3396
3372
  }), t[47] = E, t[48] = z, t[49] = B, t[50] = V) : V = t[50], V;
3397
- }, Mo = (e) => {
3373
+ }, Ao = (e) => {
3398
3374
  let t = J(4), { queuedComposer: n, editing: r } = e, i = r && n.stale, a = n.error ?? (i ? "This request changed. Your edit is kept; select the saved request again before updating." : n.notice);
3399
3375
  if (!a) return null;
3400
3376
  let o = !!(n.error || i), s = o ? "fg.error" : "fg.muted", c = o ? "alert" : "status", l;
@@ -3406,7 +3382,7 @@ var Ua = (e) => e === "user" || e === "assistant" || e === "developer" ? e : "as
3406
3382
  "aria-label": "Queued edit notice",
3407
3383
  children: a
3408
3384
  }), t[0] = a, t[1] = s, t[2] = c, t[3] = l) : l = t[3], l;
3409
- }, No = (e, { context: t }, n) => {
3385
+ }, jo = (e, { context: t }, n) => {
3410
3386
  if (![
3411
3387
  "ArrowUp",
3412
3388
  "ArrowDown",
@@ -3421,7 +3397,7 @@ var Ua = (e) => e === "user" || e === "assistant" || e === "developer" ? e : "as
3421
3397
  x: o.left + (o.width - (t.collisionRect?.width ?? 0)) / 2,
3422
3398
  y: o.top + (o.height - (t.collisionRect?.height ?? 0)) / 2
3423
3399
  };
3424
- }, Po = (e) => {
3400
+ }, Mo = (e) => {
3425
3401
  let { item: t, index: n, kind: r } = e, i = $e({
3426
3402
  id: `${t.id}:${r}`,
3427
3403
  disabled: !!(t.sending || t.steeringDelivery),
@@ -3455,7 +3431,7 @@ var Ua = (e) => e === "user" || e === "assistant" || e === "developer" ? e : "as
3455
3431
  pointerEvents: "none",
3456
3432
  ...a
3457
3433
  });
3458
- }, Fo = (e) => {
3434
+ }, No = (e) => {
3459
3435
  let { visible: t, targeted: n, reason: r } = e, i = $e({
3460
3436
  id: "queue-send-now",
3461
3437
  disabled: !t,
@@ -3477,7 +3453,7 @@ var Ua = (e) => e === "user" || e === "assistant" || e === "developer" ? e : "as
3477
3453
  children: [/* @__PURE__ */ Y(Ce, { size: 14 }), /* @__PURE__ */ Y(K, { children: "drop here to send now" })]
3478
3454
  })
3479
3455
  }) : null;
3480
- }, Io = (e) => {
3456
+ }, Po = (e) => {
3481
3457
  let { item: t, index: n, editor: r, source: i, destination: a, unavailableReason: o, editing: c, onEdit: l, onRemove: u } = e, d = !!(t.sending || t.steeringDelivery), f = Qe({
3482
3458
  id: t.id,
3483
3459
  data: { item: t },
@@ -3571,17 +3547,17 @@ var Ua = (e) => e === "user" || e === "assistant" || e === "developer" ? e : "as
3571
3547
  children: /* @__PURE__ */ Y(Ke, { size: 14 })
3572
3548
  })
3573
3549
  }) : null,
3574
- /* @__PURE__ */ Y(Po, {
3550
+ /* @__PURE__ */ Y(Mo, {
3575
3551
  item: t,
3576
3552
  index: n,
3577
3553
  kind: "before"
3578
3554
  }),
3579
- /* @__PURE__ */ Y(Po, {
3555
+ /* @__PURE__ */ Y(Mo, {
3580
3556
  item: t,
3581
3557
  index: n,
3582
3558
  kind: "combine"
3583
3559
  }),
3584
- /* @__PURE__ */ Y(Po, {
3560
+ /* @__PURE__ */ Y(Mo, {
3585
3561
  item: t,
3586
3562
  index: n,
3587
3563
  kind: "after"
@@ -3590,7 +3566,7 @@ var Ua = (e) => e === "user" || e === "assistant" || e === "developer" ? e : "as
3590
3566
  a === "after" ? /* @__PURE__ */ Y(s, { bottom: "0" }) : null
3591
3567
  ]
3592
3568
  });
3593
- }, Lo = (e) => JSON.stringify([e.model, Object.entries(e.params ?? {}).sort(([e], [t]) => e.localeCompare(t))]), Ro = (e) => {
3569
+ }, Fo = (e) => JSON.stringify([e.model, Object.entries(e.params ?? {}).sort(([e], [t]) => e.localeCompare(t))]), Io = (e) => {
3594
3570
  let t = J(87), { items: r, editingItemId: i, editor: a, retainedEditor: o, retainedEditorPosition: s, dirtyItemIds: c, steeringUnavailableReason: l, onEdit: u, onRemove: d, onMove: f, onSteer: m, onCombine: h } = e, g;
3595
3571
  t[0] === c ? g = t[1] : (g = c === void 0 ? [] : c, t[0] = c, t[1] = g);
3596
3572
  let _ = g, v;
@@ -3600,20 +3576,20 @@ var Ua = (e) => e === "user" || e === "assistant" || e === "developer" ? e : "as
3600
3576
  let x = b, [S, C] = Q(null), w;
3601
3577
  t[5] === Symbol.for("react.memo_cache_sentinel") ? (w = { activationConstraint: { distance: 4 } }, t[5] = w) : w = t[5];
3602
3578
  let T;
3603
- t[6] === Symbol.for("react.memo_cache_sentinel") ? (T = { coordinateGetter: (e, t) => No(e, t, C) }, t[6] = T) : T = t[6];
3579
+ t[6] === Symbol.for("react.memo_cache_sentinel") ? (T = { coordinateGetter: (e, t) => jo(e, t, C) }, t[6] = T) : T = t[6];
3604
3580
  let E = tt(et(Ye, w), et(Je, T)), [D, O] = Q(null), k;
3605
3581
  t[7] === Symbol.for("react.memo_cache_sentinel") ? (k = [], t[7] = k) : k = t[7];
3606
3582
  let [j, M] = Q(k), [N, P] = Q(null), [F, I] = Q(null), [L, R] = Q(!1);
3607
3583
  if (!r.length && !o) return null;
3608
3584
  let z;
3609
- t[8] !== r || t[9] !== s ? (z = zo(r, s), t[8] = r, t[9] = s, t[10] = z) : z = t[10];
3585
+ t[8] !== r || t[9] !== s ? (z = Lo(r, s), t[8] = r, t[9] = s, t[10] = z) : z = t[10];
3610
3586
  let B = z, V;
3611
3587
  t[11] !== _ || t[12] !== m || t[13] !== D || t[14] !== l ? (V = D?.steeringUnavailableReason ?? l ?? (D && _.includes(D.id) ? "Update or Cancel this edit before sending." : null) ?? (m ? null : "This conversation cannot accept live input."), t[11] = _, t[12] = m, t[13] = D, t[14] = l, t[15] = V) : V = t[15];
3612
3588
  let H = V, U = !!(D && m && !l), ee;
3613
- t[16] !== _ || t[17] !== D ? (ee = (e) => !D || D.id === e.id ? "Choose another request." : _.includes(D.id) || _.includes(e.id) ? "Update or Cancel the edits first." : Lo(D) === Lo(e) ? e.steeringDelivery ? "Delivery is still being confirmed." : null : "Model and thinking settings must match.", t[16] = _, t[17] = D, t[18] = ee) : ee = t[18];
3589
+ t[16] !== _ || t[17] !== D ? (ee = (e) => !D || D.id === e.id ? "Choose another request." : _.includes(D.id) || _.includes(e.id) ? "Update or Cancel the edits first." : Fo(D) === Fo(e) ? e.steeringDelivery ? "Delivery is still being confirmed." : null : "Model and thinking settings must match.", t[16] = _, t[17] = D, t[18] = ee) : ee = t[18];
3614
3590
  let te = ee, ne;
3615
3591
  t[19] !== j || t[20] !== f ? (ne = (e, t, n) => {
3616
- let r = j.filter(Vo), i = r.findIndex((t) => t.id === e.id), a = r.findIndex((e) => e.id === t.id);
3592
+ let r = j.filter(zo), i = r.findIndex((t) => t.id === e.id), a = r.findIndex((e) => e.id === t.id);
3617
3593
  if (i < 0 || a < 0 || i === a) return;
3618
3594
  let o = a + +(n === "after"), s = o - +(i < o);
3619
3595
  if (s !== i) return f?.(e.id, s < i ? "up" : "down", Math.abs(s - i), {
@@ -3640,17 +3616,17 @@ var Ua = (e) => e === "user" || e === "assistant" || e === "developer" ? e : "as
3640
3616
  t[30] === r ? ae = t[31] : (ae = (e) => {
3641
3617
  C(null), O(e.active.data.current?.item ?? null), M(r), I(null);
3642
3618
  }, t[30] = r, t[31] = ae);
3643
- let oe, q;
3644
- t[32] === Symbol.for("react.memo_cache_sentinel") ? (oe = (e) => P(e.over?.data.current ?? null), q = () => {
3619
+ let oe, se;
3620
+ t[32] === Symbol.for("react.memo_cache_sentinel") ? (oe = (e) => P(e.over?.data.current ?? null), se = () => {
3645
3621
  C(null), O(null), P(null);
3646
- }, t[32] = oe, t[33] = q) : (oe = t[32], q = t[33]);
3647
- let se;
3648
- t[34] !== L || t[35] !== G || t[36] !== D ? (se = (e) => {
3622
+ }, t[32] = oe, t[33] = se) : (oe = t[32], se = t[33]);
3623
+ let q;
3624
+ t[34] !== L || t[35] !== G || t[36] !== D ? (q = (e) => {
3649
3625
  let t = D, n = e.over?.data.current;
3650
3626
  O(null), P(null), t && n && !L && (R(!0), Promise.resolve().then(() => G(t, n)).catch((e) => I(e instanceof Error ? e.message : "Could not change the queue. Saved input is kept.")).finally(() => R(!1)));
3651
- }, t[34] = L, t[35] = G, t[36] = D, t[37] = se) : se = t[37];
3627
+ }, t[34] = L, t[35] = G, t[36] = D, t[37] = q) : q = t[37];
3652
3628
  let ce = x.root, le = N?.kind === "steer", ue;
3653
- t[38] !== U || t[39] !== H || t[40] !== le ? (ue = /* @__PURE__ */ Y(Fo, {
3629
+ t[38] !== U || t[39] !== H || t[40] !== le ? (ue = /* @__PURE__ */ Y(No, {
3654
3630
  visible: U,
3655
3631
  targeted: le,
3656
3632
  reason: H
@@ -3660,7 +3636,7 @@ var Ua = (e) => e === "user" || e === "assistant" || e === "developer" ? e : "as
3660
3636
  let me;
3661
3637
  if (t[43] !== te || t[44] !== N || t[45] !== i || t[46] !== a || t[47] !== r || t[48] !== u || t[49] !== d || t[50] !== o || t[51] !== B || t[52] !== D?.id) {
3662
3638
  let e;
3663
- t[54] !== te || t[55] !== N || t[56] !== i || t[57] !== a || t[58] !== u || t[59] !== d || t[60] !== o || t[61] !== B || t[62] !== D?.id ? (e = (e, t) => /* @__PURE__ */ X(pe, { children: [o && t === B ? /* @__PURE__ */ Y(Bo, { children: o }) : null, /* @__PURE__ */ Y(Io, {
3639
+ t[54] !== te || t[55] !== N || t[56] !== i || t[57] !== a || t[58] !== u || t[59] !== d || t[60] !== o || t[61] !== B || t[62] !== D?.id ? (e = (e, t) => /* @__PURE__ */ X(pe, { children: [o && t === B ? /* @__PURE__ */ Y(Ro, { children: o }) : null, /* @__PURE__ */ Y(Po, {
3664
3640
  item: e,
3665
3641
  index: t,
3666
3642
  source: D?.id === e.id,
@@ -3673,7 +3649,7 @@ var Ua = (e) => e === "user" || e === "assistant" || e === "developer" ? e : "as
3673
3649
  })] }, e.id), t[54] = te, t[55] = N, t[56] = i, t[57] = a, t[58] = u, t[59] = d, t[60] = o, t[61] = B, t[62] = D?.id, t[63] = e) : e = t[63], me = r.map(e), t[43] = te, t[44] = N, t[45] = i, t[46] = a, t[47] = r, t[48] = u, t[49] = d, t[50] = o, t[51] = B, t[52] = D?.id, t[53] = me;
3674
3650
  } else me = t[53];
3675
3651
  let he;
3676
- t[64] !== r.length || t[65] !== o || t[66] !== B ? (he = o && B === r.length ? /* @__PURE__ */ Y(Bo, { children: o }) : null, t[64] = r.length, t[65] = o, t[66] = B, t[67] = he) : he = t[67];
3652
+ t[64] !== r.length || t[65] !== o || t[66] !== B ? (he = o && B === r.length ? /* @__PURE__ */ Y(Ro, { children: o }) : null, t[64] = r.length, t[65] = o, t[66] = B, t[67] = he) : he = t[67];
3677
3653
  let ge;
3678
3654
  t[68] !== me || t[69] !== he ? (ge = /* @__PURE__ */ X(n, {
3679
3655
  maxH: "queue-viewport",
@@ -3699,20 +3675,20 @@ var Ua = (e) => e === "user" || e === "assistant" || e === "developer" ? e : "as
3699
3675
  ]
3700
3676
  }), t[74] = L, t[75] = U, t[76] = x.root, t[77] = ue, t[78] = ge, t[79] = _e, t[80] = Z) : Z = t[80];
3701
3677
  let ve;
3702
- return t[81] !== E || t[82] !== ie || t[83] !== ae || t[84] !== se || t[85] !== Z ? (ve = /* @__PURE__ */ Y(qe, {
3678
+ return t[81] !== E || t[82] !== ie || t[83] !== ae || t[84] !== q || t[85] !== Z ? (ve = /* @__PURE__ */ Y(qe, {
3703
3679
  sensors: E,
3704
3680
  collisionDetection: ie,
3705
3681
  autoScroll: !0,
3706
3682
  onDragStart: ae,
3707
3683
  onDragOver: oe,
3708
- onDragCancel: q,
3709
- onDragEnd: se,
3684
+ onDragCancel: se,
3685
+ onDragEnd: q,
3710
3686
  children: Z
3711
- }), t[81] = E, t[82] = ie, t[83] = ae, t[84] = se, t[85] = Z, t[86] = ve) : ve = t[86], ve;
3712
- }, zo = (e, t = Infinity) => {
3687
+ }), t[81] = E, t[82] = ie, t[83] = ae, t[84] = q, t[85] = Z, t[86] = ve) : ve = t[86], ve;
3688
+ }, Lo = (e, t = Infinity) => {
3713
3689
  let n = e.findIndex((e) => (e.position ?? Infinity) > t);
3714
3690
  return n < 0 ? e.length : n;
3715
- }, Bo = (e) => {
3691
+ }, Ro = (e) => {
3716
3692
  let t = J(8), { children: n } = e, r;
3717
3693
  t[0] === Symbol.for("react.memo_cache_sentinel") ? (r = { recipe: p }, t[0] = r) : r = t[0];
3718
3694
  let i = de(r), a;
@@ -3729,12 +3705,12 @@ var Ua = (e) => e === "user" || e === "assistant" || e === "developer" ? e : "as
3729
3705
  children: s
3730
3706
  }), t[5] = o.row, t[6] = s, t[7] = c) : c = t[7], c;
3731
3707
  };
3732
- function Vo(e) {
3708
+ function zo(e) {
3733
3709
  return !e.sending && !e.steeringDelivery;
3734
3710
  }
3735
3711
  //#endregion
3736
3712
  //#region src/components/chat-ui/components/chat-panel-composer.tsx
3737
- var Ho = (e) => {
3713
+ var Bo = (e) => {
3738
3714
  let t = J(42), { composerHeader: n, chatInputQuestionPrompt: r, composerDecision: i, hasWorkspaceHub: a, onQueuedFollowUpMove: o, onQueuedFollowUpRemove: s, onQueuedFollowUpUpdate: c, onQueuedFollowUpSteer: l, onQueuedFollowUpCombine: u, queueSteeringUnavailableReason: d, unsavedQueueItemIds: f, queuedComposer: m, queuedFollowUps: h, workspaceHub: g } = e, _;
3739
3715
  t[0] === f ? _ = t[1] : (_ = f === void 0 ? [] : f, t[0] = f, t[1] = _);
3740
3716
  let v = _, y;
@@ -3742,7 +3718,7 @@ var Ho = (e) => {
3742
3718
  let b = de(y), x;
3743
3719
  t[3] === b ? x = t[4] : (x = b(), t[3] = b, t[4] = x);
3744
3720
  let S = x, C = h.length > 0, w = m.isEditing && !r && !i, T;
3745
- t[5] !== w || t[6] !== C || t[7] !== e ? (T = /* @__PURE__ */ Y(jo, {
3721
+ t[5] !== w || t[6] !== C || t[7] !== e ? (T = /* @__PURE__ */ Y(ko, {
3746
3722
  ...e,
3747
3723
  editing: w,
3748
3724
  hasQueuedFollowUps: C
@@ -3750,7 +3726,7 @@ var Ho = (e) => {
3750
3726
  let E = T, D = a ? "2xs" : "0", O = a ? "2xs" : void 0, k = a ? "1px" : void 0, j = a ? "border" : void 0, M = a ? "xs" : void 0, N = a ? "bg.subtle" : void 0, P = w ? E : void 0, F = w && m.createNew ? E : void 0, I = m.editingItem?.position, L;
3751
3727
  t[9] !== m.dirtyItemIds || t[10] !== v ? (L = [...m.dirtyItemIds, ...v], t[9] = m.dirtyItemIds, t[10] = v, t[11] = L) : L = t[11];
3752
3728
  let R = c ? m.edit : void 0, z;
3753
- t[12] !== u || t[13] !== o || t[14] !== s || t[15] !== l || t[16] !== d || t[17] !== m.editingItemId || t[18] !== h || t[19] !== P || t[20] !== F || t[21] !== I || t[22] !== L || t[23] !== R ? (z = /* @__PURE__ */ Y(Ro, {
3729
+ t[12] !== u || t[13] !== o || t[14] !== s || t[15] !== l || t[16] !== d || t[17] !== m.editingItemId || t[18] !== h || t[19] !== P || t[20] !== F || t[21] !== I || t[22] !== L || t[23] !== R ? (z = /* @__PURE__ */ Y(Io, {
3754
3730
  items: h,
3755
3731
  editor: P,
3756
3732
  retainedEditor: F,
@@ -3794,12 +3770,12 @@ var Ho = (e) => {
3794
3770
  ]
3795
3771
  })
3796
3772
  }), t[31] = n, t[32] = M, t[33] = N, t[34] = z, t[35] = B, t[36] = D, t[37] = O, t[38] = k, t[39] = j, t[40] = g, t[41] = V) : V = t[41], V;
3797
- }, Uo = (e) => {
3773
+ }, Vo = (e) => {
3798
3774
  let t = Math.max(0, Math.floor(e));
3799
3775
  if (t < 60) return `${t}s`;
3800
3776
  let n = Math.floor(t / 60);
3801
3777
  return n < 60 ? `${n}m ${String(t % 60).padStart(2, "0")}s` : `${Math.floor(n / 60)}h ${String(n % 60).padStart(2, "0")}m`;
3802
- }, Wo = (e) => {
3778
+ }, Ho = (e) => {
3803
3779
  let t = J(8), { startedAt: n, hidden: r } = e, i = r !== void 0 && r, [a] = Q(Date.now), [o, s] = Q(Date.now), c, l;
3804
3780
  if (t[0] === i ? (c = t[1], l = t[2]) : (c = () => {
3805
3781
  if (i) return;
@@ -3814,7 +3790,7 @@ var Ho = (e) => {
3814
3790
  color: "fg.muted"
3815
3791
  }), t[3] = u) : u = t[3];
3816
3792
  let d = (o - (n ?? a)) / 1e3, f;
3817
- t[4] === d ? f = t[5] : (f = Uo(d), t[4] = d, t[5] = f);
3793
+ t[4] === d ? f = t[5] : (f = Vo(d), t[4] = d, t[5] = f);
3818
3794
  let p;
3819
3795
  return t[6] === f ? p = t[7] : (p = /* @__PURE__ */ X(I, {
3820
3796
  gap: "2xs",
@@ -3828,174 +3804,179 @@ var Ho = (e) => {
3828
3804
  children: f
3829
3805
  })]
3830
3806
  }), t[6] = f, t[7] = p), p;
3831
- }, Go = (e) => {
3832
- let t = J(110), { conversationKey: n, linkHandler: r, messages: i, loading: a, streaming: o, streamingStartedAt: s, emptyStateTitle: l, emptyStateDescription: u, emptyStateContent: d, loaderComponent: f, chatInputPlaceholder: p, chatInputDefaultValue: h, onSubmitMessage: g, onInterrupt: _, onAttachFiles: b, onAttachText: x, onChatInputChange: S, actions: C, attachmentActions: w, composerHeader: T, attachedResources: E, onClearAttachments: D, attachmentList: O, approvalPrompt: k, conversationNotices: A, workspaceHub: j, workspaceInitializing: M, inputDisabled: N, submitDisabled: P, chatInputQuestionPrompt: I, composerDecision: L, chatInputAutoFocus: R, queuedFollowUps: z, onQueuedFollowUpUpdate: B, onQueuedFollowUpCreate: V, onQueuedFollowUpRestoreDraft: H, canRestoreQueuedEditToDraft: U, onQueuedFollowUpSelect: ee, onQueuedFollowUpDiscard: te, onQueuedFollowUpSteer: ne, onQueuedFollowUpCombine: re, queueSteeringUnavailableReason: W, unsavedQueueItemIds: G, onQueuedFollowUpRemove: ie, onQueuedFollowUpMove: K, chatInputCommands: ae } = e, oe = a !== void 0 && a, q = o !== void 0 && o, se = h === void 0 ? "" : h, ce = M !== void 0 && M, le = N !== void 0 && N, ue = P !== void 0 && P, de = R !== void 0 && R, pe;
3833
- t[0] === z ? pe = t[1] : (pe = z === void 0 ? [] : z, t[0] = z, t[1] = pe);
3834
- let me = pe, he;
3835
- t[2] === ae ? he = t[3] : (he = ae === void 0 ? [] : ae, t[2] = ae, t[3] = he);
3836
- let ge = he, _e, Z, ve, ye, be;
3807
+ }, Uo = (e) => {
3808
+ let t = J(112), { conversationKey: n, linkHandler: r, messages: i, loading: a, streaming: o, streamingStartedAt: s, emptyStateTitle: l, emptyStateDescription: u, emptyStateContent: d, loaderComponent: f, chatInputPlaceholder: p, chatInputDefaultValue: h, onSubmitMessage: g, onInterrupt: _, onAttachFiles: b, onAttachText: x, onChatInputChange: S, actions: C, attachmentActions: w, composerHeader: T, attachedResources: E, onClearAttachments: D, attachmentList: O, approvalPrompt: k, conversationNotices: j, workspaceHub: M, workspaceInitializing: N, inputDisabled: P, submitDisabled: I, chatInputQuestionPrompt: L, composerDecision: R, chatInputAutoFocus: z, queuedFollowUps: B, onQueuedFollowUpUpdate: V, onQueuedFollowUpCreate: H, onQueuedFollowUpRestoreDraft: U, canRestoreQueuedEditToDraft: ee, onQueuedFollowUpSelect: te, onQueuedFollowUpDiscard: ne, onQueuedFollowUpSteer: re, onQueuedFollowUpCombine: W, queueSteeringUnavailableReason: G, unsavedQueueItemIds: ie, onQueuedFollowUpRemove: K, onQueuedFollowUpMove: ae, chatInputCommands: oe } = e, se = a !== void 0 && a, q = o !== void 0 && o, ce = h === void 0 ? "" : h, le = N !== void 0 && N, ue = P !== void 0 && P, de = I !== void 0 && I, pe = z !== void 0 && z, me;
3809
+ t[0] === B ? me = t[1] : (me = B === void 0 ? [] : B, t[0] = B, t[1] = me);
3810
+ let he = me, ge;
3811
+ t[2] === oe ? ge = t[3] : (ge = oe === void 0 ? [] : oe, t[2] = oe, t[3] = ge);
3812
+ let _e = ge, Z, ve, ye, be, xe;
3837
3813
  if (t[4] !== n || t[5] !== i || t[6] !== q) {
3838
- let e = Xa(i, { streaming: q });
3839
- _e = e.length > 0, ve = n ?? e[0]?.id, Z = _e ? ve ?? "active-conversation" : null, be = e.reduce(Ko, 0), ye = Qa(e), t[4] = n, t[5] = i, t[6] = q, t[7] = _e, t[8] = Z, t[9] = ve, t[10] = ye, t[11] = be;
3840
- } else _e = t[7], Z = t[8], ve = t[9], ye = t[10], be = t[11];
3841
- let { groups: xe, leadingResponses: Se } = ye, [Ce, we] = Q(qo), [Te, Ee] = Q(null), De = !_e && oe, Oe;
3842
- t[12] === Symbol.for("react.memo_cache_sentinel") ? (Oe = /* @__PURE__ */ Y(ze, {
3814
+ let e = Ja(i, { streaming: q });
3815
+ Z = e.length > 0, ye = n ?? e[0]?.id, ve = Z ? ye ?? "active-conversation" : null, xe = e.reduce(Wo, 0), be = Xa(e), t[4] = n, t[5] = i, t[6] = q, t[7] = Z, t[8] = ve, t[9] = ye, t[10] = be, t[11] = xe;
3816
+ } else Z = t[7], ve = t[8], ye = t[9], be = t[10], xe = t[11];
3817
+ let { groups: Se, leadingResponses: Ce } = be, [we, Te] = Q(Go), [Ee, De] = Q(null), Oe = !Z && se, ke;
3818
+ t[12] === Symbol.for("react.memo_cache_sentinel") ? (ke = /* @__PURE__ */ Y(ze, {
3843
3819
  size: 48,
3844
3820
  strokeWidth: 1.5
3845
- }), t[12] = Oe) : Oe = t[12];
3846
- let ke;
3847
- t[13] !== u || t[14] !== l ? (ke = /* @__PURE__ */ Y(c, {
3848
- icon: Oe,
3821
+ }), t[12] = ke) : ke = t[12];
3822
+ let Ae;
3823
+ t[13] !== u || t[14] !== l ? (Ae = /* @__PURE__ */ Y(c, {
3824
+ icon: ke,
3849
3825
  title: l,
3850
3826
  description: u
3851
- }), t[13] = u, t[14] = l, t[15] = ke) : ke = t[15];
3852
- let Ae = De ? f : d ?? ke, je = !!j, Me = bn(i, n ?? i[0]?.id), Ne;
3853
- t[16] !== I || t[17] !== i || t[18] !== Me.prompt ? (Ne = Me.prompt ?? I ?? gn(i), t[16] = I, t[17] = i, t[18] = Me.prompt, t[19] = Ne) : Ne = t[19];
3854
- let Pe = Ne, Fe = !!Pe, Ie = q && _e && !ce && !Pe, Le = !Z || Te === Z, Re;
3855
- t[20] !== U || t[21] !== se || t[22] !== le || t[23] !== S || t[24] !== V || t[25] !== te || t[26] !== H || t[27] !== ee || t[28] !== B || t[29] !== g || t[30] !== me ? (Re = {
3856
- queuedFollowUps: me,
3857
- defaultValue: se,
3827
+ }), t[13] = u, t[14] = l, t[15] = Ae) : Ae = t[15];
3828
+ let je = Oe ? f : d ?? Ae, Me = !!M, Ne = bn(i, n ?? i[0]?.id), Pe;
3829
+ t[16] !== L || t[17] !== i || t[18] !== Ne.prompt ? (Pe = Ne.prompt ?? L ?? gn(i), t[16] = L, t[17] = i, t[18] = Ne.prompt, t[19] = Pe) : Pe = t[19];
3830
+ let Fe = Pe, Ie = !!Fe, Le = q && Z && !le && !Fe, Re = !ve || Ee === ve, Be;
3831
+ t[20] !== ee || t[21] !== ce || t[22] !== ue || t[23] !== S || t[24] !== H || t[25] !== ne || t[26] !== U || t[27] !== te || t[28] !== V || t[29] !== g || t[30] !== he ? (Be = {
3832
+ queuedFollowUps: he,
3833
+ defaultValue: ce,
3858
3834
  onChange: S,
3859
3835
  onSubmit: g,
3860
- onUpdate: B,
3861
- onCreate: V,
3862
- onRestoreDraft: H,
3863
- canRestoreDraft: U,
3864
- disabled: le,
3865
- onSelect: ee,
3866
- onDiscard: te
3867
- }, t[20] = U, t[21] = se, t[22] = le, t[23] = S, t[24] = V, t[25] = te, t[26] = H, t[27] = ee, t[28] = B, t[29] = g, t[30] = me, t[31] = Re) : Re = t[31];
3868
- let Be = Ao(Re), Ve;
3869
- t[32] === Symbol.for("react.memo_cache_sentinel") ? (Ve = (e) => {
3870
- we((t) => {
3836
+ onUpdate: V,
3837
+ onCreate: H,
3838
+ onRestoreDraft: U,
3839
+ canRestoreDraft: ee,
3840
+ disabled: ue,
3841
+ onSelect: te,
3842
+ onDiscard: ne
3843
+ }, t[20] = ee, t[21] = ce, t[22] = ue, t[23] = S, t[24] = H, t[25] = ne, t[26] = U, t[27] = te, t[28] = V, t[29] = g, t[30] = he, t[31] = Be) : Be = t[31];
3844
+ let Ve = Oo(Be), He;
3845
+ t[32] === Symbol.for("react.memo_cache_sentinel") ? (He = (e) => {
3846
+ Te((t) => {
3871
3847
  let n = new Set(t);
3872
3848
  return n.has(e) ? n.delete(e) : n.add(e), n;
3873
3849
  });
3874
- }, t[32] = Ve) : Ve = t[32];
3875
- let He = Ve, Ue;
3876
- t[33] !== r || t[34] !== i ? (Ue = y(i, r), t[33] = r, t[34] = i, t[35] = Ue) : Ue = t[35];
3877
- let We = Me.value, Ge = ve ?? null, Ke;
3878
- t[36] !== Ge || t[37] !== be ? (Ke = /* @__PURE__ */ Y(bt, {
3879
- conversationKey: Ge,
3880
- userMessageCount: be
3881
- }), t[36] = Ge, t[37] = be, t[38] = Ke) : Ke = t[38];
3882
- let qe = Le ? "visible" : "hidden", Je;
3883
- t[39] !== A || t[40] !== Ae || t[41] !== Ce || t[42] !== xe || t[43] !== _e || t[44] !== Fe || t[45] !== Se || t[46] !== Z || t[47] !== q ? (Je = _e ? /* @__PURE__ */ X(fe, { children: [/* @__PURE__ */ Y(ko, {
3884
- leadingResponses: Se,
3885
- groups: xe,
3850
+ }, t[32] = He) : He = t[32];
3851
+ let Ue = He, We;
3852
+ t[33] !== r || t[34] !== i ? (We = y(i, r), t[33] = r, t[34] = i, t[35] = We) : We = t[35];
3853
+ let Ge = Ne.value, Ke = ye ?? null, qe;
3854
+ t[36] !== Ke || t[37] !== xe ? (qe = /* @__PURE__ */ Y(bt, {
3855
+ conversationKey: Ke,
3856
+ userMessageCount: xe
3857
+ }), t[36] = Ke, t[37] = xe, t[38] = qe) : qe = t[38];
3858
+ let Je = Re ? "visible" : "hidden", Ye;
3859
+ t[39] !== j || t[40] !== je || t[41] !== we || t[42] !== Se || t[43] !== Z || t[44] !== Ie || t[45] !== Ce || t[46] !== ve || t[47] !== q ? (Ye = Z ? /* @__PURE__ */ X(fe, { children: [/* @__PURE__ */ Y(Do, {
3860
+ leadingResponses: Ce,
3861
+ groups: Se,
3886
3862
  streaming: q,
3887
- hideActiveQuestionForms: Fe,
3888
- expandedStickyMessageIds: Ce,
3889
- onToggleStickyMessage: He,
3890
- onReady: () => Ee(Z)
3891
- }, Z), A] }) : /* @__PURE__ */ X(fe, { children: [A, Ae] }), t[39] = A, t[40] = Ae, t[41] = Ce, t[42] = xe, t[43] = _e, t[44] = Fe, t[45] = Se, t[46] = Z, t[47] = q, t[48] = Je) : Je = t[48];
3892
- let Ye;
3893
- t[49] !== qe || t[50] !== Je ? (Ye = /* @__PURE__ */ Y(st.Viewport, {
3894
- visibility: qe,
3895
- children: Je
3896
- }), t[49] = qe, t[50] = Je, t[51] = Ye) : Ye = t[51];
3863
+ hideActiveQuestionForms: Ie,
3864
+ expandedStickyMessageIds: we,
3865
+ onToggleStickyMessage: Ue,
3866
+ onReady: () => De(ve)
3867
+ }, ve), j] }) : /* @__PURE__ */ X(fe, { children: [j, je] }), t[39] = j, t[40] = je, t[41] = we, t[42] = Se, t[43] = Z, t[44] = Ie, t[45] = Ce, t[46] = ve, t[47] = q, t[48] = Ye) : Ye = t[48];
3897
3868
  let Xe;
3898
- t[52] === Le ? Xe = t[53] : (Xe = Le ? /* @__PURE__ */ Y(st.ScrollToBottom, { "aria-label": "Scroll to latest message" }) : null, t[52] = Le, t[53] = Xe);
3869
+ t[49] !== Je || t[50] !== Ye ? (Xe = /* @__PURE__ */ Y(st.Viewport, {
3870
+ visibility: Je,
3871
+ children: Ye
3872
+ }), t[49] = Je, t[50] = Ye, t[51] = Xe) : Xe = t[51];
3899
3873
  let Ze;
3900
- t[54] !== Ke || t[55] !== Ye || t[56] !== Xe ? (Ze = /* @__PURE__ */ X(st.Root, { children: [
3901
- Ke,
3902
- Ye,
3903
- Xe
3904
- ] }), t[54] = Ke, t[55] = Ye, t[56] = Xe, t[57] = Ze) : Ze = t[57];
3874
+ t[52] === Re ? Ze = t[53] : (Ze = Re ? /* @__PURE__ */ Y(st.ScrollToBottom, { "aria-label": "Scroll to latest message" }) : null, t[52] = Re, t[53] = Ze);
3905
3875
  let Qe;
3906
- t[58] !== ve || t[59] !== Ie || t[60] !== q || t[61] !== s ? (Qe = q ? /* @__PURE__ */ Y(Wo, {
3876
+ t[54] !== qe || t[55] !== Xe || t[56] !== Ze ? (Qe = /* @__PURE__ */ X(st.Root, { children: [
3877
+ qe,
3878
+ Xe,
3879
+ Ze
3880
+ ] }), t[54] = qe, t[55] = Xe, t[56] = Ze, t[57] = Qe) : Qe = t[57];
3881
+ let $e;
3882
+ t[58] !== ye || t[59] !== Le || t[60] !== q || t[61] !== s ? ($e = q ? /* @__PURE__ */ Y(Ho, {
3907
3883
  startedAt: s,
3908
- hidden: !Ie
3909
- }, ve) : null, t[58] = ve, t[59] = Ie, t[60] = q, t[61] = s, t[62] = Qe) : Qe = t[62];
3910
- let $e = n ?? i[0]?.id, et;
3911
- t[63] === i ? et = t[64] : (et = Hn(i), t[63] = i, t[64] = et);
3912
- let tt = Me.prompt ? void 0 : L, nt;
3913
- t[65] !== C || t[66] !== Pe || t[67] !== E || t[68] !== w || t[69] !== O || t[70] !== de || t[71] !== ge || t[72] !== p || t[73] !== T || t[74] !== je || t[75] !== le || t[76] !== b || t[77] !== x || t[78] !== D || t[79] !== _ || t[80] !== re || t[81] !== K || t[82] !== ie || t[83] !== ne || t[84] !== B || t[85] !== W || t[86] !== Be || t[87] !== me || t[88] !== q || t[89] !== ue || t[90] !== $e || t[91] !== et || t[92] !== tt || t[93] !== G || t[94] !== j ? (nt = /* @__PURE__ */ Y(Ho, {
3914
- conversationKey: $e,
3915
- recentUserMessages: et,
3884
+ hidden: !Le
3885
+ }, ye) : null, t[58] = ye, t[59] = Le, t[60] = q, t[61] = s, t[62] = $e) : $e = t[62];
3886
+ let et = n ?? i[0]?.id, tt;
3887
+ t[63] === i ? tt = t[64] : (tt = Bn(i), t[63] = i, t[64] = tt);
3888
+ let nt = Ne.prompt ? void 0 : R, rt;
3889
+ t[65] !== C || t[66] !== Fe || t[67] !== E || t[68] !== w || t[69] !== O || t[70] !== pe || t[71] !== _e || t[72] !== p || t[73] !== T || t[74] !== Me || t[75] !== ue || t[76] !== b || t[77] !== x || t[78] !== D || t[79] !== _ || t[80] !== W || t[81] !== ae || t[82] !== K || t[83] !== re || t[84] !== V || t[85] !== G || t[86] !== Ve || t[87] !== he || t[88] !== q || t[89] !== de || t[90] !== et || t[91] !== tt || t[92] !== nt || t[93] !== ie || t[94] !== M ? (rt = /* @__PURE__ */ Y(Bo, {
3890
+ conversationKey: et,
3891
+ recentUserMessages: tt,
3916
3892
  actions: C,
3917
3893
  attachmentActions: w,
3918
3894
  composerHeader: T,
3919
3895
  attachedResources: E,
3920
3896
  attachmentList: O,
3921
- chatInputAutoFocus: de,
3897
+ chatInputAutoFocus: pe,
3922
3898
  chatInputPlaceholder: p,
3923
- chatInputQuestionPrompt: Pe,
3924
- composerDecision: tt,
3925
- chatInputCommands: ge,
3926
- hasWorkspaceHub: je,
3927
- inputDisabled: le,
3928
- submitDisabled: ue,
3899
+ chatInputQuestionPrompt: Fe,
3900
+ composerDecision: nt,
3901
+ chatInputCommands: _e,
3902
+ hasWorkspaceHub: Me,
3903
+ inputDisabled: ue,
3904
+ submitDisabled: de,
3929
3905
  onAttachFiles: b,
3930
3906
  onAttachText: x,
3931
3907
  onClearAttachments: D,
3932
3908
  onInterrupt: _,
3933
- onQueuedFollowUpMove: K,
3934
- onQueuedFollowUpRemove: ie,
3935
- onQueuedFollowUpUpdate: B,
3936
- onQueuedFollowUpSteer: ne,
3937
- onQueuedFollowUpCombine: re,
3938
- queueSteeringUnavailableReason: W,
3939
- unsavedQueueItemIds: G,
3940
- queuedComposer: Be,
3941
- queuedFollowUps: me,
3909
+ onQueuedFollowUpMove: ae,
3910
+ onQueuedFollowUpRemove: K,
3911
+ onQueuedFollowUpUpdate: V,
3912
+ onQueuedFollowUpSteer: re,
3913
+ onQueuedFollowUpCombine: W,
3914
+ queueSteeringUnavailableReason: G,
3915
+ unsavedQueueItemIds: ie,
3916
+ queuedComposer: Ve,
3917
+ queuedFollowUps: he,
3942
3918
  streaming: q,
3943
- workspaceHub: j
3944
- }), t[65] = C, t[66] = Pe, t[67] = E, t[68] = w, t[69] = O, t[70] = de, t[71] = ge, t[72] = p, t[73] = T, t[74] = je, t[75] = le, t[76] = b, t[77] = x, t[78] = D, t[79] = _, t[80] = re, t[81] = K, t[82] = ie, t[83] = ne, t[84] = B, t[85] = W, t[86] = Be, t[87] = me, t[88] = q, t[89] = ue, t[90] = $e, t[91] = et, t[92] = tt, t[93] = G, t[94] = j, t[95] = nt) : nt = t[95];
3945
- let rt;
3946
- t[96] !== k || t[97] !== Ze || t[98] !== Qe || t[99] !== nt ? (rt = /* @__PURE__ */ X(F, {
3919
+ workspaceHub: M
3920
+ }), t[65] = C, t[66] = Fe, t[67] = E, t[68] = w, t[69] = O, t[70] = pe, t[71] = _e, t[72] = p, t[73] = T, t[74] = Me, t[75] = ue, t[76] = b, t[77] = x, t[78] = D, t[79] = _, t[80] = W, t[81] = ae, t[82] = K, t[83] = re, t[84] = V, t[85] = G, t[86] = Ve, t[87] = he, t[88] = q, t[89] = de, t[90] = et, t[91] = tt, t[92] = nt, t[93] = ie, t[94] = M, t[95] = rt) : rt = t[95];
3921
+ let it;
3922
+ t[96] !== k || t[97] !== $e || t[98] !== rt ? (it = /* @__PURE__ */ X(A, {
3923
+ layerStyle: "chatContent",
3924
+ flexShrink: "0",
3925
+ children: [
3926
+ k,
3927
+ $e,
3928
+ rt
3929
+ ]
3930
+ }), t[96] = k, t[97] = $e, t[98] = rt, t[99] = it) : it = t[99];
3931
+ let at;
3932
+ t[100] !== Qe || t[101] !== it ? (at = /* @__PURE__ */ X(F, {
3947
3933
  position: "relative",
3948
3934
  direction: "column",
3949
3935
  w: "full",
3950
3936
  h: "full",
3951
3937
  overflow: "hidden",
3952
- children: [
3953
- Ze,
3954
- k,
3955
- Qe,
3956
- nt
3957
- ]
3958
- }), t[96] = k, t[97] = Ze, t[98] = Qe, t[99] = nt, t[100] = rt) : rt = t[100];
3959
- let it;
3960
- t[101] !== Me.value || t[102] !== rt ? (it = /* @__PURE__ */ Y(vn, {
3961
- value: We,
3962
- children: rt
3963
- }), t[101] = Me.value, t[102] = rt, t[103] = it) : it = t[103];
3964
- let at;
3965
- t[104] !== r || t[105] !== it ? (at = /* @__PURE__ */ Y(m, {
3966
- handler: r,
3967
- children: it
3968
- }), t[104] = r, t[105] = it, t[106] = at) : at = t[106];
3938
+ children: [Qe, it]
3939
+ }), t[100] = Qe, t[101] = it, t[102] = at) : at = t[102];
3969
3940
  let ot;
3970
- return t[107] !== Ue || t[108] !== at ? (ot = /* @__PURE__ */ Y(v, {
3971
- value: Ue,
3941
+ t[103] !== Ne.value || t[104] !== at ? (ot = /* @__PURE__ */ Y(vn, {
3942
+ value: Ge,
3972
3943
  children: at
3973
- }), t[107] = Ue, t[108] = at, t[109] = ot) : ot = t[109], ot;
3944
+ }), t[103] = Ne.value, t[104] = at, t[105] = ot) : ot = t[105];
3945
+ let ct;
3946
+ t[106] !== r || t[107] !== ot ? (ct = /* @__PURE__ */ Y(m, {
3947
+ handler: r,
3948
+ children: ot
3949
+ }), t[106] = r, t[107] = ot, t[108] = ct) : ct = t[108];
3950
+ let lt;
3951
+ return t[109] !== We || t[110] !== ct ? (lt = /* @__PURE__ */ Y(v, {
3952
+ value: We,
3953
+ children: ct
3954
+ }), t[109] = We, t[110] = ct, t[111] = lt) : lt = t[111], lt;
3974
3955
  };
3975
- function Ko(e, t) {
3956
+ function Wo(e, t) {
3976
3957
  return e + +(t.role === "user");
3977
3958
  }
3978
- function qo() {
3959
+ function Go() {
3979
3960
  return /* @__PURE__ */ new Set();
3980
3961
  }
3981
3962
  //#endregion
3982
3963
  //#region src/components/chat-ui/components/chat-skeleton.tsx
3983
- var Jo = (e) => {
3964
+ var Ko = (e) => {
3984
3965
  let t = J(4), { widths: n } = e, r;
3985
- t[0] === n ? r = t[1] : (r = n.map(Xo), t[0] = n, t[1] = r);
3966
+ t[0] === n ? r = t[1] : (r = n.map(Jo), t[0] = n, t[1] = r);
3986
3967
  let i;
3987
3968
  return t[2] === r ? i = t[3] : (i = /* @__PURE__ */ Y(G, {
3988
3969
  gap: "xs",
3989
3970
  w: "full",
3990
3971
  children: r
3991
3972
  }), t[2] = r, t[3] = i), i;
3992
- }, Yo = () => {
3973
+ }, qo = () => {
3993
3974
  let e = J(2), t;
3994
3975
  e[0] === Symbol.for("react.memo_cache_sentinel") ? (t = /* @__PURE__ */ Y(dt.Root, {
3995
3976
  from: "user",
3996
3977
  children: /* @__PURE__ */ Y(dt.Content, {
3997
3978
  from: "user",
3998
- children: /* @__PURE__ */ Y(Jo, { widths: ["72%", "46%"] })
3979
+ children: /* @__PURE__ */ Y(Ko, { widths: ["72%", "46%"] })
3999
3980
  })
4000
3981
  }), e[0] = t) : t = e[0];
4001
3982
  let n;
@@ -4007,7 +3988,7 @@ var Jo = (e) => {
4007
3988
  from: "assistant",
4008
3989
  children: /* @__PURE__ */ Y(dt.Content, {
4009
3990
  from: "assistant",
4010
- children: /* @__PURE__ */ Y(Jo, { widths: [
3991
+ children: /* @__PURE__ */ Y(Ko, { widths: [
4011
3992
  "76%",
4012
3993
  "62%",
4013
3994
  "40%"
@@ -4016,7 +3997,7 @@ var Jo = (e) => {
4016
3997
  })]
4017
3998
  }), e[1] = n) : n = e[1], n;
4018
3999
  };
4019
- function Xo(e, t) {
4000
+ function Jo(e, t) {
4020
4001
  return /* @__PURE__ */ Y(ne, {
4021
4002
  height: "3",
4022
4003
  width: e,
@@ -4025,15 +4006,15 @@ function Xo(e, t) {
4025
4006
  }
4026
4007
  //#endregion
4027
4008
  //#region src/components/chat-ui/components/conversation-browse.tsx
4028
- var Zo = 3, Qo = 10, $o = 4, es = (e, t) => {
4009
+ var Yo = 3, Xo = 10, Zo = 4, Qo = (e, t) => {
4029
4010
  if (t === null) return 0;
4030
4011
  let n = Math.abs(e - t);
4031
- return n >= $o ? 0 : (1 + Math.cos(Math.PI * n / $o)) / 2;
4032
- }, ts = (e, t) => {
4012
+ return n >= Zo ? 0 : (1 + Math.cos(Math.PI * n / Zo)) / 2;
4013
+ }, $o = (e, t) => {
4033
4014
  if (t === null) return "fg.subtle";
4034
4015
  let n = Math.abs(e - t);
4035
- return n < .5 ? "fg" : n < $o ? "fg.muted" : "fg.subtle";
4036
- }, ns = (e) => {
4016
+ return n < .5 ? "fg" : n < Zo ? "fg.muted" : "fg.subtle";
4017
+ }, es = (e) => {
4037
4018
  let t = J(11), { item: n, position: r } = e, i = `${r.left}px`, a = `${r.top}px`, o;
4038
4019
  t[0] === n.message ? o = t[1] : (o = /* @__PURE__ */ Y(K, {
4039
4020
  textStyle: "label/S/medium",
@@ -4071,9 +4052,9 @@ var Zo = 3, Qo = 10, $o = 4, es = (e, t) => {
4071
4052
  pointerEvents: "none",
4072
4053
  children: c
4073
4054
  }) }), t[7] = i, t[8] = a, t[9] = c, t[10] = l) : l = t[10], l;
4074
- }, rs = (e) => {
4055
+ }, ts = (e) => {
4075
4056
  let t = J(22), { items: n, onSelect: r, floating: i } = e, a = i !== void 0 && i, [o, s] = Q(null), [c, l] = Q(null);
4076
- if (n.length < Zo) return null;
4057
+ if (n.length < Yo) return null;
4077
4058
  let u;
4078
4059
  t[0] === n.length ? u = t[1] : (u = (e) => {
4079
4060
  let t = e.currentTarget.getBoundingClientRect(), r = (e.clientY - t.top) / t.height, i = Math.min(n.length - 1, Math.max(0, r * n.length - .5)), a = Math.round(i);
@@ -4095,11 +4076,11 @@ var Zo = 3, Qo = 10, $o = 4, es = (e, t) => {
4095
4076
  let g;
4096
4077
  if (t[5] !== n || t[6] !== r || t[7] !== o) {
4097
4078
  let e;
4098
- t[9] !== r || t[10] !== o ? (e = (e, t) => /* @__PURE__ */ Y(se.button, {
4079
+ t[9] !== r || t[10] !== o ? (e = (e, t) => /* @__PURE__ */ Y(q.button, {
4099
4080
  type: "button",
4100
4081
  h: "2px",
4101
- w: `${Qo + 16 * es(t, o)}px`,
4102
- bg: ts(t, o),
4082
+ w: `${Xo + 16 * Qo(t, o)}px`,
4083
+ bg: $o(t, o),
4103
4084
  borderRadius: "1px",
4104
4085
  transition: "width 80ms linear, background-color 80ms linear",
4105
4086
  "aria-label": `Jump to message ${t + 1}`,
@@ -4120,7 +4101,7 @@ var Zo = 3, Qo = 10, $o = 4, es = (e, t) => {
4120
4101
  children: g
4121
4102
  }), t[12] = d, t[13] = h, t[14] = g, t[15] = _) : _ = t[15];
4122
4103
  let v;
4123
- t[16] !== p || t[17] !== c ? (v = p && c ? /* @__PURE__ */ Y(ns, {
4104
+ t[16] !== p || t[17] !== c ? (v = p && c ? /* @__PURE__ */ Y(es, {
4124
4105
  item: p,
4125
4106
  position: c
4126
4107
  }) : null, t[16] = p, t[17] = c, t[18] = v) : v = t[18];
@@ -4131,7 +4112,7 @@ var Zo = 3, Qo = 10, $o = 4, es = (e, t) => {
4131
4112
  flexShrink: 0,
4132
4113
  children: [_, v]
4133
4114
  }), t[19] = _, t[20] = v, t[21] = y) : y = t[21], y;
4134
- }, is = (e) => {
4115
+ }, ns = (e) => {
4135
4116
  let n = J(17), { tag: r } = e, i;
4136
4117
  n[0] !== r.description || n[1] !== r.label ? (i = /* @__PURE__ */ Y(U.Trigger, {
4137
4118
  asChild: !0,
@@ -4171,7 +4152,7 @@ var Zo = 3, Qo = 10, $o = 4, es = (e, t) => {
4171
4152
  }) }) }) }), n[12] = r.description, n[13] = l);
4172
4153
  let u;
4173
4154
  return n[14] !== c || n[15] !== l ? (u = /* @__PURE__ */ X(U.Root, { children: [c, l] }), n[14] = c, n[15] = l, n[16] = u) : u = n[16], u;
4174
- }, as = (e) => {
4155
+ }, rs = (e) => {
4175
4156
  let n = J(64), { mode: r, pending: a, unavailable: o, onRequestConfirmation: s, onAction: c } = e, u;
4176
4157
  n[0] === Symbol.for("react.memo_cache_sentinel") ? (u = { key: "menu" }, n[0] = u) : u = n[0];
4177
4158
  let d = de(u), f;
@@ -4197,7 +4178,7 @@ var Zo = 3, Qo = 10, $o = 4, es = (e, t) => {
4197
4178
  y(e.open), e.open || h(null);
4198
4179
  }, n[11] = T, n[12] = E) : (T = n[11], E = n[12]);
4199
4180
  let D = `${r.label}: ${r.description} · ${w}`, O;
4200
- n[13] !== r.indicator || n[14] !== o ? (O = r.indicator ? /* @__PURE__ */ Y(ie.StartElement, { children: /* @__PURE__ */ Y(se.span, {
4181
+ n[13] !== r.indicator || n[14] !== o ? (O = r.indicator ? /* @__PURE__ */ Y(ie.StartElement, { children: /* @__PURE__ */ Y(q.span, {
4201
4182
  role: "img",
4202
4183
  "aria-label": o ? "Status unavailable" : r.indicator.label,
4203
4184
  "data-status-dot": "",
@@ -4318,11 +4299,11 @@ var Zo = 3, Qo = 10, $o = 4, es = (e, t) => {
4318
4299
  onOpenChange: E,
4319
4300
  children: [F, W]
4320
4301
  }), n[60] = v, n[61] = F, n[62] = W, n[63] = ae) : ae = n[63], ae;
4321
- }, os = (e) => {
4302
+ }, is = (e) => {
4322
4303
  let t = J(19), { modes: n, draftTag: r, sentTag: i, pending: a, unavailable: o, onRequestConfirmation: s, onAction: c } = e, l;
4323
4304
  if (t[0] !== n || t[1] !== c || t[2] !== s || t[3] !== a || t[4] !== o) {
4324
4305
  let e;
4325
- t[6] !== c || t[7] !== s || t[8] !== a || t[9] !== o ? (e = (e) => /* @__PURE__ */ Y(as, {
4306
+ t[6] !== c || t[7] !== s || t[8] !== a || t[9] !== o ? (e = (e) => /* @__PURE__ */ Y(rs, {
4326
4307
  mode: e,
4327
4308
  pending: a,
4328
4309
  unavailable: o,
@@ -4331,9 +4312,9 @@ var Zo = 3, Qo = 10, $o = 4, es = (e, t) => {
4331
4312
  }, e.id), t[6] = c, t[7] = s, t[8] = a, t[9] = o, t[10] = e) : e = t[10], l = n.map(e), t[0] = n, t[1] = c, t[2] = s, t[3] = a, t[4] = o, t[5] = l;
4332
4313
  } else l = t[5];
4333
4314
  let u;
4334
- t[11] === r ? u = t[12] : (u = r ? /* @__PURE__ */ Y(is, { tag: r }) : null, t[11] = r, t[12] = u);
4315
+ t[11] === r ? u = t[12] : (u = r ? /* @__PURE__ */ Y(ns, { tag: r }) : null, t[11] = r, t[12] = u);
4335
4316
  let d;
4336
- t[13] === i ? d = t[14] : (d = i ? /* @__PURE__ */ Y(is, { tag: i }) : null, t[13] = i, t[14] = d);
4317
+ t[13] === i ? d = t[14] : (d = i ? /* @__PURE__ */ Y(ns, { tag: i }) : null, t[13] = i, t[14] = d);
4337
4318
  let f;
4338
4319
  return t[15] !== l || t[16] !== u || t[17] !== d ? (f = /* @__PURE__ */ X(I, {
4339
4320
  gap: "2xs",
@@ -4345,7 +4326,7 @@ var Zo = 3, Qo = 10, $o = 4, es = (e, t) => {
4345
4326
  d
4346
4327
  ]
4347
4328
  }), t[15] = l, t[16] = u, t[17] = d, t[18] = f) : f = t[18], f;
4348
- }, ss = (e) => {
4329
+ }, as = (e) => {
4349
4330
  let t = J(13), { status: n, statusLabel: r, additions: i, deletions: a } = e;
4350
4331
  if (n === "loading") {
4351
4332
  let e;
@@ -4401,9 +4382,9 @@ var Zo = 3, Qo = 10, $o = 4, es = (e, t) => {
4401
4382
  gap: "2xs",
4402
4383
  children: [o, s]
4403
4384
  }), t[10] = o, t[11] = s, t[12] = c) : c = t[12], c;
4404
- }, cs = (e) => {
4385
+ }, os = (e) => {
4405
4386
  let t = J(13), { workspaceControl: n, additions: r, deletions: i, action: a, status: o, statusLabel: s } = e, c = o === void 0 ? "ready" : o, l;
4406
- t[0] !== r || t[1] !== i || t[2] !== c || t[3] !== s ? (l = /* @__PURE__ */ Y(ss, {
4387
+ t[0] !== r || t[1] !== i || t[2] !== c || t[3] !== s ? (l = /* @__PURE__ */ Y(as, {
4407
4388
  status: c,
4408
4389
  statusLabel: s,
4409
4390
  additions: r,
@@ -4433,6 +4414,6 @@ var Zo = 3, Qo = 10, $o = 4, es = (e, t) => {
4433
4414
  }), t[10] = u, t[11] = d, t[12] = f) : f = t[12], f;
4434
4415
  };
4435
4416
  //#endregion
4436
- export { pt as ApprovalPrompt, gt as AttachmentList, bt as AutoScroll, Zn as ChatInput, dt as ChatMessage, Go as ChatPanel, st as ChatPrimitives, Yo as ChatSkeleton, cs as ChatWorkspaceHub, rs as ConversationBrowse, os as HarnessControls, Dt as SendButton, xt as createSerializedPromptState, _ as parseChatLink };
4417
+ export { pt as ApprovalPrompt, gt as AttachmentList, bt as AutoScroll, Yn as ChatInput, dt as ChatMessage, Uo as ChatPanel, st as ChatPrimitives, qo as ChatSkeleton, os as ChatWorkspaceHub, ts as ConversationBrowse, is as HarnessControls, Dt as SendButton, xt as createSerializedPromptState, _ as parseChatLink };
4437
4418
 
4438
4419
  //# sourceMappingURL=chat-ui.js.map