@factorialco/f0-react 1.388.3 → 1.389.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.
package/dist/ai.d.ts CHANGED
@@ -725,6 +725,8 @@ export declare const defaultTranslations: {
725
725
  readonly deleteQuestion: "Delete question";
726
726
  readonly duplicateSection: "Duplicate section";
727
727
  readonly deleteSection: "Delete section";
728
+ readonly confirmMoveLastQuestion: "Move question";
729
+ readonly cancelMoveLastQuestion: "Cancel";
728
730
  };
729
731
  readonly questionTypes: {
730
732
  readonly section: "Section";
@@ -736,6 +738,7 @@ export declare const defaultTranslations: {
736
738
  readonly numeric: "Numeric";
737
739
  readonly link: "Link";
738
740
  readonly date: "Date";
741
+ readonly dropdownSingle: "Dropdown";
739
742
  };
740
743
  readonly selectQuestion: {
741
744
  readonly addOption: "Add option";
@@ -762,6 +765,8 @@ export declare const defaultTranslations: {
762
765
  readonly questionOptions: "Question options";
763
766
  readonly actions: "Actions";
764
767
  readonly sectionTitlePlaceholder: "Section title";
768
+ readonly lastQuestionDialogTitle: "Remove last question from section";
769
+ readonly lastQuestionDialogDescription: "Moving this question will leave the section empty and it will be removed. Do you want to continue?";
765
770
  };
766
771
  };
767
772
  readonly richTextEditor: {
@@ -1428,6 +1433,11 @@ declare module "gridstack" {
1428
1433
  }
1429
1434
 
1430
1435
 
1436
+ declare namespace Calendar {
1437
+ var displayName: string;
1438
+ }
1439
+
1440
+
1431
1441
  declare module "@tiptap/core" {
1432
1442
  interface Commands<ReturnType> {
1433
1443
  aiBlock: {
@@ -1440,8 +1450,9 @@ declare module "@tiptap/core" {
1440
1450
 
1441
1451
  declare module "@tiptap/core" {
1442
1452
  interface Commands<ReturnType> {
1443
- moodTracker: {
1444
- insertMoodTracker: (data: MoodTrackerData) => ReturnType;
1453
+ enhanceHighlight: {
1454
+ setEnhanceHighlight: (from: number, to: number) => ReturnType;
1455
+ clearEnhanceHighlight: () => ReturnType;
1445
1456
  };
1446
1457
  }
1447
1458
  }
@@ -1449,9 +1460,8 @@ declare module "@tiptap/core" {
1449
1460
 
1450
1461
  declare module "@tiptap/core" {
1451
1462
  interface Commands<ReturnType> {
1452
- enhanceHighlight: {
1453
- setEnhanceHighlight: (from: number, to: number) => ReturnType;
1454
- clearEnhanceHighlight: () => ReturnType;
1463
+ moodTracker: {
1464
+ insertMoodTracker: (data: MoodTrackerData) => ReturnType;
1455
1465
  };
1456
1466
  }
1457
1467
  }
@@ -1475,8 +1485,3 @@ declare module "@tiptap/core" {
1475
1485
  };
1476
1486
  }
1477
1487
  }
1478
-
1479
-
1480
- declare namespace Calendar {
1481
- var displayName: string;
1482
- }
package/dist/ai.js CHANGED
@@ -1,6 +1,6 @@
1
- import { A as e, B as t, C as n, q as o, E as i, h as r, F as l, a as c, D as A, i as u, b as F, j as h, w as C, x as m, y as T, z as d, c as f, r as S, s as p, t as I, H as g, I as k, m as x, L as H, O as P, v as b, P as w, S as M, T as O, n as v, o as D, p as E, U as L, k as R, l as q, d as y, e as z, u as B, g as U, f as j } from "./F0AiChat-BXyvQ3uC.js";
1
+ import { A as e, B as t, C as n, q as o, E as i, h as r, F as l, a as c, D as A, i as u, b as F, j as h, w as C, x as m, y as T, z as d, c as f, r as S, s as p, t as I, H as g, I as k, m as x, L as H, O as P, v as b, P as w, S as M, T as O, n as v, o as D, p as E, U as L, k as R, l as q, d as y, e as z, u as B, g as U, f as j } from "./F0AiChat-DIBpfRHh.js";
2
2
  import { defaultTranslations as G } from "./i18n-provider-defaults.js";
3
- import { A as K, F as N, c as Q, b as W, a as X, o as Y, u as Z } from "./F0HILActionConfirmation-BirXmMOJ.js";
3
+ import { A as K, F as N, c as Q, b as W, a as X, o as Y, u as Z } from "./F0HILActionConfirmation-Q8FqZblZ.js";
4
4
  export {
5
5
  e as A,
6
6
  K as AiChatTranslationsProvider,
@@ -1738,6 +1738,8 @@ declare type CompareToDef = {
1738
1738
 
1739
1739
  declare type CompareToDefKey = string;
1740
1740
 
1741
+ export declare function computeSectionEndIds(elements: CoCreationFormElement[]): Set<string>;
1742
+
1741
1743
  declare type Content = (ComponentProps<typeof DataList.Item> & {
1742
1744
  type: "item";
1743
1745
  }) | (ComponentProps<typeof DataList.PersonItem> & {
@@ -2677,6 +2679,8 @@ declare const defaultTranslations: {
2677
2679
  readonly deleteQuestion: "Delete question";
2678
2680
  readonly duplicateSection: "Duplicate section";
2679
2681
  readonly deleteSection: "Delete section";
2682
+ readonly confirmMoveLastQuestion: "Move question";
2683
+ readonly cancelMoveLastQuestion: "Cancel";
2680
2684
  };
2681
2685
  readonly questionTypes: {
2682
2686
  readonly section: "Section";
@@ -2688,6 +2692,7 @@ declare const defaultTranslations: {
2688
2692
  readonly numeric: "Numeric";
2689
2693
  readonly link: "Link";
2690
2694
  readonly date: "Date";
2695
+ readonly dropdownSingle: "Dropdown";
2691
2696
  };
2692
2697
  readonly selectQuestion: {
2693
2698
  readonly addOption: "Add option";
@@ -2714,6 +2719,8 @@ declare const defaultTranslations: {
2714
2719
  readonly questionOptions: "Question options";
2715
2720
  readonly actions: "Actions";
2716
2721
  readonly sectionTitlePlaceholder: "Section title";
2722
+ readonly lastQuestionDialogTitle: "Remove last question from section";
2723
+ readonly lastQuestionDialogDescription: "Moving this question will leave the section empty and it will be removed. Do you want to continue?";
2717
2724
  };
2718
2725
  };
2719
2726
  readonly richTextEditor: {
@@ -3813,6 +3820,20 @@ declare type FlagAvatarVariant = Extract<AvatarVariant, {
3813
3820
  type: "flag";
3814
3821
  }>;
3815
3822
 
3823
+ export declare type FlatFormItem = {
3824
+ type: "section-header";
3825
+ id: string;
3826
+ section: SectionElement;
3827
+ } | {
3828
+ type: "question";
3829
+ id: string;
3830
+ question: QuestionElement;
3831
+ } | {
3832
+ type: "section-end";
3833
+ id: string;
3834
+ sectionId: string;
3835
+ };
3836
+
3816
3837
  export declare type FlattenedItem = {
3817
3838
  parent: EntitySelectEntity | null;
3818
3839
  subItem: EntitySelectSubEntity & {
@@ -3821,6 +3842,8 @@ export declare type FlattenedItem = {
3821
3842
  };
3822
3843
  };
3823
3844
 
3845
+ export declare function flattenElements(elements: CoCreationFormElement[]): FlatFormItem[];
3846
+
3824
3847
  declare type FontSize = (typeof fontSizes)[number];
3825
3848
 
3826
3849
  declare const fontSizes: readonly ["sm", "md", "lg"];
@@ -4137,6 +4160,21 @@ export declare type InfiniteScrollPaginatedResponse<TRecord> = BasePaginatedResp
4137
4160
  hasMore: boolean;
4138
4161
  };
4139
4162
 
4163
+ /**
4164
+ * Re-inject section-end markers into a flat list that has none.
4165
+ *
4166
+ * Uses `inSectionQuestionIds` (the set of question IDs that originally
4167
+ * belonged to *any* section) to determine where each section ends:
4168
+ * - Questions in the set stay inside the current section.
4169
+ * - Original standalone questions (NOT in the set) cause the section to close
4170
+ * before them so they remain standalone.
4171
+ *
4172
+ * This allows cross-section moves (a question from section B placed after
4173
+ * section A's header joins section A) while keeping standalone questions
4174
+ * outside sections unless the user explicitly drags them between section items.
4175
+ */
4176
+ export declare function injectSectionEnds(items: FlatFormItem[], inSectionQuestionIds: Set<string>): FlatFormItem[];
4177
+
4140
4178
  /**
4141
4179
  * @experimental This is an experimental component use it at your own risk
4142
4180
  */
@@ -5733,6 +5771,8 @@ declare interface ReactionsProps {
5733
5771
  };
5734
5772
  }
5735
5773
 
5774
+ export declare function reconstructElements(flatItems: FlatFormItem[]): CoCreationFormElement[];
5775
+
5736
5776
  /**
5737
5777
  * Utility type to get all possible paths through an object using dot notation
5738
5778
  * @template T - The object type to traverse
@@ -6498,8 +6538,27 @@ export declare type TOCItemAction = {
6498
6538
  label: string;
6499
6539
  onClick: () => void;
6500
6540
  icon?: IconType;
6541
+ critical?: boolean;
6542
+ /** Show a check icon to indicate this item is selected */
6543
+ selected?: boolean;
6501
6544
  } | {
6502
6545
  type: "separator";
6546
+ } | {
6547
+ type: "label";
6548
+ text: string;
6549
+ } | {
6550
+ type: "toggle";
6551
+ label: string;
6552
+ icon?: IconType;
6553
+ checked: boolean;
6554
+ onCheckedChange: (checked: boolean) => void;
6555
+ } | {
6556
+ type: "submenu";
6557
+ label: string;
6558
+ icon?: IconType;
6559
+ /** Currently selected option label shown inline */
6560
+ selectedLabel?: string;
6561
+ children: TOCItemAction[];
6503
6562
  };
6504
6563
 
6505
6564
  declare interface TOCItemProps {
@@ -7167,6 +7226,11 @@ declare module "gridstack" {
7167
7226
  }
7168
7227
 
7169
7228
 
7229
+ declare namespace Calendar {
7230
+ var displayName: string;
7231
+ }
7232
+
7233
+
7170
7234
  declare module "@tiptap/core" {
7171
7235
  interface Commands<ReturnType> {
7172
7236
  aiBlock: {
@@ -7179,8 +7243,9 @@ declare module "@tiptap/core" {
7179
7243
 
7180
7244
  declare module "@tiptap/core" {
7181
7245
  interface Commands<ReturnType> {
7182
- moodTracker: {
7183
- insertMoodTracker: (data: MoodTrackerData) => ReturnType;
7246
+ enhanceHighlight: {
7247
+ setEnhanceHighlight: (from: number, to: number) => ReturnType;
7248
+ clearEnhanceHighlight: () => ReturnType;
7184
7249
  };
7185
7250
  }
7186
7251
  }
@@ -7188,9 +7253,8 @@ declare module "@tiptap/core" {
7188
7253
 
7189
7254
  declare module "@tiptap/core" {
7190
7255
  interface Commands<ReturnType> {
7191
- enhanceHighlight: {
7192
- setEnhanceHighlight: (from: number, to: number) => ReturnType;
7193
- clearEnhanceHighlight: () => ReturnType;
7256
+ moodTracker: {
7257
+ insertMoodTracker: (data: MoodTrackerData) => ReturnType;
7194
7258
  };
7195
7259
  }
7196
7260
  }
@@ -7214,8 +7278,3 @@ declare module "@tiptap/core" {
7214
7278
  };
7215
7279
  }
7216
7280
  }
7217
-
7218
-
7219
- declare namespace Calendar {
7220
- var displayName: string;
7221
- }