material-react-table 0.6.9 → 0.7.0-alpha.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (107) hide show
  1. package/dist/MaterialReactTable.d.ts +308 -107
  2. package/dist/body/MRT_TableBody.d.ts +3 -0
  3. package/dist/body/MRT_TableBodyCell.d.ts +2 -11
  4. package/dist/body/MRT_TableBodyRow.d.ts +3 -1
  5. package/dist/body/MRT_TableDetailPanel.d.ts +2 -1
  6. package/dist/buttons/MRT_CopyButton.d.ts +4 -2
  7. package/dist/buttons/MRT_EditActionButtons.d.ts +2 -1
  8. package/dist/buttons/MRT_ExpandAllButton.d.ts +2 -0
  9. package/dist/buttons/MRT_ExpandButton.d.ts +2 -1
  10. package/dist/buttons/MRT_FullScreenToggleButton.d.ts +2 -0
  11. package/dist/buttons/MRT_ShowHideColumnsButton.d.ts +2 -0
  12. package/dist/buttons/MRT_ToggleColumnActionMenuButton.d.ts +3 -2
  13. package/dist/buttons/MRT_ToggleDensePaddingButton.d.ts +2 -0
  14. package/dist/buttons/MRT_ToggleFiltersButton.d.ts +2 -0
  15. package/dist/buttons/MRT_ToggleRowActionMenuButton.d.ts +2 -1
  16. package/dist/buttons/MRT_ToggleSearchButton.d.ts +2 -0
  17. package/dist/enums.d.ts +2 -1
  18. package/dist/filtersFNs.d.ts +13 -5
  19. package/dist/footer/MRT_TableFooter.d.ts +3 -0
  20. package/dist/footer/MRT_TableFooterCell.d.ts +3 -2
  21. package/dist/footer/MRT_TableFooterRow.d.ts +2 -1
  22. package/dist/head/MRT_TableHead.d.ts +3 -0
  23. package/dist/head/MRT_TableHeadCell.d.ts +4 -18
  24. package/dist/head/MRT_TableHeadRow.d.ts +2 -1
  25. package/dist/icons.d.ts +1 -1
  26. package/dist/inputs/MRT_EditCellTextField.d.ts +2 -1
  27. package/dist/inputs/MRT_FilterTextField.d.ts +3 -2
  28. package/dist/inputs/MRT_SearchTextField.d.ts +2 -0
  29. package/dist/inputs/MRT_SelectCheckbox.d.ts +2 -1
  30. package/dist/localization.d.ts +9 -2
  31. package/dist/material-react-table.cjs.development.js +2258 -2470
  32. package/dist/material-react-table.cjs.development.js.map +1 -1
  33. package/dist/material-react-table.cjs.production.min.js +1 -1
  34. package/dist/material-react-table.cjs.production.min.js.map +1 -1
  35. package/dist/material-react-table.esm.js +2260 -2472
  36. package/dist/material-react-table.esm.js.map +1 -1
  37. package/dist/menus/MRT_ColumnActionMenu.d.ts +3 -2
  38. package/dist/menus/MRT_FilterTypeMenu.d.ts +4 -3
  39. package/dist/menus/MRT_RowActionMenu.d.ts +3 -2
  40. package/dist/menus/MRT_ShowHideColumnsMenu.d.ts +2 -0
  41. package/dist/menus/MRT_ShowHideColumnsMenuItems.d.ts +2 -1
  42. package/dist/table/MRT_Table.d.ts +3 -0
  43. package/dist/table/MRT_TableContainer.d.ts +2 -0
  44. package/dist/table/MRT_TablePaper.d.ts +7 -0
  45. package/dist/table/MRT_TableRoot.d.ts +3 -0
  46. package/dist/toolbar/MRT_LinearProgressBar.d.ts +2 -0
  47. package/dist/toolbar/MRT_TablePagination.d.ts +2 -0
  48. package/dist/toolbar/MRT_ToolbarAlertBanner.d.ts +2 -0
  49. package/dist/toolbar/MRT_ToolbarBottom.d.ts +2 -0
  50. package/dist/toolbar/MRT_ToolbarInternalButtons.d.ts +2 -0
  51. package/dist/toolbar/MRT_ToolbarTop.d.ts +4 -2
  52. package/dist/utils.d.ts +12 -2
  53. package/package.json +27 -28
  54. package/src/MaterialReactTable.tsx +598 -295
  55. package/src/body/MRT_TableBody.tsx +26 -22
  56. package/src/body/MRT_TableBodyCell.tsx +76 -55
  57. package/src/body/MRT_TableBodyRow.tsx +37 -67
  58. package/src/body/MRT_TableDetailPanel.tsx +21 -17
  59. package/src/buttons/MRT_CopyButton.tsx +36 -11
  60. package/src/buttons/MRT_EditActionButtons.tsx +16 -13
  61. package/src/buttons/MRT_ExpandAllButton.tsx +36 -28
  62. package/src/buttons/MRT_ExpandButton.tsx +35 -41
  63. package/src/buttons/MRT_FullScreenToggleButton.tsx +18 -11
  64. package/src/buttons/MRT_ShowHideColumnsButton.tsx +18 -7
  65. package/src/buttons/MRT_ToggleColumnActionMenuButton.tsx +22 -11
  66. package/src/buttons/MRT_ToggleDensePaddingButton.tsx +18 -11
  67. package/src/buttons/MRT_ToggleFiltersButton.tsx +16 -9
  68. package/src/buttons/MRT_ToggleRowActionMenuButton.tsx +27 -22
  69. package/src/buttons/MRT_ToggleSearchButton.tsx +24 -12
  70. package/src/enums.ts +2 -1
  71. package/src/filtersFNs.ts +17 -3
  72. package/src/footer/MRT_TableFooter.tsx +24 -8
  73. package/src/footer/MRT_TableFooterCell.tsx +34 -26
  74. package/src/footer/MRT_TableFooterRow.tsx +21 -39
  75. package/src/head/MRT_TableHead.tsx +24 -8
  76. package/src/head/MRT_TableHeadCell.tsx +185 -142
  77. package/src/head/MRT_TableHeadRow.tsx +16 -93
  78. package/src/icons.ts +3 -3
  79. package/src/inputs/MRT_EditCellTextField.tsx +23 -24
  80. package/src/inputs/MRT_FilterTextField.tsx +53 -39
  81. package/src/inputs/MRT_SearchTextField.tsx +71 -25
  82. package/src/inputs/MRT_SelectCheckbox.tsx +42 -30
  83. package/src/localization.ts +19 -4
  84. package/src/menus/MRT_ColumnActionMenu.tsx +129 -69
  85. package/src/menus/MRT_FilterTypeMenu.tsx +55 -23
  86. package/src/menus/MRT_RowActionMenu.tsx +21 -14
  87. package/src/menus/MRT_ShowHideColumnsMenu.tsx +52 -20
  88. package/src/menus/MRT_ShowHideColumnsMenuItems.tsx +27 -17
  89. package/src/table/MRT_Table.tsx +25 -15
  90. package/src/table/MRT_TableContainer.tsx +106 -45
  91. package/src/table/MRT_TablePaper.tsx +65 -0
  92. package/src/table/MRT_TableRoot.tsx +236 -0
  93. package/src/toolbar/MRT_LinearProgressBar.tsx +10 -7
  94. package/src/toolbar/MRT_TablePagination.tsx +30 -19
  95. package/src/toolbar/MRT_ToolbarAlertBanner.tsx +33 -20
  96. package/src/toolbar/MRT_ToolbarBottom.tsx +32 -21
  97. package/src/toolbar/MRT_ToolbarInternalButtons.tsx +34 -20
  98. package/src/toolbar/MRT_ToolbarTop.tsx +36 -29
  99. package/src/utils.ts +37 -8
  100. package/dist/head/MRT_TableHeadCellActions.d.ts +0 -5
  101. package/dist/table/MRT_TableSpacerCell.d.ts +0 -6
  102. package/dist/useMRT.d.ts +0 -27
  103. package/src/@types/faker.d.ts +0 -4
  104. package/src/@types/react-table-config.d.ts +0 -53
  105. package/src/head/MRT_TableHeadCellActions.tsx +0 -29
  106. package/src/table/MRT_TableSpacerCell.tsx +0 -20
  107. package/src/useMRT.tsx +0 -215
@@ -1 +1 @@
1
- {"version":3,"file":"material-react-table.esm.js","sources":["../src/utils.ts","../src/useMRT.tsx","../src/enums.ts","../src/filtersFNs.ts","../src/menus/MRT_FilterTypeMenu.tsx","../src/inputs/MRT_FilterTextField.tsx","../src/menus/MRT_ShowHideColumnsMenuItems.tsx","../src/menus/MRT_ShowHideColumnsMenu.tsx","../src/menus/MRT_ColumnActionMenu.tsx","../src/buttons/MRT_ToggleColumnActionMenuButton.tsx","../src/head/MRT_TableHeadCell.tsx","../src/inputs/MRT_EditCellTextField.tsx","../src/buttons/MRT_CopyButton.tsx","../src/body/MRT_TableBodyCell.tsx","../src/inputs/MRT_SelectCheckbox.tsx","../src/buttons/MRT_ExpandAllButton.tsx","../src/table/MRT_TableSpacerCell.tsx","../src/head/MRT_TableHeadCellActions.tsx","../src/head/MRT_TableHeadRow.tsx","../src/head/MRT_TableHead.tsx","../src/body/MRT_TableDetailPanel.tsx","../src/buttons/MRT_ExpandButton.tsx","../src/menus/MRT_RowActionMenu.tsx","../node_modules/regenerator-runtime/runtime.js","../src/buttons/MRT_EditActionButtons.tsx","../src/buttons/MRT_ToggleRowActionMenuButton.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/inputs/MRT_SearchTextField.tsx","../src/buttons/MRT_FullScreenToggleButton.tsx","../src/buttons/MRT_ShowHideColumnsButton.tsx","../src/buttons/MRT_ToggleDensePaddingButton.tsx","../src/buttons/MRT_ToggleFiltersButton.tsx","../src/buttons/MRT_ToggleSearchButton.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/table/MRT_TableContainer.tsx","../src/localization.ts","../src/icons.ts","../src/MaterialReactTable.tsx"],"sourcesContent":["import { MRT_ColumnInstance, MRT_ColumnInterface } from '.';\n\nexport const findLowestLevelCols = (\n columns: MRT_ColumnInterface[] | MRT_ColumnInstance[],\n) => {\n let lowestLevelColumns: MRT_ColumnInterface[] | MRT_ColumnInstance[] =\n columns;\n let currentCols: MRT_ColumnInterface[] | MRT_ColumnInstance[] | undefined =\n columns;\n while (!!currentCols?.length && currentCols.some((col) => col.columns)) {\n const nextCols: MRT_ColumnInterface[] = currentCols\n .filter((col) => !!col.columns)\n .map((col) => col.columns)\n .flat() as MRT_ColumnInterface[];\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","import React, {\n Context,\n Dispatch,\n PropsWithChildren,\n SetStateAction,\n createContext,\n useCallback,\n useContext,\n useMemo,\n useState,\n} from 'react';\nimport {\n PluginHook,\n useExpanded,\n useFilters,\n useFlexLayout,\n useGlobalFilter,\n useGroupBy,\n usePagination,\n useResizeColumns,\n useRowSelect,\n useSortBy,\n useTable,\n} from 'react-table';\nimport type {\n MRT_ColumnInterface,\n MRT_FilterType,\n MRT_Row,\n MRT_TableInstance,\n} from '.';\nimport { MRT_FILTER_TYPE } from './enums';\nimport { MRT_Icons } from './icons';\nimport { MRT_Localization } from './localization';\nimport { MaterialReactTableProps } from './MaterialReactTable';\nimport { findLowestLevelCols } from './utils';\n\nexport type UseMRT<D extends {} = {}> = MaterialReactTableProps<D> & {\n anyRowsCanExpand: boolean;\n anyRowsExpanded: boolean;\n icons: MRT_Icons;\n idPrefix: string;\n filterTypes: { [key in MRT_FILTER_TYPE]: any };\n localization: MRT_Localization;\n setCurrentEditingRow: Dispatch<SetStateAction<MRT_Row<D> | null>>;\n setCurrentFilterTypes: Dispatch<\n SetStateAction<{\n [key: string]: MRT_FilterType;\n }>\n >;\n setDensePadding: Dispatch<SetStateAction<boolean>>;\n setFullScreen: Dispatch<SetStateAction<boolean>>;\n setShowFilters: Dispatch<SetStateAction<boolean>>;\n setShowSearch: Dispatch<SetStateAction<boolean>>;\n tableInstance: MRT_TableInstance<D>;\n};\n\nconst MaterialReactTableContext = (<D extends {} = {}>() =>\n createContext<UseMRT<D>>({} as UseMRT<D>) as Context<UseMRT<D>>)();\n\nexport const MaterialReactTableProvider = <D extends {} = {}>(\n props: PropsWithChildren<MaterialReactTableProps<D>>,\n) => {\n const hooks: PluginHook<D>[] = [\n useFilters,\n useGlobalFilter,\n useGroupBy,\n useSortBy,\n useExpanded,\n usePagination,\n useRowSelect,\n ];\n\n if (props.enableColumnResizing)\n hooks.unshift(useResizeColumns, useFlexLayout);\n\n const [currentEditingRow, setCurrentEditingRow] = useState<MRT_Row<D> | null>(\n null,\n );\n const [densePadding, setDensePadding] = useState(\n props.initialState?.densePadding ?? false,\n );\n const [fullScreen, setFullScreen] = useState(\n props.initialState?.fullScreen ?? false,\n );\n const [showFilters, setShowFilters] = useState(\n props.initialState?.showFilters ?? false,\n );\n const [showSearch, setShowSearch] = useState(\n props.initialState?.showSearch ?? false,\n );\n\n const [currentFilterTypes, setCurrentFilterTypes] = useState<{\n [key: string]: MRT_FilterType;\n }>(() =>\n Object.assign(\n {},\n ...findLowestLevelCols(props.columns).map((c) => ({\n [c.accessor as string]:\n c.filter ??\n props?.initialState?.filters?.[c.accessor as any] ??\n (!!c.filterSelectOptions ? 'equals' : 'fuzzy'),\n })),\n ),\n );\n\n const applyFiltersToColumns = useCallback(\n (cols: MRT_ColumnInterface[]) =>\n cols.map((column) => {\n if (column.columns) {\n applyFiltersToColumns(column.columns);\n } else {\n column.filter =\n props?.filterTypes?.[\n currentFilterTypes[column.accessor as string] as MRT_FILTER_TYPE\n ];\n }\n return column;\n }),\n [currentFilterTypes, props.filterTypes],\n );\n\n const columns = useMemo(\n () => applyFiltersToColumns(props.columns),\n [props.columns, applyFiltersToColumns],\n );\n\n const data = useMemo(\n () =>\n !props.isLoading || !!props.data.length\n ? props.data\n : [...Array(10).fill(null)].map((_) =>\n Object.assign(\n {},\n ...findLowestLevelCols(props.columns).map((c) => ({\n [c.accessor as string]: null,\n })),\n ),\n ),\n [props.data, props.isLoading],\n );\n\n const tableInstance = useTable(\n // @ts-ignore\n {\n ...props,\n // @ts-ignore\n columns,\n data,\n useControlledState: (state) =>\n useMemo(\n () => ({\n ...state,\n currentEditingRow,\n currentFilterTypes,\n densePadding,\n fullScreen,\n showFilters,\n showSearch,\n //@ts-ignore\n ...props?.useControlledState?.(state),\n }),\n [\n currentEditingRow,\n currentFilterTypes,\n densePadding,\n fullScreen,\n showFilters,\n showSearch,\n state,\n ],\n ),\n },\n ...hooks,\n ) as unknown as MRT_TableInstance<D>;\n\n const idPrefix = useMemo(\n () => props.idPrefix ?? Math.random().toString(36).substring(2, 9),\n [props.idPrefix],\n );\n const anyRowsCanExpand = useMemo(\n () => tableInstance.rows.some((row) => row.canExpand),\n [tableInstance.rows],\n );\n const anyRowsExpanded = useMemo(\n () => tableInstance.rows.some((row) => row.isExpanded),\n [tableInstance.rows],\n );\n\n return (\n <MaterialReactTableContext.Provider\n value={{\n ...props,\n anyRowsCanExpand,\n anyRowsExpanded,\n idPrefix,\n //@ts-ignore\n setCurrentEditingRow,\n setCurrentFilterTypes,\n setDensePadding,\n setFullScreen,\n setShowFilters,\n setShowSearch,\n //@ts-ignore\n tableInstance,\n }}\n >\n {props.children}\n </MaterialReactTableContext.Provider>\n );\n};\n\nexport const useMRT = <D extends {} = {}>(): UseMRT<D> =>\n useContext<UseMRT<D>>(\n MaterialReactTableContext as unknown as Context<UseMRT<D>>,\n );\n","export enum MRT_FILTER_TYPE {\n CONTAINS = 'contains',\n EMPTY = 'empty',\n ENDS_WITH = 'endsWith',\n EQUALS = 'equals',\n FUZZY = 'fuzzy',\n GREATER_THAN = 'greaterThan',\n LESS_THAN = 'lessThan',\n NOT_EMPTY = 'notEmpty',\n NOT_EQUALS = 'notEquals',\n STARTS_WITH = 'startsWith',\n}\n","import { matchSorter } from 'match-sorter';\nimport { MRT_Row } from '.';\n\nexport const fuzzy = (\n rows: MRT_Row[],\n columnIds: string[] | string,\n filterValue: string | number,\n) =>\n matchSorter(rows, filterValue.toString().trim(), {\n keys: Array.isArray(columnIds)\n ? columnIds.map((c) => `values.${c}`)\n : [`values.${columnIds}`],\n sorter: (rankedItems) => rankedItems,\n });\n\nfuzzy.autoRemove = (val: any) => !val;\n\nexport const contains = (\n rows: MRT_Row[],\n id: string,\n filterValue: string | number,\n) =>\n rows.filter((row) =>\n row.values[id]\n .toString()\n .toLowerCase()\n .trim()\n .includes(filterValue.toString().toLowerCase().trim()),\n );\n\ncontains.autoRemove = (val: any) => !val;\n\nexport const startsWith = (\n rows: MRT_Row[],\n id: string,\n filterValue: string | number,\n) =>\n rows.filter((row) =>\n row.values[id]\n .toString()\n .toLowerCase()\n .trim()\n .startsWith(filterValue.toString().toLowerCase().trim()),\n );\n\nstartsWith.autoRemove = (val: any) => !val;\n\nexport const endsWith = (\n rows: MRT_Row[],\n id: string,\n filterValue: string | number,\n) =>\n rows.filter((row) =>\n row.values[id]\n .toString()\n .toLowerCase()\n .trim()\n .endsWith(filterValue.toString().toLowerCase().trim()),\n );\n\nendsWith.autoRemove = (val: any) => !val;\n\nexport const equals = (\n rows: MRT_Row[],\n id: string,\n filterValue: string | number,\n) =>\n rows.filter(\n (row) =>\n row.values[id].toString().toLowerCase().trim() ===\n filterValue.toString().toLowerCase().trim(),\n );\n\nequals.autoRemove = (val: any) => !val;\n\nexport const notEquals = (\n rows: MRT_Row[],\n id: string,\n filterValue: string | number,\n) =>\n rows.filter(\n (row) =>\n row.values[id].toString().toLowerCase().trim() !==\n filterValue.toString().toLowerCase().trim(),\n );\n\nnotEquals.autoRemove = (val: any) => !val;\n\nexport const greaterThan = (\n rows: MRT_Row[],\n id: string,\n filterValue: string | number,\n) =>\n rows.filter((row) =>\n !isNaN(+filterValue) && !isNaN(+row.values[id])\n ? +row.values[id] > +filterValue\n : row.values[id].toString().toLowerCase().trim() >\n filterValue.toString().toLowerCase().trim(),\n );\n\ngreaterThan.autoRemove = (val: any) => !val;\n\nexport const lessThan = (\n rows: MRT_Row[],\n id: string,\n filterValue: string | number,\n) =>\n rows.filter((row) =>\n !isNaN(+filterValue) && !isNaN(+row.values[id])\n ? +row.values[id] < +filterValue\n : row.values[id].toString().toLowerCase().trim() <\n filterValue.toString().toLowerCase().trim(),\n );\n\nlessThan.autoRemove = (val: any) => !val;\n\nexport const empty = (\n rows: MRT_Row[],\n id: string,\n _filterValue: string | number,\n) => rows.filter((row) => !row.values[id].toString().toLowerCase().trim());\n\nempty.autoRemove = (val: any) => !val;\n\nexport const notEmpty = (\n rows: MRT_Row[],\n id: string,\n _filterValue: string | number,\n) => rows.filter((row) => !!row.values[id].toString().toLowerCase().trim());\n\nnotEmpty.autoRemove = (val: any) => !val;\n\nexport const defaultFilterFNs = {\n contains,\n empty,\n endsWith,\n equals,\n fuzzy,\n greaterThan,\n lessThan,\n notEmpty,\n notEquals,\n startsWith,\n};\n","import React, { FC, useMemo } from 'react';\nimport { Menu, MenuItem } from '@mui/material';\nimport { useMRT } from '../useMRT';\nimport type { MRT_FilterType, MRT_HeaderGroup } from '..';\nimport { MRT_FILTER_TYPE } from '../enums';\nimport {\n contains,\n empty,\n endsWith,\n equals,\n fuzzy,\n greaterThan,\n lessThan,\n notEmpty,\n notEquals,\n startsWith,\n} from '../filtersFNs';\n\nconst commonMenuItemStyles = {\n py: '6px',\n my: 0,\n alignItems: 'center',\n};\n\ninterface Props {\n anchorEl: HTMLElement | null;\n column: MRT_HeaderGroup;\n setAnchorEl: (anchorEl: HTMLElement | null) => void;\n onSelect?: () => void;\n}\n\nexport const MRT_FilterTypeMenu: FC<Props> = ({\n anchorEl,\n column,\n onSelect,\n setAnchorEl,\n}) => {\n const { localization, setCurrentFilterTypes, tableInstance } = useMRT();\n\n const filterTypes: {\n type: MRT_FILTER_TYPE;\n label: string;\n divider: boolean;\n fn: Function;\n }[] = useMemo(\n () =>\n [\n {\n type: MRT_FILTER_TYPE.FUZZY,\n label: localization.filterFuzzy,\n divider: false,\n fn: fuzzy,\n },\n {\n type: MRT_FILTER_TYPE.CONTAINS,\n label: localization.filterContains,\n divider: true,\n fn: contains,\n },\n {\n type: MRT_FILTER_TYPE.STARTS_WITH,\n label: localization.filterStartsWith,\n divider: false,\n fn: startsWith,\n },\n {\n type: MRT_FILTER_TYPE.ENDS_WITH,\n label: localization.filterEndsWith,\n divider: true,\n fn: endsWith,\n },\n {\n type: MRT_FILTER_TYPE.EQUALS,\n label: localization.filterEquals,\n divider: false,\n fn: equals,\n },\n {\n type: MRT_FILTER_TYPE.NOT_EQUALS,\n label: localization.filterNotEquals,\n divider: true,\n fn: notEquals,\n },\n {\n type: MRT_FILTER_TYPE.GREATER_THAN,\n label: localization.filterGreaterThan,\n divider: false,\n fn: greaterThan,\n },\n {\n type: MRT_FILTER_TYPE.LESS_THAN,\n label: localization.filterLessThan,\n divider: true,\n fn: lessThan,\n },\n {\n type: MRT_FILTER_TYPE.EMPTY,\n label: localization.filterEmpty,\n divider: false,\n fn: empty,\n },\n {\n type: MRT_FILTER_TYPE.NOT_EMPTY,\n label: localization.filterNotEmpty,\n divider: false,\n fn: notEmpty,\n },\n ].filter(\n (filterType) =>\n !column.filterTypes || column.filterTypes.includes(filterType.type),\n ),\n [],\n );\n\n const handleSelectFilterType = (value: MRT_FILTER_TYPE) => {\n setAnchorEl(null);\n setCurrentFilterTypes((prev: { [key: string]: MRT_FilterType }) => ({\n ...prev,\n [column.id]: value,\n }));\n if ([MRT_FILTER_TYPE.EMPTY, MRT_FILTER_TYPE.NOT_EMPTY].includes(value)) {\n column.setFilter(' ');\n }\n onSelect?.();\n };\n\n const filterType = tableInstance.state.currentFilterTypes[column.id];\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: tableInstance.state.densePadding,\n }}\n >\n {filterTypes.map(({ type, label, divider, fn }, index) => (\n <MenuItem\n divider={divider}\n key={index}\n onClick={() => handleSelectFilterType(type)}\n selected={type === filterType || fn === filterType}\n sx={commonMenuItemStyles}\n value={type}\n >\n {label}\n </MenuItem>\n ))}\n </Menu>\n );\n};\n","import React, { ChangeEvent, FC, MouseEvent, useState } from 'react';\nimport {\n Chip,\n IconButton,\n InputAdornment,\n MenuItem,\n TextField,\n TextFieldProps,\n Tooltip,\n} from '@mui/material';\nimport { useAsyncDebounce } from 'react-table';\nimport { useMRT } from '../useMRT';\nimport type { MRT_HeaderGroup } from '..';\nimport { MRT_FilterTypeMenu } from '../menus/MRT_FilterTypeMenu';\nimport { MRT_FILTER_TYPE } from '../enums';\n\ninterface Props {\n column: MRT_HeaderGroup;\n}\n\nexport const MRT_FilterTextField: FC<Props> = ({ column }) => {\n const {\n icons: { FilterListIcon, CloseIcon },\n idPrefix,\n localization,\n muiTableHeadCellFilterTextFieldProps,\n setCurrentFilterTypes,\n tableInstance,\n } = useMRT();\n\n const [anchorEl, setAnchorEl] = useState<null | HTMLElement>(null);\n\n const mTableHeadCellFilterTextFieldProps =\n muiTableHeadCellFilterTextFieldProps instanceof Function\n ? muiTableHeadCellFilterTextFieldProps(column)\n : muiTableHeadCellFilterTextFieldProps;\n\n const mcTableHeadCellFilterTextFieldProps =\n column.muiTableHeadCellFilterTextFieldProps instanceof Function\n ? column.muiTableHeadCellFilterTextFieldProps(column)\n : column.muiTableHeadCellFilterTextFieldProps;\n\n const textFieldProps = {\n ...mTableHeadCellFilterTextFieldProps,\n ...mcTableHeadCellFilterTextFieldProps,\n } as TextFieldProps;\n\n const [filterValue, setFilterValue] = useState('');\n\n const handleChange = useAsyncDebounce((value) => {\n column.setFilter(value ?? undefined);\n }, 150);\n\n const handleFilterMenuOpen = (event: MouseEvent<HTMLElement>) => {\n setAnchorEl(event.currentTarget);\n };\n\n const handleClear = () => {\n setFilterValue('');\n column.setFilter(undefined);\n };\n\n const handleClearFilterChip = () => {\n setFilterValue('');\n column.setFilter(undefined);\n setCurrentFilterTypes((prev) => ({\n ...prev,\n [column.id]: MRT_FILTER_TYPE.FUZZY,\n }));\n };\n\n if (column.Filter) {\n return <>{column.Filter?.({ column })}</>;\n }\n\n const filterId = `mrt-${idPrefix}-${column.id}-filter-text-field`;\n const filterType = tableInstance.state.currentFilterTypes[column.id];\n const isSelectFilter = !!column.filterSelectOptions;\n const filterChipLabel =\n !(filterType instanceof Function) &&\n [MRT_FILTER_TYPE.EMPTY, MRT_FILTER_TYPE.NOT_EMPTY].includes(\n filterType as MRT_FILTER_TYPE,\n )\n ? //@ts-ignore\n localization[\n `filter${filterType.charAt(0).toUpperCase() + filterType.slice(1)}`\n ]\n : '';\n const filterPlaceholder = localization.filterByColumn?.replace(\n '{column}',\n String(column.Header),\n );\n\n return (\n <>\n <TextField\n fullWidth\n id={filterId}\n inputProps={{\n disabled: !!filterChipLabel,\n sx: {\n textOverflow: 'ellipsis',\n width: filterChipLabel ? 0 : undefined,\n },\n title: filterPlaceholder,\n }}\n helperText={\n <label htmlFor={filterId}>\n {filterType instanceof Function\n ? localization.filterMode.replace(\n '{filterType}',\n // @ts-ignore\n localization[\n `filter${\n filterType.name.charAt(0).toUpperCase() +\n filterType.name.slice(1)\n }`\n ] ?? '',\n ) ?? ''\n : localization.filterMode.replace(\n '{filterType}',\n // @ts-ignore\n localization[\n `filter${\n filterType.charAt(0).toUpperCase() + filterType.slice(1)\n }`\n ],\n )}\n </label>\n }\n FormHelperTextProps={{\n sx: { fontSize: '0.6rem', lineHeight: '0.8rem' },\n }}\n label={isSelectFilter && !filterValue ? filterPlaceholder : undefined}\n InputLabelProps={{\n shrink: false,\n sx: {\n maxWidth: 'calc(100% - 2.5rem)',\n },\n title: filterPlaceholder,\n }}\n margin=\"none\"\n placeholder={\n filterChipLabel || isSelectFilter ? undefined : filterPlaceholder\n }\n onChange={(e: ChangeEvent<HTMLInputElement>) => {\n setFilterValue(e.target.value);\n handleChange(e.target.value);\n }}\n onClick={(e) => e.stopPropagation()}\n select={isSelectFilter}\n value={filterValue ?? ''}\n variant=\"standard\"\n InputProps={{\n startAdornment: !isSelectFilter && (\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 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 fontSize=\"small\" />\n </IconButton>\n </span>\n </Tooltip>\n </InputAdornment>\n ),\n }}\n {...textFieldProps}\n sx={{\n m: '-0.25rem',\n p: 0,\n minWidth: !filterChipLabel ? '5rem' : 'auto',\n width: 'calc(100% + 0.5rem)',\n mt: isSelectFilter && !filterValue ? '-1rem' : undefined,\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 {column?.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_FilterTypeMenu\n anchorEl={anchorEl}\n column={column}\n setAnchorEl={setAnchorEl}\n />\n </>\n );\n};\n","import React, { FC } from 'react';\nimport { FormControlLabel, MenuItem, Switch } from '@mui/material';\nimport { ColumnInstance } from 'react-table';\nimport type { MRT_ColumnInstance } from '..';\nimport { commonMenuItemStyles } from './MRT_ColumnActionMenu';\nimport { useMRT } from '../useMRT';\n\ninterface Props {\n column: MRT_ColumnInstance;\n isSubMenu?: boolean;\n}\n\nexport const MRT_ShowHideColumnsMenuItems: FC<Props> = ({\n column,\n isSubMenu,\n}) => {\n const { onColumnHide, tableInstance } = useMRT();\n const isParentHeader = !!column?.columns?.length;\n\n const allChildColumnsVisible =\n isParentHeader &&\n !!column.columns?.every((childColumn) => childColumn.isVisible);\n\n const switchChecked = column.isVisible ?? allChildColumnsVisible;\n\n const handleToggleColumnHidden = (column: ColumnInstance) => {\n if (isParentHeader) {\n column?.columns?.forEach?.((childColumn) => {\n childColumn.toggleHidden(switchChecked);\n });\n } else {\n column.toggleHidden();\n }\n onColumnHide?.(column, tableInstance.state.hiddenColumns);\n };\n\n return (\n <>\n <MenuItem\n sx={{ ...commonMenuItemStyles, pl: `${(column.depth + 0.5) * 2}rem` }}\n >\n <FormControlLabel\n componentsProps={{ typography: { sx: { marginBottom: 0 } } }}\n checked={switchChecked}\n control={<Switch />}\n disabled={(isSubMenu && switchChecked) || column.disableColumnHiding}\n label={column.Header as string}\n onChange={() => handleToggleColumnHidden(column)}\n />\n </MenuItem>\n {column.columns?.map((c: MRT_ColumnInstance, i) => (\n <MRT_ShowHideColumnsMenuItems\n key={`${i}-${c.id}`}\n column={c}\n isSubMenu={isSubMenu}\n />\n ))}\n </>\n );\n};\n","import React, { FC } from 'react';\nimport { Button, Menu, Divider, Box } from '@mui/material';\nimport type { MRT_ColumnInstance } from '..';\nimport { useMRT } from '../useMRT';\nimport { MRT_ShowHideColumnsMenuItems } from './MRT_ShowHideColumnsMenuItems';\nimport { findLowestLevelCols } from '../utils';\n\ninterface Props {\n anchorEl: HTMLElement | null;\n isSubMenu?: boolean;\n setAnchorEl: (anchorEl: HTMLElement | null) => void;\n}\n\nexport const MRT_ShowHideColumnsMenu: FC<Props> = ({\n anchorEl,\n isSubMenu,\n setAnchorEl,\n}) => {\n const { localization, tableInstance } = useMRT();\n\n const hideAllColumns = () => {\n (\n findLowestLevelCols(\n tableInstance.columns as MRT_ColumnInstance[],\n ) as MRT_ColumnInstance[]\n )\n .filter((col: MRT_ColumnInstance) => !col.disableColumnHiding)\n .forEach((col: MRT_ColumnInstance) => col.toggleHidden(true));\n };\n\n return (\n <Menu\n anchorEl={anchorEl}\n open={!!anchorEl}\n onClose={() => setAnchorEl(null)}\n MenuListProps={{\n dense: tableInstance.state.densePadding,\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={\n !tableInstance.getToggleHideAllColumnsProps().checked &&\n !tableInstance.getToggleHideAllColumnsProps().indeterminate\n }\n onClick={hideAllColumns}\n >\n {localization.hideAll}\n </Button>\n )}\n <Button\n disabled={tableInstance.getToggleHideAllColumnsProps().checked}\n onClick={() => tableInstance.toggleHideAllColumns(false)}\n >\n {localization.showAll}\n </Button>\n </Box>\n <Divider />\n {tableInstance.columns.map((column: MRT_ColumnInstance, index) => (\n <MRT_ShowHideColumnsMenuItems\n column={column}\n isSubMenu={isSubMenu}\n key={`${index}-${column.id}`}\n />\n ))}\n </Menu>\n );\n};\n","import React, { FC, useState } from 'react';\nimport { Box, IconButton, ListItemIcon, Menu, MenuItem } from '@mui/material';\nimport { useMRT } from '../useMRT';\nimport type { MRT_HeaderGroup } from '..';\nimport { MRT_FilterTypeMenu } from './MRT_FilterTypeMenu';\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 column: MRT_HeaderGroup;\n setAnchorEl: (anchorEl: HTMLElement | null) => void;\n}\n\nexport const MRT_ColumnActionMenu: FC<Props> = ({\n anchorEl,\n column,\n setAnchorEl,\n}) => {\n const {\n disableColumnHiding,\n disableFilters,\n disableSortBy,\n enableColumnGrouping,\n icons: {\n ArrowRightIcon,\n ClearAllIcon,\n ViewColumnIcon,\n DynamicFeedIcon,\n FilterListIcon,\n FilterListOffIcon,\n SortIcon,\n VisibilityOffIcon,\n },\n idPrefix,\n localization,\n setShowFilters,\n tableInstance,\n } = useMRT();\n\n const [filterMenuAnchorEl, setFilterMenuAnchorEl] =\n useState<null | HTMLElement>(null);\n\n const [showHideColumnsMenuAnchorEl, setShowHideColumnsMenuAnchorEl] =\n useState<null | HTMLElement>(null);\n\n const handleClearSort = () => {\n column.clearSortBy();\n setAnchorEl(null);\n };\n\n const handleSortAsc = () => {\n column.toggleSortBy(false);\n setAnchorEl(null);\n };\n\n const handleSortDesc = () => {\n column.toggleSortBy(true);\n setAnchorEl(null);\n };\n\n const handleHideColumn = () => {\n column.toggleHidden();\n setAnchorEl(null);\n };\n\n const handleGroupByColumn = () => {\n column.toggleGroupBy();\n setAnchorEl(null);\n };\n\n const handleClearFilter = () => {\n column.setFilter('');\n setAnchorEl(null);\n };\n\n const handleFilterByColumn = () => {\n setShowFilters(true);\n setTimeout(\n () =>\n document\n .getElementById(\n // @ts-ignore\n column.muiTableHeadCellFilterTextFieldProps?.id ??\n `mrt-${idPrefix}-${column.id}-filter-text-field`,\n )\n ?.focus(),\n 200,\n );\n setAnchorEl(null);\n };\n\n const handleShowAllColumns = () => {\n tableInstance.toggleHideAllColumns(false);\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 return (\n <Menu\n anchorEl={anchorEl}\n open={!!anchorEl}\n onClose={() => setAnchorEl(null)}\n MenuListProps={{\n dense: tableInstance.state.densePadding,\n }}\n >\n {!disableSortBy &&\n column.canSort && [\n <MenuItem\n disabled={!column.isSorted}\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.isSorted && !column.isSortedDesc}\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(column.Header),\n )}\n </Box>\n </MenuItem>,\n <MenuItem\n divider={\n !disableFilters || enableColumnGrouping || !disableColumnHiding\n }\n key={2}\n disabled={column.isSorted && column.isSortedDesc}\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(column.Header),\n )}\n </Box>\n </MenuItem>,\n ]}\n {!disableFilters &&\n column.canFilter && [\n <MenuItem\n disabled={!column.filterValue}\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={enableColumnGrouping || !disableColumnHiding}\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(column.Header),\n )}\n </Box>\n {!column.filterSelectOptions && (\n <IconButton\n onClick={handleOpenFilterModeMenu}\n onMouseEnter={handleOpenFilterModeMenu}\n size=\"small\"\n sx={{ p: 0 }}\n >\n <ArrowRightIcon />\n </IconButton>\n )}\n </MenuItem>,\n <MRT_FilterTypeMenu\n anchorEl={filterMenuAnchorEl}\n column={column}\n key={2}\n setAnchorEl={setFilterMenuAnchorEl}\n onSelect={handleFilterByColumn}\n />,\n ]}\n {enableColumnGrouping &&\n column.canGroupBy && [\n <MenuItem\n divider={!disableColumnHiding}\n key={0}\n onClick={handleGroupByColumn}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ListItemIcon>\n <DynamicFeedIcon />\n </ListItemIcon>\n {localization[\n column.isGrouped ? 'ungroupByColumn' : 'groupByColumn'\n ]?.replace('{column}', String(column.Header))}\n </Box>\n </MenuItem>,\n ]}\n {!disableColumnHiding && [\n <MenuItem\n disabled={column.disableColumnHiding}\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(column.Header),\n )}\n </Box>\n </MenuItem>,\n <MenuItem\n disabled={!tableInstance.state.hiddenColumns?.length}\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(column.Header),\n )}\n </Box>\n {!column.filterSelectOptions && (\n <IconButton\n onClick={handleOpenShowHideColumnsMenu}\n onMouseEnter={handleOpenShowHideColumnsMenu}\n size=\"small\"\n sx={{ p: 0 }}\n >\n <ArrowRightIcon />\n </IconButton>\n )}\n </MenuItem>,\n <MRT_ShowHideColumnsMenu\n anchorEl={showHideColumnsMenuAnchorEl}\n isSubMenu\n key={2}\n setAnchorEl={setShowHideColumnsMenuAnchorEl}\n />,\n ]}\n </Menu>\n );\n};\n","import React, { FC, MouseEvent, useState } from 'react';\nimport { IconButton, Tooltip } from '@mui/material';\nimport { useMRT } from '../useMRT';\nimport { MRT_ColumnActionMenu } from '../menus/MRT_ColumnActionMenu';\nimport type { MRT_HeaderGroup } from '..';\n\ninterface Props {\n column: MRT_HeaderGroup;\n}\n\nexport const MRT_ToggleColumnActionMenuButton: FC<Props> = ({ column }) => {\n const {\n icons: { MoreVertIcon },\n localization,\n muiTableHeadCellColumnActionsButtonProps,\n } = useMRT();\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)\n : muiTableHeadCellColumnActionsButtonProps;\n\n const mcTableHeadCellColumnActionsButtonProps =\n column.muiTableHeadCellColumnActionsButtonProps instanceof Function\n ? column.muiTableHeadCellColumnActionsButtonProps(column)\n : column.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 mr: '2px',\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 column={column}\n setAnchorEl={setAnchorEl}\n />\n </>\n );\n};\n","import React, { CSSProperties, FC } from 'react';\nimport {\n TableCell,\n TableSortLabel,\n Divider,\n Collapse,\n Tooltip,\n Box,\n IconButton,\n} from '@mui/material';\nimport { useMRT } from '../useMRT';\nimport { MRT_FilterTextField } from '../inputs/MRT_FilterTextField';\nimport { MRT_ToggleColumnActionMenuButton } from '../buttons/MRT_ToggleColumnActionMenuButton';\nimport type { MRT_HeaderGroup } from '..';\n\nexport const commonTableHeadCellStyles = (\n densePadding: boolean,\n enableColumnResizing?: boolean,\n widths?: {\n maxWidth?: CSSProperties['maxWidth'];\n minWidth?: CSSProperties['minWidth'];\n width?: CSSProperties['width'];\n },\n) => ({\n fontWeight: 'bold',\n height: '100%',\n p: densePadding ? '0.5rem' : '1rem',\n pt: densePadding ? '0.75rem' : '1.25rem',\n transition: `all ${enableColumnResizing ? '10ms' : '0.2s'} ease-in-out`,\n verticalAlign: 'text-top',\n ...widths,\n});\n\ninterface Props {\n column: MRT_HeaderGroup;\n}\n\nexport const MRT_TableHeadCell: FC<Props> = ({ column }) => {\n const {\n disableColumnActions,\n disableFilters,\n enableColumnResizing,\n icons: { FilterAltIcon, FilterAltOff },\n localization,\n muiTableHeadCellProps,\n setShowFilters,\n tableInstance,\n } = useMRT();\n\n const isParentHeader = !!column?.columns?.length;\n\n const mTableHeadCellProps =\n muiTableHeadCellProps instanceof Function\n ? muiTableHeadCellProps(column)\n : muiTableHeadCellProps;\n\n const mcTableHeadCellProps =\n column.muiTableHeadCellProps instanceof Function\n ? column.muiTableHeadCellProps(column)\n : column.muiTableHeadCellProps;\n\n const tableCellProps = {\n ...mTableHeadCellProps,\n ...mcTableHeadCellProps,\n ...column.getHeaderProps(),\n style: {\n ...column.getHeaderProps().style,\n ...mTableHeadCellProps?.style,\n ...mcTableHeadCellProps?.style,\n },\n };\n\n const sortTooltip = column.isSorted\n ? column.isSortedDesc\n ? localization.clearSort\n : localization.sortByColumnDesc?.replace(\n '{column}',\n column.Header as string,\n )\n : localization.sortByColumnAsc?.replace(\n '{column}',\n column.Header as string,\n );\n\n const filterType = tableInstance.state.currentFilterTypes[column.id];\n\n const filterTooltip = !!column.filterValue\n ? localization.filteringByColumn\n .replace('{column}', String(column.Header))\n .replace(\n '{filterType}',\n filterType instanceof Function\n ? ''\n : // @ts-ignore\n localization[\n `filter${\n filterType.charAt(0).toUpperCase() + filterType.slice(1)\n }`\n ],\n )\n .replace('{filterValue}', column.filterValue)\n : localization.showHideFilters;\n\n const columnHeader = column.render('Header') as string;\n\n return (\n <TableCell\n align={isParentHeader ? 'center' : 'left'}\n {...tableCellProps}\n sx={{\n ...commonTableHeadCellStyles(\n tableInstance.state.densePadding,\n enableColumnResizing,\n {\n maxWidth: column.maxWidth,\n minWidth: column.minWidth,\n width: column.width,\n },\n ),\n ...tableCellProps?.sx,\n }}\n >\n <Box\n sx={{\n alignItems: 'flex-start',\n display: 'flex',\n justifyContent: isParentHeader ? 'center' : 'space-between',\n width: '100%',\n }}\n >\n <Box\n {...column.getSortByToggleProps()}\n sx={{\n alignItems: 'center',\n display: 'flex',\n flexWrap: 'nowrap',\n whiteSpace: columnHeader.length < 15 ? 'nowrap' : 'normal',\n }}\n title={undefined}\n >\n {column.render('Header')}\n {!isParentHeader && column.canSort && (\n <Tooltip arrow placement=\"top\" title={sortTooltip}>\n <TableSortLabel\n aria-label={sortTooltip}\n active={column.isSorted}\n direction={column.isSortedDesc ? 'desc' : 'asc'}\n />\n </Tooltip>\n )}\n {!isParentHeader && !!column.canFilter && (\n <Tooltip arrow placement=\"top\" title={filterTooltip}>\n <IconButton\n disableRipple\n onClick={(event) => {\n event.stopPropagation();\n setShowFilters(!tableInstance.state.showFilters);\n }}\n size=\"small\"\n sx={{\n m: 0,\n opacity: !!column.filterValue ? 0.8 : 0,\n p: '2px',\n transition: 'all 0.2s ease-in-out',\n '&:hover': {\n backgroundColor: 'transparent',\n opacity: 0.8,\n },\n }}\n >\n {tableInstance.state.showFilters && !column.filterValue ? (\n <FilterAltOff fontSize=\"small\" />\n ) : (\n <FilterAltIcon fontSize=\"small\" />\n )}\n </IconButton>\n </Tooltip>\n )}\n </Box>\n <Box sx={{ alignItems: 'center', display: 'flex', flexWrap: 'nowrap' }}>\n {!disableColumnActions &&\n !column.disableColumnActions &&\n !isParentHeader && (\n <MRT_ToggleColumnActionMenuButton column={column} />\n )}\n {enableColumnResizing && !isParentHeader && (\n <Divider\n flexItem\n orientation=\"vertical\"\n onDoubleClick={() => tableInstance.resetResizing()}\n {...column.getResizerProps()}\n sx={{\n borderRightWidth: '2px',\n borderRadius: '2px',\n maxHeight: '2rem',\n }}\n />\n )}\n </Box>\n </Box>\n {!disableFilters && column.canFilter && (\n <Collapse in={tableInstance.state.showFilters}>\n <MRT_FilterTextField column={column} />\n </Collapse>\n )}\n </TableCell>\n );\n};\n","import React, { ChangeEvent, FC } from 'react';\nimport { TextField } from '@mui/material';\nimport { useMRT } from '../useMRT';\nimport type { MRT_Cell } from '..';\n\ninterface Props {\n cell: MRT_Cell;\n}\n\nexport const MRT_EditCellTextField: FC<Props> = ({ cell }) => {\n const {\n muiTableBodyCellEditTextFieldProps,\n setCurrentEditingRow,\n tableInstance: {\n state: { currentEditingRow },\n },\n } = useMRT();\n\n const handleChange = (event: ChangeEvent<HTMLInputElement>) => {\n if (currentEditingRow) {\n cell.row.values[cell.column.id] = event.target.value;\n setCurrentEditingRow({\n ...currentEditingRow,\n });\n }\n cell.column.onCellEditChange?.(event, cell);\n };\n\n const mTableBodyCellEditTextFieldProps =\n muiTableBodyCellEditTextFieldProps instanceof Function\n ? muiTableBodyCellEditTextFieldProps(cell)\n : muiTableBodyCellEditTextFieldProps;\n\n const mcTableBodyCellEditTextFieldProps =\n cell.column.muiTableBodyCellEditTextFieldProps instanceof Function\n ? cell.column.muiTableBodyCellEditTextFieldProps(cell)\n : cell.column.muiTableBodyCellEditTextFieldProps;\n\n const textFieldProps = {\n ...mTableBodyCellEditTextFieldProps,\n ...mcTableBodyCellEditTextFieldProps,\n };\n\n if (!cell.column.disableEditing && cell.column.Edit) {\n return <>{cell.column.Edit({ ...textFieldProps, cell })}</>;\n }\n\n return (\n <TextField\n margin=\"dense\"\n onChange={handleChange}\n onClick={(e) => e.stopPropagation()}\n placeholder={cell.column.Header as string}\n value={cell.value}\n variant=\"standard\"\n {...textFieldProps}\n />\n );\n};\n","import React, { FC, useState } from 'react';\nimport { Button, Tooltip } from '@mui/material';\nimport { useMRT } from '../useMRT';\nimport { MRT_Cell } from '..';\n\ninterface Props {\n cell: MRT_Cell;\n}\n\nexport const MRT_CopyButton: FC<Props> = ({ cell }) => {\n const { localization } = useMRT();\n\n const [copied, setCopied] = useState(false);\n\n const handleCopy = (text: string) => {\n navigator.clipboard.writeText(text);\n setCopied(true);\n setTimeout(() => setCopied(false), 4000);\n };\n\n return (\n <Tooltip\n arrow\n enterDelay={1000}\n enterNextDelay={1000}\n placement=\"top\"\n title={copied ? localization.copiedToClipboard : localization.clickToCopy}\n >\n <Button\n aria-label={localization.clickToCopy}\n onClick={() => handleCopy(cell.value)}\n size=\"small\"\n sx={{\n backgroundColor: 'transparent',\n color: 'inherit',\n letterSpacing: 'inherit',\n fontFamily: 'inherit',\n fontSize: 'inherit',\n m: '-0.25rem',\n textTransform: 'inherit',\n textAlign: 'inherit',\n minWidth: 'unset',\n }}\n variant=\"text\"\n >\n {cell.render('Cell')}\n </Button>\n </Tooltip>\n );\n};\n","import React, { FC, MouseEvent } from 'react';\nimport { Skeleton, TableCell, TableCellProps } from '@mui/material';\nimport { useMRT } from '../useMRT';\nimport { MRT_EditCellTextField } from '../inputs/MRT_EditCellTextField';\nimport type { MRT_Cell } from '..';\nimport { MRT_CopyButton } from '../buttons/MRT_CopyButton';\n\nexport const commonTableBodyCellStyles = (densePadding: boolean) => ({\n p: densePadding ? '0.5rem' : '1rem',\n transition: 'all 0.2s ease-in-out',\n whiteSpace: densePadding ? 'nowrap' : 'normal',\n});\n\nexport const commonTableBodyButtonCellStyles = (densePadding: boolean) => ({\n p: densePadding ? '1px' : '0.6rem',\n textAlign: 'center',\n transition: 'all 0.2s ease-in-out',\n});\n\ninterface Props {\n cell: MRT_Cell;\n}\n\nexport const MRT_TableBodyCell: FC<Props> = ({ cell }) => {\n const {\n enableClickToCopy,\n isLoading,\n muiTableBodyCellProps,\n muiTableBodyCellSkeletonProps,\n onCellClick,\n tableInstance: {\n state: { currentEditingRow, densePadding },\n },\n } = useMRT();\n\n const mTableCellBodyProps =\n muiTableBodyCellProps instanceof Function\n ? muiTableBodyCellProps(cell)\n : muiTableBodyCellProps;\n\n const mcTableCellBodyProps =\n cell.column.muiTableBodyCellProps instanceof Function\n ? cell.column.muiTableBodyCellProps(cell)\n : cell.column.muiTableBodyCellProps;\n\n const tableCellProps = {\n ...mTableCellBodyProps,\n ...mcTableCellBodyProps,\n ...cell.getCellProps(),\n style: {\n ...cell.getCellProps().style,\n ...mTableCellBodyProps?.style,\n ...mcTableCellBodyProps?.style,\n },\n };\n\n return (\n <TableCell\n onClick={(event: MouseEvent<HTMLTableCellElement>) =>\n onCellClick?.(event, cell)\n }\n {...tableCellProps}\n sx={\n {\n ...commonTableBodyCellStyles(densePadding),\n ...tableCellProps?.sx,\n } as TableCellProps['sx']\n }\n >\n {isLoading ? (\n <Skeleton\n animation=\"wave\"\n height={20}\n width={Math.random() * (120 - 60) + 60}\n {...muiTableBodyCellSkeletonProps}\n />\n ) : !cell.column.disableEditing &&\n currentEditingRow?.id === cell.row.id ? (\n <MRT_EditCellTextField cell={cell} />\n ) : cell.isPlaceholder ? null : cell.isAggregated ? (\n cell.render('Aggregated')\n ) : cell.isGrouped ? (\n <span>\n {cell.render('Cell')} ({cell.row.subRows.length})\n </span>\n ) : enableClickToCopy && !cell.column.disableClickToCopy ? (\n <MRT_CopyButton cell={cell} />\n ) : (\n cell.render('Cell')\n )}\n </TableCell>\n );\n};\n","import React, { ChangeEvent, FC } from 'react';\nimport { Checkbox, Tooltip } from '@mui/material';\nimport { useMRT } from '../useMRT';\nimport type { MRT_Row } from '..';\n\ninterface Props {\n row?: MRT_Row;\n selectAll?: boolean;\n}\n\nexport const MRT_SelectCheckbox: FC<Props> = ({ row, selectAll }) => {\n const {\n localization,\n muiSelectCheckboxProps,\n onSelectChange,\n onSelectAllChange,\n tableInstance,\n tableInstance: {\n state: { densePadding },\n },\n } = useMRT();\n\n const handleSelectChange = (event: ChangeEvent<HTMLInputElement>) => {\n if (selectAll) {\n tableInstance?.getToggleAllRowsSelectedProps?.()?.onChange?.(event);\n onSelectAllChange?.(\n event,\n event.target.checked ? tableInstance.rows : [],\n );\n } else if (row) {\n row?.getToggleRowSelectedProps()?.onChange?.(event);\n onSelectChange?.(\n event,\n row,\n event.target.checked\n ? [...tableInstance.selectedFlatRows, row]\n : tableInstance.selectedFlatRows.filter(\n (selectedRow) => selectedRow.id !== row.id,\n ),\n );\n }\n };\n\n const mTableBodyRowSelectCheckboxProps =\n muiSelectCheckboxProps instanceof Function\n ? muiSelectCheckboxProps(selectAll, row, tableInstance)\n : muiSelectCheckboxProps;\n\n const rtSelectCheckboxProps = selectAll\n ? tableInstance.getToggleAllRowsSelectedProps()\n : row?.getToggleRowSelectedProps();\n\n const checkboxProps = {\n ...mTableBodyRowSelectCheckboxProps,\n ...rtSelectCheckboxProps,\n style: {\n ...rtSelectCheckboxProps?.style,\n ...mTableBodyRowSelectCheckboxProps?.style,\n },\n };\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 inputProps={{\n 'aria-label': selectAll\n ? localization.toggleSelectAll\n : localization.toggleSelectRow,\n }}\n size={densePadding ? 'small' : 'medium'}\n {...checkboxProps}\n onChange={handleSelectChange}\n title={undefined}\n />\n </Tooltip>\n );\n};\n","import React, { FC } from 'react';\nimport { IconButton, TableCell } from '@mui/material';\nimport { useMRT } from '../useMRT';\nimport { commonTableBodyButtonCellStyles } from '../body/MRT_TableBodyCell';\n\ninterface Props {}\n\nexport const MRT_ExpandAllButton: FC<Props> = () => {\n const {\n anyRowsExpanded,\n icons: { DoubleArrowDownIcon },\n localization,\n tableInstance,\n } = useMRT();\n\n return (\n <TableCell\n size=\"small\"\n {...tableInstance.getToggleAllRowsExpandedProps()}\n sx={commonTableBodyButtonCellStyles(tableInstance.state.densePadding)}\n >\n <IconButton\n aria-label={localization.expandAll}\n title={localization.expandAll}\n >\n <DoubleArrowDownIcon\n style={{\n transform: `rotate(${\n tableInstance.isAllRowsExpanded ? -180 : anyRowsExpanded ? -90 : 0\n }deg)`,\n transition: 'transform 0.2s',\n }}\n />\n </IconButton>\n </TableCell>\n );\n};\n","import React, { CSSProperties, FC } from 'react';\nimport { TableCell } from '@mui/material';\nimport { useMRT } from '../useMRT';\n\ninterface Props {\n width?: CSSProperties['width'];\n}\n\nexport const MRT_TableSpacerCell: FC<Props> = ({ width }) => {\n const { muiTableBodyCellProps } = useMRT();\n\n const tableCellProps =\n muiTableBodyCellProps instanceof Function\n ? muiTableBodyCellProps()\n : muiTableBodyCellProps;\n\n return (\n <TableCell {...tableCellProps} sx={{ width, ...tableCellProps?.sx }} />\n );\n};\n","import React, { FC } from 'react';\nimport { TableCell } from '@mui/material';\nimport { useMRT } from '../useMRT';\nimport { commonTableHeadCellStyles } from './MRT_TableHeadCell';\n\ninterface Props {}\n\nexport const MRT_TableHeadCellActions: FC<Props> = () => {\n const {\n localization,\n tableInstance: {\n state: { densePadding },\n },\n } = useMRT();\n\n return (\n <TableCell\n style={{ textAlign: 'center' }}\n sx={{\n ...commonTableHeadCellStyles(densePadding),\n textAlign: 'center',\n maxWidth: '4rem',\n width: '4rem',\n }}\n >\n {localization.actions}\n </TableCell>\n );\n};\n","import React, { FC, useMemo } from 'react';\nimport { TableCell, TableRow } from '@mui/material';\nimport {\n commonTableHeadCellStyles,\n MRT_TableHeadCell,\n} from './MRT_TableHeadCell';\nimport { commonTableBodyButtonCellStyles } from '../body/MRT_TableBodyCell';\nimport { useMRT } from '../useMRT';\nimport { MRT_SelectCheckbox } from '../inputs/MRT_SelectCheckbox';\nimport { MRT_ExpandAllButton } from '../buttons/MRT_ExpandAllButton';\nimport { MRT_TableSpacerCell } from '../table/MRT_TableSpacerCell';\nimport { MRT_TableHeadCellActions } from './MRT_TableHeadCellActions';\nimport type { MRT_HeaderGroup } from '..';\n\ninterface Props {\n headerGroup: MRT_HeaderGroup;\n}\n\nexport const MRT_TableHeadRow: FC<Props> = ({ headerGroup }) => {\n const {\n anyRowsCanExpand,\n disableExpandAll,\n disableSelectAll,\n enableRowActions,\n enableRowEditing,\n enableRowNumbers,\n enableSelection,\n muiTableHeadRowProps,\n positionActionsColumn,\n renderDetailPanel,\n tableInstance,\n } = useMRT();\n\n const isParentHeader = useMemo(\n () => headerGroup.headers.some((h) => (h.columns?.length ?? 0) > 0),\n [headerGroup.headers],\n );\n\n const mTableHeadRowProps =\n muiTableHeadRowProps instanceof Function\n ? muiTableHeadRowProps(headerGroup)\n : muiTableHeadRowProps;\n\n const tableRowProps = {\n ...mTableHeadRowProps,\n ...headerGroup.getHeaderGroupProps(),\n style: {\n ...headerGroup.getHeaderGroupProps().style,\n ...mTableHeadRowProps?.style,\n },\n };\n\n return (\n <TableRow {...tableRowProps}>\n {enableRowNumbers &&\n (isParentHeader ? (\n <MRT_TableSpacerCell />\n ) : (\n <TableCell\n sx={{\n ...commonTableHeadCellStyles(tableInstance.state.densePadding),\n }}\n >\n #\n </TableCell>\n ))}\n {(enableRowActions || enableRowEditing) &&\n positionActionsColumn === 'first' &&\n (isParentHeader ? (\n <MRT_TableSpacerCell />\n ) : (\n <MRT_TableHeadCellActions />\n ))}\n {anyRowsCanExpand || renderDetailPanel ? (\n !disableExpandAll && !isParentHeader ? (\n <MRT_ExpandAllButton />\n ) : (\n <MRT_TableSpacerCell\n width={`${\n renderDetailPanel ? 2 : tableInstance.expandedDepth + 0.5\n }rem`}\n />\n )\n ) : null}\n {enableSelection ? (\n !isParentHeader && !disableSelectAll ? (\n <TableCell\n sx={{\n ...commonTableBodyButtonCellStyles(\n tableInstance.state.densePadding,\n ),\n maxWidth: '3rem',\n width: '3rem',\n }}\n >\n <MRT_SelectCheckbox selectAll />\n </TableCell>\n ) : (\n <MRT_TableSpacerCell width=\"1rem\" />\n )\n ) : null}\n {headerGroup.headers.map((column: MRT_HeaderGroup) => (\n <MRT_TableHeadCell key={column.getHeaderProps().key} column={column} />\n ))}\n {(enableRowActions || enableRowEditing) &&\n positionActionsColumn === 'last' &&\n (isParentHeader ? (\n <MRT_TableSpacerCell />\n ) : (\n <MRT_TableHeadCellActions />\n ))}\n </TableRow>\n );\n};\n","import React, { FC } from 'react';\nimport { TableHead } from '@mui/material';\nimport { MRT_TableHeadRow } from './MRT_TableHeadRow';\nimport { useMRT } from '../useMRT';\nimport type { MRT_HeaderGroup } from '..';\n\ninterface Props {}\n\nexport const MRT_TableHead: FC<Props> = () => {\n const { tableInstance, muiTableHeadProps } = useMRT();\n\n const tableHeadProps =\n muiTableHeadProps instanceof Function\n ? muiTableHeadProps(tableInstance)\n : muiTableHeadProps;\n\n return (\n <TableHead {...tableHeadProps}>\n {tableInstance.headerGroups.map((headerGroup: MRT_HeaderGroup) => (\n <MRT_TableHeadRow\n key={headerGroup.getHeaderGroupProps().key}\n headerGroup={headerGroup}\n />\n ))}\n </TableHead>\n );\n};\n","import React, { FC, MouseEvent } from 'react';\nimport { Collapse, TableCell, TableRow } from '@mui/material';\nimport { useMRT } from '../useMRT';\nimport type { MRT_Row } from '..';\n\ninterface Props {\n row: MRT_Row;\n}\n\nexport const MRT_TableDetailPanel: FC<Props> = ({ row }) => {\n const {\n muiTableBodyRowProps,\n muiTableDetailPanelProps,\n onDetailPanelClick,\n renderDetailPanel,\n tableInstance,\n } = useMRT();\n\n const tableRowProps =\n muiTableBodyRowProps instanceof Function\n ? muiTableBodyRowProps(row)\n : muiTableBodyRowProps;\n\n const tableCellProps =\n muiTableDetailPanelProps instanceof Function\n ? muiTableDetailPanelProps(row)\n : muiTableDetailPanelProps;\n\n return (\n <TableRow {...tableRowProps}>\n <TableCell\n colSpan={tableInstance.visibleColumns.length + 10}\n onClick={(event: MouseEvent<HTMLTableCellElement>) =>\n onDetailPanelClick?.(event, row)\n }\n {...tableCellProps}\n sx={{\n borderBottom: !row.isExpanded ? 'none' : undefined,\n pb: row.isExpanded ? '1rem' : 0,\n pt: row.isExpanded ? '1rem' : 0,\n transition: 'all 0.2s ease-in-out',\n ...tableCellProps?.sx,\n }}\n >\n <Collapse in={row.isExpanded}>{renderDetailPanel?.(row)}</Collapse>\n </TableCell>\n </TableRow>\n );\n};\n","import React, { FC, MouseEvent } from 'react';\nimport { IconButton, TableCell } from '@mui/material';\nimport { useMRT } from '../useMRT';\nimport type { MRT_Row } from '..';\nimport { commonTableBodyButtonCellStyles } from '../body/MRT_TableBodyCell';\n\ninterface Props {\n row: MRT_Row;\n}\n\nexport const MRT_ExpandButton: FC<Props> = ({ row }) => {\n const {\n icons: { ExpandMoreIcon },\n localization,\n onRowExpandChange,\n renderDetailPanel,\n tableInstance: {\n state: { densePadding },\n },\n } = useMRT();\n\n const handleToggleExpand = (event: MouseEvent<HTMLButtonElement>) => {\n // @ts-ignore\n row.getToggleRowExpandedProps()?.onClick(event);\n onRowExpandChange?.(event, row);\n };\n\n return (\n <TableCell\n size=\"small\"\n sx={{\n ...commonTableBodyButtonCellStyles(densePadding),\n pl: `${row.depth + 0.5}rem`,\n textAlign: 'left',\n }}\n >\n <IconButton\n aria-label={localization.expand}\n disabled={!row.canExpand && !renderDetailPanel}\n title={localization.expand}\n {...row.getToggleRowExpandedProps()}\n onClick={handleToggleExpand}\n >\n <ExpandMoreIcon\n style={{\n transform: `rotate(${\n !row.canExpand && !renderDetailPanel\n ? -90\n : row.isExpanded\n ? -180\n : 0\n }deg)`,\n transition: 'transform 0.2s',\n }}\n />\n </IconButton>\n </TableCell>\n );\n};\n","import React, { FC } from 'react';\nimport { Box, ListItemIcon, Menu, MenuItem } from '@mui/material';\nimport { useMRT } from '../useMRT';\nimport type { MRT_Row } from '..';\nimport {\n commonListItemStyles,\n commonMenuItemStyles,\n} from './MRT_ColumnActionMenu';\n\ninterface Props {\n anchorEl: HTMLElement | null;\n row: MRT_Row;\n setAnchorEl: (anchorEl: HTMLElement | null) => void;\n handleEdit: () => void;\n}\n\nexport const MRT_RowActionMenu: FC<Props> = ({\n anchorEl,\n row,\n handleEdit,\n setAnchorEl,\n}) => {\n const {\n icons: { EditIcon },\n enableRowEditing,\n localization,\n renderRowActionMenuItems,\n tableInstance,\n } = useMRT();\n\n return (\n <Menu\n anchorEl={anchorEl}\n open={!!anchorEl}\n onClose={() => setAnchorEl(null)}\n MenuListProps={{\n dense: tableInstance.state.densePadding,\n }}\n >\n {enableRowEditing && (\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?.(row, tableInstance, () =>\n setAnchorEl(null),\n ) ?? null}\n </Menu>\n );\n};\n","/**\n * Copyright (c) 2014-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nvar runtime = (function (exports) {\n \"use strict\";\n\n var Op = Object.prototype;\n var hasOwn = Op.hasOwnProperty;\n var undefined; // More compressible than void 0.\n var $Symbol = typeof Symbol === \"function\" ? Symbol : {};\n var iteratorSymbol = $Symbol.iterator || \"@@iterator\";\n var asyncIteratorSymbol = $Symbol.asyncIterator || \"@@asyncIterator\";\n var toStringTagSymbol = $Symbol.toStringTag || \"@@toStringTag\";\n\n function define(obj, key, value) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n return obj[key];\n }\n try {\n // IE 8 has a broken Object.defineProperty that only works on DOM objects.\n define({}, \"\");\n } catch (err) {\n define = function(obj, key, value) {\n return obj[key] = value;\n };\n }\n\n function wrap(innerFn, outerFn, self, tryLocsList) {\n // If outerFn provided and outerFn.prototype is a Generator, then outerFn.prototype instanceof Generator.\n var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator;\n var generator = Object.create(protoGenerator.prototype);\n var context = new Context(tryLocsList || []);\n\n // The ._invoke method unifies the implementations of the .next,\n // .throw, and .return methods.\n generator._invoke = makeInvokeMethod(innerFn, self, context);\n\n return generator;\n }\n exports.wrap = wrap;\n\n // Try/catch helper to minimize deoptimizations. Returns a completion\n // record like context.tryEntries[i].completion. This interface could\n // have been (and was previously) designed to take a closure to be\n // invoked without arguments, but in all the cases we care about we\n // already have an existing method we want to call, so there's no need\n // to create a new function object. We can even get away with assuming\n // the method takes exactly one argument, since that happens to be true\n // in every case, so we don't have to touch the arguments object. The\n // only additional allocation required is the completion record, which\n // has a stable shape and so hopefully should be cheap to allocate.\n function tryCatch(fn, obj, arg) {\n try {\n return { type: \"normal\", arg: fn.call(obj, arg) };\n } catch (err) {\n return { type: \"throw\", arg: err };\n }\n }\n\n var GenStateSuspendedStart = \"suspendedStart\";\n var GenStateSuspendedYield = \"suspendedYield\";\n var GenStateExecuting = \"executing\";\n var GenStateCompleted = \"completed\";\n\n // Returning this object from the innerFn has the same effect as\n // breaking out of the dispatch switch statement.\n var ContinueSentinel = {};\n\n // Dummy constructor functions that we use as the .constructor and\n // .constructor.prototype properties for functions that return Generator\n // objects. For full spec compliance, you may wish to configure your\n // minifier not to mangle the names of these two functions.\n function Generator() {}\n function GeneratorFunction() {}\n function GeneratorFunctionPrototype() {}\n\n // This is a polyfill for %IteratorPrototype% for environments that\n // don't natively support it.\n var IteratorPrototype = {};\n define(IteratorPrototype, iteratorSymbol, function () {\n return this;\n });\n\n var getProto = Object.getPrototypeOf;\n var NativeIteratorPrototype = getProto && getProto(getProto(values([])));\n if (NativeIteratorPrototype &&\n NativeIteratorPrototype !== Op &&\n hasOwn.call(NativeIteratorPrototype, iteratorSymbol)) {\n // This environment has a native %IteratorPrototype%; use it instead\n // of the polyfill.\n IteratorPrototype = NativeIteratorPrototype;\n }\n\n var Gp = GeneratorFunctionPrototype.prototype =\n Generator.prototype = Object.create(IteratorPrototype);\n GeneratorFunction.prototype = GeneratorFunctionPrototype;\n define(Gp, \"constructor\", GeneratorFunctionPrototype);\n define(GeneratorFunctionPrototype, \"constructor\", GeneratorFunction);\n GeneratorFunction.displayName = define(\n GeneratorFunctionPrototype,\n toStringTagSymbol,\n \"GeneratorFunction\"\n );\n\n // Helper for defining the .next, .throw, and .return methods of the\n // Iterator interface in terms of a single ._invoke method.\n function defineIteratorMethods(prototype) {\n [\"next\", \"throw\", \"return\"].forEach(function(method) {\n define(prototype, method, function(arg) {\n return this._invoke(method, arg);\n });\n });\n }\n\n exports.isGeneratorFunction = function(genFun) {\n var ctor = typeof genFun === \"function\" && genFun.constructor;\n return ctor\n ? ctor === GeneratorFunction ||\n // For the native GeneratorFunction constructor, the best we can\n // do is to check its .name property.\n (ctor.displayName || ctor.name) === \"GeneratorFunction\"\n : false;\n };\n\n exports.mark = function(genFun) {\n if (Object.setPrototypeOf) {\n Object.setPrototypeOf(genFun, GeneratorFunctionPrototype);\n } else {\n genFun.__proto__ = GeneratorFunctionPrototype;\n define(genFun, toStringTagSymbol, \"GeneratorFunction\");\n }\n genFun.prototype = Object.create(Gp);\n return genFun;\n };\n\n // Within the body of any async function, `await x` is transformed to\n // `yield regeneratorRuntime.awrap(x)`, so that the runtime can test\n // `hasOwn.call(value, \"__await\")` to determine if the yielded value is\n // meant to be awaited.\n exports.awrap = function(arg) {\n return { __await: arg };\n };\n\n function AsyncIterator(generator, PromiseImpl) {\n function invoke(method, arg, resolve, reject) {\n var record = tryCatch(generator[method], generator, arg);\n if (record.type === \"throw\") {\n reject(record.arg);\n } else {\n var result = record.arg;\n var value = result.value;\n if (value &&\n typeof value === \"object\" &&\n hasOwn.call(value, \"__await\")) {\n return PromiseImpl.resolve(value.__await).then(function(value) {\n invoke(\"next\", value, resolve, reject);\n }, function(err) {\n invoke(\"throw\", err, resolve, reject);\n });\n }\n\n return PromiseImpl.resolve(value).then(function(unwrapped) {\n // When a yielded Promise is resolved, its final value becomes\n // the .value of the Promise<{value,done}> result for the\n // current iteration.\n result.value = unwrapped;\n resolve(result);\n }, function(error) {\n // If a rejected Promise was yielded, throw the rejection back\n // into the async generator function so it can be handled there.\n return invoke(\"throw\", error, resolve, reject);\n });\n }\n }\n\n var previousPromise;\n\n function enqueue(method, arg) {\n function callInvokeWithMethodAndArg() {\n return new PromiseImpl(function(resolve, reject) {\n invoke(method, arg, resolve, reject);\n });\n }\n\n return previousPromise =\n // If enqueue has been called before, then we want to wait until\n // all previous Promises have been resolved before calling invoke,\n // so that results are always delivered in the correct order. If\n // enqueue has not been called before, then it is important to\n // call invoke immediately, without waiting on a callback to fire,\n // so that the async generator function has the opportunity to do\n // any necessary setup in a predictable way. This predictability\n // is why the Promise constructor synchronously invokes its\n // executor callback, and why async functions synchronously\n // execute code before the first await. Since we implement simple\n // async functions in terms of async generators, it is especially\n // important to get this right, even though it requires care.\n previousPromise ? previousPromise.then(\n callInvokeWithMethodAndArg,\n // Avoid propagating failures to Promises returned by later\n // invocations of the iterator.\n callInvokeWithMethodAndArg\n ) : callInvokeWithMethodAndArg();\n }\n\n // Define the unified helper method that is used to implement .next,\n // .throw, and .return (see defineIteratorMethods).\n this._invoke = enqueue;\n }\n\n defineIteratorMethods(AsyncIterator.prototype);\n define(AsyncIterator.prototype, asyncIteratorSymbol, function () {\n return this;\n });\n exports.AsyncIterator = AsyncIterator;\n\n // Note that simple async functions are implemented on top of\n // AsyncIterator objects; they just return a Promise for the value of\n // the final result produced by the iterator.\n exports.async = function(innerFn, outerFn, self, tryLocsList, PromiseImpl) {\n if (PromiseImpl === void 0) PromiseImpl = Promise;\n\n var iter = new AsyncIterator(\n wrap(innerFn, outerFn, self, tryLocsList),\n PromiseImpl\n );\n\n return exports.isGeneratorFunction(outerFn)\n ? iter // If outerFn is a generator, return the full iterator.\n : iter.next().then(function(result) {\n return result.done ? result.value : iter.next();\n });\n };\n\n function makeInvokeMethod(innerFn, self, context) {\n var state = GenStateSuspendedStart;\n\n return function invoke(method, arg) {\n if (state === GenStateExecuting) {\n throw new Error(\"Generator is already running\");\n }\n\n if (state === GenStateCompleted) {\n if (method === \"throw\") {\n throw arg;\n }\n\n // Be forgiving, per 25.3.3.3.3 of the spec:\n // https://people.mozilla.org/~jorendorff/es6-draft.html#sec-generatorresume\n return doneResult();\n }\n\n context.method = method;\n context.arg = arg;\n\n while (true) {\n var delegate = context.delegate;\n if (delegate) {\n var delegateResult = maybeInvokeDelegate(delegate, context);\n if (delegateResult) {\n if (delegateResult === ContinueSentinel) continue;\n return delegateResult;\n }\n }\n\n if (context.method === \"next\") {\n // Setting context._sent for legacy support of Babel's\n // function.sent implementation.\n context.sent = context._sent = context.arg;\n\n } else if (context.method === \"throw\") {\n if (state === GenStateSuspendedStart) {\n state = GenStateCompleted;\n throw context.arg;\n }\n\n context.dispatchException(context.arg);\n\n } else if (context.method === \"return\") {\n context.abrupt(\"return\", context.arg);\n }\n\n state = GenStateExecuting;\n\n var record = tryCatch(innerFn, self, context);\n if (record.type === \"normal\") {\n // If an exception is thrown from innerFn, we leave state ===\n // GenStateExecuting and loop back for another invocation.\n state = context.done\n ? GenStateCompleted\n : GenStateSuspendedYield;\n\n if (record.arg === ContinueSentinel) {\n continue;\n }\n\n return {\n value: record.arg,\n done: context.done\n };\n\n } else if (record.type === \"throw\") {\n state = GenStateCompleted;\n // Dispatch the exception by looping back around to the\n // context.dispatchException(context.arg) call above.\n context.method = \"throw\";\n context.arg = record.arg;\n }\n }\n };\n }\n\n // Call delegate.iterator[context.method](context.arg) and handle the\n // result, either by returning a { value, done } result from the\n // delegate iterator, or by modifying context.method and context.arg,\n // setting context.delegate to null, and returning the ContinueSentinel.\n function maybeInvokeDelegate(delegate, context) {\n var method = delegate.iterator[context.method];\n if (method === undefined) {\n // A .throw or .return when the delegate iterator has no .throw\n // method always terminates the yield* loop.\n context.delegate = null;\n\n if (context.method === \"throw\") {\n // Note: [\"return\"] must be used for ES3 parsing compatibility.\n if (delegate.iterator[\"return\"]) {\n // If the delegate iterator has a return method, give it a\n // chance to clean up.\n context.method = \"return\";\n context.arg = undefined;\n maybeInvokeDelegate(delegate, context);\n\n if (context.method === \"throw\") {\n // If maybeInvokeDelegate(context) changed context.method from\n // \"return\" to \"throw\", let that override the TypeError below.\n return ContinueSentinel;\n }\n }\n\n context.method = \"throw\";\n context.arg = new TypeError(\n \"The iterator does not provide a 'throw' method\");\n }\n\n return ContinueSentinel;\n }\n\n var record = tryCatch(method, delegate.iterator, context.arg);\n\n if (record.type === \"throw\") {\n context.method = \"throw\";\n context.arg = record.arg;\n context.delegate = null;\n return ContinueSentinel;\n }\n\n var info = record.arg;\n\n if (! info) {\n context.method = \"throw\";\n context.arg = new TypeError(\"iterator result is not an object\");\n context.delegate = null;\n return ContinueSentinel;\n }\n\n if (info.done) {\n // Assign the result of the finished delegate to the temporary\n // variable specified by delegate.resultName (see delegateYield).\n context[delegate.resultName] = info.value;\n\n // Resume execution at the desired location (see delegateYield).\n context.next = delegate.nextLoc;\n\n // If context.method was \"throw\" but the delegate handled the\n // exception, let the outer generator proceed normally. If\n // context.method was \"next\", forget context.arg since it has been\n // \"consumed\" by the delegate iterator. If context.method was\n // \"return\", allow the original .return call to continue in the\n // outer generator.\n if (context.method !== \"return\") {\n context.method = \"next\";\n context.arg = undefined;\n }\n\n } else {\n // Re-yield the result returned by the delegate method.\n return info;\n }\n\n // The delegate iterator is finished, so forget it and continue with\n // the outer generator.\n context.delegate = null;\n return ContinueSentinel;\n }\n\n // Define Generator.prototype.{next,throw,return} in terms of the\n // unified ._invoke helper method.\n defineIteratorMethods(Gp);\n\n define(Gp, toStringTagSymbol, \"Generator\");\n\n // A Generator should always return itself as the iterator object when the\n // @@iterator function is called on it. Some browsers' implementations of the\n // iterator prototype chain incorrectly implement this, causing the Generator\n // object to not be returned from this call. This ensures that doesn't happen.\n // See https://github.com/facebook/regenerator/issues/274 for more details.\n define(Gp, iteratorSymbol, function() {\n return this;\n });\n\n define(Gp, \"toString\", function() {\n return \"[object Generator]\";\n });\n\n function pushTryEntry(locs) {\n var entry = { tryLoc: locs[0] };\n\n if (1 in locs) {\n entry.catchLoc = locs[1];\n }\n\n if (2 in locs) {\n entry.finallyLoc = locs[2];\n entry.afterLoc = locs[3];\n }\n\n this.tryEntries.push(entry);\n }\n\n function resetTryEntry(entry) {\n var record = entry.completion || {};\n record.type = \"normal\";\n delete record.arg;\n entry.completion = record;\n }\n\n function Context(tryLocsList) {\n // The root entry object (effectively a try statement without a catch\n // or a finally block) gives us a place to store values thrown from\n // locations where there is no enclosing try statement.\n this.tryEntries = [{ tryLoc: \"root\" }];\n tryLocsList.forEach(pushTryEntry, this);\n this.reset(true);\n }\n\n exports.keys = function(object) {\n var keys = [];\n for (var key in object) {\n keys.push(key);\n }\n keys.reverse();\n\n // Rather than returning an object with a next method, we keep\n // things simple and return the next function itself.\n return function next() {\n while (keys.length) {\n var key = keys.pop();\n if (key in object) {\n next.value = key;\n next.done = false;\n return next;\n }\n }\n\n // To avoid creating an additional object, we just hang the .value\n // and .done properties off the next function object itself. This\n // also ensures that the minifier will not anonymize the function.\n next.done = true;\n return next;\n };\n };\n\n function values(iterable) {\n if (iterable) {\n var iteratorMethod = iterable[iteratorSymbol];\n if (iteratorMethod) {\n return iteratorMethod.call(iterable);\n }\n\n if (typeof iterable.next === \"function\") {\n return iterable;\n }\n\n if (!isNaN(iterable.length)) {\n var i = -1, next = function next() {\n while (++i < iterable.length) {\n if (hasOwn.call(iterable, i)) {\n next.value = iterable[i];\n next.done = false;\n return next;\n }\n }\n\n next.value = undefined;\n next.done = true;\n\n return next;\n };\n\n return next.next = next;\n }\n }\n\n // Return an iterator with no values.\n return { next: doneResult };\n }\n exports.values = values;\n\n function doneResult() {\n return { value: undefined, done: true };\n }\n\n Context.prototype = {\n constructor: Context,\n\n reset: function(skipTempReset) {\n this.prev = 0;\n this.next = 0;\n // Resetting context._sent for legacy support of Babel's\n // function.sent implementation.\n this.sent = this._sent = undefined;\n this.done = false;\n this.delegate = null;\n\n this.method = \"next\";\n this.arg = undefined;\n\n this.tryEntries.forEach(resetTryEntry);\n\n if (!skipTempReset) {\n for (var name in this) {\n // Not sure about the optimal order of these conditions:\n if (name.charAt(0) === \"t\" &&\n hasOwn.call(this, name) &&\n !isNaN(+name.slice(1))) {\n this[name] = undefined;\n }\n }\n }\n },\n\n stop: function() {\n this.done = true;\n\n var rootEntry = this.tryEntries[0];\n var rootRecord = rootEntry.completion;\n if (rootRecord.type === \"throw\") {\n throw rootRecord.arg;\n }\n\n return this.rval;\n },\n\n dispatchException: function(exception) {\n if (this.done) {\n throw exception;\n }\n\n var context = this;\n function handle(loc, caught) {\n record.type = \"throw\";\n record.arg = exception;\n context.next = loc;\n\n if (caught) {\n // If the dispatched exception was caught by a catch block,\n // then let that catch block handle the exception normally.\n context.method = \"next\";\n context.arg = undefined;\n }\n\n return !! caught;\n }\n\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n var record = entry.completion;\n\n if (entry.tryLoc === \"root\") {\n // Exception thrown outside of any try block that could handle\n // it, so set the completion value of the entire function to\n // throw the exception.\n return handle(\"end\");\n }\n\n if (entry.tryLoc <= this.prev) {\n var hasCatch = hasOwn.call(entry, \"catchLoc\");\n var hasFinally = hasOwn.call(entry, \"finallyLoc\");\n\n if (hasCatch && hasFinally) {\n if (this.prev < entry.catchLoc) {\n return handle(entry.catchLoc, true);\n } else if (this.prev < entry.finallyLoc) {\n return handle(entry.finallyLoc);\n }\n\n } else if (hasCatch) {\n if (this.prev < entry.catchLoc) {\n return handle(entry.catchLoc, true);\n }\n\n } else if (hasFinally) {\n if (this.prev < entry.finallyLoc) {\n return handle(entry.finallyLoc);\n }\n\n } else {\n throw new Error(\"try statement without catch or finally\");\n }\n }\n }\n },\n\n abrupt: function(type, arg) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc <= this.prev &&\n hasOwn.call(entry, \"finallyLoc\") &&\n this.prev < entry.finallyLoc) {\n var finallyEntry = entry;\n break;\n }\n }\n\n if (finallyEntry &&\n (type === \"break\" ||\n type === \"continue\") &&\n finallyEntry.tryLoc <= arg &&\n arg <= finallyEntry.finallyLoc) {\n // Ignore the finally entry if control is not jumping to a\n // location outside the try/catch block.\n finallyEntry = null;\n }\n\n var record = finallyEntry ? finallyEntry.completion : {};\n record.type = type;\n record.arg = arg;\n\n if (finallyEntry) {\n this.method = \"next\";\n this.next = finallyEntry.finallyLoc;\n return ContinueSentinel;\n }\n\n return this.complete(record);\n },\n\n complete: function(record, afterLoc) {\n if (record.type === \"throw\") {\n throw record.arg;\n }\n\n if (record.type === \"break\" ||\n record.type === \"continue\") {\n this.next = record.arg;\n } else if (record.type === \"return\") {\n this.rval = this.arg = record.arg;\n this.method = \"return\";\n this.next = \"end\";\n } else if (record.type === \"normal\" && afterLoc) {\n this.next = afterLoc;\n }\n\n return ContinueSentinel;\n },\n\n finish: function(finallyLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.finallyLoc === finallyLoc) {\n this.complete(entry.completion, entry.afterLoc);\n resetTryEntry(entry);\n return ContinueSentinel;\n }\n }\n },\n\n \"catch\": function(tryLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc === tryLoc) {\n var record = entry.completion;\n if (record.type === \"throw\") {\n var thrown = record.arg;\n resetTryEntry(entry);\n }\n return thrown;\n }\n }\n\n // The context.catch method must only be called with a location\n // argument that corresponds to a known catch block.\n throw new Error(\"illegal catch attempt\");\n },\n\n delegateYield: function(iterable, resultName, nextLoc) {\n this.delegate = {\n iterator: values(iterable),\n resultName: resultName,\n nextLoc: nextLoc\n };\n\n if (this.method === \"next\") {\n // Deliberately forget the last sent value so that we don't\n // accidentally pass it on to the delegate.\n this.arg = undefined;\n }\n\n return ContinueSentinel;\n }\n };\n\n // Regardless of whether this script is executing as a CommonJS module\n // or not, return the runtime object so that we can declare the variable\n // regeneratorRuntime in the outer scope, which allows this module to be\n // injected easily by `bin/regenerator --include-runtime script.js`.\n return exports;\n\n}(\n // If this script is executing as a CommonJS module, use module.exports\n // as the regeneratorRuntime namespace. Otherwise create a new empty\n // object. Either way, the resulting object will be used to initialize\n // the regeneratorRuntime variable at the top of this file.\n typeof module === \"object\" ? module.exports : {}\n));\n\ntry {\n regeneratorRuntime = runtime;\n} catch (accidentalStrictMode) {\n // This module should not be running in strict mode, so the above\n // assignment should always work unless something is misconfigured. Just\n // in case runtime.js accidentally runs in strict mode, in modern engines\n // we can explicitly access globalThis. In older engines we can escape\n // strict mode using a global Function call. This could conceivably fail\n // if a Content Security Policy forbids using Function, but in that case\n // the proper solution is to fix the accidental strict mode problem. If\n // you've misconfigured your bundler to force strict mode and applied a\n // CSP to forbid Function, and you're not willing to fix either of those\n // problems, please detail your unique predicament in a GitHub issue.\n if (typeof globalThis === \"object\") {\n globalThis.regeneratorRuntime = runtime;\n } else {\n Function(\"r\", \"regeneratorRuntime = r\")(runtime);\n }\n}\n","import React, { FC } from 'react';\nimport { Box, IconButton, Tooltip } from '@mui/material';\nimport { useMRT } from '../useMRT';\nimport type { MRT_Row } from '..';\n\ninterface Props {\n row: MRT_Row;\n}\n\nexport const MRT_EditActionButtons: FC<Props> = ({ row }) => {\n const {\n icons: { CancelIcon, SaveIcon },\n localization,\n onRowEditSubmit,\n setCurrentEditingRow,\n tableInstance: {\n state: { currentEditingRow },\n },\n } = useMRT();\n\n const handleCancel = () => {\n row.values = row.original;\n setCurrentEditingRow(null);\n };\n\n const handleSave = async () => {\n await onRowEditSubmit?.(currentEditingRow ?? row);\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, TableCell, Tooltip } from '@mui/material';\nimport { useMRT } from '../useMRT';\nimport { MRT_RowActionMenu } from '../menus/MRT_RowActionMenu';\nimport { MRT_EditActionButtons } from './MRT_EditActionButtons';\nimport type { MRT_Row } from '..';\nimport { commonTableBodyButtonCellStyles } from '../body/MRT_TableBodyCell';\n\nconst commonIconButtonStyles = {\n opacity: 0.5,\n transition: 'opacity 0.2s',\n marginRight: '2px',\n height: '2rem',\n width: '2rem',\n '&:hover': {\n opacity: 1,\n },\n};\n\ninterface Props {\n row: MRT_Row;\n}\n\nexport const MRT_ToggleRowActionMenuButton: FC<Props> = ({ row }) => {\n const {\n enableRowEditing,\n icons: { EditIcon, MoreHorizIcon },\n localization,\n renderRowActionMenuItems,\n renderRowActions,\n setCurrentEditingRow,\n tableInstance,\n } = useMRT();\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 handleEdit = () => {\n setCurrentEditingRow({ ...row });\n setAnchorEl(null);\n };\n\n return (\n <TableCell\n sx={commonTableBodyButtonCellStyles(tableInstance.state.densePadding)}\n >\n {renderRowActions ? (\n <>{renderRowActions(row, tableInstance)}</>\n ) : row.id === tableInstance.state.currentEditingRow?.id ? (\n <MRT_EditActionButtons row={row} />\n ) : !renderRowActionMenuItems && enableRowEditing ? (\n <Tooltip placement=\"right\" arrow title={localization.edit}>\n <IconButton sx={commonIconButtonStyles} onClick={handleEdit}>\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={handleEdit}\n row={row}\n setAnchorEl={setAnchorEl}\n />\n </>\n ) : null}\n </TableCell>\n );\n};\n","import React, { FC, MouseEvent } from 'react';\nimport { TableCell, TableRow } from '@mui/material';\nimport {\n commonTableBodyButtonCellStyles,\n commonTableBodyCellStyles,\n MRT_TableBodyCell,\n} from './MRT_TableBodyCell';\nimport { useMRT } from '../useMRT';\nimport { MRT_TableDetailPanel } from './MRT_TableDetailPanel';\nimport { MRT_ExpandButton } from '../buttons/MRT_ExpandButton';\nimport { MRT_SelectCheckbox } from '../inputs/MRT_SelectCheckbox';\nimport { MRT_ToggleRowActionMenuButton } from '../buttons/MRT_ToggleRowActionMenuButton';\nimport type { MRT_Cell, MRT_Row } from '..';\n\ninterface Props {\n row: MRT_Row;\n}\n\nexport const MRT_TableBodyRow: FC<Props> = ({ row }) => {\n const {\n anyRowsCanExpand,\n enableRowActions,\n enableRowEditing,\n enableRowNumbers,\n enableSelection,\n muiTableBodyRowProps,\n onRowClick,\n positionActionsColumn,\n renderDetailPanel,\n tableInstance,\n tableInstance: {\n state: { densePadding },\n },\n } = useMRT();\n\n const mTableBodyRowProps =\n muiTableBodyRowProps instanceof Function\n ? muiTableBodyRowProps(row)\n : muiTableBodyRowProps;\n\n const tableRowProps = {\n ...mTableBodyRowProps,\n ...row.getRowProps(),\n style: {\n ...row.getRowProps().style,\n ...mTableBodyRowProps?.style,\n },\n };\n\n return (\n <>\n <TableRow\n hover\n onClick={(event: MouseEvent<HTMLTableRowElement>) =>\n onRowClick?.(event, row)\n }\n selected={row.isSelected}\n {...tableRowProps}\n >\n {enableRowNumbers && (\n <TableCell sx={{ ...commonTableBodyCellStyles(densePadding) }}>\n {row.index + 1}\n </TableCell>\n )}\n {(enableRowActions || enableRowEditing) &&\n positionActionsColumn === 'first' && (\n <MRT_ToggleRowActionMenuButton row={row} />\n )}\n {(anyRowsCanExpand || renderDetailPanel) && (\n <MRT_ExpandButton row={row} />\n )}\n {enableSelection && (\n <TableCell\n sx={{\n ...commonTableBodyButtonCellStyles(\n tableInstance.state.densePadding,\n ),\n maxWidth: '3rem',\n width: '3rem',\n }}\n >\n <MRT_SelectCheckbox row={row} />\n </TableCell>\n )}\n {row.cells.map((cell: MRT_Cell) => (\n <MRT_TableBodyCell key={cell.getCellProps().key} cell={cell} />\n ))}\n {(enableRowActions || enableRowEditing) &&\n positionActionsColumn === 'last' && (\n <MRT_ToggleRowActionMenuButton row={row} />\n )}\n </TableRow>\n {renderDetailPanel && !row.isGrouped && (\n <MRT_TableDetailPanel row={row} />\n )}\n </>\n );\n};\n","import React, { FC } from 'react';\nimport { TableBody } from '@mui/material';\nimport { MRT_TableBodyRow } from './MRT_TableBodyRow';\nimport { useMRT } from '../useMRT';\nimport type { MRT_Row } from '..';\n\ninterface Props {}\n\nexport const MRT_TableBody: FC<Props> = () => {\n const { tableInstance, muiTableBodyProps, manualPagination } = useMRT();\n\n const rows = manualPagination ? tableInstance.rows : tableInstance.page;\n\n const mTableBodyProps =\n muiTableBodyProps instanceof Function\n ? muiTableBodyProps(tableInstance)\n : muiTableBodyProps;\n\n const tableBodyProps = {\n ...mTableBodyProps,\n ...tableInstance.getTableBodyProps(),\n style: {\n ...tableInstance.getTableBodyProps().style,\n ...mTableBodyProps?.style,\n },\n };\n\n return (\n <TableBody\n {...tableBodyProps}\n sx={{\n ...tableBodyProps?.sx,\n }}\n >\n {rows.map((row: MRT_Row) => {\n tableInstance.prepareRow(row);\n return <MRT_TableBodyRow key={row.getRowProps().key} row={row} />;\n })}\n </TableBody>\n );\n};\n","import React, { FC } from 'react';\nimport { TableCell } from '@mui/material';\nimport { useMRT } from '../useMRT';\nimport type { MRT_HeaderGroup } from '..';\n\ninterface Props {\n column: MRT_HeaderGroup;\n}\n\nexport const MRT_TableFooterCell: FC<Props> = ({ column }) => {\n const {\n muiTableFooterCellProps,\n enableColumnResizing,\n tableInstance: {\n state: { densePadding },\n },\n } = useMRT();\n\n const isParentHeader = !!column?.columns?.length;\n\n const mTableFooterCellProps =\n muiTableFooterCellProps instanceof Function\n ? muiTableFooterCellProps(column)\n : muiTableFooterCellProps;\n\n const mcTableFooterCellProps =\n column.muiTableFooterCellProps instanceof Function\n ? column.muiTableFooterCellProps(column)\n : column.muiTableFooterCellProps;\n\n const tableCellProps = {\n ...mTableFooterCellProps,\n ...mcTableFooterCellProps,\n ...column.getFooterProps(),\n style: {\n ...column.getFooterProps().style,\n ...mTableFooterCellProps?.style,\n ...mcTableFooterCellProps?.style,\n },\n };\n\n return (\n <TableCell\n align={isParentHeader ? 'center' : 'left'}\n variant=\"head\"\n {...tableCellProps}\n sx={{\n fontWeight: 'bold',\n verticalAlign: 'text-top',\n p: densePadding ? '0.5rem' : '1rem',\n transition: `all ${enableColumnResizing ? '10ms' : '0.2s'} ease-in-out`,\n ...tableCellProps?.sx,\n }}\n >\n {column.render('Footer')}\n </TableCell>\n );\n};\n","import React, { FC } from 'react';\nimport { TableRow } from '@mui/material';\nimport { MRT_TableFooterCell } from './MRT_TableFooterCell';\nimport { MRT_TableSpacerCell } from '../table/MRT_TableSpacerCell';\nimport { useMRT } from '../useMRT';\nimport type { MRT_HeaderGroup } from '..';\n\ninterface Props {\n footerGroup: MRT_HeaderGroup;\n}\n\nexport const MRT_TableFooterRow: FC<Props> = ({ footerGroup }) => {\n const {\n anyRowsCanExpand,\n columns,\n enableRowActions,\n enableRowEditing,\n enableRowNumbers,\n enableSelection,\n muiTableFooterRowProps,\n positionActionsColumn,\n renderDetailPanel,\n tableInstance,\n } = useMRT();\n\n //if no content in row, skip row\n if (!columns?.some((c) => c.Footer)) return null;\n\n const mTableFooterRowProps =\n muiTableFooterRowProps instanceof Function\n ? muiTableFooterRowProps(footerGroup)\n : muiTableFooterRowProps;\n\n const tableRowProps = {\n ...mTableFooterRowProps,\n ...footerGroup.getFooterGroupProps(),\n style: {\n ...footerGroup.getFooterGroupProps().style,\n ...mTableFooterRowProps?.style,\n },\n };\n\n return (\n <TableRow {...tableRowProps}>\n {enableRowNumbers && <MRT_TableSpacerCell />}\n {(enableRowActions || enableRowEditing) &&\n positionActionsColumn === 'first' && <MRT_TableSpacerCell />}\n {(anyRowsCanExpand || renderDetailPanel) && (\n <MRT_TableSpacerCell\n width={`${\n renderDetailPanel ? 2 : tableInstance.expandedDepth + 0.5\n }rem`}\n />\n )}\n {enableSelection && <MRT_TableSpacerCell width=\"1rem\" />}\n {footerGroup.headers.map((column: MRT_HeaderGroup) => (\n <MRT_TableFooterCell\n key={column.getFooterProps().key}\n column={column}\n />\n ))}\n {(enableRowActions || enableRowEditing) &&\n positionActionsColumn === 'last' && <MRT_TableSpacerCell />}\n </TableRow>\n );\n};\n","import React, { FC } from 'react';\nimport { TableFooter } from '@mui/material';\nimport { MRT_TableFooterRow } from './MRT_TableFooterRow';\nimport { useMRT } from '../useMRT';\nimport type { MRT_HeaderGroup } from '..';\n\ninterface Props {}\n\nexport const MRT_TableFooter: FC<Props> = () => {\n const { muiTableFooterProps, tableInstance } = useMRT();\n\n const tableFooterProps =\n muiTableFooterProps instanceof Function\n ? muiTableFooterProps(tableInstance)\n : muiTableFooterProps;\n\n return (\n <TableFooter {...tableFooterProps}>\n {tableInstance.footerGroups.map((footerGroup: MRT_HeaderGroup) => (\n <MRT_TableFooterRow\n key={footerGroup.getFooterGroupProps().key}\n footerGroup={footerGroup}\n />\n ))}\n </TableFooter>\n );\n};\n","import React, { FC } 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 { useMRT } from '../useMRT';\n\ninterface Props {}\n\nexport const MRT_Table: FC<Props> = () => {\n const { tableInstance, muiTableProps, hideTableHead, hideTableFooter } =\n useMRT();\n\n const mTableProps =\n muiTableProps instanceof Function\n ? muiTableProps(tableInstance)\n : muiTableProps;\n\n const tableProps = {\n ...mTableProps,\n ...tableInstance.getTableProps(),\n style: {\n ...tableInstance.getTableProps().style,\n ...mTableProps?.style,\n },\n };\n\n return (\n <Table {...tableProps}>\n {!hideTableHead && <MRT_TableHead />}\n <MRT_TableBody />\n {!hideTableFooter && <MRT_TableFooter />}\n </Table>\n );\n};\n","import React, { ChangeEvent, FC, useState } from 'react';\nimport { Collapse, IconButton, InputAdornment, TextField } from '@mui/material';\nimport { useMRT } from '../useMRT';\nimport { useAsyncDebounce } from 'react-table';\n\ninterface Props {}\n\nexport const MRT_SearchTextField: FC<Props> = () => {\n const {\n icons: { SearchIcon, CloseIcon },\n idPrefix,\n localization,\n muiSearchTextFieldProps,\n onGlobalFilterChange,\n tableInstance,\n } = useMRT();\n\n const [searchValue, setSearchValue] = useState('');\n\n const handleChange = useAsyncDebounce(\n (event: ChangeEvent<HTMLInputElement>) => {\n tableInstance.setGlobalFilter(event.target.value ?? undefined);\n onGlobalFilterChange?.(event);\n },\n 200,\n );\n\n const handleClear = () => {\n setSearchValue('');\n tableInstance.setGlobalFilter(undefined);\n };\n\n return (\n <Collapse in={tableInstance.state.showSearch} orientation=\"horizontal\">\n <TextField\n id={`mrt-${idPrefix}-search-text-field`}\n placeholder={localization.search}\n onChange={(event: ChangeEvent<HTMLInputElement>) => {\n setSearchValue(event.target.value);\n handleChange(event);\n }}\n value={searchValue ?? ''}\n variant=\"standard\"\n InputProps={{\n startAdornment: (\n <InputAdornment position=\"start\">\n <SearchIcon fontSize=\"small\" />\n </InputAdornment>\n ),\n endAdornment: (\n <InputAdornment position=\"end\">\n <IconButton\n aria-label={localization.clearSearch}\n disabled={searchValue?.length === 0}\n onClick={handleClear}\n size=\"small\"\n title={localization.clearSearch}\n >\n <CloseIcon fontSize=\"small\" />\n </IconButton>\n </InputAdornment>\n ),\n }}\n {...muiSearchTextFieldProps}\n sx={{ justifySelf: 'end', ...muiSearchTextFieldProps?.sx }}\n />\n </Collapse>\n );\n};\n","import React, { FC } from 'react';\nimport { IconButton, IconButtonProps, Tooltip } from '@mui/material';\nimport { useMRT } from '../useMRT';\n\ninterface Props extends IconButtonProps {}\n\nexport const MRT_FullScreenToggleButton: FC<Props> = ({ ...rest }) => {\n const {\n icons: { FullscreenExitIcon, FullscreenIcon },\n localization,\n setFullScreen,\n tableInstance: {\n state: { fullScreen },\n },\n } = useMRT();\n\n return (\n <Tooltip arrow title={localization.toggleFullScreen}>\n <IconButton\n aria-label={localization.showHideFilters}\n onClick={() => setFullScreen(!fullScreen)}\n size=\"small\"\n {...rest}\n >\n {fullScreen ? <FullscreenExitIcon /> : <FullscreenIcon />}\n </IconButton>\n </Tooltip>\n );\n};\n","import React, { FC, MouseEvent, useState } from 'react';\nimport { IconButton, Tooltip, IconButtonProps } from '@mui/material';\nimport { useMRT } from '../useMRT';\nimport { MRT_ShowHideColumnsMenu } from '../menus/MRT_ShowHideColumnsMenu';\n\ninterface Props extends IconButtonProps {}\n\nexport const MRT_ShowHideColumnsButton: FC<Props> = ({ ...rest }) => {\n const {\n icons: { ViewColumnIcon },\n localization,\n } = useMRT();\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 size=\"small\"\n {...rest}\n >\n <ViewColumnIcon />\n </IconButton>\n </Tooltip>\n <MRT_ShowHideColumnsMenu anchorEl={anchorEl} setAnchorEl={setAnchorEl} />\n </>\n );\n};\n","import React, { FC } from 'react';\nimport { IconButton, IconButtonProps, Tooltip } from '@mui/material';\nimport { useMRT } from '../useMRT';\n\ninterface Props extends IconButtonProps {}\n\nexport const MRT_ToggleDensePaddingButton: FC<Props> = ({ ...rest }) => {\n const {\n setDensePadding,\n localization,\n icons: { DensityMediumIcon, DensitySmallIcon },\n tableInstance: {\n state: { densePadding },\n },\n } = useMRT();\n\n return (\n <Tooltip arrow title={localization.toggleDensePadding}>\n <IconButton\n aria-label={localization.toggleDensePadding}\n onClick={() => setDensePadding(!densePadding)}\n size=\"small\"\n {...rest}\n >\n {densePadding ? <DensitySmallIcon /> : <DensityMediumIcon />}\n </IconButton>\n </Tooltip>\n );\n};\n","import React, { FC } from 'react';\nimport { IconButton, IconButtonProps, Tooltip } from '@mui/material';\nimport { useMRT } from '../useMRT';\n\ninterface Props extends IconButtonProps {}\n\nexport const MRT_ToggleFiltersButton: FC<Props> = ({ ...rest }) => {\n const {\n icons: { FilterListIcon, FilterListOffIcon },\n localization,\n setShowFilters,\n tableInstance: {\n state: { showFilters },\n },\n } = useMRT();\n\n return (\n <Tooltip arrow title={localization.showHideFilters}>\n <IconButton\n aria-label={localization.showHideFilters}\n onClick={() => setShowFilters(!showFilters)}\n size=\"small\"\n {...rest}\n >\n {showFilters ? <FilterListOffIcon /> : <FilterListIcon />}\n </IconButton>\n </Tooltip>\n );\n};\n","import React, { FC } from 'react';\nimport { IconButton, IconButtonProps, Tooltip } from '@mui/material';\nimport { useMRT } from '../useMRT';\n\ninterface Props extends IconButtonProps {}\n\nexport const MRT_ToggleSearchButton: FC<Props> = ({ ...rest }) => {\n const {\n icons: { SearchIcon, SearchOffIcon },\n idPrefix,\n localization,\n muiSearchTextFieldProps,\n setShowSearch,\n tableInstance: {\n state: { showSearch },\n },\n } = useMRT();\n\n const handleToggleSearch = () => {\n setShowSearch(!showSearch);\n setTimeout(\n () =>\n document\n .getElementById(\n muiSearchTextFieldProps?.id ?? `mrt-${idPrefix}-search-text-field`,\n )\n ?.focus(),\n 200,\n );\n };\n\n return (\n <Tooltip arrow title={localization.showHideSearch}>\n <IconButton size=\"small\" onClick={handleToggleSearch} {...rest}>\n {showSearch ? <SearchOffIcon /> : <SearchIcon />}\n </IconButton>\n </Tooltip>\n );\n};\n","import React, { FC } from 'react';\nimport { Box } from '@mui/material';\nimport { MRT_FullScreenToggleButton } from '../buttons/MRT_FullScreenToggleButton';\nimport { MRT_ShowHideColumnsButton } from '../buttons/MRT_ShowHideColumnsButton';\nimport { MRT_ToggleDensePaddingButton } from '../buttons/MRT_ToggleDensePaddingButton';\nimport { MRT_ToggleFiltersButton } from '../buttons/MRT_ToggleFiltersButton';\nimport { MRT_ToggleSearchButton } from '../buttons/MRT_ToggleSearchButton';\nimport { useMRT } from '../useMRT';\n\ninterface Props {}\n\nexport const MRT_ToolbarInternalButtons: FC<Props> = () => {\n const {\n disableFilters,\n disableColumnHiding,\n disableDensePaddingToggle,\n disableGlobalFilter,\n disableFullScreenToggle,\n renderToolbarInternalActions,\n tableInstance,\n } = useMRT();\n\n if (renderToolbarInternalActions) {\n return (\n <>\n {renderToolbarInternalActions(tableInstance, {\n MRT_ToggleSearchButton,\n MRT_ToggleFiltersButton,\n MRT_ShowHideColumnsButton,\n MRT_ToggleDensePaddingButton,\n MRT_FullScreenToggleButton,\n })}\n </>\n );\n }\n\n return (\n <Box\n sx={{\n display: 'flex',\n gap: '0.5rem',\n alignItems: 'center',\n p: '0 0.5rem',\n }}\n >\n {!disableGlobalFilter && <MRT_ToggleSearchButton />}\n {!disableFilters && <MRT_ToggleFiltersButton />}\n {!disableColumnHiding && <MRT_ShowHideColumnsButton />}\n {!disableDensePaddingToggle && <MRT_ToggleDensePaddingButton />}\n {!disableFullScreenToggle && <MRT_FullScreenToggleButton />}\n </Box>\n );\n};\n","import React, { ChangeEvent, FC } from 'react';\nimport { TablePagination } from '@mui/material';\nimport { useMRT } from '../useMRT';\n\ninterface Props {}\n\nexport const MRT_TablePagination: FC<Props> = () => {\n const { tableInstance, muiTablePaginationProps } = useMRT();\n\n const tablePaginationProps =\n muiTablePaginationProps instanceof Function\n ? muiTablePaginationProps(tableInstance)\n : muiTablePaginationProps;\n\n const handleChangeRowsPerPage = (event: ChangeEvent<HTMLInputElement>) => {\n tableInstance.setPageSize(+event.target.value);\n tableInstance.gotoPage(0);\n };\n\n return (\n <TablePagination\n component={'div'}\n count={tableInstance.rows.length}\n onPageChange={(_, newPage) => tableInstance.gotoPage(newPage)}\n onRowsPerPageChange={handleChangeRowsPerPage}\n page={tableInstance.state.pageIndex}\n rowsPerPage={tableInstance.state.pageSize}\n SelectProps={{ style: { margin: '0 1rem 0 1ch' } }}\n showFirstButton={\n tableInstance.rows.length / tableInstance.state.pageSize > 2\n }\n showLastButton={\n tableInstance.rows.length / tableInstance.state.pageSize > 2\n }\n {...tablePaginationProps}\n sx={{\n m: '0 0.5rem',\n position: 'relative',\n zIndex: 2,\n ...tablePaginationProps?.sx,\n }}\n />\n );\n};\n","import React, { FC, Fragment } from 'react';\nimport { Alert, Box, Chip, Collapse, useMediaQuery } from '@mui/material';\nimport { useMRT } from '../useMRT';\n\ninterface Props {}\n\nexport const MRT_ToolbarAlertBanner: FC<Props> = () => {\n const {\n muiTableToolbarAlertBannerProps,\n tableInstance,\n positionToolbarAlertBanner,\n positionToolbarActions,\n localization,\n renderToolbarCustomActions,\n } = useMRT();\n\n const isMobile = useMediaQuery('(max-width:720px)');\n\n const alertProps =\n muiTableToolbarAlertBannerProps instanceof Function\n ? muiTableToolbarAlertBannerProps(tableInstance)\n : muiTableToolbarAlertBannerProps;\n\n const selectMessage =\n tableInstance.selectedFlatRows.length > 0\n ? localization.selectedCountOfRowCountRowsSelected\n ?.replace(\n '{selectedCount}',\n tableInstance.selectedFlatRows.length.toString(),\n )\n ?.replace('{rowCount}', tableInstance.flatRows.length.toString())\n : null;\n\n const groupedByMessage =\n tableInstance.state.groupBy.length > 0 ? (\n <span>\n {localization.groupedBy}{' '}\n {tableInstance.state.groupBy.map((columnId, index) => (\n <Fragment key={`${index}-${columnId}`}>\n {index > 0 ? localization.thenBy : ''}\n <Chip\n color=\"secondary\"\n label={\n tableInstance.allColumns.find(\n (column) => column.id === columnId,\n )?.Header\n }\n onDelete={() => tableInstance.toggleGroupBy(columnId, false)}\n />\n </Fragment>\n ))}\n </span>\n ) : null;\n\n const displayAbsolute = !(\n isMobile ||\n (positionToolbarAlertBanner === 'bottom' &&\n positionToolbarActions === 'bottom') ||\n (positionToolbarAlertBanner === 'top' && !!renderToolbarCustomActions)\n );\n\n return (\n <Collapse\n in={!!selectMessage || !!groupedByMessage}\n timeout={displayAbsolute ? 0 : 200}\n >\n <Alert\n color=\"info\"\n icon={false}\n sx={{\n borderRadius: 0,\n fontSize: '1rem',\n left: 0,\n p: 0,\n position: displayAbsolute ? 'absolute' : 'relative',\n right: 0,\n minHeight: '3.5rem',\n top: 0,\n width: '100%',\n zIndex: 2,\n ...alertProps?.sx,\n }}\n {...alertProps}\n >\n <Box sx={{ p: '0.5rem 1rem' }}>\n {selectMessage}\n {groupedByMessage}\n </Box>\n </Alert>\n </Collapse>\n );\n};\n","import React, { FC } from 'react';\nimport { Collapse, LinearProgress } from '@mui/material';\nimport { useMRT } from '../useMRT';\n\ninterface Props {}\n\nexport const MRT_LinearProgressBar: FC<Props> = () => {\n const { muiLinearProgressProps, isFetching, isLoading, tableInstance } =\n useMRT();\n\n const linearProgressProps =\n muiLinearProgressProps instanceof Function\n ? muiLinearProgressProps(tableInstance)\n : muiLinearProgressProps;\n\n return (\n <Collapse in={isFetching || isLoading} unmountOnExit>\n <LinearProgress\n aria-label=\"Loading\"\n aria-busy=\"true\"\n {...linearProgressProps}\n />\n </Collapse>\n );\n};\n","import React, { FC } from 'react';\nimport { alpha, Box, Theme, Toolbar } from '@mui/material';\nimport { MRT_SearchTextField } from '../inputs/MRT_SearchTextField';\nimport { useMRT } from '../useMRT';\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 '..';\n\nexport const commonToolbarStyles = (\n theme: Theme,\n tableInstance: MRT_TableInstance,\n) => ({\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 display: 'grid',\n opacity: tableInstance.state.fullScreen ? 0.95 : 1,\n p: '0 !important',\n width: '100%',\n zIndex: 1,\n});\n\ninterface Props {}\n\nexport const MRT_ToolbarTop: FC<Props> = () => {\n const {\n disableGlobalFilter,\n hideToolbarInternalActions,\n manualPagination,\n muiTableToolbarTopProps,\n positionPagination,\n positionToolbarActions,\n positionToolbarAlertBanner,\n renderToolbarCustomActions,\n tableInstance,\n } = useMRT();\n\n const toolbarProps =\n muiTableToolbarTopProps instanceof Function\n ? muiTableToolbarTopProps(tableInstance)\n : muiTableToolbarTopProps;\n\n return (\n <Toolbar\n variant=\"dense\"\n {...toolbarProps}\n sx={(theme) =>\n ({\n position: tableInstance.state.fullScreen ? 'sticky' : undefined,\n top: tableInstance.state.fullScreen ? '0' : undefined,\n ...commonToolbarStyles(theme, tableInstance),\n ...toolbarProps?.sx,\n } as any)\n }\n >\n {positionToolbarAlertBanner === 'top' && <MRT_ToolbarAlertBanner />}\n <Box\n sx={{\n p: '0.5rem',\n display: 'flex',\n justifyContent: 'space-between',\n }}\n >\n {renderToolbarCustomActions?.(tableInstance) ?? <span />}\n <Box\n sx={{\n display: 'flex',\n gap: '0.5rem',\n position: 'relative',\n zIndex: 3,\n }}\n >\n {!disableGlobalFilter && <MRT_SearchTextField />}\n {!hideToolbarInternalActions && positionToolbarActions === 'top' && (\n <MRT_ToolbarInternalButtons />\n )}\n </Box>\n </Box>\n <div>\n {!manualPagination &&\n ['top', 'both'].includes(positionPagination ?? '') && (\n <MRT_TablePagination />\n )}\n </div>\n <MRT_LinearProgressBar />\n </Toolbar>\n );\n};\n","import React, { FC } from 'react';\nimport { Box, Toolbar } from '@mui/material';\nimport { useMRT } from '../useMRT';\nimport { MRT_TablePagination } from './MRT_TablePagination';\nimport { MRT_ToolbarInternalButtons } from './MRT_ToolbarInternalButtons';\nimport { MRT_ToolbarAlertBanner } from './MRT_ToolbarAlertBanner';\nimport { MRT_LinearProgressBar } from './MRT_LinearProgressBar';\nimport { commonToolbarStyles } from './MRT_ToolbarTop';\n\ninterface Props {}\n\nexport const MRT_ToolbarBottom: FC<Props> = () => {\n const {\n hideToolbarInternalActions,\n manualPagination,\n muiTableToolbarBottomProps,\n positionPagination,\n positionToolbarActions,\n positionToolbarAlertBanner,\n tableInstance,\n } = useMRT();\n\n const toolbarProps =\n muiTableToolbarBottomProps instanceof Function\n ? muiTableToolbarBottomProps(tableInstance)\n : muiTableToolbarBottomProps;\n\n return (\n <Toolbar\n variant=\"dense\"\n {...toolbarProps}\n sx={(theme) =>\n ({\n bottom: tableInstance.state.fullScreen ? '0' : undefined,\n position: tableInstance.state.fullScreen ? 'fixed' : undefined,\n ...commonToolbarStyles(theme, tableInstance),\n ...toolbarProps?.sx,\n } as any)\n }\n >\n <MRT_LinearProgressBar />\n <Box\n sx={{ display: 'flex', justifyContent: 'space-between', width: '100%' }}\n >\n {!hideToolbarInternalActions && positionToolbarActions === 'bottom' ? (\n <MRT_ToolbarInternalButtons />\n ) : (\n <span />\n )}\n {positionToolbarAlertBanner === 'bottom' && <MRT_ToolbarAlertBanner />}\n {!manualPagination &&\n ['bottom', 'both'].includes(positionPagination ?? '') && (\n <MRT_TablePagination />\n )}\n </Box>\n </Toolbar>\n );\n};\n","import React, { FC, useEffect } from 'react';\nimport { Paper, TableContainer, Box } from '@mui/material';\nimport { useMRT } from '../useMRT';\nimport { MRT_Table } from './MRT_Table';\nimport { MRT_ToolbarTop } from '../toolbar/MRT_ToolbarTop';\nimport { MRT_ToolbarBottom } from '../toolbar/MRT_ToolbarBottom';\n\ninterface Props {}\n\nexport const MRT_TableContainer: FC<Props> = () => {\n const {\n hideToolbarBottom,\n hideToolbarTop,\n muiTableContainerProps,\n tableInstance,\n } = useMRT();\n const fullScreen = tableInstance.state.fullScreen;\n\n useEffect(() => {\n if (typeof window !== 'undefined') {\n if (fullScreen) {\n document.body.style.overflow = 'hidden';\n } else {\n document.body.style.overflow = 'auto';\n }\n }\n }, [fullScreen]);\n\n const tableContainerProps =\n muiTableContainerProps instanceof Function\n ? muiTableContainerProps(tableInstance)\n : muiTableContainerProps;\n\n return (\n <TableContainer\n component={Paper}\n {...tableContainerProps}\n sx={{\n bottom: fullScreen ? '0' : undefined,\n height: fullScreen ? '100%' : undefined,\n left: fullScreen ? '0' : undefined,\n m: fullScreen ? '0' : undefined,\n overflowY: !fullScreen ? 'hidden' : undefined,\n position: fullScreen ? 'fixed' : undefined,\n right: fullScreen ? '0' : undefined,\n top: fullScreen ? '0' : undefined,\n transition: 'all 0.2s ease-in-out',\n width: fullScreen ? '100vw' : undefined,\n zIndex: fullScreen ? 1200 : 1,\n ...tableContainerProps?.sx,\n }}\n >\n {!hideToolbarTop && <MRT_ToolbarTop />}\n <Box\n sx={{\n maxWidth: '100%',\n overflowX: 'auto',\n }}\n >\n <MRT_Table />\n </Box>\n {!hideToolbarBottom && <MRT_ToolbarBottom />}\n </TableContainer>\n );\n};\n","export interface MRT_Localization {\n actions: string;\n cancel: string;\n changeFilterMode: 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 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 groupByColumn: string;\n groupedBy: string;\n hideAll: string;\n hideColumn: string;\n rowActions: string;\n save: string;\n search: string;\n selectedCountOfRowCountRowsSelected: string;\n showAll: string;\n showHideColumns: string;\n showAllColumns: string;\n showHideFilters: string;\n showHideSearch: string;\n sortByColumnAsc: string;\n sortByColumnDesc: string;\n thenBy: string;\n toggleDensePadding: string;\n toggleFullScreen: string;\n toggleSelectAll: string;\n toggleSelectRow: string;\n ungroupByColumn: string;\n}\n\nexport const MRT_DefaultLocalization_EN: MRT_Localization = {\n actions: 'Actions',\n cancel: 'Cancel',\n changeFilterMode: 'Change filter 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 filterByColumn: 'Filter by {column}',\n filterContains: 'Contains Exact',\n filterEmpty: 'Empty',\n filterEndsWith: 'Ends With',\n filterEquals: 'Equals',\n filterFuzzy: 'Fuzzy Match',\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 groupByColumn: 'Group by {column}',\n groupedBy: 'Grouped by ',\n hideAll: 'Hide all',\n hideColumn: 'Hide {column} column',\n rowActions: 'Row Actions',\n save: 'Save',\n search: 'Search',\n selectedCountOfRowCountRowsSelected:\n '{selectedCount} of {rowCount} row(s) selected',\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 thenBy: ', then by ',\n toggleDensePadding: 'Toggle dense padding',\n toggleFullScreen: 'Toggle full screen',\n toggleSelectAll: 'Toggle select all',\n toggleSelectRow: 'Toggle select row',\n ungroupByColumn: 'Ungroup by {column}',\n};\n","import ArrowRightIcon from '@mui/icons-material/ArrowRight';\nimport CancelIcon from '@mui/icons-material/Cancel';\nimport CheckBoxIcon from '@mui/icons-material/CheckBox';\nimport ClearAllIcon from '@mui/icons-material/ClearAll';\nimport CloseIcon from '@mui/icons-material/Close';\nimport ContentCopyIcon from '@mui/icons-material/ContentCopy';\nimport DensityMediumIcon from '@mui/icons-material/DensityMedium';\nimport DensitySmallIcon from '@mui/icons-material/DensitySmall';\nimport DoubleArrowDownIcon from '@mui/icons-material/KeyboardDoubleArrowDown';\nimport DynamicFeedIcon from '@mui/icons-material/DynamicFeed';\nimport EditIcon from '@mui/icons-material/Edit';\nimport ExpandLessIcon from '@mui/icons-material/ExpandLess';\nimport ExpandMoreIcon from '@mui/icons-material/ExpandMore';\nimport FilterAltIcon from '@mui/icons-material/FilterAlt';\nimport FilterAltOff from '@mui/icons-material/FilterAltOff';\nimport FilterListIcon from '@mui/icons-material/FilterList';\nimport FilterListOffIcon from '@mui/icons-material/FilterListOff';\nimport FullscreenExitIcon from '@mui/icons-material/FullscreenExit';\nimport FullscreenIcon from '@mui/icons-material/Fullscreen';\nimport MoreHorizIcon from '@mui/icons-material/MoreHoriz';\nimport MoreVertIcon from '@mui/icons-material/MoreVert';\nimport SaveIcon from '@mui/icons-material/Save';\nimport SearchIcon from '@mui/icons-material/Search';\nimport SearchOffIcon from '@mui/icons-material/SearchOff';\nimport SortIcon from '@mui/icons-material/Sort';\nimport ViewColumnIcon from '@mui/icons-material/ViewColumn';\nimport VisibilityOffIcon from '@mui/icons-material/VisibilityOff';\n\nexport interface MRT_Icons {\n ArrowRightIcon: any;\n CancelIcon: any;\n CheckBoxIcon: any;\n ClearAllIcon: any;\n CloseIcon: any;\n ContentCopyIcon: any;\n DensityMediumIcon: any;\n DensitySmallIcon: any;\n DoubleArrowDownIcon: any;\n DynamicFeedIcon: any;\n EditIcon: any;\n ExpandLessIcon: any;\n ExpandMoreIcon: any;\n FilterAltIcon: any;\n FilterAltOff: any;\n FilterListIcon: any;\n FilterListOffIcon: any;\n FullscreenExitIcon: any;\n FullscreenIcon: any;\n MoreHorizIcon: any;\n MoreVertIcon: 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,\n CancelIcon,\n CheckBoxIcon,\n ClearAllIcon,\n CloseIcon,\n ContentCopyIcon,\n DensityMediumIcon,\n DensitySmallIcon,\n DoubleArrowDownIcon,\n DynamicFeedIcon,\n EditIcon,\n ExpandLessIcon,\n ExpandMoreIcon,\n FilterAltIcon,\n FilterAltOff,\n FilterListIcon,\n FilterListOffIcon,\n FullscreenExitIcon,\n FullscreenIcon,\n MoreHorizIcon,\n MoreVertIcon,\n SaveIcon,\n SearchIcon,\n SearchOffIcon,\n SortIcon,\n ViewColumnIcon,\n VisibilityOffIcon,\n};\n","import React, { ChangeEvent, FC, MouseEvent, ReactNode } from 'react';\nimport {\n AlertProps,\n CheckboxProps,\n IconButtonProps,\n LinearProgressProps,\n SkeletonProps,\n TableBodyProps,\n TableCellProps,\n TableContainerProps,\n TableFooterProps,\n TableHeadProps,\n TablePaginationProps,\n TableProps,\n TableRowProps,\n TextFieldProps,\n ToolbarProps,\n} from '@mui/material';\nimport {\n Cell,\n Column,\n ColumnInstance,\n FilterType,\n ColumnInterface,\n HeaderGroup,\n Row,\n TableInstance,\n TableOptions,\n TableState,\n UseColumnOrderInstanceProps,\n UseColumnOrderState,\n UseExpandedInstanceProps,\n UseExpandedOptions,\n UseExpandedRowProps,\n UseExpandedState,\n UseFiltersColumnOptions,\n UseFiltersColumnProps,\n UseFiltersInstanceProps,\n UseFiltersOptions,\n UseFiltersState,\n UseGlobalFiltersColumnOptions,\n UseGlobalFiltersInstanceProps,\n UseGlobalFiltersOptions,\n UseGlobalFiltersState,\n UseGroupByCellProps,\n UseGroupByColumnOptions,\n UseGroupByColumnProps,\n UseGroupByInstanceProps,\n UseGroupByOptions,\n UseGroupByRowProps,\n UseGroupByState,\n UsePaginationInstanceProps,\n UsePaginationOptions,\n UsePaginationState,\n UseResizeColumnsColumnOptions,\n UseResizeColumnsColumnProps,\n UseResizeColumnsOptions,\n UseResizeColumnsState,\n UseRowSelectInstanceProps,\n UseRowSelectOptions,\n UseRowSelectRowProps,\n UseRowSelectState,\n UseRowStateCellProps,\n UseRowStateInstanceProps,\n UseRowStateOptions,\n UseRowStateRowProps,\n UseRowStateState,\n UseSortByColumnOptions,\n UseSortByColumnProps,\n UseSortByInstanceProps,\n UseSortByOptions,\n UseSortByState,\n UseTableHeaderGroupProps,\n UseTableInstanceProps,\n UseTableOptions,\n} from 'react-table';\nimport { MaterialReactTableProvider } from './useMRT';\nimport { MRT_TableContainer } from './table/MRT_TableContainer';\nimport { MRT_Localization, MRT_DefaultLocalization_EN } from './localization';\nimport { MRT_Default_Icons, MRT_Icons } from './icons';\nimport { MRT_FILTER_TYPE } from './enums';\nimport { defaultFilterFNs } from './filtersFNs';\n\nexport type MRT_TableOptions<D extends {} = {}> = TableOptions<D> &\n UseExpandedOptions<D> &\n UseFiltersOptions<D> &\n UseGlobalFiltersOptions<D> &\n UseGroupByOptions<D> &\n UsePaginationOptions<D> &\n UseResizeColumnsOptions<D> &\n UseRowSelectOptions<D> &\n UseRowStateOptions<D> &\n UseSortByOptions<D> & {\n columns: MRT_ColumnInterface[];\n data: D[];\n initialState?: Partial<MRT_TableState>;\n };\n\nexport type MRT_TableInstance<D extends {} = {}> = TableInstance<D> &\n UseTableInstanceProps<D> &\n UseColumnOrderInstanceProps<D> &\n UseExpandedInstanceProps<D> &\n UseFiltersInstanceProps<D> &\n UseGlobalFiltersInstanceProps<D> &\n UseGroupByInstanceProps<D> &\n UsePaginationInstanceProps<D> &\n UseRowSelectInstanceProps<D> &\n UseRowStateInstanceProps<D> &\n UseSortByInstanceProps<D> & {\n columns: (Column<D> & MRT_ColumnInstance<D>)[];\n footerGroups: MRT_HeaderGroup<D>[];\n getToggleAllRowsExpandedProps: () => void;\n headerGroups: MRT_HeaderGroup<D>[];\n page: MRT_Row<D>[];\n resetResizing: () => void;\n rows: MRT_Row<D>[];\n state: MRT_TableState<D>;\n };\n\nexport type MRT_ColumnInterface<D extends {} = {}> = ColumnInterface<D> &\n UseFiltersColumnOptions<D> &\n UseGlobalFiltersColumnOptions<D> &\n UseGroupByColumnOptions<D> &\n UseResizeColumnsColumnOptions<D> &\n UseSortByColumnOptions<D> & {\n Edit?: ({\n cell,\n onChange,\n }: {\n cell: MRT_Cell<D>;\n onChange?: (event: ChangeEvent<HTMLInputElement>) => void;\n }) => ReactNode;\n Filter?: ({ column }: { column: MRT_HeaderGroup<D> }) => ReactNode;\n Footer?: string;\n Header?: string;\n accessor?: string;\n columns?: MRT_ColumnInterface<D>[];\n disableClickToCopy?: boolean;\n disableColumnActions?: boolean;\n disableColumnHiding?: boolean;\n disableEditing?: boolean;\n disableFilters?: boolean;\n filter?: MRT_FilterType | string | FilterType<D>;\n filterSelectOptions?: (string | { text: string; value: string })[];\n filterTypes?: (MRT_FILTER_TYPE | string)[];\n muiTableBodyCellEditTextFieldProps?:\n | TextFieldProps\n | ((cell: MRT_Cell<D>) => TextFieldProps);\n muiTableBodyCellProps?:\n | TableCellProps\n | ((cell: MRT_Cell<D>) => TableCellProps);\n muiTableFooterCellProps?:\n | TableCellProps\n | ((column: Column<D>) => TableCellProps);\n muiTableHeadCellFilterTextFieldProps?:\n | TextFieldProps\n | ((column: Column<D>) => TextFieldProps);\n muiTableHeadCellColumnActionsButtonProps?:\n | IconButtonProps\n | ((column: Column<D>) => IconButtonProps);\n muiTableHeadCellProps?:\n | TableCellProps\n | ((column: Column<D>) => TableCellProps);\n onCellEditChange?: (\n event: ChangeEvent<HTMLInputElement>,\n cell: MRT_Cell<D>,\n ) => void;\n onFilterChange?: (\n event: ChangeEvent<HTMLInputElement>,\n filterValue: any,\n ) => void;\n };\n\nexport type MRT_ColumnInstance<D extends {} = {}> = ColumnInstance<D> &\n UseFiltersColumnProps<D> &\n UseGroupByColumnProps<D> &\n UseResizeColumnsColumnProps<D> &\n UseSortByColumnProps<D> &\n MRT_ColumnInterface<D> & {\n columns?: MRT_ColumnInstance<D>[];\n };\n\nexport type MRT_HeaderGroup<D extends {} = {}> = HeaderGroup<D> &\n MRT_ColumnInstance<D> &\n UseTableHeaderGroupProps<D> & {\n headers: MRT_HeaderGroup<D>[];\n };\n\nexport type MRT_Row<D extends {} = {}> = Row<D> &\n UseExpandedRowProps<D> &\n UseGroupByRowProps<D> &\n UseRowSelectRowProps<D> &\n UseRowStateRowProps<D> & {\n cells: MRT_Cell<D>[];\n };\n\nexport type MRT_Cell<D extends {} = {}, _V = any> = Cell<D> &\n UseGroupByCellProps<D> &\n UseRowStateCellProps<D> & {\n column: MRT_ColumnInstance<D>;\n };\n\nexport type MRT_FilterType = MRT_FILTER_TYPE | Function;\n\nexport type MRT_TableState<D extends {} = {}> = TableState<D> &\n UseColumnOrderState<D> &\n UseExpandedState<D> &\n UseFiltersState<D> &\n UseGlobalFiltersState<D> &\n UseGroupByState<D> &\n UsePaginationState<D> &\n UseResizeColumnsState<D> &\n UseRowSelectState<D> &\n UseRowStateState<D> &\n UseSortByState<D> & {\n currentEditingRow: MRT_Row<D> | null;\n currentFilterTypes: { [key: string]: MRT_FilterType };\n densePadding: boolean;\n fullScreen: boolean;\n showFilters: boolean;\n showSearch: boolean;\n };\n\nexport type MaterialReactTableProps<D extends {} = {}> = UseTableOptions<D> &\n UseExpandedOptions<D> &\n UseFiltersOptions<D> &\n UseGlobalFiltersOptions<D> &\n UseGroupByOptions<D> &\n UsePaginationOptions<D> &\n UseResizeColumnsOptions<D> &\n UseRowSelectOptions<D> &\n UseRowStateOptions<D> &\n UseSortByOptions<D> &\n MRT_TableOptions<D> & {\n disableColumnActions?: boolean;\n disableColumnHiding?: boolean;\n disableDensePaddingToggle?: boolean;\n disableExpandAll?: boolean;\n disableFullScreenToggle?: boolean;\n disableSelectAll?: boolean;\n disableSubRowTree?: boolean;\n enableClickToCopy?: boolean;\n enableColumnGrouping?: boolean;\n enableColumnResizing?: boolean;\n enableRowActions?: boolean;\n enableRowEditing?: boolean;\n enableRowNumbers?: boolean;\n enableSelection?: boolean;\n filterTypes?: { [key in MRT_FILTER_TYPE]: any };\n hideTableFooter?: boolean;\n hideTableHead?: boolean;\n hideToolbarBottom?: boolean;\n hideToolbarInternalActions?: boolean;\n hideToolbarTop?: boolean;\n icons?: Partial<MRT_Icons>;\n idPrefix?: string;\n isFetching?: boolean;\n isLoading?: boolean;\n localization?: Partial<MRT_Localization>;\n muiLinearProgressProps?:\n | LinearProgressProps\n | ((tableInstance: MRT_TableInstance) => LinearProgressProps);\n muiSearchTextFieldProps?: TextFieldProps;\n muiSelectCheckboxProps?:\n | CheckboxProps\n | ((\n isSelectAll?: boolean,\n row?: MRT_Row<D>,\n tableInstance?: MRT_TableInstance<D>,\n ) => CheckboxProps);\n muiTableBodyCellEditTextFieldProps?:\n | TextFieldProps\n | ((cell?: MRT_Cell<D>) => TextFieldProps);\n muiTableBodyCellProps?:\n | TableCellProps\n | ((cell?: MRT_Cell<D>) => TableCellProps);\n muiTableBodyCellSkeletonProps?:\n | SkeletonProps\n | ((cell?: MRT_Cell<D>) => SkeletonProps);\n muiTableBodyProps?:\n | TableBodyProps\n | ((tableInstance: MRT_TableInstance<D>) => TableBodyProps);\n muiTableBodyRowProps?: TableRowProps | ((row: Row<D>) => TableRowProps);\n muiTableContainerProps?:\n | TableContainerProps\n | ((tableInstance: MRT_TableInstance<D>) => TableContainerProps);\n muiTableDetailPanelProps?:\n | TableCellProps\n | ((row: Row<D>) => TableCellProps);\n muiTableFooterCellProps?:\n | TableCellProps\n | ((column: Column<D>) => TableCellProps);\n muiTableFooterProps?:\n | TableFooterProps\n | ((tableInstance: MRT_TableInstance<D>) => TableFooterProps);\n muiTableFooterRowProps?:\n | TableRowProps\n | ((footerGroup: MRT_HeaderGroup<D>) => TableRowProps);\n muiTableHeadCellColumnActionsButtonProps?:\n | IconButtonProps\n | ((column: Column<D>) => IconButtonProps);\n muiTableHeadCellFilterTextFieldProps?:\n | TextFieldProps\n | ((column: Column<D>) => TextFieldProps);\n muiTableHeadCellProps?:\n | TableCellProps\n | ((column: Column<D>) => TableCellProps);\n muiTableHeadProps?:\n | TableHeadProps\n | ((tableInstance: MRT_TableInstance<D>) => TableHeadProps);\n muiTableHeadRowProps?:\n | TableRowProps\n | ((row: MRT_HeaderGroup<D>) => TableRowProps);\n muiTablePaginationProps?:\n | Partial<TablePaginationProps>\n | ((\n tableInstance: MRT_TableInstance<D>,\n ) => Partial<TablePaginationProps>);\n muiTableProps?:\n | TableProps\n | ((tableInstance: MRT_TableInstance<D>) => TableProps);\n muiTableToolbarAlertBannerProps?:\n | AlertProps\n | ((tableInstance: MRT_TableInstance<D>) => AlertProps);\n muiTableToolbarBottomProps?:\n | ToolbarProps\n | ((tableInstance: MRT_TableInstance<D>) => ToolbarProps);\n muiTableToolbarTopProps?:\n | ToolbarProps\n | ((tableInstance: MRT_TableInstance<D>) => ToolbarProps);\n onCellClick?: (\n event: MouseEvent<HTMLTableCellElement>,\n cell: MRT_Cell<D>,\n ) => void;\n onColumnHide?: (column: Column<D>, hiddenColumns?: string[]) => void;\n onDetailPanelClick?: (\n event: MouseEvent<HTMLTableCellElement>,\n row: Row<D>,\n ) => void;\n onGlobalFilterChange?: (event: ChangeEvent<HTMLInputElement>) => void;\n onRowClick?: (event: MouseEvent<HTMLTableRowElement>, row: Row<D>) => void;\n onRowEditSubmit?: (row: Row<D>) => Promise<void> | void;\n onRowExpandChange?: (\n event: MouseEvent<HTMLButtonElement>,\n row: Row<D>,\n ) => void;\n onSelectChange?: (\n event: ChangeEvent,\n row: Row<D>,\n selectedRows: Row<D>[],\n ) => void;\n onSelectAllChange?: (event: ChangeEvent, selectedRows: Row<D>[]) => void;\n positionActionsColumn?: 'first' | 'last';\n positionPagination?: 'bottom' | 'top' | 'both';\n positionToolbarActions?: 'bottom' | 'top';\n positionToolbarAlertBanner?: 'bottom' | 'top';\n renderDetailPanel?: (row: Row<D>) => ReactNode;\n renderRowActionMenuItems?: (\n rowData: Row<D>,\n tableInstance: MRT_TableInstance<D>,\n closeMenu: () => void,\n ) => ReactNode[];\n renderRowActions?: (\n row: Row<D>,\n tableInstance: MRT_TableInstance<D>,\n ) => ReactNode;\n renderToolbarCustomActions?: (\n tableInstance: MRT_TableInstance<D>,\n ) => ReactNode;\n renderToolbarInternalActions?: (\n tableInstance: MRT_TableInstance<D>,\n {\n MRT_ToggleSearchButton,\n MRT_ToggleFiltersButton,\n MRT_ShowHideColumnsButton,\n MRT_ToggleDensePaddingButton,\n MRT_FullScreenToggleButton,\n }: {\n MRT_ToggleSearchButton: FC<IconButtonProps>;\n MRT_ToggleFiltersButton: FC<IconButtonProps>;\n MRT_ShowHideColumnsButton: FC<IconButtonProps>;\n MRT_ToggleDensePaddingButton: FC<IconButtonProps>;\n MRT_FullScreenToggleButton: FC<IconButtonProps>;\n },\n ) => ReactNode;\n };\n\nexport default <D extends {} = {}>({\n defaultColumn = { minWidth: 50, maxWidth: 1000 },\n filterTypes,\n globalFilter = 'fuzzy',\n icons,\n localization,\n positionActionsColumn = 'first',\n positionPagination = 'bottom',\n positionToolbarActions = 'top',\n positionToolbarAlertBanner = 'top',\n ...rest\n}: MaterialReactTableProps<D>) => (\n <MaterialReactTableProvider\n //@ts-ignore\n defaultColumn={defaultColumn}\n //@ts-ignore\n filterTypes={{ ...defaultFilterFNs, ...filterTypes }}\n //@ts-ignore\n globalFilter={globalFilter}\n icons={{ ...MRT_Default_Icons, ...icons }}\n localization={{ ...MRT_DefaultLocalization_EN, ...localization }}\n positionActionsColumn={positionActionsColumn}\n positionPagination={positionPagination}\n positionToolbarActions={positionToolbarActions}\n positionToolbarAlertBanner={positionToolbarAlertBanner}\n {...rest}\n >\n <MRT_TableContainer />\n </MaterialReactTableProvider>\n);\n"],"names":["findLowestLevelCols","columns","lowestLevelColumns","currentCols","length","some","col","nextCols","filter","map","flat","every","MaterialReactTableContext","createContext","MaterialReactTableProvider","props","hooks","useFilters","useGlobalFilter","useGroupBy","useSortBy","useExpanded","usePagination","useRowSelect","enableColumnResizing","unshift","useResizeColumns","useFlexLayout","useState","currentEditingRow","setCurrentEditingRow","initialState","densePadding","setDensePadding","fullScreen","setFullScreen","showFilters","setShowFilters","showSearch","setShowSearch","Object","assign","c","accessor","filters","filterSelectOptions","currentFilterTypes","setCurrentFilterTypes","applyFiltersToColumns","useCallback","cols","column","filterTypes","useMemo","data","isLoading","Array","fill","_","tableInstance","useTable","useControlledState","state","idPrefix","Math","random","toString","substring","anyRowsCanExpand","rows","row","canExpand","anyRowsExpanded","isExpanded","React","Provider","value","children","useMRT","useContext","MRT_FILTER_TYPE","fuzzy","columnIds","filterValue","matchSorter","trim","keys","isArray","sorter","rankedItems","autoRemove","val","contains","id","values","toLowerCase","includes","startsWith","endsWith","equals","notEquals","greaterThan","isNaN","lessThan","empty","_filterValue","notEmpty","defaultFilterFNs","commonMenuItemStyles","py","my","alignItems","MRT_FilterTypeMenu","anchorEl","onSelect","setAnchorEl","localization","type","FUZZY","label","filterFuzzy","divider","fn","CONTAINS","filterContains","STARTS_WITH","filterStartsWith","ENDS_WITH","filterEndsWith","EQUALS","filterEquals","NOT_EQUALS","filterNotEquals","GREATER_THAN","filterGreaterThan","LESS_THAN","filterLessThan","EMPTY","filterEmpty","NOT_EMPTY","filterNotEmpty","filterType","handleSelectFilterType","prev","setFilter","Menu","anchorOrigin","vertical","horizontal","onClose","open","MenuListProps","dense","index","MenuItem","key","onClick","selected","sx","MRT_FilterTextField","icons","FilterListIcon","CloseIcon","muiTableHeadCellFilterTextFieldProps","mTableHeadCellFilterTextFieldProps","Function","mcTableHeadCellFilterTextFieldProps","textFieldProps","setFilterValue","handleChange","useAsyncDebounce","undefined","handleFilterMenuOpen","event","currentTarget","handleClear","handleClearFilterChip","Filter","filterId","isSelectFilter","filterChipLabel","charAt","toUpperCase","slice","filterPlaceholder","filterByColumn","replace","String","Header","TextField","fullWidth","inputProps","disabled","textOverflow","width","title","helperText","htmlFor","filterMode","name","FormHelperTextProps","fontSize","lineHeight","InputLabelProps","shrink","maxWidth","margin","placeholder","onChange","e","target","stopPropagation","select","variant","InputProps","startAdornment","InputAdornment","position","Tooltip","arrow","changeFilterMode","IconButton","size","height","Chip","onDelete","endAdornment","disableHoverListener","placement","clearFilter","m","p","minWidth","mt","mr","option","text","MRT_ShowHideColumnsMenuItems","isSubMenu","onColumnHide","isParentHeader","allChildColumnsVisible","childColumn","isVisible","switchChecked","handleToggleColumnHidden","forEach","toggleHidden","hiddenColumns","pl","depth","FormControlLabel","componentsProps","typography","marginBottom","checked","control","Switch","disableColumnHiding","i","MRT_ShowHideColumnsMenu","hideAllColumns","Box","display","justifyContent","pt","Button","getToggleHideAllColumnsProps","indeterminate","hideAll","toggleHideAllColumns","showAll","Divider","commonListItemStyles","MRT_ColumnActionMenu","disableFilters","disableSortBy","enableColumnGrouping","ArrowRightIcon","ClearAllIcon","ViewColumnIcon","DynamicFeedIcon","FilterListOffIcon","SortIcon","VisibilityOffIcon","filterMenuAnchorEl","setFilterMenuAnchorEl","showHideColumnsMenuAnchorEl","setShowHideColumnsMenuAnchorEl","handleClearSort","clearSortBy","handleSortAsc","toggleSortBy","handleSortDesc","handleHideColumn","handleGroupByColumn","toggleGroupBy","handleClearFilter","handleFilterByColumn","setTimeout","document","getElementById","focus","handleShowAllColumns","handleOpenFilterModeMenu","handleOpenShowHideColumnsMenu","canSort","isSorted","ListItemIcon","clearSort","isSortedDesc","sortByColumnAsc","style","transform","sortByColumnDesc","canFilter","onMouseEnter","canGroupBy","isGrouped","hideColumn","showAllColumns","MRT_ToggleColumnActionMenuButton","MoreVertIcon","muiTableHeadCellColumnActionsButtonProps","handleClick","preventDefault","mTableHeadCellColumnActionsButtonProps","mcTableHeadCellColumnActionsButtonProps","iconButtonProps","enterDelay","enterNextDelay","columnActions","opacity","transition","commonTableHeadCellStyles","widths","fontWeight","verticalAlign","MRT_TableHeadCell","disableColumnActions","FilterAltIcon","FilterAltOff","muiTableHeadCellProps","mTableHeadCellProps","mcTableHeadCellProps","tableCellProps","getHeaderProps","sortTooltip","filterTooltip","filteringByColumn","showHideFilters","columnHeader","render","TableCell","align","getSortByToggleProps","flexWrap","whiteSpace","TableSortLabel","active","direction","disableRipple","backgroundColor","flexItem","orientation","onDoubleClick","resetResizing","getResizerProps","borderRightWidth","borderRadius","maxHeight","Collapse","MRT_EditCellTextField","cell","muiTableBodyCellEditTextFieldProps","onCellEditChange","mTableBodyCellEditTextFieldProps","mcTableBodyCellEditTextFieldProps","disableEditing","Edit","MRT_CopyButton","copied","setCopied","handleCopy","navigator","clipboard","writeText","copiedToClipboard","clickToCopy","color","letterSpacing","fontFamily","textTransform","textAlign","commonTableBodyCellStyles","commonTableBodyButtonCellStyles","MRT_TableBodyCell","enableClickToCopy","muiTableBodyCellProps","muiTableBodyCellSkeletonProps","onCellClick","mTableCellBodyProps","mcTableCellBodyProps","getCellProps","Skeleton","animation","isPlaceholder","isAggregated","subRows","disableClickToCopy","MRT_SelectCheckbox","selectAll","muiSelectCheckboxProps","onSelectChange","onSelectAllChange","handleSelectChange","getToggleAllRowsSelectedProps","getToggleRowSelectedProps","selectedFlatRows","selectedRow","mTableBodyRowSelectCheckboxProps","rtSelectCheckboxProps","checkboxProps","toggleSelectAll","toggleSelectRow","Checkbox","MRT_ExpandAllButton","DoubleArrowDownIcon","getToggleAllRowsExpandedProps","expandAll","isAllRowsExpanded","MRT_TableSpacerCell","MRT_TableHeadCellActions","actions","MRT_TableHeadRow","headerGroup","disableExpandAll","disableSelectAll","enableRowActions","enableRowEditing","enableRowNumbers","enableSelection","muiTableHeadRowProps","positionActionsColumn","renderDetailPanel","headers","h","mTableHeadRowProps","tableRowProps","getHeaderGroupProps","TableRow","expandedDepth","MRT_TableHead","muiTableHeadProps","tableHeadProps","TableHead","headerGroups","MRT_TableDetailPanel","muiTableBodyRowProps","muiTableDetailPanelProps","onDetailPanelClick","colSpan","visibleColumns","borderBottom","pb","MRT_ExpandButton","ExpandMoreIcon","onRowExpandChange","handleToggleExpand","getToggleRowExpandedProps","expand","MRT_RowActionMenu","handleEdit","EditIcon","renderRowActionMenuItems","edit","MRT_EditActionButtons","CancelIcon","SaveIcon","onRowEditSubmit","handleCancel","original","handleSave","gap","cancel","save","commonIconButtonStyles","marginRight","MRT_ToggleRowActionMenuButton","MoreHorizIcon","renderRowActions","handleOpenRowActionMenu","rowActions","MRT_TableBodyRow","onRowClick","mTableBodyRowProps","getRowProps","hover","isSelected","cells","MRT_TableBody","muiTableBodyProps","manualPagination","page","mTableBodyProps","tableBodyProps","getTableBodyProps","TableBody","prepareRow","MRT_TableFooterCell","muiTableFooterCellProps","mTableFooterCellProps","mcTableFooterCellProps","getFooterProps","MRT_TableFooterRow","footerGroup","muiTableFooterRowProps","Footer","mTableFooterRowProps","getFooterGroupProps","MRT_TableFooter","muiTableFooterProps","tableFooterProps","TableFooter","footerGroups","MRT_Table","muiTableProps","hideTableHead","hideTableFooter","mTableProps","tableProps","getTableProps","Table","MRT_SearchTextField","SearchIcon","muiSearchTextFieldProps","onGlobalFilterChange","searchValue","setSearchValue","setGlobalFilter","search","clearSearch","justifySelf","MRT_FullScreenToggleButton","rest","FullscreenExitIcon","FullscreenIcon","toggleFullScreen","MRT_ShowHideColumnsButton","showHideColumns","MRT_ToggleDensePaddingButton","DensityMediumIcon","DensitySmallIcon","toggleDensePadding","MRT_ToggleFiltersButton","MRT_ToggleSearchButton","SearchOffIcon","handleToggleSearch","showHideSearch","MRT_ToolbarInternalButtons","disableDensePaddingToggle","disableGlobalFilter","disableFullScreenToggle","renderToolbarInternalActions","MRT_TablePagination","muiTablePaginationProps","tablePaginationProps","handleChangeRowsPerPage","setPageSize","gotoPage","TablePagination","component","count","onPageChange","newPage","onRowsPerPageChange","pageIndex","rowsPerPage","pageSize","SelectProps","showFirstButton","showLastButton","zIndex","MRT_ToolbarAlertBanner","muiTableToolbarAlertBannerProps","positionToolbarAlertBanner","positionToolbarActions","renderToolbarCustomActions","isMobile","useMediaQuery","alertProps","selectMessage","selectedCountOfRowCountRowsSelected","flatRows","groupedByMessage","groupBy","groupedBy","columnId","Fragment","thenBy","allColumns","find","displayAbsolute","timeout","Alert","icon","left","right","minHeight","top","MRT_LinearProgressBar","muiLinearProgressProps","isFetching","linearProgressProps","unmountOnExit","LinearProgress","commonToolbarStyles","theme","palette","background","backgroundImage","alpha","common","white","MRT_ToolbarTop","hideToolbarInternalActions","muiTableToolbarTopProps","positionPagination","toolbarProps","Toolbar","MRT_ToolbarBottom","muiTableToolbarBottomProps","bottom","MRT_TableContainer","hideToolbarBottom","hideToolbarTop","muiTableContainerProps","useEffect","window","body","overflow","tableContainerProps","TableContainer","Paper","overflowY","overflowX","MRT_DefaultLocalization_EN","groupByColumn","ungroupByColumn","MRT_Default_Icons","CheckBoxIcon","ContentCopyIcon","ExpandLessIcon","defaultColumn","globalFilter"],"mappings":"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"}
1
+ {"version":3,"file":"material-react-table.esm.js","sources":["../src/localization.ts","../src/icons.ts","../src/buttons/MRT_ExpandAllButton.tsx","../src/buttons/MRT_ExpandButton.tsx","../src/enums.ts","../src/filtersFNs.ts","../src/menus/MRT_FilterTypeMenu.tsx","../src/menus/MRT_ShowHideColumnsMenuItems.tsx","../src/menus/MRT_ShowHideColumnsMenu.tsx","../src/menus/MRT_ColumnActionMenu.tsx","../src/menus/MRT_RowActionMenu.tsx","../src/buttons/MRT_EditActionButtons.tsx","../src/buttons/MRT_ToggleRowActionMenuButton.tsx","../src/inputs/MRT_SelectCheckbox.tsx","../src/inputs/MRT_SearchTextField.tsx","../src/buttons/MRT_FullScreenToggleButton.tsx","../src/buttons/MRT_ShowHideColumnsButton.tsx","../src/buttons/MRT_ToggleDensePaddingButton.tsx","../src/buttons/MRT_ToggleFiltersButton.tsx","../src/buttons/MRT_ToggleSearchButton.tsx","../src/toolbar/MRT_ToolbarInternalButtons.tsx","../src/toolbar/MRT_TablePagination.tsx","../src/toolbar/MRT_ToolbarAlertBanner.tsx","../src/toolbar/MRT_LinearProgressBar.tsx","../src/toolbar/MRT_ToolbarTop.tsx","../src/toolbar/MRT_ToolbarBottom.tsx","../src/inputs/MRT_FilterTextField.tsx","../src/buttons/MRT_ToggleColumnActionMenuButton.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_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/utils.ts","../src/table/MRT_TableRoot.tsx","../src/MaterialReactTable.tsx"],"sourcesContent":["export interface MRT_Localization {\n actions: 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 filterBestMatch: string;\n filterBestMatchFirst: string;\n filterByColumn: string;\n filterContains: string;\n filterEmpty: string;\n filterEndsWith: string;\n filterEquals: string;\n filterGreaterThan: string;\n filterLessThan: string;\n filterMode: string;\n filterNotEmpty: string;\n filterNotEquals: string;\n filterStartsWith: string;\n filteringByColumn: string;\n groupByColumn: string;\n groupedBy: string;\n hideAll: string;\n hideColumn: string;\n pinToLeft: string;\n pinToRight: string;\n rowActions: 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 thenBy: string;\n toggleDensePadding: string;\n toggleFullScreen: string;\n toggleSelectAll: string;\n toggleSelectRow: string;\n ungroupByColumn: string;\n unpin: string;\n}\n\nexport const MRT_DefaultLocalization_EN: MRT_Localization = {\n actions: 'Actions',\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 filterBestMatch: 'Best Match',\n filterBestMatchFirst: 'Best Match First',\n filterByColumn: 'Filter by {column}',\n filterContains: 'Contains',\n filterEmpty: 'Empty',\n filterEndsWith: 'Ends With',\n filterEquals: 'Equals',\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 groupByColumn: 'Group by {column}',\n groupedBy: 'Grouped by ',\n hideAll: 'Hide all',\n hideColumn: 'Hide {column} column',\n pinToLeft: 'Pin to left',\n pinToRight: 'Pin to right',\n rowActions: 'Row Actions',\n rowNumbers: 'Row Numbers',\n save: 'Save',\n search: 'Search',\n selectedCountOfRowCountRowsSelected:\n '{selectedCount} of {rowCount} row(s) selected',\n\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 thenBy: ', then by ',\n toggleDensePadding: 'Toggle dense padding',\n toggleFullScreen: 'Toggle full screen',\n toggleSelectAll: 'Toggle select all',\n toggleSelectRow: 'Toggle select row',\n ungroupByColumn: 'Ungroup by {column}',\n unpin: 'Unpin',\n};\n","import ArrowRightIcon from '@mui/icons-material/ArrowRight';\nimport CancelIcon from '@mui/icons-material/Cancel';\nimport CheckBoxIcon from '@mui/icons-material/CheckBox';\nimport ClearAllIcon from '@mui/icons-material/ClearAll';\nimport CloseIcon from '@mui/icons-material/Close';\nimport DensityMediumIcon from '@mui/icons-material/DensityMedium';\nimport DensitySmallIcon from '@mui/icons-material/DensitySmall';\nimport DoubleArrowDownIcon from '@mui/icons-material/KeyboardDoubleArrowDown';\nimport DynamicFeedIcon from '@mui/icons-material/DynamicFeed';\nimport EditIcon from '@mui/icons-material/Edit';\nimport ExpandLessIcon from '@mui/icons-material/ExpandLess';\nimport ExpandMoreIcon from '@mui/icons-material/ExpandMore';\nimport FilterAltIcon from '@mui/icons-material/FilterAlt';\nimport FilterAltOff from '@mui/icons-material/FilterAltOff';\nimport FilterListIcon from '@mui/icons-material/FilterList';\nimport FilterListOffIcon from '@mui/icons-material/FilterListOff';\nimport FullscreenExitIcon from '@mui/icons-material/FullscreenExit';\nimport FullscreenIcon from '@mui/icons-material/Fullscreen';\nimport MoreHorizIcon from '@mui/icons-material/MoreHoriz';\nimport MoreVertIcon from '@mui/icons-material/MoreVert';\nimport PushPinIcon from '@mui/icons-material/PushPin';\nimport SaveIcon from '@mui/icons-material/Save';\nimport SearchIcon from '@mui/icons-material/Search';\nimport SearchOffIcon from '@mui/icons-material/SearchOff';\nimport SortIcon from '@mui/icons-material/Sort';\nimport ViewColumnIcon from '@mui/icons-material/ViewColumn';\nimport VisibilityOffIcon from '@mui/icons-material/VisibilityOff';\n\nexport interface MRT_Icons {\n ArrowRightIcon: any;\n CancelIcon: any;\n CheckBoxIcon: any;\n ClearAllIcon: any;\n CloseIcon: any;\n DensityMediumIcon: any;\n DensitySmallIcon: any;\n DoubleArrowDownIcon: any;\n DynamicFeedIcon: any;\n EditIcon: any;\n ExpandLessIcon: any;\n ExpandMoreIcon: any;\n FilterAltIcon: any;\n FilterAltOff: any;\n FilterListIcon: any;\n FilterListOffIcon: any;\n FullscreenExitIcon: any;\n FullscreenIcon: any;\n MoreHorizIcon: any;\n MoreVertIcon: any;\n PushPinIcon: 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,\n CancelIcon,\n CheckBoxIcon,\n ClearAllIcon,\n CloseIcon,\n DensityMediumIcon,\n DensitySmallIcon,\n DoubleArrowDownIcon,\n DynamicFeedIcon,\n EditIcon,\n ExpandLessIcon,\n ExpandMoreIcon,\n FilterAltIcon,\n FilterAltOff,\n FilterListIcon,\n FilterListOffIcon,\n FullscreenExitIcon,\n FullscreenIcon,\n MoreHorizIcon,\n MoreVertIcon,\n PushPinIcon,\n SaveIcon,\n SearchIcon,\n SearchOffIcon,\n SortIcon,\n ViewColumnIcon,\n VisibilityOffIcon,\n};\n","import React, { FC } from 'react';\nimport { IconButton } from '@mui/material';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_ExpandAllButton: FC<Props> = ({ tableInstance }) => {\n const {\n getIsAllRowsExpanded,\n getIsSomeRowsExpanded,\n getState,\n options: {\n icons: { DoubleArrowDownIcon },\n isLoading,\n localization,\n },\n toggleAllRowsExpanded,\n } = tableInstance;\n\n const { isDensePadding } = getState();\n\n return (\n <IconButton\n aria-label={localization.expandAll}\n disabled={isLoading}\n title={localization.expandAll}\n onClick={() => toggleAllRowsExpanded(!getIsAllRowsExpanded())}\n sx={{\n height: isDensePadding ? '1.75rem' : '2.25rem',\n width: isDensePadding ? '1.75rem' : '2.25rem',\n }}\n >\n <DoubleArrowDownIcon\n style={{\n transform: `rotate(${\n getIsAllRowsExpanded() ? -180 : getIsSomeRowsExpanded() ? -90 : 0\n }deg)`,\n transition: 'transform 0.2s',\n }}\n />\n </IconButton>\n );\n};\n","import React, { FC, MouseEvent } from 'react';\nimport { IconButton } from '@mui/material';\nimport type { MRT_Row, MRT_TableInstance } from '..';\n\ninterface Props {\n row: MRT_Row;\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_ExpandButton: FC<Props> = ({ row, tableInstance }) => {\n const {\n getState,\n options: {\n icons: { ExpandMoreIcon },\n localization,\n onRowExpandChange,\n renderDetailPanel,\n },\n } = tableInstance;\n\n const { isDensePadding } = getState();\n\n const handleToggleExpand = (event: MouseEvent<HTMLButtonElement>) => {\n row.toggleExpanded();\n onRowExpandChange?.({ event, row, tableInstance });\n };\n\n return (\n <IconButton\n aria-label={localization.expand}\n disabled={!row.getCanExpand() && !renderDetailPanel}\n title={localization.expand}\n onClick={handleToggleExpand}\n sx={{\n height: isDensePadding ? '1.75rem' : '2.25rem',\n width: isDensePadding ? '1.75rem' : '2.25rem',\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 );\n};\n","export enum MRT_FILTER_TYPE {\n BEST_MATCH = 'bestMatch',\n BEST_MATCH_FIRST = 'bestMatchFirst',\n CONTAINS = 'contains',\n EMPTY = 'empty',\n ENDS_WITH = 'endsWith',\n EQUALS = 'equals',\n GREATER_THAN = 'greaterThan',\n LESS_THAN = 'lessThan',\n NOT_EMPTY = 'notEmpty',\n NOT_EQUALS = 'notEquals',\n STARTS_WITH = 'startsWith',\n}\n","import { matchSorter } from 'match-sorter';\nimport { MRT_Row } from '.';\n\nexport const bestMatchFirst = (\n rows: MRT_Row[],\n columnIds: string[] | string,\n filterValue: string | number,\n) =>\n matchSorter(rows, filterValue.toString().trim(), {\n keys: Array.isArray(columnIds)\n ? columnIds.map((c) => `values.${c}`)\n : [`values.${columnIds}`],\n });\n\nbestMatchFirst.autoRemove = (val: any) => !val;\n\nexport const bestMatch = (\n rows: MRT_Row[],\n columnIds: string[] | string,\n filterValue: string | number,\n) =>\n matchSorter(rows, filterValue.toString().trim(), {\n keys: Array.isArray(columnIds)\n ? columnIds.map((c) => `values.${c}`)\n : [`values.${columnIds}`],\n sorter: (rankedItems) => rankedItems,\n });\n\nbestMatch.autoRemove = (val: any) => !val;\n\nexport const contains = (\n rows: MRT_Row[],\n id: string,\n filterValue: string | number,\n) =>\n rows.filter((row) =>\n row.values[id]\n .toString()\n .toLowerCase()\n .trim()\n .includes(filterValue.toString().toLowerCase().trim()),\n );\n\ncontains.autoRemove = (val: any) => !val;\n\nexport const startsWith = (\n rows: MRT_Row[],\n id: string,\n filterValue: string | number,\n) =>\n rows.filter((row) =>\n row.values[id]\n .toString()\n .toLowerCase()\n .trim()\n .startsWith(filterValue.toString().toLowerCase().trim()),\n );\n\nstartsWith.autoRemove = (val: any) => !val;\n\nexport const endsWith = (\n rows: MRT_Row[],\n id: string,\n filterValue: string | number,\n) =>\n rows.filter((row) =>\n row.values[id]\n .toString()\n .toLowerCase()\n .trim()\n .endsWith(filterValue.toString().toLowerCase().trim()),\n );\n\nendsWith.autoRemove = (val: any) => !val;\n\nexport const equals = (\n rows: MRT_Row[],\n id: string,\n filterValue: string | number,\n) =>\n rows.filter(\n (row) =>\n row.values[id].toString().toLowerCase().trim() ===\n filterValue.toString().toLowerCase().trim(),\n );\n\nequals.autoRemove = (val: any) => !val;\n\nexport const notEquals = (\n rows: MRT_Row[],\n id: string,\n filterValue: string | number,\n) =>\n rows.filter(\n (row) =>\n row.values[id].toString().toLowerCase().trim() !==\n filterValue.toString().toLowerCase().trim(),\n );\n\nnotEquals.autoRemove = (val: any) => !val;\n\nexport const greaterThan = (\n rows: MRT_Row[],\n id: string,\n filterValue: string | number,\n) =>\n rows.filter((row) =>\n !isNaN(+filterValue) && !isNaN(+row.values[id])\n ? +row.values[id] > +filterValue\n : row.values[id].toString().toLowerCase().trim() >\n filterValue.toString().toLowerCase().trim(),\n );\n\ngreaterThan.autoRemove = (val: any) => !val;\n\nexport const lessThan = (\n rows: MRT_Row[],\n id: string,\n filterValue: string | number,\n) =>\n rows.filter((row) =>\n !isNaN(+filterValue) && !isNaN(+row.values[id])\n ? +row.values[id] < +filterValue\n : row.values[id].toString().toLowerCase().trim() <\n filterValue.toString().toLowerCase().trim(),\n );\n\nlessThan.autoRemove = (val: any) => !val;\n\nexport const empty = (\n rows: MRT_Row[],\n id: string,\n _filterValue: string | number,\n) => rows.filter((row) => !row.values[id].toString().toLowerCase().trim());\n\nempty.autoRemove = (val: any) => !val;\n\nexport const notEmpty = (\n rows: MRT_Row[],\n id: string,\n _filterValue: string | number,\n) => rows.filter((row) => !!row.values[id].toString().toLowerCase().trim());\n\nnotEmpty.autoRemove = (val: any) => !val;\n\nexport const defaultFilterFNs = {\n bestMatch,\n bestMatchFirst,\n contains,\n empty,\n endsWith,\n equals,\n greaterThan,\n lessThan,\n notEmpty,\n notEquals,\n startsWith,\n};\n","import React, { FC, useMemo } from 'react';\nimport { Menu, MenuItem } from '@mui/material';\nimport type { MRT_FilterType, MRT_Header, MRT_TableInstance } from '..';\nimport { MRT_FILTER_TYPE } from '../enums';\nimport {\n bestMatch,\n bestMatchFirst,\n contains,\n empty,\n endsWith,\n equals,\n greaterThan,\n lessThan,\n notEmpty,\n notEquals,\n startsWith,\n} from '../filtersFNs';\n\nconst commonMenuItemStyles = {\n py: '6px',\n my: 0,\n alignItems: 'center',\n};\n\ninterface Props {\n anchorEl: HTMLElement | null;\n header?: MRT_Header;\n onSelect?: () => void;\n setAnchorEl: (anchorEl: HTMLElement | null) => void;\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_FilterTypeMenu: FC<Props> = ({\n anchorEl,\n header,\n onSelect,\n setAnchorEl,\n tableInstance,\n}) => {\n const {\n getState,\n options: {\n enabledGlobalFilterTypes,\n localization,\n setCurrentFilterTypes,\n setCurrentGlobalFilterType,\n },\n } = tableInstance;\n\n const { isDensePadding, currentFilterTypes, currentGlobalFilterType } =\n getState();\n\n const filterTypes: {\n type: MRT_FILTER_TYPE;\n label: string;\n divider: boolean;\n fn: Function;\n }[] = useMemo(\n () =>\n [\n {\n type: MRT_FILTER_TYPE.BEST_MATCH_FIRST,\n label: localization.filterBestMatchFirst,\n divider: false,\n fn: bestMatchFirst,\n },\n {\n type: MRT_FILTER_TYPE.BEST_MATCH,\n label: localization.filterBestMatch,\n divider: !!header,\n fn: bestMatch,\n },\n {\n type: MRT_FILTER_TYPE.CONTAINS,\n label: localization.filterContains,\n divider: false,\n fn: contains,\n },\n {\n type: MRT_FILTER_TYPE.STARTS_WITH,\n label: localization.filterStartsWith,\n divider: false,\n fn: startsWith,\n },\n {\n type: MRT_FILTER_TYPE.ENDS_WITH,\n label: localization.filterEndsWith,\n divider: true,\n fn: endsWith,\n },\n {\n type: MRT_FILTER_TYPE.EQUALS,\n label: localization.filterEquals,\n divider: false,\n fn: equals,\n },\n {\n type: MRT_FILTER_TYPE.NOT_EQUALS,\n label: localization.filterNotEquals,\n divider: true,\n fn: notEquals,\n },\n {\n type: MRT_FILTER_TYPE.GREATER_THAN,\n label: localization.filterGreaterThan,\n divider: false,\n fn: greaterThan,\n },\n {\n type: MRT_FILTER_TYPE.LESS_THAN,\n label: localization.filterLessThan,\n divider: true,\n fn: lessThan,\n },\n {\n type: MRT_FILTER_TYPE.EMPTY,\n label: localization.filterEmpty,\n divider: false,\n fn: empty,\n },\n {\n type: MRT_FILTER_TYPE.NOT_EMPTY,\n label: localization.filterNotEmpty,\n divider: false,\n fn: notEmpty,\n },\n ].filter((filterType) =>\n header\n ? !header.column.enabledFilterTypes ||\n header.column.enabledFilterTypes.includes(filterType.type)\n : (!enabledGlobalFilterTypes ||\n enabledGlobalFilterTypes.includes(filterType.type)) &&\n [\n MRT_FILTER_TYPE.BEST_MATCH_FIRST,\n MRT_FILTER_TYPE.BEST_MATCH,\n ].includes(filterType.type),\n ),\n [],\n );\n\n const handleSelectFilterType = (value: MRT_FILTER_TYPE) => {\n if (header) {\n setCurrentFilterTypes((prev: { [key: string]: MRT_FilterType }) => ({\n ...prev,\n [header.id]: value,\n }));\n if ([MRT_FILTER_TYPE.EMPTY, MRT_FILTER_TYPE.NOT_EMPTY].includes(value)) {\n header.column.setColumnFilterValue(' ');\n }\n } else {\n setCurrentGlobalFilterType(value);\n }\n setAnchorEl(null);\n onSelect?.();\n };\n\n const filterType = !!header\n ? currentFilterTypes[header.id]\n : currentGlobalFilterType;\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: isDensePadding,\n }}\n >\n {filterTypes.map(({ type, label, divider, fn }, index) => (\n <MenuItem\n divider={divider}\n key={index}\n onClick={() => handleSelectFilterType(type)}\n selected={type === filterType || fn === filterType}\n sx={commonMenuItemStyles}\n value={type}\n >\n {label}\n </MenuItem>\n ))}\n </Menu>\n );\n};\n","import React, { FC } from 'react';\nimport { FormControlLabel, MenuItem, Switch } from '@mui/material';\nimport type { MRT_ColumnInstance, MRT_TableInstance } from '..';\nimport { commonMenuItemStyles } from './MRT_ColumnActionMenu';\n\ninterface Props {\n column: MRT_ColumnInstance;\n isSubMenu?: boolean;\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_ShowHideColumnsMenuItems: FC<Props> = ({\n column,\n isSubMenu,\n tableInstance,\n}) => {\n const {\n getState,\n options: { onColumnHide },\n } = tableInstance;\n\n const { columnVisibility } = getState();\n\n const switchChecked =\n (column.columnDefType !== 'group' && column.getIsVisible()) ||\n (column.columnDefType === 'group' &&\n column.getLeafColumns().some((col) => col.getIsVisible()));\n\n const handleToggleColumnHidden = (column: MRT_ColumnInstance) => {\n if (column.columnDefType === 'group') {\n column?.columns?.forEach?.((childColumn: MRT_ColumnInstance) => {\n childColumn.toggleVisibility(!switchChecked);\n });\n } else {\n column.toggleVisibility();\n }\n onColumnHide?.({\n column,\n columnVisibility,\n tableInstance,\n });\n };\n\n return (\n <>\n <MenuItem\n sx={{ ...commonMenuItemStyles, pl: `${(column.depth + 0.5) * 2}rem` }}\n >\n <FormControlLabel\n componentsProps={{ typography: { sx: { marginBottom: 0 } } }}\n checked={switchChecked}\n control={<Switch />}\n disabled={\n (isSubMenu && switchChecked) || column.enableHiding === false\n }\n label={column.header}\n onChange={() => handleToggleColumnHidden(column)}\n />\n </MenuItem>\n {column.columns?.map((c: MRT_ColumnInstance, i) => (\n <MRT_ShowHideColumnsMenuItems\n key={`${i}-${c.id}`}\n column={c}\n isSubMenu={isSubMenu}\n tableInstance={tableInstance}\n />\n ))}\n </>\n );\n};\n","import React, { FC, useMemo } from 'react';\nimport { Button, Menu, Divider, Box } from '@mui/material';\nimport { MRT_ShowHideColumnsMenuItems } from './MRT_ShowHideColumnsMenuItems';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n anchorEl: HTMLElement | null;\n isSubMenu?: boolean;\n setAnchorEl: (anchorEl: HTMLElement | null) => void;\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_ShowHideColumnsMenu: FC<Props> = ({\n anchorEl,\n isSubMenu,\n setAnchorEl,\n tableInstance,\n}) => {\n const {\n getAllColumns,\n getIsAllColumnsVisible,\n getIsSomeColumnsVisible,\n getIsSomeColumnsPinned,\n getState,\n toggleAllColumnsVisible,\n getAllLeafColumns,\n options: { localization },\n } = tableInstance;\n\n const { isDensePadding } = getState();\n\n const hideAllColumns = () => {\n getAllLeafColumns()\n .filter((col) => col.enableHiding !== false)\n .forEach((col) => col.toggleVisibility(false));\n };\n\n const allDisplayColumns = useMemo(\n () => getAllColumns().filter((col) => col.columnDefType === 'display'),\n [getAllColumns()],\n );\n\n const allDataColumns = useMemo(() => {\n const dataColumns = getAllColumns().filter(\n (col) => col.columnDefType !== 'display',\n );\n return getIsSomeColumnsPinned()\n ? [\n ...dataColumns.filter((c) => c.getIsPinned() === 'left'),\n ...dataColumns.filter((c) => c.getIsPinned() === false),\n ...dataColumns.filter((c) => c.getIsPinned() === 'right'),\n ]\n : dataColumns;\n }, [getAllColumns(), getState().columnPinning, getIsSomeColumnsPinned()]);\n\n return (\n <Menu\n anchorEl={anchorEl}\n open={!!anchorEl}\n onClose={() => setAnchorEl(null)}\n MenuListProps={{\n dense: isDensePadding,\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 <Button\n disabled={getIsAllColumnsVisible()}\n onClick={() => toggleAllColumnsVisible(true)}\n >\n {localization.showAll}\n </Button>\n </Box>\n <Divider />\n {allDisplayColumns.map((column, index) => (\n <MRT_ShowHideColumnsMenuItems\n column={column}\n isSubMenu={isSubMenu}\n key={`${index}-${column.id}`}\n tableInstance={tableInstance}\n />\n ))}\n <Divider />\n {allDataColumns.map((column, index) => (\n <MRT_ShowHideColumnsMenuItems\n column={column}\n isSubMenu={isSubMenu}\n key={`${index}-${column.id}`}\n tableInstance={tableInstance}\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_FilterTypeMenu } from './MRT_FilterTypeMenu';\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 tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_ColumnActionMenu: FC<Props> = ({\n anchorEl,\n header,\n setAnchorEl,\n tableInstance,\n}) => {\n const {\n getState,\n toggleAllColumnsVisible,\n setColumnOrder,\n options: {\n enableColumnFilters,\n enableColumnPinning,\n enableGrouping,\n enableHiding,\n enableSorting,\n icons: {\n ArrowRightIcon,\n ClearAllIcon,\n ViewColumnIcon,\n DynamicFeedIcon,\n FilterListIcon,\n FilterListOffIcon,\n PushPinIcon,\n SortIcon,\n VisibilityOffIcon,\n },\n idPrefix,\n localization,\n setShowFilters,\n },\n } = tableInstance;\n\n const { column } = header;\n\n const { isDensePadding, columnVisibility } = getState();\n\n const [filterMenuAnchorEl, setFilterMenuAnchorEl] =\n useState<null | HTMLElement>(null);\n\n const [showHideColumnsMenuAnchorEl, setShowHideColumnsMenuAnchorEl] =\n useState<null | HTMLElement>(null);\n\n const handleClearSort = () => {\n column.resetSorting();\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 handleHideColumn = () => {\n column.toggleVisibility(false);\n setAnchorEl(null);\n };\n\n const handlePinColumn = (pinDirection: 'left' | 'right' | false) => {\n column.pin(pinDirection);\n };\n\n const handleGroupByColumn = () => {\n column.toggleGrouping();\n setColumnOrder((old) => ['mrt-expand', ...old]);\n setAnchorEl(null);\n };\n\n const handleClearFilter = () => {\n column.setColumnFilterValue('');\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-${idPrefix}-${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 return (\n <Menu\n anchorEl={anchorEl}\n open={!!anchorEl}\n onClose={() => setAnchorEl(null)}\n MenuListProps={{\n dense: isDensePadding,\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(column.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(column.header),\n )}\n </Box>\n </MenuItem>,\n ]}\n {enableColumnFilters &&\n column.getCanColumnFilter() && [\n <MenuItem\n disabled={!column.getColumnFilterValue()}\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(column.header),\n )}\n </Box>\n {!column.filterSelectOptions && (\n <IconButton\n onClick={handleOpenFilterModeMenu}\n onMouseEnter={handleOpenFilterModeMenu}\n size=\"small\"\n sx={{ p: 0 }}\n >\n <ArrowRightIcon />\n </IconButton>\n )}\n </MenuItem>,\n <MRT_FilterTypeMenu\n anchorEl={filterMenuAnchorEl}\n header={header}\n key={2}\n onSelect={handleFilterByColumn}\n setAnchorEl={setFilterMenuAnchorEl}\n tableInstance={tableInstance}\n />,\n ]}\n {enableGrouping &&\n column.getCanGroup() && [\n <MenuItem\n divider={enableColumnPinning}\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(column.header))}\n </Box>\n </MenuItem>,\n ]}\n {enableColumnPinning &&\n column.getCanPin() && [\n <MenuItem\n disabled={column.getIsPinned() === 'left'}\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'}\n key={0}\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={0}\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 {enableHiding && [\n <MenuItem\n disabled={column.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(column.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(column.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 tableInstance={tableInstance}\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 tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_RowActionMenu: FC<Props> = ({\n anchorEl,\n handleEdit,\n row,\n setAnchorEl,\n tableInstance,\n}) => {\n const {\n getState,\n options: {\n icons: { EditIcon },\n enableRowEditing,\n localization,\n renderRowActionMenuItems,\n },\n } = tableInstance;\n\n const { isDensePadding } = getState();\n\n return (\n <Menu\n anchorEl={anchorEl}\n open={!!anchorEl}\n onClose={() => setAnchorEl(null)}\n MenuListProps={{\n dense: isDensePadding,\n }}\n >\n {enableRowEditing && (\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 tableInstance,\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 '..';\nimport { RowValues } from '@tanstack/react-table';\n\ninterface Props {\n row: MRT_Row;\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_EditActionButtons: FC<Props> = ({ row, tableInstance }) => {\n const {\n getState,\n options: {\n icons: { CancelIcon, SaveIcon },\n localization,\n onRowEditSubmit,\n setCurrentEditingRow,\n },\n } = tableInstance;\n\n const { currentEditingRow } = getState();\n\n const handleCancel = () => {\n row.values = (row.original as RowValues) ?? {};\n setCurrentEditingRow(null);\n };\n\n const handleSave = () => {\n onRowEditSubmit?.({ row: currentEditingRow ?? row, tableInstance });\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 tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_ToggleRowActionMenuButton: FC<Props> = ({\n row,\n tableInstance,\n}) => {\n const {\n getState,\n options: {\n enableRowEditing,\n icons: { EditIcon, MoreHorizIcon },\n localization,\n renderRowActionMenuItems,\n renderRowActions,\n setCurrentEditingRow,\n },\n } = tableInstance;\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 handleEdit = () => {\n setCurrentEditingRow({ ...row });\n setAnchorEl(null);\n };\n\n return (\n <>\n {renderRowActions ? (\n <>{renderRowActions({ row, tableInstance })}</>\n ) : row.id === currentEditingRow?.id ? (\n <MRT_EditActionButtons row={row} tableInstance={tableInstance} />\n ) : !renderRowActionMenuItems && enableRowEditing ? (\n <Tooltip placement=\"right\" arrow title={localization.edit}>\n <IconButton sx={commonIconButtonStyles} onClick={handleEdit}>\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={handleEdit}\n row={row}\n setAnchorEl={setAnchorEl}\n tableInstance={tableInstance}\n />\n </>\n ) : null}\n </>\n );\n};\n","import React, { ChangeEvent, FC } from 'react';\nimport { Checkbox, Tooltip } from '@mui/material';\nimport type { MRT_Row, MRT_TableInstance } from '..';\n\ninterface Props {\n row?: MRT_Row;\n selectAll?: boolean;\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_SelectCheckbox: FC<Props> = ({\n row,\n selectAll,\n tableInstance,\n}) => {\n const {\n getRowModel,\n getSelectedRowModel,\n getState,\n getToggleAllRowsSelectedProps,\n options: {\n isLoading,\n localization,\n muiSelectCheckboxProps,\n onSelectChange,\n onSelectAllChange,\n },\n } = tableInstance;\n\n const { isDensePadding } = getState();\n\n const handleSelectChange = (event: ChangeEvent<HTMLInputElement>) => {\n if (selectAll) {\n getToggleAllRowsSelectedProps?.()?.onChange?.(event as any);\n onSelectAllChange?.({\n event,\n selectedRows: event.target.checked ? getRowModel().flatRows : [],\n tableInstance,\n });\n } else if (row) {\n row?.getToggleSelectedProps()?.onChange?.(event as any);\n onSelectChange?.({\n event,\n row,\n selectedRows: event.target.checked\n ? [...getSelectedRowModel().flatRows, row]\n : getSelectedRowModel().flatRows.filter(\n (selectedRow) => selectedRow.id !== row.id,\n ),\n tableInstance,\n });\n }\n };\n\n const mTableBodyRowSelectCheckboxProps =\n muiSelectCheckboxProps instanceof Function\n ? muiSelectCheckboxProps({ isSelectAll: !!selectAll, row, tableInstance })\n : muiSelectCheckboxProps;\n\n const rtSelectCheckboxProps = selectAll\n ? getToggleAllRowsSelectedProps()\n : row?.getToggleSelectedProps();\n\n const checkboxProps = {\n ...rtSelectCheckboxProps,\n ...mTableBodyRowSelectCheckboxProps,\n };\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 disabled={isLoading}\n inputProps={{\n 'aria-label': selectAll\n ? localization.toggleSelectAll\n : localization.toggleSelectRow,\n }}\n size={isDensePadding ? 'small' : 'medium'}\n {...checkboxProps}\n sx={{\n height: isDensePadding ? '1.75rem' : '2.25rem',\n width: isDensePadding ? '1.75rem' : '2.25rem',\n }}\n onChange={handleSelectChange}\n title={undefined}\n />\n </Tooltip>\n );\n};\n","import React, {\n ChangeEvent,\n FC,\n MouseEvent,\n useCallback,\n useState,\n} from 'react';\nimport {\n Collapse,\n debounce,\n IconButton,\n InputAdornment,\n TextField,\n Tooltip,\n} from '@mui/material';\nimport { MRT_FilterTypeMenu } from '../menus/MRT_FilterTypeMenu';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_SearchTextField: FC<Props> = ({ tableInstance }) => {\n const {\n getState,\n setGlobalFilter,\n options: {\n icons: { SearchIcon, CloseIcon },\n idPrefix,\n localization,\n muiSearchTextFieldProps,\n onGlobalFilterChange,\n },\n } = tableInstance;\n\n const { globalFilter, showSearch } = getState();\n\n const [anchorEl, setAnchorEl] = useState<null | HTMLElement>(null);\n const [searchValue, setSearchValue] = useState(globalFilter ?? '');\n\n const handleChange = useCallback(\n debounce((event: ChangeEvent<HTMLInputElement>) => {\n setGlobalFilter(event.target.value ?? undefined);\n onGlobalFilterChange?.({ event, tableInstance });\n }, 200),\n [],\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({ tableInstance })\n : muiSearchTextFieldProps;\n\n return (\n <Collapse in={showSearch} orientation=\"horizontal\">\n <TextField\n id={`mrt-${idPrefix}-search-text-field`}\n placeholder={localization.search}\n onChange={(event: ChangeEvent<HTMLInputElement>) => {\n setSearchValue(event.target.value);\n handleChange(event);\n }}\n value={searchValue ?? ''}\n variant=\"standard\"\n InputProps={{\n startAdornment: (\n <InputAdornment position=\"start\">\n <Tooltip arrow title={localization.changeSearchMode}>\n <span>\n <IconButton\n aria-label={localization.changeSearchMode}\n onClick={handleGlobalFilterMenuOpen}\n size=\"small\"\n sx={{ height: '1.75rem', width: '1.75rem' }}\n >\n <SearchIcon fontSize=\"small\" />\n </IconButton>\n </span>\n </Tooltip>\n </InputAdornment>\n ),\n endAdornment: (\n <InputAdornment position=\"end\">\n <IconButton\n aria-label={localization.clearSearch}\n disabled={searchValue?.length === 0}\n onClick={handleClear}\n size=\"small\"\n title={localization.clearSearch}\n >\n <CloseIcon fontSize=\"small\" />\n </IconButton>\n </InputAdornment>\n ),\n }}\n {...textFieldProps}\n sx={{ justifySelf: 'end', ...textFieldProps?.sx }}\n />\n <MRT_FilterTypeMenu\n anchorEl={anchorEl}\n setAnchorEl={setAnchorEl}\n tableInstance={tableInstance}\n />\n </Collapse>\n );\n};\n","import React, { FC } from 'react';\nimport { IconButton, IconButtonProps, Tooltip } from '@mui/material';\nimport { MRT_TableInstance } from '..';\n\ninterface Props extends IconButtonProps {\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_FullScreenToggleButton: FC<Props> = ({\n tableInstance,\n ...rest\n}) => {\n const {\n getState,\n options: {\n icons: { FullscreenExitIcon, FullscreenIcon },\n localization,\n setIsFullScreen,\n },\n } = tableInstance;\n\n const { isFullScreen } = getState();\n\n return (\n <Tooltip arrow title={localization.toggleFullScreen}>\n <IconButton\n aria-label={localization.showHideFilters}\n onClick={() => setIsFullScreen(!isFullScreen)}\n size=\"small\"\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 tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_ShowHideColumnsButton: FC<Props> = ({\n tableInstance,\n ...rest\n}) => {\n const {\n options: {\n icons: { ViewColumnIcon },\n localization,\n },\n } = tableInstance;\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 size=\"small\"\n {...rest}\n >\n <ViewColumnIcon />\n </IconButton>\n </Tooltip>\n <MRT_ShowHideColumnsMenu\n anchorEl={anchorEl}\n setAnchorEl={setAnchorEl}\n tableInstance={tableInstance}\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 tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_ToggleDensePaddingButton: FC<Props> = ({\n tableInstance,\n ...rest\n}) => {\n const {\n getState,\n options: {\n icons: { DensityMediumIcon, DensitySmallIcon },\n localization,\n setIsDensePadding,\n },\n } = tableInstance;\n\n const { isDensePadding } = getState();\n\n return (\n <Tooltip arrow title={localization.toggleDensePadding}>\n <IconButton\n aria-label={localization.toggleDensePadding}\n onClick={() => setIsDensePadding(!isDensePadding)}\n size=\"small\"\n {...rest}\n >\n {isDensePadding ? <DensitySmallIcon /> : <DensityMediumIcon />}\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 tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_ToggleFiltersButton: FC<Props> = ({\n tableInstance,\n ...rest\n}) => {\n const {\n getState,\n options: {\n icons: { FilterListIcon, FilterListOffIcon },\n localization,\n setShowFilters,\n },\n } = tableInstance;\n\n const { showFilters } = getState();\n\n return (\n <Tooltip arrow title={localization.showHideFilters}>\n <IconButton\n aria-label={localization.showHideFilters}\n onClick={() => setShowFilters(!showFilters)}\n size=\"small\"\n {...rest}\n >\n {showFilters ? <FilterListOffIcon /> : <FilterListIcon />}\n </IconButton>\n </Tooltip>\n );\n};\n","import React, { FC } from 'react';\nimport { IconButton, IconButtonProps, Tooltip } from '@mui/material';\nimport { MRT_TableInstance } from '..';\n\ninterface Props extends IconButtonProps {\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_ToggleSearchButton: FC<Props> = ({\n tableInstance,\n ...rest\n}) => {\n const {\n getState,\n options: {\n icons: { SearchIcon, SearchOffIcon },\n idPrefix,\n localization,\n muiSearchTextFieldProps,\n setShowSearch,\n },\n } = tableInstance;\n\n const { showSearch } = getState();\n\n const textFieldProps =\n muiSearchTextFieldProps instanceof Function\n ? muiSearchTextFieldProps({ tableInstance })\n : muiSearchTextFieldProps;\n\n const handleToggleSearch = () => {\n setShowSearch(!showSearch);\n setTimeout(\n () =>\n document\n .getElementById(\n textFieldProps?.id ?? `mrt-${idPrefix}-search-text-field`,\n )\n ?.focus(),\n 200,\n );\n };\n\n return (\n <Tooltip arrow title={localization.showHideSearch}>\n <IconButton size=\"small\" onClick={handleToggleSearch} {...rest}>\n {showSearch ? <SearchOffIcon /> : <SearchIcon />}\n </IconButton>\n </Tooltip>\n );\n};\n","import React, { FC } from 'react';\nimport { Box } from '@mui/material';\nimport { MRT_FullScreenToggleButton } from '../buttons/MRT_FullScreenToggleButton';\nimport { MRT_ShowHideColumnsButton } from '../buttons/MRT_ShowHideColumnsButton';\nimport { MRT_ToggleDensePaddingButton } from '../buttons/MRT_ToggleDensePaddingButton';\nimport { MRT_ToggleFiltersButton } from '../buttons/MRT_ToggleFiltersButton';\nimport { MRT_ToggleSearchButton } from '../buttons/MRT_ToggleSearchButton';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_ToolbarInternalButtons: FC<Props> = ({ tableInstance }) => {\n const {\n options: {\n enableColumnFilters,\n enableHiding,\n enableDensePaddingToggle,\n enableGlobalFilter,\n enableFullScreenToggle,\n renderToolbarInternalActions,\n },\n } = tableInstance;\n\n if (renderToolbarInternalActions) {\n return (\n <>\n {renderToolbarInternalActions({\n MRT_FullScreenToggleButton,\n MRT_ShowHideColumnsButton,\n MRT_ToggleDensePaddingButton,\n MRT_ToggleFiltersButton,\n MRT_ToggleSearchButton,\n tableInstance,\n })}\n </>\n );\n }\n\n return (\n <Box\n sx={{\n display: 'flex',\n gap: '0.5rem',\n alignItems: 'center',\n p: '0 0.5rem',\n }}\n >\n {enableGlobalFilter && (\n <MRT_ToggleSearchButton tableInstance={tableInstance} />\n )}\n {enableColumnFilters && (\n <MRT_ToggleFiltersButton tableInstance={tableInstance} />\n )}\n {enableHiding && (\n <MRT_ShowHideColumnsButton tableInstance={tableInstance} />\n )}\n {enableDensePaddingToggle && (\n <MRT_ToggleDensePaddingButton tableInstance={tableInstance} />\n )}\n {enableFullScreenToggle && (\n <MRT_FullScreenToggleButton tableInstance={tableInstance} />\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 tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_TablePagination: FC<Props> = ({ tableInstance }) => {\n const {\n getPrePaginationRowModel,\n getState,\n setPageIndex,\n setPageSize,\n options: { muiTablePaginationProps },\n } = tableInstance;\n\n const {\n pagination: { pageSize = 10, pageIndex = 0 },\n } = getState();\n\n const tablePaginationProps =\n muiTablePaginationProps instanceof Function\n ? muiTablePaginationProps({ tableInstance })\n : muiTablePaginationProps;\n\n const handleChangeRowsPerPage = (event: ChangeEvent<HTMLInputElement>) => {\n setPageSize(+event.target.value);\n };\n\n const showFirstLastPageButtons =\n getPrePaginationRowModel().rows.length / pageSize > 2;\n\n return (\n <TablePagination\n SelectProps={{ sx: { m: '0 1rem 0 1ch' } }}\n component=\"div\"\n count={getPrePaginationRowModel().rows.length}\n onPageChange={(_: any, newPage: number) => setPageIndex(newPage)}\n onRowsPerPageChange={handleChangeRowsPerPage}\n page={pageIndex}\n rowsPerPage={pageSize}\n rowsPerPageOptions={[5, 10, 20, 25, 50, 100]}\n showFirstButton={showFirstLastPageButtons}\n showLastButton={showFirstLastPageButtons}\n {...tablePaginationProps}\n sx={{\n m: '0 0.5rem',\n position: 'relative',\n zIndex: 2,\n ...tablePaginationProps?.sx,\n }}\n />\n );\n};\n","import React, { FC, Fragment } from 'react';\nimport { Alert, Box, Chip, Collapse, useMediaQuery } from '@mui/material';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_ToolbarAlertBanner: FC<Props> = ({ tableInstance }) => {\n const {\n getPrePaginationRowModel,\n getSelectedRowModel,\n getState,\n toggleColumnGrouping,\n options: {\n localization,\n muiTableToolbarAlertBannerProps,\n positionToolbarActions,\n positionToolbarAlertBanner,\n renderToolbarCustomActions,\n },\n } = tableInstance;\n\n const { grouping } = getState();\n\n const isMobile = useMediaQuery('(max-width:720px)');\n\n const alertProps =\n muiTableToolbarAlertBannerProps instanceof Function\n ? muiTableToolbarAlertBannerProps({ tableInstance })\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={\n tableInstance\n .getAllColumns()\n .find((column) => column.id === columnId)?.header\n }\n onDelete={() => toggleColumnGrouping(columnId)}\n />\n </Fragment>\n ))}\n </span>\n ) : null;\n\n const displayAbsolute = !(\n isMobile ||\n (positionToolbarAlertBanner === 'bottom' &&\n positionToolbarActions === 'bottom') ||\n (positionToolbarAlertBanner === 'top' && !!renderToolbarCustomActions)\n );\n\n return (\n <Collapse\n in={!!selectMessage || !!groupedByMessage}\n timeout={displayAbsolute ? 0 : 200}\n >\n <Alert\n color=\"info\"\n icon={false}\n sx={{\n borderRadius: 0,\n fontSize: '1rem',\n left: 0,\n p: 0,\n position: displayAbsolute ? 'absolute' : 'relative',\n right: 0,\n minHeight: '3.5rem',\n top: 0,\n width: '100%',\n zIndex: 2,\n ...alertProps?.sx,\n }}\n {...alertProps}\n >\n <Box sx={{ p: '0.5rem 1rem' }}>\n {selectMessage}\n <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 tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_LinearProgressBar: FC<Props> = ({ tableInstance }) => {\n const {\n options: { muiLinearProgressProps, isReloading, isLoading },\n } = tableInstance;\n\n const linearProgressProps =\n muiLinearProgressProps instanceof Function\n ? muiLinearProgressProps({ tableInstance })\n : muiLinearProgressProps;\n\n return (\n <Collapse in={isReloading || isLoading} unmountOnExit>\n <LinearProgress\n aria-label=\"Loading\"\n aria-busy=\"true\"\n {...linearProgressProps}\n />\n </Collapse>\n );\n};\n","import React, { FC } from 'react';\nimport { alpha, Box, Theme, Toolbar } from '@mui/material';\nimport { MRT_SearchTextField } from '../inputs/MRT_SearchTextField';\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 '..';\n\nexport const commonToolbarStyles = ({ theme }: { theme: 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 display: 'grid',\n p: '0 !important',\n width: '100%',\n zIndex: 1,\n});\n\ninterface Props {\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_ToolbarTop: FC<Props> = ({ tableInstance }) => {\n const {\n getState,\n options: {\n enableGlobalFilter,\n enablePagination,\n hideToolbarInternalActions,\n idPrefix,\n muiTableToolbarTopProps,\n positionPagination,\n positionToolbarActions,\n positionToolbarAlertBanner,\n renderToolbarCustomActions,\n },\n } = tableInstance;\n\n const { isFullScreen } = getState();\n\n const toolbarProps =\n muiTableToolbarTopProps instanceof Function\n ? muiTableToolbarTopProps({ tableInstance })\n : muiTableToolbarTopProps;\n\n return (\n <Toolbar\n id={`mrt-${idPrefix}-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 tableInstance={tableInstance} />\n )}\n <Box\n sx={{\n p: '0.5rem',\n display: 'flex',\n justifyContent: 'space-between',\n }}\n >\n {renderToolbarCustomActions?.({ tableInstance }) ?? <span />}\n <Box\n sx={{\n display: 'flex',\n gap: '0.5rem',\n position: 'relative',\n zIndex: 3,\n }}\n >\n {enableGlobalFilter && (\n <MRT_SearchTextField tableInstance={tableInstance} />\n )}\n {!hideToolbarInternalActions && positionToolbarActions === 'top' && (\n <MRT_ToolbarInternalButtons tableInstance={tableInstance} />\n )}\n </Box>\n </Box>\n <div>\n {enablePagination &&\n ['top', 'both'].includes(positionPagination ?? '') && (\n <MRT_TablePagination tableInstance={tableInstance} />\n )}\n </div>\n <MRT_LinearProgressBar tableInstance={tableInstance} />\n </Toolbar>\n );\n};\n","import React, { FC } from 'react';\nimport { alpha, Box, Toolbar } from '@mui/material';\nimport { MRT_TablePagination } from './MRT_TablePagination';\nimport { MRT_ToolbarInternalButtons } from './MRT_ToolbarInternalButtons';\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 tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_ToolbarBottom: FC<Props> = ({ tableInstance }) => {\n const {\n getState,\n options: {\n hideToolbarInternalActions,\n idPrefix,\n enablePagination,\n muiTableToolbarBottomProps,\n positionPagination,\n positionToolbarActions,\n positionToolbarAlertBanner,\n },\n } = tableInstance;\n\n const { isFullScreen } = getState();\n\n const toolbarProps =\n muiTableToolbarBottomProps instanceof Function\n ? muiTableToolbarBottomProps({ tableInstance })\n : muiTableToolbarBottomProps;\n\n return (\n <Toolbar\n id={`mrt-${idPrefix}-toolbar-bottom`}\n variant=\"dense\"\n {...toolbarProps}\n sx={(theme) =>\n ({\n ...commonToolbarStyles({ theme }),\n bottom: isFullScreen ? '0' : undefined,\n position: isFullScreen ? 'fixed' : undefined,\n boxShadow: `-3px 0 6px ${alpha(theme.palette.common.black, 0.1)}`,\n ...toolbarProps?.sx,\n } as any)\n }\n >\n <MRT_LinearProgressBar tableInstance={tableInstance} />\n <Box\n sx={{ display: 'flex', justifyContent: 'space-between', width: '100%' }}\n >\n {!hideToolbarInternalActions && positionToolbarActions === 'bottom' ? (\n <MRT_ToolbarInternalButtons tableInstance={tableInstance} />\n ) : (\n <span />\n )}\n {positionToolbarAlertBanner === 'bottom' && (\n <MRT_ToolbarAlertBanner tableInstance={tableInstance} />\n )}\n {enablePagination &&\n ['bottom', 'both'].includes(positionPagination ?? '') && (\n <MRT_TablePagination tableInstance={tableInstance} />\n )}\n </Box>\n </Toolbar>\n );\n};\n","import React, {\n ChangeEvent,\n FC,\n MouseEvent,\n useCallback,\n useState,\n} from 'react';\nimport {\n Chip,\n debounce,\n IconButton,\n InputAdornment,\n MenuItem,\n TextField,\n TextFieldProps,\n Tooltip,\n} from '@mui/material';\nimport type { MRT_Header, MRT_TableInstance } from '..';\nimport { MRT_FilterTypeMenu } from '../menus/MRT_FilterTypeMenu';\nimport { MRT_FILTER_TYPE } from '../enums';\n\ninterface Props {\n header: MRT_Header;\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_FilterTextField: FC<Props> = ({ header, tableInstance }) => {\n const {\n getState,\n options: {\n icons: { FilterListIcon, CloseIcon },\n idPrefix,\n localization,\n muiTableHeadCellFilterTextFieldProps,\n setCurrentFilterTypes,\n },\n } = tableInstance;\n\n const { column } = header;\n\n const { currentFilterTypes } = getState();\n\n const [anchorEl, setAnchorEl] = useState<null | HTMLElement>(null);\n\n const mTableHeadCellFilterTextFieldProps =\n muiTableHeadCellFilterTextFieldProps instanceof Function\n ? muiTableHeadCellFilterTextFieldProps({ column, tableInstance })\n : muiTableHeadCellFilterTextFieldProps;\n\n const mcTableHeadCellFilterTextFieldProps =\n column.muiTableHeadCellFilterTextFieldProps instanceof Function\n ? column.muiTableHeadCellFilterTextFieldProps({ column, tableInstance })\n : column.muiTableHeadCellFilterTextFieldProps;\n\n const textFieldProps = {\n ...mTableHeadCellFilterTextFieldProps,\n ...mcTableHeadCellFilterTextFieldProps,\n } as TextFieldProps;\n\n const [filterValue, setFilterValue] = useState<string>(\n (column.getColumnFilterValue() ?? '') as string,\n );\n\n const handleChange = useCallback(\n debounce(\n (event: ChangeEvent<HTMLInputElement>) =>\n column.setColumnFilterValue(event.target.value ?? undefined),\n 150,\n ),\n [],\n );\n\n const handleFilterMenuOpen = (event: MouseEvent<HTMLElement>) => {\n setAnchorEl(event.currentTarget);\n };\n\n const handleClear = () => {\n setFilterValue('');\n column.setColumnFilterValue(undefined);\n };\n\n const handleClearFilterChip = () => {\n setFilterValue('');\n column.setColumnFilterValue(undefined);\n setCurrentFilterTypes((prev) => ({\n ...prev,\n [header.id]: MRT_FILTER_TYPE.BEST_MATCH,\n }));\n };\n\n if (column.Filter) {\n return <>{column.Filter?.({ header, tableInstance })}</>;\n }\n\n const filterId = `mrt-${idPrefix}-${header.id}-filter-text-field`;\n const filterType = currentFilterTypes?.[header.id];\n const isSelectFilter = !!column.filterSelectOptions;\n const filterChipLabel =\n !(filterType instanceof Function) &&\n [MRT_FILTER_TYPE.EMPTY, MRT_FILTER_TYPE.NOT_EMPTY].includes(\n filterType as MRT_FILTER_TYPE,\n )\n ? //@ts-ignore\n localization[\n `filter${filterType.charAt(0).toUpperCase() + filterType.slice(1)}`\n ]\n : '';\n const filterPlaceholder = localization.filterByColumn?.replace(\n '{column}',\n String(column.header),\n );\n\n return (\n <>\n <TextField\n fullWidth\n id={filterId}\n inputProps={{\n disabled: !!filterChipLabel,\n sx: {\n textOverflow: 'ellipsis',\n width: filterChipLabel ? 0 : undefined,\n },\n title: filterPlaceholder,\n }}\n helperText={\n <label htmlFor={filterId}>\n {filterType instanceof Function\n ? localization.filterMode.replace(\n '{filterType}',\n // @ts-ignore\n localization[\n `filter${\n filterType.name.charAt(0).toUpperCase() +\n filterType.name.slice(1)\n }`\n ] ?? '',\n ) ?? ''\n : localization.filterMode.replace(\n '{filterType}',\n // @ts-ignore\n localization[\n `filter${\n filterType.charAt(0).toUpperCase() + filterType.slice(1)\n }`\n ],\n )}\n </label>\n }\n FormHelperTextProps={{\n sx: { fontSize: '0.6rem', lineHeight: '0.8rem' },\n }}\n label={isSelectFilter && !filterValue ? filterPlaceholder : undefined}\n margin=\"none\"\n placeholder={\n filterPlaceholder\n // filterChipLabel || isSelectFilter ? undefined : filterPlaceholder\n }\n onChange={(event: ChangeEvent<HTMLInputElement>) => {\n setFilterValue(event.target.value);\n handleChange(event);\n }}\n onClick={(e: MouseEvent<HTMLInputElement>) => e.stopPropagation()}\n select={isSelectFilter}\n value={filterValue ?? ''}\n variant=\"standard\"\n InputProps={{\n startAdornment: !isSelectFilter && (\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 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 fontSize=\"small\" />\n </IconButton>\n </span>\n </Tooltip>\n </InputAdornment>\n ),\n }}\n {...textFieldProps}\n sx={{\n m: '-0.25rem',\n p: 0,\n minWidth: !filterChipLabel ? '5rem' : 'auto',\n width: 'calc(100% + 0.5rem)',\n mt: isSelectFilter && !filterValue ? '-1rem' : undefined,\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 {column?.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_FilterTypeMenu\n anchorEl={anchorEl}\n header={header}\n setAnchorEl={setAnchorEl}\n tableInstance={tableInstance}\n />\n </>\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 tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_ToggleColumnActionMenuButton: FC<Props> = ({\n header,\n tableInstance,\n}) => {\n const {\n options: {\n icons: { MoreVertIcon },\n localization,\n muiTableHeadCellColumnActionsButtonProps,\n },\n } = tableInstance;\n\n const { column } = header;\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, tableInstance })\n : muiTableHeadCellColumnActionsButtonProps;\n\n const mcTableHeadCellColumnActionsButtonProps =\n column.muiTableHeadCellColumnActionsButtonProps instanceof Function\n ? column.muiTableHeadCellColumnActionsButtonProps({\n column,\n tableInstance,\n })\n : column.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 mr: '2px',\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 tableInstance={tableInstance}\n />\n </>\n );\n};\n","import React, { FC, MouseEvent } from 'react';\nimport {\n TableCell,\n TableSortLabel,\n Divider,\n Collapse,\n Tooltip,\n Box,\n IconButton,\n alpha,\n Theme,\n} from '@mui/material';\nimport { MRT_FilterTextField } from '../inputs/MRT_FilterTextField';\nimport { MRT_ToggleColumnActionMenuButton } from '../buttons/MRT_ToggleColumnActionMenuButton';\nimport type { MRT_Header, MRT_TableInstance } from '..';\nimport { ColumnResizerProps } from '@tanstack/react-table';\n\ninterface Props {\n header: MRT_Header;\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_TableHeadCell: FC<Props> = ({ header, tableInstance }) => {\n const {\n getState,\n options: {\n enableColumnActions,\n enableColumnFilters,\n enableColumnResizing,\n icons: { FilterAltIcon, FilterAltOff },\n localization,\n muiTableHeadCellProps,\n setShowFilters,\n },\n } = tableInstance;\n\n const { isDensePadding, showFilters } = getState();\n\n const { column } = header;\n\n const mTableHeadCellProps =\n muiTableHeadCellProps instanceof Function\n ? muiTableHeadCellProps({ column, tableInstance })\n : muiTableHeadCellProps;\n\n const mcTableHeadCellProps =\n column.muiTableHeadCellProps instanceof Function\n ? column.muiTableHeadCellProps({ column, tableInstance })\n : column.muiTableHeadCellProps;\n\n const tableCellProps = {\n ...header.getHeaderProps(),\n ...mTableHeadCellProps,\n ...mcTableHeadCellProps,\n };\n\n const sortTooltip = !!column.getIsSorted()\n ? column.getIsSorted() === 'desc'\n ? localization.clearSort\n : localization.sortByColumnDesc.replace('{column}', column.header)\n : localization.sortByColumnAsc.replace('{column}', column.header);\n\n const filterType = getState()?.currentFilterTypes?.[header.id];\n\n const filterTooltip = !!column.getColumnFilterValue()\n ? localization.filteringByColumn\n .replace('{column}', String(column.header))\n .replace(\n '{filterType}',\n filterType instanceof Function\n ? ''\n : // @ts-ignore\n localization[\n `filter${\n filterType.charAt(0).toUpperCase() + filterType.slice(1)\n }`\n ],\n )\n .replace('{filterValue}', column.getColumnFilterValue() as string)\n .replace('\" \"', '')\n : localization.showHideFilters;\n\n const headerElement =\n column?.Header?.({\n header,\n tableInstance,\n }) ?? column.header;\n\n return (\n <TableCell\n align={column.columnDefType === 'group' ? 'center' : 'left'}\n {...tableCellProps}\n //@ts-ignore\n sx={(theme: 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 boxShadow: `3px 0 6px ${alpha(theme.palette.common.black, 0.1)}`,\n fontWeight: 'bold',\n height: '100%',\n minWidth: `max(${header.getWidth()}, 100px)`,\n p: isDensePadding\n ? column.columnDefType === 'display'\n ? '0 0.5rem'\n : '0.5rem'\n : column.columnDefType === 'display'\n ? '0.5rem 0.75rem'\n : '1rem',\n pt:\n column.columnDefType === 'display'\n ? 0\n : isDensePadding\n ? '0.75rem'\n : '1.25rem',\n pb: column.columnDefType === 'display' ? 0 : undefined,\n transition: `all ${enableColumnResizing ? 0 : '0.2s'} ease-in-out`,\n verticalAlign: 'text-top',\n width: header.getWidth(),\n //@ts-ignore\n ...tableCellProps?.sx,\n })}\n >\n {header.isPlaceholder ? null : column.columnDefType === 'display' ? (\n headerElement\n ) : (\n <Box\n sx={{\n alignItems: 'flex-start',\n display: 'flex',\n justifyContent:\n column.columnDefType === 'group' ? 'center' : 'space-between',\n width: '100%',\n }}\n >\n <Box\n {...column.getToggleSortingProps()}\n sx={{\n alignItems: 'center',\n cursor:\n column.getCanSort() && column.columnDefType !== 'group'\n ? 'pointer'\n : undefined,\n display: 'flex',\n flexWrap: 'nowrap',\n whiteSpace: column.header.length < 15 ? 'nowrap' : 'normal',\n }}\n title={undefined}\n >\n {headerElement}\n {column.columnDefType !== 'group' && column.getCanSort() && (\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 />\n </Tooltip>\n )}\n {column.columnDefType !== 'group' &&\n enableColumnFilters &&\n !!column.getCanColumnFilter() && (\n <Tooltip arrow placement=\"top\" title={filterTooltip}>\n <IconButton\n disableRipple\n onClick={(event: MouseEvent<HTMLButtonElement>) => {\n event.stopPropagation();\n setShowFilters(!showFilters);\n }}\n size=\"small\"\n sx={{\n m: 0,\n opacity: !!column.getColumnFilterValue() ? 0.8 : 0,\n p: '2px',\n transition: 'all 0.2s ease-in-out',\n '&:hover': {\n backgroundColor: 'transparent',\n opacity: 0.8,\n },\n }}\n >\n {showFilters && !column.getColumnFilterValue() ? (\n <FilterAltOff fontSize=\"small\" />\n ) : (\n <FilterAltIcon fontSize=\"small\" />\n )}\n </IconButton>\n </Tooltip>\n )}\n </Box>\n <Box\n sx={{ alignItems: 'center', display: 'flex', flexWrap: 'nowrap' }}\n >\n {(enableColumnActions || column.enableColumnActions) &&\n column.enableColumnActions !== false &&\n column.columnDefType !== 'group' && (\n <MRT_ToggleColumnActionMenuButton\n header={header}\n tableInstance={tableInstance}\n />\n )}\n {enableColumnResizing && column.columnDefType !== 'group' && (\n <Divider\n flexItem\n orientation=\"vertical\"\n onDoubleClick={() => header.resetSize()}\n sx={(theme: Theme) => ({\n borderRightWidth: '2px',\n borderRadius: '2px',\n maxHeight: '2rem',\n cursor: 'col-resize',\n userSelect: 'none',\n touchAction: 'none',\n '&:active': {\n backgroundColor: theme.palette.secondary.dark,\n opacity: 1,\n },\n })}\n {...(header.getResizerProps((props: ColumnResizerProps) => ({\n ...props,\n style: {\n transform: column.getIsResizing()\n ? `translateX(${\n getState().columnSizingInfo.deltaOffset\n }px)`\n : '',\n },\n })) as any)}\n />\n )}\n </Box>\n </Box>\n )}\n {column.columnDefType === 'data' &&\n enableColumnFilters &&\n column.getCanColumnFilter() && (\n <Collapse in={showFilters}>\n <MRT_FilterTextField\n header={header}\n tableInstance={tableInstance}\n />\n </Collapse>\n )}\n </TableCell>\n );\n};\n","import React, { FC } from 'react';\nimport { 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 tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_TableHeadRow: FC<Props> = ({ headerGroup, tableInstance }) => {\n const {\n options: { muiTableHeadRowProps },\n } = tableInstance;\n\n const mTableHeadRowProps =\n muiTableHeadRowProps instanceof Function\n ? muiTableHeadRowProps({ headerGroup, tableInstance })\n : muiTableHeadRowProps;\n\n const tableRowProps = {\n ...headerGroup?.getHeaderGroupProps(),\n ...mTableHeadRowProps,\n };\n\n return (\n <TableRow {...tableRowProps}>\n {headerGroup.headers.map((header: MRT_Header, index) => (\n <MRT_TableHeadCell\n header={header}\n key={header.id || index}\n tableInstance={tableInstance}\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_HeaderGroup, MRT_TableInstance } from '..';\n\ninterface Props {\n pinned: 'left' | 'center' | 'right' | 'none';\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_TableHead: FC<Props> = ({ pinned, tableInstance }) => {\n const {\n getCenterHeaderGroups,\n getHeaderGroups,\n getLeftHeaderGroups,\n getRightHeaderGroups,\n options: { muiTableHeadProps },\n } = tableInstance;\n\n const tableHeadProps =\n muiTableHeadProps instanceof Function\n ? muiTableHeadProps({ tableInstance })\n : muiTableHeadProps;\n\n const getHeaderGroupsMap = {\n center: getCenterHeaderGroups,\n left: getLeftHeaderGroups,\n none: getHeaderGroups,\n right: getRightHeaderGroups,\n };\n\n return (\n <TableHead {...tableHeadProps}>\n {getHeaderGroupsMap[pinned]().map((headerGroup) => (\n <MRT_TableHeadRow\n headerGroup={headerGroup as MRT_HeaderGroup}\n key={headerGroup.getHeaderGroupProps().key}\n tableInstance={tableInstance}\n />\n ))}\n </TableHead>\n );\n};\n","import React, { ChangeEvent, FC, MouseEvent } from 'react';\nimport { TextField } from '@mui/material';\nimport type { MRT_Cell, MRT_TableInstance } from '..';\n\ninterface Props {\n cell: MRT_Cell;\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_EditCellTextField: FC<Props> = ({ cell, tableInstance }) => {\n const {\n getState,\n options: { enableRowEditing, muiTableBodyCellEditTextFieldProps },\n } = tableInstance;\n\n const { column, row } = cell;\n\n const handleChange = (event: ChangeEvent<HTMLInputElement>) => {\n if (getState().currentEditingRow) {\n row.values[column.id] = event.target.value;\n // setCurrentEditingRow({\n // ...getState().currentEditingRow,\n // });\n }\n column.onCellEditChange?.({ event, cell, tableInstance });\n };\n\n const mTableBodyCellEditTextFieldProps =\n muiTableBodyCellEditTextFieldProps instanceof Function\n ? muiTableBodyCellEditTextFieldProps({ cell, tableInstance })\n : muiTableBodyCellEditTextFieldProps;\n\n const mcTableBodyCellEditTextFieldProps =\n column.muiTableBodyCellEditTextFieldProps instanceof Function\n ? column.muiTableBodyCellEditTextFieldProps({ cell, tableInstance })\n : column.muiTableBodyCellEditTextFieldProps;\n\n const textFieldProps = {\n ...mTableBodyCellEditTextFieldProps,\n ...mcTableBodyCellEditTextFieldProps,\n };\n\n if (enableRowEditing && column.enableEditing !== false && column.Edit) {\n return <>{column.Edit?.({ cell, tableInstance })}</>;\n }\n\n return (\n <TextField\n margin=\"dense\"\n onChange={handleChange}\n onClick={(e: MouseEvent<HTMLInputElement>) => e.stopPropagation()}\n placeholder={column.header}\n value={cell.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 tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_CopyButton: FC<Props> = ({\n cell,\n children,\n tableInstance,\n}) => {\n const {\n options: { localization, muiTableBodyCellCopyButtonProps },\n } = tableInstance;\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, tableInstance })\n : muiTableBodyCellCopyButtonProps;\n\n const mcTableBodyCellCopyButtonProps =\n cell.column.muiTableBodyCellCopyButtonProps instanceof Function\n ? cell.column.muiTableBodyCellCopyButtonProps({ cell, tableInstance })\n : cell.column.muiTableBodyCellCopyButtonProps;\n\n const buttonProps = {\n ...mTableBodyCellCopyButtonProps,\n ...mcTableBodyCellCopyButtonProps,\n };\n\n return (\n <Tooltip\n arrow\n enterDelay={1000}\n enterNextDelay={1000}\n placement=\"top\"\n title={copied ? localization.copiedToClipboard : localization.clickToCopy}\n >\n <Button\n aria-label={localization.clickToCopy}\n onClick={() => handleCopy(cell.value)}\n size=\"small\"\n {...buttonProps}\n sx={{\n backgroundColor: 'transparent',\n border: 'none',\n color: 'inherit',\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 variant=\"text\"\n >\n {children}\n </Button>\n </Tooltip>\n );\n};\n","import React, { FC, MouseEvent, useMemo } from 'react';\nimport { Skeleton, TableCell } from '@mui/material';\nimport { MRT_EditCellTextField } from '../inputs/MRT_EditCellTextField';\nimport type { MRT_Cell, MRT_TableInstance } from '..';\nimport { MRT_CopyButton } from '../buttons/MRT_CopyButton';\n\ninterface Props {\n cell: MRT_Cell;\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_TableBodyCell: FC<Props> = ({ cell, tableInstance }) => {\n const {\n getIsSomeColumnsPinned,\n getState,\n options: {\n enableClickToCopy,\n enableColumnPinning,\n isLoading,\n muiTableBodyCellProps,\n muiTableBodyCellSkeletonProps,\n onCellClick,\n },\n } = tableInstance;\n\n const { currentEditingRow, isDensePadding } = getState();\n\n const { column, row } = cell;\n\n const mTableCellBodyProps =\n muiTableBodyCellProps instanceof Function\n ? muiTableBodyCellProps({ cell, tableInstance })\n : muiTableBodyCellProps;\n\n const mcTableCellBodyProps =\n column.muiTableBodyCellProps instanceof Function\n ? column.muiTableBodyCellProps({ cell, tableInstance })\n : column.muiTableBodyCellProps;\n\n const tableCellProps = {\n ...cell.getCellProps(),\n ...mTableCellBodyProps,\n ...mcTableCellBodyProps,\n };\n\n const skeletonWidth = useMemo(\n () =>\n column.columnDefType === 'display'\n ? column.getWidth() / 2\n : Math.random() * (column.getWidth() - column.getWidth() / 3) +\n column.getWidth() / 3,\n [column.columnDefType, column.getWidth()],\n );\n\n return (\n <TableCell\n onClick={(event: MouseEvent<HTMLTableCellElement>) =>\n onCellClick?.({ event, cell, tableInstance })\n }\n {...tableCellProps}\n sx={{\n p: isDensePadding\n ? column.columnDefType === 'display'\n ? '0 0.5rem'\n : '0.5rem'\n : column.columnDefType === 'display'\n ? '0.5rem 0.75rem'\n : '1rem',\n pl:\n column.id === 'mrt-expand'\n ? `${row.depth + (isDensePadding ? 0.5 : 0.75)}rem`\n : undefined,\n transition: 'all 0.2s ease-in-out',\n whiteSpace:\n isDensePadding || (enableColumnPinning && getIsSomeColumnsPinned())\n ? 'nowrap'\n : 'normal',\n //@ts-ignore\n ...tableCellProps?.sx,\n }}\n >\n {isLoading ? (\n <Skeleton\n animation=\"wave\"\n height={20}\n width={skeletonWidth}\n {...muiTableBodyCellSkeletonProps}\n />\n ) : column.columnDefType === 'display' ? (\n column.Cell?.({ cell, tableInstance })\n ) : cell.getIsPlaceholder() ||\n (row.getIsGrouped() &&\n column.id !==\n row.groupingColumnId) ? null : cell.getIsAggregated() ? (\n cell.renderAggregatedCell()\n ) : column.enableEditing && currentEditingRow?.id === row.id ? (\n <MRT_EditCellTextField cell={cell} tableInstance={tableInstance} />\n ) : (enableClickToCopy || column.enableClickToCopy) &&\n column.enableClickToCopy !== false ? (\n <>\n <MRT_CopyButton cell={cell} tableInstance={tableInstance}>\n {cell.renderCell()}\n </MRT_CopyButton>\n {row.getIsGrouped() && <> ({row.subRows?.length})</>}\n </>\n ) : (\n <>\n {cell.renderCell()}\n {row.getIsGrouped() && <> ({row.subRows?.length})</>}\n </>\n )}\n </TableCell>\n );\n};\n","import React, { FC, MouseEvent } from 'react';\nimport { Collapse, TableCell, TableRow } from '@mui/material';\nimport type { MRT_Row, MRT_TableInstance } from '..';\n\ninterface Props {\n row: MRT_Row;\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_TableDetailPanel: FC<Props> = ({ row, tableInstance }) => {\n const {\n getVisibleFlatColumns,\n options: {\n muiTableBodyRowProps,\n muiTableDetailPanelProps,\n onDetailPanelClick,\n renderDetailPanel,\n },\n } = tableInstance;\n\n const tableRowProps =\n muiTableBodyRowProps instanceof Function\n ? muiTableBodyRowProps({ row, tableInstance })\n : muiTableBodyRowProps;\n\n const tableCellProps =\n muiTableDetailPanelProps instanceof Function\n ? muiTableDetailPanelProps({ row, tableInstance })\n : muiTableDetailPanelProps;\n\n return (\n <TableRow {...tableRowProps}>\n <TableCell\n colSpan={getVisibleFlatColumns().length + 10}\n onClick={(event: MouseEvent<HTMLTableCellElement>) =>\n onDetailPanelClick?.({ event, row, tableInstance })\n }\n {...tableCellProps}\n sx={{\n borderBottom: !row.getIsExpanded() ? 'none' : undefined,\n pb: row.getIsExpanded() ? '1rem' : 0,\n pt: row.getIsExpanded() ? '1rem' : 0,\n transition: 'all 0.2s ease-in-out',\n ...tableCellProps?.sx,\n }}\n >\n <Collapse in={row.getIsExpanded()}>\n {renderDetailPanel?.({ row, tableInstance })}\n </Collapse>\n </TableCell>\n </TableRow>\n );\n};\n","import React, { FC, MouseEvent } from 'react';\nimport { TableRow } from '@mui/material';\nimport { MRT_TableBodyCell } from './MRT_TableBodyCell';\nimport { MRT_TableDetailPanel } from './MRT_TableDetailPanel';\nimport type { MRT_Row, MRT_TableInstance } from '..';\n\ninterface Props {\n pinned: 'left' | 'center' | 'right' | 'none';\n row: MRT_Row;\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_TableBodyRow: FC<Props> = ({ pinned, row, tableInstance }) => {\n const {\n options: { muiTableBodyRowProps, onRowClick, renderDetailPanel },\n } = tableInstance;\n\n const {\n getCenterVisibleCells,\n getIsGrouped,\n getIsSelected,\n getLeftVisibleCells,\n getRightVisibleCells,\n getRowProps,\n getVisibleCells,\n } = row;\n\n const mTableBodyRowProps =\n muiTableBodyRowProps instanceof Function\n ? muiTableBodyRowProps({ row, tableInstance })\n : muiTableBodyRowProps;\n\n const tableRowProps = {\n ...getRowProps(),\n ...mTableBodyRowProps,\n };\n\n const getVisibleCellsMap = {\n center: getCenterVisibleCells,\n left: getLeftVisibleCells,\n none: getVisibleCells,\n right: getRightVisibleCells,\n };\n\n return (\n <>\n <TableRow\n hover\n onClick={(event: MouseEvent<HTMLTableRowElement>) =>\n onRowClick?.({ event, row, tableInstance })\n }\n selected={getIsSelected()}\n {...tableRowProps}\n >\n {getVisibleCellsMap[pinned]().map((cell) => (\n <MRT_TableBodyCell\n cell={cell}\n key={cell.getCellProps().key}\n tableInstance={tableInstance}\n />\n ))}\n </TableRow>\n {renderDetailPanel && !getIsGrouped() && (\n <MRT_TableDetailPanel row={row} tableInstance={tableInstance} />\n )}\n </>\n );\n};\n","import React, { FC } from 'react';\nimport { TableBody } from '@mui/material';\nimport { MRT_TableBodyRow } from './MRT_TableBodyRow';\nimport { MRT_TableInstance } from '..';\n\ninterface Props {\n pinned: 'left' | 'center' | 'right' | 'none';\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_TableBody: FC<Props> = ({ pinned, tableInstance }) => {\n const {\n getPaginationRowModel,\n getPrePaginationRowModel,\n getTableBodyProps,\n options: { enablePagination, muiTableBodyProps },\n } = tableInstance;\n\n const rows = enablePagination\n ? getPaginationRowModel().rows\n : getPrePaginationRowModel().rows;\n\n const mTableBodyProps =\n muiTableBodyProps instanceof Function\n ? muiTableBodyProps({ tableInstance })\n : muiTableBodyProps;\n\n const tableBodyProps = {\n ...getTableBodyProps(),\n ...mTableBodyProps,\n };\n\n return (\n <TableBody {...tableBodyProps}>\n {rows.map((row) => (\n <MRT_TableBodyRow\n key={row.getRowProps().key}\n pinned={pinned}\n row={row}\n tableInstance={tableInstance}\n />\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 tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_TableFooterCell: FC<Props> = ({ footer, tableInstance }) => {\n const {\n getState,\n options: { muiTableFooterCellProps, enableColumnResizing },\n } = tableInstance;\n\n const { isDensePadding } = getState();\n\n const { column } = footer;\n\n const mTableFooterCellProps =\n muiTableFooterCellProps instanceof Function\n ? muiTableFooterCellProps({ column, tableInstance })\n : muiTableFooterCellProps;\n\n const mcTableFooterCellProps =\n column.muiTableFooterCellProps instanceof Function\n ? column.muiTableFooterCellProps({ column, tableInstance })\n : column.muiTableFooterCellProps;\n\n const tableCellProps = {\n ...footer.getFooterProps(),\n ...mTableFooterCellProps,\n ...mcTableFooterCellProps,\n };\n\n return (\n <TableCell\n align={column.columnDefType === 'group' ? 'center' : 'left'}\n variant=\"head\"\n {...tableCellProps}\n //@ts-ignore\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 p: isDensePadding ? '0.5rem' : '1rem',\n transition: `all ${enableColumnResizing ? '10ms' : '0.2s'} ease-in-out`,\n verticalAlign: 'text-top',\n //@ts-ignore\n ...tableCellProps?.sx,\n })}\n >\n {footer.isPlaceholder\n ? null\n : column.Footer?.({\n footer,\n tableInstance,\n }) ??\n column.footer ??\n null}\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 tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_TableFooterRow: FC<Props> = ({\n footerGroup,\n tableInstance,\n}) => {\n const {\n options: { muiTableFooterRowProps },\n } = tableInstance;\n\n // if no content in row, skip row\n if (\n !footerGroup.headers?.some(\n (h) => h.column.columnDef.footer || h.column.Footer,\n )\n )\n return null;\n\n const mTableFooterRowProps =\n muiTableFooterRowProps instanceof Function\n ? muiTableFooterRowProps({ footerGroup, tableInstance })\n : muiTableFooterRowProps;\n\n const tableRowProps = {\n ...footerGroup.getFooterGroupProps(),\n ...mTableFooterRowProps,\n };\n\n return (\n <TableRow {...tableRowProps}>\n {footerGroup.headers.map((footer: MRT_Header) => (\n <MRT_TableFooterCell\n footer={footer}\n key={footer.getFooterProps().key}\n tableInstance={tableInstance}\n />\n ))}\n </TableRow>\n );\n};\n","import React, { FC } from 'react';\nimport { TableFooter } from '@mui/material';\nimport { MRT_TableFooterRow } from './MRT_TableFooterRow';\nimport type { MRT_HeaderGroup, MRT_TableInstance } from '..';\n\ninterface Props {\n pinned: 'left' | 'center' | 'right' | 'none';\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_TableFooter: FC<Props> = ({ pinned, tableInstance }) => {\n const {\n getCenterFooterGroups,\n getFooterGroups,\n getLeftFooterGroups,\n getRightFooterGroups,\n options: { muiTableFooterProps },\n } = tableInstance;\n\n const tableFooterProps =\n muiTableFooterProps instanceof Function\n ? muiTableFooterProps({ tableInstance })\n : muiTableFooterProps;\n\n const getFooterGroupsMap = {\n center: getCenterFooterGroups,\n left: getLeftFooterGroups,\n none: getFooterGroups,\n right: getRightFooterGroups,\n };\n\n return (\n <TableFooter {...tableFooterProps}>\n {getFooterGroupsMap[pinned]().map((footerGroup) => (\n <MRT_TableFooterRow\n footerGroup={footerGroup as MRT_HeaderGroup}\n key={footerGroup.getFooterGroupProps().key}\n tableInstance={tableInstance}\n />\n ))}\n </TableFooter>\n );\n};\n","import React, { FC } 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 pinned: 'left' | 'center' | 'right' | 'none';\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_Table: FC<Props> = ({ pinned, tableInstance }) => {\n const {\n getTableProps,\n options: {\n enableStickyHeader,\n hideTableFooter,\n hideTableHead,\n muiTableProps,\n },\n } = tableInstance;\n\n const mTableProps =\n muiTableProps instanceof Function\n ? muiTableProps({ tableInstance })\n : muiTableProps;\n\n const tableProps = {\n ...getTableProps(),\n ...mTableProps,\n };\n\n return (\n <Table stickyHeader={enableStickyHeader} {...tableProps}>\n {!hideTableHead && (\n <MRT_TableHead pinned={pinned} tableInstance={tableInstance} />\n )}\n <MRT_TableBody pinned={pinned} tableInstance={tableInstance} />\n {!hideTableFooter && (\n <MRT_TableFooter pinned={pinned} tableInstance={tableInstance} />\n )}\n </Table>\n );\n};\n","import React, { FC, useLayoutEffect, useState } from 'react';\nimport { alpha, Box, TableContainer, Theme } from '@mui/material';\nimport { SystemStyleObject } from '@mui/material/node_modules/@mui/system';\nimport { MRT_TableInstance } from '..';\nimport { MRT_Table } from './MRT_Table';\n\nconst commonBoxStyles = ({\n pinned,\n theme,\n visible,\n}: {\n pinned?: 'left' | 'right';\n theme: Theme;\n visible?: boolean;\n}): SystemStyleObject<Theme> => ({\n display: 'grid',\n minWidth: visible ? '200px' : 0,\n overflowX: 'auto',\n boxShadow:\n pinned === 'left'\n ? `0 1px 12px ${alpha(theme.palette.common.black, 0.5)}`\n : pinned === 'right'\n ? `0 -1px 12px ${alpha(theme.palette.common.black, 0.5)}`\n : 'none',\n});\n\ninterface Props {\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_TableContainer: FC<Props> = ({ tableInstance }) => {\n const {\n getCenterTableWidth,\n getIsSomeColumnsPinned,\n getLeftTableWidth,\n getRightTableWidth,\n getState,\n options: {\n enableColumnPinning,\n enableStickyHeader,\n idPrefix,\n muiTableContainerProps,\n },\n } = tableInstance;\n\n const { isFullScreen, columnPinning } = getState();\n\n const [totalToolbarHeight, setTotalToolbarHeight] = useState(0);\n\n const tableContainerProps =\n muiTableContainerProps instanceof Function\n ? muiTableContainerProps({ tableInstance })\n : muiTableContainerProps;\n\n useLayoutEffect(() => {\n const topToolbarHeight =\n typeof document !== 'undefined'\n ? document?.getElementById(`mrt-${idPrefix}-toolbar-top`)\n ?.offsetHeight ?? 0\n : 0;\n\n const bottomToolbarHeight =\n typeof document !== 'undefined'\n ? document?.getElementById(`mrt-${idPrefix}-toolbar-bottom`)\n ?.offsetHeight ?? 0\n : 0;\n\n setTotalToolbarHeight(topToolbarHeight + bottomToolbarHeight);\n });\n\n return (\n <TableContainer\n {...tableContainerProps}\n sx={{\n maxWidth: '100%',\n maxHeight: enableStickyHeader\n ? `clamp(350px, calc(100vh - ${totalToolbarHeight}px), 2000px)`\n : undefined,\n overflow: 'auto',\n ...tableContainerProps?.sx,\n }}\n style={{\n maxHeight: isFullScreen\n ? `calc(100vh - ${totalToolbarHeight}px)`\n : undefined,\n }}\n >\n {enableColumnPinning && getIsSomeColumnsPinned() ? (\n <Box\n sx={{\n display: 'grid',\n gridTemplateColumns: `${getLeftTableWidth()}fr ${getCenterTableWidth()}fr ${getRightTableWidth()}fr`,\n }}\n >\n <Box\n sx={(theme: Theme) =>\n commonBoxStyles({\n pinned: 'left',\n theme,\n visible: !!columnPinning.left?.length,\n })\n }\n >\n <MRT_Table pinned=\"left\" tableInstance={tableInstance} />\n </Box>\n <Box sx={(theme: Theme) => commonBoxStyles({ theme })}>\n <MRT_Table pinned=\"center\" tableInstance={tableInstance} />\n </Box>\n <Box\n sx={(theme: Theme) =>\n commonBoxStyles({\n pinned: 'right',\n theme,\n visible: !!columnPinning.right?.length,\n })\n }\n >\n <MRT_Table pinned=\"right\" tableInstance={tableInstance} />\n </Box>\n </Box>\n ) : (\n <MRT_Table pinned=\"none\" tableInstance={tableInstance} />\n )}\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 { MRT_TableInstance } from '..';\n\ninterface Props {\n tableInstance: MRT_TableInstance;\n}\n\nexport const MRT_TablePaper: FC<Props> = ({ tableInstance }) => {\n const {\n getState,\n options: { hideToolbarBottom, hideToolbarTop, muiTablePaperProps },\n } = tableInstance;\n\n const { isFullScreen } = getState();\n\n useEffect(() => {\n if (typeof window !== 'undefined') {\n if (isFullScreen) {\n document.body.style.overflow = 'hidden';\n } else {\n document.body.style.overflow = 'auto';\n }\n }\n }, [isFullScreen]);\n\n const tablePaperProps =\n muiTablePaperProps instanceof Function\n ? muiTablePaperProps({ tableInstance })\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 height: isFullScreen ? '100%' : undefined,\n left: isFullScreen ? '0' : undefined,\n margin: isFullScreen ? '0' : undefined,\n maxHeight: isFullScreen ? '100%' : undefined,\n maxWidth: isFullScreen ? '100%' : undefined,\n overflowY: !isFullScreen ? 'hidden' : undefined,\n position: isFullScreen ? 'fixed' : undefined,\n right: isFullScreen ? '0' : undefined,\n top: isFullScreen ? '0' : undefined,\n width: isFullScreen ? '100vw' : undefined,\n zIndex: isFullScreen ? 1200 : 1,\n bottom: isFullScreen ? '0' : undefined,\n }}\n >\n {!hideToolbarTop && <MRT_ToolbarTop tableInstance={tableInstance} />}\n <MRT_TableContainer tableInstance={tableInstance} />\n {!hideToolbarBottom && (\n <MRT_ToolbarBottom tableInstance={tableInstance} />\n )}\n </Paper>\n );\n};\n","import { ColumnDef, Table } from '@tanstack/react-table';\nimport { MRT_ColumnInterface, MRT_FilterType } from '.';\nimport { MRT_FILTER_TYPE } from './enums';\n\nexport const getAllLeafColumnDefs = (\n columns: MRT_ColumnInterface[],\n): MRT_ColumnInterface[] => {\n let lowestLevelColumns: MRT_ColumnInterface[] = columns;\n let currentCols: MRT_ColumnInterface[] | undefined = columns;\n while (!!currentCols?.length && currentCols.some((col) => col.columns)) {\n const nextCols: MRT_ColumnInterface[] = currentCols\n .filter((col) => !!col.columns)\n .map((col) => col.columns)\n .flat() as MRT_ColumnInterface[];\n if (nextCols.every((col) => !col?.columns)) {\n lowestLevelColumns = [...lowestLevelColumns, ...nextCols];\n }\n currentCols = nextCols;\n }\n return lowestLevelColumns.filter((col) => !col.columns);\n};\n\nexport const createGroup = <D extends Record<string, any> = {}>(\n table: Table<D>,\n column: MRT_ColumnInterface<D>,\n currentFilterTypes: { [key: string]: MRT_FilterType },\n): ColumnDef<D> =>\n table.createGroup({\n ...column,\n columns: column?.columns?.map?.((col) =>\n col.columns\n ? createGroup<D>(table, col, currentFilterTypes)\n : createDataColumn(table, col, currentFilterTypes),\n ),\n } as any);\n\nexport const createDataColumn = <D extends Record<string, any> = {}>(\n table: Table<D>,\n column: MRT_ColumnInterface<D>,\n currentFilterTypes: { [key: string]: MRT_FilterType },\n): ColumnDef<D> => // @ts-ignore\n table.createDataColumn(column.id, {\n filterType: currentFilterTypes[column.id] || MRT_FILTER_TYPE.BEST_MATCH,\n ...column,\n }) as any;\n\nexport const createDisplayColumn = <D extends Record<string, any> = {}>(\n table: Table<D>,\n column: Omit<MRT_ColumnInterface<D>, 'header'> & { header?: string },\n): ColumnDef<D> => table.createDisplayColumn(column);\n","import {\n columnFilterRowsFn,\n createTable,\n expandRowsFn,\n functionalUpdate,\n globalFilterRowsFn,\n groupRowsFn,\n paginateRowsFn,\n PaginationState,\n sortRowsFn,\n Table,\n useTable,\n} from '@tanstack/react-table';\nimport React, { useMemo, useState } from 'react';\nimport {\n MRT_ColumnInterface,\n MRT_FilterType,\n MRT_Row,\n MRT_TableInstance,\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 {\n createDataColumn,\n createDisplayColumn,\n createGroup,\n getAllLeafColumnDefs,\n} from '../utils';\nimport { defaultFilterFNs } from '../filtersFNs';\nimport { MRT_FILTER_TYPE } from '../enums';\n\nexport const MRT_TableRoot = <D extends Record<string, any> = {}>(\n props: MaterialReactTableProps<D>,\n) => {\n const idPrefix = useMemo(\n () => props.idPrefix ?? Math.random().toString(36).substring(2, 9),\n [props.idPrefix],\n );\n const [currentEditingRow, setCurrentEditingRow] = useState<MRT_Row | null>(\n null,\n );\n const [isDensePadding, setIsDensePadding] = useState(\n props.initialState?.isDensePadding ?? false,\n );\n const [isFullScreen, setIsFullScreen] = useState(\n props.initialState?.isFullScreen ?? false,\n );\n const [showFilters, setShowFilters] = useState(\n props.initialState?.showFilters ?? false,\n );\n const [showSearch, setShowSearch] = useState(\n props.initialState?.showSearch ?? false,\n );\n\n const [pagination, setPagination] = useState<PaginationState>({\n pageIndex: props.initialState?.pagination?.pageIndex ?? 0,\n pageSize: props.initialState?.pagination?.pageSize ?? 10,\n pageCount: props.initialState?.pagination?.pageCount ?? -1,\n });\n\n const [currentFilterTypes, setCurrentFilterTypes] = useState<{\n [key: string]: MRT_FilterType;\n }>(() =>\n Object.assign(\n {},\n ...getAllLeafColumnDefs(props.columns as MRT_ColumnInterface[]).map(\n (c) => ({\n [c.id as string]:\n c.filter ??\n props?.initialState?.columnFilters?.[c.id as any] ??\n (!!c.filterSelectOptions?.length\n ? MRT_FILTER_TYPE.EQUALS\n : MRT_FILTER_TYPE.BEST_MATCH),\n }),\n ),\n ),\n );\n\n const [currentGlobalFilterType, setCurrentGlobalFilterType] = useState(\n props.globalFilterType ?? MRT_FILTER_TYPE.BEST_MATCH_FIRST,\n );\n\n const table = useMemo(\n () => createTable<{ Row: D }>(),\n [],\n ) as unknown as Table<D>;\n\n const displayColumns = useMemo(\n () =>\n [\n (props.enableRowActions || props.enableRowEditing) &&\n createDisplayColumn(table, {\n Cell: ({ cell }) => (\n <MRT_ToggleRowActionMenuButton\n row={cell.row as any}\n tableInstance={tableInstance}\n />\n ),\n header: props.localization?.actions,\n id: 'mrt-row-actions',\n maxWidth: 60,\n width: 60,\n }),\n (props.enableExpanded || props.enableGrouping) &&\n createDisplayColumn(table, {\n Cell: ({ cell }) => (\n <MRT_ExpandButton\n row={cell.row as any}\n tableInstance={tableInstance}\n />\n ),\n Header: () =>\n props.enableExpandAll ? (\n <MRT_ExpandAllButton tableInstance={tableInstance} />\n ) : null,\n header: props.localization?.expand,\n id: 'mrt-expand',\n maxWidth: 40,\n width: 40,\n }),\n props.enableRowSelection &&\n createDisplayColumn(table, {\n Cell: ({ cell }) => (\n <MRT_SelectCheckbox\n row={cell.row as any}\n tableInstance={tableInstance}\n />\n ),\n Header: () =>\n props.enableSelectAll ? (\n <MRT_SelectCheckbox selectAll tableInstance={tableInstance} />\n ) : null,\n header: props.localization?.select,\n id: 'mrt-select',\n maxWidth: 40,\n width: 40,\n }),\n props.enableRowNumbers &&\n createDisplayColumn(table, {\n Cell: ({ cell }) => cell.row.index + 1,\n Header: () => '#',\n header: props.localization?.rowNumbers,\n id: 'mrt-row-numbers',\n maxWidth: 40,\n width: 40,\n minWidth: 40,\n }),\n ].filter(Boolean),\n [\n props.enableExpandAll,\n props.enableExpanded,\n props.enableRowActions,\n props.enableRowEditing,\n props.enableRowNumbers,\n props.enableRowSelection,\n props.enableSelectAll,\n props.localization,\n ],\n );\n\n const columns = useMemo(\n () =>\n table.createColumns([\n ...displayColumns,\n ...props.columns.map((column) =>\n column.columns\n ? createGroup(table, column, currentFilterTypes)\n : createDataColumn(table, column, currentFilterTypes),\n ),\n ] as any),\n [table, props.columns, currentFilterTypes],\n );\n\n const data = useMemo(\n () =>\n props.isLoading && !props.data.length\n ? [...Array(10).fill(null)].map((_) =>\n Object.assign(\n {},\n ...getAllLeafColumnDefs(\n props.columns as MRT_ColumnInterface[],\n ).map((c) => ({\n [c.id]: null,\n })),\n ),\n )\n : props.data,\n [props.data, props.isLoading],\n );\n\n //@ts-ignore\n const tableInstance: MRT_TableInstance<{}> = useTable(table, {\n ...props,\n //@ts-ignore\n filterTypes: defaultFilterFNs,\n globalFilterType: currentGlobalFilterType,\n columnFilterRowsFn: columnFilterRowsFn,\n columns,\n data,\n expandRowsFn: expandRowsFn,\n getSubRows: props.getSubRows ?? ((originalRow: D) => originalRow.subRows),\n globalFilterRowsFn: globalFilterRowsFn,\n groupRowsFn: groupRowsFn,\n idPrefix,\n onPaginationChange: (updater: any) =>\n setPagination((old) => functionalUpdate(updater, old)),\n paginateRowsFn: paginateRowsFn,\n setCurrentEditingRow,\n setCurrentFilterTypes,\n setCurrentGlobalFilterType,\n setIsDensePadding,\n setIsFullScreen,\n setShowFilters,\n setShowSearch,\n sortRowsFn,\n state: {\n ...props.initialState,\n currentEditingRow,\n currentFilterTypes,\n currentGlobalFilterType,\n isDensePadding,\n isFullScreen,\n //@ts-ignore\n pagination,\n showFilters,\n showSearch,\n ...props.state,\n },\n });\n\n return <MRT_TablePaper tableInstance={tableInstance} />;\n};\n","import React, {\n ChangeEvent,\n Dispatch,\n FC,\n MouseEvent,\n ReactNode,\n SetStateAction,\n} from 'react';\nimport {\n AlertProps,\n ButtonProps,\n CheckboxProps,\n IconButtonProps,\n LinearProgressProps,\n PaperProps,\n SkeletonProps,\n TableBodyProps,\n TableCellProps,\n TableContainerProps,\n TableFooterProps,\n TableHeadProps,\n TablePaginationProps,\n TableProps,\n TableRowProps,\n TextFieldProps,\n ToolbarProps,\n} from '@mui/material';\nimport {\n Cell,\n Column,\n ColumnDef,\n DefaultGenerics,\n FilterType,\n Header,\n HeaderGroup,\n Options,\n Overwrite,\n PaginationState,\n Row,\n TableInstance,\n TableState,\n VisibilityState,\n} from '@tanstack/react-table';\nimport { MRT_Localization, MRT_DefaultLocalization_EN } from './localization';\nimport { MRT_Default_Icons, MRT_Icons } from './icons';\nimport { MRT_FILTER_TYPE } from './enums';\nimport { MRT_TableRoot } from './table/MRT_TableRoot';\n\nexport type MRT_TableOptions<D extends Record<string, any> = {}> = Partial<\n Omit<\n Options<D>,\n 'columns' | 'data' | 'initialState' | 'state' | 'expandRowsFn'\n >\n> & {\n columns: MRT_ColumnInterface<D>[];\n data: D[];\n initialState?: Partial<MRT_TableState<D>>;\n state?: Partial<MRT_TableState<D>>;\n expandRowsFn?: (dataRow: D) => D[];\n};\n\nexport interface MRT_RowModel<D extends Record<string, any> = {}> {\n flatRows: MRT_Row<D>[];\n rows: MRT_Row<D>[];\n rowsById: { [key: string]: MRT_Row<D> };\n}\n\nexport type MRT_TableInstance<D extends Record<string, any> = {}> = Omit<\n TableInstance<\n Overwrite<\n Partial<DefaultGenerics>,\n {\n Row: D;\n }\n >\n >,\n | 'getAllColumns'\n | 'getAllLeafColumns'\n | 'getExpandedRowModel'\n | 'getPaginationRowModel'\n | 'getPrePaginationRowModel'\n | 'getRowModel'\n | 'getSelectedRowModel'\n | 'getState'\n | 'options'\n> & {\n getAllColumns: () => MRT_ColumnInstance<D>[];\n getAllLeafColumns: () => MRT_ColumnInstance<D>[];\n getExpandedRowModel: () => MRT_RowModel<D>;\n getPaginationRowModel: () => MRT_RowModel<D>;\n getPrePaginationRowModel: () => MRT_RowModel<D>;\n getRowModel: () => MRT_RowModel<D>;\n getSelectedRowModel: () => MRT_RowModel<D>;\n getState: () => MRT_TableState<D>;\n options: MaterialReactTableProps<D> & {\n icons: MRT_Icons;\n idPrefix: string;\n filterTypes: { [key in MRT_FILTER_TYPE]: any };\n localization: MRT_Localization;\n setCurrentEditingRow: Dispatch<SetStateAction<MRT_Row<D> | null>>;\n setCurrentFilterTypes: Dispatch<\n SetStateAction<{\n [key: string]: MRT_FilterType;\n }>\n >;\n setCurrentGlobalFilterType: Dispatch<SetStateAction<MRT_FILTER_TYPE>>;\n setIsDensePadding: Dispatch<SetStateAction<boolean>>;\n setIsFullScreen: Dispatch<SetStateAction<boolean>>;\n setShowFilters: Dispatch<SetStateAction<boolean>>;\n setShowSearch: Dispatch<SetStateAction<boolean>>;\n };\n};\n\nexport type MRT_TableState<D extends Record<string, any> = {}> = Omit<\n TableState,\n 'pagination'\n> & {\n currentEditingRow: MRT_Row<D> | null;\n currentFilterTypes: Record<string, string | Function>;\n currentGlobalFilterType: Record<string, string | Function>;\n isDensePadding: boolean;\n isFullScreen: boolean;\n showFilters: boolean;\n showSearch: boolean;\n pagination: Partial<PaginationState>;\n};\n\nexport type MRT_ColumnInterface<D extends Record<string, any> = {}> = Omit<\n ColumnDef<D>,\n 'header' | 'footer' | 'columns'\n> & {\n Edit?: ({\n cell,\n tableInstance,\n }: // onChange,\n {\n cell: MRT_Cell<D>;\n tableInstance: MRT_TableInstance<D>;\n // onChange?: (event: ChangeEvent<HTMLInputElement>) => void;\n }) => ReactNode;\n Filter?: ({\n // onChange,\n header,\n tableInstance,\n }: {\n // onChange?: (event: ChangeEvent<HTMLInputElement>) => void;\n header: MRT_Header<D>;\n tableInstance: MRT_TableInstance<D>;\n }) => ReactNode;\n Footer?: ({\n footer,\n tableInstance,\n }: {\n footer: MRT_Header<D>;\n tableInstance: MRT_TableInstance<D>;\n }) => ReactNode;\n Header?: ({\n header,\n tableInstance,\n }: {\n header: MRT_Header<D>;\n tableInstance: MRT_TableInstance<D>;\n }) => ReactNode;\n Cell?: ({\n cell,\n tableInstance,\n }: {\n cell: MRT_Cell<D>;\n tableInstance: MRT_TableInstance<D>;\n }) => ReactNode;\n id: keyof D | string;\n columns?: MRT_ColumnInterface<D>[];\n enableClickToCopy?: boolean;\n enableColumnActions?: boolean;\n enableEditing?: boolean;\n enabledFilterTypes?: (MRT_FILTER_TYPE | string)[];\n filter?: MRT_FilterType | string | FilterType<D>;\n filterSelectOptions?: (string | { text: string; value: string })[];\n footer?: string;\n header: string;\n muiTableBodyCellCopyButtonProps?:\n | ButtonProps\n | (({\n tableInstance,\n cell,\n }: {\n tableInstance: MRT_TableInstance;\n cell: MRT_Cell<D>;\n }) => ButtonProps);\n muiTableBodyCellEditTextFieldProps?:\n | TextFieldProps\n | (({\n tableInstance,\n cell,\n }: {\n tableInstance: MRT_TableInstance;\n cell: MRT_Cell<D>;\n }) => TextFieldProps);\n muiTableBodyCellProps?:\n | TableCellProps\n | (({\n tableInstance,\n cell,\n }: {\n tableInstance: MRT_TableInstance;\n cell: MRT_Cell<D>;\n }) => TableCellProps);\n muiTableFooterCellProps?:\n | TableCellProps\n | (({\n tableInstance,\n column,\n }: {\n tableInstance: MRT_TableInstance;\n column: MRT_ColumnInstance<D>;\n }) => TableCellProps);\n muiTableHeadCellColumnActionsButtonProps?:\n | IconButtonProps\n | (({\n tableInstance,\n column,\n }: {\n tableInstance: MRT_TableInstance;\n column: MRT_ColumnInstance<D>;\n }) => IconButtonProps);\n muiTableHeadCellFilterTextFieldProps?:\n | TextFieldProps\n | (({\n tableInstance,\n column,\n }: {\n tableInstance: MRT_TableInstance;\n column: MRT_ColumnInstance<D>;\n }) => TextFieldProps);\n muiTableHeadCellProps?:\n | TableCellProps\n | (({\n tableInstance,\n column,\n }: {\n tableInstance: MRT_TableInstance;\n column: MRT_ColumnInstance<D>;\n }) => TableCellProps);\n onCellEditChange?: ({\n cell,\n event,\n tableInstance,\n }: {\n event: ChangeEvent<HTMLInputElement>;\n cell: MRT_Cell<D>;\n tableInstance: MRT_TableInstance<D>;\n }) => void;\n onColumnFilterValueChange?: ({\n event,\n filterValue,\n }: {\n event: ChangeEvent<HTMLInputElement>;\n filterValue: any;\n }) => void;\n};\n\nexport type MRT_ColumnInstance<D extends Record<string, any> = {}> = Omit<\n Column<D>,\n 'header' | 'footer' | 'columns'\n> &\n MRT_ColumnInterface<D> & {\n columns?: MRT_ColumnInstance<D>[];\n };\n\nexport type MRT_Header<D extends Record<string, any> = {}> = Omit<\n Header<D>,\n 'column'\n> & {\n column: MRT_ColumnInstance<D>;\n};\n\nexport type MRT_HeaderGroup<D extends Record<string, any> = {}> = Omit<\n HeaderGroup<D>,\n 'headers'\n> & {\n headers: MRT_Header<D>[];\n};\n\nexport type MRT_Row<D extends Record<string, any> = {}> = Omit<\n Row<D>,\n | 'getVisibleCells'\n | 'getAllCells'\n | 'subRows'\n | 'original'\n | 'getLeftVisibleCells'\n | 'getRightVisibleCells'\n | 'getCenterVisibleCells'\n> & {\n getAllCells: () => MRT_Cell<D>[];\n getCenterVisibleCells: () => MRT_Cell<D>[];\n getLeftVisibleCells: () => MRT_Cell<D>[];\n getRightVisibleCells: () => MRT_Cell<D>[];\n getVisibleCells: () => MRT_Cell<D>[];\n subRows?: MRT_Row<D>[];\n original: D;\n};\n\nexport type MRT_Cell<D extends Record<string, any> = {}> = Omit<\n Cell<D>,\n 'column' | 'row'\n> & {\n column: MRT_ColumnInstance<D>;\n row: MRT_Row<D>;\n};\n\nexport type MRT_FilterType = MRT_FILTER_TYPE | Function;\n\nexport type MaterialReactTableProps<D extends Record<string, any> = {}> =\n MRT_TableOptions<D> & {\n enableClickToCopy?: boolean;\n enableColumnActions?: boolean;\n enableColumnPinning?: boolean;\n enableDensePaddingToggle?: boolean;\n enableExpandAll?: boolean;\n enableFullScreenToggle?: boolean;\n enablePagination?: boolean;\n enableRowActions?: boolean;\n enableStickyHeader?: boolean;\n enableRowEditing?: boolean;\n enableRowNumbers?: boolean;\n enableSelectAll?: boolean;\n enabledGlobalFilterTypes?: (MRT_FILTER_TYPE | string)[];\n filterTypes?: { [key in MRT_FILTER_TYPE]: any };\n hideTableFooter?: boolean;\n hideTableHead?: boolean;\n hideToolbarBottom?: boolean;\n hideToolbarInternalActions?: boolean;\n hideToolbarTop?: boolean;\n icons?: Partial<MRT_Icons>;\n idPrefix?: string;\n isReloading?: boolean;\n isLoading?: boolean;\n localization?: Partial<MRT_Localization>;\n muiLinearProgressProps?:\n | LinearProgressProps\n | (({\n tableInstance,\n }: {\n tableInstance: MRT_TableInstance;\n }) => LinearProgressProps);\n muiSearchTextFieldProps?:\n | TextFieldProps\n | (({\n tableInstance,\n }: {\n tableInstance: MRT_TableInstance;\n }) => TextFieldProps);\n muiSelectCheckboxProps?:\n | CheckboxProps\n | (({\n tableInstance,\n isSelectAll,\n row,\n }: {\n tableInstance: MRT_TableInstance;\n isSelectAll: boolean;\n row?: MRT_Row<D>;\n }) => CheckboxProps);\n muiTableBodyCellCopyButtonProps?:\n | ButtonProps\n | (({\n tableInstance,\n cell,\n }: {\n tableInstance: MRT_TableInstance;\n cell: MRT_Cell<D>;\n }) => ButtonProps);\n muiTableBodyCellEditTextFieldProps?:\n | TextFieldProps\n | (({\n tableInstance,\n cell,\n }: {\n tableInstance: MRT_TableInstance;\n cell: MRT_Cell<D>;\n }) => TextFieldProps);\n muiTableBodyCellProps?:\n | TableCellProps\n | (({\n tableInstance,\n cell,\n }: {\n tableInstance: MRT_TableInstance;\n cell: MRT_Cell<D>;\n }) => TableCellProps);\n muiTableBodyCellSkeletonProps?:\n | SkeletonProps\n | (({\n tableInstance,\n cell,\n }: {\n tableInstance: MRT_TableInstance;\n cell: MRT_Cell<D>;\n }) => SkeletonProps);\n muiTableBodyProps?:\n | TableBodyProps\n | (({\n tableInstance,\n }: {\n tableInstance: MRT_TableInstance;\n }) => TableBodyProps);\n muiTableBodyRowProps?:\n | TableRowProps\n | (({\n tableInstance,\n row,\n }: {\n tableInstance: MRT_TableInstance;\n row: MRT_Row<D>;\n }) => TableRowProps);\n muiTableContainerProps?:\n | TableContainerProps\n | (({\n tableInstance,\n }: {\n tableInstance: MRT_TableInstance;\n }) => TableContainerProps);\n muiTableDetailPanelProps?:\n | TableCellProps\n | (({\n tableInstance,\n row,\n }: {\n tableInstance: MRT_TableInstance;\n row: MRT_Row<D>;\n }) => TableCellProps);\n muiTableFooterCellProps?:\n | TableCellProps\n | (({\n tableInstance,\n column,\n }: {\n tableInstance: MRT_TableInstance;\n column: MRT_ColumnInstance<D>;\n }) => TableCellProps);\n muiTableFooterProps?:\n | TableFooterProps\n | (({\n tableInstance,\n }: {\n tableInstance: MRT_TableInstance;\n }) => TableFooterProps);\n muiTableFooterRowProps?:\n | TableRowProps\n | (({\n tableInstance,\n footerGroup,\n }: {\n tableInstance: MRT_TableInstance;\n footerGroup: MRT_HeaderGroup<D>;\n }) => TableRowProps);\n muiTableHeadCellColumnActionsButtonProps?:\n | IconButtonProps\n | (({\n tableInstance,\n column,\n }: {\n tableInstance: MRT_TableInstance;\n column: MRT_ColumnInstance<D>;\n }) => IconButtonProps);\n muiTableHeadCellFilterTextFieldProps?:\n | TextFieldProps\n | (({\n tableInstance,\n column,\n }: {\n tableInstance: MRT_TableInstance;\n column: MRT_ColumnInstance<D>;\n }) => TextFieldProps);\n muiTableHeadCellProps?:\n | TableCellProps\n | (({\n tableInstance,\n column,\n }: {\n tableInstance: MRT_TableInstance;\n column: MRT_ColumnInstance<D>;\n }) => TableCellProps);\n muiTableHeadProps?:\n | TableHeadProps\n | (({\n tableInstance,\n }: {\n tableInstance: MRT_TableInstance;\n }) => TableHeadProps);\n muiTableHeadRowProps?:\n | TableRowProps\n | (({\n tableInstance,\n headerGroup,\n }: {\n tableInstance: MRT_TableInstance;\n headerGroup: MRT_HeaderGroup<D>;\n }) => TableRowProps);\n muiTablePaperProps?:\n | PaperProps\n | (({\n tableInstance,\n }: {\n tableInstance: MRT_TableInstance;\n }) => PaperProps);\n muiTablePaginationProps?:\n | Partial<TablePaginationProps>\n | (({\n tableInstance,\n }: {\n tableInstance: MRT_TableInstance;\n }) => Partial<TablePaginationProps>);\n muiTableProps?:\n | TableProps\n | (({\n tableInstance,\n }: {\n tableInstance: MRT_TableInstance;\n }) => TableProps);\n muiTableToolbarAlertBannerProps?:\n | AlertProps\n | (({\n tableInstance,\n }: {\n tableInstance: MRT_TableInstance;\n }) => AlertProps);\n muiTableToolbarBottomProps?:\n | ToolbarProps\n | (({\n tableInstance,\n }: {\n tableInstance: MRT_TableInstance;\n }) => ToolbarProps);\n muiTableToolbarTopProps?:\n | ToolbarProps\n | (({\n tableInstance,\n }: {\n tableInstance: MRT_TableInstance;\n }) => ToolbarProps);\n onCellClick?: ({\n cell,\n event,\n tableInstance,\n }: {\n cell: MRT_Cell<D>;\n tableInstance: MRT_TableInstance<D>;\n event: MouseEvent<HTMLTableCellElement>;\n }) => void;\n onColumnHide?: ({\n column,\n columnVisibility,\n tableInstance,\n }: {\n column: MRT_ColumnInstance<D>;\n columnVisibility: VisibilityState;\n tableInstance: MRT_TableInstance<D>;\n }) => void;\n onDetailPanelClick?: ({\n event,\n row,\n tableInstance,\n }: {\n event: MouseEvent<HTMLTableCellElement>;\n row: MRT_Row<D>;\n tableInstance: MRT_TableInstance<D>;\n }) => void;\n onGlobalFilterChange?: ({\n event,\n tableInstance,\n }: {\n event: ChangeEvent<HTMLInputElement>;\n tableInstance: MRT_TableInstance<D>;\n }) => void;\n onRowClick?: ({\n event,\n row,\n tableInstance,\n }: {\n event: MouseEvent<HTMLTableRowElement>;\n row: MRT_Row<D>;\n tableInstance: MRT_TableInstance<D>;\n }) => void;\n onRowEditSubmit?: ({\n row,\n tableInstance,\n }: {\n row: MRT_Row<D>;\n tableInstance: MRT_TableInstance<D>;\n }) => Promise<void> | void;\n onRowExpandChange?: ({\n event,\n row,\n }: {\n event: MouseEvent<HTMLButtonElement>;\n row: MRT_Row<D>;\n tableInstance: MRT_TableInstance<D>;\n }) => void;\n onSelectAllChange?: ({\n event,\n selectedRows,\n tableInstance,\n }: {\n event: ChangeEvent;\n selectedRows: MRT_Row<D>[];\n tableInstance: MRT_TableInstance<D>;\n }) => void;\n onSelectChange?: ({\n event,\n row,\n selectedRows,\n tableInstance,\n }: {\n event: ChangeEvent;\n row: MRT_Row<D>;\n selectedRows: MRT_Row<D>[];\n tableInstance: MRT_TableInstance<D>;\n }) => void;\n positionActionsColumn?: 'first' | 'last';\n positionPagination?: 'bottom' | 'top' | 'both';\n positionToolbarActions?: 'bottom' | 'top';\n positionToolbarAlertBanner?: 'bottom' | 'top';\n renderDetailPanel?: ({\n row,\n tableInstance,\n }: {\n row: MRT_Row<D>;\n tableInstance: MRT_TableInstance<D>;\n }) => ReactNode;\n renderRowActionMenuItems?: ({\n closeMenu,\n row,\n tableInstance,\n }: {\n closeMenu: () => void;\n row: MRT_Row<D>;\n tableInstance: MRT_TableInstance<D>;\n }) => ReactNode[];\n renderRowActions?: ({\n row,\n tableInstance,\n }: {\n row: MRT_Row<D>;\n tableInstance: MRT_TableInstance<D>;\n }) => ReactNode;\n renderToolbarCustomActions?: ({\n tableInstance,\n }: {\n tableInstance: MRT_TableInstance<D>;\n }) => ReactNode;\n renderToolbarInternalActions?: ({\n tableInstance,\n MRT_ToggleSearchButton,\n MRT_ToggleFiltersButton,\n MRT_ShowHideColumnsButton,\n MRT_ToggleDensePaddingButton,\n MRT_FullScreenToggleButton,\n }: {\n tableInstance: MRT_TableInstance<D>;\n MRT_ToggleSearchButton: FC<\n IconButtonProps & { tableInstance: MRT_TableInstance<D> }\n >;\n MRT_ToggleFiltersButton: FC<\n IconButtonProps & { tableInstance: MRT_TableInstance<D> }\n >;\n MRT_ShowHideColumnsButton: FC<\n IconButtonProps & { tableInstance: MRT_TableInstance<D> }\n >;\n MRT_ToggleDensePaddingButton: FC<\n IconButtonProps & { tableInstance: MRT_TableInstance<D> }\n >;\n MRT_FullScreenToggleButton: FC<\n IconButtonProps & { tableInstance: MRT_TableInstance<D> }\n >;\n }) => ReactNode;\n };\n\nexport default <D extends Record<string, any> = {}>({\n enableColumnActions = true,\n enableColumnFilters = true,\n enableDensePaddingToggle = true,\n enableExpandAll = true,\n enableFullScreenToggle = true,\n enableGlobalFilter = true,\n enableHiding = true,\n enablePagination = true,\n enableSelectAll = true,\n enableSorting = true,\n enableStickyHeader = true,\n filterTypes,\n icons,\n localization,\n positionActionsColumn = 'first',\n positionPagination = 'bottom',\n positionToolbarActions = 'top',\n positionToolbarAlertBanner = 'top',\n ...rest\n}: MaterialReactTableProps<D>) => (\n <MRT_TableRoot\n enableColumnActions={enableColumnActions}\n enableColumnFilters={enableColumnFilters}\n enableDensePaddingToggle={enableDensePaddingToggle}\n enableExpandAll={enableExpandAll}\n enableFullScreenToggle={enableFullScreenToggle}\n enableGlobalFilter={enableGlobalFilter}\n enableHiding={enableHiding}\n enablePagination={enablePagination}\n enableSelectAll={enableSelectAll}\n enableSorting={enableSorting}\n enableStickyHeader={enableStickyHeader}\n icons={{ ...MRT_Default_Icons, ...icons }}\n localization={{ ...MRT_DefaultLocalization_EN, ...localization }}\n positionActionsColumn={positionActionsColumn}\n positionPagination={positionPagination}\n positionToolbarActions={positionToolbarActions}\n positionToolbarAlertBanner={positionToolbarAlertBanner}\n {...rest}\n />\n);\n"],"names":["MRT_DefaultLocalization_EN","actions","cancel","changeFilterMode","changeSearchMode","clearFilter","clearSearch","clearSort","clickToCopy","columnActions","copiedToClipboard","edit","expand","expandAll","filterBestMatch","filterBestMatchFirst","filterByColumn","filterContains","filterEmpty","filterEndsWith","filterEquals","filterGreaterThan","filterLessThan","filterMode","filterNotEmpty","filterNotEquals","filterStartsWith","filteringByColumn","groupByColumn","groupedBy","hideAll","hideColumn","pinToLeft","pinToRight","rowActions","rowNumbers","save","search","selectedCountOfRowCountRowsSelected","select","showAll","showAllColumns","showHideColumns","showHideFilters","showHideSearch","sortByColumnAsc","sortByColumnDesc","thenBy","toggleDensePadding","toggleFullScreen","toggleSelectAll","toggleSelectRow","ungroupByColumn","unpin","MRT_Default_Icons","ArrowRightIcon","CancelIcon","CheckBoxIcon","ClearAllIcon","CloseIcon","DensityMediumIcon","DensitySmallIcon","DoubleArrowDownIcon","DynamicFeedIcon","EditIcon","ExpandLessIcon","ExpandMoreIcon","FilterAltIcon","FilterAltOff","FilterListIcon","FilterListOffIcon","FullscreenExitIcon","FullscreenIcon","MoreHorizIcon","MoreVertIcon","PushPinIcon","SaveIcon","SearchIcon","SearchOffIcon","SortIcon","ViewColumnIcon","VisibilityOffIcon","MRT_ExpandAllButton","tableInstance","getIsAllRowsExpanded","getIsSomeRowsExpanded","getState","options","icons","isLoading","localization","toggleAllRowsExpanded","isDensePadding","React","IconButton","disabled","title","onClick","sx","height","width","style","transform","transition","MRT_ExpandButton","row","onRowExpandChange","renderDetailPanel","handleToggleExpand","event","toggleExpanded","getCanExpand","getIsExpanded","MRT_FILTER_TYPE","bestMatchFirst","rows","columnIds","filterValue","matchSorter","toString","trim","keys","Array","isArray","map","c","autoRemove","val","bestMatch","sorter","rankedItems","contains","id","filter","values","toLowerCase","includes","startsWith","endsWith","equals","notEquals","greaterThan","isNaN","lessThan","empty","_filterValue","notEmpty","defaultFilterFNs","commonMenuItemStyles","py","my","alignItems","MRT_FilterTypeMenu","anchorEl","header","onSelect","setAnchorEl","enabledGlobalFilterTypes","setCurrentFilterTypes","setCurrentGlobalFilterType","currentFilterTypes","currentGlobalFilterType","filterTypes","useMemo","type","BEST_MATCH_FIRST","label","divider","fn","BEST_MATCH","CONTAINS","STARTS_WITH","ENDS_WITH","EQUALS","NOT_EQUALS","GREATER_THAN","LESS_THAN","EMPTY","NOT_EMPTY","filterType","column","enabledFilterTypes","handleSelectFilterType","value","prev","setColumnFilterValue","Menu","anchorOrigin","vertical","horizontal","onClose","open","MenuListProps","dense","index","MenuItem","key","selected","MRT_ShowHideColumnsMenuItems","isSubMenu","onColumnHide","columnVisibility","switchChecked","columnDefType","getIsVisible","getLeafColumns","some","col","handleToggleColumnHidden","columns","forEach","childColumn","toggleVisibility","pl","depth","FormControlLabel","componentsProps","typography","marginBottom","checked","control","Switch","enableHiding","onChange","i","MRT_ShowHideColumnsMenu","getAllColumns","getIsAllColumnsVisible","getIsSomeColumnsVisible","getIsSomeColumnsPinned","toggleAllColumnsVisible","getAllLeafColumns","hideAllColumns","allDisplayColumns","allDataColumns","dataColumns","getIsPinned","columnPinning","Box","display","justifyContent","p","pt","Button","Divider","commonListItemStyles","MRT_ColumnActionMenu","setColumnOrder","enableColumnFilters","enableColumnPinning","enableGrouping","enableSorting","idPrefix","setShowFilters","useState","filterMenuAnchorEl","setFilterMenuAnchorEl","showHideColumnsMenuAnchorEl","setShowHideColumnsMenuAnchorEl","handleClearSort","resetSorting","handleSortAsc","toggleSorting","handleSortDesc","handleHideColumn","handlePinColumn","pinDirection","pin","handleGroupByColumn","toggleGrouping","old","handleClearFilter","handleFilterByColumn","setTimeout","document","getElementById","muiTableHeadCellFilterTextFieldProps","focus","handleShowAllColumns","handleOpenFilterModeMenu","stopPropagation","currentTarget","handleOpenShowHideColumnsMenu","getCanSort","getIsSorted","ListItemIcon","replace","String","getCanColumnFilter","getColumnFilterValue","filterSelectOptions","onMouseEnter","size","getCanGroup","getIsGrouped","getCanPin","Object","visible","length","MRT_RowActionMenu","handleEdit","enableRowEditing","renderRowActionMenuItems","closeMenu","MRT_EditActionButtons","onRowEditSubmit","setCurrentEditingRow","currentEditingRow","handleCancel","original","handleSave","gap","Tooltip","arrow","color","commonIconButtonStyles","ml","opacity","MRT_ToggleRowActionMenuButton","renderRowActions","handleOpenRowActionMenu","preventDefault","placement","enterDelay","enterNextDelay","MRT_SelectCheckbox","selectAll","getRowModel","getSelectedRowModel","getToggleAllRowsSelectedProps","muiSelectCheckboxProps","onSelectChange","onSelectAllChange","handleSelectChange","selectedRows","target","flatRows","getToggleSelectedProps","selectedRow","mTableBodyRowSelectCheckboxProps","Function","isSelectAll","rtSelectCheckboxProps","checkboxProps","Checkbox","inputProps","undefined","MRT_SearchTextField","setGlobalFilter","muiSearchTextFieldProps","onGlobalFilterChange","globalFilter","showSearch","searchValue","setSearchValue","handleChange","useCallback","debounce","handleGlobalFilterMenuOpen","handleClear","textFieldProps","Collapse","orientation","TextField","placeholder","variant","InputProps","startAdornment","InputAdornment","position","fontSize","endAdornment","justifySelf","MRT_FullScreenToggleButton","rest","setIsFullScreen","isFullScreen","MRT_ShowHideColumnsButton","handleClick","MRT_ToggleDensePaddingButton","setIsDensePadding","MRT_ToggleFiltersButton","showFilters","MRT_ToggleSearchButton","setShowSearch","handleToggleSearch","MRT_ToolbarInternalButtons","enableDensePaddingToggle","enableGlobalFilter","enableFullScreenToggle","renderToolbarInternalActions","MRT_TablePagination","getPrePaginationRowModel","setPageIndex","setPageSize","muiTablePaginationProps","pagination","pageSize","pageIndex","tablePaginationProps","handleChangeRowsPerPage","showFirstLastPageButtons","TablePagination","SelectProps","m","component","count","onPageChange","_","newPage","onRowsPerPageChange","page","rowsPerPage","rowsPerPageOptions","showFirstButton","showLastButton","zIndex","MRT_ToolbarAlertBanner","toggleColumnGrouping","muiTableToolbarAlertBannerProps","positionToolbarActions","positionToolbarAlertBanner","renderToolbarCustomActions","grouping","isMobile","useMediaQuery","alertProps","selectMessage","groupedByMessage","columnId","Fragment","Chip","find","onDelete","displayAbsolute","timeout","Alert","icon","borderRadius","left","right","minHeight","top","MRT_LinearProgressBar","muiLinearProgressProps","isReloading","linearProgressProps","unmountOnExit","LinearProgress","commonToolbarStyles","theme","backgroundColor","palette","background","backgroundImage","alpha","common","white","MRT_ToolbarTop","enablePagination","hideToolbarInternalActions","muiTableToolbarTopProps","positionPagination","toolbarProps","Toolbar","MRT_ToolbarBottom","muiTableToolbarBottomProps","bottom","boxShadow","black","MRT_FilterTextField","mTableHeadCellFilterTextFieldProps","mcTableHeadCellFilterTextFieldProps","setFilterValue","handleFilterMenuOpen","handleClearFilterChip","Filter","filterId","isSelectFilter","filterChipLabel","charAt","toUpperCase","slice","filterPlaceholder","fullWidth","textOverflow","helperText","htmlFor","name","FormHelperTextProps","lineHeight","margin","e","disableHoverListener","minWidth","mt","mr","option","text","MRT_ToggleColumnActionMenuButton","muiTableHeadCellColumnActionsButtonProps","mTableHeadCellColumnActionsButtonProps","mcTableHeadCellColumnActionsButtonProps","iconButtonProps","MRT_TableHeadCell","enableColumnActions","enableColumnResizing","muiTableHeadCellProps","mTableHeadCellProps","mcTableHeadCellProps","tableCellProps","getHeaderProps","sortTooltip","filterTooltip","headerElement","Header","TableCell","align","fontWeight","getWidth","pb","verticalAlign","isPlaceholder","getToggleSortingProps","cursor","flexWrap","whiteSpace","TableSortLabel","active","direction","disableRipple","flexItem","onDoubleClick","resetSize","borderRightWidth","maxHeight","userSelect","touchAction","secondary","dark","getResizerProps","props","getIsResizing","columnSizingInfo","deltaOffset","MRT_TableHeadRow","headerGroup","muiTableHeadRowProps","mTableHeadRowProps","tableRowProps","getHeaderGroupProps","TableRow","headers","MRT_TableHead","pinned","getCenterHeaderGroups","getHeaderGroups","getLeftHeaderGroups","getRightHeaderGroups","muiTableHeadProps","tableHeadProps","getHeaderGroupsMap","center","none","TableHead","MRT_EditCellTextField","cell","muiTableBodyCellEditTextFieldProps","onCellEditChange","mTableBodyCellEditTextFieldProps","mcTableBodyCellEditTextFieldProps","enableEditing","Edit","MRT_CopyButton","children","muiTableBodyCellCopyButtonProps","copied","setCopied","handleCopy","navigator","clipboard","writeText","mTableBodyCellCopyButtonProps","mcTableBodyCellCopyButtonProps","buttonProps","border","fontFamily","letterSpacing","textAlign","textTransform","MRT_TableBodyCell","enableClickToCopy","muiTableBodyCellProps","muiTableBodyCellSkeletonProps","onCellClick","mTableCellBodyProps","mcTableCellBodyProps","getCellProps","skeletonWidth","Math","random","Skeleton","animation","Cell","getIsPlaceholder","groupingColumnId","getIsAggregated","renderAggregatedCell","renderCell","subRows","MRT_TableDetailPanel","getVisibleFlatColumns","muiTableBodyRowProps","muiTableDetailPanelProps","onDetailPanelClick","colSpan","borderBottom","MRT_TableBodyRow","onRowClick","getCenterVisibleCells","getIsSelected","getLeftVisibleCells","getRightVisibleCells","getRowProps","getVisibleCells","mTableBodyRowProps","getVisibleCellsMap","hover","MRT_TableBody","getPaginationRowModel","getTableBodyProps","muiTableBodyProps","mTableBodyProps","tableBodyProps","TableBody","MRT_TableFooterCell","footer","muiTableFooterCellProps","mTableFooterCellProps","mcTableFooterCellProps","getFooterProps","Footer","MRT_TableFooterRow","footerGroup","muiTableFooterRowProps","h","columnDef","mTableFooterRowProps","getFooterGroupProps","MRT_TableFooter","getCenterFooterGroups","getFooterGroups","getLeftFooterGroups","getRightFooterGroups","muiTableFooterProps","tableFooterProps","getFooterGroupsMap","TableFooter","MRT_Table","getTableProps","enableStickyHeader","hideTableFooter","hideTableHead","muiTableProps","mTableProps","tableProps","Table","stickyHeader","commonBoxStyles","overflowX","MRT_TableContainer","getCenterTableWidth","getLeftTableWidth","getRightTableWidth","muiTableContainerProps","totalToolbarHeight","setTotalToolbarHeight","tableContainerProps","useLayoutEffect","topToolbarHeight","offsetHeight","bottomToolbarHeight","TableContainer","maxWidth","overflow","gridTemplateColumns","MRT_TablePaper","hideToolbarBottom","hideToolbarTop","muiTablePaperProps","useEffect","window","body","tablePaperProps","Paper","elevation","overflowY","getAllLeafColumnDefs","lowestLevelColumns","currentCols","nextCols","flat","every","createGroup","table","createDataColumn","createDisplayColumn","MRT_TableRoot","substring","initialState","pageCount","setPagination","assign","columnFilters","globalFilterType","createTable","displayColumns","enableRowActions","enableExpanded","enableExpandAll","enableRowSelection","enableSelectAll","enableRowNumbers","Boolean","createColumns","data","fill","useTable","columnFilterRowsFn","expandRowsFn","getSubRows","originalRow","globalFilterRowsFn","groupRowsFn","onPaginationChange","updater","functionalUpdate","paginateRowsFn","sortRowsFn","state","positionActionsColumn"],"mappings":"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"}