material-react-table 0.7.0-alpha.9 → 0.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -3
- package/dist/MaterialReactTable.d.ts +42 -23
- package/dist/buttons/{MRT_ToggleSearchButton.d.ts → MRT_ToggleGlobalFilterButton.d.ts} +1 -1
- package/dist/localization.d.ts +3 -0
- package/dist/material-react-table.cjs.development.js +134 -106
- 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 +136 -108
- package/dist/material-react-table.esm.js.map +1 -1
- package/dist/utils.d.ts +1 -1
- package/package.json +5 -5
- package/src/MaterialReactTable.tsx +69 -33
- package/src/body/MRT_TableBodyCell.tsx +2 -2
- package/src/buttons/MRT_EditActionButtons.tsx +1 -1
- package/src/buttons/MRT_FullScreenToggleButton.tsx +13 -4
- package/src/buttons/MRT_ShowHideColumnsButton.tsx +0 -1
- package/src/buttons/MRT_ToggleDensePaddingButton.tsx +13 -4
- package/src/buttons/MRT_ToggleFiltersButton.tsx +13 -4
- package/src/buttons/{MRT_ToggleSearchButton.tsx → MRT_ToggleGlobalFilterButton.tsx} +14 -8
- package/src/buttons/MRT_ToggleRowActionMenuButton.tsx +1 -1
- package/src/head/MRT_TableHeadCell.tsx +7 -8
- package/src/inputs/MRT_EditCellTextField.tsx +2 -5
- package/src/inputs/MRT_FilterTextField.tsx +2 -2
- package/src/inputs/MRT_SearchTextField.tsx +6 -6
- package/src/localization.ts +6 -0
- package/src/menus/MRT_ColumnActionMenu.tsx +4 -4
- package/src/menus/MRT_FilterTypeMenu.tsx +3 -6
- package/src/menus/MRT_ShowHideColumnsMenuItems.tsx +2 -2
- package/src/table/MRT_TableContainer.tsx +4 -4
- package/src/table/MRT_TableRoot.tsx +60 -56
- package/src/toolbar/MRT_ToolbarInternalButtons.tsx +8 -9
|
@@ -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_FilterTypeMenu.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_ToggleSearchButton.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 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 thenBy: string;\n toggleDensePadding: string;\n toggleFullScreen: string;\n toggleSelectAll: string;\n toggleSelectRow: string;\n ungroupByColumn: string;\n unpin: 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 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 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};\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 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 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 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_TYPE {\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_FilterType, MRT_Header, MRT_TableInstance } from '..';\nimport { MRT_FILTER_TYPE } 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_FilterTypeMenu: FC<Props> = ({\n anchorEl,\n header,\n onSelect,\n setAnchorEl,\n tableInstance,\n}) => {\n const {\n getState,\n options: {\n enabledGlobalFilterTypes,\n localization,\n setCurrentFilterTypes,\n setCurrentGlobalFilterType,\n },\n } = tableInstance;\n\n const { isDensePadding, currentFilterTypes, currentGlobalFilterType } =\n getState();\n\n const filterTypes: {\n type: MRT_FILTER_TYPE;\n label: string;\n divider: boolean;\n fn: Function;\n }[] = useMemo(\n () =>\n [\n {\n type: MRT_FILTER_TYPE.BEST_MATCH_FIRST,\n label: localization.filterBestMatchFirst,\n divider: false,\n fn: bestMatchFirst,\n },\n {\n type: MRT_FILTER_TYPE.BEST_MATCH,\n label: localization.filterBestMatch,\n divider: !!header,\n fn: bestMatch,\n },\n {\n type: MRT_FILTER_TYPE.CONTAINS,\n label: localization.filterContains,\n divider: false,\n fn: contains,\n },\n {\n type: MRT_FILTER_TYPE.STARTS_WITH,\n label: localization.filterStartsWith,\n divider: false,\n fn: startsWith,\n },\n {\n type: MRT_FILTER_TYPE.ENDS_WITH,\n label: localization.filterEndsWith,\n divider: true,\n fn: endsWith,\n },\n {\n type: MRT_FILTER_TYPE.EQUALS,\n label: localization.filterEquals,\n divider: false,\n fn: equals,\n },\n {\n type: MRT_FILTER_TYPE.NOT_EQUALS,\n label: localization.filterNotEquals,\n divider: true,\n fn: notEquals,\n },\n {\n type: MRT_FILTER_TYPE.GREATER_THAN,\n label: localization.filterGreaterThan,\n divider: false,\n fn: greaterThan,\n },\n {\n type: MRT_FILTER_TYPE.LESS_THAN,\n label: localization.filterLessThan,\n divider: true,\n fn: lessThan,\n },\n {\n type: MRT_FILTER_TYPE.EMPTY,\n label: localization.filterEmpty,\n divider: false,\n fn: empty,\n },\n {\n type: MRT_FILTER_TYPE.NOT_EMPTY,\n label: localization.filterNotEmpty,\n divider: false,\n fn: notEmpty,\n },\n ].filter((filterType) =>\n header\n ? !header.column.enabledFilterTypes ||\n header.column.enabledFilterTypes.includes(filterType.type)\n : (!enabledGlobalFilterTypes ||\n enabledGlobalFilterTypes.includes(filterType.type)) &&\n [\n MRT_FILTER_TYPE.BEST_MATCH_FIRST,\n MRT_FILTER_TYPE.BEST_MATCH,\n ].includes(filterType.type),\n ),\n [],\n );\n\n const handleSelectFilterType = (value: MRT_FILTER_TYPE) => {\n if (header) {\n setCurrentFilterTypes((prev: { [key: string]: MRT_FilterType }) => ({\n ...prev,\n [header.id]: value,\n }));\n if ([MRT_FILTER_TYPE.EMPTY, MRT_FILTER_TYPE.NOT_EMPTY].includes(value)) {\n header.column.setColumnFilterValue(' ');\n }\n } else {\n setCurrentGlobalFilterType(value);\n }\n setAnchorEl(null);\n onSelect?.();\n };\n\n const filterType = !!header\n ? currentFilterTypes[header.id]\n : currentGlobalFilterType;\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 {filterTypes.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_ColumnInstance, MRT_TableInstance } from '..';\nimport { commonMenuItemStyles } from './MRT_ColumnActionMenu';\n\ninterface Props {\n column: MRT_ColumnInstance;\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: { onColumnHide },\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_ColumnInstance) => {\n if (column.columnDefType === 'group') {\n column?.columns?.forEach?.((childColumn: MRT_ColumnInstance) => {\n childColumn.toggleVisibility(!switchChecked);\n });\n } else {\n column.toggleVisibility();\n }\n onColumnHide?.({\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_ColumnInstance, 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_FilterTypeMenu } from './MRT_FilterTypeMenu';\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 enableColumnPinning,\n enableGrouping,\n enableHiding,\n enableSorting,\n icons: {\n ArrowRightIcon,\n ClearAllIcon,\n ViewColumnIcon,\n DynamicFeedIcon,\n FilterListIcon,\n FilterListOffIcon,\n PushPinIcon,\n SortIcon,\n VisibilityOffIcon,\n },\n idPrefix,\n localization,\n setShowFilters,\n },\n } = tableInstance;\n\n const { column } = header;\n\n const { isDensePadding, columnVisibility } = 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 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_FilterTypeMenu\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={enableColumnPinning}\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 {enableColumnPinning &&\n column.getCanPin() && [\n <MenuItem\n disabled={column.getIsPinned() === 'left'}\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'}\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 {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 setCurrentEditingRow,\n },\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 setCurrentEditingRow,\n },\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_FilterTypeMenu } from '../menus/MRT_FilterTypeMenu';\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 onGlobalFilterChange,\n },\n } = tableInstance;\n\n const { globalFilter, showSearch } = 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 onGlobalFilterChange?.({ 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={showSearch} 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 fontSize=\"small\" />\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 fontSize=\"small\" />\n </IconButton>\n </InputAdornment>\n ),\n }}\n {...textFieldProps}\n sx={{ justifySelf: 'end', ...textFieldProps?.sx }}\n />\n <MRT_FilterTypeMenu\n anchorEl={anchorEl}\n setAnchorEl={setAnchorEl}\n tableInstance={tableInstance}\n />\n </Collapse>\n );\n};\n","import React, { FC } 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 setIsFullScreen,\n },\n } = tableInstance;\n\n const { isFullScreen } = getState();\n\n return (\n <Tooltip arrow title={localization.toggleFullScreen}>\n <IconButton\n aria-label={localization.showHideFilters}\n onClick={() => setIsFullScreen(!isFullScreen)}\n size=\"small\"\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 size=\"small\"\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 } 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 setIsDensePadding,\n },\n } = tableInstance;\n\n const { isDensePadding } = getState();\n\n return (\n <Tooltip arrow title={localization.toggleDensePadding}>\n <IconButton\n aria-label={localization.toggleDensePadding}\n onClick={() => setIsDensePadding(!isDensePadding)}\n size=\"small\"\n {...rest}\n >\n {isDensePadding ? <DensitySmallIcon /> : <DensityMediumIcon />}\n </IconButton>\n </Tooltip>\n );\n};\n","import React, { FC } 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 setShowFilters,\n },\n } = tableInstance;\n\n const { showFilters } = getState();\n\n return (\n <Tooltip arrow title={localization.showHideFilters}>\n <IconButton\n aria-label={localization.showHideFilters}\n onClick={() => setShowFilters(!showFilters)}\n size=\"small\"\n {...rest}\n >\n {showFilters ? <FilterListOffIcon /> : <FilterListIcon />}\n </IconButton>\n </Tooltip>\n );\n};\n","import React, { FC } 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_ToggleSearchButton: FC<Props> = ({\n tableInstance,\n ...rest\n}) => {\n const {\n getState,\n options: {\n icons: { SearchIcon, SearchOffIcon },\n idPrefix,\n localization,\n muiSearchTextFieldProps,\n setShowSearch,\n },\n } = tableInstance;\n\n const { showSearch } = getState();\n\n const textFieldProps =\n muiSearchTextFieldProps instanceof Function\n ? muiSearchTextFieldProps({ tableInstance })\n : muiSearchTextFieldProps;\n\n const handleToggleSearch = () => {\n setShowSearch(!showSearch);\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 size=\"small\" onClick={handleToggleSearch} {...rest}>\n {showSearch ? <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_ToggleSearchButton } from '../buttons/MRT_ToggleSearchButton';\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 enableHiding,\n enableDensePaddingToggle,\n enableGlobalFilter,\n enableFullScreenToggle,\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_ToggleSearchButton,\n tableInstance,\n })}\n </>\n );\n }\n\n return (\n <Box\n sx={{\n display: 'flex',\n gap: '0.5rem',\n alignItems: 'center',\n p: '0 0.5rem',\n }}\n >\n {enableGlobalFilter && (\n <MRT_ToggleSearchButton tableInstance={tableInstance} />\n )}\n {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 hideToolbarInternalActions,\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 {!hideToolbarInternalActions && 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 hideToolbarInternalActions,\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 {!hideToolbarInternalActions && 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_FilterTypeMenu } from '../menus/MRT_FilterTypeMenu';\nimport { MRT_FILTER_TYPE } 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 setCurrentFilterTypes,\n },\n } = tableInstance;\n\n const { column } = header;\n\n const { currentFilterTypes } = 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 setCurrentFilterTypes((prev) => ({\n ...prev,\n [header.id]: MRT_FILTER_TYPE.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 filterType = currentFilterTypes?.[header.id];\n const isSelectFilter = !!column.filterSelectOptions;\n const filterChipLabel =\n !(filterType instanceof Function) &&\n [MRT_FILTER_TYPE.EMPTY, MRT_FILTER_TYPE.NOT_EMPTY].includes(\n filterType as MRT_FILTER_TYPE,\n )\n ? //@ts-ignore\n localization[\n `filter${filterType.charAt(0).toUpperCase() + filterType.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 {filterType instanceof Function\n ? localization.filterMode.replace(\n '{filterType}',\n // @ts-ignore\n localization[\n `filter${\n filterType.name.charAt(0).toUpperCase() +\n filterType.name.slice(1)\n }`\n ] ?? '',\n ) ?? ''\n : localization.filterMode.replace(\n '{filterType}',\n // @ts-ignore\n localization[\n `filter${\n filterType.charAt(0).toUpperCase() + filterType.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 fontSize=\"small\" />\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_FilterTypeMenu\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 setShowFilters,\n },\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.clearSort\n : localization.sortByColumnDesc.replace('{column}', column.header)\n : localization.sortByColumnAsc.replace('{column}', column.header);\n\n const filterType = getState()?.currentFilterTypes?.[header.id];\n\n const filterTooltip = !!column.getColumnFilterValue()\n ? localization.filteringByColumn\n .replace('{column}', String(column.header))\n .replace(\n '{filterType}',\n filterType instanceof Function\n ? ''\n : // @ts-ignore\n localization[\n `filter${\n filterType.charAt(0).toUpperCase() + filterType.slice(1)\n }`\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 boxShadow: `3px 0 6px ${alpha(theme.palette.common.black, 0.1)}`,\n fontWeight: 'bold',\n height: '100%',\n minWidth: `max(${header.getWidth()}, 100px)`,\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 transition: `all ${enableColumnResizing ? 0 : '0.2s'} ease-in-out`,\n verticalAlign: 'text-top',\n width: header.getWidth(),\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 {...column.getToggleSortingProps()}\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 < 15 ? 'nowrap' : 'normal',\n }}\n title={undefined}\n >\n {headerElement}\n {column.columnDefType !== 'group' && 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 !== 'group' &&\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 fontSize=\"small\" />\n ) : (\n <FilterAltIcon fontSize=\"small\" />\n )}\n </IconButton>\n </Tooltip>\n )}\n </Box>\n <Box\n sx={{ alignItems: 'center', display: 'flex', flexWrap: 'nowrap' }}\n >\n {(enableColumnActions || column.enableColumnActions) &&\n column.enableColumnActions !== false &&\n column.columnDefType !== 'group' && (\n <MRT_ToggleColumnActionMenuButton\n header={header}\n tableInstance={tableInstance}\n />\n )}\n {enableColumnResizing && column.columnDefType !== 'group' && (\n <Divider\n flexItem\n orientation=\"vertical\"\n onDoubleClick={() => header.resetSize()}\n sx={(theme: Theme) => ({\n borderRightWidth: '2px',\n borderRadius: '2px',\n maxHeight: '2rem',\n cursor: 'col-resize',\n userSelect: 'none',\n touchAction: 'none',\n '&:active': {\n backgroundColor: theme.palette.secondary.dark,\n opacity: 1,\n },\n })}\n {...(header.getResizerProps((props: ColumnResizerProps) => ({\n ...props,\n style: {\n transform: column.getIsResizing()\n ? `translateX(${\n getState().columnSizingInfo.deltaOffset\n }px)`\n : '',\n },\n })) as any)}\n />\n )}\n </Box>\n </Box>\n )}\n {column.columnDefType === 'data' &&\n enableColumnFilters &&\n column.getCanColumnFilter() && (\n <Collapse in={showFilters}>\n <MRT_FilterTextField\n header={header}\n tableInstance={tableInstance}\n />\n </Collapse>\n )}\n </TableCell>\n );\n};\n","import React, { FC } from 'react';\nimport { 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 {...tableRowProps}>\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 enableEditing,\n muiTableBodyCellEditTextFieldProps,\n setCurrentEditingRow,\n },\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 };\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 column.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 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 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 enableClickToCopy,\n enableColumnPinning,\n enableEditing,\n isLoading,\n muiTableBodyCellProps,\n muiTableBodyCellSkeletonProps,\n onCellClick,\n },\n } = tableInstance;\n\n const { 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 return (\n <TableCell\n onClick={(event: MouseEvent<HTMLTableCellElement>) =>\n onCellClick?.({ event, cell, tableInstance })\n }\n {...tableCellProps}\n sx={{\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 || (enableColumnPinning && getIsSomeColumnsPinned())\n ? 'nowrap'\n : 'normal',\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 ) : enableEditing &&\n column.enableEditing !== false &&\n currentEditingRow?.id === row.id ? (\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 p: isDensePadding ? '0.5rem' : '1rem',\n transition: `all ${enableColumnResizing ? '10ms' : '0.2s'} ease-in-out`,\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 hideTableFooter,\n hideTableHead,\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 {!hideTableHead && (\n <MRT_TableHead pinned={pinned} tableInstance={tableInstance} />\n )}\n <MRT_TableBody pinned={pinned} tableInstance={tableInstance} />\n {!hideTableFooter && (\n <MRT_TableFooter pinned={pinned} tableInstance={tableInstance} />\n )}\n </Table>\n );\n};\n","import React, { FC, useLayoutEffect, useState } from 'react';\nimport { alpha, Box, TableContainer, Theme } from '@mui/material';\nimport { SystemStyleObject } from '@mui/material/node_modules/@mui/system';\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}): SystemStyleObject<Theme> => ({\n display: 'grid',\n minWidth: visible ? '200px' : 0,\n overflowX: '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 enableColumnPinning,\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 useLayoutEffect(() => {\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 {enableColumnPinning && 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: { hideToolbarBottom, hideToolbarTop, 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 } else {\n document.body.style.overflow = '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 ? '100%' : undefined,\n left: isFullScreen ? '0' : undefined,\n margin: isFullScreen ? '0' : undefined,\n maxHeight: isFullScreen ? '100%' : undefined,\n maxWidth: isFullScreen ? '100%' : undefined,\n overflowY: !isFullScreen ? 'hidden' : undefined,\n position: isFullScreen ? 'fixed' : undefined,\n right: isFullScreen ? '0' : undefined,\n top: isFullScreen ? '0' : undefined,\n width: isFullScreen ? '100vw' : undefined,\n zIndex: isFullScreen ? 1200 : 1,\n bottom: isFullScreen ? '0' : undefined,\n }}\n >\n {!hideToolbarTop && <MRT_ToolbarTop tableInstance={tableInstance} />}\n <MRT_TableContainer tableInstance={tableInstance} />\n {!hideToolbarBottom && (\n <MRT_ToolbarBottom tableInstance={tableInstance} />\n )}\n </Paper>\n );\n};\n","import { ColumnDef, Table } from '@tanstack/react-table';\nimport { MRT_ColumnInterface, MRT_FilterType } from '.';\nimport { MRT_FILTER_TYPE } from './enums';\n\nexport const getAllLeafColumnDefs = (\n columns: MRT_ColumnInterface[],\n): MRT_ColumnInterface[] => {\n let lowestLevelColumns: MRT_ColumnInterface[] = columns;\n let currentCols: MRT_ColumnInterface[] | undefined = columns;\n while (!!currentCols?.length && currentCols.some((col) => col.columns)) {\n const nextCols: MRT_ColumnInterface[] = currentCols\n .filter((col) => !!col.columns)\n .map((col) => col.columns)\n .flat() as MRT_ColumnInterface[];\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_ColumnInterface<D>,\n currentFilterTypes: { [key: string]: MRT_FilterType },\n): ColumnDef<D> =>\n table.createGroup({\n ...column,\n columns: column?.columns?.map?.((col) =>\n col.columns\n ? createGroup<D>(table, col, currentFilterTypes)\n : createDataColumn(table, col, currentFilterTypes),\n ),\n } as any);\n\nexport const createDataColumn = <D extends Record<string, any> = {}>(\n table: Table<D>,\n column: MRT_ColumnInterface<D>,\n currentFilterTypes: { [key: string]: MRT_FilterType },\n): ColumnDef<D> => // @ts-ignore\n table.createDataColumn(column.id, {\n filterType: currentFilterTypes[column.id] || MRT_FILTER_TYPE.BEST_MATCH,\n ...column,\n }) as any;\n\nexport const createDisplayColumn = <D extends Record<string, any> = {}>(\n table: Table<D>,\n column: Omit<MRT_ColumnInterface<D>, 'header'> & { header?: string },\n): ColumnDef<D> => table.createDisplayColumn(column);\n","import {\n columnFilterRowsFn,\n createTable,\n expandRowsFn,\n functionalUpdate,\n globalFilterRowsFn,\n groupRowsFn,\n paginateRowsFn,\n PaginationState,\n sortRowsFn,\n Table,\n useTable,\n} from '@tanstack/react-table';\nimport React, { useMemo, useState } from 'react';\nimport {\n MRT_ColumnInterface,\n MRT_FilterType,\n MRT_Row,\n MRT_TableInstance,\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_TYPE } from '../enums';\n\nexport const MRT_TableRoot = <D extends Record<string, any> = {}>(\n props: MaterialReactTableProps<D>,\n) => {\n const idPrefix = useMemo(\n () => props.idPrefix ?? Math.random().toString(36).substring(2, 9),\n [props.idPrefix],\n );\n const [currentEditingRow, setCurrentEditingRow] = useState<MRT_Row | null>(\n null,\n );\n const [isDensePadding, setIsDensePadding] = useState(\n props.initialState?.isDensePadding ?? false,\n );\n const [isFullScreen, setIsFullScreen] = useState(\n props.initialState?.isFullScreen ?? false,\n );\n const [showFilters, setShowFilters] = useState(\n props.initialState?.showFilters ?? false,\n );\n const [showSearch, setShowSearch] = useState(\n props.initialState?.showSearch ?? false,\n );\n\n const [pagination, setPagination] = useState<PaginationState>({\n pageIndex: props.initialState?.pagination?.pageIndex ?? 0,\n pageSize: props.initialState?.pagination?.pageSize ?? 10,\n pageCount: props.initialState?.pagination?.pageCount ?? -1,\n });\n\n const [currentFilterTypes, setCurrentFilterTypes] = useState<{\n [key: string]: MRT_FilterType;\n }>(() =>\n Object.assign(\n {},\n ...getAllLeafColumnDefs(props.columns as MRT_ColumnInterface[]).map(\n (c) => ({\n [c.id as string]:\n c.filter ??\n props?.initialState?.columnFilters?.[c.id as any] ??\n (!!c.filterSelectOptions?.length\n ? MRT_FILTER_TYPE.EQUALS\n : MRT_FILTER_TYPE.BEST_MATCH),\n }),\n ),\n ),\n );\n\n const [currentGlobalFilterType, setCurrentGlobalFilterType] = useState(\n props.globalFilterType ?? MRT_FILTER_TYPE.BEST_MATCH_FIRST,\n );\n\n const table = useMemo(\n () => createTable<{ Row: D }>(),\n [],\n ) as unknown as Table<D>;\n\n const displayColumns = useMemo(\n () =>\n [\n (props.enableRowActions || props.enableEditing) &&\n createDisplayColumn(table, {\n Cell: ({ cell }) => (\n <MRT_ToggleRowActionMenuButton\n row={cell.row as any}\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 any}\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 any}\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 table,\n props.enableExpandAll,\n props.enableExpanded,\n props.enableRowActions,\n props.enableGrouping,\n props.enableEditing,\n props.enableRowNumbers,\n props.enableRowSelection,\n props.enableSelectAll,\n props.localization,\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, currentFilterTypes)\n : createDataColumn(table, column, currentFilterTypes),\n ),\n ] as any),\n [table, props.columns, currentFilterTypes],\n );\n\n const data = useMemo(\n () =>\n props.isLoading && !props.data.length\n ? [...Array(10).fill(null)].map((_) =>\n Object.assign(\n {},\n ...getAllLeafColumnDefs(\n props.columns as MRT_ColumnInterface[],\n ).map((c) => ({\n [c.id]: null,\n })),\n ),\n )\n : props.data,\n [props.data, props.isLoading],\n );\n\n //@ts-ignore\n const tableInstance: MRT_TableInstance<{}> = useTable(table, {\n ...props,\n columnFilterRowsFn: columnFilterRowsFn,\n columns,\n data,\n debugAll: false,\n expandRowsFn: expandRowsFn,\n //@ts-ignore\n filterTypes: defaultFilterFNs,\n getSubRows: props.getSubRows ?? ((originalRow: D) => originalRow.subRows),\n globalFilterRowsFn: globalFilterRowsFn,\n globalFilterType: currentGlobalFilterType,\n groupRowsFn: groupRowsFn,\n idPrefix,\n onPaginationChange: (updater: any) =>\n setPagination((old) => functionalUpdate(updater, old)),\n paginateRowsFn: paginateRowsFn,\n setCurrentEditingRow,\n setCurrentFilterTypes,\n setCurrentGlobalFilterType,\n setIsDensePadding,\n setIsFullScreen,\n setShowFilters,\n setShowSearch,\n sortRowsFn,\n state: {\n ...props.initialState,\n currentEditingRow,\n currentFilterTypes,\n currentGlobalFilterType,\n isDensePadding,\n isFullScreen,\n //@ts-ignore\n pagination,\n showFilters,\n showSearch,\n ...props.state,\n },\n });\n\n return <MRT_TablePaper tableInstance={tableInstance} />;\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 FilterType,\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_TYPE } from './enums';\nimport { MRT_TableRoot } from './table/MRT_TableRoot';\n\n//@ts-ignore\nglobal.performance = global.performance || {\n now: () => new Date().getTime(),\n};\n\nexport type MRT_TableOptions<D extends Record<string, any> = {}> = Partial<\n Omit<\n Options<D>,\n 'columns' | 'data' | 'initialState' | 'state' | 'expandRowsFn'\n >\n> & {\n columns: MRT_ColumnInterface<D>[];\n data: D[];\n initialState?: Partial<MRT_TableState<D>>;\n state?: Partial<MRT_TableState<D>>;\n expandRowsFn?: (dataRow: D) => 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_ColumnInstance<D>[];\n getAllLeafColumns: () => MRT_ColumnInstance<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 filterTypes: { [key in MRT_FILTER_TYPE]: any };\n localization: MRT_Localization;\n setCurrentEditingRow: Dispatch<SetStateAction<MRT_Row<D> | null>>;\n setCurrentFilterTypes: Dispatch<\n SetStateAction<{\n [key: string]: MRT_FilterType;\n }>\n >;\n setCurrentGlobalFilterType: Dispatch<SetStateAction<MRT_FILTER_TYPE>>;\n setIsDensePadding: Dispatch<SetStateAction<boolean>>;\n setIsFullScreen: Dispatch<SetStateAction<boolean>>;\n setShowFilters: Dispatch<SetStateAction<boolean>>;\n setShowSearch: Dispatch<SetStateAction<boolean>>;\n };\n};\n\nexport type MRT_TableState<D extends Record<string, any> = {}> = Omit<\n TableState,\n 'pagination'\n> & {\n currentEditingRow: MRT_Row<D> | null;\n currentFilterTypes: Record<string, string | Function>;\n currentGlobalFilterType: Record<string, string | Function>;\n isDensePadding: boolean;\n isFullScreen: boolean;\n showFilters: boolean;\n showSearch: boolean;\n pagination: Partial<PaginationState>;\n};\n\nexport type MRT_ColumnInterface<D extends Record<string, any> = {}> = Omit<\n ColumnDef<D>,\n 'header' | 'footer' | 'columns'\n> & {\n Edit?: ({\n cell,\n tableInstance,\n }: // onChange,\n {\n cell: MRT_Cell<D>;\n tableInstance: MRT_TableInstance<D>;\n // onChange?: (event: ChangeEvent<HTMLInputElement>) => void;\n }) => ReactNode;\n Filter?: ({\n // onChange,\n header,\n tableInstance,\n }: {\n // onChange?: (event: ChangeEvent<HTMLInputElement>) => void;\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_ColumnInterface<D>[];\n enableClickToCopy?: boolean;\n enableColumnActions?: boolean;\n enableEditing?: boolean;\n enabledFilterTypes?: (MRT_FILTER_TYPE | string)[];\n filter?: MRT_FilterType | string | FilterType<D>;\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_ColumnInstance<D>;\n }) => TableCellProps);\n muiTableHeadCellColumnActionsButtonProps?:\n | IconButtonProps\n | (({\n tableInstance,\n column,\n }: {\n tableInstance: MRT_TableInstance;\n column: MRT_ColumnInstance<D>;\n }) => IconButtonProps);\n muiTableHeadCellFilterTextFieldProps?:\n | TextFieldProps\n | (({\n tableInstance,\n column,\n }: {\n tableInstance: MRT_TableInstance;\n column: MRT_ColumnInstance<D>;\n }) => TextFieldProps);\n muiTableHeadCellProps?:\n | TableCellProps\n | (({\n tableInstance,\n column,\n }: {\n tableInstance: MRT_TableInstance;\n column: MRT_ColumnInstance<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 event,\n filterValue,\n }: {\n event: ChangeEvent<HTMLInputElement>;\n filterValue: any;\n }) => void;\n};\n\nexport type MRT_ColumnInstance<D extends Record<string, any> = {}> = Omit<\n Column<D>,\n 'header' | 'footer' | 'columns'\n> &\n MRT_ColumnInterface<D> & {\n columns?: MRT_ColumnInstance<D>[];\n };\n\nexport type MRT_Header<D extends Record<string, any> = {}> = Omit<\n Header<D>,\n 'column'\n> & {\n column: MRT_ColumnInstance<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_ColumnInstance<D>;\n row: MRT_Row<D>;\n};\n\nexport type MRT_FilterType = MRT_FILTER_TYPE | Function;\n\nexport type MaterialReactTableProps<D extends Record<string, any> = {}> =\n MRT_TableOptions<D> & {\n enableClickToCopy?: boolean;\n enableColumnActions?: boolean;\n enableColumnPinning?: boolean;\n enableDensePaddingToggle?: boolean;\n enableExpandAll?: boolean;\n enableFullScreenToggle?: boolean;\n enablePagination?: boolean;\n enableRowActions?: boolean;\n enableStickyHeader?: boolean;\n enableEditing?: boolean;\n enableRowNumbers?: boolean;\n enableSelectAll?: boolean;\n enabledGlobalFilterTypes?: (MRT_FILTER_TYPE | string)[];\n filterTypes?: { [key in MRT_FILTER_TYPE]: any };\n hideTableFooter?: boolean;\n hideTableHead?: boolean;\n hideToolbarBottom?: boolean;\n hideToolbarInternalActions?: boolean;\n hideToolbarTop?: boolean;\n icons?: Partial<MRT_Icons>;\n idPrefix?: string;\n isReloading?: boolean;\n isLoading?: 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_ColumnInstance<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_ColumnInstance<D>;\n }) => IconButtonProps);\n muiTableHeadCellFilterTextFieldProps?:\n | TextFieldProps\n | (({\n tableInstance,\n column,\n }: {\n tableInstance: MRT_TableInstance;\n column: MRT_ColumnInstance<D>;\n }) => TextFieldProps);\n muiTableHeadCellProps?:\n | TableCellProps\n | (({\n tableInstance,\n column,\n }: {\n tableInstance: MRT_TableInstance;\n column: MRT_ColumnInstance<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 onColumnHide?: ({\n column,\n columnVisibility,\n tableInstance,\n }: {\n column: MRT_ColumnInstance<D>;\n columnVisibility: VisibilityState;\n tableInstance: MRT_TableInstance<D>;\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 onGlobalFilterChange?: ({\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 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_ToggleSearchButton,\n MRT_ToggleFiltersButton,\n MRT_ShowHideColumnsButton,\n MRT_ToggleDensePaddingButton,\n MRT_FullScreenToggleButton,\n }: {\n tableInstance: MRT_TableInstance<D>;\n MRT_ToggleSearchButton: 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 enableColumnActions = true,\n enableColumnFilters = true,\n enableDensePaddingToggle = true,\n enableExpandAll = true,\n enableFullScreenToggle = true,\n enableGlobalFilter = true,\n enableHiding = true,\n enablePagination = true,\n enableSelectAll = true,\n enableSorting = true,\n enableStickyHeader = true,\n icons,\n localization,\n positionActionsColumn = 'first',\n positionPagination = 'bottom',\n positionToolbarActions = 'top',\n positionToolbarAlertBanner = 'top',\n ...rest\n}: MaterialReactTableProps<D>) => (\n <MRT_TableRoot\n enableColumnActions={enableColumnActions}\n enableColumnFilters={enableColumnFilters}\n enableDensePaddingToggle={enableDensePaddingToggle}\n enableExpandAll={enableExpandAll}\n enableFullScreenToggle={enableFullScreenToggle}\n enableGlobalFilter={enableGlobalFilter}\n enableHiding={enableHiding}\n enablePagination={enablePagination}\n enableSelectAll={enableSelectAll}\n enableSorting={enableSorting}\n enableStickyHeader={enableStickyHeader}\n icons={{ ...MRT_Default_Icons, ...icons }}\n localization={{ ...MRT_DefaultLocalization_EN, ...localization }}\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","rowActions","rowNumber","rowNumbers","save","search","selectedCountOfRowCountRowsSelected","select","showAll","showAllColumns","showHideColumns","showHideFilters","showHideSearch","sortByColumnAsc","sortByColumnDesc","thenBy","toggleDensePadding","toggleFullScreen","toggleSelectAll","toggleSelectRow","ungroupByColumn","unpin","MRT_Default_Icons","ArrowRightIcon","CancelIcon","CheckBoxIcon","ClearAllIcon","CloseIcon","DensityMediumIcon","DensitySmallIcon","DoubleArrowDownIcon","DynamicFeedIcon","EditIcon","ExpandLessIcon","ExpandMoreIcon","FilterAltIcon","FilterAltOff","FilterListIcon","FilterListOffIcon","FullscreenExitIcon","FullscreenIcon","MoreHorizIcon","MoreVertIcon","PushPinIcon","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_TYPE","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_FilterTypeMenu","anchorEl","header","onSelect","setAnchorEl","enabledGlobalFilterTypes","setCurrentFilterTypes","setCurrentGlobalFilterType","currentFilterTypes","currentGlobalFilterType","filterTypes","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","enabledFilterTypes","handleSelectFilterType","value","prev","setColumnFilterValue","Menu","anchorOrigin","vertical","horizontal","onClose","open","MenuListProps","dense","index","MenuItem","key","selected","MRT_ShowHideColumnsMenuItems","isSubMenu","onColumnHide","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","enableColumnPinning","enableGrouping","enableSorting","idPrefix","setShowFilters","useState","filterMenuAnchorEl","setFilterMenuAnchorEl","showHideColumnsMenuAnchorEl","setShowHideColumnsMenuAnchorEl","handleClearSort","resetSorting","handleSortAsc","toggleSorting","handleSortDesc","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","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","onGlobalFilterChange","globalFilter","showSearch","searchValue","setSearchValue","handleChange","useCallback","debounce","handleGlobalFilterMenuOpen","handleClear","textFieldProps","Collapse","orientation","TextField","placeholder","variant","InputProps","startAdornment","InputAdornment","position","fontSize","endAdornment","justifySelf","MRT_FullScreenToggleButton","rest","setIsFullScreen","isFullScreen","MRT_ShowHideColumnsButton","handleClick","MRT_ToggleDensePaddingButton","setIsDensePadding","MRT_ToggleFiltersButton","showFilters","MRT_ToggleSearchButton","setShowSearch","handleToggleSearch","MRT_ToolbarInternalButtons","enableDensePaddingToggle","enableGlobalFilter","enableFullScreenToggle","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","left","right","minHeight","top","MRT_LinearProgressBar","muiLinearProgressProps","isReloading","linearProgressProps","unmountOnExit","LinearProgress","commonToolbarStyles","theme","backgroundColor","palette","background","backgroundImage","alpha","common","white","MRT_ToolbarTop","enablePagination","hideToolbarInternalActions","muiTableToolbarTopProps","positionPagination","toolbarProps","Toolbar","MRT_ToolbarBottom","muiTableToolbarBottomProps","bottom","boxShadow","black","MRT_FilterTextField","mTableHeadCellFilterTextFieldProps","mcTableHeadCellFilterTextFieldProps","setFilterValue","handleFilterMenuOpen","handleClearFilterChip","Filter","filterId","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","enableColumnResizing","muiTableHeadCellProps","mTableHeadCellProps","mcTableHeadCellProps","tableCellProps","getHeaderProps","sortTooltip","filterTooltip","headerElement","Header","TableCell","align","fontWeight","getWidth","pb","verticalAlign","isPlaceholder","getToggleSortingProps","cursor","flexWrap","whiteSpace","TableSortLabel","active","direction","disableRipple","flexItem","onDoubleClick","resetSize","borderRightWidth","maxHeight","userSelect","touchAction","secondary","dark","getResizerProps","props","getIsResizing","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","setValue","onCellEditChange","handleBlur","onCellEditBlur","mTableBodyCellEditTextFieldProps","mcTableBodyCellEditTextFieldProps","Edit","onBlur","MRT_CopyButton","children","muiTableBodyCellCopyButtonProps","copied","setCopied","handleCopy","navigator","clipboard","writeText","mTableBodyCellCopyButtonProps","mcTableBodyCellCopyButtonProps","buttonProps","border","fontFamily","letterSpacing","textAlign","textTransform","MRT_TableBodyCell","enableClickToCopy","muiTableBodyCellProps","muiTableBodyCellSkeletonProps","onCellClick","mTableCellBodyProps","mcTableCellBodyProps","getCellProps","skeletonWidth","Math","random","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","hideTableFooter","hideTableHead","muiTableProps","mTableProps","tableProps","Table","stickyHeader","commonBoxStyles","overflowX","MRT_TableContainer","getCenterTableWidth","getLeftTableWidth","getRightTableWidth","muiTableContainerProps","totalToolbarHeight","setTotalToolbarHeight","tableContainerProps","useLayoutEffect","topToolbarHeight","offsetHeight","bottomToolbarHeight","TableContainer","maxWidth","overflow","gridTemplateColumns","MRT_TablePaper","hideToolbarBottom","hideToolbarTop","muiTablePaperProps","useEffect","window","body","tablePaperProps","Paper","elevation","overflowY","getAllLeafColumnDefs","lowestLevelColumns","currentCols","nextCols","flat","every","createGroup","table","createDataColumn","createDisplayColumn","MRT_TableRoot","substring","initialState","pageCount","setPagination","assign","columnFilters","globalFilterType","createTable","displayColumns","enableRowActions","enableExpanded","enableExpandAll","enableRowSelection","enableSelectAll","enableRowNumbers","Boolean","createColumns","data","fill","useTable","columnFilterRowsFn","debugAll","expandRowsFn","getSubRows","originalRow","globalFilterRowsFn","groupRowsFn","onPaginationChange","updater","functionalUpdate","paginateRowsFn","sortRowsFn","state","global","performance","now","Date","getTime","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_FilterTypeMenu.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 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 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 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 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 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_TYPE {\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_FilterType, MRT_Header, MRT_TableInstance } from '..';\nimport { MRT_FILTER_TYPE } 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_FilterTypeMenu: FC<Props> = ({\n anchorEl,\n header,\n onSelect,\n setAnchorEl,\n tableInstance,\n}) => {\n const {\n getState,\n options: { enabledGlobalFilterTypes, localization },\n setCurrentFilterTypes,\n setCurrentGlobalFilterType,\n } = tableInstance;\n\n const { isDensePadding, currentFilterTypes, currentGlobalFilterType } =\n getState();\n\n const filterTypes: {\n type: MRT_FILTER_TYPE;\n label: string;\n divider: boolean;\n fn: Function;\n }[] = useMemo(\n () =>\n [\n {\n type: MRT_FILTER_TYPE.BEST_MATCH_FIRST,\n label: localization.filterBestMatchFirst,\n divider: false,\n fn: bestMatchFirst,\n },\n {\n type: MRT_FILTER_TYPE.BEST_MATCH,\n label: localization.filterBestMatch,\n divider: !!header,\n fn: bestMatch,\n },\n {\n type: MRT_FILTER_TYPE.CONTAINS,\n label: localization.filterContains,\n divider: false,\n fn: contains,\n },\n {\n type: MRT_FILTER_TYPE.STARTS_WITH,\n label: localization.filterStartsWith,\n divider: false,\n fn: startsWith,\n },\n {\n type: MRT_FILTER_TYPE.ENDS_WITH,\n label: localization.filterEndsWith,\n divider: true,\n fn: endsWith,\n },\n {\n type: MRT_FILTER_TYPE.EQUALS,\n label: localization.filterEquals,\n divider: false,\n fn: equals,\n },\n {\n type: MRT_FILTER_TYPE.NOT_EQUALS,\n label: localization.filterNotEquals,\n divider: true,\n fn: notEquals,\n },\n {\n type: MRT_FILTER_TYPE.GREATER_THAN,\n label: localization.filterGreaterThan,\n divider: false,\n fn: greaterThan,\n },\n {\n type: MRT_FILTER_TYPE.LESS_THAN,\n label: localization.filterLessThan,\n divider: true,\n fn: lessThan,\n },\n {\n type: MRT_FILTER_TYPE.EMPTY,\n label: localization.filterEmpty,\n divider: false,\n fn: empty,\n },\n {\n type: MRT_FILTER_TYPE.NOT_EMPTY,\n label: localization.filterNotEmpty,\n divider: false,\n fn: notEmpty,\n },\n ].filter((filterType) =>\n header\n ? !header.column.enabledFilterTypes ||\n header.column.enabledFilterTypes.includes(filterType.type)\n : (!enabledGlobalFilterTypes ||\n enabledGlobalFilterTypes.includes(filterType.type)) &&\n [\n MRT_FILTER_TYPE.BEST_MATCH_FIRST,\n MRT_FILTER_TYPE.BEST_MATCH,\n ].includes(filterType.type),\n ),\n [],\n );\n\n const handleSelectFilterType = (value: MRT_FILTER_TYPE) => {\n if (header) {\n setCurrentFilterTypes((prev: { [key: string]: MRT_FilterType }) => ({\n ...prev,\n [header.id]: value,\n }));\n if ([MRT_FILTER_TYPE.EMPTY, MRT_FILTER_TYPE.NOT_EMPTY].includes(value)) {\n header.column.setColumnFilterValue(' ');\n }\n } else {\n setCurrentGlobalFilterType(value);\n }\n setAnchorEl(null);\n onSelect?.();\n };\n\n const filterType = !!header\n ? currentFilterTypes[header.id]\n : currentGlobalFilterType;\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 {filterTypes.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_ColumnInstance, MRT_TableInstance } from '..';\nimport { commonMenuItemStyles } from './MRT_ColumnActionMenu';\n\ninterface Props {\n column: MRT_ColumnInstance;\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_ColumnInstance) => {\n if (column.columnDefType === 'group') {\n column?.columns?.forEach?.((childColumn: MRT_ColumnInstance) => {\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_ColumnInstance, 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_FilterTypeMenu } from './MRT_FilterTypeMenu';\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 enablePinning,\n enableGrouping,\n enableHiding,\n enableSorting,\n icons: {\n ArrowRightIcon,\n ClearAllIcon,\n ViewColumnIcon,\n DynamicFeedIcon,\n FilterListIcon,\n FilterListOffIcon,\n PushPinIcon,\n SortIcon,\n VisibilityOffIcon,\n },\n idPrefix,\n localization,\n },\n setShowFilters,\n } = tableInstance;\n\n const { column } = header;\n\n const { isDensePadding, columnVisibility } = 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 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_FilterTypeMenu\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'}\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'}\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 {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_FilterTypeMenu } from '../menus/MRT_FilterTypeMenu';\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_FilterTypeMenu\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 hideToolbarInternalActions,\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 {!hideToolbarInternalActions && 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 hideToolbarInternalActions,\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 {!hideToolbarInternalActions && 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_FilterTypeMenu } from '../menus/MRT_FilterTypeMenu';\nimport { MRT_FILTER_TYPE } 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 setCurrentFilterTypes,\n } = tableInstance;\n\n const { column } = header;\n\n const { currentFilterTypes } = 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 setCurrentFilterTypes((prev) => ({\n ...prev,\n [header.id]: MRT_FILTER_TYPE.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 filterType = currentFilterTypes?.[header.id];\n const isSelectFilter = !!column.filterSelectOptions;\n const filterChipLabel =\n !(filterType instanceof Function) &&\n [MRT_FILTER_TYPE.EMPTY, MRT_FILTER_TYPE.NOT_EMPTY].includes(\n filterType as MRT_FILTER_TYPE,\n )\n ? //@ts-ignore\n localization[\n `filter${filterType.charAt(0).toUpperCase() + filterType.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 {filterType instanceof Function\n ? localization.filterMode.replace(\n '{filterType}',\n // @ts-ignore\n localization[\n `filter${\n filterType.name.charAt(0).toUpperCase() +\n filterType.name.slice(1)\n }`\n ] ?? '',\n ) ?? ''\n : localization.filterMode.replace(\n '{filterType}',\n // @ts-ignore\n localization[\n `filter${\n filterType.charAt(0).toUpperCase() + filterType.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_FilterTypeMenu\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 filterType = getState()?.currentFilterTypes?.[header.id];\n\n const filterTooltip = !!column.getColumnFilterValue()\n ? localization.filteringByColumn\n .replace('{column}', String(column.header))\n .replace(\n '{filterType}',\n filterType instanceof Function\n ? ''\n : // @ts-ignore\n localization[\n `filter${\n filterType.charAt(0).toUpperCase() + filterType.slice(1)\n }`\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 boxShadow: `3px 0 6px ${alpha(theme.palette.common.black, 0.1)}`,\n fontWeight: 'bold',\n height: '100%',\n minWidth: `max(${header.getWidth()}, 100px)`,\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 transition: `all ${enableColumnResizing ? 0 : '0.2s'} ease-in-out`,\n verticalAlign: 'text-top',\n width: header.getWidth(),\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 < 15 ? 'nowrap' : 'normal',\n }}\n >\n {headerElement}\n {column.columnDefType !== 'group' && 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 !== 'group' &&\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 <Box\n sx={{ alignItems: 'center', display: 'flex', flexWrap: 'nowrap' }}\n >\n {(enableColumnActions || column.enableColumnActions) &&\n column.enableColumnActions !== false &&\n column.columnDefType !== 'group' && (\n <MRT_ToggleColumnActionMenuButton\n header={header}\n tableInstance={tableInstance}\n />\n )}\n {enableColumnResizing && column.columnDefType !== 'group' && (\n <Divider\n flexItem\n orientation=\"vertical\"\n onDoubleClick={() => header.resetSize()}\n sx={(theme: Theme) => ({\n borderRightWidth: '2px',\n borderRadius: '2px',\n maxHeight: '2rem',\n cursor: 'col-resize',\n userSelect: 'none',\n touchAction: 'none',\n '&:active': {\n backgroundColor: theme.palette.secondary.dark,\n opacity: 1,\n },\n })}\n {...(header.getResizerProps((props: ColumnResizerProps) => ({\n ...props,\n style: {\n transform: column.getIsResizing()\n ? `translateX(${\n getState().columnSizingInfo.deltaOffset\n }px)`\n : '',\n },\n })) as any)}\n />\n )}\n </Box>\n </Box>\n )}\n {column.columnDefType === 'data' &&\n enableColumnFilters &&\n column.getCanColumnFilter() && (\n <Collapse in={showFilters}>\n <MRT_FilterTextField\n header={header}\n tableInstance={tableInstance}\n />\n </Collapse>\n )}\n </TableCell>\n );\n};\n","import React, { FC } from 'react';\nimport { 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 {...tableRowProps}>\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: { enableEditing, muiTableBodyCellEditTextFieldProps },\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 };\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 column.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 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 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 enableClickToCopy,\n enablePinning,\n enableEditing,\n isLoading,\n muiTableBodyCellProps,\n muiTableBodyCellSkeletonProps,\n onCellClick,\n },\n } = tableInstance;\n\n const { 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 return (\n <TableCell\n onClick={(event: MouseEvent<HTMLTableCellElement>) =>\n onCellClick?.({ event, cell, tableInstance })\n }\n {...tableCellProps}\n sx={{\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 //@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 ) : enableEditing &&\n column.enableEditing !== false &&\n currentEditingRow?.id === row.id ? (\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 p: isDensePadding ? '0.5rem' : '1rem',\n transition: `all ${enableColumnResizing ? '10ms' : '0.2s'} ease-in-out`,\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 hideTableFooter,\n hideTableHead,\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 {!hideTableHead && (\n <MRT_TableHead pinned={pinned} tableInstance={tableInstance} />\n )}\n <MRT_TableBody pinned={pinned} tableInstance={tableInstance} />\n {!hideTableFooter && (\n <MRT_TableFooter pinned={pinned} tableInstance={tableInstance} />\n )}\n </Table>\n );\n};\n","import React, { FC, useEffect, useState } from 'react';\nimport { alpha, Box, TableContainer, Theme } from '@mui/material';\nimport { SystemStyleObject } from '@mui/material/node_modules/@mui/system';\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}): SystemStyleObject<Theme> => ({\n display: 'grid',\n minWidth: visible ? '200px' : 0,\n overflowX: '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: { hideToolbarBottom, hideToolbarTop, 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 } else {\n document.body.style.overflow = '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 ? '100%' : undefined,\n left: isFullScreen ? '0' : undefined,\n margin: isFullScreen ? '0' : undefined,\n maxHeight: isFullScreen ? '100%' : undefined,\n maxWidth: isFullScreen ? '100%' : undefined,\n overflowY: !isFullScreen ? 'hidden' : undefined,\n position: isFullScreen ? 'fixed' : undefined,\n right: isFullScreen ? '0' : undefined,\n top: isFullScreen ? '0' : undefined,\n width: isFullScreen ? '100vw' : undefined,\n zIndex: isFullScreen ? 1200 : 1,\n bottom: isFullScreen ? '0' : undefined,\n }}\n >\n {!hideToolbarTop && <MRT_ToolbarTop tableInstance={tableInstance} />}\n <MRT_TableContainer tableInstance={tableInstance} />\n {!hideToolbarBottom && (\n <MRT_ToolbarBottom tableInstance={tableInstance} />\n )}\n </Paper>\n );\n};\n","import { ColumnDef, Table } from '@tanstack/react-table';\nimport { MRT_ColumnInterface, MRT_FilterType } from '.';\nimport { MRT_FILTER_TYPE } from './enums';\n\nexport const getAllLeafColumnDefs = (\n columns: MRT_ColumnInterface[],\n): MRT_ColumnInterface[] => {\n let lowestLevelColumns: MRT_ColumnInterface[] = columns;\n let currentCols: MRT_ColumnInterface[] | undefined = columns;\n while (!!currentCols?.length && currentCols.some((col) => col.columns)) {\n const nextCols: MRT_ColumnInterface[] = currentCols\n .filter((col) => !!col.columns)\n .map((col) => col.columns)\n .flat() as MRT_ColumnInterface[];\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_ColumnInterface<D>,\n currentFilterTypes: { [key: string]: MRT_FilterType },\n): ColumnDef<D> =>\n table.createGroup({\n ...column,\n columns: column?.columns?.map?.((col) =>\n col.columns\n ? createGroup<D>(table, col, currentFilterTypes)\n : createDataColumn(table, col, currentFilterTypes),\n ),\n } as any);\n\nexport const createDataColumn = <D extends Record<string, any> = {}>(\n table: Table<D>,\n column: MRT_ColumnInterface<D>,\n currentFilterTypes: { [key: string]: MRT_FilterType },\n): ColumnDef<D> => // @ts-ignore\n table.createDataColumn(column.id, {\n filterType: currentFilterTypes[column.id] || MRT_FILTER_TYPE.BEST_MATCH,\n ...column,\n }) as any;\n\nexport const createDisplayColumn = <D extends Record<string, any> = {}>(\n table: Table<D>,\n column: Omit<MRT_ColumnInterface<D>, 'header'> & { header?: string },\n): ColumnDef<D> => table.createDisplayColumn(column);\n","import React, { 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} from '@tanstack/react-table';\nimport {\n MRT_ColumnInterface,\n MRT_FilterType,\n MRT_Row,\n MRT_TableInstance,\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_TYPE } from '../enums';\n\nexport const MRT_TableRoot = <D extends Record<string, any> = {}>(\n props: MaterialReactTableProps<D>,\n) => {\n const idPrefix = useMemo(\n () => props.idPrefix ?? Math.random().toString(36).substring(2, 9),\n [props.idPrefix],\n );\n const [currentEditingRow, setCurrentEditingRow] = useState<MRT_Row | null>(\n null,\n );\n const [isDensePadding, setIsDensePadding] = useState(\n props.initialState?.isDensePadding ?? false,\n );\n const [isFullScreen, setIsFullScreen] = useState(\n props.initialState?.isFullScreen ?? false,\n );\n const [showFilters, setShowFilters] = useState(\n props.initialState?.showFilters ?? false,\n );\n const [showGlobalFilter, setShowGlobalFilter] = useState(\n props.initialState?.showGlobalFilter ?? false,\n );\n const [pagination, setPagination] = useState<PaginationState>({\n pageIndex: props.initialState?.pagination?.pageIndex ?? 0,\n pageSize: props.initialState?.pagination?.pageSize ?? 10,\n pageCount: props.initialState?.pagination?.pageCount ?? -1,\n });\n\n const [currentFilterTypes, setCurrentFilterTypes] = useState<{\n [key: string]: MRT_FilterType;\n }>(() =>\n Object.assign(\n {},\n ...getAllLeafColumnDefs(props.columns as MRT_ColumnInterface[]).map(\n (c) => ({\n [c.id as string]:\n c.filter ??\n props?.initialState?.columnFilters?.find((cf) => cf.id === c.id) ??\n (!!c.filterSelectOptions?.length\n ? MRT_FILTER_TYPE.EQUALS\n : MRT_FILTER_TYPE.BEST_MATCH),\n }),\n ),\n ),\n );\n\n const [currentGlobalFilterType, setCurrentGlobalFilterType] = useState(\n props.globalFilterType ?? MRT_FILTER_TYPE.BEST_MATCH_FIRST,\n );\n\n const table = useMemo(\n () => createTable<{ Row: D }>(),\n [],\n ) as unknown as Table<D>;\n\n const displayColumns = useMemo(\n () =>\n [\n (props.enableRowActions || props.enableEditing) &&\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.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, currentFilterTypes)\n : createDataColumn(table, column, currentFilterTypes),\n ),\n ] as ColumnDef<D>[]),\n [table, props.columns, currentFilterTypes],\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(\n props.columns as MRT_ColumnInterface[],\n ).map((c) => ({\n [c.id]: null,\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 ...props,\n columns,\n data,\n //@ts-ignore\n filterTypes: defaultFilterFNs,\n getColumnFilteredRowModel: getColumnFilteredRowModelSync(),\n getCoreRowModel: getCoreRowModelSync(),\n getExpandedRowModel: getExpandedRowModel(),\n getGlobalFilteredRowModel: getGlobalFilteredRowModelSync(),\n getGroupedRowModel: getGroupedRowModelSync(),\n getPaginationRowModel: getPaginationRowModel(),\n getSortedRowModel: getSortedRowModelSync(),\n getSubRows: props.getSubRows ?? ((originalRow: D) => originalRow.subRows),\n globalFilterType: currentGlobalFilterType,\n idPrefix,\n //@ts-ignore\n initialState: props.initialState,\n onPaginationChange: (updater: any) =>\n setPagination((old) => functionalUpdate(updater, old)),\n state: {\n currentEditingRow,\n currentFilterTypes,\n currentGlobalFilterType,\n isDensePadding,\n isFullScreen,\n //@ts-ignore\n pagination,\n showFilters,\n showGlobalFilter,\n ...props.state,\n },\n }),\n setCurrentEditingRow,\n setCurrentFilterTypes,\n setCurrentGlobalFilterType,\n setIsDensePadding,\n setIsFullScreen,\n setShowFilters,\n setShowGlobalFilter,\n };\n\n return <MRT_TablePaper tableInstance={tableInstance} />;\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 FilterType,\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_TYPE } 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'\n >\n> & {\n columns: MRT_ColumnInterface<D>[];\n data: D[];\n initialState?: Partial<MRT_TableState<D>>;\n state?: Partial<MRT_TableState<D>>;\n expandRowsFn?: (dataRow: D) => 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_ColumnInstance<D>[];\n getAllLeafColumns: () => MRT_ColumnInstance<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 filterTypes: { [key in MRT_FILTER_TYPE]: any };\n localization: MRT_Localization;\n };\n setCurrentEditingRow: Dispatch<SetStateAction<MRT_Row<D> | null>>;\n setCurrentFilterTypes: Dispatch<\n SetStateAction<{\n [key: string]: MRT_FilterType;\n }>\n >;\n setCurrentGlobalFilterType: Dispatch<SetStateAction<MRT_FILTER_TYPE>>;\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 currentEditingRow: MRT_Row<D> | null;\n currentFilterTypes: Record<string, string | Function>;\n currentGlobalFilterType: 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_ColumnInterface<D extends Record<string, any> = {}> = Omit<\n ColumnDef<D>,\n 'header' | 'footer' | 'columns'\n> & {\n Edit?: ({\n cell,\n tableInstance,\n }: // onChange,\n {\n cell: MRT_Cell<D>;\n tableInstance: MRT_TableInstance<D>;\n // onChange?: (event: ChangeEvent<HTMLInputElement>) => void;\n }) => ReactNode;\n Filter?: ({\n // onChange,\n header,\n tableInstance,\n }: {\n // onChange?: (event: ChangeEvent<HTMLInputElement>) => void;\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_ColumnInterface<D>[];\n enableClickToCopy?: boolean;\n enableColumnActions?: boolean;\n enableEditing?: boolean;\n enabledFilterTypes?: (MRT_FILTER_TYPE | string)[];\n filter?: MRT_FilterType | string | FilterType<D>;\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_ColumnInstance<D>;\n }) => TableCellProps);\n muiTableHeadCellColumnActionsButtonProps?:\n | IconButtonProps\n | (({\n tableInstance,\n column,\n }: {\n tableInstance: MRT_TableInstance;\n column: MRT_ColumnInstance<D>;\n }) => IconButtonProps);\n muiTableHeadCellFilterTextFieldProps?:\n | TextFieldProps\n | (({\n tableInstance,\n column,\n }: {\n tableInstance: MRT_TableInstance;\n column: MRT_ColumnInstance<D>;\n }) => TextFieldProps);\n muiTableHeadCellProps?:\n | TableCellProps\n | (({\n tableInstance,\n column,\n }: {\n tableInstance: MRT_TableInstance;\n column: MRT_ColumnInstance<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 event,\n filterValue,\n }: {\n event: ChangeEvent<HTMLInputElement>;\n filterValue: any;\n }) => void;\n};\n\nexport type MRT_ColumnInstance<D extends Record<string, any> = {}> = Omit<\n Column<D>,\n 'header' | 'footer' | 'columns'\n> &\n MRT_ColumnInterface<D> & {\n columns?: MRT_ColumnInstance<D>[];\n };\n\nexport type MRT_Header<D extends Record<string, any> = {}> = Omit<\n Header<D>,\n 'column'\n> & {\n column: MRT_ColumnInstance<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_ColumnInstance<D>;\n row: MRT_Row<D>;\n};\n\nexport type MRT_FilterType = MRT_FILTER_TYPE | Function;\n\nexport type MaterialReactTableProps<D extends Record<string, any> = {}> =\n MRT_TableOptions<D> & {\n enableClickToCopy?: boolean;\n enableColumnActions?: boolean;\n enableDensePaddingToggle?: boolean;\n enableEditing?: boolean;\n enableExpandAll?: boolean;\n enableFullScreenToggle?: boolean;\n enablePagination?: boolean;\n enableRowActions?: boolean;\n enableRowNumbers?: boolean;\n enableSelectAll?: boolean;\n enableStickyHeader?: boolean;\n enabledGlobalFilterTypes?: (MRT_FILTER_TYPE | string)[];\n filterTypes?: { [key in MRT_FILTER_TYPE]: any };\n hideTableFooter?: boolean;\n hideTableHead?: boolean;\n hideToolbarBottom?: boolean;\n hideToolbarInternalActions?: boolean;\n hideToolbarTop?: boolean;\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_ColumnInstance<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_ColumnInstance<D>;\n }) => IconButtonProps);\n muiTableHeadCellFilterTextFieldProps?:\n | TextFieldProps\n | (({\n tableInstance,\n column,\n }: {\n tableInstance: MRT_TableInstance;\n column: MRT_ColumnInstance<D>;\n }) => TextFieldProps);\n muiTableHeadCellProps?:\n | TableCellProps\n | (({\n tableInstance,\n column,\n }: {\n tableInstance: MRT_TableInstance;\n column: MRT_ColumnInstance<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 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_ColumnInstance<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 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 enableColumnActions = true,\n enableColumnFilters = true,\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 icons,\n localization,\n positionActionsColumn = 'first',\n positionPagination = 'bottom',\n positionToolbarActions = 'top',\n positionToolbarAlertBanner = 'top',\n ...rest\n}: MaterialReactTableProps<D>) => (\n <MRT_TableRoot\n autoResetExpanded={autoResetExpanded}\n enableColumnActions={enableColumnActions}\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 icons={{ ...MRT_Default_Icons, ...icons }}\n localization={{ ...MRT_DefaultLocalization_EN, ...localization }}\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","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","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_TYPE","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_FilterTypeMenu","anchorEl","header","onSelect","setAnchorEl","enabledGlobalFilterTypes","setCurrentFilterTypes","setCurrentGlobalFilterType","currentFilterTypes","currentGlobalFilterType","filterTypes","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","enabledFilterTypes","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","enablePinning","enableGrouping","enableSorting","idPrefix","setShowFilters","useState","filterMenuAnchorEl","setFilterMenuAnchorEl","showHideColumnsMenuAnchorEl","setShowHideColumnsMenuAnchorEl","handleClearSort","resetSorting","handleSortAsc","toggleSorting","handleSortDesc","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","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","hideToolbarInternalActions","muiTableToolbarTopProps","positionPagination","toolbarProps","Toolbar","MRT_ToolbarBottom","muiTableToolbarBottomProps","bottom","boxShadow","black","MRT_FilterTextField","mTableHeadCellFilterTextFieldProps","mcTableHeadCellFilterTextFieldProps","setFilterValue","handleFilterMenuOpen","handleClearFilterChip","Filter","filterId","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","enableColumnResizing","muiTableHeadCellProps","mTableHeadCellProps","mcTableHeadCellProps","tableCellProps","getHeaderProps","sortTooltip","filterTooltip","headerElement","Header","TableCell","align","fontWeight","getWidth","pb","verticalAlign","isPlaceholder","cursor","flexWrap","whiteSpace","TableSortLabel","active","direction","disableRipple","flexItem","onDoubleClick","resetSize","borderRightWidth","maxHeight","userSelect","touchAction","secondary","dark","getResizerProps","props","getIsResizing","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","setValue","onCellEditChange","handleBlur","onCellEditBlur","mTableBodyCellEditTextFieldProps","mcTableBodyCellEditTextFieldProps","Edit","onBlur","MRT_CopyButton","children","muiTableBodyCellCopyButtonProps","copied","setCopied","handleCopy","navigator","clipboard","writeText","mTableBodyCellCopyButtonProps","mcTableBodyCellCopyButtonProps","buttonProps","border","fontFamily","letterSpacing","textAlign","textTransform","MRT_TableBodyCell","enableClickToCopy","muiTableBodyCellProps","muiTableBodyCellSkeletonProps","onCellClick","mTableCellBodyProps","mcTableCellBodyProps","getCellProps","skeletonWidth","Math","random","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","hideTableFooter","hideTableHead","muiTableProps","mTableProps","tableProps","Table","stickyHeader","commonBoxStyles","overflowX","MRT_TableContainer","getCenterTableWidth","getLeftTableWidth","getRightTableWidth","muiTableContainerProps","totalToolbarHeight","setTotalToolbarHeight","tableContainerProps","useEffect","topToolbarHeight","offsetHeight","bottomToolbarHeight","TableContainer","maxWidth","overflow","gridTemplateColumns","MRT_TablePaper","hideToolbarBottom","hideToolbarTop","muiTablePaperProps","window","body","tablePaperProps","Paper","elevation","overflowY","getAllLeafColumnDefs","lowestLevelColumns","currentCols","nextCols","flat","every","createGroup","table","createDataColumn","createDisplayColumn","MRT_TableRoot","substring","initialState","pageCount","setPagination","assign","columnFilters","cf","globalFilterType","createTable","displayColumns","enableRowActions","enableExpanded","enableExpandAll","enableRowSelection","enableSelectAll","enableRowNumbers","Boolean","createColumns","data","fill","useTableInstance","getColumnFilteredRowModel","getColumnFilteredRowModelSync","getCoreRowModel","getCoreRowModelSync","getExpandedRowModel","getGlobalFilteredRowModel","getGlobalFilteredRowModelSync","getGroupedRowModel","getGroupedRowModelSync","getSortedRowModel","getSortedRowModelSync","getSubRows","originalRow","onPaginationChange","updater","functionalUpdate","state","autoResetExpanded","enableMultiRowSelection","positionActionsColumn"],"mappings":"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"}
|