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.
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
2
  import type { MRT_Cell, MRT_Column, MRT_ColumnDef, MRT_FilterOption, MRT_Row, MRT_TableInstance, MRT_TableState, MaterialReactTableProps, MRT_Localization } from '..';
3
- export declare const MRT_TableRoot: <TData extends Record<string, any> = {}>(props: Omit<Partial<import("@tanstack/table-core").TableOptions<TData>>, "state" | "data" | "onStateChange" | "initialState" | "columns" | "defaultColumn" | "enableRowSelection" | "expandRowsFn"> & {
3
+ export declare const MRT_TableRoot: <TData extends Record<string, any> = {}>(props: Omit<Partial<import("@tanstack/table-core").TableOptions<TData>>, "state" | "data" | "onStateChange" | "initialState" | "columns" | "defaultColumn" | "globalFilterFn" | "enableRowSelection" | "expandRowsFn"> & {
4
4
  columnFilterModeOptions?: (string | (string & Record<never, never>))[] | null | undefined;
5
5
  columns: MRT_ColumnDef<TData>[];
6
6
  data: TData[];
@@ -40,8 +40,9 @@ export declare const MRT_TableRoot: <TData extends Record<string, any> = {}>(pro
40
40
  enableTableHead?: boolean | undefined;
41
41
  enableToolbarInternalActions?: boolean | undefined;
42
42
  enableTopToolbar?: boolean | undefined;
43
- globalFilterModeOptions?: (string | (string & Record<never, never>))[] | null | undefined;
44
43
  expandRowsFn?: ((dataRow: TData) => TData[]) | undefined;
44
+ globalFilterFn?: MRT_FilterOption | undefined;
45
+ globalFilterModeOptions?: MRT_FilterOption[] | null | undefined;
45
46
  icons?: Partial<import("..").MRT_Icons> | undefined;
46
47
  initialState?: Partial<MRT_TableState<TData>> | undefined;
47
48
  localization?: Partial<MRT_Localization> | undefined;
@@ -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, };
@@ -1426,7 +1426,7 @@ const MRT_TableHeadCellColumnActionsButton = ({ header, table, }) => {
1426
1426
  const iconButtonProps = Object.assign(Object.assign({}, mTableHeadCellColumnActionsButtonProps), mcTableHeadCellColumnActionsButtonProps);
1427
1427
  return (React.createElement(React.Fragment, null,
1428
1428
  React.createElement(Tooltip, { 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 },
1429
- React.createElement(IconButton, 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': {
1429
+ React.createElement(IconButton, 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': {
1430
1430
  opacity: 1,
1431
1431
  } }, ((iconButtonProps === null || iconButtonProps === void 0 ? void 0 : iconButtonProps.sx) instanceof Function
1432
1432
  ? iconButtonProps.sx(theme)
@@ -2561,14 +2561,11 @@ const MRT_TableRoot = (props) => {
2561
2561
  const tablePaperRef = useRef(null);
2562
2562
  const topToolbarRef = useRef(null);
2563
2563
  const initialState = useMemo(() => {
2564
- var _a, _b;
2564
+ var _a, _b, _c;
2565
2565
  const initState = (_a = props.initialState) !== null && _a !== void 0 ? _a : {};
2566
2566
  initState.columnOrder =
2567
2567
  (_b = initState.columnOrder) !== null && _b !== void 0 ? _b : getDefaultColumnOrderIds(props);
2568
- initState.globalFilterFn =
2569
- props.globalFilterFn instanceof String
2570
- ? props.globalFilterFn
2571
- : 'fuzzy';
2568
+ initState.globalFilterFn = (_c = props.globalFilterFn) !== null && _c !== void 0 ? _c : 'fuzzy';
2572
2569
  return initState;
2573
2570
  }, []);
2574
2571
  const [columnFilterFns, setColumnFilterFns] = useState(() => Object.assign({}, ...getAllLeafColumnDefs(props.columns).map((col) => {
@@ -2802,7 +2799,7 @@ const MRT_Localization_EN = {
2802
2799
  const MaterialReactTable = (_a) => {
2803
2800
  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"]);
2804
2801
  const _icons = useMemo(() => (Object.assign(Object.assign({}, MRT_Default_Icons), icons)), []);
2805
- const _localization = useMemo(() => (Object.assign(Object.assign({}, MRT_Localization_EN), localization)), []);
2802
+ const _localization = useMemo(() => (Object.assign(Object.assign({}, MRT_Localization_EN), localization)), [localization]);
2806
2803
  const _aggregationFns = useMemo(() => (Object.assign(Object.assign({}, MRT_AggregationFns), aggregationFns)), []);
2807
2804
  const _filterFns = useMemo(() => (Object.assign(Object.assign({}, MRT_FilterFns), filterFns)), []);
2808
2805
  const _sortingFns = useMemo(() => (Object.assign(Object.assign({}, MRT_SortingFns), sortingFns)), []);
@@ -2811,5 +2808,5 @@ const MaterialReactTable = (_a) => {
2811
2808
  return (React.createElement(MRT_TableRoot, Object.assign({ aggregationFns: _aggregationFns, autoResetExpanded: autoResetExpanded, columnResizeMode: columnResizeMode, defaultColumn: _defaultColumn, defaultDisplayColumn: _defaultDisplayColumn, editingMode: editingMode, enableBottomToolbar: enableBottomToolbar, enableColumnActions: enableColumnActions, enableColumnFilters: enableColumnFilters, enableColumnOrdering: enableColumnOrdering, enableColumnResizing: enableColumnResizing, enableDensityToggle: enableDensityToggle, enableExpandAll: enableExpandAll, enableFilters: enableFilters, enableFullScreenToggle: enableFullScreenToggle, enableGlobalFilter: enableGlobalFilter, enableGlobalFilterRankedResults: enableGlobalFilterRankedResults, enableGrouping: enableGrouping, enableHiding: enableHiding, enableMultiRowSelection: enableMultiRowSelection, enableMultiSort: enableMultiSort, enablePagination: enablePagination, enablePinning: enablePinning, enableRowSelection: enableRowSelection, enableSelectAll: enableSelectAll, enableSorting: enableSorting, enableStickyHeader: enableStickyHeader, enableTableFooter: enableTableFooter, enableTableHead: enableTableHead, enableToolbarInternalActions: enableToolbarInternalActions, enableTopToolbar: enableTopToolbar, filterFns: _filterFns, icons: _icons, localization: _localization, positionActionsColumn: positionActionsColumn, positionExpandColumn: positionExpandColumn, positionGlobalFilter: positionGlobalFilter, positionPagination: positionPagination, positionToolbarAlertBanner: positionToolbarAlertBanner, positionToolbarDropZone: positionToolbarDropZone, rowNumberMode: rowNumberMode, selectAllMode: selectAllMode, sortingFns: _sortingFns }, rest)));
2812
2809
  };
2813
2810
 
2814
- export { MRT_CopyButton, MRT_FullScreenToggleButton, MRT_GlobalFilterTextField, MRT_ShowHideColumnsButton, MRT_TablePagination, MRT_ToggleDensePaddingButton, MRT_ToggleFiltersButton, MRT_ToggleGlobalFilterButton, MRT_ToolbarInternalButtons, MaterialReactTable as default };
2811
+ export { MRT_CopyButton, MRT_FilterOptionMenu, MRT_FullScreenToggleButton, MRT_GlobalFilterTextField, MRT_ShowHideColumnsButton, MRT_TablePagination, MRT_ToggleDensePaddingButton, MRT_ToggleFiltersButton, MRT_ToggleGlobalFilterButton, MRT_ToolbarInternalButtons, MaterialReactTable as default };
2815
2812
  //# sourceMappingURL=material-react-table.esm.js.map