@factorialco/f0-react 1.452.0 → 1.453.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/f0.d.ts CHANGED
@@ -6521,6 +6521,21 @@ declare interface F0FormActionBarSubmitConfig extends F0FormSubmitConfigBase {
6521
6521
  actionBarLabel?: string;
6522
6522
  }
6523
6523
 
6524
+ /**
6525
+ * Common props shared across all F0Form variants (formDefinition-based).
6526
+ * Used as the constraint for `F0FormLikeComponent`.
6527
+ */
6528
+ declare interface F0FormCommonProps {
6529
+ formDefinition: F0FormDefinitionSingleSchema_2<F0FormSchema> | F0FormDefinitionPerSection_2<F0PerSectionSchema>;
6530
+ className?: string;
6531
+ styling?: F0FormStylingConfig;
6532
+ formRef?: React.MutableRefObject<F0FormRef | null>;
6533
+ initialFiles?: InitialFile[];
6534
+ useUpload?: UseFileUpload;
6535
+ renderCustomField?: RenderCustomFieldFunction;
6536
+ isLoading?: boolean;
6537
+ }
6538
+
6524
6539
  /**
6525
6540
  * Submit configuration for default button type
6526
6541
  */
@@ -6748,6 +6763,19 @@ declare interface F0FormFieldNonFileProps extends F0FormFieldCommonProps {
6748
6763
 
6749
6764
  export declare type F0FormFieldProps = F0FormFieldFileProps | F0FormFieldNonFileProps;
6750
6765
 
6766
+ /**
6767
+ * Component type for F0Form-like wrappers (e.g. FactorialF0Form).
6768
+ *
6769
+ * Because F0Form uses overloaded/generic signatures, neither F0Form
6770
+ * nor FactorialF0Form can be directly assigned to this type.
6771
+ * Cast the component when passing it:
6772
+ *
6773
+ * ```tsx
6774
+ * <F0Provider formComponent={FactorialF0Form as F0FormLikeComponent} />
6775
+ * ```
6776
+ */
6777
+ export declare type F0FormLikeComponent = React.ComponentType<F0FormCommonProps>;
6778
+
6751
6779
  /**
6752
6780
  * Union of all F0Form prop variants.
6753
6781
  * The component detects the mode based on whether `schema` is a single Zod schema
@@ -7314,6 +7342,17 @@ export declare const F0Provider: React.FC<{
7314
7342
  showExperimentalWarnings?: boolean;
7315
7343
  dataCollectionStorageHandler?: DataCollectionStorageHandler;
7316
7344
  renderDataTestIdAttribute?: boolean;
7345
+ /**
7346
+ * Custom form component to use instead of the default F0Form in
7347
+ * AI canvas form panels. Useful for platform-level wrappers that
7348
+ * auto-provide `renderCustomField` or `useUpload`.
7349
+ *
7350
+ * Cast overloaded components when passing:
7351
+ * ```tsx
7352
+ * <F0Provider formComponent={FactorialF0Form as F0FormLikeComponent} />
7353
+ * ```
7354
+ */
7355
+ formComponent?: F0FormLikeComponent;
7317
7356
  }>;
7318
7357
 
7319
7358
  /**
@@ -12456,6 +12495,8 @@ export declare interface UseF0FormReturn {
12456
12495
  */
12457
12496
  export declare type UseFileUpload = () => FileUploadHookReturn;
12458
12497
 
12498
+ export declare const useFormComponent: () => F0FormLikeComponent | undefined;
12499
+
12459
12500
  export declare const useGroups: <R extends RecordType>(groups: GroupRecord<R>[], defaultOpenGroups?: boolean | GroupRecord<R>["key"][]) => {
12460
12501
  openGroups: Record<string, boolean>;
12461
12502
  setGroupOpen: (key: string, open: boolean) => void;
@@ -12833,6 +12874,11 @@ declare module "gridstack" {
12833
12874
  }
12834
12875
 
12835
12876
 
12877
+ declare namespace Calendar {
12878
+ var displayName: string;
12879
+ }
12880
+
12881
+
12836
12882
  declare module "@tiptap/core" {
12837
12883
  interface Commands<ReturnType> {
12838
12884
  aiBlock: {
@@ -12880,8 +12926,3 @@ declare module "@tiptap/core" {
12880
12926
  };
12881
12927
  }
12882
12928
  }
12883
-
12884
-
12885
- declare namespace Calendar {
12886
- var displayName: string;
12887
- }