react-crud-mui 0.2.86 → 0.2.88

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.
@@ -1,6 +1,6 @@
1
1
  import { default as React } from 'react';
2
2
  export interface SuccessPanelProps {
3
- title: string;
3
+ title?: string;
4
4
  helperText?: string;
5
5
  commands?: React.ReactNode;
6
6
  icon?: React.ReactNode;
@@ -478,11 +478,12 @@ declare function useDetailPageModal<TModel extends FieldValues, TProps extends S
478
478
  readonly steps?: import('../components/DetailPageStepsHeader').StepPane<TModel>[] | undefined;
479
479
  readonly customSteps?: React.ComponentType<import('../components/DetailPageStepsHeader').DetailPageStepsHeaderProps>;
480
480
  readonly stepsProps?: Partial<import('../components/DetailPageStepsHeader').DetailPageStepsHeaderProps>;
481
+ readonly successPanelVisible?: boolean;
482
+ readonly successPanelProps?: import('../components/SuccessPanel').SuccessPanelProps | ((model: TModel, events: Pick<import('../pages/DetailPageContent').DetailPageContentProps<TModel>, "onClose" | "onCreate">) => import('../components/SuccessPanel').SuccessPanelProps) | undefined;
483
+ readonly onSuccessPanel?: ((model: TModel, events: Pick<import('../pages/DetailPageContent').DetailPageContentProps<TModel>, "onClose" | "onCreate">) => React.ReactNode) | undefined;
481
484
  readonly onAfterDelete?: ((variables: import('../pages/DetailPageData').DeletePayload<TModel>, form: import('../../form/hooks/useForm').UseFormReturn<TModel, FieldValues>) => void) | undefined;
482
485
  readonly onAfterSave?: ((result: void | Awaited<TModel> | undefined, variables: import('../pages/DetailPageData').SavePayload<TModel>, form: import('../../form/hooks/useForm').UseFormReturn<TModel, FieldValues>) => void) | undefined;
483
- readonly onSuccessPanel?: ((model: TModel, events: Pick<import('../pages/DetailPageContent').DetailPageContentProps<TModel>, "onClose" | "onCreate">) => React.ReactNode) | undefined;
484
486
  readonly showSuccessMessages?: boolean;
485
- readonly successPanelProps?: import('../components/SuccessPanel').SuccessPanelProps | ((model: TModel, events: Pick<import('../pages/DetailPageContent').DetailPageContentProps<TModel>, "onClose" | "onCreate">) => import('../components/SuccessPanel').SuccessPanelProps) | undefined;
486
487
  readonly uid?: string;
487
488
  readonly index?: number;
488
489
  }];
@@ -9,6 +9,7 @@ import { CommandsProps, CommandsPropsFn, DetailPageCommandsProps } from '../comp
9
9
  import { DetailPageLayoutOptions, DetailPageLayoutProps } from '../components/DetailPageDefaultLayout';
10
10
  import { DetailPageHeaderProps } from '../components/DetailPageHeader';
11
11
  import { DetailPageStepsHeaderProps, StepPane } from '../components/DetailPageStepsHeader';
12
+ import { SuccessPanelProps } from '../components/SuccessPanel';
12
13
  import { NavigationDirection, SaveMode } from './DetailPageData';
13
14
  export type NeedDataReason = 'create' | 'fetch' | 'copy' | 'view';
14
15
  export type DetailPageWrapperLayoutProps<TModel extends FieldValues = FieldValues> = {
@@ -154,6 +155,18 @@ export interface DetailPageContentProps<TModel extends FieldValues> extends Omit
154
155
  * Extra content to be placed in tab bar area
155
156
  */
156
157
  tabExtraContent?: ReactNode | ((data?: TModel) => ReactNode);
158
+ /**
159
+ * Show success panel on create/save (Default false
160
+ */
161
+ successPanelVisible?: boolean;
162
+ /**
163
+ * Show success panel on create/save (Default false)
164
+ */
165
+ successPanelProps?: SuccessPanelProps | ((model: TModel, events: Pick<DetailPageContentProps<TModel>, 'onCreate' | 'onClose'>) => SuccessPanelProps);
166
+ /**
167
+ * Custom render for success panel
168
+ */
169
+ onSuccessPanel?: (model: TModel, events: Pick<DetailPageContentProps<TModel>, 'onCreate' | 'onClose'>) => React.ReactNode;
157
170
  }
158
- 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;
171
+ 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, successPanelVisible, successPanelProps, onSuccessPanel, tabExtraContent, ...pageProps }: DetailPageContentProps<TModel>): import("react/jsx-runtime").JSX.Element;
159
172
  export default DetailPageContent;
@@ -1,6 +1,5 @@
1
1
  import { FieldValues } from 'react-hook-form';
2
2
  import { UseFormReturn } from '../../form/hooks/useForm';
3
- import { SuccessPanelProps } from '../components/SuccessPanel';
4
3
  import { DetailPageContentProps, NeedDataReason } from './DetailPageContent';
5
4
  export type DataResult<TModel> = TModel | Promise<TModel | void | undefined> | undefined | void;
6
5
  export interface DataEvent<TModel extends FieldValues, TVariables> {
@@ -52,14 +51,6 @@ export interface DetailPageDataProps<TModel extends FieldValues> extends Omit<De
52
51
  * Enable to show success messages (Default true)
53
52
  */
54
53
  showSuccessMessages?: boolean;
55
- /**
56
- * Show success panel on create/save (Default false)
57
- */
58
- successPanelProps?: SuccessPanelProps | ((model: TModel, events: Pick<DetailPageContentProps<TModel>, 'onCreate' | 'onClose'>) => SuccessPanelProps);
59
- /**
60
- * Custom render for success panel
61
- */
62
- onSuccessPanel?: (model: TModel, events: Pick<DetailPageContentProps<TModel>, 'onCreate' | 'onClose'>) => React.ReactNode;
63
54
  /**
64
55
  * Event called after succesfull save
65
56
  */
@@ -72,5 +63,5 @@ export interface DetailPageDataProps<TModel extends FieldValues> extends Omit<De
72
63
  /**
73
64
  * Page component that all data manupulation is handled
74
65
  */
75
- declare function DetailPageData<TModel extends FieldValues>({ alerts, autoSave, data, error, form, loading, onAfterDelete, onAfterSave, onClose, onDelete, onDiscardChanges, onLayout, onReasonChange, onNavigate, onSave, onSuccessPanel, reason, showSuccessMessages, successPanelProps, ...dpProps }: DetailPageDataProps<TModel>): import("react/jsx-runtime").JSX.Element;
66
+ declare function DetailPageData<TModel extends FieldValues>({ alerts, autoSave, data, error, form, loading, onAfterDelete, onAfterSave, onClose, onDelete, onDiscardChanges, onReasonChange, onNavigate, onSave, reason, showSuccessMessages, successPanelProps, ...dpProps }: DetailPageDataProps<TModel>): import("react/jsx-runtime").JSX.Element;
76
67
  export default DetailPageData;
@@ -5,15 +5,20 @@ import { ActionCommandsProps } from '../../action-commands/ActionCommands';
5
5
  import { EmptyTextProps } from '../../table/components/EmptyText';
6
6
  export interface CardListProps<TModel extends FieldValues> {
7
7
  data?: TModel[];
8
+ enableSkeleton?: boolean;
8
9
  onCardMeta: (model: TModel, actions: React.ReactNode, actionProps: ActionCommandsProps<TModel>) => ReactNode;
10
+ onCardSkeleton?: () => ReactNode;
9
11
  onActionCommandProps: (model: TModel, index: number) => ActionCommandsProps<TModel>;
10
12
  cardColProps?: Grid2Props;
11
13
  cardRowProps?: Grid2Props;
12
14
  cardWrapperProps?: BoxProps;
13
15
  enablePagination?: boolean;
16
+ loading?: boolean;
14
17
  paginationProps?: PaginationProps;
15
18
  emptyTextProps?: EmptyTextProps;
16
19
  enableActionCommands?: boolean;
20
+ showEmptyText?: boolean;
21
+ skeletonRows?: number;
17
22
  }
18
- declare function CardList<TModel extends FieldValues>({ enableActionCommands, cardWrapperProps, cardColProps, cardRowProps, data, enablePagination, onCardMeta, paginationProps, onActionCommandProps, emptyTextProps, }: CardListProps<TModel>): import("react/jsx-runtime").JSX.Element;
23
+ declare function CardList<TModel extends FieldValues>({ cardColProps, cardRowProps, cardWrapperProps, data, emptyTextProps, enableActionCommands, enablePagination, onActionCommandProps, onCardMeta, onCardSkeleton, loading, enableSkeleton, paginationProps, skeletonRows, showEmptyText, }: CardListProps<TModel>): import("react/jsx-runtime").JSX.Element;
19
24
  export default CardList;
@@ -51,7 +51,10 @@ export interface ListPageFilterProps<TModel extends FieldValues, TFilter extends
51
51
  * Enable table sorting default true
52
52
  */
53
53
  enableSorting?: boolean;
54
- cardProps?: Pick<CardListProps<TModel>, 'cardColProps' | 'cardRowProps' | 'onCardMeta' | 'emptyTextProps' | 'cardWrapperProps'>;
54
+ /**
55
+ * Card list props
56
+ */
57
+ cardProps?: Omit<CardListProps<TModel>, 'data' | 'loading' | 'onActionCommandProps'>;
55
58
  }
56
59
  /**
57
60
  * ListPage with filtering features