react-crud-mui 0.2.48 → 0.2.50

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.
@@ -24,7 +24,7 @@ declare function useDetailPageModal<TModel extends FieldValues>({ models, unique
24
24
  readonly promptOptions?: import('./useFormPrompt').UseFormPromptProps;
25
25
  readonly defaultReason?: NeedDataReason;
26
26
  readonly defaultSegmentIndex?: number;
27
- readonly form?: import('../../form/hooks/useForm').UseFormReturn<TModel> | undefined;
27
+ readonly form?: import('../../form/hooks/useForm').UseFormReturn<TModel, FieldValues> | undefined;
28
28
  readonly schema?: import('zod').ZodType<TModel, import('zod').ZodTypeDef, TModel> | undefined;
29
29
  readonly validationOptions?: import('../../form/hooks/useForm').ValidationOptions<TModel> | undefined;
30
30
  readonly defaultValues?: import('../pages/DetailPageForm').DefaultData<TModel> | undefined;
@@ -420,6 +420,7 @@ declare function useDetailPageModal<TModel extends FieldValues>({ models, unique
420
420
  readonly component?: React.ElementType;
421
421
  readonly disabled?: boolean;
422
422
  readonly loading?: boolean;
423
+ readonly readOnly?: boolean;
423
424
  readonly size?: import('../../page/components/PageProvider').PaddingSize;
424
425
  readonly icon?: import('react').ReactNode;
425
426
  readonly rightContent?: import('react').ReactNode;
@@ -466,14 +467,14 @@ declare function useDetailPageModal<TModel extends FieldValues>({ models, unique
466
467
  readonly onCreate?: () => void;
467
468
  readonly onSave?: import('../pages/DetailPageData').DataEvent<TModel, import('../pages/DetailPageData').SavePayload<TModel>> | undefined;
468
469
  readonly onDiscardChanges?: () => void;
469
- readonly onContentLayout?: (props: import('../components/DetailPageDefaultLayout').DetailPageLayoutProps) => React.ReactNode;
470
- readonly onWrapperLayout?: (props: import('../pages/DetailPageContent').DetailPageWrapperLayoutProps) => React.ReactNode;
470
+ readonly onContentLayout?: ((props: import('../components/DetailPageDefaultLayout').DetailPageLayoutProps<TModel>) => React.ReactNode) | undefined;
471
+ readonly onWrapperLayout?: ((props: import('../pages/DetailPageContent').DetailPageWrapperLayoutProps<TModel>) => React.ReactNode) | undefined;
471
472
  readonly defaultSaveMode?: import('../pages/DetailPageData').SaveMode;
472
473
  readonly steps?: import('../components/DetailPageStepsHeader').StepPane<TModel>[] | undefined;
473
474
  readonly customSteps?: React.ComponentType<import('../components/DetailPageStepsHeader').DetailPageStepsHeaderProps>;
474
475
  readonly stepsProps?: Partial<import('../components/DetailPageStepsHeader').DetailPageStepsHeaderProps>;
475
- readonly onAfterDelete?: ((variables: import('../pages/DetailPageData').DeletePayload<TModel>, form: import('../../form/hooks/useForm').UseFormReturn<TModel>) => void) | undefined;
476
- readonly onAfterSave?: ((result: void | Awaited<TModel> | undefined, variables: import('../pages/DetailPageData').SavePayload<TModel>, form: import('../../form/hooks/useForm').UseFormReturn<TModel>) => void) | undefined;
476
+ readonly onAfterDelete?: ((variables: import('../pages/DetailPageData').DeletePayload<TModel>, form: import('../../form/hooks/useForm').UseFormReturn<TModel, FieldValues>) => void) | undefined;
477
+ readonly onAfterSave?: ((result: void | Awaited<TModel> | undefined, variables: import('../pages/DetailPageData').SavePayload<TModel>, form: import('../../form/hooks/useForm').UseFormReturn<TModel, FieldValues>) => void) | undefined;
477
478
  readonly showSuccessMessages?: boolean;
478
479
  readonly uid?: string;
479
480
  readonly index?: number;
@@ -125,11 +125,15 @@ export interface DetailPageContentProps<TModel extends FieldValues> extends Omit
125
125
  * Having called "onSave" once changing form values
126
126
  */
127
127
  autoSave?: boolean | AutoSaveOptions;
128
+ /**
129
+ * Readonly mode, when true all commands are disabled except commands unlike disabled
130
+ */
131
+ readOnly?: boolean;
128
132
  /**
129
133
  * Custom content layout
130
134
  */
131
- onContentLayout?: (props: DetailPageLayoutProps) => React.ReactNode;
132
- onWrapperLayout?: (props: DetailPageWrapperLayoutProps) => React.ReactNode;
135
+ onContentLayout?: (props: DetailPageLayoutProps<TModel>) => React.ReactNode;
136
+ onWrapperLayout?: (props: DetailPageWrapperLayoutProps<TModel>) => React.ReactNode;
133
137
  /**
134
138
  *Default save mode (save,saveclose,savecreate) default is 'save'
135
139
  */
@@ -148,5 +152,5 @@ export interface DetailPageContentProps<TModel extends FieldValues> extends Omit
148
152
  stepsProps?: Partial<DetailPageStepsHeaderProps>;
149
153
  tabExtraContent?: ReactNode | ((data?: TModel) => ReactNode);
150
154
  }
151
- declare function DetailPageContent<TModel extends FieldValues>({ activeSegmentIndex, alerts, autoSave, children, commandsPosition, commandsProps, customSteps: CustomSteps, data, defaultSaveMode, disabled, disableShortCuts, enableClose, enableCopy, enableCreate, enableDelete, enableDiscardChanges, enableSave, error, form, hotkeyScopes, loading, onClose, onCommands, onContentLayout, onCopy, onCreate, onDelete, onDiscardChanges, onSegmentChanged, onExtraCommands, onHeader, onNavigate, onSave, onSaveClose, onSaveCreate, onWrapperLayout, reason, showHeader, steps, stepsProps, tabExtraContent, ...pageProps }: DetailPageContentProps<TModel>): import("react/jsx-runtime").JSX.Element;
155
+ declare function DetailPageContent<TModel extends FieldValues>({ activeSegmentIndex, alerts, autoSave, children, commandsPosition, commandsProps, customSteps: CustomSteps, data, defaultSaveMode, disabled, disableShortCuts, enableClose, enableCopy, enableCreate, enableDelete, enableDiscardChanges, enableSave, error, form, hotkeyScopes, loading, onClose, onCommands, onContentLayout, onCopy, onCreate, onDelete, onDiscardChanges, onSegmentChanged, onExtraCommands, onHeader, onNavigate, onSave, onSaveClose, onSaveCreate, onWrapperLayout, readOnly, reason, showHeader, steps, stepsProps, tabExtraContent, ...pageProps }: DetailPageContentProps<TModel>): import("react/jsx-runtime").JSX.Element;
152
156
  export default DetailPageContent;
@@ -12,12 +12,16 @@ export type ValidationOptions<TFieldValues extends FieldValues = FieldValues> =
12
12
  export interface UseFormOptions<TFieldValues extends FieldValues> extends UseFormProps<TFieldValues> {
13
13
  schema?: z.ZodType<Partial<TFieldValues>>;
14
14
  }
15
- export interface UseFormReturn<TFieldValues extends FieldValues = FieldValues> extends ReactHookFormUseFormReturn<TFieldValues> {
15
+ export interface UseFormReturn<TFieldValues extends FieldValues = FieldValues, TParentFieldValues extends FieldValues = FieldValues> extends ReactHookFormUseFormReturn<TFieldValues> {
16
16
  /**
17
17
  * Shortcut method for handleSubmit()()
18
18
  * @returns Returns form model when validation successed
19
19
  */
20
20
  getFormModel(): Promise<TFieldValues>;
21
+ /**
22
+ * Possible parent form if this form is a child of another form
23
+ */
24
+ parentForm?: UseFormReturn<TParentFieldValues>;
21
25
  }
22
26
  /**
23
27
  * Wrapper RHF useForm hook