@factorialco/f0-react 1.418.1 → 1.420.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.
@@ -1,7 +1,7 @@
1
1
  import { defaultTranslations as ke } from "./i18n-provider-defaults.js";
2
2
  import { jsx as q, jsxs as le } from "react/jsx-runtime";
3
3
  import { useInsertionEffect as Xe, createContext as Ye, useContext as $e, useRef as B, useEffect as ie, useState as Ue, useCallback as qe, useMemo as He } from "react";
4
- import { r as Ke, l as je, m as Qe, n as Je, o as Me, p as Ze, q as et, s as tt, t as rt, v as nt, w as Ne, x as ot, V as it, y as st, z as at, A as ct, S as ut, H as lt, B as se, D as ft, E as dt, G as ht, J as mt, K as pt, L as vt, M as fe, N as gt } from "./registry-QvKnuacs.js";
4
+ import { r as Ke, l as je, m as Qe, n as Je, o as Me, p as Ze, q as et, s as tt, t as rt, v as nt, w as Ne, x as ot, V as it, y as st, z as at, A as ct, S as ut, H as lt, B as se, D as ft, E as dt, G as ht, J as mt, K as pt, L as vt, M as fe, N as gt } from "./registry-BQtwbAA5.js";
5
5
  import { useTrackVolume as wt } from "@livekit/components-react";
6
6
  function Tt(t, e, r) {
7
7
  Xe(() => t.on(e, r), [t, e, r]);
package/dist/ai.d.ts CHANGED
@@ -1296,6 +1296,7 @@ export declare const defaultTranslations: {
1296
1296
  readonly fileTooLarge: "File exceeds {{maxSize}} MB limit";
1297
1297
  readonly invalidFileType: "File type not accepted. Accepted formats: {{types}}";
1298
1298
  };
1299
+ readonly moreInformation: "More information";
1299
1300
  readonly validation: {
1300
1301
  readonly required: "This field is required";
1301
1302
  readonly invalidType: "Invalid value";
@@ -1792,8 +1793,10 @@ declare module "@tiptap/core" {
1792
1793
 
1793
1794
  declare module "@tiptap/core" {
1794
1795
  interface Commands<ReturnType> {
1795
- transcript: {
1796
- insertTranscript: (data: TranscriptData) => ReturnType;
1796
+ videoEmbed: {
1797
+ setVideoEmbed: (options: {
1798
+ src: string;
1799
+ }) => ReturnType;
1797
1800
  };
1798
1801
  }
1799
1802
  }
@@ -1801,10 +1804,8 @@ declare module "@tiptap/core" {
1801
1804
 
1802
1805
  declare module "@tiptap/core" {
1803
1806
  interface Commands<ReturnType> {
1804
- videoEmbed: {
1805
- setVideoEmbed: (options: {
1806
- src: string;
1807
- }) => ReturnType;
1807
+ transcript: {
1808
+ insertTranscript: (data: TranscriptData) => ReturnType;
1808
1809
  };
1809
1810
  }
1810
1811
  }
package/dist/ai.js CHANGED
@@ -1,6 +1,6 @@
1
- import { i as t, h as i, F as e, a as n, C as o, b as r, j as A, k as c, I as u, g as F, c as h, d as C, u as l, f as I, e as f } from "./registry-QvKnuacs.js";
1
+ import { i as t, h as i, F as e, a as n, C as o, b as r, j as A, k as c, I as u, g as F, c as h, d as C, u as l, f as I, e as f } from "./registry-BQtwbAA5.js";
2
2
  import { defaultTranslations as d } from "./i18n-provider-defaults.js";
3
- import { A as p, F as S, c as g, d as v, b as x, a as k, o as O, u as P } from "./F0HILActionConfirmation-e3fz8fma.js";
3
+ import { A as p, F as S, c as g, d as v, b as x, a as k, o as O, u as P } from "./F0HILActionConfirmation-DmSwzvkv.js";
4
4
  export {
5
5
  p as AiChatTranslationsProvider,
6
6
  t as ChatSpinner,
@@ -1351,6 +1351,11 @@ export declare interface CardSelectableItem<T extends CardSelectableValue> {
1351
1351
  disabled?: boolean;
1352
1352
  /** Whether this item is required (shows asterisk indicator) */
1353
1353
  required?: boolean;
1354
+ /** Link displayed below the description, typically pointing to external documentation */
1355
+ moreInfoLink?: {
1356
+ href: string;
1357
+ label?: string;
1358
+ };
1354
1359
  }
1355
1360
 
1356
1361
  export declare interface CardSelectableMultipleProps<T extends CardSelectableValue> {
@@ -2859,6 +2864,7 @@ declare const defaultTranslations: {
2859
2864
  readonly fileTooLarge: "File exceeds {{maxSize}} MB limit";
2860
2865
  readonly invalidFileType: "File type not accepted. Accepted formats: {{types}}";
2861
2866
  };
2867
+ readonly moreInformation: "More information";
2862
2868
  readonly validation: {
2863
2869
  readonly required: "This field is required";
2864
2870
  readonly invalidType: "Invalid value";
@@ -7217,8 +7223,10 @@ declare module "@tiptap/core" {
7217
7223
 
7218
7224
  declare module "@tiptap/core" {
7219
7225
  interface Commands<ReturnType> {
7220
- transcript: {
7221
- insertTranscript: (data: TranscriptData) => ReturnType;
7226
+ videoEmbed: {
7227
+ setVideoEmbed: (options: {
7228
+ src: string;
7229
+ }) => ReturnType;
7222
7230
  };
7223
7231
  }
7224
7232
  }
@@ -7226,10 +7234,8 @@ declare module "@tiptap/core" {
7226
7234
 
7227
7235
  declare module "@tiptap/core" {
7228
7236
  interface Commands<ReturnType> {
7229
- videoEmbed: {
7230
- setVideoEmbed: (options: {
7231
- src: string;
7232
- }) => ReturnType;
7237
+ transcript: {
7238
+ insertTranscript: (data: TranscriptData) => ReturnType;
7233
7239
  };
7234
7240
  }
7235
7241
  }
@@ -1,10 +1,10 @@
1
- import { cB as mf, a7 as _r, b0 as gf, a6 as bf, cC as wf, cD as xf, a1 as yf, cE as Co, cF as er, cG as vf, cH as _s, cI as ji, cJ as Er, K as k, R as q, L as rt, u as me, cK as kf, cL as Cf, cM as Sf, cN as Nf, cO as If, ak as Le, cP as Af, a0 as Et, cQ as _f, b1 as Ef, _ as H, b9 as Tf, ba as Df, U as jt, cR as ba, bm as Rf, bb as Lf, M as B, cS as Es, Z as E, cT as it, cU as Of, cV as Mf, bh as Pf, aC as Ff, bf as zf, aL as Ht, cW as wa, cX as $f, cY as Tt, bz as kn, aE as Ts, aF as cn, k as xa, a4 as mt, cZ as ya, c_ as Bf, c$ as So, d0 as tn, d1 as Ds, d2 as jn, d3 as Tr, d4 as jf, d5 as va, d6 as Hf, d7 as Rs, d8 as Cn, d9 as Re, da as Vf, db as Wf, dc as kt, dd as bi, de as Uf, df as yn, dg as Kt, dh as Gf, P as de, di as Kf, dj as qf, dk as Yf, dl as Jf, dm as Xf, W as Ye, Y as ue, dn as Ls, aX as Hn, cy as Zr, dp as ka, dq as Os, dr as Zf, ds as Qf, dt as eh, du as th, dv as nh, dw as rh, dx as ih, dy as sh, dz as oh, b4 as lh, dA as ah, b2 as ch, dB as dh, dC as uh, dD as fh, dE as hh, dF as ph, dG as mh, dH as gh, dI as bh, bY as nt, dJ as Ca, dK as wh, a3 as V, N as Sa, dL as Na, dM as xh, bA as Ms, a8 as No, a9 as Io, aw as yh, dN as vh, dO as kh, am as dn, dP as Ch, dQ as Sh, dR as Nh, dS as Ih, aS as Qr, dT as Ia, dU as Aa, b_ as _a, dV as Ah, aN as Dr, dW as _h, dX as Eh, dY as Th, dZ as Dh, d_ as Rh, ai as Lh, aj as Oh, al as Mh, d$ as Ph, e0 as Ea, e1 as Fh, e2 as Ta, e3 as zh, e4 as $h, e5 as Bh, aB as Ao, e6 as Da, e7 as Hi, ar as Vi, e8 as Ra, e9 as jh, ea as Hh, cx as Vn, bx as La, cA as Vh, cz as Wh, eb as Uh, by as nn, ec as Gh, au as tr, ed as _o, ee as Wi, ef as Kh, bg as qh, eg as Yh, bU as Oa, bZ as Jh, c9 as Ma, c7 as Ps, ae as Xh, ca as Zh, bW as Fs, az as Pa, c as Fa, g as Qh, a as ep, bR as tp, eh as za, ei as np, F as rp, ej as $a, ek as Ba, el as ip, bq as Eo, em as sp, en as op, bT as lp, bo as ja, br as ap, eo as cp, ep as dp, eq as up, er as fp, at as Ha, $ as hp, Q as st, bF as zs, es as $s, et as Bs, eu as Va, bG as js, ev as Wa, ew as pp, ex as mp, ey as gp, ez as bp, eA as wp, bH as xp, eB as yp, bV as vp, eC as kp, eD as To, eE as Do, eF as Ro, eG as Cp, eH as Sp, eI as Np, b6 as Ip, eJ as Ua, bw as Ap, eK as _p, eL as Ep } from "./registry-QvKnuacs.js";
2
- import { eP as WI, eO as UI, eM as GI, aI as KI, eN as qI, eX as YI, eY as JI, e_ as XI, f2 as ZI, f3 as QI, aO as eA, eR as tA, eQ as nA, eZ as rA, eW as iA, eT as sA, eV as oA, eS as lA, bX as aA, eU as cA, e$ as dA, f0 as uA, f1 as fA } from "./registry-QvKnuacs.js";
1
+ import { cH as mf, a7 as _r, b8 as gf, a6 as bf, cI as wf, cJ as xf, a1 as yf, cK as Co, cL as er, cM as vf, cN as _s, cO as ji, cP as Er, K as k, R as q, L as rt, u as me, cQ as kf, cR as Cf, cS as Sf, cT as Nf, cU as If, ak as Le, cV as Af, a0 as Et, cW as _f, b9 as Ef, _ as H, bh as Tf, bi as Df, U as jt, cX as ba, bu as Rf, bj as Lf, M as B, cY as Es, Z as E, cZ as it, c_ as Of, c$ as Mf, bp as Pf, aC as Ff, bn as zf, aL as Ht, d0 as wa, d1 as $f, d2 as Tt, a$ as kn, aE as Ts, aF as cn, k as xa, a4 as mt, d3 as ya, d4 as Bf, d5 as So, d6 as tn, d7 as Ds, d8 as jn, d9 as Tr, da as jf, db as va, dc as Hf, dd as Rs, de as Cn, df as Re, dg as Vf, dh as Wf, di as kt, dj as bi, dk as Uf, dl as yn, dm as Kt, dn as Gf, P as de, dp as Kf, dq as qf, dr as Yf, ds as Jf, dt as Xf, W as Ye, Y as ue, du as Ls, aX as Hn, cE as Zr, dv as ka, dw as Os, dx as Zf, dy as Qf, dz as eh, dA as th, dB as nh, dC as rh, dD as ih, dE as sh, dF as oh, bc as lh, dG as ah, ba as ch, dH as dh, dI as uh, dJ as fh, dK as hh, dL as ph, dM as mh, dN as gh, dO as bh, c2 as nt, dP as Ca, dQ as wh, a3 as V, N as Sa, dR as Na, dS as xh, b3 as Ms, a8 as No, a9 as Io, aw as yh, dT as vh, dU as kh, am as dn, dV as Ch, dW as Sh, dX as Nh, dY as Ih, aS as Qr, dZ as Ia, d_ as Aa, c4 as _a, d$ as Ah, aN as Dr, e0 as _h, e1 as Eh, e2 as Th, e3 as Dh, e4 as Rh, ai as Lh, aj as Oh, al as Mh, e5 as Ph, e6 as Ea, e7 as Fh, e8 as Ta, e9 as zh, ea as $h, eb as Bh, aB as Ao, ec as Da, ed as Hi, ar as Vi, ee as Ra, ef as jh, eg as Hh, cD as Vn, bF as La, cG as Vh, cF as Wh, eh as Uh, bG as nn, ei as Gh, au as tr, ej as _o, ek as Wi, el as Kh, bo as qh, em as Yh, b_ as Oa, c3 as Jh, cf as Ma, cd as Ps, ae as Xh, cg as Zh, c0 as Fs, az as Pa, c as Fa, g as Qh, a as ep, bX as tp, en as za, eo as np, F as rp, ep as $a, eq as Ba, er as ip, by as Eo, es as sp, et as op, bZ as lp, bw as ja, bz as ap, eu as cp, ev as dp, ew as up, ex as fp, at as Ha, $ as hp, Q as st, bL as zs, ey as $s, ez as Bs, eA as Va, bM as js, eB as Wa, eC as pp, eD as mp, eE as gp, eF as bp, eG as wp, bN as xp, eH as yp, b$ as vp, eI as kp, eJ as To, eK as Do, eL as Ro, b1 as Cp, eM as Sp, eN as Np, be as Ip, eO as Ua, bE as Ap, eP as _p, eQ as Ep } from "./registry-BQtwbAA5.js";
2
+ import { eU as WI, eT as UI, eR as GI, aI as KI, eS as qI, f0 as YI, f1 as JI, f3 as XI, f7 as ZI, f8 as QI, aO as eA, eW as tA, eV as nA, f2 as rA, e$ as iA, eY as sA, e_ as oA, eX as lA, c1 as aA, eZ as cA, f4 as dA, f5 as uA, f6 as fA } from "./registry-BQtwbAA5.js";
3
3
  import { jsx as c, jsxs as g, Fragment as ne } from "react/jsx-runtime";
4
4
  import * as Sn from "react";
5
5
  import z, { PureComponent as Tp, forwardRef as P, useRef as K, useTransition as Dp, useState as L, useLayoutEffect as Ga, useContext as Hs, createContext as Vs, useCallback as X, useMemo as ee, useEffect as W, useId as Ka, useImperativeHandle as qa, memo as Ya, Fragment as Rp, isValidElement as Lp, cloneElement as Ja, Children as Xa } from "react";
6
- import { f as Yt, ac as Nn, e as nr, ad as Op, L as wi, ae as Mp, A as Pp, i as rr, k as Fp, G as zp, g as Lo, af as $p, j as Oo, n as Bp, ag as Za, ah as Qa, ai as jp, C as Hp, aa as Vp, aj as je, ak as ot, al as Ee, am as Wp, an as gr, ao as Ue, ap as ec, aq as Me, ar as Ws, as as $e, at as Mo, au as Up, av as tc, aw as Ie, ax as Fe, ay as In, az as Rr, aA as nc, aB as Gp, aC as Vt, aD as Kp, aE as qp, aF as Yp, aG as Wn, aH as Un, aI as Us, aJ as Jp, aK as rc, aL as ic, aM as sc, aN as Xp, aO as oc, aP as lc, aQ as ac, aR as cc, aS as dc, aT as uc, a3 as Po, aU as Zp, aV as Fo, aW as Qp, aX as em, aY as tm, w as nm, x as rm, z as im, J as sm, K as om, s as lm, aZ as fc, a_ as am, a$ as cm, b0 as dm, b1 as hc, a7 as Ui, b2 as um, b3 as fm, b4 as hm, b5 as pm, b6 as mm, b7 as gm, b8 as bm, b9 as wm, ba as xm, bb as ym, bc as vm, bd as km, ab as pc, M as Cm, N as Sm, P as Nm, Q as Im, V as Am, O as _m, be as zo, bf as Em, bg as Tm, l as Dm } from "./index-uBFHZ597.js";
7
- import { a5 as pA, Z as mA, a0 as gA, R as bA, $ as wA, bk as xA, bj as yA, bh as vA, bi as kA, T as CA, a4 as SA, U as NA, _ as IA, W as AA, a8 as _A, a9 as EA } from "./index-uBFHZ597.js";
6
+ import { f as Yt, ad as Nn, e as nr, ae as Op, L as wi, af as Mp, A as Pp, i as rr, k as Fp, G as zp, g as Lo, ag as $p, j as Oo, n as Bp, ah as Za, ai as Qa, aj as jp, C as Hp, ab as Vp, ak as je, al as ot, am as Ee, an as Wp, ao as gr, ap as Ue, aq as ec, ar as Me, as as Ws, at as $e, au as Mo, av as Up, aw as tc, ax as Ie, ay as Fe, az as In, aA as Rr, aB as nc, aC as Gp, aD as Vt, aE as Kp, aF as qp, aG as Yp, aH as Wn, aI as Un, aJ as Us, aK as Jp, aL as rc, aM as ic, aN as sc, aO as Xp, aP as oc, aQ as lc, aR as ac, aS as cc, aT as dc, aU as uc, a4 as Po, aV as Zp, aW as Fo, aX as Qp, aY as em, aZ as tm, w as nm, x as rm, z as im, J as sm, K as om, s as lm, a_ as fc, a$ as am, b0 as cm, b1 as dm, b2 as hc, a8 as Ui, b3 as um, b4 as fm, b5 as hm, b6 as pm, b7 as mm, b8 as gm, b9 as bm, a0 as wm, ba as xm, bb as ym, bc as vm, bd as km, ac as pc, M as Cm, N as Sm, P as Nm, Q as Im, V as Am, O as _m, be as zo, bf as Em, bg as Tm, l as Dm } from "./index-BVculwZa.js";
7
+ import { a6 as pA, Z as mA, a1 as gA, R as bA, $ as wA, bk as xA, bj as yA, bh as vA, bi as kA, T as CA, a5 as SA, U as NA, _ as IA, W as AA, a9 as _A, aa as EA } from "./index-BVculwZa.js";
8
8
  import './experimental.css';const Rm = mf("Search", [
9
9
  ["circle", { cx: "11", cy: "11", r: "8", key: "4ej97u" }],
10
10
  ["path", { d: "m21 21-4.3-4.3", key: "1qie3q" }]
package/dist/f0.d.ts CHANGED
@@ -59,6 +59,7 @@ import { F0TagPersonProps as F0TagPersonProps_2 } from './types';
59
59
  import { F0TagRawProps } from './types';
60
60
  import { F0TagStatusProps } from './types';
61
61
  import { F0TagTeamProps } from './types';
62
+ import { F0TimelineRowProps as F0TimelineRowProps_2 } from './types';
62
63
  import { f1Colors } from '@factorialco/f0-core';
63
64
  import { FC } from 'react';
64
65
  import { FileCellValue } from './f0';
@@ -3400,6 +3401,7 @@ export declare const defaultTranslations: {
3400
3401
  readonly fileTooLarge: "File exceeds {{maxSize}} MB limit";
3401
3402
  readonly invalidFileType: "File type not accepted. Accepted formats: {{types}}";
3402
3403
  };
3404
+ readonly moreInformation: "More information";
3403
3405
  readonly validation: {
3404
3406
  readonly required: "This field is required";
3405
3407
  readonly invalidType: "Invalid value";
@@ -4241,10 +4243,6 @@ export declare type F0AvatarTeamProps = {
4241
4243
  badge?: AvatarBadge;
4242
4244
  } & Pick<BaseAvatarProps, "aria-label" | "aria-labelledby">;
4243
4245
 
4244
- /**
4245
- * Base configuration shared across all field types.
4246
- * Position is automatically derived from field declaration order in the schema.
4247
- */
4248
4246
  export declare interface F0BaseConfig {
4249
4247
  /** Label displayed above the field */
4250
4248
  label: string;
@@ -4286,6 +4284,20 @@ export declare interface F0BaseConfig {
4286
4284
  * renderIf: ({ values }) => values.status === 'active'
4287
4285
  */
4288
4286
  renderIf?: F0BaseFieldRenderIfProp;
4287
+ /**
4288
+ * Alert displayed below the field.
4289
+ * Can be static props (always shown) or a callback for conditional display.
4290
+ * @example
4291
+ * // Static alert (always visible)
4292
+ * alert: { title: "Note", description: "This field is important" }
4293
+ *
4294
+ * // Conditional alert based on field value
4295
+ * alert: ({ fieldValue }) =>
4296
+ * fieldValue === 0
4297
+ * ? { title: "Heads up", description: "Value is zero", variant: "warning" }
4298
+ * : null
4299
+ */
4300
+ alert?: F0FieldAlert;
4289
4301
  /**
4290
4302
  * Name identifying a reusable custom field type.
4291
4303
  * When set, the form-level `renderCustomField` callback is invoked to provide
@@ -4327,6 +4339,8 @@ export declare interface F0BaseField {
4327
4339
  * @default false
4328
4340
  */
4329
4341
  resetOnDisable?: boolean;
4342
+ /** Alert displayed below the field (static props or conditional callback) */
4343
+ alert?: F0FieldAlert;
4330
4344
  /**
4331
4345
  * Name identifying a reusable custom field type.
4332
4346
  * Used with the form-level `renderCustomField` callback.
@@ -4549,9 +4563,14 @@ declare function _F0Checkbox({ title, onCheckedChange, id, disabled, indetermina
4549
4563
 
4550
4564
  /**
4551
4565
  * F0 config options specific to checkbox fields
4552
- * (checkbox has no additional options beyond base config)
4553
4566
  */
4554
4567
  export declare interface F0CheckboxConfig {
4568
+ /**
4569
+ * Link displayed below the help text, typically pointing to external documentation.
4570
+ * @example
4571
+ * moreInfoLink: { href: "https://help.example.com/article", label: "Learn more" }
4572
+ */
4573
+ moreInfoLink?: F0MoreInfoLink;
4555
4574
  }
4556
4575
 
4557
4576
  /**
@@ -4559,6 +4578,8 @@ export declare interface F0CheckboxConfig {
4559
4578
  */
4560
4579
  export declare type F0CheckboxField = F0BaseField & {
4561
4580
  type: "checkbox";
4581
+ /** Link displayed below the help text, typically pointing to external documentation */
4582
+ moreInfoLink?: F0MoreInfoLink;
4562
4583
  /** Conditional rendering based on another field's value */
4563
4584
  renderIf?: CheckboxFieldRenderIf;
4564
4585
  };
@@ -5132,6 +5153,34 @@ export declare function F0EventCatcherProvider({ children, onEvent, enabled, cat
5132
5153
  */
5133
5154
  export declare type F0Field = F0TextField | F0NumberField | F0DurationField | F0TextareaField | F0SelectField | F0CheckboxField | F0SwitchField | F0DateField | F0TimeField | F0DateTimeField | F0DateRangeField | F0RichTextField | F0FileField | F0CustomField;
5134
5155
 
5156
+ /**
5157
+ * Alert configuration for a field.
5158
+ * Can be static props (always shown) or a callback for conditional display.
5159
+ */
5160
+ export declare type F0FieldAlert = F0FieldAlertProps | F0FieldAlertFunction;
5161
+
5162
+ /**
5163
+ * Callback that evaluates whether to show an alert below the field.
5164
+ * Receives the field's current value and all form values.
5165
+ * Return alert props to show, or null/undefined to hide.
5166
+ */
5167
+ export declare type F0FieldAlertFunction = (context: {
5168
+ fieldValue: unknown;
5169
+ values: Record<string, unknown>;
5170
+ }) => F0FieldAlertProps | null | undefined;
5171
+
5172
+ /**
5173
+ * Base configuration shared across all field types.
5174
+ * Position is automatically derived from field declaration order in the schema.
5175
+ */
5176
+ /**
5177
+ * Alert props returned by the field alert callback.
5178
+ * Derived from F0AlertProps with `variant` defaulting to "info".
5179
+ */
5180
+ export declare type F0FieldAlertProps = Omit<F0AlertProps, "variant"> & {
5181
+ variant?: F0AlertProps["variant"];
5182
+ };
5183
+
5135
5184
  /**
5136
5185
  * Complete F0 field configuration (union of all possible configs)
5137
5186
  * @typeParam T - The value type for select fields (string or number)
@@ -5834,6 +5883,16 @@ export declare type F0LinkProps = Omit<ActionLinkProps, "variant" | "href"> & {
5834
5883
  href?: string;
5835
5884
  };
5836
5885
 
5886
+ /**
5887
+ * Configuration for a "more info" link displayed below the help text.
5888
+ */
5889
+ export declare interface F0MoreInfoLink {
5890
+ /** URL the link points to */
5891
+ href: string;
5892
+ /** Link label (defaults to "More information") */
5893
+ label?: string;
5894
+ }
5895
+
5837
5896
  /**
5838
5897
  * F0 config options specific to number fields
5839
5898
  *
@@ -6295,6 +6354,12 @@ declare type F0StringTextConfig = F0BaseConfig & F0TextConfig & {
6295
6354
  * (switch has no additional options beyond base config)
6296
6355
  */
6297
6356
  export declare interface F0SwitchConfig {
6357
+ /**
6358
+ * Link displayed below the help text, typically pointing to external documentation.
6359
+ * @example
6360
+ * moreInfoLink: { href: "https://help.example.com/article", label: "Learn more" }
6361
+ */
6362
+ moreInfoLink?: F0MoreInfoLink;
6298
6363
  }
6299
6364
 
6300
6365
  /**
@@ -6302,6 +6367,8 @@ export declare interface F0SwitchConfig {
6302
6367
  */
6303
6368
  export declare type F0SwitchField = F0BaseField & {
6304
6369
  type: "switch";
6370
+ /** Link displayed below the help text, typically pointing to external documentation */
6371
+ moreInfoLink?: F0MoreInfoLink;
6305
6372
  /** Conditional rendering based on another field's value */
6306
6373
  renderIf?: SwitchFieldRenderIf;
6307
6374
  };
@@ -6451,6 +6518,69 @@ declare type F0TimeFieldConfig = F0BaseConfig & F0TimeConfig & {
6451
6518
  fieldType: "time";
6452
6519
  };
6453
6520
 
6521
+ /**
6522
+ * @experimental This is an experimental component use it at your own risk
6523
+ */
6524
+ export declare const F0TimelineRow: WithDataTestIdReturnType_3<(props: F0TimelineRowProps_2) => JSX_2.Element>;
6525
+
6526
+ export declare interface F0TimelineRowAction {
6527
+ /** Button label */
6528
+ label: string;
6529
+ /** Optional icon for the button */
6530
+ icon?: IconType;
6531
+ /** Click handler */
6532
+ onClick: () => void;
6533
+ /** Whether the button is disabled */
6534
+ disabled?: boolean;
6535
+ /** Whether the button is in a loading state */
6536
+ loading?: boolean;
6537
+ }
6538
+
6539
+ declare interface F0TimelineRowBaseProps {
6540
+ /** The current status of this timeline entry */
6541
+ status: TimelineRowStatus;
6542
+ /** The title of the timeline entry (e.g., "Tasks") */
6543
+ title: string;
6544
+ /** Whether this is the last row in the timeline (hides the bottom connector line) */
6545
+ isLast?: boolean;
6546
+ /** Hide the status indicator column (used for subtasks inside multitask rows) */
6547
+ hideStatus?: boolean;
6548
+ }
6549
+
6550
+ /** Props for a multitask (collapsible group) timeline row */
6551
+ export declare interface F0TimelineRowMultitaskProps extends F0TimelineRowBaseProps {
6552
+ /** Number of grouped tasks */
6553
+ taskCount: number;
6554
+ /** Number of completed tasks in the group (shows a progress pill) */
6555
+ completedCount?: number;
6556
+ /** Whether the multitask row is expanded (controlled) */
6557
+ expanded: boolean;
6558
+ /** Callback when multitask row expand/collapse is toggled */
6559
+ onExpandToggle: () => void;
6560
+ /** The subtask items to render when expanded */
6561
+ items: F0TimelineRowTaskProps[];
6562
+ }
6563
+
6564
+ export declare type F0TimelineRowOtherAction = DropdownItem;
6565
+
6566
+ export declare type F0TimelineRowProps = F0TimelineRowTaskProps | F0TimelineRowMultitaskProps;
6567
+
6568
+ /** Props for a single-task timeline row */
6569
+ export declare interface F0TimelineRowTaskProps extends F0TimelineRowBaseProps {
6570
+ /** The icon representing the task type (defaults to Marker) */
6571
+ icon?: IconType;
6572
+ /** Description text (e.g., "Completed on 20/2025") */
6573
+ description?: string;
6574
+ /** Metadata items to display (assignees, tags, dates, etc.) using the same pattern as ResourceHeader */
6575
+ metadata?: (MetadataItem | undefined | boolean)[];
6576
+ /** Primary action button (displayed on the right after a divider) */
6577
+ primaryAction?: F0TimelineRowAction;
6578
+ /** Secondary action buttons (displayed on the left) */
6579
+ secondaryActions?: F0TimelineRowAction[];
6580
+ /** Overflow menu items (displayed as a dropdown via ellipsis button) */
6581
+ otherActions?: F0TimelineRowOtherAction[];
6582
+ }
6583
+
6454
6584
  export declare const F0WizardForm: {
6455
6585
  <TSchema extends F0FormSchema_2>(props: F0WizardFormSingleSchemaProps<TSchema>): default_2.ReactElement;
6456
6586
  <T extends F0PerSectionSchema_2>(props: F0WizardFormPerSectionProps<T>): default_2.ReactElement;
@@ -9737,6 +9867,10 @@ declare const textVariants: (props?: ({
9737
9867
  className?: ClassValue;
9738
9868
  })) | undefined) => string;
9739
9869
 
9870
+ export declare type TimelineRowStatus = (typeof timelineRowStatuses)[number];
9871
+
9872
+ export declare const timelineRowStatuses: readonly ["completed", "in-progress", "not-started"];
9873
+
9740
9874
  declare type TOCItem<Depth extends 1 | 2 | 3 | 4 = 1> = BaseTOCItem & {
9741
9875
  children?: NextDepth<Depth> extends never ? never : TOCItem<NextDepth<Depth>>[];
9742
9876
  };
@@ -10659,8 +10793,10 @@ declare module "@tiptap/core" {
10659
10793
 
10660
10794
  declare module "@tiptap/core" {
10661
10795
  interface Commands<ReturnType> {
10662
- transcript: {
10663
- insertTranscript: (data: TranscriptData) => ReturnType;
10796
+ videoEmbed: {
10797
+ setVideoEmbed: (options: {
10798
+ src: string;
10799
+ }) => ReturnType;
10664
10800
  };
10665
10801
  }
10666
10802
  }
@@ -10668,10 +10804,8 @@ declare module "@tiptap/core" {
10668
10804
 
10669
10805
  declare module "@tiptap/core" {
10670
10806
  interface Commands<ReturnType> {
10671
- videoEmbed: {
10672
- setVideoEmbed: (options: {
10673
- src: string;
10674
- }) => ReturnType;
10807
+ transcript: {
10808
+ insertTranscript: (data: TranscriptData) => ReturnType;
10675
10809
  };
10676
10810
  }
10677
10811
  }