material-react-table 0.5.7 → 0.6.0

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 (67) hide show
  1. package/dist/MaterialReactTable.d.ts +8 -2
  2. package/dist/body/MRT_TableBodyCell.d.ts +1 -1
  3. package/dist/body/MRT_TableBodyRow.d.ts +1 -1
  4. package/dist/body/MRT_TableDetailPanel.d.ts +1 -1
  5. package/dist/buttons/MRT_EditActionButtons.d.ts +1 -1
  6. package/dist/buttons/MRT_ExpandButton.d.ts +1 -1
  7. package/dist/buttons/MRT_ToggleColumnActionMenuButton.d.ts +1 -1
  8. package/dist/buttons/MRT_ToggleRowActionMenuButton.d.ts +1 -1
  9. package/dist/enums.d.ts +12 -0
  10. package/dist/filtersFNs.d.ts +20 -0
  11. package/dist/footer/MRT_TableFooterCell.d.ts +1 -1
  12. package/dist/footer/MRT_TableFooterRow.d.ts +1 -1
  13. package/dist/head/MRT_TableHeadCell.d.ts +1 -1
  14. package/dist/head/MRT_TableHeadRow.d.ts +1 -1
  15. package/dist/inputs/MRT_EditCellTextField.d.ts +1 -1
  16. package/dist/inputs/MRT_FilterTextField.d.ts +1 -1
  17. package/dist/inputs/MRT_SelectCheckbox.d.ts +1 -1
  18. package/dist/localization.d.ts +44 -44
  19. package/dist/material-react-table.cjs.development.js +569 -360
  20. package/dist/material-react-table.cjs.development.js.map +1 -1
  21. package/dist/material-react-table.cjs.production.min.js +1 -1
  22. package/dist/material-react-table.cjs.production.min.js.map +1 -1
  23. package/dist/material-react-table.esm.js +570 -361
  24. package/dist/material-react-table.esm.js.map +1 -1
  25. package/dist/menus/MRT_ColumnActionMenu.d.ts +9 -2
  26. package/dist/menus/MRT_FilterTypeMenu.d.ts +1 -1
  27. package/dist/menus/MRT_RowActionMenu.d.ts +1 -1
  28. package/dist/menus/MRT_ShowHideColumnsMenu.d.ts +3 -2
  29. package/dist/menus/MRT_ShowHideColumnsMenuItems.d.ts +8 -0
  30. package/dist/useMRT.d.ts +1 -1
  31. package/package.json +2 -2
  32. package/src/MaterialReactTable.tsx +5 -9
  33. package/src/body/MRT_TableBody.tsx +1 -1
  34. package/src/body/MRT_TableBodyCell.tsx +1 -1
  35. package/src/body/MRT_TableBodyRow.tsx +1 -1
  36. package/src/body/MRT_TableDetailPanel.tsx +1 -1
  37. package/src/buttons/MRT_EditActionButtons.tsx +5 -8
  38. package/src/buttons/MRT_ExpandAllButton.tsx +2 -2
  39. package/src/buttons/MRT_ExpandButton.tsx +3 -3
  40. package/src/buttons/MRT_FullScreenToggleButton.tsx +2 -2
  41. package/src/buttons/MRT_ShowHideColumnsButton.tsx +4 -55
  42. package/src/buttons/MRT_ToggleColumnActionMenuButton.tsx +4 -3
  43. package/src/buttons/MRT_ToggleDensePaddingButton.tsx +2 -2
  44. package/src/buttons/MRT_ToggleFiltersButton.tsx +2 -2
  45. package/src/buttons/MRT_ToggleRowActionMenuButton.tsx +4 -8
  46. package/src/buttons/MRT_ToggleSearchButton.tsx +1 -1
  47. package/src/enums.ts +12 -0
  48. package/src/filtersFNs.ts +42 -0
  49. package/src/footer/MRT_TableFooter.tsx +1 -1
  50. package/src/footer/MRT_TableFooterCell.tsx +1 -1
  51. package/src/footer/MRT_TableFooterRow.tsx +1 -1
  52. package/src/head/MRT_TableHead.tsx +1 -1
  53. package/src/head/MRT_TableHeadCell.tsx +22 -18
  54. package/src/head/MRT_TableHeadCellActions.tsx +1 -1
  55. package/src/head/MRT_TableHeadRow.tsx +1 -1
  56. package/src/inputs/MRT_EditCellTextField.tsx +1 -1
  57. package/src/inputs/MRT_FilterTextField.tsx +99 -21
  58. package/src/inputs/MRT_SearchTextField.tsx +3 -3
  59. package/src/inputs/MRT_SelectCheckbox.tsx +5 -5
  60. package/src/localization.ts +89 -88
  61. package/src/menus/MRT_ColumnActionMenu.tsx +109 -56
  62. package/src/menus/MRT_FilterTypeMenu.tsx +63 -26
  63. package/src/menus/MRT_RowActionMenu.tsx +4 -10
  64. package/src/menus/MRT_ShowHideColumnsMenu.tsx +54 -33
  65. package/src/menus/MRT_ShowHideColumnsMenuItems.tsx +57 -0
  66. package/src/toolbar/MRT_ToolbarAlertBanner.tsx +3 -3
  67. package/src/useMRT.tsx +36 -14
@@ -1,8 +1,9 @@
1
1
  import { ChangeEvent, FC, MouseEvent, ReactNode } from 'react';
2
2
  import { AlertProps, IconButtonProps, LinearProgressProps, SkeletonProps, TableBodyProps, TableCellProps, TableContainerProps, TableFooterProps, TableHeadProps, TablePaginationProps, TableProps, TableRowProps, TextFieldProps, ToolbarProps } from '@mui/material';
3
- import { Cell, Column, ColumnInstance, HeaderGroup, Row, TableInstance, TableOptions, TableState, UseColumnOrderInstanceProps, UseColumnOrderState, UseExpandedInstanceProps, UseExpandedOptions, UseExpandedRowProps, UseExpandedState, UseFiltersColumnOptions, UseFiltersColumnProps, UseFiltersInstanceProps, UseFiltersOptions, UseFiltersState, UseGlobalFiltersColumnOptions, UseGlobalFiltersInstanceProps, UseGlobalFiltersOptions, UseGlobalFiltersState, UseGroupByCellProps, UseGroupByColumnOptions, UseGroupByColumnProps, UseGroupByInstanceProps, UseGroupByOptions, UseGroupByRowProps, UseGroupByState, UsePaginationInstanceProps, UsePaginationOptions, UsePaginationState, UseResizeColumnsColumnOptions, UseResizeColumnsColumnProps, UseResizeColumnsOptions, UseResizeColumnsState, UseRowSelectInstanceProps, UseRowSelectOptions, UseRowSelectRowProps, UseRowSelectState, UseRowStateCellProps, UseRowStateInstanceProps, UseRowStateOptions, UseRowStateRowProps, UseRowStateState, UseSortByColumnOptions, UseSortByColumnProps, UseSortByInstanceProps, UseSortByOptions, UseSortByState, UseTableHeaderGroupProps, UseTableInstanceProps, UseTableOptions } from 'react-table';
3
+ import { Cell, Column, ColumnInstance, FilterType, HeaderGroup, Row, TableInstance, TableOptions, TableState, UseColumnOrderInstanceProps, UseColumnOrderState, UseExpandedInstanceProps, UseExpandedOptions, UseExpandedRowProps, UseExpandedState, UseFiltersColumnOptions, UseFiltersColumnProps, UseFiltersInstanceProps, UseFiltersOptions, UseFiltersState, UseGlobalFiltersColumnOptions, UseGlobalFiltersInstanceProps, UseGlobalFiltersOptions, UseGlobalFiltersState, UseGroupByCellProps, UseGroupByColumnOptions, UseGroupByColumnProps, UseGroupByInstanceProps, UseGroupByOptions, UseGroupByRowProps, UseGroupByState, UsePaginationInstanceProps, UsePaginationOptions, UsePaginationState, UseResizeColumnsColumnOptions, UseResizeColumnsColumnProps, UseResizeColumnsOptions, UseResizeColumnsState, UseRowSelectInstanceProps, UseRowSelectOptions, UseRowSelectRowProps, UseRowSelectState, UseRowStateCellProps, UseRowStateInstanceProps, UseRowStateOptions, UseRowStateRowProps, UseRowStateState, UseSortByColumnOptions, UseSortByColumnProps, UseSortByInstanceProps, UseSortByOptions, UseSortByState, UseTableHeaderGroupProps, UseTableInstanceProps, UseTableOptions } from 'react-table';
4
4
  import { MRT_Localization } from './localization';
5
5
  import { MRT_Icons } from './icons';
6
+ import { MRT_FILTER_TYPE } from './enums';
6
7
  export declare type MRT_TableOptions<D extends {} = {}> = TableOptions<D> & UseExpandedOptions<D> & UseFiltersOptions<D> & UseGlobalFiltersOptions<D> & UseGroupByOptions<D> & UsePaginationOptions<D> & UseResizeColumnsOptions<D> & UseRowSelectOptions<D> & UseRowStateOptions<D> & UseSortByOptions<D> & {
7
8
  columns: (Column<D> & MRT_ColumnInterface)[];
8
9
  data: D[];
@@ -30,6 +31,11 @@ export declare type MRT_ColumnInterface<D extends {} = {}> = UseFiltersColumnOpt
30
31
  Header?: string;
31
32
  disableFilters?: boolean;
32
33
  editable?: boolean;
34
+ filter?: MRT_FilterType | string | FilterType<D>;
35
+ filterSelectOptions?: (string | {
36
+ text: string;
37
+ value: string;
38
+ })[];
33
39
  muiTableBodyCellEditTextFieldProps?: TextFieldProps | ((cell: MRT_Cell<D>) => TextFieldProps);
34
40
  muiTableBodyCellProps?: TableCellProps | ((cell: MRT_Cell<D>) => TableCellProps);
35
41
  muiTableFooterCellProps?: TableCellProps | ((column: Column<D>) => TableCellProps);
@@ -48,7 +54,7 @@ export declare type MRT_Row<D extends {} = {}> = Row<D> & UseExpandedRowProps<D>
48
54
  cells: MRT_Cell<D>[];
49
55
  };
50
56
  export declare type MRT_Cell<D extends {} = {}, _V = any> = Cell<D> & UseGroupByCellProps<D> & UseRowStateCellProps<D> & {};
51
- export declare type MRT_FilterType = 'contains' | 'empty' | 'endsWith' | 'equals' | 'fuzzy' | 'notEmpty' | 'notEquals' | 'startsWith';
57
+ export declare type MRT_FilterType = MRT_FILTER_TYPE | Function;
52
58
  export declare type MRT_TableState<D extends {} = {}> = TableState<D> & UseColumnOrderState<D> & UseExpandedState<D> & UseFiltersState<D> & UseGlobalFiltersState<D> & UseGroupByState<D> & UsePaginationState<D> & UseResizeColumnsState<D> & UseRowSelectState<D> & UseRowStateState<D> & UseSortByState<D> & {
53
59
  currentEditingRow: MRT_Row<D> | null;
54
60
  currentFilterTypes: {
@@ -1,5 +1,5 @@
1
1
  import { FC } from 'react';
2
- import { MRT_Cell } from '..';
2
+ import type { MRT_Cell } from '..';
3
3
  export declare const commonTableBodyCellStyles: (densePadding: boolean) => {
4
4
  p: string;
5
5
  transition: string;
@@ -1,5 +1,5 @@
1
1
  import { FC } from 'react';
2
- import { MRT_Row } from '..';
2
+ import type { MRT_Row } from '..';
3
3
  interface Props {
4
4
  row: MRT_Row;
5
5
  }
@@ -1,5 +1,5 @@
1
1
  import { FC } from 'react';
2
- import { MRT_Row } from '..';
2
+ import type { MRT_Row } from '..';
3
3
  interface Props {
4
4
  row: MRT_Row;
5
5
  }
@@ -1,5 +1,5 @@
1
1
  import { FC } from 'react';
2
- import { MRT_Row } from '..';
2
+ import type { MRT_Row } from '..';
3
3
  interface Props {
4
4
  row: MRT_Row;
5
5
  }
@@ -1,5 +1,5 @@
1
1
  import { FC } from 'react';
2
- import { MRT_Row } from '..';
2
+ import type { MRT_Row } from '..';
3
3
  interface Props {
4
4
  row: MRT_Row;
5
5
  }
@@ -1,5 +1,5 @@
1
1
  import { FC } from 'react';
2
- import { MRT_HeaderGroup } from '..';
2
+ import type { MRT_HeaderGroup } from '..';
3
3
  interface Props {
4
4
  column: MRT_HeaderGroup;
5
5
  }
@@ -1,5 +1,5 @@
1
1
  import { FC } from 'react';
2
- import { MRT_Row } from '..';
2
+ import type { MRT_Row } from '..';
3
3
  interface Props {
4
4
  row: MRT_Row;
5
5
  }
@@ -0,0 +1,12 @@
1
+ export declare enum MRT_FILTER_TYPE {
2
+ CONTAINS = "contains",
3
+ EMPTY = "empty",
4
+ ENDS_WITH = "endsWith",
5
+ EQUALS = "equals",
6
+ FUZZY = "fuzzy",
7
+ GREATER_THAN = "greaterThan",
8
+ LESS_THAN = "lessThan",
9
+ NOT_EMPTY = "notEmpty",
10
+ NOT_EQUALS = "notEquals",
11
+ STARTS_WITH = "startsWith"
12
+ }
@@ -1,4 +1,8 @@
1
1
  import { MRT_Row } from '.';
2
+ export declare const fuzzySearchFN: {
3
+ (rows: MRT_Row[], columnIds: string[], filterValue: string | number): MRT_Row<{}>[];
4
+ autoRemove(val: any): boolean;
5
+ };
2
6
  export declare const fuzzyFilterFN: {
3
7
  (rows: MRT_Row[], id: string, filterValue: string | number): MRT_Row<{}>[];
4
8
  autoRemove(val: any): boolean;
@@ -23,6 +27,14 @@ export declare const notEqualsFilterFN: {
23
27
  (rows: MRT_Row[], id: string, filterValue: string | number): MRT_Row<{}>[];
24
28
  autoRemove(val: any): boolean;
25
29
  };
30
+ export declare const greaterThanFilterFN: {
31
+ (rows: MRT_Row[], id: string, filterValue: string | number): MRT_Row<{}>[];
32
+ autoRemove(val: any): boolean;
33
+ };
34
+ export declare const lessThanFilterFN: {
35
+ (rows: MRT_Row[], id: string, filterValue: string | number): MRT_Row<{}>[];
36
+ autoRemove(val: any): boolean;
37
+ };
26
38
  export declare const emptyFilterFN: {
27
39
  (rows: MRT_Row[], id: string, _filterValue: string | number): MRT_Row<{}>[];
28
40
  autoRemove(val: any): boolean;
@@ -44,6 +56,14 @@ export declare const defaultFilterFNs: {
44
56
  (rows: MRT_Row[], id: string, filterValue: string | number): MRT_Row<{}>[];
45
57
  autoRemove(val: any): boolean;
46
58
  };
59
+ greaterThan: {
60
+ (rows: MRT_Row[], id: string, filterValue: string | number): MRT_Row<{}>[];
61
+ autoRemove(val: any): boolean;
62
+ };
63
+ lessThan: {
64
+ (rows: MRT_Row[], id: string, filterValue: string | number): MRT_Row<{}>[];
65
+ autoRemove(val: any): boolean;
66
+ };
47
67
  equals: {
48
68
  (rows: MRT_Row[], id: string, filterValue: string | number): MRT_Row<{}>[];
49
69
  autoRemove(val: any): boolean;
@@ -1,5 +1,5 @@
1
1
  import { FC } from 'react';
2
- import { MRT_HeaderGroup } from '..';
2
+ import type { MRT_HeaderGroup } from '..';
3
3
  interface Props {
4
4
  column: MRT_HeaderGroup;
5
5
  }
@@ -1,5 +1,5 @@
1
1
  import { FC } from 'react';
2
- import { MRT_HeaderGroup } from '..';
2
+ import type { MRT_HeaderGroup } from '..';
3
3
  interface Props {
4
4
  footerGroup: MRT_HeaderGroup;
5
5
  }
@@ -1,5 +1,5 @@
1
1
  import { FC } from 'react';
2
- import { MRT_HeaderGroup } from '..';
2
+ import type { MRT_HeaderGroup } from '..';
3
3
  export declare const commonTableHeadCellStyles: (densePadding: boolean, enableColumnResizing?: boolean | undefined) => {
4
4
  fontWeight: string;
5
5
  height: string;
@@ -1,5 +1,5 @@
1
1
  import { FC } from 'react';
2
- import { MRT_HeaderGroup } from '..';
2
+ import type { MRT_HeaderGroup } from '..';
3
3
  interface Props {
4
4
  headerGroup: MRT_HeaderGroup;
5
5
  }
@@ -1,5 +1,5 @@
1
1
  import { FC } from 'react';
2
- import { MRT_Cell } from '..';
2
+ import type { MRT_Cell } from '..';
3
3
  interface Props {
4
4
  cell: MRT_Cell;
5
5
  }
@@ -1,5 +1,5 @@
1
1
  import { FC } from 'react';
2
- import { MRT_HeaderGroup } from '..';
2
+ import type { MRT_HeaderGroup } from '..';
3
3
  interface Props {
4
4
  column: MRT_HeaderGroup;
5
5
  }
@@ -1,5 +1,5 @@
1
1
  import { FC } from 'react';
2
- import { MRT_Row } from '..';
2
+ import type { MRT_Row } from '..';
3
3
  interface Props {
4
4
  row?: MRT_Row;
5
5
  selectAll?: boolean;
@@ -1,47 +1,47 @@
1
1
  export interface MRT_Localization {
2
- actionsHeadColumnTitle: string;
3
- columnActionMenuButtonTitle: string;
4
- columnActionMenuItemClearSort: string;
5
- columnActionMenuItemGroupBy: string;
6
- columnActionMenuItemHideColumn: string;
7
- columnActionMenuItemSortAsc: string;
8
- columnActionMenuItemSortDesc: string;
9
- columnActionMenuItemUnGroupBy: string;
10
- columnShowHideMenuHideAll: string;
11
- columnShowHideMenuShowAll: string;
12
- expandAllButtonTitle: string;
13
- expandButtonTitle: string;
14
- filterApplied: string;
15
- filterMenuItemContains: string;
16
- filterMenuItemEmpty: string;
17
- filterMenuItemEndsWith: string;
18
- filterMenuItemEquals: string;
19
- filterMenuItemFuzzy: string;
20
- filterMenuItemNotEmpty: string;
21
- filterMenuItemNotEquals: string;
22
- filterMenuItemStartsWith: string;
23
- filterMenuTitle: string;
24
- filterTextFieldChangeFilterButtonTitle: string;
25
- filterTextFieldChipLabelEmpty: string;
26
- filterTextFieldChipLabelNotEmpty: string;
27
- filterTextFieldClearButtonTitle: string;
28
- filterTextFieldPlaceholder: string;
29
- rowActionButtonCancel: string;
30
- rowActionButtonSave: string;
31
- rowActionMenuButtonTitle: string;
32
- rowActionMenuItemEdit: string;
33
- rowActionsColumnTitle: string;
34
- searchTextFieldClearButtonTitle: string;
35
- searchTextFieldPlaceholder: string;
36
- selectAllCheckboxTitle: string;
37
- selectCheckboxTitle: string;
38
- showHideColumnsButtonTitle: string;
39
- toggleDensePaddingSwitchTitle: string;
40
- toggleFilterButtonTitle: string;
41
- toggleFullScreenButtonTitle: string;
42
- toggleSearchButtonTitle: string;
43
- toolbarAlertGroupedByMessage: string;
44
- toolbarAlertGroupedThenByMessage: string;
45
- toolbarAlertSelectionMessage: string;
2
+ actions: string;
3
+ cancel: string;
4
+ changeFilterMode: string;
5
+ clearFilter: string;
6
+ clearSearch: string;
7
+ clearSort: string;
8
+ columnActions: string;
9
+ edit: string;
10
+ expand: string;
11
+ expandAll: string;
12
+ filterByColumn: string;
13
+ filterContains: string;
14
+ filterEmpty: string;
15
+ filterEndsWith: string;
16
+ filterEquals: string;
17
+ filterFuzzy: string;
18
+ filterGreaterThan: string;
19
+ filterLessThan: string;
20
+ filterMode: string;
21
+ filterNotEmpty: string;
22
+ filterNotEquals: string;
23
+ filterStartsWith: string;
24
+ filteringByColumn: string;
25
+ groupByColumn: string;
26
+ groupedBy: string;
27
+ hideAll: string;
28
+ hideColumn: string;
29
+ rowActions: string;
30
+ save: string;
31
+ search: string;
32
+ selectedCountOfRowCountRowsSelected: string;
33
+ showAll: string;
34
+ showHideColumns: string;
35
+ showAllColumns: string;
36
+ showHideFilters: string;
37
+ showHideSearch: string;
38
+ sortByColumnAsc: string;
39
+ sortByColumnDesc: string;
40
+ thenBy: string;
41
+ toggleDensePadding: string;
42
+ toggleFullScreen: string;
43
+ toggleSelectAll: string;
44
+ toggleSelectRow: string;
45
+ ungroupByColumn: string;
46
46
  }
47
47
  export declare const MRT_DefaultLocalization_EN: MRT_Localization;