material-react-table 1.2.4 → 1.2.6

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.
package/README.md CHANGED
@@ -56,7 +56,7 @@ _All features can easily be enabled/disabled_
56
56
 
57
57
  _**Fully Fleshed out [Docs](https://www.material-react-table.com/docs/guides#guides) are available for all features**_
58
58
 
59
- - [x] < 38kb gzipped - [Bundlephobia](https://bundlephobia.com/package/material-react-table)
59
+ - [x] < 40kb gzipped - [Bundlephobia](https://bundlephobia.com/package/material-react-table)
60
60
  - [x] Advanced TypeScript Generics Support (TypeScript Optional)
61
61
  - [x] Aggregation and Grouping (Sum, Average, Count, etc.)
62
62
  - [x] Click To Copy Cell Values
@@ -398,7 +398,7 @@ export declare type MRT_DisplayColumnIds = 'mrt-row-actions' | 'mrt-row-drag' |
398
398
  * See the full props list on the official docs site:
399
399
  * @link https://www.material-react-table.com/docs/api/props
400
400
  */
401
- export declare type MaterialReactTableProps<TData extends Record<string, any> = {}> = Omit<Partial<TableOptions<TData>>, 'columns' | 'data' | 'defaultColumn' | 'enableRowSelection' | 'expandRowsFn' | 'initialState' | 'onStateChange' | 'state'> & {
401
+ export declare type MaterialReactTableProps<TData extends Record<string, any> = {}> = Omit<Partial<TableOptions<TData>>, 'columns' | 'data' | 'defaultColumn' | 'enableRowSelection' | 'expandRowsFn' | 'globalFilterFn' | 'initialState' | 'onStateChange' | 'state'> & {
402
402
  columnFilterModeOptions?: (MRT_FilterOption | string)[] | null;
403
403
  /**
404
404
  * The columns to display in the table. `accessorKey`s or `accessorFn`s must match keys in the `data` prop.
@@ -456,8 +456,9 @@ export declare type MaterialReactTableProps<TData extends Record<string, any> =
456
456
  enableTableHead?: boolean;
457
457
  enableToolbarInternalActions?: boolean;
458
458
  enableTopToolbar?: boolean;
459
- globalFilterModeOptions?: (MRT_FilterOption | string)[] | null;
460
459
  expandRowsFn?: (dataRow: TData) => TData[];
460
+ globalFilterFn?: MRT_FilterOption;
461
+ globalFilterModeOptions?: MRT_FilterOption[] | null;
461
462
  icons?: Partial<MRT_Icons>;
462
463
  initialState?: Partial<MRT_TableState<TData>>;
463
464
  /**
@@ -4,6 +4,7 @@ export * from './MaterialReactTable';
4
4
  import type { MRT_Icons } from './icons';
5
5
  export type { MRT_Icons };
6
6
  import { MRT_CopyButton } from './buttons/MRT_CopyButton';
7
+ import { MRT_FilterOptionMenu } from './menus/MRT_FilterOptionMenu';
7
8
  import { MRT_FullScreenToggleButton } from './buttons/MRT_FullScreenToggleButton';
8
9
  import { MRT_GlobalFilterTextField } from './inputs/MRT_GlobalFilterTextField';
9
10
  import { MRT_ShowHideColumnsButton } from './buttons/MRT_ShowHideColumnsButton';
@@ -12,4 +13,4 @@ import { MRT_ToggleDensePaddingButton } from './buttons/MRT_ToggleDensePaddingBu
12
13
  import { MRT_ToggleFiltersButton } from './buttons/MRT_ToggleFiltersButton';
13
14
  import { MRT_ToggleGlobalFilterButton } from './buttons/MRT_ToggleGlobalFilterButton';
14
15
  import { MRT_ToolbarInternalButtons } from './toolbar/MRT_ToolbarInternalButtons';
15
- export { MRT_CopyButton, MRT_FullScreenToggleButton, MRT_GlobalFilterTextField, MRT_ShowHideColumnsButton, MRT_TablePagination, MRT_ToggleDensePaddingButton, MRT_ToggleFiltersButton, MRT_ToggleGlobalFilterButton, MRT_ToolbarInternalButtons, };
16
+ export { MRT_CopyButton, MRT_FilterOptionMenu, MRT_FullScreenToggleButton, MRT_GlobalFilterTextField, MRT_ShowHideColumnsButton, MRT_TablePagination, MRT_ToggleDensePaddingButton, MRT_ToggleFiltersButton, MRT_ToggleGlobalFilterButton, MRT_ToolbarInternalButtons, };
package/dist/cjs/index.js CHANGED
@@ -1505,7 +1505,7 @@ const MRT_TableHeadCellColumnActionsButton = ({ header, table, }) => {
1505
1505
  const iconButtonProps = Object.assign(Object.assign({}, mTableHeadCellColumnActionsButtonProps), mcTableHeadCellColumnActionsButtonProps);
1506
1506
  return (React__default["default"].createElement(React__default["default"].Fragment, null,
1507
1507
  React__default["default"].createElement(Tooltip__default["default"], { arrow: true, enterDelay: 1000, enterNextDelay: 1000, placement: "top", title: (_a = iconButtonProps === null || iconButtonProps === void 0 ? void 0 : iconButtonProps.title) !== null && _a !== void 0 ? _a : localization.columnActions },
1508
- React__default["default"].createElement(IconButton__default["default"], Object.assign({ "aria-label": localization.columnActions, onClick: handleClick, size: "small" }, iconButtonProps, { sx: (theme) => (Object.assign({ height: '2rem', m: '-0.2rem', opacity: 0.5, transition: 'opacity 150ms', width: '2rem', '&:hover': {
1508
+ React__default["default"].createElement(IconButton__default["default"], Object.assign({ "aria-label": localization.columnActions, onClick: handleClick, size: "small" }, iconButtonProps, { sx: (theme) => (Object.assign({ height: '2rem', m: '-0.2rem', opacity: 0.5, transform: 'scale(0.85)', transition: 'opacity 150ms', width: '2rem', '&:hover': {
1509
1509
  opacity: 1,
1510
1510
  } }, ((iconButtonProps === null || iconButtonProps === void 0 ? void 0 : iconButtonProps.sx) instanceof Function
1511
1511
  ? iconButtonProps.sx(theme)
@@ -2640,14 +2640,11 @@ const MRT_TableRoot = (props) => {
2640
2640
  const tablePaperRef = React.useRef(null);
2641
2641
  const topToolbarRef = React.useRef(null);
2642
2642
  const initialState = React.useMemo(() => {
2643
- var _a, _b;
2643
+ var _a, _b, _c;
2644
2644
  const initState = (_a = props.initialState) !== null && _a !== void 0 ? _a : {};
2645
2645
  initState.columnOrder =
2646
2646
  (_b = initState.columnOrder) !== null && _b !== void 0 ? _b : getDefaultColumnOrderIds(props);
2647
- initState.globalFilterFn =
2648
- props.globalFilterFn instanceof String
2649
- ? props.globalFilterFn
2650
- : 'fuzzy';
2647
+ initState.globalFilterFn = (_c = props.globalFilterFn) !== null && _c !== void 0 ? _c : 'fuzzy';
2651
2648
  return initState;
2652
2649
  }, []);
2653
2650
  const [columnFilterFns, setColumnFilterFns] = React.useState(() => Object.assign({}, ...getAllLeafColumnDefs(props.columns).map((col) => {
@@ -2881,7 +2878,7 @@ const MRT_Localization_EN = {
2881
2878
  const MaterialReactTable = (_a) => {
2882
2879
  var { aggregationFns, autoResetExpanded = false, columnResizeMode = 'onEnd', defaultColumn, defaultDisplayColumn, editingMode = 'modal', enableBottomToolbar = true, enableColumnActions = true, enableColumnFilters = true, enableColumnOrdering = false, enableColumnResizing = false, enableDensityToggle = true, enableExpandAll = true, enableFilters = true, enableFullScreenToggle = true, enableGlobalFilter = true, enableGlobalFilterRankedResults = true, enableGrouping = false, enableHiding = true, enableMultiRowSelection = true, enableMultiSort = true, enablePagination = true, enablePinning = false, enableRowSelection = false, enableSelectAll = true, enableSorting = true, enableStickyHeader = false, enableTableFooter = true, enableTableHead = true, enableToolbarInternalActions = true, enableTopToolbar = true, filterFns, icons, localization, positionActionsColumn = 'first', positionExpandColumn = 'first', positionGlobalFilter = 'right', positionPagination = 'bottom', positionToolbarAlertBanner = 'top', positionToolbarDropZone = 'top', rowNumberMode = 'original', selectAllMode = 'page', sortingFns } = _a, rest = __rest(_a, ["aggregationFns", "autoResetExpanded", "columnResizeMode", "defaultColumn", "defaultDisplayColumn", "editingMode", "enableBottomToolbar", "enableColumnActions", "enableColumnFilters", "enableColumnOrdering", "enableColumnResizing", "enableDensityToggle", "enableExpandAll", "enableFilters", "enableFullScreenToggle", "enableGlobalFilter", "enableGlobalFilterRankedResults", "enableGrouping", "enableHiding", "enableMultiRowSelection", "enableMultiSort", "enablePagination", "enablePinning", "enableRowSelection", "enableSelectAll", "enableSorting", "enableStickyHeader", "enableTableFooter", "enableTableHead", "enableToolbarInternalActions", "enableTopToolbar", "filterFns", "icons", "localization", "positionActionsColumn", "positionExpandColumn", "positionGlobalFilter", "positionPagination", "positionToolbarAlertBanner", "positionToolbarDropZone", "rowNumberMode", "selectAllMode", "sortingFns"]);
2883
2880
  const _icons = React.useMemo(() => (Object.assign(Object.assign({}, MRT_Default_Icons), icons)), []);
2884
- const _localization = React.useMemo(() => (Object.assign(Object.assign({}, MRT_Localization_EN), localization)), []);
2881
+ const _localization = React.useMemo(() => (Object.assign(Object.assign({}, MRT_Localization_EN), localization)), [localization]);
2885
2882
  const _aggregationFns = React.useMemo(() => (Object.assign(Object.assign({}, MRT_AggregationFns), aggregationFns)), []);
2886
2883
  const _filterFns = React.useMemo(() => (Object.assign(Object.assign({}, MRT_FilterFns), filterFns)), []);
2887
2884
  const _sortingFns = React.useMemo(() => (Object.assign(Object.assign({}, MRT_SortingFns), sortingFns)), []);
@@ -2891,6 +2888,7 @@ const MaterialReactTable = (_a) => {
2891
2888
  };
2892
2889
 
2893
2890
  exports.MRT_CopyButton = MRT_CopyButton;
2891
+ exports.MRT_FilterOptionMenu = MRT_FilterOptionMenu;
2894
2892
  exports.MRT_FullScreenToggleButton = MRT_FullScreenToggleButton;
2895
2893
  exports.MRT_GlobalFilterTextField = MRT_GlobalFilterTextField;
2896
2894
  exports.MRT_ShowHideColumnsButton = MRT_ShowHideColumnsButton;