react-crud-mui 0.2.37 → 0.2.39

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.
@@ -9,8 +9,9 @@ export type DetailPageLayoutProps = {
9
9
  stepsContent?: ReactNode;
10
10
  autoSaveContent?: ReactNode;
11
11
  valuesChangeContent?: ReactNode;
12
+ errorsContent?: ReactNode;
12
13
  options: DetailPageLayoutOptions;
13
14
  };
14
15
  type DetailPageDefaultLayoutProps = DetailPageLayoutProps;
15
- declare function DetailPageDefaultLayout({ content, stepsContent, autoSaveContent, valuesChangeContent, }: DetailPageDefaultLayoutProps): import("react/jsx-runtime").JSX.Element;
16
+ declare function DetailPageDefaultLayout({ content, stepsContent, autoSaveContent, valuesChangeContent, errorsContent, }: DetailPageDefaultLayoutProps): import("react/jsx-runtime").JSX.Element;
16
17
  export default DetailPageDefaultLayout;
@@ -465,6 +465,7 @@ declare function useDetailPageModal<TModel extends FieldValues>({ models, unique
465
465
  readonly onCreate?: () => void;
466
466
  readonly onSave?: import('../pages/DetailPageData').DataEvent<TModel, import('../pages/DetailPageData').SavePayload<TModel>> | undefined;
467
467
  readonly onDiscardChanges?: () => void;
468
+ readonly onFormErrors?: ((errors: import('react-hook-form').FieldErrors<TModel>, isValid?: boolean) => void) | undefined;
468
469
  readonly onContentLayout?: (props: import('../components/DetailPageDefaultLayout').DetailPageLayoutProps) => React.ReactNode;
469
470
  readonly onWrapperLayout?: (props: import('../pages/DetailPageContent').DetailPageWrapperLayoutProps) => React.ReactNode;
470
471
  readonly defaultSaveMode?: import('../pages/DetailPageData').SaveMode;
@@ -1,5 +1,5 @@
1
1
  import { default as React, ReactNode } from 'react';
2
- import { FieldValues } from 'react-hook-form';
2
+ import { FieldErrors, FieldValues } from 'react-hook-form';
3
3
  import { Message } from '../../page/hooks/useNormalizeMessages';
4
4
  import { PageProps } from '../../page/Page';
5
5
  import { ServerError } from '../../utils';
@@ -79,6 +79,11 @@ export interface DetailPageContentProps<TModel extends FieldValues> extends Omit
79
79
  * MUST BE MEMOIZED
80
80
  */
81
81
  onValuesChange?: (values: Partial<TModel>) => void;
82
+ /**
83
+ * Error tracker,called when form errors has changed
84
+ * MUST BE MEMOIZED
85
+ */
86
+ onFormErrors?: (errors: FieldErrors<TModel>, isValid?: boolean) => void;
82
87
  /**
83
88
  * Page opening reason Default create.
84
89
  */
@@ -128,5 +133,5 @@ export interface DetailPageContentProps<TModel extends FieldValues> extends Omit
128
133
  stepsProps?: Partial<DetailPageStepsProps>;
129
134
  tabExtraContent?: ReactNode | ((data?: TModel) => ReactNode);
130
135
  }
131
- declare function DetailPageContent<TModel extends FieldValues>({ activeSegmentIndex, alerts, autoSave, children, commandsPosition, customSteps: CustomSteps, createCommandLabel, data, defaultSaveMode, disabled, disableShortCuts, enableClose, enableCopy, enableCreate, enableDelete, enableDiscardChanges, enableSave, error, hotkeyScopes, loading, onClose, onCommands, onContentLayout, onCopy, onCreate, onDelete, onDiscardChanges, onSegmentChanged, onExtraCommands, onHeader, onSave, onSaveClose, onSaveCreate, onValuesChange, onWrapperLayout, reason, showHeader, steps, stepsProps, tabExtraContent, ...pageProps }: DetailPageContentProps<TModel>): import("react/jsx-runtime").JSX.Element;
136
+ declare function DetailPageContent<TModel extends FieldValues>({ activeSegmentIndex, alerts, autoSave, children, commandsPosition, customSteps: CustomSteps, createCommandLabel, data, defaultSaveMode, disabled, disableShortCuts, enableClose, enableCopy, enableCreate, enableDelete, enableDiscardChanges, enableSave, error, hotkeyScopes, loading, onClose, onCommands, onContentLayout, onCopy, onCreate, onDelete, onDiscardChanges, onFormErrors, onSegmentChanged, onExtraCommands, onHeader, onSave, onSaveClose, onSaveCreate, onValuesChange, onWrapperLayout, reason, showHeader, steps, stepsProps, tabExtraContent, ...pageProps }: DetailPageContentProps<TModel>): import("react/jsx-runtime").JSX.Element;
132
137
  export default DetailPageContent;
@@ -1,11 +1,9 @@
1
1
  import { default as React, PropsWithChildren } from 'react';
2
- interface FieldWithProviderProps {
2
+ export interface FieldWithProviderProps {
3
3
  prefix?: string;
4
4
  suffix?: string;
5
+ getName?: (name: string) => string;
5
6
  }
6
- export declare const FieldWithContext: React.Context<{
7
- prefix?: string;
8
- suffix?: string;
9
- }>;
7
+ export declare const FieldWithContext: React.Context<FieldWithProviderProps>;
10
8
  declare function FieldWithProvider({ children, prefix, suffix, }: PropsWithChildren<FieldWithProviderProps>): import("react/jsx-runtime").JSX.Element;
11
9
  export default FieldWithProvider;
@@ -0,0 +1,6 @@
1
+ import { FieldErrors, FieldValues } from 'react-hook-form';
2
+ interface FormValuesTrackerProps<TModel extends FieldValues> {
3
+ onErrorsChange(errors: FieldErrors<TModel>, isValid?: boolean): void;
4
+ }
5
+ declare function FormErrorsTracker<TModel extends FieldValues>({ onErrorsChange, }: FormValuesTrackerProps<TModel>): null;
6
+ export default FormErrorsTracker;
@@ -1,5 +1,3 @@
1
- declare function useFieldWithContext(): {
2
- prefix?: string;
3
- suffix?: string;
4
- };
1
+ import { FieldWithProviderProps } from '../components/FieldWithProvider';
2
+ declare function useFieldWithContext(): Required<FieldWithProviderProps>;
5
3
  export default useFieldWithContext;