react-crud-mui 0.0.1-beta.60 → 0.0.1-beta.62

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.
@@ -13,9 +13,8 @@ export type UseDetailPageModalReturn<TModel extends FieldValues> = Pick<DetailPa
13
13
  export interface UseDetailPageModalProps {
14
14
  models?: unknown[];
15
15
  uniqueIdParamName?: string;
16
- onVisibleChange?: (open: boolean) => void;
17
16
  }
18
- declare function useDetailPageModal<TModel extends FieldValues>({ models, uniqueIdParamName, onVisibleChange, }?: UseDetailPageModalProps): readonly [({ data, disabled, reason, onAfterDelete, onAfterSave }?: SelectedModelOptions<TModel>) => void, {
17
+ declare function useDetailPageModal<TModel extends FieldValues>({ models, uniqueIdParamName, }?: UseDetailPageModalProps): readonly [({ data, disabled, reason, onAfterDelete, onAfterSave }?: SelectedModelOptions<TModel>) => void, {
19
18
  readonly onReasonChange: (reason: NeedDataReason) => void;
20
19
  readonly onClose: () => void;
21
20
  readonly modalProps?: Omit<import('../../..').ModalProps, "children" | "open">;
@@ -4,7 +4,7 @@ import { ListPageFormProps } from './ListPageForm';
4
4
  import { default as ListPageModal } from './ListPageModal';
5
5
  import { default as ListPageRoute } from './ListPageRoute';
6
6
  import { default as ListPageSelection } from './ListPageSelection';
7
- export interface ListPageProps<TModel extends FieldValues, TFilter extends FieldValues = FieldValues, TDetailPageModel extends FieldValues = FieldValues> extends Omit<ListPageFormProps<TModel, TFilter, TDetailPageModel>, 'onChange' | 'meta'> {
7
+ export interface ListPageProps<TModel extends FieldValues, TFilter extends FieldValues = FieldValues> extends Omit<ListPageFormProps<TModel, TFilter>, 'onChange' | 'meta'> {
8
8
  /**
9
9
  * Data fetcher function with given filter
10
10
  */
@@ -17,7 +17,7 @@ export interface ListPageProps<TModel extends FieldValues, TFilter extends Field
17
17
  /**
18
18
  * Simple list with filter and table
19
19
  */
20
- declare function ListPage<TModel extends FieldValues, TFilter extends FieldValues = FieldValues, TDetailPageModel extends FieldValues = FieldValues>({ activeSegmentIndex, defaultMeta, defaultSegmentIndex, onNeedData, removeFalsyFilterValues, tableMode, tabs, ...lpProps }: ListPageProps<TModel, TFilter, TDetailPageModel>): import("react/jsx-runtime").JSX.Element;
20
+ declare function ListPage<TModel extends FieldValues, TFilter extends FieldValues = FieldValues>({ activeSegmentIndex, defaultMeta, defaultSegmentIndex, onNeedData, removeFalsyFilterValues, tableMode, tabs, ...lpProps }: ListPageProps<TModel, TFilter>): import("react/jsx-runtime").JSX.Element;
21
21
  declare namespace ListPage {
22
22
  var Selection: typeof ListPageSelection;
23
23
  var Modal: typeof ListPageModal;
@@ -1,6 +1,7 @@
1
1
  import { default as React, ReactNode } from 'react';
2
2
  import { FieldValues } from 'react-hook-form';
3
3
  import { ActionCommandsProps } from '../../action-commands/ActionCommands';
4
+ import { default as useDetailPageModal } from '../../detail-page/hooks/useDetailPageModal';
4
5
  import { NeedDataReason } from '../../detail-page/pages/DetailPageContent';
5
6
  import { DetailPageDrawerProps } from '../../detail-page/pages/DetailPageDrawer';
6
7
  import { DetailPageModalProps } from '../../detail-page/pages/DetailPageModal';
@@ -17,9 +18,9 @@ export type ListPageWrapperLayoutProps = {
17
18
  commandsContent: ReactNode;
18
19
  detailPageContent: ReactNode;
19
20
  };
20
- type DetailPageRender<TDetailPageModel extends FieldValues> = (props: DetailPageModalProps<TDetailPageModel> | DetailPageDrawerProps<TDetailPageModel>) => ReactNode;
21
+ type DetailPageRender<TDetailPageModel extends FieldValues> = (props: DetailPageModalProps<TDetailPageModel> | DetailPageDrawerProps<TDetailPageModel>, open: ReturnType<typeof useDetailPageModal<TDetailPageModel>>[0]) => ReactNode;
21
22
  export type OnDetailPage<TDetailPageModel extends FieldValues> = Partial<Record<NeedDataReason, DetailPageRender<TDetailPageModel>>> | DetailPageRender<TDetailPageModel>;
22
- export interface ListPageContentProps<TModel extends FieldValues, TDetailPageModel extends FieldValues = FieldValues> extends Omit<PageProps, 'commandsContent' | 'alertsContent' | 'autoSave' | 'onHeader' | 'onChange' | 'onCopy'>, Pick<ListPageCommandsProps, 'onCommands' | 'onExtraCommands' | 'createCommandLabel'> {
23
+ export interface ListPageContentProps<TModel extends FieldValues> extends Omit<PageProps, 'commandsContent' | 'alertsContent' | 'autoSave' | 'onHeader' | 'onChange' | 'onCopy'>, Pick<ListPageCommandsProps, 'onCommands' | 'onExtraCommands' | 'createCommandLabel'> {
23
24
  /**
24
25
  * Alerts
25
26
  */
@@ -112,7 +113,7 @@ export interface ListPageContentProps<TModel extends FieldValues, TDetailPageMod
112
113
  /**
113
114
  * Embedded detail page component render function
114
115
  */
115
- onDetailPage?: OnDetailPage<TDetailPageModel>;
116
+ onDetailPage?: OnDetailPage<TModel>;
116
117
  /**
117
118
  * Render action commands used with detailPage on every row
118
119
  */
@@ -130,5 +131,5 @@ export interface ListPageContentProps<TModel extends FieldValues, TDetailPageMod
130
131
  */
131
132
  enableRowClickToDetails?: boolean | NeedDataReason;
132
133
  }
133
- declare function ListPageContent<TModel extends FieldValues, TDetailPageModel extends FieldValues = FieldValues>({ activeSegmentIndex, alerts, autoSearch, children, columns, createCommandLabel, data, dataCount, disabled, disableShortCuts, enableActionCommands, enableRowClickToDetails, enableClear, enableCreateItem, enableExport, enableSearch, error, filterContent, hotkeyScopes, list: ListComponent, loading, onActionClick, onActionCommands, onClear, onClose, onCommands, onDetailPage, onExcelExport, onExtraCommands, onHeader, onSearch, onTabChanged, tableProps, onWrapperLayout, showHeader, ...pageProps }: ListPageContentProps<TModel, TDetailPageModel>): import("react/jsx-runtime").JSX.Element;
134
+ declare function ListPageContent<TModel extends FieldValues>({ activeSegmentIndex, alerts, autoSearch, children, columns, createCommandLabel, data, dataCount, disabled, disableShortCuts, enableActionCommands, enableRowClickToDetails, enableClear, enableCreateItem, enableExport, enableSearch, error, filterContent, hotkeyScopes, list: ListComponent, loading, onActionClick, onActionCommands, onClear, onClose, onCommands, onDetailPage, onExcelExport, onExtraCommands, onHeader, onSearch, onTabChanged, tableProps, onWrapperLayout, showHeader, ...pageProps }: ListPageContentProps<TModel>): import("react/jsx-runtime").JSX.Element;
134
135
  export default ListPageContent;
@@ -9,7 +9,7 @@ export type ListPageMeta = Pick<TableState, 'pagination' | 'sorting' | 'columnFi
9
9
  reason: SearchReason;
10
10
  };
11
11
  export type SearchReason = 'search' | 'sorting' | 'pagination' | 'init' | 'clear' | 'export' | 'tabChanged' | 'columnfilter';
12
- export interface ListPageFilterProps<TModel extends FieldValues, TFilter extends FieldValues = FieldValues, TDetailPageModel extends FieldValues = FieldValues> extends Omit<ListPageContentProps<TModel, TDetailPageModel>, 'onSearch' | 'onExcelExport' | 'tableProps' | 'onTabChanged'> {
12
+ export interface ListPageFilterProps<TModel extends FieldValues, TFilter extends FieldValues = FieldValues> extends Omit<ListPageContentProps<TModel>, 'onSearch' | 'onExcelExport' | 'tableProps' | 'onTabChanged'> {
13
13
  /**
14
14
  * Table states as partial for providing extra props to table
15
15
  */
@@ -54,5 +54,5 @@ export interface ListPageFilterProps<TModel extends FieldValues, TFilter extends
54
54
  /**
55
55
  * ListPage with filtering features
56
56
  */
57
- declare function ListPageFilter<TModel extends FieldValues, TFilter extends FieldValues = FieldValues, TDetailPageModel extends FieldValues = FieldValues>({ defaultMeta, defaultSegmentIndex, enablePagination, enableSorting, form, meta, onChange, onClear, searchOnLoad, tableMode, tableProps: extableProps, ...lpProps }: ListPageFilterProps<TModel, TFilter, TDetailPageModel>): import("react/jsx-runtime").JSX.Element;
57
+ declare function ListPageFilter<TModel extends FieldValues, TFilter extends FieldValues = FieldValues>({ defaultMeta, defaultSegmentIndex, enablePagination, enableSorting, form, meta, onChange, onClear, searchOnLoad, tableMode, tableProps: extableProps, ...lpProps }: ListPageFilterProps<TModel, TFilter>): import("react/jsx-runtime").JSX.Element;
58
58
  export default ListPageFilter;
@@ -3,7 +3,7 @@ import { z } from 'zod';
3
3
  import { UseFormOptions, UseFormReturn, ValidationOptions } from '../../form/hooks/useForm';
4
4
  import { DeepNullable } from '../../utils';
5
5
  import { ListPageFilterProps } from './ListPageFilter';
6
- export interface ListPageFormProps<TModel extends FieldValues, TFilter extends FieldValues = FieldValues, TDetailPageModel extends FieldValues = FieldValues> extends Omit<ListPageFilterProps<TModel, TFilter, TDetailPageModel>, 'form'>, Partial<Pick<UseFormOptions<TFilter>, 'schema'>> {
6
+ export interface ListPageFormProps<TModel extends FieldValues, TFilter extends FieldValues = FieldValues> extends Omit<ListPageFilterProps<TModel, TFilter>, 'form'>, Partial<Pick<UseFormOptions<TFilter>, 'schema'>> {
7
7
  form?: UseFormReturn<TFilter>;
8
8
  schema?: z.ZodType<TFilter>;
9
9
  /**
@@ -22,5 +22,5 @@ export interface ListPageFormProps<TModel extends FieldValues, TFilter extends F
22
22
  /**
23
23
  * ListPage with form features for filter criterias
24
24
  */
25
- declare function ListPageForm<TModel extends FieldValues, TFilter extends FieldValues = FieldValues, TDetailPageModel extends FieldValues = FieldValues>({ schema, defaultValues, defaultFilter, validationOptions, ...lpProps }: ListPageFormProps<TModel, TFilter, TDetailPageModel>): import("react/jsx-runtime").JSX.Element;
25
+ declare function ListPageForm<TModel extends FieldValues, TFilter extends FieldValues = FieldValues>({ schema, defaultValues, defaultFilter, validationOptions, ...lpProps }: ListPageFormProps<TModel, TFilter>): import("react/jsx-runtime").JSX.Element;
26
26
  export default ListPageForm;
@@ -1,11 +1,11 @@
1
1
  import { FieldValues } from 'react-hook-form';
2
2
  import { UseSegmentParamsOptions } from '../../detail-page/hooks/useSegmentParams';
3
3
  import { ListPageProps } from './ListPage';
4
- export interface ListPageRouteProps<TModel extends FieldValues, TFilter extends FieldValues = FieldValues, TDetailPageModel extends FieldValues = FieldValues> extends ListPageProps<TModel, TFilter, TDetailPageModel>, Omit<UseSegmentParamsOptions, 'paths'> {
4
+ export interface ListPageRouteProps<TModel extends FieldValues, TFilter extends FieldValues = FieldValues> extends ListPageProps<TModel, TFilter>, Omit<UseSegmentParamsOptions, 'paths'> {
5
5
  enableQueryStringFilter?: boolean;
6
6
  }
7
7
  /**
8
8
  * ListPage with routing based on react-router
9
9
  */
10
- declare function ListPageRoute<TModel extends FieldValues, TFilter extends FieldValues = FieldValues, TDetailPageModel extends FieldValues = FieldValues>({ defaultFilter, defaultMeta, enableNestedSegments, enableQueryStringFilter, enableSegmentRouting, fallbackSegmentIndex, onNeedData, tabs, defaultValues, onActionClick, ...listPageProps }: ListPageRouteProps<TModel, TFilter, TDetailPageModel>): import("react/jsx-runtime").JSX.Element;
10
+ declare function ListPageRoute<TModel extends FieldValues, TFilter extends FieldValues = FieldValues>({ defaultFilter, defaultMeta, enableNestedSegments, enableQueryStringFilter, enableSegmentRouting, fallbackSegmentIndex, onNeedData, tabs, defaultValues, onActionClick, ...listPageProps }: ListPageRouteProps<TModel, TFilter>): import("react/jsx-runtime").JSX.Element;
11
11
  export default ListPageRoute;