react-crud-mui 0.0.1-beta.21 → 0.0.1-beta.23

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.
@@ -19,6 +19,7 @@ export interface ComboBoxProps<T extends CreatableModel, Creatable extends boole
19
19
  onCreate?: (text: string) => Promise<T>;
20
20
  selectRef?: Ref<unknown>;
21
21
  }
22
+ export declare const DEFAULT_OPTION_TEMPLATE = "${name}";
22
23
  declare function ComboBox<T extends CreatableModel, Creatable extends boolean>({ autoFocus, creatable, data, descriptionTemplate, direction, displayTemplate, error, getOptionLabel, helperText, loading, onBlur, onCreate, optionTemplate, label, renderOption: onRenderOption, selectRef, ...rest }: ComboBoxProps<T, Creatable>): import("react/jsx-runtime").JSX.Element;
23
24
  declare const _default: typeof ComboBox;
24
25
  export default _default;
@@ -408,6 +408,7 @@ declare function useDetailPageModal<TModel extends FieldValues>({ models, unique
408
408
  readonly loading?: boolean;
409
409
  readonly size?: import('../../page/components/PageProvider').PaddingSize;
410
410
  readonly icon?: import('react').ReactNode;
411
+ readonly rightContent?: import('react').ReactNode;
411
412
  readonly centerContent?: import('react').ReactNode;
412
413
  readonly helperText?: import('react').ReactNode;
413
414
  readonly headerProps?: import('@mui/material').BoxProps;
@@ -7,8 +7,9 @@ export type RadioGroupData = {
7
7
  label: string;
8
8
  };
9
9
  export interface FormRadioGroupProps<TFieldValues extends FieldValues = FieldValues> extends Omit<MuiRadioGroupProps, 'name'>, ControlCommonProps<TFieldValues>, FormControlProps {
10
- data: RadioGroupData[];
10
+ data?: RadioGroupData[];
11
+ disabled?: boolean;
11
12
  }
12
13
  export declare const StyledFormControlLabel: import('@emotion/styled').StyledComponent<import('@mui/material').FormControlLabelProps & import('@mui/system').MUIStyledCommonProps<import('@mui/material').Theme>, {}, {}>;
13
- declare function FormRadioGroup<TFieldValues extends FieldValues = FieldValues>({ name, label, helperText, placement, fieldProps, data, ...radioGroupProps }: FormRadioGroupProps<TFieldValues>): import("react/jsx-runtime").JSX.Element;
14
+ declare function FormRadioGroup<TFieldValues extends FieldValues = FieldValues>({ name, label, helperText, placement, fieldProps, disabled, data, ...radioGroupProps }: FormRadioGroupProps<TFieldValues>): import("react/jsx-runtime").JSX.Element;
14
15
  export default FormRadioGroup;
@@ -101,6 +101,10 @@ export interface ListPageContentProps<TModel extends FieldValues, TDetailPageMod
101
101
  * Total data row count of paging
102
102
  */
103
103
  dataCount?: number;
104
+ /**
105
+ * Enable table pagination default true
106
+ */
107
+ enablePagination?: boolean;
104
108
  /**
105
109
  * Custom list region component
106
110
  */
@@ -41,5 +41,5 @@ export interface ListPageFilterProps<TModel extends FieldValues, TFilter extends
41
41
  /**
42
42
  * ListPage with filtering features
43
43
  */
44
- declare function ListPageFilter<TModel extends FieldValues, TFilter extends FieldValues = FieldValues, TDetailPageModel extends FieldValues = FieldValues>({ form, meta, tableProps: extableProps, onChange, defaultSegmentIndex, onClear, defaultMeta, searchOnLoad, ...lpProps }: ListPageFilterProps<TModel, TFilter, TDetailPageModel>): import("react/jsx-runtime").JSX.Element;
44
+ declare function ListPageFilter<TModel extends FieldValues, TFilter extends FieldValues = FieldValues, TDetailPageModel extends FieldValues = FieldValues>({ form, meta, tableProps: extableProps, onChange, defaultSegmentIndex, enablePagination, onClear, defaultMeta, searchOnLoad, ...lpProps }: ListPageFilterProps<TModel, TFilter, TDetailPageModel>): import("react/jsx-runtime").JSX.Element;
45
45
  export default ListPageFilter;
@@ -6,6 +6,7 @@ export type MoreButtonItem = {
6
6
  children: ReactNode;
7
7
  key: Key;
8
8
  danger?: boolean;
9
+ onClick?: (e: React.MouseEvent<HTMLLIElement, MouseEvent>) => void;
9
10
  };
10
11
  export interface MoreButtonProps extends IconButtonProps {
11
12
  options?: MoreButtonItem[];
@@ -9,7 +9,7 @@ import { PaddingSize } from './components/PageProvider';
9
9
  export type CloseReason = 'backdrop' | 'close-button' | 'action';
10
10
  export type CommandsPosition = 'top-right' | 'top-left' | 'bottom-left' | 'bottom-right' | 'bottom' | 'top';
11
11
  export type TabsPosition = 'in-center' | 'in-subrow';
12
- export interface PageProps extends Omit<HeaderProps, 'rightContent'> {
12
+ export interface PageProps extends HeaderProps {
13
13
  commandsContent?: ReactNode;
14
14
  commandsPosition?: CommandsPosition;
15
15
  onHeader?: (props: HeaderProps) => ReactNode;
@@ -31,7 +31,7 @@ export interface PageProps extends Omit<HeaderProps, 'rightContent'> {
31
31
  onTabs?: (props: DefaultTabsProps) => ReactNode;
32
32
  }
33
33
  export declare const PagePadding: Record<PaddingSize, number>;
34
- declare function Page({ alertsContent, children, commandsContent, commandsPosition, onTabs, disabled, footerContent, loading, onHeader, onLayout, moreContent, morePanelProps, showHeader, size, style, sx, tabs, onTabChanged, selectedTabIndex, tabsPosition, ...headerProps }: PageProps): import("react/jsx-runtime").JSX.Element;
34
+ declare function Page({ alertsContent, children, commandsContent, commandsPosition, onTabs, disabled, footerContent, loading, onHeader, onLayout, moreContent, morePanelProps, showHeader, size, style, sx, tabs, onTabChanged, selectedTabIndex, tabsPosition, rightContent, centerContent, ...headerProps }: PageProps): import("react/jsx-runtime").JSX.Element;
35
35
  declare namespace Page {
36
36
  var Content: typeof PageContent;
37
37
  var Divider: typeof PageDivider;
@@ -8,14 +8,15 @@ export type SelectProps<T extends FieldValues = FieldValues> = Partial<MuiSelect
8
8
  valueField?: string;
9
9
  groupBy?: (model: T) => string;
10
10
  data?: T[];
11
- optionTemplate: ComboboxTemplate<T>;
11
+ optionTemplate?: ComboboxTemplate<T>;
12
12
  displayTemplate?: ComboboxTemplate<T>;
13
13
  descriptionTemplate?: ComboboxTemplate<T>;
14
14
  optionImg?: Path<T>;
15
15
  optionImgProps?: AvatarProps;
16
16
  helperText?: ReactNode;
17
17
  selectRef?: Ref<unknown>;
18
+ optionAsValue?: boolean;
18
19
  };
19
- declare function Select<T extends FieldValues>({ allowClear, children, data, descriptionTemplate, disabled, displayTemplate, dropDownHeight, error, groupBy: groupByFn, helperText, id, label, onChange, optionImg, optionImgProps, optionTemplate, selectRef, sx, value, valueField, ...rest }: SelectProps<T>): import("react/jsx-runtime").JSX.Element;
20
+ declare function Select<T extends FieldValues = FieldValues>({ allowClear, children, data, descriptionTemplate, disabled, displayTemplate, dropDownHeight, error, groupBy: groupByFn, helperText, id, label, onChange, optionImg, optionImgProps, optionTemplate, optionAsValue, selectRef, sx, value, valueField, multiple, ...rest }: SelectProps<T>): import("react/jsx-runtime").JSX.Element;
20
21
  declare const _default: typeof Select;
21
22
  export default _default;
@@ -5,6 +5,8 @@ import { ColumnDef, Table as ReactTable, Row, RowData, TableOptions } from '@tan
5
5
  import { ScrollbarProps } from '../scrollbar/Scrollbar';
6
6
  import { BodyTableRow } from './components/BodyTableRow';
7
7
  import { EmptyTextProps } from './components/EmptyText';
8
+ import { default as TableMoreMenu } from './components/TableMoreMenu';
9
+ import { default as TableMoreMenuItem } from './components/TableMoreMenuItem';
8
10
  declare module '@tanstack/react-table' {
9
11
  interface CoreColumn<TData extends RowData, TValue = unknown> {
10
12
  link?: (row: Row<TData>) => string;
@@ -34,7 +36,7 @@ export interface TableProps<TData extends FieldValues> extends Omit<TableOptions
34
36
  columns: TableColumn<TData>[];
35
37
  descriptionField?: Path<TData> | ((row: Row<TData>) => ReactNode);
36
38
  enableNestedComponent?: boolean | ((row: Row<TData>) => boolean | undefined);
37
- enablePaging?: boolean;
39
+ enablePagination?: boolean;
38
40
  enableSkeleton?: boolean;
39
41
  enableRowClickSelect?: boolean;
40
42
  footerContent?: ReactNode | ((table: ReactTable<TData>) => ReactNode);
@@ -50,9 +52,15 @@ export interface TableProps<TData extends FieldValues> extends Omit<TableOptions
50
52
  scrollProps?: Partial<ScrollbarProps>;
51
53
  skeletonRows?: number;
52
54
  showNewRowButton?: boolean;
55
+ showHeader?: boolean;
53
56
  paginationProps?: Partial<TablePaginationProps>;
54
57
  headerSx?: TableRowProps['sx'];
55
58
  rowSx?: TableRowProps['sx'];
59
+ newRowButtonContent?: ReactNode;
60
+ }
61
+ declare function Table<TData extends FieldValues>({ autoFocus, bordered, columns, data, descriptionField, emptyText, enablePagination, enableRowClickSelect, enableNestedComponent, enableSkeleton, footerContent, headerSx, loading, newRowButtonText, newRowButtonContent, onNewRow, onRenderNestedComponent, onRowClick, onRowEnterPress, onRowProps, onSubTreeRows, paginationProps, rowIdField, rowSx, size, showHeader, stickyHeader, scrollProps, showEmptyImage, showNewRowButton, skeletonRows, sx, state, ...tableProps }: TableProps<TData>): import("react/jsx-runtime").JSX.Element;
62
+ declare namespace Table {
63
+ var MoreMenu: typeof TableMoreMenu;
64
+ var MoreMenuItem: typeof TableMoreMenuItem;
56
65
  }
57
- declare function Table<TData extends FieldValues>({ autoFocus, bordered, columns, data, descriptionField, emptyText, enablePaging, enableRowClickSelect, enableNestedComponent, enableSkeleton, footerContent, headerSx, loading, newRowButtonText, onNewRow, onRenderNestedComponent, onRowClick, onRowEnterPress, onRowProps, onSubTreeRows, paginationProps, rowIdField, rowSx, size, stickyHeader, scrollProps, showEmptyImage, showNewRowButton, skeletonRows, sx, state, ...tableProps }: TableProps<TData>): import("react/jsx-runtime").JSX.Element;
58
66
  export default Table;
@@ -1,6 +1,7 @@
1
1
  import { Theme } from '@mui/material';
2
2
  export type ServerError = {
3
3
  message?: string;
4
+ _error?: string;
4
5
  statusCode?: string;
5
6
  errors?: {
6
7
  message: string;