material-react-table 0.3.0 → 0.3.1

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.
Files changed (61) hide show
  1. package/dist/MaterialReactTable.d.ts +46 -44
  2. package/dist/buttons/MRT_EditActionButtons.d.ts +7 -0
  3. package/dist/buttons/MRT_ToggleFiltersButton.d.ts +4 -0
  4. package/dist/buttons/MRT_ToggleRowActionMenuButton.d.ts +7 -0
  5. package/dist/head/MRT_TableHeadCell.d.ts +1 -0
  6. package/dist/index.d.ts +2 -2
  7. package/dist/inputs/MRT_DensePaddingSwitch.d.ts +5 -0
  8. package/dist/material-react-table.cjs.development.js +1459 -412
  9. package/dist/material-react-table.cjs.development.js.map +1 -1
  10. package/dist/material-react-table.cjs.production.min.js +1 -1
  11. package/dist/material-react-table.cjs.production.min.js.map +1 -1
  12. package/dist/material-react-table.esm.js +1474 -427
  13. package/dist/material-react-table.esm.js.map +1 -1
  14. package/dist/menus/MRT_RowActionMenu.d.ts +9 -0
  15. package/dist/{footer → toolbar}/MRT_TablePagination.d.ts +0 -0
  16. package/dist/toolbar/MRT_ToolbarBottom.d.ts +5 -0
  17. package/dist/toolbar/MRT_ToolbarButtons.d.ts +5 -0
  18. package/dist/toolbar/{MRT_Toolbar.d.ts → MRT_ToolbarTop.d.ts} +1 -1
  19. package/dist/useMaterialReactTable.d.ts +7 -1
  20. package/dist/utils/localization.d.ts +22 -14
  21. package/package.json +15 -13
  22. package/src/MaterialReactTable.tsx +117 -100
  23. package/src/body/MRT_TableBody.tsx +26 -27
  24. package/src/body/MRT_TableBodyCell.tsx +17 -6
  25. package/src/body/MRT_TableBodyRow.tsx +39 -23
  26. package/src/body/MRT_TableDetailPanel.tsx +38 -14
  27. package/src/buttons/MRT_EditActionButtons.tsx +51 -0
  28. package/src/buttons/MRT_ExpandAllButton.tsx +9 -4
  29. package/src/buttons/MRT_ExpandButton.tsx +12 -6
  30. package/src/buttons/MRT_ShowHideColumnsButton.tsx +12 -12
  31. package/src/buttons/MRT_ToggleColumnActionMenuButton.tsx +1 -1
  32. package/src/buttons/MRT_ToggleFiltersButton.tsx +23 -0
  33. package/src/buttons/MRT_ToggleRowActionMenuButton.tsx +65 -0
  34. package/src/footer/MRT_TableFooter.tsx +2 -17
  35. package/src/footer/MRT_TableFooterCell.tsx +18 -7
  36. package/src/footer/MRT_TableFooterRow.tsx +28 -14
  37. package/src/head/MRT_TableHead.tsx +6 -18
  38. package/src/head/MRT_TableHeadCell.tsx +37 -17
  39. package/src/head/MRT_TableHeadRow.tsx +42 -14
  40. package/src/index.tsx +2 -5
  41. package/src/inputs/MRT_DensePaddingSwitch.tsx +21 -0
  42. package/src/inputs/MRT_FilterTextField.tsx +5 -0
  43. package/src/inputs/MRT_SearchTextField.tsx +4 -4
  44. package/src/inputs/MRT_SelectAllCheckbox.tsx +11 -3
  45. package/src/inputs/MRT_SelectCheckbox.tsx +9 -2
  46. package/src/menus/MRT_ColumnActionMenu.tsx +29 -24
  47. package/src/menus/MRT_RowActionMenu.tsx +52 -0
  48. package/src/menus/MRT_ShowHideColumnsMenu.tsx +2 -2
  49. package/src/table/MRT_Table.tsx +13 -4
  50. package/src/table/MRT_TableContainer.tsx +9 -5
  51. package/src/table/MRT_TableSpacerCell.tsx +17 -1
  52. package/src/toolbar/MRT_TablePagination.tsx +37 -0
  53. package/src/toolbar/MRT_ToolbarBottom.tsx +58 -0
  54. package/src/toolbar/MRT_ToolbarButtons.tsx +27 -0
  55. package/src/toolbar/MRT_ToolbarTop.tsx +81 -0
  56. package/src/useMaterialReactTable.tsx +36 -32
  57. package/src/utils/localization.ts +32 -16
  58. package/dist/utils/overrideWarnings.d.ts +0 -1
  59. package/src/footer/MRT_TablePagination.tsx +0 -42
  60. package/src/toolbar/MRT_Toolbar.tsx +0 -39
  61. package/src/utils/overrideWarnings.ts +0 -41
@@ -1,58 +1,60 @@
1
1
  import { ChangeEvent, MouseEvent, ReactNode } from 'react';
2
- import { TableBodyProps, TableCellProps, TableContainerProps, TableFooterProps, TableHeadProps, TablePaginationProps, TableProps, TextFieldProps, ToolbarProps, TypographyProps } from '@mui/material';
3
- import { Cell, HeaderGroup, Row, TableInstance, TableOptions } from 'react-table';
2
+ import { TableBodyProps, TableCellProps, TableContainerProps, TableFooterProps, TableHeadProps, TablePaginationProps, TableProps, TableRowProps, TextFieldProps, ToolbarProps, TypographyProps } from '@mui/material';
3
+ import { Cell, Column, HeaderGroup, Row, TableInstance, TableOptions, UseExpandedOptions, UseFiltersOptions, UseGlobalFiltersOptions, UseGroupByOptions, UsePaginationOptions, UseResizeColumnsOptions, UseRowSelectOptions, UseRowStateOptions, UseSortByOptions } from 'react-table';
4
4
  import { MRT_Localization } from './utils/localization';
5
- export interface MaterialReactTableProps<D extends {} = {}> extends TableOptions<D> {
6
- enableColumnActions?: boolean;
5
+ export declare type MaterialReactTableProps<D extends {} = {}> = TableOptions<D> & UseExpandedOptions<D> & UseFiltersOptions<D> & UseGlobalFiltersOptions<D> & UseGroupByOptions<D> & UsePaginationOptions<D> & UseResizeColumnsOptions<D> & UseRowSelectOptions<D> & UseRowStateOptions<D> & UseSortByOptions<D> & {
6
+ defaultDensePadding?: boolean;
7
+ defaultShowFilters?: boolean;
8
+ disableColumnActions?: boolean;
9
+ disableColumnHiding?: boolean;
10
+ disableDensePaddingToggle?: boolean;
11
+ disableExpandAll?: boolean;
12
+ disableSelectAll?: boolean;
13
+ disableSubRowTree?: boolean;
7
14
  enableColumnGrouping?: boolean;
8
- enableColumnHiding?: boolean;
9
- enableColumnReordering?: boolean;
10
15
  enableColumnResizing?: boolean;
11
- enableExpandAll?: boolean;
12
- enableFiltering?: boolean;
13
- enablePagination?: boolean;
14
- enableSearch?: boolean;
15
- enableSelectAll?: boolean;
16
+ enableRowActions?: boolean;
17
+ enableRowEditing?: boolean;
16
18
  enableSelection?: boolean;
17
- enableSorting?: boolean;
18
- enableSubRowTree?: boolean;
19
+ hideTableFooter?: boolean;
20
+ hideTableHead?: boolean;
21
+ hideToolbarActions?: boolean;
22
+ hideToolbarBottom?: boolean;
23
+ hideToolbarTop?: boolean;
19
24
  isFetching?: boolean;
20
25
  isLoading?: boolean;
21
26
  localization?: Partial<MRT_Localization>;
27
+ muiSearchTextFieldProps?: TextFieldProps;
28
+ muiTableBodyCellProps?: TableCellProps | ((cell?: Cell<D>) => TableCellProps);
29
+ muiTableBodyProps?: TableBodyProps;
30
+ muiTableBodyRowProps?: TableRowProps | ((row: Row<D>) => TableRowProps);
31
+ muiTableContainerProps?: TableContainerProps;
32
+ muiTableDetailPanelProps?: TableCellProps | ((row: Row<D>) => TableCellProps);
33
+ muiTableFooterCellProps?: TableCellProps | ((column: Column<D>) => TableCellProps);
34
+ muiTableFooterProps?: TableFooterProps;
35
+ muiTableFooterRowProps?: TableRowProps | ((footerGroup: HeaderGroup<D>) => TableRowProps);
36
+ muiTableHeadCellProps?: TableCellProps | ((column: Column<D>) => TableCellProps);
37
+ muiTableHeadProps?: TableHeadProps;
38
+ muiTableHeadRowProps?: TableRowProps | ((row: HeaderGroup<D>) => TableRowProps);
39
+ muiTablePaginationProps?: Partial<TablePaginationProps> | ((tableInstance: TableInstance<D>) => Partial<TablePaginationProps>);
40
+ muiTableProps?: TableProps;
41
+ muiTableTitleProps?: TypographyProps;
42
+ muiTableToolbarBottomProps?: ToolbarProps | ((tableInstance: TableInstance<D>) => ToolbarProps);
43
+ muiTableToolbarTopProps?: ToolbarProps | ((tableInstance: TableInstance<D>) => ToolbarProps);
22
44
  onCellClick?: (event: MouseEvent<HTMLTableCellElement>, cell: Cell<D>) => void;
45
+ onDetailPanelClick?: (event: MouseEvent<HTMLTableCellElement>, row: Row<D>) => void;
46
+ onGlobalFilterChange?: (event: ChangeEvent<HTMLInputElement>) => void;
23
47
  onRowClick?: (event: MouseEvent<HTMLTableRowElement>, row: Row<D>) => void;
48
+ onRowEditSubmit?: (row: Row<D>) => Promise<void> | void;
24
49
  onRowExpandChange?: (event: MouseEvent<HTMLButtonElement>, row: Row<D>) => void;
25
50
  onRowSelectChange?: (event: ChangeEvent, row: Row<D>, selectedRows: Row<D>[]) => void;
26
- onSearchChange?: (event: ChangeEvent<HTMLInputElement>) => void;
27
- overrideTableBodyCellComponent?(cell: Cell<D>, tableInstance: TableInstance<D>): ReactNode;
28
- overrideTableBodyComponent?(tableInstance: TableInstance<D>): ReactNode;
29
- overrideTableBodyRowComponent?(row: Row<D>, tableInstance: TableInstance<D>): ReactNode;
30
- overrideTableDetailPanelComponent?(row: Row<D>, tableInstance: TableInstance<D>): ReactNode;
31
- overrideTableFooterCellComponent?(column: HeaderGroup<D>, tableInstance: TableInstance<D>): ReactNode;
32
- overrideTableFooterComponent?(tableInstance: TableInstance<D>): ReactNode;
33
- overrideTableFooterRowComponent?(footerGroup: HeaderGroup<D>, tableInstance: TableInstance<D>): ReactNode;
34
- overrideTableHeadCellComponent?(column: HeaderGroup<D>, tableInstance: TableInstance<D>): ReactNode;
35
- overrideTableHeadComponent?(tableInstance: TableInstance<D>): ReactNode;
36
- overrideTableHeadRowComponent?(headerGroup: HeaderGroup<D>, tableInstance: TableInstance<D>): ReactNode;
37
- overrideTablePaginationComponent?(tableInstance: TableInstance<D>): ReactNode;
38
- overrideTableToolbarComponent?(tableInstance: TableInstance<D>): ReactNode;
51
+ positionActionsColumn?: 'first' | 'last';
39
52
  positionPagination?: 'bottom' | 'top' | 'both';
40
- renderDetailPanel?: (rowData: Row<D>) => ReactNode;
41
- showFiltersInColumnHead?: boolean;
42
- showFooter?: boolean;
43
- showHead?: boolean;
44
- showToolbar?: boolean;
45
- surpressoverrideWarnings?: boolean;
46
- tableBodyProps?: TableBodyProps;
47
- tableContainerProps?: TableContainerProps;
48
- tableDetailPanelProps?: TableCellProps;
49
- tableFooterProps?: TableFooterProps;
50
- tableHeadProps?: TableHeadProps;
51
- tablePaginationProps?: TablePaginationProps;
52
- tableProps?: TableProps;
53
- tableSearchTextfieldProps?: TextFieldProps;
54
- tableTitleProps?: TypographyProps;
55
- tableToolbarProps?: ToolbarProps;
53
+ positionToolbarActions?: 'bottom' | 'top';
54
+ renderRowActions?: (row: Row<D>, tableInstance: TableInstance<D>) => ReactNode;
55
+ renderDetailPanel?: (row: Row<D>) => ReactNode;
56
+ renderRowActionMenuItems?: (rowData: Row<D>, tableInstance: TableInstance<D>, closeMenu: () => void) => ReactNode[];
56
57
  title?: string | ReactNode;
57
- }
58
- export declare const MaterialReactTable: <D extends {}>({ defaultColumn, enablePagination, enableSorting, enableSubRowTree, localization, positionPagination, showFiltersInColumnHead, showFooter, showHead, showToolbar, ...rest }: MaterialReactTableProps<D>) => JSX.Element;
58
+ };
59
+ declare const _default: <D extends {}>({ defaultColumn, localization, positionActionsColumn, positionPagination, positionToolbarActions, ...rest }: MaterialReactTableProps<D>) => JSX.Element;
60
+ export default _default;
@@ -0,0 +1,7 @@
1
+ import { FC } from 'react';
2
+ import { Row } from 'react-table';
3
+ interface Props {
4
+ row: Row;
5
+ }
6
+ export declare const MRT_EditActionButtons: FC<Props>;
7
+ export {};
@@ -0,0 +1,4 @@
1
+ import { FC } from 'react';
2
+ declare type Props = {};
3
+ export declare const MRT_ToggleFiltersButton: FC<Props>;
4
+ export {};
@@ -0,0 +1,7 @@
1
+ import { FC } from 'react';
2
+ import { Row } from 'react-table';
3
+ interface Props {
4
+ row: Row;
5
+ }
6
+ export declare const MRT_ToggleRowActionMenuButton: FC<Props>;
7
+ export {};
@@ -1,5 +1,6 @@
1
1
  import { FC } from 'react';
2
2
  import { HeaderGroup } from 'react-table';
3
+ export declare const StyledTableHeadCell: import("@emotion/styled").StyledComponent<import("@mui/material").TableCellProps & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, {}, {}>;
3
4
  interface Props {
4
5
  column: HeaderGroup;
5
6
  }
package/dist/index.d.ts CHANGED
@@ -1,3 +1,3 @@
1
- import { MaterialReactTable, MaterialReactTableProps } from './MaterialReactTable';
1
+ import MaterialReactTable from './MaterialReactTable';
2
2
  export default MaterialReactTable;
3
- export type { MaterialReactTableProps };
3
+ export * from './MaterialReactTable';
@@ -0,0 +1,5 @@
1
+ import { FC } from 'react';
2
+ interface Props {
3
+ }
4
+ export declare const MRT_DensePaddingSwitch: FC<Props>;
5
+ export {};