material-react-table 0.26.3 → 0.26.4

Sign up to get free protection for your applications and to get access to all the features.
@@ -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/menus/MRT_FilterOptionMenu.tsx","../src/buttons/MRT_ColumnPinningButtons.tsx","../src/buttons/MRT_GrabHandleButton.tsx","../src/filtersFns.ts","../src/sortingFns.ts","../src/column.utils.ts","../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_GlobalFilterTextField.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/head/MRT_TableHeadCellColumnActionsButton.tsx","../src/inputs/MRT_FilterTextField.tsx","../src/inputs/MRT_FilterRangeFields.tsx","../src/head/MRT_TableHeadCellFilterContainer.tsx","../src/head/MRT_TableHeadCellFilterLabel.tsx","../src/head/MRT_TableHeadCellGrabHandle.tsx","../src/head/MRT_TableHeadCellResizeHandle.tsx","../src/head/MRT_TableHeadCellSortLabel.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_TableBodyRowGrabHandle.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/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 filterBetweenInclusive: string;\n filterByColumn: string;\n filterContains: string;\n filterEmpty: string;\n filterEndsWith: string;\n filterEquals: string;\n filterFuzzy: string;\n filterGreaterThan: string;\n filterGreaterThanOrEqualTo: string;\n filterLessThan: string;\n filterLessThanOrEqualTo: string;\n filterMode: string;\n filterNotEmpty: string;\n filterNotEquals: string;\n filterStartsWith: string;\n filteringByColumn: string;\n grab: string;\n groupByColumn: string;\n groupedBy: string;\n hideAll: string;\n hideColumn: string;\n max: string;\n min: string;\n move: string;\n pinToLeft: string;\n pinToRight: string;\n resetColumnSize: string;\n resetOrder: 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 toggleDensity: string;\n toggleFullScreen: string;\n toggleSelectAll: string;\n toggleSelectRow: string;\n toggleVisibility: 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 filterBetweenInclusive: 'Between Inclusive',\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 filterGreaterThanOrEqualTo: 'Greater Than Or Equal To',\n filterLessThan: 'Less Than',\n filterLessThanOrEqualTo: 'Less Than Or Equal To',\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 grab: 'Grab',\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 move: 'Move',\n pinToLeft: 'Pin to left',\n pinToRight: 'Pin to right',\n resetColumnSize: 'Reset column size',\n resetOrder: 'Reset order',\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 toggleDensity: 'Toggle density',\n toggleFullScreen: 'Toggle full screen',\n toggleSelectAll: 'Toggle select all',\n toggleSelectRow: 'Toggle select row',\n toggleVisibility: 'Toggle visibility',\n ungroupByColumn: 'Ungroup by {column}',\n unpin: 'Unpin',\n unpinAll: 'Unpin all',\n unsorted: 'Unsorted',\n};\n","import {\n ArrowRight,\n Cancel,\n CheckBox,\n ClearAll,\n Close,\n DensityLarge,\n DensityMedium,\n DensitySmall,\n DragHandle,\n DynamicFeed,\n Edit,\n ExpandLess,\n ExpandMore,\n FilterAlt,\n FilterAltOff,\n FilterList,\n FilterListOff,\n Fullscreen,\n FullscreenExit,\n KeyboardDoubleArrowDown,\n MoreHoriz,\n MoreVert,\n PushPin,\n RestartAlt,\n Save,\n Search,\n SearchOff,\n Sort,\n ViewColumn,\n VisibilityOff,\n} from '@mui/icons-material';\n\nexport interface MRT_Icons {\n ArrowRightIcon: any;\n CancelIcon: any;\n CheckBoxIcon: any;\n ClearAllIcon: any;\n CloseIcon: any;\n DensityLargeIcon: any;\n DensityMediumIcon: any;\n DensitySmallIcon: any;\n KeyboardDoubleArrowDownIcon: any;\n DragHandleIcon: any;\n DynamicFeedIcon: any;\n EditIcon: any;\n ExpandLessIcon: any;\n ExpandMoreIcon: any;\n FilterAltIcon: any;\n FilterAltOffIcon: 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: ArrowRight,\n CancelIcon: Cancel,\n CheckBoxIcon: CheckBox,\n ClearAllIcon: ClearAll,\n CloseIcon: Close,\n DensityLargeIcon: DensityLarge,\n DensityMediumIcon: DensityMedium,\n DensitySmallIcon: DensitySmall,\n DragHandleIcon: DragHandle,\n DynamicFeedIcon: DynamicFeed,\n EditIcon: Edit,\n ExpandLessIcon: ExpandLess,\n ExpandMoreIcon: ExpandMore,\n FilterAltIcon: FilterAlt,\n FilterAltOffIcon: FilterAltOff,\n FilterListIcon: FilterList,\n FilterListOffIcon: FilterListOff,\n FullscreenExitIcon: FullscreenExit,\n FullscreenIcon: Fullscreen,\n KeyboardDoubleArrowDownIcon: KeyboardDoubleArrowDown,\n MoreHorizIcon: MoreHoriz,\n MoreVertIcon: MoreVert,\n PushPinIcon: PushPin,\n RestartAltIcon: RestartAlt,\n SaveIcon: Save,\n SearchIcon: Search,\n SearchOffIcon: SearchOff,\n SortIcon: Sort,\n ViewColumnIcon: ViewColumn,\n VisibilityOffIcon: VisibilityOff,\n};\n","import React, { FC } from 'react';\nimport { IconButton, Tooltip } from '@mui/material';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n table: MRT_TableInstance;\n}\n\nexport const MRT_ExpandAllButton: FC<Props> = ({ table }) => {\n const {\n getIsAllRowsExpanded,\n getIsSomeRowsExpanded,\n getCanSomeRowsExpand,\n getState,\n options: {\n icons: { KeyboardDoubleArrowDownIcon },\n localization,\n muiExpandAllButtonProps,\n renderDetailPanel,\n },\n toggleAllRowsExpanded,\n } = table;\n const { density } = getState();\n\n const iconButtonProps =\n muiExpandAllButtonProps instanceof Function\n ? muiExpandAllButtonProps({ table })\n : muiExpandAllButtonProps;\n\n return (\n <Tooltip\n arrow\n enterDelay={1000}\n enterNextDelay={1000}\n title={localization.expandAll}\n >\n <span>\n <IconButton\n aria-label={localization.expandAll}\n disabled={!getCanSomeRowsExpand() && !renderDetailPanel}\n onClick={() => toggleAllRowsExpanded(!getIsAllRowsExpanded())}\n {...iconButtonProps}\n sx={{\n height: density === 'compact' ? '1.75rem' : '2.25rem',\n width: density === 'compact' ? '1.75rem' : '2.25rem',\n ...iconButtonProps?.sx,\n }}\n >\n <KeyboardDoubleArrowDownIcon\n style={{\n transform: `rotate(${\n getIsAllRowsExpanded()\n ? -180\n : getIsSomeRowsExpanded()\n ? -90\n : 0\n }deg)`,\n transition: 'transform 0.2s',\n }}\n />\n </IconButton>\n </span>\n </Tooltip>\n );\n};\n","import React, { FC } from 'react';\nimport { IconButton, Tooltip } from '@mui/material';\nimport type { MRT_Row, MRT_TableInstance } from '..';\n\ninterface Props {\n row: MRT_Row;\n table: MRT_TableInstance;\n}\n\nexport const MRT_ExpandButton: FC<Props> = ({ row, table }) => {\n const {\n getState,\n options: {\n icons: { ExpandMoreIcon },\n localization,\n muiExpandButtonProps,\n renderDetailPanel,\n },\n } = table;\n const { density } = getState();\n\n const iconButtonProps =\n muiExpandButtonProps instanceof Function\n ? muiExpandButtonProps({ table, row })\n : muiExpandButtonProps;\n\n const handleToggleExpand = () => {\n row.toggleExpanded();\n };\n\n return (\n <Tooltip\n arrow\n enterDelay={1000}\n enterNextDelay={1000}\n title={localization.expand}\n >\n <span>\n <IconButton\n aria-label={localization.expand}\n disabled={!row.getCanExpand() && !renderDetailPanel}\n onClick={handleToggleExpand}\n {...iconButtonProps}\n sx={(theme) => ({\n height: density === 'compact' ? '1.75rem' : '2.25rem',\n width: density === 'compact' ? '1.75rem' : '2.25rem',\n ...(iconButtonProps?.sx instanceof Function\n ? iconButtonProps.sx(theme)\n : (iconButtonProps?.sx as any)),\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 </span>\n </Tooltip>\n );\n};\n","import React, { FC, useMemo } from 'react';\nimport { Box, Menu, MenuItem } from '@mui/material';\nimport type { MRT_FilterOption, MRT_Header, MRT_TableInstance } from '..';\n\ninterface Props {\n anchorEl: HTMLElement | null;\n header?: MRT_Header;\n onSelect?: () => void;\n setAnchorEl: (anchorEl: HTMLElement | null) => void;\n table: MRT_TableInstance;\n}\n\nexport const MRT_FilterOptionMenu: FC<Props> = ({\n anchorEl,\n header,\n onSelect,\n setAnchorEl,\n table,\n}) => {\n const {\n getState,\n options: {\n enabledGlobalFilterOptions,\n enabledColumnFilterOptions,\n localization,\n },\n setCurrentFilterFns,\n setCurrentGlobalFilterFn,\n } = table;\n const { currentFilterFns, currentGlobalFilterFn, density } = getState();\n const { column } = header ?? {};\n const { columnDef } = column ?? {};\n\n const allowedColumnFilterOptions =\n columnDef?.enabledColumnFilterOptions ?? enabledColumnFilterOptions;\n\n const filterOptions = useMemo(\n () =>\n (\n [\n {\n option: 'fuzzy',\n symbol: '≈',\n label: localization.filterFuzzy,\n divider: false,\n },\n {\n option: 'contains',\n symbol: '*',\n label: localization.filterContains,\n divider: false,\n },\n {\n option: 'startsWith',\n symbol: 'a',\n label: localization.filterStartsWith,\n divider: false,\n },\n {\n option: 'endsWith',\n symbol: 'z',\n label: localization.filterEndsWith,\n divider: true,\n },\n {\n option: 'equals',\n symbol: '=',\n label: localization.filterEquals,\n divider: false,\n },\n {\n option: 'notEquals',\n symbol: '≠',\n label: localization.filterNotEquals,\n divider: true,\n },\n {\n option: 'between',\n symbol: '⇿',\n label: localization.filterBetween,\n divider: false,\n },\n {\n option: 'betweenInclusive',\n symbol: '⬌',\n label: localization.filterBetweenInclusive,\n divider: true,\n },\n {\n option: 'greaterThan',\n symbol: '>',\n label: localization.filterGreaterThan,\n divider: false,\n },\n {\n option: 'greaterThanOrEqualTo',\n symbol: '≥',\n label: localization.filterGreaterThanOrEqualTo,\n divider: false,\n },\n {\n option: 'lessThan',\n symbol: '<',\n label: localization.filterLessThan,\n divider: false,\n },\n {\n option: 'lessThanOrEqualTo',\n symbol: '≤',\n label: localization.filterLessThanOrEqualTo,\n divider: true,\n },\n {\n option: 'empty',\n symbol: '∅',\n label: localization.filterEmpty,\n divider: false,\n },\n {\n option: 'notEmpty',\n symbol: '!∅',\n label: localization.filterNotEmpty,\n divider: false,\n },\n ] as Array<{\n divider: boolean;\n fn: Function;\n label: string;\n option: MRT_FilterOption;\n symbol?: string;\n }>\n ).filter((filterType) =>\n columnDef\n ? allowedColumnFilterOptions === undefined ||\n allowedColumnFilterOptions?.includes(filterType.option)\n : (!enabledGlobalFilterOptions ||\n enabledGlobalFilterOptions.includes(filterType.option)) &&\n ['fuzzy', 'contains'].includes(filterType.option),\n ),\n [],\n );\n\n const handleSelectFilterType = (option: MRT_FilterOption) => {\n if (header && column) {\n setCurrentFilterFns((prev: { [key: string]: any }) => ({\n ...prev,\n [header.id]: option,\n }));\n if (['empty', 'notEmpty'].includes(option)) {\n column.setFilterValue(' ');\n } else if (option === 'between') {\n column.setFilterValue(['', '']);\n } else {\n column.setFilterValue('');\n }\n } else {\n setCurrentGlobalFilterFn(option);\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: density === 'compact',\n }}\n >\n {filterOptions.map(({ option, label, divider, symbol }, index) => (\n <MenuItem\n divider={divider}\n key={index}\n onClick={() => handleSelectFilterType(option)}\n selected={option === filterOption}\n sx={{\n py: '6px',\n my: 0,\n alignItems: 'center',\n display: 'flex',\n gap: '2ch',\n }}\n value={option}\n >\n <Box sx={{ fontSize: '1.25rem', width: '2ch' }}>{symbol}</Box>\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 table: MRT_TableInstance;\n}\n\nexport const MRT_ColumnPinningButtons: FC<Props> = ({ column, table }) => {\n const {\n options: {\n icons: { PushPinIcon },\n localization,\n },\n } = table;\n\n const handlePinColumn = (pinDirection: 'left' | 'right' | false) => {\n column.pin(pinDirection);\n };\n\n return (\n <Box sx={{ minWidth: '70px', textAlign: 'center' }}>\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 { IconButton, IconButtonProps, Tooltip } from '@mui/material';\nimport React, { DragEventHandler, FC } from 'react';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n iconButtonProps?: IconButtonProps;\n onDragStart: DragEventHandler<HTMLButtonElement>;\n onDragEnd: DragEventHandler<HTMLButtonElement>;\n table: MRT_TableInstance;\n}\n\nexport const MRT_GrabHandleButton: FC<Props> = ({\n iconButtonProps,\n onDragEnd,\n onDragStart,\n table,\n}) => {\n const {\n options: {\n icons: { DragHandleIcon },\n localization,\n },\n } = table;\n\n return (\n <Tooltip\n arrow\n enterDelay={1000}\n enterNextDelay={1000}\n placement=\"top\"\n title={localization.move}\n >\n <IconButton\n disableRipple\n draggable=\"true\"\n onDragStart={onDragStart}\n onDragEnd={onDragEnd}\n size=\"small\"\n {...iconButtonProps}\n sx={{\n cursor: 'grab',\n m: 0,\n opacity: 0.5,\n p: '2px',\n transition: 'all 0.2s ease-in-out',\n '&:hover': {\n backgroundColor: 'transparent',\n opacity: 1,\n },\n '&:active': {\n cursor: 'grabbing',\n },\n ...iconButtonProps?.sx,\n }}\n >\n <DragHandleIcon />\n </IconButton>\n </Tooltip>\n );\n};\n","import { rankItem, rankings, RankingInfo } from '@tanstack/match-sorter-utils';\nimport { filterFns, Row } from '@tanstack/react-table';\n\nconst fuzzy = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n columnId: string,\n filterValue: string | number,\n addMeta: (item: RankingInfo) => void,\n) => {\n const itemRank = rankItem(row.getValue(columnId), filterValue as string, {\n threshold: rankings.MATCHES,\n });\n addMeta(itemRank);\n return itemRank.passed;\n};\n\nfuzzy.autoRemove = (val: any) => !val;\n\nconst contains = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n id: string,\n filterValue: string | number,\n) =>\n row\n .getValue<string | number>(id)\n .toString()\n .toLowerCase()\n .trim()\n .includes(filterValue.toString().toLowerCase().trim());\n\ncontains.autoRemove = (val: any) => !val;\n\nconst startsWith = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n id: string,\n filterValue: string | number,\n) =>\n row\n .getValue<string | number>(id)\n .toString()\n .toLowerCase()\n .trim()\n .startsWith(filterValue.toString().toLowerCase().trim());\n\nstartsWith.autoRemove = (val: any) => !val;\n\nconst endsWith = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n id: string,\n filterValue: string | number,\n) =>\n row\n .getValue<string | number>(id)\n .toString()\n .toLowerCase()\n .trim()\n .endsWith(filterValue.toString().toLowerCase().trim());\n\nendsWith.autoRemove = (val: any) => !val;\n\nconst equals = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n id: string,\n filterValue: string | number,\n) =>\n row.getValue<string | number>(id).toString().toLowerCase().trim() ===\n filterValue.toString().toLowerCase().trim();\n\nequals.autoRemove = (val: any) => !val;\n\nconst notEquals = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n id: string,\n filterValue: string | number,\n) =>\n row.getValue<string | number>(id).toString().toLowerCase().trim() !==\n filterValue.toString().toLowerCase().trim();\n\nnotEquals.autoRemove = (val: any) => !val;\n\nconst greaterThan = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n id: string,\n filterValue: string | number,\n) =>\n !isNaN(+filterValue) && !isNaN(+row.getValue<string | number>(id))\n ? +row.getValue<string | number>(id) > +filterValue\n : row.getValue<string | number>(id).toString().toLowerCase().trim() >\n filterValue.toString().toLowerCase().trim();\n\ngreaterThan.autoRemove = (val: any) => !val;\n\nconst greaterThanOrEqualTo = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n id: string,\n filterValue: string | number,\n) => equals(row, id, filterValue) || greaterThan(row, id, filterValue);\n\ngreaterThanOrEqualTo.autoRemove = (val: any) => !val;\n\nconst lessThan = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n id: string,\n filterValue: string | number,\n) =>\n !isNaN(+filterValue) && !isNaN(+row.getValue<string | number>(id))\n ? +row.getValue<string | number>(id) < +filterValue\n : row.getValue<string | number>(id).toString().toLowerCase().trim() <\n filterValue.toString().toLowerCase().trim();\n\nlessThan.autoRemove = (val: any) => !val;\n\nconst lessThanOrEqualTo = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n id: string,\n filterValue: string | number,\n) => equals(row, id, filterValue) || lessThan(row, id, filterValue);\n\nlessThanOrEqualTo.autoRemove = (val: any) => !val;\n\nconst between = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\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\nconst betweenInclusive = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n id: string,\n filterValues: [string | number, string | number],\n) =>\n ((['', undefined] as any[]).includes(filterValues[0]) ||\n greaterThanOrEqualTo(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 lessThanOrEqualTo(row, id, filterValues[1]));\n\nbetweenInclusive.autoRemove = (val: any) => !val;\n\nconst empty = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n id: string,\n _filterValue: string | number,\n) => !row.getValue<string | number>(id).toString().trim();\n\nempty.autoRemove = (val: any) => !val;\n\nconst notEmpty = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n id: string,\n _filterValue: string | number,\n) => !!row.getValue<string | number>(id).toString().trim();\n\nnotEmpty.autoRemove = (val: any) => !val;\n\nexport const MRT_FilterFns = {\n ...filterFns,\n between,\n betweenInclusive,\n contains,\n empty,\n endsWith,\n equals,\n fuzzy,\n greaterThan,\n greaterThanOrEqualTo,\n lessThan,\n lessThanOrEqualTo,\n notEmpty,\n notEquals,\n startsWith,\n};\n","import { compareItems, RankingInfo } from '@tanstack/match-sorter-utils';\nimport { Row, sortingFns } from '@tanstack/react-table';\nimport { MRT_Row } from '.';\n\nconst fuzzy = <TData extends Record<string, any> = {}>(\n rowA: Row<TData>,\n rowB: Row<TData>,\n columnId: string,\n) => {\n let dir = 0;\n if (rowA.columnFiltersMeta[columnId]) {\n dir = compareItems(\n rowA.columnFiltersMeta[columnId]! as RankingInfo,\n rowB.columnFiltersMeta[columnId]! as RankingInfo,\n );\n }\n // Provide a fallback for when the item ranks are equal\n return dir === 0\n ? sortingFns.alphanumeric(rowA as Row<any>, rowB as Row<any>, columnId)\n : dir;\n};\n\nexport const MRT_SortingFns = {\n ...sortingFns,\n fuzzy,\n};\n\nexport const rankGlobalFuzzy = <TData extends Record<string, any> = {}>(\n rowA: MRT_Row<TData>,\n rowB: MRT_Row<TData>,\n) =>\n Math.max(...Object.values(rowB.columnFiltersMeta).map((v: any) => v.rank)) -\n Math.max(...Object.values(rowA.columnFiltersMeta).map((v: any) => v.rank));\n","import { ColumnOrderState } from '@tanstack/react-table';\nimport {\n MaterialReactTableProps,\n MRT_Column,\n MRT_ColumnDef,\n MRT_DefinedColumnDef,\n MRT_DisplayColumnIds,\n MRT_FilterOption,\n} from '.';\nimport { MRT_FilterFns } from './filtersFns';\nimport { MRT_SortingFns } from './sortingFns';\n\nconst getColumnId = <TData extends Record<string, any> = {}>(\n columnDef: MRT_ColumnDef<TData>,\n): string =>\n columnDef.id ?? columnDef.accessorKey?.toString?.() ?? columnDef.header;\n\nexport const getAllLeafColumnDefs = <TData extends Record<string, any> = {}>(\n columns: MRT_ColumnDef<TData>[],\n): MRT_ColumnDef<TData>[] => {\n let lowestLevelColumns: MRT_ColumnDef<TData>[] = columns;\n let currentCols: MRT_ColumnDef<TData>[] | undefined = columns;\n while (!!currentCols?.length && currentCols.some((col) => col.columns)) {\n const nextCols: MRT_ColumnDef<TData>[] = currentCols\n .filter((col) => !!col.columns)\n .map((col) => col.columns)\n .flat() as MRT_ColumnDef<TData>[];\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 prepareColumns = <TData extends Record<string, any> = {}>(\n columnDefs: MRT_ColumnDef<TData>[],\n currentFilterFns: { [key: string]: MRT_FilterOption },\n): MRT_DefinedColumnDef<TData>[] =>\n columnDefs.map((columnDef) => {\n if (!columnDef.id) columnDef.id = getColumnId(columnDef);\n if (process.env.NODE_ENV !== 'production' && !columnDef.id) {\n console.error(\n 'Column definitions must have a valid `accessorKey` or `id` property',\n );\n }\n if (!columnDef.columnDefType) columnDef.columnDefType = 'data';\n if (!!columnDef.columns?.length) {\n columnDef.columnDefType = 'group';\n columnDef.columns = prepareColumns(columnDef.columns, currentFilterFns);\n } else if (columnDef.columnDefType === 'data') {\n if (Object.keys(MRT_FilterFns).includes(currentFilterFns[columnDef.id])) {\n columnDef.filterFn =\n MRT_FilterFns[currentFilterFns[columnDef.id]] ?? MRT_FilterFns.fuzzy;\n }\n if (Object.keys(MRT_SortingFns).includes(columnDef.sortingFn as string)) {\n // @ts-ignore\n columnDef.sortingFn = MRT_SortingFns[columnDef.sortingFn];\n }\n }\n return columnDef;\n }) as MRT_DefinedColumnDef<TData>[];\n\nexport const reorderColumn = <TData extends Record<string, any> = {}>(\n draggedColumn: MRT_Column<TData>,\n targetColumn: MRT_Column<TData>,\n columnOrder: ColumnOrderState,\n): ColumnOrderState => {\n if (draggedColumn.getCanPin()) {\n draggedColumn.pin(targetColumn.getIsPinned());\n }\n columnOrder.splice(\n columnOrder.indexOf(targetColumn.id),\n 0,\n columnOrder.splice(columnOrder.indexOf(draggedColumn.id), 1)[0],\n );\n return [...columnOrder];\n};\n\nexport const getLeadingDisplayColumnIds = <\n TData extends Record<string, any> = {},\n>(\n props: MaterialReactTableProps<TData>,\n) =>\n [\n (props.enableRowDragging || props.enableRowOrdering) && 'mrt-row-drag',\n ((props.positionActionsColumn === 'first' && props.enableRowActions) ||\n (props.enableEditing && props.editingMode === 'row')) &&\n 'mrt-row-actions',\n (props.enableExpanding ||\n props.enableGrouping ||\n props.renderDetailPanel) &&\n 'mrt-row-expand',\n props.enableRowSelection && 'mrt-row-select',\n props.enableRowNumbers && 'mrt-row-numbers',\n ].filter(Boolean) as MRT_DisplayColumnIds[];\n\nexport const getTrailingDisplayColumnIds = <\n TData extends Record<string, any> = {},\n>(\n props: MaterialReactTableProps<TData>,\n) => [\n ((props.positionActionsColumn === 'last' && props.enableRowActions) ||\n (props.enableEditing && props.editingMode === 'row')) &&\n 'mrt-row-actions',\n];\n\nexport const getDefaultColumnOrderIds = <\n TData extends Record<string, any> = {},\n>(\n props: MaterialReactTableProps<TData>,\n) =>\n [\n ...getLeadingDisplayColumnIds(props),\n ...getAllLeafColumnDefs(props.columns).map((columnDef) =>\n getColumnId(columnDef),\n ),\n ...getTrailingDisplayColumnIds(props),\n ].filter(Boolean) as string[];\n","import React, {\n Dispatch,\n DragEvent,\n FC,\n SetStateAction,\n useState,\n} from 'react';\nimport {\n Box,\n FormControlLabel,\n MenuItem,\n Switch,\n Tooltip,\n Typography,\n} from '@mui/material';\nimport { MRT_ColumnPinningButtons } from '../buttons/MRT_ColumnPinningButtons';\nimport { MRT_GrabHandleButton } from '../buttons/MRT_GrabHandleButton';\nimport { reorderColumn } from '../column.utils';\nimport type { MRT_Column, MRT_TableInstance } from '..';\n\ninterface Props {\n allColumns: MRT_Column[];\n column: MRT_Column;\n currentHoveredColumn: MRT_Column | null;\n isSubMenu?: boolean;\n setCurrentHoveredColumn: Dispatch<SetStateAction<MRT_Column | null>>;\n table: MRT_TableInstance;\n}\n\nexport const MRT_ShowHideColumnsMenuItems: FC<Props> = ({\n allColumns,\n currentHoveredColumn,\n setCurrentHoveredColumn,\n column,\n isSubMenu,\n table,\n}) => {\n const {\n getState,\n options: {\n enableColumnOrdering,\n enableHiding,\n enablePinning,\n localization,\n },\n setColumnOrder,\n } = table;\n const { columnOrder } = getState();\n const { columnDef } = column;\n const { columnDefType } = columnDef;\n\n const switchChecked =\n (columnDefType !== 'group' && column.getIsVisible()) ||\n (columnDefType === 'group' &&\n column.getLeafColumns().some((col) => col.getIsVisible()));\n\n const handleToggleColumnHidden = (column: MRT_Column) => {\n if (columnDefType === 'group') {\n column?.columns?.forEach?.((childColumn: MRT_Column) => {\n childColumn.toggleVisibility(!switchChecked);\n });\n } else {\n column.toggleVisibility();\n }\n };\n\n const menuItemRef = React.useRef<HTMLElement>(null);\n\n const [isDragging, setIsDragging] = useState(false);\n\n const handleDragStart = (e: DragEvent<HTMLButtonElement>) => {\n setIsDragging(true);\n e.dataTransfer.setDragImage(menuItemRef.current as HTMLElement, 0, 0);\n };\n\n const handleDragEnd = (_e: DragEvent<HTMLButtonElement>) => {\n setIsDragging(false);\n setCurrentHoveredColumn(null);\n if (currentHoveredColumn) {\n setColumnOrder(reorderColumn(column, currentHoveredColumn, columnOrder));\n }\n };\n\n const handleDragEnter = (_e: DragEvent) => {\n if (!isDragging) {\n setCurrentHoveredColumn(column);\n }\n };\n\n return (\n <>\n <MenuItem\n disableRipple\n ref={menuItemRef as any}\n onDragEnter={handleDragEnter}\n sx={(theme) => ({\n alignItems: 'center',\n justifyContent: 'flex-start',\n my: 0,\n opacity: isDragging ? 0.5 : 1,\n outline: isDragging\n ? `1px dashed ${theme.palette.divider}`\n : currentHoveredColumn?.id === column.id\n ? `2px dashed ${theme.palette.primary.main}`\n : 'none',\n pl: `${(column.depth + 0.5) * 2}rem`,\n py: '6px',\n })}\n >\n <Box\n sx={{\n display: 'flex',\n flexWrap: 'nowrap',\n gap: '8px',\n }}\n >\n {!isSubMenu &&\n columnDefType !== 'group' &&\n enableColumnOrdering &&\n !allColumns.some(\n (col) => col.columnDef.columnDefType === 'group',\n ) &&\n (columnDef.enableColumnOrdering !== false ? (\n <MRT_GrabHandleButton\n onDragEnd={handleDragEnd}\n onDragStart={handleDragStart}\n table={table}\n />\n ) : (\n <Box sx={{ width: '28px' }} />\n ))}\n {!isSubMenu &&\n enablePinning &&\n (column.getCanPin() ? (\n <MRT_ColumnPinningButtons column={column} table={table} />\n ) : (\n <Box sx={{ width: '70px' }} />\n ))}\n {enableHiding ? (\n <FormControlLabel\n componentsProps={{\n typography: {\n sx: {\n mb: 0,\n opacity: columnDefType !== 'display' ? 1 : 0.5,\n },\n },\n }}\n checked={switchChecked}\n control={\n <Tooltip\n arrow\n enterDelay={1000}\n enterNextDelay={1000}\n title={localization.toggleVisibility}\n >\n <Switch />\n </Tooltip>\n }\n disabled={\n (isSubMenu && switchChecked) ||\n !column.getCanHide() ||\n column.getIsGrouped()\n }\n label={columnDef.header}\n onChange={() => handleToggleColumnHidden(column)}\n />\n ) : (\n <Typography sx={{ alignSelf: 'center' }}>\n {columnDef.header}\n </Typography>\n )}\n </Box>\n </MenuItem>\n {column.columns?.map((c: MRT_Column, i) => (\n <MRT_ShowHideColumnsMenuItems\n allColumns={allColumns}\n column={c}\n currentHoveredColumn={currentHoveredColumn}\n isSubMenu={isSubMenu}\n key={`${i}-${c.id}`}\n setCurrentHoveredColumn={setCurrentHoveredColumn}\n table={table}\n />\n ))}\n </>\n );\n};\n","import React, { FC, useMemo, useState } from 'react';\nimport { Button, Menu, Divider, Box } from '@mui/material';\nimport { MRT_ShowHideColumnsMenuItems } from './MRT_ShowHideColumnsMenuItems';\nimport type { MRT_Column, MRT_TableInstance } from '..';\nimport { getDefaultColumnOrderIds } from '../column.utils';\n\ninterface Props {\n anchorEl: HTMLElement | null;\n isSubMenu?: boolean;\n setAnchorEl: (anchorEl: HTMLElement | null) => void;\n table: MRT_TableInstance;\n}\n\nexport const MRT_ShowHideColumnsMenu: FC<Props> = ({\n anchorEl,\n isSubMenu,\n setAnchorEl,\n table,\n}) => {\n const {\n getAllColumns,\n getAllLeafColumns,\n getCenterLeafColumns,\n getIsAllColumnsVisible,\n getIsSomeColumnsPinned,\n getIsSomeColumnsVisible,\n getLeftLeafColumns,\n getRightLeafColumns,\n getState,\n toggleAllColumnsVisible,\n options: { localization, enablePinning, enableColumnOrdering },\n } = table;\n const { density, columnOrder, columnPinning } = getState();\n\n const hideAllColumns = () => {\n getAllLeafColumns()\n .filter((col) => col.columnDef.enableHiding !== false)\n .forEach((col) => col.toggleVisibility(false));\n };\n\n const allColumns = useMemo(() => {\n const columns = getAllColumns();\n if (\n columnOrder.length > 0 &&\n !columns.some((col) => col.columnDef.columnDefType === 'group')\n ) {\n return [\n ...getLeftLeafColumns(),\n ...Array.from(new Set(columnOrder)).map((colId) =>\n getCenterLeafColumns().find((col) => col?.id === colId),\n ),\n ...getRightLeafColumns(),\n ].filter(Boolean);\n }\n return columns;\n }, [\n columnOrder,\n columnPinning,\n getAllColumns(),\n getCenterLeafColumns(),\n getLeftLeafColumns(),\n getRightLeafColumns(),\n ]) as MRT_Column[];\n\n const [currentHoveredColumn, setCurrentHoveredColumn] =\n useState<MRT_Column | null>(null);\n\n return (\n <Menu\n anchorEl={anchorEl}\n open={!!anchorEl}\n onClose={() => setAnchorEl(null)}\n MenuListProps={{\n dense: density === 'compact',\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 && enableColumnOrdering && (\n <Button\n onClick={() =>\n table.setColumnOrder(\n getDefaultColumnOrderIds(table.options as any),\n )\n }\n >\n {localization.resetOrder}\n </Button>\n )}\n {!isSubMenu && enablePinning && (\n <Button\n disabled={!getIsSomeColumnsPinned()}\n onClick={() => table.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 {allColumns.map((column, index) => (\n <MRT_ShowHideColumnsMenuItems\n allColumns={allColumns}\n column={column}\n currentHoveredColumn={currentHoveredColumn}\n isSubMenu={isSubMenu}\n key={`${index}-${column.id}`}\n setCurrentHoveredColumn={setCurrentHoveredColumn}\n table={table}\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 table: MRT_TableInstance;\n}\n\nexport const MRT_ColumnActionMenu: FC<Props> = ({\n anchorEl,\n header,\n setAnchorEl,\n table,\n}) => {\n const {\n getState,\n toggleAllColumnsVisible,\n setColumnOrder,\n options: {\n enableColumnFilterChangeMode,\n enableColumnFilters,\n enableColumnResizing,\n enableGrouping,\n enableHiding,\n enablePinning,\n enableSorting,\n enabledColumnFilterOptions,\n icons: {\n ArrowRightIcon,\n ClearAllIcon,\n ViewColumnIcon,\n DynamicFeedIcon,\n FilterListIcon,\n FilterListOffIcon,\n PushPinIcon,\n SortIcon,\n RestartAltIcon,\n VisibilityOffIcon,\n },\n tableId,\n localization,\n },\n setShowFilters,\n } = table;\n const { column } = header;\n const { columnDef } = column;\n const { columnSizing, columnVisibility, density } = getState();\n\n const [filterMenuAnchorEl, setFilterMenuAnchorEl] =\n useState<null | HTMLElement>(null);\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-row-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-${tableId}-${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 const isSelectFilter = !!columnDef.filterSelectOptions;\n\n const allowedColumnFilterOptions =\n columnDef?.enabledColumnFilterOptions ?? enabledColumnFilterOptions;\n\n const showFilterModeSubMenu =\n enableColumnFilterChangeMode &&\n columnDef.enableColumnFilterChangeMode !== false &&\n !isSelectFilter &&\n (allowedColumnFilterOptions === undefined ||\n !!allowedColumnFilterOptions?.length);\n\n return (\n <Menu\n anchorEl={anchorEl}\n open={!!anchorEl}\n onClose={() => setAnchorEl(null)}\n MenuListProps={{\n dense: density === 'compact',\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(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(columnDef.header),\n )}\n </Box>\n </MenuItem>,\n ]}\n {enableColumnFilters &&\n column.getCanFilter() &&\n [\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(columnDef.header),\n )}\n </Box>\n {showFilterModeSubMenu && (\n <IconButton\n onClick={handleOpenFilterModeMenu}\n onMouseEnter={handleOpenFilterModeMenu}\n size=\"small\"\n sx={{ p: 0 }}\n >\n <ArrowRightIcon />\n </IconButton>\n )}\n </MenuItem>,\n showFilterModeSubMenu && (\n <MRT_FilterOptionMenu\n anchorEl={filterMenuAnchorEl}\n header={header}\n key={2}\n onSelect={handleFilterByColumn}\n setAnchorEl={setFilterMenuAnchorEl}\n table={table}\n />\n ),\n ].filter(Boolean)}\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(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 column.getCanResize() && [\n <MenuItem\n disabled={!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={columnDef.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(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(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 table={table}\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 table: MRT_TableInstance;\n}\n\nexport const MRT_RowActionMenu: FC<Props> = ({\n anchorEl,\n handleEdit,\n row,\n setAnchorEl,\n table,\n}) => {\n const {\n getState,\n options: {\n icons: { EditIcon },\n enableEditing,\n localization,\n renderRowActionMenuItems,\n },\n } = table;\n const { density } = getState();\n\n return (\n <Menu\n anchorEl={anchorEl}\n open={!!anchorEl}\n onClose={() => setAnchorEl(null)}\n MenuListProps={{\n dense: density === 'compact',\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 table,\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 table: MRT_TableInstance;\n}\n\nexport const MRT_EditActionButtons: FC<Props> = ({ row, table }) => {\n const {\n getState,\n options: {\n icons: { CancelIcon, SaveIcon },\n localization,\n onEditRowSubmit,\n },\n setCurrentEditingRow,\n } = table;\n const { currentEditingRow } = getState();\n\n const handleCancel = () => {\n row._valuesCache = row.original ?? {};\n setCurrentEditingRow(null);\n };\n\n const handleSave = () => {\n onEditRowSubmit?.({ row: currentEditingRow ?? row, table });\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 table: MRT_TableInstance;\n}\n\nexport const MRT_ToggleRowActionMenuButton: FC<Props> = ({ row, table }) => {\n const {\n getState,\n options: {\n enableEditing,\n icons: { EditIcon, MoreHorizIcon },\n localization,\n renderRowActionMenuItems,\n renderRowActions,\n },\n setCurrentEditingRow,\n } = table;\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, table })}</>\n ) : row.id === currentEditingRow?.id ? (\n <MRT_EditActionButtons row={row} table={table} />\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 table={table}\n />\n </>\n ) : null}\n </>\n );\n};\n","import React, { 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 table: MRT_TableInstance;\n}\n\nexport const MRT_SelectCheckbox: FC<Props> = ({ row, selectAll, table }) => {\n const {\n getState,\n options: {\n localization,\n muiSelectCheckboxProps,\n muiSelectAllCheckboxProps,\n selectAllMode,\n },\n } = table;\n const { density } = getState();\n\n const checkboxProps = !row\n ? muiSelectAllCheckboxProps instanceof Function\n ? muiSelectAllCheckboxProps({ table })\n : muiSelectAllCheckboxProps\n : muiSelectCheckboxProps instanceof Function\n ? muiSelectCheckboxProps({ row, table })\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 ? table.getIsAllRowsSelected() : row?.getIsSelected()\n }\n indeterminate={\n selectAll ? table.getIsSomeRowsSelected() : row?.getIsSomeSelected()\n }\n inputProps={{\n 'aria-label': selectAll\n ? localization.toggleSelectAll\n : localization.toggleSelectRow,\n }}\n onChange={\n !row\n ? selectAllMode === 'all'\n ? table.getToggleAllRowsSelectedHandler()\n : table.getToggleAllPageRowsSelectedHandler()\n : row.getToggleSelectedHandler()\n }\n size={density === 'compact' ? 'small' : 'medium'}\n {...checkboxProps}\n sx={(theme) => ({\n height: density === 'compact' ? '1.5rem' : '2rem',\n width: density === 'compact' ? '1.5rem' : '2rem',\n m: '-1re.m',\n ...(checkboxProps?.sx instanceof Function\n ? checkboxProps.sx(theme)\n : (checkboxProps?.sx as any)),\n })}\n />\n </Tooltip>\n );\n};\n","import React, { FC } from 'react';\nimport { IconButton, IconButtonProps, Tooltip } from '@mui/material';\nimport { MRT_TableInstance } from '..';\n\ninterface Props extends IconButtonProps {\n table: MRT_TableInstance;\n}\n\nexport const MRT_FullScreenToggleButton: FC<Props> = ({ table, ...rest }) => {\n const {\n getState,\n options: {\n icons: { FullscreenExitIcon, FullscreenIcon },\n localization,\n },\n setIsFullScreen,\n } = table;\n const { isFullScreen } = getState();\n\n const handleToggleFullScreen = () => {\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 table: MRT_TableInstance;\n}\n\nexport const MRT_ShowHideColumnsButton: FC<Props> = ({ table, ...rest }) => {\n const {\n options: {\n icons: { ViewColumnIcon },\n localization,\n },\n } = table;\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 table={table}\n />\n </>\n );\n};\n","import React, { FC } from 'react';\nimport { IconButton, IconButtonProps, Tooltip } from '@mui/material';\nimport { MRT_TableInstance } from '..';\n\ninterface Props extends IconButtonProps {\n table: MRT_TableInstance;\n}\n\nexport const MRT_ToggleDensePaddingButton: FC<Props> = ({ table, ...rest }) => {\n const {\n getState,\n options: {\n icons: { DensityLargeIcon, DensityMediumIcon, DensitySmallIcon },\n localization,\n },\n setDensity,\n } = table;\n const { density } = getState();\n\n const handleToggleDensePadding = () => {\n const nextDensity =\n density === 'comfortable'\n ? 'compact'\n : density === 'compact'\n ? 'spacious'\n : 'comfortable';\n setDensity(nextDensity);\n };\n\n return (\n <Tooltip arrow title={localization.toggleDensity}>\n <IconButton\n aria-label={localization.toggleDensity}\n onClick={handleToggleDensePadding}\n {...rest}\n >\n {density === 'compact' ? (\n <DensitySmallIcon />\n ) : density === 'comfortable' ? (\n <DensityMediumIcon />\n ) : (\n <DensityLargeIcon />\n )}\n </IconButton>\n </Tooltip>\n );\n};\n","import React, { FC } from 'react';\nimport { IconButton, IconButtonProps, Tooltip } from '@mui/material';\nimport { MRT_TableInstance } from '..';\n\ninterface Props extends IconButtonProps {\n table: MRT_TableInstance;\n}\n\nexport const MRT_ToggleFiltersButton: FC<Props> = ({ table, ...rest }) => {\n const {\n getState,\n options: {\n icons: { FilterListIcon, FilterListOffIcon },\n localization,\n },\n setShowFilters,\n } = table;\n const { showColumnFilters } = getState();\n\n const handleToggleShowFilters = () => {\n setShowFilters(!showColumnFilters);\n };\n\n return (\n <Tooltip arrow title={localization.showHideFilters}>\n <IconButton\n aria-label={localization.showHideFilters}\n onClick={handleToggleShowFilters}\n {...rest}\n >\n {showColumnFilters ? <FilterListOffIcon /> : <FilterListIcon />}\n </IconButton>\n </Tooltip>\n );\n};\n","import React, { FC } from 'react';\nimport { IconButton, IconButtonProps, Tooltip } from '@mui/material';\nimport { MRT_TableInstance } from '..';\n\ninterface Props extends IconButtonProps {\n table: MRT_TableInstance;\n}\n\nexport const MRT_ToggleGlobalFilterButton: FC<Props> = ({ table, ...rest }) => {\n const {\n getState,\n options: {\n icons: { SearchIcon, SearchOffIcon },\n tableId,\n localization,\n muiSearchTextFieldProps,\n },\n setShowGlobalFilter,\n } = table;\n const { showGlobalFilter } = getState();\n\n const textFieldProps =\n muiSearchTextFieldProps instanceof Function\n ? muiSearchTextFieldProps({ table })\n : muiSearchTextFieldProps;\n\n const handleToggleSearch = () => {\n setShowGlobalFilter(!showGlobalFilter);\n setTimeout(\n () =>\n document\n .getElementById(\n textFieldProps?.id ?? `mrt-${tableId}-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 table: MRT_TableInstance;\n}\n\nexport const MRT_GlobalFilterTextField: FC<Props> = ({ table }) => {\n const {\n getState,\n setGlobalFilter,\n options: {\n enableGlobalFilterChangeMode,\n icons: { SearchIcon, CloseIcon },\n localization,\n muiSearchTextFieldProps,\n tableId,\n },\n } = table;\n const { globalFilter, showGlobalFilter } = getState();\n\n const [anchorEl, setAnchorEl] = useState<null | HTMLElement>(null);\n const [searchValue, setSearchValue] = useState(globalFilter ?? '');\n\n const handleChangeDebounced = useCallback(\n debounce((event: ChangeEvent<HTMLInputElement>) => {\n setGlobalFilter(event.target.value ?? undefined);\n }, 250),\n [],\n );\n\n const handleChange = (event: ChangeEvent<HTMLInputElement>) => {\n setSearchValue(event.target.value);\n handleChangeDebounced(event);\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({ table })\n : muiSearchTextFieldProps;\n\n return (\n <Collapse in={showGlobalFilter} orientation=\"horizontal\">\n <TextField\n id={`mrt-${tableId}-search-text-field`}\n placeholder={localization.search}\n onChange={handleChange}\n value={searchValue ?? ''}\n variant=\"standard\"\n InputProps={{\n startAdornment: enableGlobalFilterChangeMode ? (\n <InputAdornment position=\"start\">\n <Tooltip arrow title={localization.changeSearchMode}>\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 </Tooltip>\n </InputAdornment>\n ) : (\n <SearchIcon />\n ),\n endAdornment: (\n <InputAdornment position=\"end\">\n <Tooltip arrow title={localization.clearSearch ?? ''}>\n <span>\n <IconButton\n aria-label={localization.clearSearch}\n disabled={!searchValue?.length}\n onClick={handleClear}\n size=\"small\"\n >\n <CloseIcon />\n </IconButton>\n </span>\n </Tooltip>\n </InputAdornment>\n ),\n }}\n {...textFieldProps}\n />\n <MRT_FilterOptionMenu\n anchorEl={anchorEl}\n setAnchorEl={setAnchorEl}\n table={table}\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_GlobalFilterTextField } from '../inputs/MRT_GlobalFilterTextField';\n\ninterface Props {\n table: MRT_TableInstance;\n}\n\nexport const MRT_ToolbarInternalButtons: FC<Props> = ({ table }) => {\n const {\n options: {\n enableColumnFilters,\n enableColumnOrdering,\n enableDensityToggle,\n enableFilters,\n enableFullScreenToggle,\n enableGlobalFilter,\n enableHiding,\n enablePinning,\n positionGlobalFilter,\n renderToolbarInternalActions,\n },\n } = table;\n\n return (\n <Box\n sx={{\n alignItems: 'center',\n display: 'flex',\n zIndex: 3,\n }}\n >\n {renderToolbarInternalActions?.({\n MRT_FullScreenToggleButton,\n MRT_ShowHideColumnsButton,\n MRT_ToggleDensePaddingButton,\n MRT_ToggleFiltersButton,\n MRT_ToggleGlobalFilterButton,\n table,\n }) ?? (\n <>\n {enableGlobalFilter && positionGlobalFilter === 'right' && (\n <MRT_GlobalFilterTextField table={table} />\n )}\n {enableFilters && enableGlobalFilter && (\n <MRT_ToggleGlobalFilterButton table={table} />\n )}\n {enableFilters && enableColumnFilters && (\n <MRT_ToggleFiltersButton table={table} />\n )}\n {(enableHiding || enableColumnOrdering || enablePinning) && (\n <MRT_ShowHideColumnsButton table={table} />\n )}\n {enableDensityToggle && (\n <MRT_ToggleDensePaddingButton table={table} />\n )}\n {enableFullScreenToggle && (\n <MRT_FullScreenToggleButton table={table} />\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 table: MRT_TableInstance;\n position: 'top' | 'bottom';\n}\n\nexport const MRT_TablePagination: FC<Props> = ({ table, position }) => {\n const {\n getPrePaginationRowModel,\n getState,\n setPageIndex,\n setPageSize,\n options: {\n muiTablePaginationProps,\n enableToolbarInternalActions,\n rowCount,\n },\n } = table;\n const {\n pagination: { pageSize = 10, pageIndex = 0 },\n showGlobalFilter,\n } = getState();\n\n const totalRowCount = rowCount ?? getPrePaginationRowModel().rows.length;\n const showFirstLastPageButtons = totalRowCount / pageSize > 2;\n\n const tablePaginationProps =\n muiTablePaginationProps instanceof Function\n ? muiTablePaginationProps({ table })\n : muiTablePaginationProps;\n\n const handleChangeRowsPerPage = (event: ChangeEvent<HTMLInputElement>) => {\n setPageSize(+event.target.value);\n };\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={totalRowCount}\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={(theme) => ({\n m: '0 0.5rem',\n mt:\n position === 'top' &&\n enableToolbarInternalActions &&\n !showGlobalFilter\n ? '3.5rem'\n : undefined,\n position: 'relative',\n zIndex: 2,\n ...(tablePaginationProps?.sx instanceof Function\n ? tablePaginationProps.sx(theme)\n : (tablePaginationProps?.sx as any)),\n })}\n />\n );\n};\n","import React, { FC, Fragment } from 'react';\nimport { Alert, AlertTitle, Box, Chip, Collapse } from '@mui/material';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n stackAlertBanner?: boolean;\n table: MRT_TableInstance;\n}\n\nexport const MRT_ToolbarAlertBanner: FC<Props> = ({\n stackAlertBanner,\n table,\n}) => {\n const {\n getPrePaginationRowModel,\n getSelectedRowModel,\n getState,\n options: { localization, muiTableToolbarAlertBannerProps },\n } = table;\n const { grouping, showAlertBanner } = getState();\n\n const alertProps =\n muiTableToolbarAlertBannerProps instanceof Function\n ? muiTableToolbarAlertBannerProps({ table })\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={table.getColumn(columnId).columnDef.header}\n onDelete={() => table.getColumn(columnId).toggleGrouping()}\n />\n </Fragment>\n ))}\n </span>\n ) : null;\n\n return (\n <Collapse\n in={showAlertBanner || !!selectMessage || !!groupedByMessage}\n timeout={stackAlertBanner ? 200 : 0}\n >\n <Alert\n color=\"info\"\n icon={false}\n {...alertProps}\n sx={(theme) => ({\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 instanceof Function\n ? alertProps.sx(theme)\n : (alertProps?.sx as any)),\n })}\n >\n {alertProps?.title && <AlertTitle>{alertProps.title}</AlertTitle>}\n <Box sx={{ p: '0.5rem 1rem' }}>\n {alertProps?.children}\n {alertProps?.children && (selectMessage || groupedByMessage) && (\n <br />\n )}\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 isTopToolbar: boolean;\n table: MRT_TableInstance;\n}\n\nexport const MRT_LinearProgressBar: FC<Props> = ({ isTopToolbar, table }) => {\n const {\n options: { muiLinearProgressProps },\n getState,\n } = table;\n const { isLoading, showProgressBars } = getState();\n\n const linearProgressProps =\n muiLinearProgressProps instanceof Function\n ? muiLinearProgressProps({ isTopToolbar, table })\n : muiLinearProgressProps;\n\n return (\n <Collapse\n in={isLoading || showProgressBars}\n mountOnEnter\n unmountOnExit\n sx={{\n bottom: isTopToolbar ? 0 : undefined,\n position: 'absolute',\n top: !isTopToolbar ? 0 : undefined,\n width: '100%',\n }}\n >\n <LinearProgress\n aria-label=\"Loading\"\n aria-busy=\"true\"\n sx={{ position: 'relative' }}\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 '..';\nimport { MRT_GlobalFilterTextField } from '../inputs/MRT_GlobalFilterTextField';\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 zIndex: 1,\n});\n\ninterface Props {\n table: MRT_TableInstance;\n}\n\nexport const MRT_ToolbarTop: FC<Props> = ({ table }) => {\n const {\n getState,\n options: {\n enableGlobalFilter,\n enablePagination,\n enableToolbarInternalActions,\n muiTableToolbarTopProps,\n positionGlobalFilter,\n positionPagination,\n positionToolbarAlertBanner,\n renderToolbarTopCustomActions,\n tableId,\n },\n } = table;\n\n const { isFullScreen, showGlobalFilter } = getState();\n\n const isMobile = useMediaQuery('(max-width:720px)');\n\n const toolbarProps =\n muiTableToolbarTopProps instanceof Function\n ? muiTableToolbarTopProps({ table })\n : muiTableToolbarTopProps;\n\n const stackAlertBanner =\n isMobile ||\n (positionToolbarAlertBanner === 'top' &&\n (!!renderToolbarTopCustomActions || showGlobalFilter));\n\n return (\n <Toolbar\n id={`mrt-${tableId}-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 instanceof Function\n ? toolbarProps.sx(theme)\n : (toolbarProps?.sx as any)),\n } as any)\n }\n >\n {positionToolbarAlertBanner === 'top' && (\n <MRT_ToolbarAlertBanner\n stackAlertBanner={stackAlertBanner}\n table={table}\n />\n )}\n <Box\n sx={{\n alignItems: 'flex-start',\n boxSizing: 'border-box',\n display: 'flex',\n justifyContent: 'space-between',\n p: '0.5rem',\n position: stackAlertBanner ? 'relative' : 'absolute',\n right: 0,\n top: 0,\n width: '100%',\n }}\n >\n {enableGlobalFilter && positionGlobalFilter === 'left' && (\n <MRT_GlobalFilterTextField table={table} />\n )}\n\n {renderToolbarTopCustomActions?.({ table }) ?? <span />}\n {enableToolbarInternalActions ? (\n <MRT_ToolbarInternalButtons table={table} />\n ) : (\n enableGlobalFilter &&\n positionGlobalFilter === 'right' && (\n <MRT_GlobalFilterTextField table={table} />\n )\n )}\n </Box>\n {enablePagination &&\n ['top', 'both'].includes(positionPagination ?? '') && (\n <MRT_TablePagination table={table} position=\"top\" />\n )}\n <MRT_LinearProgressBar isTopToolbar table={table} />\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_ToolbarAlertBanner } from './MRT_ToolbarAlertBanner';\nimport { MRT_LinearProgressBar } from './MRT_LinearProgressBar';\nimport { commonToolbarStyles } from './MRT_ToolbarTop';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n table: MRT_TableInstance;\n}\n\nexport const MRT_ToolbarBottom: FC<Props> = ({ table }) => {\n const {\n getState,\n options: {\n enablePagination,\n muiTableToolbarBottomProps,\n positionPagination,\n positionToolbarAlertBanner,\n renderToolbarBottomCustomActions,\n tableId,\n },\n } = table;\n const { isFullScreen } = getState();\n\n const isMobile = useMediaQuery('(max-width:720px)');\n\n const toolbarProps =\n muiTableToolbarBottomProps instanceof Function\n ? muiTableToolbarBottomProps({ table })\n : muiTableToolbarBottomProps;\n\n const stackAlertBanner =\n isMobile ||\n (positionToolbarAlertBanner === 'bottom' &&\n !!renderToolbarBottomCustomActions);\n\n return (\n <Toolbar\n id={`mrt-${tableId}-toolbar-bottom`}\n variant=\"dense\"\n {...toolbarProps}\n sx={(theme) =>\n ({\n ...commonToolbarStyles({ theme }),\n bottom: isFullScreen ? '0' : undefined,\n boxShadow: `-3px 0 6px ${alpha(theme.palette.common.black, 0.1)}`,\n left: 0,\n position: isFullScreen ? 'fixed' : 'relative',\n right: 0,\n ...(toolbarProps?.sx instanceof Function\n ? toolbarProps.sx(theme)\n : (toolbarProps?.sx as any)),\n } as any)\n }\n >\n <MRT_LinearProgressBar isTopToolbar={false} table={table} />\n {positionToolbarAlertBanner === 'bottom' && (\n <MRT_ToolbarAlertBanner table={table} />\n )}\n <Box\n sx={{\n display: 'flex',\n justifyContent: 'space-between',\n width: '100%',\n }}\n >\n {renderToolbarBottomCustomActions ? (\n <Box sx={{ p: '0.5rem' }}>\n {renderToolbarBottomCustomActions({ table })}\n </Box>\n ) : (\n <span />\n )}\n <Box\n sx={{\n display: 'flex',\n justifyContent: 'flex-end',\n position: stackAlertBanner ? 'relative' : 'absolute',\n right: 0,\n top: 0,\n }}\n >\n {enablePagination &&\n ['bottom', 'both'].includes(positionPagination ?? '') && (\n <MRT_TablePagination table={table} position=\"bottom\" />\n )}\n </Box>\n </Box>\n </Toolbar>\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 table: MRT_TableInstance;\n}\n\nexport const MRT_TableHeadCellColumnActionsButton: FC<Props> = ({\n header,\n table,\n}) => {\n const {\n options: {\n icons: { MoreVertIcon },\n localization,\n muiTableHeadCellColumnActionsButtonProps,\n },\n } = table;\n const { column } = header;\n const { columnDef } = column;\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, table })\n : muiTableHeadCellColumnActionsButtonProps;\n\n const mcTableHeadCellColumnActionsButtonProps =\n columnDef.muiTableHeadCellColumnActionsButtonProps instanceof Function\n ? columnDef.muiTableHeadCellColumnActionsButtonProps({\n column,\n table,\n })\n : columnDef.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={(theme) => ({\n height: '2rem',\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 instanceof Function\n ? iconButtonProps.sx(theme)\n : (iconButtonProps?.sx as any)),\n })}\n >\n <MoreVertIcon />\n </IconButton>\n </Tooltip>\n <MRT_ColumnActionMenu\n anchorEl={anchorEl}\n header={header}\n setAnchorEl={setAnchorEl}\n table={table}\n />\n </>\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 { MRT_FilterOptionMenu } from '../menus/MRT_FilterOptionMenu';\nimport type { MRT_Header, MRT_TableInstance } from '..';\n\ninterface Props {\n header: MRT_Header;\n inputIndex?: number;\n table: MRT_TableInstance;\n}\n\nexport const MRT_FilterTextField: FC<Props> = ({\n header,\n inputIndex,\n table,\n}) => {\n const {\n getState,\n options: {\n enableColumnFilterChangeMode,\n enabledColumnFilterOptions,\n icons: { FilterListIcon, CloseIcon },\n localization,\n muiTableHeadCellFilterTextFieldProps,\n tableId,\n },\n setCurrentFilterFns,\n } = table;\n const { column } = header;\n const { columnDef } = column;\n const { currentFilterFns } = getState();\n\n const [anchorEl, setAnchorEl] = useState<null | HTMLElement>(null);\n\n const mTableHeadCellFilterTextFieldProps =\n muiTableHeadCellFilterTextFieldProps instanceof Function\n ? muiTableHeadCellFilterTextFieldProps({ column, table })\n : muiTableHeadCellFilterTextFieldProps;\n\n const mcTableHeadCellFilterTextFieldProps =\n columnDef.muiTableHeadCellFilterTextFieldProps instanceof Function\n ? columnDef.muiTableHeadCellFilterTextFieldProps({\n column,\n table,\n })\n : columnDef.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((event: ChangeEvent<HTMLInputElement>) => {\n let value =\n textFieldProps.type === 'date'\n ? new Date(event.target.value)\n : event.target.value;\n if (inputIndex !== undefined) {\n column.setFilterValue((old: [string, string | Date]) => {\n const newFilterValues = old ?? ['', ''];\n newFilterValues[inputIndex] = value;\n return newFilterValues;\n });\n } else {\n column.setFilterValue(value ?? undefined);\n }\n }, 200),\n [],\n );\n\n const handleChange = (event: ChangeEvent<HTMLInputElement>) => {\n setFilterValue(event.target.value);\n handleChangeDebounced(event);\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]: 'fuzzy',\n }));\n };\n\n if (columnDef.Filter) {\n return <>{columnDef.Filter?.({ header, table })}</>;\n }\n\n const filterId = `mrt-${tableId}-${header.id}-filter-text-field${\n inputIndex ?? ''\n }`;\n const currentFilterOption = currentFilterFns?.[header.id];\n const isSelectFilter = !!columnDef.filterSelectOptions;\n const filterChipLabel = ['empty', 'notEmpty'].includes(currentFilterOption)\n ? //@ts-ignore\n localization[\n `filter${\n currentFilterOption.charAt(0).toUpperCase() +\n currentFilterOption.slice(1)\n }`\n ]\n : '';\n const filterPlaceholder =\n inputIndex === undefined\n ? localization.filterByColumn?.replace(\n '{column}',\n String(columnDef.header),\n )\n : inputIndex === 0\n ? localization.min\n : inputIndex === 1\n ? localization.max\n : '';\n\n const allowedColumnFilterOptions =\n columnDef?.enabledColumnFilterOptions ?? enabledColumnFilterOptions;\n\n const showChangeModeButton =\n enableColumnFilterChangeMode &&\n columnDef.enableColumnFilterChangeMode !== false &&\n !isSelectFilter &&\n !inputIndex &&\n (allowedColumnFilterOptions === undefined ||\n !!allowedColumnFilterOptions?.length);\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 showChangeModeButton ? (\n <label htmlFor={filterId}>\n {localization.filterMode.replace(\n '{filterType}',\n // @ts-ignore\n localization[\n `filter${\n currentFilterOption.charAt(0).toUpperCase() +\n currentFilterOption.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 margin=\"none\"\n placeholder={\n filterChipLabel || isSelectFilter ? undefined : filterPlaceholder\n }\n onChange={handleChange}\n onClick={(e: MouseEvent<HTMLInputElement>) => e.stopPropagation()}\n select={isSelectFilter}\n value={filterValue ?? ''}\n variant=\"standard\"\n InputProps={{\n startAdornment: showChangeModeButton ? (\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 <FilterListIcon />\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={(theme) => ({\n m: '-0.25rem',\n p: 0,\n minWidth: !filterChipLabel ? '8rem' : 'auto',\n width: 'calc(100% + 0.5rem)',\n '&\t.MuiSelect-icon': {\n mr: '1.5rem',\n },\n ...(textFieldProps?.sx instanceof Function\n ? textFieldProps.sx(theme)\n : (textFieldProps?.sx as any)),\n })}\n >\n {isSelectFilter && (\n <MenuItem divider disabled={!filterValue} value=\"\">\n {localization.clearFilter}\n </MenuItem>\n )}\n {columnDef?.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 table={table}\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 table: MRT_TableInstance;\n}\n\nexport const MRT_FilterRangeFields: FC<Props> = ({ header, table }) => {\n return (\n <Box sx={{ display: 'grid', gridTemplateColumns: '6fr 6fr', gap: '1rem' }}>\n <MRT_FilterTextField header={header} inputIndex={0} table={table} />\n <MRT_FilterTextField header={header} inputIndex={1} table={table} />\n </Box>\n );\n};\n","import React, { FC } from 'react';\nimport { Collapse } from '@mui/material';\nimport { MRT_FilterRangeFields } from '../inputs/MRT_FilterRangeFields';\nimport { MRT_FilterTextField } from '../inputs/MRT_FilterTextField';\nimport { MRT_Header, MRT_TableInstance } from '..';\n\ninterface Props {\n header: MRT_Header;\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableHeadCellFilterContainer: FC<Props> = ({\n header,\n table,\n}) => {\n const { getState } = table;\n const { currentFilterFns, showColumnFilters } = getState();\n const { column } = header;\n\n return (\n <Collapse in={showColumnFilters} mountOnEnter unmountOnExit>\n {currentFilterFns[column.id] === 'between' ? (\n <MRT_FilterRangeFields header={header} table={table} />\n ) : (\n <MRT_FilterTextField header={header} table={table} />\n )}\n </Collapse>\n );\n};\n","import React, { FC, MouseEvent } from 'react';\nimport { Grow, IconButton, Tooltip } from '@mui/material';\nimport { MRT_Header, MRT_TableInstance } from '..';\n\ninterface Props {\n header: MRT_Header;\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableHeadCellFilterLabel: FC<Props> = ({ header, table }) => {\n const {\n getState,\n options: {\n icons: { FilterAltIcon },\n localization,\n },\n } = table;\n const { currentFilterFns } = getState();\n const { column } = header;\n const { columnDef } = column;\n\n const currentFilterOption = currentFilterFns?.[header.id];\n const filterTooltip = localization.filteringByColumn\n .replace('{column}', String(columnDef.header))\n .replace(\n '{filterType}',\n // @ts-ignore\n localization[\n `filter${\n currentFilterOption.charAt(0).toUpperCase() +\n currentFilterOption.slice(1)\n }`\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\n return (\n <Grow\n unmountOnExit\n in={\n (!!column.getFilterValue() && currentFilterOption !== 'between') ||\n (currentFilterOption === 'between' && // @ts-ignore\n (!!column.getFilterValue()?.[0] || !!column.getFilterValue()?.[1]))\n }\n >\n <span>\n <Tooltip arrow placement=\"top\" title={filterTooltip}>\n <IconButton\n disableRipple\n onClick={(event: MouseEvent<HTMLButtonElement>) => {\n event.stopPropagation();\n }}\n size=\"small\"\n sx={{\n m: 0,\n opacity: 0.8,\n p: '2px',\n transform: 'scale(0.66)',\n width: '1.5ch',\n }}\n >\n <FilterAltIcon />\n </IconButton>\n </Tooltip>\n </span>\n </Grow>\n );\n};\n","import React, { DragEvent, FC, RefObject } from 'react';\nimport { MRT_GrabHandleButton } from '../buttons/MRT_GrabHandleButton';\nimport { reorderColumn } from '../column.utils';\nimport type { MRT_Column, MRT_TableInstance } from '..';\n\ninterface Props {\n column: MRT_Column;\n table: MRT_TableInstance;\n tableHeadCellRef: RefObject<HTMLTableCellElement>;\n}\n\nexport const MRT_TableHeadCellGrabHandle: FC<Props> = ({\n column,\n table,\n tableHeadCellRef,\n}) => {\n const {\n getState,\n options: {\n enableColumnOrdering,\n muiTableHeadCellDragHandleProps,\n onColumnDrop,\n },\n setColumnOrder,\n setCurrentDraggingColumn,\n setCurrentHoveredColumn,\n } = table;\n const { columnDef } = column;\n const { currentHoveredColumn, currentDraggingColumn, columnOrder } =\n getState();\n\n const mIconButtonProps =\n muiTableHeadCellDragHandleProps instanceof Function\n ? muiTableHeadCellDragHandleProps({ column, table })\n : muiTableHeadCellDragHandleProps;\n\n const mcIconButtonProps =\n columnDef.muiTableHeadCellDragHandleProps instanceof Function\n ? columnDef.muiTableHeadCellDragHandleProps({ column, table })\n : columnDef.muiTableHeadCellDragHandleProps;\n\n const iconButtonProps = {\n ...mIconButtonProps,\n ...mcIconButtonProps,\n };\n\n const handleDragStart = (e: DragEvent<HTMLButtonElement>) => {\n setCurrentDraggingColumn(column);\n e.dataTransfer.setDragImage(tableHeadCellRef.current as HTMLElement, 0, 0);\n };\n\n const handleDragEnd = (event: DragEvent<HTMLButtonElement>) => {\n onColumnDrop?.({\n event,\n draggedColumn: column,\n targetColumn: currentHoveredColumn,\n });\n if (\n enableColumnOrdering &&\n currentHoveredColumn &&\n currentHoveredColumn?.id !== currentDraggingColumn?.id\n ) {\n setColumnOrder(reorderColumn(column, currentHoveredColumn, columnOrder));\n }\n setCurrentDraggingColumn(null);\n setCurrentHoveredColumn(null);\n };\n\n return (\n <MRT_GrabHandleButton\n iconButtonProps={iconButtonProps}\n onDragStart={handleDragStart}\n onDragEnd={handleDragEnd}\n table={table}\n />\n );\n};\n","import React, { FC } from 'react';\nimport { Divider, Theme } from '@mui/material';\nimport { MRT_Header, MRT_TableInstance } from '..';\n\ninterface Props {\n header: MRT_Header;\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableHeadCellResizeHandle: FC<Props> = ({ header, table }) => {\n const {\n getState,\n options: { columnResizeMode },\n } = table;\n const { density, showColumnFilters } = getState();\n const { column } = header;\n const { columnDef } = column;\n const { columnDefType } = columnDef;\n\n return (\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: showColumnFilters && columnDefType === 'data' ? '4rem' : '2rem',\n mr: density === 'compact' ? '-0.5rem' : '-1rem',\n opacity: 0.8,\n position: 'absolute',\n right: '1px',\n touchAction: 'none',\n transition: column.getIsResizing() ? undefined : 'all 0.2s ease-in-out',\n userSelect: 'none',\n zIndex: 4,\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(${\n (getState().columnSizingInfo.deltaOffset ?? 0) /\n (columnResizeMode === 'onChange' ? 16 : 1)\n }px)`\n : 'none',\n }}\n />\n );\n};\n","import React, { FC } from 'react';\nimport { TableSortLabel, Tooltip } from '@mui/material';\nimport { MRT_Header, MRT_TableInstance } from '..';\n\ninterface Props {\n header: MRT_Header;\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableHeadCellSortLabel: FC<Props> = ({ header, table }) => {\n const {\n options: { localization },\n } = table;\n const { column } = header;\n const { columnDef } = column;\n\n const sortTooltip = !!column.getIsSorted()\n ? column.getIsSorted() === 'desc'\n ? localization.sortedByColumnDesc.replace('{column}', columnDef.header)\n : localization.sortedByColumnAsc.replace('{column}', columnDef.header)\n : localization.unsorted;\n\n return (\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 sx={{\n width: '2ch',\n transform: 'translateX(-0.5ch)',\n }}\n />\n </Tooltip>\n );\n};\n","import React, { DragEvent, FC, ReactNode } from 'react';\nimport { Box, TableCell, Theme, alpha, lighten, useTheme } from '@mui/material';\nimport { MRT_TableHeadCellColumnActionsButton } from './MRT_TableHeadCellColumnActionsButton';\nimport { MRT_TableHeadCellFilterContainer } from './MRT_TableHeadCellFilterContainer';\nimport { MRT_TableHeadCellFilterLabel } from './MRT_TableHeadCellFilterLabel';\nimport { MRT_TableHeadCellGrabHandle } from './MRT_TableHeadCellGrabHandle';\nimport { MRT_TableHeadCellResizeHandle } from './MRT_TableHeadCellResizeHandle';\nimport { MRT_TableHeadCellSortLabel } from './MRT_TableHeadCellSortLabel';\nimport type { MRT_Header, MRT_TableInstance } from '..';\n\ninterface Props {\n header: MRT_Header;\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableHeadCell: FC<Props> = ({ header, table }) => {\n const theme = useTheme();\n const {\n getState,\n options: {\n enableColumnActions,\n enableColumnDragging,\n enableColumnOrdering,\n enableColumnResizing,\n enableGrouping,\n enableMultiSort,\n muiTableHeadCellProps,\n },\n setCurrentHoveredColumn,\n } = table;\n const { density, currentDraggingColumn, currentHoveredColumn } = getState();\n const { column } = header;\n const { columnDef } = column;\n const { columnDefType } = columnDef;\n\n const mTableHeadCellProps =\n muiTableHeadCellProps instanceof Function\n ? muiTableHeadCellProps({ column, table })\n : muiTableHeadCellProps;\n\n const mcTableHeadCellProps =\n columnDef.muiTableHeadCellProps instanceof Function\n ? columnDef.muiTableHeadCellProps({ column, table })\n : columnDef.muiTableHeadCellProps;\n\n const tableCellProps = {\n ...mTableHeadCellProps,\n ...mcTableHeadCellProps,\n };\n\n const getIsLastLeftPinnedColumn = () => {\n return (\n column.getIsPinned() === 'left' &&\n table.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 (table.getRightLeafHeaders().length - 1 - column.getPinnedIndex()) * 150\n );\n };\n\n const handleDragEnter = (_e: DragEvent) => {\n if (enableColumnOrdering && currentDraggingColumn) {\n setCurrentHoveredColumn(\n columnDef.enableColumnOrdering !== false ? column : null,\n );\n }\n };\n\n const draggingBorder =\n currentDraggingColumn?.id === column.id\n ? `1px dashed ${theme.palette.divider}`\n : currentHoveredColumn?.id === column.id\n ? `2px dashed ${theme.palette.primary.main}`\n : undefined;\n\n const draggingBorders = draggingBorder\n ? {\n borderLeft: draggingBorder,\n borderRight: draggingBorder,\n borderTop: draggingBorder,\n }\n : undefined;\n\n const headerElement = ((columnDef?.Header instanceof Function\n ? columnDef?.Header?.({\n header,\n table,\n })\n : columnDef?.Header) ?? columnDef.header) as ReactNode;\n\n const tableHeadCellRef = React.useRef<HTMLTableCellElement>(null);\n\n return (\n <TableCell\n align={columnDefType === 'group' ? 'center' : 'left'}\n colSpan={header.colSpan}\n onDragEnter={handleDragEnter}\n ref={tableHeadCellRef}\n {...tableCellProps}\n sx={(theme: Theme) => ({\n backgroundColor:\n column.getIsPinned() && 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 left:\n column.getIsPinned() === 'left'\n ? `${column.getStart('left')}px`\n : undefined,\n overflow: 'visible',\n opacity:\n currentDraggingColumn?.id === column.id ||\n currentHoveredColumn?.id === column.id\n ? 0.5\n : 1,\n p:\n density === 'compact'\n ? columnDefType === 'display'\n ? '0 0.5rem'\n : '0.5rem'\n : density === 'comfortable'\n ? columnDefType === 'display'\n ? '0.5rem 0.75rem'\n : '1rem'\n : columnDefType === 'display'\n ? '1rem 1.25rem'\n : '1.5rem',\n pb: columnDefType === 'display' ? 0 : undefined,\n position:\n column.getIsPinned() && columnDefType !== 'group'\n ? 'sticky'\n : undefined,\n pt:\n columnDefType === 'group'\n ? 0\n : density === 'compact'\n ? '0.25'\n : density === 'comfortable'\n ? '.75rem'\n : '1.25rem',\n right:\n column.getIsPinned() === 'right' ? `${getTotalRight()}px` : undefined,\n transition: `all ${enableColumnResizing ? 0 : '0.2s'} ease-in-out`,\n userSelect: enableMultiSort && column.getCanSort() ? 'none' : undefined,\n verticalAlign: 'top',\n zIndex:\n column.getIsResizing() || currentDraggingColumn?.id === column.id\n ? 3\n : column.getIsPinned() && columnDefType !== 'group'\n ? 2\n : 1,\n ...(tableCellProps?.sx instanceof Function\n ? tableCellProps.sx(theme)\n : (tableCellProps?.sx as any)),\n ...draggingBorders,\n maxWidth: `min(${column.getSize()}px, fit-content)`,\n minWidth: `max(${column.getSize()}px, ${columnDef.minSize ?? 30}px)`,\n width: header.getSize(),\n })}\n >\n {header.isPlaceholder ? null : (\n <Box\n sx={{\n alignItems: 'flex-start',\n display: 'flex',\n justifyContent:\n columnDefType === 'group' ? 'center' : 'space-between',\n position: 'relative',\n width: '100%',\n }}\n >\n <Box\n onClick={column.getToggleSortingHandler()}\n sx={{\n alignItems: 'center',\n cursor:\n column.getCanSort() && columnDefType !== 'group'\n ? 'pointer'\n : undefined,\n display: 'flex',\n flexWrap: 'nowrap',\n m: tableCellProps?.align === 'center' ? 'auto' : undefined,\n pl: tableCellProps?.align === 'center' ? '1rem' : undefined,\n whiteSpace:\n (columnDef.header?.length ?? 0) < 24 ? 'nowrap' : 'normal',\n }}\n >\n {headerElement}\n {column.getCanSort() && (\n <MRT_TableHeadCellSortLabel header={header} table={table} />\n )}\n {column.getCanFilter() && (\n <MRT_TableHeadCellFilterLabel header={header} table={table} />\n )}\n </Box>\n {columnDefType !== 'group' && (\n <Box sx={{ whiteSpace: 'nowrap' }}>\n {((enableColumnDragging &&\n columnDef.enableColumnDragging !== false) ||\n (enableColumnOrdering &&\n columnDef.enableColumnOrdering !== false) ||\n (enableGrouping && columnDef.enableGrouping !== false)) && (\n <MRT_TableHeadCellGrabHandle\n column={column}\n table={table}\n tableHeadCellRef={tableHeadCellRef}\n />\n )}\n {(enableColumnActions || columnDef.enableColumnActions) &&\n columnDef.enableColumnActions !== false && (\n <MRT_TableHeadCellColumnActionsButton\n header={header}\n table={table}\n />\n )}\n </Box>\n )}\n {column.getCanResize() && (\n <MRT_TableHeadCellResizeHandle header={header} table={table} />\n )}\n </Box>\n )}\n {column.getCanFilter() && (\n <MRT_TableHeadCellFilterContainer header={header} table={table} />\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 table: MRT_TableInstance;\n}\n\nexport const MRT_TableHeadRow: FC<Props> = ({ headerGroup, table }) => {\n const {\n options: { muiTableHeadRowProps },\n } = table;\n\n const tableRowProps =\n muiTableHeadRowProps instanceof Function\n ? muiTableHeadRowProps({ headerGroup, table })\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 table={table}\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 table: MRT_TableInstance;\n}\n\nexport const MRT_TableHead: FC<Props> = ({ table }) => {\n const {\n getHeaderGroups,\n options: { muiTableHeadProps },\n } = table;\n\n const tableHeadProps =\n muiTableHeadProps instanceof Function\n ? muiTableHeadProps({ table })\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 table={table}\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 table: MRT_TableInstance;\n}\n\nexport const MRT_EditCellTextField: FC<Props> = ({ cell, table }) => {\n const {\n getState,\n options: {\n tableId,\n enableEditing,\n muiTableBodyCellEditTextFieldProps,\n onCellEditBlur,\n onCellEditChange,\n },\n setCurrentEditingCell,\n setCurrentEditingRow,\n } = table;\n const { column, row } = cell;\n const { columnDef } = column;\n\n const [value, setValue] = useState(cell.getValue<string>());\n\n const handleChange = (event: ChangeEvent<HTMLInputElement>) => {\n setValue(event.target.value);\n columnDef.onCellEditChange?.({ event, cell, table });\n onCellEditChange?.({ event, cell, table });\n };\n\n const handleBlur = (event: FocusEvent<HTMLInputElement>) => {\n if (getState().currentEditingRow) {\n if (!row._valuesCache) row._valuesCache = {};\n (row._valuesCache as Record<string, any>)[column.id] = value;\n setCurrentEditingRow({ ...getState().currentEditingRow } as MRT_Row);\n }\n setCurrentEditingCell(null);\n columnDef.onCellEditBlur?.({ event, cell, table });\n onCellEditBlur?.({ event, cell, table });\n };\n\n const mTableBodyCellEditTextFieldProps =\n muiTableBodyCellEditTextFieldProps instanceof Function\n ? muiTableBodyCellEditTextFieldProps({ cell, table })\n : muiTableBodyCellEditTextFieldProps;\n\n const mcTableBodyCellEditTextFieldProps =\n columnDef.muiTableBodyCellEditTextFieldProps instanceof Function\n ? columnDef.muiTableBodyCellEditTextFieldProps({\n cell,\n table,\n })\n : columnDef.muiTableBodyCellEditTextFieldProps;\n\n const textFieldProps = {\n ...mTableBodyCellEditTextFieldProps,\n ...mcTableBodyCellEditTextFieldProps,\n };\n\n if (enableEditing && columnDef.enableEditing !== false && columnDef.Edit) {\n return <>{columnDef.Edit?.({ cell, table })}</>;\n }\n\n return (\n <TextField\n id={`mrt-${tableId}-edit-cell-text-field-${cell.id}`}\n margin=\"dense\"\n onBlur={handleBlur}\n onChange={handleChange}\n onClick={(e: MouseEvent<HTMLInputElement>) => e.stopPropagation()}\n placeholder={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 table: MRT_TableInstance;\n}\n\nexport const MRT_CopyButton: FC<Props> = ({ cell, children, table }) => {\n const {\n options: { localization, muiTableBodyCellCopyButtonProps },\n } = table;\n const { column } = cell;\n const { columnDef } = column;\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, table })\n : muiTableBodyCellCopyButtonProps;\n\n const mcTableBodyCellCopyButtonProps =\n columnDef.muiTableBodyCellCopyButtonProps instanceof Function\n ? columnDef.muiTableBodyCellCopyButtonProps({\n cell,\n table,\n })\n : columnDef.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 onClick={() => handleCopy(cell.getValue())}\n size=\"small\"\n type=\"button\"\n variant=\"text\"\n {...buttonProps}\n sx={(theme) => ({\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 instanceof Function\n ? buttonProps.sx(theme)\n : (buttonProps?.sx as any)),\n })}\n >\n {children}\n </Button>\n </Tooltip>\n );\n};\n","import React, { DragEvent, FC, RefObject } from 'react';\nimport { MRT_Cell, MRT_TableInstance } from '..';\nimport { MRT_GrabHandleButton } from '../buttons/MRT_GrabHandleButton';\n\ninterface Props {\n cell: MRT_Cell;\n rowRef: RefObject<HTMLTableRowElement>;\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableBodyRowGrabHandle: FC<Props> = ({\n cell,\n rowRef,\n table,\n}) => {\n const {\n options: { muiTableBodyRowDragHandleProps, onRowDrop },\n } = table;\n\n const iconButtonProps =\n muiTableBodyRowDragHandleProps instanceof Function\n ? muiTableBodyRowDragHandleProps({ row: cell.row, table })\n : muiTableBodyRowDragHandleProps;\n\n const handleDragStart = (e: DragEvent<HTMLButtonElement>) => {\n e.dataTransfer.setDragImage(rowRef.current as HTMLElement, 0, 0);\n table.setCurrentDraggingRow(cell.row as any);\n };\n\n const handleDragEnd = (event: DragEvent<HTMLButtonElement>) => {\n onRowDrop?.({\n event,\n draggedRow: table.getState().currentDraggingRow as any,\n targetRow: table.getState().currentHoveredRow as any,\n });\n table.setCurrentDraggingRow(null);\n table.setCurrentHoveredRow(null);\n };\n\n return (\n <MRT_GrabHandleButton\n iconButtonProps={iconButtonProps}\n onDragStart={handleDragStart}\n onDragEnd={handleDragEnd}\n table={table}\n />\n );\n};\n","import React, { DragEvent, FC, MouseEvent, RefObject, useMemo } from 'react';\nimport {\n alpha,\n darken,\n lighten,\n Skeleton,\n TableCell,\n useTheme,\n} from '@mui/material';\nimport { MRT_EditCellTextField } from '../inputs/MRT_EditCellTextField';\nimport { MRT_CopyButton } from '../buttons/MRT_CopyButton';\nimport type { MRT_Cell, MRT_TableInstance } from '..';\nimport { MRT_TableBodyRowGrabHandle } from './MRT_TableBodyRowGrabHandle';\n\ninterface Props {\n cell: MRT_Cell;\n enableHover?: boolean;\n rowIndex: number;\n rowRef: RefObject<HTMLTableRowElement>;\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableBodyCell: FC<Props> = ({\n cell,\n enableHover,\n rowIndex,\n rowRef,\n table,\n}) => {\n const theme = useTheme();\n const {\n getState,\n options: {\n editingMode,\n enableClickToCopy,\n enableColumnOrdering,\n enableEditing,\n enableRowNumbers,\n muiTableBodyCellProps,\n muiTableBodyCellSkeletonProps,\n rowNumberMode,\n tableId,\n },\n setCurrentEditingCell,\n setCurrentHoveredColumn,\n } = table;\n const {\n currentDraggingColumn,\n currentEditingCell,\n currentEditingRow,\n currentHoveredColumn,\n density,\n isLoading,\n showSkeletons,\n } = getState();\n const { column, row } = cell;\n const { columnDef } = column;\n const { columnDefType } = columnDef;\n\n const mTableCellBodyProps =\n muiTableBodyCellProps instanceof Function\n ? muiTableBodyCellProps({ cell, table })\n : muiTableBodyCellProps;\n\n const mcTableCellBodyProps =\n columnDef.muiTableBodyCellProps instanceof Function\n ? columnDef.muiTableBodyCellProps({ cell, table })\n : columnDef.muiTableBodyCellProps;\n\n const tableCellProps = {\n ...mTableCellBodyProps,\n ...mcTableCellBodyProps,\n };\n\n const skeletonWidth = useMemo(\n () =>\n columnDefType === 'display'\n ? column.getSize() / 2\n : Math.random() * (column.getSize() - column.getSize() / 3) +\n column.getSize() / 3,\n [],\n );\n\n const isEditable =\n (enableEditing || columnDef.enableEditing) &&\n columnDef.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 || columnDef.enableEditing) &&\n columnDef.enableEditing !== false &&\n editingMode === 'cell'\n ) {\n setCurrentEditingCell(cell);\n setTimeout(() => {\n const textField = document.getElementById(\n `mrt-${tableId}-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 table.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 (table.getRightLeafHeaders().length - 1 - column.getPinnedIndex()) * 150\n );\n };\n\n const handleDragEnter = (_e: DragEvent) => {\n if (enableColumnOrdering && currentDraggingColumn) {\n setCurrentHoveredColumn(\n columnDef.enableColumnOrdering !== false ? column : null,\n );\n }\n };\n\n const draggingBorder =\n currentDraggingColumn?.id === column.id\n ? `1px dashed ${theme.palette.divider}`\n : currentHoveredColumn?.id === column.id\n ? `2px dashed ${theme.palette.primary.main}`\n : undefined;\n\n const draggingBorders = draggingBorder\n ? {\n borderLeft: draggingBorder,\n borderRight: draggingBorder,\n borderBottom:\n row.index === table.getRowModel().rows.length - 1\n ? draggingBorder\n : undefined,\n }\n : undefined;\n\n return (\n <TableCell\n onDoubleClick={handleDoubleClick}\n onDragEnter={handleDragEnter}\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 opacity:\n currentDraggingColumn?.id === column.id ||\n currentHoveredColumn?.id === column.id\n ? 0.5\n : 1,\n overflow: 'hidden',\n p:\n density === 'compact'\n ? columnDefType === 'display'\n ? '0 0.5rem'\n : '0.5rem'\n : density === 'comfortable'\n ? columnDefType === 'display'\n ? '0.5rem 0.75rem'\n : '1rem'\n : columnDefType === 'display'\n ? '1rem 1.25rem'\n : '1.5rem',\n pl:\n column.id === 'mrt-row-expand'\n ? `${\n row.depth +\n (density === 'compact'\n ? 0.5\n : density === 'comfortable'\n ? 0.75\n : 1.25)\n }rem`\n : undefined,\n position: column.getIsPinned() ? 'sticky' : 'relative',\n right:\n column.getIsPinned() === 'right' ? `${getTotalRight()}px` : undefined,\n textOverflow: columnDefType !== 'display' ? 'ellipsis' : undefined,\n transition: 'all 0.2s ease-in-out',\n whiteSpace: density === 'compact' ? 'nowrap' : 'normal',\n zIndex:\n currentDraggingColumn?.id === column.id\n ? 2\n : column.getIsPinned()\n ? 1\n : undefined,\n '&:hover': {\n backgroundColor:\n enableHover && enableEditing && editingMode !== 'row'\n ? theme.palette.mode === 'dark'\n ? `${lighten(\n theme.palette.background.default,\n 0.13,\n )} !important`\n : `${darken(theme.palette.background.default, 0.07)} !important`\n : undefined,\n },\n ...(tableCellProps?.sx instanceof Function\n ? tableCellProps.sx(theme)\n : (tableCellProps?.sx as any)),\n ...draggingBorders,\n maxWidth: `min(${column.getSize()}px, fit-content)`,\n minWidth: `max(${column.getSize()}px, ${columnDef.minSize ?? 30}px)`,\n width: column.getSize(),\n })}\n >\n <>\n {cell.getIsPlaceholder() ? null : isLoading || showSkeletons ? (\n <Skeleton\n animation=\"wave\"\n height={20}\n width={skeletonWidth}\n {...muiTableBodyCellSkeletonProps}\n />\n ) : enableRowNumbers &&\n rowNumberMode === 'static' &&\n column.id === 'mrt-row-numbers' ? (\n rowIndex + 1\n ) : column.id === 'mrt-row-drag' ? (\n <MRT_TableBodyRowGrabHandle\n cell={cell}\n rowRef={rowRef}\n table={table}\n />\n ) : columnDefType === 'display' ? (\n columnDef.Cell?.({ cell, table })\n ) : isEditing ? (\n <MRT_EditCellTextField cell={cell} table={table} />\n ) : (enableClickToCopy || columnDef.enableClickToCopy) &&\n columnDef.enableClickToCopy !== false ? (\n <>\n <MRT_CopyButton cell={cell} table={table}>\n <>{columnDef?.Cell?.({ cell, table }) ?? cell.renderValue()}</>\n </MRT_CopyButton>\n {cell.getIsGrouped() && <> ({row.subRows?.length})</>}\n </>\n ) : (\n <>\n {columnDef?.Cell?.({ cell, table }) ?? cell.renderValue()}\n {cell.getIsGrouped() && <> ({row.subRows?.length ?? ''})</>}\n </>\n )}\n </>\n </TableCell>\n );\n};\n","import React, { FC } from 'react';\nimport { Collapse, TableCell, TableRow } from '@mui/material';\nimport type { MRT_Row, MRT_TableInstance } from '..';\n\ninterface Props {\n row: MRT_Row;\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableDetailPanel: FC<Props> = ({ row, table }) => {\n const {\n getVisibleLeafColumns,\n options: {\n muiTableBodyRowProps,\n muiTableDetailPanelProps,\n renderDetailPanel,\n },\n } = table;\n\n const tableRowProps =\n muiTableBodyRowProps instanceof Function\n ? muiTableBodyRowProps({ row, table })\n : muiTableBodyRowProps;\n\n const tableCellProps =\n muiTableDetailPanelProps instanceof Function\n ? muiTableDetailPanelProps({ row, table })\n : muiTableDetailPanelProps;\n\n return (\n <TableRow {...tableRowProps}>\n <TableCell\n colSpan={getVisibleLeafColumns().length}\n {...tableCellProps}\n sx={(theme) => ({\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 width: `${table.getTotalSize()}px`,\n ...(tableCellProps?.sx instanceof Function\n ? tableCellProps.sx(theme)\n : (tableCellProps?.sx as any)),\n })}\n >\n {renderDetailPanel && (\n <Collapse in={row.getIsExpanded()}>\n {renderDetailPanel({ row, table })}\n </Collapse>\n )}\n </TableCell>\n </TableRow>\n );\n};\n","import React, { DragEvent, FC, useRef } from 'react';\nimport { darken, lighten, TableRow, useTheme } 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 rowIndex: number;\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableBodyRow: FC<Props> = ({ row, rowIndex, table }) => {\n const theme = useTheme();\n const {\n getIsSomeColumnsPinned,\n getState,\n options: { enableRowOrdering, muiTableBodyRowProps, renderDetailPanel },\n setCurrentHoveredRow,\n } = table;\n const { currentDraggingRow, currentHoveredRow } = getState();\n\n const tableRowProps =\n muiTableBodyRowProps instanceof Function\n ? muiTableBodyRowProps({ row, table })\n : muiTableBodyRowProps;\n\n const handleDragEnter = (_e: DragEvent) => {\n if (enableRowOrdering && currentDraggingRow) {\n setCurrentHoveredRow(row);\n }\n };\n\n const rowRef = useRef<HTMLTableRowElement>(null);\n\n const draggingBorder =\n currentDraggingRow?.id === row.id\n ? `1px dashed ${theme.palette.divider}`\n : currentHoveredRow?.id === row.id\n ? `2px dashed ${theme.palette.primary.main}`\n : undefined;\n\n const draggingBorders = draggingBorder\n ? {\n border: draggingBorder,\n }\n : undefined;\n\n return (\n <>\n <TableRow\n onDragEnter={handleDragEnter}\n hover\n selected={row.getIsSelected()}\n ref={rowRef}\n {...tableRowProps}\n sx={(theme) => ({\n backgroundColor: lighten(theme.palette.background.default, 0.06),\n opacity:\n currentDraggingRow?.id === row.id ||\n currentHoveredRow?.id === row.id\n ? 0.5\n : 1,\n transition: 'all 0.2s ease-in-out',\n '&:hover td': {\n backgroundColor:\n tableRowProps?.hover !== false && getIsSomeColumnsPinned()\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 instanceof Function\n ? tableRowProps.sx(theme)\n : (tableRowProps?.sx as any)),\n ...draggingBorders,\n })}\n >\n {row?.getVisibleCells()?.map?.((cell) => (\n <MRT_TableBodyCell\n cell={cell}\n key={cell.id}\n enableHover={tableRowProps?.hover !== false}\n rowIndex={rowIndex}\n rowRef={rowRef}\n table={table}\n />\n ))}\n </TableRow>\n {renderDetailPanel && !row.getIsGrouped() && (\n <MRT_TableDetailPanel row={row} table={table} />\n )}\n </>\n );\n};\n","import React, { FC, RefObject, useMemo } from 'react';\nimport { useVirtual } from 'react-virtual';\nimport { TableBody } from '@mui/material';\nimport { MRT_TableBodyRow } from './MRT_TableBodyRow';\nimport { rankGlobalFuzzy } from '../sortingFns';\nimport type { MRT_Row, MRT_TableInstance } from '..';\n\ninterface Props {\n table: MRT_TableInstance;\n tableContainerRef: RefObject<HTMLDivElement>;\n}\n\nexport const MRT_TableBody: FC<Props> = ({ table, tableContainerRef }) => {\n const {\n getRowModel,\n getPrePaginationRowModel,\n getState,\n options: {\n enableGlobalFilterRankedResults,\n enablePagination,\n enableRowVirtualization,\n muiTableBodyProps,\n virtualizerProps,\n },\n } = table;\n const { density, globalFilter, pagination, sorting } = getState();\n\n const tableBodyProps =\n muiTableBodyProps instanceof Function\n ? muiTableBodyProps({ table })\n : muiTableBodyProps;\n\n const getIsSomeColumnsSorted = () => {\n return Object.values(sorting).some(Boolean);\n };\n\n const rows = useMemo(() => {\n if (\n enableGlobalFilterRankedResults &&\n globalFilter &&\n !getIsSomeColumnsSorted()\n ) {\n const rankedRows = getPrePaginationRowModel().rows.sort((a, b) =>\n rankGlobalFuzzy(a, b),\n );\n if (enablePagination) {\n return rankedRows.slice(0, pagination.pageSize);\n }\n return rankedRows;\n }\n\n return enablePagination\n ? getRowModel().rows\n : getPrePaginationRowModel().rows;\n }, [\n enableGlobalFilterRankedResults,\n (enableGlobalFilterRankedResults && globalFilter) || !enablePagination\n ? getPrePaginationRowModel().rows\n : getRowModel().rows,\n globalFilter,\n ]);\n\n const rowVirtualizer = enableRowVirtualization\n ? useVirtual({\n // estimateSize: () => (density === 'compact' ? 25 : 50),\n overscan: density === 'compact' ? 30 : 10,\n parentRef: tableContainerRef,\n size: rows.length,\n ...virtualizerProps,\n })\n : ({} as any);\n\n const virtualRows = enableRowVirtualization\n ? rowVirtualizer.virtualItems\n : [];\n\n let paddingTop = 0;\n let paddingBottom = 0;\n if (enableRowVirtualization) {\n paddingTop = virtualRows.length > 0 ? virtualRows[0].start : 0;\n paddingBottom =\n virtualRows.length > 0\n ? rowVirtualizer.totalSize - virtualRows[virtualRows.length - 1].end\n : 0;\n }\n\n return (\n <TableBody {...tableBodyProps}>\n {enableRowVirtualization && paddingTop > 0 && (\n <tr>\n <td style={{ height: `${paddingTop}px` }} />\n </tr>\n )}\n {(enableRowVirtualization ? virtualRows : rows).map(\n (rowOrVirtualRow: any, rowIndex: number) => {\n const row = enableRowVirtualization\n ? (rows[rowOrVirtualRow.index] as MRT_Row)\n : (rowOrVirtualRow as MRT_Row);\n return (\n <MRT_TableBodyRow\n key={row.id}\n row={row}\n rowIndex={\n enableRowVirtualization ? rowOrVirtualRow.index : rowIndex\n }\n table={table}\n />\n );\n },\n )}\n {enableRowVirtualization && paddingBottom > 0 && (\n <tr>\n <td style={{ height: `${paddingBottom}px` }} />\n </tr>\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 table: MRT_TableInstance;\n}\n\nexport const MRT_TableFooterCell: FC<Props> = ({ footer, table }) => {\n const {\n getState,\n options: { muiTableFooterCellProps, enableColumnResizing },\n } = table;\n const { density } = getState();\n const { column } = footer;\n const { columnDef } = column;\n const { columnDefType } = columnDef;\n\n const mTableFooterCellProps =\n muiTableFooterCellProps instanceof Function\n ? muiTableFooterCellProps({ column, table })\n : muiTableFooterCellProps;\n\n const mcTableFooterCellProps =\n columnDef.muiTableFooterCellProps instanceof Function\n ? columnDef.muiTableFooterCellProps({ column, table })\n : columnDef.muiTableFooterCellProps;\n\n const tableCellProps = {\n ...mTableFooterCellProps,\n ...mcTableFooterCellProps,\n };\n\n return (\n <TableCell\n align={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:\n density === 'compact'\n ? '0.5rem'\n : density === 'comfortable'\n ? '1rem'\n : '1.5rem',\n transition: `all ${enableColumnResizing ? '10ms' : '0.2s'} ease-in-out`,\n width: column.getSize(),\n verticalAlign: 'text-top',\n ...(tableCellProps?.sx instanceof Function\n ? tableCellProps.sx(theme)\n : (tableCellProps?.sx as any)),\n })}\n >\n <>\n {footer.isPlaceholder\n ? null\n : (columnDef.Footer instanceof Function\n ? columnDef.Footer?.({\n footer,\n table,\n })\n : columnDef.Footer) ??\n columnDef.footer ??\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 table: MRT_TableInstance;\n}\n\nexport const MRT_TableFooterRow: FC<Props> = ({ footerGroup, table }) => {\n const {\n options: { muiTableFooterRowProps },\n } = table;\n\n // if no content in row, skip row\n if (\n !footerGroup.headers?.some(\n (header) =>\n (typeof header.column.columnDef.footer === 'string' &&\n !!header.column.columnDef.footer) ||\n header.column.columnDef.Footer,\n )\n )\n return null;\n\n const tableRowProps =\n muiTableFooterRowProps instanceof Function\n ? muiTableFooterRowProps({ footerGroup, table })\n : muiTableFooterRowProps;\n\n return (\n <TableRow {...tableRowProps}>\n {footerGroup.headers.map((footer: MRT_Header) => (\n <MRT_TableFooterCell footer={footer} key={footer.id} table={table} />\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 table: MRT_TableInstance;\n}\n\nexport const MRT_TableFooter: FC<Props> = ({ table }) => {\n const {\n getFooterGroups,\n options: { muiTableFooterProps },\n } = table;\n\n const tableFooterProps =\n muiTableFooterProps instanceof Function\n ? muiTableFooterProps({ table })\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 table={table}\n />\n ))}\n </TableFooter>\n );\n};\n","import React, { FC, RefObject } 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 tableContainerRef: RefObject<HTMLDivElement>;\n table: MRT_TableInstance;\n}\n\nexport const MRT_Table: FC<Props> = ({ tableContainerRef, table }) => {\n const {\n getState,\n options: {\n enableColumnResizing,\n enableRowVirtualization,\n enableStickyHeader,\n enableTableFooter,\n enableTableHead,\n muiTableProps,\n },\n } = table;\n const { isFullScreen } = getState();\n\n const tableProps =\n muiTableProps instanceof Function\n ? muiTableProps({ table })\n : muiTableProps;\n\n return (\n <Table\n stickyHeader={\n enableStickyHeader || enableRowVirtualization || isFullScreen\n }\n {...tableProps}\n sx={(theme) => ({\n tableLayout:\n enableColumnResizing || enableRowVirtualization ? 'fixed' : 'auto',\n ...(tableProps?.sx instanceof Function\n ? tableProps.sx(theme)\n : (tableProps?.sx as any)),\n })}\n >\n {enableTableHead && <MRT_TableHead table={table} />}\n <MRT_TableBody tableContainerRef={tableContainerRef} table={table} />\n {enableTableFooter && <MRT_TableFooter table={table} />}\n </Table>\n );\n};\n","import React, { FC, useEffect, useLayoutEffect, useState } from 'react';\nimport { TableContainer } from '@mui/material';\nimport { MRT_Table } from './MRT_Table';\nimport type { MRT_TableInstance } from '..';\n\nconst useIsomorphicLayoutEffect =\n typeof window !== 'undefined' ? useLayoutEffect : useEffect;\n\ninterface Props {\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableContainer: FC<Props> = ({ table }) => {\n const {\n getState,\n options: {\n enableStickyHeader,\n enableRowVirtualization,\n muiTableContainerProps,\n tableId,\n },\n } = table;\n const { isFullScreen } = getState();\n\n const [totalToolbarHeight, setTotalToolbarHeight] = useState(0);\n\n const tableContainerProps =\n muiTableContainerProps instanceof Function\n ? muiTableContainerProps({ table })\n : muiTableContainerProps;\n\n useIsomorphicLayoutEffect(() => {\n const topToolbarHeight =\n typeof document !== 'undefined'\n ? document?.getElementById(`mrt-${tableId}-toolbar-top`)\n ?.offsetHeight ?? 0\n : 0;\n\n const bottomToolbarHeight =\n typeof document !== 'undefined'\n ? document?.getElementById(`mrt-${tableId}-toolbar-bottom`)\n ?.offsetHeight ?? 0\n : 0;\n\n setTotalToolbarHeight(topToolbarHeight + bottomToolbarHeight);\n });\n\n const tableContainerRef = React.useRef<HTMLDivElement>(null);\n\n return (\n <TableContainer\n ref={tableContainerRef}\n {...tableContainerProps}\n sx={(theme) => ({\n maxWidth: '100%',\n maxHeight:\n enableStickyHeader || enableRowVirtualization\n ? `clamp(350px, calc(100vh - ${totalToolbarHeight}px), 9999px)`\n : undefined,\n overflow: 'auto',\n ...(tableContainerProps?.sx instanceof Function\n ? tableContainerProps.sx(theme)\n : (tableContainerProps?.sx as any)),\n })}\n style={{\n maxHeight: isFullScreen\n ? `calc(100vh - ${totalToolbarHeight}px)`\n : undefined,\n ...tableContainerProps?.style,\n }}\n >\n <MRT_Table tableContainerRef={tableContainerRef} table={table} />\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 type { MRT_TableInstance } from '..';\n\ninterface Props {\n table: MRT_TableInstance;\n}\n\nexport const MRT_TablePaper: FC<Props> = ({ table }) => {\n const {\n getState,\n options: { enableToolbarBottom, enableToolbarTop, muiTablePaperProps },\n } = table;\n const { isFullScreen } = getState();\n\n useEffect(() => {\n if (typeof window !== 'undefined') {\n if (isFullScreen) {\n document.body.style.height = '100vh';\n } else {\n document.body.style.height = 'auto';\n }\n }\n }, [isFullScreen]);\n\n const tablePaperProps =\n muiTablePaperProps instanceof Function\n ? muiTablePaperProps({ table })\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 ...tablePaperProps?.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 table={table} />}\n <MRT_TableContainer table={table} />\n {enableToolbarBottom && <MRT_ToolbarBottom table={table} />}\n </Paper>\n );\n};\n","import React, { useEffect, useMemo, useState } from 'react';\nimport {\n TableState,\n getCoreRowModel,\n getExpandedRowModel,\n getFacetedRowModel,\n getFilteredRowModel,\n getGroupedRowModel,\n getPaginationRowModel,\n getSortedRowModel,\n useReactTable,\n} from '@tanstack/react-table';\nimport { Box, Dialog, Grow } from '@mui/material';\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 { MRT_TablePaper } from './MRT_TablePaper';\nimport {\n prepareColumns,\n getAllLeafColumnDefs,\n getDefaultColumnOrderIds,\n} from '../column.utils';\nimport { MRT_FilterFns } from '../filtersFns';\nimport type {\n MRT_Cell,\n MRT_Column,\n MRT_ColumnDef,\n MRT_FilterOption,\n MRT_Row,\n MRT_TableInstance,\n MRT_TableState,\n MaterialReactTableProps,\n} from '..';\n\nconst defaultDisplayColumnDefOptions = {\n columnDefType: 'display',\n enableClickToCopy: false,\n enableColumnActions: false,\n enableColumnDragging: false,\n enableColumnFilter: false,\n enableColumnOrdering: false,\n enableEditing: false,\n enableGlobalFilter: false,\n enableGrouping: false,\n enableHiding: false,\n enablePinning: false,\n enableResizing: false,\n enableSorting: false,\n} as Partial<MRT_ColumnDef>;\n\nexport const MRT_TableRoot = <TData extends Record<string, any> = {}>(\n props: MaterialReactTableProps<TData>,\n) => {\n const [tableId, setIdPrefix] = useState(props.tableId);\n useEffect(\n () =>\n setIdPrefix(props.tableId ?? Math.random().toString(36).substring(2, 9)),\n [props.tableId],\n );\n\n const initialState: Partial<MRT_TableState<TData>> = useMemo(() => {\n const initState = props.initialState ?? {};\n initState.columnOrder =\n initState.columnOrder ?? getDefaultColumnOrderIds(props);\n return initState;\n }, []);\n\n const [columnOrder, setColumnOrder] = useState(\n initialState.columnOrder ?? [],\n );\n const [currentDraggingColumn, setCurrentDraggingColumn] =\n useState<MRT_Column<TData> | null>(\n initialState.currentDraggingColumn ?? null,\n );\n const [currentDraggingRow, setCurrentDraggingRow] =\n useState<MRT_Row<TData> | null>(initialState.currentDraggingRow ?? null);\n const [currentEditingCell, setCurrentEditingCell] =\n useState<MRT_Cell<TData> | null>(initialState.currentEditingCell ?? null);\n const [currentEditingRow, setCurrentEditingRow] =\n useState<MRT_Row<TData> | null>(initialState.currentEditingRow ?? null);\n const [currentHoveredColumn, setCurrentHoveredColumn] =\n useState<MRT_Column<TData> | null>(\n initialState.currentHoveredColumn ?? null,\n );\n const [currentHoveredRow, setCurrentHoveredRow] =\n useState<MRT_Row<TData> | null>(initialState.currentHoveredRow ?? null);\n const [density, setDensity] = useState(\n initialState?.density ?? 'comfortable',\n );\n const [isFullScreen, setIsFullScreen] = useState(\n initialState?.isFullScreen ?? false,\n );\n const [showAlertBanner, setShowAlertBanner] = useState(\n props.initialState?.showAlertBanner ?? false,\n );\n const [showColumnFilters, setShowFilters] = useState(\n initialState?.showColumnFilters ?? false,\n );\n const [showGlobalFilter, setShowGlobalFilter] = useState(\n initialState?.showGlobalFilter ?? false,\n );\n const [currentFilterFns, setCurrentFilterFns] = useState<{\n [key: string]: MRT_FilterOption;\n }>(() =>\n Object.assign(\n {},\n ...getAllLeafColumnDefs(props.columns as MRT_ColumnDef<TData>[]).map(\n (col) => ({\n [col.id?.toString() ?? col.accessorKey?.toString() ?? '']:\n col.filterFn instanceof Function\n ? col.filterFn.name ?? 'custom'\n : col.filterFn ??\n initialState?.currentFilterFns?.[\n col.id?.toString() ?? col.accessorKey?.toString() ?? ''\n ] ??\n (!!col.filterSelectOptions?.length ? 'equals' : 'fuzzy'),\n }),\n ),\n ),\n );\n const [currentGlobalFilterFn, setCurrentGlobalFilterFn] =\n useState<MRT_FilterOption>(\n props.globalFilterFn instanceof String\n ? (props.globalFilterFn as MRT_FilterOption)\n : 'fuzzy',\n );\n\n const displayColumns = useMemo(\n () =>\n (\n [\n columnOrder.includes('mrt-row-drag') && {\n header: props.localization?.move,\n size: 60,\n ...defaultDisplayColumnDefOptions,\n ...props.displayColumnDefOptions?.['mrt-row-drag'],\n id: 'mrt-row-drag',\n },\n columnOrder.includes('mrt-row-actions') && {\n Cell: ({ cell }) => (\n <MRT_ToggleRowActionMenuButton\n row={cell.row as any}\n table={table}\n />\n ),\n header: props.localization?.actions,\n size: 70,\n ...defaultDisplayColumnDefOptions,\n ...props.displayColumnDefOptions?.['mrt-row-actions'],\n id: 'mrt-row-actions',\n },\n columnOrder.includes('mrt-row-expand') && {\n Cell: ({ cell }) => (\n <MRT_ExpandButton row={cell.row as any} table={table} />\n ),\n Header: () =>\n props.enableExpandAll ? (\n <MRT_ExpandAllButton table={table} />\n ) : null,\n header: props.localization?.expand,\n size: 60,\n ...defaultDisplayColumnDefOptions,\n ...props.displayColumnDefOptions?.['mrt-row-expand'],\n id: 'mrt-row-expand',\n },\n columnOrder.includes('mrt-row-select') && {\n Cell: ({ cell }) => (\n <MRT_SelectCheckbox row={cell.row as any} table={table} />\n ),\n Header: () =>\n props.enableSelectAll ? (\n <MRT_SelectCheckbox selectAll table={table} />\n ) : null,\n header: props.localization?.select,\n size: 60,\n ...defaultDisplayColumnDefOptions,\n ...props.displayColumnDefOptions?.['mrt-row-select'],\n id: 'mrt-row-select',\n },\n columnOrder.includes('mrt-row-numbers') && {\n Cell: ({ cell }) => cell.row.index + 1,\n Header: () => props.localization?.rowNumber,\n header: props.localization?.rowNumbers,\n size: 60,\n ...defaultDisplayColumnDefOptions,\n ...props.displayColumnDefOptions?.['mrt-row-numbers'],\n id: 'mrt-row-numbers',\n },\n ] as MRT_ColumnDef<TData>[]\n ).filter(Boolean),\n [\n columnOrder,\n props.displayColumnDefOptions,\n props.editingMode,\n props.enableColumnDragging,\n props.enableColumnOrdering,\n props.enableEditing,\n props.enableExpandAll,\n props.enableExpanding,\n props.enableGrouping,\n props.enableRowActions,\n props.enableRowDragging,\n props.enableRowNumbers,\n props.enableRowOrdering,\n props.enableRowSelection,\n props.enableSelectAll,\n props.localization,\n props.muiTableBodyCellProps,\n props.muiTableHeadCellProps,\n props.positionActionsColumn,\n ],\n );\n\n const columnDefs = useMemo(\n () =>\n prepareColumns([...displayColumns, ...props.columns], currentFilterFns),\n [currentFilterFns, displayColumns, props.columns],\n );\n\n const data: TData[] = 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 (col) => ({\n [col.id ?? col.accessorKey ?? '']: null,\n }),\n ),\n ),\n )\n : props.data,\n [props.data, props.state?.isLoading, props.state?.showSkeletons],\n );\n\n //@ts-ignore\n const table = {\n ...useReactTable({\n getCoreRowModel: getCoreRowModel(),\n getExpandedRowModel: getExpandedRowModel(),\n getFacetedRowModel: getFacetedRowModel(),\n getFilteredRowModel: getFilteredRowModel(),\n getGroupedRowModel: getGroupedRowModel(),\n getPaginationRowModel: getPaginationRowModel(),\n getSortedRowModel: getSortedRowModel(),\n onColumnOrderChange: setColumnOrder,\n ...props,\n //@ts-ignore\n columns: columnDefs,\n data,\n getSubRows: (row) => row?.subRows,\n globalFilterFn:\n MRT_FilterFns[currentGlobalFilterFn] ?? MRT_FilterFns.fuzzy,\n initialState,\n state: {\n columnOrder,\n currentDraggingColumn,\n currentDraggingRow,\n currentEditingCell,\n currentEditingRow,\n currentFilterFns,\n currentGlobalFilterFn,\n currentHoveredColumn,\n currentHoveredRow,\n density,\n isFullScreen,\n showAlertBanner,\n showColumnFilters,\n showGlobalFilter,\n ...props.state,\n } as TableState,\n tableId,\n }),\n setCurrentDraggingColumn:\n props.onCurrentDraggingColumnChange ?? setCurrentDraggingColumn,\n setCurrentDraggingRow:\n props.onCurrentDraggingRowChange ?? setCurrentDraggingRow,\n setCurrentEditingCell:\n props.onCurrentEditingCellChange ?? setCurrentEditingCell,\n setCurrentEditingRow:\n props.onCurrentEditingRowChange ?? setCurrentEditingRow,\n setCurrentFilterFns: props.onCurrentFilterFnsChange ?? setCurrentFilterFns,\n setCurrentGlobalFilterFn:\n props.onCurrentGlobalFilterFnChange ?? setCurrentGlobalFilterFn,\n setCurrentHoveredColumn:\n props.onCurrentHoveredColumnChange ?? setCurrentHoveredColumn,\n setCurrentHoveredRow:\n props.onCurrentHoveredRowChange ?? setCurrentHoveredRow,\n setDensity: props.onDensityChange ?? setDensity,\n setIsFullScreen: props.onIsFullScreenChange ?? setIsFullScreen,\n setShowAlertBanner: props.onShowAlertBannerChange ?? setShowAlertBanner,\n setShowFilters: props.onShowFiltersChange ?? setShowFilters,\n setShowGlobalFilter: props.onShowGlobalFilterChange ?? setShowGlobalFilter,\n } as MRT_TableInstance;\n\n useEffect(() => props?.onTableInstanceChange?.(table as any), [table]);\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 table={table} />\n </Dialog>\n {!isFullScreen && <MRT_TablePaper table={table} />}\n </>\n );\n};\n","import React, {\n ChangeEvent,\n Dispatch,\n DragEvent,\n FC,\n FocusEvent,\n ReactNode,\n SetStateAction,\n} from 'react';\nimport type {\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 type {\n Cell,\n Column,\n ColumnDef,\n FilterFn,\n Header,\n HeaderGroup,\n OnChangeFn,\n Row,\n SortingFn,\n Table,\n TableOptions,\n TableState,\n} from '@tanstack/react-table';\nimport type { Options as VirtualizerOptions } from 'react-virtual';\nimport { MRT_Localization, MRT_DefaultLocalization_EN } from './localization';\nimport { MRT_Default_Icons, MRT_Icons } from './icons';\nimport { MRT_TableRoot } from './table/MRT_TableRoot';\nimport { MRT_FilterFns } from './filtersFns';\nimport { MRT_SortingFns } from './sortingFns';\n\ntype LiteralUnion<T extends U, U = string> = T | (U & Record<never, never>);\n\nexport interface MRT_RowModel<TData extends Record<string, any> = {}> {\n flatRows: MRT_Row<TData>[];\n rows: MRT_Row<TData>[];\n rowsById: { [key: string]: MRT_Row<TData> };\n}\n\nexport type MRT_TableInstance<TData extends Record<string, any> = {}> = Omit<\n Table<TData>,\n | 'getAllColumns'\n | 'getAllFlatColumns'\n | 'getAllLeafColumns'\n | 'getCenterLeafColumns'\n | 'getColumn'\n | 'getExpandedRowModel'\n | 'getFlatHeaders'\n | 'getLeftLeafColumns'\n | 'getPaginationRowModel'\n | 'getPreFilteredRowModel'\n | 'getPrePaginationRowModel'\n | 'getRightLeafColumns'\n | 'getRowModel'\n | 'getSelectedRowModel'\n | 'getState'\n | 'options'\n> & {\n getAllColumns: () => MRT_Column<TData>[];\n getAllFlatColumns: () => MRT_Column<TData>[];\n getAllLeafColumns: () => MRT_Column<TData>[];\n getCenterLeafColumns: () => MRT_Column<TData>[];\n getColumn: (columnId: string) => MRT_Column<TData>;\n getExpandedRowModel: () => MRT_RowModel<TData>;\n getFlatHeaders: () => MRT_Header<TData>[];\n getLeftLeafColumns: () => MRT_Column<TData>[];\n getPaginationRowModel: () => MRT_RowModel<TData>;\n getPreFilteredRowModel: () => MRT_RowModel<TData>;\n getPrePaginationRowModel: () => MRT_RowModel<TData>;\n getRightLeafColumns: () => MRT_Column<TData>[];\n getRowModel: () => MRT_RowModel<TData>;\n getSelectedRowModel: () => MRT_RowModel<TData>;\n getState: () => MRT_TableState<TData>;\n options: MaterialReactTableProps<TData> & {\n icons: MRT_Icons;\n tableId: string;\n localization: MRT_Localization;\n };\n setCurrentDraggingColumn: Dispatch<SetStateAction<MRT_Column<TData> | null>>;\n setCurrentDraggingRow: Dispatch<SetStateAction<MRT_Row<TData> | null>>;\n setCurrentEditingCell: Dispatch<SetStateAction<MRT_Cell | null>>;\n setCurrentEditingRow: Dispatch<SetStateAction<MRT_Row | null>>;\n setCurrentFilterFns: Dispatch<\n SetStateAction<{\n [key: string]: MRT_FilterOption;\n }>\n >;\n setCurrentGlobalFilterFn: Dispatch<SetStateAction<MRT_FilterOption>>;\n setCurrentHoveredColumn: Dispatch<SetStateAction<MRT_Column<TData> | null>>;\n setCurrentHoveredRow: Dispatch<SetStateAction<MRT_Row | null>>;\n setDensity: Dispatch<SetStateAction<'comfortable' | 'compact' | 'spacious'>>;\n setIsFullScreen: Dispatch<SetStateAction<boolean>>;\n setShowAlertBanner: Dispatch<SetStateAction<boolean>>;\n setShowFilters: Dispatch<SetStateAction<boolean>>;\n setShowGlobalFilter: Dispatch<SetStateAction<boolean>>;\n};\n\nexport type MRT_TableState<TData extends Record<string, any> = {}> =\n TableState & {\n currentDraggingColumn: MRT_Column<TData> | null;\n currentDraggingRow: MRT_Row<TData> | null;\n currentEditingCell: MRT_Cell<TData> | null;\n currentEditingRow: MRT_Row<TData> | null;\n currentFilterFns: Record<string, MRT_FilterOption>;\n currentGlobalFilterFn: Record<string, MRT_FilterOption>;\n currentHoveredColumn: MRT_Column<TData> | null;\n currentHoveredRow: MRT_Row<TData> | null;\n density: 'comfortable' | 'compact' | 'spacious';\n isFullScreen: boolean;\n isLoading: boolean;\n showAlertBanner: boolean;\n showColumnFilters: boolean;\n showGlobalFilter: boolean;\n showProgressBars: boolean;\n showSkeletons: boolean;\n };\n\nexport type MRT_ColumnDef<TData extends Record<string, any> = {}> = Omit<\n ColumnDef<TData>,\n | 'accessorFn'\n | 'accessorKey'\n | 'aggregatedCell'\n | 'cell'\n | 'columns'\n | 'filterFn'\n | 'footer'\n | 'header'\n | 'id'\n | 'sortingFn'\n> & {\n AggregatedCell?: ({\n cell,\n table,\n }: {\n cell: MRT_Cell<TData>;\n table: MRT_TableInstance<TData>;\n }) => ReactNode;\n Cell?: ({\n cell,\n table,\n }: {\n cell: MRT_Cell<TData>;\n table: MRT_TableInstance<TData>;\n }) => ReactNode;\n Edit?: ({\n cell,\n table,\n }: {\n cell: MRT_Cell<TData>;\n table: MRT_TableInstance<TData>;\n }) => ReactNode;\n Filter?: ({\n header,\n table,\n }: {\n header: MRT_Header<TData>;\n table: MRT_TableInstance<TData>;\n }) => ReactNode;\n Footer?:\n | ReactNode\n | (({\n footer,\n table,\n }: {\n footer: MRT_Header<TData>;\n table: MRT_TableInstance<TData>;\n }) => ReactNode);\n Header?:\n | ReactNode\n | (({\n header,\n table,\n }: {\n header: MRT_Header<TData>;\n table: MRT_TableInstance<TData>;\n }) => ReactNode);\n /**\n * Either an `accessorKey` or a combination of an `accessorFn` and `id` are required for a data column definition.\n * Specify a function here to point to the correct property in the data object.\n *\n * @example accessorFn: (row) => row.username\n */\n accessorFn?: (row: TData) => any;\n /**\n * Either an `accessorKey` or a combination of an `accessorFn` and `id` are required for a data column definition.\n * Specify which key in the row this column should use to access the correct data.\n *\n * @example accessorKey: 'username'\n */\n accessorKey?: string & keyof TData;\n /**\n * Specify what type of column this is. Either `data`, `display`, or `group`. Defaults to `data`.\n * Leave this blank if you are just creating a normal data column.\n *\n * @default 'data'\n *\n * @example columnDefType: 'display'\n */\n columnDefType?: 'data' | 'display' | 'group';\n columns?: MRT_ColumnDef<TData>[];\n enableClickToCopy?: boolean;\n enableColumnActions?: boolean;\n enableColumnDragging?: boolean;\n enableColumnFilterChangeMode?: boolean;\n enableColumnOrdering?: boolean;\n enableEditing?: boolean;\n enabledColumnFilterOptions?: MRT_FilterOption[] | null;\n filterFn?: MRT_FilterFn<TData>;\n filterSelectOptions?: (string | { text: string; value: string })[];\n /**\n * footer must be a string. If you want custom JSX to render the footer, you can also specify a `Footer` option. (Capital F)\n */\n footer?: string;\n /**\n * header must be a string. If you want custom JSX to render the header, you can also specify a `Header` option. (Capital H)\n */\n header: string;\n /**\n * Either an `accessorKey` or a combination of an `accessorFn` and `id` are required for a data column definition.\n *\n * If you have also specified an `accessorFn`, MRT still needs to have a valid `id` to be able to identify the column uniquely.\n *\n * `id` defaults to the `accessorKey` or `header` if not specified.\n *\n * @default gets set to the same value as `accessorKey` by default\n */\n id?: LiteralUnion<string & keyof TData>;\n muiTableBodyCellCopyButtonProps?:\n | ButtonProps\n | (({\n table,\n cell,\n }: {\n table: MRT_TableInstance<TData>;\n cell: MRT_Cell<TData>;\n }) => ButtonProps);\n muiTableBodyCellEditTextFieldProps?:\n | TextFieldProps\n | (({\n table,\n cell,\n }: {\n table: MRT_TableInstance<TData>;\n cell: MRT_Cell<TData>;\n }) => TextFieldProps);\n muiTableBodyCellProps?:\n | TableCellProps\n | (({\n table,\n cell,\n }: {\n table: MRT_TableInstance<TData>;\n cell: MRT_Cell<TData>;\n }) => TableCellProps);\n muiTableFooterCellProps?:\n | TableCellProps\n | (({\n table,\n column,\n }: {\n table: MRT_TableInstance<TData>;\n column: MRT_Column<TData>;\n }) => TableCellProps);\n muiTableHeadCellColumnActionsButtonProps?:\n | IconButtonProps\n | (({\n table,\n column,\n }: {\n table: MRT_TableInstance<TData>;\n column: MRT_Column<TData>;\n }) => IconButtonProps);\n muiTableHeadCellDragHandleProps?:\n | IconButtonProps\n | (({\n table,\n column,\n }: {\n table: MRT_TableInstance<TData>;\n column: MRT_Column<TData>;\n }) => IconButtonProps);\n muiTableHeadCellFilterTextFieldProps?:\n | TextFieldProps\n | (({\n table,\n column,\n }: {\n table: MRT_TableInstance<TData>;\n column: MRT_Column<TData>;\n }) => TextFieldProps);\n muiTableHeadCellProps?:\n | TableCellProps\n | (({\n table,\n column,\n }: {\n table: MRT_TableInstance<TData>;\n column: MRT_Column<TData>;\n }) => TableCellProps);\n onCellEditBlur?: ({\n cell,\n event,\n table,\n }: {\n event: FocusEvent<HTMLInputElement>;\n cell: MRT_Cell<TData>;\n table: MRT_TableInstance<TData>;\n }) => void;\n onCellEditChange?: ({\n cell,\n event,\n table,\n }: {\n event: ChangeEvent<HTMLInputElement>;\n cell: MRT_Cell<TData>;\n table: MRT_TableInstance<TData>;\n }) => void;\n sortingFn?: MRT_SortingFn;\n};\n\nexport type MRT_DefinedColumnDef<TData extends Record<string, any> = {}> = Omit<\n MRT_ColumnDef<TData>,\n 'id'\n> & {\n id: string;\n};\n\nexport type MRT_Column<TData extends Record<string, any> = {}> = Omit<\n Column<TData, unknown>,\n 'header' | 'footer' | 'columns' | 'columnDef' | 'filterFn'\n> & {\n columnDef: MRT_DefinedColumnDef<TData>;\n columns?: MRT_Column<TData>[];\n filterFn?: MRT_FilterFn<TData>;\n footer: string;\n header: string;\n};\n\nexport type MRT_Header<TData extends Record<string, any> = {}> = Omit<\n Header<TData, unknown>,\n 'column'\n> & {\n column: MRT_Column<TData>;\n};\n\nexport type MRT_HeaderGroup<TData extends Record<string, any> = {}> = Omit<\n HeaderGroup<TData>,\n 'headers'\n> & {\n headers: MRT_Header<TData>[];\n};\n\nexport type MRT_Row<TData extends Record<string, any> = {}> = Omit<\n Row<TData>,\n 'getVisibleCells' | 'getAllCells' | 'subRows' | '_valuesCache'\n> & {\n getAllCells: () => MRT_Cell<TData>[];\n getVisibleCells: () => MRT_Cell<TData>[];\n subRows?: MRT_Row<TData>[];\n _valuesCache?: TData;\n};\n\nexport type MRT_Cell<TData extends Record<string, any> = {}> = Omit<\n Cell<TData, unknown>,\n 'column' | 'row'\n> & {\n column: MRT_Column<TData>;\n row: MRT_Row<TData>;\n};\n\nexport type MRT_SortingOption = keyof typeof MRT_SortingFns;\n\nexport type MRT_SortingFn<TData extends Record<string, any> = {}> =\n | SortingFn<TData>\n | MRT_SortingOption;\n\nexport type MRT_FilterOption = keyof typeof MRT_FilterFns;\n\nexport type MRT_FilterFn<TData extends Record<string, any> = {}> =\n | FilterFn<TData>\n | MRT_FilterOption;\n\nexport type MRT_DisplayColumnIds =\n | 'mrt-row-drag'\n | 'mrt-row-actions'\n | 'mrt-row-expand'\n | 'mrt-row-select'\n | 'mrt-row-numbers';\n\n/**\n * `columns` and `data` props are the only required props, but there are over 150 other optional props.\n *\n * See more info on creating columns and data on the official docs site:\n * @link https://www.material-react-table.com/docs/usage\n *\n * See the full props list on the official docs site:\n * @link https://www.material-react-table.com/docs/api/props\n */\nexport type MaterialReactTableProps<TData extends Record<string, any> = {}> =\n Omit<\n Partial<TableOptions<TData>>,\n 'columns' | 'data' | 'initialState' | 'state' | 'expandRowsFn'\n > & {\n displayColumnDefOptions?: Partial<{\n [key in MRT_DisplayColumnIds]: Partial<MRT_ColumnDef>;\n }>;\n columns: MRT_ColumnDef<TData>[];\n data: TData[];\n editingMode?: 'table' | 'row' | 'cell';\n enableClickToCopy?: boolean;\n enableColumnActions?: boolean;\n enableColumnDragging?: boolean;\n enableColumnFilterChangeMode?: boolean;\n enableColumnOrdering?: boolean;\n enableDensityToggle?: boolean;\n enableEditing?: boolean;\n enableExpandAll?: boolean;\n enableFullScreenToggle?: boolean;\n enableGlobalFilterChangeMode?: boolean;\n enableGlobalFilterRankedResults?: boolean;\n enablePagination?: boolean;\n enableRowActions?: boolean;\n enableRowDragging?: boolean;\n enableRowNumbers?: boolean;\n enableRowOrdering?: boolean;\n enableRowVirtualization?: 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_FilterOption | string)[] | null;\n enabledGlobalFilterOptions?: (MRT_FilterOption | string)[] | null;\n expandRowsFn?: (dataRow: TData) => TData[];\n icons?: Partial<MRT_Icons>;\n initialState?: Partial<MRT_TableState<TData>>;\n localization?: Partial<MRT_Localization>;\n muiExpandAllButtonProps?:\n | IconButtonProps\n | (({ table }: { table: MRT_TableInstance<TData> }) => IconButtonProps);\n muiExpandButtonProps?:\n | IconButtonProps\n | (({\n table,\n }: {\n table: MRT_TableInstance<TData>;\n row: MRT_Row<TData>;\n }) => IconButtonProps);\n muiLinearProgressProps?:\n | LinearProgressProps\n | (({\n isTopToolbar,\n table,\n }: {\n isTopToolbar: boolean;\n table: MRT_TableInstance<TData>;\n }) => LinearProgressProps);\n muiSearchTextFieldProps?:\n | TextFieldProps\n | (({ table }: { table: MRT_TableInstance<TData> }) => TextFieldProps);\n muiSelectAllCheckboxProps?:\n | CheckboxProps\n | (({ table }: { table: MRT_TableInstance<TData> }) => CheckboxProps);\n muiSelectCheckboxProps?:\n | CheckboxProps\n | (({\n table,\n row,\n }: {\n table: MRT_TableInstance<TData>;\n row: MRT_Row<TData>;\n }) => CheckboxProps);\n muiTableBodyCellCopyButtonProps?:\n | ButtonProps\n | (({\n table,\n cell,\n }: {\n table: MRT_TableInstance<TData>;\n cell: MRT_Cell<TData>;\n }) => ButtonProps);\n muiTableBodyCellEditTextFieldProps?:\n | TextFieldProps\n | (({\n table,\n cell,\n }: {\n table: MRT_TableInstance<TData>;\n cell: MRT_Cell<TData>;\n }) => TextFieldProps);\n muiTableBodyCellProps?:\n | TableCellProps\n | (({\n table,\n cell,\n }: {\n table: MRT_TableInstance<TData>;\n cell: MRT_Cell<TData>;\n }) => TableCellProps);\n muiTableBodyCellSkeletonProps?:\n | SkeletonProps\n | (({\n table,\n cell,\n }: {\n table: MRT_TableInstance<TData>;\n cell: MRT_Cell<TData>;\n }) => SkeletonProps);\n muiTableBodyProps?:\n | TableBodyProps\n | (({ table }: { table: MRT_TableInstance<TData> }) => TableBodyProps);\n muiTableBodyRowDragHandleProps?:\n | IconButtonProps\n | (({\n table,\n row,\n }: {\n table: MRT_TableInstance<TData>;\n row: MRT_Row<TData>;\n }) => IconButtonProps);\n muiTableBodyRowProps?:\n | TableRowProps\n | (({\n table,\n row,\n }: {\n table: MRT_TableInstance<TData>;\n row: MRT_Row<TData>;\n }) => TableRowProps);\n muiTableContainerProps?:\n | TableContainerProps\n | (({\n table,\n }: {\n table: MRT_TableInstance<TData>;\n }) => TableContainerProps);\n muiTableDetailPanelProps?:\n | TableCellProps\n | (({\n table,\n row,\n }: {\n table: MRT_TableInstance<TData>;\n row: MRT_Row<TData>;\n }) => TableCellProps);\n muiTableFooterCellProps?:\n | TableCellProps\n | (({\n table,\n column,\n }: {\n table: MRT_TableInstance<TData>;\n column: MRT_Column<TData>;\n }) => TableCellProps);\n muiTableFooterProps?:\n | TableFooterProps\n | (({ table }: { table: MRT_TableInstance<TData> }) => TableFooterProps);\n muiTableFooterRowProps?:\n | TableRowProps\n | (({\n table,\n footerGroup,\n }: {\n table: MRT_TableInstance<TData>;\n footerGroup: MRT_HeaderGroup<TData>;\n }) => TableRowProps);\n muiTableHeadCellColumnActionsButtonProps?:\n | IconButtonProps\n | (({\n table,\n column,\n }: {\n table: MRT_TableInstance<TData>;\n column: MRT_Column<TData>;\n }) => IconButtonProps);\n muiTableHeadCellDragHandleProps?:\n | IconButtonProps\n | (({\n table,\n column,\n }: {\n table: MRT_TableInstance<TData>;\n column: MRT_Column<TData>;\n }) => IconButtonProps);\n muiTableHeadCellFilterTextFieldProps?:\n | TextFieldProps\n | (({\n table,\n column,\n }: {\n table: MRT_TableInstance<TData>;\n column: MRT_Column<TData>;\n }) => TextFieldProps);\n muiTableHeadCellProps?:\n | TableCellProps\n | (({\n table,\n column,\n }: {\n table: MRT_TableInstance<TData>;\n column: MRT_Column<TData>;\n }) => TableCellProps);\n muiTableHeadProps?:\n | TableHeadProps\n | (({ table }: { table: MRT_TableInstance<TData> }) => TableHeadProps);\n muiTableHeadRowProps?:\n | TableRowProps\n | (({\n table,\n headerGroup,\n }: {\n table: MRT_TableInstance<TData>;\n headerGroup: MRT_HeaderGroup<TData>;\n }) => TableRowProps);\n muiTablePaginationProps?:\n | Partial<TablePaginationProps>\n | (({\n table,\n }: {\n table: MRT_TableInstance<TData>;\n }) => Partial<TablePaginationProps>);\n muiTablePaperProps?:\n | PaperProps\n | (({ table }: { table: MRT_TableInstance<TData> }) => PaperProps);\n muiTableProps?:\n | TableProps\n | (({ table }: { table: MRT_TableInstance<TData> }) => TableProps);\n muiTableToolbarAlertBannerProps?:\n | AlertProps\n | (({ table }: { table: MRT_TableInstance<TData> }) => AlertProps);\n muiTableToolbarBottomProps?:\n | ToolbarProps\n | (({ table }: { table: MRT_TableInstance<TData> }) => ToolbarProps);\n muiTableToolbarTopProps?:\n | ToolbarProps\n | (({ table }: { table: MRT_TableInstance<TData> }) => ToolbarProps);\n onCellEditBlur?: ({\n cell,\n event,\n table,\n }: {\n event: FocusEvent<HTMLInputElement>;\n cell: MRT_Cell<TData>;\n table: MRT_TableInstance<TData>;\n }) => void;\n onCellEditChange?: ({\n cell,\n event,\n table,\n }: {\n event: ChangeEvent<HTMLInputElement>;\n cell: MRT_Cell<TData>;\n table: MRT_TableInstance<TData>;\n }) => void;\n onColumnDrop?: ({\n event,\n draggedColumn,\n targetColumn,\n }: {\n event: DragEvent<HTMLButtonElement>;\n draggedColumn: MRT_Column<TData>;\n targetColumn: MRT_Column<TData> | null;\n }) => void;\n onCurrentDraggingColumnChange?: OnChangeFn<MRT_Column<TData> | null>;\n onCurrentDraggingRowChange?: OnChangeFn<MRT_Row<TData> | null>;\n onCurrentEditingCellChange?: OnChangeFn<MRT_Cell<TData> | null>;\n onCurrentEditingRowChange?: OnChangeFn<MRT_Row<TData> | null>;\n onCurrentFilterFnsChange?: OnChangeFn<{ [key: string]: MRT_FilterOption }>;\n onCurrentGlobalFilterFnChange?: OnChangeFn<MRT_FilterOption>;\n onCurrentHoveredColumnChange?: OnChangeFn<MRT_Column<TData> | null>;\n onCurrentHoveredRowChange?: OnChangeFn<MRT_Row<TData> | null>;\n onDensityChange?: OnChangeFn<boolean>;\n onEditRowSubmit?: ({\n row,\n table,\n }: {\n row: MRT_Row<TData>;\n table: MRT_TableInstance<TData>;\n }) => Promise<void> | void;\n onIsFullScreenChange?: OnChangeFn<boolean>;\n onRowDrop?: ({\n event,\n draggedRow,\n targetRow,\n }: {\n event: DragEvent<HTMLButtonElement>;\n draggedRow: MRT_Row<TData>;\n targetRow: MRT_Row<TData> | null;\n }) => void;\n onShowAlertBannerChange?: OnChangeFn<boolean>;\n onShowFiltersChange?: OnChangeFn<boolean>;\n onShowGlobalFilterChange?: OnChangeFn<boolean>;\n onTableInstanceChange?: (table: MRT_TableInstance<TData>) => void;\n positionActionsColumn?: 'first' | 'last';\n positionGlobalFilter?: 'left' | 'right';\n positionPagination?: 'bottom' | 'top' | 'both';\n positionToolbarAlertBanner?: 'bottom' | 'top';\n renderDetailPanel?: ({\n row,\n table,\n }: {\n row: MRT_Row<TData>;\n table: MRT_TableInstance<TData>;\n }) => ReactNode;\n renderRowActionMenuItems?: ({\n closeMenu,\n row,\n table,\n }: {\n closeMenu: () => void;\n row: MRT_Row<TData>;\n table: MRT_TableInstance<TData>;\n }) => ReactNode[];\n renderRowActions?: ({\n row,\n table,\n }: {\n row: MRT_Row<TData>;\n table: MRT_TableInstance<TData>;\n }) => ReactNode;\n renderToolbarBottomCustomActions?: ({\n table,\n }: {\n table: MRT_TableInstance<TData>;\n }) => ReactNode;\n renderToolbarInternalActions?: ({\n table,\n MRT_ToggleGlobalFilterButton,\n MRT_ToggleFiltersButton,\n MRT_ShowHideColumnsButton,\n MRT_ToggleDensePaddingButton,\n MRT_FullScreenToggleButton,\n }: {\n table: MRT_TableInstance<TData>;\n MRT_ToggleGlobalFilterButton: FC<\n IconButtonProps & { table: MRT_TableInstance<TData> }\n >;\n MRT_ToggleFiltersButton: FC<\n IconButtonProps & { table: MRT_TableInstance<TData> }\n >;\n MRT_ShowHideColumnsButton: FC<\n IconButtonProps & { table: MRT_TableInstance<TData> }\n >;\n MRT_ToggleDensePaddingButton: FC<\n IconButtonProps & { table: MRT_TableInstance<TData> }\n >;\n MRT_FullScreenToggleButton: FC<\n IconButtonProps & { table: MRT_TableInstance<TData> }\n >;\n }) => ReactNode;\n renderToolbarTopCustomActions?: ({\n table,\n }: {\n table: MRT_TableInstance<TData>;\n }) => ReactNode;\n rowCount?: number;\n rowNumberMode?: 'original' | 'static';\n selectAllMode?: 'all' | 'page';\n state?: Partial<MRT_TableState<TData>>;\n tableId?: string;\n virtualizerProps?: Partial<VirtualizerOptions<HTMLDivElement>>;\n };\n\nexport default <TData extends Record<string, any> = {}>({\n autoResetExpanded = false,\n columnResizeMode = 'onEnd',\n defaultColumn = { minSize: 40, maxSize: 1000, size: 180 },\n editingMode = 'row',\n enableColumnActions = true,\n enableColumnFilterChangeMode = true,\n enableColumnFilters = true,\n enableColumnOrdering = false,\n enableColumnResizing = false,\n enableDensityToggle = true,\n enableExpandAll = true,\n enableFilters = true,\n enableFullScreenToggle = true,\n enableGlobalFilter = true,\n enableGlobalFilterChangeMode = true,\n enableGlobalFilterRankedResults = true,\n enableGrouping = false,\n enableHiding = true,\n enableMultiRowSelection = true,\n enableMultiSort = true,\n enablePagination = true,\n enablePinning = false,\n enableRowSelection = false,\n enableSelectAll = true,\n enableSorting = true,\n enableStickyHeader = false,\n enableTableFooter = true,\n enableTableHead = true,\n enableToolbarBottom = true,\n enableToolbarInternalActions = true,\n enableToolbarTop = true,\n icons,\n localization,\n positionActionsColumn = 'first',\n positionGlobalFilter = 'right',\n positionPagination = 'bottom',\n positionToolbarAlertBanner = 'top',\n rowNumberMode = 'original',\n selectAllMode = 'all',\n ...rest\n}: MaterialReactTableProps<TData>) => (\n <MRT_TableRoot\n autoResetExpanded={autoResetExpanded}\n columnResizeMode={columnResizeMode}\n defaultColumn={defaultColumn}\n editingMode={editingMode}\n enableColumnActions={enableColumnActions}\n enableColumnFilterChangeMode={enableColumnFilterChangeMode}\n enableColumnFilters={enableColumnFilters}\n enableColumnOrdering={enableColumnOrdering}\n enableColumnResizing={enableColumnResizing}\n enableDensityToggle={enableDensityToggle}\n enableExpandAll={enableExpandAll}\n enableFilters={enableFilters}\n enableFullScreenToggle={enableFullScreenToggle}\n enableGlobalFilter={enableGlobalFilter}\n enableGlobalFilterChangeMode={enableGlobalFilterChangeMode}\n enableGlobalFilterRankedResults={enableGlobalFilterRankedResults}\n enableGrouping={enableGrouping}\n enableHiding={enableHiding}\n enableMultiRowSelection={enableMultiRowSelection}\n enableMultiSort={enableMultiSort}\n enablePagination={enablePagination}\n enablePinning={enablePinning}\n enableRowSelection={enableRowSelection}\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 positionActionsColumn={positionActionsColumn}\n positionGlobalFilter={positionGlobalFilter}\n positionPagination={positionPagination}\n positionToolbarAlertBanner={positionToolbarAlertBanner}\n rowNumberMode={rowNumberMode}\n selectAllMode={selectAllMode}\n {...rest}\n />\n);\n"],"names":["MRT_DefaultLocalization_EN","actions","and","cancel","changeFilterMode","changeSearchMode","clearFilter","clearSearch","clearSort","clickToCopy","columnActions","copiedToClipboard","edit","expand","expandAll","filterBetween","filterBetweenInclusive","filterByColumn","filterContains","filterEmpty","filterEndsWith","filterEquals","filterFuzzy","filterGreaterThan","filterGreaterThanOrEqualTo","filterLessThan","filterLessThanOrEqualTo","filterMode","filterNotEmpty","filterNotEquals","filterStartsWith","filteringByColumn","grab","groupByColumn","groupedBy","hideAll","hideColumn","max","min","move","pinToLeft","pinToRight","resetColumnSize","resetOrder","rowActions","rowNumber","rowNumbers","save","search","selectedCountOfRowCountRowsSelected","select","showAll","showAllColumns","showHideColumns","showHideFilters","showHideSearch","sortByColumnAsc","sortByColumnDesc","sortedByColumnAsc","sortedByColumnDesc","thenBy","toggleDensity","toggleFullScreen","toggleSelectAll","toggleSelectRow","toggleVisibility","ungroupByColumn","unpin","unpinAll","unsorted","MRT_Default_Icons","ArrowRightIcon","ArrowRight","CancelIcon","Cancel","CheckBoxIcon","CheckBox","ClearAllIcon","ClearAll","CloseIcon","Close","DensityLargeIcon","DensityLarge","DensityMediumIcon","DensityMedium","DensitySmallIcon","DensitySmall","DragHandleIcon","DragHandle","DynamicFeedIcon","DynamicFeed","EditIcon","Edit","ExpandLessIcon","ExpandLess","ExpandMoreIcon","ExpandMore","FilterAltIcon","FilterAlt","FilterAltOffIcon","FilterAltOff","FilterListIcon","FilterList","FilterListOffIcon","FilterListOff","FullscreenExitIcon","FullscreenExit","FullscreenIcon","Fullscreen","KeyboardDoubleArrowDownIcon","KeyboardDoubleArrowDown","MoreHorizIcon","MoreHoriz","MoreVertIcon","MoreVert","PushPinIcon","PushPin","RestartAltIcon","RestartAlt","SaveIcon","Save","SearchIcon","Search","SearchOffIcon","SearchOff","SortIcon","Sort","ViewColumnIcon","ViewColumn","VisibilityOffIcon","VisibilityOff","MRT_ExpandAllButton","table","getIsAllRowsExpanded","getIsSomeRowsExpanded","getCanSomeRowsExpand","getState","options","icons","localization","muiExpandAllButtonProps","renderDetailPanel","toggleAllRowsExpanded","density","iconButtonProps","Function","React","Tooltip","arrow","enterDelay","enterNextDelay","title","IconButton","disabled","onClick","sx","height","width","style","transform","transition","MRT_ExpandButton","row","muiExpandButtonProps","handleToggleExpand","toggleExpanded","getCanExpand","theme","getIsExpanded","MRT_FilterOptionMenu","anchorEl","header","onSelect","setAnchorEl","enabledGlobalFilterOptions","enabledColumnFilterOptions","setCurrentFilterFns","setCurrentGlobalFilterFn","currentFilterFns","currentGlobalFilterFn","column","columnDef","allowedColumnFilterOptions","filterOptions","useMemo","option","symbol","label","divider","filter","filterType","undefined","includes","handleSelectFilterType","prev","id","setFilterValue","filterOption","Menu","anchorOrigin","vertical","horizontal","onClose","open","MenuListProps","dense","map","index","MenuItem","key","selected","py","my","alignItems","display","gap","value","Box","fontSize","MRT_ColumnPinningButtons","handlePinColumn","pinDirection","pin","minWidth","textAlign","getIsPinned","size","MRT_GrabHandleButton","onDragEnd","onDragStart","placement","disableRipple","draggable","cursor","m","opacity","p","backgroundColor","fuzzy","columnId","filterValue","addMeta","itemRank","rankItem","getValue","threshold","rankings","MATCHES","passed","autoRemove","val","contains","toString","toLowerCase","trim","startsWith","endsWith","equals","notEquals","greaterThan","isNaN","greaterThanOrEqualTo","lessThan","lessThanOrEqualTo","between","filterValues","betweenInclusive","empty","_filterValue","notEmpty","MRT_FilterFns","filterFns","rowA","rowB","dir","columnFiltersMeta","compareItems","sortingFns","alphanumeric","MRT_SortingFns","rankGlobalFuzzy","Math","Object","values","v","rank","getColumnId","accessorKey","getAllLeafColumnDefs","columns","lowestLevelColumns","currentCols","length","some","col","nextCols","flat","every","prepareColumns","columnDefs","process","env","NODE_ENV","console","error","columnDefType","keys","filterFn","sortingFn","reorderColumn","draggedColumn","targetColumn","columnOrder","getCanPin","splice","indexOf","getLeadingDisplayColumnIds","props","enableRowDragging","enableRowOrdering","positionActionsColumn","enableRowActions","enableEditing","editingMode","enableExpanding","enableGrouping","enableRowSelection","enableRowNumbers","Boolean","getTrailingDisplayColumnIds","getDefaultColumnOrderIds","MRT_ShowHideColumnsMenuItems","allColumns","currentHoveredColumn","setCurrentHoveredColumn","isSubMenu","enableColumnOrdering","enableHiding","enablePinning","setColumnOrder","switchChecked","getIsVisible","getLeafColumns","handleToggleColumnHidden","forEach","childColumn","menuItemRef","useRef","useState","isDragging","setIsDragging","handleDragStart","e","dataTransfer","setDragImage","current","handleDragEnd","_e","handleDragEnter","ref","onDragEnter","justifyContent","outline","palette","primary","main","pl","depth","flexWrap","FormControlLabel","componentsProps","typography","mb","checked","control","Switch","getCanHide","getIsGrouped","onChange","Typography","alignSelf","c","i","MRT_ShowHideColumnsMenu","getAllColumns","getAllLeafColumns","getCenterLeafColumns","getIsAllColumnsVisible","getIsSomeColumnsPinned","getIsSomeColumnsVisible","getLeftLeafColumns","getRightLeafColumns","toggleAllColumnsVisible","columnPinning","hideAllColumns","Array","from","Set","colId","find","pt","Button","resetColumnPinning","Divider","commonMenuItemStyles","commonListItemStyles","MRT_ColumnActionMenu","enableColumnFilterChangeMode","enableColumnFilters","enableColumnResizing","enableSorting","tableId","setShowFilters","columnSizing","columnVisibility","filterMenuAnchorEl","setFilterMenuAnchorEl","showHideColumnsMenuAnchorEl","setShowHideColumnsMenuAnchorEl","handleClearSort","clearSorting","handleSortAsc","toggleSorting","handleSortDesc","handleResetColumnSize","resetSize","handleHideColumn","handleGroupByColumn","toggleGrouping","old","handleClearFilter","handleFilterByColumn","setTimeout","document","getElementById","muiTableHeadCellFilterTextFieldProps","focus","handleShowAllColumns","handleOpenFilterModeMenu","event","stopPropagation","currentTarget","handleOpenShowHideColumnsMenu","isSelectFilter","filterSelectOptions","showFilterModeSubMenu","getCanSort","getIsSorted","ListItemIcon","replace","String","getCanFilter","getFilterValue","onMouseEnter","getCanGroup","getCanResize","visible","MRT_RowActionMenu","handleEdit","renderRowActionMenuItems","closeMenu","MRT_EditActionButtons","onEditRowSubmit","setCurrentEditingRow","currentEditingRow","handleCancel","_valuesCache","original","handleSave","color","commonIconButtonStyles","ml","MRT_ToggleRowActionMenuButton","renderRowActions","handleOpenRowActionMenu","preventDefault","handleStartEditMode","MRT_SelectCheckbox","selectAll","muiSelectCheckboxProps","muiSelectAllCheckboxProps","selectAllMode","checkboxProps","Checkbox","getIsAllRowsSelected","getIsSelected","indeterminate","getIsSomeRowsSelected","getIsSomeSelected","inputProps","getToggleAllRowsSelectedHandler","getToggleAllPageRowsSelectedHandler","getToggleSelectedHandler","MRT_FullScreenToggleButton","rest","setIsFullScreen","isFullScreen","handleToggleFullScreen","MRT_ShowHideColumnsButton","handleClick","MRT_ToggleDensePaddingButton","setDensity","handleToggleDensePadding","nextDensity","MRT_ToggleFiltersButton","showColumnFilters","handleToggleShowFilters","MRT_ToggleGlobalFilterButton","muiSearchTextFieldProps","setShowGlobalFilter","showGlobalFilter","textFieldProps","handleToggleSearch","MRT_GlobalFilterTextField","setGlobalFilter","enableGlobalFilterChangeMode","globalFilter","searchValue","setSearchValue","handleChangeDebounced","useCallback","debounce","target","handleChange","handleGlobalFilterMenuOpen","handleClear","Collapse","orientation","TextField","placeholder","variant","InputProps","startAdornment","InputAdornment","position","endAdornment","MRT_ToolbarInternalButtons","enableDensityToggle","enableFilters","enableFullScreenToggle","enableGlobalFilter","positionGlobalFilter","renderToolbarInternalActions","zIndex","MRT_TablePagination","getPrePaginationRowModel","setPageIndex","setPageSize","muiTablePaginationProps","enableToolbarInternalActions","rowCount","pagination","pageSize","pageIndex","totalRowCount","rows","showFirstLastPageButtons","tablePaginationProps","handleChangeRowsPerPage","TablePagination","SelectProps","MenuProps","disablePadding","component","count","onPageChange","_","newPage","onRowsPerPageChange","page","rowsPerPage","rowsPerPageOptions","showFirstButton","showLastButton","mt","MRT_ToolbarAlertBanner","stackAlertBanner","getSelectedRowModel","muiTableToolbarAlertBannerProps","grouping","showAlertBanner","alertProps","selectMessage","groupedByMessage","Fragment","Chip","getColumn","onDelete","timeout","Alert","icon","borderRadius","left","right","top","AlertTitle","children","MRT_LinearProgressBar","isTopToolbar","muiLinearProgressProps","isLoading","showProgressBars","linearProgressProps","mountOnEnter","unmountOnExit","bottom","LinearProgress","commonToolbarStyles","lighten","background","backgroundImage","minHeight","overflow","MRT_ToolbarTop","enablePagination","muiTableToolbarTopProps","positionPagination","positionToolbarAlertBanner","renderToolbarTopCustomActions","isMobile","useMediaQuery","toolbarProps","Toolbar","boxSizing","MRT_ToolbarBottom","muiTableToolbarBottomProps","renderToolbarBottomCustomActions","boxShadow","alpha","common","black","MRT_TableHeadCellColumnActionsButton","muiTableHeadCellColumnActionsButtonProps","mTableHeadCellColumnActionsButtonProps","mcTableHeadCellColumnActionsButtonProps","MRT_FilterTextField","inputIndex","mTableHeadCellFilterTextFieldProps","mcTableHeadCellFilterTextFieldProps","type","Date","newFilterValues","handleFilterMenuOpen","handleClearFilterChip","Filter","filterId","currentFilterOption","filterChipLabel","charAt","toUpperCase","slice","filterPlaceholder","showChangeModeButton","fullWidth","textOverflow","helperText","htmlFor","FormHelperTextProps","lineHeight","whiteSpace","margin","disableHoverListener","mr","text","MRT_FilterRangeFields","gridTemplateColumns","MRT_TableHeadCellFilterContainer","MRT_TableHeadCellFilterLabel","filterTooltip","isArray","join","Grow","MRT_TableHeadCellGrabHandle","tableHeadCellRef","muiTableHeadCellDragHandleProps","onColumnDrop","setCurrentDraggingColumn","currentDraggingColumn","mIconButtonProps","mcIconButtonProps","MRT_TableHeadCellResizeHandle","columnResizeMode","flexItem","onDoubleClick","borderRightWidth","touchAction","getIsResizing","userSelect","info","onMouseDown","getResizeHandler","onTouchStart","columnSizingInfo","deltaOffset","MRT_TableHeadCellSortLabel","sortTooltip","TableSortLabel","active","direction","MRT_TableHeadCell","useTheme","enableColumnActions","enableColumnDragging","enableMultiSort","muiTableHeadCellProps","mTableHeadCellProps","mcTableHeadCellProps","tableCellProps","getIsLastLeftPinnedColumn","getLeftLeafHeaders","getPinnedIndex","getIsFirstRightPinnedColumn","getTotalRight","getRightLeafHeaders","draggingBorder","draggingBorders","borderLeft","borderRight","borderTop","headerElement","Header","TableCell","align","colSpan","fontWeight","getStart","pb","verticalAlign","maxWidth","getSize","minSize","isPlaceholder","getToggleSortingHandler","MRT_TableHeadRow","headerGroup","muiTableHeadRowProps","tableRowProps","TableRow","headers","MRT_TableHead","getHeaderGroups","muiTableHeadProps","tableHeadProps","TableHead","MRT_EditCellTextField","cell","muiTableBodyCellEditTextFieldProps","onCellEditBlur","onCellEditChange","setCurrentEditingCell","setValue","handleBlur","mTableBodyCellEditTextFieldProps","mcTableBodyCellEditTextFieldProps","onBlur","MRT_CopyButton","muiTableBodyCellCopyButtonProps","copied","setCopied","handleCopy","navigator","clipboard","writeText","mTableBodyCellCopyButtonProps","mcTableBodyCellCopyButtonProps","buttonProps","border","fontFamily","letterSpacing","textTransform","MRT_TableBodyRowGrabHandle","rowRef","muiTableBodyRowDragHandleProps","onRowDrop","setCurrentDraggingRow","draggedRow","currentDraggingRow","targetRow","currentHoveredRow","setCurrentHoveredRow","MRT_TableBodyCell","enableHover","rowIndex","enableClickToCopy","muiTableBodyCellProps","muiTableBodyCellSkeletonProps","rowNumberMode","currentEditingCell","showSkeletons","mTableCellBodyProps","mcTableCellBodyProps","skeletonWidth","random","isEditable","isEditing","handleDoubleClick","_event","textField","borderBottom","getRowModel","mode","darken","getIsPlaceholder","Skeleton","animation","Cell","renderValue","subRows","MRT_TableDetailPanel","getVisibleLeafColumns","muiTableBodyRowProps","muiTableDetailPanelProps","getTotalSize","MRT_TableBodyRow","hover","getVisibleCells","MRT_TableBody","tableContainerRef","enableGlobalFilterRankedResults","enableRowVirtualization","muiTableBodyProps","virtualizerProps","sorting","tableBodyProps","getIsSomeColumnsSorted","rankedRows","sort","a","b","rowVirtualizer","useVirtual","overscan","parentRef","virtualRows","virtualItems","paddingTop","paddingBottom","start","totalSize","end","TableBody","rowOrVirtualRow","MRT_TableFooterCell","footer","muiTableFooterCellProps","mTableFooterCellProps","mcTableFooterCellProps","white","Footer","MRT_TableFooterRow","footerGroup","muiTableFooterRowProps","MRT_TableFooter","getFooterGroups","muiTableFooterProps","tableFooterProps","TableFooter","MRT_Table","enableStickyHeader","enableTableFooter","enableTableHead","muiTableProps","tableProps","Table","stickyHeader","tableLayout","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","defaultDisplayColumnDefOptions","enableColumnFilter","enableResizing","MRT_TableRoot","setIdPrefix","substring","initialState","initState","setShowAlertBanner","assign","name","globalFilterFn","displayColumns","displayColumnDefOptions","enableExpandAll","enableSelectAll","data","state","fill","useReactTable","getCoreRowModel","getExpandedRowModel","getFacetedRowModel","getFilteredRowModel","getGroupedRowModel","getPaginationRowModel","getSortedRowModel","onColumnOrderChange","getSubRows","onCurrentDraggingColumnChange","onCurrentDraggingRowChange","onCurrentEditingCellChange","onCurrentEditingRowChange","onCurrentFilterFnsChange","onCurrentGlobalFilterFnChange","onCurrentHoveredColumnChange","onCurrentHoveredRowChange","onDensityChange","onIsFullScreenChange","onShowAlertBannerChange","onShowFiltersChange","onShowGlobalFilterChange","onTableInstanceChange","Dialog","PaperComponent","TransitionComponent","disablePortal","fullScreen","keepMounted","transitionDuration","autoResetExpanded","defaultColumn","maxSize","enableMultiRowSelection"],"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/menus/MRT_FilterOptionMenu.tsx","../src/buttons/MRT_ColumnPinningButtons.tsx","../src/buttons/MRT_GrabHandleButton.tsx","../src/filtersFns.ts","../src/sortingFns.ts","../src/column.utils.ts","../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_GlobalFilterTextField.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/head/MRT_TableHeadCellColumnActionsButton.tsx","../src/inputs/MRT_FilterTextField.tsx","../src/inputs/MRT_FilterRangeFields.tsx","../src/head/MRT_TableHeadCellFilterContainer.tsx","../src/head/MRT_TableHeadCellFilterLabel.tsx","../src/head/MRT_TableHeadCellGrabHandle.tsx","../src/head/MRT_TableHeadCellResizeHandle.tsx","../src/head/MRT_TableHeadCellSortLabel.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_TableBodyRowGrabHandle.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/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 filterBetweenInclusive: string;\n filterByColumn: string;\n filterContains: string;\n filterEmpty: string;\n filterEndsWith: string;\n filterEquals: string;\n filterFuzzy: string;\n filterGreaterThan: string;\n filterGreaterThanOrEqualTo: string;\n filterLessThan: string;\n filterLessThanOrEqualTo: string;\n filterMode: string;\n filterNotEmpty: string;\n filterNotEquals: string;\n filterStartsWith: string;\n filteringByColumn: string;\n grab: string;\n groupByColumn: string;\n groupedBy: string;\n hideAll: string;\n hideColumn: string;\n max: string;\n min: string;\n move: string;\n pinToLeft: string;\n pinToRight: string;\n resetColumnSize: string;\n resetOrder: 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 toggleDensity: string;\n toggleFullScreen: string;\n toggleSelectAll: string;\n toggleSelectRow: string;\n toggleVisibility: 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 filterBetweenInclusive: 'Between Inclusive',\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 filterGreaterThanOrEqualTo: 'Greater Than Or Equal To',\n filterLessThan: 'Less Than',\n filterLessThanOrEqualTo: 'Less Than Or Equal To',\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 grab: 'Grab',\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 move: 'Move',\n pinToLeft: 'Pin to left',\n pinToRight: 'Pin to right',\n resetColumnSize: 'Reset column size',\n resetOrder: 'Reset order',\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 toggleDensity: 'Toggle density',\n toggleFullScreen: 'Toggle full screen',\n toggleSelectAll: 'Toggle select all',\n toggleSelectRow: 'Toggle select row',\n toggleVisibility: 'Toggle visibility',\n ungroupByColumn: 'Ungroup by {column}',\n unpin: 'Unpin',\n unpinAll: 'Unpin all',\n unsorted: 'Unsorted',\n};\n","import {\n ArrowRight,\n Cancel,\n CheckBox,\n ClearAll,\n Close,\n DensityLarge,\n DensityMedium,\n DensitySmall,\n DragHandle,\n DynamicFeed,\n Edit,\n ExpandLess,\n ExpandMore,\n FilterAlt,\n FilterAltOff,\n FilterList,\n FilterListOff,\n Fullscreen,\n FullscreenExit,\n KeyboardDoubleArrowDown,\n MoreHoriz,\n MoreVert,\n PushPin,\n RestartAlt,\n Save,\n Search,\n SearchOff,\n Sort,\n ViewColumn,\n VisibilityOff,\n} from '@mui/icons-material';\n\nexport interface MRT_Icons {\n ArrowRightIcon: any;\n CancelIcon: any;\n CheckBoxIcon: any;\n ClearAllIcon: any;\n CloseIcon: any;\n DensityLargeIcon: any;\n DensityMediumIcon: any;\n DensitySmallIcon: any;\n KeyboardDoubleArrowDownIcon: any;\n DragHandleIcon: any;\n DynamicFeedIcon: any;\n EditIcon: any;\n ExpandLessIcon: any;\n ExpandMoreIcon: any;\n FilterAltIcon: any;\n FilterAltOffIcon: 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: ArrowRight,\n CancelIcon: Cancel,\n CheckBoxIcon: CheckBox,\n ClearAllIcon: ClearAll,\n CloseIcon: Close,\n DensityLargeIcon: DensityLarge,\n DensityMediumIcon: DensityMedium,\n DensitySmallIcon: DensitySmall,\n DragHandleIcon: DragHandle,\n DynamicFeedIcon: DynamicFeed,\n EditIcon: Edit,\n ExpandLessIcon: ExpandLess,\n ExpandMoreIcon: ExpandMore,\n FilterAltIcon: FilterAlt,\n FilterAltOffIcon: FilterAltOff,\n FilterListIcon: FilterList,\n FilterListOffIcon: FilterListOff,\n FullscreenExitIcon: FullscreenExit,\n FullscreenIcon: Fullscreen,\n KeyboardDoubleArrowDownIcon: KeyboardDoubleArrowDown,\n MoreHorizIcon: MoreHoriz,\n MoreVertIcon: MoreVert,\n PushPinIcon: PushPin,\n RestartAltIcon: RestartAlt,\n SaveIcon: Save,\n SearchIcon: Search,\n SearchOffIcon: SearchOff,\n SortIcon: Sort,\n ViewColumnIcon: ViewColumn,\n VisibilityOffIcon: VisibilityOff,\n};\n","import React, { FC } from 'react';\nimport { IconButton, Tooltip } from '@mui/material';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n table: MRT_TableInstance;\n}\n\nexport const MRT_ExpandAllButton: FC<Props> = ({ table }) => {\n const {\n getIsAllRowsExpanded,\n getIsSomeRowsExpanded,\n getCanSomeRowsExpand,\n getState,\n options: {\n icons: { KeyboardDoubleArrowDownIcon },\n localization,\n muiExpandAllButtonProps,\n renderDetailPanel,\n },\n toggleAllRowsExpanded,\n } = table;\n const { density } = getState();\n\n const iconButtonProps =\n muiExpandAllButtonProps instanceof Function\n ? muiExpandAllButtonProps({ table })\n : muiExpandAllButtonProps;\n\n return (\n <Tooltip\n arrow\n enterDelay={1000}\n enterNextDelay={1000}\n title={localization.expandAll}\n >\n <span>\n <IconButton\n aria-label={localization.expandAll}\n disabled={!getCanSomeRowsExpand() && !renderDetailPanel}\n onClick={() => toggleAllRowsExpanded(!getIsAllRowsExpanded())}\n {...iconButtonProps}\n sx={{\n height: density === 'compact' ? '1.75rem' : '2.25rem',\n width: density === 'compact' ? '1.75rem' : '2.25rem',\n ...iconButtonProps?.sx,\n }}\n >\n <KeyboardDoubleArrowDownIcon\n style={{\n transform: `rotate(${\n getIsAllRowsExpanded()\n ? -180\n : getIsSomeRowsExpanded()\n ? -90\n : 0\n }deg)`,\n transition: 'transform 0.2s',\n }}\n />\n </IconButton>\n </span>\n </Tooltip>\n );\n};\n","import React, { FC } from 'react';\nimport { IconButton, Tooltip } from '@mui/material';\nimport type { MRT_Row, MRT_TableInstance } from '..';\n\ninterface Props {\n row: MRT_Row;\n table: MRT_TableInstance;\n}\n\nexport const MRT_ExpandButton: FC<Props> = ({ row, table }) => {\n const {\n getState,\n options: {\n icons: { ExpandMoreIcon },\n localization,\n muiExpandButtonProps,\n renderDetailPanel,\n },\n } = table;\n const { density } = getState();\n\n const iconButtonProps =\n muiExpandButtonProps instanceof Function\n ? muiExpandButtonProps({ table, row })\n : muiExpandButtonProps;\n\n const handleToggleExpand = () => {\n row.toggleExpanded();\n };\n\n return (\n <Tooltip\n arrow\n enterDelay={1000}\n enterNextDelay={1000}\n title={localization.expand}\n >\n <span>\n <IconButton\n aria-label={localization.expand}\n disabled={!row.getCanExpand() && !renderDetailPanel}\n onClick={handleToggleExpand}\n {...iconButtonProps}\n sx={(theme) => ({\n height: density === 'compact' ? '1.75rem' : '2.25rem',\n width: density === 'compact' ? '1.75rem' : '2.25rem',\n ...(iconButtonProps?.sx instanceof Function\n ? iconButtonProps.sx(theme)\n : (iconButtonProps?.sx as any)),\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 </span>\n </Tooltip>\n );\n};\n","import React, { FC, useMemo } from 'react';\nimport { Box, Menu, MenuItem } from '@mui/material';\nimport type { MRT_FilterOption, MRT_Header, MRT_TableInstance } from '..';\n\ninterface Props {\n anchorEl: HTMLElement | null;\n header?: MRT_Header;\n onSelect?: () => void;\n setAnchorEl: (anchorEl: HTMLElement | null) => void;\n table: MRT_TableInstance;\n}\n\nexport const MRT_FilterOptionMenu: FC<Props> = ({\n anchorEl,\n header,\n onSelect,\n setAnchorEl,\n table,\n}) => {\n const {\n getState,\n options: {\n enabledGlobalFilterOptions,\n enabledColumnFilterOptions,\n localization,\n },\n setCurrentFilterFns,\n setCurrentGlobalFilterFn,\n } = table;\n const { currentFilterFns, currentGlobalFilterFn, density } = getState();\n const { column } = header ?? {};\n const { columnDef } = column ?? {};\n\n const allowedColumnFilterOptions =\n columnDef?.enabledColumnFilterOptions ?? enabledColumnFilterOptions;\n\n const filterOptions = useMemo(\n () =>\n (\n [\n {\n option: 'fuzzy',\n symbol: '≈',\n label: localization.filterFuzzy,\n divider: false,\n },\n {\n option: 'contains',\n symbol: '*',\n label: localization.filterContains,\n divider: false,\n },\n {\n option: 'startsWith',\n symbol: 'a',\n label: localization.filterStartsWith,\n divider: false,\n },\n {\n option: 'endsWith',\n symbol: 'z',\n label: localization.filterEndsWith,\n divider: true,\n },\n {\n option: 'equals',\n symbol: '=',\n label: localization.filterEquals,\n divider: false,\n },\n {\n option: 'notEquals',\n symbol: '≠',\n label: localization.filterNotEquals,\n divider: true,\n },\n {\n option: 'between',\n symbol: '⇿',\n label: localization.filterBetween,\n divider: false,\n },\n {\n option: 'betweenInclusive',\n symbol: '⬌',\n label: localization.filterBetweenInclusive,\n divider: true,\n },\n {\n option: 'greaterThan',\n symbol: '>',\n label: localization.filterGreaterThan,\n divider: false,\n },\n {\n option: 'greaterThanOrEqualTo',\n symbol: '≥',\n label: localization.filterGreaterThanOrEqualTo,\n divider: false,\n },\n {\n option: 'lessThan',\n symbol: '<',\n label: localization.filterLessThan,\n divider: false,\n },\n {\n option: 'lessThanOrEqualTo',\n symbol: '≤',\n label: localization.filterLessThanOrEqualTo,\n divider: true,\n },\n {\n option: 'empty',\n symbol: '∅',\n label: localization.filterEmpty,\n divider: false,\n },\n {\n option: 'notEmpty',\n symbol: '!∅',\n label: localization.filterNotEmpty,\n divider: false,\n },\n ] as Array<{\n divider: boolean;\n fn: Function;\n label: string;\n option: MRT_FilterOption;\n symbol?: string;\n }>\n ).filter((filterType) =>\n columnDef\n ? allowedColumnFilterOptions === undefined ||\n allowedColumnFilterOptions?.includes(filterType.option)\n : (!enabledGlobalFilterOptions ||\n enabledGlobalFilterOptions.includes(filterType.option)) &&\n ['fuzzy', 'contains'].includes(filterType.option),\n ),\n [],\n );\n\n const handleSelectFilterType = (option: MRT_FilterOption) => {\n if (header && column) {\n setCurrentFilterFns((prev: { [key: string]: any }) => ({\n ...prev,\n [header.id]: option,\n }));\n if (['empty', 'notEmpty'].includes(option)) {\n column.setFilterValue(' ');\n } else if (option === 'between') {\n column.setFilterValue(['', '']);\n } else {\n column.setFilterValue('');\n }\n } else {\n setCurrentGlobalFilterFn(option);\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: density === 'compact',\n }}\n >\n {filterOptions.map(({ option, label, divider, symbol }, index) => (\n <MenuItem\n divider={divider}\n key={index}\n onClick={() => handleSelectFilterType(option)}\n selected={option === filterOption}\n sx={{\n py: '6px',\n my: 0,\n alignItems: 'center',\n display: 'flex',\n gap: '2ch',\n }}\n value={option}\n >\n <Box sx={{ fontSize: '1.25rem', width: '2ch' }}>{symbol}</Box>\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 table: MRT_TableInstance;\n}\n\nexport const MRT_ColumnPinningButtons: FC<Props> = ({ column, table }) => {\n const {\n options: {\n icons: { PushPinIcon },\n localization,\n },\n } = table;\n\n const handlePinColumn = (pinDirection: 'left' | 'right' | false) => {\n column.pin(pinDirection);\n };\n\n return (\n <Box sx={{ minWidth: '70px', textAlign: 'center' }}>\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 { IconButton, IconButtonProps, Tooltip } from '@mui/material';\nimport React, { DragEventHandler, FC } from 'react';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n iconButtonProps?: IconButtonProps;\n onDragStart: DragEventHandler<HTMLButtonElement>;\n onDragEnd: DragEventHandler<HTMLButtonElement>;\n table: MRT_TableInstance;\n}\n\nexport const MRT_GrabHandleButton: FC<Props> = ({\n iconButtonProps,\n onDragEnd,\n onDragStart,\n table,\n}) => {\n const {\n options: {\n icons: { DragHandleIcon },\n localization,\n },\n } = table;\n\n return (\n <Tooltip\n arrow\n enterDelay={1000}\n enterNextDelay={1000}\n placement=\"top\"\n title={localization.move}\n >\n <IconButton\n disableRipple\n draggable=\"true\"\n onDragStart={onDragStart}\n onDragEnd={onDragEnd}\n size=\"small\"\n {...iconButtonProps}\n sx={{\n cursor: 'grab',\n m: 0,\n opacity: 0.5,\n p: '2px',\n transition: 'all 0.2s ease-in-out',\n '&:hover': {\n backgroundColor: 'transparent',\n opacity: 1,\n },\n '&:active': {\n cursor: 'grabbing',\n },\n ...iconButtonProps?.sx,\n }}\n >\n <DragHandleIcon />\n </IconButton>\n </Tooltip>\n );\n};\n","import { rankItem, rankings, RankingInfo } from '@tanstack/match-sorter-utils';\nimport { filterFns, Row } from '@tanstack/react-table';\n\nconst fuzzy = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n columnId: string,\n filterValue: string | number,\n addMeta: (item: RankingInfo) => void,\n) => {\n const itemRank = rankItem(row.getValue(columnId), filterValue as string, {\n threshold: rankings.MATCHES,\n });\n addMeta(itemRank);\n return itemRank.passed;\n};\n\nfuzzy.autoRemove = (val: any) => !val;\n\nconst contains = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n id: string,\n filterValue: string | number,\n) =>\n row\n .getValue<string | number>(id)\n .toString()\n .toLowerCase()\n .trim()\n .includes(filterValue.toString().toLowerCase().trim());\n\ncontains.autoRemove = (val: any) => !val;\n\nconst startsWith = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n id: string,\n filterValue: string | number,\n) =>\n row\n .getValue<string | number>(id)\n .toString()\n .toLowerCase()\n .trim()\n .startsWith(filterValue.toString().toLowerCase().trim());\n\nstartsWith.autoRemove = (val: any) => !val;\n\nconst endsWith = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n id: string,\n filterValue: string | number,\n) =>\n row\n .getValue<string | number>(id)\n .toString()\n .toLowerCase()\n .trim()\n .endsWith(filterValue.toString().toLowerCase().trim());\n\nendsWith.autoRemove = (val: any) => !val;\n\nconst equals = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n id: string,\n filterValue: string | number,\n) =>\n row.getValue<string | number>(id).toString().toLowerCase().trim() ===\n filterValue.toString().toLowerCase().trim();\n\nequals.autoRemove = (val: any) => !val;\n\nconst notEquals = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n id: string,\n filterValue: string | number,\n) =>\n row.getValue<string | number>(id).toString().toLowerCase().trim() !==\n filterValue.toString().toLowerCase().trim();\n\nnotEquals.autoRemove = (val: any) => !val;\n\nconst greaterThan = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n id: string,\n filterValue: string | number,\n) =>\n !isNaN(+filterValue) && !isNaN(+row.getValue<string | number>(id))\n ? +row.getValue<string | number>(id) > +filterValue\n : row.getValue<string | number>(id).toString().toLowerCase().trim() >\n filterValue.toString().toLowerCase().trim();\n\ngreaterThan.autoRemove = (val: any) => !val;\n\nconst greaterThanOrEqualTo = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n id: string,\n filterValue: string | number,\n) => equals(row, id, filterValue) || greaterThan(row, id, filterValue);\n\ngreaterThanOrEqualTo.autoRemove = (val: any) => !val;\n\nconst lessThan = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n id: string,\n filterValue: string | number,\n) =>\n !isNaN(+filterValue) && !isNaN(+row.getValue<string | number>(id))\n ? +row.getValue<string | number>(id) < +filterValue\n : row.getValue<string | number>(id).toString().toLowerCase().trim() <\n filterValue.toString().toLowerCase().trim();\n\nlessThan.autoRemove = (val: any) => !val;\n\nconst lessThanOrEqualTo = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n id: string,\n filterValue: string | number,\n) => equals(row, id, filterValue) || lessThan(row, id, filterValue);\n\nlessThanOrEqualTo.autoRemove = (val: any) => !val;\n\nconst between = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\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\nconst betweenInclusive = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n id: string,\n filterValues: [string | number, string | number],\n) =>\n ((['', undefined] as any[]).includes(filterValues[0]) ||\n greaterThanOrEqualTo(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 lessThanOrEqualTo(row, id, filterValues[1]));\n\nbetweenInclusive.autoRemove = (val: any) => !val;\n\nconst empty = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n id: string,\n _filterValue: string | number,\n) => !row.getValue<string | number>(id).toString().trim();\n\nempty.autoRemove = (val: any) => !val;\n\nconst notEmpty = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n id: string,\n _filterValue: string | number,\n) => !!row.getValue<string | number>(id).toString().trim();\n\nnotEmpty.autoRemove = (val: any) => !val;\n\nexport const MRT_FilterFns = {\n ...filterFns,\n between,\n betweenInclusive,\n contains,\n empty,\n endsWith,\n equals,\n fuzzy,\n greaterThan,\n greaterThanOrEqualTo,\n lessThan,\n lessThanOrEqualTo,\n notEmpty,\n notEquals,\n startsWith,\n};\n","import { compareItems, RankingInfo } from '@tanstack/match-sorter-utils';\nimport { Row, sortingFns } from '@tanstack/react-table';\nimport { MRT_Row } from '.';\n\nconst fuzzy = <TData extends Record<string, any> = {}>(\n rowA: Row<TData>,\n rowB: Row<TData>,\n columnId: string,\n) => {\n let dir = 0;\n if (rowA.columnFiltersMeta[columnId]) {\n dir = compareItems(\n rowA.columnFiltersMeta[columnId]! as RankingInfo,\n rowB.columnFiltersMeta[columnId]! as RankingInfo,\n );\n }\n // Provide a fallback for when the item ranks are equal\n return dir === 0\n ? sortingFns.alphanumeric(rowA as Row<any>, rowB as Row<any>, columnId)\n : dir;\n};\n\nexport const MRT_SortingFns = {\n ...sortingFns,\n fuzzy,\n};\n\nexport const rankGlobalFuzzy = <TData extends Record<string, any> = {}>(\n rowA: MRT_Row<TData>,\n rowB: MRT_Row<TData>,\n) =>\n Math.max(...Object.values(rowB.columnFiltersMeta).map((v: any) => v.rank)) -\n Math.max(...Object.values(rowA.columnFiltersMeta).map((v: any) => v.rank));\n","import { ColumnOrderState } from '@tanstack/react-table';\nimport {\n MaterialReactTableProps,\n MRT_Column,\n MRT_ColumnDef,\n MRT_DefinedColumnDef,\n MRT_DisplayColumnIds,\n MRT_FilterOption,\n} from '.';\nimport { MRT_FilterFns } from './filtersFns';\nimport { MRT_SortingFns } from './sortingFns';\n\nconst getColumnId = <TData extends Record<string, any> = {}>(\n columnDef: MRT_ColumnDef<TData>,\n): string =>\n columnDef.id ?? columnDef.accessorKey?.toString?.() ?? columnDef.header;\n\nexport const getAllLeafColumnDefs = <TData extends Record<string, any> = {}>(\n columns: MRT_ColumnDef<TData>[],\n): MRT_ColumnDef<TData>[] => {\n let lowestLevelColumns: MRT_ColumnDef<TData>[] = columns;\n let currentCols: MRT_ColumnDef<TData>[] | undefined = columns;\n while (!!currentCols?.length && currentCols.some((col) => col.columns)) {\n const nextCols: MRT_ColumnDef<TData>[] = currentCols\n .filter((col) => !!col.columns)\n .map((col) => col.columns)\n .flat() as MRT_ColumnDef<TData>[];\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 prepareColumns = <TData extends Record<string, any> = {}>(\n columnDefs: MRT_ColumnDef<TData>[],\n currentFilterFns: { [key: string]: MRT_FilterOption },\n): MRT_DefinedColumnDef<TData>[] =>\n columnDefs.map((columnDef) => {\n if (!columnDef.id) columnDef.id = getColumnId(columnDef);\n if (process.env.NODE_ENV !== 'production' && !columnDef.id) {\n console.error(\n 'Column definitions must have a valid `accessorKey` or `id` property',\n );\n }\n if (!columnDef.columnDefType) columnDef.columnDefType = 'data';\n if (!!columnDef.columns?.length) {\n columnDef.columnDefType = 'group';\n columnDef.columns = prepareColumns(columnDef.columns, currentFilterFns);\n } else if (columnDef.columnDefType === 'data') {\n if (Object.keys(MRT_FilterFns).includes(currentFilterFns[columnDef.id])) {\n columnDef.filterFn =\n MRT_FilterFns[currentFilterFns[columnDef.id]] ?? MRT_FilterFns.fuzzy;\n }\n if (Object.keys(MRT_SortingFns).includes(columnDef.sortingFn as string)) {\n // @ts-ignore\n columnDef.sortingFn = MRT_SortingFns[columnDef.sortingFn];\n }\n }\n return columnDef;\n }) as MRT_DefinedColumnDef<TData>[];\n\nexport const reorderColumn = <TData extends Record<string, any> = {}>(\n draggedColumn: MRT_Column<TData>,\n targetColumn: MRT_Column<TData>,\n columnOrder: ColumnOrderState,\n): ColumnOrderState => {\n if (draggedColumn.getCanPin()) {\n draggedColumn.pin(targetColumn.getIsPinned());\n }\n columnOrder.splice(\n columnOrder.indexOf(targetColumn.id),\n 0,\n columnOrder.splice(columnOrder.indexOf(draggedColumn.id), 1)[0],\n );\n return [...columnOrder];\n};\n\nexport const getLeadingDisplayColumnIds = <\n TData extends Record<string, any> = {},\n>(\n props: MaterialReactTableProps<TData>,\n) =>\n [\n (props.enableRowDragging || props.enableRowOrdering) && 'mrt-row-drag',\n ((props.positionActionsColumn === 'first' && props.enableRowActions) ||\n (props.enableEditing && props.editingMode === 'row')) &&\n 'mrt-row-actions',\n props.positionExpandColumn === 'first' &&\n (props.enableExpanding ||\n props.enableGrouping ||\n props.renderDetailPanel) &&\n 'mrt-row-expand',\n props.enableRowSelection && 'mrt-row-select',\n props.enableRowNumbers && 'mrt-row-numbers',\n ].filter(Boolean) as MRT_DisplayColumnIds[];\n\nexport const getTrailingDisplayColumnIds = <\n TData extends Record<string, any> = {},\n>(\n props: MaterialReactTableProps<TData>,\n) => [\n ((props.positionActionsColumn === 'last' && props.enableRowActions) ||\n (props.enableEditing && props.editingMode === 'row')) &&\n 'mrt-row-actions',\n props.positionExpandColumn === 'last' &&\n (props.enableExpanding ||\n props.enableGrouping ||\n props.renderDetailPanel) &&\n 'mrt-row-expand',\n];\n\nexport const getDefaultColumnOrderIds = <\n TData extends Record<string, any> = {},\n>(\n props: MaterialReactTableProps<TData>,\n) =>\n [\n ...getLeadingDisplayColumnIds(props),\n ...getAllLeafColumnDefs(props.columns).map((columnDef) =>\n getColumnId(columnDef),\n ),\n ...getTrailingDisplayColumnIds(props),\n ].filter(Boolean) as string[];\n","import React, {\n Dispatch,\n DragEvent,\n FC,\n SetStateAction,\n useState,\n} from 'react';\nimport {\n Box,\n FormControlLabel,\n MenuItem,\n Switch,\n Tooltip,\n Typography,\n} from '@mui/material';\nimport { MRT_ColumnPinningButtons } from '../buttons/MRT_ColumnPinningButtons';\nimport { MRT_GrabHandleButton } from '../buttons/MRT_GrabHandleButton';\nimport { reorderColumn } from '../column.utils';\nimport type { MRT_Column, MRT_TableInstance } from '..';\n\ninterface Props {\n allColumns: MRT_Column[];\n column: MRT_Column;\n currentHoveredColumn: MRT_Column | null;\n isSubMenu?: boolean;\n setCurrentHoveredColumn: Dispatch<SetStateAction<MRT_Column | null>>;\n table: MRT_TableInstance;\n}\n\nexport const MRT_ShowHideColumnsMenuItems: FC<Props> = ({\n allColumns,\n currentHoveredColumn,\n setCurrentHoveredColumn,\n column,\n isSubMenu,\n table,\n}) => {\n const {\n getState,\n options: {\n enableColumnOrdering,\n enableHiding,\n enablePinning,\n localization,\n },\n setColumnOrder,\n } = table;\n const { columnOrder } = getState();\n const { columnDef } = column;\n const { columnDefType } = columnDef;\n\n const switchChecked =\n (columnDefType !== 'group' && column.getIsVisible()) ||\n (columnDefType === 'group' &&\n column.getLeafColumns().some((col) => col.getIsVisible()));\n\n const handleToggleColumnHidden = (column: MRT_Column) => {\n if (columnDefType === 'group') {\n column?.columns?.forEach?.((childColumn: MRT_Column) => {\n childColumn.toggleVisibility(!switchChecked);\n });\n } else {\n column.toggleVisibility();\n }\n };\n\n const menuItemRef = React.useRef<HTMLElement>(null);\n\n const [isDragging, setIsDragging] = useState(false);\n\n const handleDragStart = (e: DragEvent<HTMLButtonElement>) => {\n setIsDragging(true);\n e.dataTransfer.setDragImage(menuItemRef.current as HTMLElement, 0, 0);\n };\n\n const handleDragEnd = (_e: DragEvent<HTMLButtonElement>) => {\n setIsDragging(false);\n setCurrentHoveredColumn(null);\n if (currentHoveredColumn) {\n setColumnOrder(reorderColumn(column, currentHoveredColumn, columnOrder));\n }\n };\n\n const handleDragEnter = (_e: DragEvent) => {\n if (!isDragging) {\n setCurrentHoveredColumn(column);\n }\n };\n\n return (\n <>\n <MenuItem\n disableRipple\n ref={menuItemRef as any}\n onDragEnter={handleDragEnter}\n sx={(theme) => ({\n alignItems: 'center',\n justifyContent: 'flex-start',\n my: 0,\n opacity: isDragging ? 0.5 : 1,\n outline: isDragging\n ? `1px dashed ${theme.palette.divider}`\n : currentHoveredColumn?.id === column.id\n ? `2px dashed ${theme.palette.primary.main}`\n : 'none',\n pl: `${(column.depth + 0.5) * 2}rem`,\n py: '6px',\n })}\n >\n <Box\n sx={{\n display: 'flex',\n flexWrap: 'nowrap',\n gap: '8px',\n }}\n >\n {!isSubMenu &&\n columnDefType !== 'group' &&\n enableColumnOrdering &&\n !allColumns.some(\n (col) => col.columnDef.columnDefType === 'group',\n ) &&\n (columnDef.enableColumnOrdering !== false ? (\n <MRT_GrabHandleButton\n onDragEnd={handleDragEnd}\n onDragStart={handleDragStart}\n table={table}\n />\n ) : (\n <Box sx={{ width: '28px' }} />\n ))}\n {!isSubMenu &&\n enablePinning &&\n (column.getCanPin() ? (\n <MRT_ColumnPinningButtons column={column} table={table} />\n ) : (\n <Box sx={{ width: '70px' }} />\n ))}\n {enableHiding ? (\n <FormControlLabel\n componentsProps={{\n typography: {\n sx: {\n mb: 0,\n opacity: columnDefType !== 'display' ? 1 : 0.5,\n },\n },\n }}\n checked={switchChecked}\n control={\n <Tooltip\n arrow\n enterDelay={1000}\n enterNextDelay={1000}\n title={localization.toggleVisibility}\n >\n <Switch />\n </Tooltip>\n }\n disabled={\n (isSubMenu && switchChecked) ||\n !column.getCanHide() ||\n column.getIsGrouped()\n }\n label={columnDef.header}\n onChange={() => handleToggleColumnHidden(column)}\n />\n ) : (\n <Typography sx={{ alignSelf: 'center' }}>\n {columnDef.header}\n </Typography>\n )}\n </Box>\n </MenuItem>\n {column.columns?.map((c: MRT_Column, i) => (\n <MRT_ShowHideColumnsMenuItems\n allColumns={allColumns}\n column={c}\n currentHoveredColumn={currentHoveredColumn}\n isSubMenu={isSubMenu}\n key={`${i}-${c.id}`}\n setCurrentHoveredColumn={setCurrentHoveredColumn}\n table={table}\n />\n ))}\n </>\n );\n};\n","import React, { FC, useMemo, useState } from 'react';\nimport { Button, Menu, Divider, Box } from '@mui/material';\nimport { MRT_ShowHideColumnsMenuItems } from './MRT_ShowHideColumnsMenuItems';\nimport type { MRT_Column, MRT_TableInstance } from '..';\nimport { getDefaultColumnOrderIds } from '../column.utils';\n\ninterface Props {\n anchorEl: HTMLElement | null;\n isSubMenu?: boolean;\n setAnchorEl: (anchorEl: HTMLElement | null) => void;\n table: MRT_TableInstance;\n}\n\nexport const MRT_ShowHideColumnsMenu: FC<Props> = ({\n anchorEl,\n isSubMenu,\n setAnchorEl,\n table,\n}) => {\n const {\n getAllColumns,\n getAllLeafColumns,\n getCenterLeafColumns,\n getIsAllColumnsVisible,\n getIsSomeColumnsPinned,\n getIsSomeColumnsVisible,\n getLeftLeafColumns,\n getRightLeafColumns,\n getState,\n toggleAllColumnsVisible,\n options: { localization, enablePinning, enableColumnOrdering },\n } = table;\n const { density, columnOrder, columnPinning } = getState();\n\n const hideAllColumns = () => {\n getAllLeafColumns()\n .filter((col) => col.columnDef.enableHiding !== false)\n .forEach((col) => col.toggleVisibility(false));\n };\n\n const allColumns = useMemo(() => {\n const columns = getAllColumns();\n if (\n columnOrder.length > 0 &&\n !columns.some((col) => col.columnDef.columnDefType === 'group')\n ) {\n return [\n ...getLeftLeafColumns(),\n ...Array.from(new Set(columnOrder)).map((colId) =>\n getCenterLeafColumns().find((col) => col?.id === colId),\n ),\n ...getRightLeafColumns(),\n ].filter(Boolean);\n }\n return columns;\n }, [\n columnOrder,\n columnPinning,\n getAllColumns(),\n getCenterLeafColumns(),\n getLeftLeafColumns(),\n getRightLeafColumns(),\n ]) as MRT_Column[];\n\n const [currentHoveredColumn, setCurrentHoveredColumn] =\n useState<MRT_Column | null>(null);\n\n return (\n <Menu\n anchorEl={anchorEl}\n open={!!anchorEl}\n onClose={() => setAnchorEl(null)}\n MenuListProps={{\n dense: density === 'compact',\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 && enableColumnOrdering && (\n <Button\n onClick={() =>\n table.setColumnOrder(\n getDefaultColumnOrderIds(table.options as any),\n )\n }\n >\n {localization.resetOrder}\n </Button>\n )}\n {!isSubMenu && enablePinning && (\n <Button\n disabled={!getIsSomeColumnsPinned()}\n onClick={() => table.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 {allColumns.map((column, index) => (\n <MRT_ShowHideColumnsMenuItems\n allColumns={allColumns}\n column={column}\n currentHoveredColumn={currentHoveredColumn}\n isSubMenu={isSubMenu}\n key={`${index}-${column.id}`}\n setCurrentHoveredColumn={setCurrentHoveredColumn}\n table={table}\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 table: MRT_TableInstance;\n}\n\nexport const MRT_ColumnActionMenu: FC<Props> = ({\n anchorEl,\n header,\n setAnchorEl,\n table,\n}) => {\n const {\n getState,\n toggleAllColumnsVisible,\n setColumnOrder,\n options: {\n enableColumnFilterChangeMode,\n enableColumnFilters,\n enableColumnResizing,\n enableGrouping,\n enableHiding,\n enablePinning,\n enableSorting,\n enabledColumnFilterOptions,\n icons: {\n ArrowRightIcon,\n ClearAllIcon,\n ViewColumnIcon,\n DynamicFeedIcon,\n FilterListIcon,\n FilterListOffIcon,\n PushPinIcon,\n SortIcon,\n RestartAltIcon,\n VisibilityOffIcon,\n },\n tableId,\n localization,\n },\n setShowFilters,\n } = table;\n const { column } = header;\n const { columnDef } = column;\n const { columnSizing, columnVisibility, density } = getState();\n\n const [filterMenuAnchorEl, setFilterMenuAnchorEl] =\n useState<null | HTMLElement>(null);\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-row-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-${tableId}-${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 const isSelectFilter = !!columnDef.filterSelectOptions;\n\n const allowedColumnFilterOptions =\n columnDef?.enabledColumnFilterOptions ?? enabledColumnFilterOptions;\n\n const showFilterModeSubMenu =\n enableColumnFilterChangeMode &&\n columnDef.enableColumnFilterChangeMode !== false &&\n !isSelectFilter &&\n (allowedColumnFilterOptions === undefined ||\n !!allowedColumnFilterOptions?.length);\n\n return (\n <Menu\n anchorEl={anchorEl}\n open={!!anchorEl}\n onClose={() => setAnchorEl(null)}\n MenuListProps={{\n dense: density === 'compact',\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(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(columnDef.header),\n )}\n </Box>\n </MenuItem>,\n ]}\n {enableColumnFilters &&\n column.getCanFilter() &&\n [\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(columnDef.header),\n )}\n </Box>\n {showFilterModeSubMenu && (\n <IconButton\n onClick={handleOpenFilterModeMenu}\n onMouseEnter={handleOpenFilterModeMenu}\n size=\"small\"\n sx={{ p: 0 }}\n >\n <ArrowRightIcon />\n </IconButton>\n )}\n </MenuItem>,\n showFilterModeSubMenu && (\n <MRT_FilterOptionMenu\n anchorEl={filterMenuAnchorEl}\n header={header}\n key={2}\n onSelect={handleFilterByColumn}\n setAnchorEl={setFilterMenuAnchorEl}\n table={table}\n />\n ),\n ].filter(Boolean)}\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(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 column.getCanResize() && [\n <MenuItem\n disabled={!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={columnDef.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(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(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 table={table}\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 table: MRT_TableInstance;\n}\n\nexport const MRT_RowActionMenu: FC<Props> = ({\n anchorEl,\n handleEdit,\n row,\n setAnchorEl,\n table,\n}) => {\n const {\n getState,\n options: {\n icons: { EditIcon },\n enableEditing,\n localization,\n renderRowActionMenuItems,\n },\n } = table;\n const { density } = getState();\n\n return (\n <Menu\n anchorEl={anchorEl}\n open={!!anchorEl}\n onClose={() => setAnchorEl(null)}\n MenuListProps={{\n dense: density === 'compact',\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 table,\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 table: MRT_TableInstance;\n}\n\nexport const MRT_EditActionButtons: FC<Props> = ({ row, table }) => {\n const {\n getState,\n options: {\n icons: { CancelIcon, SaveIcon },\n localization,\n onEditRowSubmit,\n },\n setCurrentEditingRow,\n } = table;\n const { currentEditingRow } = getState();\n\n const handleCancel = () => {\n row._valuesCache = row.original ?? {};\n setCurrentEditingRow(null);\n };\n\n const handleSave = () => {\n onEditRowSubmit?.({ row: currentEditingRow ?? row, table });\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 table: MRT_TableInstance;\n}\n\nexport const MRT_ToggleRowActionMenuButton: FC<Props> = ({ row, table }) => {\n const {\n getState,\n options: {\n enableEditing,\n icons: { EditIcon, MoreHorizIcon },\n localization,\n renderRowActionMenuItems,\n renderRowActions,\n },\n setCurrentEditingRow,\n } = table;\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, table })}</>\n ) : row.id === currentEditingRow?.id ? (\n <MRT_EditActionButtons row={row} table={table} />\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 table={table}\n />\n </>\n ) : null}\n </>\n );\n};\n","import React, { 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 table: MRT_TableInstance;\n}\n\nexport const MRT_SelectCheckbox: FC<Props> = ({ row, selectAll, table }) => {\n const {\n getState,\n options: {\n localization,\n muiSelectCheckboxProps,\n muiSelectAllCheckboxProps,\n selectAllMode,\n },\n } = table;\n const { density } = getState();\n\n const checkboxProps = !row\n ? muiSelectAllCheckboxProps instanceof Function\n ? muiSelectAllCheckboxProps({ table })\n : muiSelectAllCheckboxProps\n : muiSelectCheckboxProps instanceof Function\n ? muiSelectCheckboxProps({ row, table })\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 ? table.getIsAllRowsSelected() : row?.getIsSelected()\n }\n indeterminate={\n selectAll ? table.getIsSomeRowsSelected() : row?.getIsSomeSelected()\n }\n inputProps={{\n 'aria-label': selectAll\n ? localization.toggleSelectAll\n : localization.toggleSelectRow,\n }}\n onChange={\n !row\n ? selectAllMode === 'all'\n ? table.getToggleAllRowsSelectedHandler()\n : table.getToggleAllPageRowsSelectedHandler()\n : row.getToggleSelectedHandler()\n }\n size={density === 'compact' ? 'small' : 'medium'}\n {...checkboxProps}\n sx={(theme) => ({\n height: density === 'compact' ? '1.5rem' : '2rem',\n width: density === 'compact' ? '1.5rem' : '2rem',\n m: '-1re.m',\n ...(checkboxProps?.sx instanceof Function\n ? checkboxProps.sx(theme)\n : (checkboxProps?.sx as any)),\n })}\n />\n </Tooltip>\n );\n};\n","import React, { FC } from 'react';\nimport { IconButton, IconButtonProps, Tooltip } from '@mui/material';\nimport { MRT_TableInstance } from '..';\n\ninterface Props extends IconButtonProps {\n table: MRT_TableInstance;\n}\n\nexport const MRT_FullScreenToggleButton: FC<Props> = ({ table, ...rest }) => {\n const {\n getState,\n options: {\n icons: { FullscreenExitIcon, FullscreenIcon },\n localization,\n },\n setIsFullScreen,\n } = table;\n const { isFullScreen } = getState();\n\n const handleToggleFullScreen = () => {\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 table: MRT_TableInstance;\n}\n\nexport const MRT_ShowHideColumnsButton: FC<Props> = ({ table, ...rest }) => {\n const {\n options: {\n icons: { ViewColumnIcon },\n localization,\n },\n } = table;\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 table={table}\n />\n </>\n );\n};\n","import React, { FC } from 'react';\nimport { IconButton, IconButtonProps, Tooltip } from '@mui/material';\nimport { MRT_TableInstance } from '..';\n\ninterface Props extends IconButtonProps {\n table: MRT_TableInstance;\n}\n\nexport const MRT_ToggleDensePaddingButton: FC<Props> = ({ table, ...rest }) => {\n const {\n getState,\n options: {\n icons: { DensityLargeIcon, DensityMediumIcon, DensitySmallIcon },\n localization,\n },\n setDensity,\n } = table;\n const { density } = getState();\n\n const handleToggleDensePadding = () => {\n const nextDensity =\n density === 'comfortable'\n ? 'compact'\n : density === 'compact'\n ? 'spacious'\n : 'comfortable';\n setDensity(nextDensity);\n };\n\n return (\n <Tooltip arrow title={localization.toggleDensity}>\n <IconButton\n aria-label={localization.toggleDensity}\n onClick={handleToggleDensePadding}\n {...rest}\n >\n {density === 'compact' ? (\n <DensitySmallIcon />\n ) : density === 'comfortable' ? (\n <DensityMediumIcon />\n ) : (\n <DensityLargeIcon />\n )}\n </IconButton>\n </Tooltip>\n );\n};\n","import React, { FC } from 'react';\nimport { IconButton, IconButtonProps, Tooltip } from '@mui/material';\nimport { MRT_TableInstance } from '..';\n\ninterface Props extends IconButtonProps {\n table: MRT_TableInstance;\n}\n\nexport const MRT_ToggleFiltersButton: FC<Props> = ({ table, ...rest }) => {\n const {\n getState,\n options: {\n icons: { FilterListIcon, FilterListOffIcon },\n localization,\n },\n setShowFilters,\n } = table;\n const { showColumnFilters } = getState();\n\n const handleToggleShowFilters = () => {\n setShowFilters(!showColumnFilters);\n };\n\n return (\n <Tooltip arrow title={localization.showHideFilters}>\n <IconButton\n aria-label={localization.showHideFilters}\n onClick={handleToggleShowFilters}\n {...rest}\n >\n {showColumnFilters ? <FilterListOffIcon /> : <FilterListIcon />}\n </IconButton>\n </Tooltip>\n );\n};\n","import React, { FC } from 'react';\nimport { IconButton, IconButtonProps, Tooltip } from '@mui/material';\nimport { MRT_TableInstance } from '..';\n\ninterface Props extends IconButtonProps {\n table: MRT_TableInstance;\n}\n\nexport const MRT_ToggleGlobalFilterButton: FC<Props> = ({ table, ...rest }) => {\n const {\n getState,\n options: {\n icons: { SearchIcon, SearchOffIcon },\n tableId,\n localization,\n muiSearchTextFieldProps,\n },\n setShowGlobalFilter,\n } = table;\n const { showGlobalFilter } = getState();\n\n const textFieldProps =\n muiSearchTextFieldProps instanceof Function\n ? muiSearchTextFieldProps({ table })\n : muiSearchTextFieldProps;\n\n const handleToggleSearch = () => {\n setShowGlobalFilter(!showGlobalFilter);\n setTimeout(\n () =>\n document\n .getElementById(\n textFieldProps?.id ?? `mrt-${tableId}-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 table: MRT_TableInstance;\n}\n\nexport const MRT_GlobalFilterTextField: FC<Props> = ({ table }) => {\n const {\n getState,\n setGlobalFilter,\n options: {\n enableGlobalFilterChangeMode,\n icons: { SearchIcon, CloseIcon },\n localization,\n muiSearchTextFieldProps,\n tableId,\n },\n } = table;\n const { globalFilter, showGlobalFilter } = getState();\n\n const [anchorEl, setAnchorEl] = useState<null | HTMLElement>(null);\n const [searchValue, setSearchValue] = useState(globalFilter ?? '');\n\n const handleChangeDebounced = useCallback(\n debounce((event: ChangeEvent<HTMLInputElement>) => {\n setGlobalFilter(event.target.value ?? undefined);\n }, 250),\n [],\n );\n\n const handleChange = (event: ChangeEvent<HTMLInputElement>) => {\n setSearchValue(event.target.value);\n handleChangeDebounced(event);\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({ table })\n : muiSearchTextFieldProps;\n\n return (\n <Collapse in={showGlobalFilter} orientation=\"horizontal\">\n <TextField\n id={`mrt-${tableId}-search-text-field`}\n placeholder={localization.search}\n onChange={handleChange}\n value={searchValue ?? ''}\n variant=\"standard\"\n InputProps={{\n startAdornment: enableGlobalFilterChangeMode ? (\n <InputAdornment position=\"start\">\n <Tooltip arrow title={localization.changeSearchMode}>\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 </Tooltip>\n </InputAdornment>\n ) : (\n <SearchIcon />\n ),\n endAdornment: (\n <InputAdornment position=\"end\">\n <Tooltip arrow title={localization.clearSearch ?? ''}>\n <span>\n <IconButton\n aria-label={localization.clearSearch}\n disabled={!searchValue?.length}\n onClick={handleClear}\n size=\"small\"\n >\n <CloseIcon />\n </IconButton>\n </span>\n </Tooltip>\n </InputAdornment>\n ),\n }}\n {...textFieldProps}\n />\n <MRT_FilterOptionMenu\n anchorEl={anchorEl}\n setAnchorEl={setAnchorEl}\n table={table}\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_GlobalFilterTextField } from '../inputs/MRT_GlobalFilterTextField';\n\ninterface Props {\n table: MRT_TableInstance;\n}\n\nexport const MRT_ToolbarInternalButtons: FC<Props> = ({ table }) => {\n const {\n options: {\n enableColumnFilters,\n enableColumnOrdering,\n enableDensityToggle,\n enableFilters,\n enableFullScreenToggle,\n enableGlobalFilter,\n enableHiding,\n enablePinning,\n positionGlobalFilter,\n renderToolbarInternalActions,\n },\n } = table;\n\n return (\n <Box\n sx={{\n alignItems: 'center',\n display: 'flex',\n zIndex: 3,\n }}\n >\n {renderToolbarInternalActions?.({\n MRT_FullScreenToggleButton,\n MRT_ShowHideColumnsButton,\n MRT_ToggleDensePaddingButton,\n MRT_ToggleFiltersButton,\n MRT_ToggleGlobalFilterButton,\n table,\n }) ?? (\n <>\n {enableGlobalFilter && positionGlobalFilter === 'right' && (\n <MRT_GlobalFilterTextField table={table} />\n )}\n {enableFilters && enableGlobalFilter && (\n <MRT_ToggleGlobalFilterButton table={table} />\n )}\n {enableFilters && enableColumnFilters && (\n <MRT_ToggleFiltersButton table={table} />\n )}\n {(enableHiding || enableColumnOrdering || enablePinning) && (\n <MRT_ShowHideColumnsButton table={table} />\n )}\n {enableDensityToggle && (\n <MRT_ToggleDensePaddingButton table={table} />\n )}\n {enableFullScreenToggle && (\n <MRT_FullScreenToggleButton table={table} />\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 table: MRT_TableInstance;\n position: 'top' | 'bottom';\n}\n\nexport const MRT_TablePagination: FC<Props> = ({ table, position }) => {\n const {\n getPrePaginationRowModel,\n getState,\n setPageIndex,\n setPageSize,\n options: {\n muiTablePaginationProps,\n enableToolbarInternalActions,\n rowCount,\n },\n } = table;\n const {\n pagination: { pageSize = 10, pageIndex = 0 },\n showGlobalFilter,\n } = getState();\n\n const totalRowCount = rowCount ?? getPrePaginationRowModel().rows.length;\n const showFirstLastPageButtons = totalRowCount / pageSize > 2;\n\n const tablePaginationProps =\n muiTablePaginationProps instanceof Function\n ? muiTablePaginationProps({ table })\n : muiTablePaginationProps;\n\n const handleChangeRowsPerPage = (event: ChangeEvent<HTMLInputElement>) => {\n setPageSize(+event.target.value);\n };\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={totalRowCount}\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={(theme) => ({\n m: '0 0.5rem',\n mt:\n position === 'top' &&\n enableToolbarInternalActions &&\n !showGlobalFilter\n ? '3.5rem'\n : undefined,\n position: 'relative',\n zIndex: 2,\n ...(tablePaginationProps?.sx instanceof Function\n ? tablePaginationProps.sx(theme)\n : (tablePaginationProps?.sx as any)),\n })}\n />\n );\n};\n","import React, { FC, Fragment } from 'react';\nimport { Alert, AlertTitle, Box, Chip, Collapse } from '@mui/material';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n stackAlertBanner?: boolean;\n table: MRT_TableInstance;\n}\n\nexport const MRT_ToolbarAlertBanner: FC<Props> = ({\n stackAlertBanner,\n table,\n}) => {\n const {\n getPrePaginationRowModel,\n getSelectedRowModel,\n getState,\n options: { localization, muiTableToolbarAlertBannerProps },\n } = table;\n const { grouping, showAlertBanner } = getState();\n\n const alertProps =\n muiTableToolbarAlertBannerProps instanceof Function\n ? muiTableToolbarAlertBannerProps({ table })\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={table.getColumn(columnId).columnDef.header}\n onDelete={() => table.getColumn(columnId).toggleGrouping()}\n />\n </Fragment>\n ))}\n </span>\n ) : null;\n\n return (\n <Collapse\n in={showAlertBanner || !!selectMessage || !!groupedByMessage}\n timeout={stackAlertBanner ? 200 : 0}\n >\n <Alert\n color=\"info\"\n icon={false}\n {...alertProps}\n sx={(theme) => ({\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 instanceof Function\n ? alertProps.sx(theme)\n : (alertProps?.sx as any)),\n })}\n >\n {alertProps?.title && <AlertTitle>{alertProps.title}</AlertTitle>}\n <Box sx={{ p: '0.5rem 1rem' }}>\n {alertProps?.children}\n {alertProps?.children && (selectMessage || groupedByMessage) && (\n <br />\n )}\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 isTopToolbar: boolean;\n table: MRT_TableInstance;\n}\n\nexport const MRT_LinearProgressBar: FC<Props> = ({ isTopToolbar, table }) => {\n const {\n options: { muiLinearProgressProps },\n getState,\n } = table;\n const { isLoading, showProgressBars } = getState();\n\n const linearProgressProps =\n muiLinearProgressProps instanceof Function\n ? muiLinearProgressProps({ isTopToolbar, table })\n : muiLinearProgressProps;\n\n return (\n <Collapse\n in={isLoading || showProgressBars}\n mountOnEnter\n unmountOnExit\n sx={{\n bottom: isTopToolbar ? 0 : undefined,\n position: 'absolute',\n top: !isTopToolbar ? 0 : undefined,\n width: '100%',\n }}\n >\n <LinearProgress\n aria-label=\"Loading\"\n aria-busy=\"true\"\n sx={{ position: 'relative' }}\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 '..';\nimport { MRT_GlobalFilterTextField } from '../inputs/MRT_GlobalFilterTextField';\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 zIndex: 1,\n});\n\ninterface Props {\n table: MRT_TableInstance;\n}\n\nexport const MRT_ToolbarTop: FC<Props> = ({ table }) => {\n const {\n getState,\n options: {\n enableGlobalFilter,\n enablePagination,\n enableToolbarInternalActions,\n muiTableToolbarTopProps,\n positionGlobalFilter,\n positionPagination,\n positionToolbarAlertBanner,\n renderToolbarTopCustomActions,\n tableId,\n },\n } = table;\n\n const { isFullScreen, showGlobalFilter } = getState();\n\n const isMobile = useMediaQuery('(max-width:720px)');\n\n const toolbarProps =\n muiTableToolbarTopProps instanceof Function\n ? muiTableToolbarTopProps({ table })\n : muiTableToolbarTopProps;\n\n const stackAlertBanner =\n isMobile ||\n (positionToolbarAlertBanner === 'top' &&\n (!!renderToolbarTopCustomActions || showGlobalFilter));\n\n return (\n <Toolbar\n id={`mrt-${tableId}-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 instanceof Function\n ? toolbarProps.sx(theme)\n : (toolbarProps?.sx as any)),\n } as any)\n }\n >\n {positionToolbarAlertBanner === 'top' && (\n <MRT_ToolbarAlertBanner\n stackAlertBanner={stackAlertBanner}\n table={table}\n />\n )}\n <Box\n sx={{\n alignItems: 'flex-start',\n boxSizing: 'border-box',\n display: 'flex',\n justifyContent: 'space-between',\n p: '0.5rem',\n position: stackAlertBanner ? 'relative' : 'absolute',\n right: 0,\n top: 0,\n width: '100%',\n }}\n >\n {enableGlobalFilter && positionGlobalFilter === 'left' && (\n <MRT_GlobalFilterTextField table={table} />\n )}\n\n {renderToolbarTopCustomActions?.({ table }) ?? <span />}\n {enableToolbarInternalActions ? (\n <MRT_ToolbarInternalButtons table={table} />\n ) : (\n enableGlobalFilter &&\n positionGlobalFilter === 'right' && (\n <MRT_GlobalFilterTextField table={table} />\n )\n )}\n </Box>\n {enablePagination &&\n ['top', 'both'].includes(positionPagination ?? '') && (\n <MRT_TablePagination table={table} position=\"top\" />\n )}\n <MRT_LinearProgressBar isTopToolbar table={table} />\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_ToolbarAlertBanner } from './MRT_ToolbarAlertBanner';\nimport { MRT_LinearProgressBar } from './MRT_LinearProgressBar';\nimport { commonToolbarStyles } from './MRT_ToolbarTop';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n table: MRT_TableInstance;\n}\n\nexport const MRT_ToolbarBottom: FC<Props> = ({ table }) => {\n const {\n getState,\n options: {\n enablePagination,\n muiTableToolbarBottomProps,\n positionPagination,\n positionToolbarAlertBanner,\n renderToolbarBottomCustomActions,\n tableId,\n },\n } = table;\n const { isFullScreen } = getState();\n\n const isMobile = useMediaQuery('(max-width:720px)');\n\n const toolbarProps =\n muiTableToolbarBottomProps instanceof Function\n ? muiTableToolbarBottomProps({ table })\n : muiTableToolbarBottomProps;\n\n const stackAlertBanner =\n isMobile ||\n (positionToolbarAlertBanner === 'bottom' &&\n !!renderToolbarBottomCustomActions);\n\n return (\n <Toolbar\n id={`mrt-${tableId}-toolbar-bottom`}\n variant=\"dense\"\n {...toolbarProps}\n sx={(theme) =>\n ({\n ...commonToolbarStyles({ theme }),\n bottom: isFullScreen ? '0' : undefined,\n boxShadow: `-3px 0 6px ${alpha(theme.palette.common.black, 0.1)}`,\n left: 0,\n position: isFullScreen ? 'fixed' : 'relative',\n right: 0,\n ...(toolbarProps?.sx instanceof Function\n ? toolbarProps.sx(theme)\n : (toolbarProps?.sx as any)),\n } as any)\n }\n >\n <MRT_LinearProgressBar isTopToolbar={false} table={table} />\n {positionToolbarAlertBanner === 'bottom' && (\n <MRT_ToolbarAlertBanner table={table} />\n )}\n <Box\n sx={{\n display: 'flex',\n justifyContent: 'space-between',\n width: '100%',\n }}\n >\n {renderToolbarBottomCustomActions ? (\n <Box sx={{ p: '0.5rem' }}>\n {renderToolbarBottomCustomActions({ table })}\n </Box>\n ) : (\n <span />\n )}\n <Box\n sx={{\n display: 'flex',\n justifyContent: 'flex-end',\n position: stackAlertBanner ? 'relative' : 'absolute',\n right: 0,\n top: 0,\n }}\n >\n {enablePagination &&\n ['bottom', 'both'].includes(positionPagination ?? '') && (\n <MRT_TablePagination table={table} position=\"bottom\" />\n )}\n </Box>\n </Box>\n </Toolbar>\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 table: MRT_TableInstance;\n}\n\nexport const MRT_TableHeadCellColumnActionsButton: FC<Props> = ({\n header,\n table,\n}) => {\n const {\n options: {\n icons: { MoreVertIcon },\n localization,\n muiTableHeadCellColumnActionsButtonProps,\n },\n } = table;\n const { column } = header;\n const { columnDef } = column;\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, table })\n : muiTableHeadCellColumnActionsButtonProps;\n\n const mcTableHeadCellColumnActionsButtonProps =\n columnDef.muiTableHeadCellColumnActionsButtonProps instanceof Function\n ? columnDef.muiTableHeadCellColumnActionsButtonProps({\n column,\n table,\n })\n : columnDef.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={(theme) => ({\n height: '2rem',\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 instanceof Function\n ? iconButtonProps.sx(theme)\n : (iconButtonProps?.sx as any)),\n })}\n >\n <MoreVertIcon />\n </IconButton>\n </Tooltip>\n <MRT_ColumnActionMenu\n anchorEl={anchorEl}\n header={header}\n setAnchorEl={setAnchorEl}\n table={table}\n />\n </>\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 { MRT_FilterOptionMenu } from '../menus/MRT_FilterOptionMenu';\nimport type { MRT_Header, MRT_TableInstance } from '..';\n\ninterface Props {\n header: MRT_Header;\n inputIndex?: number;\n table: MRT_TableInstance;\n}\n\nexport const MRT_FilterTextField: FC<Props> = ({\n header,\n inputIndex,\n table,\n}) => {\n const {\n getState,\n options: {\n enableColumnFilterChangeMode,\n enabledColumnFilterOptions,\n icons: { FilterListIcon, CloseIcon },\n localization,\n muiTableHeadCellFilterTextFieldProps,\n tableId,\n },\n setCurrentFilterFns,\n } = table;\n const { column } = header;\n const { columnDef } = column;\n const { currentFilterFns } = getState();\n\n const [anchorEl, setAnchorEl] = useState<null | HTMLElement>(null);\n\n const mTableHeadCellFilterTextFieldProps =\n muiTableHeadCellFilterTextFieldProps instanceof Function\n ? muiTableHeadCellFilterTextFieldProps({ column, table })\n : muiTableHeadCellFilterTextFieldProps;\n\n const mcTableHeadCellFilterTextFieldProps =\n columnDef.muiTableHeadCellFilterTextFieldProps instanceof Function\n ? columnDef.muiTableHeadCellFilterTextFieldProps({\n column,\n table,\n })\n : columnDef.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((event: ChangeEvent<HTMLInputElement>) => {\n let value =\n textFieldProps.type === 'date'\n ? new Date(event.target.value)\n : event.target.value;\n if (inputIndex !== undefined) {\n column.setFilterValue((old: [string, string | Date]) => {\n const newFilterValues = old ?? ['', ''];\n newFilterValues[inputIndex] = value;\n return newFilterValues;\n });\n } else {\n column.setFilterValue(value ?? undefined);\n }\n }, 200),\n [],\n );\n\n const handleChange = (event: ChangeEvent<HTMLInputElement>) => {\n setFilterValue(event.target.value);\n handleChangeDebounced(event);\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]: 'fuzzy',\n }));\n };\n\n if (columnDef.Filter) {\n return <>{columnDef.Filter?.({ header, table })}</>;\n }\n\n const filterId = `mrt-${tableId}-${header.id}-filter-text-field${\n inputIndex ?? ''\n }`;\n const currentFilterOption = currentFilterFns?.[header.id];\n const isSelectFilter = !!columnDef.filterSelectOptions;\n const filterChipLabel = ['empty', 'notEmpty'].includes(currentFilterOption)\n ? //@ts-ignore\n localization[\n `filter${\n currentFilterOption?.charAt(0)?.toUpperCase() +\n currentFilterOption?.slice(1)\n }`\n ]\n : '';\n const filterPlaceholder =\n inputIndex === undefined\n ? localization.filterByColumn?.replace(\n '{column}',\n String(columnDef.header),\n )\n : inputIndex === 0\n ? localization.min\n : inputIndex === 1\n ? localization.max\n : '';\n\n const allowedColumnFilterOptions =\n columnDef?.enabledColumnFilterOptions ?? enabledColumnFilterOptions;\n\n const showChangeModeButton =\n enableColumnFilterChangeMode &&\n columnDef.enableColumnFilterChangeMode !== false &&\n !isSelectFilter &&\n !inputIndex &&\n (allowedColumnFilterOptions === undefined ||\n !!allowedColumnFilterOptions?.length);\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 showChangeModeButton ? (\n <label htmlFor={filterId}>\n {localization.filterMode.replace(\n '{filterType}',\n // @ts-ignore\n localization[\n `filter${\n currentFilterOption?.charAt(0)?.toUpperCase() +\n currentFilterOption?.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 margin=\"none\"\n placeholder={\n filterChipLabel || isSelectFilter ? undefined : filterPlaceholder\n }\n onChange={handleChange}\n onClick={(e: MouseEvent<HTMLInputElement>) => e.stopPropagation()}\n select={isSelectFilter}\n value={filterValue ?? ''}\n variant=\"standard\"\n InputProps={{\n startAdornment: showChangeModeButton ? (\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 <FilterListIcon />\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={(theme) => ({\n m: '-0.25rem',\n p: 0,\n minWidth: !filterChipLabel ? '8rem' : 'auto',\n width: 'calc(100% + 0.5rem)',\n '&\t.MuiSelect-icon': {\n mr: '1.5rem',\n },\n ...(textFieldProps?.sx instanceof Function\n ? textFieldProps.sx(theme)\n : (textFieldProps?.sx as any)),\n })}\n >\n {isSelectFilter && (\n <MenuItem divider disabled={!filterValue} value=\"\">\n {localization.clearFilter}\n </MenuItem>\n )}\n {columnDef?.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 table={table}\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 table: MRT_TableInstance;\n}\n\nexport const MRT_FilterRangeFields: FC<Props> = ({ header, table }) => {\n return (\n <Box sx={{ display: 'grid', gridTemplateColumns: '6fr 6fr', gap: '1rem' }}>\n <MRT_FilterTextField header={header} inputIndex={0} table={table} />\n <MRT_FilterTextField header={header} inputIndex={1} table={table} />\n </Box>\n );\n};\n","import React, { FC } from 'react';\nimport { Collapse } from '@mui/material';\nimport { MRT_FilterRangeFields } from '../inputs/MRT_FilterRangeFields';\nimport { MRT_FilterTextField } from '../inputs/MRT_FilterTextField';\nimport { MRT_Header, MRT_TableInstance } from '..';\n\ninterface Props {\n header: MRT_Header;\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableHeadCellFilterContainer: FC<Props> = ({\n header,\n table,\n}) => {\n const { getState } = table;\n const { currentFilterFns, showColumnFilters } = getState();\n const { column } = header;\n\n return (\n <Collapse in={showColumnFilters} mountOnEnter unmountOnExit>\n {currentFilterFns[column.id] === 'between' ? (\n <MRT_FilterRangeFields header={header} table={table} />\n ) : (\n <MRT_FilterTextField header={header} table={table} />\n )}\n </Collapse>\n );\n};\n","import React, { FC, MouseEvent } from 'react';\nimport { Grow, IconButton, Tooltip } from '@mui/material';\nimport { MRT_Header, MRT_TableInstance } from '..';\n\ninterface Props {\n header: MRT_Header;\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableHeadCellFilterLabel: FC<Props> = ({ header, table }) => {\n const {\n getState,\n options: {\n icons: { FilterAltIcon },\n localization,\n },\n } = table;\n const { currentFilterFns } = getState();\n const { column } = header;\n const { columnDef } = column;\n\n const currentFilterOption = currentFilterFns?.[header.id];\n const filterTooltip = localization.filteringByColumn\n .replace('{column}', String(columnDef.header))\n .replace(\n '{filterType}',\n // @ts-ignore\n localization[\n `filter${\n currentFilterOption?.charAt(0)?.toUpperCase() +\n currentFilterOption?.slice(1)\n }`\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\n return (\n <Grow\n unmountOnExit\n in={\n (!!column.getFilterValue() && currentFilterOption !== 'between') ||\n (currentFilterOption === 'between' && // @ts-ignore\n (!!column.getFilterValue()?.[0] || !!column.getFilterValue()?.[1]))\n }\n >\n <span>\n <Tooltip arrow placement=\"top\" title={filterTooltip}>\n <IconButton\n disableRipple\n onClick={(event: MouseEvent<HTMLButtonElement>) => {\n event.stopPropagation();\n }}\n size=\"small\"\n sx={{\n m: 0,\n opacity: 0.8,\n p: '2px',\n transform: 'scale(0.66)',\n width: '1.5ch',\n }}\n >\n <FilterAltIcon />\n </IconButton>\n </Tooltip>\n </span>\n </Grow>\n );\n};\n","import React, { DragEvent, FC, RefObject } from 'react';\nimport { MRT_GrabHandleButton } from '../buttons/MRT_GrabHandleButton';\nimport { reorderColumn } from '../column.utils';\nimport type { MRT_Column, MRT_TableInstance } from '..';\n\ninterface Props {\n column: MRT_Column;\n table: MRT_TableInstance;\n tableHeadCellRef: RefObject<HTMLTableCellElement>;\n}\n\nexport const MRT_TableHeadCellGrabHandle: FC<Props> = ({\n column,\n table,\n tableHeadCellRef,\n}) => {\n const {\n getState,\n options: {\n enableColumnOrdering,\n muiTableHeadCellDragHandleProps,\n onColumnDrop,\n },\n setColumnOrder,\n setCurrentDraggingColumn,\n setCurrentHoveredColumn,\n } = table;\n const { columnDef } = column;\n const { currentHoveredColumn, currentDraggingColumn, columnOrder } =\n getState();\n\n const mIconButtonProps =\n muiTableHeadCellDragHandleProps instanceof Function\n ? muiTableHeadCellDragHandleProps({ column, table })\n : muiTableHeadCellDragHandleProps;\n\n const mcIconButtonProps =\n columnDef.muiTableHeadCellDragHandleProps instanceof Function\n ? columnDef.muiTableHeadCellDragHandleProps({ column, table })\n : columnDef.muiTableHeadCellDragHandleProps;\n\n const iconButtonProps = {\n ...mIconButtonProps,\n ...mcIconButtonProps,\n };\n\n const handleDragStart = (e: DragEvent<HTMLButtonElement>) => {\n setCurrentDraggingColumn(column);\n e.dataTransfer.setDragImage(tableHeadCellRef.current as HTMLElement, 0, 0);\n };\n\n const handleDragEnd = (event: DragEvent<HTMLButtonElement>) => {\n onColumnDrop?.({\n event,\n draggedColumn: column,\n targetColumn: currentHoveredColumn,\n });\n if (\n enableColumnOrdering &&\n currentHoveredColumn &&\n currentHoveredColumn?.id !== currentDraggingColumn?.id\n ) {\n setColumnOrder(reorderColumn(column, currentHoveredColumn, columnOrder));\n }\n setCurrentDraggingColumn(null);\n setCurrentHoveredColumn(null);\n };\n\n return (\n <MRT_GrabHandleButton\n iconButtonProps={iconButtonProps}\n onDragStart={handleDragStart}\n onDragEnd={handleDragEnd}\n table={table}\n />\n );\n};\n","import React, { FC } from 'react';\nimport { Divider, Theme } from '@mui/material';\nimport { MRT_Header, MRT_TableInstance } from '..';\n\ninterface Props {\n header: MRT_Header;\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableHeadCellResizeHandle: FC<Props> = ({ header, table }) => {\n const {\n getState,\n options: { columnResizeMode },\n } = table;\n const { density, showColumnFilters } = getState();\n const { column } = header;\n const { columnDef } = column;\n const { columnDefType } = columnDef;\n\n return (\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: showColumnFilters && columnDefType === 'data' ? '4rem' : '2rem',\n mr: density === 'compact' ? '-0.5rem' : '-1rem',\n opacity: 0.8,\n position: 'absolute',\n right: '1px',\n touchAction: 'none',\n transition: column.getIsResizing() ? undefined : 'all 0.2s ease-in-out',\n userSelect: 'none',\n zIndex: 4,\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(${\n (getState().columnSizingInfo.deltaOffset ?? 0) /\n (columnResizeMode === 'onChange' ? 16 : 1)\n }px)`\n : 'none',\n }}\n />\n );\n};\n","import React, { FC } from 'react';\nimport { TableSortLabel, Tooltip } from '@mui/material';\nimport { MRT_Header, MRT_TableInstance } from '..';\n\ninterface Props {\n header: MRT_Header;\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableHeadCellSortLabel: FC<Props> = ({ header, table }) => {\n const {\n options: { localization },\n } = table;\n const { column } = header;\n const { columnDef } = column;\n\n const sortTooltip = !!column.getIsSorted()\n ? column.getIsSorted() === 'desc'\n ? localization.sortedByColumnDesc.replace('{column}', columnDef.header)\n : localization.sortedByColumnAsc.replace('{column}', columnDef.header)\n : localization.unsorted;\n\n return (\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 sx={{\n width: '2ch',\n transform: 'translateX(-0.5ch)',\n }}\n />\n </Tooltip>\n );\n};\n","import React, { DragEvent, FC, ReactNode } from 'react';\nimport { Box, TableCell, Theme, alpha, lighten, useTheme } from '@mui/material';\nimport { MRT_TableHeadCellColumnActionsButton } from './MRT_TableHeadCellColumnActionsButton';\nimport { MRT_TableHeadCellFilterContainer } from './MRT_TableHeadCellFilterContainer';\nimport { MRT_TableHeadCellFilterLabel } from './MRT_TableHeadCellFilterLabel';\nimport { MRT_TableHeadCellGrabHandle } from './MRT_TableHeadCellGrabHandle';\nimport { MRT_TableHeadCellResizeHandle } from './MRT_TableHeadCellResizeHandle';\nimport { MRT_TableHeadCellSortLabel } from './MRT_TableHeadCellSortLabel';\nimport type { MRT_Header, MRT_TableInstance } from '..';\n\ninterface Props {\n header: MRT_Header;\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableHeadCell: FC<Props> = ({ header, table }) => {\n const theme = useTheme();\n const {\n getState,\n options: {\n enableColumnActions,\n enableColumnDragging,\n enableColumnOrdering,\n enableColumnResizing,\n enableGrouping,\n enableMultiSort,\n muiTableHeadCellProps,\n },\n setCurrentHoveredColumn,\n } = table;\n const { density, currentDraggingColumn, currentHoveredColumn } = getState();\n const { column } = header;\n const { columnDef } = column;\n const { columnDefType } = columnDef;\n\n const mTableHeadCellProps =\n muiTableHeadCellProps instanceof Function\n ? muiTableHeadCellProps({ column, table })\n : muiTableHeadCellProps;\n\n const mcTableHeadCellProps =\n columnDef.muiTableHeadCellProps instanceof Function\n ? columnDef.muiTableHeadCellProps({ column, table })\n : columnDef.muiTableHeadCellProps;\n\n const tableCellProps = {\n ...mTableHeadCellProps,\n ...mcTableHeadCellProps,\n };\n\n const getIsLastLeftPinnedColumn = () => {\n return (\n column.getIsPinned() === 'left' &&\n table.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 (table.getRightLeafHeaders().length - 1 - column.getPinnedIndex()) * 150\n );\n };\n\n const handleDragEnter = (_e: DragEvent) => {\n if (enableColumnOrdering && currentDraggingColumn) {\n setCurrentHoveredColumn(\n columnDef.enableColumnOrdering !== false ? column : null,\n );\n }\n };\n\n const draggingBorder =\n currentDraggingColumn?.id === column.id\n ? `1px dashed ${theme.palette.divider}`\n : currentHoveredColumn?.id === column.id\n ? `2px dashed ${theme.palette.primary.main}`\n : undefined;\n\n const draggingBorders = draggingBorder\n ? {\n borderLeft: draggingBorder,\n borderRight: draggingBorder,\n borderTop: draggingBorder,\n }\n : undefined;\n\n const headerElement = ((columnDef?.Header instanceof Function\n ? columnDef?.Header?.({\n header,\n table,\n })\n : columnDef?.Header) ?? columnDef.header) as ReactNode;\n\n const tableHeadCellRef = React.useRef<HTMLTableCellElement>(null);\n\n return (\n <TableCell\n align={columnDefType === 'group' ? 'center' : 'left'}\n colSpan={header.colSpan}\n onDragEnter={handleDragEnter}\n ref={tableHeadCellRef}\n {...tableCellProps}\n sx={(theme: Theme) => ({\n backgroundColor:\n column.getIsPinned() && 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 left:\n column.getIsPinned() === 'left'\n ? `${column.getStart('left')}px`\n : undefined,\n overflow: 'visible',\n opacity:\n currentDraggingColumn?.id === column.id ||\n currentHoveredColumn?.id === column.id\n ? 0.5\n : 1,\n p:\n density === 'compact'\n ? columnDefType === 'display'\n ? '0 0.5rem'\n : '0.5rem'\n : density === 'comfortable'\n ? columnDefType === 'display'\n ? '0.5rem 0.75rem'\n : '1rem'\n : columnDefType === 'display'\n ? '1rem 1.25rem'\n : '1.5rem',\n pb: columnDefType === 'display' ? 0 : undefined,\n position:\n column.getIsPinned() && columnDefType !== 'group'\n ? 'sticky'\n : undefined,\n pt:\n columnDefType === 'group'\n ? 0\n : density === 'compact'\n ? '0.25'\n : density === 'comfortable'\n ? '.75rem'\n : '1.25rem',\n right:\n column.getIsPinned() === 'right' ? `${getTotalRight()}px` : undefined,\n transition: `all ${enableColumnResizing ? 0 : '0.2s'} ease-in-out`,\n userSelect: enableMultiSort && column.getCanSort() ? 'none' : undefined,\n verticalAlign: 'top',\n zIndex:\n column.getIsResizing() || currentDraggingColumn?.id === column.id\n ? 3\n : column.getIsPinned() && columnDefType !== 'group'\n ? 2\n : 1,\n ...(tableCellProps?.sx instanceof Function\n ? tableCellProps.sx(theme)\n : (tableCellProps?.sx as any)),\n ...draggingBorders,\n maxWidth: `min(${column.getSize()}px, fit-content)`,\n minWidth: `max(${column.getSize()}px, ${columnDef.minSize ?? 30}px)`,\n width: header.getSize(),\n })}\n >\n {header.isPlaceholder ? null : (\n <Box\n sx={{\n alignItems: 'flex-start',\n display: 'flex',\n justifyContent:\n tableCellProps?.align === 'right'\n ? 'flex-end'\n : columnDefType === 'group' ||\n tableCellProps?.align === 'center'\n ? 'center'\n : 'space-between',\n position: 'relative',\n width: '100%',\n }}\n >\n <Box\n onClick={column.getToggleSortingHandler()}\n sx={{\n alignItems: 'center',\n cursor:\n column.getCanSort() && columnDefType !== 'group'\n ? 'pointer'\n : undefined,\n display: 'flex',\n flexWrap: 'nowrap',\n m: tableCellProps?.align === 'center' ? 'auto' : undefined,\n pl:\n tableCellProps?.align === 'center' && column.getCanSort()\n ? '1rem'\n : undefined,\n whiteSpace:\n (columnDef.header?.length ?? 0) < 24 ? 'nowrap' : 'normal',\n }}\n >\n {headerElement}\n {column.getCanSort() && (\n <MRT_TableHeadCellSortLabel header={header} table={table} />\n )}\n {column.getCanFilter() && (\n <MRT_TableHeadCellFilterLabel header={header} table={table} />\n )}\n </Box>\n {columnDefType !== 'group' && (\n <Box sx={{ whiteSpace: 'nowrap' }}>\n {((enableColumnDragging &&\n columnDef.enableColumnDragging !== false) ||\n (enableColumnOrdering &&\n columnDef.enableColumnOrdering !== false) ||\n (enableGrouping && columnDef.enableGrouping !== false)) && (\n <MRT_TableHeadCellGrabHandle\n column={column}\n table={table}\n tableHeadCellRef={tableHeadCellRef}\n />\n )}\n {(enableColumnActions || columnDef.enableColumnActions) &&\n columnDef.enableColumnActions !== false && (\n <MRT_TableHeadCellColumnActionsButton\n header={header}\n table={table}\n />\n )}\n </Box>\n )}\n {column.getCanResize() && (\n <MRT_TableHeadCellResizeHandle header={header} table={table} />\n )}\n </Box>\n )}\n {column.getCanFilter() && (\n <MRT_TableHeadCellFilterContainer header={header} table={table} />\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 table: MRT_TableInstance;\n}\n\nexport const MRT_TableHeadRow: FC<Props> = ({ headerGroup, table }) => {\n const {\n options: { muiTableHeadRowProps },\n } = table;\n\n const tableRowProps =\n muiTableHeadRowProps instanceof Function\n ? muiTableHeadRowProps({ headerGroup, table })\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 table={table}\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 table: MRT_TableInstance;\n}\n\nexport const MRT_TableHead: FC<Props> = ({ table }) => {\n const {\n getHeaderGroups,\n options: { muiTableHeadProps },\n } = table;\n\n const tableHeadProps =\n muiTableHeadProps instanceof Function\n ? muiTableHeadProps({ table })\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 table={table}\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 table: MRT_TableInstance;\n}\n\nexport const MRT_EditCellTextField: FC<Props> = ({ cell, table }) => {\n const {\n getState,\n options: {\n tableId,\n enableEditing,\n muiTableBodyCellEditTextFieldProps,\n onCellEditBlur,\n onCellEditChange,\n },\n setCurrentEditingCell,\n setCurrentEditingRow,\n } = table;\n const { column, row } = cell;\n const { columnDef } = column;\n\n const [value, setValue] = useState(cell.getValue<string>());\n\n const handleChange = (event: ChangeEvent<HTMLInputElement>) => {\n setValue(event.target.value);\n columnDef.onCellEditChange?.({ event, cell, table });\n onCellEditChange?.({ event, cell, table });\n };\n\n const handleBlur = (event: FocusEvent<HTMLInputElement>) => {\n if (getState().currentEditingRow) {\n if (!row._valuesCache) row._valuesCache = {};\n (row._valuesCache as Record<string, any>)[column.id] = value;\n setCurrentEditingRow({ ...getState().currentEditingRow } as MRT_Row);\n }\n setCurrentEditingCell(null);\n columnDef.onCellEditBlur?.({ event, cell, table });\n onCellEditBlur?.({ event, cell, table });\n };\n\n const mTableBodyCellEditTextFieldProps =\n muiTableBodyCellEditTextFieldProps instanceof Function\n ? muiTableBodyCellEditTextFieldProps({ cell, table })\n : muiTableBodyCellEditTextFieldProps;\n\n const mcTableBodyCellEditTextFieldProps =\n columnDef.muiTableBodyCellEditTextFieldProps instanceof Function\n ? columnDef.muiTableBodyCellEditTextFieldProps({\n cell,\n table,\n })\n : columnDef.muiTableBodyCellEditTextFieldProps;\n\n const textFieldProps = {\n ...mTableBodyCellEditTextFieldProps,\n ...mcTableBodyCellEditTextFieldProps,\n };\n\n if (enableEditing && columnDef.enableEditing !== false && columnDef.Edit) {\n return <>{columnDef.Edit?.({ cell, table })}</>;\n }\n\n return (\n <TextField\n id={`mrt-${tableId}-edit-cell-text-field-${cell.id}`}\n margin=\"dense\"\n onBlur={handleBlur}\n onChange={handleChange}\n onClick={(e: MouseEvent<HTMLInputElement>) => e.stopPropagation()}\n placeholder={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 table: MRT_TableInstance;\n}\n\nexport const MRT_CopyButton: FC<Props> = ({ cell, children, table }) => {\n const {\n options: { localization, muiTableBodyCellCopyButtonProps },\n } = table;\n const { column } = cell;\n const { columnDef } = column;\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, table })\n : muiTableBodyCellCopyButtonProps;\n\n const mcTableBodyCellCopyButtonProps =\n columnDef.muiTableBodyCellCopyButtonProps instanceof Function\n ? columnDef.muiTableBodyCellCopyButtonProps({\n cell,\n table,\n })\n : columnDef.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 onClick={() => handleCopy(cell.getValue())}\n size=\"small\"\n type=\"button\"\n variant=\"text\"\n {...buttonProps}\n sx={(theme) => ({\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 instanceof Function\n ? buttonProps.sx(theme)\n : (buttonProps?.sx as any)),\n })}\n >\n {children}\n </Button>\n </Tooltip>\n );\n};\n","import React, { DragEvent, FC, RefObject } from 'react';\nimport { MRT_Cell, MRT_TableInstance } from '..';\nimport { MRT_GrabHandleButton } from '../buttons/MRT_GrabHandleButton';\n\ninterface Props {\n cell: MRT_Cell;\n rowRef: RefObject<HTMLTableRowElement>;\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableBodyRowGrabHandle: FC<Props> = ({\n cell,\n rowRef,\n table,\n}) => {\n const {\n options: { muiTableBodyRowDragHandleProps, onRowDrop },\n } = table;\n\n const iconButtonProps =\n muiTableBodyRowDragHandleProps instanceof Function\n ? muiTableBodyRowDragHandleProps({ row: cell.row, table })\n : muiTableBodyRowDragHandleProps;\n\n const handleDragStart = (e: DragEvent<HTMLButtonElement>) => {\n e.dataTransfer.setDragImage(rowRef.current as HTMLElement, 0, 0);\n table.setCurrentDraggingRow(cell.row as any);\n };\n\n const handleDragEnd = (event: DragEvent<HTMLButtonElement>) => {\n onRowDrop?.({\n event,\n draggedRow: table.getState().currentDraggingRow as any,\n targetRow: table.getState().currentHoveredRow as any,\n });\n table.setCurrentDraggingRow(null);\n table.setCurrentHoveredRow(null);\n };\n\n return (\n <MRT_GrabHandleButton\n iconButtonProps={iconButtonProps}\n onDragStart={handleDragStart}\n onDragEnd={handleDragEnd}\n table={table}\n />\n );\n};\n","import React, { DragEvent, FC, MouseEvent, RefObject, useMemo } from 'react';\nimport {\n alpha,\n darken,\n lighten,\n Skeleton,\n TableCell,\n useTheme,\n} from '@mui/material';\nimport { MRT_EditCellTextField } from '../inputs/MRT_EditCellTextField';\nimport { MRT_CopyButton } from '../buttons/MRT_CopyButton';\nimport type { MRT_Cell, MRT_TableInstance } from '..';\nimport { MRT_TableBodyRowGrabHandle } from './MRT_TableBodyRowGrabHandle';\n\ninterface Props {\n cell: MRT_Cell;\n enableHover?: boolean;\n rowIndex: number;\n rowRef: RefObject<HTMLTableRowElement>;\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableBodyCell: FC<Props> = ({\n cell,\n enableHover,\n rowIndex,\n rowRef,\n table,\n}) => {\n const theme = useTheme();\n const {\n getState,\n options: {\n editingMode,\n enableClickToCopy,\n enableColumnOrdering,\n enableEditing,\n enableRowNumbers,\n muiTableBodyCellProps,\n muiTableBodyCellSkeletonProps,\n rowNumberMode,\n tableId,\n },\n setCurrentEditingCell,\n setCurrentHoveredColumn,\n } = table;\n const {\n currentDraggingColumn,\n currentEditingCell,\n currentEditingRow,\n currentHoveredColumn,\n density,\n isLoading,\n showSkeletons,\n } = getState();\n const { column, row } = cell;\n const { columnDef } = column;\n const { columnDefType } = columnDef;\n\n const mTableCellBodyProps =\n muiTableBodyCellProps instanceof Function\n ? muiTableBodyCellProps({ cell, table })\n : muiTableBodyCellProps;\n\n const mcTableCellBodyProps =\n columnDef.muiTableBodyCellProps instanceof Function\n ? columnDef.muiTableBodyCellProps({ cell, table })\n : columnDef.muiTableBodyCellProps;\n\n const tableCellProps = {\n ...mTableCellBodyProps,\n ...mcTableCellBodyProps,\n };\n\n const skeletonWidth = useMemo(\n () =>\n columnDefType === 'display'\n ? column.getSize() / 2\n : Math.random() * (column.getSize() - column.getSize() / 3) +\n column.getSize() / 3,\n [],\n );\n\n const isEditable =\n (enableEditing || columnDef.enableEditing) &&\n columnDef.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 || columnDef.enableEditing) &&\n columnDef.enableEditing !== false &&\n editingMode === 'cell'\n ) {\n setCurrentEditingCell(cell);\n setTimeout(() => {\n const textField = document.getElementById(\n `mrt-${tableId}-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 table.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 (table.getRightLeafHeaders().length - 1 - column.getPinnedIndex()) * 150\n );\n };\n\n const handleDragEnter = (_e: DragEvent) => {\n if (enableColumnOrdering && currentDraggingColumn) {\n setCurrentHoveredColumn(\n columnDef.enableColumnOrdering !== false ? column : null,\n );\n }\n };\n\n const draggingBorder =\n currentDraggingColumn?.id === column.id\n ? `1px dashed ${theme.palette.divider}`\n : currentHoveredColumn?.id === column.id\n ? `2px dashed ${theme.palette.primary.main}`\n : undefined;\n\n const draggingBorders = draggingBorder\n ? {\n borderLeft: draggingBorder,\n borderRight: draggingBorder,\n borderBottom:\n row.index === table.getRowModel().rows.length - 1\n ? draggingBorder\n : undefined,\n }\n : undefined;\n\n return (\n <TableCell\n onDoubleClick={handleDoubleClick}\n onDragEnter={handleDragEnter}\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 opacity:\n currentDraggingColumn?.id === column.id ||\n currentHoveredColumn?.id === column.id\n ? 0.5\n : 1,\n overflow: 'hidden',\n p:\n density === 'compact'\n ? columnDefType === 'display'\n ? '0 0.5rem'\n : '0.5rem'\n : density === 'comfortable'\n ? columnDefType === 'display'\n ? '0.5rem 0.75rem'\n : '1rem'\n : columnDefType === 'display'\n ? '1rem 1.25rem'\n : '1.5rem',\n pl:\n column.id === 'mrt-row-expand'\n ? `${\n row.depth +\n (density === 'compact'\n ? 0.5\n : density === 'comfortable'\n ? 0.75\n : 1.25)\n }rem`\n : undefined,\n position: column.getIsPinned() ? 'sticky' : 'relative',\n right:\n column.getIsPinned() === 'right' ? `${getTotalRight()}px` : undefined,\n textOverflow: columnDefType !== 'display' ? 'ellipsis' : undefined,\n transition: 'all 0.2s ease-in-out',\n whiteSpace: density === 'compact' ? 'nowrap' : 'normal',\n zIndex:\n currentDraggingColumn?.id === column.id\n ? 2\n : column.getIsPinned()\n ? 1\n : undefined,\n '&:hover': {\n backgroundColor:\n enableHover && enableEditing && editingMode !== 'row'\n ? theme.palette.mode === 'dark'\n ? `${lighten(\n theme.palette.background.default,\n 0.13,\n )} !important`\n : `${darken(theme.palette.background.default, 0.07)} !important`\n : undefined,\n },\n ...(tableCellProps?.sx instanceof Function\n ? tableCellProps.sx(theme)\n : (tableCellProps?.sx as any)),\n ...draggingBorders,\n maxWidth: `min(${column.getSize()}px, fit-content)`,\n minWidth: `max(${column.getSize()}px, ${columnDef.minSize ?? 30}px)`,\n width: column.getSize(),\n })}\n >\n <>\n {cell.getIsPlaceholder() ? null : isLoading || showSkeletons ? (\n <Skeleton\n animation=\"wave\"\n height={20}\n width={skeletonWidth}\n {...muiTableBodyCellSkeletonProps}\n />\n ) : enableRowNumbers &&\n rowNumberMode === 'static' &&\n column.id === 'mrt-row-numbers' ? (\n rowIndex + 1\n ) : column.id === 'mrt-row-drag' ? (\n <MRT_TableBodyRowGrabHandle\n cell={cell}\n rowRef={rowRef}\n table={table}\n />\n ) : columnDefType === 'display' ? (\n columnDef.Cell?.({ cell, table })\n ) : isEditing ? (\n <MRT_EditCellTextField cell={cell} table={table} />\n ) : (enableClickToCopy || columnDef.enableClickToCopy) &&\n columnDef.enableClickToCopy !== false ? (\n <>\n <MRT_CopyButton cell={cell} table={table}>\n <>{columnDef?.Cell?.({ cell, table }) ?? cell.renderValue()}</>\n </MRT_CopyButton>\n {cell.getIsGrouped() && <> ({row.subRows?.length})</>}\n </>\n ) : (\n <>\n {columnDef?.Cell?.({ cell, table }) ?? cell.renderValue()}\n {cell.getIsGrouped() && <> ({row.subRows?.length ?? ''})</>}\n </>\n )}\n </>\n </TableCell>\n );\n};\n","import React, { FC } from 'react';\nimport { Collapse, TableCell, TableRow } from '@mui/material';\nimport type { MRT_Row, MRT_TableInstance } from '..';\n\ninterface Props {\n row: MRT_Row;\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableDetailPanel: FC<Props> = ({ row, table }) => {\n const {\n getVisibleLeafColumns,\n options: {\n muiTableBodyRowProps,\n muiTableDetailPanelProps,\n renderDetailPanel,\n },\n } = table;\n\n const tableRowProps =\n muiTableBodyRowProps instanceof Function\n ? muiTableBodyRowProps({ row, table })\n : muiTableBodyRowProps;\n\n const tableCellProps =\n muiTableDetailPanelProps instanceof Function\n ? muiTableDetailPanelProps({ row, table })\n : muiTableDetailPanelProps;\n\n return (\n <TableRow {...tableRowProps}>\n <TableCell\n colSpan={getVisibleLeafColumns().length}\n {...tableCellProps}\n sx={(theme) => ({\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 width: `${table.getTotalSize()}px`,\n ...(tableCellProps?.sx instanceof Function\n ? tableCellProps.sx(theme)\n : (tableCellProps?.sx as any)),\n })}\n >\n {renderDetailPanel && (\n <Collapse in={row.getIsExpanded()}>\n {renderDetailPanel({ row, table })}\n </Collapse>\n )}\n </TableCell>\n </TableRow>\n );\n};\n","import React, { DragEvent, FC, useRef } from 'react';\nimport { darken, lighten, TableRow, useTheme } 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 rowIndex: number;\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableBodyRow: FC<Props> = ({ row, rowIndex, table }) => {\n const theme = useTheme();\n const {\n getIsSomeColumnsPinned,\n getState,\n options: { enableRowOrdering, muiTableBodyRowProps, renderDetailPanel },\n setCurrentHoveredRow,\n } = table;\n const { currentDraggingRow, currentHoveredRow } = getState();\n\n const tableRowProps =\n muiTableBodyRowProps instanceof Function\n ? muiTableBodyRowProps({ row, table })\n : muiTableBodyRowProps;\n\n const handleDragEnter = (_e: DragEvent) => {\n if (enableRowOrdering && currentDraggingRow) {\n setCurrentHoveredRow(row);\n }\n };\n\n const rowRef = useRef<HTMLTableRowElement>(null);\n\n const draggingBorder =\n currentDraggingRow?.id === row.id\n ? `1px dashed ${theme.palette.divider}`\n : currentHoveredRow?.id === row.id\n ? `2px dashed ${theme.palette.primary.main}`\n : undefined;\n\n const draggingBorders = draggingBorder\n ? {\n border: draggingBorder,\n }\n : undefined;\n\n return (\n <>\n <TableRow\n onDragEnter={handleDragEnter}\n hover\n selected={row.getIsSelected()}\n ref={rowRef}\n {...tableRowProps}\n sx={(theme) => ({\n backgroundColor: lighten(theme.palette.background.default, 0.06),\n opacity:\n currentDraggingRow?.id === row.id ||\n currentHoveredRow?.id === row.id\n ? 0.5\n : 1,\n transition: 'all 0.2s ease-in-out',\n '&:hover td': {\n backgroundColor:\n tableRowProps?.hover !== false && getIsSomeColumnsPinned()\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 instanceof Function\n ? tableRowProps.sx(theme)\n : (tableRowProps?.sx as any)),\n ...draggingBorders,\n })}\n >\n {row?.getVisibleCells()?.map?.((cell) => (\n <MRT_TableBodyCell\n cell={cell}\n key={cell.id}\n enableHover={tableRowProps?.hover !== false}\n rowIndex={rowIndex}\n rowRef={rowRef}\n table={table}\n />\n ))}\n </TableRow>\n {renderDetailPanel && !row.getIsGrouped() && (\n <MRT_TableDetailPanel row={row} table={table} />\n )}\n </>\n );\n};\n","import React, { FC, RefObject, useMemo } from 'react';\nimport { useVirtual } from 'react-virtual';\nimport { TableBody } from '@mui/material';\nimport { MRT_TableBodyRow } from './MRT_TableBodyRow';\nimport { rankGlobalFuzzy } from '../sortingFns';\nimport type { MRT_Row, MRT_TableInstance } from '..';\n\ninterface Props {\n table: MRT_TableInstance;\n tableContainerRef: RefObject<HTMLDivElement>;\n}\n\nexport const MRT_TableBody: FC<Props> = ({ table, tableContainerRef }) => {\n const {\n getRowModel,\n getPrePaginationRowModel,\n getState,\n options: {\n enableGlobalFilterRankedResults,\n enablePagination,\n enableRowVirtualization,\n muiTableBodyProps,\n virtualizerProps,\n },\n } = table;\n const { density, globalFilter, pagination, sorting } = getState();\n\n const tableBodyProps =\n muiTableBodyProps instanceof Function\n ? muiTableBodyProps({ table })\n : muiTableBodyProps;\n\n const getIsSomeColumnsSorted = () => {\n return Object.values(sorting).some(Boolean);\n };\n\n const rows = useMemo(() => {\n if (\n enableGlobalFilterRankedResults &&\n globalFilter &&\n !getIsSomeColumnsSorted()\n ) {\n const rankedRows = getPrePaginationRowModel().rows.sort((a, b) =>\n rankGlobalFuzzy(a, b),\n );\n if (enablePagination) {\n return rankedRows.slice(0, pagination.pageSize);\n }\n return rankedRows;\n }\n\n return enablePagination\n ? getRowModel().rows\n : getPrePaginationRowModel().rows;\n }, [\n enableGlobalFilterRankedResults,\n (enableGlobalFilterRankedResults && globalFilter) || !enablePagination\n ? getPrePaginationRowModel().rows\n : getRowModel().rows,\n globalFilter,\n ]);\n\n const rowVirtualizer = enableRowVirtualization\n ? useVirtual({\n // estimateSize: () => (density === 'compact' ? 25 : 50),\n overscan: density === 'compact' ? 30 : 10,\n parentRef: tableContainerRef,\n size: rows.length,\n ...virtualizerProps,\n })\n : ({} as any);\n\n const virtualRows = enableRowVirtualization\n ? rowVirtualizer.virtualItems\n : [];\n\n let paddingTop = 0;\n let paddingBottom = 0;\n if (enableRowVirtualization) {\n paddingTop = virtualRows.length > 0 ? virtualRows[0].start : 0;\n paddingBottom =\n virtualRows.length > 0\n ? rowVirtualizer.totalSize - virtualRows[virtualRows.length - 1].end\n : 0;\n }\n\n return (\n <TableBody {...tableBodyProps}>\n {enableRowVirtualization && paddingTop > 0 && (\n <tr>\n <td style={{ height: `${paddingTop}px` }} />\n </tr>\n )}\n {(enableRowVirtualization ? virtualRows : rows).map(\n (rowOrVirtualRow: any, rowIndex: number) => {\n const row = enableRowVirtualization\n ? (rows[rowOrVirtualRow.index] as MRT_Row)\n : (rowOrVirtualRow as MRT_Row);\n return (\n <MRT_TableBodyRow\n key={row.id}\n row={row}\n rowIndex={\n enableRowVirtualization ? rowOrVirtualRow.index : rowIndex\n }\n table={table}\n />\n );\n },\n )}\n {enableRowVirtualization && paddingBottom > 0 && (\n <tr>\n <td style={{ height: `${paddingBottom}px` }} />\n </tr>\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 table: MRT_TableInstance;\n}\n\nexport const MRT_TableFooterCell: FC<Props> = ({ footer, table }) => {\n const {\n getState,\n options: { muiTableFooterCellProps, enableColumnResizing },\n } = table;\n const { density } = getState();\n const { column } = footer;\n const { columnDef } = column;\n const { columnDefType } = columnDef;\n\n const mTableFooterCellProps =\n muiTableFooterCellProps instanceof Function\n ? muiTableFooterCellProps({ column, table })\n : muiTableFooterCellProps;\n\n const mcTableFooterCellProps =\n columnDef.muiTableFooterCellProps instanceof Function\n ? columnDef.muiTableFooterCellProps({ column, table })\n : columnDef.muiTableFooterCellProps;\n\n const tableCellProps = {\n ...mTableFooterCellProps,\n ...mcTableFooterCellProps,\n };\n\n return (\n <TableCell\n align={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:\n density === 'compact'\n ? '0.5rem'\n : density === 'comfortable'\n ? '1rem'\n : '1.5rem',\n transition: `all ${enableColumnResizing ? '10ms' : '0.2s'} ease-in-out`,\n width: column.getSize(),\n verticalAlign: 'text-top',\n ...(tableCellProps?.sx instanceof Function\n ? tableCellProps.sx(theme)\n : (tableCellProps?.sx as any)),\n })}\n >\n <>\n {footer.isPlaceholder\n ? null\n : (columnDef.Footer instanceof Function\n ? columnDef.Footer?.({\n footer,\n table,\n })\n : columnDef.Footer) ??\n columnDef.footer ??\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 table: MRT_TableInstance;\n}\n\nexport const MRT_TableFooterRow: FC<Props> = ({ footerGroup, table }) => {\n const {\n options: { muiTableFooterRowProps },\n } = table;\n\n // if no content in row, skip row\n if (\n !footerGroup.headers?.some(\n (header) =>\n (typeof header.column.columnDef.footer === 'string' &&\n !!header.column.columnDef.footer) ||\n header.column.columnDef.Footer,\n )\n )\n return null;\n\n const tableRowProps =\n muiTableFooterRowProps instanceof Function\n ? muiTableFooterRowProps({ footerGroup, table })\n : muiTableFooterRowProps;\n\n return (\n <TableRow {...tableRowProps}>\n {footerGroup.headers.map((footer: MRT_Header) => (\n <MRT_TableFooterCell footer={footer} key={footer.id} table={table} />\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 table: MRT_TableInstance;\n}\n\nexport const MRT_TableFooter: FC<Props> = ({ table }) => {\n const {\n getFooterGroups,\n options: { muiTableFooterProps },\n } = table;\n\n const tableFooterProps =\n muiTableFooterProps instanceof Function\n ? muiTableFooterProps({ table })\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 table={table}\n />\n ))}\n </TableFooter>\n );\n};\n","import React, { FC, RefObject } 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 tableContainerRef: RefObject<HTMLDivElement>;\n table: MRT_TableInstance;\n}\n\nexport const MRT_Table: FC<Props> = ({ tableContainerRef, table }) => {\n const {\n getState,\n options: {\n enableColumnResizing,\n enableRowVirtualization,\n enableStickyHeader,\n enableTableFooter,\n enableTableHead,\n muiTableProps,\n },\n } = table;\n const { isFullScreen } = getState();\n\n const tableProps =\n muiTableProps instanceof Function\n ? muiTableProps({ table })\n : muiTableProps;\n\n return (\n <Table\n stickyHeader={\n enableStickyHeader || enableRowVirtualization || isFullScreen\n }\n {...tableProps}\n sx={(theme) => ({\n tableLayout:\n enableColumnResizing || enableRowVirtualization ? 'fixed' : 'auto',\n ...(tableProps?.sx instanceof Function\n ? tableProps.sx(theme)\n : (tableProps?.sx as any)),\n })}\n >\n {enableTableHead && <MRT_TableHead table={table} />}\n <MRT_TableBody tableContainerRef={tableContainerRef} table={table} />\n {enableTableFooter && <MRT_TableFooter table={table} />}\n </Table>\n );\n};\n","import React, { FC, useEffect, useLayoutEffect, useState } from 'react';\nimport { TableContainer } from '@mui/material';\nimport { MRT_Table } from './MRT_Table';\nimport type { MRT_TableInstance } from '..';\n\nconst useIsomorphicLayoutEffect =\n typeof window !== 'undefined' ? useLayoutEffect : useEffect;\n\ninterface Props {\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableContainer: FC<Props> = ({ table }) => {\n const {\n getState,\n options: {\n enableStickyHeader,\n enableRowVirtualization,\n muiTableContainerProps,\n tableId,\n },\n } = table;\n const { isFullScreen } = getState();\n\n const [totalToolbarHeight, setTotalToolbarHeight] = useState(0);\n\n const tableContainerProps =\n muiTableContainerProps instanceof Function\n ? muiTableContainerProps({ table })\n : muiTableContainerProps;\n\n useIsomorphicLayoutEffect(() => {\n const topToolbarHeight =\n typeof document !== 'undefined'\n ? document?.getElementById(`mrt-${tableId}-toolbar-top`)\n ?.offsetHeight ?? 0\n : 0;\n\n const bottomToolbarHeight =\n typeof document !== 'undefined'\n ? document?.getElementById(`mrt-${tableId}-toolbar-bottom`)\n ?.offsetHeight ?? 0\n : 0;\n\n setTotalToolbarHeight(topToolbarHeight + bottomToolbarHeight);\n });\n\n const tableContainerRef = React.useRef<HTMLDivElement>(null);\n\n return (\n <TableContainer\n ref={tableContainerRef}\n {...tableContainerProps}\n sx={(theme) => ({\n maxWidth: '100%',\n maxHeight:\n enableStickyHeader || enableRowVirtualization\n ? `clamp(350px, calc(100vh - ${totalToolbarHeight}px), 9999px)`\n : undefined,\n overflow: 'auto',\n ...(tableContainerProps?.sx instanceof Function\n ? tableContainerProps.sx(theme)\n : (tableContainerProps?.sx as any)),\n })}\n style={{\n maxHeight: isFullScreen\n ? `calc(100vh - ${totalToolbarHeight}px)`\n : undefined,\n ...tableContainerProps?.style,\n }}\n >\n <MRT_Table tableContainerRef={tableContainerRef} table={table} />\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 type { MRT_TableInstance } from '..';\n\ninterface Props {\n table: MRT_TableInstance;\n}\n\nexport const MRT_TablePaper: FC<Props> = ({ table }) => {\n const {\n getState,\n options: { enableToolbarBottom, enableToolbarTop, muiTablePaperProps },\n } = table;\n const { isFullScreen } = getState();\n\n useEffect(() => {\n if (typeof window !== 'undefined') {\n if (isFullScreen) {\n document.body.style.height = '100vh';\n } else {\n document.body.style.height = 'auto';\n }\n }\n }, [isFullScreen]);\n\n const tablePaperProps =\n muiTablePaperProps instanceof Function\n ? muiTablePaperProps({ table })\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 ...tablePaperProps?.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 table={table} />}\n <MRT_TableContainer table={table} />\n {enableToolbarBottom && <MRT_ToolbarBottom table={table} />}\n </Paper>\n );\n};\n","import React, { useEffect, useMemo, useState } from 'react';\nimport {\n TableState,\n getCoreRowModel,\n getExpandedRowModel,\n getFacetedRowModel,\n getFilteredRowModel,\n getGroupedRowModel,\n getPaginationRowModel,\n getSortedRowModel,\n useReactTable,\n} from '@tanstack/react-table';\nimport { Box, Dialog, Grow } from '@mui/material';\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 { MRT_TablePaper } from './MRT_TablePaper';\nimport {\n prepareColumns,\n getAllLeafColumnDefs,\n getDefaultColumnOrderIds,\n} from '../column.utils';\nimport { MRT_FilterFns } from '../filtersFns';\nimport type {\n MRT_Cell,\n MRT_Column,\n MRT_ColumnDef,\n MRT_FilterOption,\n MRT_Row,\n MRT_TableInstance,\n MRT_TableState,\n MaterialReactTableProps,\n} from '..';\n\nconst defaultDisplayColumnDefOptions = {\n columnDefType: 'display',\n enableClickToCopy: false,\n enableColumnActions: false,\n enableColumnDragging: false,\n enableColumnFilter: false,\n enableColumnOrdering: false,\n enableEditing: false,\n enableGlobalFilter: false,\n enableGrouping: false,\n enableHiding: false,\n enablePinning: false,\n enableResizing: false,\n enableSorting: false,\n} as Partial<MRT_ColumnDef>;\n\nexport const MRT_TableRoot = <TData extends Record<string, any> = {}>(\n props: MaterialReactTableProps<TData>,\n) => {\n const [tableId, setIdPrefix] = useState(props.tableId);\n useEffect(\n () =>\n setIdPrefix(props.tableId ?? Math.random().toString(36).substring(2, 9)),\n [props.tableId],\n );\n\n const initialState: Partial<MRT_TableState<TData>> = useMemo(() => {\n const initState = props.initialState ?? {};\n initState.columnOrder =\n initState.columnOrder ?? getDefaultColumnOrderIds(props);\n return initState;\n }, []);\n\n const [columnOrder, setColumnOrder] = useState(\n initialState.columnOrder ?? [],\n );\n const [currentDraggingColumn, setCurrentDraggingColumn] =\n useState<MRT_Column<TData> | null>(\n initialState.currentDraggingColumn ?? null,\n );\n const [currentDraggingRow, setCurrentDraggingRow] =\n useState<MRT_Row<TData> | null>(initialState.currentDraggingRow ?? null);\n const [currentEditingCell, setCurrentEditingCell] =\n useState<MRT_Cell<TData> | null>(initialState.currentEditingCell ?? null);\n const [currentEditingRow, setCurrentEditingRow] =\n useState<MRT_Row<TData> | null>(initialState.currentEditingRow ?? null);\n const [currentHoveredColumn, setCurrentHoveredColumn] =\n useState<MRT_Column<TData> | null>(\n initialState.currentHoveredColumn ?? null,\n );\n const [currentHoveredRow, setCurrentHoveredRow] =\n useState<MRT_Row<TData> | null>(initialState.currentHoveredRow ?? null);\n const [density, setDensity] = useState(\n initialState?.density ?? 'comfortable',\n );\n const [isFullScreen, setIsFullScreen] = useState(\n initialState?.isFullScreen ?? false,\n );\n const [showAlertBanner, setShowAlertBanner] = useState(\n props.initialState?.showAlertBanner ?? false,\n );\n const [showColumnFilters, setShowFilters] = useState(\n initialState?.showColumnFilters ?? false,\n );\n const [showGlobalFilter, setShowGlobalFilter] = useState(\n initialState?.showGlobalFilter ?? false,\n );\n const [currentFilterFns, setCurrentFilterFns] = useState<{\n [key: string]: MRT_FilterOption;\n }>(() =>\n Object.assign(\n {},\n ...getAllLeafColumnDefs(props.columns as MRT_ColumnDef<TData>[]).map(\n (col) => ({\n [col.id?.toString() ?? col.accessorKey?.toString() ?? '']:\n col.filterFn instanceof Function\n ? col.filterFn.name ?? 'custom'\n : col.filterFn ??\n initialState?.currentFilterFns?.[\n col.id?.toString() ?? col.accessorKey?.toString() ?? ''\n ] ??\n (!!col.filterSelectOptions?.length ? 'equals' : 'fuzzy'),\n }),\n ),\n ),\n );\n const [currentGlobalFilterFn, setCurrentGlobalFilterFn] =\n useState<MRT_FilterOption>(\n props.globalFilterFn instanceof String\n ? (props.globalFilterFn as MRT_FilterOption)\n : 'fuzzy',\n );\n\n const displayColumns = useMemo(\n () =>\n (\n [\n columnOrder.includes('mrt-row-drag') && {\n header: props.localization?.move,\n size: 60,\n ...defaultDisplayColumnDefOptions,\n ...props.displayColumnDefOptions?.['mrt-row-drag'],\n id: 'mrt-row-drag',\n },\n columnOrder.includes('mrt-row-actions') && {\n Cell: ({ cell }) => (\n <MRT_ToggleRowActionMenuButton\n row={cell.row as any}\n table={table}\n />\n ),\n header: props.localization?.actions,\n size: 70,\n ...defaultDisplayColumnDefOptions,\n ...props.displayColumnDefOptions?.['mrt-row-actions'],\n id: 'mrt-row-actions',\n },\n columnOrder.includes('mrt-row-expand') && {\n Cell: ({ cell }) => (\n <MRT_ExpandButton row={cell.row as any} table={table} />\n ),\n Header: () =>\n props.enableExpandAll ? (\n <MRT_ExpandAllButton table={table} />\n ) : null,\n header: props.localization?.expand,\n size: 60,\n ...defaultDisplayColumnDefOptions,\n ...props.displayColumnDefOptions?.['mrt-row-expand'],\n id: 'mrt-row-expand',\n },\n columnOrder.includes('mrt-row-select') && {\n Cell: ({ cell }) => (\n <MRT_SelectCheckbox row={cell.row as any} table={table} />\n ),\n Header: () =>\n props.enableSelectAll ? (\n <MRT_SelectCheckbox selectAll table={table} />\n ) : null,\n header: props.localization?.select,\n size: 60,\n ...defaultDisplayColumnDefOptions,\n ...props.displayColumnDefOptions?.['mrt-row-select'],\n id: 'mrt-row-select',\n },\n columnOrder.includes('mrt-row-numbers') && {\n Cell: ({ cell }) => cell.row.index + 1,\n Header: () => props.localization?.rowNumber,\n header: props.localization?.rowNumbers,\n size: 60,\n ...defaultDisplayColumnDefOptions,\n ...props.displayColumnDefOptions?.['mrt-row-numbers'],\n id: 'mrt-row-numbers',\n },\n ] as MRT_ColumnDef<TData>[]\n ).filter(Boolean),\n [\n columnOrder,\n props.displayColumnDefOptions,\n props.editingMode,\n props.enableColumnDragging,\n props.enableColumnOrdering,\n props.enableEditing,\n props.enableExpandAll,\n props.enableExpanding,\n props.enableGrouping,\n props.enableRowActions,\n props.enableRowDragging,\n props.enableRowNumbers,\n props.enableRowOrdering,\n props.enableRowSelection,\n props.enableSelectAll,\n props.localization,\n props.muiTableBodyCellProps,\n props.muiTableHeadCellProps,\n props.positionActionsColumn,\n ],\n );\n\n const columnDefs = useMemo(\n () =>\n prepareColumns([...displayColumns, ...props.columns], currentFilterFns),\n [currentFilterFns, displayColumns, props.columns],\n );\n\n const data: TData[] = 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 (col) => ({\n [col.id ?? col.accessorKey ?? '']: null,\n }),\n ),\n ),\n )\n : props.data,\n [props.data, props.state?.isLoading, props.state?.showSkeletons],\n );\n\n //@ts-ignore\n const table = {\n ...useReactTable({\n getCoreRowModel: getCoreRowModel(),\n getExpandedRowModel: getExpandedRowModel(),\n getFacetedRowModel: getFacetedRowModel(),\n getFilteredRowModel: getFilteredRowModel(),\n getGroupedRowModel: getGroupedRowModel(),\n getPaginationRowModel: getPaginationRowModel(),\n getSortedRowModel: getSortedRowModel(),\n onColumnOrderChange: setColumnOrder,\n ...props,\n //@ts-ignore\n columns: columnDefs,\n data,\n getSubRows: (row) => row?.subRows,\n globalFilterFn:\n MRT_FilterFns[currentGlobalFilterFn] ?? MRT_FilterFns.fuzzy,\n initialState,\n state: {\n columnOrder,\n currentDraggingColumn,\n currentDraggingRow,\n currentEditingCell,\n currentEditingRow,\n currentFilterFns,\n currentGlobalFilterFn,\n currentHoveredColumn,\n currentHoveredRow,\n density,\n isFullScreen,\n showAlertBanner,\n showColumnFilters,\n showGlobalFilter,\n ...props.state,\n } as TableState,\n tableId,\n }),\n setCurrentDraggingColumn:\n props.onCurrentDraggingColumnChange ?? setCurrentDraggingColumn,\n setCurrentDraggingRow:\n props.onCurrentDraggingRowChange ?? setCurrentDraggingRow,\n setCurrentEditingCell:\n props.onCurrentEditingCellChange ?? setCurrentEditingCell,\n setCurrentEditingRow:\n props.onCurrentEditingRowChange ?? setCurrentEditingRow,\n setCurrentFilterFns: props.onCurrentFilterFnsChange ?? setCurrentFilterFns,\n setCurrentGlobalFilterFn:\n props.onCurrentGlobalFilterFnChange ?? setCurrentGlobalFilterFn,\n setCurrentHoveredColumn:\n props.onCurrentHoveredColumnChange ?? setCurrentHoveredColumn,\n setCurrentHoveredRow:\n props.onCurrentHoveredRowChange ?? setCurrentHoveredRow,\n setDensity: props.onDensityChange ?? setDensity,\n setIsFullScreen: props.onIsFullScreenChange ?? setIsFullScreen,\n setShowAlertBanner: props.onShowAlertBannerChange ?? setShowAlertBanner,\n setShowFilters: props.onShowFiltersChange ?? setShowFilters,\n setShowGlobalFilter: props.onShowGlobalFilterChange ?? setShowGlobalFilter,\n } as MRT_TableInstance;\n\n useEffect(() => props?.onTableInstanceChange?.(table as any), [table]);\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 table={table} />\n </Dialog>\n {!isFullScreen && <MRT_TablePaper table={table} />}\n </>\n );\n};\n","import React, {\n ChangeEvent,\n Dispatch,\n DragEvent,\n FC,\n FocusEvent,\n ReactNode,\n SetStateAction,\n} from 'react';\nimport type {\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 type {\n Cell,\n Column,\n ColumnDef,\n FilterFn,\n Header,\n HeaderGroup,\n OnChangeFn,\n Row,\n SortingFn,\n Table,\n TableOptions,\n TableState,\n} from '@tanstack/react-table';\nimport type { Options as VirtualizerOptions } from 'react-virtual';\nimport { MRT_Localization, MRT_DefaultLocalization_EN } from './localization';\nimport { MRT_Default_Icons, MRT_Icons } from './icons';\nimport { MRT_TableRoot } from './table/MRT_TableRoot';\nimport { MRT_FilterFns } from './filtersFns';\nimport { MRT_SortingFns } from './sortingFns';\n\ntype LiteralUnion<T extends U, U = string> = T | (U & Record<never, never>);\n\nexport interface MRT_RowModel<TData extends Record<string, any> = {}> {\n flatRows: MRT_Row<TData>[];\n rows: MRT_Row<TData>[];\n rowsById: { [key: string]: MRT_Row<TData> };\n}\n\nexport type MRT_TableInstance<TData extends Record<string, any> = {}> = Omit<\n Table<TData>,\n | 'getAllColumns'\n | 'getAllFlatColumns'\n | 'getAllLeafColumns'\n | 'getCenterLeafColumns'\n | 'getColumn'\n | 'getExpandedRowModel'\n | 'getFlatHeaders'\n | 'getLeftLeafColumns'\n | 'getPaginationRowModel'\n | 'getPreFilteredRowModel'\n | 'getPrePaginationRowModel'\n | 'getRightLeafColumns'\n | 'getRowModel'\n | 'getSelectedRowModel'\n | 'getState'\n | 'options'\n> & {\n getAllColumns: () => MRT_Column<TData>[];\n getAllFlatColumns: () => MRT_Column<TData>[];\n getAllLeafColumns: () => MRT_Column<TData>[];\n getCenterLeafColumns: () => MRT_Column<TData>[];\n getColumn: (columnId: string) => MRT_Column<TData>;\n getExpandedRowModel: () => MRT_RowModel<TData>;\n getFlatHeaders: () => MRT_Header<TData>[];\n getLeftLeafColumns: () => MRT_Column<TData>[];\n getPaginationRowModel: () => MRT_RowModel<TData>;\n getPreFilteredRowModel: () => MRT_RowModel<TData>;\n getPrePaginationRowModel: () => MRT_RowModel<TData>;\n getRightLeafColumns: () => MRT_Column<TData>[];\n getRowModel: () => MRT_RowModel<TData>;\n getSelectedRowModel: () => MRT_RowModel<TData>;\n getState: () => MRT_TableState<TData>;\n options: MaterialReactTableProps<TData> & {\n icons: MRT_Icons;\n tableId: string;\n localization: MRT_Localization;\n };\n setCurrentDraggingColumn: Dispatch<SetStateAction<MRT_Column<TData> | null>>;\n setCurrentDraggingRow: Dispatch<SetStateAction<MRT_Row<TData> | null>>;\n setCurrentEditingCell: Dispatch<SetStateAction<MRT_Cell | null>>;\n setCurrentEditingRow: Dispatch<SetStateAction<MRT_Row | null>>;\n setCurrentFilterFns: Dispatch<\n SetStateAction<{\n [key: string]: MRT_FilterOption;\n }>\n >;\n setCurrentGlobalFilterFn: Dispatch<SetStateAction<MRT_FilterOption>>;\n setCurrentHoveredColumn: Dispatch<SetStateAction<MRT_Column<TData> | null>>;\n setCurrentHoveredRow: Dispatch<SetStateAction<MRT_Row | null>>;\n setDensity: Dispatch<SetStateAction<'comfortable' | 'compact' | 'spacious'>>;\n setIsFullScreen: Dispatch<SetStateAction<boolean>>;\n setShowAlertBanner: Dispatch<SetStateAction<boolean>>;\n setShowFilters: Dispatch<SetStateAction<boolean>>;\n setShowGlobalFilter: Dispatch<SetStateAction<boolean>>;\n};\n\nexport type MRT_TableState<TData extends Record<string, any> = {}> =\n TableState & {\n currentDraggingColumn: MRT_Column<TData> | null;\n currentDraggingRow: MRT_Row<TData> | null;\n currentEditingCell: MRT_Cell<TData> | null;\n currentEditingRow: MRT_Row<TData> | null;\n currentFilterFns: Record<string, MRT_FilterOption>;\n currentGlobalFilterFn: Record<string, MRT_FilterOption>;\n currentHoveredColumn: MRT_Column<TData> | null;\n currentHoveredRow: MRT_Row<TData> | null;\n density: 'comfortable' | 'compact' | 'spacious';\n isFullScreen: boolean;\n isLoading: boolean;\n showAlertBanner: boolean;\n showColumnFilters: boolean;\n showGlobalFilter: boolean;\n showProgressBars: boolean;\n showSkeletons: boolean;\n };\n\nexport type MRT_ColumnDef<TData extends Record<string, any> = {}> = Omit<\n ColumnDef<TData>,\n | 'accessorFn'\n | 'accessorKey'\n | 'aggregatedCell'\n | 'cell'\n | 'columns'\n | 'filterFn'\n | 'footer'\n | 'header'\n | 'id'\n | 'sortingFn'\n> & {\n AggregatedCell?: ({\n cell,\n table,\n }: {\n cell: MRT_Cell<TData>;\n table: MRT_TableInstance<TData>;\n }) => ReactNode;\n Cell?: ({\n cell,\n table,\n }: {\n cell: MRT_Cell<TData>;\n table: MRT_TableInstance<TData>;\n }) => ReactNode;\n Edit?: ({\n cell,\n table,\n }: {\n cell: MRT_Cell<TData>;\n table: MRT_TableInstance<TData>;\n }) => ReactNode;\n Filter?: ({\n header,\n table,\n }: {\n header: MRT_Header<TData>;\n table: MRT_TableInstance<TData>;\n }) => ReactNode;\n Footer?:\n | ReactNode\n | (({\n footer,\n table,\n }: {\n footer: MRT_Header<TData>;\n table: MRT_TableInstance<TData>;\n }) => ReactNode);\n Header?:\n | ReactNode\n | (({\n header,\n table,\n }: {\n header: MRT_Header<TData>;\n table: MRT_TableInstance<TData>;\n }) => ReactNode);\n /**\n * Either an `accessorKey` or a combination of an `accessorFn` and `id` are required for a data column definition.\n * Specify a function here to point to the correct property in the data object.\n *\n * @example accessorFn: (row) => row.username\n */\n accessorFn?: (row: TData) => any;\n /**\n * Either an `accessorKey` or a combination of an `accessorFn` and `id` are required for a data column definition.\n * Specify which key in the row this column should use to access the correct data.\n *\n * @example accessorKey: 'username'\n */\n accessorKey?: string & keyof TData;\n /**\n * Specify what type of column this is. Either `data`, `display`, or `group`. Defaults to `data`.\n * Leave this blank if you are just creating a normal data column.\n *\n * @default 'data'\n *\n * @example columnDefType: 'display'\n */\n columnDefType?: 'data' | 'display' | 'group';\n columns?: MRT_ColumnDef<TData>[];\n enableClickToCopy?: boolean;\n enableColumnActions?: boolean;\n enableColumnDragging?: boolean;\n enableColumnFilterChangeMode?: boolean;\n enableColumnOrdering?: boolean;\n enableEditing?: boolean;\n enabledColumnFilterOptions?: MRT_FilterOption[] | null;\n filterFn?: MRT_FilterFn<TData>;\n filterSelectOptions?: (string | { text: string; value: string })[];\n /**\n * footer must be a string. If you want custom JSX to render the footer, you can also specify a `Footer` option. (Capital F)\n */\n footer?: string;\n /**\n * header must be a string. If you want custom JSX to render the header, you can also specify a `Header` option. (Capital H)\n */\n header: string;\n /**\n * Either an `accessorKey` or a combination of an `accessorFn` and `id` are required for a data column definition.\n *\n * If you have also specified an `accessorFn`, MRT still needs to have a valid `id` to be able to identify the column uniquely.\n *\n * `id` defaults to the `accessorKey` or `header` if not specified.\n *\n * @default gets set to the same value as `accessorKey` by default\n */\n id?: LiteralUnion<string & keyof TData>;\n muiTableBodyCellCopyButtonProps?:\n | ButtonProps\n | (({\n table,\n cell,\n }: {\n table: MRT_TableInstance<TData>;\n cell: MRT_Cell<TData>;\n }) => ButtonProps);\n muiTableBodyCellEditTextFieldProps?:\n | TextFieldProps\n | (({\n table,\n cell,\n }: {\n table: MRT_TableInstance<TData>;\n cell: MRT_Cell<TData>;\n }) => TextFieldProps);\n muiTableBodyCellProps?:\n | TableCellProps\n | (({\n table,\n cell,\n }: {\n table: MRT_TableInstance<TData>;\n cell: MRT_Cell<TData>;\n }) => TableCellProps);\n muiTableFooterCellProps?:\n | TableCellProps\n | (({\n table,\n column,\n }: {\n table: MRT_TableInstance<TData>;\n column: MRT_Column<TData>;\n }) => TableCellProps);\n muiTableHeadCellColumnActionsButtonProps?:\n | IconButtonProps\n | (({\n table,\n column,\n }: {\n table: MRT_TableInstance<TData>;\n column: MRT_Column<TData>;\n }) => IconButtonProps);\n muiTableHeadCellDragHandleProps?:\n | IconButtonProps\n | (({\n table,\n column,\n }: {\n table: MRT_TableInstance<TData>;\n column: MRT_Column<TData>;\n }) => IconButtonProps);\n muiTableHeadCellFilterTextFieldProps?:\n | TextFieldProps\n | (({\n table,\n column,\n }: {\n table: MRT_TableInstance<TData>;\n column: MRT_Column<TData>;\n }) => TextFieldProps);\n muiTableHeadCellProps?:\n | TableCellProps\n | (({\n table,\n column,\n }: {\n table: MRT_TableInstance<TData>;\n column: MRT_Column<TData>;\n }) => TableCellProps);\n onCellEditBlur?: ({\n cell,\n event,\n table,\n }: {\n event: FocusEvent<HTMLInputElement>;\n cell: MRT_Cell<TData>;\n table: MRT_TableInstance<TData>;\n }) => void;\n onCellEditChange?: ({\n cell,\n event,\n table,\n }: {\n event: ChangeEvent<HTMLInputElement>;\n cell: MRT_Cell<TData>;\n table: MRT_TableInstance<TData>;\n }) => void;\n sortingFn?: MRT_SortingFn;\n};\n\nexport type MRT_DefinedColumnDef<TData extends Record<string, any> = {}> = Omit<\n MRT_ColumnDef<TData>,\n 'id'\n> & {\n id: string;\n};\n\nexport type MRT_Column<TData extends Record<string, any> = {}> = Omit<\n Column<TData, unknown>,\n 'header' | 'footer' | 'columns' | 'columnDef' | 'filterFn'\n> & {\n columnDef: MRT_DefinedColumnDef<TData>;\n columns?: MRT_Column<TData>[];\n filterFn?: MRT_FilterFn<TData>;\n footer: string;\n header: string;\n};\n\nexport type MRT_Header<TData extends Record<string, any> = {}> = Omit<\n Header<TData, unknown>,\n 'column'\n> & {\n column: MRT_Column<TData>;\n};\n\nexport type MRT_HeaderGroup<TData extends Record<string, any> = {}> = Omit<\n HeaderGroup<TData>,\n 'headers'\n> & {\n headers: MRT_Header<TData>[];\n};\n\nexport type MRT_Row<TData extends Record<string, any> = {}> = Omit<\n Row<TData>,\n 'getVisibleCells' | 'getAllCells' | 'subRows' | '_valuesCache'\n> & {\n getAllCells: () => MRT_Cell<TData>[];\n getVisibleCells: () => MRT_Cell<TData>[];\n subRows?: MRT_Row<TData>[];\n _valuesCache?: TData;\n};\n\nexport type MRT_Cell<TData extends Record<string, any> = {}> = Omit<\n Cell<TData, unknown>,\n 'column' | 'row'\n> & {\n column: MRT_Column<TData>;\n row: MRT_Row<TData>;\n};\n\nexport type MRT_SortingOption = keyof typeof MRT_SortingFns;\n\nexport type MRT_SortingFn<TData extends Record<string, any> = {}> =\n | SortingFn<TData>\n | MRT_SortingOption;\n\nexport type MRT_FilterOption = keyof typeof MRT_FilterFns;\n\nexport type MRT_FilterFn<TData extends Record<string, any> = {}> =\n | FilterFn<TData>\n | MRT_FilterOption;\n\nexport type MRT_DisplayColumnIds =\n | 'mrt-row-drag'\n | 'mrt-row-actions'\n | 'mrt-row-expand'\n | 'mrt-row-select'\n | 'mrt-row-numbers';\n\n/**\n * `columns` and `data` props are the only required props, but there are over 150 other optional props.\n *\n * See more info on creating columns and data on the official docs site:\n * @link https://www.material-react-table.com/docs/usage\n *\n * See the full props list on the official docs site:\n * @link https://www.material-react-table.com/docs/api/props\n */\nexport type MaterialReactTableProps<TData extends Record<string, any> = {}> =\n Omit<\n Partial<TableOptions<TData>>,\n 'columns' | 'data' | 'initialState' | 'state' | 'expandRowsFn'\n > & {\n displayColumnDefOptions?: Partial<{\n [key in MRT_DisplayColumnIds]: Partial<MRT_ColumnDef>;\n }>;\n columns: MRT_ColumnDef<TData>[];\n data: TData[];\n editingMode?: 'table' | 'row' | 'cell';\n enableClickToCopy?: boolean;\n enableColumnActions?: boolean;\n enableColumnDragging?: boolean;\n enableColumnFilterChangeMode?: boolean;\n enableColumnOrdering?: boolean;\n enableDensityToggle?: boolean;\n enableEditing?: boolean;\n enableExpandAll?: boolean;\n enableFullScreenToggle?: boolean;\n enableGlobalFilterChangeMode?: boolean;\n enableGlobalFilterRankedResults?: boolean;\n enablePagination?: boolean;\n enableRowActions?: boolean;\n enableRowDragging?: boolean;\n enableRowNumbers?: boolean;\n enableRowOrdering?: boolean;\n enableRowVirtualization?: 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_FilterOption | string)[] | null;\n enabledGlobalFilterOptions?: (MRT_FilterOption | string)[] | null;\n expandRowsFn?: (dataRow: TData) => TData[];\n icons?: Partial<MRT_Icons>;\n initialState?: Partial<MRT_TableState<TData>>;\n localization?: Partial<MRT_Localization>;\n muiExpandAllButtonProps?:\n | IconButtonProps\n | (({ table }: { table: MRT_TableInstance<TData> }) => IconButtonProps);\n muiExpandButtonProps?:\n | IconButtonProps\n | (({\n table,\n }: {\n table: MRT_TableInstance<TData>;\n row: MRT_Row<TData>;\n }) => IconButtonProps);\n muiLinearProgressProps?:\n | LinearProgressProps\n | (({\n isTopToolbar,\n table,\n }: {\n isTopToolbar: boolean;\n table: MRT_TableInstance<TData>;\n }) => LinearProgressProps);\n muiSearchTextFieldProps?:\n | TextFieldProps\n | (({ table }: { table: MRT_TableInstance<TData> }) => TextFieldProps);\n muiSelectAllCheckboxProps?:\n | CheckboxProps\n | (({ table }: { table: MRT_TableInstance<TData> }) => CheckboxProps);\n muiSelectCheckboxProps?:\n | CheckboxProps\n | (({\n table,\n row,\n }: {\n table: MRT_TableInstance<TData>;\n row: MRT_Row<TData>;\n }) => CheckboxProps);\n muiTableBodyCellCopyButtonProps?:\n | ButtonProps\n | (({\n table,\n cell,\n }: {\n table: MRT_TableInstance<TData>;\n cell: MRT_Cell<TData>;\n }) => ButtonProps);\n muiTableBodyCellEditTextFieldProps?:\n | TextFieldProps\n | (({\n table,\n cell,\n }: {\n table: MRT_TableInstance<TData>;\n cell: MRT_Cell<TData>;\n }) => TextFieldProps);\n muiTableBodyCellProps?:\n | TableCellProps\n | (({\n table,\n cell,\n }: {\n table: MRT_TableInstance<TData>;\n cell: MRT_Cell<TData>;\n }) => TableCellProps);\n muiTableBodyCellSkeletonProps?:\n | SkeletonProps\n | (({\n table,\n cell,\n }: {\n table: MRT_TableInstance<TData>;\n cell: MRT_Cell<TData>;\n }) => SkeletonProps);\n muiTableBodyProps?:\n | TableBodyProps\n | (({ table }: { table: MRT_TableInstance<TData> }) => TableBodyProps);\n muiTableBodyRowDragHandleProps?:\n | IconButtonProps\n | (({\n table,\n row,\n }: {\n table: MRT_TableInstance<TData>;\n row: MRT_Row<TData>;\n }) => IconButtonProps);\n muiTableBodyRowProps?:\n | TableRowProps\n | (({\n table,\n row,\n }: {\n table: MRT_TableInstance<TData>;\n row: MRT_Row<TData>;\n }) => TableRowProps);\n muiTableContainerProps?:\n | TableContainerProps\n | (({\n table,\n }: {\n table: MRT_TableInstance<TData>;\n }) => TableContainerProps);\n muiTableDetailPanelProps?:\n | TableCellProps\n | (({\n table,\n row,\n }: {\n table: MRT_TableInstance<TData>;\n row: MRT_Row<TData>;\n }) => TableCellProps);\n muiTableFooterCellProps?:\n | TableCellProps\n | (({\n table,\n column,\n }: {\n table: MRT_TableInstance<TData>;\n column: MRT_Column<TData>;\n }) => TableCellProps);\n muiTableFooterProps?:\n | TableFooterProps\n | (({ table }: { table: MRT_TableInstance<TData> }) => TableFooterProps);\n muiTableFooterRowProps?:\n | TableRowProps\n | (({\n table,\n footerGroup,\n }: {\n table: MRT_TableInstance<TData>;\n footerGroup: MRT_HeaderGroup<TData>;\n }) => TableRowProps);\n muiTableHeadCellColumnActionsButtonProps?:\n | IconButtonProps\n | (({\n table,\n column,\n }: {\n table: MRT_TableInstance<TData>;\n column: MRT_Column<TData>;\n }) => IconButtonProps);\n muiTableHeadCellDragHandleProps?:\n | IconButtonProps\n | (({\n table,\n column,\n }: {\n table: MRT_TableInstance<TData>;\n column: MRT_Column<TData>;\n }) => IconButtonProps);\n muiTableHeadCellFilterTextFieldProps?:\n | TextFieldProps\n | (({\n table,\n column,\n }: {\n table: MRT_TableInstance<TData>;\n column: MRT_Column<TData>;\n }) => TextFieldProps);\n muiTableHeadCellProps?:\n | TableCellProps\n | (({\n table,\n column,\n }: {\n table: MRT_TableInstance<TData>;\n column: MRT_Column<TData>;\n }) => TableCellProps);\n muiTableHeadProps?:\n | TableHeadProps\n | (({ table }: { table: MRT_TableInstance<TData> }) => TableHeadProps);\n muiTableHeadRowProps?:\n | TableRowProps\n | (({\n table,\n headerGroup,\n }: {\n table: MRT_TableInstance<TData>;\n headerGroup: MRT_HeaderGroup<TData>;\n }) => TableRowProps);\n muiTablePaginationProps?:\n | Partial<TablePaginationProps>\n | (({\n table,\n }: {\n table: MRT_TableInstance<TData>;\n }) => Partial<TablePaginationProps>);\n muiTablePaperProps?:\n | PaperProps\n | (({ table }: { table: MRT_TableInstance<TData> }) => PaperProps);\n muiTableProps?:\n | TableProps\n | (({ table }: { table: MRT_TableInstance<TData> }) => TableProps);\n muiTableToolbarAlertBannerProps?:\n | AlertProps\n | (({ table }: { table: MRT_TableInstance<TData> }) => AlertProps);\n muiTableToolbarBottomProps?:\n | ToolbarProps\n | (({ table }: { table: MRT_TableInstance<TData> }) => ToolbarProps);\n muiTableToolbarTopProps?:\n | ToolbarProps\n | (({ table }: { table: MRT_TableInstance<TData> }) => ToolbarProps);\n onCellEditBlur?: ({\n cell,\n event,\n table,\n }: {\n event: FocusEvent<HTMLInputElement>;\n cell: MRT_Cell<TData>;\n table: MRT_TableInstance<TData>;\n }) => void;\n onCellEditChange?: ({\n cell,\n event,\n table,\n }: {\n event: ChangeEvent<HTMLInputElement>;\n cell: MRT_Cell<TData>;\n table: MRT_TableInstance<TData>;\n }) => void;\n onColumnDrop?: ({\n event,\n draggedColumn,\n targetColumn,\n }: {\n event: DragEvent<HTMLButtonElement>;\n draggedColumn: MRT_Column<TData>;\n targetColumn: MRT_Column<TData> | null;\n }) => void;\n onCurrentDraggingColumnChange?: OnChangeFn<MRT_Column<TData> | null>;\n onCurrentDraggingRowChange?: OnChangeFn<MRT_Row<TData> | null>;\n onCurrentEditingCellChange?: OnChangeFn<MRT_Cell<TData> | null>;\n onCurrentEditingRowChange?: OnChangeFn<MRT_Row<TData> | null>;\n onCurrentFilterFnsChange?: OnChangeFn<{ [key: string]: MRT_FilterOption }>;\n onCurrentGlobalFilterFnChange?: OnChangeFn<MRT_FilterOption>;\n onCurrentHoveredColumnChange?: OnChangeFn<MRT_Column<TData> | null>;\n onCurrentHoveredRowChange?: OnChangeFn<MRT_Row<TData> | null>;\n onDensityChange?: OnChangeFn<boolean>;\n onEditRowSubmit?: ({\n row,\n table,\n }: {\n row: MRT_Row<TData>;\n table: MRT_TableInstance<TData>;\n }) => Promise<void> | void;\n onIsFullScreenChange?: OnChangeFn<boolean>;\n onRowDrop?: ({\n event,\n draggedRow,\n targetRow,\n }: {\n event: DragEvent<HTMLButtonElement>;\n draggedRow: MRT_Row<TData>;\n targetRow: MRT_Row<TData> | null;\n }) => void;\n onShowAlertBannerChange?: OnChangeFn<boolean>;\n onShowFiltersChange?: OnChangeFn<boolean>;\n onShowGlobalFilterChange?: OnChangeFn<boolean>;\n onTableInstanceChange?: (table: MRT_TableInstance<TData>) => void;\n positionActionsColumn?: 'first' | 'last';\n positionExpandColumn?: 'first' | 'last';\n positionGlobalFilter?: 'left' | 'right';\n positionPagination?: 'bottom' | 'top' | 'both';\n positionToolbarAlertBanner?: 'bottom' | 'top';\n renderDetailPanel?: ({\n row,\n table,\n }: {\n row: MRT_Row<TData>;\n table: MRT_TableInstance<TData>;\n }) => ReactNode;\n renderRowActionMenuItems?: ({\n closeMenu,\n row,\n table,\n }: {\n closeMenu: () => void;\n row: MRT_Row<TData>;\n table: MRT_TableInstance<TData>;\n }) => ReactNode[];\n renderRowActions?: ({\n row,\n table,\n }: {\n row: MRT_Row<TData>;\n table: MRT_TableInstance<TData>;\n }) => ReactNode;\n renderToolbarBottomCustomActions?: ({\n table,\n }: {\n table: MRT_TableInstance<TData>;\n }) => ReactNode;\n renderToolbarInternalActions?: ({\n table,\n MRT_ToggleGlobalFilterButton,\n MRT_ToggleFiltersButton,\n MRT_ShowHideColumnsButton,\n MRT_ToggleDensePaddingButton,\n MRT_FullScreenToggleButton,\n }: {\n table: MRT_TableInstance<TData>;\n MRT_ToggleGlobalFilterButton: FC<\n IconButtonProps & { table: MRT_TableInstance<TData> }\n >;\n MRT_ToggleFiltersButton: FC<\n IconButtonProps & { table: MRT_TableInstance<TData> }\n >;\n MRT_ShowHideColumnsButton: FC<\n IconButtonProps & { table: MRT_TableInstance<TData> }\n >;\n MRT_ToggleDensePaddingButton: FC<\n IconButtonProps & { table: MRT_TableInstance<TData> }\n >;\n MRT_FullScreenToggleButton: FC<\n IconButtonProps & { table: MRT_TableInstance<TData> }\n >;\n }) => ReactNode;\n renderToolbarTopCustomActions?: ({\n table,\n }: {\n table: MRT_TableInstance<TData>;\n }) => ReactNode;\n rowCount?: number;\n rowNumberMode?: 'original' | 'static';\n selectAllMode?: 'all' | 'page';\n state?: Partial<MRT_TableState<TData>>;\n tableId?: string;\n virtualizerProps?: Partial<VirtualizerOptions<HTMLDivElement>>;\n };\n\nexport default <TData extends Record<string, any> = {}>({\n autoResetExpanded = false,\n columnResizeMode = 'onEnd',\n defaultColumn = { minSize: 40, maxSize: 1000, size: 180 },\n editingMode = 'row',\n enableColumnActions = true,\n enableColumnFilterChangeMode = true,\n enableColumnFilters = true,\n enableColumnOrdering = false,\n enableColumnResizing = false,\n enableDensityToggle = true,\n enableExpandAll = true,\n enableFilters = true,\n enableFullScreenToggle = true,\n enableGlobalFilter = true,\n enableGlobalFilterChangeMode = true,\n enableGlobalFilterRankedResults = true,\n enableGrouping = false,\n enableHiding = true,\n enableMultiRowSelection = true,\n enableMultiSort = true,\n enablePagination = true,\n enablePinning = false,\n enableRowSelection = false,\n enableSelectAll = true,\n enableSorting = true,\n enableStickyHeader = false,\n enableTableFooter = true,\n enableTableHead = true,\n enableToolbarBottom = true,\n enableToolbarInternalActions = true,\n enableToolbarTop = true,\n icons,\n localization,\n positionActionsColumn = 'first',\n positionExpandColumn = 'first',\n positionGlobalFilter = 'right',\n positionPagination = 'bottom',\n positionToolbarAlertBanner = 'top',\n rowNumberMode = 'original',\n selectAllMode = 'all',\n ...rest\n}: MaterialReactTableProps<TData>) => (\n <MRT_TableRoot\n autoResetExpanded={autoResetExpanded}\n columnResizeMode={columnResizeMode}\n defaultColumn={defaultColumn}\n editingMode={editingMode}\n enableColumnActions={enableColumnActions}\n enableColumnFilterChangeMode={enableColumnFilterChangeMode}\n enableColumnFilters={enableColumnFilters}\n enableColumnOrdering={enableColumnOrdering}\n enableColumnResizing={enableColumnResizing}\n enableDensityToggle={enableDensityToggle}\n enableExpandAll={enableExpandAll}\n enableFilters={enableFilters}\n enableFullScreenToggle={enableFullScreenToggle}\n enableGlobalFilter={enableGlobalFilter}\n enableGlobalFilterChangeMode={enableGlobalFilterChangeMode}\n enableGlobalFilterRankedResults={enableGlobalFilterRankedResults}\n enableGrouping={enableGrouping}\n enableHiding={enableHiding}\n enableMultiRowSelection={enableMultiRowSelection}\n enableMultiSort={enableMultiSort}\n enablePagination={enablePagination}\n enablePinning={enablePinning}\n enableRowSelection={enableRowSelection}\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 positionActionsColumn={positionActionsColumn}\n positionExpandColumn={positionExpandColumn}\n positionGlobalFilter={positionGlobalFilter}\n positionPagination={positionPagination}\n positionToolbarAlertBanner={positionToolbarAlertBanner}\n rowNumberMode={rowNumberMode}\n selectAllMode={selectAllMode}\n {...rest}\n />\n);\n"],"names":["MRT_DefaultLocalization_EN","actions","and","cancel","changeFilterMode","changeSearchMode","clearFilter","clearSearch","clearSort","clickToCopy","columnActions","copiedToClipboard","edit","expand","expandAll","filterBetween","filterBetweenInclusive","filterByColumn","filterContains","filterEmpty","filterEndsWith","filterEquals","filterFuzzy","filterGreaterThan","filterGreaterThanOrEqualTo","filterLessThan","filterLessThanOrEqualTo","filterMode","filterNotEmpty","filterNotEquals","filterStartsWith","filteringByColumn","grab","groupByColumn","groupedBy","hideAll","hideColumn","max","min","move","pinToLeft","pinToRight","resetColumnSize","resetOrder","rowActions","rowNumber","rowNumbers","save","search","selectedCountOfRowCountRowsSelected","select","showAll","showAllColumns","showHideColumns","showHideFilters","showHideSearch","sortByColumnAsc","sortByColumnDesc","sortedByColumnAsc","sortedByColumnDesc","thenBy","toggleDensity","toggleFullScreen","toggleSelectAll","toggleSelectRow","toggleVisibility","ungroupByColumn","unpin","unpinAll","unsorted","MRT_Default_Icons","ArrowRightIcon","ArrowRight","CancelIcon","Cancel","CheckBoxIcon","CheckBox","ClearAllIcon","ClearAll","CloseIcon","Close","DensityLargeIcon","DensityLarge","DensityMediumIcon","DensityMedium","DensitySmallIcon","DensitySmall","DragHandleIcon","DragHandle","DynamicFeedIcon","DynamicFeed","EditIcon","Edit","ExpandLessIcon","ExpandLess","ExpandMoreIcon","ExpandMore","FilterAltIcon","FilterAlt","FilterAltOffIcon","FilterAltOff","FilterListIcon","FilterList","FilterListOffIcon","FilterListOff","FullscreenExitIcon","FullscreenExit","FullscreenIcon","Fullscreen","KeyboardDoubleArrowDownIcon","KeyboardDoubleArrowDown","MoreHorizIcon","MoreHoriz","MoreVertIcon","MoreVert","PushPinIcon","PushPin","RestartAltIcon","RestartAlt","SaveIcon","Save","SearchIcon","Search","SearchOffIcon","SearchOff","SortIcon","Sort","ViewColumnIcon","ViewColumn","VisibilityOffIcon","VisibilityOff","MRT_ExpandAllButton","table","getIsAllRowsExpanded","getIsSomeRowsExpanded","getCanSomeRowsExpand","getState","options","icons","localization","muiExpandAllButtonProps","renderDetailPanel","toggleAllRowsExpanded","density","iconButtonProps","Function","React","Tooltip","arrow","enterDelay","enterNextDelay","title","IconButton","disabled","onClick","sx","height","width","style","transform","transition","MRT_ExpandButton","row","muiExpandButtonProps","handleToggleExpand","toggleExpanded","getCanExpand","theme","getIsExpanded","MRT_FilterOptionMenu","anchorEl","header","onSelect","setAnchorEl","enabledGlobalFilterOptions","enabledColumnFilterOptions","setCurrentFilterFns","setCurrentGlobalFilterFn","currentFilterFns","currentGlobalFilterFn","column","columnDef","allowedColumnFilterOptions","filterOptions","useMemo","option","symbol","label","divider","filter","filterType","undefined","includes","handleSelectFilterType","prev","id","setFilterValue","filterOption","Menu","anchorOrigin","vertical","horizontal","onClose","open","MenuListProps","dense","map","index","MenuItem","key","selected","py","my","alignItems","display","gap","value","Box","fontSize","MRT_ColumnPinningButtons","handlePinColumn","pinDirection","pin","minWidth","textAlign","getIsPinned","size","MRT_GrabHandleButton","onDragEnd","onDragStart","placement","disableRipple","draggable","cursor","m","opacity","p","backgroundColor","fuzzy","columnId","filterValue","addMeta","itemRank","rankItem","getValue","threshold","rankings","MATCHES","passed","autoRemove","val","contains","toString","toLowerCase","trim","startsWith","endsWith","equals","notEquals","greaterThan","isNaN","greaterThanOrEqualTo","lessThan","lessThanOrEqualTo","between","filterValues","betweenInclusive","empty","_filterValue","notEmpty","MRT_FilterFns","filterFns","rowA","rowB","dir","columnFiltersMeta","compareItems","sortingFns","alphanumeric","MRT_SortingFns","rankGlobalFuzzy","Math","Object","values","v","rank","getColumnId","accessorKey","getAllLeafColumnDefs","columns","lowestLevelColumns","currentCols","length","some","col","nextCols","flat","every","prepareColumns","columnDefs","process","env","NODE_ENV","console","error","columnDefType","keys","filterFn","sortingFn","reorderColumn","draggedColumn","targetColumn","columnOrder","getCanPin","splice","indexOf","getLeadingDisplayColumnIds","props","enableRowDragging","enableRowOrdering","positionActionsColumn","enableRowActions","enableEditing","editingMode","positionExpandColumn","enableExpanding","enableGrouping","enableRowSelection","enableRowNumbers","Boolean","getTrailingDisplayColumnIds","getDefaultColumnOrderIds","MRT_ShowHideColumnsMenuItems","allColumns","currentHoveredColumn","setCurrentHoveredColumn","isSubMenu","enableColumnOrdering","enableHiding","enablePinning","setColumnOrder","switchChecked","getIsVisible","getLeafColumns","handleToggleColumnHidden","forEach","childColumn","menuItemRef","useRef","useState","isDragging","setIsDragging","handleDragStart","e","dataTransfer","setDragImage","current","handleDragEnd","_e","handleDragEnter","ref","onDragEnter","justifyContent","outline","palette","primary","main","pl","depth","flexWrap","FormControlLabel","componentsProps","typography","mb","checked","control","Switch","getCanHide","getIsGrouped","onChange","Typography","alignSelf","c","i","MRT_ShowHideColumnsMenu","getAllColumns","getAllLeafColumns","getCenterLeafColumns","getIsAllColumnsVisible","getIsSomeColumnsPinned","getIsSomeColumnsVisible","getLeftLeafColumns","getRightLeafColumns","toggleAllColumnsVisible","columnPinning","hideAllColumns","Array","from","Set","colId","find","pt","Button","resetColumnPinning","Divider","commonMenuItemStyles","commonListItemStyles","MRT_ColumnActionMenu","enableColumnFilterChangeMode","enableColumnFilters","enableColumnResizing","enableSorting","tableId","setShowFilters","columnSizing","columnVisibility","filterMenuAnchorEl","setFilterMenuAnchorEl","showHideColumnsMenuAnchorEl","setShowHideColumnsMenuAnchorEl","handleClearSort","clearSorting","handleSortAsc","toggleSorting","handleSortDesc","handleResetColumnSize","resetSize","handleHideColumn","handleGroupByColumn","toggleGrouping","old","handleClearFilter","handleFilterByColumn","setTimeout","document","getElementById","muiTableHeadCellFilterTextFieldProps","focus","handleShowAllColumns","handleOpenFilterModeMenu","event","stopPropagation","currentTarget","handleOpenShowHideColumnsMenu","isSelectFilter","filterSelectOptions","showFilterModeSubMenu","getCanSort","getIsSorted","ListItemIcon","replace","String","getCanFilter","getFilterValue","onMouseEnter","getCanGroup","getCanResize","visible","MRT_RowActionMenu","handleEdit","renderRowActionMenuItems","closeMenu","MRT_EditActionButtons","onEditRowSubmit","setCurrentEditingRow","currentEditingRow","handleCancel","_valuesCache","original","handleSave","color","commonIconButtonStyles","ml","MRT_ToggleRowActionMenuButton","renderRowActions","handleOpenRowActionMenu","preventDefault","handleStartEditMode","MRT_SelectCheckbox","selectAll","muiSelectCheckboxProps","muiSelectAllCheckboxProps","selectAllMode","checkboxProps","Checkbox","getIsAllRowsSelected","getIsSelected","indeterminate","getIsSomeRowsSelected","getIsSomeSelected","inputProps","getToggleAllRowsSelectedHandler","getToggleAllPageRowsSelectedHandler","getToggleSelectedHandler","MRT_FullScreenToggleButton","rest","setIsFullScreen","isFullScreen","handleToggleFullScreen","MRT_ShowHideColumnsButton","handleClick","MRT_ToggleDensePaddingButton","setDensity","handleToggleDensePadding","nextDensity","MRT_ToggleFiltersButton","showColumnFilters","handleToggleShowFilters","MRT_ToggleGlobalFilterButton","muiSearchTextFieldProps","setShowGlobalFilter","showGlobalFilter","textFieldProps","handleToggleSearch","MRT_GlobalFilterTextField","setGlobalFilter","enableGlobalFilterChangeMode","globalFilter","searchValue","setSearchValue","handleChangeDebounced","useCallback","debounce","target","handleChange","handleGlobalFilterMenuOpen","handleClear","Collapse","orientation","TextField","placeholder","variant","InputProps","startAdornment","InputAdornment","position","endAdornment","MRT_ToolbarInternalButtons","enableDensityToggle","enableFilters","enableFullScreenToggle","enableGlobalFilter","positionGlobalFilter","renderToolbarInternalActions","zIndex","MRT_TablePagination","getPrePaginationRowModel","setPageIndex","setPageSize","muiTablePaginationProps","enableToolbarInternalActions","rowCount","pagination","pageSize","pageIndex","totalRowCount","rows","showFirstLastPageButtons","tablePaginationProps","handleChangeRowsPerPage","TablePagination","SelectProps","MenuProps","disablePadding","component","count","onPageChange","_","newPage","onRowsPerPageChange","page","rowsPerPage","rowsPerPageOptions","showFirstButton","showLastButton","mt","MRT_ToolbarAlertBanner","stackAlertBanner","getSelectedRowModel","muiTableToolbarAlertBannerProps","grouping","showAlertBanner","alertProps","selectMessage","groupedByMessage","Fragment","Chip","getColumn","onDelete","timeout","Alert","icon","borderRadius","left","right","top","AlertTitle","children","MRT_LinearProgressBar","isTopToolbar","muiLinearProgressProps","isLoading","showProgressBars","linearProgressProps","mountOnEnter","unmountOnExit","bottom","LinearProgress","commonToolbarStyles","lighten","background","backgroundImage","minHeight","overflow","MRT_ToolbarTop","enablePagination","muiTableToolbarTopProps","positionPagination","positionToolbarAlertBanner","renderToolbarTopCustomActions","isMobile","useMediaQuery","toolbarProps","Toolbar","boxSizing","MRT_ToolbarBottom","muiTableToolbarBottomProps","renderToolbarBottomCustomActions","boxShadow","alpha","common","black","MRT_TableHeadCellColumnActionsButton","muiTableHeadCellColumnActionsButtonProps","mTableHeadCellColumnActionsButtonProps","mcTableHeadCellColumnActionsButtonProps","MRT_FilterTextField","inputIndex","mTableHeadCellFilterTextFieldProps","mcTableHeadCellFilterTextFieldProps","type","Date","newFilterValues","handleFilterMenuOpen","handleClearFilterChip","Filter","filterId","currentFilterOption","filterChipLabel","charAt","toUpperCase","slice","filterPlaceholder","showChangeModeButton","fullWidth","textOverflow","helperText","htmlFor","FormHelperTextProps","lineHeight","whiteSpace","margin","disableHoverListener","mr","text","MRT_FilterRangeFields","gridTemplateColumns","MRT_TableHeadCellFilterContainer","MRT_TableHeadCellFilterLabel","filterTooltip","isArray","join","Grow","MRT_TableHeadCellGrabHandle","tableHeadCellRef","muiTableHeadCellDragHandleProps","onColumnDrop","setCurrentDraggingColumn","currentDraggingColumn","mIconButtonProps","mcIconButtonProps","MRT_TableHeadCellResizeHandle","columnResizeMode","flexItem","onDoubleClick","borderRightWidth","touchAction","getIsResizing","userSelect","info","onMouseDown","getResizeHandler","onTouchStart","columnSizingInfo","deltaOffset","MRT_TableHeadCellSortLabel","sortTooltip","TableSortLabel","active","direction","MRT_TableHeadCell","useTheme","enableColumnActions","enableColumnDragging","enableMultiSort","muiTableHeadCellProps","mTableHeadCellProps","mcTableHeadCellProps","tableCellProps","getIsLastLeftPinnedColumn","getLeftLeafHeaders","getPinnedIndex","getIsFirstRightPinnedColumn","getTotalRight","getRightLeafHeaders","draggingBorder","draggingBorders","borderLeft","borderRight","borderTop","headerElement","Header","TableCell","align","colSpan","fontWeight","getStart","pb","verticalAlign","maxWidth","getSize","minSize","isPlaceholder","getToggleSortingHandler","MRT_TableHeadRow","headerGroup","muiTableHeadRowProps","tableRowProps","TableRow","headers","MRT_TableHead","getHeaderGroups","muiTableHeadProps","tableHeadProps","TableHead","MRT_EditCellTextField","cell","muiTableBodyCellEditTextFieldProps","onCellEditBlur","onCellEditChange","setCurrentEditingCell","setValue","handleBlur","mTableBodyCellEditTextFieldProps","mcTableBodyCellEditTextFieldProps","onBlur","MRT_CopyButton","muiTableBodyCellCopyButtonProps","copied","setCopied","handleCopy","navigator","clipboard","writeText","mTableBodyCellCopyButtonProps","mcTableBodyCellCopyButtonProps","buttonProps","border","fontFamily","letterSpacing","textTransform","MRT_TableBodyRowGrabHandle","rowRef","muiTableBodyRowDragHandleProps","onRowDrop","setCurrentDraggingRow","draggedRow","currentDraggingRow","targetRow","currentHoveredRow","setCurrentHoveredRow","MRT_TableBodyCell","enableHover","rowIndex","enableClickToCopy","muiTableBodyCellProps","muiTableBodyCellSkeletonProps","rowNumberMode","currentEditingCell","showSkeletons","mTableCellBodyProps","mcTableCellBodyProps","skeletonWidth","random","isEditable","isEditing","handleDoubleClick","_event","textField","borderBottom","getRowModel","mode","darken","getIsPlaceholder","Skeleton","animation","Cell","renderValue","subRows","MRT_TableDetailPanel","getVisibleLeafColumns","muiTableBodyRowProps","muiTableDetailPanelProps","getTotalSize","MRT_TableBodyRow","hover","getVisibleCells","MRT_TableBody","tableContainerRef","enableGlobalFilterRankedResults","enableRowVirtualization","muiTableBodyProps","virtualizerProps","sorting","tableBodyProps","getIsSomeColumnsSorted","rankedRows","sort","a","b","rowVirtualizer","useVirtual","overscan","parentRef","virtualRows","virtualItems","paddingTop","paddingBottom","start","totalSize","end","TableBody","rowOrVirtualRow","MRT_TableFooterCell","footer","muiTableFooterCellProps","mTableFooterCellProps","mcTableFooterCellProps","white","Footer","MRT_TableFooterRow","footerGroup","muiTableFooterRowProps","MRT_TableFooter","getFooterGroups","muiTableFooterProps","tableFooterProps","TableFooter","MRT_Table","enableStickyHeader","enableTableFooter","enableTableHead","muiTableProps","tableProps","Table","stickyHeader","tableLayout","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","defaultDisplayColumnDefOptions","enableColumnFilter","enableResizing","MRT_TableRoot","setIdPrefix","substring","initialState","initState","setShowAlertBanner","assign","name","globalFilterFn","displayColumns","displayColumnDefOptions","enableExpandAll","enableSelectAll","data","state","fill","useReactTable","getCoreRowModel","getExpandedRowModel","getFacetedRowModel","getFilteredRowModel","getGroupedRowModel","getPaginationRowModel","getSortedRowModel","onColumnOrderChange","getSubRows","onCurrentDraggingColumnChange","onCurrentDraggingRowChange","onCurrentEditingCellChange","onCurrentEditingRowChange","onCurrentFilterFnsChange","onCurrentGlobalFilterFnChange","onCurrentHoveredColumnChange","onCurrentHoveredRowChange","onDensityChange","onIsFullScreenChange","onShowAlertBannerChange","onShowFiltersChange","onShowGlobalFilterChange","onTableInstanceChange","Dialog","PaperComponent","TransitionComponent","disablePortal","fullScreen","keepMounted","transitionDuration","autoResetExpanded","defaultColumn","maxSize","enableMultiRowSelection"],"mappings":"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"}