material-react-table 0.28.0 → 0.29.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.cjs.development.js","sources":["../src/localization.ts","../src/icons.ts","../src/buttons/MRT_ExpandAllButton.tsx","../src/buttons/MRT_ExpandButton.tsx","../src/menus/MRT_FilterOptionMenu.tsx","../src/buttons/MRT_ColumnPinningButtons.tsx","../src/buttons/MRT_GrabHandleButton.tsx","../src/filtersFns.ts","../src/sortingFns.ts","../src/column.utils.ts","../src/menus/MRT_ShowHideColumnsMenuItems.tsx","../src/menus/MRT_ShowHideColumnsMenu.tsx","../src/menus/MRT_ColumnActionMenu.tsx","../src/menus/MRT_RowActionMenu.tsx","../src/buttons/MRT_EditActionButtons.tsx","../src/buttons/MRT_ToggleRowActionMenuButton.tsx","../src/inputs/MRT_SelectCheckbox.tsx","../src/inputs/MRT_GlobalFilterTextField.tsx","../src/toolbar/MRT_LinearProgressBar.tsx","../src/toolbar/MRT_TablePagination.tsx","../src/toolbar/MRT_ToolbarAlertBanner.tsx","../src/buttons/MRT_FullScreenToggleButton.tsx","../src/buttons/MRT_ShowHideColumnsButton.tsx","../src/buttons/MRT_ToggleDensePaddingButton.tsx","../src/buttons/MRT_ToggleFiltersButton.tsx","../src/buttons/MRT_ToggleGlobalFilterButton.tsx","../src/toolbar/MRT_ToolbarInternalButtons.tsx","../src/toolbar/MRT_ToolbarTop.tsx","../src/toolbar/MRT_ToolbarBottom.tsx","../src/head/MRT_TableHeadCellColumnActionsButton.tsx","../src/inputs/MRT_FilterTextField.tsx","../src/inputs/MRT_FilterRangeFields.tsx","../src/head/MRT_TableHeadCellFilterContainer.tsx","../src/head/MRT_TableHeadCellFilterLabel.tsx","../src/head/MRT_TableHeadCellGrabHandle.tsx","../src/head/MRT_TableHeadCellResizeHandle.tsx","../src/head/MRT_TableHeadCellSortLabel.tsx","../src/head/MRT_TableHeadCell.tsx","../src/head/MRT_TableHeadRow.tsx","../src/head/MRT_TableHead.tsx","../src/inputs/MRT_EditCellTextField.tsx","../src/buttons/MRT_CopyButton.tsx","../src/body/MRT_TableBodyRowGrabHandle.tsx","../src/body/MRT_TableBodyCell.tsx","../src/body/MRT_TableDetailPanel.tsx","../src/body/MRT_TableBodyRow.tsx","../src/body/MRT_TableBody.tsx","../src/footer/MRT_TableFooterCell.tsx","../src/footer/MRT_TableFooterRow.tsx","../src/footer/MRT_TableFooter.tsx","../src/table/MRT_Table.tsx","../src/table/MRT_TableContainer.tsx","../src/table/MRT_TablePaper.tsx","../src/table/MRT_TableRoot.tsx","../src/MaterialReactTable.tsx"],"sourcesContent":["export interface MRT_Localization {\n actions: string;\n and: string;\n cancel: string;\n changeFilterMode: string;\n changeSearchMode: string;\n clearFilter: string;\n clearSearch: string;\n clearSort: string;\n clickToCopy: string;\n columnActions: string;\n copiedToClipboard: string;\n edit: string;\n expand: string;\n expandAll: string;\n filterBetween: string;\n filterBetweenInclusive: string;\n filterByColumn: string;\n filterContains: string;\n filterEmpty: string;\n filterEndsWith: string;\n filterEquals: string;\n filterFuzzy: string;\n filterGreaterThan: string;\n filterGreaterThanOrEqualTo: string;\n filterLessThan: string;\n filterLessThanOrEqualTo: string;\n filterMode: string;\n filterNotEmpty: string;\n filterNotEquals: string;\n filterStartsWith: string;\n filteringByColumn: string;\n grab: string;\n groupByColumn: string;\n groupedBy: string;\n hideAll: string;\n hideColumn: string;\n max: string;\n min: string;\n move: string;\n pinToLeft: string;\n pinToRight: string;\n resetColumnSize: string;\n resetOrder: string;\n rowActions: string;\n rowNumber: string;\n rowNumbers: string;\n save: string;\n search: string;\n select: string;\n selectedCountOfRowCountRowsSelected: string;\n showAll: string;\n showAllColumns: string;\n showHideColumns: string;\n showHideFilters: string;\n showHideSearch: string;\n sortByColumnAsc: string;\n sortByColumnDesc: string;\n sortedByColumnAsc: string;\n sortedByColumnDesc: string;\n thenBy: string;\n toggleDensity: string;\n toggleFullScreen: string;\n toggleSelectAll: string;\n toggleSelectRow: string;\n toggleVisibility: string;\n ungroupByColumn: string;\n unpin: string;\n unpinAll: string;\n unsorted: string;\n}\n\nexport const MRT_DefaultLocalization_EN: MRT_Localization = {\n actions: 'Actions',\n and: 'and',\n cancel: 'Cancel',\n changeFilterMode: 'Change filter mode',\n changeSearchMode: 'Change search mode',\n clearFilter: 'Clear filter',\n clearSearch: 'Clear search',\n clearSort: 'Clear sort',\n clickToCopy: 'Click to copy',\n columnActions: 'Column Actions',\n copiedToClipboard: 'Copied to clipboard',\n edit: 'Edit',\n expand: 'Expand',\n expandAll: 'Expand all',\n filterBetween: 'Between',\n filterBetweenInclusive: 'Between Inclusive',\n filterByColumn: 'Filter by {column}',\n filterContains: 'Contains',\n filterEmpty: 'Empty',\n filterEndsWith: 'Ends With',\n filterEquals: 'Equals',\n filterFuzzy: 'Fuzzy',\n filterGreaterThan: 'Greater Than',\n filterGreaterThanOrEqualTo: 'Greater Than Or Equal To',\n filterLessThan: 'Less Than',\n filterLessThanOrEqualTo: 'Less Than Or Equal To',\n filterMode: 'Filter Mode: {filterType}',\n filterNotEmpty: 'Not Empty',\n filterNotEquals: 'Not Equals',\n filterStartsWith: 'Starts With',\n filteringByColumn: 'Filtering by {column} - {filterType} {filterValue}',\n grab: 'Grab',\n groupByColumn: 'Group by {column}',\n groupedBy: 'Grouped by ',\n hideAll: 'Hide all',\n hideColumn: 'Hide {column} column',\n max: 'Max',\n min: 'Min',\n move: 'Move',\n pinToLeft: 'Pin to left',\n pinToRight: 'Pin to right',\n resetColumnSize: 'Reset column size',\n resetOrder: 'Reset order',\n rowActions: 'Row Actions',\n rowNumber: '#',\n rowNumbers: 'Row Numbers',\n save: 'Save',\n search: 'Search',\n selectedCountOfRowCountRowsSelected:\n '{selectedCount} of {rowCount} row(s) selected',\n select: 'Select',\n showAll: 'Show all',\n showAllColumns: 'Show all columns',\n showHideColumns: 'Show/Hide columns',\n showHideFilters: 'Show/Hide filters',\n showHideSearch: 'Show/Hide search',\n sortByColumnAsc: 'Sort by {column} ascending',\n sortByColumnDesc: 'Sort by {column} descending',\n sortedByColumnAsc: 'Sorted by {column} ascending',\n sortedByColumnDesc: 'Sorted by {column} descending',\n thenBy: ', then by ',\n toggleDensity: 'Toggle density',\n toggleFullScreen: 'Toggle full screen',\n toggleSelectAll: 'Toggle select all',\n toggleSelectRow: 'Toggle select row',\n toggleVisibility: 'Toggle visibility',\n ungroupByColumn: 'Ungroup by {column}',\n unpin: 'Unpin',\n unpinAll: 'Unpin all',\n unsorted: 'Unsorted',\n};\n","import {\n ArrowRight,\n Cancel,\n CheckBox,\n ClearAll,\n Close,\n DensityLarge,\n DensityMedium,\n DensitySmall,\n DragHandle,\n DynamicFeed,\n Edit,\n ExpandLess,\n ExpandMore,\n FilterAlt,\n FilterAltOff,\n FilterList,\n FilterListOff,\n Fullscreen,\n FullscreenExit,\n KeyboardDoubleArrowDown,\n MoreHoriz,\n MoreVert,\n PushPin,\n RestartAlt,\n Save,\n Search,\n SearchOff,\n Sort,\n ViewColumn,\n VisibilityOff,\n} from '@mui/icons-material';\n\nexport interface MRT_Icons {\n ArrowRightIcon: any;\n CancelIcon: any;\n CheckBoxIcon: any;\n ClearAllIcon: any;\n CloseIcon: any;\n DensityLargeIcon: any;\n DensityMediumIcon: any;\n DensitySmallIcon: any;\n KeyboardDoubleArrowDownIcon: any;\n DragHandleIcon: any;\n DynamicFeedIcon: any;\n EditIcon: any;\n ExpandLessIcon: any;\n ExpandMoreIcon: any;\n FilterAltIcon: any;\n FilterAltOffIcon: any;\n FilterListIcon: any;\n FilterListOffIcon: any;\n FullscreenExitIcon: any;\n FullscreenIcon: any;\n MoreHorizIcon: any;\n MoreVertIcon: any;\n PushPinIcon: any;\n RestartAltIcon: any;\n SaveIcon: any;\n SearchIcon: any;\n SearchOffIcon: any;\n SortIcon: any;\n ViewColumnIcon: any;\n VisibilityOffIcon: any;\n}\n\nexport const MRT_Default_Icons: MRT_Icons = {\n ArrowRightIcon: ArrowRight,\n CancelIcon: Cancel,\n CheckBoxIcon: CheckBox,\n ClearAllIcon: ClearAll,\n CloseIcon: Close,\n DensityLargeIcon: DensityLarge,\n DensityMediumIcon: DensityMedium,\n DensitySmallIcon: DensitySmall,\n DragHandleIcon: DragHandle,\n DynamicFeedIcon: DynamicFeed,\n EditIcon: Edit,\n ExpandLessIcon: ExpandLess,\n ExpandMoreIcon: ExpandMore,\n FilterAltIcon: FilterAlt,\n FilterAltOffIcon: FilterAltOff,\n FilterListIcon: FilterList,\n FilterListOffIcon: FilterListOff,\n FullscreenExitIcon: FullscreenExit,\n FullscreenIcon: Fullscreen,\n KeyboardDoubleArrowDownIcon: KeyboardDoubleArrowDown,\n MoreHorizIcon: MoreHoriz,\n MoreVertIcon: MoreVert,\n PushPinIcon: PushPin,\n RestartAltIcon: RestartAlt,\n SaveIcon: Save,\n SearchIcon: Search,\n SearchOffIcon: SearchOff,\n SortIcon: Sort,\n ViewColumnIcon: ViewColumn,\n VisibilityOffIcon: VisibilityOff,\n};\n","import React, { FC } from 'react';\nimport { IconButton, Tooltip } from '@mui/material';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n table: MRT_TableInstance;\n}\n\nexport const MRT_ExpandAllButton: FC<Props> = ({ table }) => {\n const {\n getIsAllRowsExpanded,\n getIsSomeRowsExpanded,\n getCanSomeRowsExpand,\n getState,\n options: {\n icons: { KeyboardDoubleArrowDownIcon },\n localization,\n muiExpandAllButtonProps,\n renderDetailPanel,\n },\n toggleAllRowsExpanded,\n } = table;\n const { density } = getState();\n\n const iconButtonProps =\n muiExpandAllButtonProps instanceof Function\n ? muiExpandAllButtonProps({ table })\n : muiExpandAllButtonProps;\n\n return (\n <Tooltip\n arrow\n enterDelay={1000}\n enterNextDelay={1000}\n title={localization.expandAll}\n >\n <span>\n <IconButton\n aria-label={localization.expandAll}\n disabled={!getCanSomeRowsExpand() && !renderDetailPanel}\n onClick={() => toggleAllRowsExpanded(!getIsAllRowsExpanded())}\n {...iconButtonProps}\n sx={{\n height: density === 'compact' ? '1.75rem' : '2.25rem',\n width: density === 'compact' ? '1.75rem' : '2.25rem',\n mt: density !== 'compact' ? '-0.25rem' : undefined,\n ...iconButtonProps?.sx,\n }}\n >\n <KeyboardDoubleArrowDownIcon\n style={{\n transform: `rotate(${\n getIsAllRowsExpanded()\n ? -180\n : getIsSomeRowsExpanded()\n ? -90\n : 0\n }deg)`,\n transition: 'transform 0.2s',\n }}\n />\n </IconButton>\n </span>\n </Tooltip>\n );\n};\n","import React, { FC } from 'react';\nimport { IconButton, Tooltip } from '@mui/material';\nimport type { MRT_Row, MRT_TableInstance } from '..';\n\ninterface Props {\n row: MRT_Row;\n table: MRT_TableInstance;\n}\n\nexport const MRT_ExpandButton: FC<Props> = ({ row, table }) => {\n const {\n getState,\n options: {\n icons: { ExpandMoreIcon },\n localization,\n muiExpandButtonProps,\n renderDetailPanel,\n },\n } = table;\n const { density } = getState();\n\n const iconButtonProps =\n muiExpandButtonProps instanceof Function\n ? muiExpandButtonProps({ table, row })\n : muiExpandButtonProps;\n\n const handleToggleExpand = () => {\n row.toggleExpanded();\n };\n\n return (\n <Tooltip\n arrow\n enterDelay={1000}\n enterNextDelay={1000}\n title={localization.expand}\n >\n <span>\n <IconButton\n aria-label={localization.expand}\n disabled={!row.getCanExpand() && !renderDetailPanel}\n onClick={handleToggleExpand}\n {...iconButtonProps}\n sx={(theme) => ({\n height: density === 'compact' ? '1.75rem' : '2.25rem',\n width: density === 'compact' ? '1.75rem' : '2.25rem',\n ...(iconButtonProps?.sx instanceof Function\n ? iconButtonProps.sx(theme)\n : (iconButtonProps?.sx as any)),\n })}\n >\n <ExpandMoreIcon\n style={{\n transform: `rotate(${\n !row.getCanExpand() && !renderDetailPanel\n ? -90\n : row.getIsExpanded()\n ? -180\n : 0\n }deg)`,\n transition: 'transform 0.2s',\n }}\n />\n </IconButton>\n </span>\n </Tooltip>\n );\n};\n","import React, { FC, useMemo } from 'react';\nimport { Box, Menu, MenuItem } from '@mui/material';\nimport type { MRT_FilterOption, MRT_Header, MRT_TableInstance } from '..';\n\ninterface Props {\n anchorEl: HTMLElement | null;\n header?: MRT_Header;\n onSelect?: () => void;\n setAnchorEl: (anchorEl: HTMLElement | null) => void;\n table: MRT_TableInstance;\n}\n\nexport const MRT_FilterOptionMenu: FC<Props> = ({\n anchorEl,\n header,\n onSelect,\n setAnchorEl,\n table,\n}) => {\n const {\n getState,\n options: {\n enabledGlobalFilterOptions,\n columnFilterModeOptions,\n localization,\n },\n setCurrentFilterFns,\n setCurrentGlobalFilterFn,\n } = table;\n const { currentFilterFns, currentGlobalFilterFn, density } = getState();\n const { column } = header ?? {};\n const { columnDef } = column ?? {};\n\n const allowedColumnFilterOptions =\n columnDef?.columnFilterModeOptions ?? columnFilterModeOptions;\n\n const filterOptions = useMemo(\n () =>\n (\n [\n {\n option: 'fuzzy',\n symbol: '≈',\n label: localization.filterFuzzy,\n divider: false,\n },\n {\n option: 'contains',\n symbol: '*',\n label: localization.filterContains,\n divider: false,\n },\n {\n option: 'startsWith',\n symbol: 'a',\n label: localization.filterStartsWith,\n divider: false,\n },\n {\n option: 'endsWith',\n symbol: 'z',\n label: localization.filterEndsWith,\n divider: true,\n },\n {\n option: 'equals',\n symbol: '=',\n label: localization.filterEquals,\n divider: false,\n },\n {\n option: 'notEquals',\n symbol: '≠',\n label: localization.filterNotEquals,\n divider: true,\n },\n {\n option: 'between',\n symbol: '⇿',\n label: localization.filterBetween,\n divider: false,\n },\n {\n option: 'betweenInclusive',\n symbol: '⬌',\n label: localization.filterBetweenInclusive,\n divider: true,\n },\n {\n option: 'greaterThan',\n symbol: '>',\n label: localization.filterGreaterThan,\n divider: false,\n },\n {\n option: 'greaterThanOrEqualTo',\n symbol: '≥',\n label: localization.filterGreaterThanOrEqualTo,\n divider: false,\n },\n {\n option: 'lessThan',\n symbol: '<',\n label: localization.filterLessThan,\n divider: false,\n },\n {\n option: 'lessThanOrEqualTo',\n symbol: '≤',\n label: localization.filterLessThanOrEqualTo,\n divider: true,\n },\n {\n option: 'empty',\n symbol: '∅',\n label: localization.filterEmpty,\n divider: false,\n },\n {\n option: 'notEmpty',\n symbol: '!∅',\n label: localization.filterNotEmpty,\n divider: false,\n },\n ] as Array<{\n divider: boolean;\n fn: Function;\n label: string;\n option: MRT_FilterOption;\n symbol?: string;\n }>\n ).filter((filterType) =>\n columnDef\n ? allowedColumnFilterOptions === undefined ||\n allowedColumnFilterOptions?.includes(filterType.option)\n : (!enabledGlobalFilterOptions ||\n enabledGlobalFilterOptions.includes(filterType.option)) &&\n ['fuzzy', 'contains'].includes(filterType.option),\n ),\n [],\n );\n\n const handleSelectFilterType = (option: MRT_FilterOption) => {\n if (header && column) {\n setCurrentFilterFns((prev: { [key: string]: any }) => ({\n ...prev,\n [header.id]: option,\n }));\n if (['empty', 'notEmpty'].includes(option)) {\n column.setFilterValue(' ');\n } else if (option === 'between') {\n column.setFilterValue(['', '']);\n } else {\n column.setFilterValue('');\n }\n } else {\n setCurrentGlobalFilterFn(option);\n }\n setAnchorEl(null);\n onSelect?.();\n };\n\n const filterOption = !!header\n ? currentFilterFns[header.id]\n : currentGlobalFilterFn;\n\n return (\n <Menu\n anchorEl={anchorEl}\n anchorOrigin={{ vertical: 'center', horizontal: 'right' }}\n onClose={() => setAnchorEl(null)}\n open={!!anchorEl}\n MenuListProps={{\n dense: density === 'compact',\n }}\n >\n {filterOptions.map(({ option, label, divider, symbol }, index) => (\n <MenuItem\n divider={divider}\n key={index}\n onClick={() => handleSelectFilterType(option)}\n selected={option === filterOption}\n sx={{\n py: '6px',\n my: 0,\n alignItems: 'center',\n display: 'flex',\n gap: '2ch',\n }}\n value={option}\n >\n <Box sx={{ fontSize: '1.25rem', width: '2ch' }}>{symbol}</Box>\n {label}\n </MenuItem>\n ))}\n </Menu>\n );\n};\n","import React, { FC } from 'react';\nimport { Box, IconButton, Tooltip } from '@mui/material';\nimport type { MRT_Column, MRT_TableInstance } from '..';\n\ninterface Props {\n column: MRT_Column;\n table: MRT_TableInstance;\n}\n\nexport const MRT_ColumnPinningButtons: FC<Props> = ({ column, table }) => {\n const {\n options: {\n icons: { PushPinIcon },\n localization,\n },\n } = table;\n\n const handlePinColumn = (pinDirection: 'left' | 'right' | false) => {\n column.pin(pinDirection);\n };\n\n return (\n <Box sx={{ minWidth: '70px', textAlign: 'center' }}>\n {column.getIsPinned() ? (\n <Tooltip arrow title={localization.unpin}>\n <IconButton onClick={() => handlePinColumn(false)} size=\"small\">\n <PushPinIcon />\n </IconButton>\n </Tooltip>\n ) : (\n <>\n <Tooltip arrow title={localization.pinToLeft}>\n <IconButton onClick={() => handlePinColumn('left')} size=\"small\">\n <PushPinIcon\n style={{\n transform: 'rotate(90deg)',\n }}\n />\n </IconButton>\n </Tooltip>\n <Tooltip arrow title={localization.pinToRight}>\n <IconButton onClick={() => handlePinColumn('right')} size=\"small\">\n <PushPinIcon\n style={{\n transform: 'rotate(-90deg)',\n }}\n />\n </IconButton>\n </Tooltip>\n </>\n )}\n </Box>\n );\n};\n","import { IconButton, IconButtonProps, Tooltip } from '@mui/material';\nimport React, { DragEventHandler, FC } from 'react';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n iconButtonProps?: IconButtonProps;\n onDragStart: DragEventHandler<HTMLButtonElement>;\n onDragEnd: DragEventHandler<HTMLButtonElement>;\n table: MRT_TableInstance;\n}\n\nexport const MRT_GrabHandleButton: FC<Props> = ({\n iconButtonProps,\n onDragEnd,\n onDragStart,\n table,\n}) => {\n const {\n options: {\n icons: { DragHandleIcon },\n localization,\n },\n } = table;\n\n return (\n <Tooltip\n arrow\n enterDelay={1000}\n enterNextDelay={1000}\n placement=\"top\"\n title={localization.move}\n >\n <IconButton\n disableRipple\n draggable=\"true\"\n onDragStart={onDragStart}\n onDragEnd={onDragEnd}\n size=\"small\"\n {...iconButtonProps}\n sx={{\n cursor: 'grab',\n m: 0,\n opacity: 0.5,\n p: '2px',\n transition: 'all 0.2s ease-in-out',\n '&:hover': {\n backgroundColor: 'transparent',\n opacity: 1,\n },\n '&:active': {\n cursor: 'grabbing',\n },\n ...iconButtonProps?.sx,\n }}\n >\n <DragHandleIcon />\n </IconButton>\n </Tooltip>\n );\n};\n","import { rankItem, rankings, RankingInfo } from '@tanstack/match-sorter-utils';\nimport { filterFns, Row } from '@tanstack/react-table';\n\nconst fuzzy = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n columnId: string,\n filterValue: string | number,\n addMeta: (item: RankingInfo) => void,\n) => {\n const itemRank = rankItem(row.getValue(columnId), filterValue as string, {\n threshold: rankings.MATCHES,\n });\n addMeta(itemRank);\n return itemRank.passed;\n};\n\nfuzzy.autoRemove = (val: any) => !val;\n\nconst contains = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n id: string,\n filterValue: string | number,\n) =>\n row\n .getValue<string | number>(id)\n .toString()\n .toLowerCase()\n .trim()\n .includes(filterValue.toString().toLowerCase().trim());\n\ncontains.autoRemove = (val: any) => !val;\n\nconst startsWith = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n id: string,\n filterValue: string | number,\n) =>\n row\n .getValue<string | number>(id)\n .toString()\n .toLowerCase()\n .trim()\n .startsWith(filterValue.toString().toLowerCase().trim());\n\nstartsWith.autoRemove = (val: any) => !val;\n\nconst endsWith = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n id: string,\n filterValue: string | number,\n) =>\n row\n .getValue<string | number>(id)\n .toString()\n .toLowerCase()\n .trim()\n .endsWith(filterValue.toString().toLowerCase().trim());\n\nendsWith.autoRemove = (val: any) => !val;\n\nconst equals = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n id: string,\n filterValue: string | number,\n) =>\n row.getValue<string | number>(id).toString().toLowerCase().trim() ===\n filterValue.toString().toLowerCase().trim();\n\nequals.autoRemove = (val: any) => !val;\n\nconst notEquals = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n id: string,\n filterValue: string | number,\n) =>\n row.getValue<string | number>(id).toString().toLowerCase().trim() !==\n filterValue.toString().toLowerCase().trim();\n\nnotEquals.autoRemove = (val: any) => !val;\n\nconst greaterThan = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n id: string,\n filterValue: string | number,\n) =>\n !isNaN(+filterValue) && !isNaN(+row.getValue<string | number>(id))\n ? +row.getValue<string | number>(id) > +filterValue\n : row.getValue<string | number>(id).toString().toLowerCase().trim() >\n filterValue.toString().toLowerCase().trim();\n\ngreaterThan.autoRemove = (val: any) => !val;\n\nconst greaterThanOrEqualTo = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n id: string,\n filterValue: string | number,\n) => equals(row, id, filterValue) || greaterThan(row, id, filterValue);\n\ngreaterThanOrEqualTo.autoRemove = (val: any) => !val;\n\nconst lessThan = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n id: string,\n filterValue: string | number,\n) =>\n !isNaN(+filterValue) && !isNaN(+row.getValue<string | number>(id))\n ? +row.getValue<string | number>(id) < +filterValue\n : row.getValue<string | number>(id).toString().toLowerCase().trim() <\n filterValue.toString().toLowerCase().trim();\n\nlessThan.autoRemove = (val: any) => !val;\n\nconst lessThanOrEqualTo = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n id: string,\n filterValue: string | number,\n) => equals(row, id, filterValue) || lessThan(row, id, filterValue);\n\nlessThanOrEqualTo.autoRemove = (val: any) => !val;\n\nconst between = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n id: string,\n filterValues: [string | number, string | number],\n) =>\n ((['', undefined] as any[]).includes(filterValues[0]) ||\n greaterThan(row, id, filterValues[0])) &&\n ((!isNaN(+filterValues[0]) &&\n !isNaN(+filterValues[1]) &&\n +filterValues[0] > +filterValues[1]) ||\n (['', undefined] as any[]).includes(filterValues[1]) ||\n lessThan(row, id, filterValues[1]));\n\nbetween.autoRemove = (val: any) => !val;\n\nconst betweenInclusive = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n id: string,\n filterValues: [string | number, string | number],\n) =>\n ((['', undefined] as any[]).includes(filterValues[0]) ||\n greaterThanOrEqualTo(row, id, filterValues[0])) &&\n ((!isNaN(+filterValues[0]) &&\n !isNaN(+filterValues[1]) &&\n +filterValues[0] > +filterValues[1]) ||\n (['', undefined] as any[]).includes(filterValues[1]) ||\n lessThanOrEqualTo(row, id, filterValues[1]));\n\nbetweenInclusive.autoRemove = (val: any) => !val;\n\nconst empty = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n id: string,\n _filterValue: string | number,\n) => !row.getValue<string | number>(id).toString().trim();\n\nempty.autoRemove = (val: any) => !val;\n\nconst notEmpty = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n id: string,\n _filterValue: string | number,\n) => !!row.getValue<string | number>(id).toString().trim();\n\nnotEmpty.autoRemove = (val: any) => !val;\n\nexport const MRT_FilterFns = {\n ...filterFns,\n between,\n betweenInclusive,\n contains,\n empty,\n endsWith,\n equals,\n fuzzy,\n greaterThan,\n greaterThanOrEqualTo,\n lessThan,\n lessThanOrEqualTo,\n notEmpty,\n notEquals,\n startsWith,\n};\n","import { compareItems, RankingInfo } from '@tanstack/match-sorter-utils';\nimport { Row, sortingFns } from '@tanstack/react-table';\nimport { MRT_Row } from '.';\n\nconst fuzzy = <TData extends Record<string, any> = {}>(\n rowA: Row<TData>,\n rowB: Row<TData>,\n columnId: string,\n) => {\n let dir = 0;\n if (rowA.columnFiltersMeta[columnId]) {\n dir = compareItems(\n rowA.columnFiltersMeta[columnId]! as RankingInfo,\n rowB.columnFiltersMeta[columnId]! as RankingInfo,\n );\n }\n // Provide a fallback for when the item ranks are equal\n return dir === 0\n ? sortingFns.alphanumeric(rowA as Row<any>, rowB as Row<any>, columnId)\n : dir;\n};\n\nexport const MRT_SortingFns = {\n ...sortingFns,\n fuzzy,\n};\n\nexport const rankGlobalFuzzy = <TData extends Record<string, any> = {}>(\n rowA: MRT_Row<TData>,\n rowB: MRT_Row<TData>,\n) =>\n Math.max(...Object.values(rowB.columnFiltersMeta).map((v: any) => v.rank)) -\n Math.max(...Object.values(rowA.columnFiltersMeta).map((v: any) => v.rank));\n","import { ColumnOrderState } from '@tanstack/react-table';\nimport {\n MaterialReactTableProps,\n MRT_Column,\n MRT_ColumnDef,\n MRT_DefinedColumnDef,\n MRT_DisplayColumnIds,\n MRT_FilterOption,\n} from '.';\nimport { MRT_FilterFns } from './filtersFns';\nimport { MRT_SortingFns } from './sortingFns';\n\nconst getColumnId = <TData extends Record<string, any> = {}>(\n columnDef: MRT_ColumnDef<TData>,\n): string =>\n columnDef.id ?? columnDef.accessorKey?.toString?.() ?? columnDef.header;\n\nexport const getAllLeafColumnDefs = <TData extends Record<string, any> = {}>(\n columns: MRT_ColumnDef<TData>[],\n): MRT_ColumnDef<TData>[] => {\n let lowestLevelColumns: MRT_ColumnDef<TData>[] = columns;\n let currentCols: MRT_ColumnDef<TData>[] | undefined = columns;\n while (!!currentCols?.length && currentCols.some((col) => col.columns)) {\n const nextCols: MRT_ColumnDef<TData>[] = currentCols\n .filter((col) => !!col.columns)\n .map((col) => col.columns)\n .flat() as MRT_ColumnDef<TData>[];\n if (nextCols.every((col) => !col?.columns)) {\n lowestLevelColumns = [...lowestLevelColumns, ...nextCols];\n }\n currentCols = nextCols;\n }\n return lowestLevelColumns.filter((col) => !col.columns);\n};\n\nexport const prepareColumns = <TData extends Record<string, any> = {}>(\n columnDefs: MRT_ColumnDef<TData>[],\n currentFilterFns: { [key: string]: MRT_FilterOption },\n): MRT_DefinedColumnDef<TData>[] =>\n columnDefs.map((columnDef) => {\n if (!columnDef.id) columnDef.id = getColumnId(columnDef);\n if (process.env.NODE_ENV !== 'production' && !columnDef.id) {\n console.error(\n 'Column definitions must have a valid `accessorKey` or `id` property',\n );\n }\n if (!columnDef.columnDefType) columnDef.columnDefType = 'data';\n if (!!columnDef.columns?.length) {\n columnDef.columnDefType = 'group';\n columnDef.columns = prepareColumns(columnDef.columns, currentFilterFns);\n } else if (columnDef.columnDefType === 'data') {\n if (Object.keys(MRT_FilterFns).includes(currentFilterFns[columnDef.id])) {\n columnDef.filterFn =\n MRT_FilterFns[currentFilterFns[columnDef.id]] ?? MRT_FilterFns.fuzzy;\n }\n if (Object.keys(MRT_SortingFns).includes(columnDef.sortingFn as string)) {\n // @ts-ignore\n columnDef.sortingFn = MRT_SortingFns[columnDef.sortingFn];\n }\n }\n return columnDef;\n }) as MRT_DefinedColumnDef<TData>[];\n\nexport const reorderColumn = <TData extends Record<string, any> = {}>(\n draggedColumn: MRT_Column<TData>,\n targetColumn: MRT_Column<TData>,\n columnOrder: ColumnOrderState,\n): ColumnOrderState => {\n if (draggedColumn.getCanPin()) {\n draggedColumn.pin(targetColumn.getIsPinned());\n }\n columnOrder.splice(\n columnOrder.indexOf(targetColumn.id),\n 0,\n columnOrder.splice(columnOrder.indexOf(draggedColumn.id), 1)[0],\n );\n return [...columnOrder];\n};\n\nexport const getLeadingDisplayColumnIds = <\n TData extends Record<string, any> = {},\n>(\n props: MaterialReactTableProps<TData>,\n) =>\n [\n (props.enableRowDragging || props.enableRowOrdering) && 'mrt-row-drag',\n ((props.positionActionsColumn === 'first' && props.enableRowActions) ||\n (props.enableEditing && props.editingMode === 'row')) &&\n 'mrt-row-actions',\n props.positionExpandColumn === 'first' &&\n (props.enableExpanding ||\n props.enableGrouping ||\n props.renderDetailPanel) &&\n 'mrt-row-expand',\n props.enableRowSelection && 'mrt-row-select',\n props.enableRowNumbers && 'mrt-row-numbers',\n ].filter(Boolean) as MRT_DisplayColumnIds[];\n\nexport const getTrailingDisplayColumnIds = <\n TData extends Record<string, any> = {},\n>(\n props: MaterialReactTableProps<TData>,\n) => [\n ((props.positionActionsColumn === 'last' && props.enableRowActions) ||\n (props.enableEditing && props.editingMode === 'row')) &&\n 'mrt-row-actions',\n props.positionExpandColumn === 'last' &&\n (props.enableExpanding ||\n props.enableGrouping ||\n props.renderDetailPanel) &&\n 'mrt-row-expand',\n];\n\nexport const getDefaultColumnOrderIds = <\n TData extends Record<string, any> = {},\n>(\n props: MaterialReactTableProps<TData>,\n) =>\n [\n ...getLeadingDisplayColumnIds(props),\n ...getAllLeafColumnDefs(props.columns).map((columnDef) =>\n getColumnId(columnDef),\n ),\n ...getTrailingDisplayColumnIds(props),\n ].filter(Boolean) as string[];\n","import React, {\n Dispatch,\n DragEvent,\n FC,\n SetStateAction,\n useState,\n} from 'react';\nimport {\n Box,\n FormControlLabel,\n MenuItem,\n Switch,\n Tooltip,\n Typography,\n} from '@mui/material';\nimport { MRT_ColumnPinningButtons } from '../buttons/MRT_ColumnPinningButtons';\nimport { MRT_GrabHandleButton } from '../buttons/MRT_GrabHandleButton';\nimport { reorderColumn } from '../column.utils';\nimport type { MRT_Column, MRT_TableInstance } from '..';\n\ninterface Props {\n allColumns: MRT_Column[];\n column: MRT_Column;\n currentHoveredColumn: MRT_Column | null;\n isSubMenu?: boolean;\n setCurrentHoveredColumn: Dispatch<SetStateAction<MRT_Column | null>>;\n table: MRT_TableInstance;\n}\n\nexport const MRT_ShowHideColumnsMenuItems: FC<Props> = ({\n allColumns,\n currentHoveredColumn,\n setCurrentHoveredColumn,\n column,\n isSubMenu,\n table,\n}) => {\n const {\n getState,\n options: {\n enableColumnOrdering,\n enableHiding,\n enablePinning,\n localization,\n },\n setColumnOrder,\n } = table;\n const { columnOrder } = getState();\n const { columnDef } = column;\n const { columnDefType } = columnDef;\n\n const switchChecked =\n (columnDefType !== 'group' && column.getIsVisible()) ||\n (columnDefType === 'group' &&\n column.getLeafColumns().some((col) => col.getIsVisible()));\n\n const handleToggleColumnHidden = (column: MRT_Column) => {\n if (columnDefType === 'group') {\n column?.columns?.forEach?.((childColumn: MRT_Column) => {\n childColumn.toggleVisibility(!switchChecked);\n });\n } else {\n column.toggleVisibility();\n }\n };\n\n const menuItemRef = React.useRef<HTMLElement>(null);\n\n const [isDragging, setIsDragging] = useState(false);\n\n const handleDragStart = (e: DragEvent<HTMLButtonElement>) => {\n setIsDragging(true);\n e.dataTransfer.setDragImage(menuItemRef.current as HTMLElement, 0, 0);\n };\n\n const handleDragEnd = (_e: DragEvent<HTMLButtonElement>) => {\n setIsDragging(false);\n setCurrentHoveredColumn(null);\n if (currentHoveredColumn) {\n setColumnOrder(reorderColumn(column, currentHoveredColumn, columnOrder));\n }\n };\n\n const handleDragEnter = (_e: DragEvent) => {\n if (!isDragging) {\n setCurrentHoveredColumn(column);\n }\n };\n\n return (\n <>\n <MenuItem\n disableRipple\n ref={menuItemRef as any}\n onDragEnter={handleDragEnter}\n sx={(theme) => ({\n alignItems: 'center',\n justifyContent: 'flex-start',\n my: 0,\n opacity: isDragging ? 0.5 : 1,\n outline: isDragging\n ? `1px dashed ${theme.palette.divider}`\n : currentHoveredColumn?.id === column.id\n ? `2px dashed ${theme.palette.primary.main}`\n : 'none',\n pl: `${(column.depth + 0.5) * 2}rem`,\n py: '6px',\n })}\n >\n <Box\n sx={{\n display: 'flex',\n flexWrap: 'nowrap',\n gap: '8px',\n }}\n >\n {!isSubMenu &&\n columnDefType !== 'group' &&\n enableColumnOrdering &&\n !allColumns.some(\n (col) => col.columnDef.columnDefType === 'group',\n ) &&\n (columnDef.enableColumnOrdering !== false ? (\n <MRT_GrabHandleButton\n onDragEnd={handleDragEnd}\n onDragStart={handleDragStart}\n table={table}\n />\n ) : (\n <Box sx={{ width: '28px' }} />\n ))}\n {!isSubMenu &&\n enablePinning &&\n (column.getCanPin() ? (\n <MRT_ColumnPinningButtons column={column} table={table} />\n ) : (\n <Box sx={{ width: '70px' }} />\n ))}\n {enableHiding ? (\n <FormControlLabel\n componentsProps={{\n typography: {\n sx: {\n mb: 0,\n opacity: columnDefType !== 'display' ? 1 : 0.5,\n },\n },\n }}\n checked={switchChecked}\n control={\n <Tooltip\n arrow\n enterDelay={1000}\n enterNextDelay={1000}\n title={localization.toggleVisibility}\n >\n <Switch />\n </Tooltip>\n }\n disabled={\n (isSubMenu && switchChecked) ||\n !column.getCanHide() ||\n column.getIsGrouped()\n }\n label={columnDef.header}\n onChange={() => handleToggleColumnHidden(column)}\n />\n ) : (\n <Typography sx={{ alignSelf: 'center' }}>\n {columnDef.header}\n </Typography>\n )}\n </Box>\n </MenuItem>\n {column.columns?.map((c: MRT_Column, i) => (\n <MRT_ShowHideColumnsMenuItems\n allColumns={allColumns}\n column={c}\n currentHoveredColumn={currentHoveredColumn}\n isSubMenu={isSubMenu}\n key={`${i}-${c.id}`}\n setCurrentHoveredColumn={setCurrentHoveredColumn}\n table={table}\n />\n ))}\n </>\n );\n};\n","import React, { FC, useMemo, useState } from 'react';\nimport { Button, Menu, Divider, Box } from '@mui/material';\nimport { MRT_ShowHideColumnsMenuItems } from './MRT_ShowHideColumnsMenuItems';\nimport type { MRT_Column, MRT_TableInstance } from '..';\nimport { getDefaultColumnOrderIds } from '../column.utils';\n\ninterface Props {\n anchorEl: HTMLElement | null;\n isSubMenu?: boolean;\n setAnchorEl: (anchorEl: HTMLElement | null) => void;\n table: MRT_TableInstance;\n}\n\nexport const MRT_ShowHideColumnsMenu: FC<Props> = ({\n anchorEl,\n isSubMenu,\n setAnchorEl,\n table,\n}) => {\n const {\n getAllColumns,\n getAllLeafColumns,\n getCenterLeafColumns,\n getIsAllColumnsVisible,\n getIsSomeColumnsPinned,\n getIsSomeColumnsVisible,\n getLeftLeafColumns,\n getRightLeafColumns,\n getState,\n toggleAllColumnsVisible,\n options: { localization, enablePinning, enableColumnOrdering },\n } = table;\n const { density, columnOrder, columnPinning } = getState();\n\n const hideAllColumns = () => {\n getAllLeafColumns()\n .filter((col) => col.columnDef.enableHiding !== false)\n .forEach((col) => col.toggleVisibility(false));\n };\n\n const allColumns = useMemo(() => {\n const columns = getAllColumns();\n if (\n columnOrder.length > 0 &&\n !columns.some((col) => col.columnDef.columnDefType === 'group')\n ) {\n return [\n ...getLeftLeafColumns(),\n ...Array.from(new Set(columnOrder)).map((colId) =>\n getCenterLeafColumns().find((col) => col?.id === colId),\n ),\n ...getRightLeafColumns(),\n ].filter(Boolean);\n }\n return columns;\n }, [\n columnOrder,\n columnPinning,\n getAllColumns(),\n getCenterLeafColumns(),\n getLeftLeafColumns(),\n getRightLeafColumns(),\n ]) as MRT_Column[];\n\n const [currentHoveredColumn, setCurrentHoveredColumn] =\n useState<MRT_Column | null>(null);\n\n return (\n <Menu\n anchorEl={anchorEl}\n open={!!anchorEl}\n onClose={() => setAnchorEl(null)}\n MenuListProps={{\n dense: density === 'compact',\n }}\n >\n <Box\n sx={{\n display: 'flex',\n justifyContent: isSubMenu ? 'center' : 'space-between',\n p: '0.5rem',\n pt: 0,\n }}\n >\n {!isSubMenu && (\n <Button\n disabled={!getIsSomeColumnsVisible()}\n onClick={hideAllColumns}\n >\n {localization.hideAll}\n </Button>\n )}\n {!isSubMenu && enableColumnOrdering && (\n <Button\n onClick={() =>\n table.setColumnOrder(\n getDefaultColumnOrderIds(table.options as any),\n )\n }\n >\n {localization.resetOrder}\n </Button>\n )}\n {!isSubMenu && enablePinning && (\n <Button\n disabled={!getIsSomeColumnsPinned()}\n onClick={() => table.resetColumnPinning(true)}\n >\n {localization.unpinAll}\n </Button>\n )}\n <Button\n disabled={getIsAllColumnsVisible()}\n onClick={() => toggleAllColumnsVisible(true)}\n >\n {localization.showAll}\n </Button>\n </Box>\n <Divider />\n {allColumns.map((column, index) => (\n <MRT_ShowHideColumnsMenuItems\n allColumns={allColumns}\n column={column}\n currentHoveredColumn={currentHoveredColumn}\n isSubMenu={isSubMenu}\n key={`${index}-${column.id}`}\n setCurrentHoveredColumn={setCurrentHoveredColumn}\n table={table}\n />\n ))}\n </Menu>\n );\n};\n","import React, { FC, useState } from 'react';\nimport { Box, IconButton, ListItemIcon, Menu, MenuItem } from '@mui/material';\nimport type { MRT_Header, MRT_TableInstance } from '..';\nimport { MRT_FilterOptionMenu } from './MRT_FilterOptionMenu';\nimport { MRT_ShowHideColumnsMenu } from './MRT_ShowHideColumnsMenu';\n\nexport const commonMenuItemStyles = {\n py: '6px',\n my: 0,\n justifyContent: 'space-between',\n alignItems: 'center',\n};\n\nexport const commonListItemStyles = {\n display: 'flex',\n alignItems: 'center',\n};\n\ninterface Props {\n anchorEl: HTMLElement | null;\n header: MRT_Header;\n setAnchorEl: (anchorEl: HTMLElement | null) => void;\n table: MRT_TableInstance;\n}\n\nexport const MRT_ColumnActionMenu: FC<Props> = ({\n anchorEl,\n header,\n setAnchorEl,\n table,\n}) => {\n const {\n getState,\n toggleAllColumnsVisible,\n setColumnOrder,\n options: {\n enableColumnFilterChangeMode,\n enableColumnFilters,\n enableColumnResizing,\n enableGrouping,\n enableHiding,\n enablePinning,\n enableSorting,\n columnFilterModeOptions,\n icons: {\n ArrowRightIcon,\n ClearAllIcon,\n ViewColumnIcon,\n DynamicFeedIcon,\n FilterListIcon,\n FilterListOffIcon,\n PushPinIcon,\n SortIcon,\n RestartAltIcon,\n VisibilityOffIcon,\n },\n tableId,\n localization,\n },\n setShowFilters,\n } = table;\n const { column } = header;\n const { columnDef } = column;\n const { columnSizing, columnVisibility, density } = getState();\n\n const [filterMenuAnchorEl, setFilterMenuAnchorEl] =\n useState<null | HTMLElement>(null);\n const [showHideColumnsMenuAnchorEl, setShowHideColumnsMenuAnchorEl] =\n useState<null | HTMLElement>(null);\n\n const handleClearSort = () => {\n column.clearSorting();\n setAnchorEl(null);\n };\n\n const handleSortAsc = () => {\n column.toggleSorting(false);\n setAnchorEl(null);\n };\n\n const handleSortDesc = () => {\n column.toggleSorting(true);\n setAnchorEl(null);\n };\n\n const handleResetColumnSize = () => {\n column.resetSize();\n setAnchorEl(null);\n };\n\n const handleHideColumn = () => {\n column.toggleVisibility(false);\n setAnchorEl(null);\n };\n\n const handlePinColumn = (pinDirection: 'left' | 'right' | false) => {\n column.pin(pinDirection);\n setAnchorEl(null);\n };\n\n const handleGroupByColumn = () => {\n column.toggleGrouping();\n setColumnOrder((old) => ['mrt-row-expand', ...old]);\n setAnchorEl(null);\n };\n\n const handleClearFilter = () => {\n column.setFilterValue('');\n setAnchorEl(null);\n };\n\n const handleFilterByColumn = () => {\n setShowFilters(true);\n setTimeout(\n () =>\n document\n .getElementById(\n // @ts-ignore\n header.muiTableHeadCellFilterTextFieldProps?.id ??\n `mrt-${tableId}-${header.id}-filter-text-field`,\n )\n ?.focus(),\n 200,\n );\n setAnchorEl(null);\n };\n\n const handleShowAllColumns = () => {\n toggleAllColumnsVisible(true);\n setAnchorEl(null);\n };\n\n const handleOpenFilterModeMenu = (event: React.MouseEvent<HTMLElement>) => {\n event.stopPropagation();\n setFilterMenuAnchorEl(event.currentTarget);\n };\n\n const handleOpenShowHideColumnsMenu = (\n event: React.MouseEvent<HTMLElement>,\n ) => {\n event.stopPropagation();\n setShowHideColumnsMenuAnchorEl(event.currentTarget);\n };\n\n const isSelectFilter = !!columnDef.filterSelectOptions;\n\n const allowedColumnFilterOptions =\n columnDef?.columnFilterModeOptions ?? columnFilterModeOptions;\n\n const showFilterModeSubMenu =\n enableColumnFilterChangeMode &&\n columnDef.enableColumnFilterChangeMode !== false &&\n !isSelectFilter &&\n (allowedColumnFilterOptions === undefined ||\n !!allowedColumnFilterOptions?.length);\n\n return (\n <Menu\n anchorEl={anchorEl}\n open={!!anchorEl}\n onClose={() => setAnchorEl(null)}\n MenuListProps={{\n dense: density === 'compact',\n }}\n >\n {enableSorting &&\n column.getCanSort() && [\n <MenuItem\n disabled={!column.getIsSorted()}\n key={0}\n onClick={handleClearSort}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <ClearAllIcon />\n </ListItemIcon>\n {localization.clearSort}\n </Box>\n </MenuItem>,\n <MenuItem\n disabled={column.getIsSorted() === 'asc'}\n key={1}\n onClick={handleSortAsc}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <SortIcon />\n </ListItemIcon>\n {localization.sortByColumnAsc?.replace(\n '{column}',\n String(columnDef.header),\n )}\n </Box>\n </MenuItem>,\n <MenuItem\n divider={enableColumnFilters || enableGrouping || enableHiding}\n key={2}\n disabled={column.getIsSorted() === 'desc'}\n onClick={handleSortDesc}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <SortIcon style={{ transform: 'rotate(180deg) scaleX(-1)' }} />\n </ListItemIcon>\n {localization.sortByColumnDesc?.replace(\n '{column}',\n String(columnDef.header),\n )}\n </Box>\n </MenuItem>,\n ]}\n {enableColumnFilters &&\n column.getCanFilter() &&\n [\n <MenuItem\n disabled={!column.getFilterValue()}\n key={0}\n onClick={handleClearFilter}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <FilterListOffIcon />\n </ListItemIcon>\n {localization.clearFilter}\n </Box>\n </MenuItem>,\n <MenuItem\n divider={enableGrouping || enableHiding}\n key={1}\n onClick={handleFilterByColumn}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <FilterListIcon />\n </ListItemIcon>\n {localization.filterByColumn?.replace(\n '{column}',\n String(columnDef.header),\n )}\n </Box>\n {showFilterModeSubMenu && (\n <IconButton\n onClick={handleOpenFilterModeMenu}\n onMouseEnter={handleOpenFilterModeMenu}\n size=\"small\"\n sx={{ p: 0 }}\n >\n <ArrowRightIcon />\n </IconButton>\n )}\n </MenuItem>,\n showFilterModeSubMenu && (\n <MRT_FilterOptionMenu\n anchorEl={filterMenuAnchorEl}\n header={header}\n key={2}\n onSelect={handleFilterByColumn}\n setAnchorEl={setFilterMenuAnchorEl}\n table={table}\n />\n ),\n ].filter(Boolean)}\n {enableGrouping &&\n column.getCanGroup() && [\n <MenuItem\n divider={enablePinning}\n key={0}\n onClick={handleGroupByColumn}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <DynamicFeedIcon />\n </ListItemIcon>\n {localization[\n column.getIsGrouped() ? 'ungroupByColumn' : 'groupByColumn'\n ]?.replace('{column}', String(columnDef.header))}\n </Box>\n </MenuItem>,\n ]}\n {enablePinning &&\n column.getCanPin() && [\n <MenuItem\n disabled={column.getIsPinned() === 'left' || !column.getCanPin()}\n key={0}\n onClick={() => handlePinColumn('left')}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <PushPinIcon style={{ transform: 'rotate(90deg)' }} />\n </ListItemIcon>\n {localization.pinToLeft}\n </Box>\n </MenuItem>,\n <MenuItem\n disabled={column.getIsPinned() === 'right' || !column.getCanPin()}\n key={1}\n onClick={() => handlePinColumn('right')}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <PushPinIcon style={{ transform: 'rotate(-90deg)' }} />\n </ListItemIcon>\n {localization.pinToRight}\n </Box>\n </MenuItem>,\n <MenuItem\n disabled={!column.getIsPinned()}\n divider={enableHiding}\n key={2}\n onClick={() => handlePinColumn(false)}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <PushPinIcon />\n </ListItemIcon>\n {localization.unpin}\n </Box>\n </MenuItem>,\n ]}\n {enableColumnResizing &&\n column.getCanResize() && [\n <MenuItem\n disabled={!columnSizing[column.id]}\n key={0}\n onClick={handleResetColumnSize}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <RestartAltIcon />\n </ListItemIcon>\n {localization.resetColumnSize}\n </Box>\n </MenuItem>,\n ]}\n {enableHiding && [\n <MenuItem\n disabled={columnDef.enableHiding === false}\n key={0}\n onClick={handleHideColumn}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <VisibilityOffIcon />\n </ListItemIcon>\n {localization.hideColumn?.replace(\n '{column}',\n String(columnDef.header),\n )}\n </Box>\n </MenuItem>,\n <MenuItem\n disabled={\n !Object.values(columnVisibility).filter((visible) => !visible)\n .length\n }\n key={1}\n onClick={handleShowAllColumns}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <ViewColumnIcon />\n </ListItemIcon>\n {localization.showAllColumns?.replace(\n '{column}',\n String(columnDef.header),\n )}\n </Box>\n <IconButton\n onClick={handleOpenShowHideColumnsMenu}\n onMouseEnter={handleOpenShowHideColumnsMenu}\n size=\"small\"\n sx={{ p: 0 }}\n >\n <ArrowRightIcon />\n </IconButton>\n </MenuItem>,\n <MRT_ShowHideColumnsMenu\n anchorEl={showHideColumnsMenuAnchorEl}\n isSubMenu\n key={2}\n setAnchorEl={setShowHideColumnsMenuAnchorEl}\n table={table}\n />,\n ]}\n </Menu>\n );\n};\n","import React, { FC } from 'react';\nimport { Box, ListItemIcon, Menu, MenuItem } from '@mui/material';\nimport type { MRT_Row, MRT_TableInstance } from '..';\nimport {\n commonListItemStyles,\n commonMenuItemStyles,\n} from './MRT_ColumnActionMenu';\n\ninterface Props {\n anchorEl: HTMLElement | null;\n handleEdit: () => void;\n row: MRT_Row;\n setAnchorEl: (anchorEl: HTMLElement | null) => void;\n table: MRT_TableInstance;\n}\n\nexport const MRT_RowActionMenu: FC<Props> = ({\n anchorEl,\n handleEdit,\n row,\n setAnchorEl,\n table,\n}) => {\n const {\n getState,\n options: {\n icons: { EditIcon },\n enableEditing,\n localization,\n renderRowActionMenuItems,\n },\n } = table;\n const { density } = getState();\n\n return (\n <Menu\n anchorEl={anchorEl}\n open={!!anchorEl}\n onClose={() => setAnchorEl(null)}\n MenuListProps={{\n dense: density === 'compact',\n }}\n >\n {enableEditing && (\n <MenuItem onClick={handleEdit} sx={commonMenuItemStyles}>\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <EditIcon />\n </ListItemIcon>\n {localization.edit}\n </Box>\n </MenuItem>\n )}\n {renderRowActionMenuItems?.({\n row,\n table,\n closeMenu: () => setAnchorEl(null),\n })}\n </Menu>\n );\n};\n","import React, { FC } from 'react';\nimport { Box, IconButton, Tooltip } from '@mui/material';\nimport type { MRT_Row, MRT_TableInstance } from '..';\n\ninterface Props {\n row: MRT_Row;\n table: MRT_TableInstance;\n}\n\nexport const MRT_EditActionButtons: FC<Props> = ({ row, table }) => {\n const {\n getState,\n options: {\n icons: { CancelIcon, SaveIcon },\n localization,\n onEditRowSubmit,\n },\n setCurrentEditingRow,\n } = table;\n const { currentEditingRow } = getState();\n\n const handleCancel = () => {\n row._valuesCache = row.original ?? {};\n setCurrentEditingRow(null);\n };\n\n const handleSave = () => {\n onEditRowSubmit?.({ row: currentEditingRow ?? row, table });\n setCurrentEditingRow(null);\n };\n\n return (\n <Box sx={{ display: 'flex', gap: '0.75rem' }}>\n <Tooltip arrow title={localization.cancel}>\n <IconButton aria-label={localization.cancel} onClick={handleCancel}>\n <CancelIcon />\n </IconButton>\n </Tooltip>\n <Tooltip arrow title={localization.save}>\n <IconButton\n aria-label={localization.save}\n color=\"info\"\n onClick={handleSave}\n >\n <SaveIcon />\n </IconButton>\n </Tooltip>\n </Box>\n );\n};\n","import React, { FC, MouseEvent, useState } from 'react';\nimport { IconButton, Tooltip } from '@mui/material';\nimport { MRT_RowActionMenu } from '../menus/MRT_RowActionMenu';\nimport { MRT_EditActionButtons } from './MRT_EditActionButtons';\nimport type { MRT_Row, MRT_TableInstance } from '..';\n\nconst commonIconButtonStyles = {\n height: '2rem',\n ml: '10px',\n opacity: 0.5,\n transition: 'opacity 0.2s',\n width: '2rem',\n '&:hover': {\n opacity: 1,\n },\n};\n\ninterface Props {\n row: MRT_Row;\n table: MRT_TableInstance;\n}\n\nexport const MRT_ToggleRowActionMenuButton: FC<Props> = ({ row, table }) => {\n const {\n getState,\n options: {\n enableEditing,\n icons: { EditIcon, MoreHorizIcon },\n localization,\n renderRowActionMenuItems,\n renderRowActions,\n },\n setCurrentEditingRow,\n } = table;\n\n const { currentEditingRow } = getState();\n\n const [anchorEl, setAnchorEl] = useState<null | HTMLElement>(null);\n\n const handleOpenRowActionMenu = (event: MouseEvent<HTMLElement>) => {\n event.stopPropagation();\n event.preventDefault();\n setAnchorEl(event.currentTarget);\n };\n\n const handleStartEditMode = () => {\n setCurrentEditingRow({ ...row });\n setAnchorEl(null);\n };\n\n return (\n <>\n {renderRowActions ? (\n <>{renderRowActions({ row, table })}</>\n ) : row.id === currentEditingRow?.id ? (\n <MRT_EditActionButtons row={row} table={table} />\n ) : !renderRowActionMenuItems && enableEditing ? (\n <Tooltip placement=\"right\" arrow title={localization.edit}>\n <IconButton sx={commonIconButtonStyles} onClick={handleStartEditMode}>\n <EditIcon />\n </IconButton>\n </Tooltip>\n ) : renderRowActionMenuItems ? (\n <>\n <Tooltip\n arrow\n enterDelay={1000}\n enterNextDelay={1000}\n title={localization.rowActions}\n >\n <IconButton\n aria-label={localization.rowActions}\n onClick={handleOpenRowActionMenu}\n size=\"small\"\n sx={commonIconButtonStyles}\n >\n <MoreHorizIcon />\n </IconButton>\n </Tooltip>\n <MRT_RowActionMenu\n anchorEl={anchorEl}\n handleEdit={handleStartEditMode}\n row={row}\n setAnchorEl={setAnchorEl}\n table={table}\n />\n </>\n ) : null}\n </>\n );\n};\n","import React, { FC } from 'react';\nimport { Checkbox, Tooltip } from '@mui/material';\nimport type { MRT_Row, MRT_TableInstance } from '..';\n\ninterface Props {\n row?: MRT_Row;\n selectAll?: boolean;\n table: MRT_TableInstance;\n}\n\nexport const MRT_SelectCheckbox: FC<Props> = ({ row, selectAll, table }) => {\n const {\n getState,\n options: {\n localization,\n muiSelectCheckboxProps,\n muiSelectAllCheckboxProps,\n selectAllMode,\n },\n } = table;\n const { density } = getState();\n\n const checkboxProps = !row\n ? muiSelectAllCheckboxProps instanceof Function\n ? muiSelectAllCheckboxProps({ table })\n : muiSelectAllCheckboxProps\n : muiSelectCheckboxProps instanceof Function\n ? muiSelectCheckboxProps({ row, table })\n : muiSelectCheckboxProps;\n\n return (\n <Tooltip\n arrow\n enterDelay={1000}\n enterNextDelay={1000}\n title={\n selectAll ? localization.toggleSelectAll : localization.toggleSelectRow\n }\n >\n <Checkbox\n checked={\n selectAll ? table.getIsAllRowsSelected() : row?.getIsSelected()\n }\n indeterminate={\n selectAll ? table.getIsSomeRowsSelected() : row?.getIsSomeSelected()\n }\n inputProps={{\n 'aria-label': selectAll\n ? localization.toggleSelectAll\n : localization.toggleSelectRow,\n }}\n onChange={\n !row\n ? selectAllMode === 'all'\n ? table.getToggleAllRowsSelectedHandler()\n : table.getToggleAllPageRowsSelectedHandler()\n : row.getToggleSelectedHandler()\n }\n size={density === 'compact' ? 'small' : 'medium'}\n {...checkboxProps}\n sx={(theme) => ({\n height: density === 'compact' ? '1.75rem' : '2.5rem',\n width: density === 'compact' ? '1.75rem' : '2.5rem',\n m: density !== 'compact' ? '-0.4rem' : undefined,\n ...(checkboxProps?.sx instanceof Function\n ? checkboxProps.sx(theme)\n : (checkboxProps?.sx as any)),\n })}\n />\n </Tooltip>\n );\n};\n","import React, {\n ChangeEvent,\n FC,\n MouseEvent,\n useCallback,\n useState,\n} from 'react';\nimport {\n Collapse,\n debounce,\n IconButton,\n InputAdornment,\n TextField,\n Tooltip,\n} from '@mui/material';\nimport { MRT_FilterOptionMenu } from '../menus/MRT_FilterOptionMenu';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n table: MRT_TableInstance;\n}\n\nexport const MRT_GlobalFilterTextField: FC<Props> = ({ table }) => {\n const {\n getState,\n setGlobalFilter,\n options: {\n enableGlobalFilterChangeMode,\n icons: { SearchIcon, CloseIcon },\n localization,\n muiSearchTextFieldProps,\n tableId,\n },\n } = table;\n const { globalFilter, showGlobalFilter } = getState();\n\n const [anchorEl, setAnchorEl] = useState<null | HTMLElement>(null);\n const [searchValue, setSearchValue] = useState(globalFilter ?? '');\n\n const handleChangeDebounced = useCallback(\n debounce((event: ChangeEvent<HTMLInputElement>) => {\n setGlobalFilter(event.target.value ?? undefined);\n }, 250),\n [],\n );\n\n const handleChange = (event: ChangeEvent<HTMLInputElement>) => {\n setSearchValue(event.target.value);\n handleChangeDebounced(event);\n };\n\n const handleGlobalFilterMenuOpen = (event: MouseEvent<HTMLElement>) => {\n setAnchorEl(event.currentTarget);\n };\n\n const handleClear = () => {\n setSearchValue('');\n setGlobalFilter(undefined);\n };\n\n const textFieldProps =\n muiSearchTextFieldProps instanceof Function\n ? muiSearchTextFieldProps({ table })\n : muiSearchTextFieldProps;\n\n return (\n <Collapse in={showGlobalFilter} orientation=\"horizontal\">\n <TextField\n id={`mrt-${tableId}-search-text-field`}\n placeholder={localization.search}\n onChange={handleChange}\n value={searchValue ?? ''}\n variant=\"standard\"\n InputProps={{\n startAdornment: enableGlobalFilterChangeMode ? (\n <InputAdornment position=\"start\">\n <Tooltip arrow title={localization.changeSearchMode}>\n <IconButton\n aria-label={localization.changeSearchMode}\n onClick={handleGlobalFilterMenuOpen}\n size=\"small\"\n sx={{ height: '1.75rem', width: '1.75rem' }}\n >\n <SearchIcon />\n </IconButton>\n </Tooltip>\n </InputAdornment>\n ) : (\n <SearchIcon />\n ),\n endAdornment: (\n <InputAdornment position=\"end\">\n <Tooltip arrow title={localization.clearSearch ?? ''}>\n <span>\n <IconButton\n aria-label={localization.clearSearch}\n disabled={!searchValue?.length}\n onClick={handleClear}\n size=\"small\"\n >\n <CloseIcon />\n </IconButton>\n </span>\n </Tooltip>\n </InputAdornment>\n ),\n }}\n {...textFieldProps}\n />\n <MRT_FilterOptionMenu\n anchorEl={anchorEl}\n setAnchorEl={setAnchorEl}\n table={table}\n />\n </Collapse>\n );\n};\n","import React, { FC } from 'react';\nimport { Collapse, LinearProgress } from '@mui/material';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n isTopToolbar: boolean;\n table: MRT_TableInstance;\n}\n\nexport const MRT_LinearProgressBar: FC<Props> = ({ isTopToolbar, table }) => {\n const {\n options: { muiLinearProgressProps },\n getState,\n } = table;\n const { isLoading, showProgressBars } = getState();\n\n const linearProgressProps =\n muiLinearProgressProps instanceof Function\n ? muiLinearProgressProps({ isTopToolbar, table })\n : muiLinearProgressProps;\n\n return (\n <Collapse\n in={isLoading || showProgressBars}\n mountOnEnter\n unmountOnExit\n sx={{\n bottom: isTopToolbar ? 0 : undefined,\n position: 'absolute',\n top: !isTopToolbar ? 0 : undefined,\n width: '100%',\n }}\n >\n <LinearProgress\n aria-label=\"Loading\"\n aria-busy=\"true\"\n sx={{ position: 'relative' }}\n {...linearProgressProps}\n />\n </Collapse>\n );\n};\n","import React, { ChangeEvent, FC } from 'react';\nimport { TablePagination } from '@mui/material';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n table: MRT_TableInstance;\n position: 'top' | 'bottom';\n}\n\nexport const MRT_TablePagination: FC<Props> = ({ table, position }) => {\n const {\n getPrePaginationRowModel,\n getState,\n setPageIndex,\n setPageSize,\n options: {\n muiTablePaginationProps,\n enableToolbarInternalActions,\n rowCount,\n },\n } = table;\n const {\n pagination: { pageSize = 10, pageIndex = 0 },\n showGlobalFilter,\n } = getState();\n\n const totalRowCount = rowCount ?? getPrePaginationRowModel().rows.length;\n const showFirstLastPageButtons = totalRowCount / pageSize > 2;\n\n const tablePaginationProps =\n muiTablePaginationProps instanceof Function\n ? muiTablePaginationProps({ table })\n : muiTablePaginationProps;\n\n const handleChangeRowsPerPage = (event: ChangeEvent<HTMLInputElement>) => {\n setPageSize(+event.target.value);\n };\n\n return (\n <TablePagination\n SelectProps={{\n sx: { m: '0 1rem 0 1ch' },\n MenuProps: { MenuListProps: { disablePadding: true } },\n }}\n component=\"div\"\n count={totalRowCount}\n onPageChange={(_: any, newPage: number) => setPageIndex(newPage)}\n onRowsPerPageChange={handleChangeRowsPerPage}\n page={pageIndex}\n rowsPerPage={pageSize}\n rowsPerPageOptions={[5, 10, 15, 20, 25, 30, 50, 100]}\n showFirstButton={showFirstLastPageButtons}\n showLastButton={showFirstLastPageButtons}\n {...tablePaginationProps}\n sx={(theme) => ({\n m: '0 0.5rem',\n mt:\n position === 'top' &&\n enableToolbarInternalActions &&\n !showGlobalFilter\n ? '3.5rem'\n : undefined,\n position: 'relative',\n zIndex: 2,\n ...(tablePaginationProps?.sx instanceof Function\n ? tablePaginationProps.sx(theme)\n : (tablePaginationProps?.sx as any)),\n })}\n />\n );\n};\n","import React, { FC, Fragment } from 'react';\nimport { Alert, AlertTitle, Box, Chip, Collapse } from '@mui/material';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n stackAlertBanner?: boolean;\n table: MRT_TableInstance;\n}\n\nexport const MRT_ToolbarAlertBanner: FC<Props> = ({\n stackAlertBanner,\n table,\n}) => {\n const {\n getPrePaginationRowModel,\n getSelectedRowModel,\n getState,\n options: { localization, muiTableToolbarAlertBannerProps },\n } = table;\n const { grouping, showAlertBanner } = getState();\n\n const alertProps =\n muiTableToolbarAlertBannerProps instanceof Function\n ? muiTableToolbarAlertBannerProps({ table })\n : muiTableToolbarAlertBannerProps;\n\n const selectMessage =\n getSelectedRowModel().rows.length > 0\n ? localization.selectedCountOfRowCountRowsSelected\n ?.replace(\n '{selectedCount}',\n getSelectedRowModel().rows.length.toString(),\n )\n ?.replace(\n '{rowCount}',\n getPrePaginationRowModel().rows.length.toString(),\n )\n : null;\n\n const groupedByMessage =\n grouping.length > 0 ? (\n <span>\n {localization.groupedBy}{' '}\n {grouping.map((columnId, index) => (\n <Fragment key={`${index}-${columnId}`}>\n {index > 0 ? localization.thenBy : ''}\n <Chip\n color=\"secondary\"\n label={table.getColumn(columnId).columnDef.header}\n onDelete={() => table.getColumn(columnId).toggleGrouping()}\n />\n </Fragment>\n ))}\n </span>\n ) : null;\n\n return (\n <Collapse\n in={showAlertBanner || !!selectMessage || !!groupedByMessage}\n timeout={stackAlertBanner ? 200 : 0}\n >\n <Alert\n color=\"info\"\n icon={false}\n {...alertProps}\n sx={(theme) => ({\n borderRadius: 0,\n fontSize: '1rem',\n left: 0,\n p: 0,\n position: 'relative',\n right: 0,\n top: 0,\n width: '100%',\n zIndex: 2,\n ...(alertProps?.sx instanceof Function\n ? alertProps.sx(theme)\n : (alertProps?.sx as any)),\n })}\n >\n {alertProps?.title && <AlertTitle>{alertProps.title}</AlertTitle>}\n <Box sx={{ p: '0.5rem 1rem' }}>\n {alertProps?.children}\n {alertProps?.children && (selectMessage || groupedByMessage) && (\n <br />\n )}\n {selectMessage}\n {selectMessage && groupedByMessage && <br />}\n {groupedByMessage}\n </Box>\n </Alert>\n </Collapse>\n );\n};\n","import React, { FC } from 'react';\nimport { IconButton, IconButtonProps, Tooltip } from '@mui/material';\nimport { MRT_TableInstance } from '..';\n\ninterface Props extends IconButtonProps {\n table: MRT_TableInstance;\n}\n\nexport const MRT_FullScreenToggleButton: FC<Props> = ({ table, ...rest }) => {\n const {\n getState,\n options: {\n icons: { FullscreenExitIcon, FullscreenIcon },\n localization,\n },\n setIsFullScreen,\n } = table;\n const { isFullScreen } = getState();\n\n const handleToggleFullScreen = () => {\n setIsFullScreen(!isFullScreen);\n };\n\n return (\n <Tooltip arrow title={localization.toggleFullScreen}>\n <IconButton\n aria-label={localization.showHideFilters}\n onClick={handleToggleFullScreen}\n {...rest}\n >\n {isFullScreen ? <FullscreenExitIcon /> : <FullscreenIcon />}\n </IconButton>\n </Tooltip>\n );\n};\n","import React, { FC, MouseEvent, useState } from 'react';\nimport { IconButton, Tooltip, IconButtonProps } from '@mui/material';\nimport { MRT_ShowHideColumnsMenu } from '../menus/MRT_ShowHideColumnsMenu';\nimport { MRT_TableInstance } from '..';\n\ninterface Props extends IconButtonProps {\n table: MRT_TableInstance;\n}\n\nexport const MRT_ShowHideColumnsButton: FC<Props> = ({ table, ...rest }) => {\n const {\n options: {\n icons: { ViewColumnIcon },\n localization,\n },\n } = table;\n\n const [anchorEl, setAnchorEl] = useState<null | HTMLElement>(null);\n\n const handleClick = (event: MouseEvent<HTMLElement>) => {\n setAnchorEl(event.currentTarget);\n };\n\n return (\n <>\n <Tooltip arrow title={localization.showHideColumns}>\n <IconButton\n aria-label={localization.showHideColumns}\n onClick={handleClick}\n {...rest}\n >\n <ViewColumnIcon />\n </IconButton>\n </Tooltip>\n <MRT_ShowHideColumnsMenu\n anchorEl={anchorEl}\n setAnchorEl={setAnchorEl}\n table={table}\n />\n </>\n );\n};\n","import React, { FC } from 'react';\nimport { IconButton, IconButtonProps, Tooltip } from '@mui/material';\nimport { MRT_TableInstance } from '..';\n\ninterface Props extends IconButtonProps {\n table: MRT_TableInstance;\n}\n\nexport const MRT_ToggleDensePaddingButton: FC<Props> = ({ table, ...rest }) => {\n const {\n getState,\n options: {\n icons: { DensityLargeIcon, DensityMediumIcon, DensitySmallIcon },\n localization,\n },\n setDensity,\n } = table;\n const { density } = getState();\n\n const handleToggleDensePadding = () => {\n const nextDensity =\n density === 'comfortable'\n ? 'compact'\n : density === 'compact'\n ? 'spacious'\n : 'comfortable';\n setDensity(nextDensity);\n };\n\n return (\n <Tooltip arrow title={localization.toggleDensity}>\n <IconButton\n aria-label={localization.toggleDensity}\n onClick={handleToggleDensePadding}\n {...rest}\n >\n {density === 'compact' ? (\n <DensitySmallIcon />\n ) : density === 'comfortable' ? (\n <DensityMediumIcon />\n ) : (\n <DensityLargeIcon />\n )}\n </IconButton>\n </Tooltip>\n );\n};\n","import React, { FC } from 'react';\nimport { IconButton, IconButtonProps, Tooltip } from '@mui/material';\nimport { MRT_TableInstance } from '..';\n\ninterface Props extends IconButtonProps {\n table: MRT_TableInstance;\n}\n\nexport const MRT_ToggleFiltersButton: FC<Props> = ({ table, ...rest }) => {\n const {\n getState,\n options: {\n icons: { FilterListIcon, FilterListOffIcon },\n localization,\n },\n setShowFilters,\n } = table;\n const { showColumnFilters } = getState();\n\n const handleToggleShowFilters = () => {\n setShowFilters(!showColumnFilters);\n };\n\n return (\n <Tooltip arrow title={localization.showHideFilters}>\n <IconButton\n aria-label={localization.showHideFilters}\n onClick={handleToggleShowFilters}\n {...rest}\n >\n {showColumnFilters ? <FilterListOffIcon /> : <FilterListIcon />}\n </IconButton>\n </Tooltip>\n );\n};\n","import React, { FC } from 'react';\nimport { IconButton, IconButtonProps, Tooltip } from '@mui/material';\nimport { MRT_TableInstance } from '..';\n\ninterface Props extends IconButtonProps {\n table: MRT_TableInstance;\n}\n\nexport const MRT_ToggleGlobalFilterButton: FC<Props> = ({ table, ...rest }) => {\n const {\n getState,\n options: {\n icons: { SearchIcon, SearchOffIcon },\n tableId,\n localization,\n muiSearchTextFieldProps,\n },\n setShowGlobalFilter,\n } = table;\n const { showGlobalFilter } = getState();\n\n const textFieldProps =\n muiSearchTextFieldProps instanceof Function\n ? muiSearchTextFieldProps({ table })\n : muiSearchTextFieldProps;\n\n const handleToggleSearch = () => {\n setShowGlobalFilter(!showGlobalFilter);\n setTimeout(\n () =>\n document\n .getElementById(\n textFieldProps?.id ?? `mrt-${tableId}-search-text-field`,\n )\n ?.focus(),\n 200,\n );\n };\n\n return (\n <Tooltip arrow title={localization.showHideSearch}>\n <IconButton onClick={handleToggleSearch} {...rest}>\n {showGlobalFilter ? <SearchOffIcon /> : <SearchIcon />}\n </IconButton>\n </Tooltip>\n );\n};\n","import React, { FC } from 'react';\nimport { Box } from '@mui/material';\nimport { MRT_FullScreenToggleButton } from '../buttons/MRT_FullScreenToggleButton';\nimport { MRT_ShowHideColumnsButton } from '../buttons/MRT_ShowHideColumnsButton';\nimport { MRT_ToggleDensePaddingButton } from '../buttons/MRT_ToggleDensePaddingButton';\nimport { MRT_ToggleFiltersButton } from '../buttons/MRT_ToggleFiltersButton';\nimport { MRT_ToggleGlobalFilterButton } from '../buttons/MRT_ToggleGlobalFilterButton';\nimport { MRT_TableInstance } from '..';\nimport { MRT_GlobalFilterTextField } from '../inputs/MRT_GlobalFilterTextField';\n\ninterface Props {\n table: MRT_TableInstance;\n}\n\nexport const MRT_ToolbarInternalButtons: FC<Props> = ({ table }) => {\n const {\n options: {\n enableColumnFilters,\n enableColumnOrdering,\n enableDensityToggle,\n enableFilters,\n enableFullScreenToggle,\n enableGlobalFilter,\n enableHiding,\n enablePinning,\n positionGlobalFilter,\n renderToolbarInternalActions,\n },\n } = table;\n\n return (\n <Box\n sx={{\n alignItems: 'center',\n display: 'flex',\n zIndex: 3,\n }}\n >\n {renderToolbarInternalActions?.({\n MRT_FullScreenToggleButton,\n MRT_ShowHideColumnsButton,\n MRT_ToggleDensePaddingButton,\n MRT_ToggleFiltersButton,\n MRT_ToggleGlobalFilterButton,\n table,\n }) ?? (\n <>\n {enableGlobalFilter && positionGlobalFilter === 'right' && (\n <MRT_GlobalFilterTextField table={table} />\n )}\n {enableFilters && enableGlobalFilter && (\n <MRT_ToggleGlobalFilterButton table={table} />\n )}\n {enableFilters && enableColumnFilters && (\n <MRT_ToggleFiltersButton table={table} />\n )}\n {(enableHiding || enableColumnOrdering || enablePinning) && (\n <MRT_ShowHideColumnsButton table={table} />\n )}\n {enableDensityToggle && (\n <MRT_ToggleDensePaddingButton table={table} />\n )}\n {enableFullScreenToggle && (\n <MRT_FullScreenToggleButton table={table} />\n )}\n </>\n )}\n </Box>\n );\n};\n","import React, { FC } from 'react';\nimport { Box, lighten, Theme, Toolbar, useMediaQuery } from '@mui/material';\nimport { MRT_GlobalFilterTextField } from '../inputs/MRT_GlobalFilterTextField';\nimport { MRT_LinearProgressBar } from './MRT_LinearProgressBar';\nimport { MRT_TableInstance } from '..';\nimport { MRT_TablePagination } from './MRT_TablePagination';\nimport { MRT_ToolbarAlertBanner } from './MRT_ToolbarAlertBanner';\nimport { MRT_ToolbarInternalButtons } from './MRT_ToolbarInternalButtons';\n\nexport const commonToolbarStyles = ({ theme }: { theme: Theme }) => ({\n alignItems: 'flex-start',\n backgroundColor: lighten(theme.palette.background.default, 0.04),\n backgroundImage: 'none',\n display: 'grid',\n minHeight: '3.5rem',\n overflow: 'hidden',\n p: '0 !important',\n transition: 'all 0.2s ease-in-out',\n zIndex: 1,\n});\n\ninterface Props {\n table: MRT_TableInstance;\n}\n\nexport const MRT_ToolbarTop: FC<Props> = ({ table }) => {\n const {\n getState,\n options: {\n enableGlobalFilter,\n enablePagination,\n enableToolbarInternalActions,\n muiTableToolbarTopProps,\n positionGlobalFilter,\n positionPagination,\n positionToolbarAlertBanner,\n renderToolbarTopCustomActions,\n tableId,\n },\n } = table;\n\n const { isFullScreen, showGlobalFilter } = getState();\n\n const isMobile = useMediaQuery('(max-width:720px)');\n\n const toolbarProps =\n muiTableToolbarTopProps instanceof Function\n ? muiTableToolbarTopProps({ table })\n : muiTableToolbarTopProps;\n\n const stackAlertBanner =\n isMobile || !!renderToolbarTopCustomActions || showGlobalFilter;\n\n return (\n <Toolbar\n id={`mrt-${tableId}-toolbar-top`}\n variant=\"dense\"\n {...toolbarProps}\n sx={(theme) =>\n ({\n position: isFullScreen ? 'sticky' : undefined,\n top: isFullScreen ? '0' : undefined,\n ...commonToolbarStyles({ theme }),\n ...(toolbarProps?.sx instanceof Function\n ? toolbarProps.sx(theme)\n : (toolbarProps?.sx as any)),\n } as any)\n }\n >\n {positionToolbarAlertBanner === 'top' && (\n <MRT_ToolbarAlertBanner\n stackAlertBanner={stackAlertBanner}\n table={table}\n />\n )}\n <Box\n sx={{\n alignItems: 'flex-start',\n boxSizing: 'border-box',\n display: 'flex',\n justifyContent: 'space-between',\n p: '0.5rem',\n position: stackAlertBanner ? 'relative' : 'absolute',\n right: 0,\n top: 0,\n width: '100%',\n }}\n >\n {enableGlobalFilter && positionGlobalFilter === 'left' && (\n <MRT_GlobalFilterTextField table={table} />\n )}\n\n {renderToolbarTopCustomActions?.({ table }) ?? <span />}\n {enableToolbarInternalActions ? (\n <MRT_ToolbarInternalButtons table={table} />\n ) : (\n enableGlobalFilter &&\n positionGlobalFilter === 'right' && (\n <MRT_GlobalFilterTextField table={table} />\n )\n )}\n </Box>\n {enablePagination &&\n ['top', 'both'].includes(positionPagination ?? '') && (\n <MRT_TablePagination table={table} position=\"top\" />\n )}\n <MRT_LinearProgressBar isTopToolbar table={table} />\n </Toolbar>\n );\n};\n","import React, { FC } from 'react';\nimport { alpha, Box, Toolbar, useMediaQuery } from '@mui/material';\nimport { MRT_TablePagination } from './MRT_TablePagination';\nimport { MRT_ToolbarAlertBanner } from './MRT_ToolbarAlertBanner';\nimport { MRT_LinearProgressBar } from './MRT_LinearProgressBar';\nimport { commonToolbarStyles } from './MRT_ToolbarTop';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n table: MRT_TableInstance;\n}\n\nexport const MRT_ToolbarBottom: FC<Props> = ({ table }) => {\n const {\n getState,\n options: {\n enablePagination,\n muiTableToolbarBottomProps,\n positionPagination,\n positionToolbarAlertBanner,\n renderToolbarBottomCustomActions,\n tableId,\n },\n } = table;\n const { isFullScreen } = getState();\n\n const isMobile = useMediaQuery('(max-width:720px)');\n\n const toolbarProps =\n muiTableToolbarBottomProps instanceof Function\n ? muiTableToolbarBottomProps({ table })\n : muiTableToolbarBottomProps;\n\n const stackAlertBanner = isMobile || !!renderToolbarBottomCustomActions;\n\n return (\n <Toolbar\n id={`mrt-${tableId}-toolbar-bottom`}\n variant=\"dense\"\n {...toolbarProps}\n sx={(theme) =>\n ({\n ...commonToolbarStyles({ theme }),\n bottom: isFullScreen ? '0' : undefined,\n boxShadow: `-3px 0 6px ${alpha(theme.palette.common.black, 0.1)}`,\n left: 0,\n position: isFullScreen ? 'fixed' : 'relative',\n right: 0,\n ...(toolbarProps?.sx instanceof Function\n ? toolbarProps.sx(theme)\n : (toolbarProps?.sx as any)),\n } as any)\n }\n >\n <MRT_LinearProgressBar isTopToolbar={false} table={table} />\n {positionToolbarAlertBanner === 'bottom' && (\n <MRT_ToolbarAlertBanner table={table} />\n )}\n <Box\n sx={{\n display: 'flex',\n justifyContent: 'space-between',\n width: '100%',\n }}\n >\n {renderToolbarBottomCustomActions ? (\n <Box sx={{ p: '0.5rem' }}>\n {renderToolbarBottomCustomActions({ table })}\n </Box>\n ) : (\n <span />\n )}\n <Box\n sx={{\n display: 'flex',\n justifyContent: 'flex-end',\n position: stackAlertBanner ? 'relative' : 'absolute',\n right: 0,\n top: 0,\n }}\n >\n {enablePagination &&\n ['bottom', 'both'].includes(positionPagination ?? '') && (\n <MRT_TablePagination table={table} position=\"bottom\" />\n )}\n </Box>\n </Box>\n </Toolbar>\n );\n};\n","import React, { FC, MouseEvent, useState } from 'react';\nimport { IconButton, Tooltip } from '@mui/material';\nimport { MRT_ColumnActionMenu } from '../menus/MRT_ColumnActionMenu';\nimport type { MRT_Header, MRT_TableInstance } from '..';\n\ninterface Props {\n header: MRT_Header;\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableHeadCellColumnActionsButton: FC<Props> = ({\n header,\n table,\n}) => {\n const {\n options: {\n icons: { MoreVertIcon },\n localization,\n muiTableHeadCellColumnActionsButtonProps,\n },\n } = table;\n const { column } = header;\n const { columnDef } = column;\n\n const [anchorEl, setAnchorEl] = useState<null | HTMLElement>(null);\n\n const handleClick = (event: MouseEvent<HTMLElement>) => {\n event.stopPropagation();\n event.preventDefault();\n setAnchorEl(event.currentTarget);\n };\n\n const mTableHeadCellColumnActionsButtonProps =\n muiTableHeadCellColumnActionsButtonProps instanceof Function\n ? muiTableHeadCellColumnActionsButtonProps({ column, table })\n : muiTableHeadCellColumnActionsButtonProps;\n\n const mcTableHeadCellColumnActionsButtonProps =\n columnDef.muiTableHeadCellColumnActionsButtonProps instanceof Function\n ? columnDef.muiTableHeadCellColumnActionsButtonProps({\n column,\n table,\n })\n : columnDef.muiTableHeadCellColumnActionsButtonProps;\n\n const iconButtonProps = {\n ...mTableHeadCellColumnActionsButtonProps,\n ...mcTableHeadCellColumnActionsButtonProps,\n };\n\n return (\n <>\n <Tooltip\n arrow\n enterDelay={1000}\n enterNextDelay={1000}\n placement=\"top\"\n title={localization.columnActions}\n >\n <IconButton\n aria-label={localization.columnActions}\n onClick={handleClick}\n size=\"small\"\n {...iconButtonProps}\n sx={(theme) => ({\n height: '2rem',\n mt: '-0.2rem',\n opacity: 0.5,\n transition: 'opacity 0.2s',\n width: '2rem',\n '&:hover': {\n opacity: 1,\n },\n ...(iconButtonProps?.sx instanceof Function\n ? iconButtonProps.sx(theme)\n : (iconButtonProps?.sx as any)),\n })}\n >\n <MoreVertIcon />\n </IconButton>\n </Tooltip>\n <MRT_ColumnActionMenu\n anchorEl={anchorEl}\n header={header}\n setAnchorEl={setAnchorEl}\n table={table}\n />\n </>\n );\n};\n","import React, {\n ChangeEvent,\n FC,\n MouseEvent,\n useCallback,\n useState,\n} from 'react';\nimport {\n 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 columnFilterModeOptions,\n icons: { FilterListIcon, CloseIcon },\n localization,\n muiTableHeadCellFilterTextFieldProps,\n tableId,\n },\n setCurrentFilterFns,\n } = table;\n const { column } = header;\n const { columnDef } = column;\n const { currentFilterFns } = getState();\n\n const [anchorEl, setAnchorEl] = useState<null | HTMLElement>(null);\n\n const mTableHeadCellFilterTextFieldProps =\n muiTableHeadCellFilterTextFieldProps instanceof Function\n ? muiTableHeadCellFilterTextFieldProps({ column, table })\n : muiTableHeadCellFilterTextFieldProps;\n\n const mcTableHeadCellFilterTextFieldProps =\n columnDef.muiTableHeadCellFilterTextFieldProps instanceof Function\n ? columnDef.muiTableHeadCellFilterTextFieldProps({\n column,\n table,\n })\n : columnDef.muiTableHeadCellFilterTextFieldProps;\n\n const textFieldProps = {\n ...mTableHeadCellFilterTextFieldProps,\n ...mcTableHeadCellFilterTextFieldProps,\n } as TextFieldProps;\n\n const [filterValue, setFilterValue] = useState<string>(() =>\n inputIndex !== undefined\n ? (column.getFilterValue() as [string, string])?.[inputIndex] ?? ''\n : (column.getFilterValue() as string) ?? '',\n );\n\n const handleChangeDebounced = useCallback(\n debounce((event: ChangeEvent<HTMLInputElement>) => {\n let value =\n textFieldProps.type === 'date'\n ? new Date(event.target.value)\n : event.target.value;\n if (inputIndex !== undefined) {\n column.setFilterValue((old: [string, string | Date]) => {\n const newFilterValues = old ?? ['', ''];\n newFilterValues[inputIndex] = value;\n return newFilterValues;\n });\n } else {\n column.setFilterValue(value ?? undefined);\n }\n }, 200),\n [],\n );\n\n const handleChange = (event: ChangeEvent<HTMLInputElement>) => {\n setFilterValue(event.target.value);\n handleChangeDebounced(event);\n };\n\n const handleFilterMenuOpen = (event: MouseEvent<HTMLElement>) => {\n setAnchorEl(event.currentTarget);\n };\n\n const handleClear = () => {\n setFilterValue('');\n if (inputIndex !== undefined) {\n column.setFilterValue((old: [string | undefined, string | undefined]) => {\n const newFilterValues = old ?? ['', ''];\n newFilterValues[inputIndex] = undefined;\n return newFilterValues;\n });\n } else {\n column.setFilterValue(undefined);\n }\n };\n\n const handleClearFilterChip = () => {\n setFilterValue('');\n column.setFilterValue(undefined);\n setCurrentFilterFns((prev) => ({\n ...prev,\n [header.id]: 'fuzzy',\n }));\n };\n\n if (columnDef.Filter) {\n return <>{columnDef.Filter?.({ header, table })}</>;\n }\n\n const filterId = `mrt-${tableId}-${header.id}-filter-text-field${\n inputIndex ?? ''\n }`;\n const currentFilterOption = currentFilterFns?.[header.id];\n const isSelectFilter = !!columnDef.filterSelectOptions;\n const filterChipLabel = ['empty', 'notEmpty'].includes(currentFilterOption)\n ? //@ts-ignore\n localization[\n `filter${\n currentFilterOption?.charAt(0)?.toUpperCase() +\n currentFilterOption?.slice(1)\n }`\n ]\n : '';\n const filterPlaceholder =\n inputIndex === undefined\n ? localization.filterByColumn?.replace(\n '{column}',\n String(columnDef.header),\n )\n : inputIndex === 0\n ? localization.min\n : inputIndex === 1\n ? localization.max\n : '';\n\n const allowedColumnFilterOptions =\n columnDef?.columnFilterModeOptions ?? columnFilterModeOptions;\n\n const showChangeModeButton =\n enableColumnFilterChangeMode &&\n columnDef.enableColumnFilterChangeMode !== false &&\n !isSelectFilter &&\n !inputIndex &&\n (allowedColumnFilterOptions === undefined ||\n !!allowedColumnFilterOptions?.length);\n\n return (\n <>\n <TextField\n fullWidth\n id={filterId}\n inputProps={{\n disabled: !!filterChipLabel,\n sx: {\n textOverflow: 'ellipsis',\n width: filterChipLabel ? 0 : undefined,\n },\n title: filterPlaceholder,\n }}\n helperText={\n showChangeModeButton ? (\n <label htmlFor={filterId}>\n {localization.filterMode.replace(\n '{filterType}',\n // @ts-ignore\n localization[\n `filter${\n currentFilterOption?.charAt(0)?.toUpperCase() +\n currentFilterOption?.slice(1)\n }`\n ],\n )}\n </label>\n ) : null\n }\n FormHelperTextProps={{\n sx: {\n fontSize: '0.6rem',\n lineHeight: '0.8rem',\n whiteSpace: 'nowrap',\n },\n }}\n margin=\"none\"\n placeholder={\n filterChipLabel || isSelectFilter ? undefined : filterPlaceholder\n }\n onChange={handleChange}\n onClick={(e: MouseEvent<HTMLInputElement>) => e.stopPropagation()}\n select={isSelectFilter}\n value={filterValue ?? ''}\n variant=\"standard\"\n InputProps={{\n startAdornment: showChangeModeButton ? (\n <InputAdornment position=\"start\">\n <Tooltip arrow title={localization.changeFilterMode}>\n <span>\n <IconButton\n aria-label={localization.changeFilterMode}\n onClick={handleFilterMenuOpen}\n size=\"small\"\n sx={{ height: '1.75rem', width: '1.75rem' }}\n >\n <FilterListIcon />\n </IconButton>\n </span>\n </Tooltip>\n {filterChipLabel && (\n <Chip\n onDelete={handleClearFilterChip}\n label={filterChipLabel}\n />\n )}\n </InputAdornment>\n ) : (\n <FilterListIcon />\n ),\n endAdornment: !filterChipLabel && (\n <InputAdornment position=\"end\">\n <Tooltip\n arrow\n disableHoverListener={isSelectFilter}\n placement=\"right\"\n title={localization.clearFilter ?? ''}\n >\n <span>\n <IconButton\n aria-label={localization.clearFilter}\n disabled={!filterValue?.length}\n onClick={handleClear}\n size=\"small\"\n sx={{\n height: '1.75rem',\n width: '1.75rem',\n }}\n >\n <CloseIcon />\n </IconButton>\n </span>\n </Tooltip>\n </InputAdornment>\n ),\n }}\n {...textFieldProps}\n sx={(theme) => ({\n p: 0,\n minWidth: !filterChipLabel ? '8rem' : 'auto',\n width: 'calc(100% + 0.5rem)',\n '&\t.MuiSelect-icon': {\n mr: '1.5rem',\n },\n ...(textFieldProps?.sx instanceof Function\n ? textFieldProps.sx(theme)\n : (textFieldProps?.sx as any)),\n })}\n >\n {isSelectFilter && (\n <MenuItem divider disabled={!filterValue} value=\"\">\n {localization.clearFilter}\n </MenuItem>\n )}\n {columnDef?.filterSelectOptions?.map((option) => {\n let value;\n let text;\n if (typeof option === 'string') {\n value = option;\n text = option;\n } else if (typeof option === 'object') {\n value = option.value;\n text = option.text;\n }\n return (\n <MenuItem key={value} value={value}>\n {text}\n </MenuItem>\n );\n })}\n </TextField>\n <MRT_FilterOptionMenu\n anchorEl={anchorEl}\n header={header}\n setAnchorEl={setAnchorEl}\n table={table}\n />\n </>\n );\n};\n","import React, { FC } from 'react';\nimport { Box } from '@mui/material';\nimport { MRT_FilterTextField } from './MRT_FilterTextField';\nimport { MRT_Header, MRT_TableInstance } from '..';\n\ninterface Props {\n header: MRT_Header;\n table: MRT_TableInstance;\n}\n\nexport const MRT_FilterRangeFields: FC<Props> = ({ header, table }) => {\n return (\n <Box sx={{ display: 'grid', gridTemplateColumns: '6fr 6fr', gap: '1rem' }}>\n <MRT_FilterTextField header={header} inputIndex={0} table={table} />\n <MRT_FilterTextField header={header} inputIndex={1} table={table} />\n </Box>\n );\n};\n","import React, { FC } from 'react';\nimport { Collapse } from '@mui/material';\nimport { MRT_FilterRangeFields } from '../inputs/MRT_FilterRangeFields';\nimport { MRT_FilterTextField } from '../inputs/MRT_FilterTextField';\nimport { MRT_Header, MRT_TableInstance } from '..';\n\ninterface Props {\n header: MRT_Header;\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableHeadCellFilterContainer: FC<Props> = ({\n header,\n table,\n}) => {\n const { getState } = table;\n const { currentFilterFns, showColumnFilters } = getState();\n const { column } = header;\n\n return (\n <Collapse in={showColumnFilters} mountOnEnter unmountOnExit>\n {currentFilterFns[column.id] === 'between' ? (\n <MRT_FilterRangeFields header={header} table={table} />\n ) : (\n <MRT_FilterTextField header={header} table={table} />\n )}\n </Collapse>\n );\n};\n","import React, { FC, MouseEvent } from 'react';\nimport { Grow, IconButton, Tooltip } from '@mui/material';\nimport { MRT_Header, MRT_TableInstance } from '..';\n\ninterface Props {\n header: MRT_Header;\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableHeadCellFilterLabel: FC<Props> = ({ header, table }) => {\n const {\n getState,\n options: {\n icons: { FilterAltIcon },\n localization,\n },\n } = table;\n const { currentFilterFns } = getState();\n const { column } = header;\n const { columnDef } = column;\n\n const currentFilterOption = currentFilterFns?.[header.id];\n const filterTooltip = localization.filteringByColumn\n .replace('{column}', String(columnDef.header))\n .replace(\n '{filterType}',\n // @ts-ignore\n localization[\n `filter${\n currentFilterOption?.charAt(0)?.toUpperCase() +\n currentFilterOption?.slice(1)\n }`\n ],\n )\n .replace(\n '{filterValue}',\n `\"${\n Array.isArray(column.getFilterValue())\n ? (column.getFilterValue() as [string, string]).join(\n `\" ${localization.and} \"`,\n )\n : (column.getFilterValue() as string)\n }\"`,\n )\n .replace('\" \"', '');\n\n return (\n <Grow\n unmountOnExit\n in={\n (!!column.getFilterValue() && currentFilterOption !== 'between') ||\n (currentFilterOption === 'between' && // @ts-ignore\n (!!column.getFilterValue()?.[0] || !!column.getFilterValue()?.[1]))\n }\n >\n <span>\n <Tooltip arrow placement=\"top\" title={filterTooltip}>\n <IconButton\n disableRipple\n onClick={(event: MouseEvent<HTMLButtonElement>) => {\n event.stopPropagation();\n }}\n size=\"small\"\n sx={{\n m: 0,\n opacity: 0.8,\n p: '2px',\n transform: 'scale(0.66)',\n width: '1.5ch',\n }}\n >\n <FilterAltIcon />\n </IconButton>\n </Tooltip>\n </span>\n </Grow>\n );\n};\n","import React, { DragEvent, FC, RefObject } from 'react';\nimport { MRT_GrabHandleButton } from '../buttons/MRT_GrabHandleButton';\nimport { reorderColumn } from '../column.utils';\nimport type { MRT_Column, MRT_TableInstance } from '..';\n\ninterface Props {\n column: MRT_Column;\n table: MRT_TableInstance;\n tableHeadCellRef: RefObject<HTMLTableCellElement>;\n}\n\nexport const MRT_TableHeadCellGrabHandle: FC<Props> = ({\n column,\n table,\n tableHeadCellRef,\n}) => {\n const {\n getState,\n options: {\n enableColumnOrdering,\n muiTableHeadCellDragHandleProps,\n onColumnDrop,\n },\n setColumnOrder,\n setCurrentDraggingColumn,\n setCurrentHoveredColumn,\n } = table;\n const { columnDef } = column;\n const { currentHoveredColumn, currentDraggingColumn, columnOrder } =\n getState();\n\n const mIconButtonProps =\n muiTableHeadCellDragHandleProps instanceof Function\n ? muiTableHeadCellDragHandleProps({ column, table })\n : muiTableHeadCellDragHandleProps;\n\n const mcIconButtonProps =\n columnDef.muiTableHeadCellDragHandleProps instanceof Function\n ? columnDef.muiTableHeadCellDragHandleProps({ column, table })\n : columnDef.muiTableHeadCellDragHandleProps;\n\n const iconButtonProps = {\n ...mIconButtonProps,\n ...mcIconButtonProps,\n };\n\n const handleDragStart = (e: DragEvent<HTMLButtonElement>) => {\n setCurrentDraggingColumn(column);\n e.dataTransfer.setDragImage(tableHeadCellRef.current as HTMLElement, 0, 0);\n };\n\n const handleDragEnd = (event: DragEvent<HTMLButtonElement>) => {\n onColumnDrop?.({\n event,\n draggedColumn: column,\n targetColumn: currentHoveredColumn,\n });\n if (\n enableColumnOrdering &&\n currentHoveredColumn &&\n currentHoveredColumn?.id !== currentDraggingColumn?.id\n ) {\n setColumnOrder(reorderColumn(column, currentHoveredColumn, columnOrder));\n }\n setCurrentDraggingColumn(null);\n setCurrentHoveredColumn(null);\n };\n\n return (\n <MRT_GrabHandleButton\n iconButtonProps={iconButtonProps}\n onDragStart={handleDragStart}\n onDragEnd={handleDragEnd}\n table={table}\n />\n );\n};\n","import React, { FC } from 'react';\nimport { Divider, Theme } from '@mui/material';\nimport { MRT_Header, MRT_TableInstance } from '..';\n\ninterface Props {\n header: MRT_Header;\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableHeadCellResizeHandle: FC<Props> = ({ header, table }) => {\n const {\n getState,\n options: { columnResizeMode },\n } = table;\n const { density, showColumnFilters } = getState();\n const { column } = header;\n const { columnDef } = column;\n const { columnDefType } = columnDef;\n\n return (\n <Divider\n flexItem\n orientation=\"vertical\"\n onDoubleClick={() => column.resetSize()}\n sx={(theme: Theme) => ({\n borderRadius: '2px',\n borderRightWidth: '2px',\n cursor: 'col-resize',\n height: showColumnFilters && columnDefType === 'data' ? '4rem' : '2rem',\n mr: density === 'compact' ? '-0.5rem' : '-1rem',\n opacity: 0.8,\n position: 'absolute',\n right: '1px',\n touchAction: 'none',\n transition: column.getIsResizing() ? undefined : 'all 0.2s ease-in-out',\n userSelect: 'none',\n zIndex: 4,\n '&:active': {\n backgroundColor: theme.palette.info.main,\n opacity: 1,\n },\n })}\n onMouseDown={header.getResizeHandler()}\n onTouchStart={header.getResizeHandler()}\n style={{\n transform: column.getIsResizing()\n ? `translateX(${\n (getState().columnSizingInfo.deltaOffset ?? 0) /\n (columnResizeMode === 'onChange' ? 16 : 1)\n }px)`\n : 'none',\n }}\n />\n );\n};\n","import React, { FC } from 'react';\nimport { TableSortLabel, Tooltip } from '@mui/material';\nimport { MRT_Header, MRT_TableInstance } from '..';\n\ninterface Props {\n header: MRT_Header;\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableHeadCellSortLabel: FC<Props> = ({ header, table }) => {\n const {\n options: { localization },\n } = table;\n const { column } = header;\n const { columnDef } = column;\n\n const sortTooltip = !!column.getIsSorted()\n ? column.getIsSorted() === 'desc'\n ? localization.sortedByColumnDesc.replace('{column}', columnDef.header)\n : localization.sortedByColumnAsc.replace('{column}', columnDef.header)\n : localization.unsorted;\n\n return (\n <Tooltip arrow placement=\"top\" title={sortTooltip}>\n <TableSortLabel\n aria-label={sortTooltip}\n active={!!column.getIsSorted()}\n direction={\n column.getIsSorted()\n ? (column.getIsSorted() as 'asc' | 'desc')\n : undefined\n }\n sx={{\n width: '2ch',\n transform: 'translateX(-0.5ch)',\n }}\n />\n </Tooltip>\n );\n};\n","import React, { DragEvent, FC, ReactNode } from 'react';\nimport { Box, TableCell, Theme, alpha, lighten, useTheme } from '@mui/material';\nimport { MRT_TableHeadCellColumnActionsButton } from './MRT_TableHeadCellColumnActionsButton';\nimport { MRT_TableHeadCellFilterContainer } from './MRT_TableHeadCellFilterContainer';\nimport { MRT_TableHeadCellFilterLabel } from './MRT_TableHeadCellFilterLabel';\nimport { MRT_TableHeadCellGrabHandle } from './MRT_TableHeadCellGrabHandle';\nimport { MRT_TableHeadCellResizeHandle } from './MRT_TableHeadCellResizeHandle';\nimport { MRT_TableHeadCellSortLabel } from './MRT_TableHeadCellSortLabel';\nimport type { MRT_Header, MRT_TableInstance } from '..';\n\ninterface Props {\n header: MRT_Header;\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableHeadCell: FC<Props> = ({ header, table }) => {\n const theme = useTheme();\n const {\n getState,\n options: {\n enableColumnActions,\n enableColumnDragging,\n enableColumnOrdering,\n enableColumnResizing,\n enableGrouping,\n enableMultiSort,\n muiTableHeadCellProps,\n },\n setCurrentHoveredColumn,\n } = table;\n const { density, currentDraggingColumn, currentHoveredColumn } = getState();\n const { column } = header;\n const { columnDef } = column;\n const { columnDefType } = columnDef;\n\n const mTableHeadCellProps =\n muiTableHeadCellProps instanceof Function\n ? muiTableHeadCellProps({ column, table })\n : muiTableHeadCellProps;\n\n const mcTableHeadCellProps =\n columnDef.muiTableHeadCellProps instanceof Function\n ? columnDef.muiTableHeadCellProps({ column, table })\n : columnDef.muiTableHeadCellProps;\n\n const tableCellProps = {\n ...mTableHeadCellProps,\n ...mcTableHeadCellProps,\n };\n\n const getIsLastLeftPinnedColumn = () => {\n return (\n column.getIsPinned() === 'left' &&\n table.getLeftLeafHeaders().length - 1 === column.getPinnedIndex()\n );\n };\n\n const getIsFirstRightPinnedColumn = () => {\n return column.getIsPinned() === 'right' && column.getPinnedIndex() === 0;\n };\n\n const getTotalRight = () => {\n return (\n (table.getRightLeafHeaders().length - 1 - column.getPinnedIndex()) * 150\n );\n };\n\n const handleDragEnter = (_e: DragEvent) => {\n if (enableColumnOrdering && currentDraggingColumn) {\n setCurrentHoveredColumn(\n columnDef.enableColumnOrdering !== false ? column : null,\n );\n }\n };\n\n const draggingBorder =\n currentDraggingColumn?.id === column.id\n ? `1px dashed ${theme.palette.divider}`\n : currentHoveredColumn?.id === column.id\n ? `2px dashed ${theme.palette.primary.main}`\n : undefined;\n\n const draggingBorders = draggingBorder\n ? {\n borderLeft: draggingBorder,\n borderRight: draggingBorder,\n borderTop: draggingBorder,\n }\n : undefined;\n\n const headerElement = ((columnDef?.Header instanceof Function\n ? columnDef?.Header?.({\n header,\n table,\n })\n : columnDef?.Header) ?? columnDef.header) as ReactNode;\n\n const tableHeadCellRef = React.useRef<HTMLTableCellElement>(null);\n\n return (\n <TableCell\n align={columnDefType === 'group' ? 'center' : 'left'}\n colSpan={header.colSpan}\n onDragEnter={handleDragEnter}\n ref={tableHeadCellRef}\n {...tableCellProps}\n sx={(theme: Theme) => ({\n backgroundColor:\n column.getIsPinned() && columnDefType !== 'group'\n ? alpha(lighten(theme.palette.background.default, 0.04), 0.95)\n : 'inherit',\n backgroundImage: 'inherit',\n boxShadow: getIsLastLeftPinnedColumn()\n ? `4px 0 4px -2px ${alpha(theme.palette.common.black, 0.1)}`\n : getIsFirstRightPinnedColumn()\n ? `-4px 0 4px -2px ${alpha(theme.palette.common.black, 0.1)}`\n : undefined,\n fontWeight: 'bold',\n left:\n column.getIsPinned() === 'left'\n ? `${column.getStart('left')}px`\n : undefined,\n overflow: 'visible',\n opacity:\n currentDraggingColumn?.id === column.id ||\n currentHoveredColumn?.id === column.id\n ? 0.5\n : 1,\n p:\n density === 'compact'\n ? '0.5rem'\n : density === 'comfortable'\n ? columnDefType === 'display'\n ? '0.75rem'\n : '1rem'\n : columnDefType === 'display'\n ? '1rem 1.25rem'\n : '1.5rem',\n pb: columnDefType === 'display' ? 0 : undefined,\n position:\n column.getIsPinned() && columnDefType !== 'group'\n ? 'sticky'\n : undefined,\n pt:\n columnDefType === 'group'\n ? 0\n : density === 'compact'\n ? '0.25'\n : density === 'comfortable'\n ? '.75rem'\n : '1.25rem',\n right:\n column.getIsPinned() === 'right' ? `${getTotalRight()}px` : undefined,\n transition: `all ${enableColumnResizing ? 0 : '0.2s'} ease-in-out`,\n userSelect: enableMultiSort && column.getCanSort() ? 'none' : undefined,\n verticalAlign: 'top',\n zIndex:\n column.getIsResizing() || currentDraggingColumn?.id === column.id\n ? 3\n : column.getIsPinned() && columnDefType !== 'group'\n ? 2\n : 1,\n ...(tableCellProps?.sx instanceof Function\n ? tableCellProps.sx(theme)\n : (tableCellProps?.sx as any)),\n ...draggingBorders,\n maxWidth: `min(${column.getSize()}px, fit-content)`,\n minWidth: `max(${column.getSize()}px, ${columnDef.minSize ?? 30}px)`,\n width: header.getSize(),\n })}\n >\n {header.isPlaceholder ? null : (\n <Box\n sx={{\n alignItems: 'flex-start',\n display: 'flex',\n justifyContent:\n tableCellProps?.align === 'right'\n ? 'flex-end'\n : columnDefType === 'group' ||\n tableCellProps?.align === 'center'\n ? 'center'\n : 'space-between',\n position: 'relative',\n width: '100%',\n }}\n >\n <Box\n onClick={column.getToggleSortingHandler()}\n sx={{\n alignItems: 'center',\n cursor:\n column.getCanSort() && columnDefType !== 'group'\n ? 'pointer'\n : undefined,\n display: 'flex',\n flexWrap: 'nowrap',\n m: tableCellProps?.align === 'center' ? 'auto' : undefined,\n pl:\n tableCellProps?.align === 'center' && column.getCanSort()\n ? '1rem'\n : undefined,\n whiteSpace:\n (columnDef.header?.length ?? 0) < 24 ? 'nowrap' : 'normal',\n }}\n >\n {headerElement}\n {column.getCanSort() && (\n <MRT_TableHeadCellSortLabel header={header} table={table} />\n )}\n {column.getCanFilter() && (\n <MRT_TableHeadCellFilterLabel header={header} table={table} />\n )}\n </Box>\n {columnDefType !== 'group' && (\n <Box sx={{ whiteSpace: 'nowrap' }}>\n {((enableColumnDragging &&\n columnDef.enableColumnDragging !== false) ||\n (enableColumnOrdering &&\n columnDef.enableColumnOrdering !== false) ||\n (enableGrouping && columnDef.enableGrouping !== false)) && (\n <MRT_TableHeadCellGrabHandle\n column={column}\n table={table}\n tableHeadCellRef={tableHeadCellRef}\n />\n )}\n {(enableColumnActions || columnDef.enableColumnActions) &&\n columnDef.enableColumnActions !== false && (\n <MRT_TableHeadCellColumnActionsButton\n header={header}\n table={table}\n />\n )}\n </Box>\n )}\n {column.getCanResize() && (\n <MRT_TableHeadCellResizeHandle header={header} table={table} />\n )}\n </Box>\n )}\n {column.getCanFilter() && (\n <MRT_TableHeadCellFilterContainer header={header} table={table} />\n )}\n </TableCell>\n );\n};\n","import React, { FC } from 'react';\nimport { alpha, lighten, TableRow } from '@mui/material';\nimport { MRT_TableHeadCell } from './MRT_TableHeadCell';\nimport type { MRT_Header, MRT_HeaderGroup, MRT_TableInstance } from '..';\n\ninterface Props {\n headerGroup: MRT_HeaderGroup;\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableHeadRow: FC<Props> = ({ headerGroup, table }) => {\n const {\n options: { muiTableHeadRowProps },\n } = table;\n\n const tableRowProps =\n muiTableHeadRowProps instanceof Function\n ? muiTableHeadRowProps({ headerGroup, table })\n : muiTableHeadRowProps;\n\n return (\n <TableRow\n {...tableRowProps}\n sx={(theme) => ({\n boxShadow: `4px 0 8px ${alpha(theme.palette.common.black, 0.1)}`,\n backgroundColor: lighten(theme.palette.background.default, 0.04),\n ...(tableRowProps?.sx as any),\n })}\n >\n {headerGroup.headers.map((header: MRT_Header, index) => (\n <MRT_TableHeadCell\n header={header}\n key={header.id || index}\n table={table}\n />\n ))}\n </TableRow>\n );\n};\n","import React, { FC } from 'react';\nimport { TableHead } from '@mui/material';\nimport { MRT_TableHeadRow } from './MRT_TableHeadRow';\nimport type { MRT_TableInstance } from '..';\n\ninterface Props {\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableHead: FC<Props> = ({ table }) => {\n const {\n getHeaderGroups,\n options: { muiTableHeadProps },\n } = table;\n\n const tableHeadProps =\n muiTableHeadProps instanceof Function\n ? muiTableHeadProps({ table })\n : muiTableHeadProps;\n\n return (\n <TableHead {...tableHeadProps}>\n {getHeaderGroups().map((headerGroup) => (\n <MRT_TableHeadRow\n headerGroup={headerGroup as any}\n key={headerGroup.id}\n table={table}\n />\n ))}\n </TableHead>\n );\n};\n","import React, {\n ChangeEvent,\n FC,\n FocusEvent,\n MouseEvent,\n useState,\n} from 'react';\nimport { TextField } from '@mui/material';\nimport type { MRT_Cell, MRT_Row, MRT_TableInstance } from '..';\n\ninterface Props {\n cell: MRT_Cell;\n table: MRT_TableInstance;\n}\n\nexport const MRT_EditCellTextField: FC<Props> = ({ cell, table }) => {\n const {\n getState,\n options: {\n tableId,\n enableEditing,\n muiTableBodyCellEditTextFieldProps,\n onCellEditBlur,\n onCellEditChange,\n },\n setCurrentEditingCell,\n setCurrentEditingRow,\n } = table;\n const { column, row } = cell;\n const { columnDef } = column;\n\n const [value, setValue] = useState(cell.getValue<string>());\n\n const handleChange = (event: ChangeEvent<HTMLInputElement>) => {\n setValue(event.target.value);\n columnDef.onCellEditChange?.({ event, cell, table });\n onCellEditChange?.({ event, cell, table });\n };\n\n const handleBlur = (event: FocusEvent<HTMLInputElement>) => {\n if (getState().currentEditingRow) {\n if (!row._valuesCache) row._valuesCache = {};\n (row._valuesCache as Record<string, any>)[column.id] = value;\n setCurrentEditingRow({ ...getState().currentEditingRow } as MRT_Row);\n }\n setCurrentEditingCell(null);\n columnDef.onCellEditBlur?.({ event, cell, table });\n onCellEditBlur?.({ event, cell, table });\n };\n\n const mTableBodyCellEditTextFieldProps =\n muiTableBodyCellEditTextFieldProps instanceof Function\n ? muiTableBodyCellEditTextFieldProps({ cell, table })\n : muiTableBodyCellEditTextFieldProps;\n\n const mcTableBodyCellEditTextFieldProps =\n columnDef.muiTableBodyCellEditTextFieldProps instanceof Function\n ? columnDef.muiTableBodyCellEditTextFieldProps({\n cell,\n table,\n })\n : columnDef.muiTableBodyCellEditTextFieldProps;\n\n const textFieldProps = {\n ...mTableBodyCellEditTextFieldProps,\n ...mcTableBodyCellEditTextFieldProps,\n };\n\n if (enableEditing && columnDef.enableEditing !== false && columnDef.Edit) {\n return <>{columnDef.Edit?.({ cell, table })}</>;\n }\n\n return (\n <TextField\n id={`mrt-${tableId}-edit-cell-text-field-${cell.id}`}\n margin=\"dense\"\n onBlur={handleBlur}\n onChange={handleChange}\n onClick={(e: MouseEvent<HTMLInputElement>) => e.stopPropagation()}\n placeholder={columnDef.header}\n value={value}\n variant=\"standard\"\n {...textFieldProps}\n />\n );\n};\n","import React, { FC, ReactNode, useState } from 'react';\nimport { Button, Tooltip } from '@mui/material';\nimport { MRT_Cell, MRT_TableInstance } from '..';\n\ninterface Props {\n cell: MRT_Cell;\n children: ReactNode;\n table: MRT_TableInstance;\n}\n\nexport const MRT_CopyButton: FC<Props> = ({ cell, children, table }) => {\n const {\n options: { localization, muiTableBodyCellCopyButtonProps },\n } = table;\n const { column } = cell;\n const { columnDef } = column;\n\n const [copied, setCopied] = useState(false);\n\n const handleCopy = (text: unknown) => {\n navigator.clipboard.writeText(text as string);\n setCopied(true);\n setTimeout(() => setCopied(false), 4000);\n };\n\n const mTableBodyCellCopyButtonProps =\n muiTableBodyCellCopyButtonProps instanceof Function\n ? muiTableBodyCellCopyButtonProps({ cell, table })\n : muiTableBodyCellCopyButtonProps;\n\n const mcTableBodyCellCopyButtonProps =\n columnDef.muiTableBodyCellCopyButtonProps instanceof Function\n ? columnDef.muiTableBodyCellCopyButtonProps({\n cell,\n table,\n })\n : columnDef.muiTableBodyCellCopyButtonProps;\n\n const buttonProps = {\n ...mTableBodyCellCopyButtonProps,\n ...mcTableBodyCellCopyButtonProps,\n };\n\n return (\n <Tooltip\n arrow\n enterDelay={1000}\n enterNextDelay={1000}\n placement=\"top\"\n title={copied ? localization.copiedToClipboard : localization.clickToCopy}\n >\n <Button\n onClick={() => handleCopy(cell.getValue())}\n size=\"small\"\n type=\"button\"\n variant=\"text\"\n {...buttonProps}\n sx={(theme) => ({\n backgroundColor: 'transparent',\n border: 'none',\n color: 'inherit',\n cursor: 'copy',\n fontFamily: 'inherit',\n fontSize: 'inherit',\n letterSpacing: 'inherit',\n m: '-0.25rem',\n minWidth: 'unset',\n textAlign: 'inherit',\n textTransform: 'inherit',\n ...(buttonProps?.sx instanceof Function\n ? buttonProps.sx(theme)\n : (buttonProps?.sx as any)),\n })}\n >\n {children}\n </Button>\n </Tooltip>\n );\n};\n","import React, { DragEvent, FC, RefObject } from 'react';\nimport { MRT_Cell, MRT_TableInstance } from '..';\nimport { MRT_GrabHandleButton } from '../buttons/MRT_GrabHandleButton';\n\ninterface Props {\n cell: MRT_Cell;\n rowRef: RefObject<HTMLTableRowElement>;\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableBodyRowGrabHandle: FC<Props> = ({\n cell,\n rowRef,\n table,\n}) => {\n const {\n options: { muiTableBodyRowDragHandleProps, onRowDrop },\n } = table;\n\n const iconButtonProps =\n muiTableBodyRowDragHandleProps instanceof Function\n ? muiTableBodyRowDragHandleProps({ row: cell.row, table })\n : muiTableBodyRowDragHandleProps;\n\n const handleDragStart = (e: DragEvent<HTMLButtonElement>) => {\n e.dataTransfer.setDragImage(rowRef.current as HTMLElement, 0, 0);\n table.setCurrentDraggingRow(cell.row as any);\n };\n\n const handleDragEnd = (event: DragEvent<HTMLButtonElement>) => {\n onRowDrop?.({\n event,\n draggedRow: table.getState().currentDraggingRow as any,\n targetRow: table.getState().currentHoveredRow as any,\n });\n table.setCurrentDraggingRow(null);\n table.setCurrentHoveredRow(null);\n };\n\n return (\n <MRT_GrabHandleButton\n iconButtonProps={iconButtonProps}\n onDragStart={handleDragStart}\n onDragEnd={handleDragEnd}\n table={table}\n />\n );\n};\n","import React, { DragEvent, FC, MouseEvent, RefObject, useMemo } from 'react';\nimport {\n alpha,\n darken,\n lighten,\n Skeleton,\n TableCell,\n useTheme,\n} from '@mui/material';\nimport { MRT_EditCellTextField } from '../inputs/MRT_EditCellTextField';\nimport { MRT_CopyButton } from '../buttons/MRT_CopyButton';\nimport type { MRT_Cell, MRT_TableInstance } from '..';\nimport { MRT_TableBodyRowGrabHandle } from './MRT_TableBodyRowGrabHandle';\n\ninterface Props {\n cell: MRT_Cell;\n enableHover?: boolean;\n rowIndex: number;\n rowRef: RefObject<HTMLTableRowElement>;\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableBodyCell: FC<Props> = ({\n cell,\n enableHover,\n rowIndex,\n rowRef,\n table,\n}) => {\n const theme = useTheme();\n const {\n getState,\n options: {\n editingMode,\n enableClickToCopy,\n enableColumnOrdering,\n enableEditing,\n enablePagination,\n enableRowNumbers,\n muiTableBodyCellProps,\n muiTableBodyCellSkeletonProps,\n rowNumberMode,\n tableId,\n },\n setCurrentEditingCell,\n setCurrentHoveredColumn,\n } = table;\n const {\n currentDraggingColumn,\n currentEditingCell,\n currentEditingRow,\n currentHoveredColumn,\n density,\n isLoading,\n showSkeletons,\n } = getState();\n const { column, row } = cell;\n const { columnDef } = column;\n const { columnDefType } = columnDef;\n\n const mTableCellBodyProps =\n muiTableBodyCellProps instanceof Function\n ? muiTableBodyCellProps({ cell, table })\n : muiTableBodyCellProps;\n\n const mcTableCellBodyProps =\n columnDef.muiTableBodyCellProps instanceof Function\n ? columnDef.muiTableBodyCellProps({ cell, table })\n : columnDef.muiTableBodyCellProps;\n\n const tableCellProps = {\n ...mTableCellBodyProps,\n ...mcTableCellBodyProps,\n };\n\n const skeletonWidth = useMemo(\n () =>\n columnDefType === 'display'\n ? column.getSize() / 2\n : Math.random() * (column.getSize() - column.getSize() / 3) +\n column.getSize() / 3,\n [],\n );\n\n const isEditable =\n (enableEditing || columnDef.enableEditing) &&\n columnDef.enableEditing !== false;\n\n const isEditing =\n isEditable &&\n (editingMode === 'table' ||\n currentEditingRow?.id === row.id ||\n currentEditingCell?.id === cell.id);\n\n const handleDoubleClick = (_event: MouseEvent<HTMLTableCellElement>) => {\n if (\n (enableEditing || columnDef.enableEditing) &&\n columnDef.enableEditing !== false &&\n editingMode === 'cell'\n ) {\n setCurrentEditingCell(cell);\n setTimeout(() => {\n const textField = document.getElementById(\n `mrt-${tableId}-edit-cell-text-field-${cell.id}`,\n ) as HTMLInputElement;\n if (textField) {\n textField.focus();\n textField.select();\n }\n }, 200);\n }\n };\n\n const getIsLastLeftPinnedColumn = () => {\n return (\n column.getIsPinned() === 'left' &&\n table.getLeftLeafHeaders().length - 1 === column.getPinnedIndex()\n );\n };\n\n const getIsFirstRightPinnedColumn = () => {\n return column.getIsPinned() === 'right' && column.getPinnedIndex() === 0;\n };\n\n const getTotalRight = () => {\n return (\n (table.getRightLeafHeaders().length - 1 - column.getPinnedIndex()) * 150\n );\n };\n\n const handleDragEnter = (_e: DragEvent) => {\n if (enableColumnOrdering && currentDraggingColumn) {\n setCurrentHoveredColumn(\n columnDef.enableColumnOrdering !== false ? column : null,\n );\n }\n };\n\n const draggingBorder =\n currentDraggingColumn?.id === column.id\n ? `1px dashed ${theme.palette.divider}`\n : currentHoveredColumn?.id === column.id\n ? `2px dashed ${theme.palette.primary.main}`\n : undefined;\n\n const draggingBorders = draggingBorder\n ? {\n borderLeft: draggingBorder,\n borderRight: draggingBorder,\n borderBottom:\n row.index ===\n (enablePagination\n ? table.getRowModel()\n : table.getPrePaginationRowModel()\n ).rows.length -\n 1\n ? draggingBorder\n : undefined,\n }\n : undefined;\n\n return (\n <TableCell\n onDoubleClick={handleDoubleClick}\n onDragEnter={handleDragEnter}\n {...tableCellProps}\n sx={(theme) => ({\n backgroundColor: column.getIsPinned()\n ? alpha(lighten(theme.palette.background.default, 0.04), 0.95)\n : undefined,\n boxShadow: getIsLastLeftPinnedColumn()\n ? `4px 0 4px -2px ${alpha(theme.palette.common.black, 0.1)}`\n : getIsFirstRightPinnedColumn()\n ? `-4px 0 4px -2px ${alpha(theme.palette.common.black, 0.1)}`\n : undefined,\n cursor: isEditable && editingMode === 'cell' ? 'pointer' : 'text',\n left:\n column.getIsPinned() === 'left'\n ? `${column.getStart('left')}px`\n : undefined,\n opacity:\n currentDraggingColumn?.id === column.id ||\n currentHoveredColumn?.id === column.id\n ? 0.5\n : 1,\n overflow: 'hidden',\n p:\n density === 'compact'\n ? columnDefType === 'display'\n ? '0 0.5rem'\n : '0.5rem'\n : density === 'comfortable'\n ? columnDefType === 'display'\n ? '0.5rem 0.75rem'\n : '1rem'\n : columnDefType === 'display'\n ? '1rem 1.25rem'\n : '1.5rem',\n pl:\n column.id === 'mrt-row-expand'\n ? `${\n row.depth +\n (density === 'compact'\n ? 0.5\n : density === 'comfortable'\n ? 0.75\n : 1.25)\n }rem`\n : undefined,\n position: column.getIsPinned() ? 'sticky' : 'relative',\n right:\n column.getIsPinned() === 'right' ? `${getTotalRight()}px` : undefined,\n textOverflow: columnDefType !== 'display' ? 'ellipsis' : undefined,\n transition: 'all 0.2s ease-in-out',\n whiteSpace: density === 'compact' ? 'nowrap' : 'normal',\n zIndex:\n currentDraggingColumn?.id === column.id\n ? 2\n : column.getIsPinned()\n ? 1\n : undefined,\n '&:hover': {\n backgroundColor:\n enableHover && enableEditing && editingMode !== 'row'\n ? theme.palette.mode === 'dark'\n ? `${lighten(\n theme.palette.background.default,\n 0.13,\n )} !important`\n : `${darken(theme.palette.background.default, 0.07)} !important`\n : undefined,\n },\n ...(tableCellProps?.sx instanceof Function\n ? tableCellProps.sx(theme)\n : (tableCellProps?.sx as any)),\n ...draggingBorders,\n maxWidth: `min(${column.getSize()}px, fit-content)`,\n minWidth: `max(${column.getSize()}px, ${columnDef.minSize ?? 30}px)`,\n width: column.getSize(),\n })}\n >\n <>\n {cell.getIsPlaceholder() ? null : isLoading || showSkeletons ? (\n <Skeleton\n animation=\"wave\"\n height={20}\n width={skeletonWidth}\n {...muiTableBodyCellSkeletonProps}\n />\n ) : enableRowNumbers &&\n rowNumberMode === 'static' &&\n column.id === 'mrt-row-numbers' ? (\n rowIndex + 1\n ) : column.id === 'mrt-row-drag' ? (\n <MRT_TableBodyRowGrabHandle\n cell={cell}\n rowRef={rowRef}\n table={table}\n />\n ) : columnDefType === 'display' ? (\n columnDef.Cell?.({ cell, table })\n ) : isEditing ? (\n <MRT_EditCellTextField cell={cell} table={table} />\n ) : (enableClickToCopy || columnDef.enableClickToCopy) &&\n columnDef.enableClickToCopy !== false ? (\n <>\n <MRT_CopyButton cell={cell} table={table}>\n <>{columnDef?.Cell?.({ cell, table }) ?? cell.renderValue()}</>\n </MRT_CopyButton>\n {cell.getIsGrouped() && <> ({row.subRows?.length})</>}\n </>\n ) : (\n <>\n {columnDef?.Cell?.({ cell, table }) ?? cell.renderValue()}\n {cell.getIsGrouped() && <> ({row.subRows?.length ?? ''})</>}\n </>\n )}\n </>\n </TableCell>\n );\n};\n","import React, { FC } from 'react';\nimport { Collapse, TableCell, TableRow } from '@mui/material';\nimport type { MRT_Row, MRT_TableInstance } from '..';\n\ninterface Props {\n row: MRT_Row;\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableDetailPanel: FC<Props> = ({ row, table }) => {\n const {\n getVisibleLeafColumns,\n options: {\n muiTableBodyRowProps,\n muiTableDetailPanelProps,\n renderDetailPanel,\n },\n } = table;\n\n const tableRowProps =\n muiTableBodyRowProps instanceof Function\n ? muiTableBodyRowProps({ row, table })\n : muiTableBodyRowProps;\n\n const tableCellProps =\n muiTableDetailPanelProps instanceof Function\n ? muiTableDetailPanelProps({ row, table })\n : muiTableDetailPanelProps;\n\n return (\n <TableRow {...tableRowProps}>\n <TableCell\n colSpan={getVisibleLeafColumns().length}\n {...tableCellProps}\n sx={(theme) => ({\n borderBottom: !row.getIsExpanded() ? 'none' : undefined,\n pb: row.getIsExpanded() ? '1rem' : 0,\n pt: row.getIsExpanded() ? '1rem' : 0,\n transition: 'all 0.2s ease-in-out',\n width: `${table.getTotalSize()}px`,\n ...(tableCellProps?.sx instanceof Function\n ? tableCellProps.sx(theme)\n : (tableCellProps?.sx as any)),\n })}\n >\n {renderDetailPanel && (\n <Collapse in={row.getIsExpanded()}>\n {renderDetailPanel({ row, table })}\n </Collapse>\n )}\n </TableCell>\n </TableRow>\n );\n};\n","import React, { DragEvent, FC, useRef } from 'react';\nimport { darken, lighten, TableRow, useTheme } from '@mui/material';\nimport { MRT_TableBodyCell } from './MRT_TableBodyCell';\nimport { MRT_TableDetailPanel } from './MRT_TableDetailPanel';\nimport type { MRT_Row, MRT_TableInstance } from '..';\n\ninterface Props {\n row: MRT_Row;\n rowIndex: number;\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableBodyRow: FC<Props> = ({ row, rowIndex, table }) => {\n const theme = useTheme();\n const {\n getIsSomeColumnsPinned,\n getState,\n options: { enableRowOrdering, muiTableBodyRowProps, renderDetailPanel },\n setCurrentHoveredRow,\n } = table;\n const { currentDraggingRow, currentHoveredRow } = getState();\n\n const tableRowProps =\n muiTableBodyRowProps instanceof Function\n ? muiTableBodyRowProps({ row, table })\n : muiTableBodyRowProps;\n\n const handleDragEnter = (_e: DragEvent) => {\n if (enableRowOrdering && currentDraggingRow) {\n setCurrentHoveredRow(row);\n }\n };\n\n const rowRef = useRef<HTMLTableRowElement>(null);\n\n const draggingBorder =\n currentDraggingRow?.id === row.id\n ? `1px dashed ${theme.palette.divider}`\n : currentHoveredRow?.id === row.id\n ? `2px dashed ${theme.palette.primary.main}`\n : undefined;\n\n const draggingBorders = draggingBorder\n ? {\n border: draggingBorder,\n }\n : undefined;\n\n return (\n <>\n <TableRow\n onDragEnter={handleDragEnter}\n hover\n selected={row.getIsSelected()}\n ref={rowRef}\n {...tableRowProps}\n sx={(theme) => ({\n backgroundColor: lighten(theme.palette.background.default, 0.06),\n opacity:\n currentDraggingRow?.id === row.id ||\n currentHoveredRow?.id === row.id\n ? 0.5\n : 1,\n transition: 'all 0.2s ease-in-out',\n '&:hover td': {\n backgroundColor:\n tableRowProps?.hover !== false && getIsSomeColumnsPinned()\n ? theme.palette.mode === 'dark'\n ? `${lighten(theme.palette.background.default, 0.12)}`\n : `${darken(theme.palette.background.default, 0.05)}`\n : undefined,\n },\n ...(tableRowProps?.sx instanceof Function\n ? tableRowProps.sx(theme)\n : (tableRowProps?.sx as any)),\n ...draggingBorders,\n })}\n >\n {row?.getVisibleCells()?.map?.((cell) => (\n <MRT_TableBodyCell\n cell={cell}\n key={cell.id}\n enableHover={tableRowProps?.hover !== false}\n rowIndex={rowIndex}\n rowRef={rowRef}\n table={table}\n />\n ))}\n </TableRow>\n {renderDetailPanel && !row.getIsGrouped() && (\n <MRT_TableDetailPanel row={row} table={table} />\n )}\n </>\n );\n};\n","import React, { FC, RefObject, useMemo } from 'react';\nimport { useVirtualizer, Virtualizer } from '@tanstack/react-virtual';\nimport { TableBody } from '@mui/material';\nimport { MRT_TableBodyRow } from './MRT_TableBodyRow';\nimport { rankGlobalFuzzy } from '../sortingFns';\nimport type { MRT_Row, MRT_TableInstance } from '..';\n\ninterface Props {\n table: MRT_TableInstance;\n tableContainerRef: RefObject<HTMLDivElement>;\n}\n\nexport const MRT_TableBody: FC<Props> = ({ table, tableContainerRef }) => {\n const {\n getRowModel,\n getPrePaginationRowModel,\n getState,\n options: {\n enableGlobalFilterRankedResults,\n enablePagination,\n enableRowVirtualization,\n muiTableBodyProps,\n virtualizerProps,\n },\n } = table;\n const { density, globalFilter, pagination, sorting } = getState();\n\n const tableBodyProps =\n muiTableBodyProps instanceof Function\n ? muiTableBodyProps({ table })\n : muiTableBodyProps;\n\n const getIsSomeColumnsSorted = () => {\n return Object.values(sorting).some(Boolean);\n };\n\n const rows = useMemo(() => {\n if (\n enableGlobalFilterRankedResults &&\n globalFilter &&\n !getIsSomeColumnsSorted()\n ) {\n const rankedRows = getPrePaginationRowModel().rows.sort((a, b) =>\n rankGlobalFuzzy(a, b),\n );\n if (enablePagination) {\n return rankedRows.slice(0, pagination.pageSize);\n }\n return rankedRows;\n }\n\n return enablePagination\n ? getRowModel().rows\n : getPrePaginationRowModel().rows;\n }, [\n enableGlobalFilterRankedResults,\n (enableGlobalFilterRankedResults && globalFilter) || !enablePagination\n ? getPrePaginationRowModel().rows\n : getRowModel().rows,\n globalFilter,\n ]);\n\n const rowVirtualizer: Virtualizer = enableRowVirtualization\n ? useVirtualizer({\n estimateSize: () => (density === 'compact' ? 25 : 50),\n overscan: density === 'compact' ? 30 : 10,\n getScrollElement: () => tableContainerRef.current as HTMLDivElement,\n count: rows.length,\n ...virtualizerProps,\n })\n : ({} as any);\n\n const virtualRows = enableRowVirtualization\n ? rowVirtualizer.getVirtualItems()\n : [];\n\n let paddingTop = 0;\n let paddingBottom = 0;\n if (enableRowVirtualization) {\n paddingTop = !!virtualRows.length ? virtualRows[0].start : 0;\n paddingBottom = !!virtualRows.length\n ? rowVirtualizer.getTotalSize() - virtualRows[virtualRows.length - 1].end\n : 0;\n }\n\n return (\n <TableBody {...tableBodyProps}>\n {enableRowVirtualization && paddingTop > 0 && (\n <tr>\n <td style={{ height: `${paddingTop}px` }} />\n </tr>\n )}\n {/* @ts-ignore */}\n {(enableRowVirtualization ? virtualRows : rows).map(\n (rowOrVirtualRow: any, rowIndex: number) => {\n const row = enableRowVirtualization\n ? (rows[rowOrVirtualRow.index] as MRT_Row)\n : (rowOrVirtualRow as MRT_Row);\n return (\n <MRT_TableBodyRow\n key={row.id}\n row={row}\n rowIndex={\n enableRowVirtualization ? rowOrVirtualRow.index : rowIndex\n }\n table={table}\n />\n );\n },\n )}\n {enableRowVirtualization && paddingBottom > 0 && (\n <tr>\n <td style={{ height: `${paddingBottom}px` }} />\n </tr>\n )}\n </TableBody>\n );\n};\n","import React, { FC } from 'react';\nimport { alpha, TableCell } from '@mui/material';\nimport type { MRT_Header, MRT_TableInstance } from '..';\n\ninterface Props {\n footer: MRT_Header;\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableFooterCell: FC<Props> = ({ footer, table }) => {\n const {\n getState,\n options: { muiTableFooterCellProps, enableColumnResizing },\n } = table;\n const { density } = getState();\n const { column } = footer;\n const { columnDef } = column;\n const { columnDefType } = columnDef;\n\n const mTableFooterCellProps =\n muiTableFooterCellProps instanceof Function\n ? muiTableFooterCellProps({ column, table })\n : muiTableFooterCellProps;\n\n const mcTableFooterCellProps =\n columnDef.muiTableFooterCellProps instanceof Function\n ? columnDef.muiTableFooterCellProps({ column, table })\n : columnDef.muiTableFooterCellProps;\n\n const tableCellProps = {\n ...mTableFooterCellProps,\n ...mcTableFooterCellProps,\n };\n\n return (\n <TableCell\n align={columnDefType === 'group' ? 'center' : 'left'}\n colSpan={footer.colSpan}\n variant=\"head\"\n {...tableCellProps}\n sx={(theme) => ({\n backgroundColor: theme.palette.background.default,\n backgroundImage: `linear-gradient(${alpha(\n theme.palette.common.white,\n 0.05,\n )},${alpha(theme.palette.common.white, 0.05)})`,\n fontWeight: 'bold',\n maxWidth: `${column.getSize()}px`,\n minWidth: `${column.getSize()}px`,\n p:\n density === 'compact'\n ? '0.5rem'\n : density === 'comfortable'\n ? '1rem'\n : '1.5rem',\n transition: `all ${enableColumnResizing ? '10ms' : '0.2s'} ease-in-out`,\n width: column.getSize(),\n verticalAlign: 'text-top',\n ...(tableCellProps?.sx instanceof Function\n ? tableCellProps.sx(theme)\n : (tableCellProps?.sx as any)),\n })}\n >\n <>\n {footer.isPlaceholder\n ? null\n : (columnDef.Footer instanceof Function\n ? columnDef.Footer?.({\n footer,\n table,\n })\n : columnDef.Footer) ??\n columnDef.footer ??\n null}\n </>\n </TableCell>\n );\n};\n","import React, { FC } from 'react';\nimport { TableRow } from '@mui/material';\nimport { MRT_TableFooterCell } from './MRT_TableFooterCell';\nimport type { MRT_Header, MRT_HeaderGroup, MRT_TableInstance } from '..';\n\ninterface Props {\n footerGroup: MRT_HeaderGroup;\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableFooterRow: FC<Props> = ({ footerGroup, table }) => {\n const {\n options: { muiTableFooterRowProps },\n } = table;\n\n // if no content in row, skip row\n if (\n !footerGroup.headers?.some(\n (header) =>\n (typeof header.column.columnDef.footer === 'string' &&\n !!header.column.columnDef.footer) ||\n header.column.columnDef.Footer,\n )\n )\n return null;\n\n const tableRowProps =\n muiTableFooterRowProps instanceof Function\n ? muiTableFooterRowProps({ footerGroup, table })\n : muiTableFooterRowProps;\n\n return (\n <TableRow {...tableRowProps}>\n {footerGroup.headers.map((footer: MRT_Header) => (\n <MRT_TableFooterCell footer={footer} key={footer.id} table={table} />\n ))}\n </TableRow>\n );\n};\n","import React, { FC } from 'react';\nimport { TableFooter } from '@mui/material';\nimport { MRT_TableFooterRow } from './MRT_TableFooterRow';\nimport type { MRT_TableInstance } from '..';\n\ninterface Props {\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableFooter: FC<Props> = ({ table }) => {\n const {\n getFooterGroups,\n options: { muiTableFooterProps },\n } = table;\n\n const tableFooterProps =\n muiTableFooterProps instanceof Function\n ? muiTableFooterProps({ table })\n : muiTableFooterProps;\n\n return (\n <TableFooter {...tableFooterProps}>\n {getFooterGroups().map((footerGroup) => (\n <MRT_TableFooterRow\n footerGroup={footerGroup as any}\n key={footerGroup.id}\n table={table}\n />\n ))}\n </TableFooter>\n );\n};\n","import React, { FC, RefObject } from 'react';\nimport { Table } from '@mui/material';\nimport { MRT_TableHead } from '../head/MRT_TableHead';\nimport { MRT_TableBody } from '../body/MRT_TableBody';\nimport { MRT_TableFooter } from '../footer/MRT_TableFooter';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n tableContainerRef: RefObject<HTMLDivElement>;\n table: MRT_TableInstance;\n}\n\nexport const MRT_Table: FC<Props> = ({ tableContainerRef, table }) => {\n const {\n getState,\n options: {\n enableColumnResizing,\n enableRowVirtualization,\n enableStickyHeader,\n enableTableFooter,\n enableTableHead,\n muiTableProps,\n },\n } = table;\n const { isFullScreen } = getState();\n\n const tableProps =\n muiTableProps instanceof Function\n ? muiTableProps({ table })\n : muiTableProps;\n\n return (\n <Table\n stickyHeader={\n enableStickyHeader || enableRowVirtualization || isFullScreen\n }\n {...tableProps}\n sx={(theme) => ({\n tableLayout:\n enableColumnResizing || enableRowVirtualization ? 'fixed' : 'auto',\n ...(tableProps?.sx instanceof Function\n ? tableProps.sx(theme)\n : (tableProps?.sx as any)),\n })}\n >\n {enableTableHead && <MRT_TableHead table={table} />}\n <MRT_TableBody tableContainerRef={tableContainerRef} table={table} />\n {enableTableFooter && <MRT_TableFooter table={table} />}\n </Table>\n );\n};\n","import React, { FC, useEffect, useLayoutEffect, useState } from 'react';\nimport { TableContainer } from '@mui/material';\nimport { MRT_Table } from './MRT_Table';\nimport type { MRT_TableInstance } from '..';\n\nconst useIsomorphicLayoutEffect =\n typeof window !== 'undefined' ? useLayoutEffect : useEffect;\n\ninterface Props {\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableContainer: FC<Props> = ({ table }) => {\n const {\n getState,\n options: {\n enableStickyHeader,\n enableRowVirtualization,\n muiTableContainerProps,\n tableId,\n },\n } = table;\n const { isFullScreen } = getState();\n\n const [totalToolbarHeight, setTotalToolbarHeight] = useState(0);\n\n const tableContainerProps =\n muiTableContainerProps instanceof Function\n ? muiTableContainerProps({ table })\n : muiTableContainerProps;\n\n useIsomorphicLayoutEffect(() => {\n const topToolbarHeight =\n typeof document !== 'undefined'\n ? document?.getElementById(`mrt-${tableId}-toolbar-top`)\n ?.offsetHeight ?? 0\n : 0;\n\n const bottomToolbarHeight =\n typeof document !== 'undefined'\n ? document?.getElementById(`mrt-${tableId}-toolbar-bottom`)\n ?.offsetHeight ?? 0\n : 0;\n\n setTotalToolbarHeight(topToolbarHeight + bottomToolbarHeight);\n });\n\n const tableContainerRef = React.useRef<HTMLDivElement>(null);\n\n return (\n <TableContainer\n ref={tableContainerRef}\n {...tableContainerProps}\n sx={(theme) => ({\n maxWidth: '100%',\n maxHeight:\n enableStickyHeader || enableRowVirtualization\n ? `clamp(350px, calc(100vh - ${totalToolbarHeight}px), 9999px)`\n : undefined,\n overflow: 'auto',\n ...(tableContainerProps?.sx instanceof Function\n ? tableContainerProps.sx(theme)\n : (tableContainerProps?.sx as any)),\n })}\n style={{\n maxHeight: isFullScreen\n ? `calc(100vh - ${totalToolbarHeight}px)`\n : undefined,\n ...tableContainerProps?.style,\n }}\n >\n <MRT_Table tableContainerRef={tableContainerRef} table={table} />\n </TableContainer>\n );\n};\n","import React, { FC, useEffect } from 'react';\nimport { Paper } from '@mui/material';\nimport { MRT_ToolbarTop } from '../toolbar/MRT_ToolbarTop';\nimport { MRT_ToolbarBottom } from '../toolbar/MRT_ToolbarBottom';\nimport { MRT_TableContainer } from './MRT_TableContainer';\nimport type { MRT_TableInstance } from '..';\n\ninterface Props {\n table: MRT_TableInstance;\n}\n\nexport const MRT_TablePaper: FC<Props> = ({ table }) => {\n const {\n getState,\n options: { enableToolbarBottom, enableToolbarTop, muiTablePaperProps },\n } = table;\n const { isFullScreen } = getState();\n\n useEffect(() => {\n if (typeof window !== 'undefined') {\n if (isFullScreen) {\n document.body.style.height = '100vh';\n } else {\n document.body.style.height = 'auto';\n }\n }\n }, [isFullScreen]);\n\n const tablePaperProps =\n muiTablePaperProps instanceof Function\n ? muiTablePaperProps({ table })\n : muiTablePaperProps;\n\n return (\n <Paper\n elevation={2}\n {...tablePaperProps}\n sx={{\n transition: 'all 0.2s ease-in-out',\n ...tablePaperProps?.sx,\n }}\n style={{\n ...tablePaperProps?.style,\n height: isFullScreen ? '100vh' : undefined,\n margin: isFullScreen ? '0' : undefined,\n maxHeight: isFullScreen ? '100vh' : undefined,\n maxWidth: isFullScreen ? '100vw' : undefined,\n padding: isFullScreen ? '0' : undefined,\n width: isFullScreen ? '100vw' : undefined,\n }}\n >\n {enableToolbarTop && <MRT_ToolbarTop table={table} />}\n <MRT_TableContainer table={table} />\n {enableToolbarBottom && <MRT_ToolbarBottom table={table} />}\n </Paper>\n );\n};\n","import React, { useEffect, useMemo, useState } from 'react';\nimport {\n TableState,\n getCoreRowModel,\n getExpandedRowModel,\n getFacetedRowModel,\n getFilteredRowModel,\n getGroupedRowModel,\n getPaginationRowModel,\n getSortedRowModel,\n useReactTable,\n} from '@tanstack/react-table';\nimport { Box, Dialog, Grow } from '@mui/material';\nimport { MRT_ExpandAllButton } from '../buttons/MRT_ExpandAllButton';\nimport { MRT_ExpandButton } from '../buttons/MRT_ExpandButton';\nimport { MRT_ToggleRowActionMenuButton } from '../buttons/MRT_ToggleRowActionMenuButton';\nimport { MRT_SelectCheckbox } from '../inputs/MRT_SelectCheckbox';\nimport { MRT_TablePaper } from './MRT_TablePaper';\nimport {\n prepareColumns,\n getAllLeafColumnDefs,\n getDefaultColumnOrderIds,\n} from '../column.utils';\nimport { MRT_FilterFns } from '../filtersFns';\nimport type {\n MRT_Cell,\n MRT_Column,\n MRT_ColumnDef,\n MRT_FilterOption,\n MRT_Row,\n MRT_TableInstance,\n MRT_TableState,\n MaterialReactTableProps,\n} from '..';\n\nconst defaultDisplayColumnDefOptions = {\n columnDefType: 'display',\n enableClickToCopy: false,\n enableColumnActions: false,\n enableColumnDragging: false,\n enableColumnFilter: false,\n enableColumnOrdering: false,\n enableEditing: false,\n enableGlobalFilter: false,\n enableGrouping: false,\n enableHiding: false,\n enablePinning: false,\n enableResizing: false,\n enableSorting: false,\n} as Partial<MRT_ColumnDef>;\n\nexport const MRT_TableRoot = <TData extends Record<string, any> = {}>(\n props: MaterialReactTableProps<TData>,\n) => {\n const [tableId, setIdPrefix] = useState(props.tableId);\n useEffect(\n () =>\n setIdPrefix(props.tableId ?? Math.random().toString(36).substring(2, 9)),\n [props.tableId],\n );\n\n const initialState: Partial<MRT_TableState<TData>> = useMemo(() => {\n const initState = props.initialState ?? {};\n initState.columnOrder =\n initState.columnOrder ?? getDefaultColumnOrderIds(props);\n return initState;\n }, []);\n\n const [columnOrder, setColumnOrder] = useState(\n initialState.columnOrder ?? [],\n );\n const [currentDraggingColumn, setCurrentDraggingColumn] =\n useState<MRT_Column<TData> | null>(\n initialState.currentDraggingColumn ?? null,\n );\n const [currentDraggingRow, setCurrentDraggingRow] =\n useState<MRT_Row<TData> | null>(initialState.currentDraggingRow ?? null);\n const [currentEditingCell, setCurrentEditingCell] =\n useState<MRT_Cell<TData> | null>(initialState.currentEditingCell ?? null);\n const [currentEditingRow, setCurrentEditingRow] =\n useState<MRT_Row<TData> | null>(initialState.currentEditingRow ?? null);\n const [currentHoveredColumn, setCurrentHoveredColumn] =\n useState<MRT_Column<TData> | null>(\n initialState.currentHoveredColumn ?? null,\n );\n const [currentHoveredRow, setCurrentHoveredRow] =\n useState<MRT_Row<TData> | null>(initialState.currentHoveredRow ?? null);\n const [density, setDensity] = useState(\n initialState?.density ?? 'comfortable',\n );\n const [isFullScreen, setIsFullScreen] = useState(\n initialState?.isFullScreen ?? false,\n );\n const [showAlertBanner, setShowAlertBanner] = useState(\n props.initialState?.showAlertBanner ?? false,\n );\n const [showColumnFilters, setShowFilters] = useState(\n initialState?.showColumnFilters ?? false,\n );\n const [showGlobalFilter, setShowGlobalFilter] = useState(\n initialState?.showGlobalFilter ?? false,\n );\n const [currentFilterFns, setCurrentFilterFns] = useState<{\n [key: string]: MRT_FilterOption;\n }>(() =>\n Object.assign(\n {},\n ...getAllLeafColumnDefs(props.columns as MRT_ColumnDef<TData>[]).map(\n (col) => ({\n [col.id?.toString() ?? col.accessorKey?.toString() ?? '']:\n col.filterFn instanceof Function\n ? col.filterFn.name ?? 'custom'\n : col.filterFn ??\n initialState?.currentFilterFns?.[\n col.id?.toString() ?? col.accessorKey?.toString() ?? ''\n ] ??\n (!!col.filterSelectOptions?.length ? 'equals' : 'fuzzy'),\n }),\n ),\n ),\n );\n const [currentGlobalFilterFn, setCurrentGlobalFilterFn] =\n useState<MRT_FilterOption>(\n props.globalFilterFn instanceof String\n ? (props.globalFilterFn as MRT_FilterOption)\n : 'fuzzy',\n );\n\n const displayColumns = useMemo(\n () =>\n (\n [\n columnOrder.includes('mrt-row-drag') && {\n header: props.localization?.move,\n size: 60,\n ...defaultDisplayColumnDefOptions,\n ...props.displayColumnDefOptions?.['mrt-row-drag'],\n id: 'mrt-row-drag',\n },\n columnOrder.includes('mrt-row-actions') && {\n Cell: ({ cell }) => (\n <MRT_ToggleRowActionMenuButton\n row={cell.row as any}\n table={table}\n />\n ),\n header: props.localization?.actions,\n size: 70,\n ...defaultDisplayColumnDefOptions,\n ...props.displayColumnDefOptions?.['mrt-row-actions'],\n id: 'mrt-row-actions',\n },\n columnOrder.includes('mrt-row-expand') && {\n Cell: ({ cell }) => (\n <MRT_ExpandButton row={cell.row as any} table={table} />\n ),\n Header: () =>\n props.enableExpandAll ? (\n <MRT_ExpandAllButton table={table} />\n ) : null,\n header: props.localization?.expand,\n size: 60,\n ...defaultDisplayColumnDefOptions,\n ...props.displayColumnDefOptions?.['mrt-row-expand'],\n id: 'mrt-row-expand',\n },\n columnOrder.includes('mrt-row-select') && {\n Cell: ({ cell }) => (\n <MRT_SelectCheckbox row={cell.row as any} table={table} />\n ),\n Header: () =>\n props.enableSelectAll ? (\n <MRT_SelectCheckbox selectAll table={table} />\n ) : null,\n header: props.localization?.select,\n size: 60,\n ...defaultDisplayColumnDefOptions,\n ...props.displayColumnDefOptions?.['mrt-row-select'],\n id: 'mrt-row-select',\n },\n columnOrder.includes('mrt-row-numbers') && {\n Cell: ({ cell }) => cell.row.index + 1,\n Header: () => props.localization?.rowNumber,\n header: props.localization?.rowNumbers,\n size: 60,\n ...defaultDisplayColumnDefOptions,\n ...props.displayColumnDefOptions?.['mrt-row-numbers'],\n id: 'mrt-row-numbers',\n },\n ] as MRT_ColumnDef<TData>[]\n ).filter(Boolean),\n [\n columnOrder,\n props.displayColumnDefOptions,\n props.editingMode,\n props.enableColumnDragging,\n props.enableColumnOrdering,\n props.enableEditing,\n props.enableExpandAll,\n props.enableExpanding,\n props.enableGrouping,\n props.enableRowActions,\n props.enableRowDragging,\n props.enableRowNumbers,\n props.enableRowOrdering,\n props.enableRowSelection,\n props.enableSelectAll,\n props.localization,\n props.muiTableBodyCellProps,\n props.muiTableHeadCellProps,\n props.positionActionsColumn,\n ],\n );\n\n const columnDefs = useMemo(\n () =>\n prepareColumns([...displayColumns, ...props.columns], currentFilterFns),\n [currentFilterFns, displayColumns, props.columns],\n );\n\n const data: TData[] = useMemo(\n () =>\n (props.state?.isLoading || props.state?.showSkeletons) &&\n !props.data.length\n ? [...Array(10).fill(null)].map(() =>\n Object.assign(\n {},\n ...getAllLeafColumnDefs(props.columns as MRT_ColumnDef[]).map(\n (col) => ({\n [col.id ?? col.accessorKey ?? '']: null,\n }),\n ),\n ),\n )\n : props.data,\n [props.data, props.state?.isLoading, props.state?.showSkeletons],\n );\n\n //@ts-ignore\n const table = {\n ...useReactTable({\n getCoreRowModel: getCoreRowModel(),\n getExpandedRowModel: getExpandedRowModel(),\n getFacetedRowModel: getFacetedRowModel(),\n getFilteredRowModel: getFilteredRowModel(),\n getGroupedRowModel: getGroupedRowModel(),\n getPaginationRowModel: getPaginationRowModel(),\n getSortedRowModel: getSortedRowModel(),\n onColumnOrderChange: setColumnOrder,\n ...props,\n //@ts-ignore\n columns: columnDefs,\n data,\n getSubRows: (row) => row?.subRows,\n globalFilterFn:\n MRT_FilterFns[currentGlobalFilterFn] ?? MRT_FilterFns.fuzzy,\n initialState,\n state: {\n columnOrder,\n currentDraggingColumn,\n currentDraggingRow,\n currentEditingCell,\n currentEditingRow,\n currentFilterFns,\n currentGlobalFilterFn,\n currentHoveredColumn,\n currentHoveredRow,\n density,\n isFullScreen,\n showAlertBanner,\n showColumnFilters,\n showGlobalFilter,\n ...props.state,\n } as TableState,\n tableId,\n }),\n setCurrentDraggingColumn:\n props.onCurrentDraggingColumnChange ?? setCurrentDraggingColumn,\n setCurrentDraggingRow:\n props.onCurrentDraggingRowChange ?? setCurrentDraggingRow,\n setCurrentEditingCell:\n props.onCurrentEditingCellChange ?? setCurrentEditingCell,\n setCurrentEditingRow:\n props.onCurrentEditingRowChange ?? setCurrentEditingRow,\n setCurrentFilterFns: props.onCurrentFilterFnsChange ?? setCurrentFilterFns,\n setCurrentGlobalFilterFn:\n props.onCurrentGlobalFilterFnChange ?? setCurrentGlobalFilterFn,\n setCurrentHoveredColumn:\n props.onCurrentHoveredColumnChange ?? setCurrentHoveredColumn,\n setCurrentHoveredRow:\n props.onCurrentHoveredRowChange ?? setCurrentHoveredRow,\n setDensity: props.onDensityChange ?? setDensity,\n setIsFullScreen: props.onIsFullScreenChange ?? setIsFullScreen,\n setShowAlertBanner: props.onShowAlertBannerChange ?? setShowAlertBanner,\n setShowFilters: props.onShowFiltersChange ?? setShowFilters,\n setShowGlobalFilter: props.onShowGlobalFilterChange ?? setShowGlobalFilter,\n } as MRT_TableInstance;\n\n useEffect(() => props?.onTableInstanceChange?.(table as any), [table]);\n\n return (\n <>\n <Dialog\n PaperComponent={Box}\n TransitionComponent={Grow}\n disablePortal\n fullScreen\n keepMounted={false}\n onClose={() => setIsFullScreen(false)}\n open={isFullScreen}\n transitionDuration={400}\n >\n <MRT_TablePaper table={table} />\n </Dialog>\n {!isFullScreen && <MRT_TablePaper table={table} />}\n </>\n );\n};\n","import React, {\n ChangeEvent,\n Dispatch,\n DragEvent,\n FC,\n FocusEvent,\n ReactNode,\n SetStateAction,\n} from 'react';\nimport type {\n AlertProps,\n ButtonProps,\n CheckboxProps,\n IconButtonProps,\n LinearProgressProps,\n PaperProps,\n SkeletonProps,\n TableBodyProps,\n TableCellProps,\n TableContainerProps,\n TableFooterProps,\n TableHeadProps,\n TablePaginationProps,\n TableProps,\n TableRowProps,\n TextFieldProps,\n ToolbarProps,\n} from '@mui/material';\nimport type {\n Cell,\n Column,\n ColumnDef,\n FilterFn,\n Header,\n HeaderGroup,\n OnChangeFn,\n Row,\n SortingFn,\n Table,\n TableOptions,\n TableState,\n} from '@tanstack/react-table';\nimport type { VirtualizerOptions } from '@tanstack/react-virtual';\nimport { MRT_Localization, MRT_DefaultLocalization_EN } from './localization';\nimport { MRT_Default_Icons, MRT_Icons } from './icons';\nimport { MRT_TableRoot } from './table/MRT_TableRoot';\nimport { MRT_FilterFns } from './filtersFns';\nimport { MRT_SortingFns } from './sortingFns';\n\ntype LiteralUnion<T extends U, U = string> = T | (U & Record<never, never>);\n\nexport interface MRT_RowModel<TData extends Record<string, any> = {}> {\n flatRows: MRT_Row<TData>[];\n rows: MRT_Row<TData>[];\n rowsById: { [key: string]: MRT_Row<TData> };\n}\n\nexport type MRT_TableInstance<TData extends Record<string, any> = {}> = Omit<\n Table<TData>,\n | 'getAllColumns'\n | 'getAllFlatColumns'\n | 'getAllLeafColumns'\n | 'getCenterLeafColumns'\n | 'getColumn'\n | 'getExpandedRowModel'\n | 'getFlatHeaders'\n | 'getLeftLeafColumns'\n | 'getPaginationRowModel'\n | 'getPreFilteredRowModel'\n | 'getPrePaginationRowModel'\n | 'getRightLeafColumns'\n | 'getRowModel'\n | 'getSelectedRowModel'\n | 'getState'\n | 'options'\n> & {\n getAllColumns: () => MRT_Column<TData>[];\n getAllFlatColumns: () => MRT_Column<TData>[];\n getAllLeafColumns: () => MRT_Column<TData>[];\n getCenterLeafColumns: () => MRT_Column<TData>[];\n getColumn: (columnId: string) => MRT_Column<TData>;\n getExpandedRowModel: () => MRT_RowModel<TData>;\n getFlatHeaders: () => MRT_Header<TData>[];\n getLeftLeafColumns: () => MRT_Column<TData>[];\n getPaginationRowModel: () => MRT_RowModel<TData>;\n getPreFilteredRowModel: () => MRT_RowModel<TData>;\n getPrePaginationRowModel: () => MRT_RowModel<TData>;\n getRightLeafColumns: () => MRT_Column<TData>[];\n getRowModel: () => MRT_RowModel<TData>;\n getSelectedRowModel: () => MRT_RowModel<TData>;\n getState: () => MRT_TableState<TData>;\n options: MaterialReactTableProps<TData> & {\n icons: MRT_Icons;\n tableId: string;\n localization: MRT_Localization;\n };\n setCurrentDraggingColumn: Dispatch<SetStateAction<MRT_Column<TData> | null>>;\n setCurrentDraggingRow: Dispatch<SetStateAction<MRT_Row<TData> | null>>;\n setCurrentEditingCell: Dispatch<SetStateAction<MRT_Cell | null>>;\n setCurrentEditingRow: Dispatch<SetStateAction<MRT_Row | null>>;\n setCurrentFilterFns: Dispatch<\n SetStateAction<{\n [key: string]: MRT_FilterOption;\n }>\n >;\n setCurrentGlobalFilterFn: Dispatch<SetStateAction<MRT_FilterOption>>;\n setCurrentHoveredColumn: Dispatch<SetStateAction<MRT_Column<TData> | null>>;\n setCurrentHoveredRow: Dispatch<SetStateAction<MRT_Row | null>>;\n setDensity: Dispatch<SetStateAction<'comfortable' | 'compact' | 'spacious'>>;\n setIsFullScreen: Dispatch<SetStateAction<boolean>>;\n setShowAlertBanner: Dispatch<SetStateAction<boolean>>;\n setShowFilters: Dispatch<SetStateAction<boolean>>;\n setShowGlobalFilter: Dispatch<SetStateAction<boolean>>;\n};\n\nexport type MRT_TableState<TData extends Record<string, any> = {}> =\n TableState & {\n currentDraggingColumn: MRT_Column<TData> | null;\n currentDraggingRow: MRT_Row<TData> | null;\n currentEditingCell: MRT_Cell<TData> | null;\n currentEditingRow: MRT_Row<TData> | null;\n currentFilterFns: Record<string, MRT_FilterOption>;\n currentGlobalFilterFn: Record<string, MRT_FilterOption>;\n currentHoveredColumn: MRT_Column<TData> | null;\n currentHoveredRow: MRT_Row<TData> | null;\n density: 'comfortable' | 'compact' | 'spacious';\n isFullScreen: boolean;\n isLoading: boolean;\n showAlertBanner: boolean;\n showColumnFilters: boolean;\n showGlobalFilter: boolean;\n showProgressBars: boolean;\n showSkeletons: boolean;\n };\n\nexport type MRT_ColumnDef<TData extends Record<string, any> = {}> = Omit<\n ColumnDef<TData, unknown>,\n | 'accessorFn'\n | 'accessorKey'\n | 'aggregatedCell'\n | 'cell'\n | 'columns'\n | 'filterFn'\n | 'footer'\n | 'header'\n | 'id'\n | 'sortingFn'\n> & {\n AggregatedCell?: ({\n cell,\n table,\n }: {\n cell: MRT_Cell<TData>;\n table: MRT_TableInstance<TData>;\n }) => ReactNode;\n Cell?: ({\n cell,\n table,\n }: {\n cell: MRT_Cell<TData>;\n table: MRT_TableInstance<TData>;\n }) => ReactNode;\n Edit?: ({\n cell,\n table,\n }: {\n cell: MRT_Cell<TData>;\n table: MRT_TableInstance<TData>;\n }) => ReactNode;\n Filter?: ({\n header,\n table,\n }: {\n header: MRT_Header<TData>;\n table: MRT_TableInstance<TData>;\n }) => ReactNode;\n Footer?:\n | ReactNode\n | (({\n footer,\n table,\n }: {\n footer: MRT_Header<TData>;\n table: MRT_TableInstance<TData>;\n }) => ReactNode);\n Header?:\n | ReactNode\n | (({\n header,\n table,\n }: {\n header: MRT_Header<TData>;\n table: MRT_TableInstance<TData>;\n }) => ReactNode);\n /**\n * Either an `accessorKey` or a combination of an `accessorFn` and `id` are required for a data column definition.\n * Specify a function here to point to the correct property in the data object.\n *\n * @example accessorFn: (row) => row.username\n */\n accessorFn?: (row: TData) => any;\n /**\n * Either an `accessorKey` or a combination of an `accessorFn` and `id` are required for a data column definition.\n * Specify which key in the row this column should use to access the correct data.\n *\n * @example accessorKey: 'username'\n */\n accessorKey?: string & keyof TData;\n /**\n * Specify what type of column this is. Either `data`, `display`, or `group`. Defaults to `data`.\n * Leave this blank if you are just creating a normal data column.\n *\n * @default 'data'\n *\n * @example columnDefType: 'display'\n */\n columnDefType?: 'data' | 'display' | 'group';\n columnFilterModeOptions?: MRT_FilterOption[] | null;\n columns?: MRT_ColumnDef<TData>[];\n enableClickToCopy?: boolean;\n enableColumnActions?: boolean;\n enableColumnDragging?: boolean;\n enableColumnFilterChangeMode?: boolean;\n enableColumnOrdering?: boolean;\n enableEditing?: boolean;\n filterFn?: MRT_FilterFn<TData>;\n filterSelectOptions?: (string | { text: string; value: string })[];\n /**\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 columnFilterModeOptions?: (MRT_FilterOption | string)[] | null;\n columns: MRT_ColumnDef<TData>[];\n data: TData[];\n editingMode?: 'table' | 'row' | 'cell';\n enableClickToCopy?: boolean;\n enableColumnActions?: boolean;\n enableColumnDragging?: boolean;\n enableColumnFilterChangeMode?: boolean;\n enableColumnOrdering?: boolean;\n enableDensityToggle?: boolean;\n enableEditing?: boolean;\n enableExpandAll?: boolean;\n enableFullScreenToggle?: boolean;\n enableGlobalFilterChangeMode?: boolean;\n enableGlobalFilterRankedResults?: boolean;\n enablePagination?: boolean;\n enableRowActions?: boolean;\n enableRowDragging?: boolean;\n enableRowNumbers?: boolean;\n enableRowOrdering?: boolean;\n enableRowVirtualization?: boolean;\n enableSelectAll?: boolean;\n enableStickyHeader?: boolean;\n enableTableFooter?: boolean;\n enableTableHead?: boolean;\n enableToolbarBottom?: boolean;\n enableToolbarInternalActions?: boolean;\n enableToolbarTop?: boolean;\n enabledGlobalFilterOptions?: (MRT_FilterOption | string)[] | null;\n expandRowsFn?: (dataRow: TData) => TData[];\n icons?: Partial<MRT_Icons>;\n initialState?: Partial<MRT_TableState<TData>>;\n localization?: Partial<MRT_Localization>;\n muiExpandAllButtonProps?:\n | IconButtonProps\n | (({ table }: { table: MRT_TableInstance<TData> }) => IconButtonProps);\n muiExpandButtonProps?:\n | IconButtonProps\n | (({\n table,\n }: {\n table: MRT_TableInstance<TData>;\n row: MRT_Row<TData>;\n }) => IconButtonProps);\n muiLinearProgressProps?:\n | LinearProgressProps\n | (({\n isTopToolbar,\n table,\n }: {\n isTopToolbar: boolean;\n table: MRT_TableInstance<TData>;\n }) => LinearProgressProps);\n muiSearchTextFieldProps?:\n | TextFieldProps\n | (({ table }: { table: MRT_TableInstance<TData> }) => TextFieldProps);\n muiSelectAllCheckboxProps?:\n | CheckboxProps\n | (({ table }: { table: MRT_TableInstance<TData> }) => CheckboxProps);\n muiSelectCheckboxProps?:\n | CheckboxProps\n | (({\n table,\n row,\n }: {\n table: MRT_TableInstance<TData>;\n row: MRT_Row<TData>;\n }) => CheckboxProps);\n muiTableBodyCellCopyButtonProps?:\n | ButtonProps\n | (({\n table,\n cell,\n }: {\n table: MRT_TableInstance<TData>;\n cell: MRT_Cell<TData>;\n }) => ButtonProps);\n muiTableBodyCellEditTextFieldProps?:\n | TextFieldProps\n | (({\n table,\n cell,\n }: {\n table: MRT_TableInstance<TData>;\n cell: MRT_Cell<TData>;\n }) => TextFieldProps);\n muiTableBodyCellProps?:\n | TableCellProps\n | (({\n table,\n cell,\n }: {\n table: MRT_TableInstance<TData>;\n cell: MRT_Cell<TData>;\n }) => TableCellProps);\n muiTableBodyCellSkeletonProps?:\n | SkeletonProps\n | (({\n table,\n cell,\n }: {\n table: MRT_TableInstance<TData>;\n cell: MRT_Cell<TData>;\n }) => SkeletonProps);\n muiTableBodyProps?:\n | TableBodyProps\n | (({ table }: { table: MRT_TableInstance<TData> }) => TableBodyProps);\n muiTableBodyRowDragHandleProps?:\n | IconButtonProps\n | (({\n table,\n row,\n }: {\n table: MRT_TableInstance<TData>;\n row: MRT_Row<TData>;\n }) => IconButtonProps);\n muiTableBodyRowProps?:\n | TableRowProps\n | (({\n table,\n row,\n }: {\n table: MRT_TableInstance<TData>;\n row: MRT_Row<TData>;\n }) => TableRowProps);\n muiTableContainerProps?:\n | TableContainerProps\n | (({\n table,\n }: {\n table: MRT_TableInstance<TData>;\n }) => TableContainerProps);\n muiTableDetailPanelProps?:\n | TableCellProps\n | (({\n table,\n row,\n }: {\n table: MRT_TableInstance<TData>;\n row: MRT_Row<TData>;\n }) => TableCellProps);\n muiTableFooterCellProps?:\n | TableCellProps\n | (({\n table,\n column,\n }: {\n table: MRT_TableInstance<TData>;\n column: MRT_Column<TData>;\n }) => TableCellProps);\n muiTableFooterProps?:\n | TableFooterProps\n | (({ table }: { table: MRT_TableInstance<TData> }) => TableFooterProps);\n muiTableFooterRowProps?:\n | TableRowProps\n | (({\n table,\n footerGroup,\n }: {\n table: MRT_TableInstance<TData>;\n footerGroup: MRT_HeaderGroup<TData>;\n }) => TableRowProps);\n muiTableHeadCellColumnActionsButtonProps?:\n | IconButtonProps\n | (({\n table,\n column,\n }: {\n table: MRT_TableInstance<TData>;\n column: MRT_Column<TData>;\n }) => IconButtonProps);\n muiTableHeadCellDragHandleProps?:\n | IconButtonProps\n | (({\n table,\n column,\n }: {\n table: MRT_TableInstance<TData>;\n column: MRT_Column<TData>;\n }) => IconButtonProps);\n muiTableHeadCellFilterTextFieldProps?:\n | TextFieldProps\n | (({\n table,\n column,\n }: {\n table: MRT_TableInstance<TData>;\n column: MRT_Column<TData>;\n }) => TextFieldProps);\n muiTableHeadCellProps?:\n | TableCellProps\n | (({\n table,\n column,\n }: {\n table: MRT_TableInstance<TData>;\n column: MRT_Column<TData>;\n }) => TableCellProps);\n muiTableHeadProps?:\n | TableHeadProps\n | (({ table }: { table: MRT_TableInstance<TData> }) => TableHeadProps);\n muiTableHeadRowProps?:\n | TableRowProps\n | (({\n table,\n headerGroup,\n }: {\n table: MRT_TableInstance<TData>;\n headerGroup: MRT_HeaderGroup<TData>;\n }) => TableRowProps);\n muiTablePaginationProps?:\n | Partial<TablePaginationProps>\n | (({\n table,\n }: {\n table: MRT_TableInstance<TData>;\n }) => Partial<TablePaginationProps>);\n muiTablePaperProps?:\n | PaperProps\n | (({ table }: { table: MRT_TableInstance<TData> }) => PaperProps);\n muiTableProps?:\n | TableProps\n | (({ table }: { table: MRT_TableInstance<TData> }) => TableProps);\n muiTableToolbarAlertBannerProps?:\n | AlertProps\n | (({ table }: { table: MRT_TableInstance<TData> }) => AlertProps);\n muiTableToolbarBottomProps?:\n | ToolbarProps\n | (({ table }: { table: MRT_TableInstance<TData> }) => ToolbarProps);\n muiTableToolbarTopProps?:\n | ToolbarProps\n | (({ table }: { table: MRT_TableInstance<TData> }) => ToolbarProps);\n onCellEditBlur?: ({\n cell,\n event,\n table,\n }: {\n event: FocusEvent<HTMLInputElement>;\n cell: MRT_Cell<TData>;\n table: MRT_TableInstance<TData>;\n }) => void;\n onCellEditChange?: ({\n cell,\n event,\n table,\n }: {\n event: ChangeEvent<HTMLInputElement>;\n cell: MRT_Cell<TData>;\n table: MRT_TableInstance<TData>;\n }) => void;\n onColumnDrop?: ({\n event,\n draggedColumn,\n targetColumn,\n }: {\n event: DragEvent<HTMLButtonElement>;\n draggedColumn: MRT_Column<TData>;\n targetColumn: MRT_Column<TData> | null;\n }) => void;\n onCurrentDraggingColumnChange?: OnChangeFn<MRT_Column<TData> | null>;\n onCurrentDraggingRowChange?: OnChangeFn<MRT_Row<TData> | null>;\n onCurrentEditingCellChange?: OnChangeFn<MRT_Cell<TData> | null>;\n onCurrentEditingRowChange?: OnChangeFn<MRT_Row<TData> | null>;\n onCurrentFilterFnsChange?: OnChangeFn<{ [key: string]: MRT_FilterOption }>;\n onCurrentGlobalFilterFnChange?: OnChangeFn<MRT_FilterOption>;\n onCurrentHoveredColumnChange?: OnChangeFn<MRT_Column<TData> | null>;\n onCurrentHoveredRowChange?: OnChangeFn<MRT_Row<TData> | null>;\n onDensityChange?: OnChangeFn<boolean>;\n onEditRowSubmit?: ({\n row,\n table,\n }: {\n row: MRT_Row<TData>;\n table: MRT_TableInstance<TData>;\n }) => Promise<void> | void;\n onIsFullScreenChange?: OnChangeFn<boolean>;\n onRowDrop?: ({\n event,\n draggedRow,\n targetRow,\n }: {\n event: DragEvent<HTMLButtonElement>;\n draggedRow: MRT_Row<TData>;\n targetRow: MRT_Row<TData> | null;\n }) => void;\n onShowAlertBannerChange?: OnChangeFn<boolean>;\n onShowFiltersChange?: OnChangeFn<boolean>;\n onShowGlobalFilterChange?: OnChangeFn<boolean>;\n onTableInstanceChange?: (table: MRT_TableInstance<TData>) => void;\n positionActionsColumn?: 'first' | 'last';\n positionExpandColumn?: 'first' | 'last';\n positionGlobalFilter?: 'left' | 'right';\n positionPagination?: 'bottom' | 'top' | 'both';\n positionToolbarAlertBanner?: 'bottom' | 'top';\n renderDetailPanel?: ({\n row,\n table,\n }: {\n row: MRT_Row<TData>;\n table: MRT_TableInstance<TData>;\n }) => ReactNode;\n renderRowActionMenuItems?: ({\n closeMenu,\n row,\n table,\n }: {\n closeMenu: () => void;\n row: MRT_Row<TData>;\n table: MRT_TableInstance<TData>;\n }) => ReactNode[];\n renderRowActions?: ({\n row,\n table,\n }: {\n row: MRT_Row<TData>;\n table: MRT_TableInstance<TData>;\n }) => ReactNode;\n renderToolbarBottomCustomActions?: ({\n table,\n }: {\n table: MRT_TableInstance<TData>;\n }) => ReactNode;\n renderToolbarInternalActions?: ({\n table,\n MRT_ToggleGlobalFilterButton,\n MRT_ToggleFiltersButton,\n MRT_ShowHideColumnsButton,\n MRT_ToggleDensePaddingButton,\n MRT_FullScreenToggleButton,\n }: {\n table: MRT_TableInstance<TData>;\n MRT_ToggleGlobalFilterButton: FC<\n IconButtonProps & { table: MRT_TableInstance<TData> }\n >;\n MRT_ToggleFiltersButton: FC<\n IconButtonProps & { table: MRT_TableInstance<TData> }\n >;\n MRT_ShowHideColumnsButton: FC<\n IconButtonProps & { table: MRT_TableInstance<TData> }\n >;\n MRT_ToggleDensePaddingButton: FC<\n IconButtonProps & { table: MRT_TableInstance<TData> }\n >;\n MRT_FullScreenToggleButton: FC<\n IconButtonProps & { table: MRT_TableInstance<TData> }\n >;\n }) => ReactNode;\n renderToolbarTopCustomActions?: ({\n table,\n }: {\n table: MRT_TableInstance<TData>;\n }) => ReactNode;\n rowCount?: number;\n rowNumberMode?: 'original' | 'static';\n selectAllMode?: 'all' | 'page';\n state?: Partial<MRT_TableState<TData>>;\n tableId?: string;\n virtualizerProps?: Partial<\n VirtualizerOptions<HTMLDivElement, HTMLTableRowElement>\n >;\n };\n\nexport default <TData extends Record<string, any> = {}>({\n autoResetExpanded = false,\n columnResizeMode = 'onEnd',\n defaultColumn = { minSize: 40, maxSize: 1000, size: 180 },\n editingMode = 'row',\n enableColumnActions = true,\n enableColumnFilterChangeMode = false,\n enableColumnFilters = true,\n enableColumnOrdering = false,\n enableColumnResizing = false,\n enableDensityToggle = true,\n enableExpandAll = true,\n enableFilters = true,\n enableFullScreenToggle = true,\n enableGlobalFilter = true,\n enableGlobalFilterChangeMode = false,\n enableGlobalFilterRankedResults = true,\n enableGrouping = false,\n enableHiding = true,\n enableMultiRowSelection = true,\n enableMultiSort = true,\n enablePagination = true,\n enablePinning = false,\n enableRowSelection = false,\n enableSelectAll = true,\n enableSorting = true,\n enableStickyHeader = false,\n enableTableFooter = true,\n enableTableHead = true,\n enableToolbarBottom = true,\n enableToolbarInternalActions = true,\n enableToolbarTop = true,\n icons,\n localization,\n positionActionsColumn = 'first',\n positionExpandColumn = 'first',\n positionGlobalFilter = 'right',\n positionPagination = 'bottom',\n positionToolbarAlertBanner = 'top',\n rowNumberMode = 'original',\n selectAllMode = 'all',\n ...rest\n}: MaterialReactTableProps<TData>) => (\n <MRT_TableRoot\n autoResetExpanded={autoResetExpanded}\n columnResizeMode={columnResizeMode}\n defaultColumn={defaultColumn}\n editingMode={editingMode}\n enableColumnActions={enableColumnActions}\n enableColumnFilterChangeMode={enableColumnFilterChangeMode}\n enableColumnFilters={enableColumnFilters}\n enableColumnOrdering={enableColumnOrdering}\n enableColumnResizing={enableColumnResizing}\n enableDensityToggle={enableDensityToggle}\n enableExpandAll={enableExpandAll}\n enableFilters={enableFilters}\n enableFullScreenToggle={enableFullScreenToggle}\n enableGlobalFilter={enableGlobalFilter}\n enableGlobalFilterChangeMode={enableGlobalFilterChangeMode}\n enableGlobalFilterRankedResults={enableGlobalFilterRankedResults}\n enableGrouping={enableGrouping}\n enableHiding={enableHiding}\n enableMultiRowSelection={enableMultiRowSelection}\n enableMultiSort={enableMultiSort}\n enablePagination={enablePagination}\n enablePinning={enablePinning}\n enableRowSelection={enableRowSelection}\n enableSelectAll={enableSelectAll}\n enableSorting={enableSorting}\n enableStickyHeader={enableStickyHeader}\n enableTableFooter={enableTableFooter}\n enableTableHead={enableTableHead}\n enableToolbarBottom={enableToolbarBottom}\n enableToolbarInternalActions={enableToolbarInternalActions}\n enableToolbarTop={enableToolbarTop}\n icons={{ ...MRT_Default_Icons, ...icons }}\n localization={{ ...MRT_DefaultLocalization_EN, ...localization }}\n positionActionsColumn={positionActionsColumn}\n positionExpandColumn={positionExpandColumn}\n positionGlobalFilter={positionGlobalFilter}\n positionPagination={positionPagination}\n positionToolbarAlertBanner={positionToolbarAlertBanner}\n rowNumberMode={rowNumberMode}\n selectAllMode={selectAllMode}\n {...rest}\n />\n);\n"],"names":["MRT_DefaultLocalization_EN","actions","and","cancel","changeFilterMode","changeSearchMode","clearFilter","clearSearch","clearSort","clickToCopy","columnActions","copiedToClipboard","edit","expand","expandAll","filterBetween","filterBetweenInclusive","filterByColumn","filterContains","filterEmpty","filterEndsWith","filterEquals","filterFuzzy","filterGreaterThan","filterGreaterThanOrEqualTo","filterLessThan","filterLessThanOrEqualTo","filterMode","filterNotEmpty","filterNotEquals","filterStartsWith","filteringByColumn","grab","groupByColumn","groupedBy","hideAll","hideColumn","max","min","move","pinToLeft","pinToRight","resetColumnSize","resetOrder","rowActions","rowNumber","rowNumbers","save","search","selectedCountOfRowCountRowsSelected","select","showAll","showAllColumns","showHideColumns","showHideFilters","showHideSearch","sortByColumnAsc","sortByColumnDesc","sortedByColumnAsc","sortedByColumnDesc","thenBy","toggleDensity","toggleFullScreen","toggleSelectAll","toggleSelectRow","toggleVisibility","ungroupByColumn","unpin","unpinAll","unsorted","MRT_Default_Icons","ArrowRightIcon","ArrowRight","CancelIcon","Cancel","CheckBoxIcon","CheckBox","ClearAllIcon","ClearAll","CloseIcon","Close","DensityLargeIcon","DensityLarge","DensityMediumIcon","DensityMedium","DensitySmallIcon","DensitySmall","DragHandleIcon","DragHandle","DynamicFeedIcon","DynamicFeed","EditIcon","Edit","ExpandLessIcon","ExpandLess","ExpandMoreIcon","ExpandMore","FilterAltIcon","FilterAlt","FilterAltOffIcon","FilterAltOff","FilterListIcon","FilterList","FilterListOffIcon","FilterListOff","FullscreenExitIcon","FullscreenExit","FullscreenIcon","Fullscreen","KeyboardDoubleArrowDownIcon","KeyboardDoubleArrowDown","MoreHorizIcon","MoreHoriz","MoreVertIcon","MoreVert","PushPinIcon","PushPin","RestartAltIcon","RestartAlt","SaveIcon","Save","SearchIcon","Search","SearchOffIcon","SearchOff","SortIcon","Sort","ViewColumnIcon","ViewColumn","VisibilityOffIcon","VisibilityOff","MRT_ExpandAllButton","table","getIsAllRowsExpanded","getIsSomeRowsExpanded","getCanSomeRowsExpand","getState","options","icons","localization","muiExpandAllButtonProps","renderDetailPanel","toggleAllRowsExpanded","density","iconButtonProps","Function","React","Tooltip","arrow","enterDelay","enterNextDelay","title","IconButton","disabled","onClick","sx","height","width","mt","undefined","style","transform","transition","MRT_ExpandButton","row","muiExpandButtonProps","handleToggleExpand","toggleExpanded","getCanExpand","theme","getIsExpanded","MRT_FilterOptionMenu","anchorEl","header","onSelect","setAnchorEl","enabledGlobalFilterOptions","columnFilterModeOptions","setCurrentFilterFns","setCurrentGlobalFilterFn","currentFilterFns","currentGlobalFilterFn","column","columnDef","allowedColumnFilterOptions","filterOptions","useMemo","option","symbol","label","divider","filter","filterType","includes","handleSelectFilterType","prev","id","setFilterValue","filterOption","Menu","anchorOrigin","vertical","horizontal","onClose","open","MenuListProps","dense","map","index","MenuItem","key","selected","py","my","alignItems","display","gap","value","Box","fontSize","MRT_ColumnPinningButtons","handlePinColumn","pinDirection","pin","minWidth","textAlign","getIsPinned","size","MRT_GrabHandleButton","onDragEnd","onDragStart","placement","disableRipple","draggable","cursor","m","opacity","p","backgroundColor","fuzzy","columnId","filterValue","addMeta","itemRank","rankItem","getValue","threshold","rankings","MATCHES","passed","autoRemove","val","contains","toString","toLowerCase","trim","startsWith","endsWith","equals","notEquals","greaterThan","isNaN","greaterThanOrEqualTo","lessThan","lessThanOrEqualTo","between","filterValues","betweenInclusive","empty","_filterValue","notEmpty","MRT_FilterFns","filterFns","rowA","rowB","dir","columnFiltersMeta","compareItems","sortingFns","alphanumeric","MRT_SortingFns","rankGlobalFuzzy","Math","Object","values","v","rank","getColumnId","accessorKey","getAllLeafColumnDefs","columns","lowestLevelColumns","currentCols","length","some","col","nextCols","flat","every","prepareColumns","columnDefs","process","console","error","columnDefType","keys","filterFn","sortingFn","reorderColumn","draggedColumn","targetColumn","columnOrder","getCanPin","splice","indexOf","getLeadingDisplayColumnIds","props","enableRowDragging","enableRowOrdering","positionActionsColumn","enableRowActions","enableEditing","editingMode","positionExpandColumn","enableExpanding","enableGrouping","enableRowSelection","enableRowNumbers","Boolean","getTrailingDisplayColumnIds","getDefaultColumnOrderIds","MRT_ShowHideColumnsMenuItems","allColumns","currentHoveredColumn","setCurrentHoveredColumn","isSubMenu","enableColumnOrdering","enableHiding","enablePinning","setColumnOrder","switchChecked","getIsVisible","getLeafColumns","handleToggleColumnHidden","forEach","childColumn","menuItemRef","useRef","useState","isDragging","setIsDragging","handleDragStart","e","dataTransfer","setDragImage","current","handleDragEnd","_e","handleDragEnter","ref","onDragEnter","justifyContent","outline","palette","primary","main","pl","depth","flexWrap","FormControlLabel","componentsProps","typography","mb","checked","control","Switch","getCanHide","getIsGrouped","onChange","Typography","alignSelf","c","i","MRT_ShowHideColumnsMenu","getAllColumns","getAllLeafColumns","getCenterLeafColumns","getIsAllColumnsVisible","getIsSomeColumnsPinned","getIsSomeColumnsVisible","getLeftLeafColumns","getRightLeafColumns","toggleAllColumnsVisible","columnPinning","hideAllColumns","Array","from","Set","colId","find","pt","Button","resetColumnPinning","Divider","commonMenuItemStyles","commonListItemStyles","MRT_ColumnActionMenu","enableColumnFilterChangeMode","enableColumnFilters","enableColumnResizing","enableSorting","tableId","setShowFilters","columnSizing","columnVisibility","filterMenuAnchorEl","setFilterMenuAnchorEl","showHideColumnsMenuAnchorEl","setShowHideColumnsMenuAnchorEl","handleClearSort","clearSorting","handleSortAsc","toggleSorting","handleSortDesc","handleResetColumnSize","resetSize","handleHideColumn","handleGroupByColumn","toggleGrouping","old","handleClearFilter","handleFilterByColumn","setTimeout","document","getElementById","muiTableHeadCellFilterTextFieldProps","focus","handleShowAllColumns","handleOpenFilterModeMenu","event","stopPropagation","currentTarget","handleOpenShowHideColumnsMenu","isSelectFilter","filterSelectOptions","showFilterModeSubMenu","getCanSort","getIsSorted","ListItemIcon","replace","String","getCanFilter","getFilterValue","onMouseEnter","getCanGroup","getCanResize","visible","MRT_RowActionMenu","handleEdit","renderRowActionMenuItems","closeMenu","MRT_EditActionButtons","onEditRowSubmit","setCurrentEditingRow","currentEditingRow","handleCancel","_valuesCache","original","handleSave","color","commonIconButtonStyles","ml","MRT_ToggleRowActionMenuButton","renderRowActions","handleOpenRowActionMenu","preventDefault","handleStartEditMode","MRT_SelectCheckbox","selectAll","muiSelectCheckboxProps","muiSelectAllCheckboxProps","selectAllMode","checkboxProps","Checkbox","getIsAllRowsSelected","getIsSelected","indeterminate","getIsSomeRowsSelected","getIsSomeSelected","inputProps","getToggleAllRowsSelectedHandler","getToggleAllPageRowsSelectedHandler","getToggleSelectedHandler","MRT_GlobalFilterTextField","setGlobalFilter","enableGlobalFilterChangeMode","muiSearchTextFieldProps","globalFilter","showGlobalFilter","searchValue","setSearchValue","handleChangeDebounced","useCallback","debounce","target","handleChange","handleGlobalFilterMenuOpen","handleClear","textFieldProps","Collapse","orientation","TextField","placeholder","variant","InputProps","startAdornment","InputAdornment","position","endAdornment","MRT_LinearProgressBar","isTopToolbar","muiLinearProgressProps","isLoading","showProgressBars","linearProgressProps","mountOnEnter","unmountOnExit","bottom","top","LinearProgress","MRT_TablePagination","getPrePaginationRowModel","setPageIndex","setPageSize","muiTablePaginationProps","enableToolbarInternalActions","rowCount","pagination","pageSize","pageIndex","totalRowCount","rows","showFirstLastPageButtons","tablePaginationProps","handleChangeRowsPerPage","TablePagination","SelectProps","MenuProps","disablePadding","component","count","onPageChange","_","newPage","onRowsPerPageChange","page","rowsPerPage","rowsPerPageOptions","showFirstButton","showLastButton","zIndex","MRT_ToolbarAlertBanner","stackAlertBanner","getSelectedRowModel","muiTableToolbarAlertBannerProps","grouping","showAlertBanner","alertProps","selectMessage","groupedByMessage","Fragment","Chip","getColumn","onDelete","timeout","Alert","icon","borderRadius","left","right","AlertTitle","children","MRT_FullScreenToggleButton","rest","setIsFullScreen","isFullScreen","handleToggleFullScreen","MRT_ShowHideColumnsButton","handleClick","MRT_ToggleDensePaddingButton","setDensity","handleToggleDensePadding","nextDensity","MRT_ToggleFiltersButton","showColumnFilters","handleToggleShowFilters","MRT_ToggleGlobalFilterButton","setShowGlobalFilter","handleToggleSearch","MRT_ToolbarInternalButtons","enableDensityToggle","enableFilters","enableFullScreenToggle","enableGlobalFilter","positionGlobalFilter","renderToolbarInternalActions","commonToolbarStyles","lighten","background","backgroundImage","minHeight","overflow","MRT_ToolbarTop","enablePagination","muiTableToolbarTopProps","positionPagination","positionToolbarAlertBanner","renderToolbarTopCustomActions","isMobile","useMediaQuery","toolbarProps","Toolbar","boxSizing","MRT_ToolbarBottom","muiTableToolbarBottomProps","renderToolbarBottomCustomActions","boxShadow","alpha","common","black","MRT_TableHeadCellColumnActionsButton","muiTableHeadCellColumnActionsButtonProps","mTableHeadCellColumnActionsButtonProps","mcTableHeadCellColumnActionsButtonProps","MRT_FilterTextField","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","useVirtualizer","estimateSize","overscan","getScrollElement","virtualRows","getVirtualItems","paddingTop","paddingBottom","start","end","TableBody","rowOrVirtualRow","MRT_TableFooterCell","footer","muiTableFooterCellProps","mTableFooterCellProps","mcTableFooterCellProps","white","Footer","MRT_TableFooterRow","footerGroup","muiTableFooterRowProps","MRT_TableFooter","getFooterGroups","muiTableFooterProps","tableFooterProps","TableFooter","MRT_Table","enableStickyHeader","enableTableFooter","enableTableHead","muiTableProps","tableProps","Table","stickyHeader","tableLayout","useIsomorphicLayoutEffect","window","useLayoutEffect","useEffect","MRT_TableContainer","muiTableContainerProps","totalToolbarHeight","setTotalToolbarHeight","tableContainerProps","topToolbarHeight","offsetHeight","bottomToolbarHeight","TableContainer","maxHeight","MRT_TablePaper","enableToolbarBottom","enableToolbarTop","muiTablePaperProps","body","tablePaperProps","Paper","elevation","padding","defaultDisplayColumnDefOptions","enableColumnFilter","enableResizing","MRT_TableRoot","setIdPrefix","substring","initialState","initState","setShowAlertBanner","assign","name","globalFilterFn","displayColumns","displayColumnDefOptions","enableExpandAll","enableSelectAll","data","state","fill","useReactTable","getCoreRowModel","getExpandedRowModel","getFacetedRowModel","getFilteredRowModel","getGroupedRowModel","getPaginationRowModel","getSortedRowModel","onColumnOrderChange","getSubRows","onCurrentDraggingColumnChange","onCurrentDraggingRowChange","onCurrentEditingCellChange","onCurrentEditingRowChange","onCurrentFilterFnsChange","onCurrentGlobalFilterFnChange","onCurrentHoveredColumnChange","onCurrentHoveredRowChange","onDensityChange","onIsFullScreenChange","onShowAlertBannerChange","onShowFiltersChange","onShowGlobalFilterChange","onTableInstanceChange","Dialog","PaperComponent","TransitionComponent","disablePortal","fullScreen","keepMounted","transitionDuration","autoResetExpanded","defaultColumn","maxSize","enableMultiRowSelection"],"mappings":"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"}
1
+ {"version":3,"file":"material-react-table.cjs.development.js","sources":["../src/localization.ts","../src/icons.ts","../src/buttons/MRT_ExpandAllButton.tsx","../src/buttons/MRT_ExpandButton.tsx","../src/menus/MRT_FilterOptionMenu.tsx","../src/buttons/MRT_ColumnPinningButtons.tsx","../src/buttons/MRT_GrabHandleButton.tsx","../src/filtersFns.ts","../src/sortingFns.ts","../src/column.utils.ts","../src/menus/MRT_ShowHideColumnsMenuItems.tsx","../src/menus/MRT_ShowHideColumnsMenu.tsx","../src/menus/MRT_ColumnActionMenu.tsx","../src/menus/MRT_RowActionMenu.tsx","../src/buttons/MRT_EditActionButtons.tsx","../src/buttons/MRT_ToggleRowActionMenuButton.tsx","../src/inputs/MRT_SelectCheckbox.tsx","../src/inputs/MRT_GlobalFilterTextField.tsx","../src/toolbar/MRT_LinearProgressBar.tsx","../src/toolbar/MRT_TablePagination.tsx","../src/toolbar/MRT_ToolbarAlertBanner.tsx","../src/buttons/MRT_FullScreenToggleButton.tsx","../src/buttons/MRT_ShowHideColumnsButton.tsx","../src/buttons/MRT_ToggleDensePaddingButton.tsx","../src/buttons/MRT_ToggleFiltersButton.tsx","../src/buttons/MRT_ToggleGlobalFilterButton.tsx","../src/toolbar/MRT_ToolbarInternalButtons.tsx","../src/toolbar/MRT_ToolbarTop.tsx","../src/toolbar/MRT_ToolbarBottom.tsx","../src/head/MRT_TableHeadCellColumnActionsButton.tsx","../src/inputs/MRT_FilterTextField.tsx","../src/inputs/MRT_FilterRangeFields.tsx","../src/head/MRT_TableHeadCellFilterContainer.tsx","../src/head/MRT_TableHeadCellFilterLabel.tsx","../src/head/MRT_TableHeadCellGrabHandle.tsx","../src/head/MRT_TableHeadCellResizeHandle.tsx","../src/head/MRT_TableHeadCellSortLabel.tsx","../src/head/MRT_TableHeadCell.tsx","../src/head/MRT_TableHeadRow.tsx","../src/head/MRT_TableHead.tsx","../src/inputs/MRT_EditCellTextField.tsx","../src/buttons/MRT_CopyButton.tsx","../src/body/MRT_TableBodyRowGrabHandle.tsx","../src/body/MRT_TableBodyCell.tsx","../src/body/MRT_TableDetailPanel.tsx","../src/body/MRT_TableBodyRow.tsx","../src/body/MRT_TableBody.tsx","../src/footer/MRT_TableFooterCell.tsx","../src/footer/MRT_TableFooterRow.tsx","../src/footer/MRT_TableFooter.tsx","../src/table/MRT_Table.tsx","../src/table/MRT_TableContainer.tsx","../src/table/MRT_TablePaper.tsx","../src/table/MRT_TableRoot.tsx","../src/MaterialReactTable.tsx"],"sourcesContent":["export interface MRT_Localization {\n actions: string;\n and: string;\n cancel: string;\n changeFilterMode: string;\n changeSearchMode: string;\n clearFilter: string;\n clearSearch: string;\n clearSort: string;\n clickToCopy: string;\n columnActions: string;\n copiedToClipboard: string;\n edit: string;\n expand: string;\n expandAll: string;\n filterArrIncludes: string;\n filterArrIncludesAll: string;\n filterArrIncludesSome: string;\n filterBetween: string;\n filterBetweenInclusive: string;\n filterByColumn: string;\n filterContains: string;\n filterEmpty: string;\n filterEndsWith: string;\n filterEquals: string;\n filterEqualsString: string;\n filterFuzzy: string;\n filterGreaterThan: string;\n filterGreaterThanOrEqualTo: string;\n filterInNumberRange: string;\n filterIncludesString: string;\n filterIncludesStringSensitive: string;\n filterLessThan: string;\n filterLessThanOrEqualTo: string;\n filterMode: string;\n filterNotEmpty: string;\n filterNotEquals: string;\n filterStartsWith: string;\n filterWeakEquals: string;\n filteringByColumn: string;\n grab: string;\n groupByColumn: string;\n groupedBy: string;\n hideAll: string;\n hideColumn: string;\n max: string;\n min: string;\n move: string;\n or: string;\n pinToLeft: string;\n pinToRight: string;\n resetColumnSize: string;\n resetOrder: string;\n rowActions: string;\n rowNumber: string;\n rowNumbers: string;\n save: string;\n search: string;\n select: string;\n selectedCountOfRowCountRowsSelected: string;\n showAll: string;\n showAllColumns: string;\n showHideColumns: string;\n showHideFilters: string;\n showHideSearch: string;\n sortByColumnAsc: string;\n sortByColumnDesc: string;\n sortedByColumnAsc: string;\n sortedByColumnDesc: string;\n thenBy: string;\n toggleDensity: string;\n toggleFullScreen: string;\n toggleSelectAll: string;\n toggleSelectRow: string;\n toggleVisibility: string;\n ungroupByColumn: string;\n unpin: string;\n unpinAll: string;\n unsorted: string;\n}\n\nexport const MRT_DefaultLocalization_EN: MRT_Localization = {\n actions: 'Actions',\n and: 'and',\n cancel: 'Cancel',\n changeFilterMode: 'Change filter mode',\n changeSearchMode: 'Change search mode',\n clearFilter: 'Clear filter',\n clearSearch: 'Clear search',\n clearSort: 'Clear sort',\n clickToCopy: 'Click to copy',\n columnActions: 'Column Actions',\n copiedToClipboard: 'Copied to clipboard',\n edit: 'Edit',\n expand: 'Expand',\n expandAll: 'Expand all',\n filterArrIncludes: 'Includes',\n filterArrIncludesAll: 'Includes all',\n filterArrIncludesSome: 'Includes',\n filterBetween: 'Between',\n filterBetweenInclusive: 'Between Inclusive',\n filterByColumn: 'Filter by {column}',\n filterContains: 'Contains',\n filterEmpty: 'Empty',\n filterEndsWith: 'Ends With',\n filterEquals: 'Equals',\n filterEqualsString: 'Equals',\n filterFuzzy: 'Fuzzy',\n filterGreaterThan: 'Greater Than',\n filterGreaterThanOrEqualTo: 'Greater Than Or Equal To',\n filterInNumberRange: 'Between',\n filterIncludesString: 'Contains',\n filterIncludesStringSensitive: 'Contains',\n filterLessThan: 'Less Than',\n filterLessThanOrEqualTo: 'Less Than Or Equal To',\n filterMode: 'Filter Mode: {filterType}',\n filterNotEmpty: 'Not Empty',\n filterNotEquals: 'Not Equals',\n filterStartsWith: 'Starts With',\n filterWeakEquals: 'Equals',\n filteringByColumn: 'Filtering by {column} - {filterType} {filterValue}',\n grab: 'Grab',\n groupByColumn: 'Group by {column}',\n groupedBy: 'Grouped by ',\n hideAll: 'Hide all',\n hideColumn: 'Hide {column} column',\n max: 'Max',\n min: 'Min',\n move: 'Move',\n or: 'or',\n pinToLeft: 'Pin to left',\n pinToRight: 'Pin to right',\n resetColumnSize: 'Reset column size',\n resetOrder: 'Reset order',\n rowActions: 'Row Actions',\n rowNumber: '#',\n rowNumbers: 'Row Numbers',\n save: 'Save',\n search: 'Search',\n selectedCountOfRowCountRowsSelected:\n '{selectedCount} of {rowCount} row(s) selected',\n select: 'Select',\n showAll: 'Show all',\n showAllColumns: 'Show all columns',\n showHideColumns: 'Show/Hide columns',\n showHideFilters: 'Show/Hide filters',\n showHideSearch: 'Show/Hide search',\n sortByColumnAsc: 'Sort by {column} ascending',\n sortByColumnDesc: 'Sort by {column} descending',\n sortedByColumnAsc: 'Sorted by {column} ascending',\n sortedByColumnDesc: 'Sorted by {column} descending',\n thenBy: ', then by ',\n toggleDensity: 'Toggle density',\n toggleFullScreen: 'Toggle full screen',\n toggleSelectAll: 'Toggle select all',\n toggleSelectRow: 'Toggle select row',\n toggleVisibility: 'Toggle visibility',\n ungroupByColumn: 'Ungroup by {column}',\n unpin: 'Unpin',\n unpinAll: 'Unpin all',\n unsorted: 'Unsorted',\n};\n","import {\n ArrowRight,\n Cancel,\n CheckBox,\n ClearAll,\n Close,\n DensityLarge,\n DensityMedium,\n DensitySmall,\n DragHandle,\n DynamicFeed,\n Edit,\n ExpandLess,\n ExpandMore,\n FilterAlt,\n FilterAltOff,\n FilterList,\n FilterListOff,\n Fullscreen,\n FullscreenExit,\n KeyboardDoubleArrowDown,\n MoreHoriz,\n MoreVert,\n PushPin,\n RestartAlt,\n Save,\n Search,\n SearchOff,\n Sort,\n ViewColumn,\n VisibilityOff,\n} from '@mui/icons-material';\n\nexport interface MRT_Icons {\n ArrowRightIcon: any;\n CancelIcon: any;\n CheckBoxIcon: any;\n ClearAllIcon: any;\n CloseIcon: any;\n DensityLargeIcon: any;\n DensityMediumIcon: any;\n DensitySmallIcon: any;\n KeyboardDoubleArrowDownIcon: any;\n DragHandleIcon: any;\n DynamicFeedIcon: any;\n EditIcon: any;\n ExpandLessIcon: any;\n ExpandMoreIcon: any;\n FilterAltIcon: any;\n FilterAltOffIcon: any;\n FilterListIcon: any;\n FilterListOffIcon: any;\n FullscreenExitIcon: any;\n FullscreenIcon: any;\n MoreHorizIcon: any;\n MoreVertIcon: any;\n PushPinIcon: any;\n RestartAltIcon: any;\n SaveIcon: any;\n SearchIcon: any;\n SearchOffIcon: any;\n SortIcon: any;\n ViewColumnIcon: any;\n VisibilityOffIcon: any;\n}\n\nexport const MRT_Default_Icons: MRT_Icons = {\n ArrowRightIcon: ArrowRight,\n CancelIcon: Cancel,\n CheckBoxIcon: CheckBox,\n ClearAllIcon: ClearAll,\n CloseIcon: Close,\n DensityLargeIcon: DensityLarge,\n DensityMediumIcon: DensityMedium,\n DensitySmallIcon: DensitySmall,\n DragHandleIcon: DragHandle,\n DynamicFeedIcon: DynamicFeed,\n EditIcon: Edit,\n ExpandLessIcon: ExpandLess,\n ExpandMoreIcon: ExpandMore,\n FilterAltIcon: FilterAlt,\n FilterAltOffIcon: FilterAltOff,\n FilterListIcon: FilterList,\n FilterListOffIcon: FilterListOff,\n FullscreenExitIcon: FullscreenExit,\n FullscreenIcon: Fullscreen,\n KeyboardDoubleArrowDownIcon: KeyboardDoubleArrowDown,\n MoreHorizIcon: MoreHoriz,\n MoreVertIcon: MoreVert,\n PushPinIcon: PushPin,\n RestartAltIcon: RestartAlt,\n SaveIcon: Save,\n SearchIcon: Search,\n SearchOffIcon: SearchOff,\n SortIcon: Sort,\n ViewColumnIcon: ViewColumn,\n VisibilityOffIcon: VisibilityOff,\n};\n","import React, { FC } from 'react';\nimport { IconButton, Tooltip } from '@mui/material';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n table: MRT_TableInstance;\n}\n\nexport const MRT_ExpandAllButton: FC<Props> = ({ table }) => {\n const {\n getIsAllRowsExpanded,\n getIsSomeRowsExpanded,\n getCanSomeRowsExpand,\n getState,\n options: {\n icons: { KeyboardDoubleArrowDownIcon },\n localization,\n muiExpandAllButtonProps,\n renderDetailPanel,\n },\n toggleAllRowsExpanded,\n } = table;\n const { density } = getState();\n\n const iconButtonProps =\n muiExpandAllButtonProps instanceof Function\n ? muiExpandAllButtonProps({ table })\n : muiExpandAllButtonProps;\n\n return (\n <Tooltip\n arrow\n enterDelay={1000}\n enterNextDelay={1000}\n title={localization.expandAll}\n >\n <span>\n <IconButton\n aria-label={localization.expandAll}\n disabled={!getCanSomeRowsExpand() && !renderDetailPanel}\n onClick={() => toggleAllRowsExpanded(!getIsAllRowsExpanded())}\n {...iconButtonProps}\n sx={{\n height: density === 'compact' ? '1.75rem' : '2.25rem',\n width: density === 'compact' ? '1.75rem' : '2.25rem',\n mt: density !== 'compact' ? '-0.25rem' : undefined,\n ...iconButtonProps?.sx,\n }}\n >\n <KeyboardDoubleArrowDownIcon\n style={{\n transform: `rotate(${\n getIsAllRowsExpanded()\n ? -180\n : getIsSomeRowsExpanded()\n ? -90\n : 0\n }deg)`,\n transition: 'transform 0.2s',\n }}\n />\n </IconButton>\n </span>\n </Tooltip>\n );\n};\n","import React, { FC } from 'react';\nimport { IconButton, Tooltip } from '@mui/material';\nimport type { MRT_Row, MRT_TableInstance } from '..';\n\ninterface Props {\n row: MRT_Row;\n table: MRT_TableInstance;\n}\n\nexport const MRT_ExpandButton: FC<Props> = ({ row, table }) => {\n const {\n getState,\n options: {\n icons: { ExpandMoreIcon },\n localization,\n muiExpandButtonProps,\n renderDetailPanel,\n },\n } = table;\n const { density } = getState();\n\n const iconButtonProps =\n muiExpandButtonProps instanceof Function\n ? muiExpandButtonProps({ table, row })\n : muiExpandButtonProps;\n\n const handleToggleExpand = () => {\n row.toggleExpanded();\n };\n\n return (\n <Tooltip\n arrow\n enterDelay={1000}\n enterNextDelay={1000}\n title={localization.expand}\n >\n <span>\n <IconButton\n aria-label={localization.expand}\n disabled={!row.getCanExpand() && !renderDetailPanel}\n onClick={handleToggleExpand}\n {...iconButtonProps}\n sx={(theme) => ({\n height: density === 'compact' ? '1.75rem' : '2.25rem',\n width: density === 'compact' ? '1.75rem' : '2.25rem',\n ...(iconButtonProps?.sx instanceof Function\n ? iconButtonProps.sx(theme)\n : (iconButtonProps?.sx as any)),\n })}\n >\n <ExpandMoreIcon\n style={{\n transform: `rotate(${\n !row.getCanExpand() && !renderDetailPanel\n ? -90\n : row.getIsExpanded()\n ? -180\n : 0\n }deg)`,\n transition: 'transform 0.2s',\n }}\n />\n </IconButton>\n </span>\n </Tooltip>\n );\n};\n","import React, { FC, useMemo } from 'react';\nimport { Box, Menu, MenuItem } from '@mui/material';\nimport type { MRT_FilterOption, MRT_Header, MRT_TableInstance } from '..';\nimport { MRT_Localization } from '../localization';\n\nexport const internalFilterOptions = (\n localization: MRT_Localization,\n): {\n option: string;\n symbol: string;\n label: string;\n divider: boolean;\n}[] => [\n {\n option: 'fuzzy',\n symbol: '≈',\n label: localization.filterFuzzy,\n divider: false,\n },\n {\n option: 'contains',\n symbol: '*',\n label: localization.filterContains,\n divider: false,\n },\n {\n option: 'startsWith',\n symbol: 'a',\n label: localization.filterStartsWith,\n divider: false,\n },\n {\n option: 'endsWith',\n symbol: 'z',\n label: localization.filterEndsWith,\n divider: true,\n },\n {\n option: 'equals',\n symbol: '=',\n label: localization.filterEquals,\n divider: false,\n },\n {\n option: 'notEquals',\n symbol: '≠',\n label: localization.filterNotEquals,\n divider: true,\n },\n {\n option: 'between',\n symbol: '⇿',\n label: localization.filterBetween,\n divider: false,\n },\n {\n option: 'betweenInclusive',\n symbol: '⬌',\n label: localization.filterBetweenInclusive,\n divider: true,\n },\n {\n option: 'greaterThan',\n symbol: '>',\n label: localization.filterGreaterThan,\n divider: false,\n },\n {\n option: 'greaterThanOrEqualTo',\n symbol: '≥',\n label: localization.filterGreaterThanOrEqualTo,\n divider: false,\n },\n {\n option: 'lessThan',\n symbol: '<',\n label: localization.filterLessThan,\n divider: false,\n },\n {\n option: 'lessThanOrEqualTo',\n symbol: '≤',\n label: localization.filterLessThanOrEqualTo,\n divider: true,\n },\n {\n option: 'empty',\n symbol: '∅',\n label: localization.filterEmpty,\n divider: false,\n },\n {\n option: 'notEmpty',\n symbol: '!∅',\n label: localization.filterNotEmpty,\n divider: false,\n },\n];\n\ninterface Props {\n anchorEl: HTMLElement | null;\n header?: MRT_Header;\n onSelect?: () => void;\n setAnchorEl: (anchorEl: HTMLElement | null) => void;\n table: MRT_TableInstance;\n}\n\nexport const MRT_FilterOptionMenu: FC<Props> = ({\n anchorEl,\n header,\n onSelect,\n setAnchorEl,\n table,\n}) => {\n const {\n getState,\n options: {\n enabledGlobalFilterOptions,\n columnFilterModeOptions,\n localization,\n },\n setCurrentFilterFns,\n setCurrentGlobalFilterFn,\n } = table;\n const { currentFilterFns, currentGlobalFilterFn, density } = getState();\n const { column } = header ?? {};\n const { columnDef } = column ?? {};\n\n const allowedColumnFilterOptions =\n columnDef?.columnFilterModeOptions ?? columnFilterModeOptions;\n\n const filterOptions = useMemo(\n () =>\n internalFilterOptions(localization).filter((filterOption) =>\n columnDef\n ? allowedColumnFilterOptions === undefined ||\n allowedColumnFilterOptions?.includes(filterOption.option)\n : (!enabledGlobalFilterOptions ||\n enabledGlobalFilterOptions.includes(filterOption.option)) &&\n ['fuzzy', 'contains'].includes(filterOption.option),\n ),\n [],\n );\n\n const handleSelectFilterType = (option: MRT_FilterOption) => {\n if (header && column) {\n setCurrentFilterFns((prev: { [key: string]: any }) => ({\n ...prev,\n [header.id]: option,\n }));\n if (['empty', 'notEmpty'].includes(option as string)) {\n column.setFilterValue(' ');\n } else if (option === 'between') {\n column.setFilterValue(['', '']);\n } else {\n column.setFilterValue('');\n }\n } else {\n setCurrentGlobalFilterFn(option);\n }\n setAnchorEl(null);\n onSelect?.();\n };\n\n const filterOption = !!header\n ? currentFilterFns[header.id]\n : currentGlobalFilterFn;\n\n return (\n <Menu\n anchorEl={anchorEl}\n anchorOrigin={{ vertical: 'center', horizontal: 'right' }}\n onClose={() => setAnchorEl(null)}\n open={!!anchorEl}\n MenuListProps={{\n dense: density === 'compact',\n }}\n >\n {filterOptions.map(({ option, label, divider, symbol }, index) => (\n <MenuItem\n divider={divider}\n key={index}\n onClick={() => handleSelectFilterType(option as MRT_FilterOption)}\n selected={option === filterOption}\n sx={{\n py: '6px',\n my: 0,\n alignItems: 'center',\n display: 'flex',\n gap: '2ch',\n }}\n value={option}\n >\n <Box sx={{ fontSize: '1.25rem', width: '2ch' }}>{symbol}</Box>\n {label}\n </MenuItem>\n ))}\n </Menu>\n );\n};\n","import React, { FC } from 'react';\nimport { Box, IconButton, Tooltip } from '@mui/material';\nimport type { MRT_Column, MRT_TableInstance } from '..';\n\ninterface Props {\n column: MRT_Column;\n table: MRT_TableInstance;\n}\n\nexport const MRT_ColumnPinningButtons: FC<Props> = ({ column, table }) => {\n const {\n options: {\n icons: { PushPinIcon },\n localization,\n },\n } = table;\n\n const handlePinColumn = (pinDirection: 'left' | 'right' | false) => {\n column.pin(pinDirection);\n };\n\n return (\n <Box sx={{ minWidth: '70px', textAlign: 'center' }}>\n {column.getIsPinned() ? (\n <Tooltip arrow title={localization.unpin}>\n <IconButton onClick={() => handlePinColumn(false)} size=\"small\">\n <PushPinIcon />\n </IconButton>\n </Tooltip>\n ) : (\n <>\n <Tooltip arrow title={localization.pinToLeft}>\n <IconButton onClick={() => handlePinColumn('left')} size=\"small\">\n <PushPinIcon\n style={{\n transform: 'rotate(90deg)',\n }}\n />\n </IconButton>\n </Tooltip>\n <Tooltip arrow title={localization.pinToRight}>\n <IconButton onClick={() => handlePinColumn('right')} size=\"small\">\n <PushPinIcon\n style={{\n transform: 'rotate(-90deg)',\n }}\n />\n </IconButton>\n </Tooltip>\n </>\n )}\n </Box>\n );\n};\n","import { IconButton, IconButtonProps, Tooltip } from '@mui/material';\nimport React, { DragEventHandler, FC } from 'react';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n iconButtonProps?: IconButtonProps;\n onDragStart: DragEventHandler<HTMLButtonElement>;\n onDragEnd: DragEventHandler<HTMLButtonElement>;\n table: MRT_TableInstance;\n}\n\nexport const MRT_GrabHandleButton: FC<Props> = ({\n iconButtonProps,\n onDragEnd,\n onDragStart,\n table,\n}) => {\n const {\n options: {\n icons: { DragHandleIcon },\n localization,\n },\n } = table;\n\n return (\n <Tooltip\n arrow\n enterDelay={1000}\n enterNextDelay={1000}\n placement=\"top\"\n title={localization.move}\n >\n <IconButton\n disableRipple\n draggable=\"true\"\n onDragStart={onDragStart}\n onDragEnd={onDragEnd}\n size=\"small\"\n {...iconButtonProps}\n sx={{\n cursor: 'grab',\n m: 0,\n opacity: 0.5,\n p: '2px',\n transition: 'all 0.2s ease-in-out',\n '&:hover': {\n backgroundColor: 'transparent',\n opacity: 1,\n },\n '&:active': {\n cursor: 'grabbing',\n },\n ...iconButtonProps?.sx,\n }}\n >\n <DragHandleIcon />\n </IconButton>\n </Tooltip>\n );\n};\n","import { rankItem, rankings, RankingInfo } from '@tanstack/match-sorter-utils';\nimport { filterFns, Row } from '@tanstack/react-table';\n\nconst fuzzy = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n columnId: string,\n filterValue: string | number,\n addMeta: (item: RankingInfo) => void,\n) => {\n const itemRank = rankItem(row.getValue(columnId), filterValue as string, {\n threshold: rankings.MATCHES,\n });\n addMeta(itemRank);\n return itemRank.passed;\n};\n\nfuzzy.autoRemove = (val: any) => !val;\n\nconst contains = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n id: string,\n filterValue: string | number,\n) =>\n row\n .getValue<string | number>(id)\n .toString()\n .toLowerCase()\n .trim()\n .includes(filterValue.toString().toLowerCase().trim());\n\ncontains.autoRemove = (val: any) => !val;\n\nconst startsWith = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n id: string,\n filterValue: string | number,\n) =>\n row\n .getValue<string | number>(id)\n .toString()\n .toLowerCase()\n .trim()\n .startsWith(filterValue.toString().toLowerCase().trim());\n\nstartsWith.autoRemove = (val: any) => !val;\n\nconst endsWith = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n id: string,\n filterValue: string | number,\n) =>\n row\n .getValue<string | number>(id)\n .toString()\n .toLowerCase()\n .trim()\n .endsWith(filterValue.toString().toLowerCase().trim());\n\nendsWith.autoRemove = (val: any) => !val;\n\nconst equals = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n id: string,\n filterValue: string | number,\n) =>\n row.getValue<string | number>(id).toString().toLowerCase().trim() ===\n filterValue.toString().toLowerCase().trim();\n\nequals.autoRemove = (val: any) => !val;\n\nconst notEquals = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n id: string,\n filterValue: string | number,\n) =>\n row.getValue<string | number>(id).toString().toLowerCase().trim() !==\n filterValue.toString().toLowerCase().trim();\n\nnotEquals.autoRemove = (val: any) => !val;\n\nconst greaterThan = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n id: string,\n filterValue: string | number,\n) =>\n !isNaN(+filterValue) && !isNaN(+row.getValue<string | number>(id))\n ? +row.getValue<string | number>(id) > +filterValue\n : row.getValue<string | number>(id).toString().toLowerCase().trim() >\n filterValue.toString().toLowerCase().trim();\n\ngreaterThan.autoRemove = (val: any) => !val;\n\nconst greaterThanOrEqualTo = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n id: string,\n filterValue: string | number,\n) => equals(row, id, filterValue) || greaterThan(row, id, filterValue);\n\ngreaterThanOrEqualTo.autoRemove = (val: any) => !val;\n\nconst lessThan = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n id: string,\n filterValue: string | number,\n) =>\n !isNaN(+filterValue) && !isNaN(+row.getValue<string | number>(id))\n ? +row.getValue<string | number>(id) < +filterValue\n : row.getValue<string | number>(id).toString().toLowerCase().trim() <\n filterValue.toString().toLowerCase().trim();\n\nlessThan.autoRemove = (val: any) => !val;\n\nconst lessThanOrEqualTo = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n id: string,\n filterValue: string | number,\n) => equals(row, id, filterValue) || lessThan(row, id, filterValue);\n\nlessThanOrEqualTo.autoRemove = (val: any) => !val;\n\nconst between = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n id: string,\n filterValues: [string | number, string | number],\n) =>\n ((['', undefined] as any[]).includes(filterValues[0]) ||\n greaterThan(row, id, filterValues[0])) &&\n ((!isNaN(+filterValues[0]) &&\n !isNaN(+filterValues[1]) &&\n +filterValues[0] > +filterValues[1]) ||\n (['', undefined] as any[]).includes(filterValues[1]) ||\n lessThan(row, id, filterValues[1]));\n\nbetween.autoRemove = (val: any) => !val;\n\nconst betweenInclusive = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n id: string,\n filterValues: [string | number, string | number],\n) =>\n ((['', undefined] as any[]).includes(filterValues[0]) ||\n greaterThanOrEqualTo(row, id, filterValues[0])) &&\n ((!isNaN(+filterValues[0]) &&\n !isNaN(+filterValues[1]) &&\n +filterValues[0] > +filterValues[1]) ||\n (['', undefined] as any[]).includes(filterValues[1]) ||\n lessThanOrEqualTo(row, id, filterValues[1]));\n\nbetweenInclusive.autoRemove = (val: any) => !val;\n\nconst empty = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n id: string,\n _filterValue: string | number,\n) => !row.getValue<string | number>(id).toString().trim();\n\nempty.autoRemove = (val: any) => !val;\n\nconst notEmpty = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n id: string,\n _filterValue: string | number,\n) => !!row.getValue<string | number>(id).toString().trim();\n\nnotEmpty.autoRemove = (val: any) => !val;\n\nexport const MRT_FilterFns = {\n ...filterFns,\n between,\n betweenInclusive,\n contains,\n empty,\n endsWith,\n equals,\n fuzzy,\n greaterThan,\n greaterThanOrEqualTo,\n lessThan,\n lessThanOrEqualTo,\n notEmpty,\n notEquals,\n startsWith,\n};\n","import { compareItems, RankingInfo } from '@tanstack/match-sorter-utils';\nimport { Row, sortingFns } from '@tanstack/react-table';\nimport { MRT_Row } from '.';\n\nconst fuzzy = <TData extends Record<string, any> = {}>(\n rowA: Row<TData>,\n rowB: Row<TData>,\n columnId: string,\n) => {\n let dir = 0;\n if (rowA.columnFiltersMeta[columnId]) {\n dir = compareItems(\n rowA.columnFiltersMeta[columnId]! as RankingInfo,\n rowB.columnFiltersMeta[columnId]! as RankingInfo,\n );\n }\n // Provide a fallback for when the item ranks are equal\n return dir === 0\n ? sortingFns.alphanumeric(rowA as Row<any>, rowB as Row<any>, columnId)\n : dir;\n};\n\nexport const MRT_SortingFns = {\n ...sortingFns,\n fuzzy,\n};\n\nexport const rankGlobalFuzzy = <TData extends Record<string, any> = {}>(\n rowA: MRT_Row<TData>,\n rowB: MRT_Row<TData>,\n) =>\n Math.max(...Object.values(rowB.columnFiltersMeta).map((v: any) => v.rank)) -\n Math.max(...Object.values(rowA.columnFiltersMeta).map((v: any) => v.rank));\n","import { ColumnOrderState } from '@tanstack/react-table';\nimport {\n MaterialReactTableProps,\n MRT_Column,\n MRT_ColumnDef,\n MRT_DefinedColumnDef,\n MRT_DisplayColumnIds,\n MRT_FilterOption,\n} from '.';\nimport { MRT_FilterFns } from './filtersFns';\nimport { MRT_SortingFns } from './sortingFns';\n\nconst getColumnId = <TData extends Record<string, any> = {}>(\n columnDef: MRT_ColumnDef<TData>,\n): string =>\n columnDef.id ?? columnDef.accessorKey?.toString?.() ?? columnDef.header;\n\nexport const getAllLeafColumnDefs = <TData extends Record<string, any> = {}>(\n columns: MRT_ColumnDef<TData>[],\n): MRT_ColumnDef<TData>[] => {\n let lowestLevelColumns: MRT_ColumnDef<TData>[] = columns;\n let currentCols: MRT_ColumnDef<TData>[] | undefined = columns;\n while (!!currentCols?.length && currentCols.some((col) => col.columns)) {\n const nextCols: MRT_ColumnDef<TData>[] = currentCols\n .filter((col) => !!col.columns)\n .map((col) => col.columns)\n .flat() as MRT_ColumnDef<TData>[];\n if (nextCols.every((col) => !col?.columns)) {\n lowestLevelColumns = [...lowestLevelColumns, ...nextCols];\n }\n currentCols = nextCols;\n }\n return lowestLevelColumns.filter((col) => !col.columns);\n};\n\nexport const prepareColumns = <TData extends Record<string, any> = {}>(\n columnDefs: MRT_ColumnDef<TData>[],\n currentFilterFns: { [key: string]: MRT_FilterOption },\n): MRT_DefinedColumnDef<TData>[] =>\n columnDefs.map((columnDef) => {\n if (!columnDef.id) columnDef.id = getColumnId(columnDef);\n if (process.env.NODE_ENV !== 'production' && !columnDef.id) {\n console.error(\n 'Column definitions must have a valid `accessorKey` or `id` property',\n );\n }\n if (!columnDef.columnDefType) columnDef.columnDefType = 'data';\n if (!!columnDef.columns?.length) {\n columnDef.columnDefType = 'group';\n columnDef.columns = prepareColumns(columnDef.columns, currentFilterFns);\n } else if (columnDef.columnDefType === 'data') {\n if (Object.keys(MRT_FilterFns).includes(currentFilterFns[columnDef.id])) {\n columnDef.filterFn =\n MRT_FilterFns[currentFilterFns[columnDef.id]] ?? MRT_FilterFns.fuzzy;\n //@ts-ignore\n columnDef._filterFn = currentFilterFns[columnDef.id];\n }\n if (Object.keys(MRT_SortingFns).includes(columnDef.sortingFn as string)) {\n // @ts-ignore\n columnDef.sortingFn = MRT_SortingFns[columnDef.sortingFn];\n }\n }\n return columnDef;\n }) as MRT_DefinedColumnDef<TData>[];\n\nexport const reorderColumn = <TData extends Record<string, any> = {}>(\n draggedColumn: MRT_Column<TData>,\n targetColumn: MRT_Column<TData>,\n columnOrder: ColumnOrderState,\n): ColumnOrderState => {\n if (draggedColumn.getCanPin()) {\n draggedColumn.pin(targetColumn.getIsPinned());\n }\n columnOrder.splice(\n columnOrder.indexOf(targetColumn.id),\n 0,\n columnOrder.splice(columnOrder.indexOf(draggedColumn.id), 1)[0],\n );\n return [...columnOrder];\n};\n\nexport const getLeadingDisplayColumnIds = <\n TData extends Record<string, any> = {},\n>(\n props: MaterialReactTableProps<TData>,\n) =>\n [\n (props.enableRowDragging || props.enableRowOrdering) && 'mrt-row-drag',\n ((props.positionActionsColumn === 'first' && props.enableRowActions) ||\n (props.enableEditing && props.editingMode === 'row')) &&\n 'mrt-row-actions',\n props.positionExpandColumn === 'first' &&\n (props.enableExpanding ||\n props.enableGrouping ||\n props.renderDetailPanel) &&\n 'mrt-row-expand',\n props.enableRowSelection && 'mrt-row-select',\n props.enableRowNumbers && 'mrt-row-numbers',\n ].filter(Boolean) as MRT_DisplayColumnIds[];\n\nexport const getTrailingDisplayColumnIds = <\n TData extends Record<string, any> = {},\n>(\n props: MaterialReactTableProps<TData>,\n) => [\n ((props.positionActionsColumn === 'last' && props.enableRowActions) ||\n (props.enableEditing && props.editingMode === 'row')) &&\n 'mrt-row-actions',\n props.positionExpandColumn === 'last' &&\n (props.enableExpanding ||\n props.enableGrouping ||\n props.renderDetailPanel) &&\n 'mrt-row-expand',\n];\n\nexport const getDefaultColumnOrderIds = <\n TData extends Record<string, any> = {},\n>(\n props: MaterialReactTableProps<TData>,\n) =>\n [\n ...getLeadingDisplayColumnIds(props),\n ...getAllLeafColumnDefs(props.columns).map((columnDef) =>\n getColumnId(columnDef),\n ),\n ...getTrailingDisplayColumnIds(props),\n ].filter(Boolean) as string[];\n\nexport const getDefaultColumnFilterFn = <\n TData extends Record<string, any> = {},\n>(\n columnDef: MRT_ColumnDef<TData>,\n): MRT_FilterOption => {\n if (columnDef.filterVariant === 'multiSelect') return 'arrIncludesSome';\n if (columnDef.filterVariant === 'select') return 'equals';\n if (columnDef.filterVariant === 'range') return 'betweenInclusive';\n return 'fuzzy';\n};\n","import React, {\n Dispatch,\n DragEvent,\n FC,\n SetStateAction,\n useState,\n} from 'react';\nimport {\n Box,\n FormControlLabel,\n MenuItem,\n Switch,\n Tooltip,\n Typography,\n} from '@mui/material';\nimport { MRT_ColumnPinningButtons } from '../buttons/MRT_ColumnPinningButtons';\nimport { MRT_GrabHandleButton } from '../buttons/MRT_GrabHandleButton';\nimport { reorderColumn } from '../column.utils';\nimport type { MRT_Column, MRT_TableInstance } from '..';\n\ninterface Props {\n allColumns: MRT_Column[];\n column: MRT_Column;\n currentHoveredColumn: MRT_Column | null;\n isSubMenu?: boolean;\n setCurrentHoveredColumn: Dispatch<SetStateAction<MRT_Column | null>>;\n table: MRT_TableInstance;\n}\n\nexport const MRT_ShowHideColumnsMenuItems: FC<Props> = ({\n allColumns,\n currentHoveredColumn,\n setCurrentHoveredColumn,\n column,\n isSubMenu,\n table,\n}) => {\n const {\n getState,\n options: {\n enableColumnOrdering,\n enableHiding,\n enablePinning,\n localization,\n },\n setColumnOrder,\n } = table;\n const { columnOrder } = getState();\n const { columnDef } = column;\n const { columnDefType } = columnDef;\n\n const switchChecked =\n (columnDefType !== 'group' && column.getIsVisible()) ||\n (columnDefType === 'group' &&\n column.getLeafColumns().some((col) => col.getIsVisible()));\n\n const handleToggleColumnHidden = (column: MRT_Column) => {\n if (columnDefType === 'group') {\n column?.columns?.forEach?.((childColumn: MRT_Column) => {\n childColumn.toggleVisibility(!switchChecked);\n });\n } else {\n column.toggleVisibility();\n }\n };\n\n const menuItemRef = React.useRef<HTMLElement>(null);\n\n const [isDragging, setIsDragging] = useState(false);\n\n const handleDragStart = (e: DragEvent<HTMLButtonElement>) => {\n setIsDragging(true);\n e.dataTransfer.setDragImage(menuItemRef.current as HTMLElement, 0, 0);\n };\n\n const handleDragEnd = (_e: DragEvent<HTMLButtonElement>) => {\n setIsDragging(false);\n setCurrentHoveredColumn(null);\n if (currentHoveredColumn) {\n setColumnOrder(reorderColumn(column, currentHoveredColumn, columnOrder));\n }\n };\n\n const handleDragEnter = (_e: DragEvent) => {\n if (!isDragging) {\n setCurrentHoveredColumn(column);\n }\n };\n\n return (\n <>\n <MenuItem\n disableRipple\n ref={menuItemRef as any}\n onDragEnter={handleDragEnter}\n sx={(theme) => ({\n alignItems: 'center',\n justifyContent: 'flex-start',\n my: 0,\n opacity: isDragging ? 0.5 : 1,\n outline: isDragging\n ? `1px dashed ${theme.palette.divider}`\n : currentHoveredColumn?.id === column.id\n ? `2px dashed ${theme.palette.primary.main}`\n : 'none',\n pl: `${(column.depth + 0.5) * 2}rem`,\n py: '6px',\n })}\n >\n <Box\n sx={{\n display: 'flex',\n flexWrap: 'nowrap',\n gap: '8px',\n }}\n >\n {!isSubMenu &&\n columnDefType !== 'group' &&\n enableColumnOrdering &&\n !allColumns.some(\n (col) => col.columnDef.columnDefType === 'group',\n ) &&\n (columnDef.enableColumnOrdering !== false ? (\n <MRT_GrabHandleButton\n onDragEnd={handleDragEnd}\n onDragStart={handleDragStart}\n table={table}\n />\n ) : (\n <Box sx={{ width: '28px' }} />\n ))}\n {!isSubMenu &&\n enablePinning &&\n (column.getCanPin() ? (\n <MRT_ColumnPinningButtons column={column} table={table} />\n ) : (\n <Box sx={{ width: '70px' }} />\n ))}\n {enableHiding ? (\n <FormControlLabel\n componentsProps={{\n typography: {\n sx: {\n mb: 0,\n opacity: columnDefType !== 'display' ? 1 : 0.5,\n },\n },\n }}\n checked={switchChecked}\n control={\n <Tooltip\n arrow\n enterDelay={1000}\n enterNextDelay={1000}\n title={localization.toggleVisibility}\n >\n <Switch />\n </Tooltip>\n }\n disabled={\n (isSubMenu && switchChecked) ||\n !column.getCanHide() ||\n column.getIsGrouped()\n }\n label={columnDef.header}\n onChange={() => handleToggleColumnHidden(column)}\n />\n ) : (\n <Typography sx={{ alignSelf: 'center' }}>\n {columnDef.header}\n </Typography>\n )}\n </Box>\n </MenuItem>\n {column.columns?.map((c: MRT_Column, i) => (\n <MRT_ShowHideColumnsMenuItems\n allColumns={allColumns}\n column={c}\n currentHoveredColumn={currentHoveredColumn}\n isSubMenu={isSubMenu}\n key={`${i}-${c.id}`}\n setCurrentHoveredColumn={setCurrentHoveredColumn}\n table={table}\n />\n ))}\n </>\n );\n};\n","import React, { FC, useMemo, useState } from 'react';\nimport { Button, Menu, Divider, Box } from '@mui/material';\nimport { MRT_ShowHideColumnsMenuItems } from './MRT_ShowHideColumnsMenuItems';\nimport type { MRT_Column, MRT_TableInstance } from '..';\nimport { getDefaultColumnOrderIds } from '../column.utils';\n\ninterface Props {\n anchorEl: HTMLElement | null;\n isSubMenu?: boolean;\n setAnchorEl: (anchorEl: HTMLElement | null) => void;\n table: MRT_TableInstance;\n}\n\nexport const MRT_ShowHideColumnsMenu: FC<Props> = ({\n anchorEl,\n isSubMenu,\n setAnchorEl,\n table,\n}) => {\n const {\n getAllColumns,\n getAllLeafColumns,\n getCenterLeafColumns,\n getIsAllColumnsVisible,\n getIsSomeColumnsPinned,\n getIsSomeColumnsVisible,\n getLeftLeafColumns,\n getRightLeafColumns,\n getState,\n toggleAllColumnsVisible,\n options: { localization, enablePinning, enableColumnOrdering },\n } = table;\n const { density, columnOrder, columnPinning } = getState();\n\n const hideAllColumns = () => {\n getAllLeafColumns()\n .filter((col) => col.columnDef.enableHiding !== false)\n .forEach((col) => col.toggleVisibility(false));\n };\n\n const allColumns = useMemo(() => {\n const columns = getAllColumns();\n if (\n columnOrder.length > 0 &&\n !columns.some((col) => col.columnDef.columnDefType === 'group')\n ) {\n return [\n ...getLeftLeafColumns(),\n ...Array.from(new Set(columnOrder)).map((colId) =>\n getCenterLeafColumns().find((col) => col?.id === colId),\n ),\n ...getRightLeafColumns(),\n ].filter(Boolean);\n }\n return columns;\n }, [\n columnOrder,\n columnPinning,\n getAllColumns(),\n getCenterLeafColumns(),\n getLeftLeafColumns(),\n getRightLeafColumns(),\n ]) as MRT_Column[];\n\n const [currentHoveredColumn, setCurrentHoveredColumn] =\n useState<MRT_Column | null>(null);\n\n return (\n <Menu\n anchorEl={anchorEl}\n open={!!anchorEl}\n onClose={() => setAnchorEl(null)}\n MenuListProps={{\n dense: density === 'compact',\n }}\n >\n <Box\n sx={{\n display: 'flex',\n justifyContent: isSubMenu ? 'center' : 'space-between',\n p: '0.5rem',\n pt: 0,\n }}\n >\n {!isSubMenu && (\n <Button\n disabled={!getIsSomeColumnsVisible()}\n onClick={hideAllColumns}\n >\n {localization.hideAll}\n </Button>\n )}\n {!isSubMenu && enableColumnOrdering && (\n <Button\n onClick={() =>\n table.setColumnOrder(\n getDefaultColumnOrderIds(table.options as any),\n )\n }\n >\n {localization.resetOrder}\n </Button>\n )}\n {!isSubMenu && enablePinning && (\n <Button\n disabled={!getIsSomeColumnsPinned()}\n onClick={() => table.resetColumnPinning(true)}\n >\n {localization.unpinAll}\n </Button>\n )}\n <Button\n disabled={getIsAllColumnsVisible()}\n onClick={() => toggleAllColumnsVisible(true)}\n >\n {localization.showAll}\n </Button>\n </Box>\n <Divider />\n {allColumns.map((column, index) => (\n <MRT_ShowHideColumnsMenuItems\n allColumns={allColumns}\n column={column}\n currentHoveredColumn={currentHoveredColumn}\n isSubMenu={isSubMenu}\n key={`${index}-${column.id}`}\n setCurrentHoveredColumn={setCurrentHoveredColumn}\n table={table}\n />\n ))}\n </Menu>\n );\n};\n","import React, { FC, useState } from 'react';\nimport { Box, IconButton, ListItemIcon, Menu, MenuItem } from '@mui/material';\nimport type { MRT_Header, MRT_TableInstance } from '..';\nimport { MRT_FilterOptionMenu } from './MRT_FilterOptionMenu';\nimport { MRT_ShowHideColumnsMenu } from './MRT_ShowHideColumnsMenu';\n\nexport const commonMenuItemStyles = {\n py: '6px',\n my: 0,\n justifyContent: 'space-between',\n alignItems: 'center',\n};\n\nexport const commonListItemStyles = {\n display: 'flex',\n alignItems: 'center',\n};\n\ninterface Props {\n anchorEl: HTMLElement | null;\n header: MRT_Header;\n setAnchorEl: (anchorEl: HTMLElement | null) => void;\n table: MRT_TableInstance;\n}\n\nexport const MRT_ColumnActionMenu: FC<Props> = ({\n anchorEl,\n header,\n setAnchorEl,\n table,\n}) => {\n const {\n getState,\n toggleAllColumnsVisible,\n setColumnOrder,\n options: {\n enableColumnFilterChangeMode,\n enableColumnFilters,\n enableColumnResizing,\n enableGrouping,\n enableHiding,\n enablePinning,\n enableSorting,\n columnFilterModeOptions,\n icons: {\n ArrowRightIcon,\n ClearAllIcon,\n ViewColumnIcon,\n DynamicFeedIcon,\n FilterListIcon,\n FilterListOffIcon,\n PushPinIcon,\n SortIcon,\n RestartAltIcon,\n VisibilityOffIcon,\n },\n tableId,\n localization,\n },\n setShowFilters,\n } = table;\n const { column } = header;\n const { columnDef } = column;\n const { columnSizing, columnVisibility, density } = getState();\n\n const [filterMenuAnchorEl, setFilterMenuAnchorEl] =\n useState<null | HTMLElement>(null);\n const [showHideColumnsMenuAnchorEl, setShowHideColumnsMenuAnchorEl] =\n useState<null | HTMLElement>(null);\n\n const handleClearSort = () => {\n column.clearSorting();\n setAnchorEl(null);\n };\n\n const handleSortAsc = () => {\n column.toggleSorting(false);\n setAnchorEl(null);\n };\n\n const handleSortDesc = () => {\n column.toggleSorting(true);\n setAnchorEl(null);\n };\n\n const handleResetColumnSize = () => {\n column.resetSize();\n setAnchorEl(null);\n };\n\n const handleHideColumn = () => {\n column.toggleVisibility(false);\n setAnchorEl(null);\n };\n\n const handlePinColumn = (pinDirection: 'left' | 'right' | false) => {\n column.pin(pinDirection);\n setAnchorEl(null);\n };\n\n const handleGroupByColumn = () => {\n column.toggleGrouping();\n setColumnOrder((old) => ['mrt-row-expand', ...old]);\n setAnchorEl(null);\n };\n\n const handleClearFilter = () => {\n column.setFilterValue('');\n setAnchorEl(null);\n };\n\n const handleFilterByColumn = () => {\n setShowFilters(true);\n setTimeout(\n () =>\n document\n .getElementById(\n // @ts-ignore\n header.muiTableHeadCellFilterTextFieldProps?.id ??\n `mrt-${tableId}-${header.id}-filter-text-field`,\n )\n ?.focus(),\n 200,\n );\n setAnchorEl(null);\n };\n\n const handleShowAllColumns = () => {\n toggleAllColumnsVisible(true);\n setAnchorEl(null);\n };\n\n const handleOpenFilterModeMenu = (event: React.MouseEvent<HTMLElement>) => {\n event.stopPropagation();\n setFilterMenuAnchorEl(event.currentTarget);\n };\n\n const handleOpenShowHideColumnsMenu = (\n event: React.MouseEvent<HTMLElement>,\n ) => {\n event.stopPropagation();\n setShowHideColumnsMenuAnchorEl(event.currentTarget);\n };\n\n const isSelectFilter = !!columnDef.filterSelectOptions;\n\n const allowedColumnFilterOptions =\n columnDef?.columnFilterModeOptions ?? columnFilterModeOptions;\n\n const showFilterModeSubMenu =\n enableColumnFilterChangeMode &&\n columnDef.enableColumnFilterChangeMode !== false &&\n !isSelectFilter &&\n (allowedColumnFilterOptions === undefined ||\n !!allowedColumnFilterOptions?.length);\n\n return (\n <Menu\n anchorEl={anchorEl}\n open={!!anchorEl}\n onClose={() => setAnchorEl(null)}\n MenuListProps={{\n dense: density === 'compact',\n }}\n >\n {enableSorting &&\n column.getCanSort() && [\n <MenuItem\n disabled={!column.getIsSorted()}\n key={0}\n onClick={handleClearSort}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <ClearAllIcon />\n </ListItemIcon>\n {localization.clearSort}\n </Box>\n </MenuItem>,\n <MenuItem\n disabled={column.getIsSorted() === 'asc'}\n key={1}\n onClick={handleSortAsc}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <SortIcon />\n </ListItemIcon>\n {localization.sortByColumnAsc?.replace(\n '{column}',\n String(columnDef.header),\n )}\n </Box>\n </MenuItem>,\n <MenuItem\n divider={enableColumnFilters || enableGrouping || enableHiding}\n key={2}\n disabled={column.getIsSorted() === 'desc'}\n onClick={handleSortDesc}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <SortIcon style={{ transform: 'rotate(180deg) scaleX(-1)' }} />\n </ListItemIcon>\n {localization.sortByColumnDesc?.replace(\n '{column}',\n String(columnDef.header),\n )}\n </Box>\n </MenuItem>,\n ]}\n {enableColumnFilters &&\n column.getCanFilter() &&\n [\n <MenuItem\n disabled={!column.getFilterValue()}\n key={0}\n onClick={handleClearFilter}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <FilterListOffIcon />\n </ListItemIcon>\n {localization.clearFilter}\n </Box>\n </MenuItem>,\n <MenuItem\n divider={enableGrouping || enableHiding}\n key={1}\n onClick={handleFilterByColumn}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <FilterListIcon />\n </ListItemIcon>\n {localization.filterByColumn?.replace(\n '{column}',\n String(columnDef.header),\n )}\n </Box>\n {showFilterModeSubMenu && (\n <IconButton\n onClick={handleOpenFilterModeMenu}\n onMouseEnter={handleOpenFilterModeMenu}\n size=\"small\"\n sx={{ p: 0 }}\n >\n <ArrowRightIcon />\n </IconButton>\n )}\n </MenuItem>,\n showFilterModeSubMenu && (\n <MRT_FilterOptionMenu\n anchorEl={filterMenuAnchorEl}\n header={header}\n key={2}\n onSelect={handleFilterByColumn}\n setAnchorEl={setFilterMenuAnchorEl}\n table={table}\n />\n ),\n ].filter(Boolean)}\n {enableGrouping &&\n column.getCanGroup() && [\n <MenuItem\n divider={enablePinning}\n key={0}\n onClick={handleGroupByColumn}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <DynamicFeedIcon />\n </ListItemIcon>\n {localization[\n column.getIsGrouped() ? 'ungroupByColumn' : 'groupByColumn'\n ]?.replace('{column}', String(columnDef.header))}\n </Box>\n </MenuItem>,\n ]}\n {enablePinning &&\n column.getCanPin() && [\n <MenuItem\n disabled={column.getIsPinned() === 'left' || !column.getCanPin()}\n key={0}\n onClick={() => handlePinColumn('left')}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <PushPinIcon style={{ transform: 'rotate(90deg)' }} />\n </ListItemIcon>\n {localization.pinToLeft}\n </Box>\n </MenuItem>,\n <MenuItem\n disabled={column.getIsPinned() === 'right' || !column.getCanPin()}\n key={1}\n onClick={() => handlePinColumn('right')}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <PushPinIcon style={{ transform: 'rotate(-90deg)' }} />\n </ListItemIcon>\n {localization.pinToRight}\n </Box>\n </MenuItem>,\n <MenuItem\n disabled={!column.getIsPinned()}\n divider={enableHiding}\n key={2}\n onClick={() => handlePinColumn(false)}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <PushPinIcon />\n </ListItemIcon>\n {localization.unpin}\n </Box>\n </MenuItem>,\n ]}\n {enableColumnResizing &&\n column.getCanResize() && [\n <MenuItem\n disabled={!columnSizing[column.id]}\n key={0}\n onClick={handleResetColumnSize}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <RestartAltIcon />\n </ListItemIcon>\n {localization.resetColumnSize}\n </Box>\n </MenuItem>,\n ]}\n {enableHiding && [\n <MenuItem\n disabled={columnDef.enableHiding === false}\n key={0}\n onClick={handleHideColumn}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <VisibilityOffIcon />\n </ListItemIcon>\n {localization.hideColumn?.replace(\n '{column}',\n String(columnDef.header),\n )}\n </Box>\n </MenuItem>,\n <MenuItem\n disabled={\n !Object.values(columnVisibility).filter((visible) => !visible)\n .length\n }\n key={1}\n onClick={handleShowAllColumns}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <ViewColumnIcon />\n </ListItemIcon>\n {localization.showAllColumns?.replace(\n '{column}',\n String(columnDef.header),\n )}\n </Box>\n <IconButton\n onClick={handleOpenShowHideColumnsMenu}\n onMouseEnter={handleOpenShowHideColumnsMenu}\n size=\"small\"\n sx={{ p: 0 }}\n >\n <ArrowRightIcon />\n </IconButton>\n </MenuItem>,\n <MRT_ShowHideColumnsMenu\n anchorEl={showHideColumnsMenuAnchorEl}\n isSubMenu\n key={2}\n setAnchorEl={setShowHideColumnsMenuAnchorEl}\n table={table}\n />,\n ]}\n </Menu>\n );\n};\n","import React, { FC } from 'react';\nimport { Box, ListItemIcon, Menu, MenuItem } from '@mui/material';\nimport type { MRT_Row, MRT_TableInstance } from '..';\nimport {\n commonListItemStyles,\n commonMenuItemStyles,\n} from './MRT_ColumnActionMenu';\n\ninterface Props {\n anchorEl: HTMLElement | null;\n handleEdit: () => void;\n row: MRT_Row;\n setAnchorEl: (anchorEl: HTMLElement | null) => void;\n table: MRT_TableInstance;\n}\n\nexport const MRT_RowActionMenu: FC<Props> = ({\n anchorEl,\n handleEdit,\n row,\n setAnchorEl,\n table,\n}) => {\n const {\n getState,\n options: {\n icons: { EditIcon },\n enableEditing,\n localization,\n renderRowActionMenuItems,\n },\n } = table;\n const { density } = getState();\n\n return (\n <Menu\n anchorEl={anchorEl}\n open={!!anchorEl}\n onClose={() => setAnchorEl(null)}\n MenuListProps={{\n dense: density === 'compact',\n }}\n >\n {enableEditing && (\n <MenuItem onClick={handleEdit} sx={commonMenuItemStyles}>\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <EditIcon />\n </ListItemIcon>\n {localization.edit}\n </Box>\n </MenuItem>\n )}\n {renderRowActionMenuItems?.({\n row,\n table,\n closeMenu: () => setAnchorEl(null),\n })}\n </Menu>\n );\n};\n","import React, { FC } from 'react';\nimport { Box, IconButton, Tooltip } from '@mui/material';\nimport type { MRT_Row, MRT_TableInstance } from '..';\n\ninterface Props {\n row: MRT_Row;\n table: MRT_TableInstance;\n}\n\nexport const MRT_EditActionButtons: FC<Props> = ({ row, table }) => {\n const {\n getState,\n options: {\n icons: { CancelIcon, SaveIcon },\n localization,\n onEditRowSubmit,\n },\n setCurrentEditingRow,\n } = table;\n const { currentEditingRow } = getState();\n\n const handleCancel = () => {\n row._valuesCache = row.original ?? {};\n setCurrentEditingRow(null);\n };\n\n const handleSave = () => {\n onEditRowSubmit?.({ row: currentEditingRow ?? row, table });\n setCurrentEditingRow(null);\n };\n\n return (\n <Box sx={{ display: 'flex', gap: '0.75rem' }}>\n <Tooltip arrow title={localization.cancel}>\n <IconButton aria-label={localization.cancel} onClick={handleCancel}>\n <CancelIcon />\n </IconButton>\n </Tooltip>\n <Tooltip arrow title={localization.save}>\n <IconButton\n aria-label={localization.save}\n color=\"info\"\n onClick={handleSave}\n >\n <SaveIcon />\n </IconButton>\n </Tooltip>\n </Box>\n );\n};\n","import React, { FC, MouseEvent, useState } from 'react';\nimport { IconButton, Tooltip } from '@mui/material';\nimport { MRT_RowActionMenu } from '../menus/MRT_RowActionMenu';\nimport { MRT_EditActionButtons } from './MRT_EditActionButtons';\nimport type { MRT_Row, MRT_TableInstance } from '..';\n\nconst commonIconButtonStyles = {\n height: '2rem',\n ml: '10px',\n opacity: 0.5,\n transition: 'opacity 0.2s',\n width: '2rem',\n '&:hover': {\n opacity: 1,\n },\n};\n\ninterface Props {\n row: MRT_Row;\n table: MRT_TableInstance;\n}\n\nexport const MRT_ToggleRowActionMenuButton: FC<Props> = ({ row, table }) => {\n const {\n getState,\n options: {\n enableEditing,\n icons: { EditIcon, MoreHorizIcon },\n localization,\n renderRowActionMenuItems,\n renderRowActions,\n },\n setCurrentEditingRow,\n } = table;\n\n const { currentEditingRow } = getState();\n\n const [anchorEl, setAnchorEl] = useState<null | HTMLElement>(null);\n\n const handleOpenRowActionMenu = (event: MouseEvent<HTMLElement>) => {\n event.stopPropagation();\n event.preventDefault();\n setAnchorEl(event.currentTarget);\n };\n\n const handleStartEditMode = () => {\n setCurrentEditingRow({ ...row });\n setAnchorEl(null);\n };\n\n return (\n <>\n {renderRowActions ? (\n <>{renderRowActions({ row, table })}</>\n ) : row.id === currentEditingRow?.id ? (\n <MRT_EditActionButtons row={row} table={table} />\n ) : !renderRowActionMenuItems && enableEditing ? (\n <Tooltip placement=\"right\" arrow title={localization.edit}>\n <IconButton sx={commonIconButtonStyles} onClick={handleStartEditMode}>\n <EditIcon />\n </IconButton>\n </Tooltip>\n ) : renderRowActionMenuItems ? (\n <>\n <Tooltip\n arrow\n enterDelay={1000}\n enterNextDelay={1000}\n title={localization.rowActions}\n >\n <IconButton\n aria-label={localization.rowActions}\n onClick={handleOpenRowActionMenu}\n size=\"small\"\n sx={commonIconButtonStyles}\n >\n <MoreHorizIcon />\n </IconButton>\n </Tooltip>\n <MRT_RowActionMenu\n anchorEl={anchorEl}\n handleEdit={handleStartEditMode}\n row={row}\n setAnchorEl={setAnchorEl}\n table={table}\n />\n </>\n ) : null}\n </>\n );\n};\n","import React, { FC } from 'react';\nimport { Checkbox, Tooltip } from '@mui/material';\nimport type { MRT_Row, MRT_TableInstance } from '..';\n\ninterface Props {\n row?: MRT_Row;\n selectAll?: boolean;\n table: MRT_TableInstance;\n}\n\nexport const MRT_SelectCheckbox: FC<Props> = ({ row, selectAll, table }) => {\n const {\n getState,\n options: {\n localization,\n muiSelectCheckboxProps,\n muiSelectAllCheckboxProps,\n selectAllMode,\n },\n } = table;\n const { density } = getState();\n\n const checkboxProps = !row\n ? muiSelectAllCheckboxProps instanceof Function\n ? muiSelectAllCheckboxProps({ table })\n : muiSelectAllCheckboxProps\n : muiSelectCheckboxProps instanceof Function\n ? muiSelectCheckboxProps({ row, table })\n : muiSelectCheckboxProps;\n\n return (\n <Tooltip\n arrow\n enterDelay={1000}\n enterNextDelay={1000}\n title={\n selectAll ? localization.toggleSelectAll : localization.toggleSelectRow\n }\n >\n <Checkbox\n checked={\n selectAll ? table.getIsAllRowsSelected() : row?.getIsSelected()\n }\n indeterminate={\n selectAll ? table.getIsSomeRowsSelected() : row?.getIsSomeSelected()\n }\n inputProps={{\n 'aria-label': selectAll\n ? localization.toggleSelectAll\n : localization.toggleSelectRow,\n }}\n onChange={\n !row\n ? selectAllMode === 'all'\n ? table.getToggleAllRowsSelectedHandler()\n : table.getToggleAllPageRowsSelectedHandler()\n : row.getToggleSelectedHandler()\n }\n size={density === 'compact' ? 'small' : 'medium'}\n {...checkboxProps}\n sx={(theme) => ({\n height: density === 'compact' ? '1.75rem' : '2.5rem',\n width: density === 'compact' ? '1.75rem' : '2.5rem',\n m: density !== 'compact' ? '-0.4rem' : undefined,\n ...(checkboxProps?.sx instanceof Function\n ? checkboxProps.sx(theme)\n : (checkboxProps?.sx as any)),\n })}\n />\n </Tooltip>\n );\n};\n","import React, {\n ChangeEvent,\n FC,\n MouseEvent,\n useCallback,\n useState,\n} from 'react';\nimport {\n Collapse,\n debounce,\n IconButton,\n InputAdornment,\n TextField,\n Tooltip,\n} from '@mui/material';\nimport { MRT_FilterOptionMenu } from '../menus/MRT_FilterOptionMenu';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n table: MRT_TableInstance;\n}\n\nexport const MRT_GlobalFilterTextField: FC<Props> = ({ table }) => {\n const {\n getState,\n setGlobalFilter,\n options: {\n enableGlobalFilterChangeMode,\n icons: { SearchIcon, CloseIcon },\n localization,\n muiSearchTextFieldProps,\n tableId,\n },\n } = table;\n const { globalFilter, showGlobalFilter } = getState();\n\n const [anchorEl, setAnchorEl] = useState<null | HTMLElement>(null);\n const [searchValue, setSearchValue] = useState(globalFilter ?? '');\n\n const handleChangeDebounced = useCallback(\n debounce((event: ChangeEvent<HTMLInputElement>) => {\n setGlobalFilter(event.target.value ?? undefined);\n }, 250),\n [],\n );\n\n const handleChange = (event: ChangeEvent<HTMLInputElement>) => {\n setSearchValue(event.target.value);\n handleChangeDebounced(event);\n };\n\n const handleGlobalFilterMenuOpen = (event: MouseEvent<HTMLElement>) => {\n setAnchorEl(event.currentTarget);\n };\n\n const handleClear = () => {\n setSearchValue('');\n setGlobalFilter(undefined);\n };\n\n const textFieldProps =\n muiSearchTextFieldProps instanceof Function\n ? muiSearchTextFieldProps({ table })\n : muiSearchTextFieldProps;\n\n return (\n <Collapse in={showGlobalFilter} orientation=\"horizontal\">\n <TextField\n id={`mrt-${tableId}-search-text-field`}\n placeholder={localization.search}\n onChange={handleChange}\n value={searchValue ?? ''}\n variant=\"standard\"\n InputProps={{\n startAdornment: enableGlobalFilterChangeMode ? (\n <InputAdornment position=\"start\">\n <Tooltip arrow title={localization.changeSearchMode}>\n <IconButton\n aria-label={localization.changeSearchMode}\n onClick={handleGlobalFilterMenuOpen}\n size=\"small\"\n sx={{ height: '1.75rem', width: '1.75rem' }}\n >\n <SearchIcon />\n </IconButton>\n </Tooltip>\n </InputAdornment>\n ) : (\n <SearchIcon />\n ),\n endAdornment: (\n <InputAdornment position=\"end\">\n <Tooltip arrow title={localization.clearSearch ?? ''}>\n <span>\n <IconButton\n aria-label={localization.clearSearch}\n disabled={!searchValue?.length}\n onClick={handleClear}\n size=\"small\"\n >\n <CloseIcon />\n </IconButton>\n </span>\n </Tooltip>\n </InputAdornment>\n ),\n }}\n {...textFieldProps}\n />\n <MRT_FilterOptionMenu\n anchorEl={anchorEl}\n setAnchorEl={setAnchorEl}\n table={table}\n />\n </Collapse>\n );\n};\n","import React, { FC } from 'react';\nimport { Collapse, LinearProgress } from '@mui/material';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n isTopToolbar: boolean;\n table: MRT_TableInstance;\n}\n\nexport const MRT_LinearProgressBar: FC<Props> = ({ isTopToolbar, table }) => {\n const {\n options: { muiLinearProgressProps },\n getState,\n } = table;\n const { isLoading, showProgressBars } = getState();\n\n const linearProgressProps =\n muiLinearProgressProps instanceof Function\n ? muiLinearProgressProps({ isTopToolbar, table })\n : muiLinearProgressProps;\n\n return (\n <Collapse\n in={isLoading || showProgressBars}\n mountOnEnter\n unmountOnExit\n sx={{\n bottom: isTopToolbar ? 0 : undefined,\n position: 'absolute',\n top: !isTopToolbar ? 0 : undefined,\n width: '100%',\n }}\n >\n <LinearProgress\n aria-label=\"Loading\"\n aria-busy=\"true\"\n sx={{ position: 'relative' }}\n {...linearProgressProps}\n />\n </Collapse>\n );\n};\n","import React, { ChangeEvent, FC } from 'react';\nimport { TablePagination } from '@mui/material';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n table: MRT_TableInstance;\n position: 'top' | 'bottom';\n}\n\nexport const MRT_TablePagination: FC<Props> = ({ table, position }) => {\n const {\n getPrePaginationRowModel,\n getState,\n setPageIndex,\n setPageSize,\n options: {\n muiTablePaginationProps,\n enableToolbarInternalActions,\n rowCount,\n },\n } = table;\n const {\n pagination: { pageSize = 10, pageIndex = 0 },\n showGlobalFilter,\n } = getState();\n\n const totalRowCount = rowCount ?? getPrePaginationRowModel().rows.length;\n const showFirstLastPageButtons = totalRowCount / pageSize > 2;\n\n const tablePaginationProps =\n muiTablePaginationProps instanceof Function\n ? muiTablePaginationProps({ table })\n : muiTablePaginationProps;\n\n const handleChangeRowsPerPage = (event: ChangeEvent<HTMLInputElement>) => {\n setPageSize(+event.target.value);\n };\n\n return (\n <TablePagination\n SelectProps={{\n sx: { m: '0 1rem 0 1ch' },\n MenuProps: { MenuListProps: { disablePadding: true } },\n }}\n component=\"div\"\n count={totalRowCount}\n onPageChange={(_: any, newPage: number) => setPageIndex(newPage)}\n onRowsPerPageChange={handleChangeRowsPerPage}\n page={pageIndex}\n rowsPerPage={pageSize}\n rowsPerPageOptions={[5, 10, 15, 20, 25, 30, 50, 100]}\n showFirstButton={showFirstLastPageButtons}\n showLastButton={showFirstLastPageButtons}\n {...tablePaginationProps}\n sx={(theme) => ({\n m: '0 0.5rem',\n mt:\n position === 'top' &&\n enableToolbarInternalActions &&\n !showGlobalFilter\n ? '3.5rem'\n : undefined,\n position: 'relative',\n zIndex: 2,\n ...(tablePaginationProps?.sx instanceof Function\n ? tablePaginationProps.sx(theme)\n : (tablePaginationProps?.sx as any)),\n })}\n />\n );\n};\n","import React, { FC, Fragment } from 'react';\nimport { Alert, AlertTitle, Box, Chip, Collapse } from '@mui/material';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n stackAlertBanner?: boolean;\n table: MRT_TableInstance;\n}\n\nexport const MRT_ToolbarAlertBanner: FC<Props> = ({\n stackAlertBanner,\n table,\n}) => {\n const {\n getPrePaginationRowModel,\n getSelectedRowModel,\n getState,\n options: { localization, muiTableToolbarAlertBannerProps },\n } = table;\n const { grouping, showAlertBanner } = getState();\n\n const alertProps =\n muiTableToolbarAlertBannerProps instanceof Function\n ? muiTableToolbarAlertBannerProps({ table })\n : muiTableToolbarAlertBannerProps;\n\n const selectMessage =\n getSelectedRowModel().rows.length > 0\n ? localization.selectedCountOfRowCountRowsSelected\n ?.replace(\n '{selectedCount}',\n getSelectedRowModel().rows.length.toString(),\n )\n ?.replace(\n '{rowCount}',\n getPrePaginationRowModel().rows.length.toString(),\n )\n : null;\n\n const groupedByMessage =\n grouping.length > 0 ? (\n <span>\n {localization.groupedBy}{' '}\n {grouping.map((columnId, index) => (\n <Fragment key={`${index}-${columnId}`}>\n {index > 0 ? localization.thenBy : ''}\n <Chip\n color=\"secondary\"\n label={table.getColumn(columnId).columnDef.header}\n onDelete={() => table.getColumn(columnId).toggleGrouping()}\n />\n </Fragment>\n ))}\n </span>\n ) : null;\n\n return (\n <Collapse\n in={showAlertBanner || !!selectMessage || !!groupedByMessage}\n timeout={stackAlertBanner ? 200 : 0}\n >\n <Alert\n color=\"info\"\n icon={false}\n {...alertProps}\n sx={(theme) => ({\n borderRadius: 0,\n fontSize: '1rem',\n left: 0,\n p: 0,\n position: 'relative',\n right: 0,\n top: 0,\n width: '100%',\n zIndex: 2,\n ...(alertProps?.sx instanceof Function\n ? alertProps.sx(theme)\n : (alertProps?.sx as any)),\n })}\n >\n {alertProps?.title && <AlertTitle>{alertProps.title}</AlertTitle>}\n <Box sx={{ p: '0.5rem 1rem' }}>\n {alertProps?.children}\n {alertProps?.children && (selectMessage || groupedByMessage) && (\n <br />\n )}\n {selectMessage}\n {selectMessage && groupedByMessage && <br />}\n {groupedByMessage}\n </Box>\n </Alert>\n </Collapse>\n );\n};\n","import React, { FC } from 'react';\nimport { IconButton, IconButtonProps, Tooltip } from '@mui/material';\nimport { MRT_TableInstance } from '..';\n\ninterface Props extends IconButtonProps {\n table: MRT_TableInstance;\n}\n\nexport const MRT_FullScreenToggleButton: FC<Props> = ({ table, ...rest }) => {\n const {\n getState,\n options: {\n icons: { FullscreenExitIcon, FullscreenIcon },\n localization,\n },\n setIsFullScreen,\n } = table;\n const { isFullScreen } = getState();\n\n const handleToggleFullScreen = () => {\n setIsFullScreen(!isFullScreen);\n };\n\n return (\n <Tooltip arrow title={localization.toggleFullScreen}>\n <IconButton\n aria-label={localization.showHideFilters}\n onClick={handleToggleFullScreen}\n {...rest}\n >\n {isFullScreen ? <FullscreenExitIcon /> : <FullscreenIcon />}\n </IconButton>\n </Tooltip>\n );\n};\n","import React, { FC, MouseEvent, useState } from 'react';\nimport { IconButton, Tooltip, IconButtonProps } from '@mui/material';\nimport { MRT_ShowHideColumnsMenu } from '../menus/MRT_ShowHideColumnsMenu';\nimport { MRT_TableInstance } from '..';\n\ninterface Props extends IconButtonProps {\n table: MRT_TableInstance;\n}\n\nexport const MRT_ShowHideColumnsButton: FC<Props> = ({ table, ...rest }) => {\n const {\n options: {\n icons: { ViewColumnIcon },\n localization,\n },\n } = table;\n\n const [anchorEl, setAnchorEl] = useState<null | HTMLElement>(null);\n\n const handleClick = (event: MouseEvent<HTMLElement>) => {\n setAnchorEl(event.currentTarget);\n };\n\n return (\n <>\n <Tooltip arrow title={localization.showHideColumns}>\n <IconButton\n aria-label={localization.showHideColumns}\n onClick={handleClick}\n {...rest}\n >\n <ViewColumnIcon />\n </IconButton>\n </Tooltip>\n <MRT_ShowHideColumnsMenu\n anchorEl={anchorEl}\n setAnchorEl={setAnchorEl}\n table={table}\n />\n </>\n );\n};\n","import React, { FC } from 'react';\nimport { IconButton, IconButtonProps, Tooltip } from '@mui/material';\nimport { MRT_TableInstance } from '..';\n\ninterface Props extends IconButtonProps {\n table: MRT_TableInstance;\n}\n\nexport const MRT_ToggleDensePaddingButton: FC<Props> = ({ table, ...rest }) => {\n const {\n getState,\n options: {\n icons: { DensityLargeIcon, DensityMediumIcon, DensitySmallIcon },\n localization,\n },\n setDensity,\n } = table;\n const { density } = getState();\n\n const handleToggleDensePadding = () => {\n const nextDensity =\n density === 'comfortable'\n ? 'compact'\n : density === 'compact'\n ? 'spacious'\n : 'comfortable';\n setDensity(nextDensity);\n };\n\n return (\n <Tooltip arrow title={localization.toggleDensity}>\n <IconButton\n aria-label={localization.toggleDensity}\n onClick={handleToggleDensePadding}\n {...rest}\n >\n {density === 'compact' ? (\n <DensitySmallIcon />\n ) : density === 'comfortable' ? (\n <DensityMediumIcon />\n ) : (\n <DensityLargeIcon />\n )}\n </IconButton>\n </Tooltip>\n );\n};\n","import React, { FC } from 'react';\nimport { IconButton, IconButtonProps, Tooltip } from '@mui/material';\nimport { MRT_TableInstance } from '..';\n\ninterface Props extends IconButtonProps {\n table: MRT_TableInstance;\n}\n\nexport const MRT_ToggleFiltersButton: FC<Props> = ({ table, ...rest }) => {\n const {\n getState,\n options: {\n icons: { FilterListIcon, FilterListOffIcon },\n localization,\n },\n setShowFilters,\n } = table;\n const { showColumnFilters } = getState();\n\n const handleToggleShowFilters = () => {\n setShowFilters(!showColumnFilters);\n };\n\n return (\n <Tooltip arrow title={localization.showHideFilters}>\n <IconButton\n aria-label={localization.showHideFilters}\n onClick={handleToggleShowFilters}\n {...rest}\n >\n {showColumnFilters ? <FilterListOffIcon /> : <FilterListIcon />}\n </IconButton>\n </Tooltip>\n );\n};\n","import React, { FC } from 'react';\nimport { IconButton, IconButtonProps, Tooltip } from '@mui/material';\nimport { MRT_TableInstance } from '..';\n\ninterface Props extends IconButtonProps {\n table: MRT_TableInstance;\n}\n\nexport const MRT_ToggleGlobalFilterButton: FC<Props> = ({ table, ...rest }) => {\n const {\n getState,\n options: {\n icons: { SearchIcon, SearchOffIcon },\n tableId,\n localization,\n muiSearchTextFieldProps,\n },\n setShowGlobalFilter,\n } = table;\n const { showGlobalFilter } = getState();\n\n const textFieldProps =\n muiSearchTextFieldProps instanceof Function\n ? muiSearchTextFieldProps({ table })\n : muiSearchTextFieldProps;\n\n const handleToggleSearch = () => {\n setShowGlobalFilter(!showGlobalFilter);\n setTimeout(\n () =>\n document\n .getElementById(\n textFieldProps?.id ?? `mrt-${tableId}-search-text-field`,\n )\n ?.focus(),\n 200,\n );\n };\n\n return (\n <Tooltip arrow title={localization.showHideSearch}>\n <IconButton onClick={handleToggleSearch} {...rest}>\n {showGlobalFilter ? <SearchOffIcon /> : <SearchIcon />}\n </IconButton>\n </Tooltip>\n );\n};\n","import React, { FC } from 'react';\nimport { Box } from '@mui/material';\nimport { MRT_FullScreenToggleButton } from '../buttons/MRT_FullScreenToggleButton';\nimport { MRT_ShowHideColumnsButton } from '../buttons/MRT_ShowHideColumnsButton';\nimport { MRT_ToggleDensePaddingButton } from '../buttons/MRT_ToggleDensePaddingButton';\nimport { MRT_ToggleFiltersButton } from '../buttons/MRT_ToggleFiltersButton';\nimport { MRT_ToggleGlobalFilterButton } from '../buttons/MRT_ToggleGlobalFilterButton';\nimport { MRT_TableInstance } from '..';\nimport { MRT_GlobalFilterTextField } from '../inputs/MRT_GlobalFilterTextField';\n\ninterface Props {\n table: MRT_TableInstance;\n}\n\nexport const MRT_ToolbarInternalButtons: FC<Props> = ({ table }) => {\n const {\n options: {\n enableColumnFilters,\n enableColumnOrdering,\n enableDensityToggle,\n enableFilters,\n enableFullScreenToggle,\n enableGlobalFilter,\n enableHiding,\n enablePinning,\n positionGlobalFilter,\n renderToolbarInternalActions,\n },\n } = table;\n\n return (\n <Box\n sx={{\n alignItems: 'center',\n display: 'flex',\n zIndex: 3,\n }}\n >\n {renderToolbarInternalActions?.({\n MRT_FullScreenToggleButton,\n MRT_ShowHideColumnsButton,\n MRT_ToggleDensePaddingButton,\n MRT_ToggleFiltersButton,\n MRT_ToggleGlobalFilterButton,\n table,\n }) ?? (\n <>\n {enableGlobalFilter && positionGlobalFilter === 'right' && (\n <MRT_GlobalFilterTextField table={table} />\n )}\n {enableFilters && enableGlobalFilter && (\n <MRT_ToggleGlobalFilterButton table={table} />\n )}\n {enableFilters && enableColumnFilters && (\n <MRT_ToggleFiltersButton table={table} />\n )}\n {(enableHiding || enableColumnOrdering || enablePinning) && (\n <MRT_ShowHideColumnsButton table={table} />\n )}\n {enableDensityToggle && (\n <MRT_ToggleDensePaddingButton table={table} />\n )}\n {enableFullScreenToggle && (\n <MRT_FullScreenToggleButton table={table} />\n )}\n </>\n )}\n </Box>\n );\n};\n","import React, { FC } from 'react';\nimport { Box, lighten, Theme, Toolbar, useMediaQuery } from '@mui/material';\nimport { MRT_GlobalFilterTextField } from '../inputs/MRT_GlobalFilterTextField';\nimport { MRT_LinearProgressBar } from './MRT_LinearProgressBar';\nimport { MRT_TableInstance } from '..';\nimport { MRT_TablePagination } from './MRT_TablePagination';\nimport { MRT_ToolbarAlertBanner } from './MRT_ToolbarAlertBanner';\nimport { MRT_ToolbarInternalButtons } from './MRT_ToolbarInternalButtons';\n\nexport const commonToolbarStyles = ({ theme }: { theme: Theme }) => ({\n alignItems: 'flex-start',\n backgroundColor: lighten(theme.palette.background.default, 0.04),\n backgroundImage: 'none',\n display: 'grid',\n minHeight: '3.5rem',\n overflow: 'hidden',\n p: '0 !important',\n transition: 'all 0.2s ease-in-out',\n zIndex: 1,\n});\n\ninterface Props {\n table: MRT_TableInstance;\n}\n\nexport const MRT_ToolbarTop: FC<Props> = ({ table }) => {\n const {\n getState,\n options: {\n enableGlobalFilter,\n enablePagination,\n enableToolbarInternalActions,\n muiTableToolbarTopProps,\n positionGlobalFilter,\n positionPagination,\n positionToolbarAlertBanner,\n renderToolbarTopCustomActions,\n tableId,\n },\n } = table;\n\n const { isFullScreen, showGlobalFilter } = getState();\n\n const isMobile = useMediaQuery('(max-width:720px)');\n\n const toolbarProps =\n muiTableToolbarTopProps instanceof Function\n ? muiTableToolbarTopProps({ table })\n : muiTableToolbarTopProps;\n\n const stackAlertBanner =\n isMobile || !!renderToolbarTopCustomActions || showGlobalFilter;\n\n return (\n <Toolbar\n id={`mrt-${tableId}-toolbar-top`}\n variant=\"dense\"\n {...toolbarProps}\n sx={(theme) =>\n ({\n position: isFullScreen ? 'sticky' : undefined,\n top: isFullScreen ? '0' : undefined,\n ...commonToolbarStyles({ theme }),\n ...(toolbarProps?.sx instanceof Function\n ? toolbarProps.sx(theme)\n : (toolbarProps?.sx as any)),\n } as any)\n }\n >\n {positionToolbarAlertBanner === 'top' && (\n <MRT_ToolbarAlertBanner\n stackAlertBanner={stackAlertBanner}\n table={table}\n />\n )}\n <Box\n sx={{\n alignItems: 'flex-start',\n boxSizing: 'border-box',\n display: 'flex',\n justifyContent: 'space-between',\n p: '0.5rem',\n position: stackAlertBanner ? 'relative' : 'absolute',\n right: 0,\n top: 0,\n width: '100%',\n }}\n >\n {enableGlobalFilter && positionGlobalFilter === 'left' && (\n <MRT_GlobalFilterTextField table={table} />\n )}\n\n {renderToolbarTopCustomActions?.({ table }) ?? <span />}\n {enableToolbarInternalActions ? (\n <MRT_ToolbarInternalButtons table={table} />\n ) : (\n enableGlobalFilter &&\n positionGlobalFilter === 'right' && (\n <MRT_GlobalFilterTextField table={table} />\n )\n )}\n </Box>\n {enablePagination &&\n ['top', 'both'].includes(positionPagination ?? '') && (\n <MRT_TablePagination table={table} position=\"top\" />\n )}\n <MRT_LinearProgressBar isTopToolbar table={table} />\n </Toolbar>\n );\n};\n","import React, { FC } from 'react';\nimport { alpha, Box, Toolbar, useMediaQuery } from '@mui/material';\nimport { MRT_TablePagination } from './MRT_TablePagination';\nimport { MRT_ToolbarAlertBanner } from './MRT_ToolbarAlertBanner';\nimport { MRT_LinearProgressBar } from './MRT_LinearProgressBar';\nimport { commonToolbarStyles } from './MRT_ToolbarTop';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n table: MRT_TableInstance;\n}\n\nexport const MRT_ToolbarBottom: FC<Props> = ({ table }) => {\n const {\n getState,\n options: {\n enablePagination,\n muiTableToolbarBottomProps,\n positionPagination,\n positionToolbarAlertBanner,\n renderToolbarBottomCustomActions,\n tableId,\n },\n } = table;\n const { isFullScreen } = getState();\n\n const isMobile = useMediaQuery('(max-width:720px)');\n\n const toolbarProps =\n muiTableToolbarBottomProps instanceof Function\n ? muiTableToolbarBottomProps({ table })\n : muiTableToolbarBottomProps;\n\n const stackAlertBanner = isMobile || !!renderToolbarBottomCustomActions;\n\n return (\n <Toolbar\n id={`mrt-${tableId}-toolbar-bottom`}\n variant=\"dense\"\n {...toolbarProps}\n sx={(theme) =>\n ({\n ...commonToolbarStyles({ theme }),\n bottom: isFullScreen ? '0' : undefined,\n boxShadow: `-3px 0 6px ${alpha(theme.palette.common.black, 0.1)}`,\n left: 0,\n position: isFullScreen ? 'fixed' : 'relative',\n right: 0,\n ...(toolbarProps?.sx instanceof Function\n ? toolbarProps.sx(theme)\n : (toolbarProps?.sx as any)),\n } as any)\n }\n >\n <MRT_LinearProgressBar isTopToolbar={false} table={table} />\n {positionToolbarAlertBanner === 'bottom' && (\n <MRT_ToolbarAlertBanner table={table} />\n )}\n <Box\n sx={{\n display: 'flex',\n justifyContent: 'space-between',\n width: '100%',\n }}\n >\n {renderToolbarBottomCustomActions ? (\n <Box sx={{ p: '0.5rem' }}>\n {renderToolbarBottomCustomActions({ table })}\n </Box>\n ) : (\n <span />\n )}\n <Box\n sx={{\n display: 'flex',\n justifyContent: 'flex-end',\n position: stackAlertBanner ? 'relative' : 'absolute',\n right: 0,\n top: 0,\n }}\n >\n {enablePagination &&\n ['bottom', 'both'].includes(positionPagination ?? '') && (\n <MRT_TablePagination table={table} position=\"bottom\" />\n )}\n </Box>\n </Box>\n </Toolbar>\n );\n};\n","import React, { FC, MouseEvent, useState } from 'react';\nimport { IconButton, Tooltip } from '@mui/material';\nimport { MRT_ColumnActionMenu } from '../menus/MRT_ColumnActionMenu';\nimport type { MRT_Header, MRT_TableInstance } from '..';\n\ninterface Props {\n header: MRT_Header;\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableHeadCellColumnActionsButton: FC<Props> = ({\n header,\n table,\n}) => {\n const {\n options: {\n icons: { MoreVertIcon },\n localization,\n muiTableHeadCellColumnActionsButtonProps,\n },\n } = table;\n const { column } = header;\n const { columnDef } = column;\n\n const [anchorEl, setAnchorEl] = useState<null | HTMLElement>(null);\n\n const handleClick = (event: MouseEvent<HTMLElement>) => {\n event.stopPropagation();\n event.preventDefault();\n setAnchorEl(event.currentTarget);\n };\n\n const mTableHeadCellColumnActionsButtonProps =\n muiTableHeadCellColumnActionsButtonProps instanceof Function\n ? muiTableHeadCellColumnActionsButtonProps({ column, table })\n : muiTableHeadCellColumnActionsButtonProps;\n\n const mcTableHeadCellColumnActionsButtonProps =\n columnDef.muiTableHeadCellColumnActionsButtonProps instanceof Function\n ? columnDef.muiTableHeadCellColumnActionsButtonProps({\n column,\n table,\n })\n : columnDef.muiTableHeadCellColumnActionsButtonProps;\n\n const iconButtonProps = {\n ...mTableHeadCellColumnActionsButtonProps,\n ...mcTableHeadCellColumnActionsButtonProps,\n };\n\n return (\n <>\n <Tooltip\n arrow\n enterDelay={1000}\n enterNextDelay={1000}\n placement=\"top\"\n title={localization.columnActions}\n >\n <IconButton\n aria-label={localization.columnActions}\n onClick={handleClick}\n size=\"small\"\n {...iconButtonProps}\n sx={(theme) => ({\n height: '2rem',\n mt: '-0.2rem',\n opacity: 0.5,\n transition: 'opacity 0.2s',\n width: '2rem',\n '&:hover': {\n opacity: 1,\n },\n ...(iconButtonProps?.sx instanceof Function\n ? iconButtonProps.sx(theme)\n : (iconButtonProps?.sx as any)),\n })}\n >\n <MoreVertIcon />\n </IconButton>\n </Tooltip>\n <MRT_ColumnActionMenu\n anchorEl={anchorEl}\n header={header}\n setAnchorEl={setAnchorEl}\n table={table}\n />\n </>\n );\n};\n","import React, {\n ChangeEvent,\n FC,\n MouseEvent,\n useCallback,\n useState,\n} from 'react';\nimport {\n Box,\n Checkbox,\n Chip,\n debounce,\n IconButton,\n InputAdornment,\n ListItemText,\n MenuItem,\n TextField,\n TextFieldProps,\n Tooltip,\n} from '@mui/material';\nimport { MRT_FilterOptionMenu } from '../menus/MRT_FilterOptionMenu';\nimport type { MRT_Header, MRT_TableInstance } from '..';\n\ninterface Props {\n header: MRT_Header;\n rangeFilterIndex?: number;\n table: MRT_TableInstance;\n}\n\nexport const MRT_FilterTextField: FC<Props> = ({\n header,\n rangeFilterIndex,\n table,\n}) => {\n const {\n getState,\n options: {\n enableColumnFilterChangeMode,\n columnFilterModeOptions,\n icons: { FilterListIcon, CloseIcon },\n localization,\n muiTableHeadCellFilterTextFieldProps,\n tableId,\n },\n setCurrentFilterFns,\n } = table;\n const { column } = header;\n const { columnDef } = column;\n const { currentFilterFns } = getState();\n\n const mTableHeadCellFilterTextFieldProps =\n muiTableHeadCellFilterTextFieldProps instanceof Function\n ? muiTableHeadCellFilterTextFieldProps({\n column,\n table,\n rangeFilterIndex,\n })\n : muiTableHeadCellFilterTextFieldProps;\n\n const mcTableHeadCellFilterTextFieldProps =\n columnDef.muiTableHeadCellFilterTextFieldProps instanceof Function\n ? columnDef.muiTableHeadCellFilterTextFieldProps({\n column,\n table,\n rangeFilterIndex,\n })\n : columnDef.muiTableHeadCellFilterTextFieldProps;\n\n const textFieldProps = {\n ...mTableHeadCellFilterTextFieldProps,\n ...mcTableHeadCellFilterTextFieldProps,\n } as TextFieldProps;\n\n const isRangeFilter =\n columnDef.filterVariant === 'range' || rangeFilterIndex !== undefined;\n const isSelectFilter = columnDef.filterVariant === 'select';\n const isMultiSelectFilter = columnDef.filterVariant === 'multiSelect';\n const isTextboxFilter = !isSelectFilter && !isMultiSelectFilter;\n\n const currentFilterOption = currentFilterFns?.[header.id];\n const filterId = `mrt-${tableId}-${header.id}-filter-text-field${\n rangeFilterIndex ?? ''\n }`;\n const filterChipLabel = ['empty', 'notEmpty'].includes(currentFilterOption)\n ? //@ts-ignore\n localization[\n `filter${\n currentFilterOption?.charAt?.(0)?.toUpperCase() +\n currentFilterOption?.slice(1)\n }`\n ]\n : '';\n const filterPlaceholder = !isRangeFilter\n ? localization.filterByColumn?.replace('{column}', String(columnDef.header))\n : rangeFilterIndex === 0\n ? localization.min\n : rangeFilterIndex === 1\n ? localization.max\n : '';\n const allowedColumnFilterOptions =\n columnDef?.columnFilterModeOptions ?? columnFilterModeOptions;\n const showChangeModeButton =\n enableColumnFilterChangeMode &&\n columnDef.enableColumnFilterChangeMode !== false &&\n !rangeFilterIndex &&\n (allowedColumnFilterOptions === undefined ||\n !!allowedColumnFilterOptions?.length);\n\n const [anchorEl, setAnchorEl] = useState<null | HTMLElement>(null);\n const [filterValue, setFilterValue] = useState<string | string[]>(() =>\n isMultiSelectFilter\n ? (column.getFilterValue() as string[]) || []\n : isRangeFilter\n ? (column.getFilterValue() as [string, string])?.[\n rangeFilterIndex as number\n ] || []\n : (column.getFilterValue() as string) ?? '',\n );\n\n const handleChangeDebounced = useCallback(\n debounce(\n (event: ChangeEvent<HTMLInputElement>) => {\n let value =\n textFieldProps.type === 'date'\n ? new Date(event.target.value)\n : event.target.value;\n if (isRangeFilter) {\n column.setFilterValue((old: [string, string | Date]) => {\n const newFilterValues = old ?? ['', ''];\n newFilterValues[rangeFilterIndex as number] = value;\n return newFilterValues;\n });\n } else {\n column.setFilterValue(value ?? undefined);\n }\n },\n isTextboxFilter ? 200 : 1,\n ),\n [],\n );\n\n const handleChange = (event: ChangeEvent<HTMLInputElement>) => {\n setFilterValue(event.target.value);\n handleChangeDebounced(event);\n };\n\n const handleClear = () => {\n if (isMultiSelectFilter) {\n setFilterValue([]);\n column.setFilterValue([]);\n } else if (isRangeFilter) {\n setFilterValue('');\n column.setFilterValue((old: [string | undefined, string | undefined]) => {\n const newFilterValues = old ?? ['', ''];\n newFilterValues[rangeFilterIndex as number] = undefined;\n return newFilterValues;\n });\n } else {\n setFilterValue('');\n column.setFilterValue(undefined);\n }\n };\n\n const handleClearEmptyFilterChip = () => {\n setFilterValue('');\n column.setFilterValue(undefined);\n setCurrentFilterFns((prev) => ({\n ...prev,\n [header.id]: 'fuzzy',\n }));\n };\n\n const handleFilterMenuOpen = (event: MouseEvent<HTMLElement>) => {\n setAnchorEl(event.currentTarget);\n };\n\n if (columnDef.Filter) {\n return <>{columnDef.Filter?.({ header, table })}</>;\n }\n\n return (\n <>\n <TextField\n fullWidth\n id={filterId}\n inputProps={{\n disabled: !!filterChipLabel,\n sx: {\n textOverflow: 'ellipsis',\n width: filterChipLabel ? 0 : undefined,\n },\n title: filterPlaceholder,\n }}\n helperText={\n showChangeModeButton ? (\n <label htmlFor={filterId}>\n {localization.filterMode.replace(\n '{filterType}',\n // @ts-ignore\n localization[\n `filter${\n currentFilterOption?.charAt(0)?.toUpperCase() +\n currentFilterOption?.slice(1)\n }`\n ],\n )}\n </label>\n ) : null\n }\n FormHelperTextProps={{\n sx: {\n fontSize: '0.6rem',\n lineHeight: '0.8rem',\n whiteSpace: 'nowrap',\n },\n }}\n margin=\"none\"\n placeholder={\n filterChipLabel || isSelectFilter || isMultiSelectFilter\n ? undefined\n : filterPlaceholder\n }\n onChange={handleChange}\n onClick={(e: MouseEvent<HTMLInputElement>) => e.stopPropagation()}\n select={isSelectFilter || isMultiSelectFilter}\n value={filterValue}\n variant=\"standard\"\n InputProps={{\n startAdornment: showChangeModeButton ? (\n <InputAdornment position=\"start\">\n <Tooltip arrow title={localization.changeFilterMode}>\n <span>\n <IconButton\n aria-label={localization.changeFilterMode}\n onClick={handleFilterMenuOpen}\n size=\"small\"\n sx={{ height: '1.75rem', width: '1.75rem' }}\n >\n <FilterListIcon />\n </IconButton>\n </span>\n </Tooltip>\n {filterChipLabel && (\n <Chip\n onDelete={handleClearEmptyFilterChip}\n label={filterChipLabel}\n />\n )}\n </InputAdornment>\n ) : (\n <FilterListIcon />\n ),\n endAdornment: !filterChipLabel && (\n <InputAdornment position=\"end\">\n <Tooltip\n arrow\n placement=\"right\"\n title={localization.clearFilter ?? ''}\n >\n <span>\n <IconButton\n aria-label={localization.clearFilter}\n disabled={!filterValue?.length}\n onClick={handleClear}\n size=\"small\"\n sx={{\n height: '1.75rem',\n width: '1.75rem',\n }}\n >\n <CloseIcon />\n </IconButton>\n </span>\n </Tooltip>\n </InputAdornment>\n ),\n }}\n SelectProps={{\n displayEmpty: true,\n multiple: isMultiSelectFilter,\n renderValue: isMultiSelectFilter\n ? (selected: any) =>\n !selected?.length ? (\n <Box sx={{ opacity: 0.5 }}>{filterPlaceholder}</Box>\n ) : (\n <Box sx={{ display: 'flex', flexWrap: 'wrap', gap: '2px' }}>\n {(selected as string[])?.map((value) => (\n <Chip key={value} label={value} />\n ))}\n </Box>\n )\n : undefined,\n }}\n {...textFieldProps}\n sx={(theme) => ({\n p: 0,\n minWidth: !filterChipLabel ? '6rem' : 'auto',\n width: 'calc(100% + 0.5rem)',\n '&\t.MuiSelect-icon': {\n mr: '1.5rem',\n },\n ...(textFieldProps?.sx instanceof Function\n ? textFieldProps.sx(theme)\n : (textFieldProps?.sx as any)),\n })}\n >\n {(isSelectFilter || isMultiSelectFilter) && (\n <MenuItem divider disabled hidden value=\"\">\n <Box sx={{ opacity: 0.5 }}>{filterPlaceholder}</Box>\n </MenuItem>\n )}\n {columnDef?.filterSelectOptions?.map((option) => {\n let value: string;\n let text: string;\n if (typeof option !== 'object') {\n value = option;\n text = option;\n } else {\n value = option.value;\n text = option.text;\n }\n return (\n <MenuItem key={value} value={value}>\n {isMultiSelectFilter && (\n <Checkbox\n checked={(\n (column.getFilterValue() ?? []) as string[]\n ).includes(value)}\n sx={{ mr: '0.5rem' }}\n />\n )}\n <ListItemText>{text}</ListItemText>\n </MenuItem>\n );\n })}\n </TextField>\n <MRT_FilterOptionMenu\n anchorEl={anchorEl}\n header={header}\n setAnchorEl={setAnchorEl}\n table={table}\n />\n </>\n );\n};\n","import React, { FC } from 'react';\nimport { Box } from '@mui/material';\nimport { MRT_FilterTextField } from './MRT_FilterTextField';\nimport { MRT_Header, MRT_TableInstance } from '..';\n\ninterface Props {\n header: MRT_Header;\n table: MRT_TableInstance;\n}\n\nexport const MRT_FilterRangeFields: FC<Props> = ({ header, table }) => {\n return (\n <Box sx={{ display: 'grid', gridTemplateColumns: '6fr 6fr', gap: '1rem' }}>\n <MRT_FilterTextField header={header} rangeFilterIndex={0} table={table} />\n <MRT_FilterTextField header={header} rangeFilterIndex={1} table={table} />\n </Box>\n );\n};\n","import React, { FC } from 'react';\nimport { Collapse } from '@mui/material';\nimport { MRT_FilterRangeFields } from '../inputs/MRT_FilterRangeFields';\nimport { MRT_FilterTextField } from '../inputs/MRT_FilterTextField';\nimport { MRT_Header, MRT_TableInstance } from '..';\n\ninterface Props {\n header: MRT_Header;\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableHeadCellFilterContainer: FC<Props> = ({\n header,\n table,\n}) => {\n const { getState } = table;\n const { currentFilterFns, showColumnFilters } = getState();\n const { column } = header;\n\n return (\n <Collapse in={showColumnFilters} mountOnEnter unmountOnExit>\n {['between', 'betweenInclusive', 'inNumberRange'].includes(\n currentFilterFns[column.id],\n ) ? (\n <MRT_FilterRangeFields header={header} table={table} />\n ) : (\n <MRT_FilterTextField header={header} table={table} />\n )}\n </Collapse>\n );\n};\n","import React, { FC, MouseEvent } from 'react';\nimport { Grow, IconButton, Tooltip } from '@mui/material';\nimport { MRT_Header, MRT_TableInstance } from '..';\n\ninterface Props {\n header: MRT_Header;\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableHeadCellFilterLabel: FC<Props> = ({ header, table }) => {\n const {\n getState,\n options: {\n icons: { FilterAltIcon },\n localization,\n },\n } = table;\n const { currentFilterFns } = getState();\n const { column } = header;\n const { columnDef } = column;\n\n const isRangeFilter = [\n 'between',\n 'betweenInclusive',\n 'inNumberRange',\n ].includes(columnDef._filterFn);\n const currentFilterOption = currentFilterFns?.[header.id];\n const filterTooltip = localization.filteringByColumn\n .replace('{column}', String(columnDef.header))\n .replace(\n '{filterType}',\n // @ts-ignore\n localization[\n `filter${\n currentFilterOption?.charAt(0)?.toUpperCase() +\n currentFilterOption?.slice(1)\n }`\n ],\n )\n .replace(\n '{filterValue}',\n `\"${\n Array.isArray(column.getFilterValue())\n ? (column.getFilterValue() as [string, string]).join(\n `\" ${isRangeFilter ? localization.and : localization.or} \"`,\n )\n : (column.getFilterValue() as string)\n }\"`,\n )\n .replace('\" \"', '');\n\n return (\n <Grow\n unmountOnExit\n in={\n (!!column.getFilterValue() && isRangeFilter) ||\n (!isRangeFilter && // @ts-ignore\n (!!column.getFilterValue()?.[0] || !!column.getFilterValue()?.[1]))\n }\n >\n <span>\n <Tooltip arrow placement=\"top\" title={filterTooltip}>\n <IconButton\n disableRipple\n onClick={(event: MouseEvent<HTMLButtonElement>) => {\n event.stopPropagation();\n }}\n size=\"small\"\n sx={{\n m: 0,\n opacity: 0.8,\n p: '2px',\n transform: 'scale(0.66)',\n width: '1.5ch',\n }}\n >\n <FilterAltIcon />\n </IconButton>\n </Tooltip>\n </span>\n </Grow>\n );\n};\n","import React, { DragEvent, FC, RefObject } from 'react';\nimport { MRT_GrabHandleButton } from '../buttons/MRT_GrabHandleButton';\nimport { reorderColumn } from '../column.utils';\nimport type { MRT_Column, MRT_TableInstance } from '..';\n\ninterface Props {\n column: MRT_Column;\n table: MRT_TableInstance;\n tableHeadCellRef: RefObject<HTMLTableCellElement>;\n}\n\nexport const MRT_TableHeadCellGrabHandle: FC<Props> = ({\n column,\n table,\n tableHeadCellRef,\n}) => {\n const {\n getState,\n options: {\n enableColumnOrdering,\n muiTableHeadCellDragHandleProps,\n onColumnDrop,\n },\n setColumnOrder,\n setCurrentDraggingColumn,\n setCurrentHoveredColumn,\n } = table;\n const { columnDef } = column;\n const { currentHoveredColumn, currentDraggingColumn, columnOrder } =\n getState();\n\n const mIconButtonProps =\n muiTableHeadCellDragHandleProps instanceof Function\n ? muiTableHeadCellDragHandleProps({ column, table })\n : muiTableHeadCellDragHandleProps;\n\n const mcIconButtonProps =\n columnDef.muiTableHeadCellDragHandleProps instanceof Function\n ? columnDef.muiTableHeadCellDragHandleProps({ column, table })\n : columnDef.muiTableHeadCellDragHandleProps;\n\n const iconButtonProps = {\n ...mIconButtonProps,\n ...mcIconButtonProps,\n };\n\n const handleDragStart = (e: DragEvent<HTMLButtonElement>) => {\n setCurrentDraggingColumn(column);\n e.dataTransfer.setDragImage(tableHeadCellRef.current as HTMLElement, 0, 0);\n };\n\n const handleDragEnd = (event: DragEvent<HTMLButtonElement>) => {\n onColumnDrop?.({\n event,\n draggedColumn: column,\n targetColumn: currentHoveredColumn,\n });\n if (\n enableColumnOrdering &&\n currentHoveredColumn &&\n currentHoveredColumn?.id !== currentDraggingColumn?.id\n ) {\n setColumnOrder(reorderColumn(column, currentHoveredColumn, columnOrder));\n }\n setCurrentDraggingColumn(null);\n setCurrentHoveredColumn(null);\n };\n\n return (\n <MRT_GrabHandleButton\n iconButtonProps={iconButtonProps}\n onDragStart={handleDragStart}\n onDragEnd={handleDragEnd}\n table={table}\n />\n );\n};\n","import React, { FC } from 'react';\nimport { Divider, Theme } from '@mui/material';\nimport { MRT_Header, MRT_TableInstance } from '..';\n\ninterface Props {\n header: MRT_Header;\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableHeadCellResizeHandle: FC<Props> = ({ header, table }) => {\n const {\n getState,\n options: { columnResizeMode },\n } = table;\n const { density, showColumnFilters } = getState();\n const { column } = header;\n const { columnDef } = column;\n const { columnDefType } = columnDef;\n\n return (\n <Divider\n flexItem\n orientation=\"vertical\"\n onDoubleClick={() => column.resetSize()}\n sx={(theme: Theme) => ({\n borderRadius: '2px',\n borderRightWidth: '2px',\n cursor: 'col-resize',\n height: showColumnFilters && columnDefType === 'data' ? '4rem' : '2rem',\n mr: density === 'compact' ? '-0.5rem' : '-1rem',\n opacity: 0.8,\n position: 'absolute',\n right: '1px',\n touchAction: 'none',\n transition: column.getIsResizing() ? undefined : 'all 0.2s ease-in-out',\n userSelect: 'none',\n zIndex: 4,\n '&:active': {\n backgroundColor: theme.palette.info.main,\n opacity: 1,\n },\n })}\n onMouseDown={header.getResizeHandler()}\n onTouchStart={header.getResizeHandler()}\n style={{\n transform: column.getIsResizing()\n ? `translateX(${\n (getState().columnSizingInfo.deltaOffset ?? 0) /\n (columnResizeMode === 'onChange' ? 16 : 1)\n }px)`\n : 'none',\n }}\n />\n );\n};\n","import React, { FC } from 'react';\nimport { TableSortLabel, Tooltip } from '@mui/material';\nimport { MRT_Header, MRT_TableInstance } from '..';\n\ninterface Props {\n header: MRT_Header;\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableHeadCellSortLabel: FC<Props> = ({ header, table }) => {\n const {\n options: { localization },\n } = table;\n const { column } = header;\n const { columnDef } = column;\n\n const sortTooltip = !!column.getIsSorted()\n ? column.getIsSorted() === 'desc'\n ? localization.sortedByColumnDesc.replace('{column}', columnDef.header)\n : localization.sortedByColumnAsc.replace('{column}', columnDef.header)\n : localization.unsorted;\n\n return (\n <Tooltip arrow placement=\"top\" title={sortTooltip}>\n <TableSortLabel\n aria-label={sortTooltip}\n active={!!column.getIsSorted()}\n direction={\n column.getIsSorted()\n ? (column.getIsSorted() as 'asc' | 'desc')\n : undefined\n }\n sx={{\n width: '2ch',\n transform: 'translateX(-0.5ch)',\n }}\n />\n </Tooltip>\n );\n};\n","import React, { DragEvent, FC, ReactNode } from 'react';\nimport { Box, TableCell, Theme, alpha, lighten, useTheme } from '@mui/material';\nimport { MRT_TableHeadCellColumnActionsButton } from './MRT_TableHeadCellColumnActionsButton';\nimport { MRT_TableHeadCellFilterContainer } from './MRT_TableHeadCellFilterContainer';\nimport { MRT_TableHeadCellFilterLabel } from './MRT_TableHeadCellFilterLabel';\nimport { MRT_TableHeadCellGrabHandle } from './MRT_TableHeadCellGrabHandle';\nimport { MRT_TableHeadCellResizeHandle } from './MRT_TableHeadCellResizeHandle';\nimport { MRT_TableHeadCellSortLabel } from './MRT_TableHeadCellSortLabel';\nimport type { MRT_Header, MRT_TableInstance } from '..';\n\ninterface Props {\n header: MRT_Header;\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableHeadCell: FC<Props> = ({ header, table }) => {\n const theme = useTheme();\n const {\n getState,\n options: {\n enableColumnActions,\n enableColumnDragging,\n enableColumnOrdering,\n enableColumnResizing,\n enableGrouping,\n enableMultiSort,\n muiTableHeadCellProps,\n },\n setCurrentHoveredColumn,\n } = table;\n const { 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 ? '0.5rem'\n : density === 'comfortable'\n ? columnDefType === 'display'\n ? '0.75rem'\n : '1rem'\n : columnDefType === 'display'\n ? '1rem 1.25rem'\n : '1.5rem',\n pb: columnDefType === 'display' ? 0 : undefined,\n position:\n column.getIsPinned() && columnDefType !== 'group'\n ? 'sticky'\n : undefined,\n pt:\n columnDefType === 'group'\n ? 0\n : density === 'compact'\n ? '0.25'\n : density === 'comfortable'\n ? '.75rem'\n : '1.25rem',\n right:\n column.getIsPinned() === 'right' ? `${getTotalRight()}px` : undefined,\n transition: `all ${enableColumnResizing ? 0 : '0.2s'} ease-in-out`,\n userSelect: enableMultiSort && column.getCanSort() ? 'none' : undefined,\n verticalAlign: 'top',\n zIndex:\n column.getIsResizing() || currentDraggingColumn?.id === column.id\n ? 3\n : column.getIsPinned() && columnDefType !== 'group'\n ? 2\n : 1,\n ...(tableCellProps?.sx instanceof Function\n ? tableCellProps.sx(theme)\n : (tableCellProps?.sx as any)),\n ...draggingBorders,\n maxWidth: `min(${column.getSize()}px, fit-content)`,\n minWidth: `max(${column.getSize()}px, ${columnDef.minSize ?? 30}px)`,\n width: header.getSize(),\n })}\n >\n {header.isPlaceholder ? null : (\n <Box\n sx={{\n alignItems: 'flex-start',\n display: 'flex',\n justifyContent:\n tableCellProps?.align === 'right'\n ? 'flex-end'\n : columnDefType === 'group' ||\n tableCellProps?.align === 'center'\n ? 'center'\n : 'space-between',\n position: 'relative',\n width: '100%',\n }}\n >\n <Box\n onClick={column.getToggleSortingHandler()}\n sx={{\n alignItems: 'center',\n cursor:\n column.getCanSort() && columnDefType !== 'group'\n ? 'pointer'\n : undefined,\n display: 'flex',\n flexWrap: 'nowrap',\n m: tableCellProps?.align === 'center' ? 'auto' : undefined,\n pl:\n tableCellProps?.align === 'center' && column.getCanSort()\n ? '1rem'\n : undefined,\n whiteSpace:\n (columnDef.header?.length ?? 0) < 24 ? 'nowrap' : 'normal',\n }}\n >\n {headerElement}\n {column.getCanSort() && (\n <MRT_TableHeadCellSortLabel header={header} table={table} />\n )}\n {column.getCanFilter() && (\n <MRT_TableHeadCellFilterLabel header={header} table={table} />\n )}\n </Box>\n {columnDefType !== 'group' && (\n <Box sx={{ whiteSpace: 'nowrap' }}>\n {((enableColumnDragging &&\n columnDef.enableColumnDragging !== false) ||\n (enableColumnOrdering &&\n columnDef.enableColumnOrdering !== false) ||\n (enableGrouping && columnDef.enableGrouping !== false)) && (\n <MRT_TableHeadCellGrabHandle\n column={column}\n table={table}\n tableHeadCellRef={tableHeadCellRef}\n />\n )}\n {(enableColumnActions || columnDef.enableColumnActions) &&\n columnDef.enableColumnActions !== false && (\n <MRT_TableHeadCellColumnActionsButton\n header={header}\n table={table}\n />\n )}\n </Box>\n )}\n {column.getCanResize() && (\n <MRT_TableHeadCellResizeHandle header={header} table={table} />\n )}\n </Box>\n )}\n {column.getCanFilter() && (\n <MRT_TableHeadCellFilterContainer header={header} table={table} />\n )}\n </TableCell>\n );\n};\n","import React, { FC } from 'react';\nimport { alpha, lighten, TableRow } from '@mui/material';\nimport { MRT_TableHeadCell } from './MRT_TableHeadCell';\nimport type { MRT_Header, MRT_HeaderGroup, MRT_TableInstance } from '..';\n\ninterface Props {\n headerGroup: MRT_HeaderGroup;\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableHeadRow: FC<Props> = ({ headerGroup, table }) => {\n const {\n options: { muiTableHeadRowProps },\n } = table;\n\n const tableRowProps =\n muiTableHeadRowProps instanceof Function\n ? muiTableHeadRowProps({ headerGroup, table })\n : muiTableHeadRowProps;\n\n return (\n <TableRow\n {...tableRowProps}\n sx={(theme) => ({\n boxShadow: `4px 0 8px ${alpha(theme.palette.common.black, 0.1)}`,\n backgroundColor: lighten(theme.palette.background.default, 0.04),\n ...(tableRowProps?.sx as any),\n })}\n >\n {headerGroup.headers.map((header: MRT_Header, index) => (\n <MRT_TableHeadCell\n header={header}\n key={header.id || index}\n table={table}\n />\n ))}\n </TableRow>\n );\n};\n","import React, { FC } from 'react';\nimport { TableHead } from '@mui/material';\nimport { MRT_TableHeadRow } from './MRT_TableHeadRow';\nimport type { MRT_TableInstance } from '..';\n\ninterface Props {\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableHead: FC<Props> = ({ table }) => {\n const {\n getHeaderGroups,\n options: { muiTableHeadProps },\n } = table;\n\n const tableHeadProps =\n muiTableHeadProps instanceof Function\n ? muiTableHeadProps({ table })\n : muiTableHeadProps;\n\n return (\n <TableHead {...tableHeadProps}>\n {getHeaderGroups().map((headerGroup) => (\n <MRT_TableHeadRow\n headerGroup={headerGroup as any}\n key={headerGroup.id}\n table={table}\n />\n ))}\n </TableHead>\n );\n};\n","import React, {\n ChangeEvent,\n FC,\n FocusEvent,\n MouseEvent,\n useState,\n} from 'react';\nimport { TextField } from '@mui/material';\nimport type { MRT_Cell, MRT_Row, MRT_TableInstance } from '..';\n\ninterface Props {\n cell: MRT_Cell;\n table: MRT_TableInstance;\n}\n\nexport const MRT_EditCellTextField: FC<Props> = ({ cell, table }) => {\n const {\n getState,\n options: {\n tableId,\n enableEditing,\n muiTableBodyCellEditTextFieldProps,\n onCellEditBlur,\n onCellEditChange,\n },\n setCurrentEditingCell,\n setCurrentEditingRow,\n } = table;\n const { column, row } = cell;\n const { columnDef } = column;\n\n const [value, setValue] = useState(cell.getValue<string>());\n\n const handleChange = (event: ChangeEvent<HTMLInputElement>) => {\n setValue(event.target.value);\n columnDef.onCellEditChange?.({ event, cell, table });\n onCellEditChange?.({ event, cell, table });\n };\n\n const handleBlur = (event: FocusEvent<HTMLInputElement>) => {\n if (getState().currentEditingRow) {\n if (!row._valuesCache) row._valuesCache = {};\n (row._valuesCache as Record<string, any>)[column.id] = value;\n setCurrentEditingRow({ ...getState().currentEditingRow } as MRT_Row);\n }\n setCurrentEditingCell(null);\n columnDef.onCellEditBlur?.({ event, cell, table });\n onCellEditBlur?.({ event, cell, table });\n };\n\n const mTableBodyCellEditTextFieldProps =\n muiTableBodyCellEditTextFieldProps instanceof Function\n ? muiTableBodyCellEditTextFieldProps({ cell, table })\n : muiTableBodyCellEditTextFieldProps;\n\n const mcTableBodyCellEditTextFieldProps =\n columnDef.muiTableBodyCellEditTextFieldProps instanceof Function\n ? columnDef.muiTableBodyCellEditTextFieldProps({\n cell,\n table,\n })\n : columnDef.muiTableBodyCellEditTextFieldProps;\n\n const textFieldProps = {\n ...mTableBodyCellEditTextFieldProps,\n ...mcTableBodyCellEditTextFieldProps,\n };\n\n if (enableEditing && columnDef.enableEditing !== false && columnDef.Edit) {\n return <>{columnDef.Edit?.({ cell, table })}</>;\n }\n\n return (\n <TextField\n id={`mrt-${tableId}-edit-cell-text-field-${cell.id}`}\n margin=\"dense\"\n onBlur={handleBlur}\n onChange={handleChange}\n onClick={(e: MouseEvent<HTMLInputElement>) => e.stopPropagation()}\n placeholder={columnDef.header}\n value={value}\n variant=\"standard\"\n {...textFieldProps}\n />\n );\n};\n","import React, { FC, ReactNode, useState } from 'react';\nimport { Button, Tooltip } from '@mui/material';\nimport { MRT_Cell, MRT_TableInstance } from '..';\n\ninterface Props {\n cell: MRT_Cell;\n children: ReactNode;\n table: MRT_TableInstance;\n}\n\nexport const MRT_CopyButton: FC<Props> = ({ cell, children, table }) => {\n const {\n options: { localization, muiTableBodyCellCopyButtonProps },\n } = table;\n const { column } = cell;\n const { columnDef } = column;\n\n const [copied, setCopied] = useState(false);\n\n const handleCopy = (text: unknown) => {\n navigator.clipboard.writeText(text as string);\n setCopied(true);\n setTimeout(() => setCopied(false), 4000);\n };\n\n const mTableBodyCellCopyButtonProps =\n muiTableBodyCellCopyButtonProps instanceof Function\n ? muiTableBodyCellCopyButtonProps({ cell, table })\n : muiTableBodyCellCopyButtonProps;\n\n const mcTableBodyCellCopyButtonProps =\n columnDef.muiTableBodyCellCopyButtonProps instanceof Function\n ? columnDef.muiTableBodyCellCopyButtonProps({\n cell,\n table,\n })\n : columnDef.muiTableBodyCellCopyButtonProps;\n\n const buttonProps = {\n ...mTableBodyCellCopyButtonProps,\n ...mcTableBodyCellCopyButtonProps,\n };\n\n return (\n <Tooltip\n arrow\n enterDelay={1000}\n enterNextDelay={1000}\n placement=\"top\"\n title={copied ? localization.copiedToClipboard : localization.clickToCopy}\n >\n <Button\n onClick={() => handleCopy(cell.getValue())}\n size=\"small\"\n type=\"button\"\n variant=\"text\"\n {...buttonProps}\n sx={(theme) => ({\n backgroundColor: 'transparent',\n border: 'none',\n color: 'inherit',\n cursor: 'copy',\n fontFamily: 'inherit',\n fontSize: 'inherit',\n letterSpacing: 'inherit',\n m: '-0.25rem',\n minWidth: 'unset',\n textAlign: 'inherit',\n textTransform: 'inherit',\n ...(buttonProps?.sx instanceof Function\n ? buttonProps.sx(theme)\n : (buttonProps?.sx as any)),\n })}\n >\n {children}\n </Button>\n </Tooltip>\n );\n};\n","import React, { DragEvent, FC, RefObject } from 'react';\nimport { MRT_Cell, MRT_TableInstance } from '..';\nimport { MRT_GrabHandleButton } from '../buttons/MRT_GrabHandleButton';\n\ninterface Props {\n cell: MRT_Cell;\n rowRef: RefObject<HTMLTableRowElement>;\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableBodyRowGrabHandle: FC<Props> = ({\n cell,\n rowRef,\n table,\n}) => {\n const {\n options: { muiTableBodyRowDragHandleProps, onRowDrop },\n } = table;\n\n const iconButtonProps =\n muiTableBodyRowDragHandleProps instanceof Function\n ? muiTableBodyRowDragHandleProps({ row: cell.row, table })\n : muiTableBodyRowDragHandleProps;\n\n const handleDragStart = (e: DragEvent<HTMLButtonElement>) => {\n e.dataTransfer.setDragImage(rowRef.current as HTMLElement, 0, 0);\n table.setCurrentDraggingRow(cell.row as any);\n };\n\n const handleDragEnd = (event: DragEvent<HTMLButtonElement>) => {\n onRowDrop?.({\n event,\n draggedRow: table.getState().currentDraggingRow as any,\n targetRow: table.getState().currentHoveredRow as any,\n });\n table.setCurrentDraggingRow(null);\n table.setCurrentHoveredRow(null);\n };\n\n return (\n <MRT_GrabHandleButton\n iconButtonProps={iconButtonProps}\n onDragStart={handleDragStart}\n onDragEnd={handleDragEnd}\n table={table}\n />\n );\n};\n","import React, { DragEvent, FC, MouseEvent, RefObject, useMemo } from 'react';\nimport {\n alpha,\n darken,\n lighten,\n Skeleton,\n TableCell,\n useTheme,\n} from '@mui/material';\nimport { MRT_EditCellTextField } from '../inputs/MRT_EditCellTextField';\nimport { MRT_CopyButton } from '../buttons/MRT_CopyButton';\nimport type { MRT_Cell, MRT_TableInstance } from '..';\nimport { MRT_TableBodyRowGrabHandle } from './MRT_TableBodyRowGrabHandle';\n\ninterface Props {\n cell: MRT_Cell;\n enableHover?: boolean;\n rowIndex: number;\n rowRef: RefObject<HTMLTableRowElement>;\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableBodyCell: FC<Props> = ({\n cell,\n enableHover,\n rowIndex,\n rowRef,\n table,\n}) => {\n const theme = useTheme();\n const {\n getState,\n options: {\n editingMode,\n enableClickToCopy,\n enableColumnOrdering,\n enableEditing,\n enablePagination,\n enableRowNumbers,\n muiTableBodyCellProps,\n muiTableBodyCellSkeletonProps,\n rowNumberMode,\n tableId,\n },\n setCurrentEditingCell,\n setCurrentHoveredColumn,\n } = table;\n const {\n currentDraggingColumn,\n currentEditingCell,\n currentEditingRow,\n currentHoveredColumn,\n density,\n isLoading,\n showSkeletons,\n } = getState();\n const { column, row } = cell;\n const { columnDef } = column;\n const { columnDefType } = columnDef;\n\n const mTableCellBodyProps =\n muiTableBodyCellProps instanceof Function\n ? muiTableBodyCellProps({ cell, table })\n : muiTableBodyCellProps;\n\n const mcTableCellBodyProps =\n columnDef.muiTableBodyCellProps instanceof Function\n ? columnDef.muiTableBodyCellProps({ cell, table })\n : columnDef.muiTableBodyCellProps;\n\n const tableCellProps = {\n ...mTableCellBodyProps,\n ...mcTableCellBodyProps,\n };\n\n const skeletonWidth = useMemo(\n () =>\n columnDefType === 'display'\n ? column.getSize() / 2\n : Math.random() * (column.getSize() - column.getSize() / 3) +\n column.getSize() / 3,\n [],\n );\n\n const isEditable =\n (enableEditing || columnDef.enableEditing) &&\n columnDef.enableEditing !== false;\n\n const isEditing =\n isEditable &&\n (editingMode === 'table' ||\n currentEditingRow?.id === row.id ||\n currentEditingCell?.id === cell.id);\n\n const handleDoubleClick = (_event: MouseEvent<HTMLTableCellElement>) => {\n if (\n (enableEditing || columnDef.enableEditing) &&\n columnDef.enableEditing !== false &&\n editingMode === 'cell'\n ) {\n setCurrentEditingCell(cell);\n setTimeout(() => {\n const textField = document.getElementById(\n `mrt-${tableId}-edit-cell-text-field-${cell.id}`,\n ) as HTMLInputElement;\n if (textField) {\n textField.focus();\n textField.select();\n }\n }, 200);\n }\n };\n\n const getIsLastLeftPinnedColumn = () => {\n return (\n column.getIsPinned() === 'left' &&\n table.getLeftLeafHeaders().length - 1 === column.getPinnedIndex()\n );\n };\n\n const getIsFirstRightPinnedColumn = () => {\n return column.getIsPinned() === 'right' && column.getPinnedIndex() === 0;\n };\n\n const getTotalRight = () => {\n return (\n (table.getRightLeafHeaders().length - 1 - column.getPinnedIndex()) * 150\n );\n };\n\n const handleDragEnter = (_e: DragEvent) => {\n if (enableColumnOrdering && currentDraggingColumn) {\n setCurrentHoveredColumn(\n columnDef.enableColumnOrdering !== false ? column : null,\n );\n }\n };\n\n const draggingBorder =\n currentDraggingColumn?.id === column.id\n ? `1px dashed ${theme.palette.divider}`\n : currentHoveredColumn?.id === column.id\n ? `2px dashed ${theme.palette.primary.main}`\n : undefined;\n\n const draggingBorders = draggingBorder\n ? {\n borderLeft: draggingBorder,\n borderRight: draggingBorder,\n borderBottom:\n row.index ===\n (enablePagination\n ? table.getRowModel()\n : table.getPrePaginationRowModel()\n ).rows.length -\n 1\n ? draggingBorder\n : undefined,\n }\n : undefined;\n\n return (\n <TableCell\n onDoubleClick={handleDoubleClick}\n onDragEnter={handleDragEnter}\n {...tableCellProps}\n sx={(theme) => ({\n backgroundColor: column.getIsPinned()\n ? alpha(lighten(theme.palette.background.default, 0.04), 0.95)\n : undefined,\n boxShadow: getIsLastLeftPinnedColumn()\n ? `4px 0 4px -2px ${alpha(theme.palette.common.black, 0.1)}`\n : getIsFirstRightPinnedColumn()\n ? `-4px 0 4px -2px ${alpha(theme.palette.common.black, 0.1)}`\n : undefined,\n cursor: isEditable && editingMode === 'cell' ? 'pointer' : 'text',\n left:\n column.getIsPinned() === 'left'\n ? `${column.getStart('left')}px`\n : undefined,\n opacity:\n currentDraggingColumn?.id === column.id ||\n currentHoveredColumn?.id === column.id\n ? 0.5\n : 1,\n overflow: 'hidden',\n p:\n density === 'compact'\n ? columnDefType === 'display'\n ? '0 0.5rem'\n : '0.5rem'\n : density === 'comfortable'\n ? columnDefType === 'display'\n ? '0.5rem 0.75rem'\n : '1rem'\n : columnDefType === 'display'\n ? '1rem 1.25rem'\n : '1.5rem',\n pl:\n column.id === 'mrt-row-expand'\n ? `${\n row.depth +\n (density === 'compact'\n ? 0.5\n : density === 'comfortable'\n ? 0.75\n : 1.25)\n }rem`\n : undefined,\n position: column.getIsPinned() ? 'sticky' : 'relative',\n right:\n column.getIsPinned() === 'right' ? `${getTotalRight()}px` : undefined,\n textOverflow: columnDefType !== 'display' ? 'ellipsis' : undefined,\n transition: 'all 0.2s ease-in-out',\n whiteSpace: density === 'compact' ? 'nowrap' : 'normal',\n zIndex:\n currentDraggingColumn?.id === column.id\n ? 2\n : column.getIsPinned()\n ? 1\n : undefined,\n '&:hover': {\n backgroundColor:\n enableHover && enableEditing && editingMode !== 'row'\n ? theme.palette.mode === 'dark'\n ? `${lighten(\n theme.palette.background.default,\n 0.13,\n )} !important`\n : `${darken(theme.palette.background.default, 0.07)} !important`\n : undefined,\n },\n ...(tableCellProps?.sx instanceof Function\n ? tableCellProps.sx(theme)\n : (tableCellProps?.sx as any)),\n ...draggingBorders,\n maxWidth: `min(${column.getSize()}px, fit-content)`,\n minWidth: `max(${column.getSize()}px, ${columnDef.minSize ?? 30}px)`,\n width: column.getSize(),\n })}\n >\n <>\n {cell.getIsPlaceholder() ? null : isLoading || showSkeletons ? (\n <Skeleton\n animation=\"wave\"\n height={20}\n width={skeletonWidth}\n {...muiTableBodyCellSkeletonProps}\n />\n ) : enableRowNumbers &&\n rowNumberMode === 'static' &&\n column.id === 'mrt-row-numbers' ? (\n rowIndex + 1\n ) : column.id === 'mrt-row-drag' ? (\n <MRT_TableBodyRowGrabHandle\n cell={cell}\n rowRef={rowRef}\n table={table}\n />\n ) : columnDefType === 'display' ? (\n columnDef.Cell?.({ cell, table })\n ) : isEditing ? (\n <MRT_EditCellTextField cell={cell} table={table} />\n ) : (enableClickToCopy || columnDef.enableClickToCopy) &&\n columnDef.enableClickToCopy !== false ? (\n <>\n <MRT_CopyButton cell={cell} table={table}>\n <>{columnDef?.Cell?.({ cell, table }) ?? cell.renderValue()}</>\n </MRT_CopyButton>\n {cell.getIsGrouped() && <> ({row.subRows?.length})</>}\n </>\n ) : (\n <>\n {columnDef?.Cell?.({ cell, table }) ?? cell.renderValue()}\n {cell.getIsGrouped() && <> ({row.subRows?.length ?? ''})</>}\n </>\n )}\n </>\n </TableCell>\n );\n};\n","import React, { FC } from 'react';\nimport { Collapse, TableCell, TableRow } from '@mui/material';\nimport type { MRT_Row, MRT_TableInstance } from '..';\n\ninterface Props {\n row: MRT_Row;\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableDetailPanel: FC<Props> = ({ row, table }) => {\n const {\n getVisibleLeafColumns,\n options: {\n muiTableBodyRowProps,\n muiTableDetailPanelProps,\n renderDetailPanel,\n },\n } = table;\n\n const tableRowProps =\n muiTableBodyRowProps instanceof Function\n ? muiTableBodyRowProps({ row, table })\n : muiTableBodyRowProps;\n\n const tableCellProps =\n muiTableDetailPanelProps instanceof Function\n ? muiTableDetailPanelProps({ row, table })\n : muiTableDetailPanelProps;\n\n return (\n <TableRow {...tableRowProps}>\n <TableCell\n colSpan={getVisibleLeafColumns().length}\n {...tableCellProps}\n sx={(theme) => ({\n borderBottom: !row.getIsExpanded() ? 'none' : undefined,\n pb: row.getIsExpanded() ? '1rem' : 0,\n pt: row.getIsExpanded() ? '1rem' : 0,\n transition: 'all 0.2s ease-in-out',\n width: `${table.getTotalSize()}px`,\n ...(tableCellProps?.sx instanceof Function\n ? tableCellProps.sx(theme)\n : (tableCellProps?.sx as any)),\n })}\n >\n {renderDetailPanel && (\n <Collapse in={row.getIsExpanded()}>\n {renderDetailPanel({ row, table })}\n </Collapse>\n )}\n </TableCell>\n </TableRow>\n );\n};\n","import React, { DragEvent, FC, useRef } from 'react';\nimport { darken, lighten, TableRow, useTheme } from '@mui/material';\nimport { MRT_TableBodyCell } from './MRT_TableBodyCell';\nimport { MRT_TableDetailPanel } from './MRT_TableDetailPanel';\nimport type { MRT_Row, MRT_TableInstance } from '..';\n\ninterface Props {\n row: MRT_Row;\n rowIndex: number;\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableBodyRow: FC<Props> = ({ row, rowIndex, table }) => {\n const theme = useTheme();\n const {\n getIsSomeColumnsPinned,\n getState,\n options: { enableRowOrdering, muiTableBodyRowProps, renderDetailPanel },\n setCurrentHoveredRow,\n } = table;\n const { currentDraggingRow, currentHoveredRow } = getState();\n\n const tableRowProps =\n muiTableBodyRowProps instanceof Function\n ? muiTableBodyRowProps({ row, table })\n : muiTableBodyRowProps;\n\n const handleDragEnter = (_e: DragEvent) => {\n if (enableRowOrdering && currentDraggingRow) {\n setCurrentHoveredRow(row);\n }\n };\n\n const rowRef = useRef<HTMLTableRowElement>(null);\n\n const draggingBorder =\n currentDraggingRow?.id === row.id\n ? `1px dashed ${theme.palette.divider}`\n : currentHoveredRow?.id === row.id\n ? `2px dashed ${theme.palette.primary.main}`\n : undefined;\n\n const draggingBorders = draggingBorder\n ? {\n border: draggingBorder,\n }\n : undefined;\n\n return (\n <>\n <TableRow\n onDragEnter={handleDragEnter}\n hover\n selected={row.getIsSelected()}\n ref={rowRef}\n {...tableRowProps}\n sx={(theme) => ({\n backgroundColor: lighten(theme.palette.background.default, 0.06),\n opacity:\n currentDraggingRow?.id === row.id ||\n currentHoveredRow?.id === row.id\n ? 0.5\n : 1,\n transition: 'all 0.2s ease-in-out',\n '&:hover td': {\n backgroundColor:\n tableRowProps?.hover !== false && getIsSomeColumnsPinned()\n ? theme.palette.mode === 'dark'\n ? `${lighten(theme.palette.background.default, 0.12)}`\n : `${darken(theme.palette.background.default, 0.05)}`\n : undefined,\n },\n ...(tableRowProps?.sx instanceof Function\n ? tableRowProps.sx(theme)\n : (tableRowProps?.sx as any)),\n ...draggingBorders,\n })}\n >\n {row?.getVisibleCells()?.map?.((cell) => (\n <MRT_TableBodyCell\n cell={cell}\n key={cell.id}\n enableHover={tableRowProps?.hover !== false}\n rowIndex={rowIndex}\n rowRef={rowRef}\n table={table}\n />\n ))}\n </TableRow>\n {renderDetailPanel && !row.getIsGrouped() && (\n <MRT_TableDetailPanel row={row} table={table} />\n )}\n </>\n );\n};\n","import React, { FC, RefObject, useMemo } from 'react';\nimport { useVirtualizer, Virtualizer } from '@tanstack/react-virtual';\nimport { TableBody } from '@mui/material';\nimport { MRT_TableBodyRow } from './MRT_TableBodyRow';\nimport { rankGlobalFuzzy } from '../sortingFns';\nimport type { MRT_Row, MRT_TableInstance } from '..';\n\ninterface Props {\n table: MRT_TableInstance;\n tableContainerRef: RefObject<HTMLDivElement>;\n}\n\nexport const MRT_TableBody: FC<Props> = ({ table, tableContainerRef }) => {\n const {\n getRowModel,\n getPrePaginationRowModel,\n getState,\n options: {\n enableGlobalFilterRankedResults,\n enablePagination,\n enableRowVirtualization,\n muiTableBodyProps,\n virtualizerProps,\n },\n } = table;\n const { density, globalFilter, pagination, sorting } = getState();\n\n const tableBodyProps =\n muiTableBodyProps instanceof Function\n ? muiTableBodyProps({ table })\n : muiTableBodyProps;\n\n const getIsSomeColumnsSorted = () => {\n return Object.values(sorting).some(Boolean);\n };\n\n const rows = useMemo(() => {\n if (\n enableGlobalFilterRankedResults &&\n globalFilter &&\n !getIsSomeColumnsSorted()\n ) {\n const rankedRows = getPrePaginationRowModel().rows.sort((a, b) =>\n rankGlobalFuzzy(a, b),\n );\n if (enablePagination) {\n return rankedRows.slice(0, pagination.pageSize);\n }\n return rankedRows;\n }\n\n return enablePagination\n ? getRowModel().rows\n : getPrePaginationRowModel().rows;\n }, [\n enableGlobalFilterRankedResults,\n (enableGlobalFilterRankedResults && globalFilter) || !enablePagination\n ? getPrePaginationRowModel().rows\n : getRowModel().rows,\n globalFilter,\n ]);\n\n const rowVirtualizer: Virtualizer = enableRowVirtualization\n ? useVirtualizer({\n estimateSize: () => (density === 'compact' ? 25 : 50),\n overscan: density === 'compact' ? 30 : 10,\n getScrollElement: () => tableContainerRef.current as HTMLDivElement,\n count: rows.length,\n ...virtualizerProps,\n })\n : ({} as any);\n\n const virtualRows = enableRowVirtualization\n ? rowVirtualizer.getVirtualItems()\n : [];\n\n let paddingTop = 0;\n let paddingBottom = 0;\n if (enableRowVirtualization) {\n paddingTop = !!virtualRows.length ? virtualRows[0].start : 0;\n paddingBottom = !!virtualRows.length\n ? rowVirtualizer.getTotalSize() - virtualRows[virtualRows.length - 1].end\n : 0;\n }\n\n return (\n <TableBody {...tableBodyProps}>\n {enableRowVirtualization && paddingTop > 0 && (\n <tr>\n <td style={{ height: `${paddingTop}px` }} />\n </tr>\n )}\n {/* @ts-ignore */}\n {(enableRowVirtualization ? virtualRows : rows).map(\n (rowOrVirtualRow: any, rowIndex: number) => {\n const row = enableRowVirtualization\n ? (rows[rowOrVirtualRow.index] as MRT_Row)\n : (rowOrVirtualRow as MRT_Row);\n return (\n <MRT_TableBodyRow\n key={row.id}\n row={row}\n rowIndex={\n enableRowVirtualization ? rowOrVirtualRow.index : rowIndex\n }\n table={table}\n />\n );\n },\n )}\n {enableRowVirtualization && paddingBottom > 0 && (\n <tr>\n <td style={{ height: `${paddingBottom}px` }} />\n </tr>\n )}\n </TableBody>\n );\n};\n","import React, { FC } from 'react';\nimport { alpha, TableCell } from '@mui/material';\nimport type { MRT_Header, MRT_TableInstance } from '..';\n\ninterface Props {\n footer: MRT_Header;\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableFooterCell: FC<Props> = ({ footer, table }) => {\n const {\n getState,\n options: { muiTableFooterCellProps, enableColumnResizing },\n } = table;\n const { density } = getState();\n const { column } = footer;\n const { columnDef } = column;\n const { columnDefType } = columnDef;\n\n const mTableFooterCellProps =\n muiTableFooterCellProps instanceof Function\n ? muiTableFooterCellProps({ column, table })\n : muiTableFooterCellProps;\n\n const mcTableFooterCellProps =\n columnDef.muiTableFooterCellProps instanceof Function\n ? columnDef.muiTableFooterCellProps({ column, table })\n : columnDef.muiTableFooterCellProps;\n\n const tableCellProps = {\n ...mTableFooterCellProps,\n ...mcTableFooterCellProps,\n };\n\n return (\n <TableCell\n align={columnDefType === 'group' ? 'center' : 'left'}\n colSpan={footer.colSpan}\n variant=\"head\"\n {...tableCellProps}\n sx={(theme) => ({\n backgroundColor: theme.palette.background.default,\n backgroundImage: `linear-gradient(${alpha(\n theme.palette.common.white,\n 0.05,\n )},${alpha(theme.palette.common.white, 0.05)})`,\n fontWeight: 'bold',\n maxWidth: `${column.getSize()}px`,\n minWidth: `${column.getSize()}px`,\n p:\n density === 'compact'\n ? '0.5rem'\n : density === 'comfortable'\n ? '1rem'\n : '1.5rem',\n transition: `all ${enableColumnResizing ? '10ms' : '0.2s'} ease-in-out`,\n width: column.getSize(),\n verticalAlign: 'text-top',\n ...(tableCellProps?.sx instanceof Function\n ? tableCellProps.sx(theme)\n : (tableCellProps?.sx as any)),\n })}\n >\n <>\n {footer.isPlaceholder\n ? null\n : (columnDef.Footer instanceof Function\n ? columnDef.Footer?.({\n footer,\n table,\n })\n : columnDef.Footer) ??\n columnDef.footer ??\n null}\n </>\n </TableCell>\n );\n};\n","import React, { FC } from 'react';\nimport { TableRow } from '@mui/material';\nimport { MRT_TableFooterCell } from './MRT_TableFooterCell';\nimport type { MRT_Header, MRT_HeaderGroup, MRT_TableInstance } from '..';\n\ninterface Props {\n footerGroup: MRT_HeaderGroup;\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableFooterRow: FC<Props> = ({ footerGroup, table }) => {\n const {\n options: { muiTableFooterRowProps },\n } = table;\n\n // if no content in row, skip row\n if (\n !footerGroup.headers?.some(\n (header) =>\n (typeof header.column.columnDef.footer === 'string' &&\n !!header.column.columnDef.footer) ||\n header.column.columnDef.Footer,\n )\n )\n return null;\n\n const tableRowProps =\n muiTableFooterRowProps instanceof Function\n ? muiTableFooterRowProps({ footerGroup, table })\n : muiTableFooterRowProps;\n\n return (\n <TableRow {...tableRowProps}>\n {footerGroup.headers.map((footer: MRT_Header) => (\n <MRT_TableFooterCell footer={footer} key={footer.id} table={table} />\n ))}\n </TableRow>\n );\n};\n","import React, { FC } from 'react';\nimport { TableFooter } from '@mui/material';\nimport { MRT_TableFooterRow } from './MRT_TableFooterRow';\nimport type { MRT_TableInstance } from '..';\n\ninterface Props {\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableFooter: FC<Props> = ({ table }) => {\n const {\n getFooterGroups,\n options: { muiTableFooterProps },\n } = table;\n\n const tableFooterProps =\n muiTableFooterProps instanceof Function\n ? muiTableFooterProps({ table })\n : muiTableFooterProps;\n\n return (\n <TableFooter {...tableFooterProps}>\n {getFooterGroups().map((footerGroup) => (\n <MRT_TableFooterRow\n footerGroup={footerGroup as any}\n key={footerGroup.id}\n table={table}\n />\n ))}\n </TableFooter>\n );\n};\n","import React, { FC, RefObject } from 'react';\nimport { Table } from '@mui/material';\nimport { MRT_TableHead } from '../head/MRT_TableHead';\nimport { MRT_TableBody } from '../body/MRT_TableBody';\nimport { MRT_TableFooter } from '../footer/MRT_TableFooter';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n tableContainerRef: RefObject<HTMLDivElement>;\n table: MRT_TableInstance;\n}\n\nexport const MRT_Table: FC<Props> = ({ tableContainerRef, table }) => {\n const {\n getState,\n options: {\n enableColumnResizing,\n enableRowVirtualization,\n enableStickyHeader,\n enableTableFooter,\n enableTableHead,\n muiTableProps,\n },\n } = table;\n const { isFullScreen } = getState();\n\n const tableProps =\n muiTableProps instanceof Function\n ? muiTableProps({ table })\n : muiTableProps;\n\n return (\n <Table\n stickyHeader={\n enableStickyHeader || enableRowVirtualization || isFullScreen\n }\n {...tableProps}\n sx={(theme) => ({\n tableLayout:\n enableColumnResizing || enableRowVirtualization ? 'fixed' : 'auto',\n ...(tableProps?.sx instanceof Function\n ? tableProps.sx(theme)\n : (tableProps?.sx as any)),\n })}\n >\n {enableTableHead && <MRT_TableHead table={table} />}\n <MRT_TableBody tableContainerRef={tableContainerRef} table={table} />\n {enableTableFooter && <MRT_TableFooter table={table} />}\n </Table>\n );\n};\n","import React, { FC, useEffect, useLayoutEffect, useState } from 'react';\nimport { TableContainer } from '@mui/material';\nimport { MRT_Table } from './MRT_Table';\nimport type { MRT_TableInstance } from '..';\n\nconst useIsomorphicLayoutEffect =\n typeof window !== 'undefined' ? useLayoutEffect : useEffect;\n\ninterface Props {\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableContainer: FC<Props> = ({ table }) => {\n const {\n getState,\n options: {\n enableStickyHeader,\n enableRowVirtualization,\n muiTableContainerProps,\n tableId,\n },\n } = table;\n const { isFullScreen } = getState();\n\n const [totalToolbarHeight, setTotalToolbarHeight] = useState(0);\n\n const tableContainerProps =\n muiTableContainerProps instanceof Function\n ? muiTableContainerProps({ table })\n : muiTableContainerProps;\n\n useIsomorphicLayoutEffect(() => {\n const topToolbarHeight =\n typeof document !== 'undefined'\n ? document?.getElementById(`mrt-${tableId}-toolbar-top`)\n ?.offsetHeight ?? 0\n : 0;\n\n const bottomToolbarHeight =\n typeof document !== 'undefined'\n ? document?.getElementById(`mrt-${tableId}-toolbar-bottom`)\n ?.offsetHeight ?? 0\n : 0;\n\n setTotalToolbarHeight(topToolbarHeight + bottomToolbarHeight);\n });\n\n const tableContainerRef = React.useRef<HTMLDivElement>(null);\n\n return (\n <TableContainer\n ref={tableContainerRef}\n {...tableContainerProps}\n sx={(theme) => ({\n maxWidth: '100%',\n maxHeight:\n enableStickyHeader || enableRowVirtualization\n ? `clamp(350px, calc(100vh - ${totalToolbarHeight}px), 9999px)`\n : undefined,\n overflow: 'auto',\n ...(tableContainerProps?.sx instanceof Function\n ? tableContainerProps.sx(theme)\n : (tableContainerProps?.sx as any)),\n })}\n style={{\n maxHeight: isFullScreen\n ? `calc(100vh - ${totalToolbarHeight}px)`\n : undefined,\n ...tableContainerProps?.style,\n }}\n >\n <MRT_Table tableContainerRef={tableContainerRef} table={table} />\n </TableContainer>\n );\n};\n","import React, { FC, useEffect } from 'react';\nimport { Paper } from '@mui/material';\nimport { MRT_ToolbarTop } from '../toolbar/MRT_ToolbarTop';\nimport { MRT_ToolbarBottom } from '../toolbar/MRT_ToolbarBottom';\nimport { MRT_TableContainer } from './MRT_TableContainer';\nimport type { MRT_TableInstance } from '..';\n\ninterface Props {\n table: MRT_TableInstance;\n}\n\nexport const MRT_TablePaper: FC<Props> = ({ table }) => {\n const {\n getState,\n options: { enableToolbarBottom, enableToolbarTop, muiTablePaperProps },\n } = table;\n const { isFullScreen } = getState();\n\n useEffect(() => {\n if (typeof window !== 'undefined') {\n if (isFullScreen) {\n document.body.style.height = '100vh';\n } else {\n document.body.style.height = 'auto';\n }\n }\n }, [isFullScreen]);\n\n const tablePaperProps =\n muiTablePaperProps instanceof Function\n ? muiTablePaperProps({ table })\n : muiTablePaperProps;\n\n return (\n <Paper\n elevation={2}\n {...tablePaperProps}\n sx={{\n transition: 'all 0.2s ease-in-out',\n ...tablePaperProps?.sx,\n }}\n style={{\n ...tablePaperProps?.style,\n height: isFullScreen ? '100vh' : undefined,\n margin: isFullScreen ? '0' : undefined,\n maxHeight: isFullScreen ? '100vh' : undefined,\n maxWidth: isFullScreen ? '100vw' : undefined,\n padding: isFullScreen ? '0' : undefined,\n width: isFullScreen ? '100vw' : undefined,\n }}\n >\n {enableToolbarTop && <MRT_ToolbarTop table={table} />}\n <MRT_TableContainer table={table} />\n {enableToolbarBottom && <MRT_ToolbarBottom table={table} />}\n </Paper>\n );\n};\n","import React, { useEffect, useMemo, useState } from 'react';\nimport {\n TableState,\n getCoreRowModel,\n getExpandedRowModel,\n getFacetedRowModel,\n getFilteredRowModel,\n getGroupedRowModel,\n getPaginationRowModel,\n getSortedRowModel,\n useReactTable,\n} from '@tanstack/react-table';\nimport { Box, Dialog, Grow } from '@mui/material';\nimport { MRT_ExpandAllButton } from '../buttons/MRT_ExpandAllButton';\nimport { MRT_ExpandButton } from '../buttons/MRT_ExpandButton';\nimport { MRT_ToggleRowActionMenuButton } from '../buttons/MRT_ToggleRowActionMenuButton';\nimport { MRT_SelectCheckbox } from '../inputs/MRT_SelectCheckbox';\nimport { MRT_TablePaper } from './MRT_TablePaper';\nimport {\n prepareColumns,\n getAllLeafColumnDefs,\n getDefaultColumnOrderIds,\n getDefaultColumnFilterFn,\n} from '../column.utils';\nimport { MRT_FilterFns } from '../filtersFns';\nimport type {\n MRT_Cell,\n MRT_Column,\n MRT_ColumnDef,\n MRT_FilterOption,\n MRT_Row,\n MRT_TableInstance,\n MRT_TableState,\n MaterialReactTableProps,\n} from '..';\n\nconst defaultDisplayColumnDefOptions = {\n columnDefType: 'display',\n enableClickToCopy: false,\n enableColumnActions: false,\n enableColumnDragging: false,\n enableColumnFilter: false,\n enableColumnOrdering: false,\n enableEditing: false,\n enableGlobalFilter: false,\n enableGrouping: false,\n enableHiding: false,\n enablePinning: false,\n enableResizing: false,\n enableSorting: false,\n} as Partial<MRT_ColumnDef>;\n\nexport const MRT_TableRoot = <TData extends Record<string, any> = {}>(\n props: MaterialReactTableProps<TData>,\n) => {\n const [tableId, setIdPrefix] = useState(props.tableId);\n useEffect(\n () =>\n setIdPrefix(props.tableId ?? Math.random().toString(36).substring(2, 9)),\n [props.tableId],\n );\n\n const initialState: Partial<MRT_TableState<TData>> = useMemo(() => {\n const initState = props.initialState ?? {};\n initState.columnOrder =\n initState.columnOrder ?? getDefaultColumnOrderIds(props);\n return initState;\n }, []);\n\n const [columnOrder, setColumnOrder] = useState(\n initialState.columnOrder ?? [],\n );\n const [currentDraggingColumn, setCurrentDraggingColumn] =\n useState<MRT_Column<TData> | null>(\n initialState.currentDraggingColumn ?? null,\n );\n const [currentDraggingRow, setCurrentDraggingRow] =\n useState<MRT_Row<TData> | null>(initialState.currentDraggingRow ?? null);\n const [currentEditingCell, setCurrentEditingCell] =\n useState<MRT_Cell<TData> | null>(initialState.currentEditingCell ?? null);\n const [currentEditingRow, setCurrentEditingRow] =\n useState<MRT_Row<TData> | null>(initialState.currentEditingRow ?? null);\n const [currentHoveredColumn, setCurrentHoveredColumn] =\n useState<MRT_Column<TData> | null>(\n initialState.currentHoveredColumn ?? null,\n );\n const [currentHoveredRow, setCurrentHoveredRow] =\n useState<MRT_Row<TData> | null>(initialState.currentHoveredRow ?? null);\n const [density, setDensity] = useState(\n initialState?.density ?? 'comfortable',\n );\n const [isFullScreen, setIsFullScreen] = useState(\n initialState?.isFullScreen ?? false,\n );\n const [showAlertBanner, setShowAlertBanner] = useState(\n props.initialState?.showAlertBanner ?? false,\n );\n const [showColumnFilters, setShowFilters] = useState(\n initialState?.showColumnFilters ?? false,\n );\n const [showGlobalFilter, setShowGlobalFilter] = useState(\n initialState?.showGlobalFilter ?? false,\n );\n const [currentFilterFns, setCurrentFilterFns] = useState<{\n [key: string]: MRT_FilterOption;\n }>(() =>\n Object.assign(\n {},\n ...getAllLeafColumnDefs(props.columns as MRT_ColumnDef<TData>[]).map(\n (col) => ({\n [col.id?.toString() ?? col.accessorKey?.toString() ?? '']:\n col.filterFn instanceof Function\n ? col.filterFn.name ?? 'custom'\n : col.filterFn ??\n initialState?.currentFilterFns?.[\n col.id?.toString() ?? col.accessorKey?.toString() ?? ''\n ] ??\n getDefaultColumnFilterFn(col),\n }),\n ),\n ),\n );\n const [currentGlobalFilterFn, setCurrentGlobalFilterFn] =\n useState<MRT_FilterOption>(\n props.globalFilterFn instanceof String\n ? (props.globalFilterFn as MRT_FilterOption)\n : 'fuzzy',\n );\n\n const displayColumns = useMemo(\n () =>\n (\n [\n columnOrder.includes('mrt-row-drag') && {\n header: props.localization?.move,\n size: 60,\n ...defaultDisplayColumnDefOptions,\n ...props.displayColumnDefOptions?.['mrt-row-drag'],\n id: 'mrt-row-drag',\n },\n columnOrder.includes('mrt-row-actions') && {\n Cell: ({ cell }) => (\n <MRT_ToggleRowActionMenuButton\n row={cell.row as any}\n table={table}\n />\n ),\n header: props.localization?.actions,\n size: 70,\n ...defaultDisplayColumnDefOptions,\n ...props.displayColumnDefOptions?.['mrt-row-actions'],\n id: 'mrt-row-actions',\n },\n columnOrder.includes('mrt-row-expand') && {\n Cell: ({ cell }) => (\n <MRT_ExpandButton row={cell.row as any} table={table} />\n ),\n Header: () =>\n props.enableExpandAll ? (\n <MRT_ExpandAllButton table={table} />\n ) : null,\n header: props.localization?.expand,\n size: 60,\n ...defaultDisplayColumnDefOptions,\n ...props.displayColumnDefOptions?.['mrt-row-expand'],\n id: 'mrt-row-expand',\n },\n columnOrder.includes('mrt-row-select') && {\n Cell: ({ cell }) => (\n <MRT_SelectCheckbox row={cell.row as any} table={table} />\n ),\n Header: () =>\n props.enableSelectAll ? (\n <MRT_SelectCheckbox selectAll table={table} />\n ) : null,\n header: props.localization?.select,\n size: 60,\n ...defaultDisplayColumnDefOptions,\n ...props.displayColumnDefOptions?.['mrt-row-select'],\n id: 'mrt-row-select',\n },\n columnOrder.includes('mrt-row-numbers') && {\n Cell: ({ cell }) => cell.row.index + 1,\n Header: () => props.localization?.rowNumber,\n header: props.localization?.rowNumbers,\n size: 60,\n ...defaultDisplayColumnDefOptions,\n ...props.displayColumnDefOptions?.['mrt-row-numbers'],\n id: 'mrt-row-numbers',\n },\n ] as MRT_ColumnDef<TData>[]\n ).filter(Boolean),\n [\n columnOrder,\n props.displayColumnDefOptions,\n props.editingMode,\n props.enableColumnDragging,\n props.enableColumnOrdering,\n props.enableEditing,\n props.enableExpandAll,\n props.enableExpanding,\n props.enableGrouping,\n props.enableRowActions,\n props.enableRowDragging,\n props.enableRowNumbers,\n props.enableRowOrdering,\n props.enableRowSelection,\n props.enableSelectAll,\n props.localization,\n props.muiTableBodyCellProps,\n props.muiTableHeadCellProps,\n props.positionActionsColumn,\n ],\n );\n\n const columnDefs = useMemo(\n () =>\n prepareColumns([...displayColumns, ...props.columns], currentFilterFns),\n [currentFilterFns, displayColumns, props.columns],\n );\n\n const data: TData[] = useMemo(\n () =>\n (props.state?.isLoading || props.state?.showSkeletons) &&\n !props.data.length\n ? [...Array(10).fill(null)].map(() =>\n Object.assign(\n {},\n ...getAllLeafColumnDefs(props.columns as MRT_ColumnDef[]).map(\n (col) => ({\n [col.id ?? col.accessorKey ?? '']: null,\n }),\n ),\n ),\n )\n : props.data,\n [props.data, props.state?.isLoading, props.state?.showSkeletons],\n );\n\n //@ts-ignore\n const table = {\n ...useReactTable({\n getCoreRowModel: getCoreRowModel(),\n getExpandedRowModel: getExpandedRowModel(),\n getFacetedRowModel: getFacetedRowModel(),\n getFilteredRowModel: getFilteredRowModel(),\n getGroupedRowModel: getGroupedRowModel(),\n getPaginationRowModel: getPaginationRowModel(),\n getSortedRowModel: getSortedRowModel(),\n onColumnOrderChange: setColumnOrder,\n ...props,\n //@ts-ignore\n columns: columnDefs,\n data,\n getSubRows: (row) => row?.subRows,\n globalFilterFn:\n MRT_FilterFns[currentGlobalFilterFn] ?? MRT_FilterFns.fuzzy,\n initialState,\n state: {\n columnOrder,\n currentDraggingColumn,\n currentDraggingRow,\n currentEditingCell,\n currentEditingRow,\n currentFilterFns,\n currentGlobalFilterFn,\n currentHoveredColumn,\n currentHoveredRow,\n density,\n isFullScreen,\n showAlertBanner,\n showColumnFilters,\n showGlobalFilter,\n ...props.state,\n } as TableState,\n tableId,\n }),\n setCurrentDraggingColumn:\n props.onCurrentDraggingColumnChange ?? setCurrentDraggingColumn,\n setCurrentDraggingRow:\n props.onCurrentDraggingRowChange ?? setCurrentDraggingRow,\n setCurrentEditingCell:\n props.onCurrentEditingCellChange ?? setCurrentEditingCell,\n setCurrentEditingRow:\n props.onCurrentEditingRowChange ?? setCurrentEditingRow,\n setCurrentFilterFns: props.onCurrentFilterFnsChange ?? setCurrentFilterFns,\n setCurrentGlobalFilterFn:\n props.onCurrentGlobalFilterFnChange ?? setCurrentGlobalFilterFn,\n setCurrentHoveredColumn:\n props.onCurrentHoveredColumnChange ?? setCurrentHoveredColumn,\n setCurrentHoveredRow:\n props.onCurrentHoveredRowChange ?? setCurrentHoveredRow,\n setDensity: props.onDensityChange ?? setDensity,\n setIsFullScreen: props.onIsFullScreenChange ?? setIsFullScreen,\n setShowAlertBanner: props.onShowAlertBannerChange ?? setShowAlertBanner,\n setShowFilters: props.onShowFiltersChange ?? setShowFilters,\n setShowGlobalFilter: props.onShowGlobalFilterChange ?? setShowGlobalFilter,\n } as MRT_TableInstance;\n\n useEffect(() => props?.onTableInstanceChange?.(table as any), [table]);\n\n return (\n <>\n <Dialog\n PaperComponent={Box}\n TransitionComponent={Grow}\n disablePortal\n fullScreen\n keepMounted={false}\n onClose={() => setIsFullScreen(false)}\n open={isFullScreen}\n transitionDuration={400}\n >\n <MRT_TablePaper table={table} />\n </Dialog>\n {!isFullScreen && <MRT_TablePaper table={table} />}\n </>\n );\n};\n","import React, {\n ChangeEvent,\n Dispatch,\n DragEvent,\n FC,\n FocusEvent,\n ReactNode,\n SetStateAction,\n} from 'react';\nimport type {\n AlertProps,\n ButtonProps,\n CheckboxProps,\n IconButtonProps,\n LinearProgressProps,\n PaperProps,\n SkeletonProps,\n TableBodyProps,\n TableCellProps,\n TableContainerProps,\n TableFooterProps,\n TableHeadProps,\n TablePaginationProps,\n TableProps,\n TableRowProps,\n TextFieldProps,\n ToolbarProps,\n} from '@mui/material';\nimport type {\n Cell,\n Column,\n ColumnDef,\n FilterFn,\n Header,\n HeaderGroup,\n OnChangeFn,\n Row,\n SortingFn,\n Table,\n TableOptions,\n TableState,\n} from '@tanstack/react-table';\nimport type { VirtualizerOptions } from '@tanstack/react-virtual';\nimport { MRT_Localization, MRT_DefaultLocalization_EN } from './localization';\nimport { MRT_Default_Icons, MRT_Icons } from './icons';\nimport { MRT_TableRoot } from './table/MRT_TableRoot';\nimport { MRT_FilterFns } from './filtersFns';\nimport { MRT_SortingFns } from './sortingFns';\n\ntype LiteralUnion<T extends U, U = string> = T | (U & Record<never, never>);\n\nexport interface MRT_RowModel<TData extends Record<string, any> = {}> {\n flatRows: MRT_Row<TData>[];\n rows: MRT_Row<TData>[];\n rowsById: { [key: string]: MRT_Row<TData> };\n}\n\nexport type MRT_TableInstance<TData extends Record<string, any> = {}> = Omit<\n Table<TData>,\n | 'getAllColumns'\n | 'getAllFlatColumns'\n | 'getAllLeafColumns'\n | 'getCenterLeafColumns'\n | 'getColumn'\n | 'getExpandedRowModel'\n | 'getFlatHeaders'\n | 'getLeftLeafColumns'\n | 'getPaginationRowModel'\n | 'getPreFilteredRowModel'\n | 'getPrePaginationRowModel'\n | 'getRightLeafColumns'\n | 'getRowModel'\n | 'getSelectedRowModel'\n | 'getState'\n | 'options'\n> & {\n getAllColumns: () => MRT_Column<TData>[];\n getAllFlatColumns: () => MRT_Column<TData>[];\n getAllLeafColumns: () => MRT_Column<TData>[];\n getCenterLeafColumns: () => MRT_Column<TData>[];\n getColumn: (columnId: string) => MRT_Column<TData>;\n getExpandedRowModel: () => MRT_RowModel<TData>;\n getFlatHeaders: () => MRT_Header<TData>[];\n getLeftLeafColumns: () => MRT_Column<TData>[];\n getPaginationRowModel: () => MRT_RowModel<TData>;\n getPreFilteredRowModel: () => MRT_RowModel<TData>;\n getPrePaginationRowModel: () => MRT_RowModel<TData>;\n getRightLeafColumns: () => MRT_Column<TData>[];\n getRowModel: () => MRT_RowModel<TData>;\n getSelectedRowModel: () => MRT_RowModel<TData>;\n getState: () => MRT_TableState<TData>;\n options: MaterialReactTableProps<TData> & {\n icons: MRT_Icons;\n tableId: string;\n localization: MRT_Localization;\n };\n setCurrentDraggingColumn: Dispatch<SetStateAction<MRT_Column<TData> | null>>;\n setCurrentDraggingRow: Dispatch<SetStateAction<MRT_Row<TData> | null>>;\n setCurrentEditingCell: Dispatch<SetStateAction<MRT_Cell | null>>;\n setCurrentEditingRow: Dispatch<SetStateAction<MRT_Row | null>>;\n setCurrentFilterFns: Dispatch<\n SetStateAction<{\n [key: string]: MRT_FilterOption;\n }>\n >;\n setCurrentGlobalFilterFn: Dispatch<SetStateAction<MRT_FilterOption>>;\n setCurrentHoveredColumn: Dispatch<SetStateAction<MRT_Column<TData> | null>>;\n setCurrentHoveredRow: Dispatch<SetStateAction<MRT_Row | null>>;\n setDensity: Dispatch<SetStateAction<'comfortable' | 'compact' | 'spacious'>>;\n setIsFullScreen: Dispatch<SetStateAction<boolean>>;\n setShowAlertBanner: Dispatch<SetStateAction<boolean>>;\n setShowFilters: Dispatch<SetStateAction<boolean>>;\n setShowGlobalFilter: Dispatch<SetStateAction<boolean>>;\n};\n\nexport type MRT_TableState<TData extends Record<string, any> = {}> =\n TableState & {\n currentDraggingColumn: MRT_Column<TData> | null;\n currentDraggingRow: MRT_Row<TData> | null;\n currentEditingCell: MRT_Cell<TData> | null;\n currentEditingRow: MRT_Row<TData> | null;\n currentFilterFns: Record<string, MRT_FilterOption>;\n currentGlobalFilterFn: Record<string, MRT_FilterOption>;\n currentHoveredColumn: MRT_Column<TData> | null;\n currentHoveredRow: MRT_Row<TData> | null;\n density: 'comfortable' | 'compact' | 'spacious';\n isFullScreen: boolean;\n isLoading: boolean;\n showAlertBanner: boolean;\n showColumnFilters: boolean;\n showGlobalFilter: boolean;\n showProgressBars: boolean;\n showSkeletons: boolean;\n };\n\nexport type MRT_ColumnDef<TData extends Record<string, any> = {}> = Omit<\n ColumnDef<TData, unknown>,\n | 'accessorFn'\n | 'accessorKey'\n | 'aggregatedCell'\n | 'cell'\n | 'columns'\n | 'filterFn'\n | 'footer'\n | 'header'\n | 'id'\n | 'sortingFn'\n> & {\n AggregatedCell?: ({\n cell,\n table,\n }: {\n cell: MRT_Cell<TData>;\n table: MRT_TableInstance<TData>;\n }) => ReactNode;\n Cell?: ({\n cell,\n table,\n }: {\n cell: MRT_Cell<TData>;\n table: MRT_TableInstance<TData>;\n }) => ReactNode;\n Edit?: ({\n cell,\n table,\n }: {\n cell: MRT_Cell<TData>;\n table: MRT_TableInstance<TData>;\n }) => ReactNode;\n Filter?: ({\n header,\n table,\n }: {\n header: MRT_Header<TData>;\n table: MRT_TableInstance<TData>;\n }) => ReactNode;\n Footer?:\n | ReactNode\n | (({\n footer,\n table,\n }: {\n footer: MRT_Header<TData>;\n table: MRT_TableInstance<TData>;\n }) => ReactNode);\n Header?:\n | ReactNode\n | (({\n header,\n table,\n }: {\n header: MRT_Header<TData>;\n table: MRT_TableInstance<TData>;\n }) => ReactNode);\n /**\n * Either an `accessorKey` or a combination of an `accessorFn` and `id` are required for a data column definition.\n * Specify a function here to point to the correct property in the data object.\n *\n * @example accessorFn: (row) => row.username\n */\n accessorFn?: (row: TData) => any;\n /**\n * Either an `accessorKey` or a combination of an `accessorFn` and `id` are required for a data column definition.\n * Specify which key in the row this column should use to access the correct data.\n *\n * @example accessorKey: 'username'\n */\n accessorKey?: string & keyof TData;\n /**\n * Specify what type of column this is. Either `data`, `display`, or `group`. Defaults to `data`.\n * Leave this blank if you are just creating a normal data column.\n *\n * @default 'data'\n *\n * @example columnDefType: 'display'\n */\n columnDefType?: 'data' | 'display' | 'group';\n columnFilterModeOptions?: MRT_FilterOption[] | null;\n columns?: MRT_ColumnDef<TData>[];\n enableClickToCopy?: boolean;\n enableColumnActions?: boolean;\n enableColumnDragging?: boolean;\n enableColumnFilterChangeMode?: boolean;\n enableColumnOrdering?: boolean;\n enableEditing?: boolean;\n filterFn?: MRT_FilterFn<TData>;\n filterSelectOptions?: (string | { text: string; value: string })[];\n filterVariant?: 'text' | 'select' | 'multiSelect' | 'range';\n /**\n * footer must be a string. If you want custom JSX to render the footer, you can also specify a `Footer` option. (Capital F)\n */\n footer?: string;\n /**\n * header must be a string. If you want custom JSX to render the header, you can also specify a `Header` option. (Capital H)\n */\n header: string;\n /**\n * Either an `accessorKey` or a combination of an `accessorFn` and `id` are required for a data column definition.\n *\n * If you have also specified an `accessorFn`, MRT still needs to have a valid `id` to be able to identify the column uniquely.\n *\n * `id` defaults to the `accessorKey` or `header` if not specified.\n *\n * @default gets set to the same value as `accessorKey` by default\n */\n id?: LiteralUnion<string & keyof TData>;\n muiTableBodyCellCopyButtonProps?:\n | ButtonProps\n | (({\n table,\n cell,\n }: {\n table: MRT_TableInstance<TData>;\n cell: MRT_Cell<TData>;\n }) => ButtonProps);\n muiTableBodyCellEditTextFieldProps?:\n | TextFieldProps\n | (({\n table,\n cell,\n }: {\n table: MRT_TableInstance<TData>;\n cell: MRT_Cell<TData>;\n }) => TextFieldProps);\n muiTableBodyCellProps?:\n | TableCellProps\n | (({\n table,\n cell,\n }: {\n table: MRT_TableInstance<TData>;\n cell: MRT_Cell<TData>;\n }) => TableCellProps);\n muiTableFooterCellProps?:\n | TableCellProps\n | (({\n table,\n column,\n }: {\n table: MRT_TableInstance<TData>;\n column: MRT_Column<TData>;\n }) => TableCellProps);\n muiTableHeadCellColumnActionsButtonProps?:\n | IconButtonProps\n | (({\n table,\n column,\n }: {\n table: MRT_TableInstance<TData>;\n column: MRT_Column<TData>;\n }) => IconButtonProps);\n muiTableHeadCellDragHandleProps?:\n | IconButtonProps\n | (({\n table,\n column,\n }: {\n table: MRT_TableInstance<TData>;\n column: MRT_Column<TData>;\n }) => IconButtonProps);\n muiTableHeadCellFilterTextFieldProps?:\n | TextFieldProps\n | (({\n table,\n column,\n rangeFilterIndex,\n }: {\n table: MRT_TableInstance<TData>;\n column: MRT_Column<TData>;\n rangeFilterIndex?: number;\n }) => TextFieldProps);\n muiTableHeadCellProps?:\n | TableCellProps\n | (({\n table,\n column,\n }: {\n table: MRT_TableInstance<TData>;\n column: MRT_Column<TData>;\n }) => TableCellProps);\n onCellEditBlur?: ({\n cell,\n event,\n table,\n }: {\n event: FocusEvent<HTMLInputElement>;\n cell: MRT_Cell<TData>;\n table: MRT_TableInstance<TData>;\n }) => void;\n onCellEditChange?: ({\n cell,\n event,\n table,\n }: {\n event: ChangeEvent<HTMLInputElement>;\n cell: MRT_Cell<TData>;\n table: MRT_TableInstance<TData>;\n }) => void;\n sortingFn?: MRT_SortingFn;\n};\n\nexport type MRT_DefinedColumnDef<TData extends Record<string, any> = {}> = Omit<\n MRT_ColumnDef<TData>,\n 'id'\n> & {\n id: string;\n _filterFn: MRT_FilterOption;\n};\n\nexport type MRT_Column<TData extends Record<string, any> = {}> = Omit<\n Column<TData, unknown>,\n 'header' | 'footer' | 'columns' | 'columnDef' | 'filterFn'\n> & {\n columnDef: MRT_DefinedColumnDef<TData>;\n columns?: MRT_Column<TData>[];\n filterFn?: MRT_FilterFn<TData>;\n footer: string;\n header: string;\n};\n\nexport type MRT_Header<TData extends Record<string, any> = {}> = Omit<\n Header<TData, unknown>,\n 'column'\n> & {\n column: MRT_Column<TData>;\n};\n\nexport type MRT_HeaderGroup<TData extends Record<string, any> = {}> = Omit<\n HeaderGroup<TData>,\n 'headers'\n> & {\n headers: MRT_Header<TData>[];\n};\n\nexport type MRT_Row<TData extends Record<string, any> = {}> = Omit<\n Row<TData>,\n 'getVisibleCells' | 'getAllCells' | 'subRows' | '_valuesCache'\n> & {\n getAllCells: () => MRT_Cell<TData>[];\n getVisibleCells: () => MRT_Cell<TData>[];\n subRows?: MRT_Row<TData>[];\n _valuesCache?: TData;\n};\n\nexport type MRT_Cell<TData extends Record<string, any> = {}> = Omit<\n Cell<TData, unknown>,\n 'column' | 'row'\n> & {\n column: MRT_Column<TData>;\n row: MRT_Row<TData>;\n};\n\nexport type MRT_SortingOption = 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 columnFilterModeOptions?: (MRT_FilterOption | string)[] | null;\n columns: MRT_ColumnDef<TData>[];\n data: TData[];\n editingMode?: 'table' | 'row' | 'cell';\n enableClickToCopy?: boolean;\n enableColumnActions?: boolean;\n enableColumnDragging?: boolean;\n enableColumnFilterChangeMode?: boolean;\n enableColumnOrdering?: boolean;\n enableDensityToggle?: boolean;\n enableEditing?: boolean;\n enableExpandAll?: boolean;\n enableFullScreenToggle?: boolean;\n enableGlobalFilterChangeMode?: boolean;\n enableGlobalFilterRankedResults?: boolean;\n enablePagination?: boolean;\n enableRowActions?: boolean;\n enableRowDragging?: boolean;\n enableRowNumbers?: boolean;\n enableRowOrdering?: boolean;\n enableRowVirtualization?: boolean;\n enableSelectAll?: boolean;\n enableStickyHeader?: boolean;\n enableTableFooter?: boolean;\n enableTableHead?: boolean;\n enableToolbarBottom?: boolean;\n enableToolbarInternalActions?: boolean;\n enableToolbarTop?: boolean;\n enabledGlobalFilterOptions?: (MRT_FilterOption | string)[] | null;\n expandRowsFn?: (dataRow: TData) => TData[];\n icons?: Partial<MRT_Icons>;\n initialState?: Partial<MRT_TableState<TData>>;\n localization?: Partial<MRT_Localization>;\n muiExpandAllButtonProps?:\n | IconButtonProps\n | (({ table }: { table: MRT_TableInstance<TData> }) => IconButtonProps);\n muiExpandButtonProps?:\n | IconButtonProps\n | (({\n table,\n }: {\n table: MRT_TableInstance<TData>;\n row: MRT_Row<TData>;\n }) => IconButtonProps);\n muiLinearProgressProps?:\n | LinearProgressProps\n | (({\n isTopToolbar,\n table,\n }: {\n isTopToolbar: boolean;\n table: MRT_TableInstance<TData>;\n }) => LinearProgressProps);\n muiSearchTextFieldProps?:\n | TextFieldProps\n | (({ table }: { table: MRT_TableInstance<TData> }) => TextFieldProps);\n muiSelectAllCheckboxProps?:\n | CheckboxProps\n | (({ table }: { table: MRT_TableInstance<TData> }) => CheckboxProps);\n muiSelectCheckboxProps?:\n | CheckboxProps\n | (({\n table,\n row,\n }: {\n table: MRT_TableInstance<TData>;\n row: MRT_Row<TData>;\n }) => CheckboxProps);\n muiTableBodyCellCopyButtonProps?:\n | ButtonProps\n | (({\n table,\n cell,\n }: {\n table: MRT_TableInstance<TData>;\n cell: MRT_Cell<TData>;\n }) => ButtonProps);\n muiTableBodyCellEditTextFieldProps?:\n | TextFieldProps\n | (({\n table,\n cell,\n }: {\n table: MRT_TableInstance<TData>;\n cell: MRT_Cell<TData>;\n }) => TextFieldProps);\n muiTableBodyCellProps?:\n | TableCellProps\n | (({\n table,\n cell,\n }: {\n table: MRT_TableInstance<TData>;\n cell: MRT_Cell<TData>;\n }) => TableCellProps);\n muiTableBodyCellSkeletonProps?:\n | SkeletonProps\n | (({\n table,\n cell,\n }: {\n table: MRT_TableInstance<TData>;\n cell: MRT_Cell<TData>;\n }) => SkeletonProps);\n muiTableBodyProps?:\n | TableBodyProps\n | (({ table }: { table: MRT_TableInstance<TData> }) => TableBodyProps);\n muiTableBodyRowDragHandleProps?:\n | IconButtonProps\n | (({\n table,\n row,\n }: {\n table: MRT_TableInstance<TData>;\n row: MRT_Row<TData>;\n }) => IconButtonProps);\n muiTableBodyRowProps?:\n | TableRowProps\n | (({\n table,\n row,\n }: {\n table: MRT_TableInstance<TData>;\n row: MRT_Row<TData>;\n }) => TableRowProps);\n muiTableContainerProps?:\n | TableContainerProps\n | (({\n table,\n }: {\n table: MRT_TableInstance<TData>;\n }) => TableContainerProps);\n muiTableDetailPanelProps?:\n | TableCellProps\n | (({\n table,\n row,\n }: {\n table: MRT_TableInstance<TData>;\n row: MRT_Row<TData>;\n }) => TableCellProps);\n muiTableFooterCellProps?:\n | TableCellProps\n | (({\n table,\n column,\n }: {\n table: MRT_TableInstance<TData>;\n column: MRT_Column<TData>;\n }) => TableCellProps);\n muiTableFooterProps?:\n | TableFooterProps\n | (({ table }: { table: MRT_TableInstance<TData> }) => TableFooterProps);\n muiTableFooterRowProps?:\n | TableRowProps\n | (({\n table,\n footerGroup,\n }: {\n table: MRT_TableInstance<TData>;\n footerGroup: MRT_HeaderGroup<TData>;\n }) => TableRowProps);\n muiTableHeadCellColumnActionsButtonProps?:\n | IconButtonProps\n | (({\n table,\n column,\n }: {\n table: MRT_TableInstance<TData>;\n column: MRT_Column<TData>;\n }) => IconButtonProps);\n muiTableHeadCellDragHandleProps?:\n | IconButtonProps\n | (({\n table,\n column,\n }: {\n table: MRT_TableInstance<TData>;\n column: MRT_Column<TData>;\n }) => IconButtonProps);\n muiTableHeadCellFilterTextFieldProps?:\n | TextFieldProps\n | (({\n table,\n column,\n rangeFilterIndex,\n }: {\n table: MRT_TableInstance<TData>;\n column: MRT_Column<TData>;\n rangeFilterIndex?: number;\n }) => TextFieldProps);\n muiTableHeadCellProps?:\n | TableCellProps\n | (({\n table,\n column,\n }: {\n table: MRT_TableInstance<TData>;\n column: MRT_Column<TData>;\n }) => TableCellProps);\n muiTableHeadProps?:\n | TableHeadProps\n | (({ table }: { table: MRT_TableInstance<TData> }) => TableHeadProps);\n muiTableHeadRowProps?:\n | TableRowProps\n | (({\n table,\n headerGroup,\n }: {\n table: MRT_TableInstance<TData>;\n headerGroup: MRT_HeaderGroup<TData>;\n }) => TableRowProps);\n muiTablePaginationProps?:\n | Partial<TablePaginationProps>\n | (({\n table,\n }: {\n table: MRT_TableInstance<TData>;\n }) => Partial<TablePaginationProps>);\n muiTablePaperProps?:\n | PaperProps\n | (({ table }: { table: MRT_TableInstance<TData> }) => PaperProps);\n muiTableProps?:\n | TableProps\n | (({ table }: { table: MRT_TableInstance<TData> }) => TableProps);\n muiTableToolbarAlertBannerProps?:\n | AlertProps\n | (({ table }: { table: MRT_TableInstance<TData> }) => AlertProps);\n muiTableToolbarBottomProps?:\n | ToolbarProps\n | (({ table }: { table: MRT_TableInstance<TData> }) => ToolbarProps);\n muiTableToolbarTopProps?:\n | ToolbarProps\n | (({ table }: { table: MRT_TableInstance<TData> }) => ToolbarProps);\n onCellEditBlur?: ({\n cell,\n event,\n table,\n }: {\n event: FocusEvent<HTMLInputElement>;\n cell: MRT_Cell<TData>;\n table: MRT_TableInstance<TData>;\n }) => void;\n onCellEditChange?: ({\n cell,\n event,\n table,\n }: {\n event: ChangeEvent<HTMLInputElement>;\n cell: MRT_Cell<TData>;\n table: MRT_TableInstance<TData>;\n }) => void;\n onColumnDrop?: ({\n event,\n draggedColumn,\n targetColumn,\n }: {\n event: DragEvent<HTMLButtonElement>;\n draggedColumn: MRT_Column<TData>;\n targetColumn: MRT_Column<TData> | null;\n }) => void;\n onCurrentDraggingColumnChange?: OnChangeFn<MRT_Column<TData> | null>;\n onCurrentDraggingRowChange?: OnChangeFn<MRT_Row<TData> | null>;\n onCurrentEditingCellChange?: OnChangeFn<MRT_Cell<TData> | null>;\n onCurrentEditingRowChange?: OnChangeFn<MRT_Row<TData> | null>;\n onCurrentFilterFnsChange?: OnChangeFn<{ [key: string]: MRT_FilterOption }>;\n onCurrentGlobalFilterFnChange?: OnChangeFn<MRT_FilterOption>;\n onCurrentHoveredColumnChange?: OnChangeFn<MRT_Column<TData> | null>;\n onCurrentHoveredRowChange?: OnChangeFn<MRT_Row<TData> | null>;\n onDensityChange?: OnChangeFn<boolean>;\n onEditRowSubmit?: ({\n row,\n table,\n }: {\n row: MRT_Row<TData>;\n table: MRT_TableInstance<TData>;\n }) => Promise<void> | void;\n onIsFullScreenChange?: OnChangeFn<boolean>;\n onRowDrop?: ({\n event,\n draggedRow,\n targetRow,\n }: {\n event: DragEvent<HTMLButtonElement>;\n draggedRow: MRT_Row<TData>;\n targetRow: MRT_Row<TData> | null;\n }) => void;\n onShowAlertBannerChange?: OnChangeFn<boolean>;\n onShowFiltersChange?: OnChangeFn<boolean>;\n onShowGlobalFilterChange?: OnChangeFn<boolean>;\n onTableInstanceChange?: (table: MRT_TableInstance<TData>) => void;\n positionActionsColumn?: 'first' | 'last';\n positionExpandColumn?: 'first' | 'last';\n positionGlobalFilter?: 'left' | 'right';\n positionPagination?: 'bottom' | 'top' | 'both';\n positionToolbarAlertBanner?: 'bottom' | 'top';\n renderDetailPanel?: ({\n row,\n table,\n }: {\n row: MRT_Row<TData>;\n table: MRT_TableInstance<TData>;\n }) => ReactNode;\n renderRowActionMenuItems?: ({\n closeMenu,\n row,\n table,\n }: {\n closeMenu: () => void;\n row: MRT_Row<TData>;\n table: MRT_TableInstance<TData>;\n }) => ReactNode[];\n renderRowActions?: ({\n row,\n table,\n }: {\n row: MRT_Row<TData>;\n table: MRT_TableInstance<TData>;\n }) => ReactNode;\n renderToolbarBottomCustomActions?: ({\n table,\n }: {\n table: MRT_TableInstance<TData>;\n }) => ReactNode;\n renderToolbarInternalActions?: ({\n table,\n MRT_ToggleGlobalFilterButton,\n MRT_ToggleFiltersButton,\n MRT_ShowHideColumnsButton,\n MRT_ToggleDensePaddingButton,\n MRT_FullScreenToggleButton,\n }: {\n table: MRT_TableInstance<TData>;\n MRT_ToggleGlobalFilterButton: FC<\n IconButtonProps & { table: MRT_TableInstance<TData> }\n >;\n MRT_ToggleFiltersButton: FC<\n IconButtonProps & { table: MRT_TableInstance<TData> }\n >;\n MRT_ShowHideColumnsButton: FC<\n IconButtonProps & { table: MRT_TableInstance<TData> }\n >;\n MRT_ToggleDensePaddingButton: FC<\n IconButtonProps & { table: MRT_TableInstance<TData> }\n >;\n MRT_FullScreenToggleButton: FC<\n IconButtonProps & { table: MRT_TableInstance<TData> }\n >;\n }) => ReactNode;\n renderToolbarTopCustomActions?: ({\n table,\n }: {\n table: MRT_TableInstance<TData>;\n }) => ReactNode;\n rowCount?: number;\n rowNumberMode?: 'original' | 'static';\n selectAllMode?: 'all' | 'page';\n state?: Partial<MRT_TableState<TData>>;\n tableId?: string;\n virtualizerProps?: Partial<\n VirtualizerOptions<HTMLDivElement, HTMLTableRowElement>\n >;\n };\n\nexport default <TData extends Record<string, any> = {}>({\n autoResetExpanded = false,\n columnResizeMode = 'onEnd',\n defaultColumn = { minSize: 40, maxSize: 1000, size: 180 },\n editingMode = 'row',\n enableColumnActions = true,\n enableColumnFilterChangeMode = false,\n enableColumnFilters = true,\n enableColumnOrdering = false,\n enableColumnResizing = false,\n enableDensityToggle = true,\n enableExpandAll = true,\n enableFilters = true,\n enableFullScreenToggle = true,\n enableGlobalFilter = true,\n enableGlobalFilterChangeMode = false,\n enableGlobalFilterRankedResults = true,\n enableGrouping = false,\n enableHiding = true,\n enableMultiRowSelection = true,\n enableMultiSort = true,\n enablePagination = true,\n enablePinning = false,\n enableRowSelection = false,\n enableSelectAll = true,\n enableSorting = true,\n enableStickyHeader = false,\n enableTableFooter = true,\n enableTableHead = true,\n enableToolbarBottom = true,\n enableToolbarInternalActions = true,\n enableToolbarTop = true,\n icons,\n localization,\n positionActionsColumn = 'first',\n positionExpandColumn = 'first',\n positionGlobalFilter = 'right',\n positionPagination = 'bottom',\n positionToolbarAlertBanner = 'top',\n rowNumberMode = 'original',\n selectAllMode = 'all',\n ...rest\n}: MaterialReactTableProps<TData>) => (\n <MRT_TableRoot\n autoResetExpanded={autoResetExpanded}\n columnResizeMode={columnResizeMode}\n defaultColumn={defaultColumn}\n editingMode={editingMode}\n enableColumnActions={enableColumnActions}\n enableColumnFilterChangeMode={enableColumnFilterChangeMode}\n enableColumnFilters={enableColumnFilters}\n enableColumnOrdering={enableColumnOrdering}\n enableColumnResizing={enableColumnResizing}\n enableDensityToggle={enableDensityToggle}\n enableExpandAll={enableExpandAll}\n enableFilters={enableFilters}\n enableFullScreenToggle={enableFullScreenToggle}\n enableGlobalFilter={enableGlobalFilter}\n enableGlobalFilterChangeMode={enableGlobalFilterChangeMode}\n enableGlobalFilterRankedResults={enableGlobalFilterRankedResults}\n enableGrouping={enableGrouping}\n enableHiding={enableHiding}\n enableMultiRowSelection={enableMultiRowSelection}\n enableMultiSort={enableMultiSort}\n enablePagination={enablePagination}\n enablePinning={enablePinning}\n enableRowSelection={enableRowSelection}\n enableSelectAll={enableSelectAll}\n enableSorting={enableSorting}\n enableStickyHeader={enableStickyHeader}\n enableTableFooter={enableTableFooter}\n enableTableHead={enableTableHead}\n enableToolbarBottom={enableToolbarBottom}\n enableToolbarInternalActions={enableToolbarInternalActions}\n enableToolbarTop={enableToolbarTop}\n icons={{ ...MRT_Default_Icons, ...icons }}\n localization={{ ...MRT_DefaultLocalization_EN, ...localization }}\n positionActionsColumn={positionActionsColumn}\n positionExpandColumn={positionExpandColumn}\n positionGlobalFilter={positionGlobalFilter}\n positionPagination={positionPagination}\n positionToolbarAlertBanner={positionToolbarAlertBanner}\n rowNumberMode={rowNumberMode}\n selectAllMode={selectAllMode}\n {...rest}\n />\n);\n"],"names":["MRT_DefaultLocalization_EN","actions","and","cancel","changeFilterMode","changeSearchMode","clearFilter","clearSearch","clearSort","clickToCopy","columnActions","copiedToClipboard","edit","expand","expandAll","filterArrIncludes","filterArrIncludesAll","filterArrIncludesSome","filterBetween","filterBetweenInclusive","filterByColumn","filterContains","filterEmpty","filterEndsWith","filterEquals","filterEqualsString","filterFuzzy","filterGreaterThan","filterGreaterThanOrEqualTo","filterInNumberRange","filterIncludesString","filterIncludesStringSensitive","filterLessThan","filterLessThanOrEqualTo","filterMode","filterNotEmpty","filterNotEquals","filterStartsWith","filterWeakEquals","filteringByColumn","grab","groupByColumn","groupedBy","hideAll","hideColumn","max","min","move","or","pinToLeft","pinToRight","resetColumnSize","resetOrder","rowActions","rowNumber","rowNumbers","save","search","selectedCountOfRowCountRowsSelected","select","showAll","showAllColumns","showHideColumns","showHideFilters","showHideSearch","sortByColumnAsc","sortByColumnDesc","sortedByColumnAsc","sortedByColumnDesc","thenBy","toggleDensity","toggleFullScreen","toggleSelectAll","toggleSelectRow","toggleVisibility","ungroupByColumn","unpin","unpinAll","unsorted","MRT_Default_Icons","ArrowRightIcon","ArrowRight","CancelIcon","Cancel","CheckBoxIcon","CheckBox","ClearAllIcon","ClearAll","CloseIcon","Close","DensityLargeIcon","DensityLarge","DensityMediumIcon","DensityMedium","DensitySmallIcon","DensitySmall","DragHandleIcon","DragHandle","DynamicFeedIcon","DynamicFeed","EditIcon","Edit","ExpandLessIcon","ExpandLess","ExpandMoreIcon","ExpandMore","FilterAltIcon","FilterAlt","FilterAltOffIcon","FilterAltOff","FilterListIcon","FilterList","FilterListOffIcon","FilterListOff","FullscreenExitIcon","FullscreenExit","FullscreenIcon","Fullscreen","KeyboardDoubleArrowDownIcon","KeyboardDoubleArrowDown","MoreHorizIcon","MoreHoriz","MoreVertIcon","MoreVert","PushPinIcon","PushPin","RestartAltIcon","RestartAlt","SaveIcon","Save","SearchIcon","Search","SearchOffIcon","SearchOff","SortIcon","Sort","ViewColumnIcon","ViewColumn","VisibilityOffIcon","VisibilityOff","MRT_ExpandAllButton","table","getIsAllRowsExpanded","getIsSomeRowsExpanded","getCanSomeRowsExpand","getState","options","icons","localization","muiExpandAllButtonProps","renderDetailPanel","toggleAllRowsExpanded","density","iconButtonProps","Function","React","Tooltip","arrow","enterDelay","enterNextDelay","title","IconButton","disabled","onClick","sx","height","width","mt","undefined","style","transform","transition","MRT_ExpandButton","row","muiExpandButtonProps","handleToggleExpand","toggleExpanded","getCanExpand","theme","getIsExpanded","internalFilterOptions","option","symbol","label","divider","MRT_FilterOptionMenu","anchorEl","header","onSelect","setAnchorEl","enabledGlobalFilterOptions","columnFilterModeOptions","setCurrentFilterFns","setCurrentGlobalFilterFn","currentFilterFns","currentGlobalFilterFn","column","columnDef","allowedColumnFilterOptions","filterOptions","useMemo","filter","filterOption","includes","handleSelectFilterType","prev","id","setFilterValue","Menu","anchorOrigin","vertical","horizontal","onClose","open","MenuListProps","dense","map","index","MenuItem","key","selected","py","my","alignItems","display","gap","value","Box","fontSize","MRT_ColumnPinningButtons","handlePinColumn","pinDirection","pin","minWidth","textAlign","getIsPinned","size","MRT_GrabHandleButton","onDragEnd","onDragStart","placement","disableRipple","draggable","cursor","m","opacity","p","backgroundColor","fuzzy","columnId","filterValue","addMeta","itemRank","rankItem","getValue","threshold","rankings","MATCHES","passed","autoRemove","val","contains","toString","toLowerCase","trim","startsWith","endsWith","equals","notEquals","greaterThan","isNaN","greaterThanOrEqualTo","lessThan","lessThanOrEqualTo","between","filterValues","betweenInclusive","empty","_filterValue","notEmpty","MRT_FilterFns","filterFns","rowA","rowB","dir","columnFiltersMeta","compareItems","sortingFns","alphanumeric","MRT_SortingFns","rankGlobalFuzzy","Math","Object","values","v","rank","getColumnId","accessorKey","getAllLeafColumnDefs","columns","lowestLevelColumns","currentCols","length","some","col","nextCols","flat","every","prepareColumns","columnDefs","process","console","error","columnDefType","keys","filterFn","_filterFn","sortingFn","reorderColumn","draggedColumn","targetColumn","columnOrder","getCanPin","splice","indexOf","getLeadingDisplayColumnIds","props","enableRowDragging","enableRowOrdering","positionActionsColumn","enableRowActions","enableEditing","editingMode","positionExpandColumn","enableExpanding","enableGrouping","enableRowSelection","enableRowNumbers","Boolean","getTrailingDisplayColumnIds","getDefaultColumnOrderIds","getDefaultColumnFilterFn","filterVariant","MRT_ShowHideColumnsMenuItems","allColumns","currentHoveredColumn","setCurrentHoveredColumn","isSubMenu","enableColumnOrdering","enableHiding","enablePinning","setColumnOrder","switchChecked","getIsVisible","getLeafColumns","handleToggleColumnHidden","forEach","childColumn","menuItemRef","useRef","useState","isDragging","setIsDragging","handleDragStart","e","dataTransfer","setDragImage","current","handleDragEnd","_e","handleDragEnter","ref","onDragEnter","justifyContent","outline","palette","primary","main","pl","depth","flexWrap","FormControlLabel","componentsProps","typography","mb","checked","control","Switch","getCanHide","getIsGrouped","onChange","Typography","alignSelf","c","i","MRT_ShowHideColumnsMenu","getAllColumns","getAllLeafColumns","getCenterLeafColumns","getIsAllColumnsVisible","getIsSomeColumnsPinned","getIsSomeColumnsVisible","getLeftLeafColumns","getRightLeafColumns","toggleAllColumnsVisible","columnPinning","hideAllColumns","Array","from","Set","colId","find","pt","Button","resetColumnPinning","Divider","commonMenuItemStyles","commonListItemStyles","MRT_ColumnActionMenu","enableColumnFilterChangeMode","enableColumnFilters","enableColumnResizing","enableSorting","tableId","setShowFilters","columnSizing","columnVisibility","filterMenuAnchorEl","setFilterMenuAnchorEl","showHideColumnsMenuAnchorEl","setShowHideColumnsMenuAnchorEl","handleClearSort","clearSorting","handleSortAsc","toggleSorting","handleSortDesc","handleResetColumnSize","resetSize","handleHideColumn","handleGroupByColumn","toggleGrouping","old","handleClearFilter","handleFilterByColumn","setTimeout","document","getElementById","muiTableHeadCellFilterTextFieldProps","focus","handleShowAllColumns","handleOpenFilterModeMenu","event","stopPropagation","currentTarget","handleOpenShowHideColumnsMenu","isSelectFilter","filterSelectOptions","showFilterModeSubMenu","getCanSort","getIsSorted","ListItemIcon","replace","String","getCanFilter","getFilterValue","onMouseEnter","getCanGroup","getCanResize","visible","MRT_RowActionMenu","handleEdit","renderRowActionMenuItems","closeMenu","MRT_EditActionButtons","onEditRowSubmit","setCurrentEditingRow","currentEditingRow","handleCancel","_valuesCache","original","handleSave","color","commonIconButtonStyles","ml","MRT_ToggleRowActionMenuButton","renderRowActions","handleOpenRowActionMenu","preventDefault","handleStartEditMode","MRT_SelectCheckbox","selectAll","muiSelectCheckboxProps","muiSelectAllCheckboxProps","selectAllMode","checkboxProps","Checkbox","getIsAllRowsSelected","getIsSelected","indeterminate","getIsSomeRowsSelected","getIsSomeSelected","inputProps","getToggleAllRowsSelectedHandler","getToggleAllPageRowsSelectedHandler","getToggleSelectedHandler","MRT_GlobalFilterTextField","setGlobalFilter","enableGlobalFilterChangeMode","muiSearchTextFieldProps","globalFilter","showGlobalFilter","searchValue","setSearchValue","handleChangeDebounced","useCallback","debounce","target","handleChange","handleGlobalFilterMenuOpen","handleClear","textFieldProps","Collapse","orientation","TextField","placeholder","variant","InputProps","startAdornment","InputAdornment","position","endAdornment","MRT_LinearProgressBar","isTopToolbar","muiLinearProgressProps","isLoading","showProgressBars","linearProgressProps","mountOnEnter","unmountOnExit","bottom","top","LinearProgress","MRT_TablePagination","getPrePaginationRowModel","setPageIndex","setPageSize","muiTablePaginationProps","enableToolbarInternalActions","rowCount","pagination","pageSize","pageIndex","totalRowCount","rows","showFirstLastPageButtons","tablePaginationProps","handleChangeRowsPerPage","TablePagination","SelectProps","MenuProps","disablePadding","component","count","onPageChange","_","newPage","onRowsPerPageChange","page","rowsPerPage","rowsPerPageOptions","showFirstButton","showLastButton","zIndex","MRT_ToolbarAlertBanner","stackAlertBanner","getSelectedRowModel","muiTableToolbarAlertBannerProps","grouping","showAlertBanner","alertProps","selectMessage","groupedByMessage","Fragment","Chip","getColumn","onDelete","timeout","Alert","icon","borderRadius","left","right","AlertTitle","children","MRT_FullScreenToggleButton","rest","setIsFullScreen","isFullScreen","handleToggleFullScreen","MRT_ShowHideColumnsButton","handleClick","MRT_ToggleDensePaddingButton","setDensity","handleToggleDensePadding","nextDensity","MRT_ToggleFiltersButton","showColumnFilters","handleToggleShowFilters","MRT_ToggleGlobalFilterButton","setShowGlobalFilter","handleToggleSearch","MRT_ToolbarInternalButtons","enableDensityToggle","enableFilters","enableFullScreenToggle","enableGlobalFilter","positionGlobalFilter","renderToolbarInternalActions","commonToolbarStyles","lighten","background","backgroundImage","minHeight","overflow","MRT_ToolbarTop","enablePagination","muiTableToolbarTopProps","positionPagination","positionToolbarAlertBanner","renderToolbarTopCustomActions","isMobile","useMediaQuery","toolbarProps","Toolbar","boxSizing","MRT_ToolbarBottom","muiTableToolbarBottomProps","renderToolbarBottomCustomActions","boxShadow","alpha","common","black","MRT_TableHeadCellColumnActionsButton","muiTableHeadCellColumnActionsButtonProps","mTableHeadCellColumnActionsButtonProps","mcTableHeadCellColumnActionsButtonProps","MRT_FilterTextField","rangeFilterIndex","mTableHeadCellFilterTextFieldProps","mcTableHeadCellFilterTextFieldProps","isRangeFilter","isMultiSelectFilter","isTextboxFilter","currentFilterOption","filterId","filterChipLabel","charAt","toUpperCase","slice","filterPlaceholder","showChangeModeButton","type","Date","newFilterValues","handleClearEmptyFilterChip","handleFilterMenuOpen","Filter","fullWidth","textOverflow","helperText","htmlFor","FormHelperTextProps","lineHeight","whiteSpace","margin","displayEmpty","multiple","renderValue","mr","hidden","text","ListItemText","MRT_FilterRangeFields","gridTemplateColumns","MRT_TableHeadCellFilterContainer","MRT_TableHeadCellFilterLabel","filterTooltip","isArray","join","Grow","MRT_TableHeadCellGrabHandle","tableHeadCellRef","muiTableHeadCellDragHandleProps","onColumnDrop","setCurrentDraggingColumn","currentDraggingColumn","mIconButtonProps","mcIconButtonProps","MRT_TableHeadCellResizeHandle","columnResizeMode","flexItem","onDoubleClick","borderRightWidth","touchAction","getIsResizing","userSelect","info","onMouseDown","getResizeHandler","onTouchStart","columnSizingInfo","deltaOffset","MRT_TableHeadCellSortLabel","sortTooltip","TableSortLabel","active","direction","MRT_TableHeadCell","useTheme","enableColumnActions","enableColumnDragging","enableMultiSort","muiTableHeadCellProps","mTableHeadCellProps","mcTableHeadCellProps","tableCellProps","getIsLastLeftPinnedColumn","getLeftLeafHeaders","getPinnedIndex","getIsFirstRightPinnedColumn","getTotalRight","getRightLeafHeaders","draggingBorder","draggingBorders","borderLeft","borderRight","borderTop","headerElement","Header","TableCell","align","colSpan","fontWeight","getStart","pb","verticalAlign","maxWidth","getSize","minSize","isPlaceholder","getToggleSortingHandler","MRT_TableHeadRow","headerGroup","muiTableHeadRowProps","tableRowProps","TableRow","headers","MRT_TableHead","getHeaderGroups","muiTableHeadProps","tableHeadProps","TableHead","MRT_EditCellTextField","cell","muiTableBodyCellEditTextFieldProps","onCellEditBlur","onCellEditChange","setCurrentEditingCell","setValue","handleBlur","mTableBodyCellEditTextFieldProps","mcTableBodyCellEditTextFieldProps","onBlur","MRT_CopyButton","muiTableBodyCellCopyButtonProps","copied","setCopied","handleCopy","navigator","clipboard","writeText","mTableBodyCellCopyButtonProps","mcTableBodyCellCopyButtonProps","buttonProps","border","fontFamily","letterSpacing","textTransform","MRT_TableBodyRowGrabHandle","rowRef","muiTableBodyRowDragHandleProps","onRowDrop","setCurrentDraggingRow","draggedRow","currentDraggingRow","targetRow","currentHoveredRow","setCurrentHoveredRow","MRT_TableBodyCell","enableHover","rowIndex","enableClickToCopy","muiTableBodyCellProps","muiTableBodyCellSkeletonProps","rowNumberMode","currentEditingCell","showSkeletons","mTableCellBodyProps","mcTableCellBodyProps","skeletonWidth","random","isEditable","isEditing","handleDoubleClick","_event","textField","borderBottom","getRowModel","mode","darken","getIsPlaceholder","Skeleton","animation","Cell","subRows","MRT_TableDetailPanel","getVisibleLeafColumns","muiTableBodyRowProps","muiTableDetailPanelProps","getTotalSize","MRT_TableBodyRow","hover","getVisibleCells","MRT_TableBody","tableContainerRef","enableGlobalFilterRankedResults","enableRowVirtualization","muiTableBodyProps","virtualizerProps","sorting","tableBodyProps","getIsSomeColumnsSorted","rankedRows","sort","a","b","rowVirtualizer","useVirtualizer","estimateSize","overscan","getScrollElement","virtualRows","getVirtualItems","paddingTop","paddingBottom","start","end","TableBody","rowOrVirtualRow","MRT_TableFooterCell","footer","muiTableFooterCellProps","mTableFooterCellProps","mcTableFooterCellProps","white","Footer","MRT_TableFooterRow","footerGroup","muiTableFooterRowProps","MRT_TableFooter","getFooterGroups","muiTableFooterProps","tableFooterProps","TableFooter","MRT_Table","enableStickyHeader","enableTableFooter","enableTableHead","muiTableProps","tableProps","Table","stickyHeader","tableLayout","useIsomorphicLayoutEffect","window","useLayoutEffect","useEffect","MRT_TableContainer","muiTableContainerProps","totalToolbarHeight","setTotalToolbarHeight","tableContainerProps","topToolbarHeight","offsetHeight","bottomToolbarHeight","TableContainer","maxHeight","MRT_TablePaper","enableToolbarBottom","enableToolbarTop","muiTablePaperProps","body","tablePaperProps","Paper","elevation","padding","defaultDisplayColumnDefOptions","enableColumnFilter","enableResizing","MRT_TableRoot","setIdPrefix","substring","initialState","initState","setShowAlertBanner","assign","name","globalFilterFn","displayColumns","displayColumnDefOptions","enableExpandAll","enableSelectAll","data","state","fill","useReactTable","getCoreRowModel","getExpandedRowModel","getFacetedRowModel","getFilteredRowModel","getGroupedRowModel","getPaginationRowModel","getSortedRowModel","onColumnOrderChange","getSubRows","onCurrentDraggingColumnChange","onCurrentDraggingRowChange","onCurrentEditingCellChange","onCurrentEditingRowChange","onCurrentFilterFnsChange","onCurrentGlobalFilterFnChange","onCurrentHoveredColumnChange","onCurrentHoveredRowChange","onDensityChange","onIsFullScreenChange","onShowAlertBannerChange","onShowFiltersChange","onShowGlobalFilterChange","onTableInstanceChange","Dialog","PaperComponent","TransitionComponent","disablePortal","fullScreen","keepMounted","transitionDuration","autoResetExpanded","defaultColumn","maxSize","enableMultiRowSelection"],"mappings":"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"}