@factorialco/f0-react 12.5.0 → 12.7.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 (31) hide show
  1. package/dist/{ChatPostComposerDialog-DxjgJvww.js → ChatPostComposerDialog-t1X_eEx-.js} +2 -2
  2. package/dist/{CoachmarkProvider-DxxTrrK0.js → CoachmarkProvider-C8AfrRY-.js} +3 -3
  3. package/dist/{DocumentToolbar-MbpAP2xa.js → DocumentToolbar-CiWldz64.js} +3 -3
  4. package/dist/{DocxViewer-DLnunbBn.js → DocxViewer-ZWB-Upv4.js} +1 -1
  5. package/dist/{F0AiProcessingOverlay-cNJdJNme.js → F0AiProcessingOverlay-BZDPV9iG.js} +3 -2
  6. package/dist/{F0CanvasPanel-d0ARNvCs.js → F0CanvasPanel-BpJr85HN.js} +12 -11
  7. package/dist/{F0DocumentViewer-DU0u8sE9.js → F0DocumentViewer-C0Aj9x9_.js} +4 -4
  8. package/dist/F0DocumentViewer-c0OzZYZK.js +3 -0
  9. package/dist/{F0Map-Ytutlfjd.js → F0Map-CyyZmEdH.js} +3 -3
  10. package/dist/{F0Select-DKCy1C1n.js → F0Select-CEWVRHLo.js} +5500 -5489
  11. package/dist/F0VideoPlayer-DcPgDbG3.js +1 -0
  12. package/dist/{F0VideoPlayer-DWE0J3NR.js → F0VideoPlayer-Ob0Ocg-j.js} +1 -1
  13. package/dist/{Map-DyNfwVdY.js → Map-CkxnszKW.js} +3 -3
  14. package/dist/{PdfThumbnail-C-F-aujX.js → PdfThumbnail-DKDEmiH7.js} +1 -1
  15. package/dist/{SheetViewer-BRTqhc5o.js → SheetViewer-D1-JA9nb.js} +3 -3
  16. package/dist/{TextViewer-_rXZwM4E.js → TextViewer-DW_Xu4Cb.js} +1 -1
  17. package/dist/ai.d.ts +2 -2
  18. package/dist/ai.js +2 -2
  19. package/dist/component-status.js +1 -1
  20. package/dist/experimental.d.ts +410 -457
  21. package/dist/experimental.js +5 -5
  22. package/dist/{exports-CnbBeOMM.d.ts → exports-BdFDYdp1.d.ts} +85 -85
  23. package/dist/f0.d.ts +103 -100
  24. package/dist/f0.js +7 -7
  25. package/dist/{index-DE9tIS8D.d.ts → index-DIwa_k8B.d.ts} +177 -173
  26. package/dist/{maplibre-BMdn9aMc.js → maplibre-DKmCLTnt.js} +1 -1
  27. package/dist/{pdfWorker-YDigL1gB.js → pdfWorker-Ch4pdihi.js} +1 -1
  28. package/dist/{types-DiDeZRzi.d.ts → types-C6VyXC_B.d.ts} +387 -325
  29. package/package.json +1 -1
  30. package/dist/F0DocumentViewer-CMTc9-v6.js +0 -3
  31. package/dist/F0VideoPlayer-BZmP3fGi.js +0 -1
@@ -1,17 +1,17 @@
1
1
  import { o as e } from "./rolldown-runtime-BItFwnF5.js";
2
- import { $ as t, $n as n, $r as r, $t as i, Ar as a, At as o, B as s, Br as c, Bt as l, C as u, Cn as d, Cr as f, Ct as p, Dn as m, Dr as h, Dt as g, En as _, Er as v, Et as y, F as b, Fr as x, Ft as S, G as C, Gn as w, Gr as T, H as E, Hn as D, Hr as O, I as k, Ir as A, It as j, J as M, Jr as N, K as P, Kt as F, L as I, Lr as ee, M as te, Mr as ne, Mt as re, N as L, Nr as ie, On as R, Or as ae, Ot as oe, P as se, Pr as ce, Q as le, Qn as ue, Qr as de, R as fe, Rr as pe, Rt as me, S as z, Sn as he, Sr as ge, T as _e, Tn as ve, Tr as ye, Tt as be, U as xe, Un as Se, Ur as Ce, V as we, W as Te, Wn as Ee, Wr as De, X as Oe, Xn as ke, Xr as Ae, Xt as je, Y as Me, Yn as Ne, Yr as Pe, Z as Fe, Zn as Ie, Zr as Le, _ as Re, ai as ze, an as Be, at as Ve, b as He, br as Ue, ci as We, ct as Ge, d as Ke, di as qe, dr as Je, dt as Ye, ei as Xe, er as Ze, et as Qe, fi as $e, fn as et, fr as tt, ft as nt, g as rt, gr as it, h as at, hi as ot, hr as st, ii as ct, in as lt, ir as ut, it as dt, j as ft, jr as pt, jt as mt, kr as ht, li as gt, lr as _t, lt as vt, m as yt, mi as bt, mr as xt, mt as St, n as Ct, nr as wt, nt as Tt, oi as Et, ot as Dt, p as Ot, pr as kt, pt as At, q as jt, qn as Mt, qr as Nt, r as Pt, ri as Ft, rn as It, rr as Lt, rt as Rt, s as zt, si as Bt, st as Vt, t as Ht, ti as Ut, tr as Wt, tt as Gt, ui as Kt, ur as qt, ut as Jt, v as Yt, vr as Xt, w as Zt, wn as Qt, wr as $t, wt as en, x as tn, xr as nn, y as rn, yr as an, z as on, zr as sn } from "./CoachmarkProvider-DxxTrrK0.js";
2
+ import { $ as t, $n as n, $r as r, $t as i, Ar as a, At as o, B as s, Br as c, Bt as l, C as u, Cn as d, Cr as f, Ct as p, Dn as m, Dr as h, Dt as g, En as _, Er as v, Et as y, F as b, Fr as x, Ft as S, G as C, Gn as w, Gr as T, H as E, Hn as D, Hr as O, I as k, Ir as A, It as j, J as M, Jr as N, K as P, Kt as F, L as I, Lr as ee, M as te, Mr as ne, Mt as re, N as L, Nr as ie, On as R, Or as ae, Ot as oe, P as se, Pr as ce, Q as le, Qn as ue, Qr as de, R as fe, Rr as pe, Rt as me, S as z, Sn as he, Sr as ge, T as _e, Tn as ve, Tr as ye, Tt as be, U as xe, Un as Se, Ur as Ce, V as we, W as Te, Wn as Ee, Wr as De, X as Oe, Xn as ke, Xr as Ae, Xt as je, Y as Me, Yn as Ne, Yr as Pe, Z as Fe, Zn as Ie, Zr as Le, _ as Re, ai as ze, an as Be, at as Ve, b as He, br as Ue, ci as We, ct as Ge, d as Ke, di as qe, dr as Je, dt as Ye, ei as Xe, er as Ze, et as Qe, fi as $e, fn as et, fr as tt, ft as nt, g as rt, gr as it, h as at, hi as ot, hr as st, ii as ct, in as lt, ir as ut, it as dt, j as ft, jr as pt, jt as mt, kr as ht, li as gt, lr as _t, lt as vt, m as yt, mi as bt, mr as xt, mt as St, n as Ct, nr as wt, nt as Tt, oi as Et, ot as Dt, p as Ot, pr as kt, pt as At, q as jt, qn as Mt, qr as Nt, r as Pt, ri as Ft, rn as It, rr as Lt, rt as Rt, s as zt, si as Bt, st as Vt, t as Ht, ti as Ut, tr as Wt, tt as Gt, ui as Kt, ur as qt, ut as Jt, v as Yt, vr as Xt, w as Zt, wn as Qt, wr as $t, wt as en, x as tn, xr as nn, y as rn, yr as an, z as on, zr as sn } from "./CoachmarkProvider-C8AfrRY-.js";
3
3
  import { $t as cn, A as ln, At as un, Bt as dn, Ft as fn, G as pn, Ht as mn, K as hn, Lt as gn, M as _n, Mt as vn, N as yn, Ot as bn, P as xn, Pt as Sn, Qt as Cn, R as wn, St as Tn, U as En, Ut as Dn, Vt as On, Wt as kn, Xt as An, Zn as jn, Zt as Mn, _t as Nn, a as Pn, an as Fn, ar as In, b as B, cr as Ln, fn as Rn, gn as V, hn as zn, i as Bn, in as H, ir as Vn, j as Hn, jt as Un, kt as Wn, ln as U, lr as Gn, mn as Kn, n as qn, on as Jn, pn as Yn, pt as Xn, rn as W, rr as Zn, t as Qn, un as $n, vt as er, wt as tr, yt as nr, zt as rr } from "./popover-BjrPOMeQ.js";
4
4
  import { L as G, R as ir, a as ar, i as or, o as sr, r as cr, t as lr } from "./tooltip-BX4dSfeL.js";
5
5
  import { n as ur, r as dr, t as fr } from "./F0Text-BtzfLrwP.js";
6
- import { $ as pr, $o as mr, $s as hr, Aa as gr, Ao as _r, Ar as vr, As as yr, At as br, B as xr, Br as Sr, Bs as Cr, Cr as wr, Ct as Tr, Da as Er, Do as Dr, Dr as Or, Ds as kr, E as Ar, Eo as jr, Er as Mr, Es as Nr, Et as Pr, F as Fr, Fa as Ir, Fr as Lr, G as Rr, Go as zr, Gr as Br, H as Vr, Ha as Hr, Hi as Ur, Ho as Wr, Hr as Gr, I as Kr, Is as qr, J as Jr, Jn as Yr, Jr as Xr, Js as Zr, K as Qr, Ka as $r, Ko as ei, Ks as ti, L as ni, La as ri, Li as ii, Ls as ai, M as oi, Mo as si, Mr as ci, Ms as li, N as ui, Na as di, Ns as fi, Oa as pi, Oo as mi, Or as hi, Os as gi, P as _i, Ps as vi, Q as yi, Qa as bi, Qs as xi, R as Si, Ro as Ci, Rs as wi, So as Ti, T as Ei, To as Di, Tr as Oi, U as ki, Uo as Ai, Ur as ji, W as Mi, Wo as Ni, Wr as Pi, X as Fi, Xa as Ii, Xo as Li, Xs as Ri, Y as zi, Ya as Bi, Yo as Vi, Zo as Hi, _ as Ui, _a as Wi, _o as Gi, _r as Ki, _s as qi, _t as Ji, a as Yi, ar as Xi, as as Zi, b as Qi, bo as $i, br as ea, c as ta, ca as na, cc as ra, co as ia, d as aa, da as oa, do as sa, dt as ca, f as la, fo as ua, fs as da, ft as fa, g as pa, ga as ma, gr as ha, gt as ga, h as _a, ha as va, ho as ya, hr as ba, hs as xa, ht as Sa, i as Ca, ic as wa, in as Ta, ir as Ea, is as Da, it as Oa, ja as ka, jo as Aa, jr as ja, jt as Ma, ka as Na, kr as Pa, ks as Fa, kt as Ia, l as La, la as Ra, lc as za, lo as Ba, m as Va, ma as Ha, mr as Ua, ms as Wa, mt as Ga, n as Ka, o as qa, oa as Ja, oc as Ya, oo as Xa, or as Za, p as Qa, po as $a, pr as eo, ps as to, pt as no, q as ro, qa as io, qn as ao, qo as oo, qs as so, r as co, rn as lo, rr as uo, rt as fo, s as po, sa as mo, sr as ho, st as go, t as _o, u as vo, ua as yo, uo as bo, us as xo, v as So, va as Co, vo as wo, vs as To, w as Eo, wt as Do, xo as Oo, xr as ko, y as Ao, ys as jo, za as Mo, zi as No, zo as Po } from "./F0CanvasPanel-d0ARNvCs.js";
6
+ import { $ as pr, $o as mr, $s as hr, Aa as gr, Ao as _r, Ar as vr, As as yr, At as br, B as xr, Br as Sr, Bs as Cr, Cr as wr, Ct as Tr, Da as Er, Do as Dr, Dr as Or, Ds as kr, E as Ar, Eo as jr, Er as Mr, Es as Nr, Et as Pr, F as Fr, Fa as Ir, Fr as Lr, G as Rr, Go as zr, Gr as Br, H as Vr, Ha as Hr, Hi as Ur, Ho as Wr, Hr as Gr, I as Kr, Is as qr, J as Jr, Jn as Yr, Jr as Xr, Js as Zr, K as Qr, Ka as $r, Ko as ei, Ks as ti, L as ni, La as ri, Li as ii, Ls as ai, M as oi, Mo as si, Mr as ci, Ms as li, N as ui, Na as di, Ns as fi, Oa as pi, Oo as mi, Or as hi, Os as gi, P as _i, Ps as vi, Q as yi, Qa as bi, Qs as xi, R as Si, Ro as Ci, Rs as wi, So as Ti, T as Ei, To as Di, Tr as Oi, U as ki, Uo as Ai, Ur as ji, W as Mi, Wo as Ni, Wr as Pi, X as Fi, Xa as Ii, Xo as Li, Xs as Ri, Y as zi, Ya as Bi, Yo as Vi, Zo as Hi, _ as Ui, _a as Wi, _o as Gi, _r as Ki, _s as qi, _t as Ji, a as Yi, ar as Xi, as as Zi, b as Qi, bo as $i, br as ea, c as ta, ca as na, cc as ra, co as ia, d as aa, da as oa, do as sa, dt as ca, f as la, fo as ua, fs as da, ft as fa, g as pa, ga as ma, gr as ha, gt as ga, h as _a, ha as va, ho as ya, hr as ba, hs as xa, ht as Sa, i as Ca, ic as wa, in as Ta, ir as Ea, is as Da, it as Oa, ja as ka, jo as Aa, jr as ja, jt as Ma, ka as Na, kr as Pa, ks as Fa, kt as Ia, l as La, la as Ra, lc as za, lo as Ba, m as Va, ma as Ha, mr as Ua, ms as Wa, mt as Ga, n as Ka, o as qa, oa as Ja, oc as Ya, oo as Xa, or as Za, p as Qa, po as $a, pr as eo, ps as to, pt as no, q as ro, qa as io, qn as ao, qo as oo, qs as so, r as co, rn as lo, rr as uo, rt as fo, s as po, sa as mo, sr as ho, st as go, t as _o, u as vo, ua as yo, uo as bo, us as xo, v as So, va as Co, vo as wo, vs as To, w as Eo, wt as Do, xo as Oo, xr as ko, y as Ao, ys as jo, za as Mo, zi as No, zo as Po } from "./F0CanvasPanel-BpJr85HN.js";
7
7
  import { A as Fo, C as Io, F as Lo, G as Ro, H as zo, I as Bo, J as Vo, K as Ho, L as Uo, M as Wo, O as Go, P as Ko, R as qo, S as Jo, V as Yo, W as Xo, X as Zo, Y as Qo, d as $o, f as es, h as ts, i as ns, j as rs, k as is, l as as, m as os, p as ss, u as cs, y as ls, z as us } from "./useData-BPTvQHGp.js";
8
- import { $ as ds, A as fs, An as ps, Ct as ms, Dn as hs, Dr as gs, En as _s, Er as vs, F as ys, In as bs, K as xs, Mr as Ss, N as Cs, Nn as ws, Nr as Ts, Nt as Es, On as Ds, Or as Os, Ot as ks, P as As, Pn as js, Pr as Ms, St as Ns, X as Ps, Y as Fs, Z as Is, _ as Ls, _t as Rs, an as zs, dr as Bs, et as Vs, g as Hs, gt as Us, h as Ws, hr as Gs, ht as Ks, in as qs, jr as Js, kn as Ys, kr as Xs, lt as Zs, m as Qs, mn as $s, mr as ec, nn as tc, nt as nc, p as rc, rt as ic, st as ac, t as oc, tn as sc, tt as cc, un as lc, ur as uc, v as dc, vt as fc, wn as pc, wt as mc, xt as hc, y as gc, yn as _c } from "./F0Select-DKCy1C1n.js";
8
+ import { $ as ds, A as fs, An as ps, Ct as ms, Dn as hs, Dr as gs, En as _s, Er as vs, F as ys, In as bs, K as xs, Mr as Ss, N as Cs, Nn as ws, Nr as Ts, Nt as Es, On as Ds, Or as Os, Ot as ks, P as As, Pn as js, Pr as Ms, St as Ns, X as Ps, Y as Fs, Z as Is, _ as Ls, _t as Rs, an as zs, dr as Bs, et as Vs, g as Hs, gt as Us, h as Ws, hr as Gs, ht as Ks, in as qs, jr as Js, kn as Ys, kr as Xs, lt as Zs, m as Qs, mn as $s, mr as ec, nn as tc, nt as nc, p as rc, rt as ic, st as ac, t as oc, tn as sc, tt as cc, un as lc, ur as uc, v as dc, vt as fc, wn as pc, wt as mc, xt as hc, y as gc, yn as _c } from "./F0Select-CEWVRHLo.js";
9
9
  import { t as vc } from "./Check-DAp9gCRh.js";
10
10
  import { n as yc } from "./dist-DvxtFKDL.js";
11
11
  import { a as bc, i as xc, n as Sc, r as Cc, s as wc } from "./dist-Cuwaibqg.js";
12
12
  import './maplibre-gl.css';import './RichText.css';/* empty css */
13
13
  import { t as Tc } from "./useFullscreen-CNwpzjpz.js";
14
- import { C as Ec, D as Dc, E as Oc, O as kc, S as Ac, T as jc, _ as Mc, a as Nc, b as Pc, c as Fc, d as Ic, f as Lc, g as Rc, h as zc, i as Bc, k as Vc, l as Hc, m as Uc, n as Wc, o as Gc, p as Kc, r as qc, t as Jc, u as Yc, v as Xc, w as Zc, x as Qc, y as $c } from "./F0Map-Ytutlfjd.js";
14
+ import { C as Ec, D as Dc, E as Oc, O as kc, S as Ac, T as jc, _ as Mc, a as Nc, b as Pc, c as Fc, d as Ic, f as Lc, g as Rc, h as zc, i as Bc, k as Vc, l as Hc, m as Uc, n as Wc, o as Gc, p as Kc, r as qc, t as Jc, u as Yc, v as Xc, w as Zc, x as Qc, y as $c } from "./F0Map-CyyZmEdH.js";
15
15
  import { _ as el, a as tl, c as nl, d as rl, f as il, g as al, h as ol, i as sl, l as cl, m as ll, n as ul, o as dl, p as fl, r as pl, s as ml, t as hl, u as gl } from "./posts-DGtDUrKT.js";
16
16
  /* empty css */
17
17
  import _l, { Children as vl, Fragment as yl, Suspense as bl, cloneElement as xl, createContext as Sl, forwardRef as Cl, isValidElement as wl, lazy as Tl, memo as El, useCallback as K, useContext as Dl, useEffect as q, useId as Ol, useImperativeHandle as kl, useLayoutEffect as Al, useMemo as J, useReducer as jl, useRef as Y, useState as X, useSyncExternalStore as Ml, useTransition as Nl } from "react";
@@ -19493,7 +19493,7 @@ var GN = ({ channel: e }) => {
19493
19493
  onJumpToBottom: Se
19494
19494
  }) : null]
19495
19495
  });
19496
- }, tP = Tl(() => import("./ChatPostComposerDialog-DxjgJvww.js").then((e) => ({ default: e.ChatPostComposerDialog }))), nP = () => {
19496
+ }, tP = Tl(() => import("./ChatPostComposerDialog-t1X_eEx-.js").then((e) => ({ default: e.ChatPostComposerDialog }))), nP = () => {
19497
19497
  let e = W(), { createPost: t, composePost: n, searchMembers: r } = gl(), i = il(), [a, o] = X(!1);
19498
19498
  return !t && !n ? null : /* @__PURE__ */ $("div", {
19499
19499
  className: "pointer-events-none shrink-0 p-4 pt-0",
@@ -1,4 +1,4 @@
1
- import { $ as AiChatCredits, Ar as AiChatShowFilesItem, Ci as AvatarVariant, Ct as WelcomeScreenSuggestionItem, Dr as AiChatFileKind, Er as AiChatFile, Fi as F0AvatarTeamProps, Hi as FileDef, Ii as F0AvatarPersonProps, Ir as CanvasContent, Ki as F0AvatarCompanyProps, Nn as Level, Or as AiChatFilePreviewConfig, Q as AiChatCreditWarning, Rr as CanvasEntityDefinition, St as WelcomeScreenSuggestion, _t as PendingContext, bt as UploadedFile, ct as AiChatUsageLimits, di as DataDownloadDataset, dn as RelaxedNumericWithFormatter, dr as DataAttributes, et as AiChatDisclaimer, la as IconType, ln as Numeric, mt as F0AiChatWelcomeCard, nt as AiChatFileAttachmentConfig, o as F0CardHorizontalProps, pa as WithDataTestIdReturnType, q as AiChatComposerAction, ta as ModuleId, tt as AiChatEmployeeCredits, vt as PendingQuote, xr as PersonProfile, yt as TranscribeFn } from "./index-DE9tIS8D.js";
1
+ import { $ as AiChatCredits, Ar as AiChatShowFilesItem, Ci as AvatarVariant, Ct as WelcomeScreenSuggestionItem, Dr as AiChatFileKind, Er as AiChatFile, Fi as F0AvatarTeamProps, Hi as FileDef, Ii as F0AvatarPersonProps, Ir as CanvasContent, Ki as F0AvatarCompanyProps, Nn as Level, Or as AiChatFilePreviewConfig, Q as AiChatCreditWarning, Rr as CanvasEntityDefinition, St as WelcomeScreenSuggestion, _t as PendingContext, bt as UploadedFile, ct as AiChatUsageLimits, di as DataDownloadDataset, dn as RelaxedNumericWithFormatter, dr as DataAttributes, et as AiChatDisclaimer, la as IconType, ln as Numeric, mt as F0AiChatWelcomeCard, nt as AiChatFileAttachmentConfig, o as F0CardHorizontalProps, pa as WithDataTestIdReturnType, q as AiChatComposerAction, ta as ModuleId, tt as AiChatEmployeeCredits, vt as PendingQuote, xr as PersonProfile, yt as TranscribeFn } from "./index-DIwa_k8B.js";
2
2
  import { CSSProperties, ComponentProps, KeyboardEvent, ReactNode, Ref, RefObject, SVGProps } from "react";
3
3
  import { AgentState, TrackReferenceOrPlaceholder } from "@livekit/components-react";
4
4
  import { VariantProps } from "cva";
@@ -32,7 +32,7 @@ type CanvasCardAction = {
32
32
  * @deprecated Being replaced by `F0CardHorizontal`. See {@link F0CanvasCard}.
33
33
  * @removeIn 5.0.0
34
34
  */
35
- type F0CanvasCardProps = {
35
+ interface F0CanvasCardProps {
36
36
  /** Avatar to display: a module icon, a file-type badge, or a plain icon */
37
37
  avatar?: CanvasCardAvatar;
38
38
  /** Primary title */
@@ -45,7 +45,7 @@ type F0CanvasCardProps = {
45
45
  action: CanvasCardAction;
46
46
  /** Optional content rendered below the card header (e.g. a data preview) */
47
47
  children?: React.ReactNode;
48
- };
48
+ }
49
49
  /** Whichever avatar the card was given: a module, a file, or an icon. */
50
50
  declare const CanvasCardAvatar: ({ avatar }: Pick<F0CanvasCardProps, "avatar">) => import("react").JSX.Element | null;
51
51
  /** The card's own control: open/close, or the host's custom action. */
@@ -271,7 +271,7 @@ declare const ChatSpinner: import("react").ForwardRefExoticComponent<ChatSpinner
271
271
  * @example 'rgb(255, 0, 0)' or 'rgb(255,0,0)'
272
272
  */
273
273
  type CSSRgbString = `rgb(${number}, ${number}, ${number})` | `rgb(${number},${number},${number})`;
274
- type MaskOptions = {
274
+ interface MaskOptions {
275
275
  /**
276
276
  * The width of the Mask element.
277
277
  * @default 600
@@ -325,7 +325,7 @@ type MaskOptions = {
325
325
  * Custom styles for wrapper and canvas elements.
326
326
  */
327
327
  styles?: Partial<CSSStyleDeclaration>;
328
- };
328
+ }
329
329
  declare class F0AiMask {
330
330
  readonly element: HTMLElement;
331
331
  private canvas;
@@ -389,7 +389,7 @@ declare function F0AuraVoiceAnimation({ size, state, color, colorShift, audioTra
389
389
  * @deprecated Being replaced by `F0CardHorizontal`. See {@link F0HILActionConfirmation}.
390
390
  * @removeIn 5.0.0
391
391
  */
392
- type F0HILActionConfirmationProps = {
392
+ interface F0HILActionConfirmationProps {
393
393
  /**
394
394
  * The prompt shown as the row title (e.g. the action awaiting confirmation).
395
395
  * Required — a confirmation without a prompt has no meaning.
@@ -427,7 +427,7 @@ type F0HILActionConfirmationProps = {
427
427
  * Callback fired when the reject button is clicked.
428
428
  */
429
429
  onCancel: () => void;
430
- };
430
+ }
431
431
  //#endregion
432
432
  //#region src/blocks/ai/F0HILActionConfirmation/F0HILActionConfirmation.d.ts
433
433
  /**
@@ -519,17 +519,17 @@ declare const F0AvatarPerson: WithDataTestIdReturnType<typeof F0AvatarPersonBase
519
519
  //#region src/addons/ai/ai/F0AiInsightCard/types.d.ts
520
520
  declare const contentTypes: readonly ["text", "person", "people", "team", "company", "alert", "balance", "sparkline"];
521
521
  type ContentType = (typeof contentTypes)[number];
522
- type SparklineDataPoint = {
522
+ interface SparklineDataPoint {
523
523
  value: number;
524
- };
525
- type BalanceConfig = {
524
+ }
525
+ interface BalanceConfig {
526
526
  amount: RelaxedNumericWithFormatter | Numeric;
527
527
  percentage?: (Omit<RelaxedNumericWithFormatter, "value"> & {
528
528
  value: Omit<Numeric, "units" | "unitsPosition">;
529
529
  }) | Omit<Numeric, "units" | "unitsPosition"> | null;
530
530
  invertStatus?: boolean;
531
531
  hint?: string;
532
- };
532
+ }
533
533
  type AiInsightCardContent = {
534
534
  content: "text";
535
535
  } | {
@@ -622,21 +622,21 @@ declare namespace F0AiProposalCard {
622
622
  /**
623
623
  * Information source attached to an assistant message.
624
624
  */
625
- type F0AiMessageSource = {
625
+ interface F0AiMessageSource {
626
626
  title: string;
627
627
  link?: string;
628
628
  /** Name of an icon exported by `@factorialco/f0-react/icons/app`. */
629
629
  icon?: string;
630
630
  targetBlank?: boolean;
631
- };
632
- type F0AiMessageSourcesProps = {
631
+ }
632
+ interface F0AiMessageSourcesProps {
633
633
  sources: F0AiMessageSource[];
634
634
  /**
635
635
  * Override the section title. Defaults to the
636
636
  * `ai.resourcesGroupTitle` translation key.
637
637
  */
638
638
  title?: string;
639
- };
639
+ }
640
640
  /**
641
641
  * Renders a collapsible group of information sources attached to an
642
642
  * assistant message. Sources without a `link` render as plain rows;
@@ -649,7 +649,7 @@ declare namespace F0AiMessageSources {
649
649
  }
650
650
  //#endregion
651
651
  //#region src/addons/ai/ai/F0AiTableCard/F0AiTableCard.d.ts
652
- type F0AiTableCardProps = {
652
+ interface F0AiTableCardProps {
653
653
  /**
654
654
  * Tabular data to render. Reuses the same shape used by the
655
655
  * `dataDownload` canvas entity so the agent payload travels untouched.
@@ -665,7 +665,7 @@ type F0AiTableCardProps = {
665
665
  * slugified title, or `"table"` when no title is provided.
666
666
  */
667
667
  filename?: string;
668
- };
668
+ }
669
669
  /**
670
670
  * Compact inline table for small datasets shown directly in an AI chat
671
671
  * stream. Headers come from `columnLabels` when present, otherwise from
@@ -687,7 +687,7 @@ interface F0AiChatHeaderAction {
687
687
  icon: IconType;
688
688
  onClick: () => void;
689
689
  }
690
- type F0AiChatHeaderProps = {
690
+ interface F0AiChatHeaderProps {
691
691
  /**
692
692
  * When true, renders the with-history variant: the title acts as a thread
693
693
  * selector that triggers `onOpenHistory`. When false (default), renders
@@ -738,7 +738,7 @@ type F0AiChatHeaderProps = {
738
738
  * controls. F0 owns their presentation so they match the built-in actions.
739
739
  */
740
740
  actions?: F0AiChatHeaderAction[];
741
- };
741
+ }
742
742
  //#endregion
743
743
  //#region src/addons/ai/ai/F0AiChatHeader/F0AiChatHeader.d.ts
744
744
  /**
@@ -773,7 +773,7 @@ declare const F0AiChatCreditsButton: typeof CreditsPopoverPicker;
773
773
  declare const F0AiChatHeader: ({ historyEnabled, title, currentThreadTitle, fullscreen, lockVisualizationMode, onToggleVisualizationMode, onClose, onNewChat, onOpenHistory, hasMessages, credits, employeeCredits, compact, actions }: F0AiChatHeaderProps) => import("react").JSX.Element;
774
774
  //#endregion
775
775
  //#region src/addons/ai/ai/F0AiChatHistory/useChatHistory.d.ts
776
- type ChatThread = {
776
+ interface ChatThread {
777
777
  id: string;
778
778
  title: string;
779
779
  createdAt: string;
@@ -785,8 +785,8 @@ type ChatThread = {
785
785
  * (e.g. "Analytics" for mode-bound chats).
786
786
  */
787
787
  trailingLabel?: string;
788
- };
789
- type UseChatHistoryReturn = {
788
+ }
789
+ interface UseChatHistoryReturn {
790
790
  threads: ChatThread[];
791
791
  isLoading: boolean;
792
792
  error: string | null;
@@ -803,8 +803,8 @@ type UseChatHistoryReturn = {
803
803
  pinThread: (id: string) => void;
804
804
  unpinThread: (id: string) => void;
805
805
  deleteThread: (id: string) => Promise<void>;
806
- };
807
- type UseChatHistoryOptions = {
806
+ }
807
+ interface UseChatHistoryOptions {
808
808
  /** When true, fetches threads on mount. Default: `false`. */
809
809
  enabled?: boolean;
810
810
  /**
@@ -827,7 +827,7 @@ type UseChatHistoryOptions = {
827
827
  */
828
828
  pinThread?: (id: string) => Promise<void>;
829
829
  unpinThread?: (id: string) => Promise<void>;
830
- };
830
+ }
831
831
  /**
832
832
  * Headless chat-history state manager. Pure UI logic — the caller injects
833
833
  * `fetchThreads` and `deleteThread` callbacks so this hook never embeds
@@ -848,7 +848,7 @@ interface ThreadActionHandlers {
848
848
  onUnpin: (id: string) => void;
849
849
  onDelete: (id: string) => void;
850
850
  }
851
- type F0AiChatHistoryProps = {
851
+ interface F0AiChatHistoryProps {
852
852
  /** Close the dialog (overlay click, ESC, or post-selection). */
853
853
  onClose: () => void;
854
854
  /** Called when the user picks a thread to load. */
@@ -869,7 +869,7 @@ type F0AiChatHistoryProps = {
869
869
  onUnpinThread: (id: string) => void;
870
870
  /** Called when the user deletes a thread (may be async). */
871
871
  onDeleteThread: (id: string) => Promise<void> | void;
872
- };
872
+ }
873
873
  //#endregion
874
874
  //#region src/addons/ai/ai/F0AiChatHistory/F0AiChatHistory.d.ts
875
875
  /**
@@ -932,7 +932,7 @@ interface F0AiChatUsageLimitsButtonProps {
932
932
  //#endregion
933
933
  //#region src/addons/ai/ai/F0AiChatTextArea/mentions/types.d.ts
934
934
  /** One row of the @-mention popover, as a {@link MentionSource} returns it. */
935
- type MentionItem = {
935
+ interface MentionItem {
936
936
  /** Serialised as the `type` attribute of the `<entity-ref>` tag. */
937
937
  type: string;
938
938
  /** Serialised as the `id` attribute of the `<entity-ref>` tag. */
@@ -943,34 +943,34 @@ type MentionItem = {
943
943
  description?: string;
944
944
  /** Leading slot of the row: a person's avatar, or an icon for most entities. */
945
945
  avatar?: AvatarVariant;
946
- };
946
+ }
947
947
  /**
948
948
  * A mention the composer has recorded. It is anchored by the offset of its
949
949
  * `@`, not matched by label, so two mentions with the same label (two people
950
950
  * called "Ana García", or a person and a counter both called "Vacation") keep
951
951
  * their own ids.
952
952
  */
953
- type TrackedMention = {
953
+ interface TrackedMention {
954
954
  type: string;
955
955
  id: string;
956
956
  label: string;
957
957
  /** Offset of the mention's `@` in the textarea text. */
958
958
  start: number;
959
- };
959
+ }
960
960
  /** What a source knows about the message when it is asked to search. */
961
- type MentionSearchContext = {
961
+ interface MentionSearchContext {
962
962
  /** The full textarea text. */
963
963
  text: string;
964
964
  /** Cursor offset in `text`. */
965
965
  cursor: number;
966
966
  /** Completed mentions that end before the `@` being typed, in text order. */
967
967
  mentionsBefore: TrackedMention[];
968
- };
968
+ }
969
969
  /**
970
970
  * A typed source of @-mention suggestions. Each source is one group in the
971
971
  * popover.
972
972
  */
973
- type MentionSource = {
973
+ interface MentionSource {
974
974
  /** Identifies the group. Usually the `type` of the items it returns. */
975
975
  type: string;
976
976
  /** Heading of the group, shown when more than one source is configured. */
@@ -984,27 +984,27 @@ type MentionSource = {
984
984
  * is mentioned. Enter and the arrow keys follow the displayed order.
985
985
  */
986
986
  order?: number | ((context: MentionSearchContext) => number);
987
- };
987
+ }
988
988
  //#endregion
989
989
  //#region src/addons/ai/ai/F0AiChatTextArea/types.d.ts
990
990
  type AiChatTextAreaUsageLimits = Pick<F0AiChatUsageLimitsButtonProps, "usage" | "error" | "onOpenChange">;
991
- type AttachedFile = {
991
+ interface AttachedFile {
992
992
  id: string;
993
993
  file: File;
994
994
  status: "uploading" | "uploaded" | "error";
995
995
  uploadedFile?: UploadedFile;
996
996
  errorMessage?: string;
997
- };
998
- type UserTextPart = {
997
+ }
998
+ interface UserTextPart {
999
999
  type: "text";
1000
1000
  text: string;
1001
- };
1002
- type UserBinaryPart = {
1001
+ }
1002
+ interface UserBinaryPart {
1003
1003
  type: "binary";
1004
1004
  url: string;
1005
1005
  filename: string;
1006
1006
  mimeType: string;
1007
- };
1007
+ }
1008
1008
  /**
1009
1009
  * Payload emitted by `F0AiChatTextArea` when the user submits.
1010
1010
  *
@@ -1013,13 +1013,13 @@ type UserBinaryPart = {
1013
1013
  * travel as separate structured fields — the adapter (factorial) owns
1014
1014
  * the wire encoding when forwarding to the agent.
1015
1015
  */
1016
- type F0AiChatTextAreaSubmitPayload = {
1016
+ interface F0AiChatTextAreaSubmitPayload {
1017
1017
  text: string;
1018
1018
  files: UploadedFile[];
1019
1019
  context: PendingContext | null;
1020
1020
  quote: PendingQuote | null;
1021
- };
1022
- type F0AiChatTextAreaProps = {
1021
+ }
1022
+ interface F0AiChatTextAreaProps {
1023
1023
  ref: RefObject<HTMLDivElement>;
1024
1024
  /** Emitted when the user submits. Awaited so the textarea can stay disabled. */
1025
1025
  onSubmit: (payload: F0AiChatTextAreaSubmitPayload) => void | Promise<void>;
@@ -1251,7 +1251,7 @@ type F0AiChatTextAreaProps = {
1251
1251
  * The welcome suggestions row sits above the composer in both layouts.
1252
1252
  */
1253
1253
  fullscreen?: boolean;
1254
- };
1254
+ }
1255
1255
  //#endregion
1256
1256
  //#region src/addons/ai/ai/F0AiChatTextArea/F0AiChatTextArea.d.ts
1257
1257
  /**
@@ -1288,7 +1288,7 @@ declare function createPersonMentionSource(searchPersons: (query: string) => Pro
1288
1288
  //#endregion
1289
1289
  //#region src/elements/primitives/_primitives/F0ChatComposer/mentions/types.d.ts
1290
1290
  /** One row of the mention popover, as a source returns it. */
1291
- type ComposerMentionItem = {
1291
+ interface ComposerMentionItem {
1292
1292
  /** What kind of thing it is (`person`, an entity type…). */
1293
1293
  type: string;
1294
1294
  id: string;
@@ -1300,7 +1300,7 @@ type ComposerMentionItem = {
1300
1300
  avatar?: AvatarVariant;
1301
1301
  /** Host data carried through untouched (e.g. a chat user's profile link). */
1302
1302
  data?: unknown;
1303
- };
1303
+ }
1304
1304
  /**
1305
1305
  * A mention in the composer text, anchored where its `@` is.
1306
1306
  *
@@ -1319,41 +1319,41 @@ type ComposerMention = ComposerMentionItem & {
1319
1319
  length: number;
1320
1320
  };
1321
1321
  /** A mention as the search context exposes it: no extent, no host data. */
1322
- type ComposerMentionRef = {
1322
+ interface ComposerMentionRef {
1323
1323
  type: string;
1324
1324
  id: string;
1325
1325
  label: string;
1326
1326
  start: number;
1327
- };
1327
+ }
1328
1328
  /** What a source knows about the message when it is asked to search. */
1329
- type ComposerMentionSearchContext = {
1329
+ interface ComposerMentionSearchContext {
1330
1330
  text: string;
1331
1331
  cursor: number;
1332
1332
  /** Completed mentions that end before the `@` being typed, in text order. */
1333
1333
  mentionsBefore: ComposerMentionRef[];
1334
- };
1334
+ }
1335
1335
  /** A typed source of mention suggestions: one popover group each. */
1336
- type ComposerMentionSource = {
1336
+ interface ComposerMentionSource {
1337
1337
  type: string;
1338
1338
  /** Heading of the group, shown when more than one source is configured. */
1339
1339
  label: string;
1340
1340
  search: (query: string, context: ComposerMentionSearchContext) => Promise<ComposerMentionItem[]>;
1341
1341
  /** Groups sort ascending (`0` when unset); ties keep the array order. */
1342
1342
  order?: number | ((context: ComposerMentionSearchContext) => number);
1343
- };
1343
+ }
1344
1344
  /** A source and the rows it returned for the current query. */
1345
- type ComposerMentionGroup = {
1345
+ interface ComposerMentionGroup {
1346
1346
  source: ComposerMentionSource;
1347
1347
  items: ComposerMentionItem[];
1348
- };
1348
+ }
1349
1349
  /**
1350
1350
  * A row pinned above every group and matched without a search — the chat's
1351
1351
  * `@here`. It is not a source: it answers synchronously and never dismisses.
1352
1352
  */
1353
- type ComposerMentionPinned = {
1353
+ interface ComposerMentionPinned {
1354
1354
  item: ComposerMentionItem;
1355
1355
  matches: (query: string) => boolean;
1356
- };
1356
+ }
1357
1357
  type PopoverPosition = {
1358
1358
  left: number;
1359
1359
  bottom: number;
@@ -1361,12 +1361,12 @@ type PopoverPosition = {
1361
1361
  //#endregion
1362
1362
  //#region src/elements/primitives/_primitives/F0ChatComposer/mentions/useComposerMentions.d.ts
1363
1363
  /** A popover row: the pinned one, or an item from a source's group. */
1364
- type ComposerMentionRow = {
1364
+ interface ComposerMentionRow {
1365
1365
  item: ComposerMentionItem;
1366
1366
  /** The source the row came from; absent for the pinned row. */
1367
1367
  source?: ComposerMentionSource;
1368
- };
1369
- type UseComposerMentionsReturn = {
1368
+ }
1369
+ interface UseComposerMentionsReturn {
1370
1370
  isOpen: boolean;
1371
1371
  query: string;
1372
1372
  /** Non-empty groups in display order (the pinned row is not one). */
@@ -1392,10 +1392,10 @@ type UseComposerMentionsReturn = {
1392
1392
  close: () => void;
1393
1393
  /** Keep the popover shut for the current `@` until the caret leaves it. */
1394
1394
  dismissCurrentTrigger: () => void;
1395
- };
1395
+ }
1396
1396
  //#endregion
1397
1397
  //#region src/elements/primitives/_primitives/F0ChatComposer/useComposerEditor.d.ts
1398
- type ComposerEditor = {
1398
+ interface ComposerEditor {
1399
1399
  value: string;
1400
1400
  setValue: (value: string) => void;
1401
1401
  cursorPosition: number;
@@ -1428,16 +1428,16 @@ type ComposerEditor = {
1428
1428
  }) => void;
1429
1429
  /** Start the undo stack afresh from the next change (after a send). */
1430
1430
  breakHistory: () => void;
1431
- };
1431
+ }
1432
1432
  //#endregion
1433
1433
  //#region src/elements/primitives/_primitives/F0ChatComposer/voice/types.d.ts
1434
1434
  /** Options handed to a {@link ComposerTranscribeFn}. */
1435
- type ComposerTranscribeOptions = {
1435
+ interface ComposerTranscribeOptions {
1436
1436
  /** Cumulative transcript as it streams in. */
1437
1437
  onPartial: (text: string) => void;
1438
1438
  /** Aborted when the user cancels an in-flight transcription. */
1439
1439
  signal?: AbortSignal;
1440
- };
1440
+ }
1441
1441
  /** Transcribes a recorded audio blob to text (voice dictation). */
1442
1442
  type ComposerTranscribeFn = (audio: Blob, options: ComposerTranscribeOptions) => Promise<string>;
1443
1443
  //#endregion
@@ -1446,11 +1446,11 @@ type RecorderStatus = "idle" | "recording" | "transcribing";
1446
1446
  //#endregion
1447
1447
  //#region src/elements/primitives/_primitives/F0ChatComposer/types.d.ts
1448
1448
  /** What the composer hands to `onSend`: the text as typed and its mentions. */
1449
- type F0ChatComposerDraft = {
1449
+ interface F0ChatComposerDraft {
1450
1450
  text: string;
1451
1451
  mentions: ComposerMention[];
1452
- };
1453
- type F0ChatComposerLabels = {
1452
+ }
1453
+ interface F0ChatComposerLabels {
1454
1454
  /** The field's accessible name, and its placeholder when no `placeholders`. */
1455
1455
  placeholder: string;
1456
1456
  /** The placeholder while the microphone is recording. */
@@ -1473,9 +1473,9 @@ type F0ChatComposerLabels = {
1473
1473
  mentionSuggestions?: string;
1474
1474
  /** Second line of the pinned mention row (`@here`). */
1475
1475
  mentionPinnedDescription?: string;
1476
- };
1476
+ }
1477
1477
  /** A second autocomplete next to mentions (emoji `:shortcodes:`). */
1478
- type ComposerAutocomplete = {
1478
+ interface ComposerAutocomplete {
1479
1479
  isOpen: boolean;
1480
1480
  listboxId: string;
1481
1481
  activeDescendantId?: string;
@@ -1485,8 +1485,8 @@ type ComposerAutocomplete = {
1485
1485
  handleBlur?: () => void;
1486
1486
  /** Its list, rendered over the field. */
1487
1487
  popover: ReactNode;
1488
- };
1489
- type ComposerAutocompletePlugin = {
1488
+ }
1489
+ interface ComposerAutocompletePlugin {
1490
1490
  /**
1491
1491
  * Called on every render with the composer's editor, so it must be a hook
1492
1492
  * with a stable identity: a module-level function, never an inline one.
@@ -1497,8 +1497,8 @@ type ComposerAutocompletePlugin = {
1497
1497
  value: string;
1498
1498
  cursorPosition: number;
1499
1499
  } | null;
1500
- };
1501
- type F0ChatComposerVoice = {
1500
+ }
1501
+ interface F0ChatComposerVoice {
1502
1502
  /** Dictation: the recording is transcribed into the field. */
1503
1503
  onTranscribe?: ComposerTranscribeFn;
1504
1504
  /** Voice notes: the recording is handed over as audio, text untouched. */
@@ -1513,13 +1513,13 @@ type F0ChatComposerVoice = {
1513
1513
  onStarted?: () => void;
1514
1514
  /** The reader threw a recording away. */
1515
1515
  onCancelled?: () => void;
1516
- };
1517
- type F0ChatComposerState = {
1516
+ }
1517
+ interface F0ChatComposerState {
1518
1518
  /** No text in the field. */
1519
1519
  isEmpty: boolean;
1520
1520
  recorder: RecorderStatus;
1521
- };
1522
- type F0ChatComposerHandle = {
1521
+ }
1522
+ interface F0ChatComposerHandle {
1523
1523
  /** Focus the field, caret at the end. No-op while `replacement` shows. */
1524
1524
  focus: (options?: {
1525
1525
  preventScroll?: boolean;
@@ -1539,8 +1539,8 @@ type F0ChatComposerHandle = {
1539
1539
  cancelRecording: () => void;
1540
1540
  /** Start the undo stack afresh from the next change. */
1541
1541
  breakHistory: () => void;
1542
- };
1543
- type F0ChatComposerProps = {
1542
+ }
1543
+ interface F0ChatComposerProps {
1544
1544
  /** Called with the draft on Enter or send. Return (or resolve) `false` to
1545
1545
  * keep the draft; a rejection keeps it too. An async send clears the field
1546
1546
  * once it resolves, unless the text changed meanwhile: then the field keeps
@@ -1626,7 +1626,7 @@ type F0ChatComposerProps = {
1626
1626
  handleRef?: Ref<F0ChatComposerHandle>;
1627
1627
  reducedMotion?: boolean;
1628
1628
  "data-testid"?: string;
1629
- };
1629
+ }
1630
1630
  //#endregion
1631
1631
  //#region src/elements/primitives/_primitives/F0ChatComposer/F0ChatComposer.d.ts
1632
1632
  /**
@@ -1677,7 +1677,7 @@ declare const aiChatFileFromShowFilesItem: (item: AiChatShowFilesItem, { urlFor
1677
1677
  }) => AiChatFile;
1678
1678
  //#endregion
1679
1679
  //#region src/addons/ai/ai/F0AiFileAttachments/F0AiFileAttachments.d.ts
1680
- type F0AiFileAttachmentsProps = {
1680
+ interface F0AiFileAttachmentsProps {
1681
1681
  /** Files to show, in order. Build them with the `aiChatFile*` adapters. */
1682
1682
  files: AiChatFile[];
1683
1683
  /**
@@ -1701,7 +1701,7 @@ type F0AiFileAttachmentsProps = {
1701
1701
  * @default "default"
1702
1702
  */
1703
1703
  size?: "default" | "compact";
1704
- };
1704
+ }
1705
1705
  /**
1706
1706
  * Files in an AI chat message, shown the way F0Chat shows them: photos as an
1707
1707
  * album that opens a lightbox, documents as cards with a snapshot of their
@@ -1747,7 +1747,7 @@ interface PongBallProps {
1747
1747
  declare function PongBall({ size, className, style }: PongBallProps): import("react").JSX.Element;
1748
1748
  //#endregion
1749
1749
  //#region src/addons/ai/ai/F0CanvasPanel/F0CanvasPanel.d.ts
1750
- type F0CanvasPanelProps = {
1750
+ interface F0CanvasPanelProps {
1751
1751
  /** Current canvas content to render. When null, the panel collapses. */
1752
1752
  content: CanvasContent | null;
1753
1753
  /** Called when the user closes the canvas. */
@@ -1760,7 +1760,7 @@ type F0CanvasPanelProps = {
1760
1760
  * Defaults to "right" (chat on the right -> canvas seam on its right).
1761
1761
  */
1762
1762
  side?: "left" | "right";
1763
- };
1763
+ }
1764
1764
  /**
1765
1765
  * Entity-agnostic canvas panel that renders content alongside the chat sidebar.
1766
1766
  *