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