material-react-table 0.17.0 → 0.18.1

Sign up to get free protection for your applications and to get access to all the features.
@@ -1 +1 @@
1
- {"version":3,"file":"material-react-table.esm.js","sources":["../src/localization.ts","../src/icons.ts","../src/buttons/MRT_ExpandAllButton.tsx","../src/buttons/MRT_ExpandButton.tsx","../src/filtersFns.ts","../src/menus/MRT_FilterOptionMenu.tsx","../src/buttons/MRT_ColumnPinningButtons.tsx","../src/buttons/MRT_GrabHandleButton.tsx","../src/utils.ts","../src/menus/MRT_ShowHideColumnsMenuItems.tsx","../src/menus/MRT_ShowHideColumnsMenu.tsx","../src/menus/MRT_ColumnActionMenu.tsx","../src/menus/MRT_RowActionMenu.tsx","../src/buttons/MRT_EditActionButtons.tsx","../src/buttons/MRT_ToggleRowActionMenuButton.tsx","../src/inputs/MRT_SelectCheckbox.tsx","../src/buttons/MRT_FullScreenToggleButton.tsx","../src/buttons/MRT_ShowHideColumnsButton.tsx","../src/buttons/MRT_ToggleDensePaddingButton.tsx","../src/buttons/MRT_ToggleFiltersButton.tsx","../src/buttons/MRT_ToggleGlobalFilterButton.tsx","../src/inputs/MRT_GlobalFilterTextField.tsx","../src/toolbar/MRT_ToolbarInternalButtons.tsx","../src/toolbar/MRT_TablePagination.tsx","../src/toolbar/MRT_ToolbarAlertBanner.tsx","../src/toolbar/MRT_LinearProgressBar.tsx","../src/toolbar/MRT_ToolbarTop.tsx","../src/toolbar/MRT_ToolbarBottom.tsx","../src/inputs/MRT_FilterTextField.tsx","../src/inputs/MRT_FilterRangeFields.tsx","../src/head/MRT_TableHeadCellFilterContainer.tsx","../src/head/MRT_TableHeadCellFilterLabel.tsx","../src/head/MRT_TableHeadCellResizeHandle.tsx","../src/head/MRT_TableHeadCellSortLabel.tsx","../src/head/MRT_TableHeadCellColumnActionsButton.tsx","../src/head/MRT_TableHeadCell.tsx","../src/head/MRT_DraggableTableHeadCell.tsx","../src/head/MRT_TableHeadRow.tsx","../src/head/MRT_TableHead.tsx","../src/inputs/MRT_EditCellTextField.tsx","../src/buttons/MRT_CopyButton.tsx","../src/body/MRT_TableBodyCell.tsx","../src/body/MRT_TableDetailPanel.tsx","../src/body/MRT_TableBodyRow.tsx","../src/sortingFns.ts","../src/body/MRT_TableBody.tsx","../src/footer/MRT_TableFooterCell.tsx","../src/footer/MRT_TableFooterRow.tsx","../src/footer/MRT_TableFooter.tsx","../src/table/MRT_Table.tsx","../src/table/MRT_TableContainer.tsx","../src/table/MRT_TablePaper.tsx","../src/table/MRT_TableRoot.tsx","../src/MaterialReactTable.tsx"],"sourcesContent":["export interface MRT_Localization {\n actions: string;\n and: string;\n cancel: string;\n changeFilterMode: string;\n changeSearchMode: string;\n clearFilter: string;\n clearSearch: string;\n clearSort: string;\n clickToCopy: string;\n columnActions: string;\n copiedToClipboard: string;\n edit: string;\n expand: string;\n expandAll: string;\n filterBetween: string;\n filterByColumn: string;\n filterContains: string;\n filterEmpty: string;\n filterEndsWith: string;\n filterEquals: string;\n filterFuzzy: string;\n filterGreaterThan: string;\n filterLessThan: string;\n filterMode: string;\n filterNotEmpty: string;\n filterNotEquals: string;\n filterStartsWith: string;\n filteringByColumn: string;\n grab: string;\n groupByColumn: string;\n groupedBy: string;\n hideAll: string;\n hideColumn: string;\n max: string;\n min: string;\n pinToLeft: string;\n pinToRight: string;\n resetColumnSize: string;\n resetOrder: string;\n rowActions: string;\n rowNumber: string;\n rowNumbers: string;\n save: string;\n search: string;\n select: string;\n selectedCountOfRowCountRowsSelected: string;\n showAll: string;\n showAllColumns: string;\n showHideColumns: string;\n showHideFilters: string;\n showHideSearch: string;\n sortByColumnAsc: string;\n sortByColumnDesc: string;\n sortedByColumnAsc: string;\n sortedByColumnDesc: string;\n thenBy: string;\n toggleDensity: string;\n toggleFullScreen: string;\n toggleSelectAll: string;\n toggleSelectRow: string;\n toggleVisibility: string;\n ungroupByColumn: string;\n unpin: string;\n unpinAll: string;\n unsorted: string;\n}\n\nexport const MRT_DefaultLocalization_EN: MRT_Localization = {\n actions: 'Actions',\n and: 'and',\n cancel: 'Cancel',\n changeFilterMode: 'Change filter mode',\n changeSearchMode: 'Change search mode',\n clearFilter: 'Clear filter',\n clearSearch: 'Clear search',\n clearSort: 'Clear sort',\n clickToCopy: 'Click to copy',\n columnActions: 'Column Actions',\n copiedToClipboard: 'Copied to clipboard',\n edit: 'Edit',\n expand: 'Expand',\n expandAll: 'Expand all',\n filterBetween: 'Between',\n filterByColumn: 'Filter by {column}',\n filterContains: 'Contains',\n filterEmpty: 'Empty',\n filterEndsWith: 'Ends With',\n filterEquals: 'Equals',\n filterFuzzy: 'Fuzzy',\n filterGreaterThan: 'Greater Than',\n filterLessThan: 'Less Than',\n filterMode: 'Filter Mode: {filterType}',\n filterNotEmpty: 'Not Empty',\n filterNotEquals: 'Not Equals',\n filterStartsWith: 'Starts With',\n filteringByColumn: 'Filtering by {column} - {filterType} {filterValue}',\n grab: 'Grab',\n groupByColumn: 'Group by {column}',\n groupedBy: 'Grouped by ',\n hideAll: 'Hide all',\n hideColumn: 'Hide {column} column',\n max: 'Max',\n min: 'Min',\n 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 instance: MRT_TableInstance;\n}\n\nexport const MRT_ExpandAllButton: FC<Props> = ({ instance }) => {\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 } = instance;\n\n const { density } = getState();\n\n const iconButtonProps =\n muiExpandAllButtonProps instanceof Function\n ? muiExpandAllButtonProps({ instance })\n : muiExpandAllButtonProps;\n\n return (\n <Tooltip\n arrow\n enterDelay={1000}\n enterNextDelay={1000}\n title={localization.expandAll}\n >\n <span>\n <IconButton\n aria-label={localization.expandAll}\n disabled={!getCanSomeRowsExpand() && !renderDetailPanel}\n onClick={() => toggleAllRowsExpanded(!getIsAllRowsExpanded())}\n {...iconButtonProps}\n sx={{\n height: density === 'compact' ? '1.75rem' : '2.25rem',\n width: density === 'compact' ? '1.75rem' : '2.25rem',\n ...iconButtonProps?.sx,\n }}\n >\n <KeyboardDoubleArrowDownIcon\n style={{\n transform: `rotate(${\n getIsAllRowsExpanded()\n ? -180\n : getIsSomeRowsExpanded()\n ? -90\n : 0\n }deg)`,\n transition: 'transform 0.2s',\n }}\n />\n </IconButton>\n </span>\n </Tooltip>\n );\n};\n","import React, { FC, MouseEvent } from 'react';\nimport { IconButton, Tooltip } from '@mui/material';\nimport type { MRT_Row, MRT_TableInstance } from '..';\n\ninterface Props {\n row: MRT_Row;\n instance: MRT_TableInstance;\n}\n\nexport const MRT_ExpandButton: FC<Props> = ({ row, instance }) => {\n const {\n getState,\n options: {\n icons: { ExpandMoreIcon },\n localization,\n muiExpandButtonProps,\n onExpandChanged,\n renderDetailPanel,\n },\n } = instance;\n\n const { density } = getState();\n\n const iconButtonProps =\n muiExpandButtonProps instanceof Function\n ? muiExpandButtonProps({ instance, row })\n : muiExpandButtonProps;\n\n const handleToggleExpand = (event: MouseEvent<HTMLButtonElement>) => {\n row.toggleExpanded();\n onExpandChanged?.({ event, row, instance });\n };\n\n return (\n <Tooltip\n arrow\n enterDelay={1000}\n enterNextDelay={1000}\n title={localization.expand}\n >\n <span>\n <IconButton\n aria-label={localization.expand}\n disabled={!row.getCanExpand() && !renderDetailPanel}\n onClick={handleToggleExpand}\n {...iconButtonProps}\n sx={{\n height: density === 'compact' ? '1.75rem' : '2.25rem',\n width: density === 'compact' ? '1.75rem' : '2.25rem',\n ...iconButtonProps?.sx,\n }}\n >\n <ExpandMoreIcon\n style={{\n transform: `rotate(${\n !row.getCanExpand() && !renderDetailPanel\n ? -90\n : row.getIsExpanded()\n ? -180\n : 0\n }deg)`,\n transition: 'transform 0.2s',\n }}\n />\n </IconButton>\n </span>\n </Tooltip>\n );\n};\n","import { rankItem, rankings, RankingInfo } from '@tanstack/match-sorter-utils';\nimport { MRT_Row } from '.';\n\nexport const fuzzy = (\n row: MRT_Row,\n columnId: string,\n filterValue: string,\n addMeta: (item: RankingInfo) => void,\n) => {\n const itemRank = rankItem(row.getValue(columnId), filterValue, {\n threshold: rankings.MATCHES,\n });\n addMeta(itemRank);\n return itemRank.passed;\n};\n\nfuzzy.autoRemove = (val: any) => !val;\n\nexport const contains = (\n row: MRT_Row,\n id: string,\n filterValue: string | number,\n) =>\n row\n .getValue(id)\n .toString()\n .toLowerCase()\n .trim()\n .includes(filterValue.toString().toLowerCase().trim());\n\ncontains.autoRemove = (val: any) => !val;\n\nexport const startsWith = (\n row: MRT_Row,\n id: string,\n filterValue: string | number,\n) =>\n row\n .getValue(id)\n .toString()\n .toLowerCase()\n .trim()\n .startsWith(filterValue.toString().toLowerCase().trim());\n\nstartsWith.autoRemove = (val: any) => !val;\n\nexport const endsWith = (\n row: MRT_Row,\n id: string,\n filterValue: string | number,\n) =>\n row\n .getValue(id)\n .toString()\n .toLowerCase()\n .trim()\n .endsWith(filterValue.toString().toLowerCase().trim());\n\nendsWith.autoRemove = (val: any) => !val;\n\nexport const equals = (\n row: MRT_Row,\n id: string,\n filterValue: string | number,\n) =>\n row.getValue(id).toString().toLowerCase().trim() ===\n filterValue.toString().toLowerCase().trim();\n\nequals.autoRemove = (val: any) => !val;\n\nexport const notEquals = (\n row: MRT_Row,\n id: string,\n filterValue: string | number,\n) =>\n row.getValue(id).toString().toLowerCase().trim() !==\n filterValue.toString().toLowerCase().trim();\n\nnotEquals.autoRemove = (val: any) => !val;\n\nexport const greaterThan = (\n row: MRT_Row,\n id: string,\n filterValue: string | number,\n) =>\n !isNaN(+filterValue) && !isNaN(+row.getValue(id))\n ? +row.getValue(id) >= +filterValue\n : row.getValue(id).toString().toLowerCase().trim() >\n filterValue.toString().toLowerCase().trim();\n\ngreaterThan.autoRemove = (val: any) => !val;\n\nexport const lessThan = (\n row: MRT_Row,\n id: string,\n filterValue: string | number,\n) =>\n !isNaN(+filterValue) && !isNaN(+row.getValue(id))\n ? +row.getValue(id) <= +filterValue\n : row.getValue(id).toString().toLowerCase().trim() <\n filterValue.toString().toLowerCase().trim();\n\nlessThan.autoRemove = (val: any) => !val;\n\nexport const between = (\n row: MRT_Row,\n id: string,\n filterValues: [string | number, string | number],\n) =>\n ((['', undefined] as any[]).includes(filterValues[0]) ||\n greaterThan(row, id, filterValues[0])) &&\n ((!isNaN(+filterValues[0]) &&\n !isNaN(+filterValues[1]) &&\n +filterValues[0] > +filterValues[1]) ||\n (['', undefined] as any[]).includes(filterValues[1]) ||\n lessThan(row, id, filterValues[1]));\n\nbetween.autoRemove = (val: any) => !val;\n\nexport const empty = (\n row: MRT_Row,\n id: string,\n _filterValue: string | number,\n) => !row.getValue(id).toString().trim();\n\nempty.autoRemove = (val: any) => !val;\n\nexport const notEmpty = (\n row: MRT_Row,\n id: string,\n _filterValue: string | number,\n) => !!row.getValue(id).toString().trim();\n\nnotEmpty.autoRemove = (val: any) => !val;\n\nexport const MRT_FilterFns = {\n between,\n contains,\n empty,\n endsWith,\n equals,\n fuzzy,\n greaterThan,\n lessThan,\n notEmpty,\n notEquals,\n startsWith,\n};\n","import React, { FC, useMemo } from 'react';\nimport { Menu, MenuItem } from '@mui/material';\nimport type {\n MRT_FilterFn,\n MRT_FILTER_OPTION,\n MRT_Header,\n MRT_TableInstance,\n} from '..';\nimport {\n between,\n contains,\n empty,\n endsWith,\n equals,\n fuzzy,\n greaterThan,\n lessThan,\n notEmpty,\n notEquals,\n startsWith,\n} from '../filtersFns';\n\nconst commonMenuItemStyles = {\n py: '6px',\n my: 0,\n alignItems: 'center',\n};\n\ninterface Props {\n anchorEl: HTMLElement | null;\n header?: MRT_Header;\n onSelect?: () => void;\n setAnchorEl: (anchorEl: HTMLElement | null) => void;\n instance: MRT_TableInstance;\n}\n\nexport const MRT_FilterOptionMenu: FC<Props> = ({\n anchorEl,\n header,\n onSelect,\n setAnchorEl,\n instance,\n}) => {\n const {\n getState,\n options: {\n enabledGlobalFilterOptions,\n enabledColumnFilterOptions,\n localization,\n },\n setCurrentFilterFns,\n setCurrentGlobalFilterFn,\n } = instance;\n\n const { density, currentFilterFns, currentGlobalFilterFn } = getState();\n\n const { column } = header ?? {};\n\n const { columnDef } = column ?? {};\n\n const allowedColumnFilterOptions =\n columnDef?.enabledColumnFilterOptions ?? enabledColumnFilterOptions;\n\n const filterOptions = useMemo(\n () =>\n [\n {\n option: 'fuzzy',\n label: localization.filterFuzzy,\n divider: false,\n fn: fuzzy,\n },\n {\n option: 'contains',\n label: localization.filterContains,\n divider: false,\n fn: contains,\n },\n {\n option: 'startsWith',\n label: localization.filterStartsWith,\n divider: false,\n fn: startsWith,\n },\n {\n option: 'endsWith',\n label: localization.filterEndsWith,\n divider: true,\n fn: endsWith,\n },\n {\n option: 'equals',\n label: localization.filterEquals,\n divider: false,\n fn: equals,\n },\n {\n option: 'notEquals',\n label: localization.filterNotEquals,\n divider: true,\n fn: notEquals,\n },\n {\n option: 'between',\n label: localization.filterBetween,\n divider: false,\n fn: between,\n },\n {\n option: 'greaterThan',\n label: localization.filterGreaterThan,\n divider: false,\n fn: greaterThan,\n },\n {\n option: 'lessThan',\n label: localization.filterLessThan,\n divider: true,\n fn: lessThan,\n },\n {\n option: 'empty',\n label: localization.filterEmpty,\n divider: false,\n fn: empty,\n },\n {\n option: 'notEmpty',\n label: localization.filterNotEmpty,\n divider: false,\n fn: notEmpty,\n },\n ].filter((filterType) =>\n columnDef\n ? allowedColumnFilterOptions === undefined ||\n allowedColumnFilterOptions?.includes(filterType.option)\n : (!enabledGlobalFilterOptions ||\n enabledGlobalFilterOptions.includes(filterType.option)) &&\n ['fuzzy', 'contains'].includes(filterType.option),\n ) as Array<{\n option: MRT_FILTER_OPTION;\n label: string;\n divider: boolean;\n fn: Function;\n }>,\n [],\n );\n\n const handleSelectFilterType = (value: string) => {\n if (header && column) {\n setCurrentFilterFns((prev: { [key: string]: MRT_FilterFn }) => ({\n ...prev,\n [header.id]: value,\n }));\n if (['empty', 'notEmpty'].includes(value)) {\n column.setFilterValue(' ');\n } else if (value === 'between') {\n column.setFilterValue(['', '']);\n } else {\n column.setFilterValue('');\n }\n } else {\n setCurrentGlobalFilterFn(value);\n }\n setAnchorEl(null);\n onSelect?.();\n };\n\n const filterOption = !!header\n ? currentFilterFns[header.id]\n : currentGlobalFilterFn;\n\n return (\n <Menu\n anchorEl={anchorEl}\n anchorOrigin={{ vertical: 'center', horizontal: 'right' }}\n onClose={() => setAnchorEl(null)}\n open={!!anchorEl}\n MenuListProps={{\n dense: density === 'compact',\n }}\n >\n {filterOptions.map(({ option, label, divider, fn }, index) => (\n <MenuItem\n divider={divider}\n key={index}\n onClick={() => handleSelectFilterType(option as string)}\n selected={option === filterOption || fn === filterOption}\n sx={commonMenuItemStyles}\n value={option as string}\n >\n {label}\n </MenuItem>\n ))}\n </Menu>\n );\n};\n","import React, { FC } from 'react';\nimport { Box, IconButton, Tooltip } from '@mui/material';\nimport type { MRT_Column, MRT_TableInstance } from '..';\n\ninterface Props {\n column: MRT_Column;\n instance: MRT_TableInstance;\n}\n\nexport const MRT_ColumnPinningButtons: FC<Props> = ({ column, instance }) => {\n const {\n options: {\n icons: { PushPinIcon },\n localization,\n },\n } = instance;\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, Tooltip } from '@mui/material';\nimport React, { FC, forwardRef, Ref } from 'react';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n ref: Ref<HTMLButtonElement>;\n instance: MRT_TableInstance;\n}\n\nexport const MRT_GrabHandleButton: FC<Props> = forwardRef(\n ({ instance }, ref) => {\n const {\n options: {\n icons: { DragHandleIcon },\n localization,\n },\n } = instance;\n\n return (\n <Tooltip\n arrow\n enterDelay={1000}\n enterNextDelay={1000}\n placement=\"top\"\n title={localization.grab}\n >\n <IconButton\n disableRipple\n ref={ref}\n size=\"small\"\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 }}\n >\n <DragHandleIcon />\n </IconButton>\n </Tooltip>\n );\n },\n);\n","import { ColumnDef, ColumnOrderState, Table } from '@tanstack/react-table';\nimport {\n MaterialReactTableProps,\n MRT_Column,\n MRT_ColumnDef,\n MRT_FilterFn,\n} from '.';\nimport { MRT_FilterFns } from './filtersFns';\n\nexport const getAllLeafColumnDefs = (\n columns: MRT_ColumnDef[],\n): MRT_ColumnDef[] => {\n let lowestLevelColumns: MRT_ColumnDef[] = columns;\n let currentCols: MRT_ColumnDef[] | undefined = columns;\n while (!!currentCols?.length && currentCols.some((col) => col.columns)) {\n const nextCols: MRT_ColumnDef[] = currentCols\n .filter((col) => !!col.columns)\n .map((col) => col.columns)\n .flat() as MRT_ColumnDef[];\n if (nextCols.every((col) => !col?.columns)) {\n lowestLevelColumns = [...lowestLevelColumns, ...nextCols];\n }\n currentCols = nextCols;\n }\n return lowestLevelColumns.filter((col) => !col.columns);\n};\n\nexport const createGroup = <D extends Record<string, any> = {}>(\n table: Table<D>,\n column: MRT_ColumnDef<D>,\n currentFilterFns: { [key: string]: MRT_FilterFn },\n): ColumnDef<D> =>\n table.createGroup({\n ...column,\n columns: column?.columns?.map?.((col) =>\n col.columns\n ? createGroup<D>(table, col, currentFilterFns)\n : createDataColumn(table, col, currentFilterFns),\n ),\n } as any);\n\nexport const createDataColumn = <D extends Record<string, any> = {}>(\n table: Table<D>,\n column: MRT_ColumnDef<D>,\n currentFilterFns: { [key: string]: MRT_FilterFn },\n): ColumnDef<D> => // @ts-ignore\n table.createDataColumn(column.id, {\n filterFn:\n currentFilterFns[column.id] instanceof Function\n ? currentFilterFns[column.id]\n : // @ts-ignore\n MRT_FilterFns[currentFilterFns[column.id]],\n ...column,\n }) as any;\n\nexport const createDisplayColumn = <D extends Record<string, any> = {}>(\n table: Table<D>,\n column: Omit<MRT_ColumnDef<D>, 'header'> & { header?: string },\n): ColumnDef<D> => table.createDisplayColumn(column as ColumnDef<D>);\n\nexport const reorderColumn = (\n movingColumn: MRT_Column,\n receivingColumn: MRT_Column,\n columnOrder: ColumnOrderState,\n): ColumnOrderState => {\n if (movingColumn.getCanPin()) {\n movingColumn.pin(receivingColumn.getIsPinned());\n }\n columnOrder.splice(\n columnOrder.indexOf(receivingColumn.id),\n 0,\n columnOrder.splice(columnOrder.indexOf(movingColumn.id), 1)[0],\n );\n return [...columnOrder];\n};\n\nexport const getLeadingDisplayColumnIds = (\n props: MaterialReactTableProps<any>,\n) =>\n [\n ((props.positionActionsColumn === 'first' && props.enableRowActions) ||\n (props.enableEditing && props.editingMode === 'row')) &&\n 'mrt-row-actions',\n (props.enableExpanding || props.enableGrouping) && 'mrt-expand',\n props.enableRowSelection && 'mrt-select',\n props.enableRowNumbers && 'mrt-row-numbers',\n ].filter(Boolean) as string[];\n\nexport const getTrailingDisplayColumnIds = (\n props: MaterialReactTableProps<any>,\n) => [\n ((props.positionActionsColumn === 'last' && props.enableRowActions) ||\n (props.enableEditing && props.editingMode === 'row')) &&\n 'mrt-row-actions',\n];\n\nexport const getDefaultColumnOrderIds = (props: MaterialReactTableProps<any>) =>\n [\n ...getLeadingDisplayColumnIds(props),\n ...getAllLeafColumnDefs(props.columns as MRT_ColumnDef[]).map((c) => c.id),\n ...getTrailingDisplayColumnIds(props),\n ].filter(Boolean) as string[];\n","import React, { FC, Ref } from 'react';\nimport { useDrag, useDrop } from 'react-dnd';\nimport {\n Box,\n FormControlLabel,\n MenuItem,\n Switch,\n Tooltip,\n Typography,\n} from '@mui/material';\nimport { MRT_ColumnPinningButtons } from '../buttons/MRT_ColumnPinningButtons';\nimport { MRT_GrabHandleButton } from '../buttons/MRT_GrabHandleButton';\nimport { reorderColumn } from '../utils';\nimport type { MRT_Column, MRT_TableInstance } from '..';\n\ninterface Props {\n allColumns: MRT_Column[];\n column: MRT_Column;\n isSubMenu?: boolean;\n instance: MRT_TableInstance;\n}\n\nexport const MRT_ShowHideColumnsMenuItems: FC<Props> = ({\n allColumns,\n column,\n isSubMenu,\n instance,\n}) => {\n const {\n getState,\n options: {\n enableColumnOrdering,\n enableHiding,\n enablePinning,\n localization,\n },\n setColumnOrder,\n } = instance;\n\n const { columnOrder } = getState();\n\n const { columnDef, columnDefType } = column;\n\n const [, dropRef] = useDrop({\n accept: 'column',\n drop: (movingColumn: MRT_Column) => {\n const newColumnOrder = reorderColumn(movingColumn, column, columnOrder);\n setColumnOrder(newColumnOrder);\n },\n });\n\n const [, dragRef, previewRef] = useDrag({\n collect: (monitor) => ({\n isDragging: monitor.isDragging(),\n }),\n item: () => column,\n type: 'column',\n });\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 return (\n <>\n <MenuItem\n ref={columnDefType === 'data' ? dropRef : undefined}\n sx={{\n alignItems: 'center',\n justifyContent: 'flex-start',\n my: 0,\n pl: `${(column.depth + 0.5) * 2}rem`,\n py: '6px',\n }}\n >\n <Box\n ref={previewRef}\n sx={{\n display: 'flex',\n flexWrap: 'nowrap',\n gap: '8px',\n }}\n >\n {columnDefType !== 'group' &&\n enableColumnOrdering &&\n !allColumns.some((col) => col.columnDefType === 'group') &&\n (columnDef.enableColumnOrdering !== false ? (\n <MRT_GrabHandleButton\n ref={dragRef as Ref<HTMLButtonElement>}\n instance={instance}\n />\n ) : (\n <Box sx={{ width: '28px' }} />\n ))}\n {enablePinning &&\n !isSubMenu &&\n (column.getCanPin() ? (\n <MRT_ColumnPinningButtons column={column} instance={instance} />\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 key={`${i}-${c.id}`}\n column={c}\n isSubMenu={isSubMenu}\n instance={instance}\n />\n ))}\n </>\n );\n};\n","import React, { FC, useMemo } from 'react';\nimport { Button, Menu, Divider, Box } from '@mui/material';\nimport { MRT_ShowHideColumnsMenuItems } from './MRT_ShowHideColumnsMenuItems';\nimport type { MRT_Column, MRT_TableInstance } from '..';\nimport { getDefaultColumnOrderIds } from '../utils';\n\ninterface Props {\n anchorEl: HTMLElement | null;\n isSubMenu?: boolean;\n setAnchorEl: (anchorEl: HTMLElement | null) => void;\n instance: MRT_TableInstance;\n}\n\nexport const MRT_ShowHideColumnsMenu: FC<Props> = ({\n anchorEl,\n isSubMenu,\n setAnchorEl,\n instance,\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 } = instance;\n\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.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 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 instance.setColumnOrder(\n getDefaultColumnOrderIds(instance.options as any),\n )\n }\n >\n {localization.resetOrder}\n </Button>\n )}\n {!isSubMenu && enablePinning && (\n <Button\n disabled={!getIsSomeColumnsPinned()}\n onClick={() => instance.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 isSubMenu={isSubMenu}\n key={`${index}-${column.id}`}\n instance={instance}\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 instance: MRT_TableInstance;\n}\n\nexport const MRT_ColumnActionMenu: FC<Props> = ({\n anchorEl,\n header,\n setAnchorEl,\n instance,\n}) => {\n const {\n getState,\n toggleAllColumnsVisible,\n setColumnOrder,\n options: {\n enableColumnFilterChangeMode,\n enableColumnFilters,\n enableColumnResizing,\n enableGrouping,\n enableHiding,\n enablePinning,\n enableSorting,\n enabledColumnFilterOptions,\n icons: {\n ArrowRightIcon,\n ClearAllIcon,\n ViewColumnIcon,\n DynamicFeedIcon,\n FilterListIcon,\n FilterListOffIcon,\n PushPinIcon,\n SortIcon,\n RestartAltIcon,\n VisibilityOffIcon,\n },\n tableId,\n localization,\n },\n setShowFilters,\n } = instance;\n\n const { column } = header;\n\n const { columnDef } = column;\n\n const { columnSizing, columnVisibility, density } = getState();\n\n const [filterMenuAnchorEl, setFilterMenuAnchorEl] =\n useState<null | HTMLElement>(null);\n\n const [showHideColumnsMenuAnchorEl, setShowHideColumnsMenuAnchorEl] =\n useState<null | HTMLElement>(null);\n\n const handleClearSort = () => {\n column.clearSorting();\n setAnchorEl(null);\n };\n\n const handleSortAsc = () => {\n column.toggleSorting(false);\n setAnchorEl(null);\n };\n\n const handleSortDesc = () => {\n column.toggleSorting(true);\n setAnchorEl(null);\n };\n\n const handleResetColumnSize = () => {\n column.resetSize();\n setAnchorEl(null);\n };\n\n const handleHideColumn = () => {\n column.toggleVisibility(false);\n setAnchorEl(null);\n };\n\n const handlePinColumn = (pinDirection: 'left' | 'right' | false) => {\n column.pin(pinDirection);\n setAnchorEl(null);\n };\n\n const handleGroupByColumn = () => {\n column.toggleGrouping();\n setColumnOrder((old) => ['mrt-expand', ...old]);\n setAnchorEl(null);\n };\n\n const handleClearFilter = () => {\n column.setFilterValue('');\n setAnchorEl(null);\n };\n\n const handleFilterByColumn = () => {\n setShowFilters(true);\n setTimeout(\n () =>\n document\n .getElementById(\n // @ts-ignore\n header.muiTableHeadCellFilterTextFieldProps?.id ??\n `mrt-${tableId}-${header.id}-filter-text-field`,\n )\n ?.focus(),\n 200,\n );\n setAnchorEl(null);\n };\n\n const handleShowAllColumns = () => {\n toggleAllColumnsVisible(true);\n setAnchorEl(null);\n };\n\n const handleOpenFilterModeMenu = (event: React.MouseEvent<HTMLElement>) => {\n event.stopPropagation();\n setFilterMenuAnchorEl(event.currentTarget);\n };\n\n const handleOpenShowHideColumnsMenu = (\n event: React.MouseEvent<HTMLElement>,\n ) => {\n event.stopPropagation();\n setShowHideColumnsMenuAnchorEl(event.currentTarget);\n };\n\n const isSelectFilter = !!columnDef.filterSelectOptions;\n\n const allowedColumnFilterOptions =\n columnDef?.enabledColumnFilterOptions ?? enabledColumnFilterOptions;\n\n const showFilterModeSubMenu =\n enableColumnFilterChangeMode &&\n columnDef.enableColumnFilterChangeMode !== false &&\n !isSelectFilter &&\n (allowedColumnFilterOptions === undefined ||\n !!allowedColumnFilterOptions?.length);\n\n return (\n <Menu\n anchorEl={anchorEl}\n open={!!anchorEl}\n onClose={() => setAnchorEl(null)}\n MenuListProps={{\n dense: density === 'compact',\n }}\n >\n {enableSorting &&\n column.getCanSort() && [\n <MenuItem\n disabled={!column.getIsSorted()}\n key={0}\n onClick={handleClearSort}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <ClearAllIcon />\n </ListItemIcon>\n {localization.clearSort}\n </Box>\n </MenuItem>,\n <MenuItem\n disabled={column.getIsSorted() === 'asc'}\n key={1}\n onClick={handleSortAsc}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <SortIcon />\n </ListItemIcon>\n {localization.sortByColumnAsc?.replace(\n '{column}',\n String(columnDef.header),\n )}\n </Box>\n </MenuItem>,\n <MenuItem\n divider={enableColumnFilters || enableGrouping || enableHiding}\n key={2}\n disabled={column.getIsSorted() === 'desc'}\n onClick={handleSortDesc}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <SortIcon style={{ transform: 'rotate(180deg) scaleX(-1)' }} />\n </ListItemIcon>\n {localization.sortByColumnDesc?.replace(\n '{column}',\n String(columnDef.header),\n )}\n </Box>\n </MenuItem>,\n ]}\n {enableColumnFilters &&\n column.getCanFilter() &&\n [\n <MenuItem\n disabled={!column.getFilterValue()}\n key={0}\n onClick={handleClearFilter}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <FilterListOffIcon />\n </ListItemIcon>\n {localization.clearFilter}\n </Box>\n </MenuItem>,\n <MenuItem\n divider={enableGrouping || enableHiding}\n key={1}\n onClick={handleFilterByColumn}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <FilterListIcon />\n </ListItemIcon>\n {localization.filterByColumn?.replace(\n '{column}',\n String(columnDef.header),\n )}\n </Box>\n {showFilterModeSubMenu && (\n <IconButton\n onClick={handleOpenFilterModeMenu}\n onMouseEnter={handleOpenFilterModeMenu}\n size=\"small\"\n sx={{ p: 0 }}\n >\n <ArrowRightIcon />\n </IconButton>\n )}\n </MenuItem>,\n showFilterModeSubMenu && (\n <MRT_FilterOptionMenu\n anchorEl={filterMenuAnchorEl}\n header={header}\n key={2}\n onSelect={handleFilterByColumn}\n setAnchorEl={setFilterMenuAnchorEl}\n instance={instance}\n />\n ),\n ].filter(Boolean)}\n {enableGrouping &&\n column.getCanGroup() && [\n <MenuItem\n divider={enablePinning}\n key={0}\n onClick={handleGroupByColumn}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <DynamicFeedIcon />\n </ListItemIcon>\n {localization[\n column.getIsGrouped() ? 'ungroupByColumn' : 'groupByColumn'\n ]?.replace('{column}', String(columnDef.header))}\n </Box>\n </MenuItem>,\n ]}\n {enablePinning &&\n column.getCanPin() && [\n <MenuItem\n disabled={column.getIsPinned() === 'left' || !column.getCanPin()}\n key={0}\n onClick={() => handlePinColumn('left')}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <PushPinIcon style={{ transform: 'rotate(90deg)' }} />\n </ListItemIcon>\n {localization.pinToLeft}\n </Box>\n </MenuItem>,\n <MenuItem\n disabled={column.getIsPinned() === 'right' || !column.getCanPin()}\n key={1}\n onClick={() => handlePinColumn('right')}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <PushPinIcon style={{ transform: 'rotate(-90deg)' }} />\n </ListItemIcon>\n {localization.pinToRight}\n </Box>\n </MenuItem>,\n <MenuItem\n disabled={!column.getIsPinned()}\n divider={enableHiding}\n key={2}\n onClick={() => handlePinColumn(false)}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <PushPinIcon />\n </ListItemIcon>\n {localization.unpin}\n </Box>\n </MenuItem>,\n ]}\n {enableColumnResizing && [\n <MenuItem\n disabled={!column.getCanResize() || !columnSizing[column.id]}\n key={0}\n onClick={handleResetColumnSize}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <RestartAltIcon />\n </ListItemIcon>\n {localization.resetColumnSize}\n </Box>\n </MenuItem>,\n ]}\n {enableHiding && [\n <MenuItem\n disabled={columnDef.enableHiding === false}\n key={0}\n onClick={handleHideColumn}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <VisibilityOffIcon />\n </ListItemIcon>\n {localization.hideColumn?.replace(\n '{column}',\n String(columnDef.header),\n )}\n </Box>\n </MenuItem>,\n <MenuItem\n disabled={\n !Object.values(columnVisibility).filter((visible) => !visible)\n .length\n }\n key={1}\n onClick={handleShowAllColumns}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <ViewColumnIcon />\n </ListItemIcon>\n {localization.showAllColumns?.replace(\n '{column}',\n String(columnDef.header),\n )}\n </Box>\n <IconButton\n onClick={handleOpenShowHideColumnsMenu}\n onMouseEnter={handleOpenShowHideColumnsMenu}\n size=\"small\"\n sx={{ p: 0 }}\n >\n <ArrowRightIcon />\n </IconButton>\n </MenuItem>,\n <MRT_ShowHideColumnsMenu\n anchorEl={showHideColumnsMenuAnchorEl}\n isSubMenu\n key={2}\n setAnchorEl={setShowHideColumnsMenuAnchorEl}\n instance={instance}\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 instance: MRT_TableInstance;\n}\n\nexport const MRT_RowActionMenu: FC<Props> = ({\n anchorEl,\n handleEdit,\n row,\n setAnchorEl,\n instance,\n}) => {\n const {\n getState,\n options: {\n icons: { EditIcon },\n enableEditing,\n localization,\n renderRowActionMenuItems,\n },\n } = instance;\n\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 instance,\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 instance: MRT_TableInstance;\n}\n\nexport const MRT_EditActionButtons: FC<Props> = ({ row, instance }) => {\n const {\n getState,\n options: {\n icons: { CancelIcon, SaveIcon },\n localization,\n onEditRowSubmit,\n },\n setCurrentEditingRow,\n } = instance;\n\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, instance });\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 instance: MRT_TableInstance;\n}\n\nexport const MRT_ToggleRowActionMenuButton: FC<Props> = ({ row, instance }) => {\n const {\n getState,\n options: {\n enableEditing,\n icons: { EditIcon, MoreHorizIcon },\n localization,\n renderRowActionMenuItems,\n renderRowActions,\n },\n setCurrentEditingRow,\n } = instance;\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, instance })}</>\n ) : row.id === currentEditingRow?.id ? (\n <MRT_EditActionButtons row={row} instance={instance} />\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 instance={instance}\n />\n </>\n ) : null}\n </>\n );\n};\n","import React, { ChangeEvent, FC } from 'react';\nimport { Checkbox, Tooltip } from '@mui/material';\nimport type { MRT_Row, MRT_TableInstance } from '..';\n\ninterface Props {\n row?: MRT_Row;\n selectAll?: boolean;\n instance: MRT_TableInstance;\n}\n\nexport const MRT_SelectCheckbox: FC<Props> = ({ row, selectAll, instance }) => {\n const {\n getRowModel,\n getPaginationRowModel,\n getSelectedRowModel,\n getState,\n options: {\n localization,\n muiSelectCheckboxProps,\n muiSelectAllCheckboxProps,\n onRowSelectionChanged,\n onRowSelectAllChanged,\n selectAllMode,\n },\n } = instance;\n\n const { density } = getState();\n\n const handleSelectChange = (event: ChangeEvent<HTMLInputElement>) => {\n if (selectAll) {\n if (selectAllMode === 'all') {\n instance.getToggleAllRowsSelectedHandler()(event as any);\n } else if (selectAllMode === 'page') {\n instance.getToggleAllPageRowsSelectedHandler()(event as any);\n }\n onRowSelectAllChanged?.({\n event,\n selectedRows: event.target.checked\n ? selectAllMode === 'all'\n ? getRowModel().flatRows\n : getPaginationRowModel().flatRows\n : [],\n instance,\n });\n } else if (row) {\n row?.getToggleSelectedHandler()(event as any);\n onRowSelectionChanged?.({\n event,\n row,\n selectedRows: event.target.checked\n ? [...getSelectedRowModel().flatRows, row]\n : getSelectedRowModel().flatRows.filter(\n (selectedRow) => selectedRow.id !== row.id,\n ),\n instance,\n });\n }\n };\n\n const checkboxProps = selectAll\n ? muiSelectAllCheckboxProps instanceof Function\n ? muiSelectAllCheckboxProps({ instance })\n : muiSelectAllCheckboxProps\n : muiSelectCheckboxProps instanceof Function\n ? muiSelectCheckboxProps({ row: row as MRT_Row, instance })\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 ? instance.getIsAllRowsSelected() : row?.getIsSelected()\n }\n indeterminate={\n selectAll\n ? instance.getIsSomeRowsSelected()\n : row?.getIsSomeSelected()\n }\n inputProps={{\n 'aria-label': selectAll\n ? localization.toggleSelectAll\n : localization.toggleSelectRow,\n }}\n onChange={handleSelectChange}\n size={density === 'compact' ? 'small' : 'medium'}\n {...checkboxProps}\n sx={{\n height: density === 'compact' ? '1.75rem' : '2.25rem',\n width: density === 'compact' ? '1.75rem' : '2.25rem',\n ...checkboxProps?.sx,\n }}\n />\n </Tooltip>\n );\n};\n","import React, { FC, MouseEvent } from 'react';\nimport { IconButton, IconButtonProps, Tooltip } from '@mui/material';\nimport { MRT_TableInstance } from '..';\n\ninterface Props extends IconButtonProps {\n instance: MRT_TableInstance;\n}\n\nexport const MRT_FullScreenToggleButton: FC<Props> = ({\n instance,\n ...rest\n}) => {\n const {\n getState,\n options: {\n icons: { FullscreenExitIcon, FullscreenIcon },\n localization,\n onIsFullScreenChanged,\n },\n setIsFullScreen,\n } = instance;\n\n const { isFullScreen } = getState();\n\n const handleToggleFullScreen = (event: MouseEvent<HTMLButtonElement>) => {\n onIsFullScreenChanged?.({\n event,\n isFullScreen: !isFullScreen,\n instance,\n });\n setIsFullScreen(!isFullScreen);\n };\n\n return (\n <Tooltip arrow title={localization.toggleFullScreen}>\n <IconButton\n aria-label={localization.showHideFilters}\n onClick={handleToggleFullScreen}\n {...rest}\n >\n {isFullScreen ? <FullscreenExitIcon /> : <FullscreenIcon />}\n </IconButton>\n </Tooltip>\n );\n};\n","import React, { FC, MouseEvent, useState } from 'react';\nimport { IconButton, Tooltip, IconButtonProps } from '@mui/material';\nimport { MRT_ShowHideColumnsMenu } from '../menus/MRT_ShowHideColumnsMenu';\nimport { MRT_TableInstance } from '..';\n\ninterface Props extends IconButtonProps {\n instance: MRT_TableInstance;\n}\n\nexport const MRT_ShowHideColumnsButton: FC<Props> = ({ instance, ...rest }) => {\n const {\n options: {\n icons: { ViewColumnIcon },\n localization,\n },\n } = instance;\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 instance={instance}\n />\n </>\n );\n};\n","import React, { FC, MouseEvent } from 'react';\nimport { IconButton, IconButtonProps, Tooltip } from '@mui/material';\nimport { MRT_TableInstance } from '..';\n\ninterface Props extends IconButtonProps {\n instance: MRT_TableInstance;\n}\n\nexport const MRT_ToggleDensePaddingButton: FC<Props> = ({\n instance,\n ...rest\n}) => {\n const {\n getState,\n options: {\n icons: { DensityLargeIcon, DensityMediumIcon, DensitySmallIcon },\n localization,\n onDensityChanged,\n },\n setDensity,\n } = instance;\n\n const { density } = getState();\n\n const handleToggleDensePadding = (event: MouseEvent<HTMLButtonElement>) => {\n const nextDensity =\n density === 'comfortable'\n ? 'compact'\n : density === 'compact'\n ? 'spacious'\n : 'comfortable';\n onDensityChanged?.({\n event,\n density: nextDensity,\n instance,\n });\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, MouseEvent } from 'react';\nimport { IconButton, IconButtonProps, Tooltip } from '@mui/material';\nimport { MRT_TableInstance } from '..';\n\ninterface Props extends IconButtonProps {\n instance: MRT_TableInstance;\n}\n\nexport const MRT_ToggleFiltersButton: FC<Props> = ({ instance, ...rest }) => {\n const {\n getState,\n options: {\n icons: { FilterListIcon, FilterListOffIcon },\n localization,\n onShowFiltersChanged,\n },\n setShowFilters,\n } = instance;\n\n const { showFilters } = getState();\n\n const handleToggleShowFilters = (event: MouseEvent<HTMLButtonElement>) => {\n onShowFiltersChanged?.({\n event,\n showFilters: !showFilters,\n instance,\n });\n setShowFilters(!showFilters);\n };\n\n return (\n <Tooltip arrow title={localization.showHideFilters}>\n <IconButton\n aria-label={localization.showHideFilters}\n onClick={handleToggleShowFilters}\n {...rest}\n >\n {showFilters ? <FilterListOffIcon /> : <FilterListIcon />}\n </IconButton>\n </Tooltip>\n );\n};\n","import React, { FC, MouseEvent } from 'react';\nimport { IconButton, IconButtonProps, Tooltip } from '@mui/material';\nimport { MRT_TableInstance } from '..';\n\ninterface Props extends IconButtonProps {\n instance: MRT_TableInstance;\n}\n\nexport const MRT_ToggleGlobalFilterButton: FC<Props> = ({\n instance,\n ...rest\n}) => {\n const {\n getState,\n options: {\n icons: { SearchIcon, SearchOffIcon },\n tableId,\n localization,\n muiSearchTextFieldProps,\n onShowGlobalFilterChanged,\n },\n setShowGlobalFilter,\n } = instance;\n\n const { showGlobalFilter } = getState();\n\n const textFieldProps =\n muiSearchTextFieldProps instanceof Function\n ? muiSearchTextFieldProps({ instance })\n : muiSearchTextFieldProps;\n\n const handleToggleSearch = (event: MouseEvent<HTMLButtonElement>) => {\n onShowGlobalFilterChanged?.({\n event,\n showGlobalFilter: !showGlobalFilter,\n instance,\n });\n setShowGlobalFilter(!showGlobalFilter);\n setTimeout(\n () =>\n document\n .getElementById(\n textFieldProps?.id ?? `mrt-${tableId}-search-text-field`,\n )\n ?.focus(),\n 200,\n );\n };\n\n return (\n <Tooltip arrow title={localization.showHideSearch}>\n <IconButton onClick={handleToggleSearch} {...rest}>\n {showGlobalFilter ? <SearchOffIcon /> : <SearchIcon />}\n </IconButton>\n </Tooltip>\n );\n};\n","import React, {\n ChangeEvent,\n FC,\n MouseEvent,\n useCallback,\n useState,\n} from 'react';\nimport {\n Collapse,\n debounce,\n IconButton,\n InputAdornment,\n TextField,\n Tooltip,\n} from '@mui/material';\nimport { MRT_FilterOptionMenu } from '../menus/MRT_FilterOptionMenu';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n instance: MRT_TableInstance;\n}\n\nexport const MRT_GlobalFilterTextField: FC<Props> = ({ instance }) => {\n const {\n getState,\n setGlobalFilter,\n options: {\n enableGlobalFilterChangeMode,\n icons: { SearchIcon, CloseIcon },\n localization,\n muiSearchTextFieldProps,\n onGlobalFilterValueChanged,\n onGlobalFilterValueChangedDebounced,\n tableId,\n },\n } = instance;\n\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 onGlobalFilterValueChangedDebounced?.({ event, instance });\n }, 250),\n [],\n );\n\n const handleChange = (event: ChangeEvent<HTMLInputElement>) => {\n setSearchValue(event.target.value);\n handleChangeDebounced(event);\n onGlobalFilterValueChanged?.({ event, instance });\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({ instance })\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 instance={instance}\n />\n </Collapse>\n );\n};\n","import React, { FC } from 'react';\nimport { Box } from '@mui/material';\nimport { MRT_FullScreenToggleButton } from '../buttons/MRT_FullScreenToggleButton';\nimport { MRT_ShowHideColumnsButton } from '../buttons/MRT_ShowHideColumnsButton';\nimport { MRT_ToggleDensePaddingButton } from '../buttons/MRT_ToggleDensePaddingButton';\nimport { MRT_ToggleFiltersButton } from '../buttons/MRT_ToggleFiltersButton';\nimport { MRT_ToggleGlobalFilterButton } from '../buttons/MRT_ToggleGlobalFilterButton';\nimport { MRT_TableInstance } from '..';\nimport { MRT_GlobalFilterTextField } from '../inputs/MRT_GlobalFilterTextField';\n\ninterface Props {\n instance: MRT_TableInstance;\n}\n\nexport const MRT_ToolbarInternalButtons: FC<Props> = ({ instance }) => {\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 } = instance;\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 instance,\n }) ?? (\n <>\n {enableGlobalFilter && positionGlobalFilter === 'right' && (\n <MRT_GlobalFilterTextField instance={instance} />\n )}\n {enableFilters && enableGlobalFilter && (\n <MRT_ToggleGlobalFilterButton instance={instance} />\n )}\n {enableFilters && enableColumnFilters && (\n <MRT_ToggleFiltersButton instance={instance} />\n )}\n {(enableHiding || enableColumnOrdering || enablePinning) && (\n <MRT_ShowHideColumnsButton instance={instance} />\n )}\n {enableDensityToggle && (\n <MRT_ToggleDensePaddingButton instance={instance} />\n )}\n {enableFullScreenToggle && (\n <MRT_FullScreenToggleButton instance={instance} />\n )}\n </>\n )}\n </Box>\n );\n};\n","import React, { ChangeEvent, FC } from 'react';\nimport { TablePagination } from '@mui/material';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n instance: MRT_TableInstance;\n position: 'top' | 'bottom';\n}\n\nexport const MRT_TablePagination: FC<Props> = ({ instance, position }) => {\n const {\n getPrePaginationRowModel,\n getState,\n setPageIndex,\n setPageSize,\n options: {\n muiTablePaginationProps,\n enableToolbarInternalActions,\n rowCount,\n },\n } = instance;\n\n const {\n pagination: { pageSize = 10, pageIndex = 0 },\n showGlobalFilter,\n } = getState();\n\n const tablePaginationProps =\n muiTablePaginationProps instanceof Function\n ? muiTablePaginationProps({ instance })\n : muiTablePaginationProps;\n\n const handleChangeRowsPerPage = (event: ChangeEvent<HTMLInputElement>) => {\n setPageSize(+event.target.value);\n };\n\n const totalRowCount = rowCount ?? getPrePaginationRowModel().rows.length;\n\n const showFirstLastPageButtons = totalRowCount / pageSize > 2;\n\n return (\n <TablePagination\n SelectProps={{\n sx: { m: '0 1rem 0 1ch' },\n MenuProps: { MenuListProps: { disablePadding: true } },\n }}\n component=\"div\"\n count={totalRowCount}\n onPageChange={(_: any, newPage: number) => setPageIndex(newPage)}\n onRowsPerPageChange={handleChangeRowsPerPage}\n page={pageIndex}\n rowsPerPage={pageSize}\n rowsPerPageOptions={[5, 10, 15, 20, 25, 30, 50, 100]}\n showFirstButton={showFirstLastPageButtons}\n showLastButton={showFirstLastPageButtons}\n {...tablePaginationProps}\n sx={{\n m: '0 0.5rem',\n mt:\n position === 'top' &&\n enableToolbarInternalActions &&\n !showGlobalFilter\n ? '3.5rem'\n : undefined,\n position: 'relative',\n zIndex: 2,\n ...tablePaginationProps?.sx,\n }}\n />\n );\n};\n","import React, { FC, Fragment } from 'react';\nimport { Alert, Box, Chip, Collapse } from '@mui/material';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n stackAlertBanner?: boolean;\n instance: MRT_TableInstance;\n}\n\nexport const MRT_ToolbarAlertBanner: FC<Props> = ({\n stackAlertBanner,\n instance,\n}) => {\n const {\n getPrePaginationRowModel,\n getSelectedRowModel,\n getState,\n options: { localization, muiTableToolbarAlertBannerProps },\n } = instance;\n\n const { grouping } = getState();\n\n const alertProps =\n muiTableToolbarAlertBannerProps instanceof Function\n ? muiTableToolbarAlertBannerProps({ instance })\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={instance.getColumn(columnId).columnDef.header}\n onDelete={() => instance.getColumn(columnId).toggleGrouping()}\n />\n </Fragment>\n ))}\n </span>\n ) : null;\n\n return (\n <Collapse\n in={!!selectMessage || !!groupedByMessage}\n timeout={stackAlertBanner ? 200 : 0}\n >\n <Alert\n color=\"info\"\n icon={false}\n sx={{\n borderRadius: 0,\n fontSize: '1rem',\n left: 0,\n p: 0,\n position: 'relative',\n right: 0,\n top: 0,\n width: '100%',\n zIndex: 2,\n ...alertProps?.sx,\n }}\n {...alertProps}\n >\n <Box sx={{ p: '0.5rem 1rem' }}>\n {selectMessage}\n {selectMessage && groupedByMessage && <br />}\n {groupedByMessage}\n </Box>\n </Alert>\n </Collapse>\n );\n};\n","import React, { FC } from 'react';\nimport { Collapse, LinearProgress } from '@mui/material';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n alignTo: 'bottom' | 'top';\n instance: MRT_TableInstance;\n}\n\nexport const MRT_LinearProgressBar: FC<Props> = ({ alignTo, instance }) => {\n const {\n options: { muiLinearProgressProps },\n getState,\n } = instance;\n\n const { isLoading, showProgressBars } = getState();\n\n const linearProgressProps =\n muiLinearProgressProps instanceof Function\n ? muiLinearProgressProps({ instance })\n : muiLinearProgressProps;\n\n return (\n <Collapse\n in={isLoading || showProgressBars}\n mountOnEnter\n unmountOnExit\n sx={{\n bottom: alignTo === 'bottom' ? 0 : undefined,\n position: 'absolute',\n top: alignTo === 'top' ? 0 : undefined,\n width: '100%',\n }}\n >\n <LinearProgress\n aria-label=\"Loading\"\n aria-busy=\"true\"\n sx={{ position: 'relative' }}\n {...linearProgressProps}\n />\n </Collapse>\n );\n};\n","import React, { FC } from 'react';\nimport { Box, lighten, Theme, Toolbar, useMediaQuery } from '@mui/material';\nimport { MRT_ToolbarInternalButtons } from './MRT_ToolbarInternalButtons';\nimport { MRT_TablePagination } from './MRT_TablePagination';\nimport { MRT_ToolbarAlertBanner } from './MRT_ToolbarAlertBanner';\nimport { MRT_LinearProgressBar } from './MRT_LinearProgressBar';\nimport { MRT_TableInstance } from '..';\nimport { MRT_GlobalFilterTextField } from '../inputs/MRT_GlobalFilterTextField';\n\nexport const commonToolbarStyles = ({ theme }: { theme: Theme }) => ({\n backgroundColor: lighten(theme.palette.background.default, 0.04),\n backgroundImage: 'none',\n display: 'grid',\n minHeight: '3.5rem',\n overflow: 'hidden',\n p: '0 !important',\n transition: 'all 0.2s ease-in-out',\n zIndex: 1,\n});\n\ninterface Props {\n instance: MRT_TableInstance;\n}\n\nexport const MRT_ToolbarTop: FC<Props> = ({ instance }) => {\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 } = instance;\n\n const { isFullScreen, showGlobalFilter } = getState();\n\n const isMobile = useMediaQuery('(max-width:720px)');\n\n const toolbarProps =\n muiTableToolbarTopProps instanceof Function\n ? muiTableToolbarTopProps({ instance })\n : muiTableToolbarTopProps;\n\n const stackAlertBanner =\n isMobile ||\n (positionToolbarAlertBanner === 'top' &&\n (!!renderToolbarTopCustomActions || showGlobalFilter));\n\n return (\n <Toolbar\n id={`mrt-${tableId}-toolbar-top`}\n variant=\"dense\"\n {...toolbarProps}\n sx={(theme) =>\n ({\n position: isFullScreen ? 'sticky' : undefined,\n top: isFullScreen ? '0' : undefined,\n ...commonToolbarStyles({ theme }),\n ...toolbarProps?.sx,\n } as any)\n }\n >\n {positionToolbarAlertBanner === 'top' && (\n <MRT_ToolbarAlertBanner\n stackAlertBanner={stackAlertBanner}\n instance={instance}\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 instance={instance} />\n )}\n\n {renderToolbarTopCustomActions?.({ instance }) ?? <span />}\n {enableToolbarInternalActions ? (\n <MRT_ToolbarInternalButtons instance={instance} />\n ) : (\n enableGlobalFilter &&\n positionGlobalFilter === 'right' && (\n <MRT_GlobalFilterTextField instance={instance} />\n )\n )}\n </Box>\n {enablePagination &&\n ['top', 'both'].includes(positionPagination ?? '') && (\n <MRT_TablePagination instance={instance} position=\"top\" />\n )}\n <MRT_LinearProgressBar alignTo=\"bottom\" instance={instance} />\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 instance: MRT_TableInstance;\n}\n\nexport const MRT_ToolbarBottom: FC<Props> = ({ instance }) => {\n const {\n getState,\n options: {\n enablePagination,\n muiTableToolbarBottomProps,\n positionPagination,\n positionToolbarAlertBanner,\n renderToolbarBottomCustomActions,\n tableId,\n },\n } = instance;\n\n const { isFullScreen } = getState();\n\n const isMobile = useMediaQuery('(max-width:720px)');\n\n const toolbarProps =\n muiTableToolbarBottomProps instanceof Function\n ? muiTableToolbarBottomProps({ instance })\n : muiTableToolbarBottomProps;\n\n const stackAlertBanner =\n isMobile ||\n (positionToolbarAlertBanner === 'bottom' &&\n !!renderToolbarBottomCustomActions);\n\n return (\n <Toolbar\n id={`mrt-${tableId}-toolbar-bottom`}\n variant=\"dense\"\n {...toolbarProps}\n sx={(theme) =>\n ({\n ...commonToolbarStyles({ theme }),\n bottom: isFullScreen ? '0' : undefined,\n boxShadow: `-3px 0 6px ${alpha(theme.palette.common.black, 0.1)}`,\n left: 0,\n position: isFullScreen ? 'fixed' : 'relative',\n right: 0,\n ...toolbarProps?.sx,\n } as any)\n }\n >\n <MRT_LinearProgressBar alignTo=\"top\" instance={instance} />\n {positionToolbarAlertBanner === 'bottom' && (\n <MRT_ToolbarAlertBanner instance={instance} />\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({ instance })}\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 instance={instance} position=\"bottom\" />\n )}\n </Box>\n </Box>\n </Toolbar>\n );\n};\n","import React, {\n ChangeEvent,\n FC,\n MouseEvent,\n useCallback,\n useState,\n} from 'react';\nimport {\n Chip,\n debounce,\n IconButton,\n InputAdornment,\n MenuItem,\n TextField,\n TextFieldProps,\n Tooltip,\n} from '@mui/material';\nimport { MRT_FilterOptionMenu } from '../menus/MRT_FilterOptionMenu';\nimport type { MRT_Header, MRT_TableInstance } from '..';\n\ninterface Props {\n header: MRT_Header;\n inputIndex?: number;\n instance: MRT_TableInstance;\n}\n\nexport const MRT_FilterTextField: FC<Props> = ({\n header,\n inputIndex,\n instance,\n}) => {\n const {\n getState,\n options: {\n enableColumnFilterChangeMode,\n enabledColumnFilterOptions,\n icons: { FilterListIcon, CloseIcon },\n localization,\n muiTableHeadCellFilterTextFieldProps,\n onColumnFilterValueChanged,\n onColumnFilterValueChangedDebounced,\n tableId,\n },\n setCurrentFilterFns,\n } = instance;\n\n const { column } = header;\n\n const { columnDef } = column;\n\n const { currentFilterFns } = getState();\n\n const [anchorEl, setAnchorEl] = useState<null | HTMLElement>(null);\n\n const mTableHeadCellFilterTextFieldProps =\n muiTableHeadCellFilterTextFieldProps instanceof Function\n ? muiTableHeadCellFilterTextFieldProps({ column, instance })\n : muiTableHeadCellFilterTextFieldProps;\n\n const mcTableHeadCellFilterTextFieldProps =\n columnDef.muiTableHeadCellFilterTextFieldProps instanceof Function\n ? columnDef.muiTableHeadCellFilterTextFieldProps({\n column,\n instance,\n })\n : columnDef.muiTableHeadCellFilterTextFieldProps;\n\n const textFieldProps = {\n ...mTableHeadCellFilterTextFieldProps,\n ...mcTableHeadCellFilterTextFieldProps,\n } as TextFieldProps;\n\n const [filterValue, setFilterValue] = useState<string>(() =>\n inputIndex !== undefined\n ? (column.getFilterValue() as [string, string])?.[inputIndex] ?? ''\n : (column.getFilterValue() as string) ?? '',\n );\n\n const handleChangeDebounced = useCallback(\n debounce((event: ChangeEvent<HTMLInputElement>) => {\n if (inputIndex !== undefined) {\n column.setFilterValue((old: [string, string]) => {\n const newFilterValues = old ?? ['', ''];\n newFilterValues[inputIndex] = event.target.value;\n return newFilterValues;\n });\n } else {\n column.setFilterValue(event.target.value ?? undefined);\n }\n onColumnFilterValueChangedDebounced?.({\n column,\n event,\n filterValue: event.target.value,\n instance,\n });\n columnDef.onColumnFilterValueChangedDebounced?.({\n column,\n event,\n filterValue: event.target.value,\n instance,\n });\n }, 200),\n [],\n );\n\n const handleChange = (event: ChangeEvent<HTMLInputElement>) => {\n setFilterValue(event.target.value);\n handleChangeDebounced(event);\n onColumnFilterValueChanged?.({\n column,\n event,\n filterValue: event.target.value,\n instance,\n });\n columnDef.onColumnFilterValueChanged?.({\n column,\n event,\n filterValue: event.target.value,\n instance,\n });\n };\n\n const handleFilterMenuOpen = (event: MouseEvent<HTMLElement>) => {\n setAnchorEl(event.currentTarget);\n };\n\n const handleClear = () => {\n setFilterValue('');\n if (inputIndex !== undefined) {\n column.setFilterValue((old: [string | undefined, string | undefined]) => {\n const newFilterValues = old ?? ['', ''];\n newFilterValues[inputIndex] = undefined;\n return newFilterValues;\n });\n } else {\n column.setFilterValue(undefined);\n }\n };\n\n const handleClearFilterChip = () => {\n setFilterValue('');\n column.setFilterValue(undefined);\n setCurrentFilterFns((prev) => ({\n ...prev,\n [header.id]: 'fuzzy',\n }));\n };\n\n if (columnDef.Filter) {\n return <>{columnDef.Filter?.({ header, instance })}</>;\n }\n\n const filterId = `mrt-${tableId}-${header.id}-filter-text-field${\n inputIndex ?? ''\n }`;\n const filterFn = currentFilterFns?.[header.id];\n const isSelectFilter = !!columnDef.filterSelectOptions;\n const filterChipLabel =\n !(filterFn instanceof Function) && ['empty', 'notEmpty'].includes(filterFn)\n ? //@ts-ignore\n localization[\n `filter${filterFn.charAt(0).toUpperCase() + filterFn.slice(1)}`\n ]\n : '';\n const filterPlaceholder =\n inputIndex === undefined\n ? localization.filterByColumn?.replace(\n '{column}',\n String(columnDef.header),\n )\n : inputIndex === 0\n ? localization.min\n : inputIndex === 1\n ? localization.max\n : '';\n\n const allowedColumnFilterOptions =\n columnDef?.enabledColumnFilterOptions ?? enabledColumnFilterOptions;\n\n const showChangeModeButton =\n enableColumnFilterChangeMode &&\n columnDef.enableColumnFilterChangeMode !== false &&\n !isSelectFilter &&\n !inputIndex &&\n (allowedColumnFilterOptions === undefined ||\n !!allowedColumnFilterOptions?.length);\n\n return (\n <>\n <TextField\n fullWidth\n id={filterId}\n inputProps={{\n disabled: !!filterChipLabel,\n sx: {\n textOverflow: 'ellipsis',\n width: filterChipLabel ? 0 : undefined,\n },\n title: filterPlaceholder,\n }}\n helperText={\n showChangeModeButton ? (\n <label htmlFor={filterId}>\n {filterFn instanceof Function\n ? localization.filterMode.replace(\n '{filterType}',\n // @ts-ignore\n localization[\n `filter${\n filterFn.name.charAt(0).toUpperCase() +\n filterFn.name.slice(1)\n }`\n ] ?? '',\n ) ?? ''\n : localization.filterMode.replace(\n '{filterType}',\n // @ts-ignore\n localization[\n `filter${\n filterFn.charAt(0).toUpperCase() + filterFn.slice(1)\n }`\n ],\n )}\n </label>\n ) : null\n }\n FormHelperTextProps={{\n sx: {\n fontSize: '0.6rem',\n lineHeight: '0.8rem',\n whiteSpace: 'nowrap',\n },\n }}\n margin=\"none\"\n placeholder={\n filterChipLabel || isSelectFilter ? undefined : filterPlaceholder\n }\n onChange={handleChange}\n onClick={(e: MouseEvent<HTMLInputElement>) => e.stopPropagation()}\n select={isSelectFilter}\n value={filterValue ?? ''}\n variant=\"standard\"\n InputProps={{\n startAdornment: showChangeModeButton ? (\n <InputAdornment position=\"start\">\n <Tooltip arrow title={localization.changeFilterMode}>\n <span>\n <IconButton\n aria-label={localization.changeFilterMode}\n onClick={handleFilterMenuOpen}\n size=\"small\"\n sx={{ height: '1.75rem', width: '1.75rem' }}\n >\n <FilterListIcon />\n </IconButton>\n </span>\n </Tooltip>\n {filterChipLabel && (\n <Chip\n onDelete={handleClearFilterChip}\n label={filterChipLabel}\n />\n )}\n </InputAdornment>\n ) : (\n <FilterListIcon />\n ),\n endAdornment: !filterChipLabel && (\n <InputAdornment position=\"end\">\n <Tooltip\n arrow\n disableHoverListener={isSelectFilter}\n placement=\"right\"\n title={localization.clearFilter ?? ''}\n >\n <span>\n <IconButton\n aria-label={localization.clearFilter}\n disabled={!filterValue?.length}\n onClick={handleClear}\n size=\"small\"\n sx={{\n height: '1.75rem',\n width: '1.75rem',\n }}\n >\n <CloseIcon />\n </IconButton>\n </span>\n </Tooltip>\n </InputAdornment>\n ),\n }}\n {...textFieldProps}\n sx={{\n m: '-0.25rem',\n p: 0,\n minWidth: !filterChipLabel ? '8rem' : 'auto',\n width: 'calc(100% + 0.5rem)',\n '&\t.MuiSelect-icon': {\n mr: '1.5rem',\n },\n ...textFieldProps?.sx,\n }}\n >\n {isSelectFilter && (\n <MenuItem divider disabled={!filterValue} value=\"\">\n {localization.clearFilter}\n </MenuItem>\n )}\n {columnDef?.filterSelectOptions?.map((option) => {\n let value;\n let text;\n if (typeof option === 'string') {\n value = option;\n text = option;\n } else if (typeof option === 'object') {\n value = option.value;\n text = option.text;\n }\n return (\n <MenuItem key={value} value={value}>\n {text}\n </MenuItem>\n );\n })}\n </TextField>\n <MRT_FilterOptionMenu\n anchorEl={anchorEl}\n header={header}\n setAnchorEl={setAnchorEl}\n instance={instance}\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 instance: MRT_TableInstance;\n}\n\nexport const MRT_FilterRangeFields: FC<Props> = ({ header, instance }) => {\n return (\n <Box sx={{ display: 'grid', gridTemplateColumns: '6fr 6fr', gap: '1rem' }}>\n <MRT_FilterTextField header={header} inputIndex={0} instance={instance} />\n <MRT_FilterTextField header={header} inputIndex={1} instance={instance} />\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 instance: MRT_TableInstance;\n}\n\nexport const MRT_TableHeadCellFilterContainer: FC<Props> = ({\n header,\n instance,\n}) => {\n const { getState } = instance;\n\n const { currentFilterFns, showFilters } = getState();\n\n const { column } = header;\n\n return (\n <Collapse in={showFilters} mountOnEnter unmountOnExit>\n {currentFilterFns[column.id] === 'between' ? (\n <MRT_FilterRangeFields header={header} instance={instance} />\n ) : (\n <MRT_FilterTextField header={header} instance={instance} />\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 instance: MRT_TableInstance;\n}\n\nexport const MRT_TableHeadCellFilterLabel: FC<Props> = ({\n header,\n instance,\n}) => {\n const {\n getState,\n options: {\n icons: { FilterAltIcon },\n localization,\n },\n } = instance;\n\n const { currentFilterFns } = getState();\n\n const { column } = header;\n\n const { columnDef } = column;\n\n const filterFn = currentFilterFns?.[header.id];\n\n const filterTooltip = localization.filteringByColumn\n .replace('{column}', String(columnDef.header))\n .replace(\n '{filterType}',\n filterFn instanceof Function\n ? ''\n : // @ts-ignore\n localization[\n `filter${filterFn.charAt(0).toUpperCase() + filterFn.slice(1)}`\n ],\n )\n .replace(\n '{filterValue}',\n `\"${\n Array.isArray(column.getFilterValue())\n ? (column.getFilterValue() as [string, string]).join(\n `\" ${localization.and} \"`,\n )\n : (column.getFilterValue() as string)\n }\"`,\n )\n .replace('\" \"', '');\n\n return (\n <Grow\n unmountOnExit\n in={\n (!!column.getFilterValue() && filterFn !== 'between') ||\n (filterFn === '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, { FC } from 'react';\nimport { Divider, Theme } from '@mui/material';\nimport { MRT_Header, MRT_TableInstance } from '..';\n\ninterface Props {\n header: MRT_Header;\n instance: MRT_TableInstance;\n}\n\nexport const MRT_TableHeadCellResizeHandle: FC<Props> = ({\n header,\n instance,\n}) => {\n const { getState } = instance;\n\n const { showFilters } = getState();\n\n const { column } = header;\n\n const { columnDefType } = column;\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: showFilters && columnDefType === 'data' ? '4rem' : '2rem',\n opacity: 0.8,\n position: 'absolute',\n mr: '-1rem',\n right: '1px',\n touchAction: 'none',\n transition: column.getIsResizing() ? undefined : 'all 0.2s ease-in-out',\n userSelect: 'none',\n '&:active': {\n backgroundColor: theme.palette.info.main,\n opacity: 1,\n },\n })}\n onMouseDown={header.getResizeHandler()}\n onTouchStart={header.getResizeHandler()}\n style={{\n transform: column.getIsResizing()\n ? `translateX(${getState().columnSizingInfo.deltaOffset}px)`\n : 'none',\n }}\n />\n );\n};\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 instance: MRT_TableInstance;\n}\n\nexport const MRT_TableHeadCellSortLabel: FC<Props> = ({ header, instance }) => {\n const {\n options: { localization },\n } = instance;\n\n const { column } = header;\n\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, { 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 instance: MRT_TableInstance;\n}\n\nexport const MRT_TableHeadCellColumnActionsButton: FC<Props> = ({\n header,\n instance,\n}) => {\n const {\n options: {\n icons: { MoreVertIcon },\n localization,\n muiTableHeadCellColumnActionsButtonProps,\n },\n } = instance;\n\n const { column } = header;\n\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, instance })\n : muiTableHeadCellColumnActionsButtonProps;\n\n const mcTableHeadCellColumnActionsButtonProps =\n columnDef.muiTableHeadCellColumnActionsButtonProps instanceof Function\n ? columnDef.muiTableHeadCellColumnActionsButtonProps({\n column,\n instance,\n })\n : columnDef.muiTableHeadCellColumnActionsButtonProps;\n\n const iconButtonProps = {\n ...mTableHeadCellColumnActionsButtonProps,\n ...mcTableHeadCellColumnActionsButtonProps,\n };\n\n return (\n <>\n <Tooltip\n arrow\n enterDelay={1000}\n enterNextDelay={1000}\n placement=\"top\"\n title={localization.columnActions}\n >\n <IconButton\n aria-label={localization.columnActions}\n onClick={handleClick}\n size=\"small\"\n {...iconButtonProps}\n sx={{\n height: '2rem',\n mt: '-0.2rem',\n opacity: 0.5,\n transition: 'opacity 0.2s',\n width: '2rem',\n '&:hover': {\n opacity: 1,\n },\n ...iconButtonProps.sx,\n }}\n >\n <MoreVertIcon />\n </IconButton>\n </Tooltip>\n <MRT_ColumnActionMenu\n anchorEl={anchorEl}\n header={header}\n setAnchorEl={setAnchorEl}\n instance={instance}\n />\n </>\n );\n};\n","import React, { FC, ReactNode, Ref } from 'react';\nimport { Box, TableCell, Theme, alpha, lighten } from '@mui/material';\nimport { MRT_TableHeadCellFilterContainer } from './MRT_TableHeadCellFilterContainer';\nimport { MRT_TableHeadCellFilterLabel } from './MRT_TableHeadCellFilterLabel';\nimport { MRT_GrabHandleButton } from '../buttons/MRT_GrabHandleButton';\nimport { MRT_TableHeadCellResizeHandle } from './MRT_TableHeadCellResizeHandle';\nimport { MRT_TableHeadCellSortLabel } from './MRT_TableHeadCellSortLabel';\nimport { MRT_TableHeadCellColumnActionsButton } from './MRT_TableHeadCellColumnActionsButton';\nimport type { MRT_Header, MRT_TableInstance } from '..';\n\ninterface Props {\n dragRef?: Ref<HTMLButtonElement>;\n dropRef?: Ref<HTMLDivElement>;\n header: MRT_Header;\n instance: MRT_TableInstance;\n isDragging?: boolean;\n previewRef?: Ref<HTMLTableCellElement>;\n}\n\nexport const MRT_TableHeadCell: FC<Props> = ({\n dragRef,\n dropRef,\n header,\n instance,\n isDragging,\n previewRef,\n}) => {\n const {\n getState,\n options: {\n enableColumnActions,\n enableColumnOrdering,\n enableColumnResizing,\n enableGrouping,\n enableMultiSort,\n muiTableHeadCellProps,\n },\n } = instance;\n\n const { density, showFilters } = getState();\n\n const { column } = header;\n\n const { columnDef, columnDefType } = column;\n\n const mTableHeadCellProps =\n muiTableHeadCellProps instanceof Function\n ? muiTableHeadCellProps({ column, instance })\n : muiTableHeadCellProps;\n\n const mcTableHeadCellProps =\n columnDef.muiTableHeadCellProps instanceof Function\n ? columnDef.muiTableHeadCellProps({ column, instance })\n : columnDef.muiTableHeadCellProps;\n\n const tableCellProps = {\n ...mTableHeadCellProps,\n ...mcTableHeadCellProps,\n };\n\n const headerElement = ((columnDef?.Header instanceof Function\n ? columnDef?.Header?.({\n header,\n instance,\n })\n : columnDef?.Header) ??\n header.renderHeader() ??\n columnDef.header) as ReactNode;\n\n const getIsLastLeftPinnedColumn = () => {\n return (\n column.getIsPinned() === 'left' &&\n instance.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 (instance.getRightLeafHeaders().length - 1 - column.getPinnedIndex()) *\n 150\n );\n };\n\n return (\n <TableCell\n align={columnDefType === 'group' ? 'center' : 'left'}\n colSpan={header.colSpan}\n {...tableCellProps}\n ref={\n columnDefType === 'data' && enableColumnOrdering ? dropRef : undefined\n }\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 height: '100%',\n left:\n column.getIsPinned() === 'left'\n ? `${column.getStart('left')}px`\n : undefined,\n overflow: 'visible',\n p:\n density === 'compact'\n ? columnDefType === 'display'\n ? '0 0.5rem'\n : '0.5rem'\n : density === 'comfortable'\n ? columnDefType === 'display'\n ? '0.5rem 0.75rem'\n : '1rem'\n : columnDefType === 'display'\n ? '1rem 1.25rem'\n : '1.5rem',\n pb: columnDefType === 'display' ? 0 : undefined,\n position:\n column.getIsPinned() && columnDefType !== 'group'\n ? 'sticky'\n : undefined,\n pt:\n columnDefType !== 'data'\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 ? 'none' : undefined,\n verticalAlign:\n columnDefType === 'display' && showFilters ? 'center' : 'text-top',\n zIndex: column.getIsResizing()\n ? 3\n : column.getIsPinned() && columnDefType !== 'group'\n ? 2\n : 1,\n ...(tableCellProps?.sx as any),\n maxWidth: `min(${column.getSize()}px, fit-content)`,\n minWidth: `max(${column.getSize()}px, ${columnDef.minSize ?? 30}px)`,\n width: header.getSize(),\n })}\n >\n {header.isPlaceholder ? null : columnDefType === 'display' ? (\n headerElement\n ) : (\n <Box\n ref={previewRef}\n sx={{\n alignItems: 'flex-start',\n display: 'flex',\n justifyContent:\n columnDefType === 'group' ? 'center' : 'space-between',\n opacity: isDragging ? 0.5 : 1,\n position: 'relative',\n width: '100%',\n }}\n >\n <Box\n onClick={column.getToggleSortingHandler()}\n sx={{\n alignItems: 'center',\n cursor:\n column.getCanSort() && columnDefType !== 'group'\n ? 'pointer'\n : undefined,\n display: 'flex',\n flexWrap: 'nowrap',\n whiteSpace:\n (columnDef.header?.length ?? 0) < 24 ? 'nowrap' : 'normal',\n }}\n >\n {headerElement}\n {columnDefType === 'data' && column.getCanSort() && (\n <MRT_TableHeadCellSortLabel header={header} instance={instance} />\n )}\n {columnDefType === 'data' && column.getCanFilter() && (\n <MRT_TableHeadCellFilterLabel\n header={header}\n instance={instance}\n />\n )}\n </Box>\n <Box sx={{ whiteSpace: 'nowrap' }}>\n {columnDefType === 'data' &&\n ((enableColumnOrdering &&\n columnDef.enableColumnOrdering !== false) ||\n (enableGrouping && columnDef.enableGrouping !== false)) && (\n <MRT_GrabHandleButton\n ref={dragRef as Ref<HTMLButtonElement>}\n instance={instance}\n />\n )}\n {(enableColumnActions || columnDef.enableColumnActions) &&\n columnDef.enableColumnActions !== false &&\n columnDefType !== 'group' && (\n <MRT_TableHeadCellColumnActionsButton\n header={header}\n instance={instance}\n />\n )}\n </Box>\n {column.getCanResize() && (\n <MRT_TableHeadCellResizeHandle\n header={header}\n instance={instance}\n />\n )}\n </Box>\n )}\n {columnDefType === 'data' && column.getCanFilter() && (\n <MRT_TableHeadCellFilterContainer header={header} instance={instance} />\n )}\n </TableCell>\n );\n};\n","import React, { FC } from 'react';\nimport { useDrag, useDrop } from 'react-dnd';\nimport { MRT_TableHeadCell } from './MRT_TableHeadCell';\nimport type { MRT_Column, MRT_Header, MRT_TableInstance } from '..';\nimport { reorderColumn } from '../utils';\n\ninterface Props {\n header: MRT_Header;\n instance: MRT_TableInstance;\n}\n\nexport const MRT_DraggableTableHeadCell: FC<Props> = ({ header, instance }) => {\n const { getState, setColumnOrder } = instance;\n\n const { columnOrder } = getState();\n\n const { column } = header;\n\n const [, dropRef] = useDrop({\n accept: 'column',\n drop: (movingColumn: MRT_Column) => {\n const newColumnOrder = reorderColumn(movingColumn, column, columnOrder);\n setColumnOrder(newColumnOrder);\n },\n });\n\n const [{ isDragging }, dragRef, previewRef] = useDrag({\n collect: (monitor) => ({\n isDragging: monitor.isDragging(),\n }),\n item: () => column,\n type: 'column',\n });\n\n return (\n <MRT_TableHeadCell\n dragRef={dragRef}\n dropRef={dropRef}\n header={header}\n isDragging={isDragging}\n previewRef={previewRef}\n instance={instance}\n />\n );\n};\n","import React, { FC } from 'react';\nimport { alpha, lighten, TableRow } from '@mui/material';\nimport { MRT_TableHeadCell } from './MRT_TableHeadCell';\nimport { MRT_DraggableTableHeadCell } from './MRT_DraggableTableHeadCell';\nimport type { MRT_Header, MRT_HeaderGroup, MRT_TableInstance } from '..';\n\ninterface Props {\n headerGroup: MRT_HeaderGroup;\n instance: MRT_TableInstance;\n}\n\nexport const MRT_TableHeadRow: FC<Props> = ({ headerGroup, instance }) => {\n const {\n options: { enableColumnOrdering, enableGrouping, muiTableHeadRowProps },\n } = instance;\n\n const tableRowProps =\n muiTableHeadRowProps instanceof Function\n ? muiTableHeadRowProps({ headerGroup, instance })\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 enableColumnOrdering || enableGrouping ? (\n <MRT_DraggableTableHeadCell\n header={header}\n key={header.id || index}\n instance={instance}\n />\n ) : (\n <MRT_TableHeadCell\n header={header}\n key={header.id || index}\n instance={instance}\n />\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 instance: MRT_TableInstance;\n}\n\nexport const MRT_TableHead: FC<Props> = ({ instance }) => {\n const {\n getHeaderGroups,\n options: { muiTableHeadProps },\n } = instance;\n\n const tableHeadProps =\n muiTableHeadProps instanceof Function\n ? muiTableHeadProps({ instance })\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 instance={instance}\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 instance: MRT_TableInstance;\n}\n\nexport const MRT_EditCellTextField: FC<Props> = ({ cell, instance }) => {\n const {\n getState,\n options: {\n tableId,\n enableEditing,\n muiTableBodyCellEditTextFieldProps,\n onCellEditBlur,\n onCellEditChanged,\n },\n setCurrentEditingCell,\n setCurrentEditingRow,\n } = instance;\n\n const [value, setValue] = useState(cell.getValue());\n\n const { column, row } = cell;\n\n const { columnDef } = column;\n\n const handleChange = (event: ChangeEvent<HTMLInputElement>) => {\n setValue(event.target.value);\n columnDef.onCellEditChanged?.({ event, cell, instance });\n onCellEditChanged?.({ event, cell, instance });\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, instance });\n onCellEditBlur?.({ event, cell, instance });\n };\n\n const mTableBodyCellEditTextFieldProps =\n muiTableBodyCellEditTextFieldProps instanceof Function\n ? muiTableBodyCellEditTextFieldProps({ cell, instance })\n : muiTableBodyCellEditTextFieldProps;\n\n const mcTableBodyCellEditTextFieldProps =\n columnDef.muiTableBodyCellEditTextFieldProps instanceof Function\n ? columnDef.muiTableBodyCellEditTextFieldProps({\n cell,\n instance,\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, instance })}</>;\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 instance: MRT_TableInstance;\n}\n\nexport const MRT_CopyButton: FC<Props> = ({ cell, children, instance }) => {\n const {\n options: { localization, muiTableBodyCellCopyButtonProps },\n } = instance;\n\n const { column } = cell;\n\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, instance })\n : muiTableBodyCellCopyButtonProps;\n\n const mcTableBodyCellCopyButtonProps =\n columnDef.muiTableBodyCellCopyButtonProps instanceof Function\n ? columnDef.muiTableBodyCellCopyButtonProps({\n cell,\n instance,\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 aria-label={localization.clickToCopy}\n onClick={() => handleCopy(cell.getValue())}\n size=\"small\"\n type=\"button\"\n variant=\"text\"\n {...buttonProps}\n sx={{\n backgroundColor: 'transparent',\n border: 'none',\n color: 'inherit',\n cursor: 'copy',\n fontFamily: 'inherit',\n fontSize: 'inherit',\n letterSpacing: 'inherit',\n m: '-0.25rem',\n minWidth: 'unset',\n textAlign: 'inherit',\n textTransform: 'inherit',\n ...buttonProps?.sx,\n }}\n >\n {children}\n </Button>\n </Tooltip>\n );\n};\n","import React, { FC, MouseEvent, useMemo } from 'react';\nimport { useDrop } from 'react-dnd';\nimport { alpha, darken, lighten, Skeleton, TableCell } from '@mui/material';\nimport { MRT_EditCellTextField } from '../inputs/MRT_EditCellTextField';\nimport { MRT_CopyButton } from '../buttons/MRT_CopyButton';\nimport { reorderColumn } from '../utils';\nimport type { MRT_Cell, MRT_Column, MRT_TableInstance } from '..';\n\ninterface Props {\n cell: MRT_Cell;\n enableHover?: boolean;\n rowIndex: number;\n instance: MRT_TableInstance;\n}\n\nexport const MRT_TableBodyCell: FC<Props> = ({\n cell,\n enableHover,\n rowIndex,\n instance,\n}) => {\n const {\n getState,\n options: {\n editingMode,\n enableClickToCopy,\n enableColumnOrdering,\n enableEditing,\n enableRowNumbers,\n muiTableBodyCellProps,\n muiTableBodyCellSkeletonProps,\n onCellClick,\n onRowClick,\n rowNumberMode,\n tableId,\n },\n setColumnOrder,\n setCurrentEditingCell,\n } = instance;\n\n const {\n columnOrder,\n currentEditingCell,\n currentEditingRow,\n density,\n isLoading,\n showSkeletons,\n } = getState();\n\n const { column, row } = cell;\n\n const { columnDef, columnDefType } = column;\n\n const [, dropRef] = useDrop({\n accept: 'column',\n drop: (movingColumn: MRT_Column) => {\n const newColumnOrder = reorderColumn(movingColumn, column, columnOrder);\n setColumnOrder(newColumnOrder);\n },\n });\n\n const mTableCellBodyProps =\n muiTableBodyCellProps instanceof Function\n ? muiTableBodyCellProps({ cell, instance })\n : muiTableBodyCellProps;\n\n const mcTableCellBodyProps =\n columnDef.muiTableBodyCellProps instanceof Function\n ? columnDef.muiTableBodyCellProps({ cell, instance })\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 [columnDefType, column.getSize()],\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 instance.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 (instance.getRightLeafHeaders().length - 1 - column.getPinnedIndex()) *\n 150\n );\n };\n\n return (\n <TableCell\n onClick={(event: MouseEvent<HTMLTableCellElement>) =>\n onCellClick?.({ event, cell, instance })\n }\n onDoubleClick={handleDoubleClick}\n {...tableCellProps}\n ref={\n columnDefType === 'data' && enableColumnOrdering ? dropRef : undefined\n }\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:\n (isEditable && editingMode === 'cell') || onRowClick || onCellClick\n ? 'pointer'\n : 'text',\n left:\n column.getIsPinned() === 'left'\n ? `${column.getStart('left')}px`\n : undefined,\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-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: column.getIsPinned() ? 1 : undefined,\n '&:hover': {\n backgroundColor:\n enableHover && enableEditing && editingMode !== 'row'\n ? theme.palette.mode === 'dark'\n ? `${lighten(\n theme.palette.background.default,\n 0.13,\n )} !important`\n : `${darken(theme.palette.background.default, 0.07)} !important`\n : undefined,\n },\n ...(tableCellProps?.sx as any),\n 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 {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 ) : columnDefType === 'display' ? (\n columnDef.Cell?.({ cell, instance })\n ) : cell.getIsPlaceholder() ||\n (row.getIsGrouped() &&\n column.id !==\n row.groupingColumnId) ? null : cell.getIsAggregated() ? (\n columnDef.AggregatedCell?.({ cell, instance }) ??\n cell.renderAggregatedCell()\n ) : isEditing ? (\n <MRT_EditCellTextField cell={cell} instance={instance} />\n ) : (enableClickToCopy || columnDef.enableClickToCopy) &&\n columnDef.enableClickToCopy !== false ? (\n <>\n <MRT_CopyButton cell={cell} instance={instance}>\n <>{columnDef?.Cell?.({ cell, instance }) ?? cell.renderCell()}</>\n </MRT_CopyButton>\n {row.getIsGrouped() && <> ({row.subRows?.length})</>}\n </>\n ) : (\n <>\n {columnDef?.Cell?.({ cell, instance }) ?? cell.renderCell()}\n {row.getIsGrouped() && <> ({row.subRows?.length ?? ''})</>}\n </>\n )}\n </>\n </TableCell>\n );\n};\n","import React, { FC, MouseEvent } from 'react';\nimport { Collapse, TableCell, TableRow } from '@mui/material';\nimport type { MRT_Row, MRT_TableInstance } from '..';\n\ninterface Props {\n row: MRT_Row;\n instance: MRT_TableInstance;\n}\n\nexport const MRT_TableDetailPanel: FC<Props> = ({ row, instance }) => {\n const {\n getVisibleLeafColumns,\n options: {\n muiTableBodyRowProps,\n muiTableDetailPanelProps,\n onDetailPanelClick,\n renderDetailPanel,\n },\n } = instance;\n\n const tableRowProps =\n muiTableBodyRowProps instanceof Function\n ? muiTableBodyRowProps({ row, instance })\n : muiTableBodyRowProps;\n\n const tableCellProps =\n muiTableDetailPanelProps instanceof Function\n ? muiTableDetailPanelProps({ row, instance })\n : muiTableDetailPanelProps;\n\n return (\n <TableRow {...tableRowProps}>\n <TableCell\n colSpan={getVisibleLeafColumns().length}\n onClick={(event: MouseEvent<HTMLTableCellElement>) =>\n onDetailPanelClick?.({ event, row, instance })\n }\n {...tableCellProps}\n sx={{\n borderBottom: !row.getIsExpanded() ? 'none' : undefined,\n pb: row.getIsExpanded() ? '1rem' : 0,\n pt: row.getIsExpanded() ? '1rem' : 0,\n transition: 'all 0.2s ease-in-out',\n width: `${instance.getTotalSize()}px`,\n ...tableCellProps?.sx,\n }}\n >\n {renderDetailPanel && (\n <Collapse in={row.getIsExpanded()}>\n {renderDetailPanel({ row, instance })}\n </Collapse>\n )}\n </TableCell>\n </TableRow>\n );\n};\n","import React, { FC, MouseEvent } from 'react';\nimport { darken, lighten, TableRow } from '@mui/material';\nimport { MRT_TableBodyCell } from './MRT_TableBodyCell';\nimport { MRT_TableDetailPanel } from './MRT_TableDetailPanel';\nimport type { MRT_Row, MRT_TableInstance } from '..';\n\ninterface Props {\n row: MRT_Row;\n rowIndex: number;\n instance: MRT_TableInstance;\n}\n\nexport const MRT_TableBodyRow: FC<Props> = ({ row, rowIndex, instance }) => {\n const {\n getIsSomeColumnsPinned,\n options: { muiTableBodyRowProps, onRowClick, renderDetailPanel },\n } = instance;\n\n const tableRowProps =\n muiTableBodyRowProps instanceof Function\n ? muiTableBodyRowProps({ row, instance })\n : muiTableBodyRowProps;\n\n return (\n <>\n <TableRow\n hover\n onClick={(event: MouseEvent<HTMLTableRowElement>) =>\n onRowClick?.({ event, row, instance })\n }\n selected={row.getIsSelected()}\n {...tableRowProps}\n sx={(theme) => ({\n backgroundColor: lighten(theme.palette.background.default, 0.06),\n transition: 'all 0.2s ease-in-out',\n '&:hover td': {\n backgroundColor:\n tableRowProps?.hover !== false && getIsSomeColumnsPinned()\n ? theme.palette.mode === 'dark'\n ? `${lighten(theme.palette.background.default, 0.12)}`\n : `${darken(theme.palette.background.default, 0.05)}`\n : undefined,\n },\n ...(tableRowProps?.sx as any),\n })}\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 instance={instance}\n />\n ))}\n </TableRow>\n {renderDetailPanel && !row.getIsGrouped() && (\n <MRT_TableDetailPanel row={row} instance={instance} />\n )}\n </>\n );\n};\n","import { compareItems, RankingInfo } from '@tanstack/match-sorter-utils';\nimport { Row, sortingFns } from '@tanstack/react-table';\nimport type { MRT_Row } from '.';\n\nconst fuzzy = (rowA: MRT_Row, rowB: MRT_Row, columnId: string) => {\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 fuzzy,\n};\n\nexport const rankGlobalFuzzy = (rowA: MRT_Row, rowB: MRT_Row) =>\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 React, { FC, RefObject, useMemo } from 'react';\nimport { useVirtual } from 'react-virtual';\nimport { TableBody } from '@mui/material';\nimport { MRT_TableBodyRow } from './MRT_TableBodyRow';\nimport type { MRT_Row, MRT_TableInstance } from '..';\nimport { rankGlobalFuzzy } from '../sortingFns';\n\ninterface Props {\n instance: MRT_TableInstance;\n tableContainerRef: RefObject<HTMLDivElement>;\n}\n\nexport const MRT_TableBody: FC<Props> = ({ instance, tableContainerRef }) => {\n const {\n getRowModel,\n getPrePaginationRowModel,\n getState,\n options: {\n enableGlobalFilterRankedResults,\n enablePagination,\n enableRowVirtualization,\n muiTableBodyProps,\n virtualizerProps,\n },\n } = instance;\n\n const { density, globalFilter, pagination, sorting } = getState();\n\n const tableBodyProps =\n muiTableBodyProps instanceof Function\n ? muiTableBodyProps({ instance })\n : muiTableBodyProps;\n\n const getIsSomeColumnsSorted = () => {\n return Object.values(sorting).some(Boolean);\n };\n\n const rows = useMemo(() => {\n if (\n enableGlobalFilterRankedResults &&\n globalFilter &&\n !getIsSomeColumnsSorted()\n ) {\n const rankedRows = getPrePaginationRowModel().rows.sort((a, b) =>\n rankGlobalFuzzy(a, b),\n );\n if (enablePagination) {\n return rankedRows.slice(0, pagination.pageSize);\n }\n return rankedRows;\n }\n\n return enablePagination\n ? getRowModel().rows\n : getPrePaginationRowModel().rows;\n }, [\n enableGlobalFilterRankedResults,\n (enableGlobalFilterRankedResults && globalFilter) || !enablePagination\n ? getPrePaginationRowModel().rows\n : getRowModel().rows,\n globalFilter,\n ]);\n\n const rowVirtualizer = enableRowVirtualization\n ? useVirtual({\n overscan: density === 'compact' ? 20 : 10,\n size: rows.length,\n parentRef: tableContainerRef,\n ...virtualizerProps,\n })\n : ({} as any);\n\n const { virtualItems: virtualRows } = rowVirtualizer;\n const paddingTop = virtualRows?.length > 0 ? virtualRows[0].start : 0;\n const paddingBottom =\n virtualRows?.length > 0\n ? rowVirtualizer.totalSize - virtualRows[virtualRows.length - 1].end\n : 0;\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 instance={instance}\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 instance: MRT_TableInstance;\n}\n\nexport const MRT_TableFooterCell: FC<Props> = ({ footer, instance }) => {\n const {\n getState,\n options: { muiTableFooterCellProps, enableColumnResizing },\n } = instance;\n\n const { density } = getState();\n\n const { column } = footer;\n\n const { columnDef, columnDefType } = column;\n\n const mTableFooterCellProps =\n muiTableFooterCellProps instanceof Function\n ? muiTableFooterCellProps({ column, instance })\n : muiTableFooterCellProps;\n\n const mcTableFooterCellProps =\n columnDef.muiTableFooterCellProps instanceof Function\n ? columnDef.muiTableFooterCellProps({ column, instance })\n : columnDef.muiTableFooterCellProps;\n\n const tableCellProps = {\n ...mTableFooterCellProps,\n ...mcTableFooterCellProps,\n };\n\n return (\n <TableCell\n align={columnDefType === 'group' ? 'center' : 'left'}\n colSpan={footer.colSpan}\n variant=\"head\"\n {...tableCellProps}\n sx={(theme) => ({\n backgroundColor: theme.palette.background.default,\n backgroundImage: `linear-gradient(${alpha(\n theme.palette.common.white,\n 0.05,\n )},${alpha(theme.palette.common.white, 0.05)})`,\n fontWeight: 'bold',\n maxWidth: `${column.getSize()}px`,\n minWidth: `${column.getSize()}px`,\n p:\n density === 'compact'\n ? '0.5rem'\n : density === 'comfortable'\n ? '1rem'\n : '1.5rem',\n transition: `all ${enableColumnResizing ? '10ms' : '0.2s'} ease-in-out`,\n width: column.getSize(),\n verticalAlign: 'text-top',\n ...(tableCellProps?.sx as any),\n })}\n >\n <>\n {footer.isPlaceholder\n ? null\n : (columnDef.Footer instanceof Function\n ? columnDef.Footer?.({\n footer,\n instance,\n })\n : columnDef.Footer) ??\n columnDef.footer ??\n footer.renderFooter() ??\n null}\n </>\n </TableCell>\n );\n};\n","import React, { FC } from 'react';\nimport { TableRow } from '@mui/material';\nimport { MRT_TableFooterCell } from './MRT_TableFooterCell';\nimport type { MRT_Header, MRT_HeaderGroup, MRT_TableInstance } from '..';\n\ninterface Props {\n footerGroup: MRT_HeaderGroup;\n instance: MRT_TableInstance;\n}\n\nexport const MRT_TableFooterRow: FC<Props> = ({ footerGroup, instance }) => {\n const {\n options: { muiTableFooterRowProps },\n } = instance;\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, instance })\n : muiTableFooterRowProps;\n\n return (\n <TableRow {...tableRowProps}>\n {footerGroup.headers.map((footer: MRT_Header) => (\n <MRT_TableFooterCell\n footer={footer}\n key={footer.id}\n instance={instance}\n />\n ))}\n </TableRow>\n );\n};\n","import React, { FC } from 'react';\nimport { TableFooter } from '@mui/material';\nimport { MRT_TableFooterRow } from './MRT_TableFooterRow';\nimport type { MRT_TableInstance } from '..';\n\ninterface Props {\n instance: MRT_TableInstance;\n}\n\nexport const MRT_TableFooter: FC<Props> = ({ instance }) => {\n const {\n getFooterGroups,\n\n options: { muiTableFooterProps },\n } = instance;\n\n const tableFooterProps =\n muiTableFooterProps instanceof Function\n ? muiTableFooterProps({ instance })\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 instance={instance}\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 instance: MRT_TableInstance;\n}\n\nexport const MRT_Table: FC<Props> = ({ tableContainerRef, instance }) => {\n const {\n getState,\n options: {\n enableColumnResizing,\n enableRowVirtualization,\n enableStickyHeader,\n enableTableFooter,\n enableTableHead,\n muiTableProps,\n },\n } = instance;\n\n const { isFullScreen } = getState();\n\n const tableProps =\n muiTableProps instanceof Function\n ? muiTableProps({ instance })\n : muiTableProps;\n\n return (\n <Table\n stickyHeader={\n enableStickyHeader || enableRowVirtualization || isFullScreen\n }\n {...tableProps}\n sx={{\n tableLayout:\n enableColumnResizing || enableRowVirtualization ? 'fixed' : 'auto',\n ...tableProps?.sx,\n }}\n >\n {enableTableHead && <MRT_TableHead instance={instance} />}\n <MRT_TableBody\n tableContainerRef={tableContainerRef}\n instance={instance}\n />\n {enableTableFooter && <MRT_TableFooter instance={instance} />}\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 instance: MRT_TableInstance;\n}\n\nexport const MRT_TableContainer: FC<Props> = ({ instance }) => {\n const {\n getState,\n options: {\n enableStickyHeader,\n enableRowVirtualization,\n muiTableContainerProps,\n tableId,\n },\n } = instance;\n\n const { isFullScreen } = getState();\n\n const [totalToolbarHeight, setTotalToolbarHeight] = useState(0);\n\n const tableContainerProps =\n muiTableContainerProps instanceof Function\n ? muiTableContainerProps({ instance })\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 {...tableContainerProps}\n ref={tableContainerRef}\n sx={{\n maxWidth: '100%',\n maxHeight:\n enableStickyHeader || enableRowVirtualization\n ? `clamp(350px, calc(100vh - ${totalToolbarHeight}px), 9999px)`\n : undefined,\n overflow: 'auto',\n ...tableContainerProps?.sx,\n }}\n style={{\n maxHeight: isFullScreen\n ? `calc(100vh - ${totalToolbarHeight}px)`\n : undefined,\n ...tableContainerProps?.style,\n }}\n >\n <MRT_Table tableContainerRef={tableContainerRef} instance={instance} />\n </TableContainer>\n );\n};\n","import React, { FC, useEffect } from 'react';\nimport { Paper } from '@mui/material';\nimport { DndProvider } from 'react-dnd';\nimport { HTML5Backend } from 'react-dnd-html5-backend';\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 instance: MRT_TableInstance;\n}\n\nexport const MRT_TablePaper: FC<Props> = ({ instance }) => {\n const {\n getState,\n options: { enableToolbarBottom, enableToolbarTop, muiTablePaperProps },\n } = instance;\n\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({ instance })\n : muiTablePaperProps;\n\n return (\n <DndProvider backend={HTML5Backend}>\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 instance={instance} />}\n <MRT_TableContainer instance={instance} />\n {enableToolbarBottom && <MRT_ToolbarBottom instance={instance} />}\n </Paper>\n </DndProvider>\n );\n};\n","import React, { useEffect, useMemo, useState } from 'react';\nimport {\n FilterFn,\n ReactTableGenerics,\n Table,\n TableState,\n createTable,\n filterFns,\n getCoreRowModel,\n getExpandedRowModel,\n getFacetedRowModel,\n getFilteredRowModel,\n getGroupedRowModel,\n getPaginationRowModel,\n getSortedRowModel,\n useTableInstance,\n sortingFns,\n} from '@tanstack/react-table';\nimport {\n MRT_Cell,\n MRT_ColumnDef,\n MRT_FilterFn,\n MRT_FILTER_OPTION,\n MRT_Row,\n MRT_TableInstance,\n MRT_TableState,\n} from '..';\nimport { MRT_ExpandAllButton } from '../buttons/MRT_ExpandAllButton';\nimport { MRT_ExpandButton } from '../buttons/MRT_ExpandButton';\nimport { MRT_ToggleRowActionMenuButton } from '../buttons/MRT_ToggleRowActionMenuButton';\nimport { MRT_SelectCheckbox } from '../inputs/MRT_SelectCheckbox';\nimport { MaterialReactTableProps } from '../MaterialReactTable';\nimport { MRT_TablePaper } from './MRT_TablePaper';\nimport { Box, Dialog, Grow } from '@mui/material';\nimport {\n createDataColumn,\n createDisplayColumn,\n createGroup,\n getAllLeafColumnDefs,\n getDefaultColumnOrderIds,\n} from '../utils';\nimport { MRT_FilterFns } from '../filtersFns';\nimport { MRT_SortingFns } from '../sortingFns';\n\nexport const MRT_TableRoot = <D extends Record<string, any> = {}>(\n props: MaterialReactTableProps<D>,\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<D>> = 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 [currentEditingCell, setCurrentEditingCell] =\n useState<MRT_Cell<D> | null>(initialState?.currentEditingCell ?? null);\n const [currentEditingRow, setCurrentEditingRow] = useState<MRT_Row<D> | null>(\n initialState?.currentEditingRow ?? null,\n );\n const [density, setDensity] = useState(\n initialState?.density ?? 'comfortable',\n );\n const [isFullScreen, setIsFullScreen] = useState(\n initialState?.isFullScreen ?? false,\n );\n const [showFilters, setShowFilters] = useState(\n initialState?.showFilters ?? false,\n );\n const [showGlobalFilter, setShowGlobalFilter] = useState(\n initialState?.showGlobalFilter ?? false,\n );\n\n const [currentFilterFns, setCurrentFilterFns] = useState<{\n [key: string]: MRT_FilterFn;\n }>(() =>\n Object.assign(\n {},\n ...getAllLeafColumnDefs(props.columns as MRT_ColumnDef[]).map((c) => ({\n [c.id as string]:\n c.filterFn ??\n initialState?.currentFilterFns?.[c.id] ??\n (!!c.filterSelectOptions?.length ? 'equals' : 'fuzzy'),\n })),\n ),\n );\n\n const [currentGlobalFilterFn, setCurrentGlobalFilterFn] = useState<\n MRT_FILTER_OPTION | FilterFn<ReactTableGenerics> | string | number | symbol\n >(props.globalFilterFn ?? 'fuzzy');\n\n const table = useMemo(\n () =>\n // @ts-ignore\n createTable().setOptions({\n filterFns: { ...filterFns, ...MRT_FilterFns, ...props.filterFns },\n getCoreRowModel: getCoreRowModel(),\n getExpandedRowModel: getExpandedRowModel(),\n getFacetedRowModel: getFacetedRowModel(),\n getFilteredRowModel: getFilteredRowModel(),\n getGroupedRowModel: getGroupedRowModel(),\n getPaginationRowModel: getPaginationRowModel(),\n getSortedRowModel: getSortedRowModel(),\n sortingFns: { ...sortingFns, ...MRT_SortingFns, ...props.sortingFns },\n }) as Table<D>,\n [],\n );\n\n const displayColumns = useMemo(() => {\n return [\n columnOrder.includes('mrt-row-actions') &&\n createDisplayColumn(table, {\n Cell: ({ cell }) => (\n <MRT_ToggleRowActionMenuButton\n row={cell.row as any}\n instance={instance}\n />\n ),\n header: props.localization?.actions,\n id: 'mrt-row-actions',\n muiTableBodyCellProps: props.muiTableBodyCellProps,\n muiTableHeadCellProps: props.muiTableHeadCellProps,\n size: 70,\n }),\n columnOrder.includes('mrt-expand') &&\n createDisplayColumn(table, {\n Cell: ({ cell }) => (\n <MRT_ExpandButton row={cell.row as any} instance={instance} />\n ),\n Header: () =>\n props.enableExpandAll ? (\n <MRT_ExpandAllButton instance={instance} />\n ) : null,\n header: props.localization?.expand,\n id: 'mrt-expand',\n muiTableBodyCellProps: props.muiTableBodyCellProps,\n muiTableHeadCellProps: props.muiTableHeadCellProps,\n size: 60,\n }),\n columnOrder.includes('mrt-select') &&\n createDisplayColumn(table, {\n Cell: ({ cell }) => (\n <MRT_SelectCheckbox row={cell.row as any} instance={instance} />\n ),\n Header: () =>\n props.enableSelectAll ? (\n <MRT_SelectCheckbox selectAll instance={instance} />\n ) : null,\n header: props.localization?.select,\n id: 'mrt-select',\n muiTableBodyCellProps: props.muiTableBodyCellProps,\n muiTableHeadCellProps: props.muiTableHeadCellProps,\n size: 60,\n }),\n columnOrder.includes('mrt-row-numbers') &&\n createDisplayColumn(table, {\n Cell: ({ cell }) => cell.row.index + 1,\n Header: () => props.localization?.rowNumber,\n header: props.localization?.rowNumbers,\n id: 'mrt-row-numbers',\n muiTableBodyCellProps: props.muiTableBodyCellProps,\n muiTableHeadCellProps: props.muiTableHeadCellProps,\n size: 60,\n }),\n ].filter(Boolean) as MRT_ColumnDef<D>[];\n }, [\n columnOrder,\n props.editingMode,\n props.enableEditing,\n props.enableExpandAll,\n props.enableExpanding,\n props.enableGrouping,\n props.enableRowActions,\n props.enableRowNumbers,\n props.enableRowSelection,\n props.enableSelectAll,\n props.localization,\n props.muiTableBodyCellProps,\n props.muiTableHeadCellProps,\n props.positionActionsColumn,\n table,\n ]);\n\n const columns = useMemo(\n () => [\n ...displayColumns,\n ...props.columns.map((column) =>\n column.columns\n ? createGroup(table, column as any, currentFilterFns)\n : createDataColumn(table, column as any, currentFilterFns),\n ),\n ],\n [table, props.columns, currentFilterFns],\n );\n\n const data: D[] = useMemo(\n () =>\n (props.state?.isLoading || props.state?.showSkeletons) &&\n !props.data.length\n ? [...Array(10).fill(null)].map(() =>\n Object.assign(\n {},\n ...getAllLeafColumnDefs(props.columns as MRT_ColumnDef[]).map(\n (c) => ({\n [c.id]: null,\n }),\n ),\n ),\n )\n : props.data,\n [props.data, props.state?.isLoading, props.state?.showSkeletons],\n );\n\n //@ts-ignore\n const instance = {\n //@ts-ignore\n ...useTableInstance(table, {\n onColumnOrderChange: setColumnOrder,\n ...props,\n //@ts-ignore\n columns,\n data,\n getSubRows: (row) => (row as MRT_Row)?.subRows,\n //@ts-ignore\n globalFilterFn: currentGlobalFilterFn,\n initialState,\n state: {\n columnOrder,\n currentEditingCell,\n currentEditingRow,\n currentFilterFns,\n currentGlobalFilterFn,\n density,\n isFullScreen,\n showFilters,\n showGlobalFilter,\n ...props.state,\n } as TableState,\n tableId,\n }),\n setCurrentEditingCell:\n props.onCurrentEditingCellChange ?? setCurrentEditingCell,\n setCurrentEditingRow:\n props.onCurrentEditingRowChange ?? setCurrentEditingRow,\n setCurrentFilterFns: props.onCurrentFilterFnsChange ?? setCurrentFilterFns,\n setCurrentGlobalFilterFn:\n props.onCurrentGlobalFilterFnChange ?? setCurrentGlobalFilterFn,\n setDensity: props.onDensityChange ?? setDensity,\n setIsFullScreen: props.onIsFullScreenChange ?? setIsFullScreen,\n setShowFilters: props.onShowFiltersChange ?? setShowFilters,\n setShowGlobalFilter: props.onShowGlobalFilterChange ?? setShowGlobalFilter,\n } as MRT_TableInstance;\n\n useEffect(() => {\n props?.onColumnOrderChanged?.({\n columnOrder: instance.getState().columnOrder,\n //@ts-ignore\n instance,\n });\n }, [instance.getState().columnOrder]);\n\n useEffect(() => {\n props?.onColumnPinningChanged?.({\n columnPinning: instance.getState().columnPinning,\n //@ts-ignore\n instance,\n });\n }, [instance.getState().columnPinning]);\n\n useEffect(() => {\n props?.onColumnVisibilityChanged?.({\n columnPinning: instance.getState().columnVisibility,\n //@ts-ignore\n instance,\n });\n }, [instance.getState().columnVisibility]);\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 instance={instance} />\n </Dialog>\n {!isFullScreen && <MRT_TablePaper instance={instance} />}\n </>\n );\n};\n","import React, {\n ChangeEvent,\n Dispatch,\n FC,\n FocusEvent,\n MouseEvent,\n ReactNode,\n SetStateAction,\n} from 'react';\nimport {\n AlertProps,\n ButtonProps,\n CheckboxProps,\n IconButtonProps,\n LinearProgressProps,\n PaperProps,\n SkeletonProps,\n TableBodyProps,\n TableCellProps,\n TableContainerProps,\n TableFooterProps,\n TableHeadProps,\n TablePaginationProps,\n TableProps,\n TableRowProps,\n TextFieldProps,\n ToolbarProps,\n} from '@mui/material';\nimport {\n Cell,\n Column,\n ColumnDef,\n ColumnOrderState,\n ColumnPinningState,\n FilterFn,\n FilterFnOption,\n Header,\n HeaderGroup,\n OnChangeFn,\n Overwrite,\n ReactTableGenerics,\n Row,\n SortingFn,\n SortingFnOption,\n TableGenerics,\n TableInstance,\n TableState,\n UseTableInstanceOptions,\n VisibilityState,\n} from '@tanstack/react-table';\nimport { Options as VirtualizerOptions } from 'react-virtual';\nimport { MRT_Localization, MRT_DefaultLocalization_EN } from './localization';\nimport { MRT_Default_Icons, MRT_Icons } from './icons';\nimport { MRT_TableRoot } from './table/MRT_TableRoot';\n\nexport type MRT_TableOptions<D extends Record<string, any> = {}> = Partial<\n Omit<\n UseTableInstanceOptions<ReactTableGenerics>,\n 'columns' | 'data' | 'initialState' | 'state' | 'expandRowsFn'\n >\n> & {\n columns: MRT_ColumnDef<D>[];\n data: D[];\n expandRowsFn?: (dataRow: D) => D[];\n initialState?: Partial<MRT_TableState<D>>;\n state?: Partial<MRT_TableState<D>>;\n};\n\nexport interface MRT_RowModel<D extends Record<string, any> = {}> {\n flatRows: MRT_Row<D>[];\n rows: MRT_Row<D>[];\n rowsById: { [key: string]: MRT_Row<D> };\n}\n\nexport type MRT_TableInstance<D extends Record<string, any> = {}> = Omit<\n TableInstance<\n Overwrite<\n Partial<TableGenerics>,\n {\n Row: D;\n }\n >\n >,\n | 'getAllColumns'\n | '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<D>[];\n getAllFlatColumns: () => MRT_Column<D>[];\n getAllLeafColumns: () => MRT_Column<D>[];\n getCenterLeafColumns: () => MRT_Column<D>[];\n getColumn: (columnId: string) => MRT_Column<D>;\n getExpandedRowModel: () => MRT_RowModel<D>;\n getFlatHeaders: () => MRT_Header<D>[];\n getLeftLeafColumns: () => MRT_Column<D>[];\n getPaginationRowModel: () => MRT_RowModel<D>;\n getPreFilteredRowModel: () => MRT_RowModel<D>;\n getPrePaginationRowModel: () => MRT_RowModel<D>;\n getRightLeafColumns: () => MRT_Column<D>[];\n getRowModel: () => MRT_RowModel<D>;\n getSelectedRowModel: () => MRT_RowModel<D>;\n getState: () => MRT_TableState<D>;\n options: MaterialReactTableProps<D> & {\n icons: MRT_Icons;\n tableId: string;\n localization: MRT_Localization;\n };\n setCurrentEditingCell: Dispatch<SetStateAction<MRT_Cell | null>>;\n setCurrentEditingRow: Dispatch<SetStateAction<MRT_Row | null>>;\n setCurrentFilterFns: Dispatch<\n SetStateAction<{\n [key: string]: MRT_FilterFn;\n }>\n >;\n setCurrentGlobalFilterFn: Dispatch<SetStateAction<MRT_FilterFn>>;\n setDensity: Dispatch<SetStateAction<'comfortable' | 'compact' | 'spacious'>>;\n setIsFullScreen: Dispatch<SetStateAction<boolean>>;\n setShowFilters: Dispatch<SetStateAction<boolean>>;\n setShowGlobalFilter: Dispatch<SetStateAction<boolean>>;\n};\n\nexport type MRT_TableState<D extends Record<string, any> = {}> = TableState & {\n currentEditingCell: MRT_Cell<D> | null;\n currentEditingRow: MRT_Row<D> | null;\n currentFilterFns: Record<string, string | Function>;\n currentGlobalFilterFn: Record<string, string | Function>;\n density: 'comfortable' | 'compact' | 'spacious';\n isLoading: boolean;\n isFullScreen: boolean;\n showFilters: boolean;\n showGlobalFilter: boolean;\n showProgressBars: boolean;\n showSkeletons: boolean;\n};\n\nexport type MRT_ColumnDef<D extends Record<string, any> = {}> = Omit<\n ColumnDef<D>,\n | 'accessorFn'\n | 'aggregatedCell'\n | 'cell'\n | 'columns'\n | 'filterFn'\n | 'footer'\n | 'header'\n | 'sortingFn'\n> & {\n AggregatedCell?: ({\n cell,\n instance,\n }: {\n cell: MRT_Cell<D>;\n instance: MRT_TableInstance<D>;\n }) => ReactNode;\n Cell?: ({\n cell,\n instance,\n }: {\n cell: MRT_Cell<D>;\n instance: MRT_TableInstance<D>;\n }) => ReactNode;\n Edit?: ({\n cell,\n instance,\n }: {\n cell: MRT_Cell<D>;\n instance: MRT_TableInstance<D>;\n }) => ReactNode;\n Filter?: ({\n header,\n instance,\n }: {\n header: MRT_Header<D>;\n instance: MRT_TableInstance<D>;\n }) => ReactNode;\n Footer?:\n | ReactNode\n | (({\n footer,\n instance,\n }: {\n footer: MRT_Header<D>;\n instance: MRT_TableInstance<D>;\n }) => ReactNode);\n Header?:\n | ReactNode\n | (({\n header,\n instance,\n }: {\n header: MRT_Header<D>;\n instance: MRT_TableInstance<D>;\n }) => ReactNode);\n accessorFn?: (row: D) => any;\n columns?: MRT_ColumnDef<D>[];\n enableClickToCopy?: boolean;\n enableColumnActions?: boolean;\n enableColumnFilterChangeMode?: boolean;\n enableColumnOrdering?: boolean;\n enableEditing?: boolean;\n enabledColumnFilterOptions?: (MRT_FILTER_OPTION | string)[] | null;\n filterFn?: MRT_FilterFn;\n filterSelectOptions?: (string | { text: string; value: string })[];\n footer?: string;\n header: string;\n id: keyof D | string;\n muiTableBodyCellCopyButtonProps?:\n | ButtonProps\n | (({\n instance,\n cell,\n }: {\n instance: MRT_TableInstance<D>;\n cell: MRT_Cell<D>;\n }) => ButtonProps);\n muiTableBodyCellEditTextFieldProps?:\n | TextFieldProps\n | (({\n instance,\n cell,\n }: {\n instance: MRT_TableInstance<D>;\n cell: MRT_Cell<D>;\n }) => TextFieldProps);\n muiTableBodyCellProps?:\n | TableCellProps\n | (({\n instance,\n cell,\n }: {\n instance: MRT_TableInstance<D>;\n cell: MRT_Cell<D>;\n }) => TableCellProps);\n muiTableFooterCellProps?:\n | TableCellProps\n | (({\n instance,\n column,\n }: {\n instance: MRT_TableInstance<D>;\n column: MRT_Column<D>;\n }) => TableCellProps);\n muiTableHeadCellColumnActionsButtonProps?:\n | IconButtonProps\n | (({\n instance,\n column,\n }: {\n instance: MRT_TableInstance<D>;\n column: MRT_Column<D>;\n }) => IconButtonProps);\n muiTableHeadCellFilterTextFieldProps?:\n | TextFieldProps\n | (({\n instance,\n column,\n }: {\n instance: MRT_TableInstance<D>;\n column: MRT_Column<D>;\n }) => TextFieldProps);\n muiTableHeadCellProps?:\n | TableCellProps\n | (({\n instance,\n column,\n }: {\n instance: MRT_TableInstance<D>;\n column: MRT_Column<D>;\n }) => TableCellProps);\n onCellEditBlur?: ({\n cell,\n event,\n instance,\n }: {\n event: FocusEvent<HTMLInputElement>;\n cell: MRT_Cell<D>;\n instance: MRT_TableInstance<D>;\n }) => void;\n onCellEditChanged?: ({\n cell,\n event,\n instance,\n }: {\n event: ChangeEvent<HTMLInputElement>;\n cell: MRT_Cell<D>;\n instance: MRT_TableInstance<D>;\n }) => void;\n onColumnFilterValueChanged?: ({\n column,\n event,\n filterValue,\n instance,\n }: {\n column: MRT_Column<D>;\n event: ChangeEvent<HTMLInputElement>;\n filterValue: any;\n instance: MRT_TableInstance<D>;\n }) => void;\n onColumnFilterValueChangedDebounced?: ({\n column,\n event,\n filterValue,\n instance,\n }: {\n column: MRT_Column<D>;\n event: ChangeEvent<HTMLInputElement>;\n filterValue: any;\n instance: MRT_TableInstance<D>;\n }) => void;\n sortingFn?: MRT_SortingFn;\n};\n\nexport type MRT_Column<D extends Record<string, any> = {}> = Omit<\n Column<D>,\n 'header' | 'footer' | 'columns' | 'columnDef'\n> & {\n columns?: MRT_Column<D>[];\n columnDef: MRT_ColumnDef<D>;\n header: string;\n footer: string;\n};\n\nexport type MRT_Header<D extends Record<string, any> = {}> = Omit<\n Header<D>,\n 'column'\n> & {\n column: MRT_Column<D>;\n};\n\nexport type MRT_HeaderGroup<D extends Record<string, any> = {}> = Omit<\n HeaderGroup<D>,\n 'headers'\n> & {\n headers: MRT_Header<D>[];\n};\n\nexport type MRT_Row<D extends Record<string, any> = {}> = Omit<\n Row<D>,\n 'getVisibleCells' | 'getAllCells' | 'subRows' | 'original' | '_valuesCache'\n> & {\n getAllCells: () => MRT_Cell<D>[];\n getVisibleCells: () => MRT_Cell<D>[];\n subRows?: MRT_Row<D>[];\n original: D;\n _valuesCache?: D;\n};\n\nexport type MRT_Cell<D extends Record<string, any> = {}> = Omit<\n Cell<D>,\n 'column' | 'row'\n> & {\n column: MRT_Column<D>;\n row: MRT_Row<D>;\n};\n\nexport type MRT_SortingOption = SortingFnOption<TableGenerics> | 'fuzzy';\n\nexport type MRT_SortingFn = SortingFn<TableGenerics> | MRT_SortingOption;\n\nexport type MRT_FILTER_OPTION =\n | 'between'\n | 'contains'\n | 'empty'\n | 'endsWith'\n | 'equals'\n | 'fuzzy'\n | 'greaterThan'\n | 'greaterThanOrEqual'\n | 'lessThan'\n | 'lessThanOrEqual'\n | 'notEmpty'\n | 'notEquals'\n | 'startsWith'\n | FilterFnOption<TableGenerics>;\n\nexport type MRT_FilterFn = FilterFn<TableGenerics> | MRT_FILTER_OPTION;\n\nexport type MaterialReactTableProps<D extends Record<string, any> = {}> =\n MRT_TableOptions<D> & {\n editingMode?: 'table' | 'row' | 'cell';\n enableClickToCopy?: boolean;\n enableColumnActions?: boolean;\n 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 enableRowNumbers?: boolean;\n enableRowVirtualization?: boolean;\n enableSelectAll?: boolean;\n enableStickyHeader?: boolean;\n enableTableFooter?: boolean;\n enableTableHead?: boolean;\n enableToolbarBottom?: boolean;\n enableToolbarInternalActions?: boolean;\n enableToolbarTop?: boolean;\n enabledColumnFilterOptions?: (MRT_FILTER_OPTION | string)[] | null;\n enabledGlobalFilterOptions?: (MRT_FILTER_OPTION | string)[] | null;\n icons?: Partial<MRT_Icons>;\n localization?: Partial<MRT_Localization>;\n muiExpandAllButtonProps?:\n | IconButtonProps\n | (({ instance }: { instance: MRT_TableInstance<D> }) => IconButtonProps);\n muiExpandButtonProps?:\n | IconButtonProps\n | (({\n instance,\n }: {\n instance: MRT_TableInstance<D>;\n row: MRT_Row<D>;\n }) => IconButtonProps);\n muiLinearProgressProps?:\n | LinearProgressProps\n | (({\n instance,\n }: {\n instance: MRT_TableInstance<D>;\n }) => LinearProgressProps);\n muiSearchTextFieldProps?:\n | TextFieldProps\n | (({ instance }: { instance: MRT_TableInstance<D> }) => TextFieldProps);\n muiSelectAllCheckboxProps?:\n | CheckboxProps\n | (({ instance }: { instance: MRT_TableInstance<D> }) => CheckboxProps);\n muiSelectCheckboxProps?:\n | CheckboxProps\n | (({\n instance,\n row,\n }: {\n instance: MRT_TableInstance<D>;\n row: MRT_Row<D>;\n }) => CheckboxProps);\n muiTableBodyCellCopyButtonProps?:\n | ButtonProps\n | (({\n instance,\n cell,\n }: {\n instance: MRT_TableInstance<D>;\n cell: MRT_Cell<D>;\n }) => ButtonProps);\n muiTableBodyCellEditTextFieldProps?:\n | TextFieldProps\n | (({\n instance,\n cell,\n }: {\n instance: MRT_TableInstance<D>;\n cell: MRT_Cell<D>;\n }) => TextFieldProps);\n muiTableBodyCellProps?:\n | TableCellProps\n | (({\n instance,\n cell,\n }: {\n instance: MRT_TableInstance<D>;\n cell: MRT_Cell<D>;\n }) => TableCellProps);\n muiTableBodyCellSkeletonProps?:\n | SkeletonProps\n | (({\n instance,\n cell,\n }: {\n instance: MRT_TableInstance<D>;\n cell: MRT_Cell<D>;\n }) => SkeletonProps);\n muiTableBodyProps?:\n | TableBodyProps\n | (({ instance }: { instance: MRT_TableInstance<D> }) => TableBodyProps);\n muiTableBodyRowProps?:\n | TableRowProps\n | (({\n instance,\n row,\n }: {\n instance: MRT_TableInstance<D>;\n row: MRT_Row<D>;\n }) => TableRowProps);\n muiTableContainerProps?:\n | TableContainerProps\n | (({\n instance,\n }: {\n instance: MRT_TableInstance<D>;\n }) => TableContainerProps);\n muiTableDetailPanelProps?:\n | TableCellProps\n | (({\n instance,\n row,\n }: {\n instance: MRT_TableInstance<D>;\n row: MRT_Row<D>;\n }) => TableCellProps);\n muiTableFooterCellProps?:\n | TableCellProps\n | (({\n instance,\n column,\n }: {\n instance: MRT_TableInstance<D>;\n column: MRT_Column<D>;\n }) => TableCellProps);\n muiTableFooterProps?:\n | TableFooterProps\n | (({\n instance,\n }: {\n instance: MRT_TableInstance<D>;\n }) => TableFooterProps);\n muiTableFooterRowProps?:\n | TableRowProps\n | (({\n instance,\n footerGroup,\n }: {\n instance: MRT_TableInstance<D>;\n footerGroup: MRT_HeaderGroup<D>;\n }) => TableRowProps);\n muiTableHeadCellColumnActionsButtonProps?:\n | IconButtonProps\n | (({\n instance,\n column,\n }: {\n instance: MRT_TableInstance<D>;\n column: MRT_Column<D>;\n }) => IconButtonProps);\n muiTableHeadCellFilterTextFieldProps?:\n | TextFieldProps\n | (({\n instance,\n column,\n }: {\n instance: MRT_TableInstance<D>;\n column: MRT_Column<D>;\n }) => TextFieldProps);\n muiTableHeadCellProps?:\n | TableCellProps\n | (({\n instance,\n column,\n }: {\n instance: MRT_TableInstance<D>;\n column: MRT_Column<D>;\n }) => TableCellProps);\n muiTableHeadProps?:\n | TableHeadProps\n | (({ instance }: { instance: MRT_TableInstance<D> }) => TableHeadProps);\n muiTableHeadRowProps?:\n | TableRowProps\n | (({\n instance,\n headerGroup,\n }: {\n instance: MRT_TableInstance<D>;\n headerGroup: MRT_HeaderGroup<D>;\n }) => TableRowProps);\n muiTablePaginationProps?:\n | Partial<TablePaginationProps>\n | (({\n instance,\n }: {\n instance: MRT_TableInstance<D>;\n }) => Partial<TablePaginationProps>);\n muiTablePaperProps?:\n | PaperProps\n | (({ instance }: { instance: MRT_TableInstance<D> }) => PaperProps);\n muiTableProps?:\n | TableProps\n | (({ instance }: { instance: MRT_TableInstance<D> }) => TableProps);\n muiTableToolbarAlertBannerProps?:\n | AlertProps\n | (({ instance }: { instance: MRT_TableInstance<D> }) => AlertProps);\n muiTableToolbarBottomProps?:\n | ToolbarProps\n | (({ instance }: { instance: MRT_TableInstance<D> }) => ToolbarProps);\n muiTableToolbarTopProps?:\n | ToolbarProps\n | (({ instance }: { instance: MRT_TableInstance<D> }) => ToolbarProps);\n onCellClick?: ({\n cell,\n event,\n instance,\n }: {\n cell: MRT_Cell<D>;\n instance: MRT_TableInstance<D>;\n event: MouseEvent<HTMLTableCellElement>;\n }) => void;\n onCellEditBlur?: ({\n cell,\n event,\n instance,\n }: {\n event: FocusEvent<HTMLInputElement>;\n cell: MRT_Cell<D>;\n instance: MRT_TableInstance<D>;\n }) => void;\n onCellEditChanged?: ({\n cell,\n event,\n instance,\n }: {\n event: ChangeEvent<HTMLInputElement>;\n cell: MRT_Cell<D>;\n instance: MRT_TableInstance<D>;\n }) => void;\n onColumnFilterValueChanged?: ({\n column,\n event,\n filterValue,\n instance,\n }: {\n column: MRT_Column<D>;\n event: ChangeEvent<HTMLInputElement>;\n filterValue: any;\n instance: MRT_TableInstance<D>;\n }) => void;\n onColumnFilterValueChangedDebounced?: ({\n column,\n event,\n filterValue,\n instance,\n }: {\n column: MRT_Column<D>;\n event: ChangeEvent<HTMLInputElement>;\n filterValue: any;\n instance: MRT_TableInstance<D>;\n }) => void;\n onColumnOrderChanged?: ({\n columnOrder,\n instance,\n }: {\n columnOrder: ColumnOrderState;\n instance: MRT_TableInstance<D>;\n }) => void;\n onColumnPinningChanged?: ({\n columnPinning,\n instance,\n }: {\n columnPinning: ColumnPinningState;\n instance: MRT_TableInstance<D>;\n }) => void;\n onColumnVisibilityChanged?: ({\n column,\n columnVisibility,\n instance,\n }: {\n column: MRT_Column<D>;\n columnVisibility: VisibilityState;\n instance: MRT_TableInstance<D>;\n }) => void;\n onCurrentEditingCellChange?: OnChangeFn<MRT_Cell>;\n onCurrentEditingRowChange?: OnChangeFn<MRT_Row>;\n onCurrentFilterFnsChange?: OnChangeFn<{ [key: string]: MRT_FilterFn }>;\n onCurrentGlobalFilterFnChange?: OnChangeFn<MRT_FilterFn>;\n onDetailPanelClick?: ({\n event,\n row,\n instance,\n }: {\n event: MouseEvent<HTMLTableCellElement>;\n row: MRT_Row<D>;\n instance: MRT_TableInstance<D>;\n }) => void;\n onEditRowSubmit?: ({\n row,\n instance,\n }: {\n row: MRT_Row<D>;\n instance: MRT_TableInstance<D>;\n }) => Promise<void> | void;\n onExpandChanged?: ({\n event,\n row,\n }: {\n event: MouseEvent<HTMLButtonElement>;\n row: MRT_Row<D>;\n instance: MRT_TableInstance<D>;\n }) => void;\n onGlobalFilterValueChanged?: ({\n event,\n instance,\n }: {\n event: ChangeEvent<HTMLInputElement>;\n instance: MRT_TableInstance<D>;\n }) => void;\n onGlobalFilterValueChangedDebounced?: ({\n event,\n instance,\n }: {\n event: ChangeEvent<HTMLInputElement>;\n instance: MRT_TableInstance<D>;\n }) => void;\n onDensityChange?: OnChangeFn<boolean>;\n onDensityChanged?: ({\n event,\n density,\n instance,\n }: {\n event: MouseEvent<HTMLButtonElement>;\n density: 'comfortable' | 'compact' | 'spacious';\n instance: MRT_TableInstance<D>;\n }) => void;\n onIsFullScreenChange?: OnChangeFn<boolean>;\n onIsFullScreenChanged?: ({\n event,\n isFullScreen,\n instance,\n }: {\n event: MouseEvent<HTMLButtonElement>;\n isFullScreen: boolean;\n instance: MRT_TableInstance<D>;\n }) => void;\n onRowClick?: ({\n event,\n row,\n instance,\n }: {\n event: MouseEvent<HTMLTableRowElement>;\n row: MRT_Row<D>;\n instance: MRT_TableInstance<D>;\n }) => void;\n onRowSelectAllChanged?: ({\n event,\n selectedRows,\n instance,\n }: {\n event: ChangeEvent;\n selectedRows: MRT_Row<D>[];\n instance: MRT_TableInstance<D>;\n }) => void;\n onRowSelectionChanged?: ({\n event,\n row,\n selectedRows,\n instance,\n }: {\n event: ChangeEvent;\n row: MRT_Row<D>;\n selectedRows: MRT_Row<D>[];\n instance: MRT_TableInstance<D>;\n }) => void;\n onShowFiltersChange?: OnChangeFn<boolean>;\n onShowFiltersChanged?: ({\n event,\n instance,\n showFilters,\n }: {\n event: MouseEvent<HTMLButtonElement>;\n instance: MRT_TableInstance<D>;\n showFilters: boolean;\n }) => void;\n onShowGlobalFilterChange?: OnChangeFn<boolean>;\n onShowGlobalFilterChanged?: ({\n event,\n instance,\n showGlobalFilter,\n }: {\n event: MouseEvent<HTMLButtonElement>;\n instance: MRT_TableInstance<D>;\n showGlobalFilter: boolean;\n }) => void;\n positionActionsColumn?: 'first' | 'last';\n positionGlobalFilter?: 'left' | 'right';\n positionPagination?: 'bottom' | 'top' | 'both';\n positionToolbarAlertBanner?: 'bottom' | 'top';\n renderDetailPanel?: ({\n row,\n instance,\n }: {\n row: MRT_Row<D>;\n instance: MRT_TableInstance<D>;\n }) => ReactNode;\n renderRowActionMenuItems?: ({\n closeMenu,\n row,\n instance,\n }: {\n closeMenu: () => void;\n row: MRT_Row<D>;\n instance: MRT_TableInstance<D>;\n }) => ReactNode[];\n renderRowActions?: ({\n row,\n instance,\n }: {\n row: MRT_Row<D>;\n instance: MRT_TableInstance<D>;\n }) => ReactNode;\n renderToolbarBottomCustomActions?: ({\n instance,\n }: {\n instance: MRT_TableInstance<D>;\n }) => ReactNode;\n renderToolbarTopCustomActions?: ({\n instance,\n }: {\n instance: MRT_TableInstance<D>;\n }) => ReactNode;\n renderToolbarInternalActions?: ({\n instance,\n MRT_ToggleGlobalFilterButton,\n MRT_ToggleFiltersButton,\n MRT_ShowHideColumnsButton,\n MRT_ToggleDensePaddingButton,\n MRT_FullScreenToggleButton,\n }: {\n instance: MRT_TableInstance<D>;\n MRT_ToggleGlobalFilterButton: FC<\n IconButtonProps & { instance: MRT_TableInstance<D> }\n >;\n MRT_ToggleFiltersButton: FC<\n IconButtonProps & { instance: MRT_TableInstance<D> }\n >;\n MRT_ShowHideColumnsButton: FC<\n IconButtonProps & { instance: MRT_TableInstance<D> }\n >;\n MRT_ToggleDensePaddingButton: FC<\n IconButtonProps & { instance: MRT_TableInstance<D> }\n >;\n MRT_FullScreenToggleButton: FC<\n IconButtonProps & { instance: MRT_TableInstance<D> }\n >;\n }) => ReactNode;\n rowCount?: number;\n rowNumberMode?: 'original' | 'static';\n selectAllMode?: 'all' | 'page';\n tableId?: string;\n virtualizerProps?: Partial<VirtualizerOptions<HTMLDivElement>>;\n };\n\nexport default <D extends Record<string, any> = {}>({\n autoResetExpanded = false,\n columnResizeMode = 'onEnd',\n defaultColumn = { minSize: 40, maxSize: 1000, size: 180 },\n editingMode = 'row',\n enableColumnActions = true,\n enableColumnFilterChangeMode = true,\n enableColumnFilters = true,\n enableColumnOrdering = false,\n enableColumnResizing = false,\n enableDensityToggle = true,\n enableExpandAll = true,\n enableFilters = true,\n enableFullScreenToggle = true,\n enableGlobalFilter = true,\n enableGlobalFilterChangeMode = true,\n enableGlobalFilterRankedResults = true,\n enableGrouping = false,\n enableHiding = true,\n enableMultiRowSelection = true,\n enableMultiSort = true,\n enablePagination = true,\n enablePinning = false,\n enableRowSelection = false,\n enableSelectAll = true,\n enableSorting = true,\n enableStickyHeader = false,\n enableTableFooter = true,\n enableTableHead = true,\n enableToolbarBottom = true,\n enableToolbarInternalActions = true,\n enableToolbarTop = true,\n icons,\n localization,\n positionActionsColumn = 'first',\n positionGlobalFilter = 'right',\n positionPagination = 'bottom',\n positionToolbarAlertBanner = 'top',\n rowNumberMode = 'original',\n selectAllMode = 'all',\n ...rest\n}: MaterialReactTableProps<D>) => (\n <MRT_TableRoot\n autoResetExpanded={autoResetExpanded}\n columnResizeMode={columnResizeMode}\n defaultColumn={defaultColumn}\n editingMode={editingMode}\n enableColumnActions={enableColumnActions}\n enableColumnFilterChangeMode={enableColumnFilterChangeMode}\n enableColumnFilters={enableColumnFilters}\n enableColumnOrdering={enableColumnOrdering}\n enableColumnResizing={enableColumnResizing}\n enableDensityToggle={enableDensityToggle}\n enableExpandAll={enableExpandAll}\n enableFilters={enableFilters}\n enableFullScreenToggle={enableFullScreenToggle}\n enableGlobalFilter={enableGlobalFilter}\n enableGlobalFilterChangeMode={enableGlobalFilterChangeMode}\n enableGlobalFilterRankedResults={enableGlobalFilterRankedResults}\n enableGrouping={enableGrouping}\n enableHiding={enableHiding}\n enableMultiRowSelection={enableMultiRowSelection}\n enableMultiSort={enableMultiSort}\n enablePagination={enablePagination}\n enablePinning={enablePinning}\n enableRowSelection={enableRowSelection}\n enableSelectAll={enableSelectAll}\n enableSorting={enableSorting}\n enableStickyHeader={enableStickyHeader}\n enableTableFooter={enableTableFooter}\n enableTableHead={enableTableHead}\n enableToolbarBottom={enableToolbarBottom}\n enableToolbarInternalActions={enableToolbarInternalActions}\n enableToolbarTop={enableToolbarTop}\n icons={{ ...MRT_Default_Icons, ...icons }}\n localization={{ ...MRT_DefaultLocalization_EN, ...localization }}\n positionActionsColumn={positionActionsColumn}\n positionGlobalFilter={positionGlobalFilter}\n positionPagination={positionPagination}\n positionToolbarAlertBanner={positionToolbarAlertBanner}\n rowNumberMode={rowNumberMode}\n selectAllMode={selectAllMode}\n {...rest}\n />\n);\n"],"names":["MRT_DefaultLocalization_EN","actions","and","cancel","changeFilterMode","changeSearchMode","clearFilter","clearSearch","clearSort","clickToCopy","columnActions","copiedToClipboard","edit","expand","expandAll","filterBetween","filterByColumn","filterContains","filterEmpty","filterEndsWith","filterEquals","filterFuzzy","filterGreaterThan","filterLessThan","filterMode","filterNotEmpty","filterNotEquals","filterStartsWith","filteringByColumn","grab","groupByColumn","groupedBy","hideAll","hideColumn","max","min","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","instance","getIsAllRowsExpanded","getIsSomeRowsExpanded","getCanSomeRowsExpand","getState","options","icons","localization","muiExpandAllButtonProps","renderDetailPanel","toggleAllRowsExpanded","density","iconButtonProps","Function","React","Tooltip","arrow","enterDelay","enterNextDelay","title","IconButton","disabled","onClick","sx","height","width","style","transform","transition","MRT_ExpandButton","row","muiExpandButtonProps","onExpandChanged","handleToggleExpand","event","toggleExpanded","getCanExpand","getIsExpanded","fuzzy","columnId","filterValue","addMeta","itemRank","rankItem","getValue","threshold","rankings","MATCHES","passed","autoRemove","val","contains","id","toString","toLowerCase","trim","includes","startsWith","endsWith","equals","notEquals","greaterThan","isNaN","lessThan","between","filterValues","undefined","empty","_filterValue","notEmpty","MRT_FilterFns","commonMenuItemStyles","py","my","alignItems","MRT_FilterOptionMenu","anchorEl","header","onSelect","setAnchorEl","enabledGlobalFilterOptions","enabledColumnFilterOptions","setCurrentFilterFns","setCurrentGlobalFilterFn","currentFilterFns","currentGlobalFilterFn","column","columnDef","allowedColumnFilterOptions","filterOptions","useMemo","option","label","divider","fn","filter","filterType","handleSelectFilterType","value","prev","setFilterValue","filterOption","Menu","anchorOrigin","vertical","horizontal","onClose","open","MenuListProps","dense","map","index","MenuItem","key","selected","MRT_ColumnPinningButtons","handlePinColumn","pinDirection","pin","Box","minWidth","textAlign","getIsPinned","size","MRT_GrabHandleButton","forwardRef","ref","placement","disableRipple","cursor","m","opacity","p","backgroundColor","getAllLeafColumnDefs","columns","lowestLevelColumns","currentCols","length","some","col","nextCols","flat","every","createGroup","table","createDataColumn","filterFn","createDisplayColumn","reorderColumn","movingColumn","receivingColumn","columnOrder","getCanPin","splice","indexOf","getLeadingDisplayColumnIds","props","positionActionsColumn","enableRowActions","enableEditing","editingMode","enableExpanding","enableGrouping","enableRowSelection","enableRowNumbers","Boolean","getTrailingDisplayColumnIds","getDefaultColumnOrderIds","c","MRT_ShowHideColumnsMenuItems","allColumns","isSubMenu","enableColumnOrdering","enableHiding","enablePinning","setColumnOrder","columnDefType","useDrop","accept","drop","newColumnOrder","dropRef","useDrag","collect","monitor","isDragging","item","type","dragRef","previewRef","switchChecked","getIsVisible","getLeafColumns","handleToggleColumnHidden","forEach","childColumn","justifyContent","pl","depth","display","flexWrap","gap","FormControlLabel","componentsProps","typography","mb","checked","control","Switch","getCanHide","getIsGrouped","onChange","Typography","alignSelf","i","MRT_ShowHideColumnsMenu","getAllColumns","getAllLeafColumns","getCenterLeafColumns","getIsAllColumnsVisible","getIsSomeColumnsPinned","getIsSomeColumnsVisible","getLeftLeafColumns","getRightLeafColumns","toggleAllColumnsVisible","columnPinning","hideAllColumns","Array","from","Set","colId","find","pt","Button","resetColumnPinning","Divider","commonListItemStyles","MRT_ColumnActionMenu","enableColumnFilterChangeMode","enableColumnFilters","enableColumnResizing","enableSorting","tableId","setShowFilters","columnSizing","columnVisibility","useState","filterMenuAnchorEl","setFilterMenuAnchorEl","showHideColumnsMenuAnchorEl","setShowHideColumnsMenuAnchorEl","handleClearSort","clearSorting","handleSortAsc","toggleSorting","handleSortDesc","handleResetColumnSize","resetSize","handleHideColumn","handleGroupByColumn","toggleGrouping","old","handleClearFilter","handleFilterByColumn","setTimeout","document","getElementById","muiTableHeadCellFilterTextFieldProps","focus","handleShowAllColumns","handleOpenFilterModeMenu","stopPropagation","currentTarget","handleOpenShowHideColumnsMenu","isSelectFilter","filterSelectOptions","showFilterModeSubMenu","getCanSort","getIsSorted","ListItemIcon","replace","String","getCanFilter","getFilterValue","onMouseEnter","getCanGroup","getCanResize","Object","values","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","getRowModel","getPaginationRowModel","getSelectedRowModel","muiSelectCheckboxProps","muiSelectAllCheckboxProps","onRowSelectionChanged","onRowSelectAllChanged","selectAllMode","handleSelectChange","getToggleAllRowsSelectedHandler","getToggleAllPageRowsSelectedHandler","selectedRows","target","flatRows","getToggleSelectedHandler","selectedRow","checkboxProps","Checkbox","getIsAllRowsSelected","getIsSelected","indeterminate","getIsSomeRowsSelected","getIsSomeSelected","inputProps","MRT_FullScreenToggleButton","rest","onIsFullScreenChanged","setIsFullScreen","isFullScreen","handleToggleFullScreen","MRT_ShowHideColumnsButton","handleClick","MRT_ToggleDensePaddingButton","onDensityChanged","setDensity","handleToggleDensePadding","nextDensity","MRT_ToggleFiltersButton","onShowFiltersChanged","showFilters","handleToggleShowFilters","MRT_ToggleGlobalFilterButton","muiSearchTextFieldProps","onShowGlobalFilterChanged","setShowGlobalFilter","showGlobalFilter","textFieldProps","handleToggleSearch","MRT_GlobalFilterTextField","setGlobalFilter","enableGlobalFilterChangeMode","onGlobalFilterValueChanged","onGlobalFilterValueChangedDebounced","globalFilter","searchValue","setSearchValue","handleChangeDebounced","useCallback","debounce","handleChange","handleGlobalFilterMenuOpen","handleClear","Collapse","orientation","TextField","placeholder","variant","InputProps","startAdornment","InputAdornment","position","endAdornment","MRT_ToolbarInternalButtons","enableDensityToggle","enableFilters","enableFullScreenToggle","enableGlobalFilter","positionGlobalFilter","renderToolbarInternalActions","zIndex","MRT_TablePagination","getPrePaginationRowModel","setPageIndex","setPageSize","muiTablePaginationProps","enableToolbarInternalActions","rowCount","pagination","pageSize","pageIndex","tablePaginationProps","handleChangeRowsPerPage","totalRowCount","rows","showFirstLastPageButtons","TablePagination","SelectProps","MenuProps","disablePadding","component","count","onPageChange","_","newPage","onRowsPerPageChange","page","rowsPerPage","rowsPerPageOptions","showFirstButton","showLastButton","mt","MRT_ToolbarAlertBanner","stackAlertBanner","muiTableToolbarAlertBannerProps","grouping","alertProps","selectMessage","groupedByMessage","Fragment","Chip","getColumn","onDelete","timeout","Alert","icon","borderRadius","fontSize","left","right","top","MRT_LinearProgressBar","alignTo","muiLinearProgressProps","isLoading","showProgressBars","linearProgressProps","mountOnEnter","unmountOnExit","bottom","LinearProgress","commonToolbarStyles","theme","lighten","palette","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_FilterTextField","inputIndex","onColumnFilterValueChanged","onColumnFilterValueChangedDebounced","mTableHeadCellFilterTextFieldProps","mcTableHeadCellFilterTextFieldProps","newFilterValues","handleFilterMenuOpen","handleClearFilterChip","Filter","filterId","filterChipLabel","charAt","toUpperCase","slice","filterPlaceholder","showChangeModeButton","fullWidth","textOverflow","helperText","htmlFor","name","FormHelperTextProps","lineHeight","whiteSpace","margin","e","disableHoverListener","mr","text","MRT_FilterRangeFields","gridTemplateColumns","MRT_TableHeadCellFilterContainer","MRT_TableHeadCellFilterLabel","filterTooltip","isArray","join","Grow","MRT_TableHeadCellResizeHandle","flexItem","onDoubleClick","borderRightWidth","touchAction","getIsResizing","userSelect","info","main","onMouseDown","getResizeHandler","onTouchStart","columnSizingInfo","deltaOffset","MRT_TableHeadCellSortLabel","sortTooltip","TableSortLabel","active","direction","MRT_TableHeadCellColumnActionsButton","muiTableHeadCellColumnActionsButtonProps","mTableHeadCellColumnActionsButtonProps","mcTableHeadCellColumnActionsButtonProps","MRT_TableHeadCell","enableColumnActions","enableMultiSort","muiTableHeadCellProps","mTableHeadCellProps","mcTableHeadCellProps","tableCellProps","headerElement","Header","renderHeader","getIsLastLeftPinnedColumn","getLeftLeafHeaders","getPinnedIndex","getIsFirstRightPinnedColumn","getTotalRight","getRightLeafHeaders","TableCell","align","colSpan","fontWeight","getStart","pb","verticalAlign","maxWidth","getSize","minSize","isPlaceholder","getToggleSortingHandler","MRT_DraggableTableHeadCell","MRT_TableHeadRow","headerGroup","muiTableHeadRowProps","tableRowProps","TableRow","headers","MRT_TableHead","getHeaderGroups","muiTableHeadProps","tableHeadProps","TableHead","MRT_EditCellTextField","cell","muiTableBodyCellEditTextFieldProps","onCellEditBlur","onCellEditChanged","setCurrentEditingCell","setValue","handleBlur","mTableBodyCellEditTextFieldProps","mcTableBodyCellEditTextFieldProps","onBlur","MRT_CopyButton","children","muiTableBodyCellCopyButtonProps","copied","setCopied","handleCopy","navigator","clipboard","writeText","mTableBodyCellCopyButtonProps","mcTableBodyCellCopyButtonProps","buttonProps","border","fontFamily","letterSpacing","textTransform","MRT_TableBodyCell","enableHover","rowIndex","enableClickToCopy","muiTableBodyCellProps","muiTableBodyCellSkeletonProps","onCellClick","onRowClick","rowNumberMode","currentEditingCell","showSkeletons","mTableCellBodyProps","mcTableCellBodyProps","skeletonWidth","Math","random","isEditable","isEditing","handleDoubleClick","_event","textField","mode","darken","Skeleton","animation","Cell","getIsPlaceholder","groupingColumnId","getIsAggregated","AggregatedCell","renderAggregatedCell","renderCell","subRows","MRT_TableDetailPanel","getVisibleLeafColumns","muiTableBodyRowProps","muiTableDetailPanelProps","onDetailPanelClick","borderBottom","getTotalSize","MRT_TableBodyRow","hover","getVisibleCells","rowA","rowB","dir","columnFiltersMeta","compareItems","sortingFns","alphanumeric","MRT_SortingFns","rankGlobalFuzzy","v","rank","MRT_TableBody","tableContainerRef","enableGlobalFilterRankedResults","enableRowVirtualization","muiTableBodyProps","virtualizerProps","sorting","tableBodyProps","getIsSomeColumnsSorted","rankedRows","sort","a","b","rowVirtualizer","useVirtual","overscan","parentRef","virtualRows","virtualItems","paddingTop","start","paddingBottom","totalSize","end","TableBody","rowOrVirtualRow","MRT_TableFooterCell","footer","muiTableFooterCellProps","mTableFooterCellProps","mcTableFooterCellProps","white","Footer","renderFooter","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","useRef","TableContainer","maxHeight","MRT_TablePaper","enableToolbarBottom","enableToolbarTop","muiTablePaperProps","body","tablePaperProps","DndProvider","backend","HTML5Backend","Paper","elevation","padding","MRT_TableRoot","setIdPrefix","substring","initialState","initState","assign","globalFilterFn","createTable","setOptions","filterFns","getCoreRowModel","getExpandedRowModel","getFacetedRowModel","getFilteredRowModel","getGroupedRowModel","getSortedRowModel","displayColumns","enableExpandAll","enableSelectAll","data","state","fill","useTableInstance","onColumnOrderChange","getSubRows","onCurrentEditingCellChange","onCurrentEditingRowChange","onCurrentFilterFnsChange","onCurrentGlobalFilterFnChange","onDensityChange","onIsFullScreenChange","onShowFiltersChange","onShowGlobalFilterChange","onColumnOrderChanged","onColumnPinningChanged","onColumnVisibilityChanged","Dialog","PaperComponent","TransitionComponent","disablePortal","fullScreen","keepMounted","transitionDuration","autoResetExpanded","columnResizeMode","defaultColumn","maxSize","enableMultiRowSelection"],"mappings":"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"}
1
+ {"version":3,"file":"material-react-table.esm.js","sources":["../src/localization.ts","../src/icons.ts","../src/buttons/MRT_ExpandAllButton.tsx","../src/buttons/MRT_ExpandButton.tsx","../src/filtersFns.ts","../src/menus/MRT_FilterOptionMenu.tsx","../src/buttons/MRT_ColumnPinningButtons.tsx","../src/buttons/MRT_GrabHandleButton.tsx","../src/utils.ts","../src/menus/MRT_ShowHideColumnsMenuItems.tsx","../src/menus/MRT_ShowHideColumnsMenu.tsx","../src/menus/MRT_ColumnActionMenu.tsx","../src/menus/MRT_RowActionMenu.tsx","../src/buttons/MRT_EditActionButtons.tsx","../src/buttons/MRT_ToggleRowActionMenuButton.tsx","../src/inputs/MRT_SelectCheckbox.tsx","../src/buttons/MRT_FullScreenToggleButton.tsx","../src/buttons/MRT_ShowHideColumnsButton.tsx","../src/buttons/MRT_ToggleDensePaddingButton.tsx","../src/buttons/MRT_ToggleFiltersButton.tsx","../src/buttons/MRT_ToggleGlobalFilterButton.tsx","../src/inputs/MRT_GlobalFilterTextField.tsx","../src/toolbar/MRT_ToolbarInternalButtons.tsx","../src/toolbar/MRT_TablePagination.tsx","../src/toolbar/MRT_ToolbarAlertBanner.tsx","../src/toolbar/MRT_LinearProgressBar.tsx","../src/toolbar/MRT_ToolbarTop.tsx","../src/toolbar/MRT_ToolbarBottom.tsx","../src/inputs/MRT_FilterTextField.tsx","../src/inputs/MRT_FilterRangeFields.tsx","../src/head/MRT_TableHeadCellFilterContainer.tsx","../src/head/MRT_TableHeadCellFilterLabel.tsx","../src/head/MRT_TableHeadCellResizeHandle.tsx","../src/head/MRT_TableHeadCellSortLabel.tsx","../src/head/MRT_TableHeadCellColumnActionsButton.tsx","../src/head/MRT_TableHeadCell.tsx","../src/head/MRT_DraggableTableHeadCell.tsx","../src/head/MRT_TableHeadRow.tsx","../src/head/MRT_TableHead.tsx","../src/inputs/MRT_EditCellTextField.tsx","../src/buttons/MRT_CopyButton.tsx","../src/body/MRT_TableBodyCell.tsx","../src/body/MRT_TableDetailPanel.tsx","../src/body/MRT_TableBodyRow.tsx","../src/sortingFns.ts","../src/body/MRT_TableBody.tsx","../src/footer/MRT_TableFooterCell.tsx","../src/footer/MRT_TableFooterRow.tsx","../src/footer/MRT_TableFooter.tsx","../src/table/MRT_Table.tsx","../src/table/MRT_TableContainer.tsx","../src/table/MRT_TablePaper.tsx","../src/table/MRT_TableRoot.tsx","../src/MaterialReactTable.tsx"],"sourcesContent":["export interface MRT_Localization {\n actions: string;\n and: string;\n cancel: string;\n changeFilterMode: string;\n changeSearchMode: string;\n clearFilter: string;\n clearSearch: string;\n clearSort: string;\n clickToCopy: string;\n columnActions: string;\n copiedToClipboard: string;\n edit: string;\n expand: string;\n expandAll: string;\n filterBetween: string;\n filterByColumn: string;\n filterContains: string;\n filterEmpty: string;\n filterEndsWith: string;\n filterEquals: string;\n filterFuzzy: string;\n filterGreaterThan: string;\n filterLessThan: string;\n filterMode: string;\n filterNotEmpty: string;\n filterNotEquals: string;\n filterStartsWith: string;\n filteringByColumn: string;\n grab: string;\n groupByColumn: string;\n groupedBy: string;\n hideAll: string;\n hideColumn: string;\n max: string;\n min: string;\n pinToLeft: string;\n pinToRight: string;\n resetColumnSize: string;\n resetOrder: string;\n rowActions: string;\n rowNumber: string;\n rowNumbers: string;\n save: string;\n search: string;\n select: string;\n selectedCountOfRowCountRowsSelected: string;\n showAll: string;\n showAllColumns: string;\n showHideColumns: string;\n showHideFilters: string;\n showHideSearch: string;\n sortByColumnAsc: string;\n sortByColumnDesc: string;\n sortedByColumnAsc: string;\n sortedByColumnDesc: string;\n thenBy: string;\n toggleDensity: string;\n toggleFullScreen: string;\n toggleSelectAll: string;\n toggleSelectRow: string;\n toggleVisibility: string;\n ungroupByColumn: string;\n unpin: string;\n unpinAll: string;\n unsorted: string;\n}\n\nexport const MRT_DefaultLocalization_EN: MRT_Localization = {\n actions: 'Actions',\n and: 'and',\n cancel: 'Cancel',\n changeFilterMode: 'Change filter mode',\n changeSearchMode: 'Change search mode',\n clearFilter: 'Clear filter',\n clearSearch: 'Clear search',\n clearSort: 'Clear sort',\n clickToCopy: 'Click to copy',\n columnActions: 'Column Actions',\n copiedToClipboard: 'Copied to clipboard',\n edit: 'Edit',\n expand: 'Expand',\n expandAll: 'Expand all',\n filterBetween: 'Between',\n filterByColumn: 'Filter by {column}',\n filterContains: 'Contains',\n filterEmpty: 'Empty',\n filterEndsWith: 'Ends With',\n filterEquals: 'Equals',\n filterFuzzy: 'Fuzzy',\n filterGreaterThan: 'Greater Than',\n filterLessThan: 'Less Than',\n filterMode: 'Filter Mode: {filterType}',\n filterNotEmpty: 'Not Empty',\n filterNotEquals: 'Not Equals',\n filterStartsWith: 'Starts With',\n filteringByColumn: 'Filtering by {column} - {filterType} {filterValue}',\n grab: 'Grab',\n groupByColumn: 'Group by {column}',\n groupedBy: 'Grouped by ',\n hideAll: 'Hide all',\n hideColumn: 'Hide {column} column',\n max: 'Max',\n min: 'Min',\n 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 instance: MRT_TableInstance;\n}\n\nexport const MRT_ExpandAllButton: FC<Props> = ({ instance }) => {\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 } = instance;\n\n const { density } = getState();\n\n const iconButtonProps =\n muiExpandAllButtonProps instanceof Function\n ? muiExpandAllButtonProps({ instance })\n : muiExpandAllButtonProps;\n\n return (\n <Tooltip\n arrow\n enterDelay={1000}\n enterNextDelay={1000}\n title={localization.expandAll}\n >\n <span>\n <IconButton\n aria-label={localization.expandAll}\n disabled={!getCanSomeRowsExpand() && !renderDetailPanel}\n onClick={() => toggleAllRowsExpanded(!getIsAllRowsExpanded())}\n {...iconButtonProps}\n sx={{\n height: density === 'compact' ? '1.75rem' : '2.25rem',\n width: density === 'compact' ? '1.75rem' : '2.25rem',\n ...iconButtonProps?.sx,\n }}\n >\n <KeyboardDoubleArrowDownIcon\n style={{\n transform: `rotate(${\n getIsAllRowsExpanded()\n ? -180\n : getIsSomeRowsExpanded()\n ? -90\n : 0\n }deg)`,\n transition: 'transform 0.2s',\n }}\n />\n </IconButton>\n </span>\n </Tooltip>\n );\n};\n","import React, { FC } from 'react';\nimport { IconButton, Tooltip } from '@mui/material';\nimport type { MRT_Row, MRT_TableInstance } from '..';\n\ninterface Props {\n row: MRT_Row;\n instance: MRT_TableInstance;\n}\n\nexport const MRT_ExpandButton: FC<Props> = ({ row, instance }) => {\n const {\n getState,\n options: {\n icons: { ExpandMoreIcon },\n localization,\n muiExpandButtonProps,\n renderDetailPanel,\n },\n } = instance;\n\n const { density } = getState();\n\n const iconButtonProps =\n muiExpandButtonProps instanceof Function\n ? muiExpandButtonProps({ instance, row })\n : muiExpandButtonProps;\n\n const handleToggleExpand = () => {\n row.toggleExpanded();\n };\n\n return (\n <Tooltip\n arrow\n enterDelay={1000}\n enterNextDelay={1000}\n title={localization.expand}\n >\n <span>\n <IconButton\n aria-label={localization.expand}\n disabled={!row.getCanExpand() && !renderDetailPanel}\n onClick={handleToggleExpand}\n {...iconButtonProps}\n sx={{\n height: density === 'compact' ? '1.75rem' : '2.25rem',\n width: density === 'compact' ? '1.75rem' : '2.25rem',\n ...iconButtonProps?.sx,\n }}\n >\n <ExpandMoreIcon\n style={{\n transform: `rotate(${\n !row.getCanExpand() && !renderDetailPanel\n ? -90\n : row.getIsExpanded()\n ? -180\n : 0\n }deg)`,\n transition: 'transform 0.2s',\n }}\n />\n </IconButton>\n </span>\n </Tooltip>\n );\n};\n","import { rankItem, rankings, RankingInfo } from '@tanstack/match-sorter-utils';\nimport { MRT_Row } from '.';\n\nexport const fuzzy = (\n row: MRT_Row,\n columnId: string,\n filterValue: string,\n addMeta: (item: RankingInfo) => void,\n) => {\n const itemRank = rankItem(row.getValue(columnId), filterValue, {\n threshold: rankings.MATCHES,\n });\n addMeta(itemRank);\n return itemRank.passed;\n};\n\nfuzzy.autoRemove = (val: any) => !val;\n\nexport const contains = (\n row: MRT_Row,\n id: string,\n filterValue: string | number,\n) =>\n row\n .getValue(id)\n .toString()\n .toLowerCase()\n .trim()\n .includes(filterValue.toString().toLowerCase().trim());\n\ncontains.autoRemove = (val: any) => !val;\n\nexport const startsWith = (\n row: MRT_Row,\n id: string,\n filterValue: string | number,\n) =>\n row\n .getValue(id)\n .toString()\n .toLowerCase()\n .trim()\n .startsWith(filterValue.toString().toLowerCase().trim());\n\nstartsWith.autoRemove = (val: any) => !val;\n\nexport const endsWith = (\n row: MRT_Row,\n id: string,\n filterValue: string | number,\n) =>\n row\n .getValue(id)\n .toString()\n .toLowerCase()\n .trim()\n .endsWith(filterValue.toString().toLowerCase().trim());\n\nendsWith.autoRemove = (val: any) => !val;\n\nexport const equals = (\n row: MRT_Row,\n id: string,\n filterValue: string | number,\n) =>\n row.getValue(id).toString().toLowerCase().trim() ===\n filterValue.toString().toLowerCase().trim();\n\nequals.autoRemove = (val: any) => !val;\n\nexport const notEquals = (\n row: MRT_Row,\n id: string,\n filterValue: string | number,\n) =>\n row.getValue(id).toString().toLowerCase().trim() !==\n filterValue.toString().toLowerCase().trim();\n\nnotEquals.autoRemove = (val: any) => !val;\n\nexport const greaterThan = (\n row: MRT_Row,\n id: string,\n filterValue: string | number,\n) =>\n !isNaN(+filterValue) && !isNaN(+row.getValue(id))\n ? +row.getValue(id) >= +filterValue\n : row.getValue(id).toString().toLowerCase().trim() >\n filterValue.toString().toLowerCase().trim();\n\ngreaterThan.autoRemove = (val: any) => !val;\n\nexport const lessThan = (\n row: MRT_Row,\n id: string,\n filterValue: string | number,\n) =>\n !isNaN(+filterValue) && !isNaN(+row.getValue(id))\n ? +row.getValue(id) <= +filterValue\n : row.getValue(id).toString().toLowerCase().trim() <\n filterValue.toString().toLowerCase().trim();\n\nlessThan.autoRemove = (val: any) => !val;\n\nexport const between = (\n row: MRT_Row,\n id: string,\n filterValues: [string | number, string | number],\n) =>\n ((['', undefined] as any[]).includes(filterValues[0]) ||\n greaterThan(row, id, filterValues[0])) &&\n ((!isNaN(+filterValues[0]) &&\n !isNaN(+filterValues[1]) &&\n +filterValues[0] > +filterValues[1]) ||\n (['', undefined] as any[]).includes(filterValues[1]) ||\n lessThan(row, id, filterValues[1]));\n\nbetween.autoRemove = (val: any) => !val;\n\nexport const empty = (\n row: MRT_Row,\n id: string,\n _filterValue: string | number,\n) => !row.getValue(id).toString().trim();\n\nempty.autoRemove = (val: any) => !val;\n\nexport const notEmpty = (\n row: MRT_Row,\n id: string,\n _filterValue: string | number,\n) => !!row.getValue(id).toString().trim();\n\nnotEmpty.autoRemove = (val: any) => !val;\n\nexport const MRT_FilterFns = {\n between,\n contains,\n empty,\n endsWith,\n equals,\n fuzzy,\n greaterThan,\n lessThan,\n notEmpty,\n notEquals,\n startsWith,\n};\n","import React, { FC, useMemo } from 'react';\nimport { Menu, MenuItem } from '@mui/material';\nimport type {\n MRT_FilterFn,\n MRT_FILTER_OPTION,\n MRT_Header,\n MRT_TableInstance,\n} from '..';\nimport {\n between,\n contains,\n empty,\n endsWith,\n equals,\n fuzzy,\n greaterThan,\n lessThan,\n notEmpty,\n notEquals,\n startsWith,\n} from '../filtersFns';\n\nconst commonMenuItemStyles = {\n py: '6px',\n my: 0,\n alignItems: 'center',\n};\n\ninterface Props {\n anchorEl: HTMLElement | null;\n header?: MRT_Header;\n onSelect?: () => void;\n setAnchorEl: (anchorEl: HTMLElement | null) => void;\n instance: MRT_TableInstance;\n}\n\nexport const MRT_FilterOptionMenu: FC<Props> = ({\n anchorEl,\n header,\n onSelect,\n setAnchorEl,\n instance,\n}) => {\n const {\n getState,\n options: {\n enabledGlobalFilterOptions,\n enabledColumnFilterOptions,\n localization,\n },\n setCurrentFilterFns,\n setCurrentGlobalFilterFn,\n } = instance;\n\n const { density, currentFilterFns, currentGlobalFilterFn } = getState();\n\n const { column } = header ?? {};\n\n const { columnDef } = column ?? {};\n\n const allowedColumnFilterOptions =\n columnDef?.enabledColumnFilterOptions ?? enabledColumnFilterOptions;\n\n const filterOptions = useMemo(\n () =>\n [\n {\n option: 'fuzzy',\n label: localization.filterFuzzy,\n divider: false,\n fn: fuzzy,\n },\n {\n option: 'contains',\n label: localization.filterContains,\n divider: false,\n fn: contains,\n },\n {\n option: 'startsWith',\n label: localization.filterStartsWith,\n divider: false,\n fn: startsWith,\n },\n {\n option: 'endsWith',\n label: localization.filterEndsWith,\n divider: true,\n fn: endsWith,\n },\n {\n option: 'equals',\n label: localization.filterEquals,\n divider: false,\n fn: equals,\n },\n {\n option: 'notEquals',\n label: localization.filterNotEquals,\n divider: true,\n fn: notEquals,\n },\n {\n option: 'between',\n label: localization.filterBetween,\n divider: false,\n fn: between,\n },\n {\n option: 'greaterThan',\n label: localization.filterGreaterThan,\n divider: false,\n fn: greaterThan,\n },\n {\n option: 'lessThan',\n label: localization.filterLessThan,\n divider: true,\n fn: lessThan,\n },\n {\n option: 'empty',\n label: localization.filterEmpty,\n divider: false,\n fn: empty,\n },\n {\n option: 'notEmpty',\n label: localization.filterNotEmpty,\n divider: false,\n fn: notEmpty,\n },\n ].filter((filterType) =>\n columnDef\n ? allowedColumnFilterOptions === undefined ||\n allowedColumnFilterOptions?.includes(filterType.option)\n : (!enabledGlobalFilterOptions ||\n enabledGlobalFilterOptions.includes(filterType.option)) &&\n ['fuzzy', 'contains'].includes(filterType.option),\n ) as Array<{\n option: MRT_FILTER_OPTION;\n label: string;\n divider: boolean;\n fn: Function;\n }>,\n [],\n );\n\n const handleSelectFilterType = (value: string) => {\n if (header && column) {\n setCurrentFilterFns((prev: { [key: string]: MRT_FilterFn }) => ({\n ...prev,\n [header.id]: value,\n }));\n if (['empty', 'notEmpty'].includes(value)) {\n column.setFilterValue(' ');\n } else if (value === 'between') {\n column.setFilterValue(['', '']);\n } else {\n column.setFilterValue('');\n }\n } else {\n setCurrentGlobalFilterFn(value);\n }\n setAnchorEl(null);\n onSelect?.();\n };\n\n const filterOption = !!header\n ? currentFilterFns[header.id]\n : currentGlobalFilterFn;\n\n return (\n <Menu\n anchorEl={anchorEl}\n anchorOrigin={{ vertical: 'center', horizontal: 'right' }}\n onClose={() => setAnchorEl(null)}\n open={!!anchorEl}\n MenuListProps={{\n dense: density === 'compact',\n }}\n >\n {filterOptions.map(({ option, label, divider, fn }, index) => (\n <MenuItem\n divider={divider}\n key={index}\n onClick={() => handleSelectFilterType(option as string)}\n selected={option === filterOption || fn === filterOption}\n sx={commonMenuItemStyles}\n value={option as string}\n >\n {label}\n </MenuItem>\n ))}\n </Menu>\n );\n};\n","import React, { FC } from 'react';\nimport { Box, IconButton, Tooltip } from '@mui/material';\nimport type { MRT_Column, MRT_TableInstance } from '..';\n\ninterface Props {\n column: MRT_Column;\n instance: MRT_TableInstance;\n}\n\nexport const MRT_ColumnPinningButtons: FC<Props> = ({ column, instance }) => {\n const {\n options: {\n icons: { PushPinIcon },\n localization,\n },\n } = instance;\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, Tooltip } from '@mui/material';\nimport React, { FC, forwardRef, Ref } from 'react';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n ref: Ref<HTMLButtonElement>;\n instance: MRT_TableInstance;\n}\n\nexport const MRT_GrabHandleButton: FC<Props> = forwardRef(\n ({ instance }, ref) => {\n const {\n options: {\n icons: { DragHandleIcon },\n localization,\n },\n } = instance;\n\n return (\n <Tooltip\n arrow\n enterDelay={1000}\n enterNextDelay={1000}\n placement=\"top\"\n title={localization.grab}\n >\n <IconButton\n disableRipple\n ref={ref}\n size=\"small\"\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 }}\n >\n <DragHandleIcon />\n </IconButton>\n </Tooltip>\n );\n },\n);\n","import { ColumnDef, ColumnOrderState, Table } from '@tanstack/react-table';\nimport {\n MaterialReactTableProps,\n MRT_Column,\n MRT_ColumnDef,\n MRT_FilterFn,\n} from '.';\nimport { MRT_FilterFns } from './filtersFns';\n\nexport const getAllLeafColumnDefs = (\n columns: MRT_ColumnDef[],\n): MRT_ColumnDef[] => {\n let lowestLevelColumns: MRT_ColumnDef[] = columns;\n let currentCols: MRT_ColumnDef[] | undefined = columns;\n while (!!currentCols?.length && currentCols.some((col) => col.columns)) {\n const nextCols: MRT_ColumnDef[] = currentCols\n .filter((col) => !!col.columns)\n .map((col) => col.columns)\n .flat() as MRT_ColumnDef[];\n if (nextCols.every((col) => !col?.columns)) {\n lowestLevelColumns = [...lowestLevelColumns, ...nextCols];\n }\n currentCols = nextCols;\n }\n return lowestLevelColumns.filter((col) => !col.columns);\n};\n\nexport const createGroup = <D extends Record<string, any> = {}>(\n table: Table<D>,\n column: MRT_ColumnDef<D>,\n currentFilterFns: { [key: string]: MRT_FilterFn },\n): ColumnDef<D> =>\n table.createGroup({\n ...column,\n columns: column?.columns?.map?.((col) =>\n col.columns\n ? createGroup<D>(table, col, currentFilterFns)\n : createDataColumn(table, col, currentFilterFns),\n ),\n } as any);\n\nexport const createDataColumn = <D extends Record<string, any> = {}>(\n table: Table<D>,\n column: MRT_ColumnDef<D>,\n currentFilterFns: { [key: string]: MRT_FilterFn },\n): ColumnDef<D> => // @ts-ignore\n table.createDataColumn(column.id, {\n filterFn:\n currentFilterFns[column.id] instanceof Function\n ? currentFilterFns[column.id]\n : // @ts-ignore\n MRT_FilterFns[currentFilterFns[column.id]],\n ...column,\n }) as any;\n\nexport const createDisplayColumn = <D extends Record<string, any> = {}>(\n table: Table<D>,\n column: Omit<MRT_ColumnDef<D>, 'header'> & { header?: string },\n): ColumnDef<D> => table.createDisplayColumn(column as ColumnDef<D>);\n\nexport const reorderColumn = (\n movingColumn: MRT_Column,\n receivingColumn: MRT_Column,\n columnOrder: ColumnOrderState,\n): ColumnOrderState => {\n if (movingColumn.getCanPin()) {\n movingColumn.pin(receivingColumn.getIsPinned());\n }\n columnOrder.splice(\n columnOrder.indexOf(receivingColumn.id),\n 0,\n columnOrder.splice(columnOrder.indexOf(movingColumn.id), 1)[0],\n );\n return [...columnOrder];\n};\n\nexport const getLeadingDisplayColumnIds = (\n props: MaterialReactTableProps<any>,\n) =>\n [\n ((props.positionActionsColumn === 'first' && props.enableRowActions) ||\n (props.enableEditing && props.editingMode === 'row')) &&\n 'mrt-row-actions',\n (props.enableExpanding || props.enableGrouping) && 'mrt-expand',\n props.enableRowSelection && 'mrt-select',\n props.enableRowNumbers && 'mrt-row-numbers',\n ].filter(Boolean) as string[];\n\nexport const getTrailingDisplayColumnIds = (\n props: MaterialReactTableProps<any>,\n) => [\n ((props.positionActionsColumn === 'last' && props.enableRowActions) ||\n (props.enableEditing && props.editingMode === 'row')) &&\n 'mrt-row-actions',\n];\n\nexport const getDefaultColumnOrderIds = (props: MaterialReactTableProps<any>) =>\n [\n ...getLeadingDisplayColumnIds(props),\n ...getAllLeafColumnDefs(props.columns as MRT_ColumnDef[]).map((c) => c.id),\n ...getTrailingDisplayColumnIds(props),\n ].filter(Boolean) as string[];\n","import React, { FC, Ref } from 'react';\nimport { useDrag, useDrop } from 'react-dnd';\nimport {\n Box,\n FormControlLabel,\n MenuItem,\n Switch,\n Tooltip,\n Typography,\n} from '@mui/material';\nimport { MRT_ColumnPinningButtons } from '../buttons/MRT_ColumnPinningButtons';\nimport { MRT_GrabHandleButton } from '../buttons/MRT_GrabHandleButton';\nimport { reorderColumn } from '../utils';\nimport type { MRT_Column, MRT_TableInstance } from '..';\n\ninterface Props {\n allColumns: MRT_Column[];\n column: MRT_Column;\n isSubMenu?: boolean;\n instance: MRT_TableInstance;\n}\n\nexport const MRT_ShowHideColumnsMenuItems: FC<Props> = ({\n allColumns,\n column,\n isSubMenu,\n instance,\n}) => {\n const {\n getState,\n options: {\n enableColumnOrdering,\n enableHiding,\n enablePinning,\n localization,\n },\n setColumnOrder,\n } = instance;\n\n const { columnOrder } = getState();\n\n const { columnDef, columnDefType } = column;\n\n const [, dropRef] = useDrop({\n accept: 'column',\n drop: (movingColumn: MRT_Column) => {\n const newColumnOrder = reorderColumn(movingColumn, column, columnOrder);\n setColumnOrder(newColumnOrder);\n },\n });\n\n const [, dragRef, previewRef] = useDrag({\n collect: (monitor) => ({\n isDragging: monitor.isDragging(),\n }),\n item: () => column,\n type: 'column',\n });\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 return (\n <>\n <MenuItem\n ref={columnDefType === 'data' ? dropRef : undefined}\n sx={{\n alignItems: 'center',\n justifyContent: 'flex-start',\n my: 0,\n pl: `${(column.depth + 0.5) * 2}rem`,\n py: '6px',\n }}\n >\n <Box\n ref={previewRef}\n sx={{\n display: 'flex',\n flexWrap: 'nowrap',\n gap: '8px',\n }}\n >\n {columnDefType !== 'group' &&\n enableColumnOrdering &&\n !allColumns.some((col) => col.columnDefType === 'group') &&\n (columnDef.enableColumnOrdering !== false ? (\n <MRT_GrabHandleButton\n ref={dragRef as Ref<HTMLButtonElement>}\n instance={instance}\n />\n ) : (\n <Box sx={{ width: '28px' }} />\n ))}\n {enablePinning &&\n !isSubMenu &&\n (column.getCanPin() ? (\n <MRT_ColumnPinningButtons column={column} instance={instance} />\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 key={`${i}-${c.id}`}\n column={c}\n isSubMenu={isSubMenu}\n instance={instance}\n />\n ))}\n </>\n );\n};\n","import React, { FC, useMemo } from 'react';\nimport { Button, Menu, Divider, Box } from '@mui/material';\nimport { MRT_ShowHideColumnsMenuItems } from './MRT_ShowHideColumnsMenuItems';\nimport type { MRT_Column, MRT_TableInstance } from '..';\nimport { getDefaultColumnOrderIds } from '../utils';\n\ninterface Props {\n anchorEl: HTMLElement | null;\n isSubMenu?: boolean;\n setAnchorEl: (anchorEl: HTMLElement | null) => void;\n instance: MRT_TableInstance;\n}\n\nexport const MRT_ShowHideColumnsMenu: FC<Props> = ({\n anchorEl,\n isSubMenu,\n setAnchorEl,\n instance,\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 } = instance;\n\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.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 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 instance.setColumnOrder(\n getDefaultColumnOrderIds(instance.options as any),\n )\n }\n >\n {localization.resetOrder}\n </Button>\n )}\n {!isSubMenu && enablePinning && (\n <Button\n disabled={!getIsSomeColumnsPinned()}\n onClick={() => instance.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 isSubMenu={isSubMenu}\n key={`${index}-${column.id}`}\n instance={instance}\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 instance: MRT_TableInstance;\n}\n\nexport const MRT_ColumnActionMenu: FC<Props> = ({\n anchorEl,\n header,\n setAnchorEl,\n instance,\n}) => {\n const {\n getState,\n toggleAllColumnsVisible,\n setColumnOrder,\n options: {\n enableColumnFilterChangeMode,\n enableColumnFilters,\n enableColumnResizing,\n enableGrouping,\n enableHiding,\n enablePinning,\n enableSorting,\n enabledColumnFilterOptions,\n icons: {\n ArrowRightIcon,\n ClearAllIcon,\n ViewColumnIcon,\n DynamicFeedIcon,\n FilterListIcon,\n FilterListOffIcon,\n PushPinIcon,\n SortIcon,\n RestartAltIcon,\n VisibilityOffIcon,\n },\n tableId,\n localization,\n },\n setShowFilters,\n } = instance;\n\n const { column } = header;\n\n const { columnDef } = column;\n\n const { columnSizing, columnVisibility, density } = getState();\n\n const [filterMenuAnchorEl, setFilterMenuAnchorEl] =\n useState<null | HTMLElement>(null);\n\n const [showHideColumnsMenuAnchorEl, setShowHideColumnsMenuAnchorEl] =\n useState<null | HTMLElement>(null);\n\n const handleClearSort = () => {\n column.clearSorting();\n setAnchorEl(null);\n };\n\n const handleSortAsc = () => {\n column.toggleSorting(false);\n setAnchorEl(null);\n };\n\n const handleSortDesc = () => {\n column.toggleSorting(true);\n setAnchorEl(null);\n };\n\n const handleResetColumnSize = () => {\n column.resetSize();\n setAnchorEl(null);\n };\n\n const handleHideColumn = () => {\n column.toggleVisibility(false);\n setAnchorEl(null);\n };\n\n const handlePinColumn = (pinDirection: 'left' | 'right' | false) => {\n column.pin(pinDirection);\n setAnchorEl(null);\n };\n\n const handleGroupByColumn = () => {\n column.toggleGrouping();\n setColumnOrder((old) => ['mrt-expand', ...old]);\n setAnchorEl(null);\n };\n\n const handleClearFilter = () => {\n column.setFilterValue('');\n setAnchorEl(null);\n };\n\n const handleFilterByColumn = () => {\n setShowFilters(true);\n setTimeout(\n () =>\n document\n .getElementById(\n // @ts-ignore\n header.muiTableHeadCellFilterTextFieldProps?.id ??\n `mrt-${tableId}-${header.id}-filter-text-field`,\n )\n ?.focus(),\n 200,\n );\n setAnchorEl(null);\n };\n\n const handleShowAllColumns = () => {\n toggleAllColumnsVisible(true);\n setAnchorEl(null);\n };\n\n const handleOpenFilterModeMenu = (event: React.MouseEvent<HTMLElement>) => {\n event.stopPropagation();\n setFilterMenuAnchorEl(event.currentTarget);\n };\n\n const handleOpenShowHideColumnsMenu = (\n event: React.MouseEvent<HTMLElement>,\n ) => {\n event.stopPropagation();\n setShowHideColumnsMenuAnchorEl(event.currentTarget);\n };\n\n const isSelectFilter = !!columnDef.filterSelectOptions;\n\n const allowedColumnFilterOptions =\n columnDef?.enabledColumnFilterOptions ?? enabledColumnFilterOptions;\n\n const showFilterModeSubMenu =\n enableColumnFilterChangeMode &&\n columnDef.enableColumnFilterChangeMode !== false &&\n !isSelectFilter &&\n (allowedColumnFilterOptions === undefined ||\n !!allowedColumnFilterOptions?.length);\n\n return (\n <Menu\n anchorEl={anchorEl}\n open={!!anchorEl}\n onClose={() => setAnchorEl(null)}\n MenuListProps={{\n dense: density === 'compact',\n }}\n >\n {enableSorting &&\n column.getCanSort() && [\n <MenuItem\n disabled={!column.getIsSorted()}\n key={0}\n onClick={handleClearSort}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <ClearAllIcon />\n </ListItemIcon>\n {localization.clearSort}\n </Box>\n </MenuItem>,\n <MenuItem\n disabled={column.getIsSorted() === 'asc'}\n key={1}\n onClick={handleSortAsc}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <SortIcon />\n </ListItemIcon>\n {localization.sortByColumnAsc?.replace(\n '{column}',\n String(columnDef.header),\n )}\n </Box>\n </MenuItem>,\n <MenuItem\n divider={enableColumnFilters || enableGrouping || enableHiding}\n key={2}\n disabled={column.getIsSorted() === 'desc'}\n onClick={handleSortDesc}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <SortIcon style={{ transform: 'rotate(180deg) scaleX(-1)' }} />\n </ListItemIcon>\n {localization.sortByColumnDesc?.replace(\n '{column}',\n String(columnDef.header),\n )}\n </Box>\n </MenuItem>,\n ]}\n {enableColumnFilters &&\n column.getCanFilter() &&\n [\n <MenuItem\n disabled={!column.getFilterValue()}\n key={0}\n onClick={handleClearFilter}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <FilterListOffIcon />\n </ListItemIcon>\n {localization.clearFilter}\n </Box>\n </MenuItem>,\n <MenuItem\n divider={enableGrouping || enableHiding}\n key={1}\n onClick={handleFilterByColumn}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <FilterListIcon />\n </ListItemIcon>\n {localization.filterByColumn?.replace(\n '{column}',\n String(columnDef.header),\n )}\n </Box>\n {showFilterModeSubMenu && (\n <IconButton\n onClick={handleOpenFilterModeMenu}\n onMouseEnter={handleOpenFilterModeMenu}\n size=\"small\"\n sx={{ p: 0 }}\n >\n <ArrowRightIcon />\n </IconButton>\n )}\n </MenuItem>,\n showFilterModeSubMenu && (\n <MRT_FilterOptionMenu\n anchorEl={filterMenuAnchorEl}\n header={header}\n key={2}\n onSelect={handleFilterByColumn}\n setAnchorEl={setFilterMenuAnchorEl}\n instance={instance}\n />\n ),\n ].filter(Boolean)}\n {enableGrouping &&\n column.getCanGroup() && [\n <MenuItem\n divider={enablePinning}\n key={0}\n onClick={handleGroupByColumn}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <DynamicFeedIcon />\n </ListItemIcon>\n {localization[\n column.getIsGrouped() ? 'ungroupByColumn' : 'groupByColumn'\n ]?.replace('{column}', String(columnDef.header))}\n </Box>\n </MenuItem>,\n ]}\n {enablePinning &&\n column.getCanPin() && [\n <MenuItem\n disabled={column.getIsPinned() === 'left' || !column.getCanPin()}\n key={0}\n onClick={() => handlePinColumn('left')}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <PushPinIcon style={{ transform: 'rotate(90deg)' }} />\n </ListItemIcon>\n {localization.pinToLeft}\n </Box>\n </MenuItem>,\n <MenuItem\n disabled={column.getIsPinned() === 'right' || !column.getCanPin()}\n key={1}\n onClick={() => handlePinColumn('right')}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <PushPinIcon style={{ transform: 'rotate(-90deg)' }} />\n </ListItemIcon>\n {localization.pinToRight}\n </Box>\n </MenuItem>,\n <MenuItem\n disabled={!column.getIsPinned()}\n divider={enableHiding}\n key={2}\n onClick={() => handlePinColumn(false)}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <PushPinIcon />\n </ListItemIcon>\n {localization.unpin}\n </Box>\n </MenuItem>,\n ]}\n {enableColumnResizing && [\n <MenuItem\n disabled={!column.getCanResize() || !columnSizing[column.id]}\n key={0}\n onClick={handleResetColumnSize}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <RestartAltIcon />\n </ListItemIcon>\n {localization.resetColumnSize}\n </Box>\n </MenuItem>,\n ]}\n {enableHiding && [\n <MenuItem\n disabled={columnDef.enableHiding === false}\n key={0}\n onClick={handleHideColumn}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <VisibilityOffIcon />\n </ListItemIcon>\n {localization.hideColumn?.replace(\n '{column}',\n String(columnDef.header),\n )}\n </Box>\n </MenuItem>,\n <MenuItem\n disabled={\n !Object.values(columnVisibility).filter((visible) => !visible)\n .length\n }\n key={1}\n onClick={handleShowAllColumns}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <ViewColumnIcon />\n </ListItemIcon>\n {localization.showAllColumns?.replace(\n '{column}',\n String(columnDef.header),\n )}\n </Box>\n <IconButton\n onClick={handleOpenShowHideColumnsMenu}\n onMouseEnter={handleOpenShowHideColumnsMenu}\n size=\"small\"\n sx={{ p: 0 }}\n >\n <ArrowRightIcon />\n </IconButton>\n </MenuItem>,\n <MRT_ShowHideColumnsMenu\n anchorEl={showHideColumnsMenuAnchorEl}\n isSubMenu\n key={2}\n setAnchorEl={setShowHideColumnsMenuAnchorEl}\n instance={instance}\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 instance: MRT_TableInstance;\n}\n\nexport const MRT_RowActionMenu: FC<Props> = ({\n anchorEl,\n handleEdit,\n row,\n setAnchorEl,\n instance,\n}) => {\n const {\n getState,\n options: {\n icons: { EditIcon },\n enableEditing,\n localization,\n renderRowActionMenuItems,\n },\n } = instance;\n\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 instance,\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 instance: MRT_TableInstance;\n}\n\nexport const MRT_EditActionButtons: FC<Props> = ({ row, instance }) => {\n const {\n getState,\n options: {\n icons: { CancelIcon, SaveIcon },\n localization,\n onEditRowSubmit,\n },\n setCurrentEditingRow,\n } = instance;\n\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, instance });\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 instance: MRT_TableInstance;\n}\n\nexport const MRT_ToggleRowActionMenuButton: FC<Props> = ({ row, instance }) => {\n const {\n getState,\n options: {\n enableEditing,\n icons: { EditIcon, MoreHorizIcon },\n localization,\n renderRowActionMenuItems,\n renderRowActions,\n },\n setCurrentEditingRow,\n } = instance;\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, instance })}</>\n ) : row.id === currentEditingRow?.id ? (\n <MRT_EditActionButtons row={row} instance={instance} />\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 instance={instance}\n />\n </>\n ) : null}\n </>\n );\n};\n","import React, { ChangeEvent, FC } from 'react';\nimport { Checkbox, Tooltip } from '@mui/material';\nimport type { MRT_Row, MRT_TableInstance } from '..';\n\ninterface Props {\n row?: MRT_Row;\n selectAll?: boolean;\n instance: MRT_TableInstance;\n}\n\nexport const MRT_SelectCheckbox: FC<Props> = ({ row, selectAll, instance }) => {\n const {\n getState,\n options: {\n localization,\n muiSelectCheckboxProps,\n muiSelectAllCheckboxProps,\n selectAllMode,\n },\n } = instance;\n\n const { density } = getState();\n\n const handleSelectChange = (event: ChangeEvent<HTMLInputElement>) => {\n if (selectAll) {\n if (selectAllMode === 'all') {\n instance.getToggleAllRowsSelectedHandler()(event as any);\n } else if (selectAllMode === 'page') {\n instance.getToggleAllPageRowsSelectedHandler()(event as any);\n }\n } else if (row) {\n row?.getToggleSelectedHandler()(event as any);\n }\n };\n\n const checkboxProps = selectAll\n ? muiSelectAllCheckboxProps instanceof Function\n ? muiSelectAllCheckboxProps({ instance })\n : muiSelectAllCheckboxProps\n : muiSelectCheckboxProps instanceof Function\n ? muiSelectCheckboxProps({ row: row as MRT_Row, instance })\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 ? instance.getIsAllRowsSelected() : row?.getIsSelected()\n }\n indeterminate={\n selectAll\n ? instance.getIsSomeRowsSelected()\n : row?.getIsSomeSelected()\n }\n inputProps={{\n 'aria-label': selectAll\n ? localization.toggleSelectAll\n : localization.toggleSelectRow,\n }}\n onChange={handleSelectChange}\n size={density === 'compact' ? 'small' : 'medium'}\n {...checkboxProps}\n sx={{\n height: density === 'compact' ? '1.75rem' : '2.25rem',\n width: density === 'compact' ? '1.75rem' : '2.25rem',\n ...checkboxProps?.sx,\n }}\n />\n </Tooltip>\n );\n};\n","import React, { FC } from 'react';\nimport { IconButton, IconButtonProps, Tooltip } from '@mui/material';\nimport { MRT_TableInstance } from '..';\n\ninterface Props extends IconButtonProps {\n instance: MRT_TableInstance;\n}\n\nexport const MRT_FullScreenToggleButton: FC<Props> = ({\n instance,\n ...rest\n}) => {\n const {\n getState,\n options: {\n icons: { FullscreenExitIcon, FullscreenIcon },\n localization,\n },\n setIsFullScreen,\n } = instance;\n\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 instance: MRT_TableInstance;\n}\n\nexport const MRT_ShowHideColumnsButton: FC<Props> = ({ instance, ...rest }) => {\n const {\n options: {\n icons: { ViewColumnIcon },\n localization,\n },\n } = instance;\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 instance={instance}\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 instance: MRT_TableInstance;\n}\n\nexport const MRT_ToggleDensePaddingButton: FC<Props> = ({\n instance,\n ...rest\n}) => {\n const {\n getState,\n options: {\n icons: { DensityLargeIcon, DensityMediumIcon, DensitySmallIcon },\n localization,\n },\n setDensity,\n } = instance;\n\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 instance: MRT_TableInstance;\n}\n\nexport const MRT_ToggleFiltersButton: FC<Props> = ({ instance, ...rest }) => {\n const {\n getState,\n options: {\n icons: { FilterListIcon, FilterListOffIcon },\n localization,\n },\n setShowFilters,\n } = instance;\n\n const { showFilters } = getState();\n\n const handleToggleShowFilters = () => {\n setShowFilters(!showFilters);\n };\n\n return (\n <Tooltip arrow title={localization.showHideFilters}>\n <IconButton\n aria-label={localization.showHideFilters}\n onClick={handleToggleShowFilters}\n {...rest}\n >\n {showFilters ? <FilterListOffIcon /> : <FilterListIcon />}\n </IconButton>\n </Tooltip>\n );\n};\n","import React, { FC } from 'react';\nimport { IconButton, IconButtonProps, Tooltip } from '@mui/material';\nimport { MRT_TableInstance } from '..';\n\ninterface Props extends IconButtonProps {\n instance: MRT_TableInstance;\n}\n\nexport const MRT_ToggleGlobalFilterButton: FC<Props> = ({\n instance,\n ...rest\n}) => {\n const {\n getState,\n options: {\n icons: { SearchIcon, SearchOffIcon },\n tableId,\n localization,\n muiSearchTextFieldProps,\n },\n setShowGlobalFilter,\n } = instance;\n\n const { showGlobalFilter } = getState();\n\n const textFieldProps =\n muiSearchTextFieldProps instanceof Function\n ? muiSearchTextFieldProps({ instance })\n : muiSearchTextFieldProps;\n\n const handleToggleSearch = () => {\n setShowGlobalFilter(!showGlobalFilter);\n setTimeout(\n () =>\n document\n .getElementById(\n textFieldProps?.id ?? `mrt-${tableId}-search-text-field`,\n )\n ?.focus(),\n 200,\n );\n };\n\n return (\n <Tooltip arrow title={localization.showHideSearch}>\n <IconButton onClick={handleToggleSearch} {...rest}>\n {showGlobalFilter ? <SearchOffIcon /> : <SearchIcon />}\n </IconButton>\n </Tooltip>\n );\n};\n","import React, {\n ChangeEvent,\n FC,\n MouseEvent,\n useCallback,\n useState,\n} from 'react';\nimport {\n Collapse,\n debounce,\n IconButton,\n InputAdornment,\n TextField,\n Tooltip,\n} from '@mui/material';\nimport { MRT_FilterOptionMenu } from '../menus/MRT_FilterOptionMenu';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n instance: MRT_TableInstance;\n}\n\nexport const MRT_GlobalFilterTextField: FC<Props> = ({ instance }) => {\n const {\n getState,\n setGlobalFilter,\n options: {\n enableGlobalFilterChangeMode,\n icons: { SearchIcon, CloseIcon },\n localization,\n muiSearchTextFieldProps,\n tableId,\n },\n } = instance;\n\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({ instance })\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 instance={instance}\n />\n </Collapse>\n );\n};\n","import React, { FC } from 'react';\nimport { Box } from '@mui/material';\nimport { MRT_FullScreenToggleButton } from '../buttons/MRT_FullScreenToggleButton';\nimport { MRT_ShowHideColumnsButton } from '../buttons/MRT_ShowHideColumnsButton';\nimport { MRT_ToggleDensePaddingButton } from '../buttons/MRT_ToggleDensePaddingButton';\nimport { MRT_ToggleFiltersButton } from '../buttons/MRT_ToggleFiltersButton';\nimport { MRT_ToggleGlobalFilterButton } from '../buttons/MRT_ToggleGlobalFilterButton';\nimport { MRT_TableInstance } from '..';\nimport { MRT_GlobalFilterTextField } from '../inputs/MRT_GlobalFilterTextField';\n\ninterface Props {\n instance: MRT_TableInstance;\n}\n\nexport const MRT_ToolbarInternalButtons: FC<Props> = ({ instance }) => {\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 } = instance;\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 instance,\n }) ?? (\n <>\n {enableGlobalFilter && positionGlobalFilter === 'right' && (\n <MRT_GlobalFilterTextField instance={instance} />\n )}\n {enableFilters && enableGlobalFilter && (\n <MRT_ToggleGlobalFilterButton instance={instance} />\n )}\n {enableFilters && enableColumnFilters && (\n <MRT_ToggleFiltersButton instance={instance} />\n )}\n {(enableHiding || enableColumnOrdering || enablePinning) && (\n <MRT_ShowHideColumnsButton instance={instance} />\n )}\n {enableDensityToggle && (\n <MRT_ToggleDensePaddingButton instance={instance} />\n )}\n {enableFullScreenToggle && (\n <MRT_FullScreenToggleButton instance={instance} />\n )}\n </>\n )}\n </Box>\n );\n};\n","import React, { ChangeEvent, FC } from 'react';\nimport { TablePagination } from '@mui/material';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n instance: MRT_TableInstance;\n position: 'top' | 'bottom';\n}\n\nexport const MRT_TablePagination: FC<Props> = ({ instance, position }) => {\n const {\n getPrePaginationRowModel,\n getState,\n setPageIndex,\n setPageSize,\n options: {\n muiTablePaginationProps,\n enableToolbarInternalActions,\n rowCount,\n },\n } = instance;\n\n const {\n pagination: { pageSize = 10, pageIndex = 0 },\n showGlobalFilter,\n } = getState();\n\n const tablePaginationProps =\n muiTablePaginationProps instanceof Function\n ? muiTablePaginationProps({ instance })\n : muiTablePaginationProps;\n\n const handleChangeRowsPerPage = (event: ChangeEvent<HTMLInputElement>) => {\n setPageSize(+event.target.value);\n };\n\n const totalRowCount = rowCount ?? getPrePaginationRowModel().rows.length;\n\n const showFirstLastPageButtons = totalRowCount / pageSize > 2;\n\n return (\n <TablePagination\n SelectProps={{\n sx: { m: '0 1rem 0 1ch' },\n MenuProps: { MenuListProps: { disablePadding: true } },\n }}\n component=\"div\"\n count={totalRowCount}\n onPageChange={(_: any, newPage: number) => setPageIndex(newPage)}\n onRowsPerPageChange={handleChangeRowsPerPage}\n page={pageIndex}\n rowsPerPage={pageSize}\n rowsPerPageOptions={[5, 10, 15, 20, 25, 30, 50, 100]}\n showFirstButton={showFirstLastPageButtons}\n showLastButton={showFirstLastPageButtons}\n {...tablePaginationProps}\n sx={{\n m: '0 0.5rem',\n mt:\n position === 'top' &&\n enableToolbarInternalActions &&\n !showGlobalFilter\n ? '3.5rem'\n : undefined,\n position: 'relative',\n zIndex: 2,\n ...tablePaginationProps?.sx,\n }}\n />\n );\n};\n","import React, { FC, Fragment } from 'react';\nimport { Alert, AlertTitle, Box, Chip, Collapse } from '@mui/material';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n stackAlertBanner?: boolean;\n instance: MRT_TableInstance;\n}\n\nexport const MRT_ToolbarAlertBanner: FC<Props> = ({\n stackAlertBanner,\n instance,\n}) => {\n const {\n getPrePaginationRowModel,\n getSelectedRowModel,\n getState,\n options: { localization, muiTableToolbarAlertBannerProps },\n } = instance;\n\n const { grouping, showAlertBanner } = getState();\n\n const alertProps =\n muiTableToolbarAlertBannerProps instanceof Function\n ? muiTableToolbarAlertBannerProps({ instance })\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={instance.getColumn(columnId).columnDef.header}\n onDelete={() => instance.getColumn(columnId).toggleGrouping()}\n />\n </Fragment>\n ))}\n </span>\n ) : null;\n\n return (\n <Collapse\n in={showAlertBanner || !!selectMessage || !!groupedByMessage}\n timeout={stackAlertBanner ? 200 : 0}\n >\n <Alert\n color=\"info\"\n icon={false}\n {...alertProps}\n sx={{\n borderRadius: 0,\n fontSize: '1rem',\n left: 0,\n p: 0,\n position: 'relative',\n right: 0,\n top: 0,\n width: '100%',\n zIndex: 2,\n ...alertProps?.sx,\n }}\n >\n {alertProps?.title && <AlertTitle>{alertProps.title}</AlertTitle>}\n <Box sx={{ p: '0.5rem 1rem' }}>\n {alertProps?.children}\n {alertProps?.children && (selectMessage || groupedByMessage) && (\n <br />\n )}\n {selectMessage}\n {selectMessage && groupedByMessage && <br />}\n {groupedByMessage}\n </Box>\n </Alert>\n </Collapse>\n );\n};\n","import React, { FC } from 'react';\nimport { Collapse, LinearProgress } from '@mui/material';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n alignTo: 'bottom' | 'top';\n instance: MRT_TableInstance;\n}\n\nexport const MRT_LinearProgressBar: FC<Props> = ({ alignTo, instance }) => {\n const {\n options: { muiLinearProgressProps },\n getState,\n } = instance;\n\n const { isLoading, showProgressBars } = getState();\n\n const linearProgressProps =\n muiLinearProgressProps instanceof Function\n ? muiLinearProgressProps({ instance })\n : muiLinearProgressProps;\n\n return (\n <Collapse\n in={isLoading || showProgressBars}\n mountOnEnter\n unmountOnExit\n sx={{\n bottom: alignTo === 'bottom' ? 0 : undefined,\n position: 'absolute',\n top: alignTo === 'top' ? 0 : undefined,\n width: '100%',\n }}\n >\n <LinearProgress\n aria-label=\"Loading\"\n aria-busy=\"true\"\n sx={{ position: 'relative' }}\n {...linearProgressProps}\n />\n </Collapse>\n );\n};\n","import React, { FC } from 'react';\nimport { Box, lighten, Theme, Toolbar, useMediaQuery } from '@mui/material';\nimport { MRT_ToolbarInternalButtons } from './MRT_ToolbarInternalButtons';\nimport { MRT_TablePagination } from './MRT_TablePagination';\nimport { MRT_ToolbarAlertBanner } from './MRT_ToolbarAlertBanner';\nimport { MRT_LinearProgressBar } from './MRT_LinearProgressBar';\nimport { MRT_TableInstance } from '..';\nimport { MRT_GlobalFilterTextField } from '../inputs/MRT_GlobalFilterTextField';\n\nexport const commonToolbarStyles = ({ theme }: { theme: Theme }) => ({\n backgroundColor: lighten(theme.palette.background.default, 0.04),\n backgroundImage: 'none',\n display: 'grid',\n minHeight: '3.5rem',\n overflow: 'hidden',\n p: '0 !important',\n transition: 'all 0.2s ease-in-out',\n zIndex: 1,\n});\n\ninterface Props {\n instance: MRT_TableInstance;\n}\n\nexport const MRT_ToolbarTop: FC<Props> = ({ instance }) => {\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 } = instance;\n\n const { isFullScreen, showGlobalFilter } = getState();\n\n const isMobile = useMediaQuery('(max-width:720px)');\n\n const toolbarProps =\n muiTableToolbarTopProps instanceof Function\n ? muiTableToolbarTopProps({ instance })\n : muiTableToolbarTopProps;\n\n const stackAlertBanner =\n isMobile ||\n (positionToolbarAlertBanner === 'top' &&\n (!!renderToolbarTopCustomActions || showGlobalFilter));\n\n return (\n <Toolbar\n id={`mrt-${tableId}-toolbar-top`}\n variant=\"dense\"\n {...toolbarProps}\n sx={(theme) =>\n ({\n position: isFullScreen ? 'sticky' : undefined,\n top: isFullScreen ? '0' : undefined,\n ...commonToolbarStyles({ theme }),\n ...toolbarProps?.sx,\n } as any)\n }\n >\n {positionToolbarAlertBanner === 'top' && (\n <MRT_ToolbarAlertBanner\n stackAlertBanner={stackAlertBanner}\n instance={instance}\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 instance={instance} />\n )}\n\n {renderToolbarTopCustomActions?.({ instance }) ?? <span />}\n {enableToolbarInternalActions ? (\n <MRT_ToolbarInternalButtons instance={instance} />\n ) : (\n enableGlobalFilter &&\n positionGlobalFilter === 'right' && (\n <MRT_GlobalFilterTextField instance={instance} />\n )\n )}\n </Box>\n {enablePagination &&\n ['top', 'both'].includes(positionPagination ?? '') && (\n <MRT_TablePagination instance={instance} position=\"top\" />\n )}\n <MRT_LinearProgressBar alignTo=\"bottom\" instance={instance} />\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 instance: MRT_TableInstance;\n}\n\nexport const MRT_ToolbarBottom: FC<Props> = ({ instance }) => {\n const {\n getState,\n options: {\n enablePagination,\n muiTableToolbarBottomProps,\n positionPagination,\n positionToolbarAlertBanner,\n renderToolbarBottomCustomActions,\n tableId,\n },\n } = instance;\n\n const { isFullScreen } = getState();\n\n const isMobile = useMediaQuery('(max-width:720px)');\n\n const toolbarProps =\n muiTableToolbarBottomProps instanceof Function\n ? muiTableToolbarBottomProps({ instance })\n : muiTableToolbarBottomProps;\n\n const stackAlertBanner =\n isMobile ||\n (positionToolbarAlertBanner === 'bottom' &&\n !!renderToolbarBottomCustomActions);\n\n return (\n <Toolbar\n id={`mrt-${tableId}-toolbar-bottom`}\n variant=\"dense\"\n {...toolbarProps}\n sx={(theme) =>\n ({\n ...commonToolbarStyles({ theme }),\n bottom: isFullScreen ? '0' : undefined,\n boxShadow: `-3px 0 6px ${alpha(theme.palette.common.black, 0.1)}`,\n left: 0,\n position: isFullScreen ? 'fixed' : 'relative',\n right: 0,\n ...toolbarProps?.sx,\n } as any)\n }\n >\n <MRT_LinearProgressBar alignTo=\"top\" instance={instance} />\n {positionToolbarAlertBanner === 'bottom' && (\n <MRT_ToolbarAlertBanner instance={instance} />\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({ instance })}\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 instance={instance} position=\"bottom\" />\n )}\n </Box>\n </Box>\n </Toolbar>\n );\n};\n","import React, {\n ChangeEvent,\n FC,\n MouseEvent,\n useCallback,\n useState,\n} from 'react';\nimport {\n Chip,\n debounce,\n IconButton,\n InputAdornment,\n MenuItem,\n TextField,\n TextFieldProps,\n Tooltip,\n} from '@mui/material';\nimport { MRT_FilterOptionMenu } from '../menus/MRT_FilterOptionMenu';\nimport type { MRT_Header, MRT_TableInstance } from '..';\n\ninterface Props {\n header: MRT_Header;\n inputIndex?: number;\n instance: MRT_TableInstance;\n}\n\nexport const MRT_FilterTextField: FC<Props> = ({\n header,\n inputIndex,\n instance,\n}) => {\n const {\n getState,\n options: {\n enableColumnFilterChangeMode,\n enabledColumnFilterOptions,\n icons: { FilterListIcon, CloseIcon },\n localization,\n muiTableHeadCellFilterTextFieldProps,\n tableId,\n },\n setCurrentFilterFns,\n } = instance;\n\n const { column } = header;\n\n const { columnDef } = column;\n\n const { currentFilterFns } = getState();\n\n const [anchorEl, setAnchorEl] = useState<null | HTMLElement>(null);\n\n const mTableHeadCellFilterTextFieldProps =\n muiTableHeadCellFilterTextFieldProps instanceof Function\n ? muiTableHeadCellFilterTextFieldProps({ column, instance })\n : muiTableHeadCellFilterTextFieldProps;\n\n const mcTableHeadCellFilterTextFieldProps =\n columnDef.muiTableHeadCellFilterTextFieldProps instanceof Function\n ? columnDef.muiTableHeadCellFilterTextFieldProps({\n column,\n instance,\n })\n : columnDef.muiTableHeadCellFilterTextFieldProps;\n\n const textFieldProps = {\n ...mTableHeadCellFilterTextFieldProps,\n ...mcTableHeadCellFilterTextFieldProps,\n } as TextFieldProps;\n\n const [filterValue, setFilterValue] = useState<string>(() =>\n inputIndex !== undefined\n ? (column.getFilterValue() as [string, string])?.[inputIndex] ?? ''\n : (column.getFilterValue() as string) ?? '',\n );\n\n const handleChangeDebounced = useCallback(\n debounce((event: ChangeEvent<HTMLInputElement>) => {\n if (inputIndex !== undefined) {\n column.setFilterValue((old: [string, string]) => {\n const newFilterValues = old ?? ['', ''];\n newFilterValues[inputIndex] = event.target.value;\n return newFilterValues;\n });\n } else {\n column.setFilterValue(event.target.value ?? undefined);\n }\n }, 200),\n [],\n );\n\n const handleChange = (event: ChangeEvent<HTMLInputElement>) => {\n setFilterValue(event.target.value);\n handleChangeDebounced(event);\n };\n\n const handleFilterMenuOpen = (event: MouseEvent<HTMLElement>) => {\n setAnchorEl(event.currentTarget);\n };\n\n const handleClear = () => {\n setFilterValue('');\n if (inputIndex !== undefined) {\n column.setFilterValue((old: [string | undefined, string | undefined]) => {\n const newFilterValues = old ?? ['', ''];\n newFilterValues[inputIndex] = undefined;\n return newFilterValues;\n });\n } else {\n column.setFilterValue(undefined);\n }\n };\n\n const handleClearFilterChip = () => {\n setFilterValue('');\n column.setFilterValue(undefined);\n setCurrentFilterFns((prev) => ({\n ...prev,\n [header.id]: 'fuzzy',\n }));\n };\n\n if (columnDef.Filter) {\n return <>{columnDef.Filter?.({ header, instance })}</>;\n }\n\n const filterId = `mrt-${tableId}-${header.id}-filter-text-field${\n inputIndex ?? ''\n }`;\n const filterFn = currentFilterFns?.[header.id];\n const isSelectFilter = !!columnDef.filterSelectOptions;\n const filterChipLabel =\n !(filterFn instanceof Function) && ['empty', 'notEmpty'].includes(filterFn)\n ? //@ts-ignore\n localization[\n `filter${filterFn.charAt(0).toUpperCase() + filterFn.slice(1)}`\n ]\n : '';\n const filterPlaceholder =\n inputIndex === undefined\n ? localization.filterByColumn?.replace(\n '{column}',\n String(columnDef.header),\n )\n : inputIndex === 0\n ? localization.min\n : inputIndex === 1\n ? localization.max\n : '';\n\n const allowedColumnFilterOptions =\n columnDef?.enabledColumnFilterOptions ?? enabledColumnFilterOptions;\n\n const showChangeModeButton =\n enableColumnFilterChangeMode &&\n columnDef.enableColumnFilterChangeMode !== false &&\n !isSelectFilter &&\n !inputIndex &&\n (allowedColumnFilterOptions === undefined ||\n !!allowedColumnFilterOptions?.length);\n\n return (\n <>\n <TextField\n fullWidth\n id={filterId}\n inputProps={{\n disabled: !!filterChipLabel,\n sx: {\n textOverflow: 'ellipsis',\n width: filterChipLabel ? 0 : undefined,\n },\n title: filterPlaceholder,\n }}\n helperText={\n showChangeModeButton ? (\n <label htmlFor={filterId}>\n {filterFn instanceof Function\n ? localization.filterMode.replace(\n '{filterType}',\n // @ts-ignore\n localization[\n `filter${\n filterFn.name.charAt(0).toUpperCase() +\n filterFn.name.slice(1)\n }`\n ] ?? '',\n ) ?? ''\n : localization.filterMode.replace(\n '{filterType}',\n // @ts-ignore\n localization[\n `filter${\n filterFn.charAt(0).toUpperCase() + filterFn.slice(1)\n }`\n ],\n )}\n </label>\n ) : null\n }\n FormHelperTextProps={{\n sx: {\n fontSize: '0.6rem',\n lineHeight: '0.8rem',\n whiteSpace: 'nowrap',\n },\n }}\n margin=\"none\"\n placeholder={\n filterChipLabel || isSelectFilter ? undefined : filterPlaceholder\n }\n onChange={handleChange}\n onClick={(e: MouseEvent<HTMLInputElement>) => e.stopPropagation()}\n select={isSelectFilter}\n value={filterValue ?? ''}\n variant=\"standard\"\n InputProps={{\n startAdornment: showChangeModeButton ? (\n <InputAdornment position=\"start\">\n <Tooltip arrow title={localization.changeFilterMode}>\n <span>\n <IconButton\n aria-label={localization.changeFilterMode}\n onClick={handleFilterMenuOpen}\n size=\"small\"\n sx={{ height: '1.75rem', width: '1.75rem' }}\n >\n <FilterListIcon />\n </IconButton>\n </span>\n </Tooltip>\n {filterChipLabel && (\n <Chip\n onDelete={handleClearFilterChip}\n label={filterChipLabel}\n />\n )}\n </InputAdornment>\n ) : (\n <FilterListIcon />\n ),\n endAdornment: !filterChipLabel && (\n <InputAdornment position=\"end\">\n <Tooltip\n arrow\n disableHoverListener={isSelectFilter}\n placement=\"right\"\n title={localization.clearFilter ?? ''}\n >\n <span>\n <IconButton\n aria-label={localization.clearFilter}\n disabled={!filterValue?.length}\n onClick={handleClear}\n size=\"small\"\n sx={{\n height: '1.75rem',\n width: '1.75rem',\n }}\n >\n <CloseIcon />\n </IconButton>\n </span>\n </Tooltip>\n </InputAdornment>\n ),\n }}\n {...textFieldProps}\n sx={{\n m: '-0.25rem',\n p: 0,\n minWidth: !filterChipLabel ? '8rem' : 'auto',\n width: 'calc(100% + 0.5rem)',\n '&\t.MuiSelect-icon': {\n mr: '1.5rem',\n },\n ...textFieldProps?.sx,\n }}\n >\n {isSelectFilter && (\n <MenuItem divider disabled={!filterValue} value=\"\">\n {localization.clearFilter}\n </MenuItem>\n )}\n {columnDef?.filterSelectOptions?.map((option) => {\n let value;\n let text;\n if (typeof option === 'string') {\n value = option;\n text = option;\n } else if (typeof option === 'object') {\n value = option.value;\n text = option.text;\n }\n return (\n <MenuItem key={value} value={value}>\n {text}\n </MenuItem>\n );\n })}\n </TextField>\n <MRT_FilterOptionMenu\n anchorEl={anchorEl}\n header={header}\n setAnchorEl={setAnchorEl}\n instance={instance}\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 instance: MRT_TableInstance;\n}\n\nexport const MRT_FilterRangeFields: FC<Props> = ({ header, instance }) => {\n return (\n <Box sx={{ display: 'grid', gridTemplateColumns: '6fr 6fr', gap: '1rem' }}>\n <MRT_FilterTextField header={header} inputIndex={0} instance={instance} />\n <MRT_FilterTextField header={header} inputIndex={1} instance={instance} />\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 instance: MRT_TableInstance;\n}\n\nexport const MRT_TableHeadCellFilterContainer: FC<Props> = ({\n header,\n instance,\n}) => {\n const { getState } = instance;\n\n const { currentFilterFns, showFilters } = getState();\n\n const { column } = header;\n\n return (\n <Collapse in={showFilters} mountOnEnter unmountOnExit>\n {currentFilterFns[column.id] === 'between' ? (\n <MRT_FilterRangeFields header={header} instance={instance} />\n ) : (\n <MRT_FilterTextField header={header} instance={instance} />\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 instance: MRT_TableInstance;\n}\n\nexport const MRT_TableHeadCellFilterLabel: FC<Props> = ({\n header,\n instance,\n}) => {\n const {\n getState,\n options: {\n icons: { FilterAltIcon },\n localization,\n },\n } = instance;\n\n const { currentFilterFns } = getState();\n\n const { column } = header;\n\n const { columnDef } = column;\n\n const filterFn = currentFilterFns?.[header.id];\n\n const filterTooltip = localization.filteringByColumn\n .replace('{column}', String(columnDef.header))\n .replace(\n '{filterType}',\n filterFn instanceof Function\n ? ''\n : // @ts-ignore\n localization[\n `filter${filterFn.charAt(0).toUpperCase() + filterFn.slice(1)}`\n ],\n )\n .replace(\n '{filterValue}',\n `\"${\n Array.isArray(column.getFilterValue())\n ? (column.getFilterValue() as [string, string]).join(\n `\" ${localization.and} \"`,\n )\n : (column.getFilterValue() as string)\n }\"`,\n )\n .replace('\" \"', '');\n\n return (\n <Grow\n unmountOnExit\n in={\n (!!column.getFilterValue() && filterFn !== 'between') ||\n (filterFn === '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, { FC } from 'react';\nimport { Divider, Theme } from '@mui/material';\nimport { MRT_Header, MRT_TableInstance } from '..';\n\ninterface Props {\n header: MRT_Header;\n instance: MRT_TableInstance;\n}\n\nexport const MRT_TableHeadCellResizeHandle: FC<Props> = ({\n header,\n instance,\n}) => {\n const { getState } = instance;\n\n const { density, showFilters } = getState();\n\n const { column } = header;\n\n const { columnDefType } = column;\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: showFilters && 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(${getState().columnSizingInfo.deltaOffset}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 instance: MRT_TableInstance;\n}\n\nexport const MRT_TableHeadCellSortLabel: FC<Props> = ({ header, instance }) => {\n const {\n options: { localization },\n } = instance;\n\n const { column } = header;\n\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, { 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 instance: MRT_TableInstance;\n}\n\nexport const MRT_TableHeadCellColumnActionsButton: FC<Props> = ({\n header,\n instance,\n}) => {\n const {\n options: {\n icons: { MoreVertIcon },\n localization,\n muiTableHeadCellColumnActionsButtonProps,\n },\n } = instance;\n\n const { column } = header;\n\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, instance })\n : muiTableHeadCellColumnActionsButtonProps;\n\n const mcTableHeadCellColumnActionsButtonProps =\n columnDef.muiTableHeadCellColumnActionsButtonProps instanceof Function\n ? columnDef.muiTableHeadCellColumnActionsButtonProps({\n column,\n instance,\n })\n : columnDef.muiTableHeadCellColumnActionsButtonProps;\n\n const iconButtonProps = {\n ...mTableHeadCellColumnActionsButtonProps,\n ...mcTableHeadCellColumnActionsButtonProps,\n };\n\n return (\n <>\n <Tooltip\n arrow\n enterDelay={1000}\n enterNextDelay={1000}\n placement=\"top\"\n title={localization.columnActions}\n >\n <IconButton\n aria-label={localization.columnActions}\n onClick={handleClick}\n size=\"small\"\n {...iconButtonProps}\n sx={{\n height: '2rem',\n mt: '-0.2rem',\n opacity: 0.5,\n transition: 'opacity 0.2s',\n width: '2rem',\n '&:hover': {\n opacity: 1,\n },\n ...iconButtonProps.sx,\n }}\n >\n <MoreVertIcon />\n </IconButton>\n </Tooltip>\n <MRT_ColumnActionMenu\n anchorEl={anchorEl}\n header={header}\n setAnchorEl={setAnchorEl}\n instance={instance}\n />\n </>\n );\n};\n","import React, { FC, ReactNode, Ref } from 'react';\nimport { Box, TableCell, Theme, alpha, lighten } from '@mui/material';\nimport { MRT_TableHeadCellFilterContainer } from './MRT_TableHeadCellFilterContainer';\nimport { MRT_TableHeadCellFilterLabel } from './MRT_TableHeadCellFilterLabel';\nimport { MRT_GrabHandleButton } from '../buttons/MRT_GrabHandleButton';\nimport { MRT_TableHeadCellResizeHandle } from './MRT_TableHeadCellResizeHandle';\nimport { MRT_TableHeadCellSortLabel } from './MRT_TableHeadCellSortLabel';\nimport { MRT_TableHeadCellColumnActionsButton } from './MRT_TableHeadCellColumnActionsButton';\nimport type { MRT_Header, MRT_TableInstance } from '..';\n\ninterface Props {\n dragRef?: Ref<HTMLButtonElement>;\n dropRef?: Ref<HTMLDivElement>;\n header: MRT_Header;\n instance: MRT_TableInstance;\n isDragging?: boolean;\n previewRef?: Ref<HTMLTableCellElement>;\n}\n\nexport const MRT_TableHeadCell: FC<Props> = ({\n dragRef,\n dropRef,\n header,\n instance,\n isDragging,\n previewRef,\n}) => {\n const {\n getState,\n options: {\n enableColumnActions,\n enableColumnOrdering,\n enableColumnResizing,\n enableGrouping,\n enableMultiSort,\n muiTableHeadCellProps,\n },\n } = instance;\n\n const { density, showFilters } = getState();\n\n const { column } = header;\n\n const { columnDef, columnDefType } = column;\n\n const mTableHeadCellProps =\n muiTableHeadCellProps instanceof Function\n ? muiTableHeadCellProps({ column, instance })\n : muiTableHeadCellProps;\n\n const mcTableHeadCellProps =\n columnDef.muiTableHeadCellProps instanceof Function\n ? columnDef.muiTableHeadCellProps({ column, instance })\n : columnDef.muiTableHeadCellProps;\n\n const tableCellProps = {\n ...mTableHeadCellProps,\n ...mcTableHeadCellProps,\n };\n\n const headerElement = ((columnDef?.Header instanceof Function\n ? columnDef?.Header?.({\n header,\n instance,\n })\n : columnDef?.Header) ??\n header.renderHeader() ??\n columnDef.header) as ReactNode;\n\n const getIsLastLeftPinnedColumn = () => {\n return (\n column.getIsPinned() === 'left' &&\n instance.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 (instance.getRightLeafHeaders().length - 1 - column.getPinnedIndex()) *\n 150\n );\n };\n\n return (\n <TableCell\n align={columnDefType === 'group' ? 'center' : 'left'}\n colSpan={header.colSpan}\n {...tableCellProps}\n ref={\n columnDefType === 'data' && enableColumnOrdering ? dropRef : undefined\n }\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 height: '100%',\n left:\n column.getIsPinned() === 'left'\n ? `${column.getStart('left')}px`\n : undefined,\n overflow: 'visible',\n p:\n density === 'compact'\n ? columnDefType === 'display'\n ? '0 0.5rem'\n : '0.5rem'\n : density === 'comfortable'\n ? columnDefType === 'display'\n ? '0.5rem 0.75rem'\n : '1rem'\n : columnDefType === 'display'\n ? '1rem 1.25rem'\n : '1.5rem',\n pb: columnDefType === 'display' ? 0 : undefined,\n position:\n column.getIsPinned() && columnDefType !== 'group'\n ? 'sticky'\n : undefined,\n pt:\n columnDefType !== 'data'\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 ? 'none' : undefined,\n verticalAlign:\n columnDefType === 'display' && showFilters ? 'center' : 'text-top',\n zIndex: column.getIsResizing()\n ? 3\n : column.getIsPinned() && columnDefType !== 'group'\n ? 2\n : 1,\n ...(tableCellProps?.sx as any),\n maxWidth: `min(${column.getSize()}px, fit-content)`,\n minWidth: `max(${column.getSize()}px, ${columnDef.minSize ?? 30}px)`,\n width: header.getSize(),\n })}\n >\n {header.isPlaceholder ? null : columnDefType === 'display' ? (\n headerElement\n ) : (\n <Box\n ref={previewRef}\n sx={{\n alignItems: 'flex-start',\n display: 'flex',\n justifyContent:\n columnDefType === 'group' ? 'center' : 'space-between',\n opacity: isDragging ? 0.5 : 1,\n position: 'relative',\n width: '100%',\n }}\n >\n <Box\n onClick={column.getToggleSortingHandler()}\n sx={{\n alignItems: 'center',\n cursor:\n column.getCanSort() && columnDefType !== 'group'\n ? 'pointer'\n : undefined,\n display: 'flex',\n flexWrap: 'nowrap',\n whiteSpace:\n (columnDef.header?.length ?? 0) < 24 ? 'nowrap' : 'normal',\n }}\n >\n {headerElement}\n {columnDefType === 'data' && column.getCanSort() && (\n <MRT_TableHeadCellSortLabel header={header} instance={instance} />\n )}\n {columnDefType === 'data' && column.getCanFilter() && (\n <MRT_TableHeadCellFilterLabel\n header={header}\n instance={instance}\n />\n )}\n </Box>\n <Box sx={{ whiteSpace: 'nowrap' }}>\n {columnDefType === 'data' &&\n ((enableColumnOrdering &&\n columnDef.enableColumnOrdering !== false) ||\n (enableGrouping && columnDef.enableGrouping !== false)) && (\n <MRT_GrabHandleButton\n ref={dragRef as Ref<HTMLButtonElement>}\n instance={instance}\n />\n )}\n {(enableColumnActions || columnDef.enableColumnActions) &&\n columnDef.enableColumnActions !== false &&\n columnDefType !== 'group' && (\n <MRT_TableHeadCellColumnActionsButton\n header={header}\n instance={instance}\n />\n )}\n </Box>\n {column.getCanResize() && (\n <MRT_TableHeadCellResizeHandle\n header={header}\n instance={instance}\n />\n )}\n </Box>\n )}\n {columnDefType === 'data' && column.getCanFilter() && (\n <MRT_TableHeadCellFilterContainer header={header} instance={instance} />\n )}\n </TableCell>\n );\n};\n","import React, { FC } from 'react';\nimport { useDrag, useDrop } from 'react-dnd';\nimport { MRT_TableHeadCell } from './MRT_TableHeadCell';\nimport type { MRT_Column, MRT_Header, MRT_TableInstance } from '..';\nimport { reorderColumn } from '../utils';\n\ninterface Props {\n header: MRT_Header;\n instance: MRT_TableInstance;\n}\n\nexport const MRT_DraggableTableHeadCell: FC<Props> = ({ header, instance }) => {\n const { getState, setColumnOrder } = instance;\n\n const { columnOrder } = getState();\n\n const { column } = header;\n\n const [, dropRef] = useDrop({\n accept: 'column',\n drop: (movingColumn: MRT_Column) => {\n const newColumnOrder = reorderColumn(movingColumn, column, columnOrder);\n setColumnOrder(newColumnOrder);\n },\n });\n\n const [{ isDragging }, dragRef, previewRef] = useDrag({\n collect: (monitor) => ({\n isDragging: monitor.isDragging(),\n }),\n item: () => column,\n type: 'column',\n });\n\n return (\n <MRT_TableHeadCell\n dragRef={dragRef}\n dropRef={dropRef}\n header={header}\n isDragging={isDragging}\n previewRef={previewRef}\n instance={instance}\n />\n );\n};\n","import React, { FC } from 'react';\nimport { alpha, lighten, TableRow } from '@mui/material';\nimport { MRT_TableHeadCell } from './MRT_TableHeadCell';\nimport { MRT_DraggableTableHeadCell } from './MRT_DraggableTableHeadCell';\nimport type { MRT_Header, MRT_HeaderGroup, MRT_TableInstance } from '..';\n\ninterface Props {\n headerGroup: MRT_HeaderGroup;\n instance: MRT_TableInstance;\n}\n\nexport const MRT_TableHeadRow: FC<Props> = ({ headerGroup, instance }) => {\n const {\n options: { enableColumnOrdering, enableGrouping, muiTableHeadRowProps },\n } = instance;\n\n const tableRowProps =\n muiTableHeadRowProps instanceof Function\n ? muiTableHeadRowProps({ headerGroup, instance })\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 enableColumnOrdering || enableGrouping ? (\n <MRT_DraggableTableHeadCell\n header={header}\n key={header.id || index}\n instance={instance}\n />\n ) : (\n <MRT_TableHeadCell\n header={header}\n key={header.id || index}\n instance={instance}\n />\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 instance: MRT_TableInstance;\n}\n\nexport const MRT_TableHead: FC<Props> = ({ instance }) => {\n const {\n getHeaderGroups,\n options: { muiTableHeadProps },\n } = instance;\n\n const tableHeadProps =\n muiTableHeadProps instanceof Function\n ? muiTableHeadProps({ instance })\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 instance={instance}\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 instance: MRT_TableInstance;\n}\n\nexport const MRT_EditCellTextField: FC<Props> = ({ cell, instance }) => {\n const {\n getState,\n options: {\n tableId,\n enableEditing,\n muiTableBodyCellEditTextFieldProps,\n onCellEditBlur,\n onCellEditChange,\n },\n setCurrentEditingCell,\n setCurrentEditingRow,\n } = instance;\n\n const [value, setValue] = useState(cell.getValue());\n\n const { column, row } = cell;\n\n const { columnDef } = column;\n\n const handleChange = (event: ChangeEvent<HTMLInputElement>) => {\n setValue(event.target.value);\n columnDef.onCellEditChange?.({ event, cell, instance });\n onCellEditChange?.({ event, cell, instance });\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, instance });\n onCellEditBlur?.({ event, cell, instance });\n };\n\n const mTableBodyCellEditTextFieldProps =\n muiTableBodyCellEditTextFieldProps instanceof Function\n ? muiTableBodyCellEditTextFieldProps({ cell, instance })\n : muiTableBodyCellEditTextFieldProps;\n\n const mcTableBodyCellEditTextFieldProps =\n columnDef.muiTableBodyCellEditTextFieldProps instanceof Function\n ? columnDef.muiTableBodyCellEditTextFieldProps({\n cell,\n instance,\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, instance })}</>;\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 instance: MRT_TableInstance;\n}\n\nexport const MRT_CopyButton: FC<Props> = ({ cell, children, instance }) => {\n const {\n options: { localization, muiTableBodyCellCopyButtonProps },\n } = instance;\n\n const { column } = cell;\n\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, instance })\n : muiTableBodyCellCopyButtonProps;\n\n const mcTableBodyCellCopyButtonProps =\n columnDef.muiTableBodyCellCopyButtonProps instanceof Function\n ? columnDef.muiTableBodyCellCopyButtonProps({\n cell,\n instance,\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 aria-label={localization.clickToCopy}\n onClick={() => handleCopy(cell.getValue())}\n size=\"small\"\n type=\"button\"\n variant=\"text\"\n {...buttonProps}\n sx={{\n backgroundColor: 'transparent',\n border: 'none',\n color: 'inherit',\n cursor: 'copy',\n fontFamily: 'inherit',\n fontSize: 'inherit',\n letterSpacing: 'inherit',\n m: '-0.25rem',\n minWidth: 'unset',\n textAlign: 'inherit',\n textTransform: 'inherit',\n ...buttonProps?.sx,\n }}\n >\n {children}\n </Button>\n </Tooltip>\n );\n};\n","import React, { FC, MouseEvent, useMemo } from 'react';\nimport { useDrop } from 'react-dnd';\nimport { alpha, darken, lighten, Skeleton, TableCell } from '@mui/material';\nimport { MRT_EditCellTextField } from '../inputs/MRT_EditCellTextField';\nimport { MRT_CopyButton } from '../buttons/MRT_CopyButton';\nimport { reorderColumn } from '../utils';\nimport type { MRT_Cell, MRT_Column, MRT_TableInstance } from '..';\n\ninterface Props {\n cell: MRT_Cell;\n enableHover?: boolean;\n rowIndex: number;\n instance: MRT_TableInstance;\n}\n\nexport const MRT_TableBodyCell: FC<Props> = ({\n cell,\n enableHover,\n rowIndex,\n instance,\n}) => {\n const {\n getState,\n options: {\n editingMode,\n enableClickToCopy,\n enableColumnOrdering,\n enableEditing,\n enableRowNumbers,\n muiTableBodyCellProps,\n muiTableBodyCellSkeletonProps,\n rowNumberMode,\n tableId,\n },\n setColumnOrder,\n setCurrentEditingCell,\n } = instance;\n\n const {\n columnOrder,\n currentEditingCell,\n currentEditingRow,\n density,\n isLoading,\n showSkeletons,\n } = getState();\n\n const { column, row } = cell;\n\n const { columnDef, columnDefType } = column;\n\n const [, dropRef] = useDrop({\n accept: 'column',\n drop: (movingColumn: MRT_Column) => {\n const newColumnOrder = reorderColumn(movingColumn, column, columnOrder);\n setColumnOrder(newColumnOrder);\n },\n });\n\n const mTableCellBodyProps =\n muiTableBodyCellProps instanceof Function\n ? muiTableBodyCellProps({ cell, instance })\n : muiTableBodyCellProps;\n\n const mcTableCellBodyProps =\n columnDef.muiTableBodyCellProps instanceof Function\n ? columnDef.muiTableBodyCellProps({ cell, instance })\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 [columnDefType, column.getSize()],\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 instance.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 (instance.getRightLeafHeaders().length - 1 - column.getPinnedIndex()) *\n 150\n );\n };\n\n return (\n <TableCell\n onDoubleClick={handleDoubleClick}\n {...tableCellProps}\n ref={\n columnDefType === 'data' && enableColumnOrdering ? dropRef : undefined\n }\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 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-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: column.getIsPinned() ? 1 : undefined,\n '&:hover': {\n backgroundColor:\n enableHover && enableEditing && editingMode !== 'row'\n ? theme.palette.mode === 'dark'\n ? `${lighten(\n theme.palette.background.default,\n 0.13,\n )} !important`\n : `${darken(theme.palette.background.default, 0.07)} !important`\n : undefined,\n },\n ...(tableCellProps?.sx as any),\n 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 {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 ) : columnDefType === 'display' ? (\n columnDef.Cell?.({ cell, instance })\n ) : cell.getIsPlaceholder() ||\n (row.getIsGrouped() &&\n column.id !==\n row.groupingColumnId) ? null : cell.getIsAggregated() ? (\n columnDef.AggregatedCell?.({ cell, instance }) ??\n cell.renderAggregatedCell()\n ) : isEditing ? (\n <MRT_EditCellTextField cell={cell} instance={instance} />\n ) : (enableClickToCopy || columnDef.enableClickToCopy) &&\n columnDef.enableClickToCopy !== false ? (\n <>\n <MRT_CopyButton cell={cell} instance={instance}>\n <>{columnDef?.Cell?.({ cell, instance }) ?? cell.renderCell()}</>\n </MRT_CopyButton>\n {row.getIsGrouped() && <> ({row.subRows?.length})</>}\n </>\n ) : (\n <>\n {columnDef?.Cell?.({ cell, instance }) ?? cell.renderCell()}\n {row.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 instance: MRT_TableInstance;\n}\n\nexport const MRT_TableDetailPanel: FC<Props> = ({ row, instance }) => {\n const {\n getVisibleLeafColumns,\n options: {\n muiTableBodyRowProps,\n muiTableDetailPanelProps,\n renderDetailPanel,\n },\n } = instance;\n\n const tableRowProps =\n muiTableBodyRowProps instanceof Function\n ? muiTableBodyRowProps({ row, instance })\n : muiTableBodyRowProps;\n\n const tableCellProps =\n muiTableDetailPanelProps instanceof Function\n ? muiTableDetailPanelProps({ row, instance })\n : muiTableDetailPanelProps;\n\n return (\n <TableRow {...tableRowProps}>\n <TableCell\n colSpan={getVisibleLeafColumns().length}\n {...tableCellProps}\n sx={{\n borderBottom: !row.getIsExpanded() ? 'none' : undefined,\n pb: row.getIsExpanded() ? '1rem' : 0,\n pt: row.getIsExpanded() ? '1rem' : 0,\n transition: 'all 0.2s ease-in-out',\n width: `${instance.getTotalSize()}px`,\n ...tableCellProps?.sx,\n }}\n >\n {renderDetailPanel && (\n <Collapse in={row.getIsExpanded()}>\n {renderDetailPanel({ row, instance })}\n </Collapse>\n )}\n </TableCell>\n </TableRow>\n );\n};\n","import React, { FC } from 'react';\nimport { darken, lighten, TableRow } from '@mui/material';\nimport { MRT_TableBodyCell } from './MRT_TableBodyCell';\nimport { MRT_TableDetailPanel } from './MRT_TableDetailPanel';\nimport type { MRT_Row, MRT_TableInstance } from '..';\n\ninterface Props {\n row: MRT_Row;\n rowIndex: number;\n instance: MRT_TableInstance;\n}\n\nexport const MRT_TableBodyRow: FC<Props> = ({ row, rowIndex, instance }) => {\n const {\n getIsSomeColumnsPinned,\n options: { muiTableBodyRowProps, renderDetailPanel },\n } = instance;\n\n const tableRowProps =\n muiTableBodyRowProps instanceof Function\n ? muiTableBodyRowProps({ row, instance })\n : muiTableBodyRowProps;\n\n return (\n <>\n <TableRow\n hover\n selected={row.getIsSelected()}\n {...tableRowProps}\n sx={(theme) => ({\n backgroundColor: lighten(theme.palette.background.default, 0.06),\n transition: 'all 0.2s ease-in-out',\n '&:hover td': {\n backgroundColor:\n tableRowProps?.hover !== false && getIsSomeColumnsPinned()\n ? theme.palette.mode === 'dark'\n ? `${lighten(theme.palette.background.default, 0.12)}`\n : `${darken(theme.palette.background.default, 0.05)}`\n : undefined,\n },\n ...(tableRowProps?.sx as any),\n })}\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 instance={instance}\n />\n ))}\n </TableRow>\n {renderDetailPanel && !row.getIsGrouped() && (\n <MRT_TableDetailPanel row={row} instance={instance} />\n )}\n </>\n );\n};\n","import { compareItems, RankingInfo } from '@tanstack/match-sorter-utils';\nimport { Row, sortingFns } from '@tanstack/react-table';\nimport type { MRT_Row } from '.';\n\nconst fuzzy = (rowA: MRT_Row, rowB: MRT_Row, columnId: string) => {\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 fuzzy,\n};\n\nexport const rankGlobalFuzzy = (rowA: MRT_Row, rowB: MRT_Row) =>\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 React, { FC, RefObject, useMemo } from 'react';\nimport { useVirtual } from 'react-virtual';\nimport { TableBody } from '@mui/material';\nimport { MRT_TableBodyRow } from './MRT_TableBodyRow';\nimport type { MRT_Row, MRT_TableInstance } from '..';\nimport { rankGlobalFuzzy } from '../sortingFns';\n\ninterface Props {\n instance: MRT_TableInstance;\n tableContainerRef: RefObject<HTMLDivElement>;\n}\n\nexport const MRT_TableBody: FC<Props> = ({ instance, tableContainerRef }) => {\n const {\n getRowModel,\n getPrePaginationRowModel,\n getState,\n options: {\n enableGlobalFilterRankedResults,\n enablePagination,\n enableRowVirtualization,\n muiTableBodyProps,\n virtualizerProps,\n },\n } = instance;\n\n const { density, globalFilter, pagination, sorting } = getState();\n\n const tableBodyProps =\n muiTableBodyProps instanceof Function\n ? muiTableBodyProps({ instance })\n : muiTableBodyProps;\n\n const getIsSomeColumnsSorted = () => {\n return Object.values(sorting).some(Boolean);\n };\n\n const rows = useMemo(() => {\n if (\n enableGlobalFilterRankedResults &&\n globalFilter &&\n !getIsSomeColumnsSorted()\n ) {\n const rankedRows = getPrePaginationRowModel().rows.sort((a, b) =>\n rankGlobalFuzzy(a, b),\n );\n if (enablePagination) {\n return rankedRows.slice(0, pagination.pageSize);\n }\n return rankedRows;\n }\n\n return enablePagination\n ? getRowModel().rows\n : getPrePaginationRowModel().rows;\n }, [\n enableGlobalFilterRankedResults,\n (enableGlobalFilterRankedResults && globalFilter) || !enablePagination\n ? getPrePaginationRowModel().rows\n : getRowModel().rows,\n globalFilter,\n ]);\n\n const rowVirtualizer = enableRowVirtualization\n ? useVirtual({\n overscan: density === 'compact' ? 20 : 10,\n size: rows.length,\n parentRef: tableContainerRef,\n ...virtualizerProps,\n })\n : ({} as any);\n\n const { virtualItems: virtualRows } = rowVirtualizer;\n const paddingTop = virtualRows?.length > 0 ? virtualRows[0].start : 0;\n const paddingBottom =\n virtualRows?.length > 0\n ? rowVirtualizer.totalSize - virtualRows[virtualRows.length - 1].end\n : 0;\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 instance={instance}\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 instance: MRT_TableInstance;\n}\n\nexport const MRT_TableFooterCell: FC<Props> = ({ footer, instance }) => {\n const {\n getState,\n options: { muiTableFooterCellProps, enableColumnResizing },\n } = instance;\n\n const { density } = getState();\n\n const { column } = footer;\n\n const { columnDef, columnDefType } = column;\n\n const mTableFooterCellProps =\n muiTableFooterCellProps instanceof Function\n ? muiTableFooterCellProps({ column, instance })\n : muiTableFooterCellProps;\n\n const mcTableFooterCellProps =\n columnDef.muiTableFooterCellProps instanceof Function\n ? columnDef.muiTableFooterCellProps({ column, instance })\n : columnDef.muiTableFooterCellProps;\n\n const tableCellProps = {\n ...mTableFooterCellProps,\n ...mcTableFooterCellProps,\n };\n\n return (\n <TableCell\n align={columnDefType === 'group' ? 'center' : 'left'}\n colSpan={footer.colSpan}\n variant=\"head\"\n {...tableCellProps}\n sx={(theme) => ({\n backgroundColor: theme.palette.background.default,\n backgroundImage: `linear-gradient(${alpha(\n theme.palette.common.white,\n 0.05,\n )},${alpha(theme.palette.common.white, 0.05)})`,\n fontWeight: 'bold',\n maxWidth: `${column.getSize()}px`,\n minWidth: `${column.getSize()}px`,\n p:\n density === 'compact'\n ? '0.5rem'\n : density === 'comfortable'\n ? '1rem'\n : '1.5rem',\n transition: `all ${enableColumnResizing ? '10ms' : '0.2s'} ease-in-out`,\n width: column.getSize(),\n verticalAlign: 'text-top',\n ...(tableCellProps?.sx as any),\n })}\n >\n <>\n {footer.isPlaceholder\n ? null\n : (columnDef.Footer instanceof Function\n ? columnDef.Footer?.({\n footer,\n instance,\n })\n : columnDef.Footer) ??\n columnDef.footer ??\n footer.renderFooter() ??\n null}\n </>\n </TableCell>\n );\n};\n","import React, { FC } from 'react';\nimport { TableRow } from '@mui/material';\nimport { MRT_TableFooterCell } from './MRT_TableFooterCell';\nimport type { MRT_Header, MRT_HeaderGroup, MRT_TableInstance } from '..';\n\ninterface Props {\n footerGroup: MRT_HeaderGroup;\n instance: MRT_TableInstance;\n}\n\nexport const MRT_TableFooterRow: FC<Props> = ({ footerGroup, instance }) => {\n const {\n options: { muiTableFooterRowProps },\n } = instance;\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, instance })\n : muiTableFooterRowProps;\n\n return (\n <TableRow {...tableRowProps}>\n {footerGroup.headers.map((footer: MRT_Header) => (\n <MRT_TableFooterCell\n footer={footer}\n key={footer.id}\n instance={instance}\n />\n ))}\n </TableRow>\n );\n};\n","import React, { FC } from 'react';\nimport { TableFooter } from '@mui/material';\nimport { MRT_TableFooterRow } from './MRT_TableFooterRow';\nimport type { MRT_TableInstance } from '..';\n\ninterface Props {\n instance: MRT_TableInstance;\n}\n\nexport const MRT_TableFooter: FC<Props> = ({ instance }) => {\n const {\n getFooterGroups,\n\n options: { muiTableFooterProps },\n } = instance;\n\n const tableFooterProps =\n muiTableFooterProps instanceof Function\n ? muiTableFooterProps({ instance })\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 instance={instance}\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 instance: MRT_TableInstance;\n}\n\nexport const MRT_Table: FC<Props> = ({ tableContainerRef, instance }) => {\n const {\n getState,\n options: {\n enableColumnResizing,\n enableRowVirtualization,\n enableStickyHeader,\n enableTableFooter,\n enableTableHead,\n muiTableProps,\n },\n } = instance;\n\n const { isFullScreen } = getState();\n\n const tableProps =\n muiTableProps instanceof Function\n ? muiTableProps({ instance })\n : muiTableProps;\n\n return (\n <Table\n stickyHeader={\n enableStickyHeader || enableRowVirtualization || isFullScreen\n }\n {...tableProps}\n sx={{\n tableLayout:\n enableColumnResizing || enableRowVirtualization ? 'fixed' : 'auto',\n ...tableProps?.sx,\n }}\n >\n {enableTableHead && <MRT_TableHead instance={instance} />}\n <MRT_TableBody\n tableContainerRef={tableContainerRef}\n instance={instance}\n />\n {enableTableFooter && <MRT_TableFooter instance={instance} />}\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 instance: MRT_TableInstance;\n}\n\nexport const MRT_TableContainer: FC<Props> = ({ instance }) => {\n const {\n getState,\n options: {\n enableStickyHeader,\n enableRowVirtualization,\n muiTableContainerProps,\n tableId,\n },\n } = instance;\n\n const { isFullScreen } = getState();\n\n const [totalToolbarHeight, setTotalToolbarHeight] = useState(0);\n\n const tableContainerProps =\n muiTableContainerProps instanceof Function\n ? muiTableContainerProps({ instance })\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 {...tableContainerProps}\n ref={tableContainerRef}\n sx={{\n maxWidth: '100%',\n maxHeight:\n enableStickyHeader || enableRowVirtualization\n ? `clamp(350px, calc(100vh - ${totalToolbarHeight}px), 9999px)`\n : undefined,\n overflow: 'auto',\n ...tableContainerProps?.sx,\n }}\n style={{\n maxHeight: isFullScreen\n ? `calc(100vh - ${totalToolbarHeight}px)`\n : undefined,\n ...tableContainerProps?.style,\n }}\n >\n <MRT_Table tableContainerRef={tableContainerRef} instance={instance} />\n </TableContainer>\n );\n};\n","import React, { FC, useEffect } from 'react';\nimport { Paper } from '@mui/material';\nimport { DndProvider } from 'react-dnd';\nimport { HTML5Backend } from 'react-dnd-html5-backend';\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 instance: MRT_TableInstance;\n}\n\nexport const MRT_TablePaper: FC<Props> = ({ instance }) => {\n const {\n getState,\n options: { enableToolbarBottom, enableToolbarTop, muiTablePaperProps },\n } = instance;\n\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({ instance })\n : muiTablePaperProps;\n\n return (\n <DndProvider backend={HTML5Backend}>\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 instance={instance} />}\n <MRT_TableContainer instance={instance} />\n {enableToolbarBottom && <MRT_ToolbarBottom instance={instance} />}\n </Paper>\n </DndProvider>\n );\n};\n","import React, { useEffect, useMemo, useState } from 'react';\nimport {\n FilterFn,\n ReactTableGenerics,\n Table,\n TableState,\n createTable,\n filterFns,\n getCoreRowModel,\n getExpandedRowModel,\n getFacetedRowModel,\n getFilteredRowModel,\n getGroupedRowModel,\n getPaginationRowModel,\n getSortedRowModel,\n useTableInstance,\n sortingFns,\n} from '@tanstack/react-table';\nimport {\n MRT_Cell,\n MRT_ColumnDef,\n MRT_FilterFn,\n MRT_FILTER_OPTION,\n MRT_Row,\n MRT_TableInstance,\n MRT_TableState,\n} from '..';\nimport { MRT_ExpandAllButton } from '../buttons/MRT_ExpandAllButton';\nimport { MRT_ExpandButton } from '../buttons/MRT_ExpandButton';\nimport { MRT_ToggleRowActionMenuButton } from '../buttons/MRT_ToggleRowActionMenuButton';\nimport { MRT_SelectCheckbox } from '../inputs/MRT_SelectCheckbox';\nimport { MaterialReactTableProps } from '../MaterialReactTable';\nimport { MRT_TablePaper } from './MRT_TablePaper';\nimport { Box, Dialog, Grow } from '@mui/material';\nimport {\n createDataColumn,\n createDisplayColumn,\n createGroup,\n getAllLeafColumnDefs,\n getDefaultColumnOrderIds,\n} from '../utils';\nimport { MRT_FilterFns } from '../filtersFns';\nimport { MRT_SortingFns } from '../sortingFns';\n\nexport const MRT_TableRoot = <D extends Record<string, any> = {}>(\n props: MaterialReactTableProps<D>,\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<D>> = 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 [currentEditingCell, setCurrentEditingCell] =\n useState<MRT_Cell<D> | null>(initialState?.currentEditingCell ?? null);\n const [currentEditingRow, setCurrentEditingRow] = useState<MRT_Row<D> | null>(\n initialState?.currentEditingRow ?? null,\n );\n const [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 [showFilters, setShowFilters] = useState(\n initialState?.showFilters ?? false,\n );\n const [showGlobalFilter, setShowGlobalFilter] = useState(\n initialState?.showGlobalFilter ?? false,\n );\n\n const [currentFilterFns, setCurrentFilterFns] = useState<{\n [key: string]: MRT_FilterFn;\n }>(() =>\n Object.assign(\n {},\n ...getAllLeafColumnDefs(props.columns as MRT_ColumnDef[]).map((c) => ({\n [c.id as string]:\n c.filterFn ??\n initialState?.currentFilterFns?.[c.id] ??\n (!!c.filterSelectOptions?.length ? 'equals' : 'fuzzy'),\n })),\n ),\n );\n\n const [currentGlobalFilterFn, setCurrentGlobalFilterFn] = useState<\n MRT_FILTER_OPTION | FilterFn<ReactTableGenerics> | string | number | symbol\n >(props.globalFilterFn ?? 'fuzzy');\n\n const table = useMemo(\n () =>\n // @ts-ignore\n createTable().setOptions({\n filterFns: { ...filterFns, ...MRT_FilterFns, ...props.filterFns },\n getCoreRowModel: getCoreRowModel(),\n getExpandedRowModel: getExpandedRowModel(),\n getFacetedRowModel: getFacetedRowModel(),\n getFilteredRowModel: getFilteredRowModel(),\n getGroupedRowModel: getGroupedRowModel(),\n getPaginationRowModel: getPaginationRowModel(),\n getSortedRowModel: getSortedRowModel(),\n sortingFns: { ...sortingFns, ...MRT_SortingFns, ...props.sortingFns },\n }) as Table<D>,\n [],\n );\n\n const displayColumns = useMemo(() => {\n return [\n columnOrder.includes('mrt-row-actions') &&\n createDisplayColumn(table, {\n Cell: ({ cell }) => (\n <MRT_ToggleRowActionMenuButton\n row={cell.row as any}\n instance={instance}\n />\n ),\n header: props.localization?.actions,\n id: 'mrt-row-actions',\n muiTableBodyCellProps: props.muiTableBodyCellProps,\n muiTableHeadCellProps: props.muiTableHeadCellProps,\n size: 70,\n }),\n columnOrder.includes('mrt-expand') &&\n createDisplayColumn(table, {\n Cell: ({ cell }) => (\n <MRT_ExpandButton row={cell.row as any} instance={instance} />\n ),\n Header: () =>\n props.enableExpandAll ? (\n <MRT_ExpandAllButton instance={instance} />\n ) : null,\n header: props.localization?.expand,\n id: 'mrt-expand',\n muiTableBodyCellProps: props.muiTableBodyCellProps,\n muiTableHeadCellProps: props.muiTableHeadCellProps,\n size: 60,\n }),\n columnOrder.includes('mrt-select') &&\n createDisplayColumn(table, {\n Cell: ({ cell }) => (\n <MRT_SelectCheckbox row={cell.row as any} instance={instance} />\n ),\n Header: () =>\n props.enableSelectAll ? (\n <MRT_SelectCheckbox selectAll instance={instance} />\n ) : null,\n header: props.localization?.select,\n id: 'mrt-select',\n muiTableBodyCellProps: props.muiTableBodyCellProps,\n muiTableHeadCellProps: props.muiTableHeadCellProps,\n size: 60,\n }),\n columnOrder.includes('mrt-row-numbers') &&\n createDisplayColumn(table, {\n Cell: ({ cell }) => cell.row.index + 1,\n Header: () => props.localization?.rowNumber,\n header: props.localization?.rowNumbers,\n id: 'mrt-row-numbers',\n muiTableBodyCellProps: props.muiTableBodyCellProps,\n muiTableHeadCellProps: props.muiTableHeadCellProps,\n size: 60,\n }),\n ].filter(Boolean) as MRT_ColumnDef<D>[];\n }, [\n columnOrder,\n props.editingMode,\n props.enableEditing,\n props.enableExpandAll,\n props.enableExpanding,\n props.enableGrouping,\n props.enableRowActions,\n props.enableRowNumbers,\n props.enableRowSelection,\n props.enableSelectAll,\n props.localization,\n props.muiTableBodyCellProps,\n props.muiTableHeadCellProps,\n props.positionActionsColumn,\n table,\n ]);\n\n const columns = useMemo(\n () => [\n ...displayColumns,\n ...props.columns.map((column) =>\n column.columns\n ? createGroup(table, column as any, currentFilterFns)\n : createDataColumn(table, column as any, currentFilterFns),\n ),\n ],\n [table, props.columns, currentFilterFns],\n );\n\n const data: D[] = useMemo(\n () =>\n (props.state?.isLoading || props.state?.showSkeletons) &&\n !props.data.length\n ? [...Array(10).fill(null)].map(() =>\n Object.assign(\n {},\n ...getAllLeafColumnDefs(props.columns as MRT_ColumnDef[]).map(\n (c) => ({\n [c.id]: null,\n }),\n ),\n ),\n )\n : props.data,\n [props.data, props.state?.isLoading, props.state?.showSkeletons],\n );\n\n //@ts-ignore\n const instance = {\n //@ts-ignore\n ...useTableInstance(table, {\n onColumnOrderChange: setColumnOrder,\n ...props,\n //@ts-ignore\n columns,\n data,\n getSubRows: (row) => (row as MRT_Row)?.subRows,\n //@ts-ignore\n globalFilterFn: currentGlobalFilterFn,\n initialState,\n state: {\n columnOrder,\n currentEditingCell,\n currentEditingRow,\n currentFilterFns,\n currentGlobalFilterFn,\n density,\n isFullScreen,\n showAlertBanner,\n showFilters,\n showGlobalFilter,\n ...props.state,\n } as TableState,\n tableId,\n }),\n setCurrentEditingCell:\n props.onCurrentEditingCellChange ?? setCurrentEditingCell,\n setCurrentEditingRow:\n props.onCurrentEditingRowChange ?? setCurrentEditingRow,\n setCurrentFilterFns: props.onCurrentFilterFnsChange ?? setCurrentFilterFns,\n setCurrentGlobalFilterFn:\n props.onCurrentGlobalFilterFnChange ?? setCurrentGlobalFilterFn,\n setDensity: props.onDensityChange ?? setDensity,\n setIsFullScreen: props.onIsFullScreenChange ?? setIsFullScreen,\n setShowAlertBanner: props.onShowAlertBannerChange ?? setShowAlertBanner,\n setShowFilters: props.onShowFiltersChange ?? setShowFilters,\n setShowGlobalFilter: props.onShowGlobalFilterChange ?? setShowGlobalFilter,\n } as MRT_TableInstance;\n\n return (\n <>\n <Dialog\n PaperComponent={Box}\n TransitionComponent={Grow}\n disablePortal\n fullScreen\n keepMounted={false}\n onClose={() => setIsFullScreen(false)}\n open={isFullScreen}\n transitionDuration={400}\n >\n <MRT_TablePaper instance={instance} />\n </Dialog>\n {!isFullScreen && <MRT_TablePaper instance={instance} />}\n </>\n );\n};\n","import React, {\n ChangeEvent,\n Dispatch,\n FC,\n FocusEvent,\n ReactNode,\n SetStateAction,\n} from 'react';\nimport {\n AlertProps,\n ButtonProps,\n CheckboxProps,\n IconButtonProps,\n LinearProgressProps,\n PaperProps,\n SkeletonProps,\n TableBodyProps,\n TableCellProps,\n TableContainerProps,\n TableFooterProps,\n TableHeadProps,\n TablePaginationProps,\n TableProps,\n TableRowProps,\n TextFieldProps,\n ToolbarProps,\n} from '@mui/material';\nimport {\n Cell,\n Column,\n ColumnDef,\n FilterFn,\n FilterFnOption,\n Header,\n HeaderGroup,\n OnChangeFn,\n Overwrite,\n ReactTableGenerics,\n Row,\n SortingFn,\n SortingFnOption,\n TableGenerics,\n TableInstance,\n TableState,\n UseTableInstanceOptions,\n} from '@tanstack/react-table';\nimport { Options as VirtualizerOptions } from 'react-virtual';\nimport { MRT_Localization, MRT_DefaultLocalization_EN } from './localization';\nimport { MRT_Default_Icons, MRT_Icons } from './icons';\nimport { MRT_TableRoot } from './table/MRT_TableRoot';\n\nexport type MRT_TableOptions<D extends Record<string, any> = {}> = Partial<\n Omit<\n UseTableInstanceOptions<ReactTableGenerics>,\n 'columns' | 'data' | 'initialState' | 'state' | 'expandRowsFn'\n >\n> & {\n columns: MRT_ColumnDef<D>[];\n data: D[];\n expandRowsFn?: (dataRow: D) => D[];\n initialState?: Partial<MRT_TableState<D>>;\n state?: Partial<MRT_TableState<D>>;\n};\n\nexport interface MRT_RowModel<D extends Record<string, any> = {}> {\n flatRows: MRT_Row<D>[];\n rows: MRT_Row<D>[];\n rowsById: { [key: string]: MRT_Row<D> };\n}\n\nexport type MRT_TableInstance<D extends Record<string, any> = {}> = Omit<\n TableInstance<\n Overwrite<\n Partial<TableGenerics>,\n {\n Row: D;\n }\n >\n >,\n | 'getAllColumns'\n | '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<D>[];\n getAllFlatColumns: () => MRT_Column<D>[];\n getAllLeafColumns: () => MRT_Column<D>[];\n getCenterLeafColumns: () => MRT_Column<D>[];\n getColumn: (columnId: string) => MRT_Column<D>;\n getExpandedRowModel: () => MRT_RowModel<D>;\n getFlatHeaders: () => MRT_Header<D>[];\n getLeftLeafColumns: () => MRT_Column<D>[];\n getPaginationRowModel: () => MRT_RowModel<D>;\n getPreFilteredRowModel: () => MRT_RowModel<D>;\n getPrePaginationRowModel: () => MRT_RowModel<D>;\n getRightLeafColumns: () => MRT_Column<D>[];\n getRowModel: () => MRT_RowModel<D>;\n getSelectedRowModel: () => MRT_RowModel<D>;\n getState: () => MRT_TableState<D>;\n options: MaterialReactTableProps<D> & {\n icons: MRT_Icons;\n tableId: string;\n localization: MRT_Localization;\n };\n setCurrentEditingCell: Dispatch<SetStateAction<MRT_Cell | null>>;\n setCurrentEditingRow: Dispatch<SetStateAction<MRT_Row | null>>;\n setCurrentFilterFns: Dispatch<\n SetStateAction<{\n [key: string]: MRT_FilterFn;\n }>\n >;\n setCurrentGlobalFilterFn: Dispatch<SetStateAction<MRT_FilterFn>>;\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<D extends Record<string, any> = {}> = TableState & {\n currentEditingCell: MRT_Cell<D> | null;\n currentEditingRow: MRT_Row<D> | null;\n currentFilterFns: Record<string, string | Function>;\n currentGlobalFilterFn: Record<string, string | Function>;\n density: 'comfortable' | 'compact' | 'spacious';\n isLoading: boolean;\n isFullScreen: boolean;\n showAlertBanner: boolean;\n showFilters: boolean;\n showGlobalFilter: boolean;\n showProgressBars: boolean;\n showSkeletons: boolean;\n};\n\nexport type MRT_ColumnDef<D extends Record<string, any> = {}> = Omit<\n ColumnDef<D>,\n | 'accessorFn'\n | 'aggregatedCell'\n | 'cell'\n | 'columns'\n | 'filterFn'\n | 'footer'\n | 'header'\n | 'sortingFn'\n> & {\n AggregatedCell?: ({\n cell,\n instance,\n }: {\n cell: MRT_Cell<D>;\n instance: MRT_TableInstance<D>;\n }) => ReactNode;\n Cell?: ({\n cell,\n instance,\n }: {\n cell: MRT_Cell<D>;\n instance: MRT_TableInstance<D>;\n }) => ReactNode;\n Edit?: ({\n cell,\n instance,\n }: {\n cell: MRT_Cell<D>;\n instance: MRT_TableInstance<D>;\n }) => ReactNode;\n Filter?: ({\n header,\n instance,\n }: {\n header: MRT_Header<D>;\n instance: MRT_TableInstance<D>;\n }) => ReactNode;\n Footer?:\n | ReactNode\n | (({\n footer,\n instance,\n }: {\n footer: MRT_Header<D>;\n instance: MRT_TableInstance<D>;\n }) => ReactNode);\n Header?:\n | ReactNode\n | (({\n header,\n instance,\n }: {\n header: MRT_Header<D>;\n instance: MRT_TableInstance<D>;\n }) => ReactNode);\n accessorFn?: (row: D) => any;\n columns?: MRT_ColumnDef<D>[];\n enableClickToCopy?: boolean;\n enableColumnActions?: boolean;\n enableColumnFilterChangeMode?: boolean;\n enableColumnOrdering?: boolean;\n enableEditing?: boolean;\n enabledColumnFilterOptions?: (MRT_FILTER_OPTION | string)[] | null;\n filterFn?: MRT_FilterFn;\n filterSelectOptions?: (string | { text: string; value: string })[];\n footer?: string;\n header: string;\n id: keyof D | string;\n muiTableBodyCellCopyButtonProps?:\n | ButtonProps\n | (({\n instance,\n cell,\n }: {\n instance: MRT_TableInstance<D>;\n cell: MRT_Cell<D>;\n }) => ButtonProps);\n muiTableBodyCellEditTextFieldProps?:\n | TextFieldProps\n | (({\n instance,\n cell,\n }: {\n instance: MRT_TableInstance<D>;\n cell: MRT_Cell<D>;\n }) => TextFieldProps);\n muiTableBodyCellProps?:\n | TableCellProps\n | (({\n instance,\n cell,\n }: {\n instance: MRT_TableInstance<D>;\n cell: MRT_Cell<D>;\n }) => TableCellProps);\n muiTableFooterCellProps?:\n | TableCellProps\n | (({\n instance,\n column,\n }: {\n instance: MRT_TableInstance<D>;\n column: MRT_Column<D>;\n }) => TableCellProps);\n muiTableHeadCellColumnActionsButtonProps?:\n | IconButtonProps\n | (({\n instance,\n column,\n }: {\n instance: MRT_TableInstance<D>;\n column: MRT_Column<D>;\n }) => IconButtonProps);\n muiTableHeadCellFilterTextFieldProps?:\n | TextFieldProps\n | (({\n instance,\n column,\n }: {\n instance: MRT_TableInstance<D>;\n column: MRT_Column<D>;\n }) => TextFieldProps);\n muiTableHeadCellProps?:\n | TableCellProps\n | (({\n instance,\n column,\n }: {\n instance: MRT_TableInstance<D>;\n column: MRT_Column<D>;\n }) => TableCellProps);\n onCellEditBlur?: ({\n cell,\n event,\n instance,\n }: {\n event: FocusEvent<HTMLInputElement>;\n cell: MRT_Cell<D>;\n instance: MRT_TableInstance<D>;\n }) => void;\n onCellEditChange?: ({\n cell,\n event,\n instance,\n }: {\n event: ChangeEvent<HTMLInputElement>;\n cell: MRT_Cell<D>;\n instance: MRT_TableInstance<D>;\n }) => void;\n sortingFn?: MRT_SortingFn;\n};\n\nexport type MRT_Column<D extends Record<string, any> = {}> = Omit<\n Column<D>,\n 'header' | 'footer' | 'columns' | 'columnDef'\n> & {\n columns?: MRT_Column<D>[];\n columnDef: MRT_ColumnDef<D>;\n header: string;\n footer: string;\n};\n\nexport type MRT_Header<D extends Record<string, any> = {}> = Omit<\n Header<D>,\n 'column'\n> & {\n column: MRT_Column<D>;\n};\n\nexport type MRT_HeaderGroup<D extends Record<string, any> = {}> = Omit<\n HeaderGroup<D>,\n 'headers'\n> & {\n headers: MRT_Header<D>[];\n};\n\nexport type MRT_Row<D extends Record<string, any> = {}> = Omit<\n Row<D>,\n 'getVisibleCells' | 'getAllCells' | 'subRows' | 'original' | '_valuesCache'\n> & {\n getAllCells: () => MRT_Cell<D>[];\n getVisibleCells: () => MRT_Cell<D>[];\n subRows?: MRT_Row<D>[];\n original: D;\n _valuesCache?: D;\n};\n\nexport type MRT_Cell<D extends Record<string, any> = {}> = Omit<\n Cell<D>,\n 'column' | 'row'\n> & {\n column: MRT_Column<D>;\n row: MRT_Row<D>;\n};\n\nexport type MRT_SortingOption = SortingFnOption<TableGenerics> | 'fuzzy';\n\nexport type MRT_SortingFn = SortingFn<TableGenerics> | MRT_SortingOption;\n\nexport type MRT_FILTER_OPTION =\n | 'between'\n | 'contains'\n | 'empty'\n | 'endsWith'\n | 'equals'\n | 'fuzzy'\n | 'greaterThan'\n | 'greaterThanOrEqual'\n | 'lessThan'\n | 'lessThanOrEqual'\n | 'notEmpty'\n | 'notEquals'\n | 'startsWith'\n | FilterFnOption<TableGenerics>;\n\nexport type MRT_FilterFn = FilterFn<TableGenerics> | MRT_FILTER_OPTION;\n\nexport type MaterialReactTableProps<D extends Record<string, any> = {}> =\n MRT_TableOptions<D> & {\n editingMode?: 'table' | 'row' | 'cell';\n enableClickToCopy?: boolean;\n enableColumnActions?: boolean;\n 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 enableRowNumbers?: boolean;\n enableRowVirtualization?: boolean;\n enableSelectAll?: boolean;\n enableStickyHeader?: boolean;\n enableTableFooter?: boolean;\n enableTableHead?: boolean;\n enableToolbarBottom?: boolean;\n enableToolbarInternalActions?: boolean;\n enableToolbarTop?: boolean;\n enabledColumnFilterOptions?: (MRT_FILTER_OPTION | string)[] | null;\n enabledGlobalFilterOptions?: (MRT_FILTER_OPTION | string)[] | null;\n icons?: Partial<MRT_Icons>;\n localization?: Partial<MRT_Localization>;\n muiExpandAllButtonProps?:\n | IconButtonProps\n | (({ instance }: { instance: MRT_TableInstance<D> }) => IconButtonProps);\n muiExpandButtonProps?:\n | IconButtonProps\n | (({\n instance,\n }: {\n instance: MRT_TableInstance<D>;\n row: MRT_Row<D>;\n }) => IconButtonProps);\n muiLinearProgressProps?:\n | LinearProgressProps\n | (({\n instance,\n }: {\n instance: MRT_TableInstance<D>;\n }) => LinearProgressProps);\n muiSearchTextFieldProps?:\n | TextFieldProps\n | (({ instance }: { instance: MRT_TableInstance<D> }) => TextFieldProps);\n muiSelectAllCheckboxProps?:\n | CheckboxProps\n | (({ instance }: { instance: MRT_TableInstance<D> }) => CheckboxProps);\n muiSelectCheckboxProps?:\n | CheckboxProps\n | (({\n instance,\n row,\n }: {\n instance: MRT_TableInstance<D>;\n row: MRT_Row<D>;\n }) => CheckboxProps);\n muiTableBodyCellCopyButtonProps?:\n | ButtonProps\n | (({\n instance,\n cell,\n }: {\n instance: MRT_TableInstance<D>;\n cell: MRT_Cell<D>;\n }) => ButtonProps);\n muiTableBodyCellEditTextFieldProps?:\n | TextFieldProps\n | (({\n instance,\n cell,\n }: {\n instance: MRT_TableInstance<D>;\n cell: MRT_Cell<D>;\n }) => TextFieldProps);\n muiTableBodyCellProps?:\n | TableCellProps\n | (({\n instance,\n cell,\n }: {\n instance: MRT_TableInstance<D>;\n cell: MRT_Cell<D>;\n }) => TableCellProps);\n muiTableBodyCellSkeletonProps?:\n | SkeletonProps\n | (({\n instance,\n cell,\n }: {\n instance: MRT_TableInstance<D>;\n cell: MRT_Cell<D>;\n }) => SkeletonProps);\n muiTableBodyProps?:\n | TableBodyProps\n | (({ instance }: { instance: MRT_TableInstance<D> }) => TableBodyProps);\n muiTableBodyRowProps?:\n | TableRowProps\n | (({\n instance,\n row,\n }: {\n instance: MRT_TableInstance<D>;\n row: MRT_Row<D>;\n }) => TableRowProps);\n muiTableContainerProps?:\n | TableContainerProps\n | (({\n instance,\n }: {\n instance: MRT_TableInstance<D>;\n }) => TableContainerProps);\n muiTableDetailPanelProps?:\n | TableCellProps\n | (({\n instance,\n row,\n }: {\n instance: MRT_TableInstance<D>;\n row: MRT_Row<D>;\n }) => TableCellProps);\n muiTableFooterCellProps?:\n | TableCellProps\n | (({\n instance,\n column,\n }: {\n instance: MRT_TableInstance<D>;\n column: MRT_Column<D>;\n }) => TableCellProps);\n muiTableFooterProps?:\n | TableFooterProps\n | (({\n instance,\n }: {\n instance: MRT_TableInstance<D>;\n }) => TableFooterProps);\n muiTableFooterRowProps?:\n | TableRowProps\n | (({\n instance,\n footerGroup,\n }: {\n instance: MRT_TableInstance<D>;\n footerGroup: MRT_HeaderGroup<D>;\n }) => TableRowProps);\n muiTableHeadCellColumnActionsButtonProps?:\n | IconButtonProps\n | (({\n instance,\n column,\n }: {\n instance: MRT_TableInstance<D>;\n column: MRT_Column<D>;\n }) => IconButtonProps);\n muiTableHeadCellFilterTextFieldProps?:\n | TextFieldProps\n | (({\n instance,\n column,\n }: {\n instance: MRT_TableInstance<D>;\n column: MRT_Column<D>;\n }) => TextFieldProps);\n muiTableHeadCellProps?:\n | TableCellProps\n | (({\n instance,\n column,\n }: {\n instance: MRT_TableInstance<D>;\n column: MRT_Column<D>;\n }) => TableCellProps);\n muiTableHeadProps?:\n | TableHeadProps\n | (({ instance }: { instance: MRT_TableInstance<D> }) => TableHeadProps);\n muiTableHeadRowProps?:\n | TableRowProps\n | (({\n instance,\n headerGroup,\n }: {\n instance: MRT_TableInstance<D>;\n headerGroup: MRT_HeaderGroup<D>;\n }) => TableRowProps);\n muiTablePaginationProps?:\n | Partial<TablePaginationProps>\n | (({\n instance,\n }: {\n instance: MRT_TableInstance<D>;\n }) => Partial<TablePaginationProps>);\n muiTablePaperProps?:\n | PaperProps\n | (({ instance }: { instance: MRT_TableInstance<D> }) => PaperProps);\n muiTableProps?:\n | TableProps\n | (({ instance }: { instance: MRT_TableInstance<D> }) => TableProps);\n muiTableToolbarAlertBannerProps?:\n | AlertProps\n | (({ instance }: { instance: MRT_TableInstance<D> }) => AlertProps);\n muiTableToolbarBottomProps?:\n | ToolbarProps\n | (({ instance }: { instance: MRT_TableInstance<D> }) => ToolbarProps);\n muiTableToolbarTopProps?:\n | ToolbarProps\n | (({ instance }: { instance: MRT_TableInstance<D> }) => ToolbarProps);\n onCellEditBlur?: ({\n cell,\n event,\n instance,\n }: {\n event: FocusEvent<HTMLInputElement>;\n cell: MRT_Cell<D>;\n instance: MRT_TableInstance<D>;\n }) => void;\n onCellEditChange?: ({\n cell,\n event,\n instance,\n }: {\n event: ChangeEvent<HTMLInputElement>;\n cell: MRT_Cell<D>;\n instance: MRT_TableInstance<D>;\n }) => void;\n onCurrentEditingCellChange?: OnChangeFn<MRT_Cell>;\n onCurrentEditingRowChange?: OnChangeFn<MRT_Row>;\n onCurrentFilterFnsChange?: OnChangeFn<{ [key: string]: MRT_FilterFn }>;\n onCurrentGlobalFilterFnChange?: OnChangeFn<MRT_FilterFn>;\n onEditRowSubmit?: ({\n row,\n instance,\n }: {\n row: MRT_Row<D>;\n instance: MRT_TableInstance<D>;\n }) => Promise<void> | void;\n onDensityChange?: OnChangeFn<boolean>;\n onIsFullScreenChange?: OnChangeFn<boolean>;\n onShowAlertBannerChange?: OnChangeFn<boolean>;\n onShowFiltersChange?: OnChangeFn<boolean>;\n onShowGlobalFilterChange?: OnChangeFn<boolean>;\n positionActionsColumn?: 'first' | 'last';\n positionGlobalFilter?: 'left' | 'right';\n positionPagination?: 'bottom' | 'top' | 'both';\n positionToolbarAlertBanner?: 'bottom' | 'top';\n renderDetailPanel?: ({\n row,\n instance,\n }: {\n row: MRT_Row<D>;\n instance: MRT_TableInstance<D>;\n }) => ReactNode;\n renderRowActionMenuItems?: ({\n closeMenu,\n row,\n instance,\n }: {\n closeMenu: () => void;\n row: MRT_Row<D>;\n instance: MRT_TableInstance<D>;\n }) => ReactNode[];\n renderRowActions?: ({\n row,\n instance,\n }: {\n row: MRT_Row<D>;\n instance: MRT_TableInstance<D>;\n }) => ReactNode;\n renderToolbarBottomCustomActions?: ({\n instance,\n }: {\n instance: MRT_TableInstance<D>;\n }) => ReactNode;\n renderToolbarTopCustomActions?: ({\n instance,\n }: {\n instance: MRT_TableInstance<D>;\n }) => ReactNode;\n renderToolbarInternalActions?: ({\n instance,\n MRT_ToggleGlobalFilterButton,\n MRT_ToggleFiltersButton,\n MRT_ShowHideColumnsButton,\n MRT_ToggleDensePaddingButton,\n MRT_FullScreenToggleButton,\n }: {\n instance: MRT_TableInstance<D>;\n MRT_ToggleGlobalFilterButton: FC<\n IconButtonProps & { instance: MRT_TableInstance<D> }\n >;\n MRT_ToggleFiltersButton: FC<\n IconButtonProps & { instance: MRT_TableInstance<D> }\n >;\n MRT_ShowHideColumnsButton: FC<\n IconButtonProps & { instance: MRT_TableInstance<D> }\n >;\n MRT_ToggleDensePaddingButton: FC<\n IconButtonProps & { instance: MRT_TableInstance<D> }\n >;\n MRT_FullScreenToggleButton: FC<\n IconButtonProps & { instance: MRT_TableInstance<D> }\n >;\n }) => ReactNode;\n rowCount?: number;\n rowNumberMode?: 'original' | 'static';\n selectAllMode?: 'all' | 'page';\n tableId?: string;\n virtualizerProps?: Partial<VirtualizerOptions<HTMLDivElement>>;\n };\n\nexport default <D extends Record<string, any> = {}>({\n autoResetExpanded = false,\n columnResizeMode = 'onEnd',\n defaultColumn = { minSize: 40, maxSize: 1000, size: 180 },\n editingMode = 'row',\n enableColumnActions = true,\n enableColumnFilterChangeMode = true,\n enableColumnFilters = true,\n enableColumnOrdering = false,\n enableColumnResizing = false,\n enableDensityToggle = true,\n enableExpandAll = true,\n enableFilters = true,\n enableFullScreenToggle = true,\n enableGlobalFilter = true,\n enableGlobalFilterChangeMode = true,\n enableGlobalFilterRankedResults = true,\n enableGrouping = false,\n enableHiding = true,\n enableMultiRowSelection = true,\n enableMultiSort = true,\n enablePagination = true,\n enablePinning = false,\n enableRowSelection = false,\n enableSelectAll = true,\n enableSorting = true,\n enableStickyHeader = false,\n enableTableFooter = true,\n enableTableHead = true,\n enableToolbarBottom = true,\n enableToolbarInternalActions = true,\n enableToolbarTop = true,\n icons,\n localization,\n positionActionsColumn = 'first',\n positionGlobalFilter = 'right',\n positionPagination = 'bottom',\n positionToolbarAlertBanner = 'top',\n rowNumberMode = 'original',\n selectAllMode = 'all',\n ...rest\n}: MaterialReactTableProps<D>) => (\n <MRT_TableRoot\n autoResetExpanded={autoResetExpanded}\n columnResizeMode={columnResizeMode}\n defaultColumn={defaultColumn}\n editingMode={editingMode}\n enableColumnActions={enableColumnActions}\n enableColumnFilterChangeMode={enableColumnFilterChangeMode}\n enableColumnFilters={enableColumnFilters}\n enableColumnOrdering={enableColumnOrdering}\n enableColumnResizing={enableColumnResizing}\n enableDensityToggle={enableDensityToggle}\n enableExpandAll={enableExpandAll}\n enableFilters={enableFilters}\n enableFullScreenToggle={enableFullScreenToggle}\n enableGlobalFilter={enableGlobalFilter}\n enableGlobalFilterChangeMode={enableGlobalFilterChangeMode}\n enableGlobalFilterRankedResults={enableGlobalFilterRankedResults}\n enableGrouping={enableGrouping}\n enableHiding={enableHiding}\n enableMultiRowSelection={enableMultiRowSelection}\n enableMultiSort={enableMultiSort}\n enablePagination={enablePagination}\n enablePinning={enablePinning}\n enableRowSelection={enableRowSelection}\n enableSelectAll={enableSelectAll}\n enableSorting={enableSorting}\n enableStickyHeader={enableStickyHeader}\n enableTableFooter={enableTableFooter}\n enableTableHead={enableTableHead}\n enableToolbarBottom={enableToolbarBottom}\n enableToolbarInternalActions={enableToolbarInternalActions}\n enableToolbarTop={enableToolbarTop}\n icons={{ ...MRT_Default_Icons, ...icons }}\n localization={{ ...MRT_DefaultLocalization_EN, ...localization }}\n positionActionsColumn={positionActionsColumn}\n positionGlobalFilter={positionGlobalFilter}\n positionPagination={positionPagination}\n positionToolbarAlertBanner={positionToolbarAlertBanner}\n rowNumberMode={rowNumberMode}\n selectAllMode={selectAllMode}\n {...rest}\n />\n);\n"],"names":["MRT_DefaultLocalization_EN","actions","and","cancel","changeFilterMode","changeSearchMode","clearFilter","clearSearch","clearSort","clickToCopy","columnActions","copiedToClipboard","edit","expand","expandAll","filterBetween","filterByColumn","filterContains","filterEmpty","filterEndsWith","filterEquals","filterFuzzy","filterGreaterThan","filterLessThan","filterMode","filterNotEmpty","filterNotEquals","filterStartsWith","filteringByColumn","grab","groupByColumn","groupedBy","hideAll","hideColumn","max","min","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","instance","getIsAllRowsExpanded","getIsSomeRowsExpanded","getCanSomeRowsExpand","getState","options","icons","localization","muiExpandAllButtonProps","renderDetailPanel","toggleAllRowsExpanded","density","iconButtonProps","Function","React","Tooltip","arrow","enterDelay","enterNextDelay","title","IconButton","disabled","onClick","sx","height","width","style","transform","transition","MRT_ExpandButton","row","muiExpandButtonProps","handleToggleExpand","toggleExpanded","getCanExpand","getIsExpanded","fuzzy","columnId","filterValue","addMeta","itemRank","rankItem","getValue","threshold","rankings","MATCHES","passed","autoRemove","val","contains","id","toString","toLowerCase","trim","includes","startsWith","endsWith","equals","notEquals","greaterThan","isNaN","lessThan","between","filterValues","undefined","empty","_filterValue","notEmpty","MRT_FilterFns","commonMenuItemStyles","py","my","alignItems","MRT_FilterOptionMenu","anchorEl","header","onSelect","setAnchorEl","enabledGlobalFilterOptions","enabledColumnFilterOptions","setCurrentFilterFns","setCurrentGlobalFilterFn","currentFilterFns","currentGlobalFilterFn","column","columnDef","allowedColumnFilterOptions","filterOptions","useMemo","option","label","divider","fn","filter","filterType","handleSelectFilterType","value","prev","setFilterValue","filterOption","Menu","anchorOrigin","vertical","horizontal","onClose","open","MenuListProps","dense","map","index","MenuItem","key","selected","MRT_ColumnPinningButtons","handlePinColumn","pinDirection","pin","Box","minWidth","textAlign","getIsPinned","size","MRT_GrabHandleButton","forwardRef","ref","placement","disableRipple","cursor","m","opacity","p","backgroundColor","getAllLeafColumnDefs","columns","lowestLevelColumns","currentCols","length","some","col","nextCols","flat","every","createGroup","table","createDataColumn","filterFn","createDisplayColumn","reorderColumn","movingColumn","receivingColumn","columnOrder","getCanPin","splice","indexOf","getLeadingDisplayColumnIds","props","positionActionsColumn","enableRowActions","enableEditing","editingMode","enableExpanding","enableGrouping","enableRowSelection","enableRowNumbers","Boolean","getTrailingDisplayColumnIds","getDefaultColumnOrderIds","c","MRT_ShowHideColumnsMenuItems","allColumns","isSubMenu","enableColumnOrdering","enableHiding","enablePinning","setColumnOrder","columnDefType","useDrop","accept","drop","newColumnOrder","dropRef","useDrag","collect","monitor","isDragging","item","type","dragRef","previewRef","switchChecked","getIsVisible","getLeafColumns","handleToggleColumnHidden","forEach","childColumn","justifyContent","pl","depth","display","flexWrap","gap","FormControlLabel","componentsProps","typography","mb","checked","control","Switch","getCanHide","getIsGrouped","onChange","Typography","alignSelf","i","MRT_ShowHideColumnsMenu","getAllColumns","getAllLeafColumns","getCenterLeafColumns","getIsAllColumnsVisible","getIsSomeColumnsPinned","getIsSomeColumnsVisible","getLeftLeafColumns","getRightLeafColumns","toggleAllColumnsVisible","columnPinning","hideAllColumns","Array","from","Set","colId","find","pt","Button","resetColumnPinning","Divider","commonListItemStyles","MRT_ColumnActionMenu","enableColumnFilterChangeMode","enableColumnFilters","enableColumnResizing","enableSorting","tableId","setShowFilters","columnSizing","columnVisibility","useState","filterMenuAnchorEl","setFilterMenuAnchorEl","showHideColumnsMenuAnchorEl","setShowHideColumnsMenuAnchorEl","handleClearSort","clearSorting","handleSortAsc","toggleSorting","handleSortDesc","handleResetColumnSize","resetSize","handleHideColumn","handleGroupByColumn","toggleGrouping","old","handleClearFilter","handleFilterByColumn","setTimeout","document","getElementById","muiTableHeadCellFilterTextFieldProps","focus","handleShowAllColumns","handleOpenFilterModeMenu","event","stopPropagation","currentTarget","handleOpenShowHideColumnsMenu","isSelectFilter","filterSelectOptions","showFilterModeSubMenu","getCanSort","getIsSorted","ListItemIcon","replace","String","getCanFilter","getFilterValue","onMouseEnter","getCanGroup","getCanResize","Object","values","visible","MRT_RowActionMenu","handleEdit","renderRowActionMenuItems","closeMenu","MRT_EditActionButtons","onEditRowSubmit","setCurrentEditingRow","currentEditingRow","handleCancel","_valuesCache","original","handleSave","color","commonIconButtonStyles","ml","MRT_ToggleRowActionMenuButton","renderRowActions","handleOpenRowActionMenu","preventDefault","handleStartEditMode","MRT_SelectCheckbox","selectAll","muiSelectCheckboxProps","muiSelectAllCheckboxProps","selectAllMode","handleSelectChange","getToggleAllRowsSelectedHandler","getToggleAllPageRowsSelectedHandler","getToggleSelectedHandler","checkboxProps","Checkbox","getIsAllRowsSelected","getIsSelected","indeterminate","getIsSomeRowsSelected","getIsSomeSelected","inputProps","MRT_FullScreenToggleButton","rest","setIsFullScreen","isFullScreen","handleToggleFullScreen","MRT_ShowHideColumnsButton","handleClick","MRT_ToggleDensePaddingButton","setDensity","handleToggleDensePadding","nextDensity","MRT_ToggleFiltersButton","showFilters","handleToggleShowFilters","MRT_ToggleGlobalFilterButton","muiSearchTextFieldProps","setShowGlobalFilter","showGlobalFilter","textFieldProps","handleToggleSearch","MRT_GlobalFilterTextField","setGlobalFilter","enableGlobalFilterChangeMode","globalFilter","searchValue","setSearchValue","handleChangeDebounced","useCallback","debounce","target","handleChange","handleGlobalFilterMenuOpen","handleClear","Collapse","orientation","TextField","placeholder","variant","InputProps","startAdornment","InputAdornment","position","endAdornment","MRT_ToolbarInternalButtons","enableDensityToggle","enableFilters","enableFullScreenToggle","enableGlobalFilter","positionGlobalFilter","renderToolbarInternalActions","zIndex","MRT_TablePagination","getPrePaginationRowModel","setPageIndex","setPageSize","muiTablePaginationProps","enableToolbarInternalActions","rowCount","pagination","pageSize","pageIndex","tablePaginationProps","handleChangeRowsPerPage","totalRowCount","rows","showFirstLastPageButtons","TablePagination","SelectProps","MenuProps","disablePadding","component","count","onPageChange","_","newPage","onRowsPerPageChange","page","rowsPerPage","rowsPerPageOptions","showFirstButton","showLastButton","mt","MRT_ToolbarAlertBanner","stackAlertBanner","getSelectedRowModel","muiTableToolbarAlertBannerProps","grouping","showAlertBanner","alertProps","selectMessage","groupedByMessage","Fragment","Chip","getColumn","onDelete","timeout","Alert","icon","borderRadius","fontSize","left","right","top","AlertTitle","children","MRT_LinearProgressBar","alignTo","muiLinearProgressProps","isLoading","showProgressBars","linearProgressProps","mountOnEnter","unmountOnExit","bottom","LinearProgress","commonToolbarStyles","theme","lighten","palette","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_FilterTextField","inputIndex","mTableHeadCellFilterTextFieldProps","mcTableHeadCellFilterTextFieldProps","newFilterValues","handleFilterMenuOpen","handleClearFilterChip","Filter","filterId","filterChipLabel","charAt","toUpperCase","slice","filterPlaceholder","showChangeModeButton","fullWidth","textOverflow","helperText","htmlFor","name","FormHelperTextProps","lineHeight","whiteSpace","margin","e","disableHoverListener","mr","text","MRT_FilterRangeFields","gridTemplateColumns","MRT_TableHeadCellFilterContainer","MRT_TableHeadCellFilterLabel","filterTooltip","isArray","join","Grow","MRT_TableHeadCellResizeHandle","flexItem","onDoubleClick","borderRightWidth","touchAction","getIsResizing","userSelect","info","main","onMouseDown","getResizeHandler","onTouchStart","columnSizingInfo","deltaOffset","MRT_TableHeadCellSortLabel","sortTooltip","TableSortLabel","active","direction","MRT_TableHeadCellColumnActionsButton","muiTableHeadCellColumnActionsButtonProps","mTableHeadCellColumnActionsButtonProps","mcTableHeadCellColumnActionsButtonProps","MRT_TableHeadCell","enableColumnActions","enableMultiSort","muiTableHeadCellProps","mTableHeadCellProps","mcTableHeadCellProps","tableCellProps","headerElement","Header","renderHeader","getIsLastLeftPinnedColumn","getLeftLeafHeaders","getPinnedIndex","getIsFirstRightPinnedColumn","getTotalRight","getRightLeafHeaders","TableCell","align","colSpan","fontWeight","getStart","pb","verticalAlign","maxWidth","getSize","minSize","isPlaceholder","getToggleSortingHandler","MRT_DraggableTableHeadCell","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_TableBodyCell","enableHover","rowIndex","enableClickToCopy","muiTableBodyCellProps","muiTableBodyCellSkeletonProps","rowNumberMode","currentEditingCell","showSkeletons","mTableCellBodyProps","mcTableCellBodyProps","skeletonWidth","Math","random","isEditable","isEditing","handleDoubleClick","_event","textField","mode","darken","Skeleton","animation","Cell","getIsPlaceholder","groupingColumnId","getIsAggregated","AggregatedCell","renderAggregatedCell","renderCell","subRows","MRT_TableDetailPanel","getVisibleLeafColumns","muiTableBodyRowProps","muiTableDetailPanelProps","borderBottom","getTotalSize","MRT_TableBodyRow","hover","getVisibleCells","rowA","rowB","dir","columnFiltersMeta","compareItems","sortingFns","alphanumeric","MRT_SortingFns","rankGlobalFuzzy","v","rank","MRT_TableBody","tableContainerRef","getRowModel","enableGlobalFilterRankedResults","enableRowVirtualization","muiTableBodyProps","virtualizerProps","sorting","tableBodyProps","getIsSomeColumnsSorted","rankedRows","sort","a","b","rowVirtualizer","useVirtual","overscan","parentRef","virtualRows","virtualItems","paddingTop","start","paddingBottom","totalSize","end","TableBody","rowOrVirtualRow","MRT_TableFooterCell","footer","muiTableFooterCellProps","mTableFooterCellProps","mcTableFooterCellProps","white","Footer","renderFooter","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","useRef","TableContainer","maxHeight","MRT_TablePaper","enableToolbarBottom","enableToolbarTop","muiTablePaperProps","body","tablePaperProps","DndProvider","backend","HTML5Backend","Paper","elevation","padding","MRT_TableRoot","setIdPrefix","substring","initialState","initState","setShowAlertBanner","assign","globalFilterFn","createTable","setOptions","filterFns","getCoreRowModel","getExpandedRowModel","getFacetedRowModel","getFilteredRowModel","getGroupedRowModel","getPaginationRowModel","getSortedRowModel","displayColumns","enableExpandAll","enableSelectAll","data","state","fill","useTableInstance","onColumnOrderChange","getSubRows","onCurrentEditingCellChange","onCurrentEditingRowChange","onCurrentFilterFnsChange","onCurrentGlobalFilterFnChange","onDensityChange","onIsFullScreenChange","onShowAlertBannerChange","onShowFiltersChange","onShowGlobalFilterChange","Dialog","PaperComponent","TransitionComponent","disablePortal","fullScreen","keepMounted","transitionDuration","autoResetExpanded","columnResizeMode","defaultColumn","maxSize","enableMultiRowSelection"],"mappings":"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"}