@factorialco/f0-react 4.8.0 → 4.9.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.
package/dist/ai.d.ts CHANGED
@@ -20,6 +20,7 @@ import { HTMLAttributes } from 'react';
20
20
  import { ItemProps } from './types';
21
21
  import { JSX as JSX_2 } from 'react';
22
22
  import { LocalAudioTrack } from 'livekit-client';
23
+ import { NamedExoticComponent } from 'react';
23
24
  import { Props as Props_3 } from './types';
24
25
  import * as React_2 from 'react';
25
26
  import { ReactElement } from 'react';
@@ -607,6 +608,7 @@ export declare const aiTranslations: {
607
608
  readonly inputPlaceholder: "Ask about time, people, or company info and a lot of other things...";
608
609
  readonly stopAnswerGeneration: "Stop generating";
609
610
  readonly responseStopped: "You stopped this response";
611
+ readonly applyingChanges: "Applying changes";
610
612
  readonly sendMessage: "Send message";
611
613
  readonly thoughtsGroupTitle: "Reasoning";
612
614
  readonly resourcesGroupTitle: "Resources";
@@ -2110,6 +2112,7 @@ export declare const defaultTranslations: {
2110
2112
  readonly inputPlaceholder: "Ask about time, people, or company info and a lot of other things...";
2111
2113
  readonly stopAnswerGeneration: "Stop generating";
2112
2114
  readonly responseStopped: "You stopped this response";
2115
+ readonly applyingChanges: "Applying changes";
2113
2116
  readonly sendMessage: "Send message";
2114
2117
  readonly thoughtsGroupTitle: "Reasoning";
2115
2118
  readonly resourcesGroupTitle: "Resources";
@@ -3022,6 +3025,34 @@ declare interface F0AiPongProps {
3022
3025
  onClose: () => void;
3023
3026
  }
3024
3027
 
3028
+ /**
3029
+ * Wraps a panel/canvas that F0AiChat is regenerating. While `active`, the
3030
+ * content blurs and stops receiving pointer events, and a centered pill — the
3031
+ * One icon plus an "Applying changes" label — floats over it, so the user gets
3032
+ * clear feedback that the surface is being updated and shouldn't be edited.
3033
+ *
3034
+ * Mirrors the survey form-builder "applying changes" affordance, lifted into
3035
+ * the F0AiChat family so any surface paired with the chat can reuse it.
3036
+ */
3037
+ export declare const F0AiProcessingOverlay: NamedExoticComponent<F0AiProcessingOverlayProps>;
3038
+
3039
+ export declare interface F0AiProcessingOverlayProps {
3040
+ /**
3041
+ * When `true`, the wrapped content is blurred and locked
3042
+ * (`pointer-events-none`) and the floating status pill is shown over it.
3043
+ */
3044
+ active: boolean;
3045
+ /**
3046
+ * Pill label. Defaults to the translated "Applying changes"
3047
+ * (`ai.applyingChanges`).
3048
+ */
3049
+ label?: string;
3050
+ /** Extra classes for the wrapper element. */
3051
+ className?: string;
3052
+ /** The panel/canvas content the assistant is editing. */
3053
+ children: ReactNode;
3054
+ }
3055
+
3025
3056
  export declare function F0AiProposalCard(props: F0AiProposalCardProps): JSX_2.Element;
3026
3057
 
3027
3058
  export declare namespace F0AiProposalCard {
@@ -3279,6 +3310,14 @@ declare type F0AvatarTeamProps = {
3279
3310
  /**
3280
3311
  * Shared inline card rendered in the AI chat for any canvas entity.
3281
3312
  * Shows an avatar, title, optional description, and a configurable action button.
3313
+ *
3314
+ * @deprecated Being replaced by `F0CardHorizontal` (`@/experimental/F0CardHorizontal`).
3315
+ * The co-creation flow already renders these cards with `F0CardHorizontal` directly
3316
+ * (Open/Close → `primaryAction`; superseded → a faded `opacity-50 pointer-events-none`
3317
+ * wrapper). Don't add new usages; migrate the remaining one
3318
+ * (`F0AiMessagesContainer/FormCard`) once its inline `children` preview has an
3319
+ * `F0CardHorizontal`-friendly home.
3320
+ * @removeIn 5.0.0
3282
3321
  */
3283
3322
  export declare function F0CanvasCard({ avatar, title, description, isActive, action, children, }: F0CanvasCardProps): JSX_2.Element;
3284
3323
 
@@ -3286,6 +3325,10 @@ export declare namespace F0CanvasCard {
3286
3325
  var displayName: string;
3287
3326
  }
3288
3327
 
3328
+ /**
3329
+ * @deprecated Being replaced by `F0CardHorizontal`. See {@link F0CanvasCard}.
3330
+ * @removeIn 5.0.0
3331
+ */
3289
3332
  export declare type F0CanvasCardProps = {
3290
3333
  /** Avatar to display: a module icon or a file-type badge */
3291
3334
  avatar?: CanvasCardAvatar;
@@ -3460,6 +3503,14 @@ declare type F0FileItemSize = (typeof f0FileItemSizes)[number];
3460
3503
 
3461
3504
  declare const f0FileItemSizes: readonly ["md", "lg"];
3462
3505
 
3506
+ /**
3507
+ * @deprecated Being replaced by `F0CardHorizontal` (`@/experimental/F0CardHorizontal`),
3508
+ * which this component already wraps. Use `F0CardHorizontal` directly: `confirmAction` /
3509
+ * `rejectAction` for the pending state, `status` for the resolved outcome, and
3510
+ * `secondaryActions` for a single CTA. The co-creation flow no longer uses this component —
3511
+ * don't add new usages.
3512
+ * @removeIn 5.0.0
3513
+ */
3463
3514
  export declare const F0HILActionConfirmation: ({ text, description, avatar, confirmationText, onConfirm, cancelText, onCancel, stackAt, }: F0HILActionConfirmationProps) => JSX_2.Element;
3464
3515
 
3465
3516
  /**
@@ -3468,6 +3519,9 @@ export declare const F0HILActionConfirmation: ({ text, description, avatar, conf
3468
3519
  * Renders an inline approve/reject row built on `F0CardHorizontal`'s confirm/reject
3469
3520
  * variant: the prompt as the row title, with icon-only ✓ (confirm) and ✗
3470
3521
  * (reject) buttons at the trailing edge.
3522
+ *
3523
+ * @deprecated Being replaced by `F0CardHorizontal`. See {@link F0HILActionConfirmation}.
3524
+ * @removeIn 5.0.0
3471
3525
  */
3472
3526
  export declare type F0HILActionConfirmationProps = {
3473
3527
  /**
@@ -4746,10 +4800,8 @@ declare module "@tiptap/core" {
4746
4800
 
4747
4801
  declare module "@tiptap/core" {
4748
4802
  interface Commands<ReturnType> {
4749
- videoEmbed: {
4750
- setVideoEmbed: (options: {
4751
- src: string;
4752
- }) => ReturnType;
4803
+ transcript: {
4804
+ insertTranscript: (data: TranscriptData) => ReturnType;
4753
4805
  };
4754
4806
  }
4755
4807
  }
@@ -4757,8 +4809,10 @@ declare module "@tiptap/core" {
4757
4809
 
4758
4810
  declare module "@tiptap/core" {
4759
4811
  interface Commands<ReturnType> {
4760
- transcript: {
4761
- insertTranscript: (data: TranscriptData) => ReturnType;
4812
+ videoEmbed: {
4813
+ setVideoEmbed: (options: {
4814
+ src: string;
4815
+ }) => ReturnType;
4762
4816
  };
4763
4817
  }
4764
4818
  }
package/dist/ai.js CHANGED
@@ -1,23 +1,24 @@
1
- import { C as e, D as r, c as t, F as o, a as i, f as n, g as F, d as C, e as A, I as l, P as d, b as u, u as m } from "./F0CanvasPanel-B-6B9ckI.js";
1
+ import { C as e, D as r, c as i, F as o, a as t, f as n, g as F, d as C, e as A, I as l, P as d, b as u, u as m } from "./F0CanvasPanel-B-6B9ckI.js";
2
2
  import { defaultTranslations as c } from "./i18n-provider-defaults.js";
3
- import { A as P, s as v, t as f, w as g, l as p, i as T, q as y, x as S, p as x, r as H, j as V, e as b, g as k, k as w, F as M, h as O, a as D, n as j, m as q, o as z, b as B, f as E, v as L, c as R, d as G, u as J } from "./useChatHistory-msevU72I.js";
3
+ import { A as v, s as I, t as g, w as f, l as p, i as y, q as T, x as S, y as x, p as H, r as O, j as V, e as b, g as k, k as w, F as M, h as D, a as j, n as q, m as z, o as B, b as E, f as L, v as R, c as G, d as J, u as K } from "./F0AiProcessingOverlay-B8K7o_Ei.js";
4
4
  export {
5
- P as AiChatTranslationsProvider,
5
+ v as AiChatTranslationsProvider,
6
6
  e as ChatSpinner,
7
7
  r as DropOverlay,
8
- t as F0ActionItem,
8
+ i as F0ActionItem,
9
9
  o as F0AiChat,
10
- v as F0AiChatHeader,
11
- f as F0AiChatHistory,
12
- i as F0AiChatProvider,
13
- g as F0AiChatTextArea,
10
+ I as F0AiChatHeader,
11
+ g as F0AiChatHistory,
12
+ t as F0AiChatProvider,
13
+ f as F0AiChatTextArea,
14
14
  p as F0AiInsightCard,
15
- T as F0AiMask,
16
- y as F0AiMessageSources,
15
+ y as F0AiMask,
16
+ T as F0AiMessageSources,
17
17
  S as F0AiMessagesContainer,
18
18
  n as F0AiPong,
19
- x as F0AiProposalCard,
20
- H as F0AiTableCard,
19
+ x as F0AiProcessingOverlay,
20
+ H as F0AiProposalCard,
21
+ O as F0AiTableCard,
21
22
  V as F0AuraVoiceAnimation,
22
23
  b as F0CanvasCard,
23
24
  F as F0CanvasPanel,
@@ -28,18 +29,18 @@ export {
28
29
  M as FormCardValueFormatterProvider,
29
30
  l as I18nProvider,
30
31
  d as PongBall,
31
- O as actionItemStatuses,
32
- D as aiTranslations,
33
- j as contentTypes,
32
+ D as actionItemStatuses,
33
+ j as aiTranslations,
34
+ q as contentTypes,
34
35
  c as defaultTranslations,
35
- q as markdownRenderers,
36
- z as oneIconSizes,
36
+ z as markdownRenderers,
37
+ B as oneIconSizes,
37
38
  u as useAiChat,
38
- B as useAiChatTranslations,
39
- E as useCanvasEntity,
40
- L as useChatHistory,
41
- R as useFormCardValueFormatter,
39
+ E as useAiChatTranslations,
40
+ L as useCanvasEntity,
41
+ R as useChatHistory,
42
+ G as useFormCardValueFormatter,
42
43
  m as useI18n,
43
- G as useSetFormCardValueFormatter,
44
- J as useToolCallId
44
+ J as useSetFormCardValueFormatter,
45
+ K as useToolCallId
45
46
  };
@@ -3470,6 +3470,7 @@ declare const defaultTranslations: {
3470
3470
  readonly inputPlaceholder: "Ask about time, people, or company info and a lot of other things...";
3471
3471
  readonly stopAnswerGeneration: "Stop generating";
3472
3472
  readonly responseStopped: "You stopped this response";
3473
+ readonly applyingChanges: "Applying changes";
3473
3474
  readonly sendMessage: "Send message";
3474
3475
  readonly thoughtsGroupTitle: "Reasoning";
3475
3476
  readonly resourcesGroupTitle: "Resources";
@@ -9974,10 +9975,8 @@ declare module "@tiptap/core" {
9974
9975
 
9975
9976
  declare module "@tiptap/core" {
9976
9977
  interface Commands<ReturnType> {
9977
- videoEmbed: {
9978
- setVideoEmbed: (options: {
9979
- src: string;
9980
- }) => ReturnType;
9978
+ transcript: {
9979
+ insertTranscript: (data: TranscriptData) => ReturnType;
9981
9980
  };
9982
9981
  }
9983
9982
  }
@@ -9985,8 +9984,10 @@ declare module "@tiptap/core" {
9985
9984
 
9986
9985
  declare module "@tiptap/core" {
9987
9986
  interface Commands<ReturnType> {
9988
- transcript: {
9989
- insertTranscript: (data: TranscriptData) => ReturnType;
9987
+ videoEmbed: {
9988
+ setVideoEmbed: (options: {
9989
+ src: string;
9990
+ }) => ReturnType;
9990
9991
  };
9991
9992
  }
9992
9993
  }
@@ -2,8 +2,8 @@ import { h as Ca, B as ka, i as Ia, j as Sa, k as zt, l as Me, m as Be, n as Fa,
2
2
  import { c6 as pd, c5 as bd, ci as xd, c2 as vd, c3 as yd, bW as wd, bX as Nd, cl as Cd, bY as kd, bZ as Id, cm as Sd, c4 as Fd, ce as Ad, cf as Ld, cj as Od, b_ as Pd, c8 as Ed, c7 as _d, b$ as Dd, c0 as Td, cg as zd, cn as Bd, ch as Rd, ck as $d, cd as Md, ca as jd, cc as Wd, c9 as Vd, c1 as Ud, cb as Hd } from "./F0CanvasPanel-B-6B9ckI.js";
3
3
  import { jsx as t, jsxs as o, Fragment as X } from "react/jsx-runtime";
4
4
  import ue, { forwardRef as K, useRef as W, useTransition as fi, useState as E, useLayoutEffect as Mn, useId as bt, useContext as Ne, createContext as _e, useEffect as j, useCallback as ne, useMemo as G, Fragment as mi, isValidElement as hi, cloneElement as jn, Children as Wn } from "react";
5
- import { C as gi, P as pi, a as Vn, M as bi, p as xi, b as vi, R as Wt, c as Un, u as yi, d as wi, e as Ni, f as Ci, g as ki, h as Hn, S as Ii, A as Si, B as Fi, L as Ai, i as Li, V as Oi, j as Pi, k as Ei, l as _i, O as Di } from "./useDataCollectionSource-Cs0H4TUr.js";
6
- import { r as Kd, s as qd, o as Yd, H as Jd, t as Zd, z as Xd, a8 as Qd, G as eu, q as tu, aa as nu, a9 as au, Q as ru, ad as iu, F as su, Y as lu, U as ou, J as cu, af as du, K as uu, Z as fu, _ as mu, v as hu, ab as gu, ac as pu, N as bu, $ as xu, a5 as vu, a7 as yu, w as wu, y as Nu, D as Cu, W as ku, ae as Iu, X as Su, T as Fu, ag as Au, x as Lu, E as Ou, m as Pu, n as Eu, a1 as _u, a2 as Du, a6 as Tu, I as zu, a3 as Bu, a0 as Ru, a4 as $u } from "./useDataCollectionSource-Cs0H4TUr.js";
5
+ import { C as gi, P as pi, a as Vn, M as bi, p as xi, b as vi, R as Wt, c as Un, u as yi, d as wi, e as Ni, f as Ci, g as ki, h as Hn, S as Ii, A as Si, B as Fi, L as Ai, i as Li, V as Oi, j as Pi, k as Ei, l as _i, O as Di } from "./useDataCollectionSource-u42jSFpK.js";
6
+ import { r as Kd, s as qd, o as Yd, H as Jd, t as Zd, z as Xd, a8 as Qd, G as eu, q as tu, aa as nu, a9 as au, Q as ru, ad as iu, F as su, Y as lu, U as ou, J as cu, af as du, K as uu, Z as fu, _ as mu, v as hu, ab as gu, ac as pu, N as bu, $ as xu, a5 as vu, a7 as yu, w as wu, y as Nu, D as Cu, W as ku, ae as Iu, X as Su, T as Fu, ag as Au, x as Lu, E as Ou, m as Pu, n as Eu, a1 as _u, a2 as Du, a6 as Tu, I as zu, a3 as Bu, a0 as Ru, a4 as $u } from "./useDataCollectionSource-u42jSFpK.js";
7
7
  const Ti = Ca("Search", [
8
8
  ["circle", { cx: "11", cy: "11", r: "8", key: "4ej97u" }],
9
9
  ["path", { d: "m21 21-4.3-4.3", key: "1qie3q" }]
package/dist/f0.d.ts CHANGED
@@ -106,6 +106,7 @@ import { LineChartConfig as LineChartConfig_2 } from './f0';
106
106
  import { LineChartPropsBase } from './utils/types';
107
107
  import { LocalAudioTrack } from 'livekit-client';
108
108
  import { LongTextCellValue } from './types/longText';
109
+ import { NamedExoticComponent } from 'react';
109
110
  import { NumberCellValue } from './f0';
110
111
  import { NumberCellValue as NumberCellValue_2 } from './types/number';
111
112
  import { NumberFilterOptions } from './NumberFilter/NumberFilter';
@@ -893,6 +894,7 @@ export declare const aiTranslations: {
893
894
  readonly inputPlaceholder: "Ask about time, people, or company info and a lot of other things...";
894
895
  readonly stopAnswerGeneration: "Stop generating";
895
896
  readonly responseStopped: "You stopped this response";
897
+ readonly applyingChanges: "Applying changes";
896
898
  readonly sendMessage: "Send message";
897
899
  readonly thoughtsGroupTitle: "Reasoning";
898
900
  readonly resourcesGroupTitle: "Resources";
@@ -4647,6 +4649,7 @@ export declare const defaultTranslations: {
4647
4649
  readonly inputPlaceholder: "Ask about time, people, or company info and a lot of other things...";
4648
4650
  readonly stopAnswerGeneration: "Stop generating";
4649
4651
  readonly responseStopped: "You stopped this response";
4652
+ readonly applyingChanges: "Applying changes";
4650
4653
  readonly sendMessage: "Send message";
4651
4654
  readonly thoughtsGroupTitle: "Reasoning";
4652
4655
  readonly resourcesGroupTitle: "Resources";
@@ -6399,6 +6402,34 @@ declare interface F0AiPongProps {
6399
6402
  onClose: () => void;
6400
6403
  }
6401
6404
 
6405
+ /**
6406
+ * Wraps a panel/canvas that F0AiChat is regenerating. While `active`, the
6407
+ * content blurs and stops receiving pointer events, and a centered pill — the
6408
+ * One icon plus an "Applying changes" label — floats over it, so the user gets
6409
+ * clear feedback that the surface is being updated and shouldn't be edited.
6410
+ *
6411
+ * Mirrors the survey form-builder "applying changes" affordance, lifted into
6412
+ * the F0AiChat family so any surface paired with the chat can reuse it.
6413
+ */
6414
+ export declare const F0AiProcessingOverlay: NamedExoticComponent<F0AiProcessingOverlayProps>;
6415
+
6416
+ export declare interface F0AiProcessingOverlayProps {
6417
+ /**
6418
+ * When `true`, the wrapped content is blurred and locked
6419
+ * (`pointer-events-none`) and the floating status pill is shown over it.
6420
+ */
6421
+ active: boolean;
6422
+ /**
6423
+ * Pill label. Defaults to the translated "Applying changes"
6424
+ * (`ai.applyingChanges`).
6425
+ */
6426
+ label?: string;
6427
+ /** Extra classes for the wrapper element. */
6428
+ className?: string;
6429
+ /** The panel/canvas content the assistant is editing. */
6430
+ children: ReactNode;
6431
+ }
6432
+
6402
6433
  export declare function F0AiProposalCard(props: F0AiProposalCardProps): JSX_2.Element;
6403
6434
 
6404
6435
  export declare namespace F0AiProposalCard {
@@ -7292,6 +7323,14 @@ export declare type F0ButtonToggleProps = Omit<F0ButtonToggleInternalProps, (typ
7292
7323
  /**
7293
7324
  * Shared inline card rendered in the AI chat for any canvas entity.
7294
7325
  * Shows an avatar, title, optional description, and a configurable action button.
7326
+ *
7327
+ * @deprecated Being replaced by `F0CardHorizontal` (`@/experimental/F0CardHorizontal`).
7328
+ * The co-creation flow already renders these cards with `F0CardHorizontal` directly
7329
+ * (Open/Close → `primaryAction`; superseded → a faded `opacity-50 pointer-events-none`
7330
+ * wrapper). Don't add new usages; migrate the remaining one
7331
+ * (`F0AiMessagesContainer/FormCard`) once its inline `children` preview has an
7332
+ * `F0CardHorizontal`-friendly home.
7333
+ * @removeIn 5.0.0
7295
7334
  */
7296
7335
  export declare function F0CanvasCard({ avatar, title, description, isActive, action, children, }: F0CanvasCardProps): JSX_2.Element;
7297
7336
 
@@ -7299,6 +7338,10 @@ export declare namespace F0CanvasCard {
7299
7338
  var displayName: string;
7300
7339
  }
7301
7340
 
7341
+ /**
7342
+ * @deprecated Being replaced by `F0CardHorizontal`. See {@link F0CanvasCard}.
7343
+ * @removeIn 5.0.0
7344
+ */
7302
7345
  export declare type F0CanvasCardProps = {
7303
7346
  /** Avatar to display: a module icon or a file-type badge */
7304
7347
  avatar?: CanvasCardAvatar;
@@ -9525,6 +9568,14 @@ export declare type F0HeadingProps = Omit<TextProps, "className" | "variant" | "
9525
9568
  as?: HeadingTags;
9526
9569
  };
9527
9570
 
9571
+ /**
9572
+ * @deprecated Being replaced by `F0CardHorizontal` (`@/experimental/F0CardHorizontal`),
9573
+ * which this component already wraps. Use `F0CardHorizontal` directly: `confirmAction` /
9574
+ * `rejectAction` for the pending state, `status` for the resolved outcome, and
9575
+ * `secondaryActions` for a single CTA. The co-creation flow no longer uses this component —
9576
+ * don't add new usages.
9577
+ * @removeIn 5.0.0
9578
+ */
9528
9579
  export declare const F0HILActionConfirmation: ({ text, description, avatar, confirmationText, onConfirm, cancelText, onCancel, stackAt, }: F0HILActionConfirmationProps) => JSX_2.Element;
9529
9580
 
9530
9581
  /**
@@ -9533,6 +9584,9 @@ export declare const F0HILActionConfirmation: ({ text, description, avatar, conf
9533
9584
  * Renders an inline approve/reject row built on `F0CardHorizontal`'s confirm/reject
9534
9585
  * variant: the prompt as the row title, with icon-only ✓ (confirm) and ✗
9535
9586
  * (reject) buttons at the trailing edge.
9587
+ *
9588
+ * @deprecated Being replaced by `F0CardHorizontal`. See {@link F0HILActionConfirmation}.
9589
+ * @removeIn 5.0.0
9536
9590
  */
9537
9591
  export declare type F0HILActionConfirmationProps = {
9538
9592
  /**
@@ -17212,10 +17266,8 @@ declare module "@tiptap/core" {
17212
17266
 
17213
17267
  declare module "@tiptap/core" {
17214
17268
  interface Commands<ReturnType> {
17215
- videoEmbed: {
17216
- setVideoEmbed: (options: {
17217
- src: string;
17218
- }) => ReturnType;
17269
+ transcript: {
17270
+ insertTranscript: (data: TranscriptData) => ReturnType;
17219
17271
  };
17220
17272
  }
17221
17273
  }
@@ -17223,8 +17275,10 @@ declare module "@tiptap/core" {
17223
17275
 
17224
17276
  declare module "@tiptap/core" {
17225
17277
  interface Commands<ReturnType> {
17226
- transcript: {
17227
- insertTranscript: (data: TranscriptData) => ReturnType;
17278
+ videoEmbed: {
17279
+ setVideoEmbed: (options: {
17280
+ src: string;
17281
+ }) => ReturnType;
17228
17282
  };
17229
17283
  }
17230
17284
  }