material-react-table 0.24.1 → 0.25.0

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