@factorialco/f0-react 12.0.2 → 12.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (34) hide show
  1. package/dist/{ChatPostComposerDialog-BjrsNFUH.js → ChatPostComposerDialog-NEIFDJib.js} +2 -2
  2. package/dist/{CoachmarkProvider-BJFpsBQz.js → CoachmarkProvider-BR6fdrrh.js} +69 -69
  3. package/dist/{DocumentToolbar-CS2Z7HiZ.js → DocumentToolbar-Cb3E9RnA.js} +4 -4
  4. package/dist/{DocxViewer-B_NnBwF0.js → DocxViewer-pfu-5v_l.js} +1 -1
  5. package/dist/{F0AiProcessingOverlay-_6Q5DfJg.js → F0AiProcessingOverlay-O9SpiZk4.js} +215 -215
  6. package/dist/{F0CanvasPanel-BMURqtcr.js → F0CanvasPanel-Dn-Gkmsz.js} +57 -57
  7. package/dist/{F0DocumentViewer-DRm6fqh4.js → F0DocumentViewer-CRPMDWGj.js} +7 -7
  8. package/dist/F0DocumentViewer-DzZu9sCO.js +3 -0
  9. package/dist/{F0Map-f0PCE1Mz.js → F0Map-toEYLWLQ.js} +33 -33
  10. package/dist/{F0Select-BcKwX9W8.js → F0Select-BMzj1oyt.js} +4701 -4629
  11. package/dist/F0Text-CjR98zwA.js +81 -0
  12. package/dist/{F0VideoPlayer-CRXj4sNZ.js → F0VideoPlayer-BmbFZEII.js} +1 -1
  13. package/dist/F0VideoPlayer-DsHl-sBd.js +1 -0
  14. package/dist/{Map-Cq4G6JVt.js → Map-Cakv1wM4.js} +5 -5
  15. package/dist/{PdfThumbnail-BEH1NBCB.js → PdfThumbnail-Bxzk7G0u.js} +1 -1
  16. package/dist/{SheetViewer-CcXri71G.js → SheetViewer-zNoFISP0.js} +3 -3
  17. package/dist/{TextViewer-BMHUpHg-.js → TextViewer-BTRJxwwJ.js} +1 -1
  18. package/dist/ai.d.ts +2 -2
  19. package/dist/ai.js +2 -2
  20. package/dist/component-status.js +1 -1
  21. package/dist/experimental.d.ts +2 -2
  22. package/dist/experimental.js +446 -446
  23. package/dist/{exports-CMhLojYN.d.ts → exports-CnbBeOMM.d.ts} +1 -1
  24. package/dist/f0.d.ts +3 -3
  25. package/dist/f0.js +204 -204
  26. package/dist/{index-aXC2gQbs.d.ts → index-DE9tIS8D.d.ts} +1 -1
  27. package/dist/{maplibre-B2bLeY4t.js → maplibre-C5htrHET.js} +1 -1
  28. package/dist/{pdfWorker-C7GrpmLJ.js → pdfWorker-B4yvX0G-.js} +1 -1
  29. package/dist/{types-CEo4cZBQ.d.ts → types-CUKMWWRC.d.ts} +1 -1
  30. package/dist/{useData-DpxY5-yo.js → useData-DWwEymV5.js} +5636 -4625
  31. package/package.json +1 -1
  32. package/dist/F0DocumentViewer-7PUNVXNk.js +0 -3
  33. package/dist/F0Text-Bu80O85X.js +0 -1093
  34. package/dist/F0VideoPlayer-cuFJGYLM.js +0 -1
@@ -1,10 +1,10 @@
1
1
  import { Ft as e, Gt as t, St as n, a as r, b as i, bt as a, cr as o, er as s, fn as c, i as l, n as u, on as d, or as f, pn as p, sn as m, t as h, vn as g, xt as _, yn as v } from "./popover-B-ET_Kay.js";
2
2
  import { L as y, R as b } from "./tooltip-BX4dSfeL.js";
3
- import { n as x, r as S } from "./F0Text-Bu80O85X.js";
4
- import { $ as C, At as w, B as T, C as E, Co as D, Ct as O, Ds as ee, Et as k, F as A, Gr as j, H as M, I as N, Ir as P, Jn as F, Kr as te, N as ne, Ns as re, Nt as I, Ot as ie, P as L, Q as ae, Qr as R, Ro as z, Rt as oe, S as se, So as ce, St as le, T as ue, Ua as de, Uo as fe, Ur as pe, V as me, Vo as he, Wr as ge, Xa as _e, Xo as ve, Xr as ye, a as be, bo as xe, bt as Se, d as Ce, dt as we, ei as Te, eo as Ee, er as De, g as Oe, h as ke, i as Ae, ir as je, jo as Me, ka as Ne, ks as B, l as Pe, lc as Fe, lt as Ie, m as Le, ma as Re, mo as ze, mr as Be, mt as Ve, no as He, nt as Ue, o as We, ot as Ge, pa as Ke, pr as qe, r as Je, ro as Ye, rt as Xe, st as Ze, to as Qe, ts as $e, tt as et, u as tt, uc as nt, ut as rt, va as it, vo as at, w as ot, x as st, xt as ct, yt as lt, z as V, za as ut, zi as dt } from "./F0CanvasPanel-BMURqtcr.js";
5
- import { t as ft } from "./i18n-provider-defaults-p0UGTA_k.js";
6
- import { C as pt, D as mt, F as ht, S as gt, U as _t, X as vt, Y as yt, k as bt, l as xt, x as St } from "./useData-DpxY5-yo.js";
7
- import { Dn as Ct, Dr as wt, Er as Tt, Ft as Et, Nr as Dt, On as Ot, Or as kt, Ot as At, _t as jt, cn as Mt, ct as Nt, gt as Pt, ht as Ft, jr as It, nn as Lt, sn as Rt, un as zt } from "./F0Select-BcKwX9W8.js";
3
+ import { n as x } from "./F0Text-CjR98zwA.js";
4
+ import { $ as S, At as C, B as w, C as T, Co as E, Ct as D, Ds as O, Et as ee, F as k, Gr as A, H as j, I as M, Ir as N, Jn as P, Kr as F, N as I, Ns as te, Nt as ne, Ot as re, P as L, Q as ie, Qr as ae, Ro as R, Rt as oe, S as se, So as ce, St as le, T as ue, Ua as de, Uo as fe, Ur as pe, V as me, Vo as he, Wr as ge, Xa as _e, Xo as ve, Xr as ye, a as be, bo as xe, bt as Se, d as Ce, dt as we, ei as Te, eo as Ee, er as De, g as Oe, h as ke, i as Ae, ir as je, jo as Me, ka as Ne, ks as z, l as Pe, lc as Fe, lt as Ie, m as Le, ma as Re, mo as ze, mr as B, mt as Be, no as Ve, nt as He, o as Ue, ot as We, pa as Ge, pr as Ke, r as qe, ro as Je, rt as Ye, st as Xe, to as Ze, ts as Qe, tt as $e, u as et, uc as tt, ut as nt, va as rt, vo as it, w as at, x as ot, xt as st, yt as ct, z as V, za as lt, zi as ut } from "./F0CanvasPanel-Dn-Gkmsz.js";
5
+ import { t as dt } from "./i18n-provider-defaults-p0UGTA_k.js";
6
+ import { C as ft, D as pt, F as mt, S as ht, V as gt, W as _t, X as vt, Z as yt, k as bt, l as xt, x as St } from "./useData-DWwEymV5.js";
7
+ import { Dn as Ct, Dr as wt, Er as Tt, Ft as Et, Nr as Dt, On as Ot, Or as kt, Ot as At, _t as jt, cn as Mt, ct as Nt, gt as Pt, ht as Ft, jr as It, nn as Lt, sn as Rt, un as zt } from "./F0Select-BMzj1oyt.js";
8
8
  import { n as Bt } from "./dist-UTTWm0CV.js";
9
9
  import { createContext as Vt, createElement as Ht, forwardRef as H, memo as Ut, useCallback as U, useContext as Wt, useEffect as W, useId as Gt, useInsertionEffect as Kt, useLayoutEffect as qt, useMemo as G, useRef as K, useState as q } from "react";
10
10
  import { Fragment as J, jsx as Y, jsxs as X } from "react/jsx-runtime";
@@ -31,10 +31,10 @@ var Zt = [
31
31
  "sm",
32
32
  "md",
33
33
  "lg"
34
- ], $t = (e) => e.replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;").replace(/"/g, "&quot;"), en = /[\\`*_{}[\]()#+\-.!|~>]/g, tn = (e) => e.replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(en, "\\$&"), nn = (e) => `<entity-ref type="${$t(e.type)}" id="${$t(e.id)}">${$t(e.label)}</entity-ref>`, rn = (e, t) => e.slice(t.start, M(t)).normalize("NFC") === `@${t.label}`.normalize("NFC");
34
+ ], $t = (e) => e.replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;").replace(/"/g, "&quot;"), en = /[\\`*_{}[\]()#+\-.!|~>]/g, tn = (e) => e.replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(en, "\\$&"), nn = (e) => `<entity-ref type="${$t(e.type)}" id="${$t(e.id)}">${$t(e.label)}</entity-ref>`, rn = (e, t) => e.slice(t.start, j(t)).normalize("NFC") === `@${t.label}`.normalize("NFC");
35
35
  function an(e, t) {
36
36
  let n = e.length - e.trimStart().length, r = e.trimEnd().length, i = t.filter((t) => t.start >= n && rn(e, t)).sort((e, t) => e.start - t.start), a = "", o = n;
37
- for (let t of i) t.start < o || M(t) > r || (a += tn(e.slice(o, t.start)) + nn(t), o = M(t));
37
+ for (let t of i) t.start < o || j(t) > r || (a += tn(e.slice(o, t.start)) + nn(t), o = j(t));
38
38
  return a + tn(e.slice(o, r));
39
39
  }
40
40
  //#endregion
@@ -181,16 +181,16 @@ var on = 14, sn = 2.31, cn = ({ percentage: e, tone: t }) => {
181
181
  })]
182
182
  });
183
183
  }, pn = (e) => {
184
- let { provided: t } = Ue();
185
- return t ? /* @__PURE__ */ Y(mn, { ...e }) : /* @__PURE__ */ Y(et, { children: /* @__PURE__ */ Y(mn, { ...e }) });
184
+ let { provided: t } = He();
185
+ return t ? /* @__PURE__ */ Y(mn, { ...e }) : /* @__PURE__ */ Y($e, { children: /* @__PURE__ */ Y(mn, { ...e }) });
186
186
  }, mn = ({ attachedFiles: e, isUploading: t, onRemove: n, removeLabel: r, reducedMotion: i }) => {
187
187
  let a = d(), o = hn(e), s = e.flatMap((e) => {
188
188
  let t = o.get(e.id);
189
189
  if (!t) return [];
190
- let i = e.file.name, a = e.file.type || Ge({
190
+ let i = e.file.name, a = e.file.type || We({
191
191
  name: i,
192
192
  url: t
193
- }), s = Ze({
193
+ }), s = Xe({
194
194
  name: i,
195
195
  url: t,
196
196
  mimeType: a
@@ -208,7 +208,7 @@ var on = 14, sn = 2.31, cn = ({ percentage: e, tone: t }) => {
208
208
  };
209
209
  return [{
210
210
  id: e.id,
211
- content: /* @__PURE__ */ Y(A, {
211
+ content: /* @__PURE__ */ Y(k, {
212
212
  attachment: s,
213
213
  status: e.status === "uploaded" ? "ready" : e.status === "error" ? "error" : "uploading",
214
214
  errorMessage: e.errorMessage,
@@ -274,7 +274,7 @@ var on = 14, sn = 2.31, cn = ({ percentage: e, tone: t }) => {
274
274
  }, ...e.length > 0 ? [{ type: "separator" }] : []] : [], ...gn(e)];
275
275
  return /* @__PURE__ */ Y("div", {
276
276
  onClick: (e) => e.stopPropagation(),
277
- children: /* @__PURE__ */ Y(it, {
277
+ children: /* @__PURE__ */ Y(rt, {
278
278
  items: f,
279
279
  align: "start",
280
280
  disabled: a,
@@ -285,7 +285,7 @@ var on = 14, sn = 2.31, cn = ({ percentage: e, tone: t }) => {
285
285
  label: s.ai.addToConversation,
286
286
  hideLabel: !0,
287
287
  type: "button",
288
- icon: vt,
288
+ icon: yt,
289
289
  variant: "outline",
290
290
  size: "md",
291
291
  pressed: c,
@@ -355,7 +355,7 @@ var on = 14, sn = 2.31, cn = ({ percentage: e, tone: t }) => {
355
355
  label: n.ai.creditWarning.dismiss ?? "",
356
356
  size: "sm",
357
357
  variant: "ghost",
358
- icon: S,
358
+ icon: x,
359
359
  hideLabel: !0,
360
360
  onClick: e.onDismiss
361
361
  }) : null]
@@ -375,7 +375,7 @@ var on = 14, sn = 2.31, cn = ({ percentage: e, tone: t }) => {
375
375
  /* @__PURE__ */ Y("div", {
376
376
  className: "flex items-center py-0.5",
377
377
  children: /* @__PURE__ */ Y(m, {
378
- icon: at,
378
+ icon: it,
379
379
  size: "md",
380
380
  color: "default"
381
381
  })
@@ -390,7 +390,7 @@ var on = 14, sn = 2.31, cn = ({ percentage: e, tone: t }) => {
390
390
  variant: "ghost",
391
391
  label: r.ai.removeQuote,
392
392
  onClick: t,
393
- icon: S,
393
+ icon: x,
394
394
  hideLabel: !0,
395
395
  size: "sm"
396
396
  })
@@ -399,7 +399,7 @@ var on = 14, sn = 2.31, cn = ({ percentage: e, tone: t }) => {
399
399
  });
400
400
  }, Sn = ({ cards: e }) => e.length === 0 ? null : /* @__PURE__ */ Y("div", {
401
401
  className: "grid w-full grid-cols-2 gap-3",
402
- children: e.slice(0, 4).map((e) => /* @__PURE__ */ Y(ne, {
402
+ children: e.slice(0, 4).map((e) => /* @__PURE__ */ Y(I, {
403
403
  avatar: {
404
404
  type: "icon",
405
405
  icon: e.icon
@@ -705,46 +705,46 @@ function Ln(e) {
705
705
  }
706
706
  //#endregion
707
707
  //#region src/addons/ai/ai/F0AiChatTextArea/AiChatComposer.tsx
708
- var Rn = ({ onSubmit: t, onStop: r, inProgress: i, onBeforeSubmit: a, placeholders: o, creditWarning: c, clarifyingUI: l, pendingContext: u = null, onPendingContextChange: f, pendingQuote: m = null, onPendingQuoteChange: h, fileAttachments: g, toolbarStart: _, composerActions: b, onComposerActionsOpenChange: x, onTranscribe: S, searchPersons: C, mentionSources: w, onProcessFilesRef: E, disclaimer: D, usageLimits: O, footer: ee, isWelcomeScreen: k = !1, fullscreen: A = !1, welcomeScreenSuggestions: j, onSuggestionClick: M, welcomeScreenSuggestionsPlacement: N = "above", welcomeScreenSuggestionsCollapsedByDefault: P = !1, welcomeScreenCards: F, padding: te = "default", name: ne, ref: re }) => {
709
- let I = d(), L = e(), ae = !!L, R = K(null), [z, oe] = q(null), [se, ce] = q(!1), [le, ue] = q({
708
+ var Rn = ({ onSubmit: t, onStop: r, inProgress: i, onBeforeSubmit: a, placeholders: o, creditWarning: c, clarifyingUI: l, pendingContext: u = null, onPendingContextChange: f, pendingQuote: m = null, onPendingQuoteChange: h, fileAttachments: g, toolbarStart: _, composerActions: b, onComposerActionsOpenChange: x, onTranscribe: S, searchPersons: C, mentionSources: T, onProcessFilesRef: E, disclaimer: D, usageLimits: O, footer: ee, isWelcomeScreen: k = !1, fullscreen: A = !1, welcomeScreenSuggestions: j, onSuggestionClick: M, welcomeScreenSuggestionsPlacement: N = "above", welcomeScreenSuggestionsCollapsedByDefault: P = !1, welcomeScreenCards: F, padding: I = "default", name: te, ref: ne }) => {
709
+ let L = d(), ie = e(), ae = !!ie, R = K(null), [oe, se] = q(null), [ce, le] = q(!1), [ue, de] = q({
710
710
  isEmpty: !0,
711
711
  recorder: "idle"
712
- }), de = K(null), fe = K(null);
712
+ }), fe = K(null), pe = K(null);
713
713
  W(() => () => {
714
- fe.current && clearTimeout(fe.current);
714
+ pe.current && clearTimeout(pe.current);
715
715
  }, []);
716
- let pe = l != null, he = K(u), ge = K(m);
716
+ let he = l != null, ge = K(u), _e = K(m);
717
717
  qt(() => {
718
- he.current = u, ge.current = m;
718
+ ge.current = u, _e.current = m;
719
719
  });
720
- let { tracking: _e, setFocusChatInputFunction: ve } = V(), ye = U((e, t) => {
721
- _e?.onWelcomeSuggestionClick?.({
720
+ let { tracking: ve, setFocusChatInputFunction: ye } = V(), be = U((e, t) => {
721
+ ve?.onWelcomeSuggestionClick?.({
722
722
  item: e,
723
723
  group: t,
724
724
  prompt: e.prompt || e.title
725
725
  }), M?.(e, t);
726
- }, [_e, M]), { attachedFiles: be, fileInputRef: xe, onUploadFiles: Se, acceptValue: Ce, isAtMaxFiles: we, maxFiles: Te, processFiles: Ee, handleFileSelect: De, handleRemoveFile: Oe, transientError: ke, showTransientError: Ae } = Ln(g), je = Nn({
726
+ }, [ve, M]), { attachedFiles: xe, fileInputRef: Se, onUploadFiles: Ce, acceptValue: we, isAtMaxFiles: Te, maxFiles: Ee, processFiles: De, handleFileSelect: Oe, handleRemoveFile: ke, transientError: Ae, showTransientError: je } = Ln(g), Me = Nn({
727
727
  searchPersons: C,
728
- mentionSources: w
728
+ mentionSources: T
729
729
  });
730
730
  W(() => {
731
731
  P || typeof window < "u" && window.location.hash.length === 0 && R.current?.focus();
732
732
  }, []), W(() => {
733
- if (pe) ve(null);
734
- else return ve(() => {
733
+ if (he) ye(null);
734
+ else return ye(() => {
735
735
  R.current?.focus();
736
- }), () => ve(null);
737
- }, [pe, ve]), W(() => {
736
+ }), () => ye(null);
737
+ }, [he, ye]), W(() => {
738
738
  if (E) return E((e) => {
739
- Ee(e);
739
+ De(e);
740
740
  }), () => {
741
741
  E(null);
742
742
  };
743
- }, [E, Ee]);
744
- let Me = U((e) => void Ee(e), [Ee]), Ne = be.filter((e) => e.status === "uploaded"), B = be.some((e) => e.status === "uploading"), Pe = be.some((e) => e.status === "error"), Fe = !le.isEmpty || Ne.length > 0, Ie = async ({ text: e, mentions: n }) => {
745
- if (Pe) return Ae(I.ai.fileUploadBlockedSubmit), !1;
743
+ }, [E, De]);
744
+ let Ne = U((e) => void De(e), [De]), z = xe.filter((e) => e.status === "uploaded"), Pe = xe.some((e) => e.status === "uploading"), Fe = xe.some((e) => e.status === "error"), Ie = !ue.isEmpty || z.length > 0, Le = async ({ text: e, mentions: n }) => {
745
+ if (Fe) return je(L.ai.fileUploadBlockedSubmit), !1;
746
746
  if (a && await a() === !1) return !1;
747
- let r = Ne, i = r.flatMap((e) => e.uploadedFile ? [e.uploadedFile] : []), o = u, s = m;
747
+ let r = z, i = r.flatMap((e) => e.uploadedFile ? [e.uploadedFile] : []), o = u, s = m;
748
748
  o && f?.(null), s && h?.(null);
749
749
  try {
750
750
  await t({
@@ -754,22 +754,22 @@ var Rn = ({ onSubmit: t, onStop: r, inProgress: i, onBeforeSubmit: a, placeholde
754
754
  quote: s
755
755
  });
756
756
  } catch {
757
- return o && (he.current == null || he.current === o) && f?.(o), s && (ge.current == null || ge.current === s) && h?.(s), !1;
757
+ return o && (ge.current == null || ge.current === o) && f?.(o), s && (_e.current == null || _e.current === s) && h?.(s), !1;
758
758
  }
759
- for (let e of r) Oe(e.id);
759
+ for (let e of r) ke(e.id);
760
760
  return !0;
761
- }, Le = z ? z.prompt ?? z.title : null, Re = Le ? [Le] : o ?? [], ze = N === "inside", Be = k && j && j.length > 0 && M ? /* @__PURE__ */ Y(An, {
761
+ }, Re = oe ? oe.prompt ?? oe.title : null, ze = Re ? [Re] : o ?? [], B = N === "inside", Be = k && j && j.length > 0 && M ? /* @__PURE__ */ Y(An, {
762
762
  suggestions: j,
763
- onItemClick: ye,
764
- onItemHover: oe,
765
- side: ze ? "bottom" : "top",
766
- reserveTwoRows: !ze,
767
- overflow: ze ? "scroll" : "wrap"
768
- }) : null, Ve = !P || se || Fe || le.recorder !== "idle", He = (e) => e instanceof Node ? de.current?.contains(e) ? !0 : e instanceof Element && e.closest("[data-radix-popper-content-wrapper]") !== null : !1, Ue = () => {
769
- fe.current && clearTimeout(fe.current), fe.current = setTimeout(() => {
770
- He(document.activeElement) || ce(!1);
763
+ onItemClick: be,
764
+ onItemHover: se,
765
+ side: B ? "bottom" : "top",
766
+ reserveTwoRows: !B,
767
+ overflow: B ? "scroll" : "wrap"
768
+ }) : null, Ve = !P || ce || Ie || ue.recorder !== "idle", He = (e) => e instanceof Node ? fe.current?.contains(e) ? !0 : e instanceof Element && e.closest("[data-radix-popper-content-wrapper]") !== null : !1, Ue = () => {
769
+ pe.current && clearTimeout(pe.current), pe.current = setTimeout(() => {
770
+ He(document.activeElement) || le(!1);
771
771
  }, 0);
772
- }, We = ze, Ge = We && P, Ke = Ge && !Ve, qe = We && Be ? /* @__PURE__ */ Y("div", {
772
+ }, We = B, Ge = We && P, Ke = Ge && !Ve, qe = We && Be ? /* @__PURE__ */ Y("div", {
773
773
  onClick: (e) => e.stopPropagation(),
774
774
  children: Be
775
775
  }) : void 0, Je = {
@@ -780,16 +780,16 @@ var Rn = ({ onSubmit: t, onStop: r, inProgress: i, onBeforeSubmit: a, placeholde
780
780
  .2,
781
781
  1
782
782
  ]
783
- }, Ye = k && A && !!F && F.length > 0, Xe = A && k, { motionProps: Ze } = T(k, 160, .5);
783
+ }, Ye = k && A && !!F && F.length > 0, Xe = A && k, { motionProps: Ze } = w(k, 160, .5);
784
784
  return /* @__PURE__ */ X(v.div, {
785
- ref: re,
785
+ ref: ne,
786
786
  "data-composer-layout": Xe ? "welcome" : "docked",
787
- className: y("flex flex-col items-center gap-2", te === "default" && "px-4 pb-3 pt-2", Xe && "min-h-0 flex-1 justify-start -mt-20"),
787
+ className: y("flex flex-col items-center gap-2", I === "default" && "px-4 pb-3 pt-2", Xe && "min-h-0 flex-1 justify-start -mt-20"),
788
788
  ...A ? Ze : {},
789
789
  children: [
790
790
  /* @__PURE__ */ X("div", {
791
791
  className: "flex w-full max-w-content flex-col gap-2",
792
- children: [Be && !ze ? /* @__PURE__ */ Y("div", { children: P ? /* @__PURE__ */ Y(s, {
792
+ children: [Be && !B ? /* @__PURE__ */ Y("div", { children: P ? /* @__PURE__ */ Y(s, {
793
793
  initial: !1,
794
794
  children: Ve ? /* @__PURE__ */ Y(v.div, {
795
795
  className: "overflow-hidden",
@@ -812,75 +812,75 @@ var Rn = ({ onSubmit: t, onStop: r, inProgress: i, onBeforeSubmit: a, placeholde
812
812
  creditWarning: c,
813
813
  children: /* @__PURE__ */ Y(me, {
814
814
  asForm: !0,
815
- surfaceRef: de,
815
+ surfaceRef: fe,
816
816
  handleRef: R,
817
817
  className: "isolate z-20 items-stretch p-0 hover:cursor-text",
818
- accent: pe,
819
- replacement: pe ? l : null,
820
- onSurfaceFocus: () => ce(!0),
818
+ accent: he,
819
+ replacement: he ? l : null,
820
+ onSurfaceFocus: () => le(!0),
821
821
  onSurfaceBlur: Ue,
822
- onStateChange: ue,
823
- onSend: Ie,
822
+ onStateChange: de,
823
+ onSend: Le,
824
824
  inProgress: i,
825
825
  onStop: r,
826
- hasAttachments: Ne.length > 0,
827
- sendBlocked: B,
828
- error: ke,
826
+ hasAttachments: z.length > 0,
827
+ sendBlocked: Pe,
828
+ error: Ae,
829
829
  role: "textbox",
830
- name: ne,
831
- placeholders: Re,
830
+ name: te,
831
+ placeholders: ze,
832
832
  placeholdersPaused: i,
833
833
  labels: {
834
- placeholder: I.ai.inputPlaceholder,
835
- listening: I.ai.listening,
836
- send: I.ai.sendMessage,
837
- stop: I.ai.stopAnswerGeneration,
838
- recordAudio: I.ai.recordAudio,
839
- cancelRecording: I.ai.cancelRecording,
840
- confirmRecording: I.ai.stopRecording,
841
- micPermissionDenied: I.ai.micPermissionDenied,
842
- micError: I.ai.micError,
843
- transcriptionError: I.ai.transcriptionError,
844
- mentionSuggestions: I.ai.mentions.suggestions
834
+ placeholder: L.ai.inputPlaceholder,
835
+ listening: L.ai.listening,
836
+ send: L.ai.sendMessage,
837
+ stop: L.ai.stopAnswerGeneration,
838
+ recordAudio: L.ai.recordAudio,
839
+ cancelRecording: L.ai.cancelRecording,
840
+ confirmRecording: L.ai.stopRecording,
841
+ micPermissionDenied: L.ai.micPermissionDenied,
842
+ micError: L.ai.micError,
843
+ transcriptionError: L.ai.transcriptionError,
844
+ mentionSuggestions: L.ai.mentions.suggestions
845
845
  },
846
846
  mentions: {
847
- sources: je,
848
- showGroupLabels: je.length > 1
847
+ sources: Me,
848
+ showGroupLabels: Me.length > 1
849
849
  },
850
850
  voice: S ? {
851
851
  onTranscribe: S,
852
- onPress: _e?.onDictationStart,
853
- onCancelled: _e?.onDictationCancel
852
+ onPress: ve?.onDictationStart,
853
+ onCancelled: ve?.onDictationCancel
854
854
  } : void 0,
855
- onPasteFiles: g?.onUploadFiles ? Me : void 0,
855
+ onPasteFiles: g?.onUploadFiles ? Ne : void 0,
856
856
  pastePreferText: !0,
857
857
  header: m ? /* @__PURE__ */ Y(xn, {
858
858
  quote: m,
859
859
  onRemove: () => h?.(null)
860
860
  }) : null,
861
861
  tray: /* @__PURE__ */ Y(pn, {
862
- attachedFiles: be,
863
- isUploading: B,
864
- onRemove: Oe,
865
- removeLabel: I.ai.removeFile,
862
+ attachedFiles: xe,
863
+ isUploading: Pe,
864
+ onRemove: ke,
865
+ removeLabel: L.ai.removeFile,
866
866
  reducedMotion: ae
867
867
  }),
868
868
  leading: We ? /* @__PURE__ */ Y("div", {
869
869
  className: "flex shrink-0 self-center pl-3",
870
- children: /* @__PURE__ */ Y(ie, {
870
+ children: /* @__PURE__ */ Y(re, {
871
871
  size: "sm",
872
872
  spin: i
873
873
  })
874
874
  }) : void 0,
875
- toolbarStart: Se || _ || b?.length ? (e) => /* @__PURE__ */ X(J, { children: [/* @__PURE__ */ Y(vn, {
876
- onUploadFiles: Se,
875
+ toolbarStart: Ce || _ || b?.length ? (e) => /* @__PURE__ */ X(J, { children: [/* @__PURE__ */ Y(vn, {
876
+ onUploadFiles: Ce,
877
877
  composerActions: b,
878
878
  onComposerActionsOpenChange: x,
879
- isAtMaxFiles: we,
880
- maxFiles: Te,
881
- acceptValue: Ce,
882
- fileInputRef: xe,
883
- handleFileSelect: De,
879
+ isAtMaxFiles: Te,
880
+ maxFiles: Ee,
881
+ acceptValue: we,
882
+ fileInputRef: Se,
883
+ handleFileSelect: Oe,
884
884
  recordingStatus: e
885
885
  }), _ ? /* @__PURE__ */ Y("div", {
886
886
  className: "min-w-0 cursor-default",
@@ -905,7 +905,7 @@ var Rn = ({ onSubmit: t, onStop: r, inProgress: i, onBeforeSubmit: a, placeholde
905
905
  /* @__PURE__ */ Y(s, {
906
906
  mode: "wait",
907
907
  initial: !1,
908
- children: pe ? /* @__PURE__ */ X(v.div, {
908
+ children: he ? /* @__PURE__ */ X(v.div, {
909
909
  className: "flex w-full max-w-content flex-row flex-wrap items-center justify-center gap-x-3 gap-y-1 text-sm font-medium text-f1-foreground-tertiary",
910
910
  initial: { opacity: 0 },
911
911
  animate: { opacity: 1 },
@@ -921,7 +921,7 @@ var Rn = ({ onSubmit: t, onStop: r, inProgress: i, onBeforeSubmit: a, placeholde
921
921
  children: "↑↓"
922
922
  }),
923
923
  " ",
924
- I.ai.clarifyingQuestion.navHint.navigate
924
+ L.ai.clarifyingQuestion.navHint.navigate
925
925
  ] }),
926
926
  /* @__PURE__ */ X("span", { children: [
927
927
  /* @__PURE__ */ Y("kbd", {
@@ -929,7 +929,7 @@ var Rn = ({ onSubmit: t, onStop: r, inProgress: i, onBeforeSubmit: a, placeholde
929
929
  children: "Enter"
930
930
  }),
931
931
  " ",
932
- I.ai.clarifyingQuestion.navHint.select
932
+ L.ai.clarifyingQuestion.navHint.select
933
933
  ] }),
934
934
  /* @__PURE__ */ X("span", { children: [
935
935
  /* @__PURE__ */ Y("kbd", {
@@ -937,7 +937,7 @@ var Rn = ({ onSubmit: t, onStop: r, inProgress: i, onBeforeSubmit: a, placeholde
937
937
  children: "Esc"
938
938
  }),
939
939
  " ",
940
- I.ai.clarifyingQuestion.navHint.cancel
940
+ L.ai.clarifyingQuestion.navHint.cancel
941
941
  ] })
942
942
  ]
943
943
  }, "clarifying-nav-hint") : (D?.text || O) && !Xe && /* @__PURE__ */ X(v.div, {
@@ -946,7 +946,7 @@ var Rn = ({ onSubmit: t, onStop: r, inProgress: i, onBeforeSubmit: a, placeholde
946
946
  animate: { opacity: 1 },
947
947
  exit: { opacity: 0 },
948
948
  transition: {
949
- duration: L ? 0 : .3,
949
+ duration: ie ? 0 : .3,
950
950
  ease: "easeOut"
951
951
  },
952
952
  children: [/* @__PURE__ */ X("div", {
@@ -1013,12 +1013,12 @@ function Un({ ...e }) {
1013
1013
  //#endregion
1014
1014
  //#region src/addons/ai/ai/F0AiChat/components/markdownRenderers/components/Image.tsx
1015
1015
  function Wn({ src: e, alt: t, ...n }) {
1016
- let r = d(), a = Se(), o = ct(), s = O(e || void 0), [c, l] = q(!1), [u, f] = q(!1), p = t || (e ? Xe(e) : "") || "image";
1016
+ let r = d(), a = Se(), o = st(), s = D(e || void 0), [c, l] = q(!1), [u, f] = q(!1), p = t || (e ? Ye(e) : "") || "image";
1017
1017
  if (!e || c || s.status === "error") return t ? /* @__PURE__ */ Y("span", {
1018
1018
  className: "text-f1-foreground-secondary",
1019
1019
  children: t
1020
1020
  }) : null;
1021
- let m = s.status === "ready" ? /* @__PURE__ */ Y(Ve, {
1021
+ let m = s.status === "ready" ? /* @__PURE__ */ Y(Be, {
1022
1022
  ...n,
1023
1023
  src: s.url,
1024
1024
  alt: t,
@@ -1046,7 +1046,7 @@ function Wn({ src: e, alt: t, ...n }) {
1046
1046
  variant: "neutral",
1047
1047
  label: r.chat.download,
1048
1048
  hideLabel: !0,
1049
- icon: B,
1049
+ icon: z,
1050
1050
  onClick: () => o(e, p)
1051
1051
  })
1052
1052
  })]
@@ -1055,7 +1055,7 @@ function Wn({ src: e, alt: t, ...n }) {
1055
1055
  //#endregion
1056
1056
  //#region src/addons/ai/ai/F0AiChat/components/markdownRenderers/components/Link.tsx
1057
1057
  function Gn({ children: e, ...t }) {
1058
- return /* @__PURE__ */ Y(te, {
1058
+ return /* @__PURE__ */ Y(F, {
1059
1059
  ...t,
1060
1060
  variant: "link",
1061
1061
  href: t.href,
@@ -1121,7 +1121,7 @@ function Yn({ id: e, trigger: t, resolver: n, contentClassName: r = "w-64", ...i
1121
1121
  side: "top",
1122
1122
  align: "start",
1123
1123
  className: y(r, "rounded-2xl border-none p-0 shadow-md"),
1124
- children: c ? /* @__PURE__ */ Y(P.Skeleton, {}) : i.renderCard ? i.renderCard(m) : /* @__PURE__ */ Y(P, { ...m ? i.mapToCard(m) : i.fallbackCard })
1124
+ children: c ? /* @__PURE__ */ Y(N.Skeleton, {}) : i.renderCard ? i.renderCard(m) : /* @__PURE__ */ Y(N, { ...m ? i.mapToCard(m) : i.fallbackCard })
1125
1125
  })]
1126
1126
  });
1127
1127
  }
@@ -1309,7 +1309,7 @@ function ir({ id: e, label: t }) {
1309
1309
  trigger: /* @__PURE__ */ Y(Xn, { label: t }),
1310
1310
  resolver: r,
1311
1311
  contentClassName: "w-72",
1312
- renderCard: (e) => e ? /* @__PURE__ */ Y(st, {
1312
+ renderCard: (e) => e ? /* @__PURE__ */ Y(ot, {
1313
1313
  name: `${e.firstName} ${e.lastName}`,
1314
1314
  avatar: {
1315
1315
  type: "person",
@@ -1320,7 +1320,7 @@ function ir({ id: e, label: t }) {
1320
1320
  subtitle: e.jobTitle,
1321
1321
  profileHref: i,
1322
1322
  actions: e.actions
1323
- }) : /* @__PURE__ */ Y(st, {
1323
+ }) : /* @__PURE__ */ Y(ot, {
1324
1324
  name: t,
1325
1325
  profileHref: i
1326
1326
  })
@@ -1370,7 +1370,7 @@ function sr({ id: e, label: t }) {
1370
1370
  label: i.t("ai.entityRef.requisition.lineManager"),
1371
1371
  value: /* @__PURE__ */ X("div", {
1372
1372
  className: "flex items-center gap-1.5 pt-1",
1373
- children: [/* @__PURE__ */ Y(gt, {
1373
+ children: [/* @__PURE__ */ Y(ht, {
1374
1374
  firstName: e.lineManager.firstName,
1375
1375
  lastName: e.lineManager.lastName,
1376
1376
  src: e.lineManager.avatarUrl,
@@ -1487,11 +1487,11 @@ function mr({ type: e, id: t, children: n }) {
1487
1487
  //#endregion
1488
1488
  //#region src/addons/ai/ai/F0AiChat/components/markdownRenderers/components/Table.tsx
1489
1489
  async function hr(e, t, n) {
1490
- let r = ot(e), i = t === "xlsx" ? await ue([{
1490
+ let r = at(e), i = t === "xlsx" ? await ue([{
1491
1491
  name: "Data",
1492
1492
  rows: r
1493
1493
  }]) : await se(r);
1494
- E(i, `${n}.${t}`);
1494
+ T(i, `${n}.${t}`);
1495
1495
  }
1496
1496
  function gr({ children: e, title: t, ...r }) {
1497
1497
  let i = d(), a = K(null), o = U((e) => {
@@ -1507,16 +1507,16 @@ function gr({ children: e, title: t, ...r }) {
1507
1507
  tag: "h2",
1508
1508
  className: "text-base font-medium capitalize text-f1-foreground",
1509
1509
  children: t ?? i.ai.reportCard.tableLabel
1510
- }), /* @__PURE__ */ Y(it, {
1511
- icon: B,
1510
+ }), /* @__PURE__ */ Y(rt, {
1511
+ icon: z,
1512
1512
  size: "md",
1513
1513
  items: [{
1514
1514
  label: i.t("ai.dataDownload.download", { format: "Excel" }),
1515
- icon: B,
1515
+ icon: z,
1516
1516
  onClick: () => o("xlsx")
1517
1517
  }, {
1518
1518
  label: i.t("ai.dataDownload.download", { format: "CSV" }),
1519
- icon: B,
1519
+ icon: z,
1520
1520
  onClick: () => o("csv")
1521
1521
  }]
1522
1522
  })]
@@ -1620,7 +1620,7 @@ var Tr = {
1620
1620
  return i ? `${r}.${i}` : r;
1621
1621
  }
1622
1622
  let n = t.split("?")[1], r = n ? new URLSearchParams(n.split("#")[0]).get("path") : null;
1623
- return Xe(r ?? t) || e || "file";
1623
+ return Ye(r ?? t) || e || "file";
1624
1624
  }, Or = (e, t) => e.startsWith("data:") ? e : `data:${t ?? "application/octet-stream"};base64,${e}`, kr = (e, t) => {
1625
1625
  let n = Z(e.data), r = Z(e.url) ?? (n ? Or(n, t) : void 0);
1626
1626
  return r ? {
@@ -1658,17 +1658,17 @@ var Tr = {
1658
1658
  if (n.length !== 0) return t === "user" ? n[n.length - 1] : n.join("\n\n");
1659
1659
  }, Fr = (e, { urlFor: t } = {}) => ({
1660
1660
  url: e.url ?? t?.(e.path) ?? e.path,
1661
- name: e.displayName || Xe(e.path),
1661
+ name: e.displayName || Ye(e.path),
1662
1662
  mimeType: e.mimeType,
1663
1663
  size: e.bytes,
1664
1664
  previewUrl: e.preview && t ? t(e.preview.path) : void 0
1665
- }), Ir = (e) => Ge(e) ?? "", Lr = ({ avatar: e }) => e?.type === "module" ? /* @__PURE__ */ Y(ht, {
1665
+ }), Ir = (e) => We(e) ?? "", Lr = ({ avatar: e }) => e?.type === "module" ? /* @__PURE__ */ Y(mt, {
1666
1666
  module: e.module,
1667
1667
  size: "md"
1668
- }) : e?.type === "file" ? /* @__PURE__ */ Y(mt, {
1668
+ }) : e?.type === "file" ? /* @__PURE__ */ Y(pt, {
1669
1669
  file: e.file,
1670
1670
  size: "lg"
1671
- }) : e?.type === "icon" ? /* @__PURE__ */ Y(pt, {
1671
+ }) : e?.type === "icon" ? /* @__PURE__ */ Y(ft, {
1672
1672
  icon: e.icon,
1673
1673
  size: "md"
1674
1674
  }) : null, Rr = ({ action: e, isActive: t }) => {
@@ -1917,10 +1917,10 @@ function ti() {
1917
1917
  //#endregion
1918
1918
  //#region src/addons/ai/ai/F0AiFileAttachments/F0AiFileAttachments.tsx
1919
1919
  var ni = "rounded-xl", ri = "ai-chat", ii = (e) => {
1920
- let { provided: t } = Ue();
1921
- return t ? /* @__PURE__ */ Y(ai, { ...e }) : /* @__PURE__ */ Y(et, { children: /* @__PURE__ */ Y(ai, { ...e }) });
1920
+ let { provided: t } = He();
1921
+ return t ? /* @__PURE__ */ Y(ai, { ...e }) : /* @__PURE__ */ Y($e, { children: /* @__PURE__ */ Y(ai, { ...e }) });
1922
1922
  }, ai = ({ files: e, align: t = "start", onOpenFile: n, onFileDownloaded: r, size: i = "default" }) => {
1923
- let { remotePreviews: a } = Ue(), { openImagePreview: o } = lt(), [s, c] = q(() => /* @__PURE__ */ new Set()), l = G(() => oi(e, a, s), [
1923
+ let { remotePreviews: a } = He(), { openImagePreview: o } = ct(), [s, c] = q(() => /* @__PURE__ */ new Set()), l = G(() => oi(e, a, s), [
1924
1924
  e,
1925
1925
  a,
1926
1926
  s
@@ -1933,13 +1933,13 @@ var ni = "rounded-xl", ri = "ai-chat", ii = (e) => {
1933
1933
  onOpenFile: n,
1934
1934
  onFileDownloaded: r,
1935
1935
  openImage: (e, t) => {
1936
- n?.(e, "image") !== !1 && o(l.images.map(rt), t);
1936
+ n?.(e, "image") !== !1 && o(l.images.map(nt), t);
1937
1937
  },
1938
1938
  onImageError: (e) => c((t) => new Set(t).add(e.url))
1939
1939
  };
1940
1940
  return Y(i === "compact" ? li : ci, { ...u });
1941
1941
  }, oi = (e, t, n) => {
1942
- let r = (e) => t || k(e.url), i = Ie(e.filter(r)), a = /* @__PURE__ */ new Set([
1942
+ let r = (e) => t || ee(e.url), i = Ie(e.filter(r)), a = /* @__PURE__ */ new Set([
1943
1943
  ...e.filter((e) => !r(e)),
1944
1944
  ...i.images.filter((e) => n.has(e.url)),
1945
1945
  ...i.files
@@ -1972,7 +1972,7 @@ var ni = "rounded-xl", ri = "ai-chat", ii = (e) => {
1972
1972
  testIdPrefix: ri,
1973
1973
  onDownloaded: () => c?.(e)
1974
1974
  }, `${e.name}-${t}`)),
1975
- n.map(({ file: e, kind: t }, n) => /* @__PURE__ */ Y(N, {
1975
+ n.map(({ file: e, kind: t }, n) => /* @__PURE__ */ Y(M, {
1976
1976
  file: we(e),
1977
1977
  kind: t,
1978
1978
  cornerClass: "rounded-xl",
@@ -1998,7 +1998,7 @@ var ni = "rounded-xl", ri = "ai-chat", ii = (e) => {
1998
1998
  className: y("flex max-w-full flex-wrap gap-1", a === "end" ? "justify-end" : "justify-start"),
1999
1999
  children: d.map((e, n) => {
2000
2000
  let r = u.get(e);
2001
- return r ? /* @__PURE__ */ Y(N, {
2001
+ return r ? /* @__PURE__ */ Y(M, {
2002
2002
  file: we(e),
2003
2003
  kind: r,
2004
2004
  cornerClass: "rounded-lg",
@@ -2020,7 +2020,7 @@ var ni = "rounded-xl", ri = "ai-chat", ii = (e) => {
2020
2020
  })]
2021
2021
  });
2022
2022
  }, ui = ({ files: e, align: t, onFileDownloaded: n }) => {
2023
- let r = ct();
2023
+ let r = st();
2024
2024
  return e.length === 0 ? null : /* @__PURE__ */ Y("div", {
2025
2025
  className: y("flex max-w-full flex-wrap gap-1.5", t === "end" ? "justify-end" : "justify-start"),
2026
2026
  children: e.map((e, t) => /* @__PURE__ */ Y(fi, {
@@ -2031,7 +2031,7 @@ var ni = "rounded-xl", ri = "ai-chat", ii = (e) => {
2031
2031
  }, `${e.name}-${t}`))
2032
2032
  });
2033
2033
  }, di = ({ file: e, onOpen: t, onError: n }) => {
2034
- let r = d(), i = O(e.thumbnailUrl ?? e.url);
2034
+ let r = d(), i = D(e.thumbnailUrl ?? e.url);
2035
2035
  return le(i.status, n), /* @__PURE__ */ Y("button", {
2036
2036
  type: "button",
2037
2037
  onClick: t,
@@ -2039,7 +2039,7 @@ var ni = "rounded-xl", ri = "ai-chat", ii = (e) => {
2039
2039
  "aria-label": r.t("chat.openNamedDocument", { name: e.name }),
2040
2040
  className: y("relative box-border h-16 w-16 shrink-0 overflow-hidden rounded-lg border border-solid border-f1-border-secondary bg-f1-background-secondary p-0 transition-opacity hover:opacity-90", b()),
2041
2041
  "data-testid": "ai-chat-image-attachment",
2042
- children: i.status === "ready" ? /* @__PURE__ */ Y(Ve, {
2042
+ children: i.status === "ready" ? /* @__PURE__ */ Y(Be, {
2043
2043
  src: i.url,
2044
2044
  alt: e.name,
2045
2045
  draggable: !1,
@@ -2049,7 +2049,7 @@ var ni = "rounded-xl", ri = "ai-chat", ii = (e) => {
2049
2049
  });
2050
2050
  }, fi = ({ file: e, onDownload: t }) => {
2051
2051
  let n = d();
2052
- return /* @__PURE__ */ Y(w, {
2052
+ return /* @__PURE__ */ Y(C, {
2053
2053
  file: {
2054
2054
  name: e.name,
2055
2055
  type: Ir(e)
@@ -2057,22 +2057,22 @@ var ni = "rounded-xl", ri = "ai-chat", ii = (e) => {
2057
2057
  size: "lg",
2058
2058
  actions: [{
2059
2059
  label: n.t("chat.downloadNamedFile", { name: e.name }),
2060
- icon: B,
2060
+ icon: z,
2061
2061
  onClick: t
2062
2062
  }]
2063
2063
  });
2064
2064
  }, pi = ({ images: e, onOpen: t, onImageError: n }) => {
2065
- let r = d(), i = e.length === 1 ? e[0] : void 0, a = O(i ? i.thumbnailUrl ?? i.url : void 0), o = We(i && a.status === "ready" ? a.url : void 0, i) ?? void 0, s = i ? be(o?.width, o?.height) : null;
2065
+ let r = d(), i = e.length === 1 ? e[0] : void 0, a = D(i ? i.thumbnailUrl ?? i.url : void 0), o = Ue(i && a.status === "ready" ? a.url : void 0, i) ?? void 0, s = i ? be(o?.width, o?.height) : null;
2066
2066
  return /* @__PURE__ */ Y("div", {
2067
2067
  style: s ? { width: s.width } : void 0,
2068
- className: y("grid grid-cols-2 overflow-hidden border border-solid border-f1-border-secondary", s ? "max-w-full" : Le, tt, ni),
2068
+ className: y("grid grid-cols-2 overflow-hidden border border-solid border-f1-border-secondary", s ? "max-w-full" : Le, et, ni),
2069
2069
  "data-testid": "ai-chat-image-album",
2070
2070
  children: Ae(o ? [o] : e).map((i, a, o) => {
2071
2071
  let s = e[i.index];
2072
2072
  if (!s) return null;
2073
2073
  let c = a === o.length - 1;
2074
2074
  return /* @__PURE__ */ Y(ke, {
2075
- image: rt(s),
2075
+ image: nt(s),
2076
2076
  aspectRatio: i.aspectRatio,
2077
2077
  spanFull: i.span === 2,
2078
2078
  inset: i.inset,
@@ -2176,7 +2176,7 @@ function bi({ anchor: e, onReply: t }) {
2176
2176
  }
2177
2177
  //#endregion
2178
2178
  //#region src/addons/ai/ai/F0AiMessagesContainer/components/AssistantMessage.tsx
2179
- var xi = Vt(void 0), Si = () => Wt(xi), Ci = (e) => /* @__PURE__ */ Y(Be, {
2179
+ var xi = Vt(void 0), Si = () => Wt(xi), Ci = (e) => /* @__PURE__ */ Y(B, {
2180
2180
  content: e,
2181
2181
  format: "markdown"
2182
2182
  }), wi = ({ isGenerating: e, isLoading: t, message: n, renderToolCall: r, onReplyQuote: i, onRendered: a, renderMarkdown: o }) => {
@@ -2255,7 +2255,7 @@ var xi = Vt(void 0), Si = () => Wt(xi), Ci = (e) => /* @__PURE__ */ Y(Be, {
2255
2255
  },
2256
2256
  children: /* @__PURE__ */ Y("div", {
2257
2257
  className: "flex flex-col gap-6",
2258
- children: /* @__PURE__ */ Y(F, {
2258
+ children: /* @__PURE__ */ Y(P, {
2259
2259
  autoFocus: !0,
2260
2260
  label: c,
2261
2261
  placeholder: l,
@@ -2320,7 +2320,7 @@ var Ai = ({ content: e, targetMessage: n, onCopy: r }) => {
2320
2320
  return /* @__PURE__ */ X("div", {
2321
2321
  className: "flex",
2322
2322
  children: [
2323
- /* @__PURE__ */ Y(qe, {
2323
+ /* @__PURE__ */ Y(Ke, {
2324
2324
  size: "md",
2325
2325
  variant: "ghost",
2326
2326
  valueToCopy: e,
@@ -2341,7 +2341,7 @@ var Ai = ({ content: e, targetMessage: n, onCopy: r }) => {
2341
2341
  className: "flex min-w-0 flex-1 items-center justify-center gap-1",
2342
2342
  children: /* @__PURE__ */ Y(m, {
2343
2343
  size: "md",
2344
- icon: o === "like" ? Ee : Qe,
2344
+ icon: o === "like" ? Ee : Ze,
2345
2345
  color: "default"
2346
2346
  })
2347
2347
  })
@@ -2359,7 +2359,7 @@ var Ai = ({ content: e, targetMessage: n, onCopy: r }) => {
2359
2359
  className: "flex min-w-0 flex-1 items-center justify-center gap-1",
2360
2360
  children: /* @__PURE__ */ Y(m, {
2361
2361
  size: "md",
2362
- icon: o === "dislike" ? He : Ye,
2362
+ icon: o === "dislike" ? Ve : Je,
2363
2363
  color: "default"
2364
2364
  })
2365
2365
  })
@@ -2374,7 +2374,7 @@ var Ai = ({ content: e, targetMessage: n, onCopy: r }) => {
2374
2374
  onOpenChange: (e) => {
2375
2375
  s || (d || l(e), o?.(e));
2376
2376
  },
2377
- children: [/* @__PURE__ */ X(j, {
2377
+ children: [/* @__PURE__ */ X(A, {
2378
2378
  disabled: s,
2379
2379
  className: y("gap-1", s ? "flex w-full items-center text-base text-f1-foreground-secondary" : "flex w-full items-center text-base text-f1-foreground-secondary transition-colors duration-150 hover:text-f1-foreground [&[data-state=open]>svg]:rotate-90"),
2380
2380
  children: [
@@ -2447,7 +2447,7 @@ var Ai = ({ content: e, targetMessage: n, onCopy: r }) => {
2447
2447
  }, [n, o]);
2448
2448
  let l = n ? a.ai.thoughtsGroupTitle : t ?? a.ai.thoughtsGroupTitle, u = e.length - 1, f = (e) => !n || r ? "completed" : e === u ? "executing" : "completed";
2449
2449
  return /* @__PURE__ */ Y(ji, {
2450
- icon: $e,
2450
+ icon: Qe,
2451
2451
  title: l,
2452
2452
  open: o,
2453
2453
  onOpenChange: s,
@@ -2456,7 +2456,7 @@ var Ai = ({ content: e, targetMessage: n, onCopy: r }) => {
2456
2456
  className: "flex flex-col gap-3 pb-4",
2457
2457
  children: e.map((t, n) => /* @__PURE__ */ X("div", {
2458
2458
  className: "relative",
2459
- children: [/* @__PURE__ */ Y(I, {
2459
+ children: [/* @__PURE__ */ Y(ne, {
2460
2460
  title: t,
2461
2461
  status: f(n),
2462
2462
  suffix: f(n) === "executing" ? /* @__PURE__ */ Y(Pi, { startedAt: i }) : void 0,
@@ -2468,14 +2468,14 @@ var Ai = ({ content: e, targetMessage: n, onCopy: r }) => {
2468
2468
  }, n))
2469
2469
  })
2470
2470
  });
2471
- }, Ii = (e) => /* @__PURE__ */ Y(Be, {
2471
+ }, Ii = (e) => /* @__PURE__ */ Y(B, {
2472
2472
  content: e,
2473
2473
  format: "markdown"
2474
2474
  }), Li = ({ text: e, renderMarkdown: t }) => /* @__PURE__ */ X("div", {
2475
2475
  className: "flex max-w-[90%] items-start gap-2 self-end pb-1 pr-2 text-f1-foreground-tertiary",
2476
2476
  children: [/* @__PURE__ */ Y("div", {
2477
2477
  className: "flex h-5 items-center",
2478
- children: /* @__PURE__ */ Y(m, { icon: at })
2478
+ children: /* @__PURE__ */ Y(m, { icon: it })
2479
2479
  }), /* @__PURE__ */ Y("div", {
2480
2480
  className: "min-w-0 whitespace-pre-wrap text-base leading-5 [&>div]:flex [&>div]:flex-col [&>div]:gap-1 [&_p]:m-0",
2481
2481
  children: (t ?? Ii)(e)
@@ -2657,8 +2657,8 @@ var Ji = {
2657
2657
  onThumbsUp: () => {},
2658
2658
  onThumbsDown: () => {}
2659
2659
  }, Yi = (e) => {
2660
- let t = Ue(), n = /* @__PURE__ */ Y(Di, { children: /* @__PURE__ */ Y(Xi, { ...e }) });
2661
- return e.filePreviews || !t.provided ? /* @__PURE__ */ Y(et, {
2660
+ let t = He(), n = /* @__PURE__ */ Y(Di, { children: /* @__PURE__ */ Y(Xi, { ...e }) });
2661
+ return e.filePreviews || !t.provided ? /* @__PURE__ */ Y($e, {
2662
2662
  filePreviews: e.filePreviews,
2663
2663
  children: n
2664
2664
  }) : n;
@@ -2666,14 +2666,14 @@ var Ji = {
2666
2666
  let { modal: D, handleSubmit: O, handleClose: ee } = ki(h ?? Ji), k = d(), A = C ?? wi, j = w ?? Ri, M = G(() => {
2667
2667
  let e = r ?? k.ai.defaultInitialMessage;
2668
2668
  return (Array.isArray(e) ? e : [e]).filter((e) => typeof e == "string" && e.length > 0);
2669
- }, [r, k.ai.defaultInitialMessage]), N = !t && e.length === 0 && M.length > 0, P = K(null), F = K(null), te = K(null), ne = K(null), re = K(null), { showScrollBtn: ie, turnMinHeight: L, scrollToBottom: ae } = qi({
2669
+ }, [r, k.ai.defaultInitialMessage]), N = !t && e.length === 0 && M.length > 0, P = K(null), F = K(null), I = K(null), te = K(null), re = K(null), { showScrollBtn: L, turnMinHeight: ie, scrollToBottom: ae } = qi({
2670
2670
  viewportRef: P,
2671
2671
  contentRef: F,
2672
- endRef: te,
2672
+ endRef: I,
2673
2673
  lastTurnRef: re,
2674
2674
  turnsCount: e.length,
2675
2675
  freezeTurnMinHeight: g
2676
- }), R = e[e.length - 1], z = Ki(!(!R || R.endIndicator !== "thinking" && !R.thinking?.inProgress), R?.thinking?.startedAt), oe = R?.endIndicator === "asking", se = (t, n) => {
2676
+ }), R = e[e.length - 1], oe = Ki(!(!R || R.endIndicator !== "thinking" && !R.thinking?.inProgress), R?.thinking?.startedAt), se = R?.endIndicator === "asking", ce = (t, n) => {
2677
2677
  let r = n === e.length - 1, i = {
2678
2678
  renderToolCall: l,
2679
2679
  onReplyQuote: u,
@@ -2716,7 +2716,7 @@ var Ji = {
2716
2716
  return /* @__PURE__ */ X("div", {
2717
2717
  ref: r ? re : void 0,
2718
2718
  className: y("flex flex-col items-start justify-start gap-2 px-1", r && "pb-5"),
2719
- style: { minHeight: r && L || void 0 },
2719
+ style: { minHeight: r && ie || void 0 },
2720
2720
  children: [
2721
2721
  t.userMessages.map((e, t) => a(e, t)),
2722
2722
  t.thinking && t.thinking.titles.length > 0 ? /* @__PURE__ */ Y(Fi, {
@@ -2724,16 +2724,16 @@ var Ji = {
2724
2724
  title: k.ai.thoughtsGroupTitle,
2725
2725
  inProgress: t.thinking.inProgress,
2726
2726
  isWriting: t.thinking.isWriting,
2727
- startedAt: r ? z : null
2727
+ startedAt: r ? oe : null
2728
2728
  }) : null,
2729
2729
  t.assistantMessages.map((e, t) => o(e, t)),
2730
- t.endIndicator === "thinking" ? /* @__PURE__ */ Y(I, {
2730
+ t.endIndicator === "thinking" ? /* @__PURE__ */ Y(ne, {
2731
2731
  title: k.ai.thinking,
2732
2732
  status: "executing",
2733
- suffix: /* @__PURE__ */ Y(Pi, { startedAt: z })
2733
+ suffix: /* @__PURE__ */ Y(Pi, { startedAt: oe })
2734
2734
  }) : null,
2735
- t.endIndicator === "activity" ? /* @__PURE__ */ Y(I, { status: "writing" }) : null,
2736
- t.endIndicator === "asking" ? /* @__PURE__ */ Y(I, {
2735
+ t.endIndicator === "activity" ? /* @__PURE__ */ Y(ne, { status: "writing" }) : null,
2736
+ t.endIndicator === "asking" ? /* @__PURE__ */ Y(ne, {
2737
2737
  title: k.ai.askingQuestions,
2738
2738
  status: "asking"
2739
2739
  }) : null,
@@ -2752,7 +2752,7 @@ var Ji = {
2752
2752
  /* @__PURE__ */ Y("div", {
2753
2753
  role: "status",
2754
2754
  className: "sr-only",
2755
- children: oe ? k.ai.askingQuestions : ""
2755
+ children: se ? k.ai.askingQuestions : ""
2756
2756
  }),
2757
2757
  /* @__PURE__ */ Y("div", {
2758
2758
  ref: P,
@@ -2773,21 +2773,21 @@ var Ji = {
2773
2773
  onClick: c,
2774
2774
  fullscreen: x
2775
2775
  }) : null,
2776
- t ? null : e.map((e, t) => se(e, t)),
2776
+ t ? null : e.map((e, t) => ce(e, t)),
2777
2777
  n
2778
2778
  ]
2779
2779
  }),
2780
2780
  /* @__PURE__ */ Y("div", {
2781
- ref: ne,
2781
+ ref: te,
2782
2782
  className: "h-px shrink-0",
2783
2783
  "aria-hidden": !0
2784
2784
  }),
2785
2785
  /* @__PURE__ */ Y("footer", {
2786
2786
  className: "copilotKitMessagesFooter",
2787
- ref: te,
2787
+ ref: I,
2788
2788
  children: S
2789
2789
  }),
2790
- /* @__PURE__ */ Y(s, { children: ie ? /* @__PURE__ */ Y(v.div, {
2790
+ /* @__PURE__ */ Y(s, { children: L ? /* @__PURE__ */ Y(v.div, {
2791
2791
  className: "sticky bottom-[calc(0.5rem+var(--f0-ai-composer-overlap,0px))] z-10 flex justify-center",
2792
2792
  initial: {
2793
2793
  opacity: 0,
@@ -2813,7 +2813,7 @@ var Ji = {
2813
2813
  ]
2814
2814
  })
2815
2815
  }),
2816
- !b && !N ? /* @__PURE__ */ Y(Je, { position: "top" }, "shadow-top") : null
2816
+ !b && !N ? /* @__PURE__ */ Y(qe, { position: "top" }, "shadow-top") : null
2817
2817
  ]
2818
2818
  }), D.isOpen ? /* @__PURE__ */ Y(Ti, {
2819
2819
  onSubmit: O,
@@ -2835,7 +2835,7 @@ var Ji = {
2835
2835
  /* @__PURE__ */ Y(c, { className: "h-5 w-4/5 rounded-md" })
2836
2836
  ]
2837
2837
  })
2838
- }), $i = { ai: ft.ai }, ea = Vt(null);
2838
+ }), $i = { ai: dt.ai }, ea = Vt(null);
2839
2839
  function ta({ children: e, translations: t }) {
2840
2840
  return /* @__PURE__ */ Y(ea.Provider, {
2841
2841
  value: t,
@@ -3079,7 +3079,7 @@ var ua = [
3079
3079
  onClick: l,
3080
3080
  label: u.actions.cancel,
3081
3081
  hideLabel: !0,
3082
- icon: S
3082
+ icon: x
3083
3083
  })
3084
3084
  ]
3085
3085
  });
@@ -3090,20 +3090,20 @@ var ua = [
3090
3090
  let r = d(), i = e(), { currentStep: a, currentStepIndex: o, totalSteps: c, toggleOption: l, confirm: u, skip: f, cancel: p, back: m, setCustomAnswerText: h, setCustomAnswerActive: g, activateCustomAnswer: _ } = t, { question: y, options: b, selectedOptionIds: x, selectionMode: S, optional: C, allowCustomAnswer: w, customAnswerText: T, isCustomAnswerActive: E } = a, D = K(null), O = S ?? "single", ee = c > 1, k = o === 0, A = o === c - 1, j = ee ? r.t("ai.clarifyingQuestion.stepOf", {
3091
3091
  current: String(o + 1),
3092
3092
  total: String(c)
3093
- }) : void 0, M = x.length > 0, N = (T ?? "").trim().length > 0, P = M || E && N || C === !0, F = n === !0 && A, te = () => {
3093
+ }) : void 0, M = x.length > 0, N = (T ?? "").trim().length > 0, P = M || E && N || C === !0, F = n === !0 && A, I = () => {
3094
3094
  F || u();
3095
- }, ne = () => {
3095
+ }, te = () => {
3096
3096
  F || f();
3097
- }, re = (e) => {
3097
+ }, ne = (e) => {
3098
3098
  let t = O === "single" && x.includes(e);
3099
3099
  l(e), O === "single" && !A && !t && Promise.resolve().then(u);
3100
- }, I = A ? r.ai.clarifyingQuestion.submit : r.ai.clarifyingQuestion.next, ie = C === !0 && !M && !(E && N), L = () => {
3100
+ }, re = A ? r.ai.clarifyingQuestion.submit : r.ai.clarifyingQuestion.next, L = C === !0 && !M && !(E && N), ie = () => {
3101
3101
  _(), requestAnimationFrame(() => {
3102
3102
  D.current?.focus();
3103
3103
  });
3104
3104
  }, ae = (e) => {
3105
3105
  e.key === "Escape" && (e.preventDefault(), p());
3106
- }, R = i ? 0 : _a, z = i ? 0 : va;
3106
+ }, R = i ? 0 : _a, oe = i ? 0 : va;
3107
3107
  return /* @__PURE__ */ X("div", {
3108
3108
  className: "flex flex-col",
3109
3109
  onKeyDown: ae,
@@ -3125,7 +3125,7 @@ var ua = [
3125
3125
  exit: {
3126
3126
  opacity: 0,
3127
3127
  transition: {
3128
- duration: z,
3128
+ duration: oe,
3129
3129
  ease: ga
3130
3130
  }
3131
3131
  },
@@ -3150,21 +3150,21 @@ var ua = [
3150
3150
  isCustomAnswerActive: E,
3151
3151
  canProceed: P,
3152
3152
  customInputRef: D,
3153
- onToggleOption: re,
3154
- onActivateCustom: L,
3153
+ onToggleOption: ne,
3154
+ onActivateCustom: ie,
3155
3155
  onChangeCustomText: h,
3156
3156
  onToggleCustomActive: g,
3157
- onConfirm: te
3157
+ onConfirm: I
3158
3158
  })]
3159
3159
  }, o)
3160
3160
  })
3161
3161
  }), /* @__PURE__ */ Y(aa, {
3162
3162
  canProceed: P,
3163
3163
  submitDisabled: F,
3164
- label: I,
3165
- onConfirm: te,
3166
- onSkip: ne,
3167
- showSkip: ie
3164
+ label: re,
3165
+ onConfirm: I,
3166
+ onSkip: te,
3167
+ showSkip: L
3168
3168
  })]
3169
3169
  });
3170
3170
  };
@@ -3490,7 +3490,7 @@ var Oa = class {
3490
3490
  repeatType: "mirror"
3491
3491
  };
3492
3492
  function Fa(e) {
3493
- let [t, n] = q(e), r = nt(e), i = K(null);
3493
+ let [t, n] = q(e), r = tt(e), i = K(null);
3494
3494
  return Xt(r, "change", (e) => n(e)), {
3495
3495
  value: t,
3496
3496
  motionValue: r,
@@ -3827,12 +3827,12 @@ function fo({ fs: e, vs: t = Ba, textures: n = [], uniforms: r, clearColor: i =
3827
3827
  n.deleteShader(r), d?.($(`Shader compiler log: ${e}`));
3828
3828
  }
3829
3829
  return r;
3830
- }, te = (e, t) => {
3830
+ }, I = (e, t) => {
3831
3831
  let n = m.current;
3832
3832
  if (!n) return;
3833
3833
  let r = F(n.FRAGMENT_SHADER, e), i = F(n.VERTEX_SHADER, t);
3834
3834
  g.current = n.createProgram(), g.current && i && r && (n.attachShader(g.current, i), n.attachShader(g.current, r), n.linkProgram(g.current), n.getProgramParameter(g.current, n.LINK_STATUS) ? (n.useProgram(g.current), _.current = n.getAttribLocation(g.current, "aVertexPosition"), n.enableVertexAttribArray(_.current)) : d?.($(`Unable to initialize the shader program: ${n.getProgramInfoLog(g.current)}`)));
3835
- }, ne = () => {
3835
+ }, te = () => {
3836
3836
  if (r) for (let e of Object.keys(r)) {
3837
3837
  let t = r[e];
3838
3838
  if (!t) continue;
@@ -3846,7 +3846,7 @@ function fo({ fs: e, vs: t = Ba, textures: n = [], uniforms: r, clearColor: i =
3846
3846
  ...o ? { arraySize: o } : {}
3847
3847
  };
3848
3848
  }
3849
- }, re = () => {
3849
+ }, ne = () => {
3850
3850
  let e = m.current;
3851
3851
  if (e) {
3852
3852
  if (n && n.length > 0) {
@@ -3867,7 +3867,7 @@ function fo({ fs: e, vs: t = Ba, textures: n = [], uniforms: r, clearColor: i =
3867
3867
  });
3868
3868
  } else u && u();
3869
3869
  }
3870
- }, I = (e) => {
3870
+ }, re = (e) => {
3871
3871
  let t = La.includes(a ?? "highp"), n = `precision ${t ? a : La[1]} float;\n`;
3872
3872
  t || f?.($(`wrong precision type ${a}, please make sure to pass one of a valid precision lowp, mediump, highp, by default you shader precision will be set to highp.`));
3873
3873
  let r = n.concat(`#define DPR ${l.toFixed(1)}\n`).concat(e.replace(/texture\(/g, "texture2D("));
@@ -3877,7 +3877,7 @@ function fo({ fs: e, vs: t = Ba, textures: n = [], uniforms: r, clearColor: i =
3877
3877
  r = uo(r, `uniform ${e.type} ${t}${e.arraySize || ""}; \n`, r.lastIndexOf(n) + n.length), e.isNeeded = !0;
3878
3878
  }
3879
3879
  return e.includes("mainImage") && (r = r.concat(Ra)), r;
3880
- }, ie = (e) => {
3880
+ }, L = (e) => {
3881
3881
  let t = m.current;
3882
3882
  if (!t || !g.current) return;
3883
3883
  let n = w.current ? (e - w.current) / 1e3 : 0;
@@ -3936,16 +3936,16 @@ function fo({ fs: e, vs: t = Ba, textures: n = [], uniforms: r, clearColor: i =
3936
3936
  t.activeTexture(t.TEXTURE0 + e), t.bindTexture(t.TEXTURE_2D, i), t.uniform1i(s, e), r && n.updateTexture(i, a, o);
3937
3937
  }
3938
3938
  }
3939
- }, L = (e) => {
3939
+ }, ie = (e) => {
3940
3940
  let t = m.current;
3941
3941
  if (!t) return;
3942
- t.viewport(0, 0, t.drawingBufferWidth, t.drawingBufferHeight), t.clear(t.COLOR_BUFFER_BIT | t.DEPTH_BUFFER_BIT), t.bindBuffer(t.ARRAY_BUFFER, h.current), t.vertexAttribPointer(_.current ?? 0, 3, t.FLOAT, !1, 0, 0), ie(e), t.drawArrays(t.TRIANGLE_STRIP, 0, 4);
3942
+ t.viewport(0, 0, t.drawingBufferWidth, t.drawingBufferHeight), t.clear(t.COLOR_BUFFER_BIT | t.DEPTH_BUFFER_BIT), t.bindBuffer(t.ARRAY_BUFFER, h.current), t.vertexAttribPointer(_.current ?? 0, 3, t.FLOAT, !1, 0, 0), L(e), t.drawArrays(t.TRIANGLE_STRIP, 0, 4);
3943
3943
  let n = E.current.iMouse?.value;
3944
3944
  if (E.current.iMouse?.isNeeded && c !== 1 && Array.isArray(n)) {
3945
3945
  let e = n[0] ?? 0, t = n[1] ?? 0;
3946
3946
  n[0] = lo(e, S.current[0] ?? 0, c), n[1] = lo(t, S.current[1] ?? 0, c);
3947
3947
  }
3948
- v.current = requestAnimationFrame(L);
3948
+ v.current = requestAnimationFrame(ie);
3949
3949
  }, ae = () => {
3950
3950
  let e = { passive: !0 };
3951
3951
  E.current.iMouse?.isNeeded && p.current && (p.current.addEventListener("mousemove", M, e), p.current.addEventListener("mouseout", N, e), p.current.addEventListener("mouseup", N, e), p.current.addEventListener("mousedown", j, e), p.current.addEventListener("touchmove", M, e), p.current.addEventListener("touchend", N, e), p.current.addEventListener("touchstart", j, e)), E.current.iDeviceOrientation?.isNeeded && window.addEventListener("deviceorientation", A, e), p.current && (T.current = new ResizeObserver(P), T.current.observe(p.current), window.addEventListener("resize", P, e));
@@ -3960,7 +3960,7 @@ function fo({ fs: e, vs: t = Ba, textures: n = [], uniforms: r, clearColor: i =
3960
3960
  function r() {
3961
3961
  ee();
3962
3962
  let n = m.current;
3963
- n && p.current && (n.clearColor(...i), n.clearDepth(1), n.enable(n.DEPTH_TEST), n.depthFunc(n.LEQUAL), n.viewport(0, 0, p.current.width, p.current.height), p.current.height = p.current.clientHeight, p.current.width = p.current.clientWidth, ne(), re(), te(I(e || za), t || Ba), k(), requestAnimationFrame(L), ae(), P());
3963
+ n && p.current && (n.clearColor(...i), n.clearDepth(1), n.enable(n.DEPTH_TEST), n.depthFunc(n.LEQUAL), n.viewport(0, 0, p.current.width, p.current.height), p.current.height = p.current.clientHeight, p.current.width = p.current.clientWidth, te(), ne(), I(re(e || za), t || Ba), k(), requestAnimationFrame(ie), ae(), P());
3964
3964
  }
3965
3965
  return requestAnimationFrame(r), () => {
3966
3966
  let e = m.current;
@@ -4107,7 +4107,7 @@ function _o({ size: e = "lg", state: t, color: n, colorShift: r = .05, audioTrac
4107
4107
  }
4108
4108
  //#endregion
4109
4109
  //#region src/blocks/ai/F0HILActionConfirmation/F0HILActionConfirmation.tsx
4110
- var vo = ({ text: e, description: t, avatar: n, confirmationText: r, onConfirm: i, cancelText: a, onCancel: o, stackAt: s = "sm" }) => /* @__PURE__ */ Y(ne, {
4110
+ var vo = ({ text: e, description: t, avatar: n, confirmationText: r, onConfirm: i, cancelText: a, onCancel: o, stackAt: s = "sm" }) => /* @__PURE__ */ Y(I, {
4111
4111
  title: e,
4112
4112
  description: t,
4113
4113
  avatar: n,
@@ -4151,7 +4151,7 @@ var vo = ({ text: e, description: t, avatar: n, confirmationText: r, onConfirm:
4151
4151
  1
4152
4152
  ]
4153
4153
  },
4154
- children: /* @__PURE__ */ Y(ut, {
4154
+ children: /* @__PURE__ */ Y(lt, {
4155
4155
  size: "md",
4156
4156
  label: i.ai.ask,
4157
4157
  onClick: (e) => {
@@ -4181,7 +4181,7 @@ var vo = ({ text: e, description: t, avatar: n, confirmationText: r, onConfirm:
4181
4181
  let { label: t } = e;
4182
4182
  return e.content === "person" ? /* @__PURE__ */ Y(To, {
4183
4183
  label: t,
4184
- children: /* @__PURE__ */ Y(gt, {
4184
+ children: /* @__PURE__ */ Y(ht, {
4185
4185
  firstName: e.avatar.firstName,
4186
4186
  lastName: e.avatar.lastName,
4187
4187
  src: e.avatar.src,
@@ -4279,7 +4279,7 @@ var jo = ({ cx: e, cy: t, index: n, dataLength: r, color: i }) => n !== r - 1 ||
4279
4279
  className: "relative w-full flex-1",
4280
4280
  role: "img",
4281
4281
  "aria-label": `Sparkline chart showing ${i} trend`,
4282
- children: [/* @__PURE__ */ Y(dt, {
4282
+ children: [/* @__PURE__ */ Y(ut, {
4283
4283
  width: "100%",
4284
4284
  height: "100%",
4285
4285
  children: /* @__PURE__ */ X(ye, {
@@ -4307,7 +4307,7 @@ var jo = ({ cx: e, cy: t, index: n, dataLength: r, color: i }) => n !== r - 1 ||
4307
4307
  stopOpacity: .02
4308
4308
  })]
4309
4309
  }) }),
4310
- /* @__PURE__ */ Y(R, {
4310
+ /* @__PURE__ */ Y(ae, {
4311
4311
  hide: !0,
4312
4312
  domain: ["dataMin - 1", "dataMax + 1"]
4313
4313
  }),
@@ -4445,7 +4445,7 @@ function Wo(e) {
4445
4445
  children: [
4446
4446
  /* @__PURE__ */ X("div", {
4447
4447
  className: "flex items-center gap-3 px-4 py-3",
4448
- children: [t ? /* @__PURE__ */ Y(ht, {
4448
+ children: [t ? /* @__PURE__ */ Y(mt, {
4449
4449
  module: t,
4450
4450
  size: "md"
4451
4451
  }) : null, /* @__PURE__ */ X("div", {
@@ -4500,7 +4500,7 @@ var Go = ({ icon: t, title: n, children: r }) => {
4500
4500
  className: "mb-1 w-full",
4501
4501
  open: i,
4502
4502
  onOpenChange: a,
4503
- children: [/* @__PURE__ */ X(j, {
4503
+ children: [/* @__PURE__ */ X(A, {
4504
4504
  className: "flex w-full items-center text-base text-f1-foreground-secondary transition-colors duration-150 hover:text-f1-foreground [&[data-state=open]>svg]:rotate-90",
4505
4505
  children: [
4506
4506
  /* @__PURE__ */ Y("span", {
@@ -4587,11 +4587,11 @@ Jo.displayName = "F0AiMessageSources";
4587
4587
  //#endregion
4588
4588
  //#region src/addons/ai/ai/F0AiTableCard/F0AiTableCard.tsx
4589
4589
  async function Yo(e, t, n) {
4590
- let r = ot(e), i = t === "xlsx" ? await ue([{
4590
+ let r = at(e), i = t === "xlsx" ? await ue([{
4591
4591
  name: "Data",
4592
4592
  rows: r
4593
4593
  }]) : await se(r);
4594
- E(i, `${n}.${t}`);
4594
+ T(i, `${n}.${t}`);
4595
4595
  }
4596
4596
  function Xo({ dataset: e, title: t, filename: r }) {
4597
4597
  let i = d(), a = K(null), o = t ?? i.ai.aiTable.title, s = U((e) => {
@@ -4599,14 +4599,14 @@ function Xo({ dataset: e, title: t, filename: r }) {
4599
4599
  let t = r ?? (o.replace(/\s+/g, "_").toLowerCase() || "table");
4600
4600
  Yo(a.current, e, t);
4601
4601
  }, [o, r]);
4602
- return e.columns?.length ? /* @__PURE__ */ X(x, {
4602
+ return e.columns?.length ? /* @__PURE__ */ X(gt, {
4603
4603
  display: "flex",
4604
4604
  flexDirection: "column",
4605
4605
  gap: "md",
4606
4606
  borderRadius: "md",
4607
4607
  border: "default",
4608
4608
  borderColor: "secondary",
4609
- children: [/* @__PURE__ */ X(x, {
4609
+ children: [/* @__PURE__ */ X(gt, {
4610
4610
  display: "flex",
4611
4611
  alignItems: "center",
4612
4612
  justifyContent: "between",
@@ -4620,20 +4620,20 @@ function Xo({ dataset: e, title: t, filename: r }) {
4620
4620
  tag: "h2",
4621
4621
  className: "text-base font-medium capitalize text-f1-foreground",
4622
4622
  children: o
4623
- }), /* @__PURE__ */ Y(it, {
4624
- icon: B,
4623
+ }), /* @__PURE__ */ Y(rt, {
4624
+ icon: z,
4625
4625
  size: "md",
4626
4626
  items: [{
4627
4627
  label: i.ai.aiTable.downloadExcel,
4628
- icon: B,
4628
+ icon: z,
4629
4629
  onClick: () => s("xlsx")
4630
4630
  }, {
4631
4631
  label: i.ai.aiTable.downloadCsv,
4632
- icon: B,
4632
+ icon: z,
4633
4633
  onClick: () => s("csv")
4634
4634
  }]
4635
4635
  })]
4636
- }), /* @__PURE__ */ Y(x, {
4636
+ }), /* @__PURE__ */ Y(gt, {
4637
4637
  overflowX: "auto",
4638
4638
  children: /* @__PURE__ */ X("table", {
4639
4639
  ref: a,
@@ -4922,7 +4922,7 @@ var ts = ({ credits: e, employeeCredits: t, trigger: n }) => t ? /* @__PURE__ */
4922
4922
  }) : e ? /* @__PURE__ */ Y(Zo, {
4923
4923
  credits: e,
4924
4924
  trigger: n
4925
- }) : null, ns = ts, rs = ({ historyEnabled: r = !1, title: i, currentThreadTitle: a, fullscreen: o = !1, lockVisualizationMode: s = !1, onToggleVisualizationMode: c, onClose: l, onNewChat: u, onOpenHistory: f, hasMessages: p = !1, credits: h, employeeCredits: g, compact: b = !1, actions: x }) => {
4925
+ }) : null, ns = ts, rs = ({ historyEnabled: r = !1, title: i, currentThreadTitle: a, fullscreen: o = !1, lockVisualizationMode: s = !1, onToggleVisualizationMode: c, onClose: l, onNewChat: u, onOpenHistory: f, hasMessages: p = !1, credits: h, employeeCredits: g, compact: b = !1, actions: S }) => {
4926
4926
  let C = d(), w = e(), { panelOverlays: T } = V(), E = !s && !T && /* @__PURE__ */ Y(_, {
4927
4927
  variant: "ghost",
4928
4928
  hideLabel: !0,
@@ -4933,9 +4933,9 @@ var ts = ({ credits: e, employeeCredits: t, trigger: n }) => t ? /* @__PURE__ */
4933
4933
  variant: "ghost",
4934
4934
  hideLabel: !0,
4935
4935
  label: C.ai.closeChat,
4936
- icon: S,
4936
+ icon: x,
4937
4937
  onClick: l
4938
- }), O = x?.map((e) => /* @__PURE__ */ Y(_, {
4938
+ }), O = S?.map((e) => /* @__PURE__ */ Y(_, {
4939
4939
  variant: "ghost",
4940
4940
  hideLabel: !0,
4941
4941
  label: e.label,
@@ -4979,7 +4979,7 @@ var ts = ({ credits: e, employeeCredits: t, trigger: n }) => t ? /* @__PURE__ */
4979
4979
  className: "min-w-0 text-left",
4980
4980
  children: a ?? C.ai.newConversation
4981
4981
  }), /* @__PURE__ */ Y(m, {
4982
- icon: yt,
4982
+ icon: vt,
4983
4983
  color: "default",
4984
4984
  size: "md"
4985
4985
  })]
@@ -5024,7 +5024,7 @@ var ts = ({ credits: e, employeeCredits: t, trigger: n }) => t ? /* @__PURE__ */
5024
5024
  variant: "ghost",
5025
5025
  hideLabel: !0,
5026
5026
  label: C.ai.startNewChat,
5027
- icon: z,
5027
+ icon: R,
5028
5028
  onClick: u
5029
5029
  }) : null,
5030
5030
  /* @__PURE__ */ Y(ts, {
@@ -5042,12 +5042,12 @@ var ts = ({ credits: e, employeeCredits: t, trigger: n }) => t ? /* @__PURE__ */
5042
5042
  //#region src/addons/ai/ai/F0AiChatHistory/utils.ts
5043
5043
  function is(e) {
5044
5044
  let t = new Date(e), n = /* @__PURE__ */ new Date();
5045
- return Re(t) ? "today" : Ke(t) ? "yesterday" : Mt(t, n) ? "thisMonth" : "older";
5045
+ return Re(t) ? "today" : Ge(t) ? "yesterday" : Mt(t, n) ? "thisMonth" : "older";
5046
5046
  }
5047
5047
  function as(e, t, n) {
5048
5048
  let r = new Date(e), i = zt(r, "p", { locale: n });
5049
5049
  if (Re(r)) return `${t.today}, ${i}`;
5050
- if (Ke(r)) return `${t.yesterday}, ${i}`;
5050
+ if (Ge(r)) return `${t.yesterday}, ${i}`;
5051
5051
  let a = !Rt(r, /* @__PURE__ */ new Date());
5052
5052
  return `${zt(r, a ? "MMM d yyyy" : "MMM d", { locale: n })}, ${i}`;
5053
5053
  }
@@ -5074,11 +5074,11 @@ function os(e) {
5074
5074
  function ss({ thread: e, isPinned: t, isActive: r = !1, isPending: i = !1, onSelect: a, onPin: o, onUnpin: s, onDelete: c, className: l }) {
5075
5075
  let u = d(), f = Lt(), p = G(() => [{
5076
5076
  label: t ? u.ai.unpinChat : u.ai.pinChat,
5077
- icon: t ? ce : D,
5077
+ icon: t ? ce : E,
5078
5078
  onClick: () => t ? s(e.id) : o(e.id)
5079
5079
  }, {
5080
5080
  label: u.ai.deleteChat,
5081
- icon: re,
5081
+ icon: te,
5082
5082
  critical: !0,
5083
5083
  onClick: () => c(e.id)
5084
5084
  }], [
@@ -5136,10 +5136,10 @@ function ss({ thread: e, isPinned: t, isActive: r = !1, isPending: i = !1, onSel
5136
5136
  children: /* @__PURE__ */ Y(At, { size: "small" })
5137
5137
  }) : /* @__PURE__ */ Y("div", {
5138
5138
  className: y("hidden items-center", "group-hover:flex group-focus-within:flex", "has-[[aria-expanded=true]]:flex"),
5139
- children: /* @__PURE__ */ Y(it, {
5139
+ children: /* @__PURE__ */ Y(rt, {
5140
5140
  items: p,
5141
5141
  children: /* @__PURE__ */ Y(_, {
5142
- icon: ee,
5142
+ icon: O,
5143
5143
  variant: "ghost",
5144
5144
  size: "sm",
5145
5145
  label: u.ai.threadOptions,
@@ -5168,7 +5168,7 @@ function cs({ label: e, threads: t, pinnedIds: n, onSelect: r, onPin: i, onUnpin
5168
5168
  className: "text-sm font-medium capitalize tracking-wide text-f1-foreground-secondary",
5169
5169
  children: e
5170
5170
  }), /* @__PURE__ */ Y(m, {
5171
- icon: s ? yt : Tt,
5171
+ icon: s ? vt : Tt,
5172
5172
  color: "secondary",
5173
5173
  size: "xs"
5174
5174
  })]
@@ -5282,7 +5282,7 @@ var ps = ({ onClose: e, onSelectThread: r, onNewChat: i, threads: a, isLoading:
5282
5282
  children: /* @__PURE__ */ X("div", {
5283
5283
  className: "flex w-full items-center gap-2",
5284
5284
  children: [/* @__PURE__ */ Y(m, {
5285
- icon: z,
5285
+ icon: R,
5286
5286
  color: "default",
5287
5287
  size: "md"
5288
5288
  }), /* @__PURE__ */ Y(n, {
@@ -5325,11 +5325,11 @@ var ps = ({ onClose: e, onSelectThread: r, onNewChat: i, threads: a, isLoading:
5325
5325
  })] }), document.body);
5326
5326
  }, ms = "f0-ai-pinned-threads";
5327
5327
  function hs() {
5328
- let e = ae(ms, []);
5328
+ let e = ie(ms, []);
5329
5329
  return new Set(Array.isArray(e) ? e : []);
5330
5330
  }
5331
5331
  function gs(e) {
5332
- C(ms, [...e]);
5332
+ S(ms, [...e]);
5333
5333
  }
5334
5334
  function _s({ enabled: e = !1, fetchThreads: t, deleteThread: n, pinThread: r, unpinThread: i }) {
5335
5335
  let [a, o] = q([]), [s, c] = q(!1), [l, u] = q(null), [d, f] = q(hs), [p, m] = q(() => /* @__PURE__ */ new Set()), h = U(async () => {
@@ -5399,7 +5399,7 @@ function _s({ enabled: e = !1, fetchThreads: t, deleteThread: n, pinThread: r, u
5399
5399
  }
5400
5400
  //#endregion
5401
5401
  //#region src/addons/ai/ai/F0AiChatUsageLimits/types.ts
5402
- var vs = ["top", "bottom"], ys = v.create(ie), bs = ({ label: e, reduceMotion: t }) => /* @__PURE__ */ X("div", {
5402
+ var vs = ["top", "bottom"], ys = v.create(re), bs = ({ label: e, reduceMotion: t }) => /* @__PURE__ */ X("div", {
5403
5403
  role: "status",
5404
5404
  "aria-live": "polite",
5405
5405
  className: "flex flex-row items-center gap-1 rounded-full border border-solid border-f1-border-secondary bg-f1-background px-2 py-1.5 pr-2.5 shadow-md",