material-react-table 0.25.0 → 0.26.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (36) hide show
  1. package/README.md +13 -11
  2. package/dist/{utils.d.ts → column.utils.d.ts} +1 -1
  3. package/dist/filtersFns.d.ts +22 -54
  4. package/dist/localization.d.ts +3 -0
  5. package/dist/material-react-table.cjs.development.js +188 -103
  6. package/dist/material-react-table.cjs.development.js.map +1 -1
  7. package/dist/material-react-table.cjs.production.min.js +1 -1
  8. package/dist/material-react-table.cjs.production.min.js.map +1 -1
  9. package/dist/material-react-table.esm.js +188 -103
  10. package/dist/material-react-table.esm.js.map +1 -1
  11. package/dist/table/MRT_TableRoot.d.ts +1 -1
  12. package/package.json +1 -1
  13. package/src/body/MRT_TableBodyCell.tsx +3 -1
  14. package/src/body/MRT_TableBodyRow.tsx +3 -1
  15. package/src/body/MRT_TableDetailPanel.tsx +5 -3
  16. package/src/buttons/MRT_CopyButton.tsx +5 -3
  17. package/src/buttons/MRT_ExpandButton.tsx +5 -3
  18. package/src/{utils.ts → column.utils.ts} +0 -0
  19. package/src/filtersFns.ts +47 -13
  20. package/src/footer/MRT_TableFooterCell.tsx +3 -1
  21. package/src/head/MRT_TableHeadCell.tsx +5 -1
  22. package/src/head/MRT_TableHeadCellColumnActionsButton.tsx +5 -3
  23. package/src/head/MRT_TableHeadCellGrabHandle.tsx +1 -1
  24. package/src/inputs/MRT_FilterTextField.tsx +9 -4
  25. package/src/inputs/MRT_SelectCheckbox.tsx +5 -3
  26. package/src/localization.ts +6 -0
  27. package/src/menus/MRT_FilterOptionMenu.tsx +105 -72
  28. package/src/menus/MRT_ShowHideColumnsMenu.tsx +1 -1
  29. package/src/menus/MRT_ShowHideColumnsMenuItems.tsx +1 -1
  30. package/src/table/MRT_Table.tsx +5 -3
  31. package/src/table/MRT_TableContainer.tsx +5 -3
  32. package/src/table/MRT_TableRoot.tsx +12 -12
  33. package/src/toolbar/MRT_TablePagination.tsx +5 -3
  34. package/src/toolbar/MRT_ToolbarAlertBanner.tsx +5 -3
  35. package/src/toolbar/MRT_ToolbarBottom.tsx +3 -1
  36. package/src/toolbar/MRT_ToolbarTop.tsx +3 -1
@@ -1 +1 @@
1
- {"version":3,"file":"material-react-table.cjs.development.js","sources":["../src/localization.ts","../src/icons.ts","../src/buttons/MRT_ExpandAllButton.tsx","../src/buttons/MRT_ExpandButton.tsx","../src/menus/MRT_FilterOptionMenu.tsx","../src/buttons/MRT_ColumnPinningButtons.tsx","../src/buttons/MRT_GrabHandleButton.tsx","../src/filtersFns.ts","../src/sortingFns.ts","../src/utils.ts","../src/menus/MRT_ShowHideColumnsMenuItems.tsx","../src/menus/MRT_ShowHideColumnsMenu.tsx","../src/menus/MRT_ColumnActionMenu.tsx","../src/menus/MRT_RowActionMenu.tsx","../src/buttons/MRT_EditActionButtons.tsx","../src/buttons/MRT_ToggleRowActionMenuButton.tsx","../src/inputs/MRT_SelectCheckbox.tsx","../src/buttons/MRT_FullScreenToggleButton.tsx","../src/buttons/MRT_ShowHideColumnsButton.tsx","../src/buttons/MRT_ToggleDensePaddingButton.tsx","../src/buttons/MRT_ToggleFiltersButton.tsx","../src/buttons/MRT_ToggleGlobalFilterButton.tsx","../src/inputs/MRT_GlobalFilterTextField.tsx","../src/toolbar/MRT_ToolbarInternalButtons.tsx","../src/toolbar/MRT_TablePagination.tsx","../src/toolbar/MRT_ToolbarAlertBanner.tsx","../src/toolbar/MRT_LinearProgressBar.tsx","../src/toolbar/MRT_ToolbarTop.tsx","../src/toolbar/MRT_ToolbarBottom.tsx","../src/head/MRT_TableHeadCellColumnActionsButton.tsx","../src/inputs/MRT_FilterTextField.tsx","../src/inputs/MRT_FilterRangeFields.tsx","../src/head/MRT_TableHeadCellFilterContainer.tsx","../src/head/MRT_TableHeadCellFilterLabel.tsx","../src/head/MRT_TableHeadCellGrabHandle.tsx","../src/head/MRT_TableHeadCellResizeHandle.tsx","../src/head/MRT_TableHeadCellSortLabel.tsx","../src/head/MRT_TableHeadCell.tsx","../src/head/MRT_TableHeadRow.tsx","../src/head/MRT_TableHead.tsx","../src/inputs/MRT_EditCellTextField.tsx","../src/buttons/MRT_CopyButton.tsx","../src/body/MRT_TableBodyRowGrabHandle.tsx","../src/body/MRT_TableBodyCell.tsx","../src/body/MRT_TableDetailPanel.tsx","../src/body/MRT_TableBodyRow.tsx","../src/body/MRT_TableBody.tsx","../src/footer/MRT_TableFooterCell.tsx","../src/footer/MRT_TableFooterRow.tsx","../src/footer/MRT_TableFooter.tsx","../src/table/MRT_Table.tsx","../src/table/MRT_TableContainer.tsx","../src/table/MRT_TablePaper.tsx","../src/table/MRT_TableRoot.tsx","../src/MaterialReactTable.tsx"],"sourcesContent":["export interface MRT_Localization {\n actions: string;\n and: string;\n cancel: string;\n changeFilterMode: string;\n changeSearchMode: string;\n clearFilter: string;\n clearSearch: string;\n clearSort: string;\n clickToCopy: string;\n columnActions: string;\n copiedToClipboard: string;\n edit: string;\n expand: string;\n expandAll: string;\n filterBetween: string;\n filterByColumn: string;\n filterContains: string;\n filterEmpty: string;\n filterEndsWith: string;\n filterEquals: string;\n filterFuzzy: string;\n filterGreaterThan: string;\n filterLessThan: string;\n filterMode: string;\n filterNotEmpty: string;\n filterNotEquals: string;\n filterStartsWith: string;\n filteringByColumn: string;\n grab: string;\n groupByColumn: string;\n groupedBy: string;\n hideAll: string;\n hideColumn: string;\n max: string;\n min: string;\n move: string;\n pinToLeft: string;\n pinToRight: string;\n resetColumnSize: string;\n resetOrder: string;\n rowActions: string;\n rowNumber: string;\n rowNumbers: string;\n save: string;\n search: string;\n select: string;\n selectedCountOfRowCountRowsSelected: string;\n showAll: string;\n showAllColumns: string;\n showHideColumns: string;\n showHideFilters: string;\n showHideSearch: string;\n sortByColumnAsc: string;\n sortByColumnDesc: string;\n sortedByColumnAsc: string;\n sortedByColumnDesc: string;\n thenBy: string;\n toggleDensity: string;\n toggleFullScreen: string;\n toggleSelectAll: string;\n toggleSelectRow: string;\n toggleVisibility: string;\n ungroupByColumn: string;\n unpin: string;\n unpinAll: string;\n unsorted: string;\n}\n\nexport const MRT_DefaultLocalization_EN: MRT_Localization = {\n actions: 'Actions',\n and: 'and',\n cancel: 'Cancel',\n changeFilterMode: 'Change filter mode',\n changeSearchMode: 'Change search mode',\n clearFilter: 'Clear filter',\n clearSearch: 'Clear search',\n clearSort: 'Clear sort',\n clickToCopy: 'Click to copy',\n columnActions: 'Column Actions',\n copiedToClipboard: 'Copied to clipboard',\n edit: 'Edit',\n expand: 'Expand',\n expandAll: 'Expand all',\n filterBetween: 'Between',\n filterByColumn: 'Filter by {column}',\n filterContains: 'Contains',\n filterEmpty: 'Empty',\n filterEndsWith: 'Ends With',\n filterEquals: 'Equals',\n filterFuzzy: 'Fuzzy',\n filterGreaterThan: 'Greater Than',\n filterLessThan: 'Less Than',\n filterMode: 'Filter Mode: {filterType}',\n filterNotEmpty: 'Not Empty',\n filterNotEquals: 'Not Equals',\n filterStartsWith: 'Starts With',\n filteringByColumn: 'Filtering by {column} - {filterType} {filterValue}',\n grab: 'Grab',\n groupByColumn: 'Group by {column}',\n groupedBy: 'Grouped by ',\n hideAll: 'Hide all',\n hideColumn: 'Hide {column} column',\n max: 'Max',\n min: 'Min',\n move: 'Move',\n pinToLeft: 'Pin to left',\n pinToRight: 'Pin to right',\n resetColumnSize: 'Reset column size',\n resetOrder: 'Reset order',\n rowActions: 'Row Actions',\n rowNumber: '#',\n rowNumbers: 'Row Numbers',\n save: 'Save',\n search: 'Search',\n selectedCountOfRowCountRowsSelected:\n '{selectedCount} of {rowCount} row(s) selected',\n select: 'Select',\n showAll: 'Show all',\n showAllColumns: 'Show all columns',\n showHideColumns: 'Show/Hide columns',\n showHideFilters: 'Show/Hide filters',\n showHideSearch: 'Show/Hide search',\n sortByColumnAsc: 'Sort by {column} ascending',\n sortByColumnDesc: 'Sort by {column} descending',\n sortedByColumnAsc: 'Sorted by {column} ascending',\n sortedByColumnDesc: 'Sorted by {column} descending',\n thenBy: ', then by ',\n toggleDensity: 'Toggle density',\n toggleFullScreen: 'Toggle full screen',\n toggleSelectAll: 'Toggle select all',\n toggleSelectRow: 'Toggle select row',\n toggleVisibility: 'Toggle visibility',\n ungroupByColumn: 'Ungroup by {column}',\n unpin: 'Unpin',\n unpinAll: 'Unpin all',\n unsorted: 'Unsorted',\n};\n","import {\n ArrowRight,\n Cancel,\n CheckBox,\n ClearAll,\n Close,\n DensityLarge,\n DensityMedium,\n DensitySmall,\n DragHandle,\n DynamicFeed,\n Edit,\n ExpandLess,\n ExpandMore,\n FilterAlt,\n FilterAltOff,\n FilterList,\n FilterListOff,\n Fullscreen,\n FullscreenExit,\n KeyboardDoubleArrowDown,\n MoreHoriz,\n MoreVert,\n PushPin,\n RestartAlt,\n Save,\n Search,\n SearchOff,\n Sort,\n ViewColumn,\n VisibilityOff,\n} from '@mui/icons-material';\n\nexport interface MRT_Icons {\n ArrowRightIcon: any;\n CancelIcon: any;\n CheckBoxIcon: any;\n ClearAllIcon: any;\n CloseIcon: any;\n DensityLargeIcon: any;\n DensityMediumIcon: any;\n DensitySmallIcon: any;\n KeyboardDoubleArrowDownIcon: any;\n DragHandleIcon: any;\n DynamicFeedIcon: any;\n EditIcon: any;\n ExpandLessIcon: any;\n ExpandMoreIcon: any;\n FilterAltIcon: any;\n FilterAltOffIcon: any;\n FilterListIcon: any;\n FilterListOffIcon: any;\n FullscreenExitIcon: any;\n FullscreenIcon: any;\n MoreHorizIcon: any;\n MoreVertIcon: any;\n PushPinIcon: any;\n RestartAltIcon: any;\n SaveIcon: any;\n SearchIcon: any;\n SearchOffIcon: any;\n SortIcon: any;\n ViewColumnIcon: any;\n VisibilityOffIcon: any;\n}\n\nexport const MRT_Default_Icons: MRT_Icons = {\n ArrowRightIcon: ArrowRight,\n CancelIcon: Cancel,\n CheckBoxIcon: CheckBox,\n ClearAllIcon: ClearAll,\n CloseIcon: Close,\n DensityLargeIcon: DensityLarge,\n DensityMediumIcon: DensityMedium,\n DensitySmallIcon: DensitySmall,\n DragHandleIcon: DragHandle,\n DynamicFeedIcon: DynamicFeed,\n EditIcon: Edit,\n ExpandLessIcon: ExpandLess,\n ExpandMoreIcon: ExpandMore,\n FilterAltIcon: FilterAlt,\n FilterAltOffIcon: FilterAltOff,\n FilterListIcon: FilterList,\n FilterListOffIcon: FilterListOff,\n FullscreenExitIcon: FullscreenExit,\n FullscreenIcon: Fullscreen,\n KeyboardDoubleArrowDownIcon: KeyboardDoubleArrowDown,\n MoreHorizIcon: MoreHoriz,\n MoreVertIcon: MoreVert,\n PushPinIcon: PushPin,\n RestartAltIcon: RestartAlt,\n SaveIcon: Save,\n SearchIcon: Search,\n SearchOffIcon: SearchOff,\n SortIcon: Sort,\n ViewColumnIcon: ViewColumn,\n VisibilityOffIcon: VisibilityOff,\n};\n","import React, { FC } from 'react';\nimport { IconButton, Tooltip } from '@mui/material';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n table: MRT_TableInstance;\n}\n\nexport const MRT_ExpandAllButton: FC<Props> = ({ table }) => {\n const {\n getIsAllRowsExpanded,\n getIsSomeRowsExpanded,\n getCanSomeRowsExpand,\n getState,\n options: {\n icons: { KeyboardDoubleArrowDownIcon },\n localization,\n muiExpandAllButtonProps,\n renderDetailPanel,\n },\n toggleAllRowsExpanded,\n } = table;\n const { density } = getState();\n\n const iconButtonProps =\n muiExpandAllButtonProps instanceof Function\n ? muiExpandAllButtonProps({ table })\n : muiExpandAllButtonProps;\n\n return (\n <Tooltip\n arrow\n enterDelay={1000}\n enterNextDelay={1000}\n title={localization.expandAll}\n >\n <span>\n <IconButton\n aria-label={localization.expandAll}\n disabled={!getCanSomeRowsExpand() && !renderDetailPanel}\n onClick={() => toggleAllRowsExpanded(!getIsAllRowsExpanded())}\n {...iconButtonProps}\n sx={{\n height: density === 'compact' ? '1.75rem' : '2.25rem',\n width: density === 'compact' ? '1.75rem' : '2.25rem',\n ...iconButtonProps?.sx,\n }}\n >\n <KeyboardDoubleArrowDownIcon\n style={{\n transform: `rotate(${\n getIsAllRowsExpanded()\n ? -180\n : getIsSomeRowsExpanded()\n ? -90\n : 0\n }deg)`,\n transition: 'transform 0.2s',\n }}\n />\n </IconButton>\n </span>\n </Tooltip>\n );\n};\n","import React, { FC } from 'react';\nimport { IconButton, Tooltip } from '@mui/material';\nimport type { MRT_Row, MRT_TableInstance } from '..';\n\ninterface Props {\n row: MRT_Row;\n table: MRT_TableInstance;\n}\n\nexport const MRT_ExpandButton: FC<Props> = ({ row, table }) => {\n const {\n getState,\n options: {\n icons: { ExpandMoreIcon },\n localization,\n muiExpandButtonProps,\n renderDetailPanel,\n },\n } = table;\n const { density } = getState();\n\n const iconButtonProps =\n muiExpandButtonProps instanceof Function\n ? muiExpandButtonProps({ table, row })\n : muiExpandButtonProps;\n\n const handleToggleExpand = () => {\n row.toggleExpanded();\n };\n\n return (\n <Tooltip\n arrow\n enterDelay={1000}\n enterNextDelay={1000}\n title={localization.expand}\n >\n <span>\n <IconButton\n aria-label={localization.expand}\n disabled={!row.getCanExpand() && !renderDetailPanel}\n onClick={handleToggleExpand}\n {...iconButtonProps}\n sx={{\n height: density === 'compact' ? '1.75rem' : '2.25rem',\n width: density === 'compact' ? '1.75rem' : '2.25rem',\n ...iconButtonProps?.sx,\n }}\n >\n <ExpandMoreIcon\n style={{\n transform: `rotate(${\n !row.getCanExpand() && !renderDetailPanel\n ? -90\n : row.getIsExpanded()\n ? -180\n : 0\n }deg)`,\n transition: 'transform 0.2s',\n }}\n />\n </IconButton>\n </span>\n </Tooltip>\n );\n};\n","import React, { FC, useMemo } from 'react';\nimport { Menu, MenuItem } from '@mui/material';\nimport type { MRT_FilterOption, MRT_Header, MRT_TableInstance } from '..';\n\nconst commonMenuItemStyles = {\n py: '6px',\n my: 0,\n alignItems: 'center',\n};\n\ninterface Props {\n anchorEl: HTMLElement | null;\n header?: MRT_Header;\n onSelect?: () => void;\n setAnchorEl: (anchorEl: HTMLElement | null) => void;\n table: MRT_TableInstance;\n}\n\nexport const MRT_FilterOptionMenu: FC<Props> = ({\n anchorEl,\n header,\n onSelect,\n setAnchorEl,\n table,\n}) => {\n const {\n getState,\n options: {\n enabledGlobalFilterOptions,\n enabledColumnFilterOptions,\n localization,\n },\n setCurrentFilterFns,\n setCurrentGlobalFilterFn,\n } = table;\n const { currentFilterFns, currentGlobalFilterFn, density } = getState();\n const { column } = header ?? {};\n const { columnDef } = column ?? {};\n\n const allowedColumnFilterOptions =\n columnDef?.enabledColumnFilterOptions ?? enabledColumnFilterOptions;\n\n const filterOptions = useMemo(\n () =>\n [\n {\n option: 'fuzzy',\n label: localization.filterFuzzy,\n divider: false,\n },\n {\n option: 'contains',\n label: localization.filterContains,\n divider: false,\n },\n {\n option: 'startsWith',\n label: localization.filterStartsWith,\n divider: false,\n },\n {\n option: 'endsWith',\n label: localization.filterEndsWith,\n divider: true,\n },\n {\n option: 'equals',\n label: localization.filterEquals,\n divider: false,\n },\n {\n option: 'notEquals',\n label: localization.filterNotEquals,\n divider: true,\n },\n {\n option: 'between',\n label: localization.filterBetween,\n divider: false,\n },\n {\n option: 'greaterThan',\n label: localization.filterGreaterThan,\n divider: false,\n },\n {\n option: 'lessThan',\n label: localization.filterLessThan,\n divider: true,\n },\n {\n option: 'empty',\n label: localization.filterEmpty,\n divider: false,\n },\n {\n option: 'notEmpty',\n label: localization.filterNotEmpty,\n divider: false,\n },\n ].filter((filterType) =>\n columnDef\n ? allowedColumnFilterOptions === undefined ||\n allowedColumnFilterOptions?.includes(filterType.option)\n : (!enabledGlobalFilterOptions ||\n enabledGlobalFilterOptions.includes(filterType.option)) &&\n ['fuzzy', 'contains'].includes(filterType.option),\n ) as Array<{\n option: MRT_FilterOption;\n label: string;\n divider: boolean;\n fn: Function;\n }>,\n [],\n );\n\n const handleSelectFilterType = (option: MRT_FilterOption) => {\n if (header && column) {\n setCurrentFilterFns((prev: { [key: string]: any }) => ({\n ...prev,\n [header.id]: option,\n }));\n if (['empty', 'notEmpty'].includes(option)) {\n column.setFilterValue(' ');\n } else if (option === 'between') {\n column.setFilterValue(['', '']);\n } else {\n column.setFilterValue('');\n }\n } else {\n setCurrentGlobalFilterFn(option);\n }\n setAnchorEl(null);\n onSelect?.();\n };\n\n const filterOption = !!header\n ? currentFilterFns[header.id]\n : currentGlobalFilterFn;\n\n return (\n <Menu\n anchorEl={anchorEl}\n anchorOrigin={{ vertical: 'center', horizontal: 'right' }}\n onClose={() => setAnchorEl(null)}\n open={!!anchorEl}\n MenuListProps={{\n dense: density === 'compact',\n }}\n >\n {filterOptions.map(({ option, label, divider }, index) => (\n <MenuItem\n divider={divider}\n key={index}\n onClick={() => handleSelectFilterType(option)}\n selected={option === filterOption}\n sx={commonMenuItemStyles}\n value={option}\n >\n {label}\n </MenuItem>\n ))}\n </Menu>\n );\n};\n","import React, { FC } from 'react';\nimport { Box, IconButton, Tooltip } from '@mui/material';\nimport type { MRT_Column, MRT_TableInstance } from '..';\n\ninterface Props {\n column: MRT_Column;\n table: MRT_TableInstance;\n}\n\nexport const MRT_ColumnPinningButtons: FC<Props> = ({ column, table }) => {\n const {\n options: {\n icons: { PushPinIcon },\n localization,\n },\n } = table;\n\n const handlePinColumn = (pinDirection: 'left' | 'right' | false) => {\n column.pin(pinDirection);\n };\n\n return (\n <Box sx={{ minWidth: '70px', textAlign: 'center' }}>\n {column.getIsPinned() ? (\n <Tooltip arrow title={localization.unpin}>\n <IconButton onClick={() => handlePinColumn(false)} size=\"small\">\n <PushPinIcon />\n </IconButton>\n </Tooltip>\n ) : (\n <>\n <Tooltip arrow title={localization.pinToLeft}>\n <IconButton onClick={() => handlePinColumn('left')} size=\"small\">\n <PushPinIcon\n style={{\n transform: 'rotate(90deg)',\n }}\n />\n </IconButton>\n </Tooltip>\n <Tooltip arrow title={localization.pinToRight}>\n <IconButton onClick={() => handlePinColumn('right')} size=\"small\">\n <PushPinIcon\n style={{\n transform: 'rotate(-90deg)',\n }}\n />\n </IconButton>\n </Tooltip>\n </>\n )}\n </Box>\n );\n};\n","import { IconButton, IconButtonProps, Tooltip } from '@mui/material';\nimport React, { DragEventHandler, FC } from 'react';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n iconButtonProps?: IconButtonProps;\n onDragStart: DragEventHandler<HTMLButtonElement>;\n onDragEnd: DragEventHandler<HTMLButtonElement>;\n table: MRT_TableInstance;\n}\n\nexport const MRT_GrabHandleButton: FC<Props> = ({\n iconButtonProps,\n onDragEnd,\n onDragStart,\n table,\n}) => {\n const {\n options: {\n icons: { DragHandleIcon },\n localization,\n },\n } = table;\n\n return (\n <Tooltip\n arrow\n enterDelay={1000}\n enterNextDelay={1000}\n placement=\"top\"\n title={localization.move}\n >\n <IconButton\n disableRipple\n draggable=\"true\"\n onDragStart={onDragStart}\n onDragEnd={onDragEnd}\n size=\"small\"\n {...iconButtonProps}\n sx={{\n cursor: 'grab',\n m: 0,\n opacity: 0.5,\n p: '2px',\n transition: 'all 0.2s ease-in-out',\n '&:hover': {\n backgroundColor: 'transparent',\n opacity: 1,\n },\n '&:active': {\n cursor: 'grabbing',\n },\n ...iconButtonProps?.sx,\n }}\n >\n <DragHandleIcon />\n </IconButton>\n </Tooltip>\n );\n};\n","import { rankItem, rankings, RankingInfo } from '@tanstack/match-sorter-utils';\nimport { filterFns, Row } from '@tanstack/react-table';\n\nexport const fuzzy = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n columnId: string,\n filterValue: string | number,\n addMeta: (item: RankingInfo) => void,\n) => {\n const itemRank = rankItem(row.getValue(columnId), filterValue as string, {\n threshold: rankings.MATCHES,\n });\n addMeta(itemRank);\n return itemRank.passed;\n};\n\nfuzzy.autoRemove = (val: any) => !val;\n\nexport const contains = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n id: string,\n filterValue: string | number,\n) =>\n row\n .getValue<string | number>(id)\n .toString()\n .toLowerCase()\n .trim()\n .includes(filterValue.toString().toLowerCase().trim());\n\ncontains.autoRemove = (val: any) => !val;\n\nexport const startsWith = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n id: string,\n filterValue: string | number,\n) =>\n row\n .getValue<string | number>(id)\n .toString()\n .toLowerCase()\n .trim()\n .startsWith(filterValue.toString().toLowerCase().trim());\n\nstartsWith.autoRemove = (val: any) => !val;\n\nexport const endsWith = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n id: string,\n filterValue: string | number,\n) =>\n row\n .getValue<string | number>(id)\n .toString()\n .toLowerCase()\n .trim()\n .endsWith(filterValue.toString().toLowerCase().trim());\n\nendsWith.autoRemove = (val: any) => !val;\n\nexport const equals = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n id: string,\n filterValue: string | number,\n) =>\n row.getValue<string | number>(id).toString().toLowerCase().trim() ===\n filterValue.toString().toLowerCase().trim();\n\nequals.autoRemove = (val: any) => !val;\n\nexport const notEquals = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n id: string,\n filterValue: string | number,\n) =>\n row.getValue<string | number>(id).toString().toLowerCase().trim() !==\n filterValue.toString().toLowerCase().trim();\n\nnotEquals.autoRemove = (val: any) => !val;\n\nexport const greaterThan = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n id: string,\n filterValue: string | number,\n) =>\n !isNaN(+filterValue) && !isNaN(+row.getValue<string | number>(id))\n ? +row.getValue<string | number>(id) >= +filterValue\n : row.getValue<string | number>(id).toString().toLowerCase().trim() >\n filterValue.toString().toLowerCase().trim();\n\ngreaterThan.autoRemove = (val: any) => !val;\n\nexport const lessThan = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n id: string,\n filterValue: string | number,\n) =>\n !isNaN(+filterValue) && !isNaN(+row.getValue<string | number>(id))\n ? +row.getValue<string | number>(id) <= +filterValue\n : row.getValue<string | number>(id).toString().toLowerCase().trim() <\n filterValue.toString().toLowerCase().trim();\n\nlessThan.autoRemove = (val: any) => !val;\n\nexport const between = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n id: string,\n filterValues: [string | number, string | number],\n) =>\n ((['', undefined] as any[]).includes(filterValues[0]) ||\n greaterThan(row, id, filterValues[0])) &&\n ((!isNaN(+filterValues[0]) &&\n !isNaN(+filterValues[1]) &&\n +filterValues[0] > +filterValues[1]) ||\n (['', undefined] as any[]).includes(filterValues[1]) ||\n lessThan(row, id, filterValues[1]));\n\nbetween.autoRemove = (val: any) => !val;\n\nexport const empty = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n id: string,\n _filterValue: string | number,\n) => !row.getValue<string | number>(id).toString().trim();\n\nempty.autoRemove = (val: any) => !val;\n\nexport const notEmpty = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n id: string,\n _filterValue: string | number,\n) => !!row.getValue<string | number>(id).toString().trim();\n\nnotEmpty.autoRemove = (val: any) => !val;\n\nexport const MRT_FilterFns = {\n ...filterFns,\n between,\n contains,\n empty,\n endsWith,\n equals,\n fuzzy,\n greaterThan,\n lessThan,\n notEmpty,\n notEquals,\n startsWith,\n};\n","import { compareItems, RankingInfo } from '@tanstack/match-sorter-utils';\nimport { Row, sortingFns } from '@tanstack/react-table';\nimport { MRT_Row } from '.';\n\nconst fuzzy = <TData extends Record<string, any> = {}>(\n rowA: Row<TData>,\n rowB: Row<TData>,\n columnId: string,\n) => {\n let dir = 0;\n if (rowA.columnFiltersMeta[columnId]) {\n dir = compareItems(\n rowA.columnFiltersMeta[columnId]! as RankingInfo,\n rowB.columnFiltersMeta[columnId]! as RankingInfo,\n );\n }\n // Provide a fallback for when the item ranks are equal\n return dir === 0\n ? sortingFns.alphanumeric(rowA as Row<any>, rowB as Row<any>, columnId)\n : dir;\n};\n\nexport const MRT_SortingFns = {\n ...sortingFns,\n fuzzy,\n};\n\nexport const rankGlobalFuzzy = <TData extends Record<string, any> = {}>(\n rowA: MRT_Row<TData>,\n rowB: MRT_Row<TData>,\n) =>\n Math.max(...Object.values(rowB.columnFiltersMeta).map((v: any) => v.rank)) -\n Math.max(...Object.values(rowA.columnFiltersMeta).map((v: any) => v.rank));\n","import { ColumnOrderState } from '@tanstack/react-table';\nimport {\n MaterialReactTableProps,\n MRT_Column,\n MRT_ColumnDef,\n MRT_DefinedColumnDef,\n MRT_DisplayColumnIds,\n MRT_FilterOption,\n} from '.';\nimport { MRT_FilterFns } from './filtersFns';\nimport { MRT_SortingFns } from './sortingFns';\n\nconst getColumnId = <TData extends Record<string, any> = {}>(\n columnDef: MRT_ColumnDef<TData>,\n): string =>\n columnDef.id ?? columnDef.accessorKey?.toString?.() ?? columnDef.header;\n\nexport const getAllLeafColumnDefs = <TData extends Record<string, any> = {}>(\n columns: MRT_ColumnDef<TData>[],\n): MRT_ColumnDef<TData>[] => {\n let lowestLevelColumns: MRT_ColumnDef<TData>[] = columns;\n let currentCols: MRT_ColumnDef<TData>[] | undefined = columns;\n while (!!currentCols?.length && currentCols.some((col) => col.columns)) {\n const nextCols: MRT_ColumnDef<TData>[] = currentCols\n .filter((col) => !!col.columns)\n .map((col) => col.columns)\n .flat() as MRT_ColumnDef<TData>[];\n if (nextCols.every((col) => !col?.columns)) {\n lowestLevelColumns = [...lowestLevelColumns, ...nextCols];\n }\n currentCols = nextCols;\n }\n return lowestLevelColumns.filter((col) => !col.columns);\n};\n\nexport const prepareColumns = <TData extends Record<string, any> = {}>(\n columnDefs: MRT_ColumnDef<TData>[],\n currentFilterFns: { [key: string]: MRT_FilterOption },\n): MRT_DefinedColumnDef<TData>[] =>\n columnDefs.map((columnDef) => {\n if (!columnDef.id) columnDef.id = getColumnId(columnDef);\n if (process.env.NODE_ENV !== 'production' && !columnDef.id) {\n console.error(\n 'Column definitions must have a valid `accessorKey` or `id` property',\n );\n }\n if (!columnDef.columnDefType) columnDef.columnDefType = 'data';\n if (!!columnDef.columns?.length) {\n columnDef.columnDefType = 'group';\n columnDef.columns = prepareColumns(columnDef.columns, currentFilterFns);\n } else if (columnDef.columnDefType === 'data') {\n if (Object.keys(MRT_FilterFns).includes(currentFilterFns[columnDef.id])) {\n columnDef.filterFn =\n MRT_FilterFns[currentFilterFns[columnDef.id]] ?? MRT_FilterFns.fuzzy;\n }\n if (Object.keys(MRT_SortingFns).includes(columnDef.sortingFn as string)) {\n // @ts-ignore\n columnDef.sortingFn = MRT_SortingFns[columnDef.sortingFn];\n }\n }\n return columnDef;\n }) as MRT_DefinedColumnDef<TData>[];\n\nexport const reorderColumn = <TData extends Record<string, any> = {}>(\n draggedColumn: MRT_Column<TData>,\n targetColumn: MRT_Column<TData>,\n columnOrder: ColumnOrderState,\n): ColumnOrderState => {\n if (draggedColumn.getCanPin()) {\n draggedColumn.pin(targetColumn.getIsPinned());\n }\n columnOrder.splice(\n columnOrder.indexOf(targetColumn.id),\n 0,\n columnOrder.splice(columnOrder.indexOf(draggedColumn.id), 1)[0],\n );\n return [...columnOrder];\n};\n\nexport const getLeadingDisplayColumnIds = <\n TData extends Record<string, any> = {},\n>(\n props: MaterialReactTableProps<TData>,\n) =>\n [\n (props.enableRowDragging || props.enableRowOrdering) && 'mrt-row-drag',\n ((props.positionActionsColumn === 'first' && props.enableRowActions) ||\n (props.enableEditing && props.editingMode === 'row')) &&\n 'mrt-row-actions',\n (props.enableExpanding ||\n props.enableGrouping ||\n props.renderDetailPanel) &&\n 'mrt-row-expand',\n props.enableRowSelection && 'mrt-row-select',\n props.enableRowNumbers && 'mrt-row-numbers',\n ].filter(Boolean) as MRT_DisplayColumnIds[];\n\nexport const getTrailingDisplayColumnIds = <\n TData extends Record<string, any> = {},\n>(\n props: MaterialReactTableProps<TData>,\n) => [\n ((props.positionActionsColumn === 'last' && props.enableRowActions) ||\n (props.enableEditing && props.editingMode === 'row')) &&\n 'mrt-row-actions',\n];\n\nexport const getDefaultColumnOrderIds = <\n TData extends Record<string, any> = {},\n>(\n props: MaterialReactTableProps<TData>,\n) =>\n [\n ...getLeadingDisplayColumnIds(props),\n ...getAllLeafColumnDefs(props.columns).map((columnDef) =>\n getColumnId(columnDef),\n ),\n ...getTrailingDisplayColumnIds(props),\n ].filter(Boolean) as string[];\n","import React, {\n Dispatch,\n DragEvent,\n FC,\n SetStateAction,\n useState,\n} from 'react';\nimport {\n Box,\n FormControlLabel,\n MenuItem,\n Switch,\n Tooltip,\n Typography,\n} from '@mui/material';\nimport { MRT_ColumnPinningButtons } from '../buttons/MRT_ColumnPinningButtons';\nimport { MRT_GrabHandleButton } from '../buttons/MRT_GrabHandleButton';\nimport { reorderColumn } from '../utils';\nimport type { MRT_Column, MRT_TableInstance } from '..';\n\ninterface Props {\n allColumns: MRT_Column[];\n column: MRT_Column;\n currentHoveredColumn: MRT_Column | null;\n isSubMenu?: boolean;\n setCurrentHoveredColumn: Dispatch<SetStateAction<MRT_Column | null>>;\n table: MRT_TableInstance;\n}\n\nexport const MRT_ShowHideColumnsMenuItems: FC<Props> = ({\n allColumns,\n currentHoveredColumn,\n setCurrentHoveredColumn,\n column,\n isSubMenu,\n table,\n}) => {\n const {\n getState,\n options: {\n enableColumnOrdering,\n enableHiding,\n enablePinning,\n localization,\n },\n setColumnOrder,\n } = table;\n const { columnOrder } = getState();\n const { columnDef } = column;\n const { columnDefType } = columnDef;\n\n const switchChecked =\n (columnDefType !== 'group' && column.getIsVisible()) ||\n (columnDefType === 'group' &&\n column.getLeafColumns().some((col) => col.getIsVisible()));\n\n const handleToggleColumnHidden = (column: MRT_Column) => {\n if (columnDefType === 'group') {\n column?.columns?.forEach?.((childColumn: MRT_Column) => {\n childColumn.toggleVisibility(!switchChecked);\n });\n } else {\n column.toggleVisibility();\n }\n };\n\n const menuItemRef = React.useRef<HTMLElement>(null);\n\n const [isDragging, setIsDragging] = useState(false);\n\n const handleDragStart = (e: DragEvent<HTMLButtonElement>) => {\n setIsDragging(true);\n e.dataTransfer.setDragImage(menuItemRef.current as HTMLElement, 0, 0);\n };\n\n const handleDragEnd = (_e: DragEvent<HTMLButtonElement>) => {\n setIsDragging(false);\n setCurrentHoveredColumn(null);\n if (currentHoveredColumn) {\n setColumnOrder(reorderColumn(column, currentHoveredColumn, columnOrder));\n }\n };\n\n const handleDragEnter = (_e: DragEvent) => {\n if (!isDragging) {\n setCurrentHoveredColumn(column);\n }\n };\n\n return (\n <>\n <MenuItem\n disableRipple\n ref={menuItemRef as any}\n onDragEnter={handleDragEnter}\n sx={(theme) => ({\n alignItems: 'center',\n justifyContent: 'flex-start',\n my: 0,\n opacity: isDragging ? 0.5 : 1,\n outline: isDragging\n ? `1px dashed ${theme.palette.divider}`\n : currentHoveredColumn?.id === column.id\n ? `2px dashed ${theme.palette.primary.main}`\n : 'none',\n pl: `${(column.depth + 0.5) * 2}rem`,\n py: '6px',\n })}\n >\n <Box\n sx={{\n display: 'flex',\n flexWrap: 'nowrap',\n gap: '8px',\n }}\n >\n {!isSubMenu &&\n columnDefType !== 'group' &&\n enableColumnOrdering &&\n !allColumns.some(\n (col) => col.columnDef.columnDefType === 'group',\n ) &&\n (columnDef.enableColumnOrdering !== false ? (\n <MRT_GrabHandleButton\n onDragEnd={handleDragEnd}\n onDragStart={handleDragStart}\n table={table}\n />\n ) : (\n <Box sx={{ width: '28px' }} />\n ))}\n {!isSubMenu &&\n enablePinning &&\n (column.getCanPin() ? (\n <MRT_ColumnPinningButtons column={column} table={table} />\n ) : (\n <Box sx={{ width: '70px' }} />\n ))}\n {enableHiding ? (\n <FormControlLabel\n componentsProps={{\n typography: {\n sx: {\n mb: 0,\n opacity: columnDefType !== 'display' ? 1 : 0.5,\n },\n },\n }}\n checked={switchChecked}\n control={\n <Tooltip\n arrow\n enterDelay={1000}\n enterNextDelay={1000}\n title={localization.toggleVisibility}\n >\n <Switch />\n </Tooltip>\n }\n disabled={\n (isSubMenu && switchChecked) ||\n !column.getCanHide() ||\n column.getIsGrouped()\n }\n label={columnDef.header}\n onChange={() => handleToggleColumnHidden(column)}\n />\n ) : (\n <Typography sx={{ alignSelf: 'center' }}>\n {columnDef.header}\n </Typography>\n )}\n </Box>\n </MenuItem>\n {column.columns?.map((c: MRT_Column, i) => (\n <MRT_ShowHideColumnsMenuItems\n allColumns={allColumns}\n column={c}\n currentHoveredColumn={currentHoveredColumn}\n isSubMenu={isSubMenu}\n key={`${i}-${c.id}`}\n setCurrentHoveredColumn={setCurrentHoveredColumn}\n table={table}\n />\n ))}\n </>\n );\n};\n","import React, { FC, useMemo, useState } from 'react';\nimport { Button, Menu, Divider, Box } from '@mui/material';\nimport { MRT_ShowHideColumnsMenuItems } from './MRT_ShowHideColumnsMenuItems';\nimport type { MRT_Column, MRT_TableInstance } from '..';\nimport { getDefaultColumnOrderIds } from '../utils';\n\ninterface Props {\n anchorEl: HTMLElement | null;\n isSubMenu?: boolean;\n setAnchorEl: (anchorEl: HTMLElement | null) => void;\n table: MRT_TableInstance;\n}\n\nexport const MRT_ShowHideColumnsMenu: FC<Props> = ({\n anchorEl,\n isSubMenu,\n setAnchorEl,\n table,\n}) => {\n const {\n getAllColumns,\n getAllLeafColumns,\n getCenterLeafColumns,\n getIsAllColumnsVisible,\n getIsSomeColumnsPinned,\n getIsSomeColumnsVisible,\n getLeftLeafColumns,\n getRightLeafColumns,\n getState,\n toggleAllColumnsVisible,\n options: { localization, enablePinning, enableColumnOrdering },\n } = table;\n const { density, columnOrder, columnPinning } = getState();\n\n const hideAllColumns = () => {\n getAllLeafColumns()\n .filter((col) => col.columnDef.enableHiding !== false)\n .forEach((col) => col.toggleVisibility(false));\n };\n\n const allColumns = useMemo(() => {\n const columns = getAllColumns();\n if (\n columnOrder.length > 0 &&\n !columns.some((col) => col.columnDef.columnDefType === 'group')\n ) {\n return [\n ...getLeftLeafColumns(),\n ...Array.from(new Set(columnOrder)).map((colId) =>\n getCenterLeafColumns().find((col) => col?.id === colId),\n ),\n ...getRightLeafColumns(),\n ].filter(Boolean);\n }\n return columns;\n }, [\n columnOrder,\n columnPinning,\n getAllColumns(),\n getCenterLeafColumns(),\n getLeftLeafColumns(),\n getRightLeafColumns(),\n ]) as MRT_Column[];\n\n const [currentHoveredColumn, setCurrentHoveredColumn] =\n useState<MRT_Column | null>(null);\n\n return (\n <Menu\n anchorEl={anchorEl}\n open={!!anchorEl}\n onClose={() => setAnchorEl(null)}\n MenuListProps={{\n dense: density === 'compact',\n }}\n >\n <Box\n sx={{\n display: 'flex',\n justifyContent: isSubMenu ? 'center' : 'space-between',\n p: '0.5rem',\n pt: 0,\n }}\n >\n {!isSubMenu && (\n <Button\n disabled={!getIsSomeColumnsVisible()}\n onClick={hideAllColumns}\n >\n {localization.hideAll}\n </Button>\n )}\n {!isSubMenu && enableColumnOrdering && (\n <Button\n onClick={() =>\n table.setColumnOrder(\n getDefaultColumnOrderIds(table.options as any),\n )\n }\n >\n {localization.resetOrder}\n </Button>\n )}\n {!isSubMenu && enablePinning && (\n <Button\n disabled={!getIsSomeColumnsPinned()}\n onClick={() => table.resetColumnPinning(true)}\n >\n {localization.unpinAll}\n </Button>\n )}\n <Button\n disabled={getIsAllColumnsVisible()}\n onClick={() => toggleAllColumnsVisible(true)}\n >\n {localization.showAll}\n </Button>\n </Box>\n <Divider />\n {allColumns.map((column, index) => (\n <MRT_ShowHideColumnsMenuItems\n allColumns={allColumns}\n column={column}\n currentHoveredColumn={currentHoveredColumn}\n isSubMenu={isSubMenu}\n key={`${index}-${column.id}`}\n setCurrentHoveredColumn={setCurrentHoveredColumn}\n table={table}\n />\n ))}\n </Menu>\n );\n};\n","import React, { FC, useState } from 'react';\nimport { Box, IconButton, ListItemIcon, Menu, MenuItem } from '@mui/material';\nimport type { MRT_Header, MRT_TableInstance } from '..';\nimport { MRT_FilterOptionMenu } from './MRT_FilterOptionMenu';\nimport { MRT_ShowHideColumnsMenu } from './MRT_ShowHideColumnsMenu';\n\nexport const commonMenuItemStyles = {\n py: '6px',\n my: 0,\n justifyContent: 'space-between',\n alignItems: 'center',\n};\n\nexport const commonListItemStyles = {\n display: 'flex',\n alignItems: 'center',\n};\n\ninterface Props {\n anchorEl: HTMLElement | null;\n header: MRT_Header;\n setAnchorEl: (anchorEl: HTMLElement | null) => void;\n table: MRT_TableInstance;\n}\n\nexport const MRT_ColumnActionMenu: FC<Props> = ({\n anchorEl,\n header,\n setAnchorEl,\n table,\n}) => {\n const {\n getState,\n toggleAllColumnsVisible,\n setColumnOrder,\n options: {\n enableColumnFilterChangeMode,\n enableColumnFilters,\n enableColumnResizing,\n enableGrouping,\n enableHiding,\n enablePinning,\n enableSorting,\n enabledColumnFilterOptions,\n icons: {\n ArrowRightIcon,\n ClearAllIcon,\n ViewColumnIcon,\n DynamicFeedIcon,\n FilterListIcon,\n FilterListOffIcon,\n PushPinIcon,\n SortIcon,\n RestartAltIcon,\n VisibilityOffIcon,\n },\n tableId,\n localization,\n },\n setShowFilters,\n } = table;\n const { column } = header;\n const { columnDef } = column;\n const { columnSizing, columnVisibility, density } = getState();\n\n const [filterMenuAnchorEl, setFilterMenuAnchorEl] =\n useState<null | HTMLElement>(null);\n const [showHideColumnsMenuAnchorEl, setShowHideColumnsMenuAnchorEl] =\n useState<null | HTMLElement>(null);\n\n const handleClearSort = () => {\n column.clearSorting();\n setAnchorEl(null);\n };\n\n const handleSortAsc = () => {\n column.toggleSorting(false);\n setAnchorEl(null);\n };\n\n const handleSortDesc = () => {\n column.toggleSorting(true);\n setAnchorEl(null);\n };\n\n const handleResetColumnSize = () => {\n column.resetSize();\n setAnchorEl(null);\n };\n\n const handleHideColumn = () => {\n column.toggleVisibility(false);\n setAnchorEl(null);\n };\n\n const handlePinColumn = (pinDirection: 'left' | 'right' | false) => {\n column.pin(pinDirection);\n setAnchorEl(null);\n };\n\n const handleGroupByColumn = () => {\n column.toggleGrouping();\n setColumnOrder((old) => ['mrt-row-expand', ...old]);\n setAnchorEl(null);\n };\n\n const handleClearFilter = () => {\n column.setFilterValue('');\n setAnchorEl(null);\n };\n\n const handleFilterByColumn = () => {\n setShowFilters(true);\n setTimeout(\n () =>\n document\n .getElementById(\n // @ts-ignore\n header.muiTableHeadCellFilterTextFieldProps?.id ??\n `mrt-${tableId}-${header.id}-filter-text-field`,\n )\n ?.focus(),\n 200,\n );\n setAnchorEl(null);\n };\n\n const handleShowAllColumns = () => {\n toggleAllColumnsVisible(true);\n setAnchorEl(null);\n };\n\n const handleOpenFilterModeMenu = (event: React.MouseEvent<HTMLElement>) => {\n event.stopPropagation();\n setFilterMenuAnchorEl(event.currentTarget);\n };\n\n const handleOpenShowHideColumnsMenu = (\n event: React.MouseEvent<HTMLElement>,\n ) => {\n event.stopPropagation();\n setShowHideColumnsMenuAnchorEl(event.currentTarget);\n };\n\n const isSelectFilter = !!columnDef.filterSelectOptions;\n\n const allowedColumnFilterOptions =\n columnDef?.enabledColumnFilterOptions ?? enabledColumnFilterOptions;\n\n const showFilterModeSubMenu =\n enableColumnFilterChangeMode &&\n columnDef.enableColumnFilterChangeMode !== false &&\n !isSelectFilter &&\n (allowedColumnFilterOptions === undefined ||\n !!allowedColumnFilterOptions?.length);\n\n return (\n <Menu\n anchorEl={anchorEl}\n open={!!anchorEl}\n onClose={() => setAnchorEl(null)}\n MenuListProps={{\n dense: density === 'compact',\n }}\n >\n {enableSorting &&\n column.getCanSort() && [\n <MenuItem\n disabled={!column.getIsSorted()}\n key={0}\n onClick={handleClearSort}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <ClearAllIcon />\n </ListItemIcon>\n {localization.clearSort}\n </Box>\n </MenuItem>,\n <MenuItem\n disabled={column.getIsSorted() === 'asc'}\n key={1}\n onClick={handleSortAsc}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <SortIcon />\n </ListItemIcon>\n {localization.sortByColumnAsc?.replace(\n '{column}',\n String(columnDef.header),\n )}\n </Box>\n </MenuItem>,\n <MenuItem\n divider={enableColumnFilters || enableGrouping || enableHiding}\n key={2}\n disabled={column.getIsSorted() === 'desc'}\n onClick={handleSortDesc}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <SortIcon style={{ transform: 'rotate(180deg) scaleX(-1)' }} />\n </ListItemIcon>\n {localization.sortByColumnDesc?.replace(\n '{column}',\n String(columnDef.header),\n )}\n </Box>\n </MenuItem>,\n ]}\n {enableColumnFilters &&\n column.getCanFilter() &&\n [\n <MenuItem\n disabled={!column.getFilterValue()}\n key={0}\n onClick={handleClearFilter}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <FilterListOffIcon />\n </ListItemIcon>\n {localization.clearFilter}\n </Box>\n </MenuItem>,\n <MenuItem\n divider={enableGrouping || enableHiding}\n key={1}\n onClick={handleFilterByColumn}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <FilterListIcon />\n </ListItemIcon>\n {localization.filterByColumn?.replace(\n '{column}',\n String(columnDef.header),\n )}\n </Box>\n {showFilterModeSubMenu && (\n <IconButton\n onClick={handleOpenFilterModeMenu}\n onMouseEnter={handleOpenFilterModeMenu}\n size=\"small\"\n sx={{ p: 0 }}\n >\n <ArrowRightIcon />\n </IconButton>\n )}\n </MenuItem>,\n showFilterModeSubMenu && (\n <MRT_FilterOptionMenu\n anchorEl={filterMenuAnchorEl}\n header={header}\n key={2}\n onSelect={handleFilterByColumn}\n setAnchorEl={setFilterMenuAnchorEl}\n table={table}\n />\n ),\n ].filter(Boolean)}\n {enableGrouping &&\n column.getCanGroup() && [\n <MenuItem\n divider={enablePinning}\n key={0}\n onClick={handleGroupByColumn}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <DynamicFeedIcon />\n </ListItemIcon>\n {localization[\n column.getIsGrouped() ? 'ungroupByColumn' : 'groupByColumn'\n ]?.replace('{column}', String(columnDef.header))}\n </Box>\n </MenuItem>,\n ]}\n {enablePinning &&\n column.getCanPin() && [\n <MenuItem\n disabled={column.getIsPinned() === 'left' || !column.getCanPin()}\n key={0}\n onClick={() => handlePinColumn('left')}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <PushPinIcon style={{ transform: 'rotate(90deg)' }} />\n </ListItemIcon>\n {localization.pinToLeft}\n </Box>\n </MenuItem>,\n <MenuItem\n disabled={column.getIsPinned() === 'right' || !column.getCanPin()}\n key={1}\n onClick={() => handlePinColumn('right')}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <PushPinIcon style={{ transform: 'rotate(-90deg)' }} />\n </ListItemIcon>\n {localization.pinToRight}\n </Box>\n </MenuItem>,\n <MenuItem\n disabled={!column.getIsPinned()}\n divider={enableHiding}\n key={2}\n onClick={() => handlePinColumn(false)}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <PushPinIcon />\n </ListItemIcon>\n {localization.unpin}\n </Box>\n </MenuItem>,\n ]}\n {enableColumnResizing &&\n column.getCanResize() && [\n <MenuItem\n disabled={!columnSizing[column.id]}\n key={0}\n onClick={handleResetColumnSize}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <RestartAltIcon />\n </ListItemIcon>\n {localization.resetColumnSize}\n </Box>\n </MenuItem>,\n ]}\n {enableHiding && [\n <MenuItem\n disabled={columnDef.enableHiding === false}\n key={0}\n onClick={handleHideColumn}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <VisibilityOffIcon />\n </ListItemIcon>\n {localization.hideColumn?.replace(\n '{column}',\n String(columnDef.header),\n )}\n </Box>\n </MenuItem>,\n <MenuItem\n disabled={\n !Object.values(columnVisibility).filter((visible) => !visible)\n .length\n }\n key={1}\n onClick={handleShowAllColumns}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <ViewColumnIcon />\n </ListItemIcon>\n {localization.showAllColumns?.replace(\n '{column}',\n String(columnDef.header),\n )}\n </Box>\n <IconButton\n onClick={handleOpenShowHideColumnsMenu}\n onMouseEnter={handleOpenShowHideColumnsMenu}\n size=\"small\"\n sx={{ p: 0 }}\n >\n <ArrowRightIcon />\n </IconButton>\n </MenuItem>,\n <MRT_ShowHideColumnsMenu\n anchorEl={showHideColumnsMenuAnchorEl}\n isSubMenu\n key={2}\n setAnchorEl={setShowHideColumnsMenuAnchorEl}\n table={table}\n />,\n ]}\n </Menu>\n );\n};\n","import React, { FC } from 'react';\nimport { Box, ListItemIcon, Menu, MenuItem } from '@mui/material';\nimport type { MRT_Row, MRT_TableInstance } from '..';\nimport {\n commonListItemStyles,\n commonMenuItemStyles,\n} from './MRT_ColumnActionMenu';\n\ninterface Props {\n anchorEl: HTMLElement | null;\n handleEdit: () => void;\n row: MRT_Row;\n setAnchorEl: (anchorEl: HTMLElement | null) => void;\n table: MRT_TableInstance;\n}\n\nexport const MRT_RowActionMenu: FC<Props> = ({\n anchorEl,\n handleEdit,\n row,\n setAnchorEl,\n table,\n}) => {\n const {\n getState,\n options: {\n icons: { EditIcon },\n enableEditing,\n localization,\n renderRowActionMenuItems,\n },\n } = table;\n const { density } = getState();\n\n return (\n <Menu\n anchorEl={anchorEl}\n open={!!anchorEl}\n onClose={() => setAnchorEl(null)}\n MenuListProps={{\n dense: density === 'compact',\n }}\n >\n {enableEditing && (\n <MenuItem onClick={handleEdit} sx={commonMenuItemStyles}>\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <EditIcon />\n </ListItemIcon>\n {localization.edit}\n </Box>\n </MenuItem>\n )}\n {renderRowActionMenuItems?.({\n row,\n table,\n closeMenu: () => setAnchorEl(null),\n })}\n </Menu>\n );\n};\n","import React, { FC } from 'react';\nimport { Box, IconButton, Tooltip } from '@mui/material';\nimport type { MRT_Row, MRT_TableInstance } from '..';\n\ninterface Props {\n row: MRT_Row;\n table: MRT_TableInstance;\n}\n\nexport const MRT_EditActionButtons: FC<Props> = ({ row, table }) => {\n const {\n getState,\n options: {\n icons: { CancelIcon, SaveIcon },\n localization,\n onEditRowSubmit,\n },\n setCurrentEditingRow,\n } = table;\n const { currentEditingRow } = getState();\n\n const handleCancel = () => {\n row._valuesCache = row.original ?? {};\n setCurrentEditingRow(null);\n };\n\n const handleSave = () => {\n onEditRowSubmit?.({ row: currentEditingRow ?? row, table });\n setCurrentEditingRow(null);\n };\n\n return (\n <Box sx={{ display: 'flex', gap: '0.75rem' }}>\n <Tooltip arrow title={localization.cancel}>\n <IconButton aria-label={localization.cancel} onClick={handleCancel}>\n <CancelIcon />\n </IconButton>\n </Tooltip>\n <Tooltip arrow title={localization.save}>\n <IconButton\n aria-label={localization.save}\n color=\"info\"\n onClick={handleSave}\n >\n <SaveIcon />\n </IconButton>\n </Tooltip>\n </Box>\n );\n};\n","import React, { FC, MouseEvent, useState } from 'react';\nimport { IconButton, Tooltip } from '@mui/material';\nimport { MRT_RowActionMenu } from '../menus/MRT_RowActionMenu';\nimport { MRT_EditActionButtons } from './MRT_EditActionButtons';\nimport type { MRT_Row, MRT_TableInstance } from '..';\n\nconst commonIconButtonStyles = {\n height: '2rem',\n ml: '10px',\n opacity: 0.5,\n transition: 'opacity 0.2s',\n width: '2rem',\n '&:hover': {\n opacity: 1,\n },\n};\n\ninterface Props {\n row: MRT_Row;\n table: MRT_TableInstance;\n}\n\nexport const MRT_ToggleRowActionMenuButton: FC<Props> = ({ row, table }) => {\n const {\n getState,\n options: {\n enableEditing,\n icons: { EditIcon, MoreHorizIcon },\n localization,\n renderRowActionMenuItems,\n renderRowActions,\n },\n setCurrentEditingRow,\n } = table;\n\n const { currentEditingRow } = getState();\n\n const [anchorEl, setAnchorEl] = useState<null | HTMLElement>(null);\n\n const handleOpenRowActionMenu = (event: MouseEvent<HTMLElement>) => {\n event.stopPropagation();\n event.preventDefault();\n setAnchorEl(event.currentTarget);\n };\n\n const handleStartEditMode = () => {\n setCurrentEditingRow({ ...row });\n setAnchorEl(null);\n };\n\n return (\n <>\n {renderRowActions ? (\n <>{renderRowActions({ row, table })}</>\n ) : row.id === currentEditingRow?.id ? (\n <MRT_EditActionButtons row={row} table={table} />\n ) : !renderRowActionMenuItems && enableEditing ? (\n <Tooltip placement=\"right\" arrow title={localization.edit}>\n <IconButton sx={commonIconButtonStyles} onClick={handleStartEditMode}>\n <EditIcon />\n </IconButton>\n </Tooltip>\n ) : renderRowActionMenuItems ? (\n <>\n <Tooltip\n arrow\n enterDelay={1000}\n enterNextDelay={1000}\n title={localization.rowActions}\n >\n <IconButton\n aria-label={localization.rowActions}\n onClick={handleOpenRowActionMenu}\n size=\"small\"\n sx={commonIconButtonStyles}\n >\n <MoreHorizIcon />\n </IconButton>\n </Tooltip>\n <MRT_RowActionMenu\n anchorEl={anchorEl}\n handleEdit={handleStartEditMode}\n row={row}\n setAnchorEl={setAnchorEl}\n table={table}\n />\n </>\n ) : null}\n </>\n );\n};\n","import React, { FC } from 'react';\nimport { Checkbox, Tooltip } from '@mui/material';\nimport type { MRT_Row, MRT_TableInstance } from '..';\n\ninterface Props {\n row?: MRT_Row;\n selectAll?: boolean;\n table: MRT_TableInstance;\n}\n\nexport const MRT_SelectCheckbox: FC<Props> = ({ row, selectAll, table }) => {\n const {\n getState,\n options: {\n localization,\n muiSelectCheckboxProps,\n muiSelectAllCheckboxProps,\n selectAllMode,\n },\n } = table;\n const { density } = getState();\n\n const checkboxProps = !row\n ? muiSelectAllCheckboxProps instanceof Function\n ? muiSelectAllCheckboxProps({ table })\n : muiSelectAllCheckboxProps\n : muiSelectCheckboxProps instanceof Function\n ? muiSelectCheckboxProps({ row, table })\n : muiSelectCheckboxProps;\n\n return (\n <Tooltip\n arrow\n enterDelay={1000}\n enterNextDelay={1000}\n title={\n selectAll ? localization.toggleSelectAll : localization.toggleSelectRow\n }\n >\n <Checkbox\n checked={\n selectAll ? table.getIsAllRowsSelected() : row?.getIsSelected()\n }\n indeterminate={\n selectAll ? table.getIsSomeRowsSelected() : row?.getIsSomeSelected()\n }\n inputProps={{\n 'aria-label': selectAll\n ? localization.toggleSelectAll\n : localization.toggleSelectRow,\n }}\n onChange={\n !row\n ? selectAllMode === 'all'\n ? table.getToggleAllRowsSelectedHandler()\n : table.getToggleAllPageRowsSelectedHandler()\n : row.getToggleSelectedHandler()\n }\n size={density === 'compact' ? 'small' : 'medium'}\n {...checkboxProps}\n sx={{\n height: density === 'compact' ? '1.5rem' : '2rem',\n width: density === 'compact' ? '1.5rem' : '2rem',\n m: '-1re.m',\n ...checkboxProps?.sx,\n }}\n />\n </Tooltip>\n );\n};\n","import React, { FC } from 'react';\nimport { IconButton, IconButtonProps, Tooltip } from '@mui/material';\nimport { MRT_TableInstance } from '..';\n\ninterface Props extends IconButtonProps {\n table: MRT_TableInstance;\n}\n\nexport const MRT_FullScreenToggleButton: FC<Props> = ({ table, ...rest }) => {\n const {\n getState,\n options: {\n icons: { FullscreenExitIcon, FullscreenIcon },\n localization,\n },\n setIsFullScreen,\n } = table;\n const { isFullScreen } = getState();\n\n const handleToggleFullScreen = () => {\n setIsFullScreen(!isFullScreen);\n };\n\n return (\n <Tooltip arrow title={localization.toggleFullScreen}>\n <IconButton\n aria-label={localization.showHideFilters}\n onClick={handleToggleFullScreen}\n {...rest}\n >\n {isFullScreen ? <FullscreenExitIcon /> : <FullscreenIcon />}\n </IconButton>\n </Tooltip>\n );\n};\n","import React, { FC, MouseEvent, useState } from 'react';\nimport { IconButton, Tooltip, IconButtonProps } from '@mui/material';\nimport { MRT_ShowHideColumnsMenu } from '../menus/MRT_ShowHideColumnsMenu';\nimport { MRT_TableInstance } from '..';\n\ninterface Props extends IconButtonProps {\n table: MRT_TableInstance;\n}\n\nexport const MRT_ShowHideColumnsButton: FC<Props> = ({ table, ...rest }) => {\n const {\n options: {\n icons: { ViewColumnIcon },\n localization,\n },\n } = table;\n\n const [anchorEl, setAnchorEl] = useState<null | HTMLElement>(null);\n\n const handleClick = (event: MouseEvent<HTMLElement>) => {\n setAnchorEl(event.currentTarget);\n };\n\n return (\n <>\n <Tooltip arrow title={localization.showHideColumns}>\n <IconButton\n aria-label={localization.showHideColumns}\n onClick={handleClick}\n {...rest}\n >\n <ViewColumnIcon />\n </IconButton>\n </Tooltip>\n <MRT_ShowHideColumnsMenu\n anchorEl={anchorEl}\n setAnchorEl={setAnchorEl}\n table={table}\n />\n </>\n );\n};\n","import React, { FC } from 'react';\nimport { IconButton, IconButtonProps, Tooltip } from '@mui/material';\nimport { MRT_TableInstance } from '..';\n\ninterface Props extends IconButtonProps {\n table: MRT_TableInstance;\n}\n\nexport const MRT_ToggleDensePaddingButton: FC<Props> = ({ table, ...rest }) => {\n const {\n getState,\n options: {\n icons: { DensityLargeIcon, DensityMediumIcon, DensitySmallIcon },\n localization,\n },\n setDensity,\n } = table;\n const { density } = getState();\n\n const handleToggleDensePadding = () => {\n const nextDensity =\n density === 'comfortable'\n ? 'compact'\n : density === 'compact'\n ? 'spacious'\n : 'comfortable';\n setDensity(nextDensity);\n };\n\n return (\n <Tooltip arrow title={localization.toggleDensity}>\n <IconButton\n aria-label={localization.toggleDensity}\n onClick={handleToggleDensePadding}\n {...rest}\n >\n {density === 'compact' ? (\n <DensitySmallIcon />\n ) : density === 'comfortable' ? (\n <DensityMediumIcon />\n ) : (\n <DensityLargeIcon />\n )}\n </IconButton>\n </Tooltip>\n );\n};\n","import React, { FC } from 'react';\nimport { IconButton, IconButtonProps, Tooltip } from '@mui/material';\nimport { MRT_TableInstance } from '..';\n\ninterface Props extends IconButtonProps {\n table: MRT_TableInstance;\n}\n\nexport const MRT_ToggleFiltersButton: FC<Props> = ({ table, ...rest }) => {\n const {\n getState,\n options: {\n icons: { FilterListIcon, FilterListOffIcon },\n localization,\n },\n setShowFilters,\n } = table;\n const { showColumnFilters } = getState();\n\n const handleToggleShowFilters = () => {\n setShowFilters(!showColumnFilters);\n };\n\n return (\n <Tooltip arrow title={localization.showHideFilters}>\n <IconButton\n aria-label={localization.showHideFilters}\n onClick={handleToggleShowFilters}\n {...rest}\n >\n {showColumnFilters ? <FilterListOffIcon /> : <FilterListIcon />}\n </IconButton>\n </Tooltip>\n );\n};\n","import React, { FC } from 'react';\nimport { IconButton, IconButtonProps, Tooltip } from '@mui/material';\nimport { MRT_TableInstance } from '..';\n\ninterface Props extends IconButtonProps {\n table: MRT_TableInstance;\n}\n\nexport const MRT_ToggleGlobalFilterButton: FC<Props> = ({ table, ...rest }) => {\n const {\n getState,\n options: {\n icons: { SearchIcon, SearchOffIcon },\n tableId,\n localization,\n muiSearchTextFieldProps,\n },\n setShowGlobalFilter,\n } = table;\n const { showGlobalFilter } = getState();\n\n const textFieldProps =\n muiSearchTextFieldProps instanceof Function\n ? muiSearchTextFieldProps({ table })\n : muiSearchTextFieldProps;\n\n const handleToggleSearch = () => {\n setShowGlobalFilter(!showGlobalFilter);\n setTimeout(\n () =>\n document\n .getElementById(\n textFieldProps?.id ?? `mrt-${tableId}-search-text-field`,\n )\n ?.focus(),\n 200,\n );\n };\n\n return (\n <Tooltip arrow title={localization.showHideSearch}>\n <IconButton onClick={handleToggleSearch} {...rest}>\n {showGlobalFilter ? <SearchOffIcon /> : <SearchIcon />}\n </IconButton>\n </Tooltip>\n );\n};\n","import React, {\n ChangeEvent,\n FC,\n MouseEvent,\n useCallback,\n useState,\n} from 'react';\nimport {\n Collapse,\n debounce,\n IconButton,\n InputAdornment,\n TextField,\n Tooltip,\n} from '@mui/material';\nimport { MRT_FilterOptionMenu } from '../menus/MRT_FilterOptionMenu';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n table: MRT_TableInstance;\n}\n\nexport const MRT_GlobalFilterTextField: FC<Props> = ({ table }) => {\n const {\n getState,\n setGlobalFilter,\n options: {\n enableGlobalFilterChangeMode,\n icons: { SearchIcon, CloseIcon },\n localization,\n muiSearchTextFieldProps,\n tableId,\n },\n } = table;\n const { globalFilter, showGlobalFilter } = getState();\n\n const [anchorEl, setAnchorEl] = useState<null | HTMLElement>(null);\n const [searchValue, setSearchValue] = useState(globalFilter ?? '');\n\n const handleChangeDebounced = useCallback(\n debounce((event: ChangeEvent<HTMLInputElement>) => {\n setGlobalFilter(event.target.value ?? undefined);\n }, 250),\n [],\n );\n\n const handleChange = (event: ChangeEvent<HTMLInputElement>) => {\n setSearchValue(event.target.value);\n handleChangeDebounced(event);\n };\n\n const handleGlobalFilterMenuOpen = (event: MouseEvent<HTMLElement>) => {\n setAnchorEl(event.currentTarget);\n };\n\n const handleClear = () => {\n setSearchValue('');\n setGlobalFilter(undefined);\n };\n\n const textFieldProps =\n muiSearchTextFieldProps instanceof Function\n ? muiSearchTextFieldProps({ table })\n : muiSearchTextFieldProps;\n\n return (\n <Collapse in={showGlobalFilter} orientation=\"horizontal\">\n <TextField\n id={`mrt-${tableId}-search-text-field`}\n placeholder={localization.search}\n onChange={handleChange}\n value={searchValue ?? ''}\n variant=\"standard\"\n InputProps={{\n startAdornment: enableGlobalFilterChangeMode ? (\n <InputAdornment position=\"start\">\n <Tooltip arrow title={localization.changeSearchMode}>\n <IconButton\n aria-label={localization.changeSearchMode}\n onClick={handleGlobalFilterMenuOpen}\n size=\"small\"\n sx={{ height: '1.75rem', width: '1.75rem' }}\n >\n <SearchIcon />\n </IconButton>\n </Tooltip>\n </InputAdornment>\n ) : (\n <SearchIcon />\n ),\n endAdornment: (\n <InputAdornment position=\"end\">\n <Tooltip arrow title={localization.clearSearch ?? ''}>\n <span>\n <IconButton\n aria-label={localization.clearSearch}\n disabled={!searchValue?.length}\n onClick={handleClear}\n size=\"small\"\n >\n <CloseIcon />\n </IconButton>\n </span>\n </Tooltip>\n </InputAdornment>\n ),\n }}\n {...textFieldProps}\n />\n <MRT_FilterOptionMenu\n anchorEl={anchorEl}\n setAnchorEl={setAnchorEl}\n table={table}\n />\n </Collapse>\n );\n};\n","import React, { FC } from 'react';\nimport { Box } from '@mui/material';\nimport { MRT_FullScreenToggleButton } from '../buttons/MRT_FullScreenToggleButton';\nimport { MRT_ShowHideColumnsButton } from '../buttons/MRT_ShowHideColumnsButton';\nimport { MRT_ToggleDensePaddingButton } from '../buttons/MRT_ToggleDensePaddingButton';\nimport { MRT_ToggleFiltersButton } from '../buttons/MRT_ToggleFiltersButton';\nimport { MRT_ToggleGlobalFilterButton } from '../buttons/MRT_ToggleGlobalFilterButton';\nimport { MRT_TableInstance } from '..';\nimport { MRT_GlobalFilterTextField } from '../inputs/MRT_GlobalFilterTextField';\n\ninterface Props {\n table: MRT_TableInstance;\n}\n\nexport const MRT_ToolbarInternalButtons: FC<Props> = ({ table }) => {\n const {\n options: {\n enableColumnFilters,\n enableColumnOrdering,\n enableDensityToggle,\n enableFilters,\n enableFullScreenToggle,\n enableGlobalFilter,\n enableHiding,\n enablePinning,\n positionGlobalFilter,\n renderToolbarInternalActions,\n },\n } = table;\n\n return (\n <Box\n sx={{\n alignItems: 'center',\n display: 'flex',\n zIndex: 3,\n }}\n >\n {renderToolbarInternalActions?.({\n MRT_FullScreenToggleButton,\n MRT_ShowHideColumnsButton,\n MRT_ToggleDensePaddingButton,\n MRT_ToggleFiltersButton,\n MRT_ToggleGlobalFilterButton,\n table,\n }) ?? (\n <>\n {enableGlobalFilter && positionGlobalFilter === 'right' && (\n <MRT_GlobalFilterTextField table={table} />\n )}\n {enableFilters && enableGlobalFilter && (\n <MRT_ToggleGlobalFilterButton table={table} />\n )}\n {enableFilters && enableColumnFilters && (\n <MRT_ToggleFiltersButton table={table} />\n )}\n {(enableHiding || enableColumnOrdering || enablePinning) && (\n <MRT_ShowHideColumnsButton table={table} />\n )}\n {enableDensityToggle && (\n <MRT_ToggleDensePaddingButton table={table} />\n )}\n {enableFullScreenToggle && (\n <MRT_FullScreenToggleButton table={table} />\n )}\n </>\n )}\n </Box>\n );\n};\n","import React, { ChangeEvent, FC } from 'react';\nimport { TablePagination } from '@mui/material';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n table: MRT_TableInstance;\n position: 'top' | 'bottom';\n}\n\nexport const MRT_TablePagination: FC<Props> = ({ table, position }) => {\n const {\n getPrePaginationRowModel,\n getState,\n setPageIndex,\n setPageSize,\n options: {\n muiTablePaginationProps,\n enableToolbarInternalActions,\n rowCount,\n },\n } = table;\n const {\n pagination: { pageSize = 10, pageIndex = 0 },\n showGlobalFilter,\n } = getState();\n\n const totalRowCount = rowCount ?? getPrePaginationRowModel().rows.length;\n const showFirstLastPageButtons = totalRowCount / pageSize > 2;\n\n const tablePaginationProps =\n muiTablePaginationProps instanceof Function\n ? muiTablePaginationProps({ table })\n : muiTablePaginationProps;\n\n const handleChangeRowsPerPage = (event: ChangeEvent<HTMLInputElement>) => {\n setPageSize(+event.target.value);\n };\n\n return (\n <TablePagination\n SelectProps={{\n sx: { m: '0 1rem 0 1ch' },\n MenuProps: { MenuListProps: { disablePadding: true } },\n }}\n component=\"div\"\n count={totalRowCount}\n onPageChange={(_: any, newPage: number) => setPageIndex(newPage)}\n onRowsPerPageChange={handleChangeRowsPerPage}\n page={pageIndex}\n rowsPerPage={pageSize}\n rowsPerPageOptions={[5, 10, 15, 20, 25, 30, 50, 100]}\n showFirstButton={showFirstLastPageButtons}\n showLastButton={showFirstLastPageButtons}\n {...tablePaginationProps}\n sx={{\n m: '0 0.5rem',\n mt:\n position === 'top' &&\n enableToolbarInternalActions &&\n !showGlobalFilter\n ? '3.5rem'\n : undefined,\n position: 'relative',\n zIndex: 2,\n ...tablePaginationProps?.sx,\n }}\n />\n );\n};\n","import React, { FC, Fragment } from 'react';\nimport { Alert, AlertTitle, Box, Chip, Collapse } from '@mui/material';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n stackAlertBanner?: boolean;\n table: MRT_TableInstance;\n}\n\nexport const MRT_ToolbarAlertBanner: FC<Props> = ({\n stackAlertBanner,\n table,\n}) => {\n const {\n getPrePaginationRowModel,\n getSelectedRowModel,\n getState,\n options: { localization, muiTableToolbarAlertBannerProps },\n } = table;\n const { grouping, showAlertBanner } = getState();\n\n const alertProps =\n muiTableToolbarAlertBannerProps instanceof Function\n ? muiTableToolbarAlertBannerProps({ table })\n : muiTableToolbarAlertBannerProps;\n\n const selectMessage =\n getSelectedRowModel().rows.length > 0\n ? localization.selectedCountOfRowCountRowsSelected\n ?.replace(\n '{selectedCount}',\n getSelectedRowModel().rows.length.toString(),\n )\n ?.replace(\n '{rowCount}',\n getPrePaginationRowModel().rows.length.toString(),\n )\n : null;\n\n const groupedByMessage =\n grouping.length > 0 ? (\n <span>\n {localization.groupedBy}{' '}\n {grouping.map((columnId, index) => (\n <Fragment key={`${index}-${columnId}`}>\n {index > 0 ? localization.thenBy : ''}\n <Chip\n color=\"secondary\"\n label={table.getColumn(columnId).columnDef.header}\n onDelete={() => table.getColumn(columnId).toggleGrouping()}\n />\n </Fragment>\n ))}\n </span>\n ) : null;\n\n return (\n <Collapse\n in={showAlertBanner || !!selectMessage || !!groupedByMessage}\n timeout={stackAlertBanner ? 200 : 0}\n >\n <Alert\n color=\"info\"\n icon={false}\n {...alertProps}\n sx={{\n borderRadius: 0,\n fontSize: '1rem',\n left: 0,\n p: 0,\n position: 'relative',\n right: 0,\n top: 0,\n width: '100%',\n zIndex: 2,\n ...alertProps?.sx,\n }}\n >\n {alertProps?.title && <AlertTitle>{alertProps.title}</AlertTitle>}\n <Box sx={{ p: '0.5rem 1rem' }}>\n {alertProps?.children}\n {alertProps?.children && (selectMessage || groupedByMessage) && (\n <br />\n )}\n {selectMessage}\n {selectMessage && groupedByMessage && <br />}\n {groupedByMessage}\n </Box>\n </Alert>\n </Collapse>\n );\n};\n","import React, { FC } from 'react';\nimport { Collapse, LinearProgress } from '@mui/material';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n isTopToolbar: boolean;\n table: MRT_TableInstance;\n}\n\nexport const MRT_LinearProgressBar: FC<Props> = ({ isTopToolbar, table }) => {\n const {\n options: { muiLinearProgressProps },\n getState,\n } = table;\n const { isLoading, showProgressBars } = getState();\n\n const linearProgressProps =\n muiLinearProgressProps instanceof Function\n ? muiLinearProgressProps({ isTopToolbar, table })\n : muiLinearProgressProps;\n\n return (\n <Collapse\n in={isLoading || showProgressBars}\n mountOnEnter\n unmountOnExit\n sx={{\n bottom: isTopToolbar ? 0 : undefined,\n position: 'absolute',\n top: !isTopToolbar ? 0 : undefined,\n width: '100%',\n }}\n >\n <LinearProgress\n aria-label=\"Loading\"\n aria-busy=\"true\"\n sx={{ position: 'relative' }}\n {...linearProgressProps}\n />\n </Collapse>\n );\n};\n","import React, { FC } from 'react';\nimport { Box, lighten, Theme, Toolbar, useMediaQuery } from '@mui/material';\nimport { MRT_ToolbarInternalButtons } from './MRT_ToolbarInternalButtons';\nimport { MRT_TablePagination } from './MRT_TablePagination';\nimport { MRT_ToolbarAlertBanner } from './MRT_ToolbarAlertBanner';\nimport { MRT_LinearProgressBar } from './MRT_LinearProgressBar';\nimport { MRT_TableInstance } from '..';\nimport { MRT_GlobalFilterTextField } from '../inputs/MRT_GlobalFilterTextField';\n\nexport const commonToolbarStyles = ({ theme }: { theme: Theme }) => ({\n backgroundColor: lighten(theme.palette.background.default, 0.04),\n backgroundImage: 'none',\n display: 'grid',\n minHeight: '3.5rem',\n overflow: 'hidden',\n p: '0 !important',\n transition: 'all 0.2s ease-in-out',\n zIndex: 1,\n});\n\ninterface Props {\n table: MRT_TableInstance;\n}\n\nexport const MRT_ToolbarTop: FC<Props> = ({ table }) => {\n const {\n getState,\n options: {\n enableGlobalFilter,\n enablePagination,\n enableToolbarInternalActions,\n muiTableToolbarTopProps,\n positionGlobalFilter,\n positionPagination,\n positionToolbarAlertBanner,\n renderToolbarTopCustomActions,\n tableId,\n },\n } = table;\n\n const { isFullScreen, showGlobalFilter } = getState();\n\n const isMobile = useMediaQuery('(max-width:720px)');\n\n const toolbarProps =\n muiTableToolbarTopProps instanceof Function\n ? muiTableToolbarTopProps({ table })\n : muiTableToolbarTopProps;\n\n const stackAlertBanner =\n isMobile ||\n (positionToolbarAlertBanner === 'top' &&\n (!!renderToolbarTopCustomActions || showGlobalFilter));\n\n return (\n <Toolbar\n id={`mrt-${tableId}-toolbar-top`}\n variant=\"dense\"\n {...toolbarProps}\n sx={(theme) =>\n ({\n position: isFullScreen ? 'sticky' : undefined,\n top: isFullScreen ? '0' : undefined,\n ...commonToolbarStyles({ theme }),\n ...toolbarProps?.sx,\n } as any)\n }\n >\n {positionToolbarAlertBanner === 'top' && (\n <MRT_ToolbarAlertBanner\n stackAlertBanner={stackAlertBanner}\n table={table}\n />\n )}\n <Box\n sx={{\n alignItems: 'flex-start',\n boxSizing: 'border-box',\n display: 'flex',\n justifyContent: 'space-between',\n p: '0.5rem',\n position: stackAlertBanner ? 'relative' : 'absolute',\n right: 0,\n top: 0,\n width: '100%',\n }}\n >\n {enableGlobalFilter && positionGlobalFilter === 'left' && (\n <MRT_GlobalFilterTextField table={table} />\n )}\n\n {renderToolbarTopCustomActions?.({ table }) ?? <span />}\n {enableToolbarInternalActions ? (\n <MRT_ToolbarInternalButtons table={table} />\n ) : (\n enableGlobalFilter &&\n positionGlobalFilter === 'right' && (\n <MRT_GlobalFilterTextField table={table} />\n )\n )}\n </Box>\n {enablePagination &&\n ['top', 'both'].includes(positionPagination ?? '') && (\n <MRT_TablePagination table={table} position=\"top\" />\n )}\n <MRT_LinearProgressBar isTopToolbar table={table} />\n </Toolbar>\n );\n};\n","import React, { FC } from 'react';\nimport { alpha, Box, Toolbar, useMediaQuery } from '@mui/material';\nimport { MRT_TablePagination } from './MRT_TablePagination';\nimport { MRT_ToolbarAlertBanner } from './MRT_ToolbarAlertBanner';\nimport { MRT_LinearProgressBar } from './MRT_LinearProgressBar';\nimport { commonToolbarStyles } from './MRT_ToolbarTop';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n table: MRT_TableInstance;\n}\n\nexport const MRT_ToolbarBottom: FC<Props> = ({ table }) => {\n const {\n getState,\n options: {\n enablePagination,\n muiTableToolbarBottomProps,\n positionPagination,\n positionToolbarAlertBanner,\n renderToolbarBottomCustomActions,\n tableId,\n },\n } = table;\n const { isFullScreen } = getState();\n\n const isMobile = useMediaQuery('(max-width:720px)');\n\n const toolbarProps =\n muiTableToolbarBottomProps instanceof Function\n ? muiTableToolbarBottomProps({ table })\n : muiTableToolbarBottomProps;\n\n const stackAlertBanner =\n isMobile ||\n (positionToolbarAlertBanner === 'bottom' &&\n !!renderToolbarBottomCustomActions);\n\n return (\n <Toolbar\n id={`mrt-${tableId}-toolbar-bottom`}\n variant=\"dense\"\n {...toolbarProps}\n sx={(theme) =>\n ({\n ...commonToolbarStyles({ theme }),\n bottom: isFullScreen ? '0' : undefined,\n boxShadow: `-3px 0 6px ${alpha(theme.palette.common.black, 0.1)}`,\n left: 0,\n position: isFullScreen ? 'fixed' : 'relative',\n right: 0,\n ...toolbarProps?.sx,\n } as any)\n }\n >\n <MRT_LinearProgressBar isTopToolbar={false} table={table} />\n {positionToolbarAlertBanner === 'bottom' && (\n <MRT_ToolbarAlertBanner table={table} />\n )}\n <Box\n sx={{\n display: 'flex',\n justifyContent: 'space-between',\n width: '100%',\n }}\n >\n {renderToolbarBottomCustomActions ? (\n <Box sx={{ p: '0.5rem' }}>\n {renderToolbarBottomCustomActions({ table })}\n </Box>\n ) : (\n <span />\n )}\n <Box\n sx={{\n display: 'flex',\n justifyContent: 'flex-end',\n position: stackAlertBanner ? 'relative' : 'absolute',\n right: 0,\n top: 0,\n }}\n >\n {enablePagination &&\n ['bottom', 'both'].includes(positionPagination ?? '') && (\n <MRT_TablePagination table={table} position=\"bottom\" />\n )}\n </Box>\n </Box>\n </Toolbar>\n );\n};\n","import React, { FC, MouseEvent, useState } from 'react';\nimport { IconButton, Tooltip } from '@mui/material';\nimport { MRT_ColumnActionMenu } from '../menus/MRT_ColumnActionMenu';\nimport type { MRT_Header, MRT_TableInstance } from '..';\n\ninterface Props {\n header: MRT_Header;\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableHeadCellColumnActionsButton: FC<Props> = ({\n header,\n table,\n}) => {\n const {\n options: {\n icons: { MoreVertIcon },\n localization,\n muiTableHeadCellColumnActionsButtonProps,\n },\n } = table;\n const { column } = header;\n const { columnDef } = column;\n\n const [anchorEl, setAnchorEl] = useState<null | HTMLElement>(null);\n\n const handleClick = (event: MouseEvent<HTMLElement>) => {\n event.stopPropagation();\n event.preventDefault();\n setAnchorEl(event.currentTarget);\n };\n\n const mTableHeadCellColumnActionsButtonProps =\n muiTableHeadCellColumnActionsButtonProps instanceof Function\n ? muiTableHeadCellColumnActionsButtonProps({ column, table })\n : muiTableHeadCellColumnActionsButtonProps;\n\n const mcTableHeadCellColumnActionsButtonProps =\n columnDef.muiTableHeadCellColumnActionsButtonProps instanceof Function\n ? columnDef.muiTableHeadCellColumnActionsButtonProps({\n column,\n table,\n })\n : columnDef.muiTableHeadCellColumnActionsButtonProps;\n\n const iconButtonProps = {\n ...mTableHeadCellColumnActionsButtonProps,\n ...mcTableHeadCellColumnActionsButtonProps,\n };\n\n return (\n <>\n <Tooltip\n arrow\n enterDelay={1000}\n enterNextDelay={1000}\n placement=\"top\"\n title={localization.columnActions}\n >\n <IconButton\n aria-label={localization.columnActions}\n onClick={handleClick}\n size=\"small\"\n {...iconButtonProps}\n sx={{\n height: '2rem',\n mt: '-0.2rem',\n opacity: 0.5,\n transition: 'opacity 0.2s',\n width: '2rem',\n '&:hover': {\n opacity: 1,\n },\n ...iconButtonProps.sx,\n }}\n >\n <MoreVertIcon />\n </IconButton>\n </Tooltip>\n <MRT_ColumnActionMenu\n anchorEl={anchorEl}\n header={header}\n setAnchorEl={setAnchorEl}\n table={table}\n />\n </>\n );\n};\n","import React, {\n ChangeEvent,\n FC,\n MouseEvent,\n useCallback,\n useState,\n} from 'react';\nimport {\n Chip,\n debounce,\n IconButton,\n InputAdornment,\n MenuItem,\n TextField,\n TextFieldProps,\n Tooltip,\n} from '@mui/material';\nimport { MRT_FilterOptionMenu } from '../menus/MRT_FilterOptionMenu';\nimport type { MRT_Header, MRT_TableInstance } from '..';\n\ninterface Props {\n header: MRT_Header;\n inputIndex?: number;\n table: MRT_TableInstance;\n}\n\nexport const MRT_FilterTextField: FC<Props> = ({\n header,\n inputIndex,\n table,\n}) => {\n const {\n getState,\n options: {\n enableColumnFilterChangeMode,\n enabledColumnFilterOptions,\n icons: { FilterListIcon, CloseIcon },\n localization,\n muiTableHeadCellFilterTextFieldProps,\n tableId,\n },\n setCurrentFilterFns,\n } = table;\n const { column } = header;\n const { columnDef } = column;\n const { currentFilterFns } = getState();\n\n const [anchorEl, setAnchorEl] = useState<null | HTMLElement>(null);\n\n const mTableHeadCellFilterTextFieldProps =\n muiTableHeadCellFilterTextFieldProps instanceof Function\n ? muiTableHeadCellFilterTextFieldProps({ column, table })\n : muiTableHeadCellFilterTextFieldProps;\n\n const mcTableHeadCellFilterTextFieldProps =\n columnDef.muiTableHeadCellFilterTextFieldProps instanceof Function\n ? columnDef.muiTableHeadCellFilterTextFieldProps({\n column,\n table,\n })\n : columnDef.muiTableHeadCellFilterTextFieldProps;\n\n const textFieldProps = {\n ...mTableHeadCellFilterTextFieldProps,\n ...mcTableHeadCellFilterTextFieldProps,\n } as TextFieldProps;\n\n const [filterValue, setFilterValue] = useState<string>(() =>\n inputIndex !== undefined\n ? (column.getFilterValue() as [string, string])?.[inputIndex] ?? ''\n : (column.getFilterValue() as string) ?? '',\n );\n\n const handleChangeDebounced = useCallback(\n debounce((event: ChangeEvent<HTMLInputElement>) => {\n let value = textFieldProps.type === 'date' ? new Date(event.target.value) : event.target.value\n if (inputIndex !== undefined) {\n column.setFilterValue((old: [string, string | Date]) => {\n const newFilterValues = old ?? ['', ''];\n newFilterValues[inputIndex] = value;\n return newFilterValues;\n });\n } else {\n column.setFilterValue(value ?? undefined);\n }\n }, 200),\n [],\n );\n\n const handleChange = (event: ChangeEvent<HTMLInputElement>) => {\n setFilterValue(event.target.value);\n handleChangeDebounced(event);\n };\n\n const handleFilterMenuOpen = (event: MouseEvent<HTMLElement>) => {\n setAnchorEl(event.currentTarget);\n };\n\n const handleClear = () => {\n setFilterValue('');\n if (inputIndex !== undefined) {\n column.setFilterValue((old: [string | undefined, string | undefined]) => {\n const newFilterValues = old ?? ['', ''];\n newFilterValues[inputIndex] = undefined;\n return newFilterValues;\n });\n } else {\n column.setFilterValue(undefined);\n }\n };\n\n const handleClearFilterChip = () => {\n setFilterValue('');\n column.setFilterValue(undefined);\n setCurrentFilterFns((prev) => ({\n ...prev,\n [header.id]: 'fuzzy',\n }));\n };\n\n if (columnDef.Filter) {\n return <>{columnDef.Filter?.({ header, table })}</>;\n }\n\n const filterId = `mrt-${tableId}-${header.id}-filter-text-field${\n inputIndex ?? ''\n }`;\n const currentFilterOption = currentFilterFns?.[header.id];\n const isSelectFilter = !!columnDef.filterSelectOptions;\n const filterChipLabel = ['empty', 'notEmpty'].includes(currentFilterOption)\n ? //@ts-ignore\n localization[\n `filter${\n currentFilterOption.charAt(0).toUpperCase() +\n currentFilterOption.slice(1)\n }`\n ]\n : '';\n const filterPlaceholder =\n inputIndex === undefined\n ? localization.filterByColumn?.replace(\n '{column}',\n String(columnDef.header),\n )\n : inputIndex === 0\n ? localization.min\n : inputIndex === 1\n ? localization.max\n : '';\n\n const allowedColumnFilterOptions =\n columnDef?.enabledColumnFilterOptions ?? enabledColumnFilterOptions;\n\n const showChangeModeButton =\n enableColumnFilterChangeMode &&\n columnDef.enableColumnFilterChangeMode !== false &&\n !isSelectFilter &&\n !inputIndex &&\n (allowedColumnFilterOptions === undefined ||\n !!allowedColumnFilterOptions?.length);\n\n return (\n <>\n <TextField\n fullWidth\n id={filterId}\n inputProps={{\n disabled: !!filterChipLabel,\n sx: {\n textOverflow: 'ellipsis',\n width: filterChipLabel ? 0 : undefined,\n },\n title: filterPlaceholder,\n }}\n helperText={\n showChangeModeButton ? (\n <label htmlFor={filterId}>\n {localization.filterMode.replace(\n '{filterType}',\n // @ts-ignore\n localization[\n `filter${\n currentFilterOption.charAt(0).toUpperCase() +\n currentFilterOption.slice(1)\n }`\n ],\n )}\n </label>\n ) : null\n }\n FormHelperTextProps={{\n sx: {\n fontSize: '0.6rem',\n lineHeight: '0.8rem',\n whiteSpace: 'nowrap',\n },\n }}\n margin=\"none\"\n placeholder={\n filterChipLabel || isSelectFilter ? undefined : filterPlaceholder\n }\n onChange={handleChange}\n onClick={(e: MouseEvent<HTMLInputElement>) => e.stopPropagation()}\n select={isSelectFilter}\n value={filterValue ?? ''}\n variant=\"standard\"\n InputProps={{\n startAdornment: showChangeModeButton ? (\n <InputAdornment position=\"start\">\n <Tooltip arrow title={localization.changeFilterMode}>\n <span>\n <IconButton\n aria-label={localization.changeFilterMode}\n onClick={handleFilterMenuOpen}\n size=\"small\"\n sx={{ height: '1.75rem', width: '1.75rem' }}\n >\n <FilterListIcon />\n </IconButton>\n </span>\n </Tooltip>\n {filterChipLabel && (\n <Chip\n onDelete={handleClearFilterChip}\n label={filterChipLabel}\n />\n )}\n </InputAdornment>\n ) : (\n <FilterListIcon />\n ),\n endAdornment: !filterChipLabel && (\n <InputAdornment position=\"end\">\n <Tooltip\n arrow\n disableHoverListener={isSelectFilter}\n placement=\"right\"\n title={localization.clearFilter ?? ''}\n >\n <span>\n <IconButton\n aria-label={localization.clearFilter}\n disabled={!filterValue?.length}\n onClick={handleClear}\n size=\"small\"\n sx={{\n height: '1.75rem',\n width: '1.75rem',\n }}\n >\n <CloseIcon />\n </IconButton>\n </span>\n </Tooltip>\n </InputAdornment>\n ),\n }}\n {...textFieldProps}\n sx={{\n m: '-0.25rem',\n p: 0,\n minWidth: !filterChipLabel ? '8rem' : 'auto',\n width: 'calc(100% + 0.5rem)',\n '&\t.MuiSelect-icon': {\n mr: '1.5rem',\n },\n ...textFieldProps?.sx,\n }}\n >\n {isSelectFilter && (\n <MenuItem divider disabled={!filterValue} value=\"\">\n {localization.clearFilter}\n </MenuItem>\n )}\n {columnDef?.filterSelectOptions?.map((option) => {\n let value;\n let text;\n if (typeof option === 'string') {\n value = option;\n text = option;\n } else if (typeof option === 'object') {\n value = option.value;\n text = option.text;\n }\n return (\n <MenuItem key={value} value={value}>\n {text}\n </MenuItem>\n );\n })}\n </TextField>\n <MRT_FilterOptionMenu\n anchorEl={anchorEl}\n header={header}\n setAnchorEl={setAnchorEl}\n table={table}\n />\n </>\n );\n};\n","import React, { FC } from 'react';\nimport { Box } from '@mui/material';\nimport { MRT_FilterTextField } from './MRT_FilterTextField';\nimport { MRT_Header, MRT_TableInstance } from '..';\n\ninterface Props {\n header: MRT_Header;\n table: MRT_TableInstance;\n}\n\nexport const MRT_FilterRangeFields: FC<Props> = ({ header, table }) => {\n return (\n <Box sx={{ display: 'grid', gridTemplateColumns: '6fr 6fr', gap: '1rem' }}>\n <MRT_FilterTextField header={header} inputIndex={0} table={table} />\n <MRT_FilterTextField header={header} inputIndex={1} table={table} />\n </Box>\n );\n};\n","import React, { FC } from 'react';\nimport { Collapse } from '@mui/material';\nimport { MRT_FilterRangeFields } from '../inputs/MRT_FilterRangeFields';\nimport { MRT_FilterTextField } from '../inputs/MRT_FilterTextField';\nimport { MRT_Header, MRT_TableInstance } from '..';\n\ninterface Props {\n header: MRT_Header;\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableHeadCellFilterContainer: FC<Props> = ({\n header,\n table,\n}) => {\n const { getState } = table;\n const { currentFilterFns, showColumnFilters } = getState();\n const { column } = header;\n\n return (\n <Collapse in={showColumnFilters} mountOnEnter unmountOnExit>\n {currentFilterFns[column.id] === 'between' ? (\n <MRT_FilterRangeFields header={header} table={table} />\n ) : (\n <MRT_FilterTextField header={header} table={table} />\n )}\n </Collapse>\n );\n};\n","import React, { FC, MouseEvent } from 'react';\nimport { Grow, IconButton, Tooltip } from '@mui/material';\nimport { MRT_Header, MRT_TableInstance } from '..';\n\ninterface Props {\n header: MRT_Header;\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableHeadCellFilterLabel: FC<Props> = ({ header, table }) => {\n const {\n getState,\n options: {\n icons: { FilterAltIcon },\n localization,\n },\n } = table;\n const { currentFilterFns } = getState();\n const { column } = header;\n const { columnDef } = column;\n\n const currentFilterOption = currentFilterFns?.[header.id];\n const filterTooltip = localization.filteringByColumn\n .replace('{column}', String(columnDef.header))\n .replace(\n '{filterType}',\n // @ts-ignore\n localization[\n `filter${\n currentFilterOption.charAt(0).toUpperCase() +\n currentFilterOption.slice(1)\n }`\n ],\n )\n .replace(\n '{filterValue}',\n `\"${\n Array.isArray(column.getFilterValue())\n ? (column.getFilterValue() as [string, string]).join(\n `\" ${localization.and} \"`,\n )\n : (column.getFilterValue() as string)\n }\"`,\n )\n .replace('\" \"', '');\n\n return (\n <Grow\n unmountOnExit\n in={\n (!!column.getFilterValue() && currentFilterOption !== 'between') ||\n (currentFilterOption === 'between' && // @ts-ignore\n (!!column.getFilterValue()?.[0] || !!column.getFilterValue()?.[1]))\n }\n >\n <span>\n <Tooltip arrow placement=\"top\" title={filterTooltip}>\n <IconButton\n disableRipple\n onClick={(event: MouseEvent<HTMLButtonElement>) => {\n event.stopPropagation();\n }}\n size=\"small\"\n sx={{\n m: 0,\n opacity: 0.8,\n p: '2px',\n transform: 'scale(0.66)',\n width: '1.5ch',\n }}\n >\n <FilterAltIcon />\n </IconButton>\n </Tooltip>\n </span>\n </Grow>\n );\n};\n","import React, { DragEvent, FC, RefObject } from 'react';\nimport { MRT_GrabHandleButton } from '../buttons/MRT_GrabHandleButton';\nimport { reorderColumn } from '../utils';\nimport type { MRT_Column, MRT_TableInstance } from '..';\n\ninterface Props {\n column: MRT_Column;\n table: MRT_TableInstance;\n tableHeadCellRef: RefObject<HTMLTableCellElement>;\n}\n\nexport const MRT_TableHeadCellGrabHandle: FC<Props> = ({\n column,\n table,\n tableHeadCellRef,\n}) => {\n const {\n getState,\n options: {\n enableColumnOrdering,\n muiTableHeadCellDragHandleProps,\n onColumnDrop,\n },\n setColumnOrder,\n setCurrentDraggingColumn,\n setCurrentHoveredColumn,\n } = table;\n const { columnDef } = column;\n const { currentHoveredColumn, currentDraggingColumn, columnOrder } =\n getState();\n\n const mIconButtonProps =\n muiTableHeadCellDragHandleProps instanceof Function\n ? muiTableHeadCellDragHandleProps({ column, table })\n : muiTableHeadCellDragHandleProps;\n\n const mcIconButtonProps =\n columnDef.muiTableHeadCellDragHandleProps instanceof Function\n ? columnDef.muiTableHeadCellDragHandleProps({ column, table })\n : columnDef.muiTableHeadCellDragHandleProps;\n\n const iconButtonProps = {\n ...mIconButtonProps,\n ...mcIconButtonProps,\n };\n\n const handleDragStart = (e: DragEvent<HTMLButtonElement>) => {\n setCurrentDraggingColumn(column);\n e.dataTransfer.setDragImage(tableHeadCellRef.current as HTMLElement, 0, 0);\n };\n\n const handleDragEnd = (event: DragEvent<HTMLButtonElement>) => {\n onColumnDrop?.({\n event,\n draggedColumn: column,\n targetColumn: currentHoveredColumn,\n });\n if (\n enableColumnOrdering &&\n currentHoveredColumn &&\n currentHoveredColumn?.id !== currentDraggingColumn?.id\n ) {\n setColumnOrder(reorderColumn(column, currentHoveredColumn, columnOrder));\n }\n setCurrentDraggingColumn(null);\n setCurrentHoveredColumn(null);\n };\n\n return (\n <MRT_GrabHandleButton\n iconButtonProps={iconButtonProps}\n onDragStart={handleDragStart}\n onDragEnd={handleDragEnd}\n table={table}\n />\n );\n};\n","import React, { FC } from 'react';\nimport { Divider, Theme } from '@mui/material';\nimport { MRT_Header, MRT_TableInstance } from '..';\n\ninterface Props {\n header: MRT_Header;\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableHeadCellResizeHandle: FC<Props> = ({ header, table }) => {\n const {\n getState,\n options: { columnResizeMode },\n } = table;\n const { density, showColumnFilters } = getState();\n const { column } = header;\n const { columnDef } = column;\n const { columnDefType } = columnDef;\n\n return (\n <Divider\n flexItem\n orientation=\"vertical\"\n onDoubleClick={() => column.resetSize()}\n sx={(theme: Theme) => ({\n borderRadius: '2px',\n borderRightWidth: '2px',\n cursor: 'col-resize',\n height: showColumnFilters && columnDefType === 'data' ? '4rem' : '2rem',\n mr: density === 'compact' ? '-0.5rem' : '-1rem',\n opacity: 0.8,\n position: 'absolute',\n right: '1px',\n touchAction: 'none',\n transition: column.getIsResizing() ? undefined : 'all 0.2s ease-in-out',\n userSelect: 'none',\n zIndex: 4,\n '&:active': {\n backgroundColor: theme.palette.info.main,\n opacity: 1,\n },\n })}\n onMouseDown={header.getResizeHandler()}\n onTouchStart={header.getResizeHandler()}\n style={{\n transform: column.getIsResizing()\n ? `translateX(${\n (getState().columnSizingInfo.deltaOffset ?? 0) /\n (columnResizeMode === 'onChange' ? 16 : 1)\n }px)`\n : 'none',\n }}\n />\n );\n};\n","import React, { FC } from 'react';\nimport { TableSortLabel, Tooltip } from '@mui/material';\nimport { MRT_Header, MRT_TableInstance } from '..';\n\ninterface Props {\n header: MRT_Header;\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableHeadCellSortLabel: FC<Props> = ({ header, table }) => {\n const {\n options: { localization },\n } = table;\n const { column } = header;\n const { columnDef } = column;\n\n const sortTooltip = !!column.getIsSorted()\n ? column.getIsSorted() === 'desc'\n ? localization.sortedByColumnDesc.replace('{column}', columnDef.header)\n : localization.sortedByColumnAsc.replace('{column}', columnDef.header)\n : localization.unsorted;\n\n return (\n <Tooltip arrow placement=\"top\" title={sortTooltip}>\n <TableSortLabel\n aria-label={sortTooltip}\n active={!!column.getIsSorted()}\n direction={\n column.getIsSorted()\n ? (column.getIsSorted() as 'asc' | 'desc')\n : undefined\n }\n sx={{\n width: '2ch',\n transform: 'translateX(-0.5ch)',\n }}\n />\n </Tooltip>\n );\n};\n","import React, { DragEvent, FC, ReactNode } from 'react';\nimport { Box, TableCell, Theme, alpha, lighten, useTheme } from '@mui/material';\nimport { MRT_TableHeadCellColumnActionsButton } from './MRT_TableHeadCellColumnActionsButton';\nimport { MRT_TableHeadCellFilterContainer } from './MRT_TableHeadCellFilterContainer';\nimport { MRT_TableHeadCellFilterLabel } from './MRT_TableHeadCellFilterLabel';\nimport { MRT_TableHeadCellGrabHandle } from './MRT_TableHeadCellGrabHandle';\nimport { MRT_TableHeadCellResizeHandle } from './MRT_TableHeadCellResizeHandle';\nimport { MRT_TableHeadCellSortLabel } from './MRT_TableHeadCellSortLabel';\nimport type { MRT_Header, MRT_TableInstance } from '..';\n\ninterface Props {\n header: MRT_Header;\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableHeadCell: FC<Props> = ({ header, table }) => {\n const theme = useTheme();\n const {\n getState,\n options: {\n enableColumnActions,\n enableColumnDragging,\n enableColumnOrdering,\n enableColumnResizing,\n enableGrouping,\n enableMultiSort,\n muiTableHeadCellProps,\n },\n setCurrentHoveredColumn,\n } = table;\n const { density, currentDraggingColumn, currentHoveredColumn } = getState();\n const { column } = header;\n const { columnDef } = column;\n const { columnDefType } = columnDef;\n\n const mTableHeadCellProps =\n muiTableHeadCellProps instanceof Function\n ? muiTableHeadCellProps({ column, table })\n : muiTableHeadCellProps;\n\n const mcTableHeadCellProps =\n columnDef.muiTableHeadCellProps instanceof Function\n ? columnDef.muiTableHeadCellProps({ column, table })\n : columnDef.muiTableHeadCellProps;\n\n const tableCellProps = {\n ...mTableHeadCellProps,\n ...mcTableHeadCellProps,\n };\n\n const getIsLastLeftPinnedColumn = () => {\n return (\n column.getIsPinned() === 'left' &&\n table.getLeftLeafHeaders().length - 1 === column.getPinnedIndex()\n );\n };\n\n const getIsFirstRightPinnedColumn = () => {\n return column.getIsPinned() === 'right' && column.getPinnedIndex() === 0;\n };\n\n const getTotalRight = () => {\n return (\n (table.getRightLeafHeaders().length - 1 - column.getPinnedIndex()) * 150\n );\n };\n\n const handleDragEnter = (_e: DragEvent) => {\n if (enableColumnOrdering && currentDraggingColumn) {\n setCurrentHoveredColumn(\n columnDef.enableColumnOrdering !== false ? column : null,\n );\n }\n };\n\n const draggingBorder =\n currentDraggingColumn?.id === column.id\n ? `1px dashed ${theme.palette.divider}`\n : currentHoveredColumn?.id === column.id\n ? `2px dashed ${theme.palette.primary.main}`\n : undefined;\n\n const draggingBorders = draggingBorder\n ? {\n borderLeft: draggingBorder,\n borderRight: draggingBorder,\n borderTop: draggingBorder,\n }\n : undefined;\n\n const headerElement = ((columnDef?.Header instanceof Function\n ? columnDef?.Header?.({\n header,\n table,\n })\n : columnDef?.Header) ?? columnDef.header) as ReactNode;\n\n const tableHeadCellRef = React.useRef<HTMLTableCellElement>(null);\n\n return (\n <TableCell\n align={columnDefType === 'group' ? 'center' : 'left'}\n colSpan={header.colSpan}\n onDragEnter={handleDragEnter}\n ref={tableHeadCellRef}\n {...tableCellProps}\n sx={(theme: Theme) => ({\n backgroundColor:\n column.getIsPinned() && columnDefType !== 'group'\n ? alpha(lighten(theme.palette.background.default, 0.04), 0.95)\n : 'inherit',\n backgroundImage: 'inherit',\n boxShadow: getIsLastLeftPinnedColumn()\n ? `4px 0 4px -2px ${alpha(theme.palette.common.black, 0.1)}`\n : getIsFirstRightPinnedColumn()\n ? `-4px 0 4px -2px ${alpha(theme.palette.common.black, 0.1)}`\n : undefined,\n fontWeight: 'bold',\n left:\n column.getIsPinned() === 'left'\n ? `${column.getStart('left')}px`\n : undefined,\n overflow: 'visible',\n opacity:\n currentDraggingColumn?.id === column.id ||\n currentHoveredColumn?.id === column.id\n ? 0.5\n : 1,\n p:\n density === 'compact'\n ? columnDefType === 'display'\n ? '0 0.5rem'\n : '0.5rem'\n : density === 'comfortable'\n ? columnDefType === 'display'\n ? '0.5rem 0.75rem'\n : '1rem'\n : columnDefType === 'display'\n ? '1rem 1.25rem'\n : '1.5rem',\n pb: columnDefType === 'display' ? 0 : undefined,\n position:\n column.getIsPinned() && columnDefType !== 'group'\n ? 'sticky'\n : undefined,\n pt:\n columnDefType === 'group'\n ? 0\n : density === 'compact'\n ? '0.25'\n : density === 'comfortable'\n ? '.75rem'\n : '1.25rem',\n right:\n column.getIsPinned() === 'right' ? `${getTotalRight()}px` : undefined,\n transition: `all ${enableColumnResizing ? 0 : '0.2s'} ease-in-out`,\n userSelect: enableMultiSort && column.getCanSort() ? 'none' : undefined,\n verticalAlign: 'top',\n zIndex:\n column.getIsResizing() || currentDraggingColumn?.id === column.id\n ? 3\n : column.getIsPinned() && columnDefType !== 'group'\n ? 2\n : 1,\n ...(tableCellProps?.sx as any),\n ...draggingBorders,\n maxWidth: `min(${column.getSize()}px, fit-content)`,\n minWidth: `max(${column.getSize()}px, ${columnDef.minSize ?? 30}px)`,\n width: header.getSize(),\n })}\n >\n {header.isPlaceholder ? null : (\n <Box\n sx={{\n alignItems: 'flex-start',\n display: 'flex',\n justifyContent:\n columnDefType === 'group' ? 'center' : 'space-between',\n position: 'relative',\n width: '100%',\n }}\n >\n <Box\n onClick={column.getToggleSortingHandler()}\n sx={{\n alignItems: 'center',\n cursor:\n column.getCanSort() && columnDefType !== 'group'\n ? 'pointer'\n : undefined,\n display: 'flex',\n flexWrap: 'nowrap',\n whiteSpace:\n (columnDef.header?.length ?? 0) < 24 ? 'nowrap' : 'normal',\n }}\n >\n {headerElement}\n {column.getCanSort() && (\n <MRT_TableHeadCellSortLabel header={header} table={table} />\n )}\n {column.getCanFilter() && (\n <MRT_TableHeadCellFilterLabel header={header} table={table} />\n )}\n </Box>\n {columnDefType !== 'group' && (\n <Box sx={{ whiteSpace: 'nowrap' }}>\n {((enableColumnDragging &&\n columnDef.enableColumnDragging !== false) ||\n (enableColumnOrdering &&\n columnDef.enableColumnOrdering !== false) ||\n (enableGrouping && columnDef.enableGrouping !== false)) && (\n <MRT_TableHeadCellGrabHandle\n column={column}\n table={table}\n tableHeadCellRef={tableHeadCellRef}\n />\n )}\n {(enableColumnActions || columnDef.enableColumnActions) &&\n columnDef.enableColumnActions !== false && (\n <MRT_TableHeadCellColumnActionsButton\n header={header}\n table={table}\n />\n )}\n </Box>\n )}\n {column.getCanResize() && (\n <MRT_TableHeadCellResizeHandle header={header} table={table} />\n )}\n </Box>\n )}\n {column.getCanFilter() && (\n <MRT_TableHeadCellFilterContainer header={header} table={table} />\n )}\n </TableCell>\n );\n};\n","import React, { FC } from 'react';\nimport { alpha, lighten, TableRow } from '@mui/material';\nimport { MRT_TableHeadCell } from './MRT_TableHeadCell';\nimport type { MRT_Header, MRT_HeaderGroup, MRT_TableInstance } from '..';\n\ninterface Props {\n headerGroup: MRT_HeaderGroup;\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableHeadRow: FC<Props> = ({ headerGroup, table }) => {\n const {\n options: { muiTableHeadRowProps },\n } = table;\n\n const tableRowProps =\n muiTableHeadRowProps instanceof Function\n ? muiTableHeadRowProps({ headerGroup, table })\n : muiTableHeadRowProps;\n\n return (\n <TableRow\n {...tableRowProps}\n sx={(theme) => ({\n boxShadow: `4px 0 8px ${alpha(theme.palette.common.black, 0.1)}`,\n backgroundColor: lighten(theme.palette.background.default, 0.04),\n ...(tableRowProps?.sx as any),\n })}\n >\n {headerGroup.headers.map((header: MRT_Header, index) => (\n <MRT_TableHeadCell\n header={header}\n key={header.id || index}\n table={table}\n />\n ))}\n </TableRow>\n );\n};\n","import React, { FC } from 'react';\nimport { TableHead } from '@mui/material';\nimport { MRT_TableHeadRow } from './MRT_TableHeadRow';\nimport type { MRT_TableInstance } from '..';\n\ninterface Props {\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableHead: FC<Props> = ({ table }) => {\n const {\n getHeaderGroups,\n options: { muiTableHeadProps },\n } = table;\n\n const tableHeadProps =\n muiTableHeadProps instanceof Function\n ? muiTableHeadProps({ table })\n : muiTableHeadProps;\n\n return (\n <TableHead {...tableHeadProps}>\n {getHeaderGroups().map((headerGroup) => (\n <MRT_TableHeadRow\n headerGroup={headerGroup as any}\n key={headerGroup.id}\n table={table}\n />\n ))}\n </TableHead>\n );\n};\n","import React, {\n ChangeEvent,\n FC,\n FocusEvent,\n MouseEvent,\n useState,\n} from 'react';\nimport { TextField } from '@mui/material';\nimport type { MRT_Cell, MRT_Row, MRT_TableInstance } from '..';\n\ninterface Props {\n cell: MRT_Cell;\n table: MRT_TableInstance;\n}\n\nexport const MRT_EditCellTextField: FC<Props> = ({ cell, table }) => {\n const {\n getState,\n options: {\n tableId,\n enableEditing,\n muiTableBodyCellEditTextFieldProps,\n onCellEditBlur,\n onCellEditChange,\n },\n setCurrentEditingCell,\n setCurrentEditingRow,\n } = table;\n const { column, row } = cell;\n const { columnDef } = column;\n\n const [value, setValue] = useState(cell.getValue<string>());\n\n const handleChange = (event: ChangeEvent<HTMLInputElement>) => {\n setValue(event.target.value);\n columnDef.onCellEditChange?.({ event, cell, table });\n onCellEditChange?.({ event, cell, table });\n };\n\n const handleBlur = (event: FocusEvent<HTMLInputElement>) => {\n if (getState().currentEditingRow) {\n if (!row._valuesCache) row._valuesCache = {};\n (row._valuesCache as Record<string, any>)[column.id] = value;\n setCurrentEditingRow({ ...getState().currentEditingRow } as MRT_Row);\n }\n setCurrentEditingCell(null);\n columnDef.onCellEditBlur?.({ event, cell, table });\n onCellEditBlur?.({ event, cell, table });\n };\n\n const mTableBodyCellEditTextFieldProps =\n muiTableBodyCellEditTextFieldProps instanceof Function\n ? muiTableBodyCellEditTextFieldProps({ cell, table })\n : muiTableBodyCellEditTextFieldProps;\n\n const mcTableBodyCellEditTextFieldProps =\n columnDef.muiTableBodyCellEditTextFieldProps instanceof Function\n ? columnDef.muiTableBodyCellEditTextFieldProps({\n cell,\n table,\n })\n : columnDef.muiTableBodyCellEditTextFieldProps;\n\n const textFieldProps = {\n ...mTableBodyCellEditTextFieldProps,\n ...mcTableBodyCellEditTextFieldProps,\n };\n\n if (enableEditing && columnDef.enableEditing !== false && columnDef.Edit) {\n return <>{columnDef.Edit?.({ cell, table })}</>;\n }\n\n return (\n <TextField\n id={`mrt-${tableId}-edit-cell-text-field-${cell.id}`}\n margin=\"dense\"\n onBlur={handleBlur}\n onChange={handleChange}\n onClick={(e: MouseEvent<HTMLInputElement>) => e.stopPropagation()}\n placeholder={columnDef.header}\n value={value}\n variant=\"standard\"\n {...textFieldProps}\n />\n );\n};\n","import React, { FC, ReactNode, useState } from 'react';\nimport { Button, Tooltip } from '@mui/material';\nimport { MRT_Cell, MRT_TableInstance } from '..';\n\ninterface Props {\n cell: MRT_Cell;\n children: ReactNode;\n table: MRT_TableInstance;\n}\n\nexport const MRT_CopyButton: FC<Props> = ({ cell, children, table }) => {\n const {\n options: { localization, muiTableBodyCellCopyButtonProps },\n } = table;\n const { column } = cell;\n const { columnDef } = column;\n\n const [copied, setCopied] = useState(false);\n\n const handleCopy = (text: unknown) => {\n navigator.clipboard.writeText(text as string);\n setCopied(true);\n setTimeout(() => setCopied(false), 4000);\n };\n\n const mTableBodyCellCopyButtonProps =\n muiTableBodyCellCopyButtonProps instanceof Function\n ? muiTableBodyCellCopyButtonProps({ cell, table })\n : muiTableBodyCellCopyButtonProps;\n\n const mcTableBodyCellCopyButtonProps =\n columnDef.muiTableBodyCellCopyButtonProps instanceof Function\n ? columnDef.muiTableBodyCellCopyButtonProps({\n cell,\n table,\n })\n : columnDef.muiTableBodyCellCopyButtonProps;\n\n const buttonProps = {\n ...mTableBodyCellCopyButtonProps,\n ...mcTableBodyCellCopyButtonProps,\n };\n\n return (\n <Tooltip\n arrow\n enterDelay={1000}\n enterNextDelay={1000}\n placement=\"top\"\n title={copied ? localization.copiedToClipboard : localization.clickToCopy}\n >\n <Button\n onClick={() => handleCopy(cell.getValue())}\n size=\"small\"\n type=\"button\"\n variant=\"text\"\n {...buttonProps}\n sx={{\n backgroundColor: 'transparent',\n border: 'none',\n color: 'inherit',\n cursor: 'copy',\n fontFamily: 'inherit',\n fontSize: 'inherit',\n letterSpacing: 'inherit',\n m: '-0.25rem',\n minWidth: 'unset',\n textAlign: 'inherit',\n textTransform: 'inherit',\n ...buttonProps?.sx,\n }}\n >\n {children}\n </Button>\n </Tooltip>\n );\n};\n","import React, { DragEvent, FC, RefObject } from 'react';\nimport { MRT_Cell, MRT_TableInstance } from '..';\nimport { MRT_GrabHandleButton } from '../buttons/MRT_GrabHandleButton';\n\ninterface Props {\n cell: MRT_Cell;\n rowRef: RefObject<HTMLTableRowElement>;\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableBodyRowGrabHandle: FC<Props> = ({\n cell,\n rowRef,\n table,\n}) => {\n const {\n options: { muiTableBodyRowDragHandleProps, onRowDrop },\n } = table;\n\n const iconButtonProps =\n muiTableBodyRowDragHandleProps instanceof Function\n ? muiTableBodyRowDragHandleProps({ row: cell.row, table })\n : muiTableBodyRowDragHandleProps;\n\n const handleDragStart = (e: DragEvent<HTMLButtonElement>) => {\n e.dataTransfer.setDragImage(rowRef.current as HTMLElement, 0, 0);\n table.setCurrentDraggingRow(cell.row as any);\n };\n\n const handleDragEnd = (event: DragEvent<HTMLButtonElement>) => {\n onRowDrop?.({\n event,\n draggedRow: table.getState().currentDraggingRow as any,\n targetRow: table.getState().currentHoveredRow as any,\n });\n table.setCurrentDraggingRow(null);\n table.setCurrentHoveredRow(null);\n };\n\n return (\n <MRT_GrabHandleButton\n iconButtonProps={iconButtonProps}\n onDragStart={handleDragStart}\n onDragEnd={handleDragEnd}\n table={table}\n />\n );\n};\n","import React, { DragEvent, FC, MouseEvent, RefObject, useMemo } from 'react';\nimport {\n alpha,\n darken,\n lighten,\n Skeleton,\n TableCell,\n useTheme,\n} from '@mui/material';\nimport { MRT_EditCellTextField } from '../inputs/MRT_EditCellTextField';\nimport { MRT_CopyButton } from '../buttons/MRT_CopyButton';\nimport type { MRT_Cell, MRT_TableInstance } from '..';\nimport { MRT_TableBodyRowGrabHandle } from './MRT_TableBodyRowGrabHandle';\n\ninterface Props {\n cell: MRT_Cell;\n enableHover?: boolean;\n rowIndex: number;\n rowRef: RefObject<HTMLTableRowElement>;\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableBodyCell: FC<Props> = ({\n cell,\n enableHover,\n rowIndex,\n rowRef,\n table,\n}) => {\n const theme = useTheme();\n const {\n getState,\n options: {\n editingMode,\n enableClickToCopy,\n enableColumnOrdering,\n enableEditing,\n enableRowNumbers,\n muiTableBodyCellProps,\n muiTableBodyCellSkeletonProps,\n rowNumberMode,\n tableId,\n },\n setCurrentEditingCell,\n setCurrentHoveredColumn,\n } = table;\n const {\n currentDraggingColumn,\n currentEditingCell,\n currentEditingRow,\n currentHoveredColumn,\n density,\n isLoading,\n showSkeletons,\n } = getState();\n const { column, row } = cell;\n const { columnDef } = column;\n const { columnDefType } = columnDef;\n\n const mTableCellBodyProps =\n muiTableBodyCellProps instanceof Function\n ? muiTableBodyCellProps({ cell, table })\n : muiTableBodyCellProps;\n\n const mcTableCellBodyProps =\n columnDef.muiTableBodyCellProps instanceof Function\n ? columnDef.muiTableBodyCellProps({ cell, table })\n : columnDef.muiTableBodyCellProps;\n\n const tableCellProps = {\n ...mTableCellBodyProps,\n ...mcTableCellBodyProps,\n };\n\n const skeletonWidth = useMemo(\n () =>\n columnDefType === 'display'\n ? column.getSize() / 2\n : Math.random() * (column.getSize() - column.getSize() / 3) +\n column.getSize() / 3,\n [],\n );\n\n const isEditable =\n (enableEditing || columnDef.enableEditing) &&\n columnDef.enableEditing !== false;\n\n const isEditing =\n isEditable &&\n (editingMode === 'table' ||\n currentEditingRow?.id === row.id ||\n currentEditingCell?.id === cell.id);\n\n const handleDoubleClick = (_event: MouseEvent<HTMLTableCellElement>) => {\n if (\n (enableEditing || columnDef.enableEditing) &&\n columnDef.enableEditing !== false &&\n editingMode === 'cell'\n ) {\n setCurrentEditingCell(cell);\n setTimeout(() => {\n const textField = document.getElementById(\n `mrt-${tableId}-edit-cell-text-field-${cell.id}`,\n ) as HTMLInputElement;\n if (textField) {\n textField.focus();\n textField.select();\n }\n }, 200);\n }\n };\n\n const getIsLastLeftPinnedColumn = () => {\n return (\n column.getIsPinned() === 'left' &&\n table.getLeftLeafHeaders().length - 1 === column.getPinnedIndex()\n );\n };\n\n const getIsFirstRightPinnedColumn = () => {\n return column.getIsPinned() === 'right' && column.getPinnedIndex() === 0;\n };\n\n const getTotalRight = () => {\n return (\n (table.getRightLeafHeaders().length - 1 - column.getPinnedIndex()) * 150\n );\n };\n\n const handleDragEnter = (_e: DragEvent) => {\n if (enableColumnOrdering && currentDraggingColumn) {\n setCurrentHoveredColumn(\n columnDef.enableColumnOrdering !== false ? column : null,\n );\n }\n };\n\n const draggingBorder =\n currentDraggingColumn?.id === column.id\n ? `1px dashed ${theme.palette.divider}`\n : currentHoveredColumn?.id === column.id\n ? `2px dashed ${theme.palette.primary.main}`\n : undefined;\n\n const draggingBorders = draggingBorder\n ? {\n borderLeft: draggingBorder,\n borderRight: draggingBorder,\n borderBottom:\n row.index === table.getRowModel().rows.length - 1\n ? draggingBorder\n : undefined,\n }\n : undefined;\n\n return (\n <TableCell\n onDoubleClick={handleDoubleClick}\n onDragEnter={handleDragEnter}\n {...tableCellProps}\n sx={(theme) => ({\n backgroundColor: column.getIsPinned()\n ? alpha(lighten(theme.palette.background.default, 0.04), 0.95)\n : undefined,\n boxShadow: getIsLastLeftPinnedColumn()\n ? `4px 0 4px -2px ${alpha(theme.palette.common.black, 0.1)}`\n : getIsFirstRightPinnedColumn()\n ? `-4px 0 4px -2px ${alpha(theme.palette.common.black, 0.1)}`\n : undefined,\n cursor: isEditable && editingMode === 'cell' ? 'pointer' : 'text',\n left:\n column.getIsPinned() === 'left'\n ? `${column.getStart('left')}px`\n : undefined,\n opacity:\n currentDraggingColumn?.id === column.id ||\n currentHoveredColumn?.id === column.id\n ? 0.5\n : 1,\n overflow: 'hidden',\n p:\n density === 'compact'\n ? columnDefType === 'display'\n ? '0 0.5rem'\n : '0.5rem'\n : density === 'comfortable'\n ? columnDefType === 'display'\n ? '0.5rem 0.75rem'\n : '1rem'\n : columnDefType === 'display'\n ? '1rem 1.25rem'\n : '1.5rem',\n pl:\n column.id === 'mrt-row-expand'\n ? `${\n row.depth +\n (density === 'compact'\n ? 0.5\n : density === 'comfortable'\n ? 0.75\n : 1.25)\n }rem`\n : undefined,\n position: column.getIsPinned() ? 'sticky' : 'relative',\n right:\n column.getIsPinned() === 'right' ? `${getTotalRight()}px` : undefined,\n textOverflow: columnDefType !== 'display' ? 'ellipsis' : undefined,\n transition: 'all 0.2s ease-in-out',\n whiteSpace: density === 'compact' ? 'nowrap' : 'normal',\n zIndex:\n currentDraggingColumn?.id === column.id\n ? 2\n : column.getIsPinned()\n ? 1\n : undefined,\n '&:hover': {\n backgroundColor:\n enableHover && enableEditing && editingMode !== 'row'\n ? theme.palette.mode === 'dark'\n ? `${lighten(\n theme.palette.background.default,\n 0.13,\n )} !important`\n : `${darken(theme.palette.background.default, 0.07)} !important`\n : undefined,\n },\n ...(tableCellProps?.sx as any),\n ...draggingBorders,\n maxWidth: `min(${column.getSize()}px, fit-content)`,\n minWidth: `max(${column.getSize()}px, ${columnDef.minSize ?? 30}px)`,\n width: column.getSize(),\n })}\n >\n <>\n {cell.getIsPlaceholder() ? null : isLoading || showSkeletons ? (\n <Skeleton\n animation=\"wave\"\n height={20}\n width={skeletonWidth}\n {...muiTableBodyCellSkeletonProps}\n />\n ) : enableRowNumbers &&\n rowNumberMode === 'static' &&\n column.id === 'mrt-row-numbers' ? (\n rowIndex + 1\n ) : column.id === 'mrt-row-drag' ? (\n <MRT_TableBodyRowGrabHandle\n cell={cell}\n rowRef={rowRef}\n table={table}\n />\n ) : columnDefType === 'display' ? (\n columnDef.Cell?.({ cell, table })\n ) : isEditing ? (\n <MRT_EditCellTextField cell={cell} table={table} />\n ) : (enableClickToCopy || columnDef.enableClickToCopy) &&\n columnDef.enableClickToCopy !== false ? (\n <>\n <MRT_CopyButton cell={cell} table={table}>\n <>{columnDef?.Cell?.({ cell, table }) ?? cell.renderValue()}</>\n </MRT_CopyButton>\n {cell.getIsGrouped() && <> ({row.subRows?.length})</>}\n </>\n ) : (\n <>\n {columnDef?.Cell?.({ cell, table }) ?? cell.renderValue()}\n {cell.getIsGrouped() && <> ({row.subRows?.length ?? ''})</>}\n </>\n )}\n </>\n </TableCell>\n );\n};\n","import React, { FC } from 'react';\nimport { Collapse, TableCell, TableRow } from '@mui/material';\nimport type { MRT_Row, MRT_TableInstance } from '..';\n\ninterface Props {\n row: MRT_Row;\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableDetailPanel: FC<Props> = ({ row, table }) => {\n const {\n getVisibleLeafColumns,\n options: {\n muiTableBodyRowProps,\n muiTableDetailPanelProps,\n renderDetailPanel,\n },\n } = table;\n\n const tableRowProps =\n muiTableBodyRowProps instanceof Function\n ? muiTableBodyRowProps({ row, table })\n : muiTableBodyRowProps;\n\n const tableCellProps =\n muiTableDetailPanelProps instanceof Function\n ? muiTableDetailPanelProps({ row, table })\n : muiTableDetailPanelProps;\n\n return (\n <TableRow {...tableRowProps}>\n <TableCell\n colSpan={getVisibleLeafColumns().length}\n {...tableCellProps}\n sx={{\n borderBottom: !row.getIsExpanded() ? 'none' : undefined,\n pb: row.getIsExpanded() ? '1rem' : 0,\n pt: row.getIsExpanded() ? '1rem' : 0,\n transition: 'all 0.2s ease-in-out',\n width: `${table.getTotalSize()}px`,\n ...tableCellProps?.sx,\n }}\n >\n {renderDetailPanel && (\n <Collapse in={row.getIsExpanded()}>\n {renderDetailPanel({ row, table })}\n </Collapse>\n )}\n </TableCell>\n </TableRow>\n );\n};\n","import React, { DragEvent, FC, useRef } from 'react';\nimport { darken, lighten, TableRow, useTheme } from '@mui/material';\nimport { MRT_TableBodyCell } from './MRT_TableBodyCell';\nimport { MRT_TableDetailPanel } from './MRT_TableDetailPanel';\nimport type { MRT_Row, MRT_TableInstance } from '..';\n\ninterface Props {\n row: MRT_Row;\n rowIndex: number;\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableBodyRow: FC<Props> = ({ row, rowIndex, table }) => {\n const theme = useTheme();\n const {\n getIsSomeColumnsPinned,\n getState,\n options: { enableRowOrdering, muiTableBodyRowProps, renderDetailPanel },\n setCurrentHoveredRow,\n } = table;\n const { currentDraggingRow, currentHoveredRow } = getState();\n\n const tableRowProps =\n muiTableBodyRowProps instanceof Function\n ? muiTableBodyRowProps({ row, table })\n : muiTableBodyRowProps;\n\n const handleDragEnter = (_e: DragEvent) => {\n if (enableRowOrdering && currentDraggingRow) {\n setCurrentHoveredRow(row);\n }\n };\n\n const rowRef = useRef<HTMLTableRowElement>(null);\n\n const draggingBorder =\n currentDraggingRow?.id === row.id\n ? `1px dashed ${theme.palette.divider}`\n : currentHoveredRow?.id === row.id\n ? `2px dashed ${theme.palette.primary.main}`\n : undefined;\n\n const draggingBorders = draggingBorder\n ? {\n border: draggingBorder,\n }\n : undefined;\n\n return (\n <>\n <TableRow\n onDragEnter={handleDragEnter}\n hover\n selected={row.getIsSelected()}\n ref={rowRef}\n {...tableRowProps}\n sx={(theme) => ({\n backgroundColor: lighten(theme.palette.background.default, 0.06),\n opacity:\n currentDraggingRow?.id === row.id ||\n currentHoveredRow?.id === row.id\n ? 0.5\n : 1,\n transition: 'all 0.2s ease-in-out',\n '&:hover td': {\n backgroundColor:\n tableRowProps?.hover !== false && getIsSomeColumnsPinned()\n ? theme.palette.mode === 'dark'\n ? `${lighten(theme.palette.background.default, 0.12)}`\n : `${darken(theme.palette.background.default, 0.05)}`\n : undefined,\n },\n ...(tableRowProps?.sx as any),\n ...draggingBorders,\n })}\n >\n {row?.getVisibleCells()?.map?.((cell) => (\n <MRT_TableBodyCell\n cell={cell}\n key={cell.id}\n enableHover={tableRowProps?.hover !== false}\n rowIndex={rowIndex}\n rowRef={rowRef}\n table={table}\n />\n ))}\n </TableRow>\n {renderDetailPanel && !row.getIsGrouped() && (\n <MRT_TableDetailPanel row={row} table={table} />\n )}\n </>\n );\n};\n","import React, { FC, RefObject, useMemo } from 'react';\nimport { useVirtual } from 'react-virtual';\nimport { TableBody } from '@mui/material';\nimport { MRT_TableBodyRow } from './MRT_TableBodyRow';\nimport { rankGlobalFuzzy } from '../sortingFns';\nimport type { MRT_Row, MRT_TableInstance } from '..';\n\ninterface Props {\n table: MRT_TableInstance;\n tableContainerRef: RefObject<HTMLDivElement>;\n}\n\nexport const MRT_TableBody: FC<Props> = ({ table, tableContainerRef }) => {\n const {\n getRowModel,\n getPrePaginationRowModel,\n getState,\n options: {\n enableGlobalFilterRankedResults,\n enablePagination,\n enableRowVirtualization,\n muiTableBodyProps,\n virtualizerProps,\n },\n } = table;\n const { density, globalFilter, pagination, sorting } = getState();\n\n const tableBodyProps =\n muiTableBodyProps instanceof Function\n ? muiTableBodyProps({ table })\n : muiTableBodyProps;\n\n const getIsSomeColumnsSorted = () => {\n return Object.values(sorting).some(Boolean);\n };\n\n const rows = useMemo(() => {\n if (\n enableGlobalFilterRankedResults &&\n globalFilter &&\n !getIsSomeColumnsSorted()\n ) {\n const rankedRows = getPrePaginationRowModel().rows.sort((a, b) =>\n rankGlobalFuzzy(a, b),\n );\n if (enablePagination) {\n return rankedRows.slice(0, pagination.pageSize);\n }\n return rankedRows;\n }\n\n return enablePagination\n ? getRowModel().rows\n : getPrePaginationRowModel().rows;\n }, [\n enableGlobalFilterRankedResults,\n (enableGlobalFilterRankedResults && globalFilter) || !enablePagination\n ? getPrePaginationRowModel().rows\n : getRowModel().rows,\n globalFilter,\n ]);\n\n const rowVirtualizer = enableRowVirtualization\n ? useVirtual({\n // estimateSize: () => (density === 'compact' ? 25 : 50),\n overscan: density === 'compact' ? 30 : 10,\n parentRef: tableContainerRef,\n size: rows.length,\n ...virtualizerProps,\n })\n : ({} as any);\n\n const virtualRows = enableRowVirtualization\n ? rowVirtualizer.virtualItems\n : [];\n\n let paddingTop = 0;\n let paddingBottom = 0;\n if (enableRowVirtualization) {\n paddingTop = virtualRows.length > 0 ? virtualRows[0].start : 0;\n paddingBottom =\n virtualRows.length > 0\n ? rowVirtualizer.totalSize - virtualRows[virtualRows.length - 1].end\n : 0;\n }\n\n return (\n <TableBody {...tableBodyProps}>\n {enableRowVirtualization && paddingTop > 0 && (\n <tr>\n <td style={{ height: `${paddingTop}px` }} />\n </tr>\n )}\n {(enableRowVirtualization ? virtualRows : rows).map(\n (rowOrVirtualRow: any, rowIndex: number) => {\n const row = enableRowVirtualization\n ? (rows[rowOrVirtualRow.index] as MRT_Row)\n : (rowOrVirtualRow as MRT_Row);\n return (\n <MRT_TableBodyRow\n key={row.id}\n row={row}\n rowIndex={\n enableRowVirtualization ? rowOrVirtualRow.index : rowIndex\n }\n table={table}\n />\n );\n },\n )}\n {enableRowVirtualization && paddingBottom > 0 && (\n <tr>\n <td style={{ height: `${paddingBottom}px` }} />\n </tr>\n )}\n </TableBody>\n );\n};\n","import React, { FC } from 'react';\nimport { alpha, TableCell } from '@mui/material';\nimport type { MRT_Header, MRT_TableInstance } from '..';\n\ninterface Props {\n footer: MRT_Header;\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableFooterCell: FC<Props> = ({ footer, table }) => {\n const {\n getState,\n options: { muiTableFooterCellProps, enableColumnResizing },\n } = table;\n const { density } = getState();\n const { column } = footer;\n const { columnDef } = column;\n const { columnDefType } = columnDef;\n\n const mTableFooterCellProps =\n muiTableFooterCellProps instanceof Function\n ? muiTableFooterCellProps({ column, table })\n : muiTableFooterCellProps;\n\n const mcTableFooterCellProps =\n columnDef.muiTableFooterCellProps instanceof Function\n ? columnDef.muiTableFooterCellProps({ column, table })\n : columnDef.muiTableFooterCellProps;\n\n const tableCellProps = {\n ...mTableFooterCellProps,\n ...mcTableFooterCellProps,\n };\n\n return (\n <TableCell\n align={columnDefType === 'group' ? 'center' : 'left'}\n colSpan={footer.colSpan}\n variant=\"head\"\n {...tableCellProps}\n sx={(theme) => ({\n backgroundColor: theme.palette.background.default,\n backgroundImage: `linear-gradient(${alpha(\n theme.palette.common.white,\n 0.05,\n )},${alpha(theme.palette.common.white, 0.05)})`,\n fontWeight: 'bold',\n maxWidth: `${column.getSize()}px`,\n minWidth: `${column.getSize()}px`,\n p:\n density === 'compact'\n ? '0.5rem'\n : density === 'comfortable'\n ? '1rem'\n : '1.5rem',\n transition: `all ${enableColumnResizing ? '10ms' : '0.2s'} ease-in-out`,\n width: column.getSize(),\n verticalAlign: 'text-top',\n ...(tableCellProps?.sx as any),\n })}\n >\n <>\n {footer.isPlaceholder\n ? null\n : (columnDef.Footer instanceof Function\n ? columnDef.Footer?.({\n footer,\n table,\n })\n : columnDef.Footer) ??\n columnDef.footer ??\n null}\n </>\n </TableCell>\n );\n};\n","import React, { FC } from 'react';\nimport { TableRow } from '@mui/material';\nimport { MRT_TableFooterCell } from './MRT_TableFooterCell';\nimport type { MRT_Header, MRT_HeaderGroup, MRT_TableInstance } from '..';\n\ninterface Props {\n footerGroup: MRT_HeaderGroup;\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableFooterRow: FC<Props> = ({ footerGroup, table }) => {\n const {\n options: { muiTableFooterRowProps },\n } = table;\n\n // if no content in row, skip row\n if (\n !footerGroup.headers?.some(\n (header) =>\n (typeof header.column.columnDef.footer === 'string' &&\n !!header.column.columnDef.footer) ||\n header.column.columnDef.Footer,\n )\n )\n return null;\n\n const tableRowProps =\n muiTableFooterRowProps instanceof Function\n ? muiTableFooterRowProps({ footerGroup, table })\n : muiTableFooterRowProps;\n\n return (\n <TableRow {...tableRowProps}>\n {footerGroup.headers.map((footer: MRT_Header) => (\n <MRT_TableFooterCell footer={footer} key={footer.id} table={table} />\n ))}\n </TableRow>\n );\n};\n","import React, { FC } from 'react';\nimport { TableFooter } from '@mui/material';\nimport { MRT_TableFooterRow } from './MRT_TableFooterRow';\nimport type { MRT_TableInstance } from '..';\n\ninterface Props {\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableFooter: FC<Props> = ({ table }) => {\n const {\n getFooterGroups,\n options: { muiTableFooterProps },\n } = table;\n\n const tableFooterProps =\n muiTableFooterProps instanceof Function\n ? muiTableFooterProps({ table })\n : muiTableFooterProps;\n\n return (\n <TableFooter {...tableFooterProps}>\n {getFooterGroups().map((footerGroup) => (\n <MRT_TableFooterRow\n footerGroup={footerGroup as any}\n key={footerGroup.id}\n table={table}\n />\n ))}\n </TableFooter>\n );\n};\n","import React, { FC, RefObject } from 'react';\nimport { Table } from '@mui/material';\nimport { MRT_TableHead } from '../head/MRT_TableHead';\nimport { MRT_TableBody } from '../body/MRT_TableBody';\nimport { MRT_TableFooter } from '../footer/MRT_TableFooter';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n tableContainerRef: RefObject<HTMLDivElement>;\n table: MRT_TableInstance;\n}\n\nexport const MRT_Table: FC<Props> = ({ tableContainerRef, table }) => {\n const {\n getState,\n options: {\n enableColumnResizing,\n enableRowVirtualization,\n enableStickyHeader,\n enableTableFooter,\n enableTableHead,\n muiTableProps,\n },\n } = table;\n const { isFullScreen } = getState();\n\n const tableProps =\n muiTableProps instanceof Function\n ? muiTableProps({ table })\n : muiTableProps;\n\n return (\n <Table\n stickyHeader={\n enableStickyHeader || enableRowVirtualization || isFullScreen\n }\n {...tableProps}\n sx={{\n tableLayout:\n enableColumnResizing || enableRowVirtualization ? 'fixed' : 'auto',\n ...tableProps?.sx,\n }}\n >\n {enableTableHead && <MRT_TableHead table={table} />}\n <MRT_TableBody tableContainerRef={tableContainerRef} table={table} />\n {enableTableFooter && <MRT_TableFooter table={table} />}\n </Table>\n );\n};\n","import React, { FC, useEffect, useLayoutEffect, useState } from 'react';\nimport { TableContainer } from '@mui/material';\nimport { MRT_Table } from './MRT_Table';\nimport type { MRT_TableInstance } from '..';\n\nconst useIsomorphicLayoutEffect =\n typeof window !== 'undefined' ? useLayoutEffect : useEffect;\n\ninterface Props {\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableContainer: FC<Props> = ({ table }) => {\n const {\n getState,\n options: {\n enableStickyHeader,\n enableRowVirtualization,\n muiTableContainerProps,\n tableId,\n },\n } = table;\n const { isFullScreen } = getState();\n\n const [totalToolbarHeight, setTotalToolbarHeight] = useState(0);\n\n const tableContainerProps =\n muiTableContainerProps instanceof Function\n ? muiTableContainerProps({ table })\n : muiTableContainerProps;\n\n useIsomorphicLayoutEffect(() => {\n const topToolbarHeight =\n typeof document !== 'undefined'\n ? document?.getElementById(`mrt-${tableId}-toolbar-top`)\n ?.offsetHeight ?? 0\n : 0;\n\n const bottomToolbarHeight =\n typeof document !== 'undefined'\n ? document?.getElementById(`mrt-${tableId}-toolbar-bottom`)\n ?.offsetHeight ?? 0\n : 0;\n\n setTotalToolbarHeight(topToolbarHeight + bottomToolbarHeight);\n });\n\n const tableContainerRef = React.useRef<HTMLDivElement>(null);\n\n return (\n <TableContainer\n ref={tableContainerRef}\n {...tableContainerProps}\n sx={{\n maxWidth: '100%',\n maxHeight:\n enableStickyHeader || enableRowVirtualization\n ? `clamp(350px, calc(100vh - ${totalToolbarHeight}px), 9999px)`\n : undefined,\n overflow: 'auto',\n ...tableContainerProps?.sx,\n }}\n style={{\n maxHeight: isFullScreen\n ? `calc(100vh - ${totalToolbarHeight}px)`\n : undefined,\n ...tableContainerProps?.style,\n }}\n >\n <MRT_Table tableContainerRef={tableContainerRef} table={table} />\n </TableContainer>\n );\n};\n","import React, { FC, useEffect } from 'react';\nimport { Paper } from '@mui/material';\nimport { MRT_ToolbarTop } from '../toolbar/MRT_ToolbarTop';\nimport { MRT_ToolbarBottom } from '../toolbar/MRT_ToolbarBottom';\nimport { MRT_TableContainer } from './MRT_TableContainer';\nimport type { MRT_TableInstance } from '..';\n\ninterface Props {\n table: MRT_TableInstance;\n}\n\nexport const MRT_TablePaper: FC<Props> = ({ table }) => {\n const {\n getState,\n options: { enableToolbarBottom, enableToolbarTop, muiTablePaperProps },\n } = table;\n const { isFullScreen } = getState();\n\n useEffect(() => {\n if (typeof window !== 'undefined') {\n if (isFullScreen) {\n document.body.style.height = '100vh';\n } else {\n document.body.style.height = 'auto';\n }\n }\n }, [isFullScreen]);\n\n const tablePaperProps =\n muiTablePaperProps instanceof Function\n ? muiTablePaperProps({ table })\n : muiTablePaperProps;\n\n return (\n <Paper\n elevation={2}\n {...tablePaperProps}\n sx={{\n transition: 'all 0.2s ease-in-out',\n ...tablePaperProps?.sx,\n }}\n style={{\n ...tablePaperProps?.style,\n height: isFullScreen ? '100vh' : undefined,\n margin: isFullScreen ? '0' : undefined,\n maxHeight: isFullScreen ? '100vh' : undefined,\n maxWidth: isFullScreen ? '100vw' : undefined,\n padding: isFullScreen ? '0' : undefined,\n width: isFullScreen ? '100vw' : undefined,\n }}\n >\n {enableToolbarTop && <MRT_ToolbarTop table={table} />}\n <MRT_TableContainer table={table} />\n {enableToolbarBottom && <MRT_ToolbarBottom table={table} />}\n </Paper>\n );\n};\n","import React, { useEffect, useMemo, useState } from 'react';\nimport {\n TableState,\n getCoreRowModel,\n getExpandedRowModel,\n getFacetedRowModel,\n getFilteredRowModel,\n getGroupedRowModel,\n getPaginationRowModel,\n getSortedRowModel,\n useReactTable,\n} from '@tanstack/react-table';\nimport {\n MRT_Cell,\n MRT_Column,\n MRT_ColumnDef,\n MRT_FilterOption,\n MRT_Row,\n MRT_TableInstance,\n MRT_TableState,\n} from '..';\nimport { MRT_ExpandAllButton } from '../buttons/MRT_ExpandAllButton';\nimport { MRT_ExpandButton } from '../buttons/MRT_ExpandButton';\nimport { MRT_ToggleRowActionMenuButton } from '../buttons/MRT_ToggleRowActionMenuButton';\nimport { MRT_SelectCheckbox } from '../inputs/MRT_SelectCheckbox';\nimport { MaterialReactTableProps } from '../MaterialReactTable';\nimport { MRT_TablePaper } from './MRT_TablePaper';\nimport { Box, Dialog, Grow } from '@mui/material';\nimport {\n prepareColumns,\n getAllLeafColumnDefs,\n getDefaultColumnOrderIds,\n} from '../utils';\nimport { MRT_FilterFns } from '../filtersFns';\n\nconst defaultDisplayColumnDefOptions = {\n columnDefType: 'display',\n enableClickToCopy: false,\n enableColumnActions: false,\n enableColumnDragging: false,\n enableColumnFilter: false,\n enableColumnOrdering: false,\n enableEditing: false,\n enableGlobalFilter: false,\n enableGrouping: false,\n enableHiding: false,\n enablePinning: false,\n enableResizing: false,\n enableSorting: false,\n} as Partial<MRT_ColumnDef>;\n\nexport const MRT_TableRoot = <TData extends Record<string, any> = {}>(\n props: MaterialReactTableProps<TData>,\n) => {\n const [tableId, setIdPrefix] = useState(props.tableId);\n useEffect(\n () =>\n setIdPrefix(props.tableId ?? Math.random().toString(36).substring(2, 9)),\n [props.tableId],\n );\n\n const initialState: Partial<MRT_TableState<TData>> = useMemo(() => {\n const initState = props.initialState ?? {};\n initState.columnOrder =\n initState.columnOrder ?? getDefaultColumnOrderIds(props);\n return initState;\n }, []);\n\n const [columnOrder, setColumnOrder] = useState(\n initialState.columnOrder ?? [],\n );\n const [currentDraggingColumn, setCurrentDraggingColumn] =\n useState<MRT_Column<TData> | null>(\n initialState.currentDraggingColumn ?? null,\n );\n const [currentDraggingRow, setCurrentDraggingRow] =\n useState<MRT_Row<TData> | null>(initialState.currentDraggingRow ?? null);\n const [currentEditingCell, setCurrentEditingCell] =\n useState<MRT_Cell<TData> | null>(initialState.currentEditingCell ?? null);\n const [currentEditingRow, setCurrentEditingRow] =\n useState<MRT_Row<TData> | null>(initialState.currentEditingRow ?? null);\n const [currentHoveredColumn, setCurrentHoveredColumn] =\n useState<MRT_Column<TData> | null>(\n initialState.currentHoveredColumn ?? null,\n );\n const [currentHoveredRow, setCurrentHoveredRow] =\n useState<MRT_Row<TData> | null>(initialState.currentHoveredRow ?? null);\n const [density, setDensity] = useState(\n initialState?.density ?? 'comfortable',\n );\n const [isFullScreen, setIsFullScreen] = useState(\n initialState?.isFullScreen ?? false,\n );\n const [showAlertBanner, setShowAlertBanner] = useState(\n props.initialState?.showAlertBanner ?? false,\n );\n const [showColumnFilters, setShowFilters] = useState(\n initialState?.showColumnFilters ?? false,\n );\n const [showGlobalFilter, setShowGlobalFilter] = useState(\n initialState?.showGlobalFilter ?? false,\n );\n const [currentFilterFns, setCurrentFilterFns] = useState<{\n [key: string]: MRT_FilterOption;\n }>(() =>\n Object.assign(\n {},\n ...getAllLeafColumnDefs(props.columns as MRT_ColumnDef<TData>[]).map(\n (col) => ({\n [col.id?.toString() ?? col.accessorKey?.toString() ?? '']:\n col.filterFn instanceof Function\n ? col.filterFn.name ?? 'custom'\n : col.filterFn ??\n initialState?.currentFilterFns?.[\n col.id?.toString() ?? col.accessorKey?.toString() ?? ''\n ] ??\n (!!col.filterSelectOptions?.length ? 'equals' : 'fuzzy'),\n }),\n ),\n ),\n );\n const [currentGlobalFilterFn, setCurrentGlobalFilterFn] =\n useState<MRT_FilterOption>(\n props.globalFilterFn instanceof String\n ? (props.globalFilterFn as MRT_FilterOption)\n : 'fuzzy',\n );\n\n const displayColumns = useMemo(\n () =>\n (\n [\n columnOrder.includes('mrt-row-drag') && {\n header: props.localization?.move,\n size: 60,\n ...defaultDisplayColumnDefOptions,\n ...props.displayColumnDefOptions?.['mrt-row-drag'],\n id: 'mrt-row-drag',\n },\n columnOrder.includes('mrt-row-actions') && {\n Cell: ({ cell }) => (\n <MRT_ToggleRowActionMenuButton\n row={cell.row as any}\n table={table}\n />\n ),\n header: props.localization?.actions,\n size: 70,\n ...defaultDisplayColumnDefOptions,\n ...props.displayColumnDefOptions?.['mrt-row-actions'],\n id: 'mrt-row-actions',\n },\n columnOrder.includes('mrt-row-expand') && {\n Cell: ({ cell }) => (\n <MRT_ExpandButton row={cell.row as any} table={table} />\n ),\n Header: () =>\n props.enableExpandAll ? (\n <MRT_ExpandAllButton table={table} />\n ) : null,\n header: props.localization?.expand,\n size: 60,\n ...defaultDisplayColumnDefOptions,\n ...props.displayColumnDefOptions?.['mrt-row-expand'],\n id: 'mrt-row-expand',\n },\n columnOrder.includes('mrt-row-select') && {\n Cell: ({ cell }) => (\n <MRT_SelectCheckbox row={cell.row as any} table={table} />\n ),\n Header: () =>\n props.enableSelectAll ? (\n <MRT_SelectCheckbox selectAll table={table} />\n ) : null,\n header: props.localization?.select,\n size: 60,\n ...defaultDisplayColumnDefOptions,\n ...props.displayColumnDefOptions?.['mrt-row-select'],\n id: 'mrt-row-select',\n },\n columnOrder.includes('mrt-row-numbers') && {\n Cell: ({ cell }) => cell.row.index + 1,\n Header: () => props.localization?.rowNumber,\n header: props.localization?.rowNumbers,\n size: 60,\n ...defaultDisplayColumnDefOptions,\n ...props.displayColumnDefOptions?.['mrt-row-numbers'],\n id: 'mrt-row-numbers',\n },\n ] as MRT_ColumnDef<TData>[]\n ).filter(Boolean),\n [\n columnOrder,\n props.displayColumnDefOptions,\n props.editingMode,\n props.enableColumnDragging,\n props.enableColumnOrdering,\n props.enableEditing,\n props.enableExpandAll,\n props.enableExpanding,\n props.enableGrouping,\n props.enableRowActions,\n props.enableRowDragging,\n props.enableRowNumbers,\n props.enableRowOrdering,\n props.enableRowSelection,\n props.enableSelectAll,\n props.localization,\n props.muiTableBodyCellProps,\n props.muiTableHeadCellProps,\n props.positionActionsColumn,\n ],\n );\n\n const columnDefs = useMemo(\n () =>\n prepareColumns([...displayColumns, ...props.columns], currentFilterFns),\n [currentFilterFns, displayColumns, props.columns],\n );\n\n const data: TData[] = useMemo(\n () =>\n (props.state?.isLoading || props.state?.showSkeletons) &&\n !props.data.length\n ? [...Array(10).fill(null)].map(() =>\n Object.assign(\n {},\n ...getAllLeafColumnDefs(props.columns as MRT_ColumnDef[]).map(\n (col) => ({\n [col.id ?? col.accessorKey ?? '']: null,\n }),\n ),\n ),\n )\n : props.data,\n [props.data, props.state?.isLoading, props.state?.showSkeletons],\n );\n\n //@ts-ignore\n const table = {\n ...useReactTable({\n getCoreRowModel: getCoreRowModel(),\n getExpandedRowModel: getExpandedRowModel(),\n getFacetedRowModel: getFacetedRowModel(),\n getFilteredRowModel: getFilteredRowModel(),\n getGroupedRowModel: getGroupedRowModel(),\n getPaginationRowModel: getPaginationRowModel(),\n getSortedRowModel: getSortedRowModel(),\n onColumnOrderChange: setColumnOrder,\n ...props,\n //@ts-ignore\n columns: columnDefs,\n data,\n getSubRows: (row) => row?.subRows,\n //@ts-ignore\n globalFilterFn:\n MRT_FilterFns[currentGlobalFilterFn] ?? MRT_FilterFns.fuzzy,\n initialState,\n state: {\n columnOrder,\n currentDraggingColumn,\n currentDraggingRow,\n currentEditingCell,\n currentEditingRow,\n currentFilterFns,\n currentGlobalFilterFn,\n currentHoveredColumn,\n currentHoveredRow,\n density,\n isFullScreen,\n showAlertBanner,\n showColumnFilters,\n showGlobalFilter,\n ...props.state,\n } as TableState,\n tableId,\n }),\n setCurrentDraggingColumn:\n props.onCurrentDraggingColumnChange ?? setCurrentDraggingColumn,\n setCurrentDraggingRow:\n props.onCurrentDraggingRowChange ?? setCurrentDraggingRow,\n setCurrentEditingCell:\n props.onCurrentEditingCellChange ?? setCurrentEditingCell,\n setCurrentEditingRow:\n props.onCurrentEditingRowChange ?? setCurrentEditingRow,\n setCurrentFilterFns: props.onCurrentFilterFnsChange ?? setCurrentFilterFns,\n setCurrentGlobalFilterFn:\n props.onCurrentGlobalFilterFnChange ?? setCurrentGlobalFilterFn,\n setCurrentHoveredColumn:\n props.onCurrentHoveredColumnChange ?? setCurrentHoveredColumn,\n setCurrentHoveredRow:\n props.onCurrentHoveredRowChange ?? setCurrentHoveredRow,\n setDensity: props.onDensityChange ?? setDensity,\n setIsFullScreen: props.onIsFullScreenChange ?? setIsFullScreen,\n setShowAlertBanner: props.onShowAlertBannerChange ?? setShowAlertBanner,\n setShowFilters: props.onShowFiltersChange ?? setShowFilters,\n setShowGlobalFilter: props.onShowGlobalFilterChange ?? setShowGlobalFilter,\n } as MRT_TableInstance;\n\n return (\n <>\n <Dialog\n PaperComponent={Box}\n TransitionComponent={Grow}\n disablePortal\n fullScreen\n keepMounted={false}\n onClose={() => setIsFullScreen(false)}\n open={isFullScreen}\n transitionDuration={400}\n >\n <MRT_TablePaper table={table} />\n </Dialog>\n {!isFullScreen && <MRT_TablePaper table={table} />}\n </>\n );\n};\n","import React, {\n ChangeEvent,\n Dispatch,\n DragEvent,\n FC,\n FocusEvent,\n ReactNode,\n SetStateAction,\n} from 'react';\nimport type {\n AlertProps,\n ButtonProps,\n CheckboxProps,\n IconButtonProps,\n LinearProgressProps,\n PaperProps,\n SkeletonProps,\n TableBodyProps,\n TableCellProps,\n TableContainerProps,\n TableFooterProps,\n TableHeadProps,\n TablePaginationProps,\n TableProps,\n TableRowProps,\n TextFieldProps,\n ToolbarProps,\n} from '@mui/material';\nimport type {\n Cell,\n Column,\n ColumnDef,\n FilterFn,\n Header,\n HeaderGroup,\n OnChangeFn,\n Row,\n SortingFn,\n Table,\n TableOptions,\n TableState,\n} from '@tanstack/react-table';\nimport type { Options as VirtualizerOptions } from 'react-virtual';\nimport { MRT_Localization, MRT_DefaultLocalization_EN } from './localization';\nimport { MRT_Default_Icons, MRT_Icons } from './icons';\nimport { MRT_TableRoot } from './table/MRT_TableRoot';\nimport { MRT_FilterFns } from './filtersFns';\nimport { MRT_SortingFns } from './sortingFns';\n\ntype LiteralUnion<T extends U, U = string> = T | (U & Record<never, never>);\n\nexport interface MRT_RowModel<TData extends Record<string, any> = {}> {\n flatRows: MRT_Row<TData>[];\n rows: MRT_Row<TData>[];\n rowsById: { [key: string]: MRT_Row<TData> };\n}\n\nexport type MRT_TableInstance<TData extends Record<string, any> = {}> = Omit<\n Table<TData>,\n | 'getAllColumns'\n | 'getAllFlatColumns'\n | 'getAllLeafColumns'\n | 'getCenterLeafColumns'\n | 'getColumn'\n | 'getExpandedRowModel'\n | 'getFlatHeaders'\n | 'getLeftLeafColumns'\n | 'getPaginationRowModel'\n | 'getPreFilteredRowModel'\n | 'getPrePaginationRowModel'\n | 'getRightLeafColumns'\n | 'getRowModel'\n | 'getSelectedRowModel'\n | 'getState'\n | 'options'\n> & {\n getAllColumns: () => MRT_Column<TData>[];\n getAllFlatColumns: () => MRT_Column<TData>[];\n getAllLeafColumns: () => MRT_Column<TData>[];\n getCenterLeafColumns: () => MRT_Column<TData>[];\n getColumn: (columnId: string) => MRT_Column<TData>;\n getExpandedRowModel: () => MRT_RowModel<TData>;\n getFlatHeaders: () => MRT_Header<TData>[];\n getLeftLeafColumns: () => MRT_Column<TData>[];\n getPaginationRowModel: () => MRT_RowModel<TData>;\n getPreFilteredRowModel: () => MRT_RowModel<TData>;\n getPrePaginationRowModel: () => MRT_RowModel<TData>;\n getRightLeafColumns: () => MRT_Column<TData>[];\n getRowModel: () => MRT_RowModel<TData>;\n getSelectedRowModel: () => MRT_RowModel<TData>;\n getState: () => MRT_TableState<TData>;\n options: MaterialReactTableProps<TData> & {\n icons: MRT_Icons;\n tableId: string;\n localization: MRT_Localization;\n };\n setCurrentDraggingColumn: Dispatch<SetStateAction<MRT_Column<TData> | null>>;\n setCurrentDraggingRow: Dispatch<SetStateAction<MRT_Row<TData> | null>>;\n setCurrentEditingCell: Dispatch<SetStateAction<MRT_Cell | null>>;\n setCurrentEditingRow: Dispatch<SetStateAction<MRT_Row | null>>;\n setCurrentFilterFns: Dispatch<\n SetStateAction<{\n [key: string]: MRT_FilterOption;\n }>\n >;\n setCurrentGlobalFilterFn: Dispatch<SetStateAction<MRT_FilterOption>>;\n setCurrentHoveredColumn: Dispatch<SetStateAction<MRT_Column<TData> | null>>;\n setCurrentHoveredRow: Dispatch<SetStateAction<MRT_Row | null>>;\n setDensity: Dispatch<SetStateAction<'comfortable' | 'compact' | 'spacious'>>;\n setIsFullScreen: Dispatch<SetStateAction<boolean>>;\n setShowAlertBanner: Dispatch<SetStateAction<boolean>>;\n setShowFilters: Dispatch<SetStateAction<boolean>>;\n setShowGlobalFilter: Dispatch<SetStateAction<boolean>>;\n};\n\nexport type MRT_TableState<TData extends Record<string, any> = {}> =\n TableState & {\n currentDraggingColumn: MRT_Column<TData> | null;\n currentDraggingRow: MRT_Row<TData> | null;\n currentEditingCell: MRT_Cell<TData> | null;\n currentEditingRow: MRT_Row<TData> | null;\n currentFilterFns: Record<string, MRT_FilterOption>;\n currentGlobalFilterFn: Record<string, MRT_FilterOption>;\n currentHoveredColumn: MRT_Column<TData> | null;\n currentHoveredRow: MRT_Row<TData> | null;\n density: 'comfortable' | 'compact' | 'spacious';\n isFullScreen: boolean;\n isLoading: boolean;\n showAlertBanner: boolean;\n showColumnFilters: boolean;\n showGlobalFilter: boolean;\n showProgressBars: boolean;\n showSkeletons: boolean;\n };\n\nexport type MRT_ColumnDef<TData extends Record<string, any> = {}> = Omit<\n ColumnDef<TData>,\n | 'accessorFn'\n | 'accessorKey'\n | 'aggregatedCell'\n | 'cell'\n | 'columns'\n | 'filterFn'\n | 'footer'\n | 'header'\n | 'id'\n | 'sortingFn'\n> & {\n AggregatedCell?: ({\n cell,\n table,\n }: {\n cell: MRT_Cell<TData>;\n table: MRT_TableInstance<TData>;\n }) => ReactNode;\n Cell?: ({\n cell,\n table,\n }: {\n cell: MRT_Cell<TData>;\n table: MRT_TableInstance<TData>;\n }) => ReactNode;\n Edit?: ({\n cell,\n table,\n }: {\n cell: MRT_Cell<TData>;\n table: MRT_TableInstance<TData>;\n }) => ReactNode;\n Filter?: ({\n header,\n table,\n }: {\n header: MRT_Header<TData>;\n table: MRT_TableInstance<TData>;\n }) => ReactNode;\n Footer?:\n | ReactNode\n | (({\n footer,\n table,\n }: {\n footer: MRT_Header<TData>;\n table: MRT_TableInstance<TData>;\n }) => ReactNode);\n Header?:\n | ReactNode\n | (({\n header,\n table,\n }: {\n header: MRT_Header<TData>;\n table: MRT_TableInstance<TData>;\n }) => ReactNode);\n /**\n * Either an `accessorKey` or a combination of an `accessorFn` and `id` are required for a data column definition.\n * Specify a function here to point to the correct property in the data object.\n *\n * @example accessorFn: (row) => row.username\n */\n accessorFn?: (row: TData) => any;\n /**\n * Either an `accessorKey` or a combination of an `accessorFn` and `id` are required for a data column definition.\n * Specify which key in the row this column should use to access the correct data.\n *\n * @example accessorKey: 'username'\n */\n accessorKey?: string & keyof TData;\n /**\n * Specify what type of column this is. Either `data`, `display`, or `group`. Defaults to `data`.\n * Leave this blank if you are just creating a normal data column.\n *\n * @default 'data'\n *\n * @example columnDefType: 'display'\n */\n columnDefType?: 'data' | 'display' | 'group';\n columns?: MRT_ColumnDef<TData>[];\n enableClickToCopy?: boolean;\n enableColumnActions?: boolean;\n enableColumnDragging?: boolean;\n enableColumnFilterChangeMode?: boolean;\n enableColumnOrdering?: boolean;\n enableEditing?: boolean;\n enabledColumnFilterOptions?: MRT_FilterOption[] | null;\n filterFn?: MRT_FilterFn<TData>;\n filterSelectOptions?: (string | { text: string; value: string })[];\n /**\n * footer must be a string. If you want custom JSX to render the footer, you can also specify a `Footer` option. (Capital F)\n */\n footer?: string;\n /**\n * header must be a string. If you want custom JSX to render the header, you can also specify a `Header` option. (Capital H)\n */\n header: string;\n /**\n * Either an `accessorKey` or a combination of an `accessorFn` and `id` are required for a data column definition.\n *\n * If you have also specified an `accessorFn`, MRT still needs to have a valid `id` to be able to identify the column uniquely.\n *\n * `id` defaults to the `accessorKey` or `header` if not specified.\n *\n * @default gets set to the same value as `accessorKey` by default\n */\n id?: LiteralUnion<string & keyof TData>;\n muiTableBodyCellCopyButtonProps?:\n | ButtonProps\n | (({\n table,\n cell,\n }: {\n table: MRT_TableInstance<TData>;\n cell: MRT_Cell<TData>;\n }) => ButtonProps);\n muiTableBodyCellEditTextFieldProps?:\n | TextFieldProps\n | (({\n table,\n cell,\n }: {\n table: MRT_TableInstance<TData>;\n cell: MRT_Cell<TData>;\n }) => TextFieldProps);\n muiTableBodyCellProps?:\n | TableCellProps\n | (({\n table,\n cell,\n }: {\n table: MRT_TableInstance<TData>;\n cell: MRT_Cell<TData>;\n }) => TableCellProps);\n muiTableFooterCellProps?:\n | TableCellProps\n | (({\n table,\n column,\n }: {\n table: MRT_TableInstance<TData>;\n column: MRT_Column<TData>;\n }) => TableCellProps);\n muiTableHeadCellColumnActionsButtonProps?:\n | IconButtonProps\n | (({\n table,\n column,\n }: {\n table: MRT_TableInstance<TData>;\n column: MRT_Column<TData>;\n }) => IconButtonProps);\n muiTableHeadCellDragHandleProps?:\n | IconButtonProps\n | (({\n table,\n column,\n }: {\n table: MRT_TableInstance<TData>;\n column: MRT_Column<TData>;\n }) => IconButtonProps);\n muiTableHeadCellFilterTextFieldProps?:\n | TextFieldProps\n | (({\n table,\n column,\n }: {\n table: MRT_TableInstance<TData>;\n column: MRT_Column<TData>;\n }) => TextFieldProps);\n muiTableHeadCellProps?:\n | TableCellProps\n | (({\n table,\n column,\n }: {\n table: MRT_TableInstance<TData>;\n column: MRT_Column<TData>;\n }) => TableCellProps);\n onCellEditBlur?: ({\n cell,\n event,\n table,\n }: {\n event: FocusEvent<HTMLInputElement>;\n cell: MRT_Cell<TData>;\n table: MRT_TableInstance<TData>;\n }) => void;\n onCellEditChange?: ({\n cell,\n event,\n table,\n }: {\n event: ChangeEvent<HTMLInputElement>;\n cell: MRT_Cell<TData>;\n table: MRT_TableInstance<TData>;\n }) => void;\n sortingFn?: MRT_SortingFn;\n};\n\nexport type MRT_DefinedColumnDef<TData extends Record<string, any> = {}> = Omit<\n MRT_ColumnDef<TData>,\n 'id'\n> & {\n id: string;\n};\n\nexport type MRT_Column<TData extends Record<string, any> = {}> = Omit<\n Column<TData, unknown>,\n 'header' | 'footer' | 'columns' | 'columnDef' | 'filterFn'\n> & {\n columnDef: MRT_DefinedColumnDef<TData>;\n columns?: MRT_Column<TData>[];\n filterFn?: MRT_FilterFn<TData>;\n footer: string;\n header: string;\n};\n\nexport type MRT_Header<TData extends Record<string, any> = {}> = Omit<\n Header<TData, unknown>,\n 'column'\n> & {\n column: MRT_Column<TData>;\n};\n\nexport type MRT_HeaderGroup<TData extends Record<string, any> = {}> = Omit<\n HeaderGroup<TData>,\n 'headers'\n> & {\n headers: MRT_Header<TData>[];\n};\n\nexport type MRT_Row<TData extends Record<string, any> = {}> = Omit<\n Row<TData>,\n 'getVisibleCells' | 'getAllCells' | 'subRows' | '_valuesCache'\n> & {\n getAllCells: () => MRT_Cell<TData>[];\n getVisibleCells: () => MRT_Cell<TData>[];\n subRows?: MRT_Row<TData>[];\n _valuesCache?: TData;\n};\n\nexport type MRT_Cell<TData extends Record<string, any> = {}> = Omit<\n Cell<TData, unknown>,\n 'column' | 'row'\n> & {\n column: MRT_Column<TData>;\n row: MRT_Row<TData>;\n};\n\nexport type MRT_SortingOption = keyof typeof MRT_SortingFns;\n\nexport type MRT_SortingFn<TData extends Record<string, any> = {}> =\n | SortingFn<TData>\n | MRT_SortingOption;\n\nexport type MRT_FilterOption = keyof typeof MRT_FilterFns;\n\nexport type MRT_FilterFn<TData extends Record<string, any> = {}> =\n | FilterFn<TData>\n | MRT_FilterOption;\n\nexport type MRT_DisplayColumnIds =\n | 'mrt-row-drag'\n | 'mrt-row-actions'\n | 'mrt-row-expand'\n | 'mrt-row-select'\n | 'mrt-row-numbers';\n\n/**\n * `columns` and `data` props are the only required props, but there are over 150 other optional props.\n *\n * See more info on creating columns and data on the official docs site:\n * @link https://www.material-react-table.com/docs/usage\n *\n * See the full props list on the official docs site:\n * @link https://www.material-react-table.com/docs/api/props\n */\nexport type MaterialReactTableProps<TData extends Record<string, any> = {}> =\n Omit<\n Partial<TableOptions<TData>>,\n 'columns' | 'data' | 'initialState' | 'state' | 'expandRowsFn'\n > & {\n displayColumnDefOptions?: Partial<{\n [key in MRT_DisplayColumnIds]: Partial<MRT_ColumnDef>;\n }>;\n columns: MRT_ColumnDef<TData>[];\n data: TData[];\n editingMode?: 'table' | 'row' | 'cell';\n enableClickToCopy?: boolean;\n enableColumnActions?: boolean;\n enableColumnDragging?: boolean;\n enableColumnFilterChangeMode?: boolean;\n enableColumnOrdering?: boolean;\n enableDensityToggle?: boolean;\n enableEditing?: boolean;\n enableExpandAll?: boolean;\n enableFullScreenToggle?: boolean;\n enableGlobalFilterChangeMode?: boolean;\n enableGlobalFilterRankedResults?: boolean;\n enablePagination?: boolean;\n enableRowActions?: boolean;\n enableRowDragging?: boolean;\n enableRowNumbers?: boolean;\n enableRowOrdering?: boolean;\n enableRowVirtualization?: boolean;\n enableSelectAll?: boolean;\n enableStickyHeader?: boolean;\n enableTableFooter?: boolean;\n enableTableHead?: boolean;\n enableToolbarBottom?: boolean;\n enableToolbarInternalActions?: boolean;\n enableToolbarTop?: boolean;\n enabledColumnFilterOptions?: (MRT_FilterOption | string)[] | null;\n enabledGlobalFilterOptions?: (MRT_FilterOption | string)[] | null;\n expandRowsFn?: (dataRow: TData) => TData[];\n icons?: Partial<MRT_Icons>;\n initialState?: Partial<MRT_TableState<TData>>;\n localization?: Partial<MRT_Localization>;\n muiExpandAllButtonProps?:\n | IconButtonProps\n | (({ table }: { table: MRT_TableInstance<TData> }) => IconButtonProps);\n muiExpandButtonProps?:\n | IconButtonProps\n | (({\n table,\n }: {\n table: MRT_TableInstance<TData>;\n row: MRT_Row<TData>;\n }) => IconButtonProps);\n muiLinearProgressProps?:\n | LinearProgressProps\n | (({\n isTopToolbar,\n table,\n }: {\n isTopToolbar: boolean;\n table: MRT_TableInstance<TData>;\n }) => LinearProgressProps);\n muiSearchTextFieldProps?:\n | TextFieldProps\n | (({ table }: { table: MRT_TableInstance<TData> }) => TextFieldProps);\n muiSelectAllCheckboxProps?:\n | CheckboxProps\n | (({ table }: { table: MRT_TableInstance<TData> }) => CheckboxProps);\n muiSelectCheckboxProps?:\n | CheckboxProps\n | (({\n table,\n row,\n }: {\n table: MRT_TableInstance<TData>;\n row: MRT_Row<TData>;\n }) => CheckboxProps);\n muiTableBodyCellCopyButtonProps?:\n | ButtonProps\n | (({\n table,\n cell,\n }: {\n table: MRT_TableInstance<TData>;\n cell: MRT_Cell<TData>;\n }) => ButtonProps);\n muiTableBodyCellEditTextFieldProps?:\n | TextFieldProps\n | (({\n table,\n cell,\n }: {\n table: MRT_TableInstance<TData>;\n cell: MRT_Cell<TData>;\n }) => TextFieldProps);\n muiTableBodyCellProps?:\n | TableCellProps\n | (({\n table,\n cell,\n }: {\n table: MRT_TableInstance<TData>;\n cell: MRT_Cell<TData>;\n }) => TableCellProps);\n muiTableBodyCellSkeletonProps?:\n | SkeletonProps\n | (({\n table,\n cell,\n }: {\n table: MRT_TableInstance<TData>;\n cell: MRT_Cell<TData>;\n }) => SkeletonProps);\n muiTableBodyProps?:\n | TableBodyProps\n | (({ table }: { table: MRT_TableInstance<TData> }) => TableBodyProps);\n muiTableBodyRowDragHandleProps?:\n | IconButtonProps\n | (({\n table,\n row,\n }: {\n table: MRT_TableInstance<TData>;\n row: MRT_Row<TData>;\n }) => IconButtonProps);\n muiTableBodyRowProps?:\n | TableRowProps\n | (({\n table,\n row,\n }: {\n table: MRT_TableInstance<TData>;\n row: MRT_Row<TData>;\n }) => TableRowProps);\n muiTableContainerProps?:\n | TableContainerProps\n | (({\n table,\n }: {\n table: MRT_TableInstance<TData>;\n }) => TableContainerProps);\n muiTableDetailPanelProps?:\n | TableCellProps\n | (({\n table,\n row,\n }: {\n table: MRT_TableInstance<TData>;\n row: MRT_Row<TData>;\n }) => TableCellProps);\n muiTableFooterCellProps?:\n | TableCellProps\n | (({\n table,\n column,\n }: {\n table: MRT_TableInstance<TData>;\n column: MRT_Column<TData>;\n }) => TableCellProps);\n muiTableFooterProps?:\n | TableFooterProps\n | (({ table }: { table: MRT_TableInstance<TData> }) => TableFooterProps);\n muiTableFooterRowProps?:\n | TableRowProps\n | (({\n table,\n footerGroup,\n }: {\n table: MRT_TableInstance<TData>;\n footerGroup: MRT_HeaderGroup<TData>;\n }) => TableRowProps);\n muiTableHeadCellColumnActionsButtonProps?:\n | IconButtonProps\n | (({\n table,\n column,\n }: {\n table: MRT_TableInstance<TData>;\n column: MRT_Column<TData>;\n }) => IconButtonProps);\n muiTableHeadCellDragHandleProps?:\n | IconButtonProps\n | (({\n table,\n column,\n }: {\n table: MRT_TableInstance<TData>;\n column: MRT_Column<TData>;\n }) => IconButtonProps);\n muiTableHeadCellFilterTextFieldProps?:\n | TextFieldProps\n | (({\n table,\n column,\n }: {\n table: MRT_TableInstance<TData>;\n column: MRT_Column<TData>;\n }) => TextFieldProps);\n muiTableHeadCellProps?:\n | TableCellProps\n | (({\n table,\n column,\n }: {\n table: MRT_TableInstance<TData>;\n column: MRT_Column<TData>;\n }) => TableCellProps);\n muiTableHeadProps?:\n | TableHeadProps\n | (({ table }: { table: MRT_TableInstance<TData> }) => TableHeadProps);\n muiTableHeadRowProps?:\n | TableRowProps\n | (({\n table,\n headerGroup,\n }: {\n table: MRT_TableInstance<TData>;\n headerGroup: MRT_HeaderGroup<TData>;\n }) => TableRowProps);\n muiTablePaginationProps?:\n | Partial<TablePaginationProps>\n | (({\n table,\n }: {\n table: MRT_TableInstance<TData>;\n }) => Partial<TablePaginationProps>);\n muiTablePaperProps?:\n | PaperProps\n | (({ table }: { table: MRT_TableInstance<TData> }) => PaperProps);\n muiTableProps?:\n | TableProps\n | (({ table }: { table: MRT_TableInstance<TData> }) => TableProps);\n muiTableToolbarAlertBannerProps?:\n | AlertProps\n | (({ table }: { table: MRT_TableInstance<TData> }) => AlertProps);\n muiTableToolbarBottomProps?:\n | ToolbarProps\n | (({ table }: { table: MRT_TableInstance<TData> }) => ToolbarProps);\n muiTableToolbarTopProps?:\n | ToolbarProps\n | (({ table }: { table: MRT_TableInstance<TData> }) => ToolbarProps);\n onCellEditBlur?: ({\n cell,\n event,\n table,\n }: {\n event: FocusEvent<HTMLInputElement>;\n cell: MRT_Cell<TData>;\n table: MRT_TableInstance<TData>;\n }) => void;\n onCellEditChange?: ({\n cell,\n event,\n table,\n }: {\n event: ChangeEvent<HTMLInputElement>;\n cell: MRT_Cell<TData>;\n table: MRT_TableInstance<TData>;\n }) => void;\n onColumnDrop?: ({\n event,\n draggedColumn,\n targetColumn,\n }: {\n event: DragEvent<HTMLButtonElement>;\n draggedColumn: MRT_Column<TData>;\n targetColumn: MRT_Column<TData> | null;\n }) => void;\n onCurrentDraggingColumnChange?: OnChangeFn<MRT_Column<TData> | null>;\n onCurrentDraggingRowChange?: OnChangeFn<MRT_Row<TData> | null>;\n onCurrentEditingCellChange?: OnChangeFn<MRT_Cell<TData> | null>;\n onCurrentEditingRowChange?: OnChangeFn<MRT_Row<TData> | null>;\n onCurrentFilterFnsChange?: OnChangeFn<{ [key: string]: MRT_FilterOption }>;\n onCurrentGlobalFilterFnChange?: OnChangeFn<MRT_FilterOption>;\n onCurrentHoveredColumnChange?: OnChangeFn<MRT_Column<TData> | null>;\n onCurrentHoveredRowChange?: OnChangeFn<MRT_Row<TData> | null>;\n onDensityChange?: OnChangeFn<boolean>;\n onEditRowSubmit?: ({\n row,\n table,\n }: {\n row: MRT_Row<TData>;\n table: MRT_TableInstance<TData>;\n }) => Promise<void> | void;\n onIsFullScreenChange?: OnChangeFn<boolean>;\n onRowDrop?: ({\n event,\n draggedRow,\n targetRow,\n }: {\n event: DragEvent<HTMLButtonElement>;\n draggedRow: MRT_Row<TData>;\n targetRow: MRT_Row<TData> | null;\n }) => void;\n onShowAlertBannerChange?: OnChangeFn<boolean>;\n onShowFiltersChange?: OnChangeFn<boolean>;\n onShowGlobalFilterChange?: OnChangeFn<boolean>;\n positionActionsColumn?: 'first' | 'last';\n positionGlobalFilter?: 'left' | 'right';\n positionPagination?: 'bottom' | 'top' | 'both';\n positionToolbarAlertBanner?: 'bottom' | 'top';\n renderDetailPanel?: ({\n row,\n table,\n }: {\n row: MRT_Row<TData>;\n table: MRT_TableInstance<TData>;\n }) => ReactNode;\n renderRowActionMenuItems?: ({\n closeMenu,\n row,\n table,\n }: {\n closeMenu: () => void;\n row: MRT_Row<TData>;\n table: MRT_TableInstance<TData>;\n }) => ReactNode[];\n renderRowActions?: ({\n row,\n table,\n }: {\n row: MRT_Row<TData>;\n table: MRT_TableInstance<TData>;\n }) => ReactNode;\n renderToolbarBottomCustomActions?: ({\n table,\n }: {\n table: MRT_TableInstance<TData>;\n }) => ReactNode;\n renderToolbarInternalActions?: ({\n table,\n MRT_ToggleGlobalFilterButton,\n MRT_ToggleFiltersButton,\n MRT_ShowHideColumnsButton,\n MRT_ToggleDensePaddingButton,\n MRT_FullScreenToggleButton,\n }: {\n table: MRT_TableInstance<TData>;\n MRT_ToggleGlobalFilterButton: FC<\n IconButtonProps & { table: MRT_TableInstance<TData> }\n >;\n MRT_ToggleFiltersButton: FC<\n IconButtonProps & { table: MRT_TableInstance<TData> }\n >;\n MRT_ShowHideColumnsButton: FC<\n IconButtonProps & { table: MRT_TableInstance<TData> }\n >;\n MRT_ToggleDensePaddingButton: FC<\n IconButtonProps & { table: MRT_TableInstance<TData> }\n >;\n MRT_FullScreenToggleButton: FC<\n IconButtonProps & { table: MRT_TableInstance<TData> }\n >;\n }) => ReactNode;\n renderToolbarTopCustomActions?: ({\n table,\n }: {\n table: MRT_TableInstance<TData>;\n }) => ReactNode;\n rowCount?: number;\n rowNumberMode?: 'original' | 'static';\n selectAllMode?: 'all' | 'page';\n state?: Partial<MRT_TableState<TData>>;\n tableId?: string;\n virtualizerProps?: Partial<VirtualizerOptions<HTMLDivElement>>;\n };\n\nexport default <TData extends Record<string, any> = {}>({\n autoResetExpanded = false,\n columnResizeMode = 'onEnd',\n defaultColumn = { minSize: 40, maxSize: 1000, size: 180 },\n editingMode = 'row',\n enableColumnActions = true,\n enableColumnFilterChangeMode = true,\n enableColumnFilters = true,\n enableColumnOrdering = false,\n enableColumnResizing = false,\n enableDensityToggle = true,\n enableExpandAll = true,\n enableFilters = true,\n enableFullScreenToggle = true,\n enableGlobalFilter = true,\n enableGlobalFilterChangeMode = true,\n enableGlobalFilterRankedResults = true,\n enableGrouping = false,\n enableHiding = true,\n enableMultiRowSelection = true,\n enableMultiSort = true,\n enablePagination = true,\n enablePinning = false,\n enableRowSelection = false,\n enableSelectAll = true,\n enableSorting = true,\n enableStickyHeader = false,\n enableTableFooter = true,\n enableTableHead = true,\n enableToolbarBottom = true,\n enableToolbarInternalActions = true,\n enableToolbarTop = true,\n icons,\n localization,\n positionActionsColumn = 'first',\n positionGlobalFilter = 'right',\n positionPagination = 'bottom',\n positionToolbarAlertBanner = 'top',\n rowNumberMode = 'original',\n selectAllMode = 'all',\n ...rest\n}: MaterialReactTableProps<TData>) => (\n <MRT_TableRoot\n autoResetExpanded={autoResetExpanded}\n columnResizeMode={columnResizeMode}\n defaultColumn={defaultColumn}\n editingMode={editingMode}\n enableColumnActions={enableColumnActions}\n enableColumnFilterChangeMode={enableColumnFilterChangeMode}\n enableColumnFilters={enableColumnFilters}\n enableColumnOrdering={enableColumnOrdering}\n enableColumnResizing={enableColumnResizing}\n enableDensityToggle={enableDensityToggle}\n enableExpandAll={enableExpandAll}\n enableFilters={enableFilters}\n enableFullScreenToggle={enableFullScreenToggle}\n enableGlobalFilter={enableGlobalFilter}\n enableGlobalFilterChangeMode={enableGlobalFilterChangeMode}\n enableGlobalFilterRankedResults={enableGlobalFilterRankedResults}\n enableGrouping={enableGrouping}\n enableHiding={enableHiding}\n enableMultiRowSelection={enableMultiRowSelection}\n enableMultiSort={enableMultiSort}\n enablePagination={enablePagination}\n enablePinning={enablePinning}\n enableRowSelection={enableRowSelection}\n enableSelectAll={enableSelectAll}\n enableSorting={enableSorting}\n enableStickyHeader={enableStickyHeader}\n enableTableFooter={enableTableFooter}\n enableTableHead={enableTableHead}\n enableToolbarBottom={enableToolbarBottom}\n enableToolbarInternalActions={enableToolbarInternalActions}\n enableToolbarTop={enableToolbarTop}\n icons={{ ...MRT_Default_Icons, ...icons }}\n localization={{ ...MRT_DefaultLocalization_EN, ...localization }}\n positionActionsColumn={positionActionsColumn}\n positionGlobalFilter={positionGlobalFilter}\n positionPagination={positionPagination}\n positionToolbarAlertBanner={positionToolbarAlertBanner}\n rowNumberMode={rowNumberMode}\n selectAllMode={selectAllMode}\n {...rest}\n />\n);\n"],"names":["MRT_DefaultLocalization_EN","actions","and","cancel","changeFilterMode","changeSearchMode","clearFilter","clearSearch","clearSort","clickToCopy","columnActions","copiedToClipboard","edit","expand","expandAll","filterBetween","filterByColumn","filterContains","filterEmpty","filterEndsWith","filterEquals","filterFuzzy","filterGreaterThan","filterLessThan","filterMode","filterNotEmpty","filterNotEquals","filterStartsWith","filteringByColumn","grab","groupByColumn","groupedBy","hideAll","hideColumn","max","min","move","pinToLeft","pinToRight","resetColumnSize","resetOrder","rowActions","rowNumber","rowNumbers","save","search","selectedCountOfRowCountRowsSelected","select","showAll","showAllColumns","showHideColumns","showHideFilters","showHideSearch","sortByColumnAsc","sortByColumnDesc","sortedByColumnAsc","sortedByColumnDesc","thenBy","toggleDensity","toggleFullScreen","toggleSelectAll","toggleSelectRow","toggleVisibility","ungroupByColumn","unpin","unpinAll","unsorted","MRT_Default_Icons","ArrowRightIcon","ArrowRight","CancelIcon","Cancel","CheckBoxIcon","CheckBox","ClearAllIcon","ClearAll","CloseIcon","Close","DensityLargeIcon","DensityLarge","DensityMediumIcon","DensityMedium","DensitySmallIcon","DensitySmall","DragHandleIcon","DragHandle","DynamicFeedIcon","DynamicFeed","EditIcon","Edit","ExpandLessIcon","ExpandLess","ExpandMoreIcon","ExpandMore","FilterAltIcon","FilterAlt","FilterAltOffIcon","FilterAltOff","FilterListIcon","FilterList","FilterListOffIcon","FilterListOff","FullscreenExitIcon","FullscreenExit","FullscreenIcon","Fullscreen","KeyboardDoubleArrowDownIcon","KeyboardDoubleArrowDown","MoreHorizIcon","MoreHoriz","MoreVertIcon","MoreVert","PushPinIcon","PushPin","RestartAltIcon","RestartAlt","SaveIcon","Save","SearchIcon","Search","SearchOffIcon","SearchOff","SortIcon","Sort","ViewColumnIcon","ViewColumn","VisibilityOffIcon","VisibilityOff","MRT_ExpandAllButton","table","getIsAllRowsExpanded","getIsSomeRowsExpanded","getCanSomeRowsExpand","getState","options","icons","localization","muiExpandAllButtonProps","renderDetailPanel","toggleAllRowsExpanded","density","iconButtonProps","Function","React","Tooltip","arrow","enterDelay","enterNextDelay","title","IconButton","disabled","onClick","sx","height","width","style","transform","transition","MRT_ExpandButton","row","muiExpandButtonProps","handleToggleExpand","toggleExpanded","getCanExpand","getIsExpanded","commonMenuItemStyles","py","my","alignItems","MRT_FilterOptionMenu","anchorEl","header","onSelect","setAnchorEl","enabledGlobalFilterOptions","enabledColumnFilterOptions","setCurrentFilterFns","setCurrentGlobalFilterFn","currentFilterFns","currentGlobalFilterFn","column","columnDef","allowedColumnFilterOptions","filterOptions","useMemo","option","label","divider","filter","filterType","undefined","includes","handleSelectFilterType","prev","id","setFilterValue","filterOption","Menu","anchorOrigin","vertical","horizontal","onClose","open","MenuListProps","dense","map","index","MenuItem","key","selected","value","MRT_ColumnPinningButtons","handlePinColumn","pinDirection","pin","Box","minWidth","textAlign","getIsPinned","size","MRT_GrabHandleButton","onDragEnd","onDragStart","placement","disableRipple","draggable","cursor","m","opacity","p","backgroundColor","fuzzy","columnId","filterValue","addMeta","itemRank","rankItem","getValue","threshold","rankings","MATCHES","passed","autoRemove","val","contains","toString","toLowerCase","trim","startsWith","endsWith","equals","notEquals","greaterThan","isNaN","lessThan","between","filterValues","empty","_filterValue","notEmpty","MRT_FilterFns","filterFns","rowA","rowB","dir","columnFiltersMeta","compareItems","sortingFns","alphanumeric","MRT_SortingFns","rankGlobalFuzzy","Math","Object","values","v","rank","getColumnId","accessorKey","getAllLeafColumnDefs","columns","lowestLevelColumns","currentCols","length","some","col","nextCols","flat","every","prepareColumns","columnDefs","process","console","error","columnDefType","keys","filterFn","sortingFn","reorderColumn","draggedColumn","targetColumn","columnOrder","getCanPin","splice","indexOf","getLeadingDisplayColumnIds","props","enableRowDragging","enableRowOrdering","positionActionsColumn","enableRowActions","enableEditing","editingMode","enableExpanding","enableGrouping","enableRowSelection","enableRowNumbers","Boolean","getTrailingDisplayColumnIds","getDefaultColumnOrderIds","MRT_ShowHideColumnsMenuItems","allColumns","currentHoveredColumn","setCurrentHoveredColumn","isSubMenu","enableColumnOrdering","enableHiding","enablePinning","setColumnOrder","switchChecked","getIsVisible","getLeafColumns","handleToggleColumnHidden","forEach","childColumn","menuItemRef","useRef","useState","isDragging","setIsDragging","handleDragStart","e","dataTransfer","setDragImage","current","handleDragEnd","_e","handleDragEnter","ref","onDragEnter","theme","justifyContent","outline","palette","primary","main","pl","depth","display","flexWrap","gap","FormControlLabel","componentsProps","typography","mb","checked","control","Switch","getCanHide","getIsGrouped","onChange","Typography","alignSelf","c","i","MRT_ShowHideColumnsMenu","getAllColumns","getAllLeafColumns","getCenterLeafColumns","getIsAllColumnsVisible","getIsSomeColumnsPinned","getIsSomeColumnsVisible","getLeftLeafColumns","getRightLeafColumns","toggleAllColumnsVisible","columnPinning","hideAllColumns","Array","from","Set","colId","find","pt","Button","resetColumnPinning","Divider","commonListItemStyles","MRT_ColumnActionMenu","enableColumnFilterChangeMode","enableColumnFilters","enableColumnResizing","enableSorting","tableId","setShowFilters","columnSizing","columnVisibility","filterMenuAnchorEl","setFilterMenuAnchorEl","showHideColumnsMenuAnchorEl","setShowHideColumnsMenuAnchorEl","handleClearSort","clearSorting","handleSortAsc","toggleSorting","handleSortDesc","handleResetColumnSize","resetSize","handleHideColumn","handleGroupByColumn","toggleGrouping","old","handleClearFilter","handleFilterByColumn","setTimeout","document","getElementById","muiTableHeadCellFilterTextFieldProps","focus","handleShowAllColumns","handleOpenFilterModeMenu","event","stopPropagation","currentTarget","handleOpenShowHideColumnsMenu","isSelectFilter","filterSelectOptions","showFilterModeSubMenu","getCanSort","getIsSorted","ListItemIcon","replace","String","getCanFilter","getFilterValue","onMouseEnter","getCanGroup","getCanResize","visible","MRT_RowActionMenu","handleEdit","renderRowActionMenuItems","closeMenu","MRT_EditActionButtons","onEditRowSubmit","setCurrentEditingRow","currentEditingRow","handleCancel","_valuesCache","original","handleSave","color","commonIconButtonStyles","ml","MRT_ToggleRowActionMenuButton","renderRowActions","handleOpenRowActionMenu","preventDefault","handleStartEditMode","MRT_SelectCheckbox","selectAll","muiSelectCheckboxProps","muiSelectAllCheckboxProps","selectAllMode","checkboxProps","Checkbox","getIsAllRowsSelected","getIsSelected","indeterminate","getIsSomeRowsSelected","getIsSomeSelected","inputProps","getToggleAllRowsSelectedHandler","getToggleAllPageRowsSelectedHandler","getToggleSelectedHandler","MRT_FullScreenToggleButton","rest","setIsFullScreen","isFullScreen","handleToggleFullScreen","MRT_ShowHideColumnsButton","handleClick","MRT_ToggleDensePaddingButton","setDensity","handleToggleDensePadding","nextDensity","MRT_ToggleFiltersButton","showColumnFilters","handleToggleShowFilters","MRT_ToggleGlobalFilterButton","muiSearchTextFieldProps","setShowGlobalFilter","showGlobalFilter","textFieldProps","handleToggleSearch","MRT_GlobalFilterTextField","setGlobalFilter","enableGlobalFilterChangeMode","globalFilter","searchValue","setSearchValue","handleChangeDebounced","useCallback","debounce","target","handleChange","handleGlobalFilterMenuOpen","handleClear","Collapse","orientation","TextField","placeholder","variant","InputProps","startAdornment","InputAdornment","position","endAdornment","MRT_ToolbarInternalButtons","enableDensityToggle","enableFilters","enableFullScreenToggle","enableGlobalFilter","positionGlobalFilter","renderToolbarInternalActions","zIndex","MRT_TablePagination","getPrePaginationRowModel","setPageIndex","setPageSize","muiTablePaginationProps","enableToolbarInternalActions","rowCount","pagination","pageSize","pageIndex","totalRowCount","rows","showFirstLastPageButtons","tablePaginationProps","handleChangeRowsPerPage","TablePagination","SelectProps","MenuProps","disablePadding","component","count","onPageChange","_","newPage","onRowsPerPageChange","page","rowsPerPage","rowsPerPageOptions","showFirstButton","showLastButton","mt","MRT_ToolbarAlertBanner","stackAlertBanner","getSelectedRowModel","muiTableToolbarAlertBannerProps","grouping","showAlertBanner","alertProps","selectMessage","groupedByMessage","Fragment","Chip","getColumn","onDelete","timeout","Alert","icon","borderRadius","fontSize","left","right","top","AlertTitle","children","MRT_LinearProgressBar","isTopToolbar","muiLinearProgressProps","isLoading","showProgressBars","linearProgressProps","mountOnEnter","unmountOnExit","bottom","LinearProgress","commonToolbarStyles","lighten","background","backgroundImage","minHeight","overflow","MRT_ToolbarTop","enablePagination","muiTableToolbarTopProps","positionPagination","positionToolbarAlertBanner","renderToolbarTopCustomActions","isMobile","useMediaQuery","toolbarProps","Toolbar","boxSizing","MRT_ToolbarBottom","muiTableToolbarBottomProps","renderToolbarBottomCustomActions","boxShadow","alpha","common","black","MRT_TableHeadCellColumnActionsButton","muiTableHeadCellColumnActionsButtonProps","mTableHeadCellColumnActionsButtonProps","mcTableHeadCellColumnActionsButtonProps","MRT_FilterTextField","inputIndex","mTableHeadCellFilterTextFieldProps","mcTableHeadCellFilterTextFieldProps","type","Date","newFilterValues","handleFilterMenuOpen","handleClearFilterChip","Filter","filterId","currentFilterOption","filterChipLabel","charAt","toUpperCase","slice","filterPlaceholder","showChangeModeButton","fullWidth","textOverflow","helperText","htmlFor","FormHelperTextProps","lineHeight","whiteSpace","margin","disableHoverListener","mr","text","MRT_FilterRangeFields","gridTemplateColumns","MRT_TableHeadCellFilterContainer","MRT_TableHeadCellFilterLabel","filterTooltip","isArray","join","Grow","MRT_TableHeadCellGrabHandle","tableHeadCellRef","muiTableHeadCellDragHandleProps","onColumnDrop","setCurrentDraggingColumn","currentDraggingColumn","mIconButtonProps","mcIconButtonProps","MRT_TableHeadCellResizeHandle","columnResizeMode","flexItem","onDoubleClick","borderRightWidth","touchAction","getIsResizing","userSelect","info","onMouseDown","getResizeHandler","onTouchStart","columnSizingInfo","deltaOffset","MRT_TableHeadCellSortLabel","sortTooltip","TableSortLabel","active","direction","MRT_TableHeadCell","useTheme","enableColumnActions","enableColumnDragging","enableMultiSort","muiTableHeadCellProps","mTableHeadCellProps","mcTableHeadCellProps","tableCellProps","getIsLastLeftPinnedColumn","getLeftLeafHeaders","getPinnedIndex","getIsFirstRightPinnedColumn","getTotalRight","getRightLeafHeaders","draggingBorder","draggingBorders","borderLeft","borderRight","borderTop","headerElement","Header","TableCell","align","colSpan","fontWeight","getStart","pb","verticalAlign","maxWidth","getSize","minSize","isPlaceholder","getToggleSortingHandler","MRT_TableHeadRow","headerGroup","muiTableHeadRowProps","tableRowProps","TableRow","headers","MRT_TableHead","getHeaderGroups","muiTableHeadProps","tableHeadProps","TableHead","MRT_EditCellTextField","cell","muiTableBodyCellEditTextFieldProps","onCellEditBlur","onCellEditChange","setCurrentEditingCell","setValue","handleBlur","mTableBodyCellEditTextFieldProps","mcTableBodyCellEditTextFieldProps","onBlur","MRT_CopyButton","muiTableBodyCellCopyButtonProps","copied","setCopied","handleCopy","navigator","clipboard","writeText","mTableBodyCellCopyButtonProps","mcTableBodyCellCopyButtonProps","buttonProps","border","fontFamily","letterSpacing","textTransform","MRT_TableBodyRowGrabHandle","rowRef","muiTableBodyRowDragHandleProps","onRowDrop","setCurrentDraggingRow","draggedRow","currentDraggingRow","targetRow","currentHoveredRow","setCurrentHoveredRow","MRT_TableBodyCell","enableHover","rowIndex","enableClickToCopy","muiTableBodyCellProps","muiTableBodyCellSkeletonProps","rowNumberMode","currentEditingCell","showSkeletons","mTableCellBodyProps","mcTableCellBodyProps","skeletonWidth","random","isEditable","isEditing","handleDoubleClick","_event","textField","borderBottom","getRowModel","mode","darken","getIsPlaceholder","Skeleton","animation","Cell","renderValue","subRows","MRT_TableDetailPanel","getVisibleLeafColumns","muiTableBodyRowProps","muiTableDetailPanelProps","getTotalSize","MRT_TableBodyRow","hover","getVisibleCells","MRT_TableBody","tableContainerRef","enableGlobalFilterRankedResults","enableRowVirtualization","muiTableBodyProps","virtualizerProps","sorting","tableBodyProps","getIsSomeColumnsSorted","rankedRows","sort","a","b","rowVirtualizer","useVirtual","overscan","parentRef","virtualRows","virtualItems","paddingTop","paddingBottom","start","totalSize","end","TableBody","rowOrVirtualRow","MRT_TableFooterCell","footer","muiTableFooterCellProps","mTableFooterCellProps","mcTableFooterCellProps","white","Footer","MRT_TableFooterRow","footerGroup","muiTableFooterRowProps","MRT_TableFooter","getFooterGroups","muiTableFooterProps","tableFooterProps","TableFooter","MRT_Table","enableStickyHeader","enableTableFooter","enableTableHead","muiTableProps","tableProps","Table","stickyHeader","tableLayout","useIsomorphicLayoutEffect","window","useLayoutEffect","useEffect","MRT_TableContainer","muiTableContainerProps","totalToolbarHeight","setTotalToolbarHeight","tableContainerProps","topToolbarHeight","offsetHeight","bottomToolbarHeight","TableContainer","maxHeight","MRT_TablePaper","enableToolbarBottom","enableToolbarTop","muiTablePaperProps","body","tablePaperProps","Paper","elevation","padding","defaultDisplayColumnDefOptions","enableColumnFilter","enableResizing","MRT_TableRoot","setIdPrefix","substring","initialState","initState","setShowAlertBanner","assign","name","globalFilterFn","displayColumns","displayColumnDefOptions","enableExpandAll","enableSelectAll","data","state","fill","useReactTable","getCoreRowModel","getExpandedRowModel","getFacetedRowModel","getFilteredRowModel","getGroupedRowModel","getPaginationRowModel","getSortedRowModel","onColumnOrderChange","getSubRows","onCurrentDraggingColumnChange","onCurrentDraggingRowChange","onCurrentEditingCellChange","onCurrentEditingRowChange","onCurrentFilterFnsChange","onCurrentGlobalFilterFnChange","onCurrentHoveredColumnChange","onCurrentHoveredRowChange","onDensityChange","onIsFullScreenChange","onShowAlertBannerChange","onShowFiltersChange","onShowGlobalFilterChange","Dialog","PaperComponent","TransitionComponent","disablePortal","fullScreen","keepMounted","transitionDuration","autoResetExpanded","defaultColumn","maxSize","enableMultiRowSelection"],"mappings":"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"}
1
+ {"version":3,"file":"material-react-table.cjs.development.js","sources":["../src/localization.ts","../src/icons.ts","../src/buttons/MRT_ExpandAllButton.tsx","../src/buttons/MRT_ExpandButton.tsx","../src/menus/MRT_FilterOptionMenu.tsx","../src/buttons/MRT_ColumnPinningButtons.tsx","../src/buttons/MRT_GrabHandleButton.tsx","../src/filtersFns.ts","../src/sortingFns.ts","../src/column.utils.ts","../src/menus/MRT_ShowHideColumnsMenuItems.tsx","../src/menus/MRT_ShowHideColumnsMenu.tsx","../src/menus/MRT_ColumnActionMenu.tsx","../src/menus/MRT_RowActionMenu.tsx","../src/buttons/MRT_EditActionButtons.tsx","../src/buttons/MRT_ToggleRowActionMenuButton.tsx","../src/inputs/MRT_SelectCheckbox.tsx","../src/buttons/MRT_FullScreenToggleButton.tsx","../src/buttons/MRT_ShowHideColumnsButton.tsx","../src/buttons/MRT_ToggleDensePaddingButton.tsx","../src/buttons/MRT_ToggleFiltersButton.tsx","../src/buttons/MRT_ToggleGlobalFilterButton.tsx","../src/inputs/MRT_GlobalFilterTextField.tsx","../src/toolbar/MRT_ToolbarInternalButtons.tsx","../src/toolbar/MRT_TablePagination.tsx","../src/toolbar/MRT_ToolbarAlertBanner.tsx","../src/toolbar/MRT_LinearProgressBar.tsx","../src/toolbar/MRT_ToolbarTop.tsx","../src/toolbar/MRT_ToolbarBottom.tsx","../src/head/MRT_TableHeadCellColumnActionsButton.tsx","../src/inputs/MRT_FilterTextField.tsx","../src/inputs/MRT_FilterRangeFields.tsx","../src/head/MRT_TableHeadCellFilterContainer.tsx","../src/head/MRT_TableHeadCellFilterLabel.tsx","../src/head/MRT_TableHeadCellGrabHandle.tsx","../src/head/MRT_TableHeadCellResizeHandle.tsx","../src/head/MRT_TableHeadCellSortLabel.tsx","../src/head/MRT_TableHeadCell.tsx","../src/head/MRT_TableHeadRow.tsx","../src/head/MRT_TableHead.tsx","../src/inputs/MRT_EditCellTextField.tsx","../src/buttons/MRT_CopyButton.tsx","../src/body/MRT_TableBodyRowGrabHandle.tsx","../src/body/MRT_TableBodyCell.tsx","../src/body/MRT_TableDetailPanel.tsx","../src/body/MRT_TableBodyRow.tsx","../src/body/MRT_TableBody.tsx","../src/footer/MRT_TableFooterCell.tsx","../src/footer/MRT_TableFooterRow.tsx","../src/footer/MRT_TableFooter.tsx","../src/table/MRT_Table.tsx","../src/table/MRT_TableContainer.tsx","../src/table/MRT_TablePaper.tsx","../src/table/MRT_TableRoot.tsx","../src/MaterialReactTable.tsx"],"sourcesContent":["export interface MRT_Localization {\n actions: string;\n and: string;\n cancel: string;\n changeFilterMode: string;\n changeSearchMode: string;\n clearFilter: string;\n clearSearch: string;\n clearSort: string;\n clickToCopy: string;\n columnActions: string;\n copiedToClipboard: string;\n edit: string;\n expand: string;\n expandAll: string;\n filterBetween: string;\n filterBetweenInclusive: string;\n filterByColumn: string;\n filterContains: string;\n filterEmpty: string;\n filterEndsWith: string;\n filterEquals: string;\n filterFuzzy: string;\n filterGreaterThan: string;\n filterGreaterThanOrEqualTo: string;\n filterLessThan: string;\n filterLessThanOrEqualTo: string;\n filterMode: string;\n filterNotEmpty: string;\n filterNotEquals: string;\n filterStartsWith: string;\n filteringByColumn: string;\n grab: string;\n groupByColumn: string;\n groupedBy: string;\n hideAll: string;\n hideColumn: string;\n max: string;\n min: string;\n move: string;\n pinToLeft: string;\n pinToRight: string;\n resetColumnSize: string;\n resetOrder: string;\n rowActions: string;\n rowNumber: string;\n rowNumbers: string;\n save: string;\n search: string;\n select: string;\n selectedCountOfRowCountRowsSelected: string;\n showAll: string;\n showAllColumns: string;\n showHideColumns: string;\n showHideFilters: string;\n showHideSearch: string;\n sortByColumnAsc: string;\n sortByColumnDesc: string;\n sortedByColumnAsc: string;\n sortedByColumnDesc: string;\n thenBy: string;\n toggleDensity: string;\n toggleFullScreen: string;\n toggleSelectAll: string;\n toggleSelectRow: string;\n toggleVisibility: string;\n ungroupByColumn: string;\n unpin: string;\n unpinAll: string;\n unsorted: string;\n}\n\nexport const MRT_DefaultLocalization_EN: MRT_Localization = {\n actions: 'Actions',\n and: 'and',\n cancel: 'Cancel',\n changeFilterMode: 'Change filter mode',\n changeSearchMode: 'Change search mode',\n clearFilter: 'Clear filter',\n clearSearch: 'Clear search',\n clearSort: 'Clear sort',\n clickToCopy: 'Click to copy',\n columnActions: 'Column Actions',\n copiedToClipboard: 'Copied to clipboard',\n edit: 'Edit',\n expand: 'Expand',\n expandAll: 'Expand all',\n filterBetween: 'Between',\n filterBetweenInclusive: 'Between Inclusive',\n filterByColumn: 'Filter by {column}',\n filterContains: 'Contains',\n filterEmpty: 'Empty',\n filterEndsWith: 'Ends With',\n filterEquals: 'Equals',\n filterFuzzy: 'Fuzzy',\n filterGreaterThan: 'Greater Than',\n filterGreaterThanOrEqualTo: 'Greater Than Or Equal To',\n filterLessThan: 'Less Than',\n filterLessThanOrEqualTo: 'Less Than Or Equal To',\n filterMode: 'Filter Mode: {filterType}',\n filterNotEmpty: 'Not Empty',\n filterNotEquals: 'Not Equals',\n filterStartsWith: 'Starts With',\n filteringByColumn: 'Filtering by {column} - {filterType} {filterValue}',\n grab: 'Grab',\n groupByColumn: 'Group by {column}',\n groupedBy: 'Grouped by ',\n hideAll: 'Hide all',\n hideColumn: 'Hide {column} column',\n max: 'Max',\n min: 'Min',\n move: 'Move',\n pinToLeft: 'Pin to left',\n pinToRight: 'Pin to right',\n resetColumnSize: 'Reset column size',\n resetOrder: 'Reset order',\n rowActions: 'Row Actions',\n rowNumber: '#',\n rowNumbers: 'Row Numbers',\n save: 'Save',\n search: 'Search',\n selectedCountOfRowCountRowsSelected:\n '{selectedCount} of {rowCount} row(s) selected',\n select: 'Select',\n showAll: 'Show all',\n showAllColumns: 'Show all columns',\n showHideColumns: 'Show/Hide columns',\n showHideFilters: 'Show/Hide filters',\n showHideSearch: 'Show/Hide search',\n sortByColumnAsc: 'Sort by {column} ascending',\n sortByColumnDesc: 'Sort by {column} descending',\n sortedByColumnAsc: 'Sorted by {column} ascending',\n sortedByColumnDesc: 'Sorted by {column} descending',\n thenBy: ', then by ',\n toggleDensity: 'Toggle density',\n toggleFullScreen: 'Toggle full screen',\n toggleSelectAll: 'Toggle select all',\n toggleSelectRow: 'Toggle select row',\n toggleVisibility: 'Toggle visibility',\n ungroupByColumn: 'Ungroup by {column}',\n unpin: 'Unpin',\n unpinAll: 'Unpin all',\n unsorted: 'Unsorted',\n};\n","import {\n ArrowRight,\n Cancel,\n CheckBox,\n ClearAll,\n Close,\n DensityLarge,\n DensityMedium,\n DensitySmall,\n DragHandle,\n DynamicFeed,\n Edit,\n ExpandLess,\n ExpandMore,\n FilterAlt,\n FilterAltOff,\n FilterList,\n FilterListOff,\n Fullscreen,\n FullscreenExit,\n KeyboardDoubleArrowDown,\n MoreHoriz,\n MoreVert,\n PushPin,\n RestartAlt,\n Save,\n Search,\n SearchOff,\n Sort,\n ViewColumn,\n VisibilityOff,\n} from '@mui/icons-material';\n\nexport interface MRT_Icons {\n ArrowRightIcon: any;\n CancelIcon: any;\n CheckBoxIcon: any;\n ClearAllIcon: any;\n CloseIcon: any;\n DensityLargeIcon: any;\n DensityMediumIcon: any;\n DensitySmallIcon: any;\n KeyboardDoubleArrowDownIcon: any;\n DragHandleIcon: any;\n DynamicFeedIcon: any;\n EditIcon: any;\n ExpandLessIcon: any;\n ExpandMoreIcon: any;\n FilterAltIcon: any;\n FilterAltOffIcon: any;\n FilterListIcon: any;\n FilterListOffIcon: any;\n FullscreenExitIcon: any;\n FullscreenIcon: any;\n MoreHorizIcon: any;\n MoreVertIcon: any;\n PushPinIcon: any;\n RestartAltIcon: any;\n SaveIcon: any;\n SearchIcon: any;\n SearchOffIcon: any;\n SortIcon: any;\n ViewColumnIcon: any;\n VisibilityOffIcon: any;\n}\n\nexport const MRT_Default_Icons: MRT_Icons = {\n ArrowRightIcon: ArrowRight,\n CancelIcon: Cancel,\n CheckBoxIcon: CheckBox,\n ClearAllIcon: ClearAll,\n CloseIcon: Close,\n DensityLargeIcon: DensityLarge,\n DensityMediumIcon: DensityMedium,\n DensitySmallIcon: DensitySmall,\n DragHandleIcon: DragHandle,\n DynamicFeedIcon: DynamicFeed,\n EditIcon: Edit,\n ExpandLessIcon: ExpandLess,\n ExpandMoreIcon: ExpandMore,\n FilterAltIcon: FilterAlt,\n FilterAltOffIcon: FilterAltOff,\n FilterListIcon: FilterList,\n FilterListOffIcon: FilterListOff,\n FullscreenExitIcon: FullscreenExit,\n FullscreenIcon: Fullscreen,\n KeyboardDoubleArrowDownIcon: KeyboardDoubleArrowDown,\n MoreHorizIcon: MoreHoriz,\n MoreVertIcon: MoreVert,\n PushPinIcon: PushPin,\n RestartAltIcon: RestartAlt,\n SaveIcon: Save,\n SearchIcon: Search,\n SearchOffIcon: SearchOff,\n SortIcon: Sort,\n ViewColumnIcon: ViewColumn,\n VisibilityOffIcon: VisibilityOff,\n};\n","import React, { FC } from 'react';\nimport { IconButton, Tooltip } from '@mui/material';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n table: MRT_TableInstance;\n}\n\nexport const MRT_ExpandAllButton: FC<Props> = ({ table }) => {\n const {\n getIsAllRowsExpanded,\n getIsSomeRowsExpanded,\n getCanSomeRowsExpand,\n getState,\n options: {\n icons: { KeyboardDoubleArrowDownIcon },\n localization,\n muiExpandAllButtonProps,\n renderDetailPanel,\n },\n toggleAllRowsExpanded,\n } = table;\n const { density } = getState();\n\n const iconButtonProps =\n muiExpandAllButtonProps instanceof Function\n ? muiExpandAllButtonProps({ table })\n : muiExpandAllButtonProps;\n\n return (\n <Tooltip\n arrow\n enterDelay={1000}\n enterNextDelay={1000}\n title={localization.expandAll}\n >\n <span>\n <IconButton\n aria-label={localization.expandAll}\n disabled={!getCanSomeRowsExpand() && !renderDetailPanel}\n onClick={() => toggleAllRowsExpanded(!getIsAllRowsExpanded())}\n {...iconButtonProps}\n sx={{\n height: density === 'compact' ? '1.75rem' : '2.25rem',\n width: density === 'compact' ? '1.75rem' : '2.25rem',\n ...iconButtonProps?.sx,\n }}\n >\n <KeyboardDoubleArrowDownIcon\n style={{\n transform: `rotate(${\n getIsAllRowsExpanded()\n ? -180\n : getIsSomeRowsExpanded()\n ? -90\n : 0\n }deg)`,\n transition: 'transform 0.2s',\n }}\n />\n </IconButton>\n </span>\n </Tooltip>\n );\n};\n","import React, { FC } from 'react';\nimport { IconButton, Tooltip } from '@mui/material';\nimport type { MRT_Row, MRT_TableInstance } from '..';\n\ninterface Props {\n row: MRT_Row;\n table: MRT_TableInstance;\n}\n\nexport const MRT_ExpandButton: FC<Props> = ({ row, table }) => {\n const {\n getState,\n options: {\n icons: { ExpandMoreIcon },\n localization,\n muiExpandButtonProps,\n renderDetailPanel,\n },\n } = table;\n const { density } = getState();\n\n const iconButtonProps =\n muiExpandButtonProps instanceof Function\n ? muiExpandButtonProps({ table, row })\n : muiExpandButtonProps;\n\n const handleToggleExpand = () => {\n row.toggleExpanded();\n };\n\n return (\n <Tooltip\n arrow\n enterDelay={1000}\n enterNextDelay={1000}\n title={localization.expand}\n >\n <span>\n <IconButton\n aria-label={localization.expand}\n disabled={!row.getCanExpand() && !renderDetailPanel}\n onClick={handleToggleExpand}\n {...iconButtonProps}\n sx={(theme) => ({\n height: density === 'compact' ? '1.75rem' : '2.25rem',\n width: density === 'compact' ? '1.75rem' : '2.25rem',\n ...(iconButtonProps?.sx instanceof Function\n ? iconButtonProps.sx(theme)\n : (iconButtonProps?.sx as any)),\n })}\n >\n <ExpandMoreIcon\n style={{\n transform: `rotate(${\n !row.getCanExpand() && !renderDetailPanel\n ? -90\n : row.getIsExpanded()\n ? -180\n : 0\n }deg)`,\n transition: 'transform 0.2s',\n }}\n />\n </IconButton>\n </span>\n </Tooltip>\n );\n};\n","import React, { FC, useMemo } from 'react';\nimport { Box, Menu, MenuItem } from '@mui/material';\nimport type { MRT_FilterOption, MRT_Header, MRT_TableInstance } from '..';\n\ninterface Props {\n anchorEl: HTMLElement | null;\n header?: MRT_Header;\n onSelect?: () => void;\n setAnchorEl: (anchorEl: HTMLElement | null) => void;\n table: MRT_TableInstance;\n}\n\nexport const MRT_FilterOptionMenu: FC<Props> = ({\n anchorEl,\n header,\n onSelect,\n setAnchorEl,\n table,\n}) => {\n const {\n getState,\n options: {\n enabledGlobalFilterOptions,\n enabledColumnFilterOptions,\n localization,\n },\n setCurrentFilterFns,\n setCurrentGlobalFilterFn,\n } = table;\n const { currentFilterFns, currentGlobalFilterFn, density } = getState();\n const { column } = header ?? {};\n const { columnDef } = column ?? {};\n\n const allowedColumnFilterOptions =\n columnDef?.enabledColumnFilterOptions ?? enabledColumnFilterOptions;\n\n const filterOptions = useMemo(\n () =>\n (\n [\n {\n option: 'fuzzy',\n symbol: '≈',\n label: localization.filterFuzzy,\n divider: false,\n },\n {\n option: 'contains',\n symbol: '*',\n label: localization.filterContains,\n divider: false,\n },\n {\n option: 'startsWith',\n symbol: 'a',\n label: localization.filterStartsWith,\n divider: false,\n },\n {\n option: 'endsWith',\n symbol: 'z',\n label: localization.filterEndsWith,\n divider: true,\n },\n {\n option: 'equals',\n symbol: '=',\n label: localization.filterEquals,\n divider: false,\n },\n {\n option: 'notEquals',\n symbol: '≠',\n label: localization.filterNotEquals,\n divider: true,\n },\n {\n option: 'between',\n symbol: '⇿',\n label: localization.filterBetween,\n divider: false,\n },\n {\n option: 'betweenInclusive',\n symbol: '⬌',\n label: localization.filterBetweenInclusive,\n divider: true,\n },\n {\n option: 'greaterThan',\n symbol: '>',\n label: localization.filterGreaterThan,\n divider: false,\n },\n {\n option: 'greaterThanOrEqualTo',\n symbol: '≥',\n label: localization.filterGreaterThanOrEqualTo,\n divider: false,\n },\n {\n option: 'lessThan',\n symbol: '<',\n label: localization.filterLessThan,\n divider: false,\n },\n {\n option: 'lessThanOrEqualTo',\n symbol: '≤',\n label: localization.filterLessThanOrEqualTo,\n divider: true,\n },\n {\n option: 'empty',\n symbol: '∅',\n label: localization.filterEmpty,\n divider: false,\n },\n {\n option: 'notEmpty',\n symbol: '!∅',\n label: localization.filterNotEmpty,\n divider: false,\n },\n ] as Array<{\n divider: boolean;\n fn: Function;\n label: string;\n option: MRT_FilterOption;\n symbol?: string;\n }>\n ).filter((filterType) =>\n columnDef\n ? allowedColumnFilterOptions === undefined ||\n allowedColumnFilterOptions?.includes(filterType.option)\n : (!enabledGlobalFilterOptions ||\n enabledGlobalFilterOptions.includes(filterType.option)) &&\n ['fuzzy', 'contains'].includes(filterType.option),\n ),\n [],\n );\n\n const handleSelectFilterType = (option: MRT_FilterOption) => {\n if (header && column) {\n setCurrentFilterFns((prev: { [key: string]: any }) => ({\n ...prev,\n [header.id]: option,\n }));\n if (['empty', 'notEmpty'].includes(option)) {\n column.setFilterValue(' ');\n } else if (option === 'between') {\n column.setFilterValue(['', '']);\n } else {\n column.setFilterValue('');\n }\n } else {\n setCurrentGlobalFilterFn(option);\n }\n setAnchorEl(null);\n onSelect?.();\n };\n\n const filterOption = !!header\n ? currentFilterFns[header.id]\n : currentGlobalFilterFn;\n\n return (\n <Menu\n anchorEl={anchorEl}\n anchorOrigin={{ vertical: 'center', horizontal: 'right' }}\n onClose={() => setAnchorEl(null)}\n open={!!anchorEl}\n MenuListProps={{\n dense: density === 'compact',\n }}\n >\n {filterOptions.map(({ option, label, divider, symbol }, index) => (\n <MenuItem\n divider={divider}\n key={index}\n onClick={() => handleSelectFilterType(option)}\n selected={option === filterOption}\n sx={{\n py: '6px',\n my: 0,\n alignItems: 'center',\n display: 'flex',\n gap: '2ch',\n }}\n value={option}\n >\n <Box sx={{ fontSize: '1.25rem', width: '2ch' }}>{symbol}</Box>\n {label}\n </MenuItem>\n ))}\n </Menu>\n );\n};\n","import React, { FC } from 'react';\nimport { Box, IconButton, Tooltip } from '@mui/material';\nimport type { MRT_Column, MRT_TableInstance } from '..';\n\ninterface Props {\n column: MRT_Column;\n table: MRT_TableInstance;\n}\n\nexport const MRT_ColumnPinningButtons: FC<Props> = ({ column, table }) => {\n const {\n options: {\n icons: { PushPinIcon },\n localization,\n },\n } = table;\n\n const handlePinColumn = (pinDirection: 'left' | 'right' | false) => {\n column.pin(pinDirection);\n };\n\n return (\n <Box sx={{ minWidth: '70px', textAlign: 'center' }}>\n {column.getIsPinned() ? (\n <Tooltip arrow title={localization.unpin}>\n <IconButton onClick={() => handlePinColumn(false)} size=\"small\">\n <PushPinIcon />\n </IconButton>\n </Tooltip>\n ) : (\n <>\n <Tooltip arrow title={localization.pinToLeft}>\n <IconButton onClick={() => handlePinColumn('left')} size=\"small\">\n <PushPinIcon\n style={{\n transform: 'rotate(90deg)',\n }}\n />\n </IconButton>\n </Tooltip>\n <Tooltip arrow title={localization.pinToRight}>\n <IconButton onClick={() => handlePinColumn('right')} size=\"small\">\n <PushPinIcon\n style={{\n transform: 'rotate(-90deg)',\n }}\n />\n </IconButton>\n </Tooltip>\n </>\n )}\n </Box>\n );\n};\n","import { IconButton, IconButtonProps, Tooltip } from '@mui/material';\nimport React, { DragEventHandler, FC } from 'react';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n iconButtonProps?: IconButtonProps;\n onDragStart: DragEventHandler<HTMLButtonElement>;\n onDragEnd: DragEventHandler<HTMLButtonElement>;\n table: MRT_TableInstance;\n}\n\nexport const MRT_GrabHandleButton: FC<Props> = ({\n iconButtonProps,\n onDragEnd,\n onDragStart,\n table,\n}) => {\n const {\n options: {\n icons: { DragHandleIcon },\n localization,\n },\n } = table;\n\n return (\n <Tooltip\n arrow\n enterDelay={1000}\n enterNextDelay={1000}\n placement=\"top\"\n title={localization.move}\n >\n <IconButton\n disableRipple\n draggable=\"true\"\n onDragStart={onDragStart}\n onDragEnd={onDragEnd}\n size=\"small\"\n {...iconButtonProps}\n sx={{\n cursor: 'grab',\n m: 0,\n opacity: 0.5,\n p: '2px',\n transition: 'all 0.2s ease-in-out',\n '&:hover': {\n backgroundColor: 'transparent',\n opacity: 1,\n },\n '&:active': {\n cursor: 'grabbing',\n },\n ...iconButtonProps?.sx,\n }}\n >\n <DragHandleIcon />\n </IconButton>\n </Tooltip>\n );\n};\n","import { rankItem, rankings, RankingInfo } from '@tanstack/match-sorter-utils';\nimport { filterFns, Row } from '@tanstack/react-table';\n\nconst fuzzy = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n columnId: string,\n filterValue: string | number,\n addMeta: (item: RankingInfo) => void,\n) => {\n const itemRank = rankItem(row.getValue(columnId), filterValue as string, {\n threshold: rankings.MATCHES,\n });\n addMeta(itemRank);\n return itemRank.passed;\n};\n\nfuzzy.autoRemove = (val: any) => !val;\n\nconst contains = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n id: string,\n filterValue: string | number,\n) =>\n row\n .getValue<string | number>(id)\n .toString()\n .toLowerCase()\n .trim()\n .includes(filterValue.toString().toLowerCase().trim());\n\ncontains.autoRemove = (val: any) => !val;\n\nconst startsWith = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n id: string,\n filterValue: string | number,\n) =>\n row\n .getValue<string | number>(id)\n .toString()\n .toLowerCase()\n .trim()\n .startsWith(filterValue.toString().toLowerCase().trim());\n\nstartsWith.autoRemove = (val: any) => !val;\n\nconst endsWith = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n id: string,\n filterValue: string | number,\n) =>\n row\n .getValue<string | number>(id)\n .toString()\n .toLowerCase()\n .trim()\n .endsWith(filterValue.toString().toLowerCase().trim());\n\nendsWith.autoRemove = (val: any) => !val;\n\nconst equals = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n id: string,\n filterValue: string | number,\n) =>\n row.getValue<string | number>(id).toString().toLowerCase().trim() ===\n filterValue.toString().toLowerCase().trim();\n\nequals.autoRemove = (val: any) => !val;\n\nconst notEquals = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n id: string,\n filterValue: string | number,\n) =>\n row.getValue<string | number>(id).toString().toLowerCase().trim() !==\n filterValue.toString().toLowerCase().trim();\n\nnotEquals.autoRemove = (val: any) => !val;\n\nconst greaterThan = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n id: string,\n filterValue: string | number,\n) =>\n !isNaN(+filterValue) && !isNaN(+row.getValue<string | number>(id))\n ? +row.getValue<string | number>(id) > +filterValue\n : row.getValue<string | number>(id).toString().toLowerCase().trim() >\n filterValue.toString().toLowerCase().trim();\n\ngreaterThan.autoRemove = (val: any) => !val;\n\nconst greaterThanOrEqualTo = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n id: string,\n filterValue: string | number,\n) => equals(row, id, filterValue) || greaterThan(row, id, filterValue);\n\ngreaterThanOrEqualTo.autoRemove = (val: any) => !val;\n\nconst lessThan = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n id: string,\n filterValue: string | number,\n) =>\n !isNaN(+filterValue) && !isNaN(+row.getValue<string | number>(id))\n ? +row.getValue<string | number>(id) < +filterValue\n : row.getValue<string | number>(id).toString().toLowerCase().trim() <\n filterValue.toString().toLowerCase().trim();\n\nlessThan.autoRemove = (val: any) => !val;\n\nconst lessThanOrEqualTo = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n id: string,\n filterValue: string | number,\n) => equals(row, id, filterValue) || lessThan(row, id, filterValue);\n\nlessThanOrEqualTo.autoRemove = (val: any) => !val;\n\nconst between = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n id: string,\n filterValues: [string | number, string | number],\n) =>\n ((['', undefined] as any[]).includes(filterValues[0]) ||\n greaterThan(row, id, filterValues[0])) &&\n ((!isNaN(+filterValues[0]) &&\n !isNaN(+filterValues[1]) &&\n +filterValues[0] > +filterValues[1]) ||\n (['', undefined] as any[]).includes(filterValues[1]) ||\n lessThan(row, id, filterValues[1]));\n\nbetween.autoRemove = (val: any) => !val;\n\nconst betweenInclusive = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n id: string,\n filterValues: [string | number, string | number],\n) =>\n ((['', undefined] as any[]).includes(filterValues[0]) ||\n greaterThanOrEqualTo(row, id, filterValues[0])) &&\n ((!isNaN(+filterValues[0]) &&\n !isNaN(+filterValues[1]) &&\n +filterValues[0] > +filterValues[1]) ||\n (['', undefined] as any[]).includes(filterValues[1]) ||\n lessThanOrEqualTo(row, id, filterValues[1]));\n\nbetweenInclusive.autoRemove = (val: any) => !val;\n\nconst empty = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n id: string,\n _filterValue: string | number,\n) => !row.getValue<string | number>(id).toString().trim();\n\nempty.autoRemove = (val: any) => !val;\n\nconst notEmpty = <TData extends Record<string, any> = {}>(\n row: Row<TData>,\n id: string,\n _filterValue: string | number,\n) => !!row.getValue<string | number>(id).toString().trim();\n\nnotEmpty.autoRemove = (val: any) => !val;\n\nexport const MRT_FilterFns = {\n ...filterFns,\n between,\n betweenInclusive,\n contains,\n empty,\n endsWith,\n equals,\n fuzzy,\n greaterThan,\n greaterThanOrEqualTo,\n lessThan,\n lessThanOrEqualTo,\n notEmpty,\n notEquals,\n startsWith,\n};\n","import { compareItems, RankingInfo } from '@tanstack/match-sorter-utils';\nimport { Row, sortingFns } from '@tanstack/react-table';\nimport { MRT_Row } from '.';\n\nconst fuzzy = <TData extends Record<string, any> = {}>(\n rowA: Row<TData>,\n rowB: Row<TData>,\n columnId: string,\n) => {\n let dir = 0;\n if (rowA.columnFiltersMeta[columnId]) {\n dir = compareItems(\n rowA.columnFiltersMeta[columnId]! as RankingInfo,\n rowB.columnFiltersMeta[columnId]! as RankingInfo,\n );\n }\n // Provide a fallback for when the item ranks are equal\n return dir === 0\n ? sortingFns.alphanumeric(rowA as Row<any>, rowB as Row<any>, columnId)\n : dir;\n};\n\nexport const MRT_SortingFns = {\n ...sortingFns,\n fuzzy,\n};\n\nexport const rankGlobalFuzzy = <TData extends Record<string, any> = {}>(\n rowA: MRT_Row<TData>,\n rowB: MRT_Row<TData>,\n) =>\n Math.max(...Object.values(rowB.columnFiltersMeta).map((v: any) => v.rank)) -\n Math.max(...Object.values(rowA.columnFiltersMeta).map((v: any) => v.rank));\n","import { ColumnOrderState } from '@tanstack/react-table';\nimport {\n MaterialReactTableProps,\n MRT_Column,\n MRT_ColumnDef,\n MRT_DefinedColumnDef,\n MRT_DisplayColumnIds,\n MRT_FilterOption,\n} from '.';\nimport { MRT_FilterFns } from './filtersFns';\nimport { MRT_SortingFns } from './sortingFns';\n\nconst getColumnId = <TData extends Record<string, any> = {}>(\n columnDef: MRT_ColumnDef<TData>,\n): string =>\n columnDef.id ?? columnDef.accessorKey?.toString?.() ?? columnDef.header;\n\nexport const getAllLeafColumnDefs = <TData extends Record<string, any> = {}>(\n columns: MRT_ColumnDef<TData>[],\n): MRT_ColumnDef<TData>[] => {\n let lowestLevelColumns: MRT_ColumnDef<TData>[] = columns;\n let currentCols: MRT_ColumnDef<TData>[] | undefined = columns;\n while (!!currentCols?.length && currentCols.some((col) => col.columns)) {\n const nextCols: MRT_ColumnDef<TData>[] = currentCols\n .filter((col) => !!col.columns)\n .map((col) => col.columns)\n .flat() as MRT_ColumnDef<TData>[];\n if (nextCols.every((col) => !col?.columns)) {\n lowestLevelColumns = [...lowestLevelColumns, ...nextCols];\n }\n currentCols = nextCols;\n }\n return lowestLevelColumns.filter((col) => !col.columns);\n};\n\nexport const prepareColumns = <TData extends Record<string, any> = {}>(\n columnDefs: MRT_ColumnDef<TData>[],\n currentFilterFns: { [key: string]: MRT_FilterOption },\n): MRT_DefinedColumnDef<TData>[] =>\n columnDefs.map((columnDef) => {\n if (!columnDef.id) columnDef.id = getColumnId(columnDef);\n if (process.env.NODE_ENV !== 'production' && !columnDef.id) {\n console.error(\n 'Column definitions must have a valid `accessorKey` or `id` property',\n );\n }\n if (!columnDef.columnDefType) columnDef.columnDefType = 'data';\n if (!!columnDef.columns?.length) {\n columnDef.columnDefType = 'group';\n columnDef.columns = prepareColumns(columnDef.columns, currentFilterFns);\n } else if (columnDef.columnDefType === 'data') {\n if (Object.keys(MRT_FilterFns).includes(currentFilterFns[columnDef.id])) {\n columnDef.filterFn =\n MRT_FilterFns[currentFilterFns[columnDef.id]] ?? MRT_FilterFns.fuzzy;\n }\n if (Object.keys(MRT_SortingFns).includes(columnDef.sortingFn as string)) {\n // @ts-ignore\n columnDef.sortingFn = MRT_SortingFns[columnDef.sortingFn];\n }\n }\n return columnDef;\n }) as MRT_DefinedColumnDef<TData>[];\n\nexport const reorderColumn = <TData extends Record<string, any> = {}>(\n draggedColumn: MRT_Column<TData>,\n targetColumn: MRT_Column<TData>,\n columnOrder: ColumnOrderState,\n): ColumnOrderState => {\n if (draggedColumn.getCanPin()) {\n draggedColumn.pin(targetColumn.getIsPinned());\n }\n columnOrder.splice(\n columnOrder.indexOf(targetColumn.id),\n 0,\n columnOrder.splice(columnOrder.indexOf(draggedColumn.id), 1)[0],\n );\n return [...columnOrder];\n};\n\nexport const getLeadingDisplayColumnIds = <\n TData extends Record<string, any> = {},\n>(\n props: MaterialReactTableProps<TData>,\n) =>\n [\n (props.enableRowDragging || props.enableRowOrdering) && 'mrt-row-drag',\n ((props.positionActionsColumn === 'first' && props.enableRowActions) ||\n (props.enableEditing && props.editingMode === 'row')) &&\n 'mrt-row-actions',\n (props.enableExpanding ||\n props.enableGrouping ||\n props.renderDetailPanel) &&\n 'mrt-row-expand',\n props.enableRowSelection && 'mrt-row-select',\n props.enableRowNumbers && 'mrt-row-numbers',\n ].filter(Boolean) as MRT_DisplayColumnIds[];\n\nexport const getTrailingDisplayColumnIds = <\n TData extends Record<string, any> = {},\n>(\n props: MaterialReactTableProps<TData>,\n) => [\n ((props.positionActionsColumn === 'last' && props.enableRowActions) ||\n (props.enableEditing && props.editingMode === 'row')) &&\n 'mrt-row-actions',\n];\n\nexport const getDefaultColumnOrderIds = <\n TData extends Record<string, any> = {},\n>(\n props: MaterialReactTableProps<TData>,\n) =>\n [\n ...getLeadingDisplayColumnIds(props),\n ...getAllLeafColumnDefs(props.columns).map((columnDef) =>\n getColumnId(columnDef),\n ),\n ...getTrailingDisplayColumnIds(props),\n ].filter(Boolean) as string[];\n","import React, {\n Dispatch,\n DragEvent,\n FC,\n SetStateAction,\n useState,\n} from 'react';\nimport {\n Box,\n FormControlLabel,\n MenuItem,\n Switch,\n Tooltip,\n Typography,\n} from '@mui/material';\nimport { MRT_ColumnPinningButtons } from '../buttons/MRT_ColumnPinningButtons';\nimport { MRT_GrabHandleButton } from '../buttons/MRT_GrabHandleButton';\nimport { reorderColumn } from '../column.utils';\nimport type { MRT_Column, MRT_TableInstance } from '..';\n\ninterface Props {\n allColumns: MRT_Column[];\n column: MRT_Column;\n currentHoveredColumn: MRT_Column | null;\n isSubMenu?: boolean;\n setCurrentHoveredColumn: Dispatch<SetStateAction<MRT_Column | null>>;\n table: MRT_TableInstance;\n}\n\nexport const MRT_ShowHideColumnsMenuItems: FC<Props> = ({\n allColumns,\n currentHoveredColumn,\n setCurrentHoveredColumn,\n column,\n isSubMenu,\n table,\n}) => {\n const {\n getState,\n options: {\n enableColumnOrdering,\n enableHiding,\n enablePinning,\n localization,\n },\n setColumnOrder,\n } = table;\n const { columnOrder } = getState();\n const { columnDef } = column;\n const { columnDefType } = columnDef;\n\n const switchChecked =\n (columnDefType !== 'group' && column.getIsVisible()) ||\n (columnDefType === 'group' &&\n column.getLeafColumns().some((col) => col.getIsVisible()));\n\n const handleToggleColumnHidden = (column: MRT_Column) => {\n if (columnDefType === 'group') {\n column?.columns?.forEach?.((childColumn: MRT_Column) => {\n childColumn.toggleVisibility(!switchChecked);\n });\n } else {\n column.toggleVisibility();\n }\n };\n\n const menuItemRef = React.useRef<HTMLElement>(null);\n\n const [isDragging, setIsDragging] = useState(false);\n\n const handleDragStart = (e: DragEvent<HTMLButtonElement>) => {\n setIsDragging(true);\n e.dataTransfer.setDragImage(menuItemRef.current as HTMLElement, 0, 0);\n };\n\n const handleDragEnd = (_e: DragEvent<HTMLButtonElement>) => {\n setIsDragging(false);\n setCurrentHoveredColumn(null);\n if (currentHoveredColumn) {\n setColumnOrder(reorderColumn(column, currentHoveredColumn, columnOrder));\n }\n };\n\n const handleDragEnter = (_e: DragEvent) => {\n if (!isDragging) {\n setCurrentHoveredColumn(column);\n }\n };\n\n return (\n <>\n <MenuItem\n disableRipple\n ref={menuItemRef as any}\n onDragEnter={handleDragEnter}\n sx={(theme) => ({\n alignItems: 'center',\n justifyContent: 'flex-start',\n my: 0,\n opacity: isDragging ? 0.5 : 1,\n outline: isDragging\n ? `1px dashed ${theme.palette.divider}`\n : currentHoveredColumn?.id === column.id\n ? `2px dashed ${theme.palette.primary.main}`\n : 'none',\n pl: `${(column.depth + 0.5) * 2}rem`,\n py: '6px',\n })}\n >\n <Box\n sx={{\n display: 'flex',\n flexWrap: 'nowrap',\n gap: '8px',\n }}\n >\n {!isSubMenu &&\n columnDefType !== 'group' &&\n enableColumnOrdering &&\n !allColumns.some(\n (col) => col.columnDef.columnDefType === 'group',\n ) &&\n (columnDef.enableColumnOrdering !== false ? (\n <MRT_GrabHandleButton\n onDragEnd={handleDragEnd}\n onDragStart={handleDragStart}\n table={table}\n />\n ) : (\n <Box sx={{ width: '28px' }} />\n ))}\n {!isSubMenu &&\n enablePinning &&\n (column.getCanPin() ? (\n <MRT_ColumnPinningButtons column={column} table={table} />\n ) : (\n <Box sx={{ width: '70px' }} />\n ))}\n {enableHiding ? (\n <FormControlLabel\n componentsProps={{\n typography: {\n sx: {\n mb: 0,\n opacity: columnDefType !== 'display' ? 1 : 0.5,\n },\n },\n }}\n checked={switchChecked}\n control={\n <Tooltip\n arrow\n enterDelay={1000}\n enterNextDelay={1000}\n title={localization.toggleVisibility}\n >\n <Switch />\n </Tooltip>\n }\n disabled={\n (isSubMenu && switchChecked) ||\n !column.getCanHide() ||\n column.getIsGrouped()\n }\n label={columnDef.header}\n onChange={() => handleToggleColumnHidden(column)}\n />\n ) : (\n <Typography sx={{ alignSelf: 'center' }}>\n {columnDef.header}\n </Typography>\n )}\n </Box>\n </MenuItem>\n {column.columns?.map((c: MRT_Column, i) => (\n <MRT_ShowHideColumnsMenuItems\n allColumns={allColumns}\n column={c}\n currentHoveredColumn={currentHoveredColumn}\n isSubMenu={isSubMenu}\n key={`${i}-${c.id}`}\n setCurrentHoveredColumn={setCurrentHoveredColumn}\n table={table}\n />\n ))}\n </>\n );\n};\n","import React, { FC, useMemo, useState } from 'react';\nimport { Button, Menu, Divider, Box } from '@mui/material';\nimport { MRT_ShowHideColumnsMenuItems } from './MRT_ShowHideColumnsMenuItems';\nimport type { MRT_Column, MRT_TableInstance } from '..';\nimport { getDefaultColumnOrderIds } from '../column.utils';\n\ninterface Props {\n anchorEl: HTMLElement | null;\n isSubMenu?: boolean;\n setAnchorEl: (anchorEl: HTMLElement | null) => void;\n table: MRT_TableInstance;\n}\n\nexport const MRT_ShowHideColumnsMenu: FC<Props> = ({\n anchorEl,\n isSubMenu,\n setAnchorEl,\n table,\n}) => {\n const {\n getAllColumns,\n getAllLeafColumns,\n getCenterLeafColumns,\n getIsAllColumnsVisible,\n getIsSomeColumnsPinned,\n getIsSomeColumnsVisible,\n getLeftLeafColumns,\n getRightLeafColumns,\n getState,\n toggleAllColumnsVisible,\n options: { localization, enablePinning, enableColumnOrdering },\n } = table;\n const { density, columnOrder, columnPinning } = getState();\n\n const hideAllColumns = () => {\n getAllLeafColumns()\n .filter((col) => col.columnDef.enableHiding !== false)\n .forEach((col) => col.toggleVisibility(false));\n };\n\n const allColumns = useMemo(() => {\n const columns = getAllColumns();\n if (\n columnOrder.length > 0 &&\n !columns.some((col) => col.columnDef.columnDefType === 'group')\n ) {\n return [\n ...getLeftLeafColumns(),\n ...Array.from(new Set(columnOrder)).map((colId) =>\n getCenterLeafColumns().find((col) => col?.id === colId),\n ),\n ...getRightLeafColumns(),\n ].filter(Boolean);\n }\n return columns;\n }, [\n columnOrder,\n columnPinning,\n getAllColumns(),\n getCenterLeafColumns(),\n getLeftLeafColumns(),\n getRightLeafColumns(),\n ]) as MRT_Column[];\n\n const [currentHoveredColumn, setCurrentHoveredColumn] =\n useState<MRT_Column | null>(null);\n\n return (\n <Menu\n anchorEl={anchorEl}\n open={!!anchorEl}\n onClose={() => setAnchorEl(null)}\n MenuListProps={{\n dense: density === 'compact',\n }}\n >\n <Box\n sx={{\n display: 'flex',\n justifyContent: isSubMenu ? 'center' : 'space-between',\n p: '0.5rem',\n pt: 0,\n }}\n >\n {!isSubMenu && (\n <Button\n disabled={!getIsSomeColumnsVisible()}\n onClick={hideAllColumns}\n >\n {localization.hideAll}\n </Button>\n )}\n {!isSubMenu && enableColumnOrdering && (\n <Button\n onClick={() =>\n table.setColumnOrder(\n getDefaultColumnOrderIds(table.options as any),\n )\n }\n >\n {localization.resetOrder}\n </Button>\n )}\n {!isSubMenu && enablePinning && (\n <Button\n disabled={!getIsSomeColumnsPinned()}\n onClick={() => table.resetColumnPinning(true)}\n >\n {localization.unpinAll}\n </Button>\n )}\n <Button\n disabled={getIsAllColumnsVisible()}\n onClick={() => toggleAllColumnsVisible(true)}\n >\n {localization.showAll}\n </Button>\n </Box>\n <Divider />\n {allColumns.map((column, index) => (\n <MRT_ShowHideColumnsMenuItems\n allColumns={allColumns}\n column={column}\n currentHoveredColumn={currentHoveredColumn}\n isSubMenu={isSubMenu}\n key={`${index}-${column.id}`}\n setCurrentHoveredColumn={setCurrentHoveredColumn}\n table={table}\n />\n ))}\n </Menu>\n );\n};\n","import React, { FC, useState } from 'react';\nimport { Box, IconButton, ListItemIcon, Menu, MenuItem } from '@mui/material';\nimport type { MRT_Header, MRT_TableInstance } from '..';\nimport { MRT_FilterOptionMenu } from './MRT_FilterOptionMenu';\nimport { MRT_ShowHideColumnsMenu } from './MRT_ShowHideColumnsMenu';\n\nexport const commonMenuItemStyles = {\n py: '6px',\n my: 0,\n justifyContent: 'space-between',\n alignItems: 'center',\n};\n\nexport const commonListItemStyles = {\n display: 'flex',\n alignItems: 'center',\n};\n\ninterface Props {\n anchorEl: HTMLElement | null;\n header: MRT_Header;\n setAnchorEl: (anchorEl: HTMLElement | null) => void;\n table: MRT_TableInstance;\n}\n\nexport const MRT_ColumnActionMenu: FC<Props> = ({\n anchorEl,\n header,\n setAnchorEl,\n table,\n}) => {\n const {\n getState,\n toggleAllColumnsVisible,\n setColumnOrder,\n options: {\n enableColumnFilterChangeMode,\n enableColumnFilters,\n enableColumnResizing,\n enableGrouping,\n enableHiding,\n enablePinning,\n enableSorting,\n enabledColumnFilterOptions,\n icons: {\n ArrowRightIcon,\n ClearAllIcon,\n ViewColumnIcon,\n DynamicFeedIcon,\n FilterListIcon,\n FilterListOffIcon,\n PushPinIcon,\n SortIcon,\n RestartAltIcon,\n VisibilityOffIcon,\n },\n tableId,\n localization,\n },\n setShowFilters,\n } = table;\n const { column } = header;\n const { columnDef } = column;\n const { columnSizing, columnVisibility, density } = getState();\n\n const [filterMenuAnchorEl, setFilterMenuAnchorEl] =\n useState<null | HTMLElement>(null);\n const [showHideColumnsMenuAnchorEl, setShowHideColumnsMenuAnchorEl] =\n useState<null | HTMLElement>(null);\n\n const handleClearSort = () => {\n column.clearSorting();\n setAnchorEl(null);\n };\n\n const handleSortAsc = () => {\n column.toggleSorting(false);\n setAnchorEl(null);\n };\n\n const handleSortDesc = () => {\n column.toggleSorting(true);\n setAnchorEl(null);\n };\n\n const handleResetColumnSize = () => {\n column.resetSize();\n setAnchorEl(null);\n };\n\n const handleHideColumn = () => {\n column.toggleVisibility(false);\n setAnchorEl(null);\n };\n\n const handlePinColumn = (pinDirection: 'left' | 'right' | false) => {\n column.pin(pinDirection);\n setAnchorEl(null);\n };\n\n const handleGroupByColumn = () => {\n column.toggleGrouping();\n setColumnOrder((old) => ['mrt-row-expand', ...old]);\n setAnchorEl(null);\n };\n\n const handleClearFilter = () => {\n column.setFilterValue('');\n setAnchorEl(null);\n };\n\n const handleFilterByColumn = () => {\n setShowFilters(true);\n setTimeout(\n () =>\n document\n .getElementById(\n // @ts-ignore\n header.muiTableHeadCellFilterTextFieldProps?.id ??\n `mrt-${tableId}-${header.id}-filter-text-field`,\n )\n ?.focus(),\n 200,\n );\n setAnchorEl(null);\n };\n\n const handleShowAllColumns = () => {\n toggleAllColumnsVisible(true);\n setAnchorEl(null);\n };\n\n const handleOpenFilterModeMenu = (event: React.MouseEvent<HTMLElement>) => {\n event.stopPropagation();\n setFilterMenuAnchorEl(event.currentTarget);\n };\n\n const handleOpenShowHideColumnsMenu = (\n event: React.MouseEvent<HTMLElement>,\n ) => {\n event.stopPropagation();\n setShowHideColumnsMenuAnchorEl(event.currentTarget);\n };\n\n const isSelectFilter = !!columnDef.filterSelectOptions;\n\n const allowedColumnFilterOptions =\n columnDef?.enabledColumnFilterOptions ?? enabledColumnFilterOptions;\n\n const showFilterModeSubMenu =\n enableColumnFilterChangeMode &&\n columnDef.enableColumnFilterChangeMode !== false &&\n !isSelectFilter &&\n (allowedColumnFilterOptions === undefined ||\n !!allowedColumnFilterOptions?.length);\n\n return (\n <Menu\n anchorEl={anchorEl}\n open={!!anchorEl}\n onClose={() => setAnchorEl(null)}\n MenuListProps={{\n dense: density === 'compact',\n }}\n >\n {enableSorting &&\n column.getCanSort() && [\n <MenuItem\n disabled={!column.getIsSorted()}\n key={0}\n onClick={handleClearSort}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <ClearAllIcon />\n </ListItemIcon>\n {localization.clearSort}\n </Box>\n </MenuItem>,\n <MenuItem\n disabled={column.getIsSorted() === 'asc'}\n key={1}\n onClick={handleSortAsc}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <SortIcon />\n </ListItemIcon>\n {localization.sortByColumnAsc?.replace(\n '{column}',\n String(columnDef.header),\n )}\n </Box>\n </MenuItem>,\n <MenuItem\n divider={enableColumnFilters || enableGrouping || enableHiding}\n key={2}\n disabled={column.getIsSorted() === 'desc'}\n onClick={handleSortDesc}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <SortIcon style={{ transform: 'rotate(180deg) scaleX(-1)' }} />\n </ListItemIcon>\n {localization.sortByColumnDesc?.replace(\n '{column}',\n String(columnDef.header),\n )}\n </Box>\n </MenuItem>,\n ]}\n {enableColumnFilters &&\n column.getCanFilter() &&\n [\n <MenuItem\n disabled={!column.getFilterValue()}\n key={0}\n onClick={handleClearFilter}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <FilterListOffIcon />\n </ListItemIcon>\n {localization.clearFilter}\n </Box>\n </MenuItem>,\n <MenuItem\n divider={enableGrouping || enableHiding}\n key={1}\n onClick={handleFilterByColumn}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <FilterListIcon />\n </ListItemIcon>\n {localization.filterByColumn?.replace(\n '{column}',\n String(columnDef.header),\n )}\n </Box>\n {showFilterModeSubMenu && (\n <IconButton\n onClick={handleOpenFilterModeMenu}\n onMouseEnter={handleOpenFilterModeMenu}\n size=\"small\"\n sx={{ p: 0 }}\n >\n <ArrowRightIcon />\n </IconButton>\n )}\n </MenuItem>,\n showFilterModeSubMenu && (\n <MRT_FilterOptionMenu\n anchorEl={filterMenuAnchorEl}\n header={header}\n key={2}\n onSelect={handleFilterByColumn}\n setAnchorEl={setFilterMenuAnchorEl}\n table={table}\n />\n ),\n ].filter(Boolean)}\n {enableGrouping &&\n column.getCanGroup() && [\n <MenuItem\n divider={enablePinning}\n key={0}\n onClick={handleGroupByColumn}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <DynamicFeedIcon />\n </ListItemIcon>\n {localization[\n column.getIsGrouped() ? 'ungroupByColumn' : 'groupByColumn'\n ]?.replace('{column}', String(columnDef.header))}\n </Box>\n </MenuItem>,\n ]}\n {enablePinning &&\n column.getCanPin() && [\n <MenuItem\n disabled={column.getIsPinned() === 'left' || !column.getCanPin()}\n key={0}\n onClick={() => handlePinColumn('left')}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <PushPinIcon style={{ transform: 'rotate(90deg)' }} />\n </ListItemIcon>\n {localization.pinToLeft}\n </Box>\n </MenuItem>,\n <MenuItem\n disabled={column.getIsPinned() === 'right' || !column.getCanPin()}\n key={1}\n onClick={() => handlePinColumn('right')}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <PushPinIcon style={{ transform: 'rotate(-90deg)' }} />\n </ListItemIcon>\n {localization.pinToRight}\n </Box>\n </MenuItem>,\n <MenuItem\n disabled={!column.getIsPinned()}\n divider={enableHiding}\n key={2}\n onClick={() => handlePinColumn(false)}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <PushPinIcon />\n </ListItemIcon>\n {localization.unpin}\n </Box>\n </MenuItem>,\n ]}\n {enableColumnResizing &&\n column.getCanResize() && [\n <MenuItem\n disabled={!columnSizing[column.id]}\n key={0}\n onClick={handleResetColumnSize}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <RestartAltIcon />\n </ListItemIcon>\n {localization.resetColumnSize}\n </Box>\n </MenuItem>,\n ]}\n {enableHiding && [\n <MenuItem\n disabled={columnDef.enableHiding === false}\n key={0}\n onClick={handleHideColumn}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <VisibilityOffIcon />\n </ListItemIcon>\n {localization.hideColumn?.replace(\n '{column}',\n String(columnDef.header),\n )}\n </Box>\n </MenuItem>,\n <MenuItem\n disabled={\n !Object.values(columnVisibility).filter((visible) => !visible)\n .length\n }\n key={1}\n onClick={handleShowAllColumns}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <ViewColumnIcon />\n </ListItemIcon>\n {localization.showAllColumns?.replace(\n '{column}',\n String(columnDef.header),\n )}\n </Box>\n <IconButton\n onClick={handleOpenShowHideColumnsMenu}\n onMouseEnter={handleOpenShowHideColumnsMenu}\n size=\"small\"\n sx={{ p: 0 }}\n >\n <ArrowRightIcon />\n </IconButton>\n </MenuItem>,\n <MRT_ShowHideColumnsMenu\n anchorEl={showHideColumnsMenuAnchorEl}\n isSubMenu\n key={2}\n setAnchorEl={setShowHideColumnsMenuAnchorEl}\n table={table}\n />,\n ]}\n </Menu>\n );\n};\n","import React, { FC } from 'react';\nimport { Box, ListItemIcon, Menu, MenuItem } from '@mui/material';\nimport type { MRT_Row, MRT_TableInstance } from '..';\nimport {\n commonListItemStyles,\n commonMenuItemStyles,\n} from './MRT_ColumnActionMenu';\n\ninterface Props {\n anchorEl: HTMLElement | null;\n handleEdit: () => void;\n row: MRT_Row;\n setAnchorEl: (anchorEl: HTMLElement | null) => void;\n table: MRT_TableInstance;\n}\n\nexport const MRT_RowActionMenu: FC<Props> = ({\n anchorEl,\n handleEdit,\n row,\n setAnchorEl,\n table,\n}) => {\n const {\n getState,\n options: {\n icons: { EditIcon },\n enableEditing,\n localization,\n renderRowActionMenuItems,\n },\n } = table;\n const { density } = getState();\n\n return (\n <Menu\n anchorEl={anchorEl}\n open={!!anchorEl}\n onClose={() => setAnchorEl(null)}\n MenuListProps={{\n dense: density === 'compact',\n }}\n >\n {enableEditing && (\n <MenuItem onClick={handleEdit} sx={commonMenuItemStyles}>\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <EditIcon />\n </ListItemIcon>\n {localization.edit}\n </Box>\n </MenuItem>\n )}\n {renderRowActionMenuItems?.({\n row,\n table,\n closeMenu: () => setAnchorEl(null),\n })}\n </Menu>\n );\n};\n","import React, { FC } from 'react';\nimport { Box, IconButton, Tooltip } from '@mui/material';\nimport type { MRT_Row, MRT_TableInstance } from '..';\n\ninterface Props {\n row: MRT_Row;\n table: MRT_TableInstance;\n}\n\nexport const MRT_EditActionButtons: FC<Props> = ({ row, table }) => {\n const {\n getState,\n options: {\n icons: { CancelIcon, SaveIcon },\n localization,\n onEditRowSubmit,\n },\n setCurrentEditingRow,\n } = table;\n const { currentEditingRow } = getState();\n\n const handleCancel = () => {\n row._valuesCache = row.original ?? {};\n setCurrentEditingRow(null);\n };\n\n const handleSave = () => {\n onEditRowSubmit?.({ row: currentEditingRow ?? row, table });\n setCurrentEditingRow(null);\n };\n\n return (\n <Box sx={{ display: 'flex', gap: '0.75rem' }}>\n <Tooltip arrow title={localization.cancel}>\n <IconButton aria-label={localization.cancel} onClick={handleCancel}>\n <CancelIcon />\n </IconButton>\n </Tooltip>\n <Tooltip arrow title={localization.save}>\n <IconButton\n aria-label={localization.save}\n color=\"info\"\n onClick={handleSave}\n >\n <SaveIcon />\n </IconButton>\n </Tooltip>\n </Box>\n );\n};\n","import React, { FC, MouseEvent, useState } from 'react';\nimport { IconButton, Tooltip } from '@mui/material';\nimport { MRT_RowActionMenu } from '../menus/MRT_RowActionMenu';\nimport { MRT_EditActionButtons } from './MRT_EditActionButtons';\nimport type { MRT_Row, MRT_TableInstance } from '..';\n\nconst commonIconButtonStyles = {\n height: '2rem',\n ml: '10px',\n opacity: 0.5,\n transition: 'opacity 0.2s',\n width: '2rem',\n '&:hover': {\n opacity: 1,\n },\n};\n\ninterface Props {\n row: MRT_Row;\n table: MRT_TableInstance;\n}\n\nexport const MRT_ToggleRowActionMenuButton: FC<Props> = ({ row, table }) => {\n const {\n getState,\n options: {\n enableEditing,\n icons: { EditIcon, MoreHorizIcon },\n localization,\n renderRowActionMenuItems,\n renderRowActions,\n },\n setCurrentEditingRow,\n } = table;\n\n const { currentEditingRow } = getState();\n\n const [anchorEl, setAnchorEl] = useState<null | HTMLElement>(null);\n\n const handleOpenRowActionMenu = (event: MouseEvent<HTMLElement>) => {\n event.stopPropagation();\n event.preventDefault();\n setAnchorEl(event.currentTarget);\n };\n\n const handleStartEditMode = () => {\n setCurrentEditingRow({ ...row });\n setAnchorEl(null);\n };\n\n return (\n <>\n {renderRowActions ? (\n <>{renderRowActions({ row, table })}</>\n ) : row.id === currentEditingRow?.id ? (\n <MRT_EditActionButtons row={row} table={table} />\n ) : !renderRowActionMenuItems && enableEditing ? (\n <Tooltip placement=\"right\" arrow title={localization.edit}>\n <IconButton sx={commonIconButtonStyles} onClick={handleStartEditMode}>\n <EditIcon />\n </IconButton>\n </Tooltip>\n ) : renderRowActionMenuItems ? (\n <>\n <Tooltip\n arrow\n enterDelay={1000}\n enterNextDelay={1000}\n title={localization.rowActions}\n >\n <IconButton\n aria-label={localization.rowActions}\n onClick={handleOpenRowActionMenu}\n size=\"small\"\n sx={commonIconButtonStyles}\n >\n <MoreHorizIcon />\n </IconButton>\n </Tooltip>\n <MRT_RowActionMenu\n anchorEl={anchorEl}\n handleEdit={handleStartEditMode}\n row={row}\n setAnchorEl={setAnchorEl}\n table={table}\n />\n </>\n ) : null}\n </>\n );\n};\n","import React, { FC } from 'react';\nimport { Checkbox, Tooltip } from '@mui/material';\nimport type { MRT_Row, MRT_TableInstance } from '..';\n\ninterface Props {\n row?: MRT_Row;\n selectAll?: boolean;\n table: MRT_TableInstance;\n}\n\nexport const MRT_SelectCheckbox: FC<Props> = ({ row, selectAll, table }) => {\n const {\n getState,\n options: {\n localization,\n muiSelectCheckboxProps,\n muiSelectAllCheckboxProps,\n selectAllMode,\n },\n } = table;\n const { density } = getState();\n\n const checkboxProps = !row\n ? muiSelectAllCheckboxProps instanceof Function\n ? muiSelectAllCheckboxProps({ table })\n : muiSelectAllCheckboxProps\n : muiSelectCheckboxProps instanceof Function\n ? muiSelectCheckboxProps({ row, table })\n : muiSelectCheckboxProps;\n\n return (\n <Tooltip\n arrow\n enterDelay={1000}\n enterNextDelay={1000}\n title={\n selectAll ? localization.toggleSelectAll : localization.toggleSelectRow\n }\n >\n <Checkbox\n checked={\n selectAll ? table.getIsAllRowsSelected() : row?.getIsSelected()\n }\n indeterminate={\n selectAll ? table.getIsSomeRowsSelected() : row?.getIsSomeSelected()\n }\n inputProps={{\n 'aria-label': selectAll\n ? localization.toggleSelectAll\n : localization.toggleSelectRow,\n }}\n onChange={\n !row\n ? selectAllMode === 'all'\n ? table.getToggleAllRowsSelectedHandler()\n : table.getToggleAllPageRowsSelectedHandler()\n : row.getToggleSelectedHandler()\n }\n size={density === 'compact' ? 'small' : 'medium'}\n {...checkboxProps}\n sx={(theme) => ({\n height: density === 'compact' ? '1.5rem' : '2rem',\n width: density === 'compact' ? '1.5rem' : '2rem',\n m: '-1re.m',\n ...(checkboxProps?.sx instanceof Function\n ? checkboxProps.sx(theme)\n : (checkboxProps?.sx as any)),\n })}\n />\n </Tooltip>\n );\n};\n","import React, { FC } from 'react';\nimport { IconButton, IconButtonProps, Tooltip } from '@mui/material';\nimport { MRT_TableInstance } from '..';\n\ninterface Props extends IconButtonProps {\n table: MRT_TableInstance;\n}\n\nexport const MRT_FullScreenToggleButton: FC<Props> = ({ table, ...rest }) => {\n const {\n getState,\n options: {\n icons: { FullscreenExitIcon, FullscreenIcon },\n localization,\n },\n setIsFullScreen,\n } = table;\n const { isFullScreen } = getState();\n\n const handleToggleFullScreen = () => {\n setIsFullScreen(!isFullScreen);\n };\n\n return (\n <Tooltip arrow title={localization.toggleFullScreen}>\n <IconButton\n aria-label={localization.showHideFilters}\n onClick={handleToggleFullScreen}\n {...rest}\n >\n {isFullScreen ? <FullscreenExitIcon /> : <FullscreenIcon />}\n </IconButton>\n </Tooltip>\n );\n};\n","import React, { FC, MouseEvent, useState } from 'react';\nimport { IconButton, Tooltip, IconButtonProps } from '@mui/material';\nimport { MRT_ShowHideColumnsMenu } from '../menus/MRT_ShowHideColumnsMenu';\nimport { MRT_TableInstance } from '..';\n\ninterface Props extends IconButtonProps {\n table: MRT_TableInstance;\n}\n\nexport const MRT_ShowHideColumnsButton: FC<Props> = ({ table, ...rest }) => {\n const {\n options: {\n icons: { ViewColumnIcon },\n localization,\n },\n } = table;\n\n const [anchorEl, setAnchorEl] = useState<null | HTMLElement>(null);\n\n const handleClick = (event: MouseEvent<HTMLElement>) => {\n setAnchorEl(event.currentTarget);\n };\n\n return (\n <>\n <Tooltip arrow title={localization.showHideColumns}>\n <IconButton\n aria-label={localization.showHideColumns}\n onClick={handleClick}\n {...rest}\n >\n <ViewColumnIcon />\n </IconButton>\n </Tooltip>\n <MRT_ShowHideColumnsMenu\n anchorEl={anchorEl}\n setAnchorEl={setAnchorEl}\n table={table}\n />\n </>\n );\n};\n","import React, { FC } from 'react';\nimport { IconButton, IconButtonProps, Tooltip } from '@mui/material';\nimport { MRT_TableInstance } from '..';\n\ninterface Props extends IconButtonProps {\n table: MRT_TableInstance;\n}\n\nexport const MRT_ToggleDensePaddingButton: FC<Props> = ({ table, ...rest }) => {\n const {\n getState,\n options: {\n icons: { DensityLargeIcon, DensityMediumIcon, DensitySmallIcon },\n localization,\n },\n setDensity,\n } = table;\n const { density } = getState();\n\n const handleToggleDensePadding = () => {\n const nextDensity =\n density === 'comfortable'\n ? 'compact'\n : density === 'compact'\n ? 'spacious'\n : 'comfortable';\n setDensity(nextDensity);\n };\n\n return (\n <Tooltip arrow title={localization.toggleDensity}>\n <IconButton\n aria-label={localization.toggleDensity}\n onClick={handleToggleDensePadding}\n {...rest}\n >\n {density === 'compact' ? (\n <DensitySmallIcon />\n ) : density === 'comfortable' ? (\n <DensityMediumIcon />\n ) : (\n <DensityLargeIcon />\n )}\n </IconButton>\n </Tooltip>\n );\n};\n","import React, { FC } from 'react';\nimport { IconButton, IconButtonProps, Tooltip } from '@mui/material';\nimport { MRT_TableInstance } from '..';\n\ninterface Props extends IconButtonProps {\n table: MRT_TableInstance;\n}\n\nexport const MRT_ToggleFiltersButton: FC<Props> = ({ table, ...rest }) => {\n const {\n getState,\n options: {\n icons: { FilterListIcon, FilterListOffIcon },\n localization,\n },\n setShowFilters,\n } = table;\n const { showColumnFilters } = getState();\n\n const handleToggleShowFilters = () => {\n setShowFilters(!showColumnFilters);\n };\n\n return (\n <Tooltip arrow title={localization.showHideFilters}>\n <IconButton\n aria-label={localization.showHideFilters}\n onClick={handleToggleShowFilters}\n {...rest}\n >\n {showColumnFilters ? <FilterListOffIcon /> : <FilterListIcon />}\n </IconButton>\n </Tooltip>\n );\n};\n","import React, { FC } from 'react';\nimport { IconButton, IconButtonProps, Tooltip } from '@mui/material';\nimport { MRT_TableInstance } from '..';\n\ninterface Props extends IconButtonProps {\n table: MRT_TableInstance;\n}\n\nexport const MRT_ToggleGlobalFilterButton: FC<Props> = ({ table, ...rest }) => {\n const {\n getState,\n options: {\n icons: { SearchIcon, SearchOffIcon },\n tableId,\n localization,\n muiSearchTextFieldProps,\n },\n setShowGlobalFilter,\n } = table;\n const { showGlobalFilter } = getState();\n\n const textFieldProps =\n muiSearchTextFieldProps instanceof Function\n ? muiSearchTextFieldProps({ table })\n : muiSearchTextFieldProps;\n\n const handleToggleSearch = () => {\n setShowGlobalFilter(!showGlobalFilter);\n setTimeout(\n () =>\n document\n .getElementById(\n textFieldProps?.id ?? `mrt-${tableId}-search-text-field`,\n )\n ?.focus(),\n 200,\n );\n };\n\n return (\n <Tooltip arrow title={localization.showHideSearch}>\n <IconButton onClick={handleToggleSearch} {...rest}>\n {showGlobalFilter ? <SearchOffIcon /> : <SearchIcon />}\n </IconButton>\n </Tooltip>\n );\n};\n","import React, {\n ChangeEvent,\n FC,\n MouseEvent,\n useCallback,\n useState,\n} from 'react';\nimport {\n Collapse,\n debounce,\n IconButton,\n InputAdornment,\n TextField,\n Tooltip,\n} from '@mui/material';\nimport { MRT_FilterOptionMenu } from '../menus/MRT_FilterOptionMenu';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n table: MRT_TableInstance;\n}\n\nexport const MRT_GlobalFilterTextField: FC<Props> = ({ table }) => {\n const {\n getState,\n setGlobalFilter,\n options: {\n enableGlobalFilterChangeMode,\n icons: { SearchIcon, CloseIcon },\n localization,\n muiSearchTextFieldProps,\n tableId,\n },\n } = table;\n const { globalFilter, showGlobalFilter } = getState();\n\n const [anchorEl, setAnchorEl] = useState<null | HTMLElement>(null);\n const [searchValue, setSearchValue] = useState(globalFilter ?? '');\n\n const handleChangeDebounced = useCallback(\n debounce((event: ChangeEvent<HTMLInputElement>) => {\n setGlobalFilter(event.target.value ?? undefined);\n }, 250),\n [],\n );\n\n const handleChange = (event: ChangeEvent<HTMLInputElement>) => {\n setSearchValue(event.target.value);\n handleChangeDebounced(event);\n };\n\n const handleGlobalFilterMenuOpen = (event: MouseEvent<HTMLElement>) => {\n setAnchorEl(event.currentTarget);\n };\n\n const handleClear = () => {\n setSearchValue('');\n setGlobalFilter(undefined);\n };\n\n const textFieldProps =\n muiSearchTextFieldProps instanceof Function\n ? muiSearchTextFieldProps({ table })\n : muiSearchTextFieldProps;\n\n return (\n <Collapse in={showGlobalFilter} orientation=\"horizontal\">\n <TextField\n id={`mrt-${tableId}-search-text-field`}\n placeholder={localization.search}\n onChange={handleChange}\n value={searchValue ?? ''}\n variant=\"standard\"\n InputProps={{\n startAdornment: enableGlobalFilterChangeMode ? (\n <InputAdornment position=\"start\">\n <Tooltip arrow title={localization.changeSearchMode}>\n <IconButton\n aria-label={localization.changeSearchMode}\n onClick={handleGlobalFilterMenuOpen}\n size=\"small\"\n sx={{ height: '1.75rem', width: '1.75rem' }}\n >\n <SearchIcon />\n </IconButton>\n </Tooltip>\n </InputAdornment>\n ) : (\n <SearchIcon />\n ),\n endAdornment: (\n <InputAdornment position=\"end\">\n <Tooltip arrow title={localization.clearSearch ?? ''}>\n <span>\n <IconButton\n aria-label={localization.clearSearch}\n disabled={!searchValue?.length}\n onClick={handleClear}\n size=\"small\"\n >\n <CloseIcon />\n </IconButton>\n </span>\n </Tooltip>\n </InputAdornment>\n ),\n }}\n {...textFieldProps}\n />\n <MRT_FilterOptionMenu\n anchorEl={anchorEl}\n setAnchorEl={setAnchorEl}\n table={table}\n />\n </Collapse>\n );\n};\n","import React, { FC } from 'react';\nimport { Box } from '@mui/material';\nimport { MRT_FullScreenToggleButton } from '../buttons/MRT_FullScreenToggleButton';\nimport { MRT_ShowHideColumnsButton } from '../buttons/MRT_ShowHideColumnsButton';\nimport { MRT_ToggleDensePaddingButton } from '../buttons/MRT_ToggleDensePaddingButton';\nimport { MRT_ToggleFiltersButton } from '../buttons/MRT_ToggleFiltersButton';\nimport { MRT_ToggleGlobalFilterButton } from '../buttons/MRT_ToggleGlobalFilterButton';\nimport { MRT_TableInstance } from '..';\nimport { MRT_GlobalFilterTextField } from '../inputs/MRT_GlobalFilterTextField';\n\ninterface Props {\n table: MRT_TableInstance;\n}\n\nexport const MRT_ToolbarInternalButtons: FC<Props> = ({ table }) => {\n const {\n options: {\n enableColumnFilters,\n enableColumnOrdering,\n enableDensityToggle,\n enableFilters,\n enableFullScreenToggle,\n enableGlobalFilter,\n enableHiding,\n enablePinning,\n positionGlobalFilter,\n renderToolbarInternalActions,\n },\n } = table;\n\n return (\n <Box\n sx={{\n alignItems: 'center',\n display: 'flex',\n zIndex: 3,\n }}\n >\n {renderToolbarInternalActions?.({\n MRT_FullScreenToggleButton,\n MRT_ShowHideColumnsButton,\n MRT_ToggleDensePaddingButton,\n MRT_ToggleFiltersButton,\n MRT_ToggleGlobalFilterButton,\n table,\n }) ?? (\n <>\n {enableGlobalFilter && positionGlobalFilter === 'right' && (\n <MRT_GlobalFilterTextField table={table} />\n )}\n {enableFilters && enableGlobalFilter && (\n <MRT_ToggleGlobalFilterButton table={table} />\n )}\n {enableFilters && enableColumnFilters && (\n <MRT_ToggleFiltersButton table={table} />\n )}\n {(enableHiding || enableColumnOrdering || enablePinning) && (\n <MRT_ShowHideColumnsButton table={table} />\n )}\n {enableDensityToggle && (\n <MRT_ToggleDensePaddingButton table={table} />\n )}\n {enableFullScreenToggle && (\n <MRT_FullScreenToggleButton table={table} />\n )}\n </>\n )}\n </Box>\n );\n};\n","import React, { ChangeEvent, FC } from 'react';\nimport { TablePagination } from '@mui/material';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n table: MRT_TableInstance;\n position: 'top' | 'bottom';\n}\n\nexport const MRT_TablePagination: FC<Props> = ({ table, position }) => {\n const {\n getPrePaginationRowModel,\n getState,\n setPageIndex,\n setPageSize,\n options: {\n muiTablePaginationProps,\n enableToolbarInternalActions,\n rowCount,\n },\n } = table;\n const {\n pagination: { pageSize = 10, pageIndex = 0 },\n showGlobalFilter,\n } = getState();\n\n const totalRowCount = rowCount ?? getPrePaginationRowModel().rows.length;\n const showFirstLastPageButtons = totalRowCount / pageSize > 2;\n\n const tablePaginationProps =\n muiTablePaginationProps instanceof Function\n ? muiTablePaginationProps({ table })\n : muiTablePaginationProps;\n\n const handleChangeRowsPerPage = (event: ChangeEvent<HTMLInputElement>) => {\n setPageSize(+event.target.value);\n };\n\n return (\n <TablePagination\n SelectProps={{\n sx: { m: '0 1rem 0 1ch' },\n MenuProps: { MenuListProps: { disablePadding: true } },\n }}\n component=\"div\"\n count={totalRowCount}\n onPageChange={(_: any, newPage: number) => setPageIndex(newPage)}\n onRowsPerPageChange={handleChangeRowsPerPage}\n page={pageIndex}\n rowsPerPage={pageSize}\n rowsPerPageOptions={[5, 10, 15, 20, 25, 30, 50, 100]}\n showFirstButton={showFirstLastPageButtons}\n showLastButton={showFirstLastPageButtons}\n {...tablePaginationProps}\n sx={(theme) => ({\n m: '0 0.5rem',\n mt:\n position === 'top' &&\n enableToolbarInternalActions &&\n !showGlobalFilter\n ? '3.5rem'\n : undefined,\n position: 'relative',\n zIndex: 2,\n ...(tablePaginationProps?.sx instanceof Function\n ? tablePaginationProps.sx(theme)\n : (tablePaginationProps?.sx as any)),\n })}\n />\n );\n};\n","import React, { FC, Fragment } from 'react';\nimport { Alert, AlertTitle, Box, Chip, Collapse } from '@mui/material';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n stackAlertBanner?: boolean;\n table: MRT_TableInstance;\n}\n\nexport const MRT_ToolbarAlertBanner: FC<Props> = ({\n stackAlertBanner,\n table,\n}) => {\n const {\n getPrePaginationRowModel,\n getSelectedRowModel,\n getState,\n options: { localization, muiTableToolbarAlertBannerProps },\n } = table;\n const { grouping, showAlertBanner } = getState();\n\n const alertProps =\n muiTableToolbarAlertBannerProps instanceof Function\n ? muiTableToolbarAlertBannerProps({ table })\n : muiTableToolbarAlertBannerProps;\n\n const selectMessage =\n getSelectedRowModel().rows.length > 0\n ? localization.selectedCountOfRowCountRowsSelected\n ?.replace(\n '{selectedCount}',\n getSelectedRowModel().rows.length.toString(),\n )\n ?.replace(\n '{rowCount}',\n getPrePaginationRowModel().rows.length.toString(),\n )\n : null;\n\n const groupedByMessage =\n grouping.length > 0 ? (\n <span>\n {localization.groupedBy}{' '}\n {grouping.map((columnId, index) => (\n <Fragment key={`${index}-${columnId}`}>\n {index > 0 ? localization.thenBy : ''}\n <Chip\n color=\"secondary\"\n label={table.getColumn(columnId).columnDef.header}\n onDelete={() => table.getColumn(columnId).toggleGrouping()}\n />\n </Fragment>\n ))}\n </span>\n ) : null;\n\n return (\n <Collapse\n in={showAlertBanner || !!selectMessage || !!groupedByMessage}\n timeout={stackAlertBanner ? 200 : 0}\n >\n <Alert\n color=\"info\"\n icon={false}\n {...alertProps}\n sx={(theme) => ({\n borderRadius: 0,\n fontSize: '1rem',\n left: 0,\n p: 0,\n position: 'relative',\n right: 0,\n top: 0,\n width: '100%',\n zIndex: 2,\n ...(alertProps?.sx instanceof Function\n ? alertProps.sx(theme)\n : (alertProps?.sx as any)),\n })}\n >\n {alertProps?.title && <AlertTitle>{alertProps.title}</AlertTitle>}\n <Box sx={{ p: '0.5rem 1rem' }}>\n {alertProps?.children}\n {alertProps?.children && (selectMessage || groupedByMessage) && (\n <br />\n )}\n {selectMessage}\n {selectMessage && groupedByMessage && <br />}\n {groupedByMessage}\n </Box>\n </Alert>\n </Collapse>\n );\n};\n","import React, { FC } from 'react';\nimport { Collapse, LinearProgress } from '@mui/material';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n isTopToolbar: boolean;\n table: MRT_TableInstance;\n}\n\nexport const MRT_LinearProgressBar: FC<Props> = ({ isTopToolbar, table }) => {\n const {\n options: { muiLinearProgressProps },\n getState,\n } = table;\n const { isLoading, showProgressBars } = getState();\n\n const linearProgressProps =\n muiLinearProgressProps instanceof Function\n ? muiLinearProgressProps({ isTopToolbar, table })\n : muiLinearProgressProps;\n\n return (\n <Collapse\n in={isLoading || showProgressBars}\n mountOnEnter\n unmountOnExit\n sx={{\n bottom: isTopToolbar ? 0 : undefined,\n position: 'absolute',\n top: !isTopToolbar ? 0 : undefined,\n width: '100%',\n }}\n >\n <LinearProgress\n aria-label=\"Loading\"\n aria-busy=\"true\"\n sx={{ position: 'relative' }}\n {...linearProgressProps}\n />\n </Collapse>\n );\n};\n","import React, { FC } from 'react';\nimport { Box, lighten, Theme, Toolbar, useMediaQuery } from '@mui/material';\nimport { MRT_ToolbarInternalButtons } from './MRT_ToolbarInternalButtons';\nimport { MRT_TablePagination } from './MRT_TablePagination';\nimport { MRT_ToolbarAlertBanner } from './MRT_ToolbarAlertBanner';\nimport { MRT_LinearProgressBar } from './MRT_LinearProgressBar';\nimport { MRT_TableInstance } from '..';\nimport { MRT_GlobalFilterTextField } from '../inputs/MRT_GlobalFilterTextField';\n\nexport const commonToolbarStyles = ({ theme }: { theme: Theme }) => ({\n backgroundColor: lighten(theme.palette.background.default, 0.04),\n backgroundImage: 'none',\n display: 'grid',\n minHeight: '3.5rem',\n overflow: 'hidden',\n p: '0 !important',\n transition: 'all 0.2s ease-in-out',\n zIndex: 1,\n});\n\ninterface Props {\n table: MRT_TableInstance;\n}\n\nexport const MRT_ToolbarTop: FC<Props> = ({ table }) => {\n const {\n getState,\n options: {\n enableGlobalFilter,\n enablePagination,\n enableToolbarInternalActions,\n muiTableToolbarTopProps,\n positionGlobalFilter,\n positionPagination,\n positionToolbarAlertBanner,\n renderToolbarTopCustomActions,\n tableId,\n },\n } = table;\n\n const { isFullScreen, showGlobalFilter } = getState();\n\n const isMobile = useMediaQuery('(max-width:720px)');\n\n const toolbarProps =\n muiTableToolbarTopProps instanceof Function\n ? muiTableToolbarTopProps({ table })\n : muiTableToolbarTopProps;\n\n const stackAlertBanner =\n isMobile ||\n (positionToolbarAlertBanner === 'top' &&\n (!!renderToolbarTopCustomActions || showGlobalFilter));\n\n return (\n <Toolbar\n id={`mrt-${tableId}-toolbar-top`}\n variant=\"dense\"\n {...toolbarProps}\n sx={(theme) =>\n ({\n position: isFullScreen ? 'sticky' : undefined,\n top: isFullScreen ? '0' : undefined,\n ...commonToolbarStyles({ theme }),\n ...(toolbarProps?.sx instanceof Function\n ? toolbarProps.sx(theme)\n : (toolbarProps?.sx as any)),\n } as any)\n }\n >\n {positionToolbarAlertBanner === 'top' && (\n <MRT_ToolbarAlertBanner\n stackAlertBanner={stackAlertBanner}\n table={table}\n />\n )}\n <Box\n sx={{\n alignItems: 'flex-start',\n boxSizing: 'border-box',\n display: 'flex',\n justifyContent: 'space-between',\n p: '0.5rem',\n position: stackAlertBanner ? 'relative' : 'absolute',\n right: 0,\n top: 0,\n width: '100%',\n }}\n >\n {enableGlobalFilter && positionGlobalFilter === 'left' && (\n <MRT_GlobalFilterTextField table={table} />\n )}\n\n {renderToolbarTopCustomActions?.({ table }) ?? <span />}\n {enableToolbarInternalActions ? (\n <MRT_ToolbarInternalButtons table={table} />\n ) : (\n enableGlobalFilter &&\n positionGlobalFilter === 'right' && (\n <MRT_GlobalFilterTextField table={table} />\n )\n )}\n </Box>\n {enablePagination &&\n ['top', 'both'].includes(positionPagination ?? '') && (\n <MRT_TablePagination table={table} position=\"top\" />\n )}\n <MRT_LinearProgressBar isTopToolbar table={table} />\n </Toolbar>\n );\n};\n","import React, { FC } from 'react';\nimport { alpha, Box, Toolbar, useMediaQuery } from '@mui/material';\nimport { MRT_TablePagination } from './MRT_TablePagination';\nimport { MRT_ToolbarAlertBanner } from './MRT_ToolbarAlertBanner';\nimport { MRT_LinearProgressBar } from './MRT_LinearProgressBar';\nimport { commonToolbarStyles } from './MRT_ToolbarTop';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n table: MRT_TableInstance;\n}\n\nexport const MRT_ToolbarBottom: FC<Props> = ({ table }) => {\n const {\n getState,\n options: {\n enablePagination,\n muiTableToolbarBottomProps,\n positionPagination,\n positionToolbarAlertBanner,\n renderToolbarBottomCustomActions,\n tableId,\n },\n } = table;\n const { isFullScreen } = getState();\n\n const isMobile = useMediaQuery('(max-width:720px)');\n\n const toolbarProps =\n muiTableToolbarBottomProps instanceof Function\n ? muiTableToolbarBottomProps({ table })\n : muiTableToolbarBottomProps;\n\n const stackAlertBanner =\n isMobile ||\n (positionToolbarAlertBanner === 'bottom' &&\n !!renderToolbarBottomCustomActions);\n\n return (\n <Toolbar\n id={`mrt-${tableId}-toolbar-bottom`}\n variant=\"dense\"\n {...toolbarProps}\n sx={(theme) =>\n ({\n ...commonToolbarStyles({ theme }),\n bottom: isFullScreen ? '0' : undefined,\n boxShadow: `-3px 0 6px ${alpha(theme.palette.common.black, 0.1)}`,\n left: 0,\n position: isFullScreen ? 'fixed' : 'relative',\n right: 0,\n ...(toolbarProps?.sx instanceof Function\n ? toolbarProps.sx(theme)\n : (toolbarProps?.sx as any)),\n } as any)\n }\n >\n <MRT_LinearProgressBar isTopToolbar={false} table={table} />\n {positionToolbarAlertBanner === 'bottom' && (\n <MRT_ToolbarAlertBanner table={table} />\n )}\n <Box\n sx={{\n display: 'flex',\n justifyContent: 'space-between',\n width: '100%',\n }}\n >\n {renderToolbarBottomCustomActions ? (\n <Box sx={{ p: '0.5rem' }}>\n {renderToolbarBottomCustomActions({ table })}\n </Box>\n ) : (\n <span />\n )}\n <Box\n sx={{\n display: 'flex',\n justifyContent: 'flex-end',\n position: stackAlertBanner ? 'relative' : 'absolute',\n right: 0,\n top: 0,\n }}\n >\n {enablePagination &&\n ['bottom', 'both'].includes(positionPagination ?? '') && (\n <MRT_TablePagination table={table} position=\"bottom\" />\n )}\n </Box>\n </Box>\n </Toolbar>\n );\n};\n","import React, { FC, MouseEvent, useState } from 'react';\nimport { IconButton, Tooltip } from '@mui/material';\nimport { MRT_ColumnActionMenu } from '../menus/MRT_ColumnActionMenu';\nimport type { MRT_Header, MRT_TableInstance } from '..';\n\ninterface Props {\n header: MRT_Header;\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableHeadCellColumnActionsButton: FC<Props> = ({\n header,\n table,\n}) => {\n const {\n options: {\n icons: { MoreVertIcon },\n localization,\n muiTableHeadCellColumnActionsButtonProps,\n },\n } = table;\n const { column } = header;\n const { columnDef } = column;\n\n const [anchorEl, setAnchorEl] = useState<null | HTMLElement>(null);\n\n const handleClick = (event: MouseEvent<HTMLElement>) => {\n event.stopPropagation();\n event.preventDefault();\n setAnchorEl(event.currentTarget);\n };\n\n const mTableHeadCellColumnActionsButtonProps =\n muiTableHeadCellColumnActionsButtonProps instanceof Function\n ? muiTableHeadCellColumnActionsButtonProps({ column, table })\n : muiTableHeadCellColumnActionsButtonProps;\n\n const mcTableHeadCellColumnActionsButtonProps =\n columnDef.muiTableHeadCellColumnActionsButtonProps instanceof Function\n ? columnDef.muiTableHeadCellColumnActionsButtonProps({\n column,\n table,\n })\n : columnDef.muiTableHeadCellColumnActionsButtonProps;\n\n const iconButtonProps = {\n ...mTableHeadCellColumnActionsButtonProps,\n ...mcTableHeadCellColumnActionsButtonProps,\n };\n\n return (\n <>\n <Tooltip\n arrow\n enterDelay={1000}\n enterNextDelay={1000}\n placement=\"top\"\n title={localization.columnActions}\n >\n <IconButton\n aria-label={localization.columnActions}\n onClick={handleClick}\n size=\"small\"\n {...iconButtonProps}\n sx={(theme) => ({\n height: '2rem',\n mt: '-0.2rem',\n opacity: 0.5,\n transition: 'opacity 0.2s',\n width: '2rem',\n '&:hover': {\n opacity: 1,\n },\n ...(iconButtonProps?.sx instanceof Function\n ? iconButtonProps.sx(theme)\n : (iconButtonProps?.sx as any)),\n })}\n >\n <MoreVertIcon />\n </IconButton>\n </Tooltip>\n <MRT_ColumnActionMenu\n anchorEl={anchorEl}\n header={header}\n setAnchorEl={setAnchorEl}\n table={table}\n />\n </>\n );\n};\n","import React, {\n ChangeEvent,\n FC,\n MouseEvent,\n useCallback,\n useState,\n} from 'react';\nimport {\n Chip,\n debounce,\n IconButton,\n InputAdornment,\n MenuItem,\n TextField,\n TextFieldProps,\n Tooltip,\n} from '@mui/material';\nimport { MRT_FilterOptionMenu } from '../menus/MRT_FilterOptionMenu';\nimport type { MRT_Header, MRT_TableInstance } from '..';\n\ninterface Props {\n header: MRT_Header;\n inputIndex?: number;\n table: MRT_TableInstance;\n}\n\nexport const MRT_FilterTextField: FC<Props> = ({\n header,\n inputIndex,\n table,\n}) => {\n const {\n getState,\n options: {\n enableColumnFilterChangeMode,\n enabledColumnFilterOptions,\n icons: { FilterListIcon, CloseIcon },\n localization,\n muiTableHeadCellFilterTextFieldProps,\n tableId,\n },\n setCurrentFilterFns,\n } = table;\n const { column } = header;\n const { columnDef } = column;\n const { currentFilterFns } = getState();\n\n const [anchorEl, setAnchorEl] = useState<null | HTMLElement>(null);\n\n const mTableHeadCellFilterTextFieldProps =\n muiTableHeadCellFilterTextFieldProps instanceof Function\n ? muiTableHeadCellFilterTextFieldProps({ column, table })\n : muiTableHeadCellFilterTextFieldProps;\n\n const mcTableHeadCellFilterTextFieldProps =\n columnDef.muiTableHeadCellFilterTextFieldProps instanceof Function\n ? columnDef.muiTableHeadCellFilterTextFieldProps({\n column,\n table,\n })\n : columnDef.muiTableHeadCellFilterTextFieldProps;\n\n const textFieldProps = {\n ...mTableHeadCellFilterTextFieldProps,\n ...mcTableHeadCellFilterTextFieldProps,\n } as TextFieldProps;\n\n const [filterValue, setFilterValue] = useState<string>(() =>\n inputIndex !== undefined\n ? (column.getFilterValue() as [string, string])?.[inputIndex] ?? ''\n : (column.getFilterValue() as string) ?? '',\n );\n\n const handleChangeDebounced = useCallback(\n debounce((event: ChangeEvent<HTMLInputElement>) => {\n let value =\n textFieldProps.type === 'date'\n ? new Date(event.target.value)\n : event.target.value;\n if (inputIndex !== undefined) {\n column.setFilterValue((old: [string, string | Date]) => {\n const newFilterValues = old ?? ['', ''];\n newFilterValues[inputIndex] = value;\n return newFilterValues;\n });\n } else {\n column.setFilterValue(value ?? undefined);\n }\n }, 200),\n [],\n );\n\n const handleChange = (event: ChangeEvent<HTMLInputElement>) => {\n setFilterValue(event.target.value);\n handleChangeDebounced(event);\n };\n\n const handleFilterMenuOpen = (event: MouseEvent<HTMLElement>) => {\n setAnchorEl(event.currentTarget);\n };\n\n const handleClear = () => {\n setFilterValue('');\n if (inputIndex !== undefined) {\n column.setFilterValue((old: [string | undefined, string | undefined]) => {\n const newFilterValues = old ?? ['', ''];\n newFilterValues[inputIndex] = undefined;\n return newFilterValues;\n });\n } else {\n column.setFilterValue(undefined);\n }\n };\n\n const handleClearFilterChip = () => {\n setFilterValue('');\n column.setFilterValue(undefined);\n setCurrentFilterFns((prev) => ({\n ...prev,\n [header.id]: 'fuzzy',\n }));\n };\n\n if (columnDef.Filter) {\n return <>{columnDef.Filter?.({ header, table })}</>;\n }\n\n const filterId = `mrt-${tableId}-${header.id}-filter-text-field${\n inputIndex ?? ''\n }`;\n const currentFilterOption = currentFilterFns?.[header.id];\n const isSelectFilter = !!columnDef.filterSelectOptions;\n const filterChipLabel = ['empty', 'notEmpty'].includes(currentFilterOption)\n ? //@ts-ignore\n localization[\n `filter${\n currentFilterOption.charAt(0).toUpperCase() +\n currentFilterOption.slice(1)\n }`\n ]\n : '';\n const filterPlaceholder =\n inputIndex === undefined\n ? localization.filterByColumn?.replace(\n '{column}',\n String(columnDef.header),\n )\n : inputIndex === 0\n ? localization.min\n : inputIndex === 1\n ? localization.max\n : '';\n\n const allowedColumnFilterOptions =\n columnDef?.enabledColumnFilterOptions ?? enabledColumnFilterOptions;\n\n const showChangeModeButton =\n enableColumnFilterChangeMode &&\n columnDef.enableColumnFilterChangeMode !== false &&\n !isSelectFilter &&\n !inputIndex &&\n (allowedColumnFilterOptions === undefined ||\n !!allowedColumnFilterOptions?.length);\n\n return (\n <>\n <TextField\n fullWidth\n id={filterId}\n inputProps={{\n disabled: !!filterChipLabel,\n sx: {\n textOverflow: 'ellipsis',\n width: filterChipLabel ? 0 : undefined,\n },\n title: filterPlaceholder,\n }}\n helperText={\n showChangeModeButton ? (\n <label htmlFor={filterId}>\n {localization.filterMode.replace(\n '{filterType}',\n // @ts-ignore\n localization[\n `filter${\n currentFilterOption.charAt(0).toUpperCase() +\n currentFilterOption.slice(1)\n }`\n ],\n )}\n </label>\n ) : null\n }\n FormHelperTextProps={{\n sx: {\n fontSize: '0.6rem',\n lineHeight: '0.8rem',\n whiteSpace: 'nowrap',\n },\n }}\n margin=\"none\"\n placeholder={\n filterChipLabel || isSelectFilter ? undefined : filterPlaceholder\n }\n onChange={handleChange}\n onClick={(e: MouseEvent<HTMLInputElement>) => e.stopPropagation()}\n select={isSelectFilter}\n value={filterValue ?? ''}\n variant=\"standard\"\n InputProps={{\n startAdornment: showChangeModeButton ? (\n <InputAdornment position=\"start\">\n <Tooltip arrow title={localization.changeFilterMode}>\n <span>\n <IconButton\n aria-label={localization.changeFilterMode}\n onClick={handleFilterMenuOpen}\n size=\"small\"\n sx={{ height: '1.75rem', width: '1.75rem' }}\n >\n <FilterListIcon />\n </IconButton>\n </span>\n </Tooltip>\n {filterChipLabel && (\n <Chip\n onDelete={handleClearFilterChip}\n label={filterChipLabel}\n />\n )}\n </InputAdornment>\n ) : (\n <FilterListIcon />\n ),\n endAdornment: !filterChipLabel && (\n <InputAdornment position=\"end\">\n <Tooltip\n arrow\n disableHoverListener={isSelectFilter}\n placement=\"right\"\n title={localization.clearFilter ?? ''}\n >\n <span>\n <IconButton\n aria-label={localization.clearFilter}\n disabled={!filterValue?.length}\n onClick={handleClear}\n size=\"small\"\n sx={{\n height: '1.75rem',\n width: '1.75rem',\n }}\n >\n <CloseIcon />\n </IconButton>\n </span>\n </Tooltip>\n </InputAdornment>\n ),\n }}\n {...textFieldProps}\n sx={(theme) => ({\n m: '-0.25rem',\n p: 0,\n minWidth: !filterChipLabel ? '8rem' : 'auto',\n width: 'calc(100% + 0.5rem)',\n '&\t.MuiSelect-icon': {\n mr: '1.5rem',\n },\n ...(textFieldProps?.sx instanceof Function\n ? textFieldProps.sx(theme)\n : (textFieldProps?.sx as any)),\n })}\n >\n {isSelectFilter && (\n <MenuItem divider disabled={!filterValue} value=\"\">\n {localization.clearFilter}\n </MenuItem>\n )}\n {columnDef?.filterSelectOptions?.map((option) => {\n let value;\n let text;\n if (typeof option === 'string') {\n value = option;\n text = option;\n } else if (typeof option === 'object') {\n value = option.value;\n text = option.text;\n }\n return (\n <MenuItem key={value} value={value}>\n {text}\n </MenuItem>\n );\n })}\n </TextField>\n <MRT_FilterOptionMenu\n anchorEl={anchorEl}\n header={header}\n setAnchorEl={setAnchorEl}\n table={table}\n />\n </>\n );\n};\n","import React, { FC } from 'react';\nimport { Box } from '@mui/material';\nimport { MRT_FilterTextField } from './MRT_FilterTextField';\nimport { MRT_Header, MRT_TableInstance } from '..';\n\ninterface Props {\n header: MRT_Header;\n table: MRT_TableInstance;\n}\n\nexport const MRT_FilterRangeFields: FC<Props> = ({ header, table }) => {\n return (\n <Box sx={{ display: 'grid', gridTemplateColumns: '6fr 6fr', gap: '1rem' }}>\n <MRT_FilterTextField header={header} inputIndex={0} table={table} />\n <MRT_FilterTextField header={header} inputIndex={1} table={table} />\n </Box>\n );\n};\n","import React, { FC } from 'react';\nimport { Collapse } from '@mui/material';\nimport { MRT_FilterRangeFields } from '../inputs/MRT_FilterRangeFields';\nimport { MRT_FilterTextField } from '../inputs/MRT_FilterTextField';\nimport { MRT_Header, MRT_TableInstance } from '..';\n\ninterface Props {\n header: MRT_Header;\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableHeadCellFilterContainer: FC<Props> = ({\n header,\n table,\n}) => {\n const { getState } = table;\n const { currentFilterFns, showColumnFilters } = getState();\n const { column } = header;\n\n return (\n <Collapse in={showColumnFilters} mountOnEnter unmountOnExit>\n {currentFilterFns[column.id] === 'between' ? (\n <MRT_FilterRangeFields header={header} table={table} />\n ) : (\n <MRT_FilterTextField header={header} table={table} />\n )}\n </Collapse>\n );\n};\n","import React, { FC, MouseEvent } from 'react';\nimport { Grow, IconButton, Tooltip } from '@mui/material';\nimport { MRT_Header, MRT_TableInstance } from '..';\n\ninterface Props {\n header: MRT_Header;\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableHeadCellFilterLabel: FC<Props> = ({ header, table }) => {\n const {\n getState,\n options: {\n icons: { FilterAltIcon },\n localization,\n },\n } = table;\n const { currentFilterFns } = getState();\n const { column } = header;\n const { columnDef } = column;\n\n const currentFilterOption = currentFilterFns?.[header.id];\n const filterTooltip = localization.filteringByColumn\n .replace('{column}', String(columnDef.header))\n .replace(\n '{filterType}',\n // @ts-ignore\n localization[\n `filter${\n currentFilterOption.charAt(0).toUpperCase() +\n currentFilterOption.slice(1)\n }`\n ],\n )\n .replace(\n '{filterValue}',\n `\"${\n Array.isArray(column.getFilterValue())\n ? (column.getFilterValue() as [string, string]).join(\n `\" ${localization.and} \"`,\n )\n : (column.getFilterValue() as string)\n }\"`,\n )\n .replace('\" \"', '');\n\n return (\n <Grow\n unmountOnExit\n in={\n (!!column.getFilterValue() && currentFilterOption !== 'between') ||\n (currentFilterOption === 'between' && // @ts-ignore\n (!!column.getFilterValue()?.[0] || !!column.getFilterValue()?.[1]))\n }\n >\n <span>\n <Tooltip arrow placement=\"top\" title={filterTooltip}>\n <IconButton\n disableRipple\n onClick={(event: MouseEvent<HTMLButtonElement>) => {\n event.stopPropagation();\n }}\n size=\"small\"\n sx={{\n m: 0,\n opacity: 0.8,\n p: '2px',\n transform: 'scale(0.66)',\n width: '1.5ch',\n }}\n >\n <FilterAltIcon />\n </IconButton>\n </Tooltip>\n </span>\n </Grow>\n );\n};\n","import React, { DragEvent, FC, RefObject } from 'react';\nimport { MRT_GrabHandleButton } from '../buttons/MRT_GrabHandleButton';\nimport { reorderColumn } from '../column.utils';\nimport type { MRT_Column, MRT_TableInstance } from '..';\n\ninterface Props {\n column: MRT_Column;\n table: MRT_TableInstance;\n tableHeadCellRef: RefObject<HTMLTableCellElement>;\n}\n\nexport const MRT_TableHeadCellGrabHandle: FC<Props> = ({\n column,\n table,\n tableHeadCellRef,\n}) => {\n const {\n getState,\n options: {\n enableColumnOrdering,\n muiTableHeadCellDragHandleProps,\n onColumnDrop,\n },\n setColumnOrder,\n setCurrentDraggingColumn,\n setCurrentHoveredColumn,\n } = table;\n const { columnDef } = column;\n const { currentHoveredColumn, currentDraggingColumn, columnOrder } =\n getState();\n\n const mIconButtonProps =\n muiTableHeadCellDragHandleProps instanceof Function\n ? muiTableHeadCellDragHandleProps({ column, table })\n : muiTableHeadCellDragHandleProps;\n\n const mcIconButtonProps =\n columnDef.muiTableHeadCellDragHandleProps instanceof Function\n ? columnDef.muiTableHeadCellDragHandleProps({ column, table })\n : columnDef.muiTableHeadCellDragHandleProps;\n\n const iconButtonProps = {\n ...mIconButtonProps,\n ...mcIconButtonProps,\n };\n\n const handleDragStart = (e: DragEvent<HTMLButtonElement>) => {\n setCurrentDraggingColumn(column);\n e.dataTransfer.setDragImage(tableHeadCellRef.current as HTMLElement, 0, 0);\n };\n\n const handleDragEnd = (event: DragEvent<HTMLButtonElement>) => {\n onColumnDrop?.({\n event,\n draggedColumn: column,\n targetColumn: currentHoveredColumn,\n });\n if (\n enableColumnOrdering &&\n currentHoveredColumn &&\n currentHoveredColumn?.id !== currentDraggingColumn?.id\n ) {\n setColumnOrder(reorderColumn(column, currentHoveredColumn, columnOrder));\n }\n setCurrentDraggingColumn(null);\n setCurrentHoveredColumn(null);\n };\n\n return (\n <MRT_GrabHandleButton\n iconButtonProps={iconButtonProps}\n onDragStart={handleDragStart}\n onDragEnd={handleDragEnd}\n table={table}\n />\n );\n};\n","import React, { FC } from 'react';\nimport { Divider, Theme } from '@mui/material';\nimport { MRT_Header, MRT_TableInstance } from '..';\n\ninterface Props {\n header: MRT_Header;\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableHeadCellResizeHandle: FC<Props> = ({ header, table }) => {\n const {\n getState,\n options: { columnResizeMode },\n } = table;\n const { density, showColumnFilters } = getState();\n const { column } = header;\n const { columnDef } = column;\n const { columnDefType } = columnDef;\n\n return (\n <Divider\n flexItem\n orientation=\"vertical\"\n onDoubleClick={() => column.resetSize()}\n sx={(theme: Theme) => ({\n borderRadius: '2px',\n borderRightWidth: '2px',\n cursor: 'col-resize',\n height: showColumnFilters && columnDefType === 'data' ? '4rem' : '2rem',\n mr: density === 'compact' ? '-0.5rem' : '-1rem',\n opacity: 0.8,\n position: 'absolute',\n right: '1px',\n touchAction: 'none',\n transition: column.getIsResizing() ? undefined : 'all 0.2s ease-in-out',\n userSelect: 'none',\n zIndex: 4,\n '&:active': {\n backgroundColor: theme.palette.info.main,\n opacity: 1,\n },\n })}\n onMouseDown={header.getResizeHandler()}\n onTouchStart={header.getResizeHandler()}\n style={{\n transform: column.getIsResizing()\n ? `translateX(${\n (getState().columnSizingInfo.deltaOffset ?? 0) /\n (columnResizeMode === 'onChange' ? 16 : 1)\n }px)`\n : 'none',\n }}\n />\n );\n};\n","import React, { FC } from 'react';\nimport { TableSortLabel, Tooltip } from '@mui/material';\nimport { MRT_Header, MRT_TableInstance } from '..';\n\ninterface Props {\n header: MRT_Header;\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableHeadCellSortLabel: FC<Props> = ({ header, table }) => {\n const {\n options: { localization },\n } = table;\n const { column } = header;\n const { columnDef } = column;\n\n const sortTooltip = !!column.getIsSorted()\n ? column.getIsSorted() === 'desc'\n ? localization.sortedByColumnDesc.replace('{column}', columnDef.header)\n : localization.sortedByColumnAsc.replace('{column}', columnDef.header)\n : localization.unsorted;\n\n return (\n <Tooltip arrow placement=\"top\" title={sortTooltip}>\n <TableSortLabel\n aria-label={sortTooltip}\n active={!!column.getIsSorted()}\n direction={\n column.getIsSorted()\n ? (column.getIsSorted() as 'asc' | 'desc')\n : undefined\n }\n sx={{\n width: '2ch',\n transform: 'translateX(-0.5ch)',\n }}\n />\n </Tooltip>\n );\n};\n","import React, { DragEvent, FC, ReactNode } from 'react';\nimport { Box, TableCell, Theme, alpha, lighten, useTheme } from '@mui/material';\nimport { MRT_TableHeadCellColumnActionsButton } from './MRT_TableHeadCellColumnActionsButton';\nimport { MRT_TableHeadCellFilterContainer } from './MRT_TableHeadCellFilterContainer';\nimport { MRT_TableHeadCellFilterLabel } from './MRT_TableHeadCellFilterLabel';\nimport { MRT_TableHeadCellGrabHandle } from './MRT_TableHeadCellGrabHandle';\nimport { MRT_TableHeadCellResizeHandle } from './MRT_TableHeadCellResizeHandle';\nimport { MRT_TableHeadCellSortLabel } from './MRT_TableHeadCellSortLabel';\nimport type { MRT_Header, MRT_TableInstance } from '..';\n\ninterface Props {\n header: MRT_Header;\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableHeadCell: FC<Props> = ({ header, table }) => {\n const theme = useTheme();\n const {\n getState,\n options: {\n enableColumnActions,\n enableColumnDragging,\n enableColumnOrdering,\n enableColumnResizing,\n enableGrouping,\n enableMultiSort,\n muiTableHeadCellProps,\n },\n setCurrentHoveredColumn,\n } = table;\n const { density, currentDraggingColumn, currentHoveredColumn } = getState();\n const { column } = header;\n const { columnDef } = column;\n const { columnDefType } = columnDef;\n\n const mTableHeadCellProps =\n muiTableHeadCellProps instanceof Function\n ? muiTableHeadCellProps({ column, table })\n : muiTableHeadCellProps;\n\n const mcTableHeadCellProps =\n columnDef.muiTableHeadCellProps instanceof Function\n ? columnDef.muiTableHeadCellProps({ column, table })\n : columnDef.muiTableHeadCellProps;\n\n const tableCellProps = {\n ...mTableHeadCellProps,\n ...mcTableHeadCellProps,\n };\n\n const getIsLastLeftPinnedColumn = () => {\n return (\n column.getIsPinned() === 'left' &&\n table.getLeftLeafHeaders().length - 1 === column.getPinnedIndex()\n );\n };\n\n const getIsFirstRightPinnedColumn = () => {\n return column.getIsPinned() === 'right' && column.getPinnedIndex() === 0;\n };\n\n const getTotalRight = () => {\n return (\n (table.getRightLeafHeaders().length - 1 - column.getPinnedIndex()) * 150\n );\n };\n\n const handleDragEnter = (_e: DragEvent) => {\n if (enableColumnOrdering && currentDraggingColumn) {\n setCurrentHoveredColumn(\n columnDef.enableColumnOrdering !== false ? column : null,\n );\n }\n };\n\n const draggingBorder =\n currentDraggingColumn?.id === column.id\n ? `1px dashed ${theme.palette.divider}`\n : currentHoveredColumn?.id === column.id\n ? `2px dashed ${theme.palette.primary.main}`\n : undefined;\n\n const draggingBorders = draggingBorder\n ? {\n borderLeft: draggingBorder,\n borderRight: draggingBorder,\n borderTop: draggingBorder,\n }\n : undefined;\n\n const headerElement = ((columnDef?.Header instanceof Function\n ? columnDef?.Header?.({\n header,\n table,\n })\n : columnDef?.Header) ?? columnDef.header) as ReactNode;\n\n const tableHeadCellRef = React.useRef<HTMLTableCellElement>(null);\n\n return (\n <TableCell\n align={columnDefType === 'group' ? 'center' : 'left'}\n colSpan={header.colSpan}\n onDragEnter={handleDragEnter}\n ref={tableHeadCellRef}\n {...tableCellProps}\n sx={(theme: Theme) => ({\n backgroundColor:\n column.getIsPinned() && columnDefType !== 'group'\n ? alpha(lighten(theme.palette.background.default, 0.04), 0.95)\n : 'inherit',\n backgroundImage: 'inherit',\n boxShadow: getIsLastLeftPinnedColumn()\n ? `4px 0 4px -2px ${alpha(theme.palette.common.black, 0.1)}`\n : getIsFirstRightPinnedColumn()\n ? `-4px 0 4px -2px ${alpha(theme.palette.common.black, 0.1)}`\n : undefined,\n fontWeight: 'bold',\n left:\n column.getIsPinned() === 'left'\n ? `${column.getStart('left')}px`\n : undefined,\n overflow: 'visible',\n opacity:\n currentDraggingColumn?.id === column.id ||\n currentHoveredColumn?.id === column.id\n ? 0.5\n : 1,\n p:\n density === 'compact'\n ? columnDefType === 'display'\n ? '0 0.5rem'\n : '0.5rem'\n : density === 'comfortable'\n ? columnDefType === 'display'\n ? '0.5rem 0.75rem'\n : '1rem'\n : columnDefType === 'display'\n ? '1rem 1.25rem'\n : '1.5rem',\n pb: columnDefType === 'display' ? 0 : undefined,\n position:\n column.getIsPinned() && columnDefType !== 'group'\n ? 'sticky'\n : undefined,\n pt:\n columnDefType === 'group'\n ? 0\n : density === 'compact'\n ? '0.25'\n : density === 'comfortable'\n ? '.75rem'\n : '1.25rem',\n right:\n column.getIsPinned() === 'right' ? `${getTotalRight()}px` : undefined,\n transition: `all ${enableColumnResizing ? 0 : '0.2s'} ease-in-out`,\n userSelect: enableMultiSort && column.getCanSort() ? 'none' : undefined,\n verticalAlign: 'top',\n zIndex:\n column.getIsResizing() || currentDraggingColumn?.id === column.id\n ? 3\n : column.getIsPinned() && columnDefType !== 'group'\n ? 2\n : 1,\n ...(tableCellProps?.sx instanceof Function\n ? tableCellProps.sx(theme)\n : (tableCellProps?.sx as any)),\n ...draggingBorders,\n maxWidth: `min(${column.getSize()}px, fit-content)`,\n minWidth: `max(${column.getSize()}px, ${columnDef.minSize ?? 30}px)`,\n width: header.getSize(),\n })}\n >\n {header.isPlaceholder ? null : (\n <Box\n sx={{\n alignItems: 'flex-start',\n display: 'flex',\n justifyContent:\n columnDefType === 'group' ? 'center' : 'space-between',\n position: 'relative',\n width: '100%',\n }}\n >\n <Box\n onClick={column.getToggleSortingHandler()}\n sx={{\n alignItems: 'center',\n cursor:\n column.getCanSort() && columnDefType !== 'group'\n ? 'pointer'\n : undefined,\n display: 'flex',\n flexWrap: 'nowrap',\n m: tableCellProps?.align === 'center' ? 'auto' : undefined,\n pl: tableCellProps?.align === 'center' ? '1rem' : undefined,\n whiteSpace:\n (columnDef.header?.length ?? 0) < 24 ? 'nowrap' : 'normal',\n }}\n >\n {headerElement}\n {column.getCanSort() && (\n <MRT_TableHeadCellSortLabel header={header} table={table} />\n )}\n {column.getCanFilter() && (\n <MRT_TableHeadCellFilterLabel header={header} table={table} />\n )}\n </Box>\n {columnDefType !== 'group' && (\n <Box sx={{ whiteSpace: 'nowrap' }}>\n {((enableColumnDragging &&\n columnDef.enableColumnDragging !== false) ||\n (enableColumnOrdering &&\n columnDef.enableColumnOrdering !== false) ||\n (enableGrouping && columnDef.enableGrouping !== false)) && (\n <MRT_TableHeadCellGrabHandle\n column={column}\n table={table}\n tableHeadCellRef={tableHeadCellRef}\n />\n )}\n {(enableColumnActions || columnDef.enableColumnActions) &&\n columnDef.enableColumnActions !== false && (\n <MRT_TableHeadCellColumnActionsButton\n header={header}\n table={table}\n />\n )}\n </Box>\n )}\n {column.getCanResize() && (\n <MRT_TableHeadCellResizeHandle header={header} table={table} />\n )}\n </Box>\n )}\n {column.getCanFilter() && (\n <MRT_TableHeadCellFilterContainer header={header} table={table} />\n )}\n </TableCell>\n );\n};\n","import React, { FC } from 'react';\nimport { alpha, lighten, TableRow } from '@mui/material';\nimport { MRT_TableHeadCell } from './MRT_TableHeadCell';\nimport type { MRT_Header, MRT_HeaderGroup, MRT_TableInstance } from '..';\n\ninterface Props {\n headerGroup: MRT_HeaderGroup;\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableHeadRow: FC<Props> = ({ headerGroup, table }) => {\n const {\n options: { muiTableHeadRowProps },\n } = table;\n\n const tableRowProps =\n muiTableHeadRowProps instanceof Function\n ? muiTableHeadRowProps({ headerGroup, table })\n : muiTableHeadRowProps;\n\n return (\n <TableRow\n {...tableRowProps}\n sx={(theme) => ({\n boxShadow: `4px 0 8px ${alpha(theme.palette.common.black, 0.1)}`,\n backgroundColor: lighten(theme.palette.background.default, 0.04),\n ...(tableRowProps?.sx as any),\n })}\n >\n {headerGroup.headers.map((header: MRT_Header, index) => (\n <MRT_TableHeadCell\n header={header}\n key={header.id || index}\n table={table}\n />\n ))}\n </TableRow>\n );\n};\n","import React, { FC } from 'react';\nimport { TableHead } from '@mui/material';\nimport { MRT_TableHeadRow } from './MRT_TableHeadRow';\nimport type { MRT_TableInstance } from '..';\n\ninterface Props {\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableHead: FC<Props> = ({ table }) => {\n const {\n getHeaderGroups,\n options: { muiTableHeadProps },\n } = table;\n\n const tableHeadProps =\n muiTableHeadProps instanceof Function\n ? muiTableHeadProps({ table })\n : muiTableHeadProps;\n\n return (\n <TableHead {...tableHeadProps}>\n {getHeaderGroups().map((headerGroup) => (\n <MRT_TableHeadRow\n headerGroup={headerGroup as any}\n key={headerGroup.id}\n table={table}\n />\n ))}\n </TableHead>\n );\n};\n","import React, {\n ChangeEvent,\n FC,\n FocusEvent,\n MouseEvent,\n useState,\n} from 'react';\nimport { TextField } from '@mui/material';\nimport type { MRT_Cell, MRT_Row, MRT_TableInstance } from '..';\n\ninterface Props {\n cell: MRT_Cell;\n table: MRT_TableInstance;\n}\n\nexport const MRT_EditCellTextField: FC<Props> = ({ cell, table }) => {\n const {\n getState,\n options: {\n tableId,\n enableEditing,\n muiTableBodyCellEditTextFieldProps,\n onCellEditBlur,\n onCellEditChange,\n },\n setCurrentEditingCell,\n setCurrentEditingRow,\n } = table;\n const { column, row } = cell;\n const { columnDef } = column;\n\n const [value, setValue] = useState(cell.getValue<string>());\n\n const handleChange = (event: ChangeEvent<HTMLInputElement>) => {\n setValue(event.target.value);\n columnDef.onCellEditChange?.({ event, cell, table });\n onCellEditChange?.({ event, cell, table });\n };\n\n const handleBlur = (event: FocusEvent<HTMLInputElement>) => {\n if (getState().currentEditingRow) {\n if (!row._valuesCache) row._valuesCache = {};\n (row._valuesCache as Record<string, any>)[column.id] = value;\n setCurrentEditingRow({ ...getState().currentEditingRow } as MRT_Row);\n }\n setCurrentEditingCell(null);\n columnDef.onCellEditBlur?.({ event, cell, table });\n onCellEditBlur?.({ event, cell, table });\n };\n\n const mTableBodyCellEditTextFieldProps =\n muiTableBodyCellEditTextFieldProps instanceof Function\n ? muiTableBodyCellEditTextFieldProps({ cell, table })\n : muiTableBodyCellEditTextFieldProps;\n\n const mcTableBodyCellEditTextFieldProps =\n columnDef.muiTableBodyCellEditTextFieldProps instanceof Function\n ? columnDef.muiTableBodyCellEditTextFieldProps({\n cell,\n table,\n })\n : columnDef.muiTableBodyCellEditTextFieldProps;\n\n const textFieldProps = {\n ...mTableBodyCellEditTextFieldProps,\n ...mcTableBodyCellEditTextFieldProps,\n };\n\n if (enableEditing && columnDef.enableEditing !== false && columnDef.Edit) {\n return <>{columnDef.Edit?.({ cell, table })}</>;\n }\n\n return (\n <TextField\n id={`mrt-${tableId}-edit-cell-text-field-${cell.id}`}\n margin=\"dense\"\n onBlur={handleBlur}\n onChange={handleChange}\n onClick={(e: MouseEvent<HTMLInputElement>) => e.stopPropagation()}\n placeholder={columnDef.header}\n value={value}\n variant=\"standard\"\n {...textFieldProps}\n />\n );\n};\n","import React, { FC, ReactNode, useState } from 'react';\nimport { Button, Tooltip } from '@mui/material';\nimport { MRT_Cell, MRT_TableInstance } from '..';\n\ninterface Props {\n cell: MRT_Cell;\n children: ReactNode;\n table: MRT_TableInstance;\n}\n\nexport const MRT_CopyButton: FC<Props> = ({ cell, children, table }) => {\n const {\n options: { localization, muiTableBodyCellCopyButtonProps },\n } = table;\n const { column } = cell;\n const { columnDef } = column;\n\n const [copied, setCopied] = useState(false);\n\n const handleCopy = (text: unknown) => {\n navigator.clipboard.writeText(text as string);\n setCopied(true);\n setTimeout(() => setCopied(false), 4000);\n };\n\n const mTableBodyCellCopyButtonProps =\n muiTableBodyCellCopyButtonProps instanceof Function\n ? muiTableBodyCellCopyButtonProps({ cell, table })\n : muiTableBodyCellCopyButtonProps;\n\n const mcTableBodyCellCopyButtonProps =\n columnDef.muiTableBodyCellCopyButtonProps instanceof Function\n ? columnDef.muiTableBodyCellCopyButtonProps({\n cell,\n table,\n })\n : columnDef.muiTableBodyCellCopyButtonProps;\n\n const buttonProps = {\n ...mTableBodyCellCopyButtonProps,\n ...mcTableBodyCellCopyButtonProps,\n };\n\n return (\n <Tooltip\n arrow\n enterDelay={1000}\n enterNextDelay={1000}\n placement=\"top\"\n title={copied ? localization.copiedToClipboard : localization.clickToCopy}\n >\n <Button\n onClick={() => handleCopy(cell.getValue())}\n size=\"small\"\n type=\"button\"\n variant=\"text\"\n {...buttonProps}\n sx={(theme) => ({\n backgroundColor: 'transparent',\n border: 'none',\n color: 'inherit',\n cursor: 'copy',\n fontFamily: 'inherit',\n fontSize: 'inherit',\n letterSpacing: 'inherit',\n m: '-0.25rem',\n minWidth: 'unset',\n textAlign: 'inherit',\n textTransform: 'inherit',\n ...(buttonProps?.sx instanceof Function\n ? buttonProps.sx(theme)\n : (buttonProps?.sx as any)),\n })}\n >\n {children}\n </Button>\n </Tooltip>\n );\n};\n","import React, { DragEvent, FC, RefObject } from 'react';\nimport { MRT_Cell, MRT_TableInstance } from '..';\nimport { MRT_GrabHandleButton } from '../buttons/MRT_GrabHandleButton';\n\ninterface Props {\n cell: MRT_Cell;\n rowRef: RefObject<HTMLTableRowElement>;\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableBodyRowGrabHandle: FC<Props> = ({\n cell,\n rowRef,\n table,\n}) => {\n const {\n options: { muiTableBodyRowDragHandleProps, onRowDrop },\n } = table;\n\n const iconButtonProps =\n muiTableBodyRowDragHandleProps instanceof Function\n ? muiTableBodyRowDragHandleProps({ row: cell.row, table })\n : muiTableBodyRowDragHandleProps;\n\n const handleDragStart = (e: DragEvent<HTMLButtonElement>) => {\n e.dataTransfer.setDragImage(rowRef.current as HTMLElement, 0, 0);\n table.setCurrentDraggingRow(cell.row as any);\n };\n\n const handleDragEnd = (event: DragEvent<HTMLButtonElement>) => {\n onRowDrop?.({\n event,\n draggedRow: table.getState().currentDraggingRow as any,\n targetRow: table.getState().currentHoveredRow as any,\n });\n table.setCurrentDraggingRow(null);\n table.setCurrentHoveredRow(null);\n };\n\n return (\n <MRT_GrabHandleButton\n iconButtonProps={iconButtonProps}\n onDragStart={handleDragStart}\n onDragEnd={handleDragEnd}\n table={table}\n />\n );\n};\n","import React, { DragEvent, FC, MouseEvent, RefObject, useMemo } from 'react';\nimport {\n alpha,\n darken,\n lighten,\n Skeleton,\n TableCell,\n useTheme,\n} from '@mui/material';\nimport { MRT_EditCellTextField } from '../inputs/MRT_EditCellTextField';\nimport { MRT_CopyButton } from '../buttons/MRT_CopyButton';\nimport type { MRT_Cell, MRT_TableInstance } from '..';\nimport { MRT_TableBodyRowGrabHandle } from './MRT_TableBodyRowGrabHandle';\n\ninterface Props {\n cell: MRT_Cell;\n enableHover?: boolean;\n rowIndex: number;\n rowRef: RefObject<HTMLTableRowElement>;\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableBodyCell: FC<Props> = ({\n cell,\n enableHover,\n rowIndex,\n rowRef,\n table,\n}) => {\n const theme = useTheme();\n const {\n getState,\n options: {\n editingMode,\n enableClickToCopy,\n enableColumnOrdering,\n enableEditing,\n enableRowNumbers,\n muiTableBodyCellProps,\n muiTableBodyCellSkeletonProps,\n rowNumberMode,\n tableId,\n },\n setCurrentEditingCell,\n setCurrentHoveredColumn,\n } = table;\n const {\n currentDraggingColumn,\n currentEditingCell,\n currentEditingRow,\n currentHoveredColumn,\n density,\n isLoading,\n showSkeletons,\n } = getState();\n const { column, row } = cell;\n const { columnDef } = column;\n const { columnDefType } = columnDef;\n\n const mTableCellBodyProps =\n muiTableBodyCellProps instanceof Function\n ? muiTableBodyCellProps({ cell, table })\n : muiTableBodyCellProps;\n\n const mcTableCellBodyProps =\n columnDef.muiTableBodyCellProps instanceof Function\n ? columnDef.muiTableBodyCellProps({ cell, table })\n : columnDef.muiTableBodyCellProps;\n\n const tableCellProps = {\n ...mTableCellBodyProps,\n ...mcTableCellBodyProps,\n };\n\n const skeletonWidth = useMemo(\n () =>\n columnDefType === 'display'\n ? column.getSize() / 2\n : Math.random() * (column.getSize() - column.getSize() / 3) +\n column.getSize() / 3,\n [],\n );\n\n const isEditable =\n (enableEditing || columnDef.enableEditing) &&\n columnDef.enableEditing !== false;\n\n const isEditing =\n isEditable &&\n (editingMode === 'table' ||\n currentEditingRow?.id === row.id ||\n currentEditingCell?.id === cell.id);\n\n const handleDoubleClick = (_event: MouseEvent<HTMLTableCellElement>) => {\n if (\n (enableEditing || columnDef.enableEditing) &&\n columnDef.enableEditing !== false &&\n editingMode === 'cell'\n ) {\n setCurrentEditingCell(cell);\n setTimeout(() => {\n const textField = document.getElementById(\n `mrt-${tableId}-edit-cell-text-field-${cell.id}`,\n ) as HTMLInputElement;\n if (textField) {\n textField.focus();\n textField.select();\n }\n }, 200);\n }\n };\n\n const getIsLastLeftPinnedColumn = () => {\n return (\n column.getIsPinned() === 'left' &&\n table.getLeftLeafHeaders().length - 1 === column.getPinnedIndex()\n );\n };\n\n const getIsFirstRightPinnedColumn = () => {\n return column.getIsPinned() === 'right' && column.getPinnedIndex() === 0;\n };\n\n const getTotalRight = () => {\n return (\n (table.getRightLeafHeaders().length - 1 - column.getPinnedIndex()) * 150\n );\n };\n\n const handleDragEnter = (_e: DragEvent) => {\n if (enableColumnOrdering && currentDraggingColumn) {\n setCurrentHoveredColumn(\n columnDef.enableColumnOrdering !== false ? column : null,\n );\n }\n };\n\n const draggingBorder =\n currentDraggingColumn?.id === column.id\n ? `1px dashed ${theme.palette.divider}`\n : currentHoveredColumn?.id === column.id\n ? `2px dashed ${theme.palette.primary.main}`\n : undefined;\n\n const draggingBorders = draggingBorder\n ? {\n borderLeft: draggingBorder,\n borderRight: draggingBorder,\n borderBottom:\n row.index === table.getRowModel().rows.length - 1\n ? draggingBorder\n : undefined,\n }\n : undefined;\n\n return (\n <TableCell\n onDoubleClick={handleDoubleClick}\n onDragEnter={handleDragEnter}\n {...tableCellProps}\n sx={(theme) => ({\n backgroundColor: column.getIsPinned()\n ? alpha(lighten(theme.palette.background.default, 0.04), 0.95)\n : undefined,\n boxShadow: getIsLastLeftPinnedColumn()\n ? `4px 0 4px -2px ${alpha(theme.palette.common.black, 0.1)}`\n : getIsFirstRightPinnedColumn()\n ? `-4px 0 4px -2px ${alpha(theme.palette.common.black, 0.1)}`\n : undefined,\n cursor: isEditable && editingMode === 'cell' ? 'pointer' : 'text',\n left:\n column.getIsPinned() === 'left'\n ? `${column.getStart('left')}px`\n : undefined,\n opacity:\n currentDraggingColumn?.id === column.id ||\n currentHoveredColumn?.id === column.id\n ? 0.5\n : 1,\n overflow: 'hidden',\n p:\n density === 'compact'\n ? columnDefType === 'display'\n ? '0 0.5rem'\n : '0.5rem'\n : density === 'comfortable'\n ? columnDefType === 'display'\n ? '0.5rem 0.75rem'\n : '1rem'\n : columnDefType === 'display'\n ? '1rem 1.25rem'\n : '1.5rem',\n pl:\n column.id === 'mrt-row-expand'\n ? `${\n row.depth +\n (density === 'compact'\n ? 0.5\n : density === 'comfortable'\n ? 0.75\n : 1.25)\n }rem`\n : undefined,\n position: column.getIsPinned() ? 'sticky' : 'relative',\n right:\n column.getIsPinned() === 'right' ? `${getTotalRight()}px` : undefined,\n textOverflow: columnDefType !== 'display' ? 'ellipsis' : undefined,\n transition: 'all 0.2s ease-in-out',\n whiteSpace: density === 'compact' ? 'nowrap' : 'normal',\n zIndex:\n currentDraggingColumn?.id === column.id\n ? 2\n : column.getIsPinned()\n ? 1\n : undefined,\n '&:hover': {\n backgroundColor:\n enableHover && enableEditing && editingMode !== 'row'\n ? theme.palette.mode === 'dark'\n ? `${lighten(\n theme.palette.background.default,\n 0.13,\n )} !important`\n : `${darken(theme.palette.background.default, 0.07)} !important`\n : undefined,\n },\n ...(tableCellProps?.sx instanceof Function\n ? tableCellProps.sx(theme)\n : (tableCellProps?.sx as any)),\n ...draggingBorders,\n maxWidth: `min(${column.getSize()}px, fit-content)`,\n minWidth: `max(${column.getSize()}px, ${columnDef.minSize ?? 30}px)`,\n width: column.getSize(),\n })}\n >\n <>\n {cell.getIsPlaceholder() ? null : isLoading || showSkeletons ? (\n <Skeleton\n animation=\"wave\"\n height={20}\n width={skeletonWidth}\n {...muiTableBodyCellSkeletonProps}\n />\n ) : enableRowNumbers &&\n rowNumberMode === 'static' &&\n column.id === 'mrt-row-numbers' ? (\n rowIndex + 1\n ) : column.id === 'mrt-row-drag' ? (\n <MRT_TableBodyRowGrabHandle\n cell={cell}\n rowRef={rowRef}\n table={table}\n />\n ) : columnDefType === 'display' ? (\n columnDef.Cell?.({ cell, table })\n ) : isEditing ? (\n <MRT_EditCellTextField cell={cell} table={table} />\n ) : (enableClickToCopy || columnDef.enableClickToCopy) &&\n columnDef.enableClickToCopy !== false ? (\n <>\n <MRT_CopyButton cell={cell} table={table}>\n <>{columnDef?.Cell?.({ cell, table }) ?? cell.renderValue()}</>\n </MRT_CopyButton>\n {cell.getIsGrouped() && <> ({row.subRows?.length})</>}\n </>\n ) : (\n <>\n {columnDef?.Cell?.({ cell, table }) ?? cell.renderValue()}\n {cell.getIsGrouped() && <> ({row.subRows?.length ?? ''})</>}\n </>\n )}\n </>\n </TableCell>\n );\n};\n","import React, { FC } from 'react';\nimport { Collapse, TableCell, TableRow } from '@mui/material';\nimport type { MRT_Row, MRT_TableInstance } from '..';\n\ninterface Props {\n row: MRT_Row;\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableDetailPanel: FC<Props> = ({ row, table }) => {\n const {\n getVisibleLeafColumns,\n options: {\n muiTableBodyRowProps,\n muiTableDetailPanelProps,\n renderDetailPanel,\n },\n } = table;\n\n const tableRowProps =\n muiTableBodyRowProps instanceof Function\n ? muiTableBodyRowProps({ row, table })\n : muiTableBodyRowProps;\n\n const tableCellProps =\n muiTableDetailPanelProps instanceof Function\n ? muiTableDetailPanelProps({ row, table })\n : muiTableDetailPanelProps;\n\n return (\n <TableRow {...tableRowProps}>\n <TableCell\n colSpan={getVisibleLeafColumns().length}\n {...tableCellProps}\n sx={(theme) => ({\n borderBottom: !row.getIsExpanded() ? 'none' : undefined,\n pb: row.getIsExpanded() ? '1rem' : 0,\n pt: row.getIsExpanded() ? '1rem' : 0,\n transition: 'all 0.2s ease-in-out',\n width: `${table.getTotalSize()}px`,\n ...(tableCellProps?.sx instanceof Function\n ? tableCellProps.sx(theme)\n : (tableCellProps?.sx as any)),\n })}\n >\n {renderDetailPanel && (\n <Collapse in={row.getIsExpanded()}>\n {renderDetailPanel({ row, table })}\n </Collapse>\n )}\n </TableCell>\n </TableRow>\n );\n};\n","import React, { DragEvent, FC, useRef } from 'react';\nimport { darken, lighten, TableRow, useTheme } from '@mui/material';\nimport { MRT_TableBodyCell } from './MRT_TableBodyCell';\nimport { MRT_TableDetailPanel } from './MRT_TableDetailPanel';\nimport type { MRT_Row, MRT_TableInstance } from '..';\n\ninterface Props {\n row: MRT_Row;\n rowIndex: number;\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableBodyRow: FC<Props> = ({ row, rowIndex, table }) => {\n const theme = useTheme();\n const {\n getIsSomeColumnsPinned,\n getState,\n options: { enableRowOrdering, muiTableBodyRowProps, renderDetailPanel },\n setCurrentHoveredRow,\n } = table;\n const { currentDraggingRow, currentHoveredRow } = getState();\n\n const tableRowProps =\n muiTableBodyRowProps instanceof Function\n ? muiTableBodyRowProps({ row, table })\n : muiTableBodyRowProps;\n\n const handleDragEnter = (_e: DragEvent) => {\n if (enableRowOrdering && currentDraggingRow) {\n setCurrentHoveredRow(row);\n }\n };\n\n const rowRef = useRef<HTMLTableRowElement>(null);\n\n const draggingBorder =\n currentDraggingRow?.id === row.id\n ? `1px dashed ${theme.palette.divider}`\n : currentHoveredRow?.id === row.id\n ? `2px dashed ${theme.palette.primary.main}`\n : undefined;\n\n const draggingBorders = draggingBorder\n ? {\n border: draggingBorder,\n }\n : undefined;\n\n return (\n <>\n <TableRow\n onDragEnter={handleDragEnter}\n hover\n selected={row.getIsSelected()}\n ref={rowRef}\n {...tableRowProps}\n sx={(theme) => ({\n backgroundColor: lighten(theme.palette.background.default, 0.06),\n opacity:\n currentDraggingRow?.id === row.id ||\n currentHoveredRow?.id === row.id\n ? 0.5\n : 1,\n transition: 'all 0.2s ease-in-out',\n '&:hover td': {\n backgroundColor:\n tableRowProps?.hover !== false && getIsSomeColumnsPinned()\n ? theme.palette.mode === 'dark'\n ? `${lighten(theme.palette.background.default, 0.12)}`\n : `${darken(theme.palette.background.default, 0.05)}`\n : undefined,\n },\n ...(tableRowProps?.sx instanceof Function\n ? tableRowProps.sx(theme)\n : (tableRowProps?.sx as any)),\n ...draggingBorders,\n })}\n >\n {row?.getVisibleCells()?.map?.((cell) => (\n <MRT_TableBodyCell\n cell={cell}\n key={cell.id}\n enableHover={tableRowProps?.hover !== false}\n rowIndex={rowIndex}\n rowRef={rowRef}\n table={table}\n />\n ))}\n </TableRow>\n {renderDetailPanel && !row.getIsGrouped() && (\n <MRT_TableDetailPanel row={row} table={table} />\n )}\n </>\n );\n};\n","import React, { FC, RefObject, useMemo } from 'react';\nimport { useVirtual } from 'react-virtual';\nimport { TableBody } from '@mui/material';\nimport { MRT_TableBodyRow } from './MRT_TableBodyRow';\nimport { rankGlobalFuzzy } from '../sortingFns';\nimport type { MRT_Row, MRT_TableInstance } from '..';\n\ninterface Props {\n table: MRT_TableInstance;\n tableContainerRef: RefObject<HTMLDivElement>;\n}\n\nexport const MRT_TableBody: FC<Props> = ({ table, tableContainerRef }) => {\n const {\n getRowModel,\n getPrePaginationRowModel,\n getState,\n options: {\n enableGlobalFilterRankedResults,\n enablePagination,\n enableRowVirtualization,\n muiTableBodyProps,\n virtualizerProps,\n },\n } = table;\n const { density, globalFilter, pagination, sorting } = getState();\n\n const tableBodyProps =\n muiTableBodyProps instanceof Function\n ? muiTableBodyProps({ table })\n : muiTableBodyProps;\n\n const getIsSomeColumnsSorted = () => {\n return Object.values(sorting).some(Boolean);\n };\n\n const rows = useMemo(() => {\n if (\n enableGlobalFilterRankedResults &&\n globalFilter &&\n !getIsSomeColumnsSorted()\n ) {\n const rankedRows = getPrePaginationRowModel().rows.sort((a, b) =>\n rankGlobalFuzzy(a, b),\n );\n if (enablePagination) {\n return rankedRows.slice(0, pagination.pageSize);\n }\n return rankedRows;\n }\n\n return enablePagination\n ? getRowModel().rows\n : getPrePaginationRowModel().rows;\n }, [\n enableGlobalFilterRankedResults,\n (enableGlobalFilterRankedResults && globalFilter) || !enablePagination\n ? getPrePaginationRowModel().rows\n : getRowModel().rows,\n globalFilter,\n ]);\n\n const rowVirtualizer = enableRowVirtualization\n ? useVirtual({\n // estimateSize: () => (density === 'compact' ? 25 : 50),\n overscan: density === 'compact' ? 30 : 10,\n parentRef: tableContainerRef,\n size: rows.length,\n ...virtualizerProps,\n })\n : ({} as any);\n\n const virtualRows = enableRowVirtualization\n ? rowVirtualizer.virtualItems\n : [];\n\n let paddingTop = 0;\n let paddingBottom = 0;\n if (enableRowVirtualization) {\n paddingTop = virtualRows.length > 0 ? virtualRows[0].start : 0;\n paddingBottom =\n virtualRows.length > 0\n ? rowVirtualizer.totalSize - virtualRows[virtualRows.length - 1].end\n : 0;\n }\n\n return (\n <TableBody {...tableBodyProps}>\n {enableRowVirtualization && paddingTop > 0 && (\n <tr>\n <td style={{ height: `${paddingTop}px` }} />\n </tr>\n )}\n {(enableRowVirtualization ? virtualRows : rows).map(\n (rowOrVirtualRow: any, rowIndex: number) => {\n const row = enableRowVirtualization\n ? (rows[rowOrVirtualRow.index] as MRT_Row)\n : (rowOrVirtualRow as MRT_Row);\n return (\n <MRT_TableBodyRow\n key={row.id}\n row={row}\n rowIndex={\n enableRowVirtualization ? rowOrVirtualRow.index : rowIndex\n }\n table={table}\n />\n );\n },\n )}\n {enableRowVirtualization && paddingBottom > 0 && (\n <tr>\n <td style={{ height: `${paddingBottom}px` }} />\n </tr>\n )}\n </TableBody>\n );\n};\n","import React, { FC } from 'react';\nimport { alpha, TableCell } from '@mui/material';\nimport type { MRT_Header, MRT_TableInstance } from '..';\n\ninterface Props {\n footer: MRT_Header;\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableFooterCell: FC<Props> = ({ footer, table }) => {\n const {\n getState,\n options: { muiTableFooterCellProps, enableColumnResizing },\n } = table;\n const { density } = getState();\n const { column } = footer;\n const { columnDef } = column;\n const { columnDefType } = columnDef;\n\n const mTableFooterCellProps =\n muiTableFooterCellProps instanceof Function\n ? muiTableFooterCellProps({ column, table })\n : muiTableFooterCellProps;\n\n const mcTableFooterCellProps =\n columnDef.muiTableFooterCellProps instanceof Function\n ? columnDef.muiTableFooterCellProps({ column, table })\n : columnDef.muiTableFooterCellProps;\n\n const tableCellProps = {\n ...mTableFooterCellProps,\n ...mcTableFooterCellProps,\n };\n\n return (\n <TableCell\n align={columnDefType === 'group' ? 'center' : 'left'}\n colSpan={footer.colSpan}\n variant=\"head\"\n {...tableCellProps}\n sx={(theme) => ({\n backgroundColor: theme.palette.background.default,\n backgroundImage: `linear-gradient(${alpha(\n theme.palette.common.white,\n 0.05,\n )},${alpha(theme.palette.common.white, 0.05)})`,\n fontWeight: 'bold',\n maxWidth: `${column.getSize()}px`,\n minWidth: `${column.getSize()}px`,\n p:\n density === 'compact'\n ? '0.5rem'\n : density === 'comfortable'\n ? '1rem'\n : '1.5rem',\n transition: `all ${enableColumnResizing ? '10ms' : '0.2s'} ease-in-out`,\n width: column.getSize(),\n verticalAlign: 'text-top',\n ...(tableCellProps?.sx instanceof Function\n ? tableCellProps.sx(theme)\n : (tableCellProps?.sx as any)),\n })}\n >\n <>\n {footer.isPlaceholder\n ? null\n : (columnDef.Footer instanceof Function\n ? columnDef.Footer?.({\n footer,\n table,\n })\n : columnDef.Footer) ??\n columnDef.footer ??\n null}\n </>\n </TableCell>\n );\n};\n","import React, { FC } from 'react';\nimport { TableRow } from '@mui/material';\nimport { MRT_TableFooterCell } from './MRT_TableFooterCell';\nimport type { MRT_Header, MRT_HeaderGroup, MRT_TableInstance } from '..';\n\ninterface Props {\n footerGroup: MRT_HeaderGroup;\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableFooterRow: FC<Props> = ({ footerGroup, table }) => {\n const {\n options: { muiTableFooterRowProps },\n } = table;\n\n // if no content in row, skip row\n if (\n !footerGroup.headers?.some(\n (header) =>\n (typeof header.column.columnDef.footer === 'string' &&\n !!header.column.columnDef.footer) ||\n header.column.columnDef.Footer,\n )\n )\n return null;\n\n const tableRowProps =\n muiTableFooterRowProps instanceof Function\n ? muiTableFooterRowProps({ footerGroup, table })\n : muiTableFooterRowProps;\n\n return (\n <TableRow {...tableRowProps}>\n {footerGroup.headers.map((footer: MRT_Header) => (\n <MRT_TableFooterCell footer={footer} key={footer.id} table={table} />\n ))}\n </TableRow>\n );\n};\n","import React, { FC } from 'react';\nimport { TableFooter } from '@mui/material';\nimport { MRT_TableFooterRow } from './MRT_TableFooterRow';\nimport type { MRT_TableInstance } from '..';\n\ninterface Props {\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableFooter: FC<Props> = ({ table }) => {\n const {\n getFooterGroups,\n options: { muiTableFooterProps },\n } = table;\n\n const tableFooterProps =\n muiTableFooterProps instanceof Function\n ? muiTableFooterProps({ table })\n : muiTableFooterProps;\n\n return (\n <TableFooter {...tableFooterProps}>\n {getFooterGroups().map((footerGroup) => (\n <MRT_TableFooterRow\n footerGroup={footerGroup as any}\n key={footerGroup.id}\n table={table}\n />\n ))}\n </TableFooter>\n );\n};\n","import React, { FC, RefObject } from 'react';\nimport { Table } from '@mui/material';\nimport { MRT_TableHead } from '../head/MRT_TableHead';\nimport { MRT_TableBody } from '../body/MRT_TableBody';\nimport { MRT_TableFooter } from '../footer/MRT_TableFooter';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n tableContainerRef: RefObject<HTMLDivElement>;\n table: MRT_TableInstance;\n}\n\nexport const MRT_Table: FC<Props> = ({ tableContainerRef, table }) => {\n const {\n getState,\n options: {\n enableColumnResizing,\n enableRowVirtualization,\n enableStickyHeader,\n enableTableFooter,\n enableTableHead,\n muiTableProps,\n },\n } = table;\n const { isFullScreen } = getState();\n\n const tableProps =\n muiTableProps instanceof Function\n ? muiTableProps({ table })\n : muiTableProps;\n\n return (\n <Table\n stickyHeader={\n enableStickyHeader || enableRowVirtualization || isFullScreen\n }\n {...tableProps}\n sx={(theme) => ({\n tableLayout:\n enableColumnResizing || enableRowVirtualization ? 'fixed' : 'auto',\n ...(tableProps?.sx instanceof Function\n ? tableProps.sx(theme)\n : (tableProps?.sx as any)),\n })}\n >\n {enableTableHead && <MRT_TableHead table={table} />}\n <MRT_TableBody tableContainerRef={tableContainerRef} table={table} />\n {enableTableFooter && <MRT_TableFooter table={table} />}\n </Table>\n );\n};\n","import React, { FC, useEffect, useLayoutEffect, useState } from 'react';\nimport { TableContainer } from '@mui/material';\nimport { MRT_Table } from './MRT_Table';\nimport type { MRT_TableInstance } from '..';\n\nconst useIsomorphicLayoutEffect =\n typeof window !== 'undefined' ? useLayoutEffect : useEffect;\n\ninterface Props {\n table: MRT_TableInstance;\n}\n\nexport const MRT_TableContainer: FC<Props> = ({ table }) => {\n const {\n getState,\n options: {\n enableStickyHeader,\n enableRowVirtualization,\n muiTableContainerProps,\n tableId,\n },\n } = table;\n const { isFullScreen } = getState();\n\n const [totalToolbarHeight, setTotalToolbarHeight] = useState(0);\n\n const tableContainerProps =\n muiTableContainerProps instanceof Function\n ? muiTableContainerProps({ table })\n : muiTableContainerProps;\n\n useIsomorphicLayoutEffect(() => {\n const topToolbarHeight =\n typeof document !== 'undefined'\n ? document?.getElementById(`mrt-${tableId}-toolbar-top`)\n ?.offsetHeight ?? 0\n : 0;\n\n const bottomToolbarHeight =\n typeof document !== 'undefined'\n ? document?.getElementById(`mrt-${tableId}-toolbar-bottom`)\n ?.offsetHeight ?? 0\n : 0;\n\n setTotalToolbarHeight(topToolbarHeight + bottomToolbarHeight);\n });\n\n const tableContainerRef = React.useRef<HTMLDivElement>(null);\n\n return (\n <TableContainer\n ref={tableContainerRef}\n {...tableContainerProps}\n sx={(theme) => ({\n maxWidth: '100%',\n maxHeight:\n enableStickyHeader || enableRowVirtualization\n ? `clamp(350px, calc(100vh - ${totalToolbarHeight}px), 9999px)`\n : undefined,\n overflow: 'auto',\n ...(tableContainerProps?.sx instanceof Function\n ? tableContainerProps.sx(theme)\n : (tableContainerProps?.sx as any)),\n })}\n style={{\n maxHeight: isFullScreen\n ? `calc(100vh - ${totalToolbarHeight}px)`\n : undefined,\n ...tableContainerProps?.style,\n }}\n >\n <MRT_Table tableContainerRef={tableContainerRef} table={table} />\n </TableContainer>\n );\n};\n","import React, { FC, useEffect } from 'react';\nimport { Paper } from '@mui/material';\nimport { MRT_ToolbarTop } from '../toolbar/MRT_ToolbarTop';\nimport { MRT_ToolbarBottom } from '../toolbar/MRT_ToolbarBottom';\nimport { MRT_TableContainer } from './MRT_TableContainer';\nimport type { MRT_TableInstance } from '..';\n\ninterface Props {\n table: MRT_TableInstance;\n}\n\nexport const MRT_TablePaper: FC<Props> = ({ table }) => {\n const {\n getState,\n options: { enableToolbarBottom, enableToolbarTop, muiTablePaperProps },\n } = table;\n const { isFullScreen } = getState();\n\n useEffect(() => {\n if (typeof window !== 'undefined') {\n if (isFullScreen) {\n document.body.style.height = '100vh';\n } else {\n document.body.style.height = 'auto';\n }\n }\n }, [isFullScreen]);\n\n const tablePaperProps =\n muiTablePaperProps instanceof Function\n ? muiTablePaperProps({ table })\n : muiTablePaperProps;\n\n return (\n <Paper\n elevation={2}\n {...tablePaperProps}\n sx={{\n transition: 'all 0.2s ease-in-out',\n ...tablePaperProps?.sx,\n }}\n style={{\n ...tablePaperProps?.style,\n height: isFullScreen ? '100vh' : undefined,\n margin: isFullScreen ? '0' : undefined,\n maxHeight: isFullScreen ? '100vh' : undefined,\n maxWidth: isFullScreen ? '100vw' : undefined,\n padding: isFullScreen ? '0' : undefined,\n width: isFullScreen ? '100vw' : undefined,\n }}\n >\n {enableToolbarTop && <MRT_ToolbarTop table={table} />}\n <MRT_TableContainer table={table} />\n {enableToolbarBottom && <MRT_ToolbarBottom table={table} />}\n </Paper>\n );\n};\n","import React, { useEffect, useMemo, useState } from 'react';\nimport {\n TableState,\n getCoreRowModel,\n getExpandedRowModel,\n getFacetedRowModel,\n getFilteredRowModel,\n getGroupedRowModel,\n getPaginationRowModel,\n getSortedRowModel,\n useReactTable,\n} from '@tanstack/react-table';\nimport { Box, Dialog, Grow } from '@mui/material';\nimport { MRT_ExpandAllButton } from '../buttons/MRT_ExpandAllButton';\nimport { MRT_ExpandButton } from '../buttons/MRT_ExpandButton';\nimport { MRT_ToggleRowActionMenuButton } from '../buttons/MRT_ToggleRowActionMenuButton';\nimport { MRT_SelectCheckbox } from '../inputs/MRT_SelectCheckbox';\nimport { MRT_TablePaper } from './MRT_TablePaper';\nimport {\n prepareColumns,\n getAllLeafColumnDefs,\n getDefaultColumnOrderIds,\n} from '../column.utils';\nimport { MRT_FilterFns } from '../filtersFns';\nimport type {\n MRT_Cell,\n MRT_Column,\n MRT_ColumnDef,\n MRT_FilterOption,\n MRT_Row,\n MRT_TableInstance,\n MRT_TableState,\n MaterialReactTableProps,\n} from '..';\n\nconst defaultDisplayColumnDefOptions = {\n columnDefType: 'display',\n enableClickToCopy: false,\n enableColumnActions: false,\n enableColumnDragging: false,\n enableColumnFilter: false,\n enableColumnOrdering: false,\n enableEditing: false,\n enableGlobalFilter: false,\n enableGrouping: false,\n enableHiding: false,\n enablePinning: false,\n enableResizing: false,\n enableSorting: false,\n} as Partial<MRT_ColumnDef>;\n\nexport const MRT_TableRoot = <TData extends Record<string, any> = {}>(\n props: MaterialReactTableProps<TData>,\n) => {\n const [tableId, setIdPrefix] = useState(props.tableId);\n useEffect(\n () =>\n setIdPrefix(props.tableId ?? Math.random().toString(36).substring(2, 9)),\n [props.tableId],\n );\n\n const initialState: Partial<MRT_TableState<TData>> = useMemo(() => {\n const initState = props.initialState ?? {};\n initState.columnOrder =\n initState.columnOrder ?? getDefaultColumnOrderIds(props);\n return initState;\n }, []);\n\n const [columnOrder, setColumnOrder] = useState(\n initialState.columnOrder ?? [],\n );\n const [currentDraggingColumn, setCurrentDraggingColumn] =\n useState<MRT_Column<TData> | null>(\n initialState.currentDraggingColumn ?? null,\n );\n const [currentDraggingRow, setCurrentDraggingRow] =\n useState<MRT_Row<TData> | null>(initialState.currentDraggingRow ?? null);\n const [currentEditingCell, setCurrentEditingCell] =\n useState<MRT_Cell<TData> | null>(initialState.currentEditingCell ?? null);\n const [currentEditingRow, setCurrentEditingRow] =\n useState<MRT_Row<TData> | null>(initialState.currentEditingRow ?? null);\n const [currentHoveredColumn, setCurrentHoveredColumn] =\n useState<MRT_Column<TData> | null>(\n initialState.currentHoveredColumn ?? null,\n );\n const [currentHoveredRow, setCurrentHoveredRow] =\n useState<MRT_Row<TData> | null>(initialState.currentHoveredRow ?? null);\n const [density, setDensity] = useState(\n initialState?.density ?? 'comfortable',\n );\n const [isFullScreen, setIsFullScreen] = useState(\n initialState?.isFullScreen ?? false,\n );\n const [showAlertBanner, setShowAlertBanner] = useState(\n props.initialState?.showAlertBanner ?? false,\n );\n const [showColumnFilters, setShowFilters] = useState(\n initialState?.showColumnFilters ?? false,\n );\n const [showGlobalFilter, setShowGlobalFilter] = useState(\n initialState?.showGlobalFilter ?? false,\n );\n const [currentFilterFns, setCurrentFilterFns] = useState<{\n [key: string]: MRT_FilterOption;\n }>(() =>\n Object.assign(\n {},\n ...getAllLeafColumnDefs(props.columns as MRT_ColumnDef<TData>[]).map(\n (col) => ({\n [col.id?.toString() ?? col.accessorKey?.toString() ?? '']:\n col.filterFn instanceof Function\n ? col.filterFn.name ?? 'custom'\n : col.filterFn ??\n initialState?.currentFilterFns?.[\n col.id?.toString() ?? col.accessorKey?.toString() ?? ''\n ] ??\n (!!col.filterSelectOptions?.length ? 'equals' : 'fuzzy'),\n }),\n ),\n ),\n );\n const [currentGlobalFilterFn, setCurrentGlobalFilterFn] =\n useState<MRT_FilterOption>(\n props.globalFilterFn instanceof String\n ? (props.globalFilterFn as MRT_FilterOption)\n : 'fuzzy',\n );\n\n const displayColumns = useMemo(\n () =>\n (\n [\n columnOrder.includes('mrt-row-drag') && {\n header: props.localization?.move,\n size: 60,\n ...defaultDisplayColumnDefOptions,\n ...props.displayColumnDefOptions?.['mrt-row-drag'],\n id: 'mrt-row-drag',\n },\n columnOrder.includes('mrt-row-actions') && {\n Cell: ({ cell }) => (\n <MRT_ToggleRowActionMenuButton\n row={cell.row as any}\n table={table}\n />\n ),\n header: props.localization?.actions,\n size: 70,\n ...defaultDisplayColumnDefOptions,\n ...props.displayColumnDefOptions?.['mrt-row-actions'],\n id: 'mrt-row-actions',\n },\n columnOrder.includes('mrt-row-expand') && {\n Cell: ({ cell }) => (\n <MRT_ExpandButton row={cell.row as any} table={table} />\n ),\n Header: () =>\n props.enableExpandAll ? (\n <MRT_ExpandAllButton table={table} />\n ) : null,\n header: props.localization?.expand,\n size: 60,\n ...defaultDisplayColumnDefOptions,\n ...props.displayColumnDefOptions?.['mrt-row-expand'],\n id: 'mrt-row-expand',\n },\n columnOrder.includes('mrt-row-select') && {\n Cell: ({ cell }) => (\n <MRT_SelectCheckbox row={cell.row as any} table={table} />\n ),\n Header: () =>\n props.enableSelectAll ? (\n <MRT_SelectCheckbox selectAll table={table} />\n ) : null,\n header: props.localization?.select,\n size: 60,\n ...defaultDisplayColumnDefOptions,\n ...props.displayColumnDefOptions?.['mrt-row-select'],\n id: 'mrt-row-select',\n },\n columnOrder.includes('mrt-row-numbers') && {\n Cell: ({ cell }) => cell.row.index + 1,\n Header: () => props.localization?.rowNumber,\n header: props.localization?.rowNumbers,\n size: 60,\n ...defaultDisplayColumnDefOptions,\n ...props.displayColumnDefOptions?.['mrt-row-numbers'],\n id: 'mrt-row-numbers',\n },\n ] as MRT_ColumnDef<TData>[]\n ).filter(Boolean),\n [\n columnOrder,\n props.displayColumnDefOptions,\n props.editingMode,\n props.enableColumnDragging,\n props.enableColumnOrdering,\n props.enableEditing,\n props.enableExpandAll,\n props.enableExpanding,\n props.enableGrouping,\n props.enableRowActions,\n props.enableRowDragging,\n props.enableRowNumbers,\n props.enableRowOrdering,\n props.enableRowSelection,\n props.enableSelectAll,\n props.localization,\n props.muiTableBodyCellProps,\n props.muiTableHeadCellProps,\n props.positionActionsColumn,\n ],\n );\n\n const columnDefs = useMemo(\n () =>\n prepareColumns([...displayColumns, ...props.columns], currentFilterFns),\n [currentFilterFns, displayColumns, props.columns],\n );\n\n const data: TData[] = useMemo(\n () =>\n (props.state?.isLoading || props.state?.showSkeletons) &&\n !props.data.length\n ? [...Array(10).fill(null)].map(() =>\n Object.assign(\n {},\n ...getAllLeafColumnDefs(props.columns as MRT_ColumnDef[]).map(\n (col) => ({\n [col.id ?? col.accessorKey ?? '']: null,\n }),\n ),\n ),\n )\n : props.data,\n [props.data, props.state?.isLoading, props.state?.showSkeletons],\n );\n\n //@ts-ignore\n const table = {\n ...useReactTable({\n getCoreRowModel: getCoreRowModel(),\n getExpandedRowModel: getExpandedRowModel(),\n getFacetedRowModel: getFacetedRowModel(),\n getFilteredRowModel: getFilteredRowModel(),\n getGroupedRowModel: getGroupedRowModel(),\n getPaginationRowModel: getPaginationRowModel(),\n getSortedRowModel: getSortedRowModel(),\n onColumnOrderChange: setColumnOrder,\n ...props,\n //@ts-ignore\n columns: columnDefs,\n data,\n getSubRows: (row) => row?.subRows,\n //@ts-ignore\n globalFilterFn:\n MRT_FilterFns[currentGlobalFilterFn] ?? MRT_FilterFns.fuzzy,\n initialState,\n state: {\n columnOrder,\n currentDraggingColumn,\n currentDraggingRow,\n currentEditingCell,\n currentEditingRow,\n currentFilterFns,\n currentGlobalFilterFn,\n currentHoveredColumn,\n currentHoveredRow,\n density,\n isFullScreen,\n showAlertBanner,\n showColumnFilters,\n showGlobalFilter,\n ...props.state,\n } as TableState,\n tableId,\n }),\n setCurrentDraggingColumn:\n props.onCurrentDraggingColumnChange ?? setCurrentDraggingColumn,\n setCurrentDraggingRow:\n props.onCurrentDraggingRowChange ?? setCurrentDraggingRow,\n setCurrentEditingCell:\n props.onCurrentEditingCellChange ?? setCurrentEditingCell,\n setCurrentEditingRow:\n props.onCurrentEditingRowChange ?? setCurrentEditingRow,\n setCurrentFilterFns: props.onCurrentFilterFnsChange ?? setCurrentFilterFns,\n setCurrentGlobalFilterFn:\n props.onCurrentGlobalFilterFnChange ?? setCurrentGlobalFilterFn,\n setCurrentHoveredColumn:\n props.onCurrentHoveredColumnChange ?? setCurrentHoveredColumn,\n setCurrentHoveredRow:\n props.onCurrentHoveredRowChange ?? setCurrentHoveredRow,\n setDensity: props.onDensityChange ?? setDensity,\n setIsFullScreen: props.onIsFullScreenChange ?? setIsFullScreen,\n setShowAlertBanner: props.onShowAlertBannerChange ?? setShowAlertBanner,\n setShowFilters: props.onShowFiltersChange ?? setShowFilters,\n setShowGlobalFilter: props.onShowGlobalFilterChange ?? setShowGlobalFilter,\n } as MRT_TableInstance;\n\n return (\n <>\n <Dialog\n PaperComponent={Box}\n TransitionComponent={Grow}\n disablePortal\n fullScreen\n keepMounted={false}\n onClose={() => setIsFullScreen(false)}\n open={isFullScreen}\n transitionDuration={400}\n >\n <MRT_TablePaper table={table} />\n </Dialog>\n {!isFullScreen && <MRT_TablePaper table={table} />}\n </>\n );\n};\n","import React, {\n ChangeEvent,\n Dispatch,\n DragEvent,\n FC,\n FocusEvent,\n ReactNode,\n SetStateAction,\n} from 'react';\nimport type {\n AlertProps,\n ButtonProps,\n CheckboxProps,\n IconButtonProps,\n LinearProgressProps,\n PaperProps,\n SkeletonProps,\n TableBodyProps,\n TableCellProps,\n TableContainerProps,\n TableFooterProps,\n TableHeadProps,\n TablePaginationProps,\n TableProps,\n TableRowProps,\n TextFieldProps,\n ToolbarProps,\n} from '@mui/material';\nimport type {\n Cell,\n Column,\n ColumnDef,\n FilterFn,\n Header,\n HeaderGroup,\n OnChangeFn,\n Row,\n SortingFn,\n Table,\n TableOptions,\n TableState,\n} from '@tanstack/react-table';\nimport type { Options as VirtualizerOptions } from 'react-virtual';\nimport { MRT_Localization, MRT_DefaultLocalization_EN } from './localization';\nimport { MRT_Default_Icons, MRT_Icons } from './icons';\nimport { MRT_TableRoot } from './table/MRT_TableRoot';\nimport { MRT_FilterFns } from './filtersFns';\nimport { MRT_SortingFns } from './sortingFns';\n\ntype LiteralUnion<T extends U, U = string> = T | (U & Record<never, never>);\n\nexport interface MRT_RowModel<TData extends Record<string, any> = {}> {\n flatRows: MRT_Row<TData>[];\n rows: MRT_Row<TData>[];\n rowsById: { [key: string]: MRT_Row<TData> };\n}\n\nexport type MRT_TableInstance<TData extends Record<string, any> = {}> = Omit<\n Table<TData>,\n | 'getAllColumns'\n | 'getAllFlatColumns'\n | 'getAllLeafColumns'\n | 'getCenterLeafColumns'\n | 'getColumn'\n | 'getExpandedRowModel'\n | 'getFlatHeaders'\n | 'getLeftLeafColumns'\n | 'getPaginationRowModel'\n | 'getPreFilteredRowModel'\n | 'getPrePaginationRowModel'\n | 'getRightLeafColumns'\n | 'getRowModel'\n | 'getSelectedRowModel'\n | 'getState'\n | 'options'\n> & {\n getAllColumns: () => MRT_Column<TData>[];\n getAllFlatColumns: () => MRT_Column<TData>[];\n getAllLeafColumns: () => MRT_Column<TData>[];\n getCenterLeafColumns: () => MRT_Column<TData>[];\n getColumn: (columnId: string) => MRT_Column<TData>;\n getExpandedRowModel: () => MRT_RowModel<TData>;\n getFlatHeaders: () => MRT_Header<TData>[];\n getLeftLeafColumns: () => MRT_Column<TData>[];\n getPaginationRowModel: () => MRT_RowModel<TData>;\n getPreFilteredRowModel: () => MRT_RowModel<TData>;\n getPrePaginationRowModel: () => MRT_RowModel<TData>;\n getRightLeafColumns: () => MRT_Column<TData>[];\n getRowModel: () => MRT_RowModel<TData>;\n getSelectedRowModel: () => MRT_RowModel<TData>;\n getState: () => MRT_TableState<TData>;\n options: MaterialReactTableProps<TData> & {\n icons: MRT_Icons;\n tableId: string;\n localization: MRT_Localization;\n };\n setCurrentDraggingColumn: Dispatch<SetStateAction<MRT_Column<TData> | null>>;\n setCurrentDraggingRow: Dispatch<SetStateAction<MRT_Row<TData> | null>>;\n setCurrentEditingCell: Dispatch<SetStateAction<MRT_Cell | null>>;\n setCurrentEditingRow: Dispatch<SetStateAction<MRT_Row | null>>;\n setCurrentFilterFns: Dispatch<\n SetStateAction<{\n [key: string]: MRT_FilterOption;\n }>\n >;\n setCurrentGlobalFilterFn: Dispatch<SetStateAction<MRT_FilterOption>>;\n setCurrentHoveredColumn: Dispatch<SetStateAction<MRT_Column<TData> | null>>;\n setCurrentHoveredRow: Dispatch<SetStateAction<MRT_Row | null>>;\n setDensity: Dispatch<SetStateAction<'comfortable' | 'compact' | 'spacious'>>;\n setIsFullScreen: Dispatch<SetStateAction<boolean>>;\n setShowAlertBanner: Dispatch<SetStateAction<boolean>>;\n setShowFilters: Dispatch<SetStateAction<boolean>>;\n setShowGlobalFilter: Dispatch<SetStateAction<boolean>>;\n};\n\nexport type MRT_TableState<TData extends Record<string, any> = {}> =\n TableState & {\n currentDraggingColumn: MRT_Column<TData> | null;\n currentDraggingRow: MRT_Row<TData> | null;\n currentEditingCell: MRT_Cell<TData> | null;\n currentEditingRow: MRT_Row<TData> | null;\n currentFilterFns: Record<string, MRT_FilterOption>;\n currentGlobalFilterFn: Record<string, MRT_FilterOption>;\n currentHoveredColumn: MRT_Column<TData> | null;\n currentHoveredRow: MRT_Row<TData> | null;\n density: 'comfortable' | 'compact' | 'spacious';\n isFullScreen: boolean;\n isLoading: boolean;\n showAlertBanner: boolean;\n showColumnFilters: boolean;\n showGlobalFilter: boolean;\n showProgressBars: boolean;\n showSkeletons: boolean;\n };\n\nexport type MRT_ColumnDef<TData extends Record<string, any> = {}> = Omit<\n ColumnDef<TData>,\n | 'accessorFn'\n | 'accessorKey'\n | 'aggregatedCell'\n | 'cell'\n | 'columns'\n | 'filterFn'\n | 'footer'\n | 'header'\n | 'id'\n | 'sortingFn'\n> & {\n AggregatedCell?: ({\n cell,\n table,\n }: {\n cell: MRT_Cell<TData>;\n table: MRT_TableInstance<TData>;\n }) => ReactNode;\n Cell?: ({\n cell,\n table,\n }: {\n cell: MRT_Cell<TData>;\n table: MRT_TableInstance<TData>;\n }) => ReactNode;\n Edit?: ({\n cell,\n table,\n }: {\n cell: MRT_Cell<TData>;\n table: MRT_TableInstance<TData>;\n }) => ReactNode;\n Filter?: ({\n header,\n table,\n }: {\n header: MRT_Header<TData>;\n table: MRT_TableInstance<TData>;\n }) => ReactNode;\n Footer?:\n | ReactNode\n | (({\n footer,\n table,\n }: {\n footer: MRT_Header<TData>;\n table: MRT_TableInstance<TData>;\n }) => ReactNode);\n Header?:\n | ReactNode\n | (({\n header,\n table,\n }: {\n header: MRT_Header<TData>;\n table: MRT_TableInstance<TData>;\n }) => ReactNode);\n /**\n * Either an `accessorKey` or a combination of an `accessorFn` and `id` are required for a data column definition.\n * Specify a function here to point to the correct property in the data object.\n *\n * @example accessorFn: (row) => row.username\n */\n accessorFn?: (row: TData) => any;\n /**\n * Either an `accessorKey` or a combination of an `accessorFn` and `id` are required for a data column definition.\n * Specify which key in the row this column should use to access the correct data.\n *\n * @example accessorKey: 'username'\n */\n accessorKey?: string & keyof TData;\n /**\n * Specify what type of column this is. Either `data`, `display`, or `group`. Defaults to `data`.\n * Leave this blank if you are just creating a normal data column.\n *\n * @default 'data'\n *\n * @example columnDefType: 'display'\n */\n columnDefType?: 'data' | 'display' | 'group';\n columns?: MRT_ColumnDef<TData>[];\n enableClickToCopy?: boolean;\n enableColumnActions?: boolean;\n enableColumnDragging?: boolean;\n enableColumnFilterChangeMode?: boolean;\n enableColumnOrdering?: boolean;\n enableEditing?: boolean;\n enabledColumnFilterOptions?: MRT_FilterOption[] | null;\n filterFn?: MRT_FilterFn<TData>;\n filterSelectOptions?: (string | { text: string; value: string })[];\n /**\n * footer must be a string. If you want custom JSX to render the footer, you can also specify a `Footer` option. (Capital F)\n */\n footer?: string;\n /**\n * header must be a string. If you want custom JSX to render the header, you can also specify a `Header` option. (Capital H)\n */\n header: string;\n /**\n * Either an `accessorKey` or a combination of an `accessorFn` and `id` are required for a data column definition.\n *\n * If you have also specified an `accessorFn`, MRT still needs to have a valid `id` to be able to identify the column uniquely.\n *\n * `id` defaults to the `accessorKey` or `header` if not specified.\n *\n * @default gets set to the same value as `accessorKey` by default\n */\n id?: LiteralUnion<string & keyof TData>;\n muiTableBodyCellCopyButtonProps?:\n | ButtonProps\n | (({\n table,\n cell,\n }: {\n table: MRT_TableInstance<TData>;\n cell: MRT_Cell<TData>;\n }) => ButtonProps);\n muiTableBodyCellEditTextFieldProps?:\n | TextFieldProps\n | (({\n table,\n cell,\n }: {\n table: MRT_TableInstance<TData>;\n cell: MRT_Cell<TData>;\n }) => TextFieldProps);\n muiTableBodyCellProps?:\n | TableCellProps\n | (({\n table,\n cell,\n }: {\n table: MRT_TableInstance<TData>;\n cell: MRT_Cell<TData>;\n }) => TableCellProps);\n muiTableFooterCellProps?:\n | TableCellProps\n | (({\n table,\n column,\n }: {\n table: MRT_TableInstance<TData>;\n column: MRT_Column<TData>;\n }) => TableCellProps);\n muiTableHeadCellColumnActionsButtonProps?:\n | IconButtonProps\n | (({\n table,\n column,\n }: {\n table: MRT_TableInstance<TData>;\n column: MRT_Column<TData>;\n }) => IconButtonProps);\n muiTableHeadCellDragHandleProps?:\n | IconButtonProps\n | (({\n table,\n column,\n }: {\n table: MRT_TableInstance<TData>;\n column: MRT_Column<TData>;\n }) => IconButtonProps);\n muiTableHeadCellFilterTextFieldProps?:\n | TextFieldProps\n | (({\n table,\n column,\n }: {\n table: MRT_TableInstance<TData>;\n column: MRT_Column<TData>;\n }) => TextFieldProps);\n muiTableHeadCellProps?:\n | TableCellProps\n | (({\n table,\n column,\n }: {\n table: MRT_TableInstance<TData>;\n column: MRT_Column<TData>;\n }) => TableCellProps);\n onCellEditBlur?: ({\n cell,\n event,\n table,\n }: {\n event: FocusEvent<HTMLInputElement>;\n cell: MRT_Cell<TData>;\n table: MRT_TableInstance<TData>;\n }) => void;\n onCellEditChange?: ({\n cell,\n event,\n table,\n }: {\n event: ChangeEvent<HTMLInputElement>;\n cell: MRT_Cell<TData>;\n table: MRT_TableInstance<TData>;\n }) => void;\n sortingFn?: MRT_SortingFn;\n};\n\nexport type MRT_DefinedColumnDef<TData extends Record<string, any> = {}> = Omit<\n MRT_ColumnDef<TData>,\n 'id'\n> & {\n id: string;\n};\n\nexport type MRT_Column<TData extends Record<string, any> = {}> = Omit<\n Column<TData, unknown>,\n 'header' | 'footer' | 'columns' | 'columnDef' | 'filterFn'\n> & {\n columnDef: MRT_DefinedColumnDef<TData>;\n columns?: MRT_Column<TData>[];\n filterFn?: MRT_FilterFn<TData>;\n footer: string;\n header: string;\n};\n\nexport type MRT_Header<TData extends Record<string, any> = {}> = Omit<\n Header<TData, unknown>,\n 'column'\n> & {\n column: MRT_Column<TData>;\n};\n\nexport type MRT_HeaderGroup<TData extends Record<string, any> = {}> = Omit<\n HeaderGroup<TData>,\n 'headers'\n> & {\n headers: MRT_Header<TData>[];\n};\n\nexport type MRT_Row<TData extends Record<string, any> = {}> = Omit<\n Row<TData>,\n 'getVisibleCells' | 'getAllCells' | 'subRows' | '_valuesCache'\n> & {\n getAllCells: () => MRT_Cell<TData>[];\n getVisibleCells: () => MRT_Cell<TData>[];\n subRows?: MRT_Row<TData>[];\n _valuesCache?: TData;\n};\n\nexport type MRT_Cell<TData extends Record<string, any> = {}> = Omit<\n Cell<TData, unknown>,\n 'column' | 'row'\n> & {\n column: MRT_Column<TData>;\n row: MRT_Row<TData>;\n};\n\nexport type MRT_SortingOption = keyof typeof MRT_SortingFns;\n\nexport type MRT_SortingFn<TData extends Record<string, any> = {}> =\n | SortingFn<TData>\n | MRT_SortingOption;\n\nexport type MRT_FilterOption = keyof typeof MRT_FilterFns;\n\nexport type MRT_FilterFn<TData extends Record<string, any> = {}> =\n | FilterFn<TData>\n | MRT_FilterOption;\n\nexport type MRT_DisplayColumnIds =\n | 'mrt-row-drag'\n | 'mrt-row-actions'\n | 'mrt-row-expand'\n | 'mrt-row-select'\n | 'mrt-row-numbers';\n\n/**\n * `columns` and `data` props are the only required props, but there are over 150 other optional props.\n *\n * See more info on creating columns and data on the official docs site:\n * @link https://www.material-react-table.com/docs/usage\n *\n * See the full props list on the official docs site:\n * @link https://www.material-react-table.com/docs/api/props\n */\nexport type MaterialReactTableProps<TData extends Record<string, any> = {}> =\n Omit<\n Partial<TableOptions<TData>>,\n 'columns' | 'data' | 'initialState' | 'state' | 'expandRowsFn'\n > & {\n displayColumnDefOptions?: Partial<{\n [key in MRT_DisplayColumnIds]: Partial<MRT_ColumnDef>;\n }>;\n columns: MRT_ColumnDef<TData>[];\n data: TData[];\n editingMode?: 'table' | 'row' | 'cell';\n enableClickToCopy?: boolean;\n enableColumnActions?: boolean;\n enableColumnDragging?: boolean;\n enableColumnFilterChangeMode?: boolean;\n enableColumnOrdering?: boolean;\n enableDensityToggle?: boolean;\n enableEditing?: boolean;\n enableExpandAll?: boolean;\n enableFullScreenToggle?: boolean;\n enableGlobalFilterChangeMode?: boolean;\n enableGlobalFilterRankedResults?: boolean;\n enablePagination?: boolean;\n enableRowActions?: boolean;\n enableRowDragging?: boolean;\n enableRowNumbers?: boolean;\n enableRowOrdering?: boolean;\n enableRowVirtualization?: boolean;\n enableSelectAll?: boolean;\n enableStickyHeader?: boolean;\n enableTableFooter?: boolean;\n enableTableHead?: boolean;\n enableToolbarBottom?: boolean;\n enableToolbarInternalActions?: boolean;\n enableToolbarTop?: boolean;\n enabledColumnFilterOptions?: (MRT_FilterOption | string)[] | null;\n enabledGlobalFilterOptions?: (MRT_FilterOption | string)[] | null;\n expandRowsFn?: (dataRow: TData) => TData[];\n icons?: Partial<MRT_Icons>;\n initialState?: Partial<MRT_TableState<TData>>;\n localization?: Partial<MRT_Localization>;\n muiExpandAllButtonProps?:\n | IconButtonProps\n | (({ table }: { table: MRT_TableInstance<TData> }) => IconButtonProps);\n muiExpandButtonProps?:\n | IconButtonProps\n | (({\n table,\n }: {\n table: MRT_TableInstance<TData>;\n row: MRT_Row<TData>;\n }) => IconButtonProps);\n muiLinearProgressProps?:\n | LinearProgressProps\n | (({\n isTopToolbar,\n table,\n }: {\n isTopToolbar: boolean;\n table: MRT_TableInstance<TData>;\n }) => LinearProgressProps);\n muiSearchTextFieldProps?:\n | TextFieldProps\n | (({ table }: { table: MRT_TableInstance<TData> }) => TextFieldProps);\n muiSelectAllCheckboxProps?:\n | CheckboxProps\n | (({ table }: { table: MRT_TableInstance<TData> }) => CheckboxProps);\n muiSelectCheckboxProps?:\n | CheckboxProps\n | (({\n table,\n row,\n }: {\n table: MRT_TableInstance<TData>;\n row: MRT_Row<TData>;\n }) => CheckboxProps);\n muiTableBodyCellCopyButtonProps?:\n | ButtonProps\n | (({\n table,\n cell,\n }: {\n table: MRT_TableInstance<TData>;\n cell: MRT_Cell<TData>;\n }) => ButtonProps);\n muiTableBodyCellEditTextFieldProps?:\n | TextFieldProps\n | (({\n table,\n cell,\n }: {\n table: MRT_TableInstance<TData>;\n cell: MRT_Cell<TData>;\n }) => TextFieldProps);\n muiTableBodyCellProps?:\n | TableCellProps\n | (({\n table,\n cell,\n }: {\n table: MRT_TableInstance<TData>;\n cell: MRT_Cell<TData>;\n }) => TableCellProps);\n muiTableBodyCellSkeletonProps?:\n | SkeletonProps\n | (({\n table,\n cell,\n }: {\n table: MRT_TableInstance<TData>;\n cell: MRT_Cell<TData>;\n }) => SkeletonProps);\n muiTableBodyProps?:\n | TableBodyProps\n | (({ table }: { table: MRT_TableInstance<TData> }) => TableBodyProps);\n muiTableBodyRowDragHandleProps?:\n | IconButtonProps\n | (({\n table,\n row,\n }: {\n table: MRT_TableInstance<TData>;\n row: MRT_Row<TData>;\n }) => IconButtonProps);\n muiTableBodyRowProps?:\n | TableRowProps\n | (({\n table,\n row,\n }: {\n table: MRT_TableInstance<TData>;\n row: MRT_Row<TData>;\n }) => TableRowProps);\n muiTableContainerProps?:\n | TableContainerProps\n | (({\n table,\n }: {\n table: MRT_TableInstance<TData>;\n }) => TableContainerProps);\n muiTableDetailPanelProps?:\n | TableCellProps\n | (({\n table,\n row,\n }: {\n table: MRT_TableInstance<TData>;\n row: MRT_Row<TData>;\n }) => TableCellProps);\n muiTableFooterCellProps?:\n | TableCellProps\n | (({\n table,\n column,\n }: {\n table: MRT_TableInstance<TData>;\n column: MRT_Column<TData>;\n }) => TableCellProps);\n muiTableFooterProps?:\n | TableFooterProps\n | (({ table }: { table: MRT_TableInstance<TData> }) => TableFooterProps);\n muiTableFooterRowProps?:\n | TableRowProps\n | (({\n table,\n footerGroup,\n }: {\n table: MRT_TableInstance<TData>;\n footerGroup: MRT_HeaderGroup<TData>;\n }) => TableRowProps);\n muiTableHeadCellColumnActionsButtonProps?:\n | IconButtonProps\n | (({\n table,\n column,\n }: {\n table: MRT_TableInstance<TData>;\n column: MRT_Column<TData>;\n }) => IconButtonProps);\n muiTableHeadCellDragHandleProps?:\n | IconButtonProps\n | (({\n table,\n column,\n }: {\n table: MRT_TableInstance<TData>;\n column: MRT_Column<TData>;\n }) => IconButtonProps);\n muiTableHeadCellFilterTextFieldProps?:\n | TextFieldProps\n | (({\n table,\n column,\n }: {\n table: MRT_TableInstance<TData>;\n column: MRT_Column<TData>;\n }) => TextFieldProps);\n muiTableHeadCellProps?:\n | TableCellProps\n | (({\n table,\n column,\n }: {\n table: MRT_TableInstance<TData>;\n column: MRT_Column<TData>;\n }) => TableCellProps);\n muiTableHeadProps?:\n | TableHeadProps\n | (({ table }: { table: MRT_TableInstance<TData> }) => TableHeadProps);\n muiTableHeadRowProps?:\n | TableRowProps\n | (({\n table,\n headerGroup,\n }: {\n table: MRT_TableInstance<TData>;\n headerGroup: MRT_HeaderGroup<TData>;\n }) => TableRowProps);\n muiTablePaginationProps?:\n | Partial<TablePaginationProps>\n | (({\n table,\n }: {\n table: MRT_TableInstance<TData>;\n }) => Partial<TablePaginationProps>);\n muiTablePaperProps?:\n | PaperProps\n | (({ table }: { table: MRT_TableInstance<TData> }) => PaperProps);\n muiTableProps?:\n | TableProps\n | (({ table }: { table: MRT_TableInstance<TData> }) => TableProps);\n muiTableToolbarAlertBannerProps?:\n | AlertProps\n | (({ table }: { table: MRT_TableInstance<TData> }) => AlertProps);\n muiTableToolbarBottomProps?:\n | ToolbarProps\n | (({ table }: { table: MRT_TableInstance<TData> }) => ToolbarProps);\n muiTableToolbarTopProps?:\n | ToolbarProps\n | (({ table }: { table: MRT_TableInstance<TData> }) => ToolbarProps);\n onCellEditBlur?: ({\n cell,\n event,\n table,\n }: {\n event: FocusEvent<HTMLInputElement>;\n cell: MRT_Cell<TData>;\n table: MRT_TableInstance<TData>;\n }) => void;\n onCellEditChange?: ({\n cell,\n event,\n table,\n }: {\n event: ChangeEvent<HTMLInputElement>;\n cell: MRT_Cell<TData>;\n table: MRT_TableInstance<TData>;\n }) => void;\n onColumnDrop?: ({\n event,\n draggedColumn,\n targetColumn,\n }: {\n event: DragEvent<HTMLButtonElement>;\n draggedColumn: MRT_Column<TData>;\n targetColumn: MRT_Column<TData> | null;\n }) => void;\n onCurrentDraggingColumnChange?: OnChangeFn<MRT_Column<TData> | null>;\n onCurrentDraggingRowChange?: OnChangeFn<MRT_Row<TData> | null>;\n onCurrentEditingCellChange?: OnChangeFn<MRT_Cell<TData> | null>;\n onCurrentEditingRowChange?: OnChangeFn<MRT_Row<TData> | null>;\n onCurrentFilterFnsChange?: OnChangeFn<{ [key: string]: MRT_FilterOption }>;\n onCurrentGlobalFilterFnChange?: OnChangeFn<MRT_FilterOption>;\n onCurrentHoveredColumnChange?: OnChangeFn<MRT_Column<TData> | null>;\n onCurrentHoveredRowChange?: OnChangeFn<MRT_Row<TData> | null>;\n onDensityChange?: OnChangeFn<boolean>;\n onEditRowSubmit?: ({\n row,\n table,\n }: {\n row: MRT_Row<TData>;\n table: MRT_TableInstance<TData>;\n }) => Promise<void> | void;\n onIsFullScreenChange?: OnChangeFn<boolean>;\n onRowDrop?: ({\n event,\n draggedRow,\n targetRow,\n }: {\n event: DragEvent<HTMLButtonElement>;\n draggedRow: MRT_Row<TData>;\n targetRow: MRT_Row<TData> | null;\n }) => void;\n onShowAlertBannerChange?: OnChangeFn<boolean>;\n onShowFiltersChange?: OnChangeFn<boolean>;\n onShowGlobalFilterChange?: OnChangeFn<boolean>;\n positionActionsColumn?: 'first' | 'last';\n positionGlobalFilter?: 'left' | 'right';\n positionPagination?: 'bottom' | 'top' | 'both';\n positionToolbarAlertBanner?: 'bottom' | 'top';\n renderDetailPanel?: ({\n row,\n table,\n }: {\n row: MRT_Row<TData>;\n table: MRT_TableInstance<TData>;\n }) => ReactNode;\n renderRowActionMenuItems?: ({\n closeMenu,\n row,\n table,\n }: {\n closeMenu: () => void;\n row: MRT_Row<TData>;\n table: MRT_TableInstance<TData>;\n }) => ReactNode[];\n renderRowActions?: ({\n row,\n table,\n }: {\n row: MRT_Row<TData>;\n table: MRT_TableInstance<TData>;\n }) => ReactNode;\n renderToolbarBottomCustomActions?: ({\n table,\n }: {\n table: MRT_TableInstance<TData>;\n }) => ReactNode;\n renderToolbarInternalActions?: ({\n table,\n MRT_ToggleGlobalFilterButton,\n MRT_ToggleFiltersButton,\n MRT_ShowHideColumnsButton,\n MRT_ToggleDensePaddingButton,\n MRT_FullScreenToggleButton,\n }: {\n table: MRT_TableInstance<TData>;\n MRT_ToggleGlobalFilterButton: FC<\n IconButtonProps & { table: MRT_TableInstance<TData> }\n >;\n MRT_ToggleFiltersButton: FC<\n IconButtonProps & { table: MRT_TableInstance<TData> }\n >;\n MRT_ShowHideColumnsButton: FC<\n IconButtonProps & { table: MRT_TableInstance<TData> }\n >;\n MRT_ToggleDensePaddingButton: FC<\n IconButtonProps & { table: MRT_TableInstance<TData> }\n >;\n MRT_FullScreenToggleButton: FC<\n IconButtonProps & { table: MRT_TableInstance<TData> }\n >;\n }) => ReactNode;\n renderToolbarTopCustomActions?: ({\n table,\n }: {\n table: MRT_TableInstance<TData>;\n }) => ReactNode;\n rowCount?: number;\n rowNumberMode?: 'original' | 'static';\n selectAllMode?: 'all' | 'page';\n state?: Partial<MRT_TableState<TData>>;\n tableId?: string;\n virtualizerProps?: Partial<VirtualizerOptions<HTMLDivElement>>;\n };\n\nexport default <TData extends Record<string, any> = {}>({\n autoResetExpanded = false,\n columnResizeMode = 'onEnd',\n defaultColumn = { minSize: 40, maxSize: 1000, size: 180 },\n editingMode = 'row',\n enableColumnActions = true,\n enableColumnFilterChangeMode = true,\n enableColumnFilters = true,\n enableColumnOrdering = false,\n enableColumnResizing = false,\n enableDensityToggle = true,\n enableExpandAll = true,\n enableFilters = true,\n enableFullScreenToggle = true,\n enableGlobalFilter = true,\n enableGlobalFilterChangeMode = true,\n enableGlobalFilterRankedResults = true,\n enableGrouping = false,\n enableHiding = true,\n enableMultiRowSelection = true,\n enableMultiSort = true,\n enablePagination = true,\n enablePinning = false,\n enableRowSelection = false,\n enableSelectAll = true,\n enableSorting = true,\n enableStickyHeader = false,\n enableTableFooter = true,\n enableTableHead = true,\n enableToolbarBottom = true,\n enableToolbarInternalActions = true,\n enableToolbarTop = true,\n icons,\n localization,\n positionActionsColumn = 'first',\n positionGlobalFilter = 'right',\n positionPagination = 'bottom',\n positionToolbarAlertBanner = 'top',\n rowNumberMode = 'original',\n selectAllMode = 'all',\n ...rest\n}: MaterialReactTableProps<TData>) => (\n <MRT_TableRoot\n autoResetExpanded={autoResetExpanded}\n columnResizeMode={columnResizeMode}\n defaultColumn={defaultColumn}\n editingMode={editingMode}\n enableColumnActions={enableColumnActions}\n enableColumnFilterChangeMode={enableColumnFilterChangeMode}\n enableColumnFilters={enableColumnFilters}\n enableColumnOrdering={enableColumnOrdering}\n enableColumnResizing={enableColumnResizing}\n enableDensityToggle={enableDensityToggle}\n enableExpandAll={enableExpandAll}\n enableFilters={enableFilters}\n enableFullScreenToggle={enableFullScreenToggle}\n enableGlobalFilter={enableGlobalFilter}\n enableGlobalFilterChangeMode={enableGlobalFilterChangeMode}\n enableGlobalFilterRankedResults={enableGlobalFilterRankedResults}\n enableGrouping={enableGrouping}\n enableHiding={enableHiding}\n enableMultiRowSelection={enableMultiRowSelection}\n enableMultiSort={enableMultiSort}\n enablePagination={enablePagination}\n enablePinning={enablePinning}\n enableRowSelection={enableRowSelection}\n enableSelectAll={enableSelectAll}\n enableSorting={enableSorting}\n enableStickyHeader={enableStickyHeader}\n enableTableFooter={enableTableFooter}\n enableTableHead={enableTableHead}\n enableToolbarBottom={enableToolbarBottom}\n enableToolbarInternalActions={enableToolbarInternalActions}\n enableToolbarTop={enableToolbarTop}\n icons={{ ...MRT_Default_Icons, ...icons }}\n localization={{ ...MRT_DefaultLocalization_EN, ...localization }}\n positionActionsColumn={positionActionsColumn}\n positionGlobalFilter={positionGlobalFilter}\n positionPagination={positionPagination}\n positionToolbarAlertBanner={positionToolbarAlertBanner}\n rowNumberMode={rowNumberMode}\n selectAllMode={selectAllMode}\n {...rest}\n />\n);\n"],"names":["MRT_DefaultLocalization_EN","actions","and","cancel","changeFilterMode","changeSearchMode","clearFilter","clearSearch","clearSort","clickToCopy","columnActions","copiedToClipboard","edit","expand","expandAll","filterBetween","filterBetweenInclusive","filterByColumn","filterContains","filterEmpty","filterEndsWith","filterEquals","filterFuzzy","filterGreaterThan","filterGreaterThanOrEqualTo","filterLessThan","filterLessThanOrEqualTo","filterMode","filterNotEmpty","filterNotEquals","filterStartsWith","filteringByColumn","grab","groupByColumn","groupedBy","hideAll","hideColumn","max","min","move","pinToLeft","pinToRight","resetColumnSize","resetOrder","rowActions","rowNumber","rowNumbers","save","search","selectedCountOfRowCountRowsSelected","select","showAll","showAllColumns","showHideColumns","showHideFilters","showHideSearch","sortByColumnAsc","sortByColumnDesc","sortedByColumnAsc","sortedByColumnDesc","thenBy","toggleDensity","toggleFullScreen","toggleSelectAll","toggleSelectRow","toggleVisibility","ungroupByColumn","unpin","unpinAll","unsorted","MRT_Default_Icons","ArrowRightIcon","ArrowRight","CancelIcon","Cancel","CheckBoxIcon","CheckBox","ClearAllIcon","ClearAll","CloseIcon","Close","DensityLargeIcon","DensityLarge","DensityMediumIcon","DensityMedium","DensitySmallIcon","DensitySmall","DragHandleIcon","DragHandle","DynamicFeedIcon","DynamicFeed","EditIcon","Edit","ExpandLessIcon","ExpandLess","ExpandMoreIcon","ExpandMore","FilterAltIcon","FilterAlt","FilterAltOffIcon","FilterAltOff","FilterListIcon","FilterList","FilterListOffIcon","FilterListOff","FullscreenExitIcon","FullscreenExit","FullscreenIcon","Fullscreen","KeyboardDoubleArrowDownIcon","KeyboardDoubleArrowDown","MoreHorizIcon","MoreHoriz","MoreVertIcon","MoreVert","PushPinIcon","PushPin","RestartAltIcon","RestartAlt","SaveIcon","Save","SearchIcon","Search","SearchOffIcon","SearchOff","SortIcon","Sort","ViewColumnIcon","ViewColumn","VisibilityOffIcon","VisibilityOff","MRT_ExpandAllButton","table","getIsAllRowsExpanded","getIsSomeRowsExpanded","getCanSomeRowsExpand","getState","options","icons","localization","muiExpandAllButtonProps","renderDetailPanel","toggleAllRowsExpanded","density","iconButtonProps","Function","React","Tooltip","arrow","enterDelay","enterNextDelay","title","IconButton","disabled","onClick","sx","height","width","style","transform","transition","MRT_ExpandButton","row","muiExpandButtonProps","handleToggleExpand","toggleExpanded","getCanExpand","theme","getIsExpanded","MRT_FilterOptionMenu","anchorEl","header","onSelect","setAnchorEl","enabledGlobalFilterOptions","enabledColumnFilterOptions","setCurrentFilterFns","setCurrentGlobalFilterFn","currentFilterFns","currentGlobalFilterFn","column","columnDef","allowedColumnFilterOptions","filterOptions","useMemo","option","symbol","label","divider","filter","filterType","undefined","includes","handleSelectFilterType","prev","id","setFilterValue","filterOption","Menu","anchorOrigin","vertical","horizontal","onClose","open","MenuListProps","dense","map","index","MenuItem","key","selected","py","my","alignItems","display","gap","value","Box","fontSize","MRT_ColumnPinningButtons","handlePinColumn","pinDirection","pin","minWidth","textAlign","getIsPinned","size","MRT_GrabHandleButton","onDragEnd","onDragStart","placement","disableRipple","draggable","cursor","m","opacity","p","backgroundColor","fuzzy","columnId","filterValue","addMeta","itemRank","rankItem","getValue","threshold","rankings","MATCHES","passed","autoRemove","val","contains","toString","toLowerCase","trim","startsWith","endsWith","equals","notEquals","greaterThan","isNaN","greaterThanOrEqualTo","lessThan","lessThanOrEqualTo","between","filterValues","betweenInclusive","empty","_filterValue","notEmpty","MRT_FilterFns","filterFns","rowA","rowB","dir","columnFiltersMeta","compareItems","sortingFns","alphanumeric","MRT_SortingFns","rankGlobalFuzzy","Math","Object","values","v","rank","getColumnId","accessorKey","getAllLeafColumnDefs","columns","lowestLevelColumns","currentCols","length","some","col","nextCols","flat","every","prepareColumns","columnDefs","process","console","error","columnDefType","keys","filterFn","sortingFn","reorderColumn","draggedColumn","targetColumn","columnOrder","getCanPin","splice","indexOf","getLeadingDisplayColumnIds","props","enableRowDragging","enableRowOrdering","positionActionsColumn","enableRowActions","enableEditing","editingMode","enableExpanding","enableGrouping","enableRowSelection","enableRowNumbers","Boolean","getTrailingDisplayColumnIds","getDefaultColumnOrderIds","MRT_ShowHideColumnsMenuItems","allColumns","currentHoveredColumn","setCurrentHoveredColumn","isSubMenu","enableColumnOrdering","enableHiding","enablePinning","setColumnOrder","switchChecked","getIsVisible","getLeafColumns","handleToggleColumnHidden","forEach","childColumn","menuItemRef","useRef","useState","isDragging","setIsDragging","handleDragStart","e","dataTransfer","setDragImage","current","handleDragEnd","_e","handleDragEnter","ref","onDragEnter","justifyContent","outline","palette","primary","main","pl","depth","flexWrap","FormControlLabel","componentsProps","typography","mb","checked","control","Switch","getCanHide","getIsGrouped","onChange","Typography","alignSelf","c","i","MRT_ShowHideColumnsMenu","getAllColumns","getAllLeafColumns","getCenterLeafColumns","getIsAllColumnsVisible","getIsSomeColumnsPinned","getIsSomeColumnsVisible","getLeftLeafColumns","getRightLeafColumns","toggleAllColumnsVisible","columnPinning","hideAllColumns","Array","from","Set","colId","find","pt","Button","resetColumnPinning","Divider","commonMenuItemStyles","commonListItemStyles","MRT_ColumnActionMenu","enableColumnFilterChangeMode","enableColumnFilters","enableColumnResizing","enableSorting","tableId","setShowFilters","columnSizing","columnVisibility","filterMenuAnchorEl","setFilterMenuAnchorEl","showHideColumnsMenuAnchorEl","setShowHideColumnsMenuAnchorEl","handleClearSort","clearSorting","handleSortAsc","toggleSorting","handleSortDesc","handleResetColumnSize","resetSize","handleHideColumn","handleGroupByColumn","toggleGrouping","old","handleClearFilter","handleFilterByColumn","setTimeout","document","getElementById","muiTableHeadCellFilterTextFieldProps","focus","handleShowAllColumns","handleOpenFilterModeMenu","event","stopPropagation","currentTarget","handleOpenShowHideColumnsMenu","isSelectFilter","filterSelectOptions","showFilterModeSubMenu","getCanSort","getIsSorted","ListItemIcon","replace","String","getCanFilter","getFilterValue","onMouseEnter","getCanGroup","getCanResize","visible","MRT_RowActionMenu","handleEdit","renderRowActionMenuItems","closeMenu","MRT_EditActionButtons","onEditRowSubmit","setCurrentEditingRow","currentEditingRow","handleCancel","_valuesCache","original","handleSave","color","commonIconButtonStyles","ml","MRT_ToggleRowActionMenuButton","renderRowActions","handleOpenRowActionMenu","preventDefault","handleStartEditMode","MRT_SelectCheckbox","selectAll","muiSelectCheckboxProps","muiSelectAllCheckboxProps","selectAllMode","checkboxProps","Checkbox","getIsAllRowsSelected","getIsSelected","indeterminate","getIsSomeRowsSelected","getIsSomeSelected","inputProps","getToggleAllRowsSelectedHandler","getToggleAllPageRowsSelectedHandler","getToggleSelectedHandler","MRT_FullScreenToggleButton","rest","setIsFullScreen","isFullScreen","handleToggleFullScreen","MRT_ShowHideColumnsButton","handleClick","MRT_ToggleDensePaddingButton","setDensity","handleToggleDensePadding","nextDensity","MRT_ToggleFiltersButton","showColumnFilters","handleToggleShowFilters","MRT_ToggleGlobalFilterButton","muiSearchTextFieldProps","setShowGlobalFilter","showGlobalFilter","textFieldProps","handleToggleSearch","MRT_GlobalFilterTextField","setGlobalFilter","enableGlobalFilterChangeMode","globalFilter","searchValue","setSearchValue","handleChangeDebounced","useCallback","debounce","target","handleChange","handleGlobalFilterMenuOpen","handleClear","Collapse","orientation","TextField","placeholder","variant","InputProps","startAdornment","InputAdornment","position","endAdornment","MRT_ToolbarInternalButtons","enableDensityToggle","enableFilters","enableFullScreenToggle","enableGlobalFilter","positionGlobalFilter","renderToolbarInternalActions","zIndex","MRT_TablePagination","getPrePaginationRowModel","setPageIndex","setPageSize","muiTablePaginationProps","enableToolbarInternalActions","rowCount","pagination","pageSize","pageIndex","totalRowCount","rows","showFirstLastPageButtons","tablePaginationProps","handleChangeRowsPerPage","TablePagination","SelectProps","MenuProps","disablePadding","component","count","onPageChange","_","newPage","onRowsPerPageChange","page","rowsPerPage","rowsPerPageOptions","showFirstButton","showLastButton","mt","MRT_ToolbarAlertBanner","stackAlertBanner","getSelectedRowModel","muiTableToolbarAlertBannerProps","grouping","showAlertBanner","alertProps","selectMessage","groupedByMessage","Fragment","Chip","getColumn","onDelete","timeout","Alert","icon","borderRadius","left","right","top","AlertTitle","children","MRT_LinearProgressBar","isTopToolbar","muiLinearProgressProps","isLoading","showProgressBars","linearProgressProps","mountOnEnter","unmountOnExit","bottom","LinearProgress","commonToolbarStyles","lighten","background","backgroundImage","minHeight","overflow","MRT_ToolbarTop","enablePagination","muiTableToolbarTopProps","positionPagination","positionToolbarAlertBanner","renderToolbarTopCustomActions","isMobile","useMediaQuery","toolbarProps","Toolbar","boxSizing","MRT_ToolbarBottom","muiTableToolbarBottomProps","renderToolbarBottomCustomActions","boxShadow","alpha","common","black","MRT_TableHeadCellColumnActionsButton","muiTableHeadCellColumnActionsButtonProps","mTableHeadCellColumnActionsButtonProps","mcTableHeadCellColumnActionsButtonProps","MRT_FilterTextField","inputIndex","mTableHeadCellFilterTextFieldProps","mcTableHeadCellFilterTextFieldProps","type","Date","newFilterValues","handleFilterMenuOpen","handleClearFilterChip","Filter","filterId","currentFilterOption","filterChipLabel","charAt","toUpperCase","slice","filterPlaceholder","showChangeModeButton","fullWidth","textOverflow","helperText","htmlFor","FormHelperTextProps","lineHeight","whiteSpace","margin","disableHoverListener","mr","text","MRT_FilterRangeFields","gridTemplateColumns","MRT_TableHeadCellFilterContainer","MRT_TableHeadCellFilterLabel","filterTooltip","isArray","join","Grow","MRT_TableHeadCellGrabHandle","tableHeadCellRef","muiTableHeadCellDragHandleProps","onColumnDrop","setCurrentDraggingColumn","currentDraggingColumn","mIconButtonProps","mcIconButtonProps","MRT_TableHeadCellResizeHandle","columnResizeMode","flexItem","onDoubleClick","borderRightWidth","touchAction","getIsResizing","userSelect","info","onMouseDown","getResizeHandler","onTouchStart","columnSizingInfo","deltaOffset","MRT_TableHeadCellSortLabel","sortTooltip","TableSortLabel","active","direction","MRT_TableHeadCell","useTheme","enableColumnActions","enableColumnDragging","enableMultiSort","muiTableHeadCellProps","mTableHeadCellProps","mcTableHeadCellProps","tableCellProps","getIsLastLeftPinnedColumn","getLeftLeafHeaders","getPinnedIndex","getIsFirstRightPinnedColumn","getTotalRight","getRightLeafHeaders","draggingBorder","draggingBorders","borderLeft","borderRight","borderTop","headerElement","Header","TableCell","align","colSpan","fontWeight","getStart","pb","verticalAlign","maxWidth","getSize","minSize","isPlaceholder","getToggleSortingHandler","MRT_TableHeadRow","headerGroup","muiTableHeadRowProps","tableRowProps","TableRow","headers","MRT_TableHead","getHeaderGroups","muiTableHeadProps","tableHeadProps","TableHead","MRT_EditCellTextField","cell","muiTableBodyCellEditTextFieldProps","onCellEditBlur","onCellEditChange","setCurrentEditingCell","setValue","handleBlur","mTableBodyCellEditTextFieldProps","mcTableBodyCellEditTextFieldProps","onBlur","MRT_CopyButton","muiTableBodyCellCopyButtonProps","copied","setCopied","handleCopy","navigator","clipboard","writeText","mTableBodyCellCopyButtonProps","mcTableBodyCellCopyButtonProps","buttonProps","border","fontFamily","letterSpacing","textTransform","MRT_TableBodyRowGrabHandle","rowRef","muiTableBodyRowDragHandleProps","onRowDrop","setCurrentDraggingRow","draggedRow","currentDraggingRow","targetRow","currentHoveredRow","setCurrentHoveredRow","MRT_TableBodyCell","enableHover","rowIndex","enableClickToCopy","muiTableBodyCellProps","muiTableBodyCellSkeletonProps","rowNumberMode","currentEditingCell","showSkeletons","mTableCellBodyProps","mcTableCellBodyProps","skeletonWidth","random","isEditable","isEditing","handleDoubleClick","_event","textField","borderBottom","getRowModel","mode","darken","getIsPlaceholder","Skeleton","animation","Cell","renderValue","subRows","MRT_TableDetailPanel","getVisibleLeafColumns","muiTableBodyRowProps","muiTableDetailPanelProps","getTotalSize","MRT_TableBodyRow","hover","getVisibleCells","MRT_TableBody","tableContainerRef","enableGlobalFilterRankedResults","enableRowVirtualization","muiTableBodyProps","virtualizerProps","sorting","tableBodyProps","getIsSomeColumnsSorted","rankedRows","sort","a","b","rowVirtualizer","useVirtual","overscan","parentRef","virtualRows","virtualItems","paddingTop","paddingBottom","start","totalSize","end","TableBody","rowOrVirtualRow","MRT_TableFooterCell","footer","muiTableFooterCellProps","mTableFooterCellProps","mcTableFooterCellProps","white","Footer","MRT_TableFooterRow","footerGroup","muiTableFooterRowProps","MRT_TableFooter","getFooterGroups","muiTableFooterProps","tableFooterProps","TableFooter","MRT_Table","enableStickyHeader","enableTableFooter","enableTableHead","muiTableProps","tableProps","Table","stickyHeader","tableLayout","useIsomorphicLayoutEffect","window","useLayoutEffect","useEffect","MRT_TableContainer","muiTableContainerProps","totalToolbarHeight","setTotalToolbarHeight","tableContainerProps","topToolbarHeight","offsetHeight","bottomToolbarHeight","TableContainer","maxHeight","MRT_TablePaper","enableToolbarBottom","enableToolbarTop","muiTablePaperProps","body","tablePaperProps","Paper","elevation","padding","defaultDisplayColumnDefOptions","enableColumnFilter","enableResizing","MRT_TableRoot","setIdPrefix","substring","initialState","initState","setShowAlertBanner","assign","name","globalFilterFn","displayColumns","displayColumnDefOptions","enableExpandAll","enableSelectAll","data","state","fill","useReactTable","getCoreRowModel","getExpandedRowModel","getFacetedRowModel","getFilteredRowModel","getGroupedRowModel","getPaginationRowModel","getSortedRowModel","onColumnOrderChange","getSubRows","onCurrentDraggingColumnChange","onCurrentDraggingRowChange","onCurrentEditingCellChange","onCurrentEditingRowChange","onCurrentFilterFnsChange","onCurrentGlobalFilterFnChange","onCurrentHoveredColumnChange","onCurrentHoveredRowChange","onDensityChange","onIsFullScreenChange","onShowAlertBannerChange","onShowFiltersChange","onShowGlobalFilterChange","Dialog","PaperComponent","TransitionComponent","disablePortal","fullScreen","keepMounted","transitionDuration","autoResetExpanded","defaultColumn","maxSize","enableMultiRowSelection"],"mappings":"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"}