@factorialco/f0-react 6.92.0 → 6.93.1

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 (26) hide show
  1. package/dist/{ChatPdfThumbnail-B5AL0nrd.js → ChatPdfThumbnail-CPl0nss6.js} +1 -1
  2. package/dist/{CoachmarkProvider-BvHCC6U-.js → CoachmarkProvider-BWN-lnib.js} +18779 -18560
  3. package/dist/{DocumentToolbar-Z04LbjLe.js → DocumentToolbar-DXwHOIRR.js} +2 -2
  4. package/dist/{DocxViewer-DatEcuPj.js → DocxViewer-Bq8rtoGl.js} +2 -2
  5. package/dist/{F0AiProcessingOverlay-CIBXF0aA.js → F0AiProcessingOverlay-CnPJe6l9.js} +3029 -2971
  6. package/dist/{F0CanvasPanel-BYk37H3S.js → F0CanvasPanel-CRfRDRcY.js} +30014 -29695
  7. package/dist/{F0VideoPlayer-ivv-8jRS.js → F0VideoPlayer-YejLcqsl.js} +1 -1
  8. package/dist/{LocationMap-DJV-K2nH.js → LocationMap-BB6ejEpS.js} +1 -1
  9. package/dist/{SheetViewer-DOPXx5v-.js → SheetViewer-ENbTiiHW.js} +2 -2
  10. package/dist/{TextViewer-CLD0qUx1.js → TextViewer-ClU-D6hJ.js} +2 -2
  11. package/dist/ai.d.ts +94 -13
  12. package/dist/ai.js +2 -2
  13. package/dist/component-status.d.ts +8 -8
  14. package/dist/component-status.js +1 -1
  15. package/dist/{experimental-CjCTiapX.js → experimental-BSasmmWC.js} +14488 -14341
  16. package/dist/experimental.d.ts +19 -10
  17. package/dist/experimental.js +35 -35
  18. package/dist/f0.d.ts +106 -20
  19. package/dist/f0.js +10554 -10458
  20. package/dist/i18n-provider-defaults.d.ts +10 -8
  21. package/dist/i18n-provider-defaults.js +5 -0
  22. package/dist/{index-C2ylL84h.js → index-BO9XpVCw.js} +3 -3
  23. package/dist/index-CjympfBT.js +4 -0
  24. package/dist/{pdfWorker-vVxORhXo.js → pdfWorker-BlHUxQSr.js} +2 -2
  25. package/package.json +2 -2
  26. package/dist/index-Bl4ay97j.js +0 -4
@@ -582,8 +582,15 @@ declare type AiChatProviderProps = {
582
582
  welcomeScreenCards?: F0AiChatWelcomeCard[];
583
583
  disclaimer?: AiChatDisclaimer;
584
584
  /**
585
- * Enable resizable chat window
586
- * When enabled, the chat can be resized between 300px and 50% of the screen width
585
+ * Enable the panel's drag-to-resize seam.
586
+ *
587
+ * The width is bounded by the room the frame actually has, not by a flat
588
+ * number: 300–712px while there is space for both, then whatever leaves the
589
+ * main content its minimum, then an even split. Narrower still and the panel
590
+ * covers the frame rather than splitting it. See `utils/panelWidth.ts`.
591
+ *
592
+ * The width the user drags to is remembered; a narrow window only shrinks
593
+ * what is displayed, so widening it again restores their choice.
587
594
  */
588
595
  resizable?: boolean;
589
596
  /**
@@ -5222,6 +5229,8 @@ declare const defaultTranslations: {
5222
5229
  readonly thoughtsGroupTitle: "Reasoning";
5223
5230
  readonly resourcesGroupTitle: "Resources";
5224
5231
  readonly thinking: "Thinking...";
5232
+ readonly thinkingElapsedSeconds: "{{seconds}}s";
5233
+ readonly thinkingElapsedMinutes: "{{minutes}}m {{seconds}}s";
5225
5234
  readonly feedbackModal: {
5226
5235
  readonly positive: {
5227
5236
  readonly title: "What did you like about this response?";
@@ -16549,11 +16558,9 @@ declare namespace Calendar {
16549
16558
 
16550
16559
  declare module "@tiptap/core" {
16551
16560
  interface Commands<ReturnType> {
16552
- enhanceHighlight: {
16553
- setEnhanceHighlight: (from: number, to: number, options?: {
16554
- placeholder?: string;
16555
- }) => ReturnType;
16556
- clearEnhanceHighlight: () => ReturnType;
16561
+ aiBlock: {
16562
+ insertAIBlock: (data: AIBlockData, config: AIBlockConfig) => ReturnType;
16563
+ executeAIAction: (actionType: string, config: AIBlockConfig) => ReturnType;
16557
16564
  };
16558
16565
  }
16559
16566
  }
@@ -16571,9 +16578,11 @@ declare module "@tiptap/core" {
16571
16578
 
16572
16579
  declare module "@tiptap/core" {
16573
16580
  interface Commands<ReturnType> {
16574
- aiBlock: {
16575
- insertAIBlock: (data: AIBlockData, config: AIBlockConfig) => ReturnType;
16576
- executeAIAction: (actionType: string, config: AIBlockConfig) => ReturnType;
16581
+ enhanceHighlight: {
16582
+ setEnhanceHighlight: (from: number, to: number, options?: {
16583
+ placeholder?: string;
16584
+ }) => ReturnType;
16585
+ clearEnhanceHighlight: () => ReturnType;
16577
16586
  };
16578
16587
  }
16579
16588
  }
@@ -1,6 +1,6 @@
1
- import { v as s, t, A as i, a as o, J as r, av as n, au as l, aw as d, B as S, w as C, y as g, L as m, aC as u, aD as c, aM as b, x as h, C as P, aB as T, aN as p, D as F, z as I, a3 as E, b7 as A, be as B, K as L, b6 as y, E as D, b as k, i as W, ak as _, al as v, ai as O, G as f, ar as R, F as x, j as H, n as M, o as N, k as V, c as w, q as G, r as z, H as U, aQ as j, aR as q, aF as K, aq as Q, aV as X, b4 as J, ax as Y, a6 as Z, aP as $, U as aa, ac as ea, O as sa, bi as ta, V as ia, P as oa, M as ra, N as na, ay as la, R as da, b2 as Sa, b8 as Ca, S as ga, a7 as ma, a8 as ua, _ as ca, $ as ba, a0 as ha, Z as Pa, a1 as Ta, W as pa, a2 as Fa, a4 as Ia, a5 as Ea, a9 as Aa, aa as Ba, bc as La, bb as ya, at as Da, as as ka, aA as Wa, aO as _a, aL as va, az as Oa, ab as fa, aG as Ra, bd as xa, bg as Ha, aE as Ma, aJ as Na, aH as Va, bh as wa, aK as Ga, aI as za, bf as Ua, d as ja, af as qa, ah as Ka, ba as Qa, b9 as Xa, ag as Ja, an as Ya, f as Za, l as $a, p as ae, g as ee, h as se, aY as te, aW as ie, ao as oe, ap as re, aU as ne, b5 as le, aX as de, e as Se, s as Ce, b0 as ge, aT as me, aZ as ue, ad as ce, b3 as be, u as he, aj as Pe, ae as Te, am as pe, aS as Fe, T as Ie, Q as Ee, I as Ae, Y as Be, X as Le, b1 as ye, a$ as De, a_ as ke } from "./experimental-CjCTiapX.js";
2
- import { dQ as _e, eq as ve, ep as Oe, eD as fe, dn as Re, en as xe, cf as He, c5 as Me, cc as Ne, ei as Ve, b_ as we, b_ as Ge, bT as ze, ej as Ue, ci as je, e4 as qe, ck as Ke, eG as Qe, eo as Xe, ez as Je, eA as Ye, d7 as Ze, eE as $e, k as as, dR as es, cO as ss, em as ts, es as is, er as os, T as rs, h as ns, bU as ls, eB as ds, eH as Ss, eC as Cs, eF as gs, ey as ms, ev as us, ex as cs, et as bs, ek as hs, el as Ps, ee as Ts, ew as ps, eu as Fs } from "./F0CanvasPanel-BYk37H3S.js";
3
- import { ay as Es, az as As, a6 as Bs, a7 as Ls, a4 as ys, ah as Ds, C as ks, a8 as Ws, aK as _s, ad as vs, aJ as Os, ag as fs, a5 as Rs, aw as xs, aM as Hs, aL as Ms, ao as Ns, ai as Vs, ar as ws, aP as Gs, a3 as zs, at as Us, aq as js, al as qs, aR as Ks, am as Qs, au as Xs, av as Js, a9 as Ys, aN as Zs, aO as $s, an as at, ax as et, aG as st, O as tt, aI as it, aa as ot, aT as rt, ac as nt, ae as lt, ar as dt, aQ as St, as as Ct, ap as gt, aS as mt, ab as ut, W as ct, af as bt, a2 as ht, a0 as Pt, a1 as Tt, aC as pt, aD as Ft, aA as It, aH as Et, ak as At, aj as Bt, aE as Lt, m as yt, aB as Dt, aF as kt, D as Wt } from "./CoachmarkProvider-BvHCC6U-.js";
1
+ import { v as s, t, A as i, a as o, J as r, av as n, au as l, aw as d, B as S, w as C, y as g, L as m, aC as u, aD as c, aM as b, x as h, C as P, aB as T, aN as p, D as F, z as I, a3 as E, b7 as A, be as B, K as L, b6 as y, E as D, b as k, i as W, ak as _, al as v, ai as f, G as O, ar as R, F as M, j as x, n as H, o as N, k as V, c as w, q as G, r as z, H as U, aQ as j, aR as q, aF as K, aq as X, aV as J, b4 as Q, ax as Y, a6 as Z, aP as $, U as aa, ac as ea, O as sa, bi as ta, V as ia, P as oa, M as ra, N as na, ay as la, R as da, b2 as Sa, b8 as Ca, S as ga, a7 as ma, a8 as ua, _ as ca, $ as ba, a0 as ha, Z as Pa, a1 as Ta, W as pa, a2 as Fa, a4 as Ia, a5 as Ea, a9 as Aa, aa as Ba, bc as La, bb as ya, at as Da, as as ka, aA as Wa, aO as _a, aL as va, az as fa, ab as Oa, aG as Ra, bd as Ma, bg as xa, aE as Ha, aJ as Na, aH as Va, bh as wa, aK as Ga, aI as za, bf as Ua, d as ja, af as qa, ah as Ka, ba as Xa, b9 as Ja, ag as Qa, an as Ya, f as Za, l as $a, p as ae, g as ee, h as se, aY as te, aW as ie, ao as oe, ap as re, aU as ne, b5 as le, aX as de, e as Se, s as Ce, b0 as ge, aT as me, aZ as ue, ad as ce, b3 as be, u as he, aj as Pe, ae as Te, am as pe, aS as Fe, T as Ie, Q as Ee, I as Ae, Y as Be, X as Le, b1 as ye, a$ as De, a_ as ke } from "./experimental-BSasmmWC.js";
2
+ import { dR as _e, er as ve, eq as fe, eE as Oe, dn as Re, eo as Me, cf as xe, c5 as He, cc as Ne, ej as Ve, b_ as we, b_ as Ge, bT as ze, ek as Ue, ci as je, e5 as qe, ck as Ke, eH as Xe, ep as Je, eA as Qe, eB as Ye, d7 as Ze, eF as $e, k as as, dS as es, cM as ss, en as ts, et as is, es as os, T as rs, h as ns, bU as ls, eC as ds, eI as Ss, eD as Cs, eG as gs, ez as ms, ew as us, ey as cs, eu as bs, el as hs, em as Ps, ef as Ts, ex as ps, ev as Fs } from "./F0CanvasPanel-CRfRDRcY.js";
3
+ import { ay as Es, az as As, a6 as Bs, a7 as Ls, a4 as ys, ah as Ds, C as ks, a8 as Ws, aK as _s, ad as vs, aJ as fs, ag as Os, a5 as Rs, aw as Ms, aM as xs, aL as Hs, ao as Ns, ai as Vs, ar as ws, aP as Gs, a3 as zs, at as Us, aq as js, al as qs, aR as Ks, am as Xs, au as Js, av as Qs, a9 as Ys, aN as Zs, aO as $s, an as at, ax as et, aG as st, O as tt, aI as it, aa as ot, aT as rt, ac as nt, ae as lt, ar as dt, aQ as St, as as Ct, ap as gt, aS as mt, ab as ut, W as ct, af as bt, a2 as ht, a0 as Pt, a1 as Tt, aC as pt, aD as Ft, aA as It, aH as Et, ak as At, aj as Bt, aE as Lt, m as yt, aB as Dt, aF as kt, D as Wt } from "./CoachmarkProvider-BWN-lnib.js";
4
4
  export {
5
5
  Es as AUTO_PER_PAGE_MAX,
6
6
  As as AUTO_PER_PAGE_MIN_RESERVED_ROWS,
@@ -20,7 +20,7 @@ export {
20
20
  C as BaseCelebration,
21
21
  g as BaseCommunityPost,
22
22
  ve as BaseTabs,
23
- Oe as BreadcrumbSelect,
23
+ fe as BreadcrumbSelect,
24
24
  m as Breadcrumbs,
25
25
  u as CalendarEvent,
26
26
  c as CalendarEventList,
@@ -31,7 +31,7 @@ export {
31
31
  h as Celebration,
32
32
  P as CelebrationSkeleton,
33
33
  T as ChartWidgetEmptyState,
34
- fe as Chip,
34
+ Oe as Chip,
35
35
  p as ClockInControls,
36
36
  _s as CoachmarkProvider,
37
37
  vs as ComboChart,
@@ -42,13 +42,13 @@ export {
42
42
  A as DEFAULT_EXPECTED_ITEMS_COUNT,
43
43
  B as Dashboard,
44
44
  L as DaytimePage,
45
- xe as DetailsItem,
46
- He as DetailsItemsList,
47
- Os as Dialog,
48
- Me as Dropdown,
45
+ Me as DetailsItem,
46
+ xe as DetailsItemsList,
47
+ fs as Dialog,
48
+ He as Dropdown,
49
49
  y as EVENT_LIST_GAP,
50
50
  D as EntitySelect,
51
- fs as F0ActionBar,
51
+ Os as F0ActionBar,
52
52
  Rs as F0AiBanner,
53
53
  Ne as F0AvatarModule,
54
54
  Ve as F0ButtonToggle,
@@ -58,19 +58,19 @@ export {
58
58
  W as F0CarouselDialog,
59
59
  _ as F0Chat,
60
60
  v as F0ChatProvider,
61
- O as F0CommandPaletteProvider,
62
- f as F0CommunityPostsCarousel,
61
+ f as F0CommandPaletteProvider,
62
+ O as F0CommunityPostsCarousel,
63
63
  R as F0ENPSButton,
64
- x as F0EmojiPicker,
64
+ M as F0EmojiPicker,
65
65
  ze as F0FileItem,
66
- xs as F0FormEditableTable,
67
- H as F0Map,
68
- M as F0MapControls,
66
+ Ms as F0FormEditableTable,
67
+ x as F0Map,
68
+ H as F0MapControls,
69
69
  N as F0MapList,
70
70
  V as F0MapSkeleton,
71
71
  w as F0MeetingCard,
72
- Hs as F0NotesTextEditor,
73
- Ms as F0NotesTextEditorSkeleton,
72
+ xs as F0NotesTextEditor,
73
+ Hs as F0NotesTextEditorSkeleton,
74
74
  Ns as F0NumberInput,
75
75
  Vs as F0PhoneInput,
76
76
  Ue as F0ProgressSeries,
@@ -86,28 +86,28 @@ export {
86
86
  z as F0VersionHistory,
87
87
  qs as F1SearchBox,
88
88
  Ks as FILE_TYPES,
89
- Qe as FileItem,
89
+ Xe as FileItem,
90
90
  U as HighlightBanner,
91
91
  j as HomeSlotItem,
92
92
  q as HomeSlotItems,
93
93
  K as IndicatorsList,
94
- Qs as Input,
95
- Xs as Item,
96
- Js as ItemSectionHeader,
97
- Q as LATEST,
98
- X as LIST_COMPACT_AFTER,
99
- J as LIST_MORE_BUTTON_CLASS,
94
+ Xs as Input,
95
+ Js as Item,
96
+ Qs as ItemSectionHeader,
97
+ X as LATEST,
98
+ J as LIST_COMPACT_AFTER,
99
+ Q as LIST_MORE_BUTTON_CLASS,
100
100
  Ys as LineChart,
101
101
  Y as LineChartWidget,
102
102
  Z as Menu,
103
- Xe as MobileDropdown,
103
+ Je as MobileDropdown,
104
104
  $ as NewHomeLayout,
105
105
  Zs as NotesTextEditor,
106
106
  $s as NotesTextEditorSkeleton,
107
107
  at as NumberInput,
108
108
  aa as OmniButton,
109
109
  ea as OneApprovalHistory,
110
- Je as OneCalendar,
110
+ Qe as OneCalendar,
111
111
  Ye as OneCalendarInternal,
112
112
  et as OneDataCollection,
113
113
  st as OneDateNavigator,
@@ -165,15 +165,15 @@ export {
165
165
  va as TwoColumnsList,
166
166
  mt as UPLOAD_INPUT_ID,
167
167
  ut as VerticalBarChart,
168
- Oa as VerticalBarChartWidget,
169
- fa as VirtualList,
168
+ fa as VerticalBarChartWidget,
169
+ Oa as VirtualList,
170
170
  ds as WeekStartDay,
171
171
  Ss as Weekdays,
172
172
  ct as Widget,
173
173
  Ra as WidgetAvatarsListItem,
174
- xa as WidgetCatalog,
175
- Ha as WidgetEmptyState,
176
- Ma as WidgetHighlightButton,
174
+ Ma as WidgetCatalog,
175
+ xa as WidgetEmptyState,
176
+ Ha as WidgetHighlightButton,
177
177
  Na as WidgetInboxList,
178
178
  Va as WidgetInboxListItem,
179
179
  wa as WidgetSection,
@@ -188,9 +188,9 @@ export {
188
188
  Cs as chipVariants,
189
189
  qa as coachmarks,
190
190
  Ka as commandActionRisks,
191
- Qa as defaultSlotRenderers,
192
- Xa as defaultSlotSkeleton,
193
- Ja as defineStepByStepCoachmarkGuidance,
191
+ Xa as defaultSlotRenderers,
192
+ Ja as defaultSlotSkeleton,
193
+ Qa as defineStepByStepCoachmarkGuidance,
194
194
  pt as downloadAsCSV,
195
195
  Ya as f0ChatSenderColors,
196
196
  Za as f0EmojiPickerSizes,
package/dist/f0.d.ts CHANGED
@@ -604,8 +604,15 @@ export declare type AiChatProviderProps = {
604
604
  welcomeScreenCards?: F0AiChatWelcomeCard[];
605
605
  disclaimer?: AiChatDisclaimer;
606
606
  /**
607
- * Enable resizable chat window
608
- * When enabled, the chat can be resized between 300px and 50% of the screen width
607
+ * Enable the panel's drag-to-resize seam.
608
+ *
609
+ * The width is bounded by the room the frame actually has, not by a flat
610
+ * number: 300–712px while there is space for both, then whatever leaves the
611
+ * main content its minimum, then an even split. Narrower still and the panel
612
+ * covers the frame rather than splitting it. See `utils/panelWidth.ts`.
613
+ *
614
+ * The width the user drags to is remembered; a narrow window only shrinks
615
+ * what is displayed, so widening it again restores their choice.
609
616
  */
610
617
  resizable?: boolean;
611
618
  /**
@@ -750,7 +757,8 @@ declare type AiChatProviderReturnValue = {
750
757
  }) => void;
751
758
  tracking?: AiChatTrackingOptions;
752
759
  /**
753
- * Current width of the chat window (for resizable mode)
760
+ * The user's preferred width, persisted against the absolute range. This is
761
+ * NOT what the layout reserves — read `effectiveChatWidth` for that.
754
762
  */
755
763
  chatWidth: number;
756
764
  setChatWidth: React.Dispatch<React.SetStateAction<number>>;
@@ -758,6 +766,29 @@ declare type AiChatProviderReturnValue = {
758
766
  * Reset the chat width to the default value (360px)
759
767
  */
760
768
  resetChatWidth: () => void;
769
+ /**
770
+ * `chatWidth` held inside what the measured frame can actually give it. The
771
+ * preference survives a narrow window; only this shrinks.
772
+ *
773
+ * OPTIONAL for the same reason as `isResizing` below: the provider always
774
+ * supplies it, but making it required reads as a breaking public-API change.
775
+ */
776
+ effectiveChatWidth?: number;
777
+ /** The range the panel may be dragged to at the frame's current width. */
778
+ chatWidthBounds?: PanelBounds;
779
+ /**
780
+ * True when the panel covers the frame rather than sitting beside it.
781
+ *
782
+ * Read this instead of re-deriving it from a media query: the rule combines
783
+ * the measured frame with the pointer type, and two consumers computing it
784
+ * separately is how a resize handle ends up on a full-screen panel.
785
+ */
786
+ panelOverlays?: boolean;
787
+ /**
788
+ * Publishes the frame's content-box width. Called by ApplicationFrame, which
789
+ * is the only thing that knows how much room is left beside the navigation.
790
+ */
791
+ setFrameWidth?: (width: number) => void;
761
792
  /**
762
793
  * True while the user is dragging the chat's resize handle. Broadcast here
763
794
  * because everything laid out against the chat's edge has to follow the drag
@@ -1030,6 +1061,8 @@ export declare const aiTranslations: {
1030
1061
  readonly thoughtsGroupTitle: "Reasoning";
1031
1062
  readonly resourcesGroupTitle: "Resources";
1032
1063
  readonly thinking: "Thinking...";
1064
+ readonly thinkingElapsedSeconds: "{{seconds}}s";
1065
+ readonly thinkingElapsedMinutes: "{{minutes}}m {{seconds}}s";
1033
1066
  readonly feedbackModal: {
1034
1067
  readonly positive: {
1035
1068
  readonly title: "What did you like about this response?";
@@ -1419,12 +1452,6 @@ export declare type AutofillTimesheetShift = {
1419
1452
  locationType?: string | null;
1420
1453
  };
1421
1454
 
1422
- /**
1423
- * An item that can be passed in the `availableFormDefinitions` array.
1424
- * Accepts either a plain {@link F0AiAvailableFormDefinition} or the result
1425
- * of calling {@link useF0FormDefinition} (i.e. {@link F0FormDefinitionSingleSchema}
1426
- * or {@link F0FormDefinitionPerSection}).
1427
- */
1428
1455
  export declare type AvailableFormDefinitionItem = F0AiAvailableFormDefinition | F0FormDefinitionSingleSchema<any> | F0FormDefinitionPerSection<any>;
1429
1456
 
1430
1457
  declare const Avatar: React_2.ForwardRefExoticComponent<Omit<AvatarPrimitive.AvatarProps & React_2.RefAttributes<HTMLSpanElement>, "ref"> & {
@@ -2259,6 +2286,9 @@ declare type CanvasCardAction = {
2259
2286
  hideLabel?: boolean;
2260
2287
  };
2261
2288
 
2289
+ /** The card's own control: open/close, or the host's custom action. */
2290
+ declare const CanvasCardAction: ({ action, isActive, }: Pick<F0CanvasCardProps, "action" | "isActive">) => JSX_2.Element | null;
2291
+
2262
2292
  declare type CanvasCardAvatar = {
2263
2293
  type: "module";
2264
2294
  module: ModuleId;
@@ -2270,6 +2300,9 @@ declare type CanvasCardAvatar = {
2270
2300
  icon: IconType;
2271
2301
  };
2272
2302
 
2303
+ /** Whichever avatar the card was given: a module, a file, or an icon. */
2304
+ declare const CanvasCardAvatar: ({ avatar }: Pick<F0CanvasCardProps, "avatar">) => JSX_2.Element | null;
2305
+
2273
2306
  /**
2274
2307
  * Discriminated union for canvas panel content.
2275
2308
  * Add new entity types to this union as they are implemented.
@@ -3201,6 +3234,12 @@ declare interface CheckboxProps extends DataAttributes_2 {
3201
3234
  * The title of the checkbox
3202
3235
  */
3203
3236
  title?: string;
3237
+ /**
3238
+ * A secondary line of text rendered under the title, for context the title
3239
+ * cannot carry on its own. Hidden along with the title when `hideLabel` is
3240
+ * set, and exposed to assistive technology as the checkbox's description.
3241
+ */
3242
+ description?: string;
3204
3243
  /**
3205
3244
  * The id of the checkbox
3206
3245
  */
@@ -5373,6 +5412,8 @@ export declare const defaultTranslations: {
5373
5412
  readonly thoughtsGroupTitle: "Reasoning";
5374
5413
  readonly resourcesGroupTitle: "Resources";
5375
5414
  readonly thinking: "Thinking...";
5415
+ readonly thinkingElapsedSeconds: "{{seconds}}s";
5416
+ readonly thinkingElapsedMinutes: "{{minutes}}m {{seconds}}s";
5376
5417
  readonly feedbackModal: {
5377
5418
  readonly positive: {
5378
5419
  readonly title: "What did you like about this response?";
@@ -6905,7 +6946,7 @@ export declare interface F0ActionBarRef {
6905
6946
  wiggle: (options?: WiggleOptions) => void;
6906
6947
  }
6907
6948
 
6908
- export declare const F0ActionItem: ({ title, status, inGroup }: F0ActionItemProps) => JSX_2.Element;
6949
+ export declare const F0ActionItem: ({ title, suffix, status, inGroup, }: F0ActionItemProps) => JSX_2.Element;
6909
6950
 
6910
6951
  /**
6911
6952
  * Props for the F0ActionItem component
@@ -6915,6 +6956,14 @@ export declare interface F0ActionItemProps {
6915
6956
  * The title text displayed next to the status icon
6916
6957
  */
6917
6958
  title?: string;
6959
+ /**
6960
+ * Rendered inline after the title — used for the elapsed-time counter.
6961
+ *
6962
+ * A node rather than a string so that whatever ticks inside it owns its own
6963
+ * state: passing a composed label would re-render this item, and everything
6964
+ * above it, on every tick.
6965
+ */
6966
+ suffix?: ReactNode;
6918
6967
  /**
6919
6968
  * Current status of the action item
6920
6969
  */
@@ -6990,7 +7039,9 @@ export declare const F0AiChatCreditsButton: ({ credits, employeeCredits, trigger
6990
7039
  * - legacy: title is static; a "new chat" button is shown when `hasMessages`.
6991
7040
  * Hosts can add header actions that F0 renders alongside the built-in controls.
6992
7041
  *
6993
- * Decoupled from CopilotKit and `useAiChat()` — everything via props.
7042
+ * Decoupled from CopilotKit, and prop-driven apart from one read: whether the
7043
+ * panel is currently covering the frame, which decides if expanding means
7044
+ * anything. Only the provider knows that, and it answers safely when absent.
6994
7045
  */
6995
7046
  export declare const F0AiChatHeader: ({ historyEnabled, title, currentThreadTitle, fullscreen, lockVisualizationMode, onToggleVisualizationMode, onClose, onNewChat, onOpenHistory, hasMessages, credits, employeeCredits, compact, actions, }: F0AiChatHeaderProps) => JSX_2.Element;
6996
7047
 
@@ -8954,7 +9005,7 @@ declare type F0CardSelectField = F0BaseField & {
8954
9005
 
8955
9006
  export declare const F0Checkbox: WithDataTestIdReturnType_3<typeof _F0Checkbox>;
8956
9007
 
8957
- declare function _F0Checkbox({ title, onCheckedChange, id, disabled, indeterminate, checked, value, hideLabel, presentational, stopPropagation, name, required, ...rest }: CheckboxProps): JSX_2.Element;
9008
+ declare function _F0Checkbox({ title, description, onCheckedChange, id, disabled, indeterminate, checked, value, hideLabel, presentational, stopPropagation, name, required, ...rest }: CheckboxProps): JSX_2.Element;
8958
9009
 
8959
9010
  /**
8960
9011
  * F0 config options specific to checkbox fields
@@ -16641,6 +16692,22 @@ export declare type PaginationInfo = Omit<PageBasedPaginatedResponse<unknown>, "
16641
16692
  */
16642
16693
  export declare type PaginationType = "pages" | "infinite-scroll" | "no-pagination";
16643
16694
 
16695
+ declare type PanelBounds = {
16696
+ min: number;
16697
+ /** How far a deliberate drag may go — bounded by the content's hard floor. */
16698
+ max: number;
16699
+ /**
16700
+ * Where the panel sits when the user has not said otherwise: the content
16701
+ * keeps `mainMin` and the panel takes what is left, down to `min`.
16702
+ *
16703
+ * Separate from `max` so that "served the content first" is the default
16704
+ * without also being a cage — see `resolvePanelWidth`.
16705
+ */
16706
+ autoMax: number;
16707
+ /** The frame is too narrow to split: the panel should cover it instead. */
16708
+ shouldOverlay: boolean;
16709
+ };
16710
+
16644
16711
  /**
16645
16712
  * Parses a data collection's state out of URL query params.
16646
16713
  *
@@ -17293,6 +17360,14 @@ export declare type RenderableTurn = {
17293
17360
  * the last item is `executing` while the rest are `completed`.
17294
17361
  */
17295
17362
  isWriting?: boolean;
17363
+ /**
17364
+ * Epoch ms for when the turn actually started thinking, if the host knows.
17365
+ *
17366
+ * Optional anchor, not a requirement: turns arrive with no timestamps, so
17367
+ * by default the elapsed counter starts when F0 first saw the signal.
17368
+ * Supplying this makes it survive a reload mid-stream.
17369
+ */
17370
+ startedAt?: number;
17296
17371
  };
17297
17372
  /** Messages rendered after the thinking section (assistant replies). */
17298
17373
  assistantMessages: Message_2[];
@@ -18826,6 +18901,11 @@ declare interface TextProps extends Omit<default_2.HTMLAttributes<HTMLElement>,
18826
18901
  * @default false
18827
18902
  */
18828
18903
  required?: boolean;
18904
+ /**
18905
+ * The id of the control this text labels. Only meaningful together with
18906
+ * `as="label"`; `React.HTMLAttributes` does not carry it.
18907
+ */
18908
+ htmlFor?: string;
18829
18909
  }
18830
18910
 
18831
18911
  declare type TextQuestionProps = BaseQuestionPropsForOtherQuestionComponents & {
@@ -18889,6 +18969,12 @@ export declare type ThinkingProps = {
18889
18969
  * every item renders as `completed` regardless of `inProgress`.
18890
18970
  */
18891
18971
  isWriting?: boolean;
18972
+ /**
18973
+ * When the turn started thinking, from `useThinkingClock`. Drives the
18974
+ * elapsed counter on whichever step is executing. `null` means no clock is
18975
+ * running, and nothing is rendered.
18976
+ */
18977
+ startedAt?: number | null;
18892
18978
  };
18893
18979
 
18894
18980
  export declare interface ThreadActionHandlers {
@@ -20591,11 +20677,9 @@ declare namespace Calendar {
20591
20677
 
20592
20678
  declare module "@tiptap/core" {
20593
20679
  interface Commands<ReturnType> {
20594
- enhanceHighlight: {
20595
- setEnhanceHighlight: (from: number, to: number, options?: {
20596
- placeholder?: string;
20597
- }) => ReturnType;
20598
- clearEnhanceHighlight: () => ReturnType;
20680
+ aiBlock: {
20681
+ insertAIBlock: (data: AIBlockData, config: AIBlockConfig) => ReturnType;
20682
+ executeAIAction: (actionType: string, config: AIBlockConfig) => ReturnType;
20599
20683
  };
20600
20684
  }
20601
20685
  }
@@ -20613,9 +20697,11 @@ declare module "@tiptap/core" {
20613
20697
 
20614
20698
  declare module "@tiptap/core" {
20615
20699
  interface Commands<ReturnType> {
20616
- aiBlock: {
20617
- insertAIBlock: (data: AIBlockData, config: AIBlockConfig) => ReturnType;
20618
- executeAIAction: (actionType: string, config: AIBlockConfig) => ReturnType;
20700
+ enhanceHighlight: {
20701
+ setEnhanceHighlight: (from: number, to: number, options?: {
20702
+ placeholder?: string;
20703
+ }) => ReturnType;
20704
+ clearEnhanceHighlight: () => ReturnType;
20619
20705
  };
20620
20706
  }
20621
20707
  }