material-react-table 0.30.2 → 0.31.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"material-react-table.esm.js","sources":["../src/localization.ts","../src/icons.ts","../src/buttons/MRT_ExpandAllButton.tsx","../src/buttons/MRT_ExpandButton.tsx","../src/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/inputs/MRT_GlobalFilterTextField.tsx","../src/toolbar/MRT_LinearProgressBar.tsx","../src/toolbar/MRT_TablePagination.tsx","../src/toolbar/MRT_ToolbarAlertBanner.tsx","../src/buttons/MRT_FullScreenToggleButton.tsx","../src/buttons/MRT_ShowHideColumnsButton.tsx","../src/buttons/MRT_ToggleDensePaddingButton.tsx","../src/buttons/MRT_ToggleFiltersButton.tsx","../src/buttons/MRT_ToggleGlobalFilterButton.tsx","../src/toolbar/MRT_ToolbarInternalButtons.tsx","../src/toolbar/MRT_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 filterArrIncludes: string;\n filterArrIncludesAll: string;\n filterArrIncludesSome: string;\n filterBetween: string;\n filterBetweenInclusive: string;\n filterByColumn: string;\n filterContains: string;\n filterEmpty: string;\n filterEndsWith: string;\n filterEquals: string;\n filterEqualsString: string;\n filterFuzzy: string;\n filterGreaterThan: string;\n filterGreaterThanOrEqualTo: string;\n filterInNumberRange: string;\n filterIncludesString: string;\n filterIncludesStringSensitive: string;\n filterLessThan: string;\n filterLessThanOrEqualTo: string;\n filterMode: string;\n filterNotEmpty: string;\n filterNotEquals: string;\n filterStartsWith: string;\n filterWeakEquals: 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 or: 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 filterArrIncludes: 'Includes',\n filterArrIncludesAll: 'Includes all',\n filterArrIncludesSome: 'Includes',\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 filterEqualsString: 'Equals',\n filterFuzzy: 'Fuzzy',\n filterGreaterThan: 'Greater Than',\n filterGreaterThanOrEqualTo: 'Greater Than Or Equal To',\n filterInNumberRange: 'Between',\n filterIncludesString: 'Contains',\n filterIncludesStringSensitive: 'Contains',\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 filterWeakEquals: 'Equals',\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 or: 'or',\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 mt: density !== 'compact' ? '-0.25rem' : undefined,\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 '..';\nimport { MRT_Localization } from '../localization';\n\nexport const internalFilterOptions = (\n localization: MRT_Localization,\n): {\n option: string;\n symbol: string;\n label: string;\n divider: boolean;\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];\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 columnFilterModeOptions,\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?.columnFilterModeOptions ?? columnFilterModeOptions;\n\n const filterOptions = useMemo(\n () =>\n internalFilterOptions(localization).filter((filterOption) =>\n columnDef\n ? allowedColumnFilterOptions === undefined ||\n allowedColumnFilterOptions?.includes(filterOption.option)\n : (!enabledGlobalFilterOptions ||\n enabledGlobalFilterOptions.includes(filterOption.option)) &&\n ['fuzzy', 'contains'].includes(filterOption.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 as string)) {\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 as MRT_FilterOption)}\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 // @ts-ignore\n MRT_FilterFns[currentFilterFns[columnDef.id]] ?? MRT_FilterFns.fuzzy;\n //@ts-ignore\n columnDef._filterFn = currentFilterFns[columnDef.id];\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\nexport const getDefaultColumnFilterFn = <\n TData extends Record<string, any> = {},\n>(\n columnDef: MRT_ColumnDef<TData>,\n): MRT_FilterOption => {\n if (columnDef.filterVariant === 'multi-select') return 'arrIncludesSome';\n if (columnDef.filterVariant === 'select') return 'equals';\n if (columnDef.filterVariant === 'range') return 'betweenInclusive';\n return 'fuzzy';\n};\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 columnFilterModeOptions,\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: any) => ['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?.columnFilterModeOptions ?? columnFilterModeOptions;\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 style={{ transform: 'rotate(180deg) scaleX(-1)' }} />\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 />\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.75rem' : '2.5rem',\n width: density === 'compact' ? '1.75rem' : '2.5rem',\n m: density !== 'compact' ? '-0.4rem' : undefined,\n ...(checkboxProps?.sx instanceof Function\n ? checkboxProps.sx(theme)\n : (checkboxProps?.sx as any)),\n })}\n />\n </Tooltip>\n );\n};\n","import React, {\n ChangeEvent,\n FC,\n MouseEvent,\n useCallback,\n useState,\n} from 'react';\nimport {\n Collapse,\n debounce,\n IconButton,\n InputAdornment,\n TextField,\n Tooltip,\n} from '@mui/material';\nimport { MRT_FilterOptionMenu } from '../menus/MRT_FilterOptionMenu';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n 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 style={{ marginRight: '4px' }} />\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 { 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, { 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 { 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, { 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, { FC } from 'react';\nimport { Box, lighten, Theme, Toolbar, useMediaQuery } from '@mui/material';\nimport { MRT_GlobalFilterTextField } from '../inputs/MRT_GlobalFilterTextField';\nimport { MRT_LinearProgressBar } from './MRT_LinearProgressBar';\nimport { MRT_TableInstance } from '..';\nimport { MRT_TablePagination } from './MRT_TablePagination';\nimport { MRT_ToolbarAlertBanner } from './MRT_ToolbarAlertBanner';\nimport { MRT_ToolbarInternalButtons } from './MRT_ToolbarInternalButtons';\n\nexport const commonToolbarStyles = ({ theme }: { theme: Theme }) => ({\n alignItems: 'flex-start',\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 || !!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 = isMobile || !!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 Box,\n Checkbox,\n Chip,\n debounce,\n IconButton,\n InputAdornment,\n ListItemText,\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 rangeFilterIndex?: number;\n table: MRT_TableInstance;\n}\n\nexport const MRT_FilterTextField: FC<Props> = ({\n header,\n rangeFilterIndex,\n table,\n}) => {\n const {\n getState,\n options: {\n enableColumnFilterChangeMode,\n columnFilterModeOptions,\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 mTableHeadCellFilterTextFieldProps =\n muiTableHeadCellFilterTextFieldProps instanceof Function\n ? muiTableHeadCellFilterTextFieldProps({\n column,\n table,\n rangeFilterIndex,\n })\n : muiTableHeadCellFilterTextFieldProps;\n\n const mcTableHeadCellFilterTextFieldProps =\n columnDef.muiTableHeadCellFilterTextFieldProps instanceof Function\n ? columnDef.muiTableHeadCellFilterTextFieldProps({\n column,\n table,\n rangeFilterIndex,\n })\n : columnDef.muiTableHeadCellFilterTextFieldProps;\n\n const textFieldProps = {\n ...mTableHeadCellFilterTextFieldProps,\n ...mcTableHeadCellFilterTextFieldProps,\n } as TextFieldProps;\n\n const isRangeFilter =\n columnDef.filterVariant === 'range' || rangeFilterIndex !== undefined;\n const isSelectFilter = columnDef.filterVariant === 'select';\n const isMultiSelectFilter = columnDef.filterVariant === 'multi-select';\n const isTextboxFilter =\n columnDef.filterVariant === 'text' ||\n (!isSelectFilter && !isMultiSelectFilter);\n\n const currentFilterOption = currentFilterFns?.[header.id];\n const filterId = `mrt-${tableId}-${header.id}-filter-text-field${\n rangeFilterIndex ?? ''\n }`;\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 = !isRangeFilter\n ? localization.filterByColumn?.replace('{column}', String(columnDef.header))\n : rangeFilterIndex === 0\n ? localization.min\n : rangeFilterIndex === 1\n ? localization.max\n : '';\n const allowedColumnFilterOptions =\n columnDef?.columnFilterModeOptions ?? columnFilterModeOptions;\n const showChangeModeButton =\n enableColumnFilterChangeMode &&\n columnDef.enableColumnFilterChangeMode !== false &&\n !rangeFilterIndex &&\n (allowedColumnFilterOptions === undefined ||\n !!allowedColumnFilterOptions?.length);\n\n const [anchorEl, setAnchorEl] = useState<null | HTMLElement>(null);\n const [filterValue, setFilterValue] = useState<string | string[]>(() =>\n isMultiSelectFilter\n ? (column.getFilterValue() as string[]) || []\n : isRangeFilter\n ? (column.getFilterValue() as [string, string])?.[\n rangeFilterIndex as number\n ] || []\n : (column.getFilterValue() as string) ?? '',\n );\n\n const handleChangeDebounced = useCallback(\n debounce(\n (event: ChangeEvent<HTMLInputElement>) => {\n let value =\n textFieldProps.type === 'date'\n ? new Date(event.target.value)\n : event.target.value;\n if (isRangeFilter) {\n column.setFilterValue((old: [string, string | Date]) => {\n const newFilterValues = old ?? ['', ''];\n newFilterValues[rangeFilterIndex as number] = value;\n return newFilterValues;\n });\n } else {\n column.setFilterValue(value ?? undefined);\n }\n },\n isTextboxFilter ? 200 : 1,\n ),\n [],\n );\n\n const handleChange = (event: ChangeEvent<HTMLInputElement>) => {\n setFilterValue(event.target.value);\n handleChangeDebounced(event);\n };\n\n const handleClear = () => {\n if (isMultiSelectFilter) {\n setFilterValue([]);\n column.setFilterValue([]);\n } else if (isRangeFilter) {\n setFilterValue('');\n column.setFilterValue((old: [string | undefined, string | undefined]) => {\n const newFilterValues = old ?? ['', ''];\n newFilterValues[rangeFilterIndex as number] = undefined;\n return newFilterValues;\n });\n } else {\n setFilterValue('');\n column.setFilterValue(undefined);\n }\n };\n\n const handleClearEmptyFilterChip = () => {\n setFilterValue('');\n column.setFilterValue(undefined);\n setCurrentFilterFns((prev) => ({\n ...prev,\n [header.id]: 'fuzzy',\n }));\n };\n\n const handleFilterMenuOpen = (event: MouseEvent<HTMLElement>) => {\n setAnchorEl(event.currentTarget);\n };\n\n if (columnDef.Filter) {\n return <>{columnDef.Filter?.({ header, table })}</>;\n }\n\n return (\n <>\n <TextField\n fullWidth\n id={filterId}\n inputProps={{\n disabled: !!filterChipLabel,\n sx: {\n textOverflow: 'ellipsis',\n width: filterChipLabel ? 0 : undefined,\n },\n title: filterPlaceholder,\n }}\n helperText={\n 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 || isMultiSelectFilter\n ? undefined\n : filterPlaceholder\n }\n onChange={handleChange}\n onClick={(e: MouseEvent<HTMLInputElement>) => e.stopPropagation()}\n select={isSelectFilter || isMultiSelectFilter}\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={handleClearEmptyFilterChip}\n label={filterChipLabel}\n />\n )}\n </InputAdornment>\n ) : (\n <FilterListIcon style={{ marginRight: '4px' }} />\n ),\n endAdornment: !filterChipLabel && (\n <InputAdornment position=\"end\">\n <Tooltip\n arrow\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 SelectProps={{\n displayEmpty: true,\n multiple: isMultiSelectFilter,\n renderValue: isMultiSelectFilter\n ? (selected: any) =>\n !selected?.length ? (\n <Box sx={{ opacity: 0.5 }}>{filterPlaceholder}</Box>\n ) : (\n <Box sx={{ display: 'flex', flexWrap: 'wrap', gap: '2px' }}>\n {(selected as string[])?.map((value) => (\n <Chip key={value} label={value} />\n ))}\n </Box>\n )\n : undefined,\n }}\n {...textFieldProps}\n sx={(theme) => ({\n p: 0,\n minWidth: !filterChipLabel ? '6rem' : 'auto',\n width: '100%',\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 || isMultiSelectFilter) && (\n <MenuItem divider disabled hidden value=\"\">\n <Box sx={{ opacity: 0.5 }}>{filterPlaceholder}</Box>\n </MenuItem>\n )}\n {columnDef?.filterSelectOptions?.map(\n (option: string | { text: string; value: string }) => {\n let value: string;\n let text: string;\n if (typeof option !== 'object') {\n value = option;\n text = option;\n } else {\n value = option.value;\n text = option.text;\n }\n return (\n <MenuItem key={value} value={value}>\n {isMultiSelectFilter && (\n <Checkbox\n checked={(\n (column.getFilterValue() ?? []) as string[]\n ).includes(value)}\n sx={{ mr: '0.5rem' }}\n />\n )}\n <ListItemText>{text}</ListItemText>\n </MenuItem>\n );\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} rangeFilterIndex={0} table={table} />\n <MRT_FilterTextField header={header} rangeFilterIndex={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 {['between', 'betweenInclusive', 'inNumberRange'].includes(\n currentFilterFns[column.id],\n ) ? (\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 isRangeFilter = [\n 'between',\n 'betweenInclusive',\n 'inNumberRange',\n ].includes(columnDef._filterFn);\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 `\" ${isRangeFilter ? localization.and : localization.or} \"`,\n )\n : (column.getFilterValue() as string)\n }\"`,\n )\n .replace('\" \"', '');\n\n return (\n <Grow\n unmountOnExit\n in={\n (!!column.getFilterValue() && isRangeFilter) ||\n (!isRangeFilter && // @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 {\n density,\n currentDraggingColumn,\n currentHoveredColumn,\n showColumnFilters,\n } = 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 ? '0.5rem'\n : density === 'comfortable'\n ? columnDefType === 'display'\n ? '0.75rem'\n : '1rem'\n : columnDefType === 'display'\n ? '1rem 1.25rem'\n : '1.5rem',\n pb:\n columnDefType === 'display'\n ? 0\n : showColumnFilters\n ? '0.5rem'\n : 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 enablePagination,\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 ===\n (enablePagination\n ? table.getRowModel()\n : table.getPrePaginationRowModel()\n ).rows.length -\n 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 { useVirtualizer, Virtualizer } from '@tanstack/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: Virtualizer = enableRowVirtualization\n ? useVirtualizer({\n estimateSize: () => (density === 'compact' ? 25 : 50),\n overscan: density === 'compact' ? 30 : 10,\n getScrollElement: () => tableContainerRef.current as HTMLDivElement,\n count: rows.length,\n ...virtualizerProps,\n })\n : ({} as any);\n\n const virtualRows = enableRowVirtualization\n ? rowVirtualizer.getVirtualItems()\n : [];\n\n let paddingTop = 0;\n let paddingBottom = 0;\n if (enableRowVirtualization) {\n paddingTop = !!virtualRows.length ? virtualRows[0].start : 0;\n paddingBottom = !!virtualRows.length\n ? rowVirtualizer.getTotalSize() - 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 {/* @ts-ignore */}\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 getDefaultColumnFilterFn,\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 getDefaultColumnFilterFn(col),\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 //@ts-ignore\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 { VirtualizerOptions } from '@tanstack/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, unknown>,\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 columnFilterModeOptions?: MRT_FilterOption[] | null;\n columns?: MRT_ColumnDef<TData>[];\n enableClickToCopy?: boolean;\n enableColumnActions?: boolean;\n enableColumnDragging?: boolean;\n enableColumnFilterChangeMode?: boolean;\n enableColumnOrdering?: boolean;\n enableEditing?: boolean;\n filterFn?: MRT_FilterFn<TData>;\n filterSelectOptions?: (string | { text: string; value: string })[];\n filterVariant?: 'text' | 'select' | 'multi-select' | 'range';\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 rangeFilterIndex,\n }: {\n table: MRT_TableInstance<TData>;\n column: MRT_Column<TData>;\n rangeFilterIndex?: number;\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 _filterFn: MRT_FilterOption;\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 = LiteralUnion<\n string & keyof typeof MRT_SortingFns\n>;\n\nexport type MRT_SortingFn<TData extends Record<string, any> = {}> =\n | SortingFn<TData>\n | MRT_SortingOption;\n\nexport type MRT_FilterOption = LiteralUnion<\n string & keyof typeof MRT_FilterFns\n>;\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 columnFilterModeOptions?: (MRT_FilterOption | string)[] | null;\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 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 rangeFilterIndex,\n }: {\n table: MRT_TableInstance<TData>;\n column: MRT_Column<TData>;\n rangeFilterIndex?: number;\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<\n VirtualizerOptions<HTMLDivElement, HTMLTableRowElement>\n >;\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 = false,\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 = false,\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","filterArrIncludes","filterArrIncludesAll","filterArrIncludesSome","filterBetween","filterBetweenInclusive","filterByColumn","filterContains","filterEmpty","filterEndsWith","filterEquals","filterEqualsString","filterFuzzy","filterGreaterThan","filterGreaterThanOrEqualTo","filterInNumberRange","filterIncludesString","filterIncludesStringSensitive","filterLessThan","filterLessThanOrEqualTo","filterMode","filterNotEmpty","filterNotEquals","filterStartsWith","filterWeakEquals","filteringByColumn","grab","groupByColumn","groupedBy","hideAll","hideColumn","max","min","move","or","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","mt","undefined","style","transform","transition","MRT_ExpandButton","row","muiExpandButtonProps","handleToggleExpand","toggleExpanded","getCanExpand","theme","getIsExpanded","internalFilterOptions","option","symbol","label","divider","MRT_FilterOptionMenu","anchorEl","header","onSelect","setAnchorEl","enabledGlobalFilterOptions","columnFilterModeOptions","setCurrentFilterFns","setCurrentGlobalFilterFn","currentFilterFns","currentGlobalFilterFn","column","columnDef","allowedColumnFilterOptions","filterOptions","useMemo","filter","filterOption","includes","handleSelectFilterType","prev","id","setFilterValue","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","_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","getDefaultColumnFilterFn","filterVariant","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_GlobalFilterTextField","setGlobalFilter","enableGlobalFilterChangeMode","muiSearchTextFieldProps","globalFilter","showGlobalFilter","searchValue","setSearchValue","handleChangeDebounced","useCallback","debounce","target","handleChange","handleGlobalFilterMenuOpen","handleClear","textFieldProps","Collapse","orientation","TextField","placeholder","variant","InputProps","startAdornment","InputAdornment","position","marginRight","endAdornment","MRT_LinearProgressBar","isTopToolbar","muiLinearProgressProps","isLoading","showProgressBars","linearProgressProps","mountOnEnter","unmountOnExit","bottom","top","LinearProgress","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","zIndex","MRT_ToolbarAlertBanner","stackAlertBanner","getSelectedRowModel","muiTableToolbarAlertBannerProps","grouping","showAlertBanner","alertProps","selectMessage","groupedByMessage","Fragment","Chip","getColumn","onDelete","timeout","Alert","icon","borderRadius","left","right","AlertTitle","children","MRT_FullScreenToggleButton","rest","setIsFullScreen","isFullScreen","handleToggleFullScreen","MRT_ShowHideColumnsButton","handleClick","MRT_ToggleDensePaddingButton","setDensity","handleToggleDensePadding","nextDensity","MRT_ToggleFiltersButton","showColumnFilters","handleToggleShowFilters","MRT_ToggleGlobalFilterButton","setShowGlobalFilter","handleToggleSearch","MRT_ToolbarInternalButtons","enableDensityToggle","enableFilters","enableFullScreenToggle","enableGlobalFilter","positionGlobalFilter","renderToolbarInternalActions","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","rangeFilterIndex","mTableHeadCellFilterTextFieldProps","mcTableHeadCellFilterTextFieldProps","isRangeFilter","isMultiSelectFilter","isTextboxFilter","currentFilterOption","filterId","filterChipLabel","charAt","toUpperCase","slice","filterPlaceholder","showChangeModeButton","type","Date","newFilterValues","handleClearEmptyFilterChip","handleFilterMenuOpen","Filter","fullWidth","textOverflow","helperText","htmlFor","FormHelperTextProps","lineHeight","whiteSpace","margin","displayEmpty","multiple","renderValue","mr","hidden","text","ListItemText","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","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","useVirtualizer","estimateSize","overscan","getScrollElement","virtualRows","getVirtualItems","paddingTop","paddingBottom","start","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/inputs/MRT_GlobalFilterTextField.tsx","../src/toolbar/MRT_LinearProgressBar.tsx","../src/toolbar/MRT_TablePagination.tsx","../src/toolbar/MRT_ToolbarAlertBanner.tsx","../src/buttons/MRT_FullScreenToggleButton.tsx","../src/buttons/MRT_ShowHideColumnsButton.tsx","../src/buttons/MRT_ToggleDensePaddingButton.tsx","../src/buttons/MRT_ToggleFiltersButton.tsx","../src/buttons/MRT_ToggleGlobalFilterButton.tsx","../src/toolbar/MRT_ToolbarInternalButtons.tsx","../src/toolbar/MRT_ToolbarDropZone.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 dropToGroupBy: string;\n edit: string;\n expand: string;\n expandAll: string;\n filterArrIncludes: string;\n filterArrIncludesAll: string;\n filterArrIncludesSome: string;\n filterBetween: string;\n filterBetweenInclusive: string;\n filterByColumn: string;\n filterContains: string;\n filterEmpty: string;\n filterEndsWith: string;\n filterEquals: string;\n filterEqualsString: string;\n filterFuzzy: string;\n filterGreaterThan: string;\n filterGreaterThanOrEqualTo: string;\n filterInNumberRange: string;\n filterIncludesString: string;\n filterIncludesStringSensitive: string;\n filterLessThan: string;\n filterLessThanOrEqualTo: string;\n filterMode: string;\n filterNotEmpty: string;\n filterNotEquals: string;\n filterStartsWith: string;\n filterWeakEquals: 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 or: 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 dropToGroupBy: 'Drop to group by {column}',\n edit: 'Edit',\n expand: 'Expand',\n expandAll: 'Expand all',\n filterArrIncludes: 'Includes',\n filterArrIncludesAll: 'Includes all',\n filterArrIncludesSome: 'Includes',\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 filterEqualsString: 'Equals',\n filterFuzzy: 'Fuzzy',\n filterGreaterThan: 'Greater Than',\n filterGreaterThanOrEqualTo: 'Greater Than Or Equal To',\n filterInNumberRange: 'Between',\n filterIncludesString: 'Contains',\n filterIncludesStringSensitive: 'Contains',\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 filterWeakEquals: 'Equals',\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 or: 'or',\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 mt: density !== 'compact' ? '-0.25rem' : undefined,\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 '..';\nimport { MRT_Localization } from '../localization';\n\nexport const internalFilterOptions = (\n localization: MRT_Localization,\n): {\n option: string;\n symbol: string;\n label: string;\n divider: boolean;\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];\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 columnFilterModeOptions,\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?.columnFilterModeOptions ?? columnFilterModeOptions;\n\n const filterOptions = useMemo(\n () =>\n internalFilterOptions(localization).filter((filterOption) =>\n columnDef\n ? allowedColumnFilterOptions === undefined ||\n allowedColumnFilterOptions?.includes(filterOption.option)\n : (!enabledGlobalFilterOptions ||\n enabledGlobalFilterOptions.includes(filterOption.option)) &&\n ['fuzzy', 'contains'].includes(filterOption.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 as string)) {\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 as MRT_FilterOption)}\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 // @ts-ignore\n MRT_FilterFns[currentFilterFns[columnDef.id]] ?? MRT_FilterFns.fuzzy;\n //@ts-ignore\n columnDef._filterFn = currentFilterFns[columnDef.id];\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\nexport const getDefaultColumnFilterFn = <\n TData extends Record<string, any> = {},\n>(\n columnDef: MRT_ColumnDef<TData>,\n): MRT_FilterOption => {\n if (columnDef.filterVariant === 'multi-select') return 'arrIncludesSome';\n if (columnDef.filterVariant === 'select') return 'equals';\n if (columnDef.filterVariant === 'range') return 'betweenInclusive';\n return 'fuzzy';\n};\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 columnFilterModeOptions,\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: any) => ['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?.columnFilterModeOptions ?? columnFilterModeOptions;\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 style={{ transform: 'rotate(180deg) scaleX(-1)' }} />\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 />\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.75rem' : '2.5rem',\n width: density === 'compact' ? '1.75rem' : '2.5rem',\n m: density !== 'compact' ? '-0.4rem' : undefined,\n ...(checkboxProps?.sx instanceof Function\n ? checkboxProps.sx(theme)\n : (checkboxProps?.sx as any)),\n })}\n />\n </Tooltip>\n );\n};\n","import React, {\n ChangeEvent,\n FC,\n MouseEvent,\n useCallback,\n useState,\n} from 'react';\nimport {\n Collapse,\n debounce,\n IconButton,\n InputAdornment,\n TextField,\n Tooltip,\n} from '@mui/material';\nimport { MRT_FilterOptionMenu } from '../menus/MRT_FilterOptionMenu';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n 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 style={{ marginRight: '4px' }} />\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 { 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, { 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 { 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, { 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, { DragEvent, FC } from 'react';\nimport { alpha, Box, Fade, Typography } from '@mui/material';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n table: MRT_TableInstance;\n}\n\nexport const MRT_ToolbarDropZone: FC<Props> = ({ table }) => {\n const {\n getState,\n options: { enableGrouping, localization },\n setCurrentHoveredColumn,\n } = table;\n\n const { currentDraggingColumn, currentHoveredColumn } = getState();\n\n const handleDragEnter = (_event: DragEvent<HTMLDivElement>) => {\n setCurrentHoveredColumn({ id: 'drop-zone' });\n };\n\n return (\n <Fade\n unmountOnExit\n mountOnEnter\n in={!!enableGrouping && !!currentDraggingColumn}\n >\n <Box\n sx={(theme) => ({\n alignItems: 'center',\n backgroundColor: alpha(\n theme.palette.info.main,\n currentHoveredColumn?.id === 'drop-zone' ? 0.2 : 0.1,\n ),\n border: `dashed ${theme.palette.info.main} 2px`,\n display: 'flex',\n justifyContent: 'center',\n height: 'calc(100% - 4px)',\n position: 'absolute',\n width: 'calc(100% - 4px)',\n zIndex: 2,\n })}\n onDragEnter={handleDragEnter}\n >\n <Typography>\n {localization.dropToGroupBy.replace(\n '{column}',\n currentDraggingColumn?.columnDef?.header ?? '',\n )}\n </Typography>\n </Box>\n </Fade>\n );\n};\n","import React, { FC } from 'react';\nimport { Box, lighten, Theme, Toolbar, useMediaQuery } from '@mui/material';\nimport { MRT_GlobalFilterTextField } from '../inputs/MRT_GlobalFilterTextField';\nimport { MRT_LinearProgressBar } from './MRT_LinearProgressBar';\nimport { MRT_TableInstance } from '..';\nimport { MRT_TablePagination } from './MRT_TablePagination';\nimport { MRT_ToolbarAlertBanner } from './MRT_ToolbarAlertBanner';\nimport { MRT_ToolbarInternalButtons } from './MRT_ToolbarInternalButtons';\nimport { MRT_ToolbarDropZone } from './MRT_ToolbarDropZone';\n\nexport const commonToolbarStyles = ({ theme }: { theme: Theme }) => ({\n alignItems: 'flex-start',\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 positionToolbarDropZone,\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 || !!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 {['both', 'top'].includes(positionToolbarDropZone ?? '') && (\n <MRT_ToolbarDropZone table={table} />\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 '..';\nimport { MRT_ToolbarDropZone } from './MRT_ToolbarDropZone';\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 positionToolbarDropZone,\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 = isMobile || !!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 {['both', 'bottom'].includes(positionToolbarDropZone ?? '') && (\n <MRT_ToolbarDropZone 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 Box,\n Checkbox,\n Chip,\n debounce,\n IconButton,\n InputAdornment,\n ListItemText,\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 rangeFilterIndex?: number;\n table: MRT_TableInstance;\n}\n\nexport const MRT_FilterTextField: FC<Props> = ({\n header,\n rangeFilterIndex,\n table,\n}) => {\n const {\n getState,\n options: {\n enableColumnFilterChangeMode,\n columnFilterModeOptions,\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 mTableHeadCellFilterTextFieldProps =\n muiTableHeadCellFilterTextFieldProps instanceof Function\n ? muiTableHeadCellFilterTextFieldProps({\n column,\n table,\n rangeFilterIndex,\n })\n : muiTableHeadCellFilterTextFieldProps;\n\n const mcTableHeadCellFilterTextFieldProps =\n columnDef.muiTableHeadCellFilterTextFieldProps instanceof Function\n ? columnDef.muiTableHeadCellFilterTextFieldProps({\n column,\n table,\n rangeFilterIndex,\n })\n : columnDef.muiTableHeadCellFilterTextFieldProps;\n\n const textFieldProps = {\n ...mTableHeadCellFilterTextFieldProps,\n ...mcTableHeadCellFilterTextFieldProps,\n } as TextFieldProps;\n\n const isRangeFilter =\n columnDef.filterVariant === 'range' || rangeFilterIndex !== undefined;\n const isSelectFilter = columnDef.filterVariant === 'select';\n const isMultiSelectFilter = columnDef.filterVariant === 'multi-select';\n const isTextboxFilter =\n columnDef.filterVariant === 'text' ||\n (!isSelectFilter && !isMultiSelectFilter);\n\n const currentFilterOption = currentFilterFns?.[header.id];\n const filterId = `mrt-${tableId}-${header.id}-filter-text-field${\n rangeFilterIndex ?? ''\n }`;\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 = !isRangeFilter\n ? localization.filterByColumn?.replace('{column}', String(columnDef.header))\n : rangeFilterIndex === 0\n ? localization.min\n : rangeFilterIndex === 1\n ? localization.max\n : '';\n const allowedColumnFilterOptions =\n columnDef?.columnFilterModeOptions ?? columnFilterModeOptions;\n const showChangeModeButton =\n enableColumnFilterChangeMode &&\n columnDef.enableColumnFilterChangeMode !== false &&\n !rangeFilterIndex &&\n (allowedColumnFilterOptions === undefined ||\n !!allowedColumnFilterOptions?.length);\n\n const [anchorEl, setAnchorEl] = useState<null | HTMLElement>(null);\n const [filterValue, setFilterValue] = useState<string | string[]>(() =>\n isMultiSelectFilter\n ? (column.getFilterValue() as string[]) || []\n : isRangeFilter\n ? (column.getFilterValue() as [string, string])?.[\n rangeFilterIndex as number\n ] || []\n : (column.getFilterValue() as string) ?? '',\n );\n\n const handleChangeDebounced = useCallback(\n debounce(\n (event: ChangeEvent<HTMLInputElement>) => {\n let value =\n textFieldProps.type === 'date'\n ? new Date(event.target.value)\n : event.target.value;\n if (isRangeFilter) {\n column.setFilterValue((old: [string, string | Date]) => {\n const newFilterValues = old ?? ['', ''];\n newFilterValues[rangeFilterIndex as number] = value;\n return newFilterValues;\n });\n } else {\n column.setFilterValue(value ?? undefined);\n }\n },\n isTextboxFilter ? 200 : 1,\n ),\n [],\n );\n\n const handleChange = (event: ChangeEvent<HTMLInputElement>) => {\n setFilterValue(event.target.value);\n handleChangeDebounced(event);\n };\n\n const handleClear = () => {\n if (isMultiSelectFilter) {\n setFilterValue([]);\n column.setFilterValue([]);\n } else if (isRangeFilter) {\n setFilterValue('');\n column.setFilterValue((old: [string | undefined, string | undefined]) => {\n const newFilterValues = old ?? ['', ''];\n newFilterValues[rangeFilterIndex as number] = undefined;\n return newFilterValues;\n });\n } else {\n setFilterValue('');\n column.setFilterValue(undefined);\n }\n };\n\n const handleClearEmptyFilterChip = () => {\n setFilterValue('');\n column.setFilterValue(undefined);\n setCurrentFilterFns((prev) => ({\n ...prev,\n [header.id]: 'fuzzy',\n }));\n };\n\n const handleFilterMenuOpen = (event: MouseEvent<HTMLElement>) => {\n setAnchorEl(event.currentTarget);\n };\n\n if (columnDef.Filter) {\n return <>{columnDef.Filter?.({ header, table })}</>;\n }\n\n return (\n <>\n <TextField\n fullWidth\n id={filterId}\n inputProps={{\n disabled: !!filterChipLabel,\n sx: {\n textOverflow: 'ellipsis',\n width: filterChipLabel ? 0 : undefined,\n },\n title: filterPlaceholder,\n }}\n helperText={\n 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 || isMultiSelectFilter\n ? undefined\n : filterPlaceholder\n }\n onChange={handleChange}\n onClick={(e: MouseEvent<HTMLInputElement>) => e.stopPropagation()}\n select={isSelectFilter || isMultiSelectFilter}\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={handleClearEmptyFilterChip}\n label={filterChipLabel}\n />\n )}\n </InputAdornment>\n ) : (\n <FilterListIcon style={{ marginRight: '4px' }} />\n ),\n endAdornment: !filterChipLabel && (\n <InputAdornment position=\"end\">\n <Tooltip\n arrow\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 SelectProps={{\n displayEmpty: true,\n multiple: isMultiSelectFilter,\n renderValue: isMultiSelectFilter\n ? (selected: any) =>\n !selected?.length ? (\n <Box sx={{ opacity: 0.5 }}>{filterPlaceholder}</Box>\n ) : (\n <Box sx={{ display: 'flex', flexWrap: 'wrap', gap: '2px' }}>\n {(selected as string[])?.map((value) => (\n <Chip key={value} label={value} />\n ))}\n </Box>\n )\n : undefined,\n }}\n {...textFieldProps}\n sx={(theme) => ({\n p: 0,\n minWidth: !filterChipLabel ? '6rem' : 'auto',\n width: '100%',\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 || isMultiSelectFilter) && (\n <MenuItem divider disabled hidden value=\"\">\n <Box sx={{ opacity: 0.5 }}>{filterPlaceholder}</Box>\n </MenuItem>\n )}\n {columnDef?.filterSelectOptions?.map(\n (option: string | { text: string; value: string }) => {\n let value: string;\n let text: string;\n if (typeof option !== 'object') {\n value = option;\n text = option;\n } else {\n value = option.value;\n text = option.text;\n }\n return (\n <MenuItem key={value} value={value}>\n {isMultiSelectFilter && (\n <Checkbox\n checked={(\n (column.getFilterValue() ?? []) as string[]\n ).includes(value)}\n sx={{ mr: '0.5rem' }}\n />\n )}\n <ListItemText>{text}</ListItemText>\n </MenuItem>\n );\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} rangeFilterIndex={0} table={table} />\n <MRT_FilterTextField header={header} rangeFilterIndex={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 {['between', 'betweenInclusive', 'inNumberRange'].includes(\n currentFilterFns[column.id],\n ) ? (\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 isRangeFilter = [\n 'between',\n 'betweenInclusive',\n 'inNumberRange',\n ].includes(columnDef._filterFn);\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 `\" ${isRangeFilter ? localization.and : localization.or} \"`,\n )\n : (column.getFilterValue() as string)\n }\"`,\n )\n .replace('\" \"', '');\n\n return (\n <Grow\n unmountOnExit\n in={\n (!!column.getFilterValue() && isRangeFilter) ||\n (!isRangeFilter && // @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 (currentHoveredColumn?.id === 'drop-zone') {\n column.toggleGrouping();\n } else if (\n enableColumnOrdering &&\n currentHoveredColumn &&\n currentHoveredColumn?.id !== currentDraggingColumn?.id\n ) {\n setColumnOrder(\n reorderColumn(column, currentHoveredColumn as MRT_Column, columnOrder),\n );\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 {\n density,\n currentDraggingColumn,\n currentHoveredColumn,\n showColumnFilters,\n } = 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 (enableGrouping && currentHoveredColumn?.id === 'drop-zone') {\n setCurrentHoveredColumn(null);\n }\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 ? '0.5rem'\n : density === 'comfortable'\n ? columnDefType === 'display'\n ? '0.75rem'\n : '1rem'\n : columnDefType === 'display'\n ? '1rem 1.25rem'\n : '1.5rem',\n pb:\n columnDefType === 'display'\n ? 0\n : showColumnFilters\n ? '0.5rem'\n : 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 enableGrouping,\n enablePagination,\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 (enableGrouping && currentHoveredColumn?.id === 'drop-zone') {\n setCurrentHoveredColumn(null);\n }\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 ===\n (enablePagination\n ? table.getRowModel()\n : table.getPrePaginationRowModel()\n ).rows.length -\n 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 { useVirtualizer, Virtualizer } from '@tanstack/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: Virtualizer = enableRowVirtualization\n ? useVirtualizer({\n estimateSize: () => (density === 'compact' ? 25 : 50),\n overscan: density === 'compact' ? 30 : 10,\n getScrollElement: () => tableContainerRef.current as HTMLDivElement,\n count: rows.length,\n ...virtualizerProps,\n })\n : ({} as any);\n\n const virtualRows = enableRowVirtualization\n ? rowVirtualizer.getVirtualItems()\n : [];\n\n let paddingTop = 0;\n let paddingBottom = 0;\n if (enableRowVirtualization) {\n paddingTop = !!virtualRows.length ? virtualRows[0].start : 0;\n paddingBottom = !!virtualRows.length\n ? rowVirtualizer.getTotalSize() - 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 {/* @ts-ignore */}\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 getDefaultColumnFilterFn,\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] = useState<\n MRT_Column<TData> | { id: string } | null\n >(initialState.currentHoveredColumn ?? null);\n const [currentHoveredRow, setCurrentHoveredRow] = useState<\n MRT_Row<TData> | { id: string } | null\n >(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 getDefaultColumnFilterFn(col),\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 getSubRows: (row) => row?.subRows,\n ...props,\n //@ts-ignore\n columns: columnDefs,\n data,\n\n globalFilterFn:\n //@ts-ignore\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 { VirtualizerOptions } from '@tanstack/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<\n SetStateAction<MRT_Column<TData> | { id: string } | null>\n >;\n setCurrentHoveredRow: Dispatch<\n SetStateAction<MRT_Row<TData> | { id: string } | null>\n >;\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> | { id: string } | null;\n currentHoveredRow: MRT_Row<TData> | { id: string } | 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, unknown>,\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 columnFilterModeOptions?: MRT_FilterOption[] | null;\n columns?: MRT_ColumnDef<TData>[];\n enableClickToCopy?: boolean;\n enableColumnActions?: boolean;\n enableColumnDragging?: boolean;\n enableColumnFilterChangeMode?: boolean;\n enableColumnOrdering?: boolean;\n enableEditing?: boolean;\n filterFn?: MRT_FilterFn<TData>;\n filterSelectOptions?: (string | { text: string; value: string })[];\n filterVariant?: 'text' | 'select' | 'multi-select' | 'range';\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 rangeFilterIndex,\n }: {\n table: MRT_TableInstance<TData>;\n column: MRT_Column<TData>;\n rangeFilterIndex?: number;\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 _filterFn: MRT_FilterOption;\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 = LiteralUnion<\n string & keyof typeof MRT_SortingFns\n>;\n\nexport type MRT_SortingFn<TData extends Record<string, any> = {}> =\n | SortingFn<TData>\n | MRT_SortingOption;\n\nexport type MRT_FilterOption = LiteralUnion<\n string & keyof typeof MRT_FilterFns\n>;\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 columnFilterModeOptions?: (MRT_FilterOption | string)[] | null;\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 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 rangeFilterIndex,\n }: {\n table: MRT_TableInstance<TData>;\n column: MRT_Column<TData>;\n rangeFilterIndex?: number;\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> | { id: string } | 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> | { id: string } | 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' | 'none';\n positionToolbarDropZone?: 'bottom' | 'top' | 'none' | 'both';\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<\n VirtualizerOptions<HTMLDivElement, HTMLTableRowElement>\n >;\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 = false,\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 = false,\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 positionToolbarDropZone = '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 positionToolbarDropZone={positionToolbarDropZone}\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","dropToGroupBy","edit","expand","expandAll","filterArrIncludes","filterArrIncludesAll","filterArrIncludesSome","filterBetween","filterBetweenInclusive","filterByColumn","filterContains","filterEmpty","filterEndsWith","filterEquals","filterEqualsString","filterFuzzy","filterGreaterThan","filterGreaterThanOrEqualTo","filterInNumberRange","filterIncludesString","filterIncludesStringSensitive","filterLessThan","filterLessThanOrEqualTo","filterMode","filterNotEmpty","filterNotEquals","filterStartsWith","filterWeakEquals","filteringByColumn","grab","groupByColumn","groupedBy","hideAll","hideColumn","max","min","move","or","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","mt","undefined","style","transform","transition","MRT_ExpandButton","row","muiExpandButtonProps","handleToggleExpand","toggleExpanded","getCanExpand","theme","getIsExpanded","internalFilterOptions","option","symbol","label","divider","MRT_FilterOptionMenu","anchorEl","header","onSelect","setAnchorEl","enabledGlobalFilterOptions","columnFilterModeOptions","setCurrentFilterFns","setCurrentGlobalFilterFn","currentFilterFns","currentGlobalFilterFn","column","columnDef","allowedColumnFilterOptions","filterOptions","useMemo","filter","filterOption","includes","handleSelectFilterType","prev","id","setFilterValue","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","_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","getDefaultColumnFilterFn","filterVariant","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_GlobalFilterTextField","setGlobalFilter","enableGlobalFilterChangeMode","muiSearchTextFieldProps","globalFilter","showGlobalFilter","searchValue","setSearchValue","handleChangeDebounced","useCallback","debounce","target","handleChange","handleGlobalFilterMenuOpen","handleClear","textFieldProps","Collapse","orientation","TextField","placeholder","variant","InputProps","startAdornment","InputAdornment","position","marginRight","endAdornment","MRT_LinearProgressBar","isTopToolbar","muiLinearProgressProps","isLoading","showProgressBars","linearProgressProps","mountOnEnter","unmountOnExit","bottom","top","LinearProgress","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","zIndex","MRT_ToolbarAlertBanner","stackAlertBanner","getSelectedRowModel","muiTableToolbarAlertBannerProps","grouping","showAlertBanner","alertProps","selectMessage","groupedByMessage","Fragment","Chip","getColumn","onDelete","timeout","Alert","icon","borderRadius","left","right","AlertTitle","children","MRT_FullScreenToggleButton","rest","setIsFullScreen","isFullScreen","handleToggleFullScreen","MRT_ShowHideColumnsButton","handleClick","MRT_ToggleDensePaddingButton","setDensity","handleToggleDensePadding","nextDensity","MRT_ToggleFiltersButton","showColumnFilters","handleToggleShowFilters","MRT_ToggleGlobalFilterButton","setShowGlobalFilter","handleToggleSearch","MRT_ToolbarInternalButtons","enableDensityToggle","enableFilters","enableFullScreenToggle","enableGlobalFilter","positionGlobalFilter","renderToolbarInternalActions","MRT_ToolbarDropZone","currentDraggingColumn","_event","Fade","alpha","info","border","commonToolbarStyles","lighten","background","backgroundImage","minHeight","overflow","MRT_ToolbarTop","enablePagination","muiTableToolbarTopProps","positionPagination","positionToolbarAlertBanner","positionToolbarDropZone","renderToolbarTopCustomActions","isMobile","useMediaQuery","toolbarProps","Toolbar","boxSizing","MRT_ToolbarBottom","muiTableToolbarBottomProps","renderToolbarBottomCustomActions","boxShadow","common","black","MRT_TableHeadCellColumnActionsButton","muiTableHeadCellColumnActionsButtonProps","mTableHeadCellColumnActionsButtonProps","mcTableHeadCellColumnActionsButtonProps","MRT_FilterTextField","rangeFilterIndex","mTableHeadCellFilterTextFieldProps","mcTableHeadCellFilterTextFieldProps","isRangeFilter","isMultiSelectFilter","isTextboxFilter","currentFilterOption","filterId","filterChipLabel","charAt","toUpperCase","slice","filterPlaceholder","showChangeModeButton","type","Date","newFilterValues","handleClearEmptyFilterChip","handleFilterMenuOpen","Filter","fullWidth","textOverflow","helperText","htmlFor","FormHelperTextProps","lineHeight","whiteSpace","margin","displayEmpty","multiple","renderValue","mr","hidden","text","ListItemText","MRT_FilterRangeFields","gridTemplateColumns","MRT_TableHeadCellFilterContainer","MRT_TableHeadCellFilterLabel","filterTooltip","isArray","join","Grow","MRT_TableHeadCellGrabHandle","tableHeadCellRef","muiTableHeadCellDragHandleProps","onColumnDrop","setCurrentDraggingColumn","mIconButtonProps","mcIconButtonProps","MRT_TableHeadCellResizeHandle","columnResizeMode","flexItem","onDoubleClick","borderRightWidth","touchAction","getIsResizing","userSelect","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","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","textField","borderBottom","getRowModel","mode","darken","getIsPlaceholder","Skeleton","animation","Cell","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","useVirtualizer","estimateSize","overscan","getScrollElement","virtualRows","getVirtualItems","paddingTop","paddingBottom","start","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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"}