material-react-table 0.7.5 → 0.7.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/dist/buttons/MRT_ColumnPinningButtons.d.ts +8 -0
- package/dist/localization.d.ts +1 -0
- package/dist/material-react-table.cjs.development.js +91 -24
- package/dist/material-react-table.cjs.development.js.map +1 -1
- package/dist/material-react-table.cjs.production.min.js +1 -1
- package/dist/material-react-table.cjs.production.min.js.map +1 -1
- package/dist/material-react-table.esm.js +92 -25
- package/dist/material-react-table.esm.js.map +1 -1
- package/package.json +3 -3
- package/src/buttons/MRT_ColumnPinningButtons.tsx +69 -0
- package/src/localization.ts +2 -0
- package/src/menus/MRT_ShowHideColumnsMenu.tsx +25 -11
- package/src/menus/MRT_ShowHideColumnsMenuItems.tsx +15 -3
- package/src/table/MRT_Table.tsx +3 -3
- package/src/table/MRT_TableContainer.tsx +16 -6
- package/src/table/MRT_TableRoot.tsx +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"material-react-table.esm.js","sources":["../src/localization.ts","../src/icons.ts","../src/buttons/MRT_ExpandAllButton.tsx","../src/buttons/MRT_ExpandButton.tsx","../src/enums.ts","../src/filtersFNs.ts","../src/menus/MRT_FilterOptionMenu.tsx","../src/menus/MRT_ShowHideColumnsMenuItems.tsx","../src/menus/MRT_ShowHideColumnsMenu.tsx","../src/menus/MRT_ColumnActionMenu.tsx","../src/menus/MRT_RowActionMenu.tsx","../src/buttons/MRT_EditActionButtons.tsx","../src/buttons/MRT_ToggleRowActionMenuButton.tsx","../src/inputs/MRT_SelectCheckbox.tsx","../src/inputs/MRT_SearchTextField.tsx","../src/buttons/MRT_FullScreenToggleButton.tsx","../src/buttons/MRT_ShowHideColumnsButton.tsx","../src/buttons/MRT_ToggleDensePaddingButton.tsx","../src/buttons/MRT_ToggleFiltersButton.tsx","../src/buttons/MRT_ToggleGlobalFilterButton.tsx","../src/toolbar/MRT_ToolbarInternalButtons.tsx","../src/toolbar/MRT_TablePagination.tsx","../src/toolbar/MRT_ToolbarAlertBanner.tsx","../src/toolbar/MRT_LinearProgressBar.tsx","../src/toolbar/MRT_ToolbarTop.tsx","../src/toolbar/MRT_ToolbarBottom.tsx","../src/inputs/MRT_FilterTextField.tsx","../src/buttons/MRT_ToggleColumnActionMenuButton.tsx","../src/head/MRT_TableHeadCell.tsx","../src/head/MRT_TableHeadRow.tsx","../src/head/MRT_TableHead.tsx","../src/inputs/MRT_EditCellTextField.tsx","../src/buttons/MRT_CopyButton.tsx","../src/body/MRT_TableBodyCell.tsx","../src/body/MRT_TableDetailPanel.tsx","../src/body/MRT_TableBodyRow.tsx","../src/body/MRT_TableBody.tsx","../src/footer/MRT_TableFooterCell.tsx","../src/footer/MRT_TableFooterRow.tsx","../src/footer/MRT_TableFooter.tsx","../src/table/MRT_Table.tsx","../src/table/MRT_TableContainer.tsx","../src/table/MRT_TablePaper.tsx","../src/utils.ts","../src/table/MRT_TableRoot.tsx","../src/MaterialReactTable.tsx"],"sourcesContent":["export interface MRT_Localization {\n actions: string;\n cancel: string;\n changeFilterMode: string;\n changeSearchMode: string;\n clearFilter: string;\n clearSearch: string;\n clearSort: string;\n clickToCopy: string;\n columnActions: string;\n copiedToClipboard: string;\n edit: string;\n expand: string;\n expandAll: string;\n filterBestMatch: string;\n filterBestMatchFirst: string;\n filterByColumn: string;\n filterContains: string;\n filterEmpty: string;\n filterEndsWith: string;\n filterEquals: string;\n filterGreaterThan: string;\n filterLessThan: string;\n filterMode: string;\n filterNotEmpty: string;\n filterNotEquals: string;\n filterStartsWith: string;\n filteringByColumn: string;\n groupByColumn: string;\n groupedBy: string;\n hideAll: string;\n hideColumn: string;\n pinToLeft: string;\n pinToRight: string;\n resetColumnSize: string;\n rowActions: string;\n rowNumber: string;\n rowNumbers: string;\n save: string;\n search: string;\n select: string;\n selectedCountOfRowCountRowsSelected: string;\n showAll: string;\n showAllColumns: string;\n showHideColumns: string;\n showHideFilters: string;\n showHideSearch: string;\n sortByColumnAsc: string;\n sortByColumnDesc: string;\n sortedByColumnAsc: string;\n sortedByColumnDesc: string;\n thenBy: string;\n toggleDensePadding: string;\n toggleFullScreen: string;\n toggleSelectAll: string;\n toggleSelectRow: string;\n ungroupByColumn: string;\n unpin: string;\n unsorted: string;\n}\n\nexport const MRT_DefaultLocalization_EN: MRT_Localization = {\n actions: 'Actions',\n cancel: 'Cancel',\n changeFilterMode: 'Change filter mode',\n changeSearchMode: 'Change search mode',\n clearFilter: 'Clear filter',\n clearSearch: 'Clear search',\n clearSort: 'Clear sort',\n clickToCopy: 'Click to copy',\n columnActions: 'Column Actions',\n copiedToClipboard: 'Copied to clipboard',\n edit: 'Edit',\n expand: 'Expand',\n expandAll: 'Expand all',\n filterBestMatch: 'Best Match',\n filterBestMatchFirst: 'Best Match First',\n filterByColumn: 'Filter by {column}',\n filterContains: 'Contains',\n filterEmpty: 'Empty',\n filterEndsWith: 'Ends With',\n filterEquals: 'Equals',\n filterGreaterThan: 'Greater Than',\n filterLessThan: 'Less Than',\n filterMode: 'Filter Mode: {filterType}',\n filterNotEmpty: 'Not Empty',\n filterNotEquals: 'Not Equals',\n filterStartsWith: 'Starts With',\n filteringByColumn: 'Filtering by {column} - {filterType} \"{filterValue}\"',\n groupByColumn: 'Group by {column}',\n groupedBy: 'Grouped by ',\n hideAll: 'Hide all',\n hideColumn: 'Hide {column} column',\n pinToLeft: 'Pin to left',\n pinToRight: 'Pin to right',\n resetColumnSize: 'Reset column size',\n rowActions: 'Row Actions',\n rowNumber: '#',\n rowNumbers: 'Row Numbers',\n save: 'Save',\n search: 'Search',\n selectedCountOfRowCountRowsSelected:\n '{selectedCount} of {rowCount} row(s) selected',\n select: 'Select',\n showAll: 'Show all',\n showAllColumns: 'Show all columns',\n showHideColumns: 'Show/Hide columns',\n showHideFilters: 'Show/Hide filters',\n showHideSearch: 'Show/Hide search',\n sortByColumnAsc: 'Sort by {column} ascending',\n sortByColumnDesc: 'Sort by {column} descending',\n sortedByColumnAsc: 'Sorted by {column} ascending',\n sortedByColumnDesc: 'Sorted by {column} descending',\n thenBy: ', then by ',\n toggleDensePadding: 'Toggle dense padding',\n toggleFullScreen: 'Toggle full screen',\n toggleSelectAll: 'Toggle select all',\n toggleSelectRow: 'Toggle select row',\n ungroupByColumn: 'Ungroup by {column}',\n unpin: 'Unpin',\n unsorted: 'Unsorted',\n};\n","import ArrowRightIcon from '@mui/icons-material/ArrowRight';\nimport CancelIcon from '@mui/icons-material/Cancel';\nimport CheckBoxIcon from '@mui/icons-material/CheckBox';\nimport ClearAllIcon from '@mui/icons-material/ClearAll';\nimport CloseIcon from '@mui/icons-material/Close';\nimport DensityMediumIcon from '@mui/icons-material/DensityMedium';\nimport DensitySmallIcon from '@mui/icons-material/DensitySmall';\nimport DoubleArrowDownIcon from '@mui/icons-material/KeyboardDoubleArrowDown';\nimport DynamicFeedIcon from '@mui/icons-material/DynamicFeed';\nimport EditIcon from '@mui/icons-material/Edit';\nimport ExpandLessIcon from '@mui/icons-material/ExpandLess';\nimport ExpandMoreIcon from '@mui/icons-material/ExpandMore';\nimport FilterAltIcon from '@mui/icons-material/FilterAlt';\nimport FilterAltOff from '@mui/icons-material/FilterAltOff';\nimport FilterListIcon from '@mui/icons-material/FilterList';\nimport FilterListOffIcon from '@mui/icons-material/FilterListOff';\nimport FullscreenExitIcon from '@mui/icons-material/FullscreenExit';\nimport FullscreenIcon from '@mui/icons-material/Fullscreen';\nimport MoreHorizIcon from '@mui/icons-material/MoreHoriz';\nimport MoreVertIcon from '@mui/icons-material/MoreVert';\nimport PushPinIcon from '@mui/icons-material/PushPin';\nimport RestartAltIcon from '@mui/icons-material/RestartAlt';\nimport SaveIcon from '@mui/icons-material/Save';\nimport SearchIcon from '@mui/icons-material/Search';\nimport SearchOffIcon from '@mui/icons-material/SearchOff';\nimport SortIcon from '@mui/icons-material/Sort';\nimport ViewColumnIcon from '@mui/icons-material/ViewColumn';\nimport VisibilityOffIcon from '@mui/icons-material/VisibilityOff';\n\nexport interface MRT_Icons {\n ArrowRightIcon: any;\n CancelIcon: any;\n CheckBoxIcon: any;\n ClearAllIcon: any;\n CloseIcon: any;\n DensityMediumIcon: any;\n DensitySmallIcon: any;\n DoubleArrowDownIcon: any;\n DynamicFeedIcon: any;\n EditIcon: any;\n ExpandLessIcon: any;\n ExpandMoreIcon: any;\n FilterAltIcon: any;\n FilterAltOff: any;\n FilterListIcon: any;\n FilterListOffIcon: any;\n FullscreenExitIcon: any;\n FullscreenIcon: any;\n MoreHorizIcon: any;\n MoreVertIcon: any;\n PushPinIcon: any;\n RestartAltIcon: any;\n SaveIcon: any;\n SearchIcon: any;\n SearchOffIcon: any;\n SortIcon: any;\n ViewColumnIcon: any;\n VisibilityOffIcon: any;\n}\n\nexport const MRT_Default_Icons: MRT_Icons = {\n ArrowRightIcon,\n CancelIcon,\n CheckBoxIcon,\n ClearAllIcon,\n CloseIcon,\n DensityMediumIcon,\n DensitySmallIcon,\n DoubleArrowDownIcon,\n DynamicFeedIcon,\n EditIcon,\n ExpandLessIcon,\n ExpandMoreIcon,\n FilterAltIcon,\n FilterAltOff,\n FilterListIcon,\n FilterListOffIcon,\n FullscreenExitIcon,\n FullscreenIcon,\n MoreHorizIcon,\n MoreVertIcon,\n PushPinIcon,\n RestartAltIcon,\n SaveIcon,\n SearchIcon,\n SearchOffIcon,\n SortIcon,\n ViewColumnIcon,\n VisibilityOffIcon,\n};\n","import React, { FC } from 'react';\nimport { IconButton } from '@mui/material';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_ExpandAllButton: FC<Props> = ({ tableInstance }) => {\n const {\n getIsAllRowsExpanded,\n getIsSomeRowsExpanded,\n getState,\n options: {\n icons: { DoubleArrowDownIcon },\n isLoading,\n localization,\n },\n toggleAllRowsExpanded,\n } = tableInstance;\n\n const { isDensePadding } = getState();\n\n return (\n <IconButton\n aria-label={localization.expandAll}\n disabled={isLoading}\n title={localization.expandAll}\n onClick={() => toggleAllRowsExpanded(!getIsAllRowsExpanded())}\n sx={{\n height: isDensePadding ? '1.75rem' : '2.25rem',\n width: isDensePadding ? '1.75rem' : '2.25rem',\n }}\n >\n <DoubleArrowDownIcon\n style={{\n transform: `rotate(${\n getIsAllRowsExpanded() ? -180 : getIsSomeRowsExpanded() ? -90 : 0\n }deg)`,\n transition: 'transform 0.2s',\n }}\n />\n </IconButton>\n );\n};\n","import React, { FC, MouseEvent } from 'react';\nimport { IconButton } from '@mui/material';\nimport type { MRT_Row, MRT_TableInstance } from '..';\n\ninterface Props {\n row: MRT_Row;\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_ExpandButton: FC<Props> = ({ row, tableInstance }) => {\n const {\n getState,\n options: {\n icons: { ExpandMoreIcon },\n localization,\n onRowExpandChange,\n renderDetailPanel,\n },\n } = tableInstance;\n\n const { isDensePadding } = getState();\n\n const handleToggleExpand = (event: MouseEvent<HTMLButtonElement>) => {\n row.toggleExpanded();\n onRowExpandChange?.({ event, row, tableInstance });\n };\n\n return (\n <IconButton\n aria-label={localization.expand}\n disabled={!row.getCanExpand() && !renderDetailPanel}\n title={localization.expand}\n onClick={handleToggleExpand}\n sx={{\n height: isDensePadding ? '1.75rem' : '2.25rem',\n width: isDensePadding ? '1.75rem' : '2.25rem',\n }}\n >\n <ExpandMoreIcon\n style={{\n transform: `rotate(${\n !row.getCanExpand() && !renderDetailPanel\n ? -90\n : row.getIsExpanded()\n ? -180\n : 0\n }deg)`,\n transition: 'transform 0.2s',\n }}\n />\n </IconButton>\n );\n};\n","export enum MRT_FILTER_OPTION {\n BEST_MATCH = 'bestMatch',\n BEST_MATCH_FIRST = 'bestMatchFirst',\n CONTAINS = 'contains',\n EMPTY = 'empty',\n ENDS_WITH = 'endsWith',\n EQUALS = 'equals',\n GREATER_THAN = 'greaterThan',\n LESS_THAN = 'lessThan',\n NOT_EMPTY = 'notEmpty',\n NOT_EQUALS = 'notEquals',\n STARTS_WITH = 'startsWith',\n}\n","import { matchSorter } from 'match-sorter';\nimport { MRT_Row } from '.';\n\nexport const bestMatchFirst = (\n rows: MRT_Row[],\n columnIds: string[] | string,\n filterValue: string | number,\n) =>\n matchSorter(rows, filterValue.toString().trim(), {\n keys: Array.isArray(columnIds)\n ? columnIds.map((c) => `values.${c}`)\n : [`values.${columnIds}`],\n });\n\nbestMatchFirst.autoRemove = (val: any) => !val;\n\nexport const bestMatch = (\n rows: MRT_Row[],\n columnIds: string[] | string,\n filterValue: string | number,\n) =>\n matchSorter(rows, filterValue.toString().trim(), {\n keys: Array.isArray(columnIds)\n ? columnIds.map((c) => `values.${c}`)\n : [`values.${columnIds}`],\n sorter: (rankedItems) => rankedItems,\n });\n\nbestMatch.autoRemove = (val: any) => !val;\n\nexport const contains = (\n rows: MRT_Row[],\n id: string,\n filterValue: string | number,\n) =>\n rows.filter((row) =>\n row.values[id]\n .toString()\n .toLowerCase()\n .trim()\n .includes(filterValue.toString().toLowerCase().trim()),\n );\n\ncontains.autoRemove = (val: any) => !val;\n\nexport const startsWith = (\n rows: MRT_Row[],\n id: string,\n filterValue: string | number,\n) =>\n rows.filter((row) =>\n row.values[id]\n .toString()\n .toLowerCase()\n .trim()\n .startsWith(filterValue.toString().toLowerCase().trim()),\n );\n\nstartsWith.autoRemove = (val: any) => !val;\n\nexport const endsWith = (\n rows: MRT_Row[],\n id: string,\n filterValue: string | number,\n) =>\n rows.filter((row) =>\n row.values[id]\n .toString()\n .toLowerCase()\n .trim()\n .endsWith(filterValue.toString().toLowerCase().trim()),\n );\n\nendsWith.autoRemove = (val: any) => !val;\n\nexport const equals = (\n rows: MRT_Row[],\n id: string,\n filterValue: string | number,\n) =>\n rows.filter(\n (row) =>\n row.values[id].toString().toLowerCase().trim() ===\n filterValue.toString().toLowerCase().trim(),\n );\n\nequals.autoRemove = (val: any) => !val;\n\nexport const notEquals = (\n rows: MRT_Row[],\n id: string,\n filterValue: string | number,\n) =>\n rows.filter(\n (row) =>\n row.values[id].toString().toLowerCase().trim() !==\n filterValue.toString().toLowerCase().trim(),\n );\n\nnotEquals.autoRemove = (val: any) => !val;\n\nexport const greaterThan = (\n rows: MRT_Row[],\n id: string,\n filterValue: string | number,\n) =>\n rows.filter((row) =>\n !isNaN(+filterValue) && !isNaN(+row.values[id])\n ? +row.values[id] > +filterValue\n : row.values[id].toString().toLowerCase().trim() >\n filterValue.toString().toLowerCase().trim(),\n );\n\ngreaterThan.autoRemove = (val: any) => !val;\n\nexport const lessThan = (\n rows: MRT_Row[],\n id: string,\n filterValue: string | number,\n) =>\n rows.filter((row) =>\n !isNaN(+filterValue) && !isNaN(+row.values[id])\n ? +row.values[id] < +filterValue\n : row.values[id].toString().toLowerCase().trim() <\n filterValue.toString().toLowerCase().trim(),\n );\n\nlessThan.autoRemove = (val: any) => !val;\n\nexport const empty = (\n rows: MRT_Row[],\n id: string,\n _filterValue: string | number,\n) => rows.filter((row) => !row.values[id].toString().toLowerCase().trim());\n\nempty.autoRemove = (val: any) => !val;\n\nexport const notEmpty = (\n rows: MRT_Row[],\n id: string,\n _filterValue: string | number,\n) => rows.filter((row) => !!row.values[id].toString().toLowerCase().trim());\n\nnotEmpty.autoRemove = (val: any) => !val;\n\nexport const defaultFilterFNs = {\n bestMatch,\n bestMatchFirst,\n contains,\n empty,\n endsWith,\n equals,\n greaterThan,\n lessThan,\n notEmpty,\n notEquals,\n startsWith,\n};\n","import React, { FC, useMemo } from 'react';\nimport { Menu, MenuItem } from '@mui/material';\nimport type { MRT_FilterFn, MRT_Header, MRT_TableInstance } from '..';\nimport { MRT_FILTER_OPTION } from '../enums';\nimport {\n bestMatch,\n bestMatchFirst,\n contains,\n empty,\n endsWith,\n equals,\n greaterThan,\n lessThan,\n notEmpty,\n notEquals,\n startsWith,\n} from '../filtersFNs';\n\nconst commonMenuItemStyles = {\n py: '6px',\n my: 0,\n alignItems: 'center',\n};\n\ninterface Props {\n anchorEl: HTMLElement | null;\n header?: MRT_Header;\n onSelect?: () => void;\n setAnchorEl: (anchorEl: HTMLElement | null) => void;\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_FilterOptionMenu: FC<Props> = ({\n anchorEl,\n header,\n onSelect,\n setAnchorEl,\n tableInstance,\n}) => {\n const {\n getState,\n options: { enabledGlobalFilterOptions, localization },\n setCurrentFilterFns,\n setCurrentGlobalFilterFn,\n } = tableInstance;\n\n const { isDensePadding, currentFilterFns, currentGlobalFilterFn } =\n getState();\n\n const filterOptions: {\n type: MRT_FILTER_OPTION;\n label: string;\n divider: boolean;\n fn: Function;\n }[] = useMemo(\n () =>\n [\n {\n type: MRT_FILTER_OPTION.BEST_MATCH_FIRST,\n label: localization.filterBestMatchFirst,\n divider: false,\n fn: bestMatchFirst,\n },\n {\n type: MRT_FILTER_OPTION.BEST_MATCH,\n label: localization.filterBestMatch,\n divider: !!header,\n fn: bestMatch,\n },\n {\n type: MRT_FILTER_OPTION.CONTAINS,\n label: localization.filterContains,\n divider: false,\n fn: contains,\n },\n {\n type: MRT_FILTER_OPTION.STARTS_WITH,\n label: localization.filterStartsWith,\n divider: false,\n fn: startsWith,\n },\n {\n type: MRT_FILTER_OPTION.ENDS_WITH,\n label: localization.filterEndsWith,\n divider: true,\n fn: endsWith,\n },\n {\n type: MRT_FILTER_OPTION.EQUALS,\n label: localization.filterEquals,\n divider: false,\n fn: equals,\n },\n {\n type: MRT_FILTER_OPTION.NOT_EQUALS,\n label: localization.filterNotEquals,\n divider: true,\n fn: notEquals,\n },\n {\n type: MRT_FILTER_OPTION.GREATER_THAN,\n label: localization.filterGreaterThan,\n divider: false,\n fn: greaterThan,\n },\n {\n type: MRT_FILTER_OPTION.LESS_THAN,\n label: localization.filterLessThan,\n divider: true,\n fn: lessThan,\n },\n {\n type: MRT_FILTER_OPTION.EMPTY,\n label: localization.filterEmpty,\n divider: false,\n fn: empty,\n },\n {\n type: MRT_FILTER_OPTION.NOT_EMPTY,\n label: localization.filterNotEmpty,\n divider: false,\n fn: notEmpty,\n },\n ].filter((filterType) =>\n header\n ? !header.column.enabledColumnFilterOptions ||\n header.column.enabledColumnFilterOptions.includes(filterType.type)\n : (!enabledGlobalFilterOptions ||\n enabledGlobalFilterOptions.includes(filterType.type)) &&\n [\n MRT_FILTER_OPTION.BEST_MATCH_FIRST,\n MRT_FILTER_OPTION.BEST_MATCH,\n ].includes(filterType.type),\n ),\n [],\n );\n\n const handleSelectFilterType = (value: MRT_FILTER_OPTION) => {\n if (header) {\n setCurrentFilterFns((prev: { [key: string]: MRT_FilterFn }) => ({\n ...prev,\n [header.id]: value,\n }));\n if (\n [MRT_FILTER_OPTION.EMPTY, MRT_FILTER_OPTION.NOT_EMPTY].includes(value)\n ) {\n header.column.setColumnFilterValue(' ');\n }\n } else {\n setCurrentGlobalFilterFn(value);\n }\n setAnchorEl(null);\n onSelect?.();\n };\n\n const filterType = !!header\n ? currentFilterFns[header.id]\n : currentGlobalFilterFn;\n\n return (\n <Menu\n anchorEl={anchorEl}\n anchorOrigin={{ vertical: 'center', horizontal: 'right' }}\n onClose={() => setAnchorEl(null)}\n open={!!anchorEl}\n MenuListProps={{\n dense: isDensePadding,\n }}\n >\n {filterOptions.map(({ type, label, divider, fn }, index) => (\n <MenuItem\n divider={divider}\n key={index}\n onClick={() => handleSelectFilterType(type)}\n selected={type === filterType || fn === filterType}\n sx={commonMenuItemStyles}\n value={type}\n >\n {label}\n </MenuItem>\n ))}\n </Menu>\n );\n};\n","import React, { FC } from 'react';\nimport { FormControlLabel, MenuItem, Switch } from '@mui/material';\nimport type { MRT_Column, MRT_TableInstance } from '..';\nimport { commonMenuItemStyles } from './MRT_ColumnActionMenu';\n\ninterface Props {\n column: MRT_Column;\n isSubMenu?: boolean;\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_ShowHideColumnsMenuItems: FC<Props> = ({\n column,\n isSubMenu,\n tableInstance,\n}) => {\n const {\n getState,\n options: { onToggleColumnVisibility },\n } = tableInstance;\n\n const { columnVisibility } = getState();\n\n const switchChecked =\n (column.columnDefType !== 'group' && column.getIsVisible()) ||\n (column.columnDefType === 'group' &&\n column.getLeafColumns().some((col) => col.getIsVisible()));\n\n const handleToggleColumnHidden = (column: MRT_Column) => {\n if (column.columnDefType === 'group') {\n column?.columns?.forEach?.((childColumn: MRT_Column) => {\n childColumn.toggleVisibility(!switchChecked);\n });\n } else {\n column.toggleVisibility();\n }\n onToggleColumnVisibility?.({\n column,\n columnVisibility,\n tableInstance,\n });\n };\n\n return (\n <>\n <MenuItem\n sx={{ ...commonMenuItemStyles, pl: `${(column.depth + 0.5) * 2}rem` }}\n >\n <FormControlLabel\n componentsProps={{ typography: { sx: { marginBottom: 0 } } }}\n checked={switchChecked}\n control={<Switch />}\n disabled={\n (isSubMenu && switchChecked) || column.enableHiding === false\n }\n label={column.header}\n onChange={() => handleToggleColumnHidden(column)}\n />\n </MenuItem>\n {column.columns?.map((c: MRT_Column, i) => (\n <MRT_ShowHideColumnsMenuItems\n key={`${i}-${c.id}`}\n column={c}\n isSubMenu={isSubMenu}\n tableInstance={tableInstance}\n />\n ))}\n </>\n );\n};\n","import React, { FC, useMemo } from 'react';\nimport { Button, Menu, Divider, Box } from '@mui/material';\nimport { MRT_ShowHideColumnsMenuItems } from './MRT_ShowHideColumnsMenuItems';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n anchorEl: HTMLElement | null;\n isSubMenu?: boolean;\n setAnchorEl: (anchorEl: HTMLElement | null) => void;\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_ShowHideColumnsMenu: FC<Props> = ({\n anchorEl,\n isSubMenu,\n setAnchorEl,\n tableInstance,\n}) => {\n const {\n getAllColumns,\n getIsAllColumnsVisible,\n getIsSomeColumnsVisible,\n getIsSomeColumnsPinned,\n getState,\n toggleAllColumnsVisible,\n getAllLeafColumns,\n options: { localization },\n } = tableInstance;\n\n const { isDensePadding } = getState();\n\n const hideAllColumns = () => {\n getAllLeafColumns()\n .filter((col) => col.enableHiding !== false)\n .forEach((col) => col.toggleVisibility(false));\n };\n\n const allDisplayColumns = useMemo(\n () => getAllColumns().filter((col) => col.columnDefType === 'display'),\n [getAllColumns()],\n );\n\n const allDataColumns = useMemo(() => {\n const dataColumns = getAllColumns().filter(\n (col) => col.columnDefType !== 'display',\n );\n return getIsSomeColumnsPinned()\n ? [\n ...dataColumns.filter((c) => c.getIsPinned() === 'left'),\n ...dataColumns.filter((c) => c.getIsPinned() === false),\n ...dataColumns.filter((c) => c.getIsPinned() === 'right'),\n ]\n : dataColumns;\n }, [getAllColumns(), getState().columnPinning, getIsSomeColumnsPinned()]);\n\n return (\n <Menu\n anchorEl={anchorEl}\n open={!!anchorEl}\n onClose={() => setAnchorEl(null)}\n MenuListProps={{\n dense: isDensePadding,\n }}\n >\n <Box\n sx={{\n display: 'flex',\n justifyContent: isSubMenu ? 'center' : 'space-between',\n p: '0.5rem',\n pt: 0,\n }}\n >\n {!isSubMenu && (\n <Button\n disabled={!getIsSomeColumnsVisible()}\n onClick={hideAllColumns}\n >\n {localization.hideAll}\n </Button>\n )}\n <Button\n disabled={getIsAllColumnsVisible()}\n onClick={() => toggleAllColumnsVisible(true)}\n >\n {localization.showAll}\n </Button>\n </Box>\n <Divider />\n {allDisplayColumns.map((column, index) => (\n <MRT_ShowHideColumnsMenuItems\n column={column}\n isSubMenu={isSubMenu}\n key={`${index}-${column.id}`}\n tableInstance={tableInstance}\n />\n ))}\n <Divider />\n {allDataColumns.map((column, index) => (\n <MRT_ShowHideColumnsMenuItems\n column={column}\n isSubMenu={isSubMenu}\n key={`${index}-${column.id}`}\n tableInstance={tableInstance}\n />\n ))}\n </Menu>\n );\n};\n","import React, { FC, useState } from 'react';\nimport { Box, IconButton, ListItemIcon, Menu, MenuItem } from '@mui/material';\nimport type { MRT_Header, MRT_TableInstance } from '..';\nimport { MRT_FilterOptionMenu } from './MRT_FilterOptionMenu';\nimport { MRT_ShowHideColumnsMenu } from './MRT_ShowHideColumnsMenu';\n\nexport const commonMenuItemStyles = {\n py: '6px',\n my: 0,\n justifyContent: 'space-between',\n alignItems: 'center',\n};\n\nexport const commonListItemStyles = {\n display: 'flex',\n alignItems: 'center',\n};\n\ninterface Props {\n anchorEl: HTMLElement | null;\n header: MRT_Header;\n setAnchorEl: (anchorEl: HTMLElement | null) => void;\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_ColumnActionMenu: FC<Props> = ({\n anchorEl,\n header,\n setAnchorEl,\n tableInstance,\n}) => {\n const {\n getState,\n toggleAllColumnsVisible,\n setColumnOrder,\n options: {\n enableColumnFilters,\n enableColumnResizing,\n enableGrouping,\n enableHiding,\n enablePinning,\n enableSorting,\n icons: {\n ArrowRightIcon,\n ClearAllIcon,\n ViewColumnIcon,\n DynamicFeedIcon,\n FilterListIcon,\n FilterListOffIcon,\n PushPinIcon,\n SortIcon,\n RestartAltIcon,\n VisibilityOffIcon,\n },\n idPrefix,\n localization,\n },\n setShowFilters,\n } = tableInstance;\n\n const { column } = header;\n\n const { columnSizing, columnVisibility, isDensePadding } = getState();\n\n const [filterMenuAnchorEl, setFilterMenuAnchorEl] =\n useState<null | HTMLElement>(null);\n\n const [showHideColumnsMenuAnchorEl, setShowHideColumnsMenuAnchorEl] =\n useState<null | HTMLElement>(null);\n\n const handleClearSort = () => {\n column.resetSorting();\n setAnchorEl(null);\n };\n\n const handleSortAsc = () => {\n column.toggleSorting(false);\n setAnchorEl(null);\n };\n\n const handleSortDesc = () => {\n column.toggleSorting(true);\n setAnchorEl(null);\n };\n\n const handleResetColumnSize = () => {\n column.resetSize();\n setAnchorEl(null);\n };\n\n const handleHideColumn = () => {\n column.toggleVisibility(false);\n setAnchorEl(null);\n };\n\n const handlePinColumn = (pinDirection: 'left' | 'right' | false) => {\n column.pin(pinDirection);\n };\n\n const handleGroupByColumn = () => {\n column.toggleGrouping();\n setColumnOrder((old) => ['mrt-expand', ...old]);\n setAnchorEl(null);\n };\n\n const handleClearFilter = () => {\n column.setColumnFilterValue('');\n setAnchorEl(null);\n };\n\n const handleFilterByColumn = () => {\n setShowFilters(true);\n setTimeout(\n () =>\n document\n .getElementById(\n // @ts-ignore\n header.muiTableHeadCellFilterTextFieldProps?.id ??\n `mrt-${idPrefix}-${header.id}-filter-text-field`,\n )\n ?.focus(),\n 200,\n );\n setAnchorEl(null);\n };\n\n const handleShowAllColumns = () => {\n toggleAllColumnsVisible(true);\n setAnchorEl(null);\n };\n\n const handleOpenFilterModeMenu = (event: React.MouseEvent<HTMLElement>) => {\n event.stopPropagation();\n setFilterMenuAnchorEl(event.currentTarget);\n };\n\n const handleOpenShowHideColumnsMenu = (\n event: React.MouseEvent<HTMLElement>,\n ) => {\n event.stopPropagation();\n setShowHideColumnsMenuAnchorEl(event.currentTarget);\n };\n\n return (\n <Menu\n anchorEl={anchorEl}\n open={!!anchorEl}\n onClose={() => setAnchorEl(null)}\n MenuListProps={{\n dense: isDensePadding,\n }}\n >\n {enableSorting &&\n column.getCanSort() && [\n <MenuItem\n disabled={!column.getIsSorted()}\n key={0}\n onClick={handleClearSort}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <ClearAllIcon />\n </ListItemIcon>\n {localization.clearSort}\n </Box>\n </MenuItem>,\n <MenuItem\n disabled={column.getIsSorted() === 'asc'}\n key={1}\n onClick={handleSortAsc}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <SortIcon />\n </ListItemIcon>\n {localization.sortByColumnAsc?.replace(\n '{column}',\n String(column.header),\n )}\n </Box>\n </MenuItem>,\n <MenuItem\n divider={enableColumnFilters || enableGrouping || enableHiding}\n key={2}\n disabled={column.getIsSorted() === 'desc'}\n onClick={handleSortDesc}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <SortIcon style={{ transform: 'rotate(180deg) scaleX(-1)' }} />\n </ListItemIcon>\n {localization.sortByColumnDesc?.replace(\n '{column}',\n String(column.header),\n )}\n </Box>\n </MenuItem>,\n ]}\n {enableColumnFilters &&\n column.getCanColumnFilter() && [\n <MenuItem\n disabled={!column.getColumnFilterValue()}\n key={0}\n onClick={handleClearFilter}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <FilterListOffIcon />\n </ListItemIcon>\n {localization.clearFilter}\n </Box>\n </MenuItem>,\n <MenuItem\n divider={enableGrouping || enableHiding}\n key={1}\n onClick={handleFilterByColumn}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <FilterListIcon />\n </ListItemIcon>\n {localization.filterByColumn?.replace(\n '{column}',\n String(column.header),\n )}\n </Box>\n {!column.filterSelectOptions && (\n <IconButton\n onClick={handleOpenFilterModeMenu}\n onMouseEnter={handleOpenFilterModeMenu}\n size=\"small\"\n sx={{ p: 0 }}\n >\n <ArrowRightIcon />\n </IconButton>\n )}\n </MenuItem>,\n <MRT_FilterOptionMenu\n anchorEl={filterMenuAnchorEl}\n header={header}\n key={2}\n onSelect={handleFilterByColumn}\n setAnchorEl={setFilterMenuAnchorEl}\n tableInstance={tableInstance}\n />,\n ]}\n {enableGrouping &&\n column.getCanGroup() && [\n <MenuItem\n divider={enablePinning}\n key={0}\n onClick={handleGroupByColumn}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <DynamicFeedIcon />\n </ListItemIcon>\n {localization[\n column.getIsGrouped() ? 'ungroupByColumn' : 'groupByColumn'\n ]?.replace('{column}', String(column.header))}\n </Box>\n </MenuItem>,\n ]}\n {enablePinning &&\n column.getCanPin() && [\n <MenuItem\n disabled={column.getIsPinned() === 'left' || !column.getCanPin()}\n key={0}\n onClick={() => handlePinColumn('left')}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <PushPinIcon style={{ transform: 'rotate(90deg)' }} />\n </ListItemIcon>\n {localization.pinToLeft}\n </Box>\n </MenuItem>,\n <MenuItem\n disabled={column.getIsPinned() === 'right' || !column.getCanPin()}\n key={0}\n onClick={() => handlePinColumn('right')}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <PushPinIcon style={{ transform: 'rotate(-90deg)' }} />\n </ListItemIcon>\n {localization.pinToRight}\n </Box>\n </MenuItem>,\n <MenuItem\n disabled={!column.getIsPinned()}\n divider={enableHiding}\n key={0}\n onClick={() => handlePinColumn(false)}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <PushPinIcon />\n </ListItemIcon>\n {localization.unpin}\n </Box>\n </MenuItem>,\n ]}\n {enableColumnResizing && [\n <MenuItem\n disabled={!column.getCanResize() || !columnSizing[column.id]}\n key={0}\n onClick={handleResetColumnSize}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <RestartAltIcon />\n </ListItemIcon>\n {localization.resetColumnSize}\n </Box>\n </MenuItem>,\n ]}\n {enableHiding && [\n <MenuItem\n disabled={column.enableHiding === false}\n key={0}\n onClick={handleHideColumn}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <VisibilityOffIcon />\n </ListItemIcon>\n {localization.hideColumn?.replace(\n '{column}',\n String(column.header),\n )}\n </Box>\n </MenuItem>,\n <MenuItem\n disabled={\n !Object.values(columnVisibility).filter((visible) => !visible)\n .length\n }\n key={1}\n onClick={handleShowAllColumns}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <ViewColumnIcon />\n </ListItemIcon>\n {localization.showAllColumns?.replace(\n '{column}',\n String(column.header),\n )}\n </Box>\n <IconButton\n onClick={handleOpenShowHideColumnsMenu}\n onMouseEnter={handleOpenShowHideColumnsMenu}\n size=\"small\"\n sx={{ p: 0 }}\n >\n <ArrowRightIcon />\n </IconButton>\n </MenuItem>,\n <MRT_ShowHideColumnsMenu\n anchorEl={showHideColumnsMenuAnchorEl}\n isSubMenu\n key={2}\n setAnchorEl={setShowHideColumnsMenuAnchorEl}\n tableInstance={tableInstance}\n />,\n ]}\n </Menu>\n );\n};\n","import React, { FC } from 'react';\nimport { Box, ListItemIcon, Menu, MenuItem } from '@mui/material';\nimport type { MRT_Row, MRT_TableInstance } from '..';\nimport {\n commonListItemStyles,\n commonMenuItemStyles,\n} from './MRT_ColumnActionMenu';\n\ninterface Props {\n anchorEl: HTMLElement | null;\n handleEdit: () => void;\n row: MRT_Row;\n setAnchorEl: (anchorEl: HTMLElement | null) => void;\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_RowActionMenu: FC<Props> = ({\n anchorEl,\n handleEdit,\n row,\n setAnchorEl,\n tableInstance,\n}) => {\n const {\n getState,\n options: {\n icons: { EditIcon },\n enableEditing,\n localization,\n renderRowActionMenuItems,\n },\n } = tableInstance;\n\n const { isDensePadding } = getState();\n\n return (\n <Menu\n anchorEl={anchorEl}\n open={!!anchorEl}\n onClose={() => setAnchorEl(null)}\n MenuListProps={{\n dense: isDensePadding,\n }}\n >\n {enableEditing && (\n <MenuItem onClick={handleEdit} sx={commonMenuItemStyles}>\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <EditIcon />\n </ListItemIcon>\n {localization.edit}\n </Box>\n </MenuItem>\n )}\n {renderRowActionMenuItems?.({\n row,\n tableInstance,\n closeMenu: () => setAnchorEl(null),\n })}\n </Menu>\n );\n};\n","import React, { FC } from 'react';\nimport { Box, IconButton, Tooltip } from '@mui/material';\nimport type { MRT_Row, MRT_TableInstance } from '..';\nimport { RowValues } from '@tanstack/react-table';\n\ninterface Props {\n row: MRT_Row;\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_EditActionButtons: FC<Props> = ({ row, tableInstance }) => {\n const {\n getState,\n options: {\n icons: { CancelIcon, SaveIcon },\n localization,\n onEditSubmit,\n },\n setCurrentEditingRow,\n } = tableInstance;\n\n const { currentEditingRow } = getState();\n\n const handleCancel = () => {\n row.values = (row.original as RowValues) ?? {};\n setCurrentEditingRow(null);\n };\n\n const handleSave = () => {\n onEditSubmit?.({ row: currentEditingRow ?? row, tableInstance });\n setCurrentEditingRow(null);\n };\n\n return (\n <Box sx={{ display: 'flex', gap: '0.75rem' }}>\n <Tooltip arrow title={localization.cancel}>\n <IconButton aria-label={localization.cancel} onClick={handleCancel}>\n <CancelIcon />\n </IconButton>\n </Tooltip>\n <Tooltip arrow title={localization.save}>\n <IconButton\n aria-label={localization.save}\n color=\"info\"\n onClick={handleSave}\n >\n <SaveIcon />\n </IconButton>\n </Tooltip>\n </Box>\n );\n};\n","import React, { FC, MouseEvent, useState } from 'react';\nimport { IconButton, Tooltip } from '@mui/material';\nimport { MRT_RowActionMenu } from '../menus/MRT_RowActionMenu';\nimport { MRT_EditActionButtons } from './MRT_EditActionButtons';\nimport type { MRT_Row, MRT_TableInstance } from '..';\n\nconst commonIconButtonStyles = {\n height: '2rem',\n ml: '10px',\n opacity: 0.5,\n transition: 'opacity 0.2s',\n width: '2rem',\n '&:hover': {\n opacity: 1,\n },\n};\n\ninterface Props {\n row: MRT_Row;\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_ToggleRowActionMenuButton: FC<Props> = ({\n row,\n tableInstance,\n}) => {\n const {\n getState,\n options: {\n enableEditing,\n icons: { EditIcon, MoreHorizIcon },\n localization,\n renderRowActionMenuItems,\n renderRowActions,\n },\n setCurrentEditingRow,\n } = tableInstance;\n\n const { currentEditingRow } = getState();\n\n const [anchorEl, setAnchorEl] = useState<null | HTMLElement>(null);\n\n const handleOpenRowActionMenu = (event: MouseEvent<HTMLElement>) => {\n event.stopPropagation();\n event.preventDefault();\n setAnchorEl(event.currentTarget);\n };\n\n const handleStartEditMode = () => {\n setCurrentEditingRow({ ...row });\n setAnchorEl(null);\n };\n\n return (\n <>\n {renderRowActions ? (\n <>{renderRowActions({ row, tableInstance })}</>\n ) : row.id === currentEditingRow?.id ? (\n <MRT_EditActionButtons row={row} tableInstance={tableInstance} />\n ) : !renderRowActionMenuItems && enableEditing ? (\n <Tooltip placement=\"right\" arrow title={localization.edit}>\n <IconButton sx={commonIconButtonStyles} onClick={handleStartEditMode}>\n <EditIcon />\n </IconButton>\n </Tooltip>\n ) : renderRowActionMenuItems ? (\n <>\n <Tooltip\n arrow\n enterDelay={1000}\n enterNextDelay={1000}\n title={localization.rowActions}\n >\n <IconButton\n aria-label={localization.rowActions}\n onClick={handleOpenRowActionMenu}\n size=\"small\"\n sx={commonIconButtonStyles}\n >\n <MoreHorizIcon />\n </IconButton>\n </Tooltip>\n <MRT_RowActionMenu\n anchorEl={anchorEl}\n handleEdit={handleStartEditMode}\n row={row}\n setAnchorEl={setAnchorEl}\n tableInstance={tableInstance}\n />\n </>\n ) : null}\n </>\n );\n};\n","import React, { ChangeEvent, FC } from 'react';\nimport { Checkbox, Tooltip } from '@mui/material';\nimport type { MRT_Row, MRT_TableInstance } from '..';\n\ninterface Props {\n row?: MRT_Row;\n selectAll?: boolean;\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_SelectCheckbox: FC<Props> = ({\n row,\n selectAll,\n tableInstance,\n}) => {\n const {\n getRowModel,\n getSelectedRowModel,\n getState,\n getToggleAllRowsSelectedProps,\n options: {\n isLoading,\n localization,\n muiSelectCheckboxProps,\n onSelectChange,\n onSelectAllChange,\n },\n } = tableInstance;\n\n const { isDensePadding } = getState();\n\n const handleSelectChange = (event: ChangeEvent<HTMLInputElement>) => {\n if (selectAll) {\n getToggleAllRowsSelectedProps?.()?.onChange?.(event as any);\n onSelectAllChange?.({\n event,\n selectedRows: event.target.checked ? getRowModel().flatRows : [],\n tableInstance,\n });\n } else if (row) {\n row?.getToggleSelectedProps()?.onChange?.(event as any);\n onSelectChange?.({\n event,\n row,\n selectedRows: event.target.checked\n ? [...getSelectedRowModel().flatRows, row]\n : getSelectedRowModel().flatRows.filter(\n (selectedRow) => selectedRow.id !== row.id,\n ),\n tableInstance,\n });\n }\n };\n\n const mTableBodyRowSelectCheckboxProps =\n muiSelectCheckboxProps instanceof Function\n ? muiSelectCheckboxProps({ isSelectAll: !!selectAll, row, tableInstance })\n : muiSelectCheckboxProps;\n\n const rtSelectCheckboxProps = selectAll\n ? getToggleAllRowsSelectedProps()\n : row?.getToggleSelectedProps();\n\n const checkboxProps = {\n ...rtSelectCheckboxProps,\n ...mTableBodyRowSelectCheckboxProps,\n };\n\n return (\n <Tooltip\n arrow\n enterDelay={1000}\n enterNextDelay={1000}\n title={\n selectAll ? localization.toggleSelectAll : localization.toggleSelectRow\n }\n >\n <Checkbox\n disabled={isLoading}\n inputProps={{\n 'aria-label': selectAll\n ? localization.toggleSelectAll\n : localization.toggleSelectRow,\n }}\n size={isDensePadding ? 'small' : 'medium'}\n {...checkboxProps}\n sx={{\n height: isDensePadding ? '1.75rem' : '2.25rem',\n width: isDensePadding ? '1.75rem' : '2.25rem',\n }}\n onChange={handleSelectChange}\n title={undefined}\n />\n </Tooltip>\n );\n};\n","import React, {\n ChangeEvent,\n FC,\n MouseEvent,\n useCallback,\n useState,\n} from 'react';\nimport {\n Collapse,\n debounce,\n IconButton,\n InputAdornment,\n TextField,\n Tooltip,\n} from '@mui/material';\nimport { MRT_FilterOptionMenu } from '../menus/MRT_FilterOptionMenu';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_SearchTextField: FC<Props> = ({ tableInstance }) => {\n const {\n getState,\n setGlobalFilter,\n options: {\n icons: { SearchIcon, CloseIcon },\n idPrefix,\n localization,\n muiSearchTextFieldProps,\n onGlobalSearchFilterChange,\n },\n } = tableInstance;\n\n const { globalFilter, showGlobalFilter } = getState();\n\n const [anchorEl, setAnchorEl] = useState<null | HTMLElement>(null);\n const [searchValue, setSearchValue] = useState(globalFilter ?? '');\n\n const handleChange = useCallback(\n debounce((event: ChangeEvent<HTMLInputElement>) => {\n setGlobalFilter(event.target.value ?? undefined);\n onGlobalSearchFilterChange?.({ event, tableInstance });\n }, 200),\n [],\n );\n\n const handleGlobalFilterMenuOpen = (event: MouseEvent<HTMLElement>) => {\n setAnchorEl(event.currentTarget);\n };\n\n const handleClear = () => {\n setSearchValue('');\n setGlobalFilter(undefined);\n };\n\n const textFieldProps =\n muiSearchTextFieldProps instanceof Function\n ? muiSearchTextFieldProps({ tableInstance })\n : muiSearchTextFieldProps;\n\n return (\n <Collapse in={showGlobalFilter} orientation=\"horizontal\">\n <TextField\n id={`mrt-${idPrefix}-search-text-field`}\n placeholder={localization.search}\n onChange={(event: ChangeEvent<HTMLInputElement>) => {\n setSearchValue(event.target.value);\n handleChange(event);\n }}\n value={searchValue ?? ''}\n variant=\"standard\"\n InputProps={{\n startAdornment: (\n <InputAdornment position=\"start\">\n <Tooltip arrow title={localization.changeSearchMode}>\n <span>\n <IconButton\n aria-label={localization.changeSearchMode}\n onClick={handleGlobalFilterMenuOpen}\n size=\"small\"\n sx={{ height: '1.75rem', width: '1.75rem' }}\n >\n <SearchIcon />\n </IconButton>\n </span>\n </Tooltip>\n </InputAdornment>\n ),\n endAdornment: (\n <InputAdornment position=\"end\">\n <IconButton\n aria-label={localization.clearSearch}\n disabled={searchValue?.length === 0}\n onClick={handleClear}\n size=\"small\"\n title={localization.clearSearch}\n >\n <CloseIcon />\n </IconButton>\n </InputAdornment>\n ),\n }}\n {...textFieldProps}\n sx={{ justifySelf: 'end', ...textFieldProps?.sx }}\n />\n <MRT_FilterOptionMenu\n anchorEl={anchorEl}\n setAnchorEl={setAnchorEl}\n tableInstance={tableInstance}\n />\n </Collapse>\n );\n};\n","import React, { FC, MouseEvent } from 'react';\nimport { IconButton, IconButtonProps, Tooltip } from '@mui/material';\nimport { MRT_TableInstance } from '..';\n\ninterface Props extends IconButtonProps {\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_FullScreenToggleButton: FC<Props> = ({\n tableInstance,\n ...rest\n}) => {\n const {\n getState,\n options: {\n icons: { FullscreenExitIcon, FullscreenIcon },\n localization,\n onToggleFullScreen,\n },\n setIsFullScreen,\n } = tableInstance;\n\n const { isFullScreen } = getState();\n\n const handleToggleFullScreen = (event: MouseEvent<HTMLButtonElement>) => {\n onToggleFullScreen?.({\n event,\n isFullScreen: !isFullScreen,\n tableInstance,\n });\n setIsFullScreen(!isFullScreen);\n };\n\n return (\n <Tooltip arrow title={localization.toggleFullScreen}>\n <IconButton\n aria-label={localization.showHideFilters}\n onClick={handleToggleFullScreen}\n {...rest}\n >\n {isFullScreen ? <FullscreenExitIcon /> : <FullscreenIcon />}\n </IconButton>\n </Tooltip>\n );\n};\n","import React, { FC, MouseEvent, useState } from 'react';\nimport { IconButton, Tooltip, IconButtonProps } from '@mui/material';\nimport { MRT_ShowHideColumnsMenu } from '../menus/MRT_ShowHideColumnsMenu';\nimport { MRT_TableInstance } from '..';\n\ninterface Props extends IconButtonProps {\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_ShowHideColumnsButton: FC<Props> = ({\n tableInstance,\n ...rest\n}) => {\n const {\n options: {\n icons: { ViewColumnIcon },\n localization,\n },\n } = tableInstance;\n\n const [anchorEl, setAnchorEl] = useState<null | HTMLElement>(null);\n\n const handleClick = (event: MouseEvent<HTMLElement>) => {\n setAnchorEl(event.currentTarget);\n };\n\n return (\n <>\n <Tooltip arrow title={localization.showHideColumns}>\n <IconButton\n aria-label={localization.showHideColumns}\n onClick={handleClick}\n {...rest}\n >\n <ViewColumnIcon />\n </IconButton>\n </Tooltip>\n <MRT_ShowHideColumnsMenu\n anchorEl={anchorEl}\n setAnchorEl={setAnchorEl}\n tableInstance={tableInstance}\n />\n </>\n );\n};\n","import React, { FC, MouseEvent } from 'react';\nimport { IconButton, IconButtonProps, Tooltip } from '@mui/material';\nimport { MRT_TableInstance } from '..';\n\ninterface Props extends IconButtonProps {\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_ToggleDensePaddingButton: FC<Props> = ({\n tableInstance,\n ...rest\n}) => {\n const {\n getState,\n options: {\n icons: { DensityMediumIcon, DensitySmallIcon },\n localization,\n onToggleDensePadding,\n },\n setIsDensePadding,\n } = tableInstance;\n\n const { isDensePadding } = getState();\n\n const handleToggleDensePadding = (event: MouseEvent<HTMLButtonElement>) => {\n onToggleDensePadding?.({\n event,\n isDensePadding: !isDensePadding,\n tableInstance,\n });\n setIsDensePadding(!isDensePadding);\n };\n\n return (\n <Tooltip arrow title={localization.toggleDensePadding}>\n <IconButton\n aria-label={localization.toggleDensePadding}\n onClick={handleToggleDensePadding}\n {...rest}\n >\n {isDensePadding ? <DensitySmallIcon /> : <DensityMediumIcon />}\n </IconButton>\n </Tooltip>\n );\n};\n","import React, { FC, MouseEvent } from 'react';\nimport { IconButton, IconButtonProps, Tooltip } from '@mui/material';\nimport { MRT_TableInstance } from '..';\n\ninterface Props extends IconButtonProps {\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_ToggleFiltersButton: FC<Props> = ({\n tableInstance,\n ...rest\n}) => {\n const {\n getState,\n options: {\n icons: { FilterListIcon, FilterListOffIcon },\n localization,\n onToggleShowFilters,\n },\n setShowFilters,\n } = tableInstance;\n\n const { showFilters } = getState();\n\n const handleToggleShowFilters = (event: MouseEvent<HTMLButtonElement>) => {\n onToggleShowFilters?.({\n event,\n showFilters: !showFilters,\n tableInstance,\n });\n setShowFilters(!showFilters);\n };\n\n return (\n <Tooltip arrow title={localization.showHideFilters}>\n <IconButton\n aria-label={localization.showHideFilters}\n onClick={handleToggleShowFilters}\n {...rest}\n >\n {showFilters ? <FilterListOffIcon /> : <FilterListIcon />}\n </IconButton>\n </Tooltip>\n );\n};\n","import React, { FC, MouseEvent } from 'react';\nimport { IconButton, IconButtonProps, Tooltip } from '@mui/material';\nimport { MRT_TableInstance } from '..';\n\ninterface Props extends IconButtonProps {\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_ToggleGlobalFilterButton: FC<Props> = ({\n tableInstance,\n ...rest\n}) => {\n const {\n getState,\n options: {\n icons: { SearchIcon, SearchOffIcon },\n idPrefix,\n localization,\n muiSearchTextFieldProps,\n onToggleShowGlobalFilter,\n },\n setShowGlobalFilter,\n } = tableInstance;\n\n const { showGlobalFilter } = getState();\n\n const textFieldProps =\n muiSearchTextFieldProps instanceof Function\n ? muiSearchTextFieldProps({ tableInstance })\n : muiSearchTextFieldProps;\n\n const handleToggleSearch = (event: MouseEvent<HTMLButtonElement>) => {\n onToggleShowGlobalFilter?.({\n event,\n showGlobalFilter: !showGlobalFilter,\n tableInstance,\n });\n setShowGlobalFilter(!showGlobalFilter);\n setTimeout(\n () =>\n document\n .getElementById(\n textFieldProps?.id ?? `mrt-${idPrefix}-search-text-field`,\n )\n ?.focus(),\n 200,\n );\n };\n\n return (\n <Tooltip arrow title={localization.showHideSearch}>\n <IconButton onClick={handleToggleSearch} {...rest}>\n {showGlobalFilter ? <SearchOffIcon /> : <SearchIcon />}\n </IconButton>\n </Tooltip>\n );\n};\n","import React, { FC } from 'react';\nimport { Box } from '@mui/material';\nimport { MRT_FullScreenToggleButton } from '../buttons/MRT_FullScreenToggleButton';\nimport { MRT_ShowHideColumnsButton } from '../buttons/MRT_ShowHideColumnsButton';\nimport { MRT_ToggleDensePaddingButton } from '../buttons/MRT_ToggleDensePaddingButton';\nimport { MRT_ToggleFiltersButton } from '../buttons/MRT_ToggleFiltersButton';\nimport { MRT_ToggleGlobalFilterButton } from '../buttons/MRT_ToggleGlobalFilterButton';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_ToolbarInternalButtons: FC<Props> = ({ tableInstance }) => {\n const {\n options: {\n enableColumnFilters,\n enableDensePaddingToggle,\n enableFilters,\n enableFullScreenToggle,\n enableGlobalFilter,\n enableHiding,\n renderToolbarInternalActions,\n },\n } = tableInstance;\n\n if (renderToolbarInternalActions) {\n return (\n <>\n {renderToolbarInternalActions({\n MRT_FullScreenToggleButton,\n MRT_ShowHideColumnsButton,\n MRT_ToggleDensePaddingButton,\n MRT_ToggleFiltersButton,\n MRT_ToggleGlobalFilterButton,\n tableInstance,\n })}\n </>\n );\n }\n\n return (\n <Box\n sx={{\n display: 'flex',\n alignItems: 'center',\n }}\n >\n {enableFilters && enableGlobalFilter && (\n <MRT_ToggleGlobalFilterButton tableInstance={tableInstance} />\n )}\n {enableFilters && enableColumnFilters && (\n <MRT_ToggleFiltersButton tableInstance={tableInstance} />\n )}\n {enableHiding && (\n <MRT_ShowHideColumnsButton tableInstance={tableInstance} />\n )}\n {enableDensePaddingToggle && (\n <MRT_ToggleDensePaddingButton tableInstance={tableInstance} />\n )}\n {enableFullScreenToggle && (\n <MRT_FullScreenToggleButton tableInstance={tableInstance} />\n )}\n </Box>\n );\n};\n","import React, { ChangeEvent, FC } from 'react';\nimport { TablePagination } from '@mui/material';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_TablePagination: FC<Props> = ({ tableInstance }) => {\n const {\n getPrePaginationRowModel,\n getState,\n setPageIndex,\n setPageSize,\n options: { muiTablePaginationProps },\n } = tableInstance;\n\n const {\n pagination: { pageSize = 10, pageIndex = 0 },\n } = getState();\n\n const tablePaginationProps =\n muiTablePaginationProps instanceof Function\n ? muiTablePaginationProps({ tableInstance })\n : muiTablePaginationProps;\n\n const handleChangeRowsPerPage = (event: ChangeEvent<HTMLInputElement>) => {\n setPageSize(+event.target.value);\n };\n\n const showFirstLastPageButtons =\n getPrePaginationRowModel().rows.length / pageSize > 2;\n\n return (\n <TablePagination\n SelectProps={{\n sx: { m: '0 1rem 0 1ch' },\n MenuProps: { MenuListProps: { disablePadding: true } },\n }}\n component=\"div\"\n count={getPrePaginationRowModel().rows.length}\n onPageChange={(_: any, newPage: number) => setPageIndex(newPage)}\n onRowsPerPageChange={handleChangeRowsPerPage}\n page={pageIndex}\n rowsPerPage={pageSize}\n rowsPerPageOptions={[5, 10, 15, 20, 25, 30, 50, 100]}\n showFirstButton={showFirstLastPageButtons}\n showLastButton={showFirstLastPageButtons}\n {...tablePaginationProps}\n sx={{\n m: '0 0.5rem',\n position: 'relative',\n zIndex: 2,\n ...tablePaginationProps?.sx,\n }}\n />\n );\n};\n","import React, { FC, Fragment } from 'react';\nimport { Alert, Box, Chip, Collapse, useMediaQuery } from '@mui/material';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_ToolbarAlertBanner: FC<Props> = ({ tableInstance }) => {\n const {\n getPrePaginationRowModel,\n getSelectedRowModel,\n getState,\n toggleColumnGrouping,\n options: {\n localization,\n muiTableToolbarAlertBannerProps,\n positionToolbarActions,\n positionToolbarAlertBanner,\n renderToolbarCustomActions,\n },\n } = tableInstance;\n\n const { grouping } = getState();\n\n const isMobile = useMediaQuery('(max-width:720px)');\n\n const alertProps =\n muiTableToolbarAlertBannerProps instanceof Function\n ? muiTableToolbarAlertBannerProps({ tableInstance })\n : muiTableToolbarAlertBannerProps;\n\n const selectMessage =\n getSelectedRowModel().rows.length > 0\n ? localization.selectedCountOfRowCountRowsSelected\n ?.replace(\n '{selectedCount}',\n getSelectedRowModel().rows.length.toString(),\n )\n ?.replace(\n '{rowCount}',\n getPrePaginationRowModel().rows.length.toString(),\n )\n : null;\n\n const groupedByMessage =\n grouping.length > 0 ? (\n <span>\n {localization.groupedBy}{' '}\n {grouping.map((columnId, index) => (\n <Fragment key={`${index}-${columnId}`}>\n {index > 0 ? localization.thenBy : ''}\n <Chip\n color=\"secondary\"\n label={\n tableInstance\n .getAllColumns()\n .find((column) => column.id === columnId)?.header\n }\n onDelete={() => toggleColumnGrouping(columnId)}\n />\n </Fragment>\n ))}\n </span>\n ) : null;\n\n const displayAbsolute = !(\n isMobile ||\n (positionToolbarAlertBanner === 'bottom' &&\n positionToolbarActions === 'bottom') ||\n (positionToolbarAlertBanner === 'top' && !!renderToolbarCustomActions)\n );\n\n return (\n <Collapse\n in={!!selectMessage || !!groupedByMessage}\n timeout={displayAbsolute ? 0 : 200}\n >\n <Alert\n color=\"info\"\n icon={false}\n sx={{\n borderRadius: 0,\n fontSize: '1rem',\n left: 0,\n p: 0,\n position: displayAbsolute ? 'absolute' : 'relative',\n right: 0,\n minHeight: '3.5rem',\n top: 0,\n width: '100%',\n zIndex: 2,\n ...alertProps?.sx,\n }}\n {...alertProps}\n >\n <Box sx={{ p: '0.5rem 1rem' }}>\n {selectMessage}\n <br />\n {groupedByMessage}\n </Box>\n </Alert>\n </Collapse>\n );\n};\n","import React, { FC } from 'react';\nimport { Collapse, LinearProgress } from '@mui/material';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_LinearProgressBar: FC<Props> = ({ tableInstance }) => {\n const {\n options: { muiLinearProgressProps, isReloading, isLoading },\n } = tableInstance;\n\n const linearProgressProps =\n muiLinearProgressProps instanceof Function\n ? muiLinearProgressProps({ tableInstance })\n : muiLinearProgressProps;\n\n return (\n <Collapse in={isReloading || isLoading} unmountOnExit>\n <LinearProgress\n aria-label=\"Loading\"\n aria-busy=\"true\"\n {...linearProgressProps}\n />\n </Collapse>\n );\n};\n","import React, { FC } from 'react';\nimport { alpha, Box, Theme, Toolbar } from '@mui/material';\nimport { MRT_SearchTextField } from '../inputs/MRT_SearchTextField';\nimport { MRT_ToolbarInternalButtons } from './MRT_ToolbarInternalButtons';\nimport { MRT_TablePagination } from './MRT_TablePagination';\nimport { MRT_ToolbarAlertBanner } from './MRT_ToolbarAlertBanner';\nimport { MRT_LinearProgressBar } from './MRT_LinearProgressBar';\nimport { MRT_TableInstance } from '..';\n\nexport const commonToolbarStyles = ({ theme }: { theme: Theme }) => ({\n backgroundColor: theme.palette.background.default,\n backgroundImage: `linear-gradient(${alpha(\n theme.palette.common.white,\n 0.05,\n )},${alpha(theme.palette.common.white, 0.05)})`,\n display: 'grid',\n p: '0 !important',\n width: '100%',\n zIndex: 1,\n});\n\ninterface Props {\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_ToolbarTop: FC<Props> = ({ tableInstance }) => {\n const {\n getState,\n options: {\n enableGlobalFilter,\n enablePagination,\n enableToolbarInternalActions,\n idPrefix,\n muiTableToolbarTopProps,\n positionPagination,\n positionToolbarActions,\n positionToolbarAlertBanner,\n renderToolbarCustomActions,\n },\n } = tableInstance;\n\n const { isFullScreen } = getState();\n\n const toolbarProps =\n muiTableToolbarTopProps instanceof Function\n ? muiTableToolbarTopProps({ tableInstance })\n : muiTableToolbarTopProps;\n\n return (\n <Toolbar\n id={`mrt-${idPrefix}-toolbar-top`}\n variant=\"dense\"\n {...toolbarProps}\n sx={(theme) =>\n ({\n position: isFullScreen ? 'sticky' : undefined,\n top: isFullScreen ? '0' : undefined,\n ...commonToolbarStyles({ theme }),\n ...toolbarProps?.sx,\n } as any)\n }\n >\n {positionToolbarAlertBanner === 'top' && (\n <MRT_ToolbarAlertBanner tableInstance={tableInstance} />\n )}\n <Box\n sx={{\n p: '0.5rem',\n display: 'flex',\n justifyContent: 'space-between',\n }}\n >\n {renderToolbarCustomActions?.({ tableInstance }) ?? <span />}\n <Box\n sx={{\n display: 'flex',\n gap: '0.5rem',\n position: 'relative',\n zIndex: 3,\n }}\n >\n {enableGlobalFilter && (\n <MRT_SearchTextField tableInstance={tableInstance} />\n )}\n {enableToolbarInternalActions && positionToolbarActions === 'top' && (\n <MRT_ToolbarInternalButtons tableInstance={tableInstance} />\n )}\n </Box>\n </Box>\n <div>\n {enablePagination &&\n ['top', 'both'].includes(positionPagination ?? '') && (\n <MRT_TablePagination tableInstance={tableInstance} />\n )}\n </div>\n <MRT_LinearProgressBar tableInstance={tableInstance} />\n </Toolbar>\n );\n};\n","import React, { FC } from 'react';\nimport { alpha, Box, Toolbar } from '@mui/material';\nimport { MRT_TablePagination } from './MRT_TablePagination';\nimport { MRT_ToolbarInternalButtons } from './MRT_ToolbarInternalButtons';\nimport { MRT_ToolbarAlertBanner } from './MRT_ToolbarAlertBanner';\nimport { MRT_LinearProgressBar } from './MRT_LinearProgressBar';\nimport { commonToolbarStyles } from './MRT_ToolbarTop';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_ToolbarBottom: FC<Props> = ({ tableInstance }) => {\n const {\n getState,\n options: {\n enableToolbarInternalActions,\n idPrefix,\n enablePagination,\n muiTableToolbarBottomProps,\n positionPagination,\n positionToolbarActions,\n positionToolbarAlertBanner,\n },\n } = tableInstance;\n\n const { isFullScreen } = getState();\n\n const toolbarProps =\n muiTableToolbarBottomProps instanceof Function\n ? muiTableToolbarBottomProps({ tableInstance })\n : muiTableToolbarBottomProps;\n\n return (\n <Toolbar\n id={`mrt-${idPrefix}-toolbar-bottom`}\n variant=\"dense\"\n {...toolbarProps}\n sx={(theme) =>\n ({\n ...commonToolbarStyles({ theme }),\n bottom: isFullScreen ? '0' : undefined,\n position: isFullScreen ? 'fixed' : undefined,\n boxShadow: `-3px 0 6px ${alpha(theme.palette.common.black, 0.1)}`,\n ...toolbarProps?.sx,\n } as any)\n }\n >\n <MRT_LinearProgressBar tableInstance={tableInstance} />\n <Box\n sx={{ display: 'flex', justifyContent: 'space-between', width: '100%' }}\n >\n {enableToolbarInternalActions && positionToolbarActions === 'bottom' ? (\n <MRT_ToolbarInternalButtons tableInstance={tableInstance} />\n ) : (\n <span />\n )}\n {positionToolbarAlertBanner === 'bottom' && (\n <MRT_ToolbarAlertBanner tableInstance={tableInstance} />\n )}\n {enablePagination &&\n ['bottom', 'both'].includes(positionPagination ?? '') && (\n <MRT_TablePagination tableInstance={tableInstance} />\n )}\n </Box>\n </Toolbar>\n );\n};\n","import React, {\n ChangeEvent,\n FC,\n MouseEvent,\n useCallback,\n useState,\n} from 'react';\nimport {\n Chip,\n debounce,\n IconButton,\n InputAdornment,\n MenuItem,\n TextField,\n TextFieldProps,\n Tooltip,\n} from '@mui/material';\nimport type { MRT_Header, MRT_TableInstance } from '..';\nimport { MRT_FilterOptionMenu } from '../menus/MRT_FilterOptionMenu';\nimport { MRT_FILTER_OPTION } from '../enums';\n\ninterface Props {\n header: MRT_Header;\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_FilterTextField: FC<Props> = ({ header, tableInstance }) => {\n const {\n getState,\n options: {\n icons: { FilterListIcon, CloseIcon },\n idPrefix,\n localization,\n muiTableHeadCellFilterTextFieldProps,\n },\n setCurrentFilterFns,\n } = tableInstance;\n\n const { column } = header;\n\n const { currentFilterFns } = getState();\n\n const [anchorEl, setAnchorEl] = useState<null | HTMLElement>(null);\n\n const mTableHeadCellFilterTextFieldProps =\n muiTableHeadCellFilterTextFieldProps instanceof Function\n ? muiTableHeadCellFilterTextFieldProps({ column, tableInstance })\n : muiTableHeadCellFilterTextFieldProps;\n\n const mcTableHeadCellFilterTextFieldProps =\n column.muiTableHeadCellFilterTextFieldProps instanceof Function\n ? column.muiTableHeadCellFilterTextFieldProps({ column, tableInstance })\n : column.muiTableHeadCellFilterTextFieldProps;\n\n const textFieldProps = {\n ...mTableHeadCellFilterTextFieldProps,\n ...mcTableHeadCellFilterTextFieldProps,\n } as TextFieldProps;\n\n const [filterValue, setFilterValue] = useState<string>(\n (column.getColumnFilterValue() ?? '') as string,\n );\n\n const handleChange = useCallback(\n debounce(\n (event: ChangeEvent<HTMLInputElement>) =>\n column.setColumnFilterValue(event.target.value ?? undefined),\n 150,\n ),\n [],\n );\n\n const handleFilterMenuOpen = (event: MouseEvent<HTMLElement>) => {\n setAnchorEl(event.currentTarget);\n };\n\n const handleClear = () => {\n setFilterValue('');\n column.setColumnFilterValue(undefined);\n };\n\n const handleClearFilterChip = () => {\n setFilterValue('');\n column.setColumnFilterValue(undefined);\n setCurrentFilterFns((prev) => ({\n ...prev,\n [header.id]: MRT_FILTER_OPTION.BEST_MATCH,\n }));\n };\n\n if (column.Filter) {\n return <>{column.Filter?.({ header, tableInstance })}</>;\n }\n\n const filterId = `mrt-${idPrefix}-${header.id}-filter-text-field`;\n const filterFn = currentFilterFns?.[header.id];\n const isSelectFilter = !!column.filterSelectOptions;\n const filterChipLabel =\n !(filterFn instanceof Function) &&\n [MRT_FILTER_OPTION.EMPTY, MRT_FILTER_OPTION.NOT_EMPTY].includes(\n filterFn as MRT_FILTER_OPTION,\n )\n ? //@ts-ignore\n localization[\n `filter${filterFn.charAt(0).toUpperCase() + filterFn.slice(1)}`\n ]\n : '';\n const filterPlaceholder = localization.filterByColumn?.replace(\n '{column}',\n String(column.header),\n );\n\n return (\n <>\n <TextField\n fullWidth\n id={filterId}\n inputProps={{\n disabled: !!filterChipLabel,\n sx: {\n textOverflow: 'ellipsis',\n width: filterChipLabel ? 0 : undefined,\n },\n title: filterPlaceholder,\n }}\n helperText={\n <label htmlFor={filterId}>\n {filterFn instanceof Function\n ? localization.filterMode.replace(\n '{filterType}',\n // @ts-ignore\n localization[\n `filter${\n filterFn.name.charAt(0).toUpperCase() +\n filterFn.name.slice(1)\n }`\n ] ?? '',\n ) ?? ''\n : localization.filterMode.replace(\n '{filterType}',\n // @ts-ignore\n localization[\n `filter${\n filterFn.charAt(0).toUpperCase() + filterFn.slice(1)\n }`\n ],\n )}\n </label>\n }\n FormHelperTextProps={{\n sx: { fontSize: '0.6rem', lineHeight: '0.8rem' },\n }}\n label={isSelectFilter && !filterValue ? filterPlaceholder : undefined}\n margin=\"none\"\n placeholder={\n filterPlaceholder\n // filterChipLabel || isSelectFilter ? undefined : filterPlaceholder\n }\n onChange={(event: ChangeEvent<HTMLInputElement>) => {\n setFilterValue(event.target.value);\n handleChange(event);\n }}\n onClick={(e: MouseEvent<HTMLInputElement>) => e.stopPropagation()}\n select={isSelectFilter}\n value={filterValue ?? ''}\n variant=\"standard\"\n InputProps={{\n startAdornment: !isSelectFilter && (\n <InputAdornment position=\"start\">\n <Tooltip arrow title={localization.changeFilterMode}>\n <span>\n <IconButton\n aria-label={localization.changeFilterMode}\n onClick={handleFilterMenuOpen}\n size=\"small\"\n sx={{ height: '1.75rem', width: '1.75rem' }}\n >\n <FilterListIcon />\n </IconButton>\n </span>\n </Tooltip>\n {filterChipLabel && (\n <Chip\n onDelete={handleClearFilterChip}\n label={filterChipLabel}\n />\n )}\n </InputAdornment>\n ),\n endAdornment: !filterChipLabel && (\n <InputAdornment position=\"end\">\n <Tooltip\n arrow\n disableHoverListener={isSelectFilter}\n placement=\"right\"\n title={localization.clearFilter ?? ''}\n >\n <span>\n <IconButton\n aria-label={localization.clearFilter}\n disabled={!filterValue?.length}\n onClick={handleClear}\n size=\"small\"\n sx={{\n height: '1.75rem',\n width: '1.75rem',\n }}\n >\n <CloseIcon />\n </IconButton>\n </span>\n </Tooltip>\n </InputAdornment>\n ),\n }}\n {...textFieldProps}\n sx={{\n m: '-0.25rem',\n p: 0,\n minWidth: !filterChipLabel ? '5rem' : 'auto',\n width: 'calc(100% + 0.5rem)',\n mt: isSelectFilter && !filterValue ? '-1rem' : undefined,\n '&\t.MuiSelect-icon': {\n mr: '1.5rem',\n },\n ...textFieldProps?.sx,\n }}\n >\n {isSelectFilter && (\n <MenuItem divider disabled={!filterValue} value=\"\">\n {localization.clearFilter}\n </MenuItem>\n )}\n {column?.filterSelectOptions?.map((option) => {\n let value;\n let text;\n if (typeof option === 'string') {\n value = option;\n text = option;\n } else if (typeof option === 'object') {\n value = option.value;\n text = option.text;\n }\n return (\n <MenuItem key={value} value={value}>\n {text}\n </MenuItem>\n );\n })}\n </TextField>\n <MRT_FilterOptionMenu\n anchorEl={anchorEl}\n header={header}\n setAnchorEl={setAnchorEl}\n tableInstance={tableInstance}\n />\n </>\n );\n};\n","import React, { FC, MouseEvent, useState } from 'react';\nimport { IconButton, Tooltip } from '@mui/material';\nimport { MRT_ColumnActionMenu } from '../menus/MRT_ColumnActionMenu';\nimport type { MRT_Header, MRT_TableInstance } from '..';\n\ninterface Props {\n header: MRT_Header;\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_ToggleColumnActionMenuButton: FC<Props> = ({\n header,\n tableInstance,\n}) => {\n const {\n options: {\n icons: { MoreVertIcon },\n localization,\n muiTableHeadCellColumnActionsButtonProps,\n },\n } = tableInstance;\n\n const { column } = header;\n\n const [anchorEl, setAnchorEl] = useState<null | HTMLElement>(null);\n\n const handleClick = (event: MouseEvent<HTMLElement>) => {\n event.stopPropagation();\n event.preventDefault();\n setAnchorEl(event.currentTarget);\n };\n\n const mTableHeadCellColumnActionsButtonProps =\n muiTableHeadCellColumnActionsButtonProps instanceof Function\n ? muiTableHeadCellColumnActionsButtonProps({ column, tableInstance })\n : muiTableHeadCellColumnActionsButtonProps;\n\n const mcTableHeadCellColumnActionsButtonProps =\n column.muiTableHeadCellColumnActionsButtonProps instanceof Function\n ? column.muiTableHeadCellColumnActionsButtonProps({\n column,\n tableInstance,\n })\n : column.muiTableHeadCellColumnActionsButtonProps;\n\n const iconButtonProps = {\n ...mTableHeadCellColumnActionsButtonProps,\n ...mcTableHeadCellColumnActionsButtonProps,\n };\n\n return (\n <>\n <Tooltip\n arrow\n enterDelay={1000}\n enterNextDelay={1000}\n placement=\"top\"\n title={localization.columnActions}\n >\n <IconButton\n aria-label={localization.columnActions}\n onClick={handleClick}\n size=\"small\"\n {...iconButtonProps}\n sx={{\n height: '2rem',\n mr: '2px',\n mt: '-0.2rem',\n opacity: 0.5,\n transition: 'opacity 0.2s',\n width: '2rem',\n '&:hover': {\n opacity: 1,\n },\n ...iconButtonProps.sx,\n }}\n >\n <MoreVertIcon />\n </IconButton>\n </Tooltip>\n <MRT_ColumnActionMenu\n anchorEl={anchorEl}\n header={header}\n setAnchorEl={setAnchorEl}\n tableInstance={tableInstance}\n />\n </>\n );\n};\n","import React, { FC, MouseEvent } from 'react';\nimport {\n TableCell,\n TableSortLabel,\n Divider,\n Collapse,\n Tooltip,\n Box,\n IconButton,\n alpha,\n Theme,\n} from '@mui/material';\nimport { MRT_FilterTextField } from '../inputs/MRT_FilterTextField';\nimport { MRT_ToggleColumnActionMenuButton } from '../buttons/MRT_ToggleColumnActionMenuButton';\nimport type { MRT_Header, MRT_TableInstance } from '..';\nimport { ColumnResizerProps } from '@tanstack/react-table';\n\ninterface Props {\n header: MRT_Header;\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_TableHeadCell: FC<Props> = ({ header, tableInstance }) => {\n const {\n getState,\n options: {\n enableColumnActions,\n enableColumnFilters,\n enableColumnResizing,\n icons: { FilterAltIcon, FilterAltOff },\n localization,\n muiTableHeadCellProps,\n },\n setShowFilters,\n } = tableInstance;\n\n const { isDensePadding, showFilters } = getState();\n\n const { column } = header;\n\n const mTableHeadCellProps =\n muiTableHeadCellProps instanceof Function\n ? muiTableHeadCellProps({ column, tableInstance })\n : muiTableHeadCellProps;\n\n const mcTableHeadCellProps =\n column.muiTableHeadCellProps instanceof Function\n ? column.muiTableHeadCellProps({ column, tableInstance })\n : column.muiTableHeadCellProps;\n\n const tableCellProps = {\n ...header.getHeaderProps(),\n ...mTableHeadCellProps,\n ...mcTableHeadCellProps,\n };\n\n const sortTooltip = !!column.getIsSorted()\n ? column.getIsSorted() === 'desc'\n ? localization.sortedByColumnDesc.replace('{column}', column.header)\n : localization.sortedByColumnAsc.replace('{column}', column.header)\n : localization.unsorted;\n\n const filterFn = getState()?.currentFilterFns?.[header.id];\n\n const filterTooltip = !!column.getColumnFilterValue()\n ? localization.filteringByColumn\n .replace('{column}', String(column.header))\n .replace(\n '{filterType}',\n filterFn instanceof Function\n ? ''\n : // @ts-ignore\n localization[\n `filter${filterFn.charAt(0).toUpperCase() + filterFn.slice(1)}`\n ],\n )\n .replace('{filterValue}', column.getColumnFilterValue() as string)\n .replace('\" \"', '')\n : localization.showHideFilters;\n\n const headerElement =\n column?.Header?.({\n header,\n tableInstance,\n }) ?? column.header;\n\n return (\n <TableCell\n align={column.columnDefType === 'group' ? 'center' : 'left'}\n {...tableCellProps}\n //@ts-ignore\n sx={(theme: Theme) => ({\n backgroundColor: theme.palette.background.default,\n backgroundImage: `linear-gradient(${alpha(\n theme.palette.common.white,\n 0.05,\n )},${alpha(theme.palette.common.white, 0.05)})`,\n fontWeight: 'bold',\n height: '100%',\n maxWidth: `min(${column.getWidth()}px, ${column.maxWidth}px)`,\n minWidth: `max(${column.getWidth()}px, ${column.minWidth}px)`,\n p: isDensePadding\n ? column.columnDefType === 'display'\n ? '0 0.5rem'\n : '0.5rem'\n : column.columnDefType === 'display'\n ? '0.5rem 0.75rem'\n : '1rem',\n pt:\n column.columnDefType === 'display'\n ? 0\n : isDensePadding\n ? '0.75rem'\n : '1.25rem',\n pb: column.columnDefType === 'display' ? 0 : undefined,\n overflow: 'visible',\n transition: `all ${enableColumnResizing ? 0 : '0.2s'} ease-in-out`,\n verticalAlign: 'text-top',\n width: header.getWidth(),\n zIndex: column.getIsResizing() ? 2 : 1,\n //@ts-ignore\n ...tableCellProps?.sx,\n })}\n >\n {header.isPlaceholder ? null : column.columnDefType === 'display' ? (\n headerElement\n ) : (\n <Box\n sx={{\n alignItems: 'flex-start',\n display: 'flex',\n justifyContent:\n column.columnDefType === 'group' ? 'center' : 'space-between',\n width: '100%',\n }}\n >\n <Box\n onClick={() => column.toggleSorting()}\n sx={{\n alignItems: 'center',\n cursor:\n column.getCanSort() && column.columnDefType !== 'group'\n ? 'pointer'\n : undefined,\n display: 'flex',\n flexWrap: 'nowrap',\n whiteSpace: column.header.length < 24 ? 'nowrap' : 'normal',\n }}\n >\n {headerElement}\n {column.columnDefType === 'data' && column.getCanSort() && (\n <Tooltip arrow placement=\"top\" title={sortTooltip}>\n <TableSortLabel\n aria-label={sortTooltip}\n active={!!column.getIsSorted()}\n direction={\n column.getIsSorted()\n ? (column.getIsSorted() as 'asc' | 'desc')\n : undefined\n }\n />\n </Tooltip>\n )}\n {column.columnDefType === 'data' &&\n enableColumnFilters &&\n !!column.getCanColumnFilter() && (\n <Tooltip arrow placement=\"top\" title={filterTooltip}>\n <IconButton\n disableRipple\n onClick={(event: MouseEvent<HTMLButtonElement>) => {\n event.stopPropagation();\n setShowFilters(!showFilters);\n }}\n size=\"small\"\n sx={{\n m: 0,\n opacity: !!column.getColumnFilterValue() ? 0.8 : 0,\n p: '2px',\n transition: 'all 0.2s ease-in-out',\n '&:hover': {\n backgroundColor: 'transparent',\n opacity: 0.8,\n },\n }}\n >\n {showFilters && !column.getColumnFilterValue() ? (\n <FilterAltOff />\n ) : (\n <FilterAltIcon />\n )}\n </IconButton>\n </Tooltip>\n )}\n </Box>\n {(enableColumnActions || column.enableColumnActions) &&\n column.enableColumnActions !== false &&\n column.columnDefType !== 'group' && (\n <MRT_ToggleColumnActionMenuButton\n header={header}\n tableInstance={tableInstance}\n />\n )}\n {column.getCanResize() && (\n <Divider\n flexItem\n orientation=\"vertical\"\n onDoubleClick={() => header.resetSize()}\n sx={(theme: Theme) => ({\n borderRadius: '2px',\n borderRightWidth: '2px',\n cursor: 'col-resize',\n height:\n showFilters && column.columnDefType === 'data'\n ? '4rem'\n : '2rem',\n opacity: 0.8,\n position: 'absolute',\n right: '1px',\n touchAction: 'none',\n transition: 'all 0.2s ease-in-out',\n userSelect: 'none',\n zIndex: 2000,\n '&:active': {\n backgroundColor: theme.palette.info.main,\n opacity: 1,\n },\n })}\n {...(header.getResizerProps((props: ColumnResizerProps) => ({\n ...props,\n style: {\n transform: column.getIsResizing()\n ? `translateX(${getState().columnSizingInfo.deltaOffset}px)`\n : '',\n },\n })) as any)}\n />\n )}\n </Box>\n )}\n {column.columnDefType === 'data' && column.getCanColumnFilter() && (\n <Collapse in={showFilters}>\n <MRT_FilterTextField header={header} tableInstance={tableInstance} />\n </Collapse>\n )}\n </TableCell>\n );\n};\n","import React, { CSSProperties, FC } from 'react';\nimport { alpha, TableRow } from '@mui/material';\nimport { MRT_TableHeadCell } from './MRT_TableHeadCell';\nimport type { MRT_Header, MRT_HeaderGroup, MRT_TableInstance } from '..';\n\ninterface Props {\n headerGroup: MRT_HeaderGroup;\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_TableHeadRow: FC<Props> = ({ headerGroup, tableInstance }) => {\n const {\n options: { muiTableHeadRowProps },\n } = tableInstance;\n\n const mTableHeadRowProps =\n muiTableHeadRowProps instanceof Function\n ? muiTableHeadRowProps({ headerGroup, tableInstance })\n : muiTableHeadRowProps;\n\n const tableRowProps = {\n ...headerGroup?.getHeaderGroupProps(),\n ...mTableHeadRowProps,\n };\n\n return (\n <TableRow\n {...tableRowProps}\n sx={(theme) =>\n ({\n boxShadow: `4px 0 8px ${alpha(theme.palette.common.black, 0.1)}`,\n //@ts-ignore\n ...tableRowProps?.sx,\n } as CSSProperties)\n }\n >\n {headerGroup.headers.map((header: MRT_Header, index) => (\n <MRT_TableHeadCell\n header={header}\n key={header.id || index}\n tableInstance={tableInstance}\n />\n ))}\n </TableRow>\n );\n};\n","import React, { FC } from 'react';\nimport { TableHead } from '@mui/material';\nimport { MRT_TableHeadRow } from './MRT_TableHeadRow';\nimport type { MRT_HeaderGroup, MRT_TableInstance } from '..';\n\ninterface Props {\n pinned: 'left' | 'center' | 'right' | 'none';\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_TableHead: FC<Props> = ({ pinned, tableInstance }) => {\n const {\n getCenterHeaderGroups,\n getHeaderGroups,\n getLeftHeaderGroups,\n getRightHeaderGroups,\n options: { muiTableHeadProps },\n } = tableInstance;\n\n const tableHeadProps =\n muiTableHeadProps instanceof Function\n ? muiTableHeadProps({ tableInstance })\n : muiTableHeadProps;\n\n const getHeaderGroupsMap = {\n center: getCenterHeaderGroups,\n left: getLeftHeaderGroups,\n none: getHeaderGroups,\n right: getRightHeaderGroups,\n };\n\n return (\n <TableHead {...tableHeadProps}>\n {getHeaderGroupsMap[pinned]().map((headerGroup) => (\n <MRT_TableHeadRow\n headerGroup={headerGroup as MRT_HeaderGroup}\n key={headerGroup.getHeaderGroupProps().key}\n tableInstance={tableInstance}\n />\n ))}\n </TableHead>\n );\n};\n","import React, {\n ChangeEvent,\n FC,\n FocusEvent,\n MouseEvent,\n useState,\n} from 'react';\nimport { TextField } from '@mui/material';\nimport type { MRT_Cell, MRT_Row, MRT_TableInstance } from '..';\n\ninterface Props {\n cell: MRT_Cell;\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_EditCellTextField: FC<Props> = ({ cell, tableInstance }) => {\n const {\n getState,\n options: {\n idPrefix,\n enableEditing,\n muiTableBodyCellEditTextFieldProps,\n onCellEditBlur,\n onCellEditChange,\n },\n setCurrentEditingCell,\n setCurrentEditingRow,\n } = tableInstance;\n\n const [value, setValue] = useState(cell.value);\n\n const { column, row } = cell;\n\n const handleChange = (event: ChangeEvent<HTMLInputElement>) => {\n setValue(event.target.value);\n column.onCellEditChange?.({ event, cell, tableInstance });\n onCellEditChange?.({ event, cell, tableInstance });\n };\n\n const handleBlur = (event: FocusEvent<HTMLInputElement>) => {\n if (getState().currentEditingRow) {\n row.values[column.id] = value;\n setCurrentEditingRow({ ...getState().currentEditingRow } as MRT_Row);\n }\n setCurrentEditingCell(null);\n column.onCellEditBlur?.({ event, cell, tableInstance });\n onCellEditBlur?.({ event, cell, tableInstance });\n };\n\n const mTableBodyCellEditTextFieldProps =\n muiTableBodyCellEditTextFieldProps instanceof Function\n ? muiTableBodyCellEditTextFieldProps({ cell, tableInstance })\n : muiTableBodyCellEditTextFieldProps;\n\n const mcTableBodyCellEditTextFieldProps =\n column.muiTableBodyCellEditTextFieldProps instanceof Function\n ? column.muiTableBodyCellEditTextFieldProps({ cell, tableInstance })\n : column.muiTableBodyCellEditTextFieldProps;\n\n const textFieldProps = {\n ...mTableBodyCellEditTextFieldProps,\n ...mcTableBodyCellEditTextFieldProps,\n };\n\n if (enableEditing && column.enableEditing !== false && column.Edit) {\n return <>{column.Edit?.({ cell, tableInstance })}</>;\n }\n\n return (\n <TextField\n id={`mrt-${idPrefix}-edit-cell-text-field-${cell.id}`}\n margin=\"dense\"\n onBlur={handleBlur}\n onChange={handleChange}\n onClick={(e: MouseEvent<HTMLInputElement>) => e.stopPropagation()}\n placeholder={column.header}\n value={value}\n variant=\"standard\"\n {...textFieldProps}\n />\n );\n};\n","import React, { FC, useState } from 'react';\nimport { Button, Tooltip } from '@mui/material';\nimport { MRT_Cell, MRT_TableInstance } from '..';\n\ninterface Props {\n cell: MRT_Cell;\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_CopyButton: FC<Props> = ({\n cell,\n children,\n tableInstance,\n}) => {\n const {\n options: { localization, muiTableBodyCellCopyButtonProps },\n } = tableInstance;\n\n const [copied, setCopied] = useState(false);\n\n const handleCopy = (text: unknown) => {\n navigator.clipboard.writeText(text as string);\n setCopied(true);\n setTimeout(() => setCopied(false), 4000);\n };\n\n const mTableBodyCellCopyButtonProps =\n muiTableBodyCellCopyButtonProps instanceof Function\n ? muiTableBodyCellCopyButtonProps({ cell, tableInstance })\n : muiTableBodyCellCopyButtonProps;\n\n const mcTableBodyCellCopyButtonProps =\n cell.column.muiTableBodyCellCopyButtonProps instanceof Function\n ? cell.column.muiTableBodyCellCopyButtonProps({ cell, tableInstance })\n : cell.column.muiTableBodyCellCopyButtonProps;\n\n const buttonProps = {\n ...mTableBodyCellCopyButtonProps,\n ...mcTableBodyCellCopyButtonProps,\n };\n\n return (\n <Tooltip\n arrow\n enterDelay={1000}\n enterNextDelay={1000}\n placement=\"top\"\n title={copied ? localization.copiedToClipboard : localization.clickToCopy}\n >\n <Button\n aria-label={localization.clickToCopy}\n onClick={() => handleCopy(cell.value)}\n size=\"small\"\n {...buttonProps}\n sx={{\n backgroundColor: 'transparent',\n border: 'none',\n color: 'inherit',\n cursor: 'copy',\n fontFamily: 'inherit',\n fontSize: 'inherit',\n letterSpacing: 'inherit',\n m: '-0.25rem',\n minWidth: 'unset',\n textAlign: 'inherit',\n textTransform: 'inherit',\n ...buttonProps?.sx,\n }}\n variant=\"text\"\n >\n {children}\n </Button>\n </Tooltip>\n );\n};\n","import React, { FC, MouseEvent, useMemo } from 'react';\nimport { Skeleton, TableCell } from '@mui/material';\nimport { MRT_EditCellTextField } from '../inputs/MRT_EditCellTextField';\nimport type { MRT_Cell, MRT_TableInstance } from '..';\nimport { MRT_CopyButton } from '../buttons/MRT_CopyButton';\n\ninterface Props {\n cell: MRT_Cell;\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_TableBodyCell: FC<Props> = ({ cell, tableInstance }) => {\n const {\n getIsSomeColumnsPinned,\n getState,\n options: {\n editingMode,\n enableClickToCopy,\n enableEditing,\n enablePinning,\n idPrefix,\n isLoading,\n muiTableBodyCellProps,\n muiTableBodyCellSkeletonProps,\n onCellClick,\n },\n setCurrentEditingCell,\n } = tableInstance;\n\n const { currentEditingCell, currentEditingRow, isDensePadding } = getState();\n\n const { column, row } = cell;\n\n const mTableCellBodyProps =\n muiTableBodyCellProps instanceof Function\n ? muiTableBodyCellProps({ cell, tableInstance })\n : muiTableBodyCellProps;\n\n const mcTableCellBodyProps =\n column.muiTableBodyCellProps instanceof Function\n ? column.muiTableBodyCellProps({ cell, tableInstance })\n : column.muiTableBodyCellProps;\n\n const tableCellProps = {\n ...cell.getCellProps(),\n ...mTableCellBodyProps,\n ...mcTableCellBodyProps,\n };\n\n const skeletonWidth = useMemo(\n () =>\n column.columnDefType === 'display'\n ? column.getWidth() / 2\n : Math.random() * (column.getWidth() - column.getWidth() / 3) +\n column.getWidth() / 3,\n [column.columnDefType, column.getWidth()],\n );\n\n const isEditable =\n (enableEditing || column.enableEditing) && column.enableEditing !== false;\n\n const isEditing =\n isEditable &&\n (editingMode === 'table' ||\n currentEditingRow?.id === row.id ||\n currentEditingCell?.id === cell.id);\n\n const handleDoubleClick = (_event: MouseEvent<HTMLTableCellElement>) => {\n if (\n (enableEditing || column.enableEditing) &&\n column.enableEditing !== false &&\n editingMode === 'cell'\n ) {\n setCurrentEditingCell(cell);\n setTimeout(() => {\n const textField = document.getElementById(\n `mrt-${idPrefix}-edit-cell-text-field-${cell.id}`,\n ) as HTMLInputElement;\n if (textField) {\n textField.focus();\n textField.select();\n }\n }, 200);\n }\n };\n\n return (\n <TableCell\n onClick={(event: MouseEvent<HTMLTableCellElement>) =>\n onCellClick?.({ event, cell, tableInstance })\n }\n onDoubleClick={handleDoubleClick}\n {...tableCellProps}\n sx={{\n cursor: isEditable && editingMode === 'cell' ? 'pointer' : 'text',\n maxWidth: `min(${column.getWidth()}px, fit-content)`,\n minWidth: `max(${column.getWidth()}px, ${column.minWidth}px)`,\n p: isDensePadding\n ? column.columnDefType === 'display'\n ? '0 0.5rem'\n : '0.5rem'\n : column.columnDefType === 'display'\n ? '0.5rem 0.75rem'\n : '1rem',\n pl:\n column.id === 'mrt-expand'\n ? `${row.depth + (isDensePadding ? 0.5 : 0.75)}rem`\n : undefined,\n transition: 'all 0.2s ease-in-out',\n whiteSpace:\n isDensePadding || (enablePinning && getIsSomeColumnsPinned())\n ? 'nowrap'\n : 'normal',\n width: column.getWidth(),\n //@ts-ignore\n ...tableCellProps?.sx,\n }}\n >\n {isLoading ? (\n <Skeleton\n animation=\"wave\"\n height={20}\n width={skeletonWidth}\n {...muiTableBodyCellSkeletonProps}\n />\n ) : column.columnDefType === 'display' ? (\n column.Cell?.({ cell, tableInstance })\n ) : cell.getIsPlaceholder() ||\n (row.getIsGrouped() &&\n column.id !==\n row.groupingColumnId) ? null : cell.getIsAggregated() ? (\n cell.renderAggregatedCell()\n ) : isEditing ? (\n <MRT_EditCellTextField cell={cell} tableInstance={tableInstance} />\n ) : (enableClickToCopy || column.enableClickToCopy) &&\n column.enableClickToCopy !== false ? (\n <>\n <MRT_CopyButton cell={cell} tableInstance={tableInstance}>\n {cell.column?.Cell?.({ cell, tableInstance }) ?? cell.renderCell()}\n </MRT_CopyButton>\n {row.getIsGrouped() && <> ({row.subRows?.length})</>}\n </>\n ) : (\n <>\n {cell.column?.Cell?.({ cell, tableInstance }) ?? cell.renderCell()}\n {row.getIsGrouped() && <> ({row.subRows?.length})</>}\n </>\n )}\n </TableCell>\n );\n};\n","import React, { FC, MouseEvent } from 'react';\nimport { Collapse, TableCell, TableRow } from '@mui/material';\nimport type { MRT_Row, MRT_TableInstance } from '..';\n\ninterface Props {\n row: MRT_Row;\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_TableDetailPanel: FC<Props> = ({ row, tableInstance }) => {\n const {\n getVisibleFlatColumns,\n options: {\n muiTableBodyRowProps,\n muiTableDetailPanelProps,\n onDetailPanelClick,\n renderDetailPanel,\n },\n } = tableInstance;\n\n const tableRowProps =\n muiTableBodyRowProps instanceof Function\n ? muiTableBodyRowProps({ row, tableInstance })\n : muiTableBodyRowProps;\n\n const tableCellProps =\n muiTableDetailPanelProps instanceof Function\n ? muiTableDetailPanelProps({ row, tableInstance })\n : muiTableDetailPanelProps;\n\n return (\n <TableRow {...tableRowProps}>\n <TableCell\n colSpan={getVisibleFlatColumns().length + 10}\n onClick={(event: MouseEvent<HTMLTableCellElement>) =>\n onDetailPanelClick?.({ event, row, tableInstance })\n }\n {...tableCellProps}\n sx={{\n borderBottom: !row.getIsExpanded() ? 'none' : undefined,\n pb: row.getIsExpanded() ? '1rem' : 0,\n pt: row.getIsExpanded() ? '1rem' : 0,\n transition: 'all 0.2s ease-in-out',\n ...tableCellProps?.sx,\n }}\n >\n <Collapse in={row.getIsExpanded()}>\n {renderDetailPanel?.({ row, tableInstance })}\n </Collapse>\n </TableCell>\n </TableRow>\n );\n};\n","import React, { FC, MouseEvent } from 'react';\nimport { TableRow } from '@mui/material';\nimport { MRT_TableBodyCell } from './MRT_TableBodyCell';\nimport { MRT_TableDetailPanel } from './MRT_TableDetailPanel';\nimport type { MRT_Row, MRT_TableInstance } from '..';\n\ninterface Props {\n pinned: 'left' | 'center' | 'right' | 'none';\n row: MRT_Row;\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_TableBodyRow: FC<Props> = ({ pinned, row, tableInstance }) => {\n const {\n options: { muiTableBodyRowProps, onRowClick, renderDetailPanel },\n } = tableInstance;\n\n const {\n getCenterVisibleCells,\n getIsGrouped,\n getIsSelected,\n getLeftVisibleCells,\n getRightVisibleCells,\n getRowProps,\n getVisibleCells,\n } = row;\n\n const mTableBodyRowProps =\n muiTableBodyRowProps instanceof Function\n ? muiTableBodyRowProps({ row, tableInstance })\n : muiTableBodyRowProps;\n\n const tableRowProps = {\n ...getRowProps(),\n ...mTableBodyRowProps,\n };\n\n const getVisibleCellsMap = {\n center: getCenterVisibleCells,\n left: getLeftVisibleCells,\n none: getVisibleCells,\n right: getRightVisibleCells,\n };\n\n return (\n <>\n <TableRow\n hover\n onClick={(event: MouseEvent<HTMLTableRowElement>) =>\n onRowClick?.({ event, row, tableInstance })\n }\n selected={getIsSelected()}\n {...tableRowProps}\n >\n {getVisibleCellsMap[pinned]().map((cell) => (\n <MRT_TableBodyCell\n cell={cell}\n key={cell.getCellProps().key}\n tableInstance={tableInstance}\n />\n ))}\n </TableRow>\n {renderDetailPanel && !getIsGrouped() && (\n <MRT_TableDetailPanel row={row} tableInstance={tableInstance} />\n )}\n </>\n );\n};\n","import React, { FC } from 'react';\nimport { TableBody } from '@mui/material';\nimport { MRT_TableBodyRow } from './MRT_TableBodyRow';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n pinned: 'left' | 'center' | 'right' | 'none';\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_TableBody: FC<Props> = ({ pinned, tableInstance }) => {\n const {\n getPaginationRowModel,\n getPrePaginationRowModel,\n getTableBodyProps,\n options: { enablePagination, muiTableBodyProps },\n } = tableInstance;\n\n const rows = enablePagination\n ? getPaginationRowModel().rows\n : getPrePaginationRowModel().rows;\n\n const mTableBodyProps =\n muiTableBodyProps instanceof Function\n ? muiTableBodyProps({ tableInstance })\n : muiTableBodyProps;\n\n const tableBodyProps = {\n ...getTableBodyProps(),\n ...mTableBodyProps,\n };\n\n return (\n <TableBody {...tableBodyProps}>\n {rows.map((row) => (\n <MRT_TableBodyRow\n key={row.getRowProps().key}\n pinned={pinned}\n row={row}\n tableInstance={tableInstance}\n />\n ))}\n </TableBody>\n );\n};\n","import React, { FC } from 'react';\nimport { alpha, TableCell } from '@mui/material';\nimport type { MRT_Header, MRT_TableInstance } from '..';\n\ninterface Props {\n footer: MRT_Header;\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_TableFooterCell: FC<Props> = ({ footer, tableInstance }) => {\n const {\n getState,\n options: { muiTableFooterCellProps, enableColumnResizing },\n } = tableInstance;\n\n const { isDensePadding } = getState();\n\n const { column } = footer;\n\n const mTableFooterCellProps =\n muiTableFooterCellProps instanceof Function\n ? muiTableFooterCellProps({ column, tableInstance })\n : muiTableFooterCellProps;\n\n const mcTableFooterCellProps =\n column.muiTableFooterCellProps instanceof Function\n ? column.muiTableFooterCellProps({ column, tableInstance })\n : column.muiTableFooterCellProps;\n\n const tableCellProps = {\n ...footer.getFooterProps(),\n ...mTableFooterCellProps,\n ...mcTableFooterCellProps,\n };\n\n return (\n <TableCell\n align={column.columnDefType === 'group' ? 'center' : 'left'}\n variant=\"head\"\n {...tableCellProps}\n //@ts-ignore\n sx={(theme) => ({\n backgroundColor: theme.palette.background.default,\n backgroundImage: `linear-gradient(${alpha(\n theme.palette.common.white,\n 0.05,\n )},${alpha(theme.palette.common.white, 0.05)})`,\n fontWeight: 'bold',\n maxWidth: `min(${column.getWidth()}px, ${column.maxWidth}px)`,\n minWidth: `max(${column.getWidth()}px, ${column.minWidth}px)`,\n p: isDensePadding ? '0.5rem' : '1rem',\n transition: `all ${enableColumnResizing ? '10ms' : '0.2s'} ease-in-out`,\n width: column.getWidth(),\n verticalAlign: 'text-top',\n //@ts-ignore\n ...tableCellProps?.sx,\n })}\n >\n {footer.isPlaceholder\n ? null\n : column.Footer?.({\n footer,\n tableInstance,\n }) ??\n column.footer ??\n null}\n </TableCell>\n );\n};\n","import React, { FC } from 'react';\nimport { TableRow } from '@mui/material';\nimport { MRT_TableFooterCell } from './MRT_TableFooterCell';\nimport type { MRT_Header, MRT_HeaderGroup, MRT_TableInstance } from '..';\n\ninterface Props {\n footerGroup: MRT_HeaderGroup;\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_TableFooterRow: FC<Props> = ({\n footerGroup,\n tableInstance,\n}) => {\n const {\n options: { muiTableFooterRowProps },\n } = tableInstance;\n\n // if no content in row, skip row\n if (\n !footerGroup.headers?.some(\n (h) => h.column.columnDef.footer || h.column.Footer,\n )\n )\n return null;\n\n const mTableFooterRowProps =\n muiTableFooterRowProps instanceof Function\n ? muiTableFooterRowProps({ footerGroup, tableInstance })\n : muiTableFooterRowProps;\n\n const tableRowProps = {\n ...footerGroup.getFooterGroupProps(),\n ...mTableFooterRowProps,\n };\n\n return (\n <TableRow {...tableRowProps}>\n {footerGroup.headers.map((footer: MRT_Header) => (\n <MRT_TableFooterCell\n footer={footer}\n key={footer.getFooterProps().key}\n tableInstance={tableInstance}\n />\n ))}\n </TableRow>\n );\n};\n","import React, { FC } from 'react';\nimport { TableFooter } from '@mui/material';\nimport { MRT_TableFooterRow } from './MRT_TableFooterRow';\nimport type { MRT_HeaderGroup, MRT_TableInstance } from '..';\n\ninterface Props {\n pinned: 'left' | 'center' | 'right' | 'none';\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_TableFooter: FC<Props> = ({ pinned, tableInstance }) => {\n const {\n getCenterFooterGroups,\n getFooterGroups,\n getLeftFooterGroups,\n getRightFooterGroups,\n options: { muiTableFooterProps },\n } = tableInstance;\n\n const tableFooterProps =\n muiTableFooterProps instanceof Function\n ? muiTableFooterProps({ tableInstance })\n : muiTableFooterProps;\n\n const getFooterGroupsMap = {\n center: getCenterFooterGroups,\n left: getLeftFooterGroups,\n none: getFooterGroups,\n right: getRightFooterGroups,\n };\n\n return (\n <TableFooter {...tableFooterProps}>\n {getFooterGroupsMap[pinned]().map((footerGroup) => (\n <MRT_TableFooterRow\n footerGroup={footerGroup as MRT_HeaderGroup}\n key={footerGroup.getFooterGroupProps().key}\n tableInstance={tableInstance}\n />\n ))}\n </TableFooter>\n );\n};\n","import React, { FC } from 'react';\nimport { Table } from '@mui/material';\nimport { MRT_TableHead } from '../head/MRT_TableHead';\nimport { MRT_TableBody } from '../body/MRT_TableBody';\nimport { MRT_TableFooter } from '../footer/MRT_TableFooter';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n pinned: 'left' | 'center' | 'right' | 'none';\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_Table: FC<Props> = ({ pinned, tableInstance }) => {\n const {\n getTableProps,\n options: {\n muiTableProps,\n enableTableHead,\n enableTableFooter,\n enableStickyHeader,\n },\n } = tableInstance;\n\n const mTableProps =\n muiTableProps instanceof Function\n ? muiTableProps({ tableInstance })\n : muiTableProps;\n\n const tableProps = {\n ...getTableProps(),\n ...mTableProps,\n };\n\n return (\n <Table stickyHeader={enableStickyHeader} {...tableProps}>\n {enableTableHead && (\n <MRT_TableHead pinned={pinned} tableInstance={tableInstance} />\n )}\n <MRT_TableBody pinned={pinned} tableInstance={tableInstance} />\n {enableTableFooter && (\n <MRT_TableFooter pinned={pinned} tableInstance={tableInstance} />\n )}\n </Table>\n );\n};\n","import React, { CSSProperties, FC, useEffect, useState } from 'react';\nimport { alpha, Box, TableContainer, Theme } from '@mui/material';\nimport { MRT_TableInstance } from '..';\nimport { MRT_Table } from './MRT_Table';\n\nconst commonBoxStyles = ({\n pinned,\n theme,\n visible,\n}: {\n pinned?: 'left' | 'right';\n theme: Theme;\n visible?: boolean;\n}): CSSProperties => ({\n display: 'grid',\n minWidth: visible ? '200px' : 0,\n overflowX: pinned ? 'scroll' : 'auto',\n boxShadow:\n pinned === 'left'\n ? `0 1px 12px ${alpha(theme.palette.common.black, 0.5)}`\n : pinned === 'right'\n ? `0 -1px 12px ${alpha(theme.palette.common.black, 0.5)}`\n : 'none',\n});\n\ninterface Props {\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_TableContainer: FC<Props> = ({ tableInstance }) => {\n const {\n getCenterTableWidth,\n getIsSomeColumnsPinned,\n getLeftTableWidth,\n getRightTableWidth,\n getState,\n options: {\n enablePinning,\n enableStickyHeader,\n idPrefix,\n muiTableContainerProps,\n },\n } = tableInstance;\n\n const { isFullScreen, columnPinning } = getState();\n\n const [totalToolbarHeight, setTotalToolbarHeight] = useState(0);\n\n const tableContainerProps =\n muiTableContainerProps instanceof Function\n ? muiTableContainerProps({ tableInstance })\n : muiTableContainerProps;\n\n useEffect(() => {\n const topToolbarHeight =\n typeof document !== 'undefined'\n ? document?.getElementById(`mrt-${idPrefix}-toolbar-top`)\n ?.offsetHeight ?? 0\n : 0;\n\n const bottomToolbarHeight =\n typeof document !== 'undefined'\n ? document?.getElementById(`mrt-${idPrefix}-toolbar-bottom`)\n ?.offsetHeight ?? 0\n : 0;\n\n setTotalToolbarHeight(topToolbarHeight + bottomToolbarHeight);\n });\n\n return (\n <TableContainer\n {...tableContainerProps}\n sx={{\n maxWidth: '100%',\n maxHeight: enableStickyHeader\n ? `clamp(350px, calc(100vh - ${totalToolbarHeight}px), 2000px)`\n : undefined,\n overflow: 'auto',\n ...tableContainerProps?.sx,\n }}\n style={{\n maxHeight: isFullScreen\n ? `calc(100vh - ${totalToolbarHeight}px)`\n : undefined,\n }}\n >\n {enablePinning && getIsSomeColumnsPinned() ? (\n <Box\n sx={{\n display: 'grid',\n gridTemplateColumns: `${getLeftTableWidth()}fr ${getCenterTableWidth()}fr ${getRightTableWidth()}fr`,\n }}\n >\n <Box\n sx={(theme: Theme) =>\n commonBoxStyles({\n pinned: 'left',\n theme,\n visible: !!columnPinning.left?.length,\n })\n }\n >\n <MRT_Table pinned=\"left\" tableInstance={tableInstance} />\n </Box>\n <Box sx={(theme: Theme) => commonBoxStyles({ theme })}>\n <MRT_Table pinned=\"center\" tableInstance={tableInstance} />\n </Box>\n <Box\n sx={(theme: Theme) =>\n commonBoxStyles({\n pinned: 'right',\n theme,\n visible: !!columnPinning.right?.length,\n })\n }\n >\n <MRT_Table pinned=\"right\" tableInstance={tableInstance} />\n </Box>\n </Box>\n ) : (\n <MRT_Table pinned=\"none\" tableInstance={tableInstance} />\n )}\n </TableContainer>\n );\n};\n","import React, { FC, useEffect } from 'react';\nimport { Paper } from '@mui/material';\nimport { MRT_ToolbarTop } from '../toolbar/MRT_ToolbarTop';\nimport { MRT_ToolbarBottom } from '../toolbar/MRT_ToolbarBottom';\nimport { MRT_TableContainer } from './MRT_TableContainer';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_TablePaper: FC<Props> = ({ tableInstance }) => {\n const {\n getState,\n options: { enableToolbarBottom, enableToolbarTop, muiTablePaperProps },\n } = tableInstance;\n\n const { isFullScreen } = getState();\n\n useEffect(() => {\n if (typeof window !== 'undefined') {\n if (isFullScreen) {\n document.body.style.overflow = 'hidden';\n document.body.style.height = '100vh';\n } else {\n document.body.style.overflow = 'auto';\n document.body.style.height = 'auto';\n }\n }\n }, [isFullScreen]);\n\n const tablePaperProps =\n muiTablePaperProps instanceof Function\n ? muiTablePaperProps({ tableInstance })\n : muiTablePaperProps;\n\n return (\n <Paper\n elevation={2}\n {...tablePaperProps}\n sx={{\n transition: 'all 0.2s ease-in-out',\n ...tablePaperProps?.sx,\n }}\n style={{\n height: isFullScreen ? '100vh' : undefined,\n margin: isFullScreen ? '0' : undefined,\n maxHeight: isFullScreen ? '100vh' : undefined,\n maxWidth: isFullScreen ? '100vw' : undefined,\n padding: isFullScreen ? '0' : undefined,\n width: isFullScreen ? '100vw' : undefined,\n }}\n >\n {enableToolbarTop && <MRT_ToolbarTop tableInstance={tableInstance} />}\n <MRT_TableContainer tableInstance={tableInstance} />\n {enableToolbarBottom && (\n <MRT_ToolbarBottom tableInstance={tableInstance} />\n )}\n </Paper>\n );\n};\n","import { ColumnDef, Table } from '@tanstack/react-table';\nimport { MRT_ColumnDef, MRT_FilterFn } from '.';\nimport { MRT_FILTER_OPTION } from './enums';\nimport { defaultFilterFNs } from './filtersFNs';\n\nexport const getAllLeafColumnDefs = (\n columns: MRT_ColumnDef[],\n): MRT_ColumnDef[] => {\n let lowestLevelColumns: MRT_ColumnDef[] = columns;\n let currentCols: MRT_ColumnDef[] | undefined = columns;\n while (!!currentCols?.length && currentCols.some((col) => col.columns)) {\n const nextCols: MRT_ColumnDef[] = currentCols\n .filter((col) => !!col.columns)\n .map((col) => col.columns)\n .flat() as MRT_ColumnDef[];\n if (nextCols.every((col) => !col?.columns)) {\n lowestLevelColumns = [...lowestLevelColumns, ...nextCols];\n }\n currentCols = nextCols;\n }\n return lowestLevelColumns.filter((col) => !col.columns);\n};\n\nexport const createGroup = <D extends Record<string, any> = {}>(\n table: Table<D>,\n column: MRT_ColumnDef<D>,\n currentFilterFns: { [key: string]: MRT_FilterFn },\n): ColumnDef<D> =>\n table.createGroup({\n ...column,\n columns: column?.columns?.map?.((col) =>\n col.columns\n ? createGroup<D>(table, col, currentFilterFns)\n : createDataColumn(table, col, currentFilterFns),\n ),\n } as any);\n\nexport const createDataColumn = <D extends Record<string, any> = {}>(\n table: Table<D>,\n column: MRT_ColumnDef<D>,\n currentFilterFns: { [key: string]: MRT_FilterFn },\n): ColumnDef<D> => // @ts-ignore\n table.createDataColumn(column.id, {\n filterFn:\n currentFilterFns[column.id] instanceof Function\n ? currentFilterFns[column.id]\n : defaultFilterFNs[currentFilterFns[column.id] as MRT_FILTER_OPTION],\n ...column,\n }) as any;\n\nexport const createDisplayColumn = <D extends Record<string, any> = {}>(\n table: Table<D>,\n column: Omit<MRT_ColumnDef<D>, 'header'> & { header?: string },\n): ColumnDef<D> => table.createDisplayColumn(column as ColumnDef<D>);\n","import React, { useEffect, useMemo, useState } from 'react';\nimport {\n PaginationState,\n Table,\n createTable,\n functionalUpdate,\n getColumnFilteredRowModelSync,\n getExpandedRowModel,\n getGlobalFilteredRowModelSync,\n getGroupedRowModelSync,\n getPaginationRowModel,\n getSortedRowModelSync,\n useTableInstance,\n getCoreRowModelSync,\n ColumnDef,\n FilterFn,\n} from '@tanstack/react-table';\nimport {\n MRT_Cell,\n MRT_ColumnDef,\n MRT_FilterFn,\n MRT_Row,\n MRT_TableInstance,\n MRT_TableState,\n} from '..';\nimport { MRT_ExpandAllButton } from '../buttons/MRT_ExpandAllButton';\nimport { MRT_ExpandButton } from '../buttons/MRT_ExpandButton';\nimport { MRT_ToggleRowActionMenuButton } from '../buttons/MRT_ToggleRowActionMenuButton';\nimport { MRT_SelectCheckbox } from '../inputs/MRT_SelectCheckbox';\nimport { MaterialReactTableProps } from '../MaterialReactTable';\nimport { MRT_TablePaper } from './MRT_TablePaper';\nimport {\n createDataColumn,\n createDisplayColumn,\n createGroup,\n getAllLeafColumnDefs,\n} from '../utils';\nimport { defaultFilterFNs } from '../filtersFNs';\nimport { MRT_FILTER_OPTION } from '../enums';\nimport { Box, Dialog, Grow } from '@mui/material';\n\nexport const MRT_TableRoot = <D extends Record<string, any> = {}>(\n props: MaterialReactTableProps<D>,\n) => {\n const [idPrefix, setIdPrefix] = useState(props.idPrefix);\n useEffect(\n () =>\n setIdPrefix(props.idPrefix ?? Math.random().toString(36).substring(2, 9)),\n [props.idPrefix],\n );\n\n const initialState: Partial<MRT_TableState<D>> = useMemo(() => {\n if (!props.enablePersistentState || !props.idPrefix) {\n return props.initialState;\n }\n if (typeof window === 'undefined') {\n if (process.env.NODE_ENV !== 'production') {\n console.error(\n 'The MRT Persistent Table State feature is not supported if using SSR, but you can wrap your <MaterialReactTable /> in a MUI <NoSsr> tags to let it work',\n );\n }\n return props.initialState;\n }\n const storedState =\n props.persistentStateMode === 'localStorage'\n ? localStorage.getItem(`mrt-${idPrefix}-table-state`)\n : props.persistentStateMode === 'sessionStorage'\n ? sessionStorage.getItem(`mrt-${idPrefix}-table-state`)\n : '{}';\n if (storedState) {\n const parsedState = JSON.parse(storedState);\n if (parsedState) {\n return { ...props.initialState, ...parsedState };\n }\n }\n return props.initialState;\n }, []);\n\n const [currentEditingCell, setCurrentEditingCell] =\n useState<MRT_Cell<D> | null>(initialState?.currentEditingCell ?? null);\n const [currentEditingRow, setCurrentEditingRow] = useState<MRT_Row<D> | null>(\n initialState?.currentEditingRow ?? null,\n );\n const [isDensePadding, setIsDensePadding] = useState(\n initialState?.isDensePadding ?? false,\n );\n const [isFullScreen, setIsFullScreen] = useState(\n initialState?.isFullScreen ?? false,\n );\n const [showFilters, setShowFilters] = useState(\n initialState?.showFilters ?? false,\n );\n const [showGlobalFilter, setShowGlobalFilter] = useState(\n initialState?.showGlobalFilter ?? false,\n );\n const [pagination, setPagination] = useState<PaginationState>({\n pageIndex: initialState?.pagination?.pageIndex ?? 0,\n pageSize: initialState?.pagination?.pageSize ?? 10,\n pageCount: initialState?.pagination?.pageCount ?? -1,\n });\n\n const [currentFilterFns, setCurrentFilterFns] = useState<{\n [key: string]: MRT_FilterFn;\n }>(() =>\n Object.assign(\n {},\n ...getAllLeafColumnDefs(props.columns as MRT_ColumnDef[]).map((c) => ({\n [c.id as string]:\n c.filterFn ??\n initialState?.currentFilterFns?.[c.id] ??\n (!!c.filterSelectOptions?.length\n ? MRT_FILTER_OPTION.EQUALS\n : MRT_FILTER_OPTION.BEST_MATCH),\n })),\n ),\n );\n\n const [currentGlobalFilterFn, setCurrentGlobalFilterFn] = useState<\n MRT_FILTER_OPTION | FilterFn<D> | string | number | symbol\n >(props.globalFilterFn ?? MRT_FILTER_OPTION.BEST_MATCH_FIRST);\n\n const table = useMemo(() => createTable() as unknown as Table<D>, []);\n\n const displayColumns = useMemo(\n () =>\n [\n (props.enableRowActions ||\n (props.enableEditing && props.editingMode === 'row')) &&\n createDisplayColumn(table, {\n Cell: ({ cell }) => (\n <MRT_ToggleRowActionMenuButton\n row={cell.row as MRT_Row}\n tableInstance={tableInstance}\n />\n ),\n header: props.localization?.actions,\n id: 'mrt-row-actions',\n maxWidth: 60,\n width: 60,\n }),\n (props.enableExpanded || props.enableGrouping) &&\n createDisplayColumn(table, {\n Cell: ({ cell }) => (\n <MRT_ExpandButton\n row={cell.row as MRT_Row}\n tableInstance={tableInstance}\n />\n ),\n Header: () =>\n props.enableExpandAll ? (\n <MRT_ExpandAllButton tableInstance={tableInstance} />\n ) : null,\n header: props.localization?.expand,\n id: 'mrt-expand',\n maxWidth: 40,\n width: 40,\n }),\n props.enableRowSelection &&\n createDisplayColumn(table, {\n Cell: ({ cell }) => (\n <MRT_SelectCheckbox\n row={cell.row as MRT_Row}\n tableInstance={tableInstance}\n />\n ),\n Header: () =>\n props.enableSelectAll ? (\n <MRT_SelectCheckbox selectAll tableInstance={tableInstance} />\n ) : null,\n header: props.localization?.select,\n id: 'mrt-select',\n maxWidth: 40,\n width: 40,\n }),\n props.enableRowNumbers &&\n createDisplayColumn(table, {\n Cell: ({ cell }) => cell.row.index + 1,\n Header: () => props.localization?.rowNumber,\n header: props.localization?.rowNumbers,\n id: 'mrt-row-numbers',\n maxWidth: 40,\n width: 40,\n minWidth: 40,\n }),\n ].filter(Boolean),\n [\n props.editingMode,\n props.enableEditing,\n props.enableExpandAll,\n props.enableExpanded,\n props.enableGrouping,\n props.enableRowActions,\n props.enableRowNumbers,\n props.enableRowSelection,\n props.enableSelectAll,\n props.localization,\n table,\n ],\n );\n\n const columns = useMemo(\n () =>\n table.createColumns([\n ...displayColumns,\n ...props.columns.map((column) =>\n column.columns\n ? createGroup(table, column, currentFilterFns)\n : createDataColumn(table, column, currentFilterFns),\n ),\n ] as ColumnDef<D>[]),\n [table, props.columns, currentFilterFns],\n );\n\n const data: D['Row'][] = useMemo(\n () =>\n props.isLoading && !props.data.length\n ? [...Array(10).fill(null)].map(() =>\n Object.assign(\n {},\n ...getAllLeafColumnDefs(props.columns as MRT_ColumnDef[]).map(\n (c) => ({\n [c.id]: null,\n }),\n ),\n ),\n )\n : props.data,\n [props.data, props.isLoading],\n );\n\n //@ts-ignore\n const tableInstance: MRT_TableInstance<{}> = {\n ...useTableInstance(table, {\n //@ts-ignore\n filterFns: defaultFilterFNs,\n getColumnFilteredRowModel: getColumnFilteredRowModelSync(),\n getCoreRowModel: getCoreRowModelSync(),\n getExpandedRowModel: getExpandedRowModel(),\n getGlobalFilteredRowModel: getGlobalFilteredRowModelSync(),\n getGroupedRowModel: getGroupedRowModelSync(),\n getPaginationRowModel: getPaginationRowModel(),\n getSortedRowModel: getSortedRowModelSync(),\n getSubRows: (originalRow: D) => originalRow.subRows,\n globalFilterFn: currentGlobalFilterFn,\n onPaginationChange: (updater: any) =>\n setPagination((old) => functionalUpdate(updater, old)),\n ...props,\n columns,\n data,\n idPrefix,\n //@ts-ignore\n initialState,\n state: {\n currentEditingCell,\n currentEditingRow,\n currentFilterFns,\n currentGlobalFilterFn,\n isDensePadding,\n isFullScreen,\n //@ts-ignore\n pagination,\n showFilters,\n showGlobalFilter,\n ...props.state,\n },\n }),\n //@ts-ignore\n setCurrentEditingCell,\n //@ts-ignore\n setCurrentEditingRow,\n setCurrentFilterFns,\n //@ts-ignore\n setCurrentGlobalFilterFn,\n setIsDensePadding,\n setIsFullScreen,\n setShowFilters,\n setShowGlobalFilter,\n };\n\n useEffect(() => {\n if (typeof window === 'undefined' || !props.enablePersistentState) {\n return;\n }\n if (!props.idPrefix && process.env.NODE_ENV !== 'production') {\n console.warn(\n 'a unique idPrefix prop is required for persistent table state to work',\n );\n return;\n }\n const itemArgs: [string, string] = [\n `mrt-${idPrefix}-table-state`,\n JSON.stringify(tableInstance.getState()),\n ];\n if (props.persistentStateMode === 'localStorage') {\n localStorage.setItem(...itemArgs);\n } else if (props.persistentStateMode === 'sessionStorage') {\n sessionStorage.setItem(...itemArgs);\n }\n }, [\n props.enablePersistentState,\n props.idPrefix,\n props.persistentStateMode,\n tableInstance,\n ]);\n\n return (\n <>\n <Dialog\n PaperComponent={Box}\n TransitionComponent={Grow}\n disablePortal\n fullScreen\n keepMounted={false}\n onClose={() => setIsFullScreen(false)}\n open={isFullScreen}\n transitionDuration={400}\n >\n <MRT_TablePaper tableInstance={tableInstance} />\n </Dialog>\n {!isFullScreen && <MRT_TablePaper tableInstance={tableInstance} />}\n </>\n );\n};\n","import React, {\n ChangeEvent,\n Dispatch,\n FC,\n FocusEvent,\n MouseEvent,\n ReactNode,\n SetStateAction,\n} from 'react';\nimport {\n AlertProps,\n ButtonProps,\n CheckboxProps,\n IconButtonProps,\n LinearProgressProps,\n PaperProps,\n SkeletonProps,\n TableBodyProps,\n TableCellProps,\n TableContainerProps,\n TableFooterProps,\n TableHeadProps,\n TablePaginationProps,\n TableProps,\n TableRowProps,\n TextFieldProps,\n ToolbarProps,\n} from '@mui/material';\nimport {\n Cell,\n Column,\n ColumnDef,\n DefaultGenerics,\n FilterFn,\n FilterFnOption,\n Header,\n HeaderGroup,\n Options,\n Overwrite,\n PaginationState,\n Row,\n TableInstance,\n TableState,\n VisibilityState,\n} from '@tanstack/react-table';\nimport { MRT_Localization, MRT_DefaultLocalization_EN } from './localization';\nimport { MRT_Default_Icons, MRT_Icons } from './icons';\nimport { MRT_FILTER_OPTION } from './enums';\nimport { MRT_TableRoot } from './table/MRT_TableRoot';\n\nexport type MRT_TableOptions<D extends Record<string, any> = {}> = Partial<\n Omit<\n Options<D>,\n 'columns' | 'data' | 'initialState' | 'state' | 'expandRowsFn' | 'filterFns'\n >\n> & {\n columns: MRT_ColumnDef<D>[];\n data: D[];\n expandRowsFn?: (dataRow: D) => D[];\n filterFns?: MRT_FILTER_OPTION | FilterFn<D> | string | number | symbol;\n initialState?: Partial<MRT_TableState<D>>;\n state?: Partial<MRT_TableState<D>>;\n};\n\nexport interface MRT_RowModel<D extends Record<string, any> = {}> {\n flatRows: MRT_Row<D>[];\n rows: MRT_Row<D>[];\n rowsById: { [key: string]: MRT_Row<D> };\n}\n\nexport type MRT_TableInstance<D extends Record<string, any> = {}> = Omit<\n TableInstance<\n Overwrite<\n Partial<DefaultGenerics>,\n {\n Row: D;\n }\n >\n >,\n | 'getAllColumns'\n | 'getAllLeafColumns'\n | 'getExpandedRowModel'\n | 'getPaginationRowModel'\n | 'getPrePaginationRowModel'\n | 'getRowModel'\n | 'getSelectedRowModel'\n | 'getState'\n | 'options'\n> & {\n getAllColumns: () => MRT_Column<D>[];\n getAllLeafColumns: () => MRT_Column<D>[];\n getExpandedRowModel: () => MRT_RowModel<D>;\n getPaginationRowModel: () => MRT_RowModel<D>;\n getPrePaginationRowModel: () => MRT_RowModel<D>;\n getRowModel: () => MRT_RowModel<D>;\n getSelectedRowModel: () => MRT_RowModel<D>;\n getState: () => MRT_TableState<D>;\n options: MaterialReactTableProps<D> & {\n icons: MRT_Icons;\n idPrefix: string;\n localization: MRT_Localization;\n };\n setCurrentEditingCell: Dispatch<SetStateAction<MRT_Cell<D> | null>>;\n setCurrentEditingRow: Dispatch<SetStateAction<MRT_Row<D> | null>>;\n setCurrentFilterFns: Dispatch<\n SetStateAction<{\n [key: string]: MRT_FilterFn<D>;\n }>\n >;\n setCurrentGlobalFilterFn: Dispatch<SetStateAction<MRT_FilterFn<D>>>;\n setIsDensePadding: Dispatch<SetStateAction<boolean>>;\n setIsFullScreen: Dispatch<SetStateAction<boolean>>;\n setShowFilters: Dispatch<SetStateAction<boolean>>;\n setShowGlobalFilter: Dispatch<SetStateAction<boolean>>;\n};\n\nexport type MRT_TableState<D extends Record<string, any> = {}> = Omit<\n TableState,\n 'pagination'\n> & {\n currentEditingCell: MRT_Cell<D> | null;\n currentEditingRow: MRT_Row<D> | null;\n currentFilterFns: Record<string, string | Function>;\n currentGlobalFilterFn: Record<string, string | Function>;\n isDensePadding: boolean;\n isFullScreen: boolean;\n showFilters: boolean;\n showGlobalFilter: boolean;\n pagination: Partial<PaginationState>;\n};\n\nexport type MRT_ColumnDef<D extends Record<string, any> = {}> = Omit<\n ColumnDef<D>,\n 'header' | 'footer' | 'columns' | 'filterFn'\n> & {\n Edit?: ({\n cell,\n tableInstance,\n }: {\n cell: MRT_Cell<D>;\n tableInstance: MRT_TableInstance<D>;\n }) => ReactNode;\n Filter?: ({\n header,\n tableInstance,\n }: {\n header: MRT_Header<D>;\n tableInstance: MRT_TableInstance<D>;\n }) => ReactNode;\n Footer?: ({\n footer,\n tableInstance,\n }: {\n footer: MRT_Header<D>;\n tableInstance: MRT_TableInstance<D>;\n }) => ReactNode;\n Header?: ({\n header,\n tableInstance,\n }: {\n header: MRT_Header<D>;\n tableInstance: MRT_TableInstance<D>;\n }) => ReactNode;\n Cell?: ({\n cell,\n tableInstance,\n }: {\n cell: MRT_Cell<D>;\n tableInstance: MRT_TableInstance<D>;\n }) => ReactNode;\n id: keyof D | string;\n columns?: MRT_ColumnDef<D>[];\n enableClickToCopy?: boolean;\n enableColumnActions?: boolean;\n enableEditing?: boolean;\n enabledColumnFilterOptions?: (MRT_FILTER_OPTION | string)[];\n filterFn?: MRT_FilterFn;\n filterSelectOptions?: (string | { text: string; value: string })[];\n footer?: string;\n header: string;\n muiTableBodyCellCopyButtonProps?:\n | ButtonProps\n | (({\n tableInstance,\n cell,\n }: {\n tableInstance: MRT_TableInstance;\n cell: MRT_Cell<D>;\n }) => ButtonProps);\n muiTableBodyCellEditTextFieldProps?:\n | TextFieldProps\n | (({\n tableInstance,\n cell,\n }: {\n tableInstance: MRT_TableInstance;\n cell: MRT_Cell<D>;\n }) => TextFieldProps);\n muiTableBodyCellProps?:\n | TableCellProps\n | (({\n tableInstance,\n cell,\n }: {\n tableInstance: MRT_TableInstance;\n cell: MRT_Cell<D>;\n }) => TableCellProps);\n muiTableFooterCellProps?:\n | TableCellProps\n | (({\n tableInstance,\n column,\n }: {\n tableInstance: MRT_TableInstance;\n column: MRT_Column<D>;\n }) => TableCellProps);\n muiTableHeadCellColumnActionsButtonProps?:\n | IconButtonProps\n | (({\n tableInstance,\n column,\n }: {\n tableInstance: MRT_TableInstance;\n column: MRT_Column<D>;\n }) => IconButtonProps);\n muiTableHeadCellFilterTextFieldProps?:\n | TextFieldProps\n | (({\n tableInstance,\n column,\n }: {\n tableInstance: MRT_TableInstance;\n column: MRT_Column<D>;\n }) => TextFieldProps);\n muiTableHeadCellProps?:\n | TableCellProps\n | (({\n tableInstance,\n column,\n }: {\n tableInstance: MRT_TableInstance;\n column: MRT_Column<D>;\n }) => TableCellProps);\n onCellEditBlur?: ({\n cell,\n event,\n tableInstance,\n }: {\n event: FocusEvent<HTMLInputElement>;\n cell: MRT_Cell<D>;\n tableInstance: MRT_TableInstance<D>;\n }) => void;\n onCellEditChange?: ({\n cell,\n event,\n tableInstance,\n }: {\n event: ChangeEvent<HTMLInputElement>;\n cell: MRT_Cell<D>;\n tableInstance: MRT_TableInstance<D>;\n }) => void;\n onColumnFilterValueChange?: ({\n column,\n event,\n filterValue,\n }: {\n column: MRT_Column<D>;\n event: ChangeEvent<HTMLInputElement>;\n filterValue: any;\n }) => void;\n};\n\nexport type MRT_Column<D extends Record<string, any> = {}> = Omit<\n Column<D>,\n 'header' | 'footer' | 'columns'\n> &\n MRT_ColumnDef<D> & {\n columns?: MRT_Column<D>[];\n };\n\nexport type MRT_Header<D extends Record<string, any> = {}> = Omit<\n Header<D>,\n 'column'\n> & {\n column: MRT_Column<D>;\n};\n\nexport type MRT_HeaderGroup<D extends Record<string, any> = {}> = Omit<\n HeaderGroup<D>,\n 'headers'\n> & {\n headers: MRT_Header<D>[];\n};\n\nexport type MRT_Row<D extends Record<string, any> = {}> = Omit<\n Row<D>,\n | 'getVisibleCells'\n | 'getAllCells'\n | 'subRows'\n | 'original'\n | 'getLeftVisibleCells'\n | 'getRightVisibleCells'\n | 'getCenterVisibleCells'\n> & {\n getAllCells: () => MRT_Cell<D>[];\n getCenterVisibleCells: () => MRT_Cell<D>[];\n getLeftVisibleCells: () => MRT_Cell<D>[];\n getRightVisibleCells: () => MRT_Cell<D>[];\n getVisibleCells: () => MRT_Cell<D>[];\n subRows?: MRT_Row<D>[];\n original: D;\n};\n\nexport type MRT_Cell<D extends Record<string, any> = {}> = Omit<\n Cell<D>,\n 'column' | 'row'\n> & {\n column: MRT_Column<D>;\n row: MRT_Row<D>;\n};\n\nexport type MRT_FilterFn<D extends Record<string, any> = {}> =\n | FilterFn<D>\n | FilterFnOption<D>\n | MRT_FILTER_OPTION\n | number\n | string\n | symbol;\n\nexport type MaterialReactTableProps<D extends Record<string, any> = {}> =\n MRT_TableOptions<D> & {\n editingMode?: 'table' | 'row' | 'cell';\n enableClickToCopy?: boolean;\n enableColumnActions?: boolean;\n enableDensePaddingToggle?: boolean;\n enableEditing?: boolean;\n enableExpandAll?: boolean;\n enableFullScreenToggle?: boolean;\n enablePagination?: boolean;\n enablePersistentState?: boolean;\n enableRowActions?: boolean;\n enableRowNumbers?: boolean;\n enableSelectAll?: boolean;\n enableStickyHeader?: boolean;\n enableTableFooter?: boolean;\n enableTableHead?: boolean;\n enableToolbarBottom?: boolean;\n enableToolbarInternalActions?: boolean;\n enableToolbarTop?: boolean;\n enabledColumnFilterOptions?: (MRT_FILTER_OPTION | string)[];\n enabledGlobalFilterOptions?: (MRT_FILTER_OPTION | string)[];\n icons?: Partial<MRT_Icons>;\n idPrefix?: string;\n isLoading?: boolean;\n isReloading?: boolean;\n localization?: Partial<MRT_Localization>;\n muiLinearProgressProps?:\n | LinearProgressProps\n | (({\n tableInstance,\n }: {\n tableInstance: MRT_TableInstance;\n }) => LinearProgressProps);\n muiSearchTextFieldProps?:\n | TextFieldProps\n | (({\n tableInstance,\n }: {\n tableInstance: MRT_TableInstance;\n }) => TextFieldProps);\n muiSelectCheckboxProps?:\n | CheckboxProps\n | (({\n tableInstance,\n isSelectAll,\n row,\n }: {\n tableInstance: MRT_TableInstance;\n isSelectAll: boolean;\n row?: MRT_Row<D>;\n }) => CheckboxProps);\n muiTableBodyCellCopyButtonProps?:\n | ButtonProps\n | (({\n tableInstance,\n cell,\n }: {\n tableInstance: MRT_TableInstance;\n cell: MRT_Cell<D>;\n }) => ButtonProps);\n muiTableBodyCellEditTextFieldProps?:\n | TextFieldProps\n | (({\n tableInstance,\n cell,\n }: {\n tableInstance: MRT_TableInstance;\n cell: MRT_Cell<D>;\n }) => TextFieldProps);\n muiTableBodyCellProps?:\n | TableCellProps\n | (({\n tableInstance,\n cell,\n }: {\n tableInstance: MRT_TableInstance;\n cell: MRT_Cell<D>;\n }) => TableCellProps);\n muiTableBodyCellSkeletonProps?:\n | SkeletonProps\n | (({\n tableInstance,\n cell,\n }: {\n tableInstance: MRT_TableInstance;\n cell: MRT_Cell<D>;\n }) => SkeletonProps);\n muiTableBodyProps?:\n | TableBodyProps\n | (({\n tableInstance,\n }: {\n tableInstance: MRT_TableInstance;\n }) => TableBodyProps);\n muiTableBodyRowProps?:\n | TableRowProps\n | (({\n tableInstance,\n row,\n }: {\n tableInstance: MRT_TableInstance;\n row: MRT_Row<D>;\n }) => TableRowProps);\n muiTableContainerProps?:\n | TableContainerProps\n | (({\n tableInstance,\n }: {\n tableInstance: MRT_TableInstance;\n }) => TableContainerProps);\n muiTableDetailPanelProps?:\n | TableCellProps\n | (({\n tableInstance,\n row,\n }: {\n tableInstance: MRT_TableInstance;\n row: MRT_Row<D>;\n }) => TableCellProps);\n muiTableFooterCellProps?:\n | TableCellProps\n | (({\n tableInstance,\n column,\n }: {\n tableInstance: MRT_TableInstance;\n column: MRT_Column<D>;\n }) => TableCellProps);\n muiTableFooterProps?:\n | TableFooterProps\n | (({\n tableInstance,\n }: {\n tableInstance: MRT_TableInstance;\n }) => TableFooterProps);\n muiTableFooterRowProps?:\n | TableRowProps\n | (({\n tableInstance,\n footerGroup,\n }: {\n tableInstance: MRT_TableInstance;\n footerGroup: MRT_HeaderGroup<D>;\n }) => TableRowProps);\n muiTableHeadCellColumnActionsButtonProps?:\n | IconButtonProps\n | (({\n tableInstance,\n column,\n }: {\n tableInstance: MRT_TableInstance;\n column: MRT_Column<D>;\n }) => IconButtonProps);\n muiTableHeadCellFilterTextFieldProps?:\n | TextFieldProps\n | (({\n tableInstance,\n column,\n }: {\n tableInstance: MRT_TableInstance;\n column: MRT_Column<D>;\n }) => TextFieldProps);\n muiTableHeadCellProps?:\n | TableCellProps\n | (({\n tableInstance,\n column,\n }: {\n tableInstance: MRT_TableInstance;\n column: MRT_Column<D>;\n }) => TableCellProps);\n muiTableHeadProps?:\n | TableHeadProps\n | (({\n tableInstance,\n }: {\n tableInstance: MRT_TableInstance;\n }) => TableHeadProps);\n muiTableHeadRowProps?:\n | TableRowProps\n | (({\n tableInstance,\n headerGroup,\n }: {\n tableInstance: MRT_TableInstance;\n headerGroup: MRT_HeaderGroup<D>;\n }) => TableRowProps);\n muiTablePaperProps?:\n | PaperProps\n | (({\n tableInstance,\n }: {\n tableInstance: MRT_TableInstance;\n }) => PaperProps);\n muiTablePaginationProps?:\n | Partial<TablePaginationProps>\n | (({\n tableInstance,\n }: {\n tableInstance: MRT_TableInstance;\n }) => Partial<TablePaginationProps>);\n muiTableProps?:\n | TableProps\n | (({\n tableInstance,\n }: {\n tableInstance: MRT_TableInstance;\n }) => TableProps);\n muiTableToolbarAlertBannerProps?:\n | AlertProps\n | (({\n tableInstance,\n }: {\n tableInstance: MRT_TableInstance;\n }) => AlertProps);\n muiTableToolbarBottomProps?:\n | ToolbarProps\n | (({\n tableInstance,\n }: {\n tableInstance: MRT_TableInstance;\n }) => ToolbarProps);\n muiTableToolbarTopProps?:\n | ToolbarProps\n | (({\n tableInstance,\n }: {\n tableInstance: MRT_TableInstance;\n }) => ToolbarProps);\n onCellClick?: ({\n cell,\n event,\n tableInstance,\n }: {\n cell: MRT_Cell<D>;\n tableInstance: MRT_TableInstance<D>;\n event: MouseEvent<HTMLTableCellElement>;\n }) => void;\n onCellEditBlur?: ({\n cell,\n event,\n tableInstance,\n }: {\n event: FocusEvent<HTMLInputElement>;\n cell: MRT_Cell<D>;\n tableInstance: MRT_TableInstance<D>;\n }) => void;\n onCellEditChange?: ({\n cell,\n event,\n tableInstance,\n }: {\n event: ChangeEvent<HTMLInputElement>;\n cell: MRT_Cell<D>;\n tableInstance: MRT_TableInstance<D>;\n }) => void;\n onColumnFilterValueChange?: ({\n column,\n event,\n filterValue,\n }: {\n column: MRT_Column<D>;\n event: ChangeEvent<HTMLInputElement>;\n filterValue: any;\n }) => void;\n onDetailPanelClick?: ({\n event,\n row,\n tableInstance,\n }: {\n event: MouseEvent<HTMLTableCellElement>;\n row: MRT_Row<D>;\n tableInstance: MRT_TableInstance<D>;\n }) => void;\n onGlobalSearchFilterChange?: ({\n event,\n tableInstance,\n }: {\n event: ChangeEvent<HTMLInputElement>;\n tableInstance: MRT_TableInstance<D>;\n }) => void;\n onRowClick?: ({\n event,\n row,\n tableInstance,\n }: {\n event: MouseEvent<HTMLTableRowElement>;\n row: MRT_Row<D>;\n tableInstance: MRT_TableInstance<D>;\n }) => void;\n onEditSubmit?: ({\n row,\n tableInstance,\n }: {\n row: MRT_Row<D>;\n tableInstance: MRT_TableInstance<D>;\n }) => Promise<void> | void;\n onRowExpandChange?: ({\n event,\n row,\n }: {\n event: MouseEvent<HTMLButtonElement>;\n row: MRT_Row<D>;\n tableInstance: MRT_TableInstance<D>;\n }) => void;\n onSelectAllChange?: ({\n event,\n selectedRows,\n tableInstance,\n }: {\n event: ChangeEvent;\n selectedRows: MRT_Row<D>[];\n tableInstance: MRT_TableInstance<D>;\n }) => void;\n onSelectChange?: ({\n event,\n row,\n selectedRows,\n tableInstance,\n }: {\n event: ChangeEvent;\n row: MRT_Row<D>;\n selectedRows: MRT_Row<D>[];\n tableInstance: MRT_TableInstance<D>;\n }) => void;\n onToggleColumnVisibility?: ({\n column,\n columnVisibility,\n tableInstance,\n }: {\n column: MRT_Column<D>;\n columnVisibility: VisibilityState;\n tableInstance: MRT_TableInstance<D>;\n }) => void;\n onToggleDensePadding?: ({\n event,\n isDensePadding,\n tableInstance,\n }: {\n event: MouseEvent<HTMLButtonElement>;\n isDensePadding: boolean;\n tableInstance: MRT_TableInstance<D>;\n }) => void;\n onToggleFullScreen?: ({\n event,\n isFullScreen,\n tableInstance,\n }: {\n event: MouseEvent<HTMLButtonElement>;\n isFullScreen: boolean;\n tableInstance: MRT_TableInstance<D>;\n }) => void;\n onToggleShowFilters?: ({\n event,\n showFilters,\n tableInstance,\n }: {\n event: MouseEvent<HTMLButtonElement>;\n showFilters: boolean;\n tableInstance: MRT_TableInstance<D>;\n }) => void;\n onToggleShowGlobalFilter?: ({\n event,\n showGlobalFilter,\n tableInstance,\n }: {\n event: MouseEvent<HTMLButtonElement>;\n showGlobalFilter: boolean;\n tableInstance: MRT_TableInstance<D>;\n }) => void;\n persistentStateMode?: 'localStorage' | 'sessionStorage';\n positionActionsColumn?: 'first' | 'last';\n positionPagination?: 'bottom' | 'top' | 'both';\n positionToolbarActions?: 'bottom' | 'top';\n positionToolbarAlertBanner?: 'bottom' | 'top';\n renderDetailPanel?: ({\n row,\n tableInstance,\n }: {\n row: MRT_Row<D>;\n tableInstance: MRT_TableInstance<D>;\n }) => ReactNode;\n renderRowActionMenuItems?: ({\n closeMenu,\n row,\n tableInstance,\n }: {\n closeMenu: () => void;\n row: MRT_Row<D>;\n tableInstance: MRT_TableInstance<D>;\n }) => ReactNode[];\n renderRowActions?: ({\n row,\n tableInstance,\n }: {\n row: MRT_Row<D>;\n tableInstance: MRT_TableInstance<D>;\n }) => ReactNode;\n renderToolbarCustomActions?: ({\n tableInstance,\n }: {\n tableInstance: MRT_TableInstance<D>;\n }) => ReactNode;\n renderToolbarInternalActions?: ({\n tableInstance,\n MRT_ToggleGlobalFilterButton,\n MRT_ToggleFiltersButton,\n MRT_ShowHideColumnsButton,\n MRT_ToggleDensePaddingButton,\n MRT_FullScreenToggleButton,\n }: {\n tableInstance: MRT_TableInstance<D>;\n MRT_ToggleGlobalFilterButton: FC<\n IconButtonProps & { tableInstance: MRT_TableInstance<D> }\n >;\n MRT_ToggleFiltersButton: FC<\n IconButtonProps & { tableInstance: MRT_TableInstance<D> }\n >;\n MRT_ShowHideColumnsButton: FC<\n IconButtonProps & { tableInstance: MRT_TableInstance<D> }\n >;\n MRT_ToggleDensePaddingButton: FC<\n IconButtonProps & { tableInstance: MRT_TableInstance<D> }\n >;\n MRT_FullScreenToggleButton: FC<\n IconButtonProps & { tableInstance: MRT_TableInstance<D> }\n >;\n }) => ReactNode;\n };\n\nexport default <D extends Record<string, any> = {}>({\n autoResetExpanded = false,\n autoResetSorting = false,\n columnResizeMode = 'onEnd',\n editingMode = 'row',\n enableColumnActions = true,\n enableColumnFilters = true,\n enableColumnResizing = false,\n enableDensePaddingToggle = true,\n enableExpandAll = true,\n enableFilters = true,\n enableFullScreenToggle = true,\n enableGlobalFilter = true,\n enableHiding = true,\n enableMultiRowSelection = true,\n enablePagination = true,\n enableSelectAll = true,\n enableSorting = true,\n enableStickyHeader = true,\n enableTableFooter = true,\n enableTableHead = true,\n enableToolbarBottom = true,\n enableToolbarInternalActions = true,\n enableToolbarTop = true,\n icons,\n localization,\n persistentStateMode = 'sessionStorage',\n positionActionsColumn = 'first',\n positionPagination = 'bottom',\n positionToolbarActions = 'top',\n positionToolbarAlertBanner = 'top',\n ...rest\n}: MaterialReactTableProps<D>) => (\n <MRT_TableRoot\n autoResetExpanded={autoResetExpanded}\n autoResetSorting={autoResetSorting}\n columnResizeMode={columnResizeMode}\n editingMode={editingMode}\n enableColumnActions={enableColumnActions}\n enableColumnResizing={enableColumnResizing}\n enableColumnFilters={enableColumnFilters}\n enableDensePaddingToggle={enableDensePaddingToggle}\n enableExpandAll={enableExpandAll}\n enableFilters={enableFilters}\n enableFullScreenToggle={enableFullScreenToggle}\n enableGlobalFilter={enableGlobalFilter}\n enableHiding={enableHiding}\n enableMultiRowSelection={enableMultiRowSelection}\n enablePagination={enablePagination}\n enableSelectAll={enableSelectAll}\n enableSorting={enableSorting}\n enableStickyHeader={enableStickyHeader}\n enableTableFooter={enableTableFooter}\n enableTableHead={enableTableHead}\n enableToolbarBottom={enableToolbarBottom}\n enableToolbarInternalActions={enableToolbarInternalActions}\n enableToolbarTop={enableToolbarTop}\n icons={{ ...MRT_Default_Icons, ...icons }}\n localization={{ ...MRT_DefaultLocalization_EN, ...localization }}\n persistentStateMode={persistentStateMode}\n positionActionsColumn={positionActionsColumn}\n positionPagination={positionPagination}\n positionToolbarActions={positionToolbarActions}\n positionToolbarAlertBanner={positionToolbarAlertBanner}\n {...rest}\n />\n);\n"],"names":["MRT_DefaultLocalization_EN","actions","cancel","changeFilterMode","changeSearchMode","clearFilter","clearSearch","clearSort","clickToCopy","columnActions","copiedToClipboard","edit","expand","expandAll","filterBestMatch","filterBestMatchFirst","filterByColumn","filterContains","filterEmpty","filterEndsWith","filterEquals","filterGreaterThan","filterLessThan","filterMode","filterNotEmpty","filterNotEquals","filterStartsWith","filteringByColumn","groupByColumn","groupedBy","hideAll","hideColumn","pinToLeft","pinToRight","resetColumnSize","rowActions","rowNumber","rowNumbers","save","search","selectedCountOfRowCountRowsSelected","select","showAll","showAllColumns","showHideColumns","showHideFilters","showHideSearch","sortByColumnAsc","sortByColumnDesc","sortedByColumnAsc","sortedByColumnDesc","thenBy","toggleDensePadding","toggleFullScreen","toggleSelectAll","toggleSelectRow","ungroupByColumn","unpin","unsorted","MRT_Default_Icons","ArrowRightIcon","CancelIcon","CheckBoxIcon","ClearAllIcon","CloseIcon","DensityMediumIcon","DensitySmallIcon","DoubleArrowDownIcon","DynamicFeedIcon","EditIcon","ExpandLessIcon","ExpandMoreIcon","FilterAltIcon","FilterAltOff","FilterListIcon","FilterListOffIcon","FullscreenExitIcon","FullscreenIcon","MoreHorizIcon","MoreVertIcon","PushPinIcon","RestartAltIcon","SaveIcon","SearchIcon","SearchOffIcon","SortIcon","ViewColumnIcon","VisibilityOffIcon","MRT_ExpandAllButton","tableInstance","getIsAllRowsExpanded","getIsSomeRowsExpanded","getState","options","icons","isLoading","localization","toggleAllRowsExpanded","isDensePadding","React","IconButton","disabled","title","onClick","sx","height","width","style","transform","transition","MRT_ExpandButton","row","onRowExpandChange","renderDetailPanel","handleToggleExpand","event","toggleExpanded","getCanExpand","getIsExpanded","MRT_FILTER_OPTION","bestMatchFirst","rows","columnIds","filterValue","matchSorter","toString","trim","keys","Array","isArray","map","c","autoRemove","val","bestMatch","sorter","rankedItems","contains","id","filter","values","toLowerCase","includes","startsWith","endsWith","equals","notEquals","greaterThan","isNaN","lessThan","empty","_filterValue","notEmpty","defaultFilterFNs","commonMenuItemStyles","py","my","alignItems","MRT_FilterOptionMenu","anchorEl","header","onSelect","setAnchorEl","enabledGlobalFilterOptions","setCurrentFilterFns","setCurrentGlobalFilterFn","currentFilterFns","currentGlobalFilterFn","filterOptions","useMemo","type","BEST_MATCH_FIRST","label","divider","fn","BEST_MATCH","CONTAINS","STARTS_WITH","ENDS_WITH","EQUALS","NOT_EQUALS","GREATER_THAN","LESS_THAN","EMPTY","NOT_EMPTY","filterType","column","enabledColumnFilterOptions","handleSelectFilterType","value","prev","setColumnFilterValue","Menu","anchorOrigin","vertical","horizontal","onClose","open","MenuListProps","dense","index","MenuItem","key","selected","MRT_ShowHideColumnsMenuItems","isSubMenu","onToggleColumnVisibility","columnVisibility","switchChecked","columnDefType","getIsVisible","getLeafColumns","some","col","handleToggleColumnHidden","columns","forEach","childColumn","toggleVisibility","pl","depth","FormControlLabel","componentsProps","typography","marginBottom","checked","control","Switch","enableHiding","onChange","i","MRT_ShowHideColumnsMenu","getAllColumns","getIsAllColumnsVisible","getIsSomeColumnsVisible","getIsSomeColumnsPinned","toggleAllColumnsVisible","getAllLeafColumns","hideAllColumns","allDisplayColumns","allDataColumns","dataColumns","getIsPinned","columnPinning","Box","display","justifyContent","p","pt","Button","Divider","commonListItemStyles","MRT_ColumnActionMenu","setColumnOrder","enableColumnFilters","enableColumnResizing","enableGrouping","enablePinning","enableSorting","idPrefix","setShowFilters","columnSizing","useState","filterMenuAnchorEl","setFilterMenuAnchorEl","showHideColumnsMenuAnchorEl","setShowHideColumnsMenuAnchorEl","handleClearSort","resetSorting","handleSortAsc","toggleSorting","handleSortDesc","handleResetColumnSize","resetSize","handleHideColumn","handlePinColumn","pinDirection","pin","handleGroupByColumn","toggleGrouping","old","handleClearFilter","handleFilterByColumn","setTimeout","document","getElementById","muiTableHeadCellFilterTextFieldProps","focus","handleShowAllColumns","handleOpenFilterModeMenu","stopPropagation","currentTarget","handleOpenShowHideColumnsMenu","getCanSort","getIsSorted","ListItemIcon","replace","String","getCanColumnFilter","getColumnFilterValue","filterSelectOptions","onMouseEnter","size","getCanGroup","getIsGrouped","getCanPin","getCanResize","Object","visible","length","MRT_RowActionMenu","handleEdit","enableEditing","renderRowActionMenuItems","closeMenu","MRT_EditActionButtons","onEditSubmit","setCurrentEditingRow","currentEditingRow","handleCancel","original","handleSave","gap","Tooltip","arrow","color","commonIconButtonStyles","ml","opacity","MRT_ToggleRowActionMenuButton","renderRowActions","handleOpenRowActionMenu","preventDefault","handleStartEditMode","placement","enterDelay","enterNextDelay","MRT_SelectCheckbox","selectAll","getRowModel","getSelectedRowModel","getToggleAllRowsSelectedProps","muiSelectCheckboxProps","onSelectChange","onSelectAllChange","handleSelectChange","selectedRows","target","flatRows","getToggleSelectedProps","selectedRow","mTableBodyRowSelectCheckboxProps","Function","isSelectAll","rtSelectCheckboxProps","checkboxProps","Checkbox","inputProps","undefined","MRT_SearchTextField","setGlobalFilter","muiSearchTextFieldProps","onGlobalSearchFilterChange","globalFilter","showGlobalFilter","searchValue","setSearchValue","handleChange","useCallback","debounce","handleGlobalFilterMenuOpen","handleClear","textFieldProps","Collapse","orientation","TextField","placeholder","variant","InputProps","startAdornment","InputAdornment","position","endAdornment","justifySelf","MRT_FullScreenToggleButton","rest","onToggleFullScreen","setIsFullScreen","isFullScreen","handleToggleFullScreen","MRT_ShowHideColumnsButton","handleClick","MRT_ToggleDensePaddingButton","onToggleDensePadding","setIsDensePadding","handleToggleDensePadding","MRT_ToggleFiltersButton","onToggleShowFilters","showFilters","handleToggleShowFilters","MRT_ToggleGlobalFilterButton","onToggleShowGlobalFilter","setShowGlobalFilter","handleToggleSearch","MRT_ToolbarInternalButtons","enableDensePaddingToggle","enableFilters","enableFullScreenToggle","enableGlobalFilter","renderToolbarInternalActions","MRT_TablePagination","getPrePaginationRowModel","setPageIndex","setPageSize","muiTablePaginationProps","pagination","pageSize","pageIndex","tablePaginationProps","handleChangeRowsPerPage","showFirstLastPageButtons","TablePagination","SelectProps","m","MenuProps","disablePadding","component","count","onPageChange","_","newPage","onRowsPerPageChange","page","rowsPerPage","rowsPerPageOptions","showFirstButton","showLastButton","zIndex","MRT_ToolbarAlertBanner","toggleColumnGrouping","muiTableToolbarAlertBannerProps","positionToolbarActions","positionToolbarAlertBanner","renderToolbarCustomActions","grouping","isMobile","useMediaQuery","alertProps","selectMessage","groupedByMessage","columnId","Fragment","Chip","find","onDelete","displayAbsolute","timeout","Alert","icon","borderRadius","fontSize","left","right","minHeight","top","MRT_LinearProgressBar","muiLinearProgressProps","isReloading","linearProgressProps","unmountOnExit","LinearProgress","commonToolbarStyles","theme","backgroundColor","palette","background","backgroundImage","alpha","common","white","MRT_ToolbarTop","enablePagination","enableToolbarInternalActions","muiTableToolbarTopProps","positionPagination","toolbarProps","Toolbar","MRT_ToolbarBottom","muiTableToolbarBottomProps","bottom","boxShadow","black","MRT_FilterTextField","mTableHeadCellFilterTextFieldProps","mcTableHeadCellFilterTextFieldProps","setFilterValue","handleFilterMenuOpen","handleClearFilterChip","Filter","filterId","filterFn","isSelectFilter","filterChipLabel","charAt","toUpperCase","slice","filterPlaceholder","fullWidth","textOverflow","helperText","htmlFor","name","FormHelperTextProps","lineHeight","margin","e","disableHoverListener","minWidth","mt","mr","option","text","MRT_ToggleColumnActionMenuButton","muiTableHeadCellColumnActionsButtonProps","mTableHeadCellColumnActionsButtonProps","mcTableHeadCellColumnActionsButtonProps","iconButtonProps","MRT_TableHeadCell","enableColumnActions","muiTableHeadCellProps","mTableHeadCellProps","mcTableHeadCellProps","tableCellProps","getHeaderProps","sortTooltip","filterTooltip","headerElement","Header","TableCell","align","fontWeight","maxWidth","getWidth","pb","overflow","verticalAlign","getIsResizing","isPlaceholder","cursor","flexWrap","whiteSpace","TableSortLabel","active","direction","disableRipple","flexItem","onDoubleClick","borderRightWidth","touchAction","userSelect","info","main","getResizerProps","props","columnSizingInfo","deltaOffset","MRT_TableHeadRow","headerGroup","muiTableHeadRowProps","mTableHeadRowProps","tableRowProps","getHeaderGroupProps","TableRow","headers","MRT_TableHead","pinned","getCenterHeaderGroups","getHeaderGroups","getLeftHeaderGroups","getRightHeaderGroups","muiTableHeadProps","tableHeadProps","getHeaderGroupsMap","center","none","TableHead","MRT_EditCellTextField","cell","muiTableBodyCellEditTextFieldProps","onCellEditBlur","onCellEditChange","setCurrentEditingCell","setValue","handleBlur","mTableBodyCellEditTextFieldProps","mcTableBodyCellEditTextFieldProps","Edit","onBlur","MRT_CopyButton","children","muiTableBodyCellCopyButtonProps","copied","setCopied","handleCopy","navigator","clipboard","writeText","mTableBodyCellCopyButtonProps","mcTableBodyCellCopyButtonProps","buttonProps","border","fontFamily","letterSpacing","textAlign","textTransform","MRT_TableBodyCell","editingMode","enableClickToCopy","muiTableBodyCellProps","muiTableBodyCellSkeletonProps","onCellClick","currentEditingCell","mTableCellBodyProps","mcTableCellBodyProps","getCellProps","skeletonWidth","Math","random","isEditable","isEditing","handleDoubleClick","_event","textField","Skeleton","animation","Cell","getIsPlaceholder","groupingColumnId","getIsAggregated","renderAggregatedCell","renderCell","subRows","MRT_TableDetailPanel","getVisibleFlatColumns","muiTableBodyRowProps","muiTableDetailPanelProps","onDetailPanelClick","colSpan","borderBottom","MRT_TableBodyRow","onRowClick","getCenterVisibleCells","getIsSelected","getLeftVisibleCells","getRightVisibleCells","getRowProps","getVisibleCells","mTableBodyRowProps","getVisibleCellsMap","hover","MRT_TableBody","getPaginationRowModel","getTableBodyProps","muiTableBodyProps","mTableBodyProps","tableBodyProps","TableBody","MRT_TableFooterCell","footer","muiTableFooterCellProps","mTableFooterCellProps","mcTableFooterCellProps","getFooterProps","Footer","MRT_TableFooterRow","footerGroup","muiTableFooterRowProps","h","columnDef","mTableFooterRowProps","getFooterGroupProps","MRT_TableFooter","getCenterFooterGroups","getFooterGroups","getLeftFooterGroups","getRightFooterGroups","muiTableFooterProps","tableFooterProps","getFooterGroupsMap","TableFooter","MRT_Table","getTableProps","muiTableProps","enableTableHead","enableTableFooter","enableStickyHeader","mTableProps","tableProps","Table","stickyHeader","commonBoxStyles","overflowX","MRT_TableContainer","getCenterTableWidth","getLeftTableWidth","getRightTableWidth","muiTableContainerProps","totalToolbarHeight","setTotalToolbarHeight","tableContainerProps","useEffect","topToolbarHeight","offsetHeight","bottomToolbarHeight","TableContainer","maxHeight","gridTemplateColumns","MRT_TablePaper","enableToolbarBottom","enableToolbarTop","muiTablePaperProps","window","body","tablePaperProps","Paper","elevation","padding","getAllLeafColumnDefs","lowestLevelColumns","currentCols","nextCols","flat","every","createGroup","table","createDataColumn","createDisplayColumn","MRT_TableRoot","setIdPrefix","substring","initialState","enablePersistentState","process","env","NODE_ENV","console","error","storedState","persistentStateMode","localStorage","getItem","sessionStorage","parsedState","JSON","parse","pageCount","setPagination","assign","globalFilterFn","createTable","displayColumns","enableRowActions","enableExpanded","enableExpandAll","enableRowSelection","enableSelectAll","enableRowNumbers","Boolean","createColumns","data","fill","useTableInstance","filterFns","getColumnFilteredRowModel","getColumnFilteredRowModelSync","getCoreRowModel","getCoreRowModelSync","getExpandedRowModel","getGlobalFilteredRowModel","getGlobalFilteredRowModelSync","getGroupedRowModel","getGroupedRowModelSync","getSortedRowModel","getSortedRowModelSync","getSubRows","originalRow","onPaginationChange","updater","functionalUpdate","state","warn","itemArgs","stringify","setItem","Dialog","PaperComponent","TransitionComponent","Grow","disablePortal","fullScreen","keepMounted","transitionDuration","autoResetExpanded","autoResetSorting","columnResizeMode","enableMultiRowSelection","positionActionsColumn"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"material-react-table.esm.js","sources":["../src/localization.ts","../src/icons.ts","../src/buttons/MRT_ExpandAllButton.tsx","../src/buttons/MRT_ExpandButton.tsx","../src/enums.ts","../src/filtersFNs.ts","../src/menus/MRT_FilterOptionMenu.tsx","../src/buttons/MRT_ColumnPinningButtons.tsx","../src/menus/MRT_ShowHideColumnsMenuItems.tsx","../src/menus/MRT_ShowHideColumnsMenu.tsx","../src/menus/MRT_ColumnActionMenu.tsx","../src/menus/MRT_RowActionMenu.tsx","../src/buttons/MRT_EditActionButtons.tsx","../src/buttons/MRT_ToggleRowActionMenuButton.tsx","../src/inputs/MRT_SelectCheckbox.tsx","../src/inputs/MRT_SearchTextField.tsx","../src/buttons/MRT_FullScreenToggleButton.tsx","../src/buttons/MRT_ShowHideColumnsButton.tsx","../src/buttons/MRT_ToggleDensePaddingButton.tsx","../src/buttons/MRT_ToggleFiltersButton.tsx","../src/buttons/MRT_ToggleGlobalFilterButton.tsx","../src/toolbar/MRT_ToolbarInternalButtons.tsx","../src/toolbar/MRT_TablePagination.tsx","../src/toolbar/MRT_ToolbarAlertBanner.tsx","../src/toolbar/MRT_LinearProgressBar.tsx","../src/toolbar/MRT_ToolbarTop.tsx","../src/toolbar/MRT_ToolbarBottom.tsx","../src/inputs/MRT_FilterTextField.tsx","../src/buttons/MRT_ToggleColumnActionMenuButton.tsx","../src/head/MRT_TableHeadCell.tsx","../src/head/MRT_TableHeadRow.tsx","../src/head/MRT_TableHead.tsx","../src/inputs/MRT_EditCellTextField.tsx","../src/buttons/MRT_CopyButton.tsx","../src/body/MRT_TableBodyCell.tsx","../src/body/MRT_TableDetailPanel.tsx","../src/body/MRT_TableBodyRow.tsx","../src/body/MRT_TableBody.tsx","../src/footer/MRT_TableFooterCell.tsx","../src/footer/MRT_TableFooterRow.tsx","../src/footer/MRT_TableFooter.tsx","../src/table/MRT_Table.tsx","../src/table/MRT_TableContainer.tsx","../src/table/MRT_TablePaper.tsx","../src/utils.ts","../src/table/MRT_TableRoot.tsx","../src/MaterialReactTable.tsx"],"sourcesContent":["export interface MRT_Localization {\n actions: string;\n cancel: string;\n changeFilterMode: string;\n changeSearchMode: string;\n clearFilter: string;\n clearSearch: string;\n clearSort: string;\n clickToCopy: string;\n columnActions: string;\n copiedToClipboard: string;\n edit: string;\n expand: string;\n expandAll: string;\n filterBestMatch: string;\n filterBestMatchFirst: string;\n filterByColumn: string;\n filterContains: string;\n filterEmpty: string;\n filterEndsWith: string;\n filterEquals: string;\n filterGreaterThan: string;\n filterLessThan: string;\n filterMode: string;\n filterNotEmpty: string;\n filterNotEquals: string;\n filterStartsWith: string;\n filteringByColumn: string;\n groupByColumn: string;\n groupedBy: string;\n hideAll: string;\n hideColumn: string;\n pinToLeft: string;\n pinToRight: string;\n resetColumnSize: string;\n rowActions: string;\n rowNumber: string;\n rowNumbers: string;\n save: string;\n search: string;\n select: string;\n selectedCountOfRowCountRowsSelected: string;\n showAll: string;\n showAllColumns: string;\n showHideColumns: string;\n showHideFilters: string;\n showHideSearch: string;\n sortByColumnAsc: string;\n sortByColumnDesc: string;\n sortedByColumnAsc: string;\n sortedByColumnDesc: string;\n thenBy: string;\n toggleDensePadding: string;\n toggleFullScreen: string;\n toggleSelectAll: string;\n toggleSelectRow: string;\n ungroupByColumn: string;\n unpin: string;\n unpinAll: string;\n unsorted: string;\n}\n\nexport const MRT_DefaultLocalization_EN: MRT_Localization = {\n actions: 'Actions',\n cancel: 'Cancel',\n changeFilterMode: 'Change filter mode',\n changeSearchMode: 'Change search mode',\n clearFilter: 'Clear filter',\n clearSearch: 'Clear search',\n clearSort: 'Clear sort',\n clickToCopy: 'Click to copy',\n columnActions: 'Column Actions',\n copiedToClipboard: 'Copied to clipboard',\n edit: 'Edit',\n expand: 'Expand',\n expandAll: 'Expand all',\n filterBestMatch: 'Best Match',\n filterBestMatchFirst: 'Best Match First',\n filterByColumn: 'Filter by {column}',\n filterContains: 'Contains',\n filterEmpty: 'Empty',\n filterEndsWith: 'Ends With',\n filterEquals: 'Equals',\n filterGreaterThan: 'Greater Than',\n filterLessThan: 'Less Than',\n filterMode: 'Filter Mode: {filterType}',\n filterNotEmpty: 'Not Empty',\n filterNotEquals: 'Not Equals',\n filterStartsWith: 'Starts With',\n filteringByColumn: 'Filtering by {column} - {filterType} \"{filterValue}\"',\n groupByColumn: 'Group by {column}',\n groupedBy: 'Grouped by ',\n hideAll: 'Hide all',\n hideColumn: 'Hide {column} column',\n pinToLeft: 'Pin to left',\n pinToRight: 'Pin to right',\n resetColumnSize: 'Reset column size',\n rowActions: 'Row Actions',\n rowNumber: '#',\n rowNumbers: 'Row Numbers',\n save: 'Save',\n search: 'Search',\n selectedCountOfRowCountRowsSelected:\n '{selectedCount} of {rowCount} row(s) selected',\n select: 'Select',\n showAll: 'Show all',\n showAllColumns: 'Show all columns',\n showHideColumns: 'Show/Hide columns',\n showHideFilters: 'Show/Hide filters',\n showHideSearch: 'Show/Hide search',\n sortByColumnAsc: 'Sort by {column} ascending',\n sortByColumnDesc: 'Sort by {column} descending',\n sortedByColumnAsc: 'Sorted by {column} ascending',\n sortedByColumnDesc: 'Sorted by {column} descending',\n thenBy: ', then by ',\n toggleDensePadding: 'Toggle dense padding',\n toggleFullScreen: 'Toggle full screen',\n toggleSelectAll: 'Toggle select all',\n toggleSelectRow: 'Toggle select row',\n ungroupByColumn: 'Ungroup by {column}',\n unpin: 'Unpin',\n unpinAll: 'Unpin all',\n unsorted: 'Unsorted',\n};\n","import ArrowRightIcon from '@mui/icons-material/ArrowRight';\nimport CancelIcon from '@mui/icons-material/Cancel';\nimport CheckBoxIcon from '@mui/icons-material/CheckBox';\nimport ClearAllIcon from '@mui/icons-material/ClearAll';\nimport CloseIcon from '@mui/icons-material/Close';\nimport DensityMediumIcon from '@mui/icons-material/DensityMedium';\nimport DensitySmallIcon from '@mui/icons-material/DensitySmall';\nimport DoubleArrowDownIcon from '@mui/icons-material/KeyboardDoubleArrowDown';\nimport DynamicFeedIcon from '@mui/icons-material/DynamicFeed';\nimport EditIcon from '@mui/icons-material/Edit';\nimport ExpandLessIcon from '@mui/icons-material/ExpandLess';\nimport ExpandMoreIcon from '@mui/icons-material/ExpandMore';\nimport FilterAltIcon from '@mui/icons-material/FilterAlt';\nimport FilterAltOff from '@mui/icons-material/FilterAltOff';\nimport FilterListIcon from '@mui/icons-material/FilterList';\nimport FilterListOffIcon from '@mui/icons-material/FilterListOff';\nimport FullscreenExitIcon from '@mui/icons-material/FullscreenExit';\nimport FullscreenIcon from '@mui/icons-material/Fullscreen';\nimport MoreHorizIcon from '@mui/icons-material/MoreHoriz';\nimport MoreVertIcon from '@mui/icons-material/MoreVert';\nimport PushPinIcon from '@mui/icons-material/PushPin';\nimport RestartAltIcon from '@mui/icons-material/RestartAlt';\nimport SaveIcon from '@mui/icons-material/Save';\nimport SearchIcon from '@mui/icons-material/Search';\nimport SearchOffIcon from '@mui/icons-material/SearchOff';\nimport SortIcon from '@mui/icons-material/Sort';\nimport ViewColumnIcon from '@mui/icons-material/ViewColumn';\nimport VisibilityOffIcon from '@mui/icons-material/VisibilityOff';\n\nexport interface MRT_Icons {\n ArrowRightIcon: any;\n CancelIcon: any;\n CheckBoxIcon: any;\n ClearAllIcon: any;\n CloseIcon: any;\n DensityMediumIcon: any;\n DensitySmallIcon: any;\n DoubleArrowDownIcon: any;\n DynamicFeedIcon: any;\n EditIcon: any;\n ExpandLessIcon: any;\n ExpandMoreIcon: any;\n FilterAltIcon: any;\n FilterAltOff: any;\n FilterListIcon: any;\n FilterListOffIcon: any;\n FullscreenExitIcon: any;\n FullscreenIcon: any;\n MoreHorizIcon: any;\n MoreVertIcon: any;\n PushPinIcon: any;\n RestartAltIcon: any;\n SaveIcon: any;\n SearchIcon: any;\n SearchOffIcon: any;\n SortIcon: any;\n ViewColumnIcon: any;\n VisibilityOffIcon: any;\n}\n\nexport const MRT_Default_Icons: MRT_Icons = {\n ArrowRightIcon,\n CancelIcon,\n CheckBoxIcon,\n ClearAllIcon,\n CloseIcon,\n DensityMediumIcon,\n DensitySmallIcon,\n DoubleArrowDownIcon,\n DynamicFeedIcon,\n EditIcon,\n ExpandLessIcon,\n ExpandMoreIcon,\n FilterAltIcon,\n FilterAltOff,\n FilterListIcon,\n FilterListOffIcon,\n FullscreenExitIcon,\n FullscreenIcon,\n MoreHorizIcon,\n MoreVertIcon,\n PushPinIcon,\n RestartAltIcon,\n SaveIcon,\n SearchIcon,\n SearchOffIcon,\n SortIcon,\n ViewColumnIcon,\n VisibilityOffIcon,\n};\n","import React, { FC } from 'react';\nimport { IconButton } from '@mui/material';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_ExpandAllButton: FC<Props> = ({ tableInstance }) => {\n const {\n getIsAllRowsExpanded,\n getIsSomeRowsExpanded,\n getState,\n options: {\n icons: { DoubleArrowDownIcon },\n isLoading,\n localization,\n },\n toggleAllRowsExpanded,\n } = tableInstance;\n\n const { isDensePadding } = getState();\n\n return (\n <IconButton\n aria-label={localization.expandAll}\n disabled={isLoading}\n title={localization.expandAll}\n onClick={() => toggleAllRowsExpanded(!getIsAllRowsExpanded())}\n sx={{\n height: isDensePadding ? '1.75rem' : '2.25rem',\n width: isDensePadding ? '1.75rem' : '2.25rem',\n }}\n >\n <DoubleArrowDownIcon\n style={{\n transform: `rotate(${\n getIsAllRowsExpanded() ? -180 : getIsSomeRowsExpanded() ? -90 : 0\n }deg)`,\n transition: 'transform 0.2s',\n }}\n />\n </IconButton>\n );\n};\n","import React, { FC, MouseEvent } from 'react';\nimport { IconButton } from '@mui/material';\nimport type { MRT_Row, MRT_TableInstance } from '..';\n\ninterface Props {\n row: MRT_Row;\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_ExpandButton: FC<Props> = ({ row, tableInstance }) => {\n const {\n getState,\n options: {\n icons: { ExpandMoreIcon },\n localization,\n onRowExpandChange,\n renderDetailPanel,\n },\n } = tableInstance;\n\n const { isDensePadding } = getState();\n\n const handleToggleExpand = (event: MouseEvent<HTMLButtonElement>) => {\n row.toggleExpanded();\n onRowExpandChange?.({ event, row, tableInstance });\n };\n\n return (\n <IconButton\n aria-label={localization.expand}\n disabled={!row.getCanExpand() && !renderDetailPanel}\n title={localization.expand}\n onClick={handleToggleExpand}\n sx={{\n height: isDensePadding ? '1.75rem' : '2.25rem',\n width: isDensePadding ? '1.75rem' : '2.25rem',\n }}\n >\n <ExpandMoreIcon\n style={{\n transform: `rotate(${\n !row.getCanExpand() && !renderDetailPanel\n ? -90\n : row.getIsExpanded()\n ? -180\n : 0\n }deg)`,\n transition: 'transform 0.2s',\n }}\n />\n </IconButton>\n );\n};\n","export enum MRT_FILTER_OPTION {\n BEST_MATCH = 'bestMatch',\n BEST_MATCH_FIRST = 'bestMatchFirst',\n CONTAINS = 'contains',\n EMPTY = 'empty',\n ENDS_WITH = 'endsWith',\n EQUALS = 'equals',\n GREATER_THAN = 'greaterThan',\n LESS_THAN = 'lessThan',\n NOT_EMPTY = 'notEmpty',\n NOT_EQUALS = 'notEquals',\n STARTS_WITH = 'startsWith',\n}\n","import { matchSorter } from 'match-sorter';\nimport { MRT_Row } from '.';\n\nexport const bestMatchFirst = (\n rows: MRT_Row[],\n columnIds: string[] | string,\n filterValue: string | number,\n) =>\n matchSorter(rows, filterValue.toString().trim(), {\n keys: Array.isArray(columnIds)\n ? columnIds.map((c) => `values.${c}`)\n : [`values.${columnIds}`],\n });\n\nbestMatchFirst.autoRemove = (val: any) => !val;\n\nexport const bestMatch = (\n rows: MRT_Row[],\n columnIds: string[] | string,\n filterValue: string | number,\n) =>\n matchSorter(rows, filterValue.toString().trim(), {\n keys: Array.isArray(columnIds)\n ? columnIds.map((c) => `values.${c}`)\n : [`values.${columnIds}`],\n sorter: (rankedItems) => rankedItems,\n });\n\nbestMatch.autoRemove = (val: any) => !val;\n\nexport const contains = (\n rows: MRT_Row[],\n id: string,\n filterValue: string | number,\n) =>\n rows.filter((row) =>\n row.values[id]\n .toString()\n .toLowerCase()\n .trim()\n .includes(filterValue.toString().toLowerCase().trim()),\n );\n\ncontains.autoRemove = (val: any) => !val;\n\nexport const startsWith = (\n rows: MRT_Row[],\n id: string,\n filterValue: string | number,\n) =>\n rows.filter((row) =>\n row.values[id]\n .toString()\n .toLowerCase()\n .trim()\n .startsWith(filterValue.toString().toLowerCase().trim()),\n );\n\nstartsWith.autoRemove = (val: any) => !val;\n\nexport const endsWith = (\n rows: MRT_Row[],\n id: string,\n filterValue: string | number,\n) =>\n rows.filter((row) =>\n row.values[id]\n .toString()\n .toLowerCase()\n .trim()\n .endsWith(filterValue.toString().toLowerCase().trim()),\n );\n\nendsWith.autoRemove = (val: any) => !val;\n\nexport const equals = (\n rows: MRT_Row[],\n id: string,\n filterValue: string | number,\n) =>\n rows.filter(\n (row) =>\n row.values[id].toString().toLowerCase().trim() ===\n filterValue.toString().toLowerCase().trim(),\n );\n\nequals.autoRemove = (val: any) => !val;\n\nexport const notEquals = (\n rows: MRT_Row[],\n id: string,\n filterValue: string | number,\n) =>\n rows.filter(\n (row) =>\n row.values[id].toString().toLowerCase().trim() !==\n filterValue.toString().toLowerCase().trim(),\n );\n\nnotEquals.autoRemove = (val: any) => !val;\n\nexport const greaterThan = (\n rows: MRT_Row[],\n id: string,\n filterValue: string | number,\n) =>\n rows.filter((row) =>\n !isNaN(+filterValue) && !isNaN(+row.values[id])\n ? +row.values[id] > +filterValue\n : row.values[id].toString().toLowerCase().trim() >\n filterValue.toString().toLowerCase().trim(),\n );\n\ngreaterThan.autoRemove = (val: any) => !val;\n\nexport const lessThan = (\n rows: MRT_Row[],\n id: string,\n filterValue: string | number,\n) =>\n rows.filter((row) =>\n !isNaN(+filterValue) && !isNaN(+row.values[id])\n ? +row.values[id] < +filterValue\n : row.values[id].toString().toLowerCase().trim() <\n filterValue.toString().toLowerCase().trim(),\n );\n\nlessThan.autoRemove = (val: any) => !val;\n\nexport const empty = (\n rows: MRT_Row[],\n id: string,\n _filterValue: string | number,\n) => rows.filter((row) => !row.values[id].toString().toLowerCase().trim());\n\nempty.autoRemove = (val: any) => !val;\n\nexport const notEmpty = (\n rows: MRT_Row[],\n id: string,\n _filterValue: string | number,\n) => rows.filter((row) => !!row.values[id].toString().toLowerCase().trim());\n\nnotEmpty.autoRemove = (val: any) => !val;\n\nexport const defaultFilterFNs = {\n bestMatch,\n bestMatchFirst,\n contains,\n empty,\n endsWith,\n equals,\n greaterThan,\n lessThan,\n notEmpty,\n notEquals,\n startsWith,\n};\n","import React, { FC, useMemo } from 'react';\nimport { Menu, MenuItem } from '@mui/material';\nimport type { MRT_FilterFn, MRT_Header, MRT_TableInstance } from '..';\nimport { MRT_FILTER_OPTION } from '../enums';\nimport {\n bestMatch,\n bestMatchFirst,\n contains,\n empty,\n endsWith,\n equals,\n greaterThan,\n lessThan,\n notEmpty,\n notEquals,\n startsWith,\n} from '../filtersFNs';\n\nconst commonMenuItemStyles = {\n py: '6px',\n my: 0,\n alignItems: 'center',\n};\n\ninterface Props {\n anchorEl: HTMLElement | null;\n header?: MRT_Header;\n onSelect?: () => void;\n setAnchorEl: (anchorEl: HTMLElement | null) => void;\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_FilterOptionMenu: FC<Props> = ({\n anchorEl,\n header,\n onSelect,\n setAnchorEl,\n tableInstance,\n}) => {\n const {\n getState,\n options: { enabledGlobalFilterOptions, localization },\n setCurrentFilterFns,\n setCurrentGlobalFilterFn,\n } = tableInstance;\n\n const { isDensePadding, currentFilterFns, currentGlobalFilterFn } =\n getState();\n\n const filterOptions: {\n type: MRT_FILTER_OPTION;\n label: string;\n divider: boolean;\n fn: Function;\n }[] = useMemo(\n () =>\n [\n {\n type: MRT_FILTER_OPTION.BEST_MATCH_FIRST,\n label: localization.filterBestMatchFirst,\n divider: false,\n fn: bestMatchFirst,\n },\n {\n type: MRT_FILTER_OPTION.BEST_MATCH,\n label: localization.filterBestMatch,\n divider: !!header,\n fn: bestMatch,\n },\n {\n type: MRT_FILTER_OPTION.CONTAINS,\n label: localization.filterContains,\n divider: false,\n fn: contains,\n },\n {\n type: MRT_FILTER_OPTION.STARTS_WITH,\n label: localization.filterStartsWith,\n divider: false,\n fn: startsWith,\n },\n {\n type: MRT_FILTER_OPTION.ENDS_WITH,\n label: localization.filterEndsWith,\n divider: true,\n fn: endsWith,\n },\n {\n type: MRT_FILTER_OPTION.EQUALS,\n label: localization.filterEquals,\n divider: false,\n fn: equals,\n },\n {\n type: MRT_FILTER_OPTION.NOT_EQUALS,\n label: localization.filterNotEquals,\n divider: true,\n fn: notEquals,\n },\n {\n type: MRT_FILTER_OPTION.GREATER_THAN,\n label: localization.filterGreaterThan,\n divider: false,\n fn: greaterThan,\n },\n {\n type: MRT_FILTER_OPTION.LESS_THAN,\n label: localization.filterLessThan,\n divider: true,\n fn: lessThan,\n },\n {\n type: MRT_FILTER_OPTION.EMPTY,\n label: localization.filterEmpty,\n divider: false,\n fn: empty,\n },\n {\n type: MRT_FILTER_OPTION.NOT_EMPTY,\n label: localization.filterNotEmpty,\n divider: false,\n fn: notEmpty,\n },\n ].filter((filterType) =>\n header\n ? !header.column.enabledColumnFilterOptions ||\n header.column.enabledColumnFilterOptions.includes(filterType.type)\n : (!enabledGlobalFilterOptions ||\n enabledGlobalFilterOptions.includes(filterType.type)) &&\n [\n MRT_FILTER_OPTION.BEST_MATCH_FIRST,\n MRT_FILTER_OPTION.BEST_MATCH,\n ].includes(filterType.type),\n ),\n [],\n );\n\n const handleSelectFilterType = (value: MRT_FILTER_OPTION) => {\n if (header) {\n setCurrentFilterFns((prev: { [key: string]: MRT_FilterFn }) => ({\n ...prev,\n [header.id]: value,\n }));\n if (\n [MRT_FILTER_OPTION.EMPTY, MRT_FILTER_OPTION.NOT_EMPTY].includes(value)\n ) {\n header.column.setColumnFilterValue(' ');\n }\n } else {\n setCurrentGlobalFilterFn(value);\n }\n setAnchorEl(null);\n onSelect?.();\n };\n\n const filterType = !!header\n ? currentFilterFns[header.id]\n : currentGlobalFilterFn;\n\n return (\n <Menu\n anchorEl={anchorEl}\n anchorOrigin={{ vertical: 'center', horizontal: 'right' }}\n onClose={() => setAnchorEl(null)}\n open={!!anchorEl}\n MenuListProps={{\n dense: isDensePadding,\n }}\n >\n {filterOptions.map(({ type, label, divider, fn }, index) => (\n <MenuItem\n divider={divider}\n key={index}\n onClick={() => handleSelectFilterType(type)}\n selected={type === filterType || fn === filterType}\n sx={commonMenuItemStyles}\n value={type}\n >\n {label}\n </MenuItem>\n ))}\n </Menu>\n );\n};\n","import React, { FC } from 'react';\nimport { Box, IconButton, Tooltip } from '@mui/material';\nimport type { MRT_Column, MRT_TableInstance } from '..';\n\ninterface Props {\n column: MRT_Column;\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_ColumnPinningButtons: FC<Props> = ({\n column,\n tableInstance,\n}) => {\n const {\n getState,\n options: {\n icons: { PushPinIcon },\n localization,\n },\n } = tableInstance;\n\n const { columnOrder } = getState();\n\n const handlePinColumn = (pinDirection: 'left' | 'right' | false) => {\n column.pin(pinDirection);\n if (column.columnDefType === 'display') {\n tableInstance.setColumnOrder([column.id, ...columnOrder]);\n }\n };\n\n const pinned = column.getIsPinned();\n\n return (\n <Box sx={{ mr: '8px' }}>\n <Tooltip\n arrow\n title={pinned === 'left' ? localization.unpin : localization.pinToLeft}\n >\n <IconButton\n onClick={() => handlePinColumn(pinned === 'left' ? false : 'left')}\n size=\"small\"\n >\n <PushPinIcon\n style={{\n transform: pinned === 'left' ? 'rotate(0)' : 'rotate(90deg)',\n }}\n />\n </IconButton>\n </Tooltip>\n <Tooltip\n arrow\n title={\n pinned === 'right' ? localization.unpin : localization.pinToRight\n }\n >\n <IconButton\n onClick={() => handlePinColumn(pinned === 'right' ? false : 'right')}\n size=\"small\"\n >\n <PushPinIcon\n style={{\n transform: pinned === 'right' ? 'rotate(0)' : 'rotate(-90deg)',\n }}\n />\n </IconButton>\n </Tooltip>\n </Box>\n );\n};\n","import React, { FC } from 'react';\nimport { FormControlLabel, MenuItem, Switch } from '@mui/material';\nimport type { MRT_Column, MRT_TableInstance } from '..';\nimport { MRT_ColumnPinningButtons } from '../buttons/MRT_ColumnPinningButtons';\n\ninterface Props {\n column: MRT_Column;\n isSubMenu?: boolean;\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_ShowHideColumnsMenuItems: FC<Props> = ({\n column,\n isSubMenu,\n tableInstance,\n}) => {\n const {\n getState,\n options: { onToggleColumnVisibility, enablePinning },\n } = tableInstance;\n\n const { columnVisibility } = getState();\n\n const switchChecked =\n (column.columnDefType !== 'group' && column.getIsVisible()) ||\n (column.columnDefType === 'group' &&\n column.getLeafColumns().some((col) => col.getIsVisible()));\n\n const handleToggleColumnHidden = (column: MRT_Column) => {\n if (column.columnDefType === 'group') {\n column?.columns?.forEach?.((childColumn: MRT_Column) => {\n childColumn.toggleVisibility(!switchChecked);\n });\n } else {\n column.toggleVisibility();\n }\n onToggleColumnVisibility?.({\n column,\n columnVisibility,\n tableInstance,\n });\n };\n\n return (\n <>\n <MenuItem\n sx={{\n alignItems: 'center',\n justifyContent: 'flex-start',\n my: 0,\n pl: `${(column.depth + 0.5) * 2}rem`,\n py: '6px',\n }}\n >\n {!isSubMenu && enablePinning && (\n <MRT_ColumnPinningButtons\n column={column}\n tableInstance={tableInstance}\n />\n )}\n <FormControlLabel\n componentsProps={{ typography: { sx: { marginBottom: 0 } } }}\n checked={switchChecked}\n control={<Switch />}\n disabled={\n (isSubMenu && switchChecked) || column.enableHiding === false\n }\n label={column.header}\n onChange={() => handleToggleColumnHidden(column)}\n />\n </MenuItem>\n {column.columns?.map((c: MRT_Column, i) => (\n <MRT_ShowHideColumnsMenuItems\n key={`${i}-${c.id}`}\n column={c}\n isSubMenu={isSubMenu}\n tableInstance={tableInstance}\n />\n ))}\n </>\n );\n};\n","import React, { FC, useMemo } from 'react';\nimport { Button, Menu, Divider, Box } from '@mui/material';\nimport { MRT_ShowHideColumnsMenuItems } from './MRT_ShowHideColumnsMenuItems';\nimport { MRT_Column, MRT_TableInstance } from '..';\n\ninterface Props {\n anchorEl: HTMLElement | null;\n isSubMenu?: boolean;\n setAnchorEl: (anchorEl: HTMLElement | null) => void;\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_ShowHideColumnsMenu: FC<Props> = ({\n anchorEl,\n isSubMenu,\n setAnchorEl,\n tableInstance,\n}) => {\n const {\n getAllColumns,\n getIsAllColumnsVisible,\n getIsSomeColumnsVisible,\n getIsSomeColumnsPinned,\n getState,\n toggleAllColumnsVisible,\n getAllLeafColumns,\n options: { localization, enablePinning },\n } = tableInstance;\n\n const { isDensePadding } = getState();\n\n const hideAllColumns = () => {\n getAllLeafColumns()\n .filter((col) => col.enableHiding !== false)\n .forEach((col) => col.toggleVisibility(false));\n };\n\n const allDisplayColumns = useMemo(\n () => getAllColumns().filter((col) => col.columnDefType === 'display'),\n [getAllColumns()],\n );\n\n const allDataColumns: (MRT_Column | null)[] = useMemo(() => {\n const dataColumns = getAllColumns().filter(\n (col) => col.columnDefType !== 'display',\n );\n return getIsSomeColumnsPinned()\n ? [\n ...dataColumns.filter((c) => c.getIsPinned() === 'left'),\n null,\n ...dataColumns.filter((c) => c.getIsPinned() === false),\n null,\n ...dataColumns.filter((c) => c.getIsPinned() === 'right'),\n ]\n : dataColumns;\n }, [getAllColumns(), getState().columnPinning, getIsSomeColumnsPinned()]);\n\n return (\n <Menu\n anchorEl={anchorEl}\n open={!!anchorEl}\n onClose={() => setAnchorEl(null)}\n MenuListProps={{\n dense: isDensePadding,\n }}\n >\n <Box\n sx={{\n display: 'flex',\n justifyContent: isSubMenu ? 'center' : 'space-between',\n p: '0.5rem',\n pt: 0,\n }}\n >\n {!isSubMenu && (\n <Button\n disabled={!getIsSomeColumnsVisible()}\n onClick={hideAllColumns}\n >\n {localization.hideAll}\n </Button>\n )}\n {!isSubMenu && enablePinning && (\n <Button\n disabled={!getIsSomeColumnsPinned()}\n onClick={() => tableInstance.setColumnPinning({})}\n >\n {localization.unpinAll}\n </Button>\n )}\n <Button\n disabled={getIsAllColumnsVisible()}\n onClick={() => toggleAllColumnsVisible(true)}\n >\n {localization.showAll}\n </Button>\n </Box>\n <Divider />\n {allDisplayColumns.map((column, index) => (\n <MRT_ShowHideColumnsMenuItems\n column={column}\n isSubMenu={isSubMenu}\n key={`${index}-${column.id}`}\n tableInstance={tableInstance}\n />\n ))}\n <Divider />\n {allDataColumns.map((column, index) =>\n column ? (\n <MRT_ShowHideColumnsMenuItems\n column={column}\n isSubMenu={isSubMenu}\n key={`${index}-${column.id}`}\n tableInstance={tableInstance}\n />\n ) : (\n <Divider key={`${index}-divider`} />\n ),\n )}\n </Menu>\n );\n};\n","import React, { FC, useState } from 'react';\nimport { Box, IconButton, ListItemIcon, Menu, MenuItem } from '@mui/material';\nimport type { MRT_Header, MRT_TableInstance } from '..';\nimport { MRT_FilterOptionMenu } from './MRT_FilterOptionMenu';\nimport { MRT_ShowHideColumnsMenu } from './MRT_ShowHideColumnsMenu';\n\nexport const commonMenuItemStyles = {\n py: '6px',\n my: 0,\n justifyContent: 'space-between',\n alignItems: 'center',\n};\n\nexport const commonListItemStyles = {\n display: 'flex',\n alignItems: 'center',\n};\n\ninterface Props {\n anchorEl: HTMLElement | null;\n header: MRT_Header;\n setAnchorEl: (anchorEl: HTMLElement | null) => void;\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_ColumnActionMenu: FC<Props> = ({\n anchorEl,\n header,\n setAnchorEl,\n tableInstance,\n}) => {\n const {\n getState,\n toggleAllColumnsVisible,\n setColumnOrder,\n options: {\n enableColumnFilters,\n enableColumnResizing,\n enableGrouping,\n enableHiding,\n enablePinning,\n enableSorting,\n icons: {\n ArrowRightIcon,\n ClearAllIcon,\n ViewColumnIcon,\n DynamicFeedIcon,\n FilterListIcon,\n FilterListOffIcon,\n PushPinIcon,\n SortIcon,\n RestartAltIcon,\n VisibilityOffIcon,\n },\n idPrefix,\n localization,\n },\n setShowFilters,\n } = tableInstance;\n\n const { column } = header;\n\n const { columnSizing, columnVisibility, isDensePadding } = getState();\n\n const [filterMenuAnchorEl, setFilterMenuAnchorEl] =\n useState<null | HTMLElement>(null);\n\n const [showHideColumnsMenuAnchorEl, setShowHideColumnsMenuAnchorEl] =\n useState<null | HTMLElement>(null);\n\n const handleClearSort = () => {\n column.resetSorting();\n setAnchorEl(null);\n };\n\n const handleSortAsc = () => {\n column.toggleSorting(false);\n setAnchorEl(null);\n };\n\n const handleSortDesc = () => {\n column.toggleSorting(true);\n setAnchorEl(null);\n };\n\n const handleResetColumnSize = () => {\n column.resetSize();\n setAnchorEl(null);\n };\n\n const handleHideColumn = () => {\n column.toggleVisibility(false);\n setAnchorEl(null);\n };\n\n const handlePinColumn = (pinDirection: 'left' | 'right' | false) => {\n column.pin(pinDirection);\n };\n\n const handleGroupByColumn = () => {\n column.toggleGrouping();\n setColumnOrder((old) => ['mrt-expand', ...old]);\n setAnchorEl(null);\n };\n\n const handleClearFilter = () => {\n column.setColumnFilterValue('');\n setAnchorEl(null);\n };\n\n const handleFilterByColumn = () => {\n setShowFilters(true);\n setTimeout(\n () =>\n document\n .getElementById(\n // @ts-ignore\n header.muiTableHeadCellFilterTextFieldProps?.id ??\n `mrt-${idPrefix}-${header.id}-filter-text-field`,\n )\n ?.focus(),\n 200,\n );\n setAnchorEl(null);\n };\n\n const handleShowAllColumns = () => {\n toggleAllColumnsVisible(true);\n setAnchorEl(null);\n };\n\n const handleOpenFilterModeMenu = (event: React.MouseEvent<HTMLElement>) => {\n event.stopPropagation();\n setFilterMenuAnchorEl(event.currentTarget);\n };\n\n const handleOpenShowHideColumnsMenu = (\n event: React.MouseEvent<HTMLElement>,\n ) => {\n event.stopPropagation();\n setShowHideColumnsMenuAnchorEl(event.currentTarget);\n };\n\n return (\n <Menu\n anchorEl={anchorEl}\n open={!!anchorEl}\n onClose={() => setAnchorEl(null)}\n MenuListProps={{\n dense: isDensePadding,\n }}\n >\n {enableSorting &&\n column.getCanSort() && [\n <MenuItem\n disabled={!column.getIsSorted()}\n key={0}\n onClick={handleClearSort}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <ClearAllIcon />\n </ListItemIcon>\n {localization.clearSort}\n </Box>\n </MenuItem>,\n <MenuItem\n disabled={column.getIsSorted() === 'asc'}\n key={1}\n onClick={handleSortAsc}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <SortIcon />\n </ListItemIcon>\n {localization.sortByColumnAsc?.replace(\n '{column}',\n String(column.header),\n )}\n </Box>\n </MenuItem>,\n <MenuItem\n divider={enableColumnFilters || enableGrouping || enableHiding}\n key={2}\n disabled={column.getIsSorted() === 'desc'}\n onClick={handleSortDesc}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <SortIcon style={{ transform: 'rotate(180deg) scaleX(-1)' }} />\n </ListItemIcon>\n {localization.sortByColumnDesc?.replace(\n '{column}',\n String(column.header),\n )}\n </Box>\n </MenuItem>,\n ]}\n {enableColumnFilters &&\n column.getCanColumnFilter() && [\n <MenuItem\n disabled={!column.getColumnFilterValue()}\n key={0}\n onClick={handleClearFilter}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <FilterListOffIcon />\n </ListItemIcon>\n {localization.clearFilter}\n </Box>\n </MenuItem>,\n <MenuItem\n divider={enableGrouping || enableHiding}\n key={1}\n onClick={handleFilterByColumn}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <FilterListIcon />\n </ListItemIcon>\n {localization.filterByColumn?.replace(\n '{column}',\n String(column.header),\n )}\n </Box>\n {!column.filterSelectOptions && (\n <IconButton\n onClick={handleOpenFilterModeMenu}\n onMouseEnter={handleOpenFilterModeMenu}\n size=\"small\"\n sx={{ p: 0 }}\n >\n <ArrowRightIcon />\n </IconButton>\n )}\n </MenuItem>,\n <MRT_FilterOptionMenu\n anchorEl={filterMenuAnchorEl}\n header={header}\n key={2}\n onSelect={handleFilterByColumn}\n setAnchorEl={setFilterMenuAnchorEl}\n tableInstance={tableInstance}\n />,\n ]}\n {enableGrouping &&\n column.getCanGroup() && [\n <MenuItem\n divider={enablePinning}\n key={0}\n onClick={handleGroupByColumn}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <DynamicFeedIcon />\n </ListItemIcon>\n {localization[\n column.getIsGrouped() ? 'ungroupByColumn' : 'groupByColumn'\n ]?.replace('{column}', String(column.header))}\n </Box>\n </MenuItem>,\n ]}\n {enablePinning &&\n column.getCanPin() && [\n <MenuItem\n disabled={column.getIsPinned() === 'left' || !column.getCanPin()}\n key={0}\n onClick={() => handlePinColumn('left')}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <PushPinIcon style={{ transform: 'rotate(90deg)' }} />\n </ListItemIcon>\n {localization.pinToLeft}\n </Box>\n </MenuItem>,\n <MenuItem\n disabled={column.getIsPinned() === 'right' || !column.getCanPin()}\n key={0}\n onClick={() => handlePinColumn('right')}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <PushPinIcon style={{ transform: 'rotate(-90deg)' }} />\n </ListItemIcon>\n {localization.pinToRight}\n </Box>\n </MenuItem>,\n <MenuItem\n disabled={!column.getIsPinned()}\n divider={enableHiding}\n key={0}\n onClick={() => handlePinColumn(false)}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <PushPinIcon />\n </ListItemIcon>\n {localization.unpin}\n </Box>\n </MenuItem>,\n ]}\n {enableColumnResizing && [\n <MenuItem\n disabled={!column.getCanResize() || !columnSizing[column.id]}\n key={0}\n onClick={handleResetColumnSize}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <RestartAltIcon />\n </ListItemIcon>\n {localization.resetColumnSize}\n </Box>\n </MenuItem>,\n ]}\n {enableHiding && [\n <MenuItem\n disabled={column.enableHiding === false}\n key={0}\n onClick={handleHideColumn}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <VisibilityOffIcon />\n </ListItemIcon>\n {localization.hideColumn?.replace(\n '{column}',\n String(column.header),\n )}\n </Box>\n </MenuItem>,\n <MenuItem\n disabled={\n !Object.values(columnVisibility).filter((visible) => !visible)\n .length\n }\n key={1}\n onClick={handleShowAllColumns}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <ViewColumnIcon />\n </ListItemIcon>\n {localization.showAllColumns?.replace(\n '{column}',\n String(column.header),\n )}\n </Box>\n <IconButton\n onClick={handleOpenShowHideColumnsMenu}\n onMouseEnter={handleOpenShowHideColumnsMenu}\n size=\"small\"\n sx={{ p: 0 }}\n >\n <ArrowRightIcon />\n </IconButton>\n </MenuItem>,\n <MRT_ShowHideColumnsMenu\n anchorEl={showHideColumnsMenuAnchorEl}\n isSubMenu\n key={2}\n setAnchorEl={setShowHideColumnsMenuAnchorEl}\n tableInstance={tableInstance}\n />,\n ]}\n </Menu>\n );\n};\n","import React, { FC } from 'react';\nimport { Box, ListItemIcon, Menu, MenuItem } from '@mui/material';\nimport type { MRT_Row, MRT_TableInstance } from '..';\nimport {\n commonListItemStyles,\n commonMenuItemStyles,\n} from './MRT_ColumnActionMenu';\n\ninterface Props {\n anchorEl: HTMLElement | null;\n handleEdit: () => void;\n row: MRT_Row;\n setAnchorEl: (anchorEl: HTMLElement | null) => void;\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_RowActionMenu: FC<Props> = ({\n anchorEl,\n handleEdit,\n row,\n setAnchorEl,\n tableInstance,\n}) => {\n const {\n getState,\n options: {\n icons: { EditIcon },\n enableEditing,\n localization,\n renderRowActionMenuItems,\n },\n } = tableInstance;\n\n const { isDensePadding } = getState();\n\n return (\n <Menu\n anchorEl={anchorEl}\n open={!!anchorEl}\n onClose={() => setAnchorEl(null)}\n MenuListProps={{\n dense: isDensePadding,\n }}\n >\n {enableEditing && (\n <MenuItem onClick={handleEdit} sx={commonMenuItemStyles}>\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <EditIcon />\n </ListItemIcon>\n {localization.edit}\n </Box>\n </MenuItem>\n )}\n {renderRowActionMenuItems?.({\n row,\n tableInstance,\n closeMenu: () => setAnchorEl(null),\n })}\n </Menu>\n );\n};\n","import React, { FC } from 'react';\nimport { Box, IconButton, Tooltip } from '@mui/material';\nimport type { MRT_Row, MRT_TableInstance } from '..';\nimport { RowValues } from '@tanstack/react-table';\n\ninterface Props {\n row: MRT_Row;\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_EditActionButtons: FC<Props> = ({ row, tableInstance }) => {\n const {\n getState,\n options: {\n icons: { CancelIcon, SaveIcon },\n localization,\n onEditSubmit,\n },\n setCurrentEditingRow,\n } = tableInstance;\n\n const { currentEditingRow } = getState();\n\n const handleCancel = () => {\n row.values = (row.original as RowValues) ?? {};\n setCurrentEditingRow(null);\n };\n\n const handleSave = () => {\n onEditSubmit?.({ row: currentEditingRow ?? row, tableInstance });\n setCurrentEditingRow(null);\n };\n\n return (\n <Box sx={{ display: 'flex', gap: '0.75rem' }}>\n <Tooltip arrow title={localization.cancel}>\n <IconButton aria-label={localization.cancel} onClick={handleCancel}>\n <CancelIcon />\n </IconButton>\n </Tooltip>\n <Tooltip arrow title={localization.save}>\n <IconButton\n aria-label={localization.save}\n color=\"info\"\n onClick={handleSave}\n >\n <SaveIcon />\n </IconButton>\n </Tooltip>\n </Box>\n );\n};\n","import React, { FC, MouseEvent, useState } from 'react';\nimport { IconButton, Tooltip } from '@mui/material';\nimport { MRT_RowActionMenu } from '../menus/MRT_RowActionMenu';\nimport { MRT_EditActionButtons } from './MRT_EditActionButtons';\nimport type { MRT_Row, MRT_TableInstance } from '..';\n\nconst commonIconButtonStyles = {\n height: '2rem',\n ml: '10px',\n opacity: 0.5,\n transition: 'opacity 0.2s',\n width: '2rem',\n '&:hover': {\n opacity: 1,\n },\n};\n\ninterface Props {\n row: MRT_Row;\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_ToggleRowActionMenuButton: FC<Props> = ({\n row,\n tableInstance,\n}) => {\n const {\n getState,\n options: {\n enableEditing,\n icons: { EditIcon, MoreHorizIcon },\n localization,\n renderRowActionMenuItems,\n renderRowActions,\n },\n setCurrentEditingRow,\n } = tableInstance;\n\n const { currentEditingRow } = getState();\n\n const [anchorEl, setAnchorEl] = useState<null | HTMLElement>(null);\n\n const handleOpenRowActionMenu = (event: MouseEvent<HTMLElement>) => {\n event.stopPropagation();\n event.preventDefault();\n setAnchorEl(event.currentTarget);\n };\n\n const handleStartEditMode = () => {\n setCurrentEditingRow({ ...row });\n setAnchorEl(null);\n };\n\n return (\n <>\n {renderRowActions ? (\n <>{renderRowActions({ row, tableInstance })}</>\n ) : row.id === currentEditingRow?.id ? (\n <MRT_EditActionButtons row={row} tableInstance={tableInstance} />\n ) : !renderRowActionMenuItems && enableEditing ? (\n <Tooltip placement=\"right\" arrow title={localization.edit}>\n <IconButton sx={commonIconButtonStyles} onClick={handleStartEditMode}>\n <EditIcon />\n </IconButton>\n </Tooltip>\n ) : renderRowActionMenuItems ? (\n <>\n <Tooltip\n arrow\n enterDelay={1000}\n enterNextDelay={1000}\n title={localization.rowActions}\n >\n <IconButton\n aria-label={localization.rowActions}\n onClick={handleOpenRowActionMenu}\n size=\"small\"\n sx={commonIconButtonStyles}\n >\n <MoreHorizIcon />\n </IconButton>\n </Tooltip>\n <MRT_RowActionMenu\n anchorEl={anchorEl}\n handleEdit={handleStartEditMode}\n row={row}\n setAnchorEl={setAnchorEl}\n tableInstance={tableInstance}\n />\n </>\n ) : null}\n </>\n );\n};\n","import React, { ChangeEvent, FC } from 'react';\nimport { Checkbox, Tooltip } from '@mui/material';\nimport type { MRT_Row, MRT_TableInstance } from '..';\n\ninterface Props {\n row?: MRT_Row;\n selectAll?: boolean;\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_SelectCheckbox: FC<Props> = ({\n row,\n selectAll,\n tableInstance,\n}) => {\n const {\n getRowModel,\n getSelectedRowModel,\n getState,\n getToggleAllRowsSelectedProps,\n options: {\n isLoading,\n localization,\n muiSelectCheckboxProps,\n onSelectChange,\n onSelectAllChange,\n },\n } = tableInstance;\n\n const { isDensePadding } = getState();\n\n const handleSelectChange = (event: ChangeEvent<HTMLInputElement>) => {\n if (selectAll) {\n getToggleAllRowsSelectedProps?.()?.onChange?.(event as any);\n onSelectAllChange?.({\n event,\n selectedRows: event.target.checked ? getRowModel().flatRows : [],\n tableInstance,\n });\n } else if (row) {\n row?.getToggleSelectedProps()?.onChange?.(event as any);\n onSelectChange?.({\n event,\n row,\n selectedRows: event.target.checked\n ? [...getSelectedRowModel().flatRows, row]\n : getSelectedRowModel().flatRows.filter(\n (selectedRow) => selectedRow.id !== row.id,\n ),\n tableInstance,\n });\n }\n };\n\n const mTableBodyRowSelectCheckboxProps =\n muiSelectCheckboxProps instanceof Function\n ? muiSelectCheckboxProps({ isSelectAll: !!selectAll, row, tableInstance })\n : muiSelectCheckboxProps;\n\n const rtSelectCheckboxProps = selectAll\n ? getToggleAllRowsSelectedProps()\n : row?.getToggleSelectedProps();\n\n const checkboxProps = {\n ...rtSelectCheckboxProps,\n ...mTableBodyRowSelectCheckboxProps,\n };\n\n return (\n <Tooltip\n arrow\n enterDelay={1000}\n enterNextDelay={1000}\n title={\n selectAll ? localization.toggleSelectAll : localization.toggleSelectRow\n }\n >\n <Checkbox\n disabled={isLoading}\n inputProps={{\n 'aria-label': selectAll\n ? localization.toggleSelectAll\n : localization.toggleSelectRow,\n }}\n size={isDensePadding ? 'small' : 'medium'}\n {...checkboxProps}\n sx={{\n height: isDensePadding ? '1.75rem' : '2.25rem',\n width: isDensePadding ? '1.75rem' : '2.25rem',\n }}\n onChange={handleSelectChange}\n title={undefined}\n />\n </Tooltip>\n );\n};\n","import React, {\n ChangeEvent,\n FC,\n MouseEvent,\n useCallback,\n useState,\n} from 'react';\nimport {\n Collapse,\n debounce,\n IconButton,\n InputAdornment,\n TextField,\n Tooltip,\n} from '@mui/material';\nimport { MRT_FilterOptionMenu } from '../menus/MRT_FilterOptionMenu';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_SearchTextField: FC<Props> = ({ tableInstance }) => {\n const {\n getState,\n setGlobalFilter,\n options: {\n icons: { SearchIcon, CloseIcon },\n idPrefix,\n localization,\n muiSearchTextFieldProps,\n onGlobalSearchFilterChange,\n },\n } = tableInstance;\n\n const { globalFilter, showGlobalFilter } = getState();\n\n const [anchorEl, setAnchorEl] = useState<null | HTMLElement>(null);\n const [searchValue, setSearchValue] = useState(globalFilter ?? '');\n\n const handleChange = useCallback(\n debounce((event: ChangeEvent<HTMLInputElement>) => {\n setGlobalFilter(event.target.value ?? undefined);\n onGlobalSearchFilterChange?.({ event, tableInstance });\n }, 200),\n [],\n );\n\n const handleGlobalFilterMenuOpen = (event: MouseEvent<HTMLElement>) => {\n setAnchorEl(event.currentTarget);\n };\n\n const handleClear = () => {\n setSearchValue('');\n setGlobalFilter(undefined);\n };\n\n const textFieldProps =\n muiSearchTextFieldProps instanceof Function\n ? muiSearchTextFieldProps({ tableInstance })\n : muiSearchTextFieldProps;\n\n return (\n <Collapse in={showGlobalFilter} orientation=\"horizontal\">\n <TextField\n id={`mrt-${idPrefix}-search-text-field`}\n placeholder={localization.search}\n onChange={(event: ChangeEvent<HTMLInputElement>) => {\n setSearchValue(event.target.value);\n handleChange(event);\n }}\n value={searchValue ?? ''}\n variant=\"standard\"\n InputProps={{\n startAdornment: (\n <InputAdornment position=\"start\">\n <Tooltip arrow title={localization.changeSearchMode}>\n <span>\n <IconButton\n aria-label={localization.changeSearchMode}\n onClick={handleGlobalFilterMenuOpen}\n size=\"small\"\n sx={{ height: '1.75rem', width: '1.75rem' }}\n >\n <SearchIcon />\n </IconButton>\n </span>\n </Tooltip>\n </InputAdornment>\n ),\n endAdornment: (\n <InputAdornment position=\"end\">\n <IconButton\n aria-label={localization.clearSearch}\n disabled={searchValue?.length === 0}\n onClick={handleClear}\n size=\"small\"\n title={localization.clearSearch}\n >\n <CloseIcon />\n </IconButton>\n </InputAdornment>\n ),\n }}\n {...textFieldProps}\n sx={{ justifySelf: 'end', ...textFieldProps?.sx }}\n />\n <MRT_FilterOptionMenu\n anchorEl={anchorEl}\n setAnchorEl={setAnchorEl}\n tableInstance={tableInstance}\n />\n </Collapse>\n );\n};\n","import React, { FC, MouseEvent } from 'react';\nimport { IconButton, IconButtonProps, Tooltip } from '@mui/material';\nimport { MRT_TableInstance } from '..';\n\ninterface Props extends IconButtonProps {\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_FullScreenToggleButton: FC<Props> = ({\n tableInstance,\n ...rest\n}) => {\n const {\n getState,\n options: {\n icons: { FullscreenExitIcon, FullscreenIcon },\n localization,\n onToggleFullScreen,\n },\n setIsFullScreen,\n } = tableInstance;\n\n const { isFullScreen } = getState();\n\n const handleToggleFullScreen = (event: MouseEvent<HTMLButtonElement>) => {\n onToggleFullScreen?.({\n event,\n isFullScreen: !isFullScreen,\n tableInstance,\n });\n setIsFullScreen(!isFullScreen);\n };\n\n return (\n <Tooltip arrow title={localization.toggleFullScreen}>\n <IconButton\n aria-label={localization.showHideFilters}\n onClick={handleToggleFullScreen}\n {...rest}\n >\n {isFullScreen ? <FullscreenExitIcon /> : <FullscreenIcon />}\n </IconButton>\n </Tooltip>\n );\n};\n","import React, { FC, MouseEvent, useState } from 'react';\nimport { IconButton, Tooltip, IconButtonProps } from '@mui/material';\nimport { MRT_ShowHideColumnsMenu } from '../menus/MRT_ShowHideColumnsMenu';\nimport { MRT_TableInstance } from '..';\n\ninterface Props extends IconButtonProps {\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_ShowHideColumnsButton: FC<Props> = ({\n tableInstance,\n ...rest\n}) => {\n const {\n options: {\n icons: { ViewColumnIcon },\n localization,\n },\n } = tableInstance;\n\n const [anchorEl, setAnchorEl] = useState<null | HTMLElement>(null);\n\n const handleClick = (event: MouseEvent<HTMLElement>) => {\n setAnchorEl(event.currentTarget);\n };\n\n return (\n <>\n <Tooltip arrow title={localization.showHideColumns}>\n <IconButton\n aria-label={localization.showHideColumns}\n onClick={handleClick}\n {...rest}\n >\n <ViewColumnIcon />\n </IconButton>\n </Tooltip>\n <MRT_ShowHideColumnsMenu\n anchorEl={anchorEl}\n setAnchorEl={setAnchorEl}\n tableInstance={tableInstance}\n />\n </>\n );\n};\n","import React, { FC, MouseEvent } from 'react';\nimport { IconButton, IconButtonProps, Tooltip } from '@mui/material';\nimport { MRT_TableInstance } from '..';\n\ninterface Props extends IconButtonProps {\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_ToggleDensePaddingButton: FC<Props> = ({\n tableInstance,\n ...rest\n}) => {\n const {\n getState,\n options: {\n icons: { DensityMediumIcon, DensitySmallIcon },\n localization,\n onToggleDensePadding,\n },\n setIsDensePadding,\n } = tableInstance;\n\n const { isDensePadding } = getState();\n\n const handleToggleDensePadding = (event: MouseEvent<HTMLButtonElement>) => {\n onToggleDensePadding?.({\n event,\n isDensePadding: !isDensePadding,\n tableInstance,\n });\n setIsDensePadding(!isDensePadding);\n };\n\n return (\n <Tooltip arrow title={localization.toggleDensePadding}>\n <IconButton\n aria-label={localization.toggleDensePadding}\n onClick={handleToggleDensePadding}\n {...rest}\n >\n {isDensePadding ? <DensitySmallIcon /> : <DensityMediumIcon />}\n </IconButton>\n </Tooltip>\n );\n};\n","import React, { FC, MouseEvent } from 'react';\nimport { IconButton, IconButtonProps, Tooltip } from '@mui/material';\nimport { MRT_TableInstance } from '..';\n\ninterface Props extends IconButtonProps {\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_ToggleFiltersButton: FC<Props> = ({\n tableInstance,\n ...rest\n}) => {\n const {\n getState,\n options: {\n icons: { FilterListIcon, FilterListOffIcon },\n localization,\n onToggleShowFilters,\n },\n setShowFilters,\n } = tableInstance;\n\n const { showFilters } = getState();\n\n const handleToggleShowFilters = (event: MouseEvent<HTMLButtonElement>) => {\n onToggleShowFilters?.({\n event,\n showFilters: !showFilters,\n tableInstance,\n });\n setShowFilters(!showFilters);\n };\n\n return (\n <Tooltip arrow title={localization.showHideFilters}>\n <IconButton\n aria-label={localization.showHideFilters}\n onClick={handleToggleShowFilters}\n {...rest}\n >\n {showFilters ? <FilterListOffIcon /> : <FilterListIcon />}\n </IconButton>\n </Tooltip>\n );\n};\n","import React, { FC, MouseEvent } from 'react';\nimport { IconButton, IconButtonProps, Tooltip } from '@mui/material';\nimport { MRT_TableInstance } from '..';\n\ninterface Props extends IconButtonProps {\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_ToggleGlobalFilterButton: FC<Props> = ({\n tableInstance,\n ...rest\n}) => {\n const {\n getState,\n options: {\n icons: { SearchIcon, SearchOffIcon },\n idPrefix,\n localization,\n muiSearchTextFieldProps,\n onToggleShowGlobalFilter,\n },\n setShowGlobalFilter,\n } = tableInstance;\n\n const { showGlobalFilter } = getState();\n\n const textFieldProps =\n muiSearchTextFieldProps instanceof Function\n ? muiSearchTextFieldProps({ tableInstance })\n : muiSearchTextFieldProps;\n\n const handleToggleSearch = (event: MouseEvent<HTMLButtonElement>) => {\n onToggleShowGlobalFilter?.({\n event,\n showGlobalFilter: !showGlobalFilter,\n tableInstance,\n });\n setShowGlobalFilter(!showGlobalFilter);\n setTimeout(\n () =>\n document\n .getElementById(\n textFieldProps?.id ?? `mrt-${idPrefix}-search-text-field`,\n )\n ?.focus(),\n 200,\n );\n };\n\n return (\n <Tooltip arrow title={localization.showHideSearch}>\n <IconButton onClick={handleToggleSearch} {...rest}>\n {showGlobalFilter ? <SearchOffIcon /> : <SearchIcon />}\n </IconButton>\n </Tooltip>\n );\n};\n","import React, { FC } from 'react';\nimport { Box } from '@mui/material';\nimport { MRT_FullScreenToggleButton } from '../buttons/MRT_FullScreenToggleButton';\nimport { MRT_ShowHideColumnsButton } from '../buttons/MRT_ShowHideColumnsButton';\nimport { MRT_ToggleDensePaddingButton } from '../buttons/MRT_ToggleDensePaddingButton';\nimport { MRT_ToggleFiltersButton } from '../buttons/MRT_ToggleFiltersButton';\nimport { MRT_ToggleGlobalFilterButton } from '../buttons/MRT_ToggleGlobalFilterButton';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_ToolbarInternalButtons: FC<Props> = ({ tableInstance }) => {\n const {\n options: {\n enableColumnFilters,\n enableDensePaddingToggle,\n enableFilters,\n enableFullScreenToggle,\n enableGlobalFilter,\n enableHiding,\n renderToolbarInternalActions,\n },\n } = tableInstance;\n\n if (renderToolbarInternalActions) {\n return (\n <>\n {renderToolbarInternalActions({\n MRT_FullScreenToggleButton,\n MRT_ShowHideColumnsButton,\n MRT_ToggleDensePaddingButton,\n MRT_ToggleFiltersButton,\n MRT_ToggleGlobalFilterButton,\n tableInstance,\n })}\n </>\n );\n }\n\n return (\n <Box\n sx={{\n display: 'flex',\n alignItems: 'center',\n }}\n >\n {enableFilters && enableGlobalFilter && (\n <MRT_ToggleGlobalFilterButton tableInstance={tableInstance} />\n )}\n {enableFilters && enableColumnFilters && (\n <MRT_ToggleFiltersButton tableInstance={tableInstance} />\n )}\n {enableHiding && (\n <MRT_ShowHideColumnsButton tableInstance={tableInstance} />\n )}\n {enableDensePaddingToggle && (\n <MRT_ToggleDensePaddingButton tableInstance={tableInstance} />\n )}\n {enableFullScreenToggle && (\n <MRT_FullScreenToggleButton tableInstance={tableInstance} />\n )}\n </Box>\n );\n};\n","import React, { ChangeEvent, FC } from 'react';\nimport { TablePagination } from '@mui/material';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_TablePagination: FC<Props> = ({ tableInstance }) => {\n const {\n getPrePaginationRowModel,\n getState,\n setPageIndex,\n setPageSize,\n options: { muiTablePaginationProps },\n } = tableInstance;\n\n const {\n pagination: { pageSize = 10, pageIndex = 0 },\n } = getState();\n\n const tablePaginationProps =\n muiTablePaginationProps instanceof Function\n ? muiTablePaginationProps({ tableInstance })\n : muiTablePaginationProps;\n\n const handleChangeRowsPerPage = (event: ChangeEvent<HTMLInputElement>) => {\n setPageSize(+event.target.value);\n };\n\n const showFirstLastPageButtons =\n getPrePaginationRowModel().rows.length / pageSize > 2;\n\n return (\n <TablePagination\n SelectProps={{\n sx: { m: '0 1rem 0 1ch' },\n MenuProps: { MenuListProps: { disablePadding: true } },\n }}\n component=\"div\"\n count={getPrePaginationRowModel().rows.length}\n onPageChange={(_: any, newPage: number) => setPageIndex(newPage)}\n onRowsPerPageChange={handleChangeRowsPerPage}\n page={pageIndex}\n rowsPerPage={pageSize}\n rowsPerPageOptions={[5, 10, 15, 20, 25, 30, 50, 100]}\n showFirstButton={showFirstLastPageButtons}\n showLastButton={showFirstLastPageButtons}\n {...tablePaginationProps}\n sx={{\n m: '0 0.5rem',\n position: 'relative',\n zIndex: 2,\n ...tablePaginationProps?.sx,\n }}\n />\n );\n};\n","import React, { FC, Fragment } from 'react';\nimport { Alert, Box, Chip, Collapse, useMediaQuery } from '@mui/material';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_ToolbarAlertBanner: FC<Props> = ({ tableInstance }) => {\n const {\n getPrePaginationRowModel,\n getSelectedRowModel,\n getState,\n toggleColumnGrouping,\n options: {\n localization,\n muiTableToolbarAlertBannerProps,\n positionToolbarActions,\n positionToolbarAlertBanner,\n renderToolbarCustomActions,\n },\n } = tableInstance;\n\n const { grouping } = getState();\n\n const isMobile = useMediaQuery('(max-width:720px)');\n\n const alertProps =\n muiTableToolbarAlertBannerProps instanceof Function\n ? muiTableToolbarAlertBannerProps({ tableInstance })\n : muiTableToolbarAlertBannerProps;\n\n const selectMessage =\n getSelectedRowModel().rows.length > 0\n ? localization.selectedCountOfRowCountRowsSelected\n ?.replace(\n '{selectedCount}',\n getSelectedRowModel().rows.length.toString(),\n )\n ?.replace(\n '{rowCount}',\n getPrePaginationRowModel().rows.length.toString(),\n )\n : null;\n\n const groupedByMessage =\n grouping.length > 0 ? (\n <span>\n {localization.groupedBy}{' '}\n {grouping.map((columnId, index) => (\n <Fragment key={`${index}-${columnId}`}>\n {index > 0 ? localization.thenBy : ''}\n <Chip\n color=\"secondary\"\n label={\n tableInstance\n .getAllColumns()\n .find((column) => column.id === columnId)?.header\n }\n onDelete={() => toggleColumnGrouping(columnId)}\n />\n </Fragment>\n ))}\n </span>\n ) : null;\n\n const displayAbsolute = !(\n isMobile ||\n (positionToolbarAlertBanner === 'bottom' &&\n positionToolbarActions === 'bottom') ||\n (positionToolbarAlertBanner === 'top' && !!renderToolbarCustomActions)\n );\n\n return (\n <Collapse\n in={!!selectMessage || !!groupedByMessage}\n timeout={displayAbsolute ? 0 : 200}\n >\n <Alert\n color=\"info\"\n icon={false}\n sx={{\n borderRadius: 0,\n fontSize: '1rem',\n left: 0,\n p: 0,\n position: displayAbsolute ? 'absolute' : 'relative',\n right: 0,\n minHeight: '3.5rem',\n top: 0,\n width: '100%',\n zIndex: 2,\n ...alertProps?.sx,\n }}\n {...alertProps}\n >\n <Box sx={{ p: '0.5rem 1rem' }}>\n {selectMessage}\n <br />\n {groupedByMessage}\n </Box>\n </Alert>\n </Collapse>\n );\n};\n","import React, { FC } from 'react';\nimport { Collapse, LinearProgress } from '@mui/material';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_LinearProgressBar: FC<Props> = ({ tableInstance }) => {\n const {\n options: { muiLinearProgressProps, isReloading, isLoading },\n } = tableInstance;\n\n const linearProgressProps =\n muiLinearProgressProps instanceof Function\n ? muiLinearProgressProps({ tableInstance })\n : muiLinearProgressProps;\n\n return (\n <Collapse in={isReloading || isLoading} unmountOnExit>\n <LinearProgress\n aria-label=\"Loading\"\n aria-busy=\"true\"\n {...linearProgressProps}\n />\n </Collapse>\n );\n};\n","import React, { FC } from 'react';\nimport { alpha, Box, Theme, Toolbar } from '@mui/material';\nimport { MRT_SearchTextField } from '../inputs/MRT_SearchTextField';\nimport { MRT_ToolbarInternalButtons } from './MRT_ToolbarInternalButtons';\nimport { MRT_TablePagination } from './MRT_TablePagination';\nimport { MRT_ToolbarAlertBanner } from './MRT_ToolbarAlertBanner';\nimport { MRT_LinearProgressBar } from './MRT_LinearProgressBar';\nimport { MRT_TableInstance } from '..';\n\nexport const commonToolbarStyles = ({ theme }: { theme: Theme }) => ({\n backgroundColor: theme.palette.background.default,\n backgroundImage: `linear-gradient(${alpha(\n theme.palette.common.white,\n 0.05,\n )},${alpha(theme.palette.common.white, 0.05)})`,\n display: 'grid',\n p: '0 !important',\n width: '100%',\n zIndex: 1,\n});\n\ninterface Props {\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_ToolbarTop: FC<Props> = ({ tableInstance }) => {\n const {\n getState,\n options: {\n enableGlobalFilter,\n enablePagination,\n enableToolbarInternalActions,\n idPrefix,\n muiTableToolbarTopProps,\n positionPagination,\n positionToolbarActions,\n positionToolbarAlertBanner,\n renderToolbarCustomActions,\n },\n } = tableInstance;\n\n const { isFullScreen } = getState();\n\n const toolbarProps =\n muiTableToolbarTopProps instanceof Function\n ? muiTableToolbarTopProps({ tableInstance })\n : muiTableToolbarTopProps;\n\n return (\n <Toolbar\n id={`mrt-${idPrefix}-toolbar-top`}\n variant=\"dense\"\n {...toolbarProps}\n sx={(theme) =>\n ({\n position: isFullScreen ? 'sticky' : undefined,\n top: isFullScreen ? '0' : undefined,\n ...commonToolbarStyles({ theme }),\n ...toolbarProps?.sx,\n } as any)\n }\n >\n {positionToolbarAlertBanner === 'top' && (\n <MRT_ToolbarAlertBanner tableInstance={tableInstance} />\n )}\n <Box\n sx={{\n p: '0.5rem',\n display: 'flex',\n justifyContent: 'space-between',\n }}\n >\n {renderToolbarCustomActions?.({ tableInstance }) ?? <span />}\n <Box\n sx={{\n display: 'flex',\n gap: '0.5rem',\n position: 'relative',\n zIndex: 3,\n }}\n >\n {enableGlobalFilter && (\n <MRT_SearchTextField tableInstance={tableInstance} />\n )}\n {enableToolbarInternalActions && positionToolbarActions === 'top' && (\n <MRT_ToolbarInternalButtons tableInstance={tableInstance} />\n )}\n </Box>\n </Box>\n <div>\n {enablePagination &&\n ['top', 'both'].includes(positionPagination ?? '') && (\n <MRT_TablePagination tableInstance={tableInstance} />\n )}\n </div>\n <MRT_LinearProgressBar tableInstance={tableInstance} />\n </Toolbar>\n );\n};\n","import React, { FC } from 'react';\nimport { alpha, Box, Toolbar } from '@mui/material';\nimport { MRT_TablePagination } from './MRT_TablePagination';\nimport { MRT_ToolbarInternalButtons } from './MRT_ToolbarInternalButtons';\nimport { MRT_ToolbarAlertBanner } from './MRT_ToolbarAlertBanner';\nimport { MRT_LinearProgressBar } from './MRT_LinearProgressBar';\nimport { commonToolbarStyles } from './MRT_ToolbarTop';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_ToolbarBottom: FC<Props> = ({ tableInstance }) => {\n const {\n getState,\n options: {\n enableToolbarInternalActions,\n idPrefix,\n enablePagination,\n muiTableToolbarBottomProps,\n positionPagination,\n positionToolbarActions,\n positionToolbarAlertBanner,\n },\n } = tableInstance;\n\n const { isFullScreen } = getState();\n\n const toolbarProps =\n muiTableToolbarBottomProps instanceof Function\n ? muiTableToolbarBottomProps({ tableInstance })\n : muiTableToolbarBottomProps;\n\n return (\n <Toolbar\n id={`mrt-${idPrefix}-toolbar-bottom`}\n variant=\"dense\"\n {...toolbarProps}\n sx={(theme) =>\n ({\n ...commonToolbarStyles({ theme }),\n bottom: isFullScreen ? '0' : undefined,\n position: isFullScreen ? 'fixed' : undefined,\n boxShadow: `-3px 0 6px ${alpha(theme.palette.common.black, 0.1)}`,\n ...toolbarProps?.sx,\n } as any)\n }\n >\n <MRT_LinearProgressBar tableInstance={tableInstance} />\n <Box\n sx={{ display: 'flex', justifyContent: 'space-between', width: '100%' }}\n >\n {enableToolbarInternalActions && positionToolbarActions === 'bottom' ? (\n <MRT_ToolbarInternalButtons tableInstance={tableInstance} />\n ) : (\n <span />\n )}\n {positionToolbarAlertBanner === 'bottom' && (\n <MRT_ToolbarAlertBanner tableInstance={tableInstance} />\n )}\n {enablePagination &&\n ['bottom', 'both'].includes(positionPagination ?? '') && (\n <MRT_TablePagination tableInstance={tableInstance} />\n )}\n </Box>\n </Toolbar>\n );\n};\n","import React, {\n ChangeEvent,\n FC,\n MouseEvent,\n useCallback,\n useState,\n} from 'react';\nimport {\n Chip,\n debounce,\n IconButton,\n InputAdornment,\n MenuItem,\n TextField,\n TextFieldProps,\n Tooltip,\n} from '@mui/material';\nimport type { MRT_Header, MRT_TableInstance } from '..';\nimport { MRT_FilterOptionMenu } from '../menus/MRT_FilterOptionMenu';\nimport { MRT_FILTER_OPTION } from '../enums';\n\ninterface Props {\n header: MRT_Header;\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_FilterTextField: FC<Props> = ({ header, tableInstance }) => {\n const {\n getState,\n options: {\n icons: { FilterListIcon, CloseIcon },\n idPrefix,\n localization,\n muiTableHeadCellFilterTextFieldProps,\n },\n setCurrentFilterFns,\n } = tableInstance;\n\n const { column } = header;\n\n const { currentFilterFns } = getState();\n\n const [anchorEl, setAnchorEl] = useState<null | HTMLElement>(null);\n\n const mTableHeadCellFilterTextFieldProps =\n muiTableHeadCellFilterTextFieldProps instanceof Function\n ? muiTableHeadCellFilterTextFieldProps({ column, tableInstance })\n : muiTableHeadCellFilterTextFieldProps;\n\n const mcTableHeadCellFilterTextFieldProps =\n column.muiTableHeadCellFilterTextFieldProps instanceof Function\n ? column.muiTableHeadCellFilterTextFieldProps({ column, tableInstance })\n : column.muiTableHeadCellFilterTextFieldProps;\n\n const textFieldProps = {\n ...mTableHeadCellFilterTextFieldProps,\n ...mcTableHeadCellFilterTextFieldProps,\n } as TextFieldProps;\n\n const [filterValue, setFilterValue] = useState<string>(\n (column.getColumnFilterValue() ?? '') as string,\n );\n\n const handleChange = useCallback(\n debounce(\n (event: ChangeEvent<HTMLInputElement>) =>\n column.setColumnFilterValue(event.target.value ?? undefined),\n 150,\n ),\n [],\n );\n\n const handleFilterMenuOpen = (event: MouseEvent<HTMLElement>) => {\n setAnchorEl(event.currentTarget);\n };\n\n const handleClear = () => {\n setFilterValue('');\n column.setColumnFilterValue(undefined);\n };\n\n const handleClearFilterChip = () => {\n setFilterValue('');\n column.setColumnFilterValue(undefined);\n setCurrentFilterFns((prev) => ({\n ...prev,\n [header.id]: MRT_FILTER_OPTION.BEST_MATCH,\n }));\n };\n\n if (column.Filter) {\n return <>{column.Filter?.({ header, tableInstance })}</>;\n }\n\n const filterId = `mrt-${idPrefix}-${header.id}-filter-text-field`;\n const filterFn = currentFilterFns?.[header.id];\n const isSelectFilter = !!column.filterSelectOptions;\n const filterChipLabel =\n !(filterFn instanceof Function) &&\n [MRT_FILTER_OPTION.EMPTY, MRT_FILTER_OPTION.NOT_EMPTY].includes(\n filterFn as MRT_FILTER_OPTION,\n )\n ? //@ts-ignore\n localization[\n `filter${filterFn.charAt(0).toUpperCase() + filterFn.slice(1)}`\n ]\n : '';\n const filterPlaceholder = localization.filterByColumn?.replace(\n '{column}',\n String(column.header),\n );\n\n return (\n <>\n <TextField\n fullWidth\n id={filterId}\n inputProps={{\n disabled: !!filterChipLabel,\n sx: {\n textOverflow: 'ellipsis',\n width: filterChipLabel ? 0 : undefined,\n },\n title: filterPlaceholder,\n }}\n helperText={\n <label htmlFor={filterId}>\n {filterFn instanceof Function\n ? localization.filterMode.replace(\n '{filterType}',\n // @ts-ignore\n localization[\n `filter${\n filterFn.name.charAt(0).toUpperCase() +\n filterFn.name.slice(1)\n }`\n ] ?? '',\n ) ?? ''\n : localization.filterMode.replace(\n '{filterType}',\n // @ts-ignore\n localization[\n `filter${\n filterFn.charAt(0).toUpperCase() + filterFn.slice(1)\n }`\n ],\n )}\n </label>\n }\n FormHelperTextProps={{\n sx: { fontSize: '0.6rem', lineHeight: '0.8rem' },\n }}\n label={isSelectFilter && !filterValue ? filterPlaceholder : undefined}\n margin=\"none\"\n placeholder={\n filterPlaceholder\n // filterChipLabel || isSelectFilter ? undefined : filterPlaceholder\n }\n onChange={(event: ChangeEvent<HTMLInputElement>) => {\n setFilterValue(event.target.value);\n handleChange(event);\n }}\n onClick={(e: MouseEvent<HTMLInputElement>) => e.stopPropagation()}\n select={isSelectFilter}\n value={filterValue ?? ''}\n variant=\"standard\"\n InputProps={{\n startAdornment: !isSelectFilter && (\n <InputAdornment position=\"start\">\n <Tooltip arrow title={localization.changeFilterMode}>\n <span>\n <IconButton\n aria-label={localization.changeFilterMode}\n onClick={handleFilterMenuOpen}\n size=\"small\"\n sx={{ height: '1.75rem', width: '1.75rem' }}\n >\n <FilterListIcon />\n </IconButton>\n </span>\n </Tooltip>\n {filterChipLabel && (\n <Chip\n onDelete={handleClearFilterChip}\n label={filterChipLabel}\n />\n )}\n </InputAdornment>\n ),\n endAdornment: !filterChipLabel && (\n <InputAdornment position=\"end\">\n <Tooltip\n arrow\n disableHoverListener={isSelectFilter}\n placement=\"right\"\n title={localization.clearFilter ?? ''}\n >\n <span>\n <IconButton\n aria-label={localization.clearFilter}\n disabled={!filterValue?.length}\n onClick={handleClear}\n size=\"small\"\n sx={{\n height: '1.75rem',\n width: '1.75rem',\n }}\n >\n <CloseIcon />\n </IconButton>\n </span>\n </Tooltip>\n </InputAdornment>\n ),\n }}\n {...textFieldProps}\n sx={{\n m: '-0.25rem',\n p: 0,\n minWidth: !filterChipLabel ? '5rem' : 'auto',\n width: 'calc(100% + 0.5rem)',\n mt: isSelectFilter && !filterValue ? '-1rem' : undefined,\n '&\t.MuiSelect-icon': {\n mr: '1.5rem',\n },\n ...textFieldProps?.sx,\n }}\n >\n {isSelectFilter && (\n <MenuItem divider disabled={!filterValue} value=\"\">\n {localization.clearFilter}\n </MenuItem>\n )}\n {column?.filterSelectOptions?.map((option) => {\n let value;\n let text;\n if (typeof option === 'string') {\n value = option;\n text = option;\n } else if (typeof option === 'object') {\n value = option.value;\n text = option.text;\n }\n return (\n <MenuItem key={value} value={value}>\n {text}\n </MenuItem>\n );\n })}\n </TextField>\n <MRT_FilterOptionMenu\n anchorEl={anchorEl}\n header={header}\n setAnchorEl={setAnchorEl}\n tableInstance={tableInstance}\n />\n </>\n );\n};\n","import React, { FC, MouseEvent, useState } from 'react';\nimport { IconButton, Tooltip } from '@mui/material';\nimport { MRT_ColumnActionMenu } from '../menus/MRT_ColumnActionMenu';\nimport type { MRT_Header, MRT_TableInstance } from '..';\n\ninterface Props {\n header: MRT_Header;\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_ToggleColumnActionMenuButton: FC<Props> = ({\n header,\n tableInstance,\n}) => {\n const {\n options: {\n icons: { MoreVertIcon },\n localization,\n muiTableHeadCellColumnActionsButtonProps,\n },\n } = tableInstance;\n\n const { column } = header;\n\n const [anchorEl, setAnchorEl] = useState<null | HTMLElement>(null);\n\n const handleClick = (event: MouseEvent<HTMLElement>) => {\n event.stopPropagation();\n event.preventDefault();\n setAnchorEl(event.currentTarget);\n };\n\n const mTableHeadCellColumnActionsButtonProps =\n muiTableHeadCellColumnActionsButtonProps instanceof Function\n ? muiTableHeadCellColumnActionsButtonProps({ column, tableInstance })\n : muiTableHeadCellColumnActionsButtonProps;\n\n const mcTableHeadCellColumnActionsButtonProps =\n column.muiTableHeadCellColumnActionsButtonProps instanceof Function\n ? column.muiTableHeadCellColumnActionsButtonProps({\n column,\n tableInstance,\n })\n : column.muiTableHeadCellColumnActionsButtonProps;\n\n const iconButtonProps = {\n ...mTableHeadCellColumnActionsButtonProps,\n ...mcTableHeadCellColumnActionsButtonProps,\n };\n\n return (\n <>\n <Tooltip\n arrow\n enterDelay={1000}\n enterNextDelay={1000}\n placement=\"top\"\n title={localization.columnActions}\n >\n <IconButton\n aria-label={localization.columnActions}\n onClick={handleClick}\n size=\"small\"\n {...iconButtonProps}\n sx={{\n height: '2rem',\n mr: '2px',\n mt: '-0.2rem',\n opacity: 0.5,\n transition: 'opacity 0.2s',\n width: '2rem',\n '&:hover': {\n opacity: 1,\n },\n ...iconButtonProps.sx,\n }}\n >\n <MoreVertIcon />\n </IconButton>\n </Tooltip>\n <MRT_ColumnActionMenu\n anchorEl={anchorEl}\n header={header}\n setAnchorEl={setAnchorEl}\n tableInstance={tableInstance}\n />\n </>\n );\n};\n","import React, { FC, MouseEvent } from 'react';\nimport {\n TableCell,\n TableSortLabel,\n Divider,\n Collapse,\n Tooltip,\n Box,\n IconButton,\n alpha,\n Theme,\n} from '@mui/material';\nimport { MRT_FilterTextField } from '../inputs/MRT_FilterTextField';\nimport { MRT_ToggleColumnActionMenuButton } from '../buttons/MRT_ToggleColumnActionMenuButton';\nimport type { MRT_Header, MRT_TableInstance } from '..';\nimport { ColumnResizerProps } from '@tanstack/react-table';\n\ninterface Props {\n header: MRT_Header;\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_TableHeadCell: FC<Props> = ({ header, tableInstance }) => {\n const {\n getState,\n options: {\n enableColumnActions,\n enableColumnFilters,\n enableColumnResizing,\n icons: { FilterAltIcon, FilterAltOff },\n localization,\n muiTableHeadCellProps,\n },\n setShowFilters,\n } = tableInstance;\n\n const { isDensePadding, showFilters } = getState();\n\n const { column } = header;\n\n const mTableHeadCellProps =\n muiTableHeadCellProps instanceof Function\n ? muiTableHeadCellProps({ column, tableInstance })\n : muiTableHeadCellProps;\n\n const mcTableHeadCellProps =\n column.muiTableHeadCellProps instanceof Function\n ? column.muiTableHeadCellProps({ column, tableInstance })\n : column.muiTableHeadCellProps;\n\n const tableCellProps = {\n ...header.getHeaderProps(),\n ...mTableHeadCellProps,\n ...mcTableHeadCellProps,\n };\n\n const sortTooltip = !!column.getIsSorted()\n ? column.getIsSorted() === 'desc'\n ? localization.sortedByColumnDesc.replace('{column}', column.header)\n : localization.sortedByColumnAsc.replace('{column}', column.header)\n : localization.unsorted;\n\n const filterFn = getState()?.currentFilterFns?.[header.id];\n\n const filterTooltip = !!column.getColumnFilterValue()\n ? localization.filteringByColumn\n .replace('{column}', String(column.header))\n .replace(\n '{filterType}',\n filterFn instanceof Function\n ? ''\n : // @ts-ignore\n localization[\n `filter${filterFn.charAt(0).toUpperCase() + filterFn.slice(1)}`\n ],\n )\n .replace('{filterValue}', column.getColumnFilterValue() as string)\n .replace('\" \"', '')\n : localization.showHideFilters;\n\n const headerElement =\n column?.Header?.({\n header,\n tableInstance,\n }) ?? column.header;\n\n return (\n <TableCell\n align={column.columnDefType === 'group' ? 'center' : 'left'}\n {...tableCellProps}\n //@ts-ignore\n sx={(theme: Theme) => ({\n backgroundColor: theme.palette.background.default,\n backgroundImage: `linear-gradient(${alpha(\n theme.palette.common.white,\n 0.05,\n )},${alpha(theme.palette.common.white, 0.05)})`,\n fontWeight: 'bold',\n height: '100%',\n maxWidth: `min(${column.getWidth()}px, ${column.maxWidth}px)`,\n minWidth: `max(${column.getWidth()}px, ${column.minWidth}px)`,\n p: isDensePadding\n ? column.columnDefType === 'display'\n ? '0 0.5rem'\n : '0.5rem'\n : column.columnDefType === 'display'\n ? '0.5rem 0.75rem'\n : '1rem',\n pt:\n column.columnDefType === 'display'\n ? 0\n : isDensePadding\n ? '0.75rem'\n : '1.25rem',\n pb: column.columnDefType === 'display' ? 0 : undefined,\n overflow: 'visible',\n transition: `all ${enableColumnResizing ? 0 : '0.2s'} ease-in-out`,\n verticalAlign: 'text-top',\n width: header.getWidth(),\n zIndex: column.getIsResizing() ? 2 : 1,\n //@ts-ignore\n ...tableCellProps?.sx,\n })}\n >\n {header.isPlaceholder ? null : column.columnDefType === 'display' ? (\n headerElement\n ) : (\n <Box\n sx={{\n alignItems: 'flex-start',\n display: 'flex',\n justifyContent:\n column.columnDefType === 'group' ? 'center' : 'space-between',\n width: '100%',\n }}\n >\n <Box\n onClick={() => column.toggleSorting()}\n sx={{\n alignItems: 'center',\n cursor:\n column.getCanSort() && column.columnDefType !== 'group'\n ? 'pointer'\n : undefined,\n display: 'flex',\n flexWrap: 'nowrap',\n whiteSpace: column.header.length < 24 ? 'nowrap' : 'normal',\n }}\n >\n {headerElement}\n {column.columnDefType === 'data' && column.getCanSort() && (\n <Tooltip arrow placement=\"top\" title={sortTooltip}>\n <TableSortLabel\n aria-label={sortTooltip}\n active={!!column.getIsSorted()}\n direction={\n column.getIsSorted()\n ? (column.getIsSorted() as 'asc' | 'desc')\n : undefined\n }\n />\n </Tooltip>\n )}\n {column.columnDefType === 'data' &&\n enableColumnFilters &&\n !!column.getCanColumnFilter() && (\n <Tooltip arrow placement=\"top\" title={filterTooltip}>\n <IconButton\n disableRipple\n onClick={(event: MouseEvent<HTMLButtonElement>) => {\n event.stopPropagation();\n setShowFilters(!showFilters);\n }}\n size=\"small\"\n sx={{\n m: 0,\n opacity: !!column.getColumnFilterValue() ? 0.8 : 0,\n p: '2px',\n transition: 'all 0.2s ease-in-out',\n '&:hover': {\n backgroundColor: 'transparent',\n opacity: 0.8,\n },\n }}\n >\n {showFilters && !column.getColumnFilterValue() ? (\n <FilterAltOff />\n ) : (\n <FilterAltIcon />\n )}\n </IconButton>\n </Tooltip>\n )}\n </Box>\n {(enableColumnActions || column.enableColumnActions) &&\n column.enableColumnActions !== false &&\n column.columnDefType !== 'group' && (\n <MRT_ToggleColumnActionMenuButton\n header={header}\n tableInstance={tableInstance}\n />\n )}\n {column.getCanResize() && (\n <Divider\n flexItem\n orientation=\"vertical\"\n onDoubleClick={() => header.resetSize()}\n sx={(theme: Theme) => ({\n borderRadius: '2px',\n borderRightWidth: '2px',\n cursor: 'col-resize',\n height:\n showFilters && column.columnDefType === 'data'\n ? '4rem'\n : '2rem',\n opacity: 0.8,\n position: 'absolute',\n right: '1px',\n touchAction: 'none',\n transition: 'all 0.2s ease-in-out',\n userSelect: 'none',\n zIndex: 2000,\n '&:active': {\n backgroundColor: theme.palette.info.main,\n opacity: 1,\n },\n })}\n {...(header.getResizerProps((props: ColumnResizerProps) => ({\n ...props,\n style: {\n transform: column.getIsResizing()\n ? `translateX(${getState().columnSizingInfo.deltaOffset}px)`\n : '',\n },\n })) as any)}\n />\n )}\n </Box>\n )}\n {column.columnDefType === 'data' && column.getCanColumnFilter() && (\n <Collapse in={showFilters}>\n <MRT_FilterTextField header={header} tableInstance={tableInstance} />\n </Collapse>\n )}\n </TableCell>\n );\n};\n","import React, { CSSProperties, FC } from 'react';\nimport { alpha, TableRow } from '@mui/material';\nimport { MRT_TableHeadCell } from './MRT_TableHeadCell';\nimport type { MRT_Header, MRT_HeaderGroup, MRT_TableInstance } from '..';\n\ninterface Props {\n headerGroup: MRT_HeaderGroup;\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_TableHeadRow: FC<Props> = ({ headerGroup, tableInstance }) => {\n const {\n options: { muiTableHeadRowProps },\n } = tableInstance;\n\n const mTableHeadRowProps =\n muiTableHeadRowProps instanceof Function\n ? muiTableHeadRowProps({ headerGroup, tableInstance })\n : muiTableHeadRowProps;\n\n const tableRowProps = {\n ...headerGroup?.getHeaderGroupProps(),\n ...mTableHeadRowProps,\n };\n\n return (\n <TableRow\n {...tableRowProps}\n sx={(theme) =>\n ({\n boxShadow: `4px 0 8px ${alpha(theme.palette.common.black, 0.1)}`,\n //@ts-ignore\n ...tableRowProps?.sx,\n } as CSSProperties)\n }\n >\n {headerGroup.headers.map((header: MRT_Header, index) => (\n <MRT_TableHeadCell\n header={header}\n key={header.id || index}\n tableInstance={tableInstance}\n />\n ))}\n </TableRow>\n );\n};\n","import React, { FC } from 'react';\nimport { TableHead } from '@mui/material';\nimport { MRT_TableHeadRow } from './MRT_TableHeadRow';\nimport type { MRT_HeaderGroup, MRT_TableInstance } from '..';\n\ninterface Props {\n pinned: 'left' | 'center' | 'right' | 'none';\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_TableHead: FC<Props> = ({ pinned, tableInstance }) => {\n const {\n getCenterHeaderGroups,\n getHeaderGroups,\n getLeftHeaderGroups,\n getRightHeaderGroups,\n options: { muiTableHeadProps },\n } = tableInstance;\n\n const tableHeadProps =\n muiTableHeadProps instanceof Function\n ? muiTableHeadProps({ tableInstance })\n : muiTableHeadProps;\n\n const getHeaderGroupsMap = {\n center: getCenterHeaderGroups,\n left: getLeftHeaderGroups,\n none: getHeaderGroups,\n right: getRightHeaderGroups,\n };\n\n return (\n <TableHead {...tableHeadProps}>\n {getHeaderGroupsMap[pinned]().map((headerGroup) => (\n <MRT_TableHeadRow\n headerGroup={headerGroup as MRT_HeaderGroup}\n key={headerGroup.getHeaderGroupProps().key}\n tableInstance={tableInstance}\n />\n ))}\n </TableHead>\n );\n};\n","import React, {\n ChangeEvent,\n FC,\n FocusEvent,\n MouseEvent,\n useState,\n} from 'react';\nimport { TextField } from '@mui/material';\nimport type { MRT_Cell, MRT_Row, MRT_TableInstance } from '..';\n\ninterface Props {\n cell: MRT_Cell;\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_EditCellTextField: FC<Props> = ({ cell, tableInstance }) => {\n const {\n getState,\n options: {\n idPrefix,\n enableEditing,\n muiTableBodyCellEditTextFieldProps,\n onCellEditBlur,\n onCellEditChange,\n },\n setCurrentEditingCell,\n setCurrentEditingRow,\n } = tableInstance;\n\n const [value, setValue] = useState(cell.value);\n\n const { column, row } = cell;\n\n const handleChange = (event: ChangeEvent<HTMLInputElement>) => {\n setValue(event.target.value);\n column.onCellEditChange?.({ event, cell, tableInstance });\n onCellEditChange?.({ event, cell, tableInstance });\n };\n\n const handleBlur = (event: FocusEvent<HTMLInputElement>) => {\n if (getState().currentEditingRow) {\n row.values[column.id] = value;\n setCurrentEditingRow({ ...getState().currentEditingRow } as MRT_Row);\n }\n setCurrentEditingCell(null);\n column.onCellEditBlur?.({ event, cell, tableInstance });\n onCellEditBlur?.({ event, cell, tableInstance });\n };\n\n const mTableBodyCellEditTextFieldProps =\n muiTableBodyCellEditTextFieldProps instanceof Function\n ? muiTableBodyCellEditTextFieldProps({ cell, tableInstance })\n : muiTableBodyCellEditTextFieldProps;\n\n const mcTableBodyCellEditTextFieldProps =\n column.muiTableBodyCellEditTextFieldProps instanceof Function\n ? column.muiTableBodyCellEditTextFieldProps({ cell, tableInstance })\n : column.muiTableBodyCellEditTextFieldProps;\n\n const textFieldProps = {\n ...mTableBodyCellEditTextFieldProps,\n ...mcTableBodyCellEditTextFieldProps,\n };\n\n if (enableEditing && column.enableEditing !== false && column.Edit) {\n return <>{column.Edit?.({ cell, tableInstance })}</>;\n }\n\n return (\n <TextField\n id={`mrt-${idPrefix}-edit-cell-text-field-${cell.id}`}\n margin=\"dense\"\n onBlur={handleBlur}\n onChange={handleChange}\n onClick={(e: MouseEvent<HTMLInputElement>) => e.stopPropagation()}\n placeholder={column.header}\n value={value}\n variant=\"standard\"\n {...textFieldProps}\n />\n );\n};\n","import React, { FC, useState } from 'react';\nimport { Button, Tooltip } from '@mui/material';\nimport { MRT_Cell, MRT_TableInstance } from '..';\n\ninterface Props {\n cell: MRT_Cell;\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_CopyButton: FC<Props> = ({\n cell,\n children,\n tableInstance,\n}) => {\n const {\n options: { localization, muiTableBodyCellCopyButtonProps },\n } = tableInstance;\n\n const [copied, setCopied] = useState(false);\n\n const handleCopy = (text: unknown) => {\n navigator.clipboard.writeText(text as string);\n setCopied(true);\n setTimeout(() => setCopied(false), 4000);\n };\n\n const mTableBodyCellCopyButtonProps =\n muiTableBodyCellCopyButtonProps instanceof Function\n ? muiTableBodyCellCopyButtonProps({ cell, tableInstance })\n : muiTableBodyCellCopyButtonProps;\n\n const mcTableBodyCellCopyButtonProps =\n cell.column.muiTableBodyCellCopyButtonProps instanceof Function\n ? cell.column.muiTableBodyCellCopyButtonProps({ cell, tableInstance })\n : cell.column.muiTableBodyCellCopyButtonProps;\n\n const buttonProps = {\n ...mTableBodyCellCopyButtonProps,\n ...mcTableBodyCellCopyButtonProps,\n };\n\n return (\n <Tooltip\n arrow\n enterDelay={1000}\n enterNextDelay={1000}\n placement=\"top\"\n title={copied ? localization.copiedToClipboard : localization.clickToCopy}\n >\n <Button\n aria-label={localization.clickToCopy}\n onClick={() => handleCopy(cell.value)}\n size=\"small\"\n {...buttonProps}\n sx={{\n backgroundColor: 'transparent',\n border: 'none',\n color: 'inherit',\n cursor: 'copy',\n fontFamily: 'inherit',\n fontSize: 'inherit',\n letterSpacing: 'inherit',\n m: '-0.25rem',\n minWidth: 'unset',\n textAlign: 'inherit',\n textTransform: 'inherit',\n ...buttonProps?.sx,\n }}\n variant=\"text\"\n >\n {children}\n </Button>\n </Tooltip>\n );\n};\n","import React, { FC, MouseEvent, useMemo } from 'react';\nimport { Skeleton, TableCell } from '@mui/material';\nimport { MRT_EditCellTextField } from '../inputs/MRT_EditCellTextField';\nimport type { MRT_Cell, MRT_TableInstance } from '..';\nimport { MRT_CopyButton } from '../buttons/MRT_CopyButton';\n\ninterface Props {\n cell: MRT_Cell;\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_TableBodyCell: FC<Props> = ({ cell, tableInstance }) => {\n const {\n getIsSomeColumnsPinned,\n getState,\n options: {\n editingMode,\n enableClickToCopy,\n enableEditing,\n enablePinning,\n idPrefix,\n isLoading,\n muiTableBodyCellProps,\n muiTableBodyCellSkeletonProps,\n onCellClick,\n },\n setCurrentEditingCell,\n } = tableInstance;\n\n const { currentEditingCell, currentEditingRow, isDensePadding } = getState();\n\n const { column, row } = cell;\n\n const mTableCellBodyProps =\n muiTableBodyCellProps instanceof Function\n ? muiTableBodyCellProps({ cell, tableInstance })\n : muiTableBodyCellProps;\n\n const mcTableCellBodyProps =\n column.muiTableBodyCellProps instanceof Function\n ? column.muiTableBodyCellProps({ cell, tableInstance })\n : column.muiTableBodyCellProps;\n\n const tableCellProps = {\n ...cell.getCellProps(),\n ...mTableCellBodyProps,\n ...mcTableCellBodyProps,\n };\n\n const skeletonWidth = useMemo(\n () =>\n column.columnDefType === 'display'\n ? column.getWidth() / 2\n : Math.random() * (column.getWidth() - column.getWidth() / 3) +\n column.getWidth() / 3,\n [column.columnDefType, column.getWidth()],\n );\n\n const isEditable =\n (enableEditing || column.enableEditing) && column.enableEditing !== false;\n\n const isEditing =\n isEditable &&\n (editingMode === 'table' ||\n currentEditingRow?.id === row.id ||\n currentEditingCell?.id === cell.id);\n\n const handleDoubleClick = (_event: MouseEvent<HTMLTableCellElement>) => {\n if (\n (enableEditing || column.enableEditing) &&\n column.enableEditing !== false &&\n editingMode === 'cell'\n ) {\n setCurrentEditingCell(cell);\n setTimeout(() => {\n const textField = document.getElementById(\n `mrt-${idPrefix}-edit-cell-text-field-${cell.id}`,\n ) as HTMLInputElement;\n if (textField) {\n textField.focus();\n textField.select();\n }\n }, 200);\n }\n };\n\n return (\n <TableCell\n onClick={(event: MouseEvent<HTMLTableCellElement>) =>\n onCellClick?.({ event, cell, tableInstance })\n }\n onDoubleClick={handleDoubleClick}\n {...tableCellProps}\n sx={{\n cursor: isEditable && editingMode === 'cell' ? 'pointer' : 'text',\n maxWidth: `min(${column.getWidth()}px, fit-content)`,\n minWidth: `max(${column.getWidth()}px, ${column.minWidth}px)`,\n p: isDensePadding\n ? column.columnDefType === 'display'\n ? '0 0.5rem'\n : '0.5rem'\n : column.columnDefType === 'display'\n ? '0.5rem 0.75rem'\n : '1rem',\n pl:\n column.id === 'mrt-expand'\n ? `${row.depth + (isDensePadding ? 0.5 : 0.75)}rem`\n : undefined,\n transition: 'all 0.2s ease-in-out',\n whiteSpace:\n isDensePadding || (enablePinning && getIsSomeColumnsPinned())\n ? 'nowrap'\n : 'normal',\n width: column.getWidth(),\n //@ts-ignore\n ...tableCellProps?.sx,\n }}\n >\n {isLoading ? (\n <Skeleton\n animation=\"wave\"\n height={20}\n width={skeletonWidth}\n {...muiTableBodyCellSkeletonProps}\n />\n ) : column.columnDefType === 'display' ? (\n column.Cell?.({ cell, tableInstance })\n ) : cell.getIsPlaceholder() ||\n (row.getIsGrouped() &&\n column.id !==\n row.groupingColumnId) ? null : cell.getIsAggregated() ? (\n cell.renderAggregatedCell()\n ) : isEditing ? (\n <MRT_EditCellTextField cell={cell} tableInstance={tableInstance} />\n ) : (enableClickToCopy || column.enableClickToCopy) &&\n column.enableClickToCopy !== false ? (\n <>\n <MRT_CopyButton cell={cell} tableInstance={tableInstance}>\n {cell.column?.Cell?.({ cell, tableInstance }) ?? cell.renderCell()}\n </MRT_CopyButton>\n {row.getIsGrouped() && <> ({row.subRows?.length})</>}\n </>\n ) : (\n <>\n {cell.column?.Cell?.({ cell, tableInstance }) ?? cell.renderCell()}\n {row.getIsGrouped() && <> ({row.subRows?.length})</>}\n </>\n )}\n </TableCell>\n );\n};\n","import React, { FC, MouseEvent } from 'react';\nimport { Collapse, TableCell, TableRow } from '@mui/material';\nimport type { MRT_Row, MRT_TableInstance } from '..';\n\ninterface Props {\n row: MRT_Row;\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_TableDetailPanel: FC<Props> = ({ row, tableInstance }) => {\n const {\n getVisibleFlatColumns,\n options: {\n muiTableBodyRowProps,\n muiTableDetailPanelProps,\n onDetailPanelClick,\n renderDetailPanel,\n },\n } = tableInstance;\n\n const tableRowProps =\n muiTableBodyRowProps instanceof Function\n ? muiTableBodyRowProps({ row, tableInstance })\n : muiTableBodyRowProps;\n\n const tableCellProps =\n muiTableDetailPanelProps instanceof Function\n ? muiTableDetailPanelProps({ row, tableInstance })\n : muiTableDetailPanelProps;\n\n return (\n <TableRow {...tableRowProps}>\n <TableCell\n colSpan={getVisibleFlatColumns().length + 10}\n onClick={(event: MouseEvent<HTMLTableCellElement>) =>\n onDetailPanelClick?.({ event, row, tableInstance })\n }\n {...tableCellProps}\n sx={{\n borderBottom: !row.getIsExpanded() ? 'none' : undefined,\n pb: row.getIsExpanded() ? '1rem' : 0,\n pt: row.getIsExpanded() ? '1rem' : 0,\n transition: 'all 0.2s ease-in-out',\n ...tableCellProps?.sx,\n }}\n >\n <Collapse in={row.getIsExpanded()}>\n {renderDetailPanel?.({ row, tableInstance })}\n </Collapse>\n </TableCell>\n </TableRow>\n );\n};\n","import React, { FC, MouseEvent } from 'react';\nimport { TableRow } from '@mui/material';\nimport { MRT_TableBodyCell } from './MRT_TableBodyCell';\nimport { MRT_TableDetailPanel } from './MRT_TableDetailPanel';\nimport type { MRT_Row, MRT_TableInstance } from '..';\n\ninterface Props {\n pinned: 'left' | 'center' | 'right' | 'none';\n row: MRT_Row;\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_TableBodyRow: FC<Props> = ({ pinned, row, tableInstance }) => {\n const {\n options: { muiTableBodyRowProps, onRowClick, renderDetailPanel },\n } = tableInstance;\n\n const {\n getCenterVisibleCells,\n getIsGrouped,\n getIsSelected,\n getLeftVisibleCells,\n getRightVisibleCells,\n getRowProps,\n getVisibleCells,\n } = row;\n\n const mTableBodyRowProps =\n muiTableBodyRowProps instanceof Function\n ? muiTableBodyRowProps({ row, tableInstance })\n : muiTableBodyRowProps;\n\n const tableRowProps = {\n ...getRowProps(),\n ...mTableBodyRowProps,\n };\n\n const getVisibleCellsMap = {\n center: getCenterVisibleCells,\n left: getLeftVisibleCells,\n none: getVisibleCells,\n right: getRightVisibleCells,\n };\n\n return (\n <>\n <TableRow\n hover\n onClick={(event: MouseEvent<HTMLTableRowElement>) =>\n onRowClick?.({ event, row, tableInstance })\n }\n selected={getIsSelected()}\n {...tableRowProps}\n >\n {getVisibleCellsMap[pinned]().map((cell) => (\n <MRT_TableBodyCell\n cell={cell}\n key={cell.getCellProps().key}\n tableInstance={tableInstance}\n />\n ))}\n </TableRow>\n {renderDetailPanel && !getIsGrouped() && (\n <MRT_TableDetailPanel row={row} tableInstance={tableInstance} />\n )}\n </>\n );\n};\n","import React, { FC } from 'react';\nimport { TableBody } from '@mui/material';\nimport { MRT_TableBodyRow } from './MRT_TableBodyRow';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n pinned: 'left' | 'center' | 'right' | 'none';\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_TableBody: FC<Props> = ({ pinned, tableInstance }) => {\n const {\n getPaginationRowModel,\n getPrePaginationRowModel,\n getTableBodyProps,\n options: { enablePagination, muiTableBodyProps },\n } = tableInstance;\n\n const rows = enablePagination\n ? getPaginationRowModel().rows\n : getPrePaginationRowModel().rows;\n\n const mTableBodyProps =\n muiTableBodyProps instanceof Function\n ? muiTableBodyProps({ tableInstance })\n : muiTableBodyProps;\n\n const tableBodyProps = {\n ...getTableBodyProps(),\n ...mTableBodyProps,\n };\n\n return (\n <TableBody {...tableBodyProps}>\n {rows.map((row) => (\n <MRT_TableBodyRow\n key={row.getRowProps().key}\n pinned={pinned}\n row={row}\n tableInstance={tableInstance}\n />\n ))}\n </TableBody>\n );\n};\n","import React, { FC } from 'react';\nimport { alpha, TableCell } from '@mui/material';\nimport type { MRT_Header, MRT_TableInstance } from '..';\n\ninterface Props {\n footer: MRT_Header;\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_TableFooterCell: FC<Props> = ({ footer, tableInstance }) => {\n const {\n getState,\n options: { muiTableFooterCellProps, enableColumnResizing },\n } = tableInstance;\n\n const { isDensePadding } = getState();\n\n const { column } = footer;\n\n const mTableFooterCellProps =\n muiTableFooterCellProps instanceof Function\n ? muiTableFooterCellProps({ column, tableInstance })\n : muiTableFooterCellProps;\n\n const mcTableFooterCellProps =\n column.muiTableFooterCellProps instanceof Function\n ? column.muiTableFooterCellProps({ column, tableInstance })\n : column.muiTableFooterCellProps;\n\n const tableCellProps = {\n ...footer.getFooterProps(),\n ...mTableFooterCellProps,\n ...mcTableFooterCellProps,\n };\n\n return (\n <TableCell\n align={column.columnDefType === 'group' ? 'center' : 'left'}\n variant=\"head\"\n {...tableCellProps}\n //@ts-ignore\n sx={(theme) => ({\n backgroundColor: theme.palette.background.default,\n backgroundImage: `linear-gradient(${alpha(\n theme.palette.common.white,\n 0.05,\n )},${alpha(theme.palette.common.white, 0.05)})`,\n fontWeight: 'bold',\n maxWidth: `min(${column.getWidth()}px, ${column.maxWidth}px)`,\n minWidth: `max(${column.getWidth()}px, ${column.minWidth}px)`,\n p: isDensePadding ? '0.5rem' : '1rem',\n transition: `all ${enableColumnResizing ? '10ms' : '0.2s'} ease-in-out`,\n width: column.getWidth(),\n verticalAlign: 'text-top',\n //@ts-ignore\n ...tableCellProps?.sx,\n })}\n >\n {footer.isPlaceholder\n ? null\n : column.Footer?.({\n footer,\n tableInstance,\n }) ??\n column.footer ??\n null}\n </TableCell>\n );\n};\n","import React, { FC } from 'react';\nimport { TableRow } from '@mui/material';\nimport { MRT_TableFooterCell } from './MRT_TableFooterCell';\nimport type { MRT_Header, MRT_HeaderGroup, MRT_TableInstance } from '..';\n\ninterface Props {\n footerGroup: MRT_HeaderGroup;\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_TableFooterRow: FC<Props> = ({\n footerGroup,\n tableInstance,\n}) => {\n const {\n options: { muiTableFooterRowProps },\n } = tableInstance;\n\n // if no content in row, skip row\n if (\n !footerGroup.headers?.some(\n (h) => h.column.columnDef.footer || h.column.Footer,\n )\n )\n return null;\n\n const mTableFooterRowProps =\n muiTableFooterRowProps instanceof Function\n ? muiTableFooterRowProps({ footerGroup, tableInstance })\n : muiTableFooterRowProps;\n\n const tableRowProps = {\n ...footerGroup.getFooterGroupProps(),\n ...mTableFooterRowProps,\n };\n\n return (\n <TableRow {...tableRowProps}>\n {footerGroup.headers.map((footer: MRT_Header) => (\n <MRT_TableFooterCell\n footer={footer}\n key={footer.getFooterProps().key}\n tableInstance={tableInstance}\n />\n ))}\n </TableRow>\n );\n};\n","import React, { FC } from 'react';\nimport { TableFooter } from '@mui/material';\nimport { MRT_TableFooterRow } from './MRT_TableFooterRow';\nimport type { MRT_HeaderGroup, MRT_TableInstance } from '..';\n\ninterface Props {\n pinned: 'left' | 'center' | 'right' | 'none';\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_TableFooter: FC<Props> = ({ pinned, tableInstance }) => {\n const {\n getCenterFooterGroups,\n getFooterGroups,\n getLeftFooterGroups,\n getRightFooterGroups,\n options: { muiTableFooterProps },\n } = tableInstance;\n\n const tableFooterProps =\n muiTableFooterProps instanceof Function\n ? muiTableFooterProps({ tableInstance })\n : muiTableFooterProps;\n\n const getFooterGroupsMap = {\n center: getCenterFooterGroups,\n left: getLeftFooterGroups,\n none: getFooterGroups,\n right: getRightFooterGroups,\n };\n\n return (\n <TableFooter {...tableFooterProps}>\n {getFooterGroupsMap[pinned]().map((footerGroup) => (\n <MRT_TableFooterRow\n footerGroup={footerGroup as MRT_HeaderGroup}\n key={footerGroup.getFooterGroupProps().key}\n tableInstance={tableInstance}\n />\n ))}\n </TableFooter>\n );\n};\n","import React, { FC } from 'react';\nimport { Table } from '@mui/material';\nimport { MRT_TableHead } from '../head/MRT_TableHead';\nimport { MRT_TableBody } from '../body/MRT_TableBody';\nimport { MRT_TableFooter } from '../footer/MRT_TableFooter';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n pinned: 'left' | 'center' | 'right' | 'none';\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_Table: FC<Props> = ({ pinned, tableInstance }) => {\n const {\n getTableProps,\n options: {\n enableStickyHeader,\n enableTableFooter,\n enableTableHead,\n muiTableProps,\n },\n } = tableInstance;\n\n const mTableProps =\n muiTableProps instanceof Function\n ? muiTableProps({ tableInstance })\n : muiTableProps;\n\n const tableProps = {\n ...getTableProps(),\n ...mTableProps,\n };\n\n return (\n <Table stickyHeader={enableStickyHeader} {...tableProps}>\n {enableTableHead && (\n <MRT_TableHead pinned={pinned} tableInstance={tableInstance} />\n )}\n <MRT_TableBody pinned={pinned} tableInstance={tableInstance} />\n {enableTableFooter && (\n <MRT_TableFooter pinned={pinned} tableInstance={tableInstance} />\n )}\n </Table>\n );\n};\n","import React, { CSSProperties, FC, useEffect, useState } from 'react';\nimport { alpha, Box, TableContainer, Theme } from '@mui/material';\nimport { MRT_TableInstance } from '..';\nimport { MRT_Table } from './MRT_Table';\n\nconst commonBoxStyles = ({\n pinned,\n theme,\n visible,\n}: {\n pinned?: 'left' | 'right';\n theme: Theme;\n visible?: boolean;\n}): CSSProperties => ({\n display: 'grid',\n minWidth: visible ? '200px' : 0,\n overflowX: pinned ? 'scroll' : 'auto',\n boxShadow:\n pinned === 'left'\n ? `0 1px 12px ${alpha(theme.palette.common.black, 0.5)}`\n : pinned === 'right'\n ? `0 -1px 12px ${alpha(theme.palette.common.black, 0.5)}`\n : 'none',\n});\n\ninterface Props {\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_TableContainer: FC<Props> = ({ tableInstance }) => {\n const {\n getCenterTableWidth,\n getLeftTableWidth,\n getRightTableWidth,\n getState,\n options: {\n enablePinning,\n enableStickyHeader,\n idPrefix,\n muiTableContainerProps,\n },\n } = tableInstance;\n\n const { isFullScreen } = getState();\n\n const [totalToolbarHeight, setTotalToolbarHeight] = useState(0);\n\n const tableContainerProps =\n muiTableContainerProps instanceof Function\n ? muiTableContainerProps({ tableInstance })\n : muiTableContainerProps;\n\n useEffect(() => {\n const topToolbarHeight =\n typeof document !== 'undefined'\n ? document?.getElementById(`mrt-${idPrefix}-toolbar-top`)\n ?.offsetHeight ?? 0\n : 0;\n\n const bottomToolbarHeight =\n typeof document !== 'undefined'\n ? document?.getElementById(`mrt-${idPrefix}-toolbar-bottom`)\n ?.offsetHeight ?? 0\n : 0;\n\n setTotalToolbarHeight(topToolbarHeight + bottomToolbarHeight);\n });\n\n const isSomeColumnsPinnedLeft = !!tableInstance.getLeftFlatHeaders().length;\n const isSomeColumnsPinnedRight = !!tableInstance.getRightFlatHeaders().length;\n\n return (\n <TableContainer\n {...tableContainerProps}\n sx={{\n maxWidth: '100%',\n maxHeight: enableStickyHeader\n ? `clamp(350px, calc(100vh - ${totalToolbarHeight}px), 2000px)`\n : undefined,\n overflow: 'auto',\n ...tableContainerProps?.sx,\n }}\n style={{\n maxHeight: isFullScreen\n ? `calc(100vh - ${totalToolbarHeight}px)`\n : undefined,\n }}\n >\n {(enablePinning && isSomeColumnsPinnedLeft) ||\n isSomeColumnsPinnedRight ? (\n <Box\n sx={{\n display: 'grid',\n gridTemplateColumns: `${getLeftTableWidth()}fr ${getCenterTableWidth()}fr ${getRightTableWidth()}fr`,\n }}\n >\n <Box\n sx={(theme: Theme) =>\n commonBoxStyles({\n pinned: 'left',\n theme,\n visible: isSomeColumnsPinnedLeft,\n })\n }\n >\n <MRT_Table pinned=\"left\" tableInstance={tableInstance} />\n </Box>\n <Box\n sx={(theme: Theme) =>\n commonBoxStyles({\n theme,\n visible: !!tableInstance.getCenterFlatHeaders().length,\n })\n }\n >\n <MRT_Table pinned=\"center\" tableInstance={tableInstance} />\n </Box>\n <Box\n sx={(theme: Theme) =>\n commonBoxStyles({\n pinned: 'right',\n theme,\n visible: isSomeColumnsPinnedRight,\n })\n }\n >\n <MRT_Table pinned=\"right\" tableInstance={tableInstance} />\n </Box>\n </Box>\n ) : (\n <MRT_Table pinned=\"none\" tableInstance={tableInstance} />\n )}\n </TableContainer>\n );\n};\n","import React, { FC, useEffect } from 'react';\nimport { Paper } from '@mui/material';\nimport { MRT_ToolbarTop } from '../toolbar/MRT_ToolbarTop';\nimport { MRT_ToolbarBottom } from '../toolbar/MRT_ToolbarBottom';\nimport { MRT_TableContainer } from './MRT_TableContainer';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_TablePaper: FC<Props> = ({ tableInstance }) => {\n const {\n getState,\n options: { enableToolbarBottom, enableToolbarTop, muiTablePaperProps },\n } = tableInstance;\n\n const { isFullScreen } = getState();\n\n useEffect(() => {\n if (typeof window !== 'undefined') {\n if (isFullScreen) {\n document.body.style.overflow = 'hidden';\n document.body.style.height = '100vh';\n } else {\n document.body.style.overflow = 'auto';\n document.body.style.height = 'auto';\n }\n }\n }, [isFullScreen]);\n\n const tablePaperProps =\n muiTablePaperProps instanceof Function\n ? muiTablePaperProps({ tableInstance })\n : muiTablePaperProps;\n\n return (\n <Paper\n elevation={2}\n {...tablePaperProps}\n sx={{\n transition: 'all 0.2s ease-in-out',\n ...tablePaperProps?.sx,\n }}\n style={{\n height: isFullScreen ? '100vh' : undefined,\n margin: isFullScreen ? '0' : undefined,\n maxHeight: isFullScreen ? '100vh' : undefined,\n maxWidth: isFullScreen ? '100vw' : undefined,\n padding: isFullScreen ? '0' : undefined,\n width: isFullScreen ? '100vw' : undefined,\n }}\n >\n {enableToolbarTop && <MRT_ToolbarTop tableInstance={tableInstance} />}\n <MRT_TableContainer tableInstance={tableInstance} />\n {enableToolbarBottom && (\n <MRT_ToolbarBottom tableInstance={tableInstance} />\n )}\n </Paper>\n );\n};\n","import { ColumnDef, Table } from '@tanstack/react-table';\nimport { MRT_ColumnDef, MRT_FilterFn } from '.';\nimport { MRT_FILTER_OPTION } from './enums';\nimport { defaultFilterFNs } from './filtersFNs';\n\nexport const getAllLeafColumnDefs = (\n columns: MRT_ColumnDef[],\n): MRT_ColumnDef[] => {\n let lowestLevelColumns: MRT_ColumnDef[] = columns;\n let currentCols: MRT_ColumnDef[] | undefined = columns;\n while (!!currentCols?.length && currentCols.some((col) => col.columns)) {\n const nextCols: MRT_ColumnDef[] = currentCols\n .filter((col) => !!col.columns)\n .map((col) => col.columns)\n .flat() as MRT_ColumnDef[];\n if (nextCols.every((col) => !col?.columns)) {\n lowestLevelColumns = [...lowestLevelColumns, ...nextCols];\n }\n currentCols = nextCols;\n }\n return lowestLevelColumns.filter((col) => !col.columns);\n};\n\nexport const createGroup = <D extends Record<string, any> = {}>(\n table: Table<D>,\n column: MRT_ColumnDef<D>,\n currentFilterFns: { [key: string]: MRT_FilterFn },\n): ColumnDef<D> =>\n table.createGroup({\n ...column,\n columns: column?.columns?.map?.((col) =>\n col.columns\n ? createGroup<D>(table, col, currentFilterFns)\n : createDataColumn(table, col, currentFilterFns),\n ),\n } as any);\n\nexport const createDataColumn = <D extends Record<string, any> = {}>(\n table: Table<D>,\n column: MRT_ColumnDef<D>,\n currentFilterFns: { [key: string]: MRT_FilterFn },\n): ColumnDef<D> => // @ts-ignore\n table.createDataColumn(column.id, {\n filterFn:\n currentFilterFns[column.id] instanceof Function\n ? currentFilterFns[column.id]\n : defaultFilterFNs[currentFilterFns[column.id] as MRT_FILTER_OPTION],\n ...column,\n }) as any;\n\nexport const createDisplayColumn = <D extends Record<string, any> = {}>(\n table: Table<D>,\n column: Omit<MRT_ColumnDef<D>, 'header'> & { header?: string },\n): ColumnDef<D> => table.createDisplayColumn(column as ColumnDef<D>);\n","import React, { useEffect, useMemo, useState } from 'react';\nimport {\n ColumnDef,\n FilterFn,\n PaginationState,\n Table,\n createTable,\n functionalUpdate,\n getColumnFilteredRowModelSync,\n getCoreRowModelSync,\n getExpandedRowModel,\n getGlobalFilteredRowModelSync,\n getGroupedRowModelSync,\n getPaginationRowModel,\n getSortedRowModelSync,\n useTableInstance,\n} from '@tanstack/react-table';\nimport {\n MRT_Cell,\n MRT_ColumnDef,\n MRT_FilterFn,\n MRT_Row,\n MRT_TableInstance,\n MRT_TableState,\n} from '..';\nimport { MRT_ExpandAllButton } from '../buttons/MRT_ExpandAllButton';\nimport { MRT_ExpandButton } from '../buttons/MRT_ExpandButton';\nimport { MRT_ToggleRowActionMenuButton } from '../buttons/MRT_ToggleRowActionMenuButton';\nimport { MRT_SelectCheckbox } from '../inputs/MRT_SelectCheckbox';\nimport { MaterialReactTableProps } from '../MaterialReactTable';\nimport { MRT_TablePaper } from './MRT_TablePaper';\nimport {\n createDataColumn,\n createDisplayColumn,\n createGroup,\n getAllLeafColumnDefs,\n} from '../utils';\nimport { defaultFilterFNs } from '../filtersFNs';\nimport { MRT_FILTER_OPTION } from '../enums';\nimport { Box, Dialog, Grow } from '@mui/material';\n\nexport const MRT_TableRoot = <D extends Record<string, any> = {}>(\n props: MaterialReactTableProps<D>,\n) => {\n const [idPrefix, setIdPrefix] = useState(props.idPrefix);\n useEffect(\n () =>\n setIdPrefix(props.idPrefix ?? Math.random().toString(36).substring(2, 9)),\n [props.idPrefix],\n );\n\n const initialState: Partial<MRT_TableState<D>> = useMemo(() => {\n if (!props.enablePersistentState || !props.idPrefix) {\n return props.initialState;\n }\n if (typeof window === 'undefined') {\n if (process.env.NODE_ENV !== 'production') {\n console.error(\n 'The MRT Persistent Table State feature is not supported if using SSR, but you can wrap your <MaterialReactTable /> in a MUI <NoSsr> tags to let it work',\n );\n }\n return props.initialState;\n }\n const storedState =\n props.persistentStateMode === 'localStorage'\n ? localStorage.getItem(`mrt-${idPrefix}-table-state`)\n : props.persistentStateMode === 'sessionStorage'\n ? sessionStorage.getItem(`mrt-${idPrefix}-table-state`)\n : '{}';\n if (storedState) {\n const parsedState = JSON.parse(storedState);\n if (parsedState) {\n return { ...props.initialState, ...parsedState };\n }\n }\n return props.initialState;\n }, []);\n\n const [currentEditingCell, setCurrentEditingCell] =\n useState<MRT_Cell<D> | null>(initialState?.currentEditingCell ?? null);\n const [currentEditingRow, setCurrentEditingRow] = useState<MRT_Row<D> | null>(\n initialState?.currentEditingRow ?? null,\n );\n const [isDensePadding, setIsDensePadding] = useState(\n initialState?.isDensePadding ?? false,\n );\n const [isFullScreen, setIsFullScreen] = useState(\n initialState?.isFullScreen ?? false,\n );\n const [showFilters, setShowFilters] = useState(\n initialState?.showFilters ?? false,\n );\n const [showGlobalFilter, setShowGlobalFilter] = useState(\n initialState?.showGlobalFilter ?? false,\n );\n const [pagination, setPagination] = useState<PaginationState>({\n pageIndex: initialState?.pagination?.pageIndex ?? 0,\n pageSize: initialState?.pagination?.pageSize ?? 10,\n pageCount: initialState?.pagination?.pageCount ?? -1,\n });\n\n const [currentFilterFns, setCurrentFilterFns] = useState<{\n [key: string]: MRT_FilterFn;\n }>(() =>\n Object.assign(\n {},\n ...getAllLeafColumnDefs(props.columns as MRT_ColumnDef[]).map((c) => ({\n [c.id as string]:\n c.filterFn ??\n initialState?.currentFilterFns?.[c.id] ??\n (!!c.filterSelectOptions?.length\n ? MRT_FILTER_OPTION.EQUALS\n : MRT_FILTER_OPTION.BEST_MATCH),\n })),\n ),\n );\n\n const [currentGlobalFilterFn, setCurrentGlobalFilterFn] = useState<\n MRT_FILTER_OPTION | FilterFn<D> | string | number | symbol\n >(props.globalFilterFn ?? MRT_FILTER_OPTION.BEST_MATCH_FIRST);\n\n const table = useMemo(() => createTable() as unknown as Table<D>, []);\n\n const displayColumns = useMemo(\n () =>\n [\n (props.enableRowActions ||\n (props.enableEditing && props.editingMode === 'row')) &&\n createDisplayColumn(table, {\n Cell: ({ cell }) => (\n <MRT_ToggleRowActionMenuButton\n row={cell.row as MRT_Row}\n tableInstance={tableInstance}\n />\n ),\n header: props.localization?.actions,\n id: 'mrt-row-actions',\n maxWidth: 60,\n width: 60,\n }),\n (props.enableExpanded || props.enableGrouping) &&\n createDisplayColumn(table, {\n Cell: ({ cell }) => (\n <MRT_ExpandButton\n row={cell.row as MRT_Row}\n tableInstance={tableInstance}\n />\n ),\n Header: () =>\n props.enableExpandAll ? (\n <MRT_ExpandAllButton tableInstance={tableInstance} />\n ) : null,\n header: props.localization?.expand,\n id: 'mrt-expand',\n maxWidth: 40,\n width: 40,\n }),\n props.enableRowSelection &&\n createDisplayColumn(table, {\n Cell: ({ cell }) => (\n <MRT_SelectCheckbox\n row={cell.row as MRT_Row}\n tableInstance={tableInstance}\n />\n ),\n Header: () =>\n props.enableSelectAll ? (\n <MRT_SelectCheckbox selectAll tableInstance={tableInstance} />\n ) : null,\n header: props.localization?.select,\n id: 'mrt-select',\n maxWidth: 40,\n width: 40,\n }),\n props.enableRowNumbers &&\n createDisplayColumn(table, {\n Cell: ({ cell }) => cell.row.index + 1,\n Header: () => props.localization?.rowNumber,\n header: props.localization?.rowNumbers,\n id: 'mrt-row-numbers',\n maxWidth: 40,\n width: 40,\n minWidth: 40,\n }),\n ].filter(Boolean),\n [\n props.editingMode,\n props.enableEditing,\n props.enableExpandAll,\n props.enableExpanded,\n props.enableGrouping,\n props.enableRowActions,\n props.enableRowNumbers,\n props.enableRowSelection,\n props.enableSelectAll,\n props.localization,\n table,\n ],\n );\n\n const columns = useMemo(\n () =>\n table.createColumns([\n ...displayColumns,\n ...props.columns.map((column) =>\n column.columns\n ? createGroup(table, column, currentFilterFns)\n : createDataColumn(table, column, currentFilterFns),\n ),\n ] as ColumnDef<D>[]),\n [table, props.columns, currentFilterFns],\n );\n\n const data: D['Row'][] = useMemo(\n () =>\n props.isLoading && !props.data.length\n ? [...Array(10).fill(null)].map(() =>\n Object.assign(\n {},\n ...getAllLeafColumnDefs(props.columns as MRT_ColumnDef[]).map(\n (c) => ({\n [c.id]: null,\n }),\n ),\n ),\n )\n : props.data,\n [props.data, props.isLoading],\n );\n\n //@ts-ignore\n const tableInstance: MRT_TableInstance<{}> = {\n ...useTableInstance(table, {\n //@ts-ignore\n filterFns: defaultFilterFNs,\n getColumnFilteredRowModel: getColumnFilteredRowModelSync(),\n getCoreRowModel: getCoreRowModelSync(),\n getExpandedRowModel: getExpandedRowModel(),\n getGlobalFilteredRowModel: getGlobalFilteredRowModelSync(),\n getGroupedRowModel: getGroupedRowModelSync(),\n getPaginationRowModel: getPaginationRowModel(),\n getSortedRowModel: getSortedRowModelSync(),\n getSubRows: (originalRow: D) => originalRow.subRows,\n globalFilterFn: currentGlobalFilterFn,\n onPaginationChange: (updater: any) =>\n setPagination((old) => functionalUpdate(updater, old)),\n ...props,\n columns,\n data,\n idPrefix,\n //@ts-ignore\n initialState,\n state: {\n currentEditingCell,\n currentEditingRow,\n currentFilterFns,\n currentGlobalFilterFn,\n isDensePadding,\n isFullScreen,\n //@ts-ignore\n pagination,\n showFilters,\n showGlobalFilter,\n ...props.state,\n },\n }),\n //@ts-ignore\n setCurrentEditingCell,\n //@ts-ignore\n setCurrentEditingRow,\n setCurrentFilterFns,\n //@ts-ignore\n setCurrentGlobalFilterFn,\n setIsDensePadding,\n setIsFullScreen,\n setShowFilters,\n setShowGlobalFilter,\n };\n\n useEffect(() => {\n if (typeof window === 'undefined' || !props.enablePersistentState) {\n return;\n }\n if (!props.idPrefix && process.env.NODE_ENV !== 'production') {\n console.warn(\n 'a unique idPrefix prop is required for persistent table state to work',\n );\n return;\n }\n const itemArgs: [string, string] = [\n `mrt-${idPrefix}-table-state`,\n JSON.stringify(tableInstance.getState()),\n ];\n if (props.persistentStateMode === 'localStorage') {\n localStorage.setItem(...itemArgs);\n } else if (props.persistentStateMode === 'sessionStorage') {\n sessionStorage.setItem(...itemArgs);\n }\n }, [\n props.enablePersistentState,\n props.idPrefix,\n props.persistentStateMode,\n tableInstance,\n ]);\n\n return (\n <>\n <Dialog\n PaperComponent={Box}\n TransitionComponent={Grow}\n disablePortal\n fullScreen\n keepMounted={false}\n onClose={() => setIsFullScreen(false)}\n open={isFullScreen}\n transitionDuration={400}\n >\n <MRT_TablePaper tableInstance={tableInstance} />\n </Dialog>\n {!isFullScreen && <MRT_TablePaper tableInstance={tableInstance} />}\n </>\n );\n};\n","import React, {\n ChangeEvent,\n Dispatch,\n FC,\n FocusEvent,\n MouseEvent,\n ReactNode,\n SetStateAction,\n} from 'react';\nimport {\n AlertProps,\n ButtonProps,\n CheckboxProps,\n IconButtonProps,\n LinearProgressProps,\n PaperProps,\n SkeletonProps,\n TableBodyProps,\n TableCellProps,\n TableContainerProps,\n TableFooterProps,\n TableHeadProps,\n TablePaginationProps,\n TableProps,\n TableRowProps,\n TextFieldProps,\n ToolbarProps,\n} from '@mui/material';\nimport {\n Cell,\n Column,\n ColumnDef,\n DefaultGenerics,\n FilterFn,\n FilterFnOption,\n Header,\n HeaderGroup,\n Options,\n Overwrite,\n PaginationState,\n Row,\n TableInstance,\n TableState,\n VisibilityState,\n} from '@tanstack/react-table';\nimport { MRT_Localization, MRT_DefaultLocalization_EN } from './localization';\nimport { MRT_Default_Icons, MRT_Icons } from './icons';\nimport { MRT_FILTER_OPTION } from './enums';\nimport { MRT_TableRoot } from './table/MRT_TableRoot';\n\nexport type MRT_TableOptions<D extends Record<string, any> = {}> = Partial<\n Omit<\n Options<D>,\n 'columns' | 'data' | 'initialState' | 'state' | 'expandRowsFn' | 'filterFns'\n >\n> & {\n columns: MRT_ColumnDef<D>[];\n data: D[];\n expandRowsFn?: (dataRow: D) => D[];\n filterFns?: MRT_FILTER_OPTION | FilterFn<D> | string | number | symbol;\n initialState?: Partial<MRT_TableState<D>>;\n state?: Partial<MRT_TableState<D>>;\n};\n\nexport interface MRT_RowModel<D extends Record<string, any> = {}> {\n flatRows: MRT_Row<D>[];\n rows: MRT_Row<D>[];\n rowsById: { [key: string]: MRT_Row<D> };\n}\n\nexport type MRT_TableInstance<D extends Record<string, any> = {}> = Omit<\n TableInstance<\n Overwrite<\n Partial<DefaultGenerics>,\n {\n Row: D;\n }\n >\n >,\n | 'getAllColumns'\n | 'getAllLeafColumns'\n | 'getExpandedRowModel'\n | 'getPaginationRowModel'\n | 'getPrePaginationRowModel'\n | 'getRowModel'\n | 'getSelectedRowModel'\n | 'getState'\n | 'options'\n> & {\n getAllColumns: () => MRT_Column<D>[];\n getAllLeafColumns: () => MRT_Column<D>[];\n getExpandedRowModel: () => MRT_RowModel<D>;\n getPaginationRowModel: () => MRT_RowModel<D>;\n getPrePaginationRowModel: () => MRT_RowModel<D>;\n getRowModel: () => MRT_RowModel<D>;\n getSelectedRowModel: () => MRT_RowModel<D>;\n getState: () => MRT_TableState<D>;\n options: MaterialReactTableProps<D> & {\n icons: MRT_Icons;\n idPrefix: string;\n localization: MRT_Localization;\n };\n setCurrentEditingCell: Dispatch<SetStateAction<MRT_Cell<D> | null>>;\n setCurrentEditingRow: Dispatch<SetStateAction<MRT_Row<D> | null>>;\n setCurrentFilterFns: Dispatch<\n SetStateAction<{\n [key: string]: MRT_FilterFn<D>;\n }>\n >;\n setCurrentGlobalFilterFn: Dispatch<SetStateAction<MRT_FilterFn<D>>>;\n setIsDensePadding: Dispatch<SetStateAction<boolean>>;\n setIsFullScreen: Dispatch<SetStateAction<boolean>>;\n setShowFilters: Dispatch<SetStateAction<boolean>>;\n setShowGlobalFilter: Dispatch<SetStateAction<boolean>>;\n};\n\nexport type MRT_TableState<D extends Record<string, any> = {}> = Omit<\n TableState,\n 'pagination'\n> & {\n currentEditingCell: MRT_Cell<D> | null;\n currentEditingRow: MRT_Row<D> | null;\n currentFilterFns: Record<string, string | Function>;\n currentGlobalFilterFn: Record<string, string | Function>;\n isDensePadding: boolean;\n isFullScreen: boolean;\n showFilters: boolean;\n showGlobalFilter: boolean;\n pagination: Partial<PaginationState>;\n};\n\nexport type MRT_ColumnDef<D extends Record<string, any> = {}> = Omit<\n ColumnDef<D>,\n 'header' | 'footer' | 'columns' | 'filterFn'\n> & {\n Edit?: ({\n cell,\n tableInstance,\n }: {\n cell: MRT_Cell<D>;\n tableInstance: MRT_TableInstance<D>;\n }) => ReactNode;\n Filter?: ({\n header,\n tableInstance,\n }: {\n header: MRT_Header<D>;\n tableInstance: MRT_TableInstance<D>;\n }) => ReactNode;\n Footer?: ({\n footer,\n tableInstance,\n }: {\n footer: MRT_Header<D>;\n tableInstance: MRT_TableInstance<D>;\n }) => ReactNode;\n Header?: ({\n header,\n tableInstance,\n }: {\n header: MRT_Header<D>;\n tableInstance: MRT_TableInstance<D>;\n }) => ReactNode;\n Cell?: ({\n cell,\n tableInstance,\n }: {\n cell: MRT_Cell<D>;\n tableInstance: MRT_TableInstance<D>;\n }) => ReactNode;\n id: keyof D | string;\n columns?: MRT_ColumnDef<D>[];\n enableClickToCopy?: boolean;\n enableColumnActions?: boolean;\n enableEditing?: boolean;\n enabledColumnFilterOptions?: (MRT_FILTER_OPTION | string)[];\n filterFn?: MRT_FilterFn;\n filterSelectOptions?: (string | { text: string; value: string })[];\n footer?: string;\n header: string;\n muiTableBodyCellCopyButtonProps?:\n | ButtonProps\n | (({\n tableInstance,\n cell,\n }: {\n tableInstance: MRT_TableInstance;\n cell: MRT_Cell<D>;\n }) => ButtonProps);\n muiTableBodyCellEditTextFieldProps?:\n | TextFieldProps\n | (({\n tableInstance,\n cell,\n }: {\n tableInstance: MRT_TableInstance;\n cell: MRT_Cell<D>;\n }) => TextFieldProps);\n muiTableBodyCellProps?:\n | TableCellProps\n | (({\n tableInstance,\n cell,\n }: {\n tableInstance: MRT_TableInstance;\n cell: MRT_Cell<D>;\n }) => TableCellProps);\n muiTableFooterCellProps?:\n | TableCellProps\n | (({\n tableInstance,\n column,\n }: {\n tableInstance: MRT_TableInstance;\n column: MRT_Column<D>;\n }) => TableCellProps);\n muiTableHeadCellColumnActionsButtonProps?:\n | IconButtonProps\n | (({\n tableInstance,\n column,\n }: {\n tableInstance: MRT_TableInstance;\n column: MRT_Column<D>;\n }) => IconButtonProps);\n muiTableHeadCellFilterTextFieldProps?:\n | TextFieldProps\n | (({\n tableInstance,\n column,\n }: {\n tableInstance: MRT_TableInstance;\n column: MRT_Column<D>;\n }) => TextFieldProps);\n muiTableHeadCellProps?:\n | TableCellProps\n | (({\n tableInstance,\n column,\n }: {\n tableInstance: MRT_TableInstance;\n column: MRT_Column<D>;\n }) => TableCellProps);\n onCellEditBlur?: ({\n cell,\n event,\n tableInstance,\n }: {\n event: FocusEvent<HTMLInputElement>;\n cell: MRT_Cell<D>;\n tableInstance: MRT_TableInstance<D>;\n }) => void;\n onCellEditChange?: ({\n cell,\n event,\n tableInstance,\n }: {\n event: ChangeEvent<HTMLInputElement>;\n cell: MRT_Cell<D>;\n tableInstance: MRT_TableInstance<D>;\n }) => void;\n onColumnFilterValueChange?: ({\n column,\n event,\n filterValue,\n }: {\n column: MRT_Column<D>;\n event: ChangeEvent<HTMLInputElement>;\n filterValue: any;\n }) => void;\n};\n\nexport type MRT_Column<D extends Record<string, any> = {}> = Omit<\n Column<D>,\n 'header' | 'footer' | 'columns'\n> &\n MRT_ColumnDef<D> & {\n columns?: MRT_Column<D>[];\n };\n\nexport type MRT_Header<D extends Record<string, any> = {}> = Omit<\n Header<D>,\n 'column'\n> & {\n column: MRT_Column<D>;\n};\n\nexport type MRT_HeaderGroup<D extends Record<string, any> = {}> = Omit<\n HeaderGroup<D>,\n 'headers'\n> & {\n headers: MRT_Header<D>[];\n};\n\nexport type MRT_Row<D extends Record<string, any> = {}> = Omit<\n Row<D>,\n | 'getVisibleCells'\n | 'getAllCells'\n | 'subRows'\n | 'original'\n | 'getLeftVisibleCells'\n | 'getRightVisibleCells'\n | 'getCenterVisibleCells'\n> & {\n getAllCells: () => MRT_Cell<D>[];\n getCenterVisibleCells: () => MRT_Cell<D>[];\n getLeftVisibleCells: () => MRT_Cell<D>[];\n getRightVisibleCells: () => MRT_Cell<D>[];\n getVisibleCells: () => MRT_Cell<D>[];\n subRows?: MRT_Row<D>[];\n original: D;\n};\n\nexport type MRT_Cell<D extends Record<string, any> = {}> = Omit<\n Cell<D>,\n 'column' | 'row'\n> & {\n column: MRT_Column<D>;\n row: MRT_Row<D>;\n};\n\nexport type MRT_FilterFn<D extends Record<string, any> = {}> =\n | FilterFn<D>\n | FilterFnOption<D>\n | MRT_FILTER_OPTION\n | number\n | string\n | symbol;\n\nexport type MaterialReactTableProps<D extends Record<string, any> = {}> =\n MRT_TableOptions<D> & {\n editingMode?: 'table' | 'row' | 'cell';\n enableClickToCopy?: boolean;\n enableColumnActions?: boolean;\n enableDensePaddingToggle?: boolean;\n enableEditing?: boolean;\n enableExpandAll?: boolean;\n enableFullScreenToggle?: boolean;\n enablePagination?: boolean;\n enablePersistentState?: boolean;\n enableRowActions?: boolean;\n enableRowNumbers?: boolean;\n enableSelectAll?: boolean;\n enableStickyHeader?: boolean;\n enableTableFooter?: boolean;\n enableTableHead?: boolean;\n enableToolbarBottom?: boolean;\n enableToolbarInternalActions?: boolean;\n enableToolbarTop?: boolean;\n enabledColumnFilterOptions?: (MRT_FILTER_OPTION | string)[];\n enabledGlobalFilterOptions?: (MRT_FILTER_OPTION | string)[];\n icons?: Partial<MRT_Icons>;\n idPrefix?: string;\n isLoading?: boolean;\n isReloading?: boolean;\n localization?: Partial<MRT_Localization>;\n muiLinearProgressProps?:\n | LinearProgressProps\n | (({\n tableInstance,\n }: {\n tableInstance: MRT_TableInstance;\n }) => LinearProgressProps);\n muiSearchTextFieldProps?:\n | TextFieldProps\n | (({\n tableInstance,\n }: {\n tableInstance: MRT_TableInstance;\n }) => TextFieldProps);\n muiSelectCheckboxProps?:\n | CheckboxProps\n | (({\n tableInstance,\n isSelectAll,\n row,\n }: {\n tableInstance: MRT_TableInstance;\n isSelectAll: boolean;\n row?: MRT_Row<D>;\n }) => CheckboxProps);\n muiTableBodyCellCopyButtonProps?:\n | ButtonProps\n | (({\n tableInstance,\n cell,\n }: {\n tableInstance: MRT_TableInstance;\n cell: MRT_Cell<D>;\n }) => ButtonProps);\n muiTableBodyCellEditTextFieldProps?:\n | TextFieldProps\n | (({\n tableInstance,\n cell,\n }: {\n tableInstance: MRT_TableInstance;\n cell: MRT_Cell<D>;\n }) => TextFieldProps);\n muiTableBodyCellProps?:\n | TableCellProps\n | (({\n tableInstance,\n cell,\n }: {\n tableInstance: MRT_TableInstance;\n cell: MRT_Cell<D>;\n }) => TableCellProps);\n muiTableBodyCellSkeletonProps?:\n | SkeletonProps\n | (({\n tableInstance,\n cell,\n }: {\n tableInstance: MRT_TableInstance;\n cell: MRT_Cell<D>;\n }) => SkeletonProps);\n muiTableBodyProps?:\n | TableBodyProps\n | (({\n tableInstance,\n }: {\n tableInstance: MRT_TableInstance;\n }) => TableBodyProps);\n muiTableBodyRowProps?:\n | TableRowProps\n | (({\n tableInstance,\n row,\n }: {\n tableInstance: MRT_TableInstance;\n row: MRT_Row<D>;\n }) => TableRowProps);\n muiTableContainerProps?:\n | TableContainerProps\n | (({\n tableInstance,\n }: {\n tableInstance: MRT_TableInstance;\n }) => TableContainerProps);\n muiTableDetailPanelProps?:\n | TableCellProps\n | (({\n tableInstance,\n row,\n }: {\n tableInstance: MRT_TableInstance;\n row: MRT_Row<D>;\n }) => TableCellProps);\n muiTableFooterCellProps?:\n | TableCellProps\n | (({\n tableInstance,\n column,\n }: {\n tableInstance: MRT_TableInstance;\n column: MRT_Column<D>;\n }) => TableCellProps);\n muiTableFooterProps?:\n | TableFooterProps\n | (({\n tableInstance,\n }: {\n tableInstance: MRT_TableInstance;\n }) => TableFooterProps);\n muiTableFooterRowProps?:\n | TableRowProps\n | (({\n tableInstance,\n footerGroup,\n }: {\n tableInstance: MRT_TableInstance;\n footerGroup: MRT_HeaderGroup<D>;\n }) => TableRowProps);\n muiTableHeadCellColumnActionsButtonProps?:\n | IconButtonProps\n | (({\n tableInstance,\n column,\n }: {\n tableInstance: MRT_TableInstance;\n column: MRT_Column<D>;\n }) => IconButtonProps);\n muiTableHeadCellFilterTextFieldProps?:\n | TextFieldProps\n | (({\n tableInstance,\n column,\n }: {\n tableInstance: MRT_TableInstance;\n column: MRT_Column<D>;\n }) => TextFieldProps);\n muiTableHeadCellProps?:\n | TableCellProps\n | (({\n tableInstance,\n column,\n }: {\n tableInstance: MRT_TableInstance;\n column: MRT_Column<D>;\n }) => TableCellProps);\n muiTableHeadProps?:\n | TableHeadProps\n | (({\n tableInstance,\n }: {\n tableInstance: MRT_TableInstance;\n }) => TableHeadProps);\n muiTableHeadRowProps?:\n | TableRowProps\n | (({\n tableInstance,\n headerGroup,\n }: {\n tableInstance: MRT_TableInstance;\n headerGroup: MRT_HeaderGroup<D>;\n }) => TableRowProps);\n muiTablePaperProps?:\n | PaperProps\n | (({\n tableInstance,\n }: {\n tableInstance: MRT_TableInstance;\n }) => PaperProps);\n muiTablePaginationProps?:\n | Partial<TablePaginationProps>\n | (({\n tableInstance,\n }: {\n tableInstance: MRT_TableInstance;\n }) => Partial<TablePaginationProps>);\n muiTableProps?:\n | TableProps\n | (({\n tableInstance,\n }: {\n tableInstance: MRT_TableInstance;\n }) => TableProps);\n muiTableToolbarAlertBannerProps?:\n | AlertProps\n | (({\n tableInstance,\n }: {\n tableInstance: MRT_TableInstance;\n }) => AlertProps);\n muiTableToolbarBottomProps?:\n | ToolbarProps\n | (({\n tableInstance,\n }: {\n tableInstance: MRT_TableInstance;\n }) => ToolbarProps);\n muiTableToolbarTopProps?:\n | ToolbarProps\n | (({\n tableInstance,\n }: {\n tableInstance: MRT_TableInstance;\n }) => ToolbarProps);\n onCellClick?: ({\n cell,\n event,\n tableInstance,\n }: {\n cell: MRT_Cell<D>;\n tableInstance: MRT_TableInstance<D>;\n event: MouseEvent<HTMLTableCellElement>;\n }) => void;\n onCellEditBlur?: ({\n cell,\n event,\n tableInstance,\n }: {\n event: FocusEvent<HTMLInputElement>;\n cell: MRT_Cell<D>;\n tableInstance: MRT_TableInstance<D>;\n }) => void;\n onCellEditChange?: ({\n cell,\n event,\n tableInstance,\n }: {\n event: ChangeEvent<HTMLInputElement>;\n cell: MRT_Cell<D>;\n tableInstance: MRT_TableInstance<D>;\n }) => void;\n onColumnFilterValueChange?: ({\n column,\n event,\n filterValue,\n }: {\n column: MRT_Column<D>;\n event: ChangeEvent<HTMLInputElement>;\n filterValue: any;\n }) => void;\n onDetailPanelClick?: ({\n event,\n row,\n tableInstance,\n }: {\n event: MouseEvent<HTMLTableCellElement>;\n row: MRT_Row<D>;\n tableInstance: MRT_TableInstance<D>;\n }) => void;\n onGlobalSearchFilterChange?: ({\n event,\n tableInstance,\n }: {\n event: ChangeEvent<HTMLInputElement>;\n tableInstance: MRT_TableInstance<D>;\n }) => void;\n onRowClick?: ({\n event,\n row,\n tableInstance,\n }: {\n event: MouseEvent<HTMLTableRowElement>;\n row: MRT_Row<D>;\n tableInstance: MRT_TableInstance<D>;\n }) => void;\n onEditSubmit?: ({\n row,\n tableInstance,\n }: {\n row: MRT_Row<D>;\n tableInstance: MRT_TableInstance<D>;\n }) => Promise<void> | void;\n onRowExpandChange?: ({\n event,\n row,\n }: {\n event: MouseEvent<HTMLButtonElement>;\n row: MRT_Row<D>;\n tableInstance: MRT_TableInstance<D>;\n }) => void;\n onSelectAllChange?: ({\n event,\n selectedRows,\n tableInstance,\n }: {\n event: ChangeEvent;\n selectedRows: MRT_Row<D>[];\n tableInstance: MRT_TableInstance<D>;\n }) => void;\n onSelectChange?: ({\n event,\n row,\n selectedRows,\n tableInstance,\n }: {\n event: ChangeEvent;\n row: MRT_Row<D>;\n selectedRows: MRT_Row<D>[];\n tableInstance: MRT_TableInstance<D>;\n }) => void;\n onToggleColumnVisibility?: ({\n column,\n columnVisibility,\n tableInstance,\n }: {\n column: MRT_Column<D>;\n columnVisibility: VisibilityState;\n tableInstance: MRT_TableInstance<D>;\n }) => void;\n onToggleDensePadding?: ({\n event,\n isDensePadding,\n tableInstance,\n }: {\n event: MouseEvent<HTMLButtonElement>;\n isDensePadding: boolean;\n tableInstance: MRT_TableInstance<D>;\n }) => void;\n onToggleFullScreen?: ({\n event,\n isFullScreen,\n tableInstance,\n }: {\n event: MouseEvent<HTMLButtonElement>;\n isFullScreen: boolean;\n tableInstance: MRT_TableInstance<D>;\n }) => void;\n onToggleShowFilters?: ({\n event,\n showFilters,\n tableInstance,\n }: {\n event: MouseEvent<HTMLButtonElement>;\n showFilters: boolean;\n tableInstance: MRT_TableInstance<D>;\n }) => void;\n onToggleShowGlobalFilter?: ({\n event,\n showGlobalFilter,\n tableInstance,\n }: {\n event: MouseEvent<HTMLButtonElement>;\n showGlobalFilter: boolean;\n tableInstance: MRT_TableInstance<D>;\n }) => void;\n persistentStateMode?: 'localStorage' | 'sessionStorage';\n positionActionsColumn?: 'first' | 'last';\n positionPagination?: 'bottom' | 'top' | 'both';\n positionToolbarActions?: 'bottom' | 'top';\n positionToolbarAlertBanner?: 'bottom' | 'top';\n renderDetailPanel?: ({\n row,\n tableInstance,\n }: {\n row: MRT_Row<D>;\n tableInstance: MRT_TableInstance<D>;\n }) => ReactNode;\n renderRowActionMenuItems?: ({\n closeMenu,\n row,\n tableInstance,\n }: {\n closeMenu: () => void;\n row: MRT_Row<D>;\n tableInstance: MRT_TableInstance<D>;\n }) => ReactNode[];\n renderRowActions?: ({\n row,\n tableInstance,\n }: {\n row: MRT_Row<D>;\n tableInstance: MRT_TableInstance<D>;\n }) => ReactNode;\n renderToolbarCustomActions?: ({\n tableInstance,\n }: {\n tableInstance: MRT_TableInstance<D>;\n }) => ReactNode;\n renderToolbarInternalActions?: ({\n tableInstance,\n MRT_ToggleGlobalFilterButton,\n MRT_ToggleFiltersButton,\n MRT_ShowHideColumnsButton,\n MRT_ToggleDensePaddingButton,\n MRT_FullScreenToggleButton,\n }: {\n tableInstance: MRT_TableInstance<D>;\n MRT_ToggleGlobalFilterButton: FC<\n IconButtonProps & { tableInstance: MRT_TableInstance<D> }\n >;\n MRT_ToggleFiltersButton: FC<\n IconButtonProps & { tableInstance: MRT_TableInstance<D> }\n >;\n MRT_ShowHideColumnsButton: FC<\n IconButtonProps & { tableInstance: MRT_TableInstance<D> }\n >;\n MRT_ToggleDensePaddingButton: FC<\n IconButtonProps & { tableInstance: MRT_TableInstance<D> }\n >;\n MRT_FullScreenToggleButton: FC<\n IconButtonProps & { tableInstance: MRT_TableInstance<D> }\n >;\n }) => ReactNode;\n };\n\nexport default <D extends Record<string, any> = {}>({\n autoResetExpanded = false,\n autoResetSorting = false,\n columnResizeMode = 'onEnd',\n editingMode = 'row',\n enableColumnActions = true,\n enableColumnFilters = true,\n enableColumnResizing = false,\n enableDensePaddingToggle = true,\n enableExpandAll = true,\n enableFilters = true,\n enableFullScreenToggle = true,\n enableGlobalFilter = true,\n enableHiding = true,\n enableMultiRowSelection = true,\n enablePagination = true,\n enableSelectAll = true,\n enableSorting = true,\n enableStickyHeader = true,\n enableTableFooter = true,\n enableTableHead = true,\n enableToolbarBottom = true,\n enableToolbarInternalActions = true,\n enableToolbarTop = true,\n icons,\n localization,\n persistentStateMode = 'sessionStorage',\n positionActionsColumn = 'first',\n positionPagination = 'bottom',\n positionToolbarActions = 'top',\n positionToolbarAlertBanner = 'top',\n ...rest\n}: MaterialReactTableProps<D>) => (\n <MRT_TableRoot\n autoResetExpanded={autoResetExpanded}\n autoResetSorting={autoResetSorting}\n columnResizeMode={columnResizeMode}\n editingMode={editingMode}\n enableColumnActions={enableColumnActions}\n enableColumnResizing={enableColumnResizing}\n enableColumnFilters={enableColumnFilters}\n enableDensePaddingToggle={enableDensePaddingToggle}\n enableExpandAll={enableExpandAll}\n enableFilters={enableFilters}\n enableFullScreenToggle={enableFullScreenToggle}\n enableGlobalFilter={enableGlobalFilter}\n enableHiding={enableHiding}\n enableMultiRowSelection={enableMultiRowSelection}\n enablePagination={enablePagination}\n enableSelectAll={enableSelectAll}\n enableSorting={enableSorting}\n enableStickyHeader={enableStickyHeader}\n enableTableFooter={enableTableFooter}\n enableTableHead={enableTableHead}\n enableToolbarBottom={enableToolbarBottom}\n enableToolbarInternalActions={enableToolbarInternalActions}\n enableToolbarTop={enableToolbarTop}\n icons={{ ...MRT_Default_Icons, ...icons }}\n localization={{ ...MRT_DefaultLocalization_EN, ...localization }}\n persistentStateMode={persistentStateMode}\n positionActionsColumn={positionActionsColumn}\n positionPagination={positionPagination}\n positionToolbarActions={positionToolbarActions}\n positionToolbarAlertBanner={positionToolbarAlertBanner}\n {...rest}\n />\n);\n"],"names":["MRT_DefaultLocalization_EN","actions","cancel","changeFilterMode","changeSearchMode","clearFilter","clearSearch","clearSort","clickToCopy","columnActions","copiedToClipboard","edit","expand","expandAll","filterBestMatch","filterBestMatchFirst","filterByColumn","filterContains","filterEmpty","filterEndsWith","filterEquals","filterGreaterThan","filterLessThan","filterMode","filterNotEmpty","filterNotEquals","filterStartsWith","filteringByColumn","groupByColumn","groupedBy","hideAll","hideColumn","pinToLeft","pinToRight","resetColumnSize","rowActions","rowNumber","rowNumbers","save","search","selectedCountOfRowCountRowsSelected","select","showAll","showAllColumns","showHideColumns","showHideFilters","showHideSearch","sortByColumnAsc","sortByColumnDesc","sortedByColumnAsc","sortedByColumnDesc","thenBy","toggleDensePadding","toggleFullScreen","toggleSelectAll","toggleSelectRow","ungroupByColumn","unpin","unpinAll","unsorted","MRT_Default_Icons","ArrowRightIcon","CancelIcon","CheckBoxIcon","ClearAllIcon","CloseIcon","DensityMediumIcon","DensitySmallIcon","DoubleArrowDownIcon","DynamicFeedIcon","EditIcon","ExpandLessIcon","ExpandMoreIcon","FilterAltIcon","FilterAltOff","FilterListIcon","FilterListOffIcon","FullscreenExitIcon","FullscreenIcon","MoreHorizIcon","MoreVertIcon","PushPinIcon","RestartAltIcon","SaveIcon","SearchIcon","SearchOffIcon","SortIcon","ViewColumnIcon","VisibilityOffIcon","MRT_ExpandAllButton","tableInstance","getIsAllRowsExpanded","getIsSomeRowsExpanded","getState","options","icons","isLoading","localization","toggleAllRowsExpanded","isDensePadding","React","IconButton","disabled","title","onClick","sx","height","width","style","transform","transition","MRT_ExpandButton","row","onRowExpandChange","renderDetailPanel","handleToggleExpand","event","toggleExpanded","getCanExpand","getIsExpanded","MRT_FILTER_OPTION","bestMatchFirst","rows","columnIds","filterValue","matchSorter","toString","trim","keys","Array","isArray","map","c","autoRemove","val","bestMatch","sorter","rankedItems","contains","id","filter","values","toLowerCase","includes","startsWith","endsWith","equals","notEquals","greaterThan","isNaN","lessThan","empty","_filterValue","notEmpty","defaultFilterFNs","commonMenuItemStyles","py","my","alignItems","MRT_FilterOptionMenu","anchorEl","header","onSelect","setAnchorEl","enabledGlobalFilterOptions","setCurrentFilterFns","setCurrentGlobalFilterFn","currentFilterFns","currentGlobalFilterFn","filterOptions","useMemo","type","BEST_MATCH_FIRST","label","divider","fn","BEST_MATCH","CONTAINS","STARTS_WITH","ENDS_WITH","EQUALS","NOT_EQUALS","GREATER_THAN","LESS_THAN","EMPTY","NOT_EMPTY","filterType","column","enabledColumnFilterOptions","handleSelectFilterType","value","prev","setColumnFilterValue","Menu","anchorOrigin","vertical","horizontal","onClose","open","MenuListProps","dense","index","MenuItem","key","selected","MRT_ColumnPinningButtons","columnOrder","handlePinColumn","pinDirection","pin","columnDefType","setColumnOrder","pinned","getIsPinned","Box","mr","Tooltip","arrow","size","MRT_ShowHideColumnsMenuItems","isSubMenu","onToggleColumnVisibility","enablePinning","columnVisibility","switchChecked","getIsVisible","getLeafColumns","some","col","handleToggleColumnHidden","columns","forEach","childColumn","toggleVisibility","justifyContent","pl","depth","FormControlLabel","componentsProps","typography","marginBottom","checked","control","Switch","enableHiding","onChange","i","MRT_ShowHideColumnsMenu","getAllColumns","getIsAllColumnsVisible","getIsSomeColumnsVisible","getIsSomeColumnsPinned","toggleAllColumnsVisible","getAllLeafColumns","hideAllColumns","allDisplayColumns","allDataColumns","dataColumns","columnPinning","display","p","pt","Button","setColumnPinning","Divider","commonListItemStyles","MRT_ColumnActionMenu","enableColumnFilters","enableColumnResizing","enableGrouping","enableSorting","idPrefix","setShowFilters","columnSizing","useState","filterMenuAnchorEl","setFilterMenuAnchorEl","showHideColumnsMenuAnchorEl","setShowHideColumnsMenuAnchorEl","handleClearSort","resetSorting","handleSortAsc","toggleSorting","handleSortDesc","handleResetColumnSize","resetSize","handleHideColumn","handleGroupByColumn","toggleGrouping","old","handleClearFilter","handleFilterByColumn","setTimeout","document","getElementById","muiTableHeadCellFilterTextFieldProps","focus","handleShowAllColumns","handleOpenFilterModeMenu","stopPropagation","currentTarget","handleOpenShowHideColumnsMenu","getCanSort","getIsSorted","ListItemIcon","replace","String","getCanColumnFilter","getColumnFilterValue","filterSelectOptions","onMouseEnter","getCanGroup","getIsGrouped","getCanPin","getCanResize","Object","visible","length","MRT_RowActionMenu","handleEdit","enableEditing","renderRowActionMenuItems","closeMenu","MRT_EditActionButtons","onEditSubmit","setCurrentEditingRow","currentEditingRow","handleCancel","original","handleSave","gap","color","commonIconButtonStyles","ml","opacity","MRT_ToggleRowActionMenuButton","renderRowActions","handleOpenRowActionMenu","preventDefault","handleStartEditMode","placement","enterDelay","enterNextDelay","MRT_SelectCheckbox","selectAll","getRowModel","getSelectedRowModel","getToggleAllRowsSelectedProps","muiSelectCheckboxProps","onSelectChange","onSelectAllChange","handleSelectChange","selectedRows","target","flatRows","getToggleSelectedProps","selectedRow","mTableBodyRowSelectCheckboxProps","Function","isSelectAll","rtSelectCheckboxProps","checkboxProps","Checkbox","inputProps","undefined","MRT_SearchTextField","setGlobalFilter","muiSearchTextFieldProps","onGlobalSearchFilterChange","globalFilter","showGlobalFilter","searchValue","setSearchValue","handleChange","useCallback","debounce","handleGlobalFilterMenuOpen","handleClear","textFieldProps","Collapse","orientation","TextField","placeholder","variant","InputProps","startAdornment","InputAdornment","position","endAdornment","justifySelf","MRT_FullScreenToggleButton","rest","onToggleFullScreen","setIsFullScreen","isFullScreen","handleToggleFullScreen","MRT_ShowHideColumnsButton","handleClick","MRT_ToggleDensePaddingButton","onToggleDensePadding","setIsDensePadding","handleToggleDensePadding","MRT_ToggleFiltersButton","onToggleShowFilters","showFilters","handleToggleShowFilters","MRT_ToggleGlobalFilterButton","onToggleShowGlobalFilter","setShowGlobalFilter","handleToggleSearch","MRT_ToolbarInternalButtons","enableDensePaddingToggle","enableFilters","enableFullScreenToggle","enableGlobalFilter","renderToolbarInternalActions","MRT_TablePagination","getPrePaginationRowModel","setPageIndex","setPageSize","muiTablePaginationProps","pagination","pageSize","pageIndex","tablePaginationProps","handleChangeRowsPerPage","showFirstLastPageButtons","TablePagination","SelectProps","m","MenuProps","disablePadding","component","count","onPageChange","_","newPage","onRowsPerPageChange","page","rowsPerPage","rowsPerPageOptions","showFirstButton","showLastButton","zIndex","MRT_ToolbarAlertBanner","toggleColumnGrouping","muiTableToolbarAlertBannerProps","positionToolbarActions","positionToolbarAlertBanner","renderToolbarCustomActions","grouping","isMobile","useMediaQuery","alertProps","selectMessage","groupedByMessage","columnId","Fragment","Chip","find","onDelete","displayAbsolute","timeout","Alert","icon","borderRadius","fontSize","left","right","minHeight","top","MRT_LinearProgressBar","muiLinearProgressProps","isReloading","linearProgressProps","unmountOnExit","LinearProgress","commonToolbarStyles","theme","backgroundColor","palette","background","backgroundImage","alpha","common","white","MRT_ToolbarTop","enablePagination","enableToolbarInternalActions","muiTableToolbarTopProps","positionPagination","toolbarProps","Toolbar","MRT_ToolbarBottom","muiTableToolbarBottomProps","bottom","boxShadow","black","MRT_FilterTextField","mTableHeadCellFilterTextFieldProps","mcTableHeadCellFilterTextFieldProps","setFilterValue","handleFilterMenuOpen","handleClearFilterChip","Filter","filterId","filterFn","isSelectFilter","filterChipLabel","charAt","toUpperCase","slice","filterPlaceholder","fullWidth","textOverflow","helperText","htmlFor","name","FormHelperTextProps","lineHeight","margin","e","disableHoverListener","minWidth","mt","option","text","MRT_ToggleColumnActionMenuButton","muiTableHeadCellColumnActionsButtonProps","mTableHeadCellColumnActionsButtonProps","mcTableHeadCellColumnActionsButtonProps","iconButtonProps","MRT_TableHeadCell","enableColumnActions","muiTableHeadCellProps","mTableHeadCellProps","mcTableHeadCellProps","tableCellProps","getHeaderProps","sortTooltip","filterTooltip","headerElement","Header","TableCell","align","fontWeight","maxWidth","getWidth","pb","overflow","verticalAlign","getIsResizing","isPlaceholder","cursor","flexWrap","whiteSpace","TableSortLabel","active","direction","disableRipple","flexItem","onDoubleClick","borderRightWidth","touchAction","userSelect","info","main","getResizerProps","props","columnSizingInfo","deltaOffset","MRT_TableHeadRow","headerGroup","muiTableHeadRowProps","mTableHeadRowProps","tableRowProps","getHeaderGroupProps","TableRow","headers","MRT_TableHead","getCenterHeaderGroups","getHeaderGroups","getLeftHeaderGroups","getRightHeaderGroups","muiTableHeadProps","tableHeadProps","getHeaderGroupsMap","center","none","TableHead","MRT_EditCellTextField","cell","muiTableBodyCellEditTextFieldProps","onCellEditBlur","onCellEditChange","setCurrentEditingCell","setValue","handleBlur","mTableBodyCellEditTextFieldProps","mcTableBodyCellEditTextFieldProps","Edit","onBlur","MRT_CopyButton","children","muiTableBodyCellCopyButtonProps","copied","setCopied","handleCopy","navigator","clipboard","writeText","mTableBodyCellCopyButtonProps","mcTableBodyCellCopyButtonProps","buttonProps","border","fontFamily","letterSpacing","textAlign","textTransform","MRT_TableBodyCell","editingMode","enableClickToCopy","muiTableBodyCellProps","muiTableBodyCellSkeletonProps","onCellClick","currentEditingCell","mTableCellBodyProps","mcTableCellBodyProps","getCellProps","skeletonWidth","Math","random","isEditable","isEditing","handleDoubleClick","_event","textField","Skeleton","animation","Cell","getIsPlaceholder","groupingColumnId","getIsAggregated","renderAggregatedCell","renderCell","subRows","MRT_TableDetailPanel","getVisibleFlatColumns","muiTableBodyRowProps","muiTableDetailPanelProps","onDetailPanelClick","colSpan","borderBottom","MRT_TableBodyRow","onRowClick","getCenterVisibleCells","getIsSelected","getLeftVisibleCells","getRightVisibleCells","getRowProps","getVisibleCells","mTableBodyRowProps","getVisibleCellsMap","hover","MRT_TableBody","getPaginationRowModel","getTableBodyProps","muiTableBodyProps","mTableBodyProps","tableBodyProps","TableBody","MRT_TableFooterCell","footer","muiTableFooterCellProps","mTableFooterCellProps","mcTableFooterCellProps","getFooterProps","Footer","MRT_TableFooterRow","footerGroup","muiTableFooterRowProps","h","columnDef","mTableFooterRowProps","getFooterGroupProps","MRT_TableFooter","getCenterFooterGroups","getFooterGroups","getLeftFooterGroups","getRightFooterGroups","muiTableFooterProps","tableFooterProps","getFooterGroupsMap","TableFooter","MRT_Table","getTableProps","enableStickyHeader","enableTableFooter","enableTableHead","muiTableProps","mTableProps","tableProps","Table","stickyHeader","commonBoxStyles","overflowX","MRT_TableContainer","getCenterTableWidth","getLeftTableWidth","getRightTableWidth","muiTableContainerProps","totalToolbarHeight","setTotalToolbarHeight","tableContainerProps","useEffect","topToolbarHeight","offsetHeight","bottomToolbarHeight","isSomeColumnsPinnedLeft","getLeftFlatHeaders","isSomeColumnsPinnedRight","getRightFlatHeaders","TableContainer","maxHeight","gridTemplateColumns","getCenterFlatHeaders","MRT_TablePaper","enableToolbarBottom","enableToolbarTop","muiTablePaperProps","window","body","tablePaperProps","Paper","elevation","padding","getAllLeafColumnDefs","lowestLevelColumns","currentCols","nextCols","flat","every","createGroup","table","createDataColumn","createDisplayColumn","MRT_TableRoot","setIdPrefix","substring","initialState","enablePersistentState","process","env","NODE_ENV","console","error","storedState","persistentStateMode","localStorage","getItem","sessionStorage","parsedState","JSON","parse","pageCount","setPagination","assign","globalFilterFn","createTable","displayColumns","enableRowActions","enableExpanded","enableExpandAll","enableRowSelection","enableSelectAll","enableRowNumbers","Boolean","createColumns","data","fill","useTableInstance","filterFns","getColumnFilteredRowModel","getColumnFilteredRowModelSync","getCoreRowModel","getCoreRowModelSync","getExpandedRowModel","getGlobalFilteredRowModel","getGlobalFilteredRowModelSync","getGroupedRowModel","getGroupedRowModelSync","getSortedRowModel","getSortedRowModelSync","getSubRows","originalRow","onPaginationChange","updater","functionalUpdate","state","warn","itemArgs","stringify","setItem","Dialog","PaperComponent","TransitionComponent","Grow","disablePortal","fullScreen","keepMounted","transitionDuration","autoResetExpanded","autoResetSorting","columnResizeMode","enableMultiRowSelection","positionActionsColumn"],"mappings":"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"}
|