material-react-table 0.6.7 → 0.6.10

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 (37) hide show
  1. package/dist/MaterialReactTable.d.ts +12 -3
  2. package/dist/enums.d.ts +2 -1
  3. package/dist/filtersFNs.d.ts +13 -5
  4. package/dist/localization.d.ts +3 -1
  5. package/dist/material-react-table.cjs.development.js +339 -248
  6. package/dist/material-react-table.cjs.development.js.map +1 -1
  7. package/dist/material-react-table.cjs.production.min.js +1 -1
  8. package/dist/material-react-table.cjs.production.min.js.map +1 -1
  9. package/dist/material-react-table.esm.js +340 -249
  10. package/dist/material-react-table.esm.js.map +1 -1
  11. package/dist/menus/MRT_FilterTypeMenu.d.ts +1 -1
  12. package/dist/useMRT.d.ts +1 -0
  13. package/dist/utils.d.ts +2 -2
  14. package/package.json +1 -1
  15. package/src/MaterialReactTable.tsx +29 -4
  16. package/src/body/MRT_TableBodyCell.tsx +8 -2
  17. package/src/body/MRT_TableBodyRow.tsx +30 -7
  18. package/src/buttons/MRT_CopyButton.tsx +24 -6
  19. package/src/buttons/MRT_ExpandAllButton.tsx +13 -20
  20. package/src/buttons/MRT_ExpandButton.tsx +20 -33
  21. package/src/buttons/MRT_ToggleColumnActionMenuButton.tsx +19 -1
  22. package/src/enums.ts +2 -1
  23. package/src/filtersFNs.ts +17 -3
  24. package/src/head/MRT_TableHeadCell.tsx +6 -3
  25. package/src/head/MRT_TableHeadRow.tsx +38 -15
  26. package/src/inputs/MRT_EditCellTextField.tsx +0 -6
  27. package/src/inputs/MRT_FilterTextField.tsx +1 -12
  28. package/src/inputs/MRT_SearchTextField.tsx +27 -3
  29. package/src/inputs/MRT_SelectCheckbox.tsx +58 -31
  30. package/src/localization.ts +7 -3
  31. package/src/menus/MRT_ColumnActionMenu.tsx +6 -1
  32. package/src/menus/MRT_FilterTypeMenu.tsx +44 -18
  33. package/src/menus/MRT_ShowHideColumnsMenu.tsx +12 -1
  34. package/src/menus/MRT_ShowHideColumnsMenuItems.tsx +1 -1
  35. package/src/table/MRT_TableSpacerCell.tsx +1 -8
  36. package/src/useMRT.tsx +12 -1
  37. package/src/utils.ts +8 -4
@@ -1 +1 @@
1
- {"version":3,"file":"material-react-table.cjs.development.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_ColumnInterface } from '.';\n\nexport const findLowestLevelCols = (columns: 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","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 style: {\n ...mTableHeadCellFilterTextFieldProps?.style,\n ...mcTableHeadCellFilterTextFieldProps?.style,\n },\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}\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';\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 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={() => tableInstance.toggleHideAllColumns(true)}\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 key={0} onClick={handleHideColumn} sx={commonMenuItemStyles}>\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 localization,\n icons: { MoreVertIcon },\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 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 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 }}\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 && !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 style: {\n //@ts-ignore\n ...muiTableBodyCellEditTextFieldProps?.style,\n //@ts-ignore\n ...cell.column.muiTableBodyCellEditTextFieldProps?.style,\n },\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, TableCell, Tooltip } 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 selectAll?: boolean;\n}\n\nexport const MRT_SelectCheckbox: FC<Props> = ({ row, selectAll }) => {\n const { localization, onRowSelectChange, onSelectAllChange, tableInstance } =\n useMRT();\n\n const onSelectChange = (event: ChangeEvent<HTMLInputElement>) => {\n if (selectAll) {\n tableInstance?.getToggleAllRowsSelectedProps?.()?.onChange?.(event);\n onSelectAllChange?.(event, tableInstance.selectedFlatRows);\n } else if (row) {\n row?.getToggleRowSelectedProps()?.onChange?.(event);\n onRowSelectChange?.(event, row, tableInstance.selectedFlatRows);\n }\n };\n\n const checkboxProps = selectAll\n ? tableInstance.getToggleAllRowsSelectedProps()\n : row?.getToggleRowSelectedProps();\n\n return (\n <TableCell\n sx={commonTableBodyButtonCellStyles(tableInstance.state.densePadding)}\n >\n <Tooltip\n arrow\n enterDelay={1000}\n enterNextDelay={1000}\n title={\n selectAll\n ? localization.toggleSelectAll\n : localization.toggleSelectRow\n }\n >\n <Checkbox\n inputProps={{\n 'aria-label': selectAll\n ? localization.toggleSelectAll\n : localization.toggleSelectRow,\n }}\n onChange={onSelectChange}\n {...checkboxProps}\n title={undefined}\n />\n </Tooltip>\n </TableCell>\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 mTableBodyCellrops =\n muiTableBodyCellProps instanceof Function\n ? muiTableBodyCellProps()\n : muiTableBodyCellProps;\n\n const tableCellProps = {\n ...mTableBodyCellrops,\n style: {\n ...mTableBodyCellrops?.style,\n },\n };\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 { 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 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 ? (\n <MRT_SelectCheckbox selectAll />\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 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 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 && <MRT_SelectCheckbox row={row} />}\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 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 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 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 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 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 onRowSelectChange?: (\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","style","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","i","MRT_ShowHideColumnsMenu","Box","display","justifyContent","pt","Button","getToggleHideAllColumnsProps","indeterminate","toggleHideAllColumns","hideAll","showAll","Divider","commonListItemStyles","MRT_ColumnActionMenu","disableColumnHiding","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","transform","sortByColumnDesc","canFilter","onMouseEnter","canGroupBy","isGrouped","hideColumn","showAllColumns","MRT_ToggleColumnActionMenuButton","MoreVertIcon","handleClick","preventDefault","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","onRowSelectChange","onSelectAllChange","onSelectChange","getToggleAllRowsSelectedProps","selectedFlatRows","getToggleRowSelectedProps","checkboxProps","toggleSelectAll","toggleSelectRow","Checkbox","MRT_ExpandAllButton","DoubleArrowDownIcon","getToggleAllRowsExpandedProps","expandAll","isAllRowsExpanded","MRT_TableSpacerCell","mTableBodyCellrops","MRT_TableHeadCellActions","actions","MRT_TableHeadRow","headerGroup","disableExpandAll","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.cjs.development.js","sources":["../src/enums.ts","../src/utils.ts","../src/useMRT.tsx","../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_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/inputs/MRT_EditCellTextField.tsx","../src/buttons/MRT_CopyButton.tsx","../src/body/MRT_TableBodyCell.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":["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 { 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 setCurrentGlobalFilterType: Dispatch<SetStateAction<MRT_FILTER_TYPE>>;\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?.length\n ? MRT_FILTER_TYPE.EQUALS\n : MRT_FILTER_TYPE.BEST_MATCH),\n })),\n ),\n );\n\n const [currentGlobalFilterType, setCurrentGlobalFilterType] = useState<\n MRT_FilterType | string | undefined\n >(props.globalFilter);\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 globalFilter: currentGlobalFilterType,\n useControlledState: (state) =>\n useMemo(\n () => ({\n ...state,\n currentEditingRow,\n currentFilterTypes,\n currentGlobalFilterType,\n densePadding,\n fullScreen,\n showFilters,\n showSearch,\n //@ts-ignore\n ...props?.useControlledState?.(state),\n }),\n [\n currentEditingRow,\n currentFilterTypes,\n currentGlobalFilterType,\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 setCurrentGlobalFilterType,\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","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 { useMRT } from '../useMRT';\nimport type { MRT_FilterType, MRT_HeaderGroup } 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 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 {\n enabledGlobalFilterTypes,\n localization,\n setCurrentFilterTypes,\n setCurrentGlobalFilterType,\n tableInstance,\n } = 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.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: !!column,\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 column\n ? !column.enabledFilterTypes ||\n 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 (column) {\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 } else {\n setCurrentGlobalFilterType(value);\n }\n setAnchorEl(null);\n onSelect?.();\n };\n\n const filterType = column\n ? tableInstance.state.currentFilterTypes[column.id]\n : tableInstance.state.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: 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.BEST_MATCH,\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 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 .replace('\" \"', '')\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 { 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 } from '@mui/material';\nimport { useMRT } from '../useMRT';\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 <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 );\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 { 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 {(enableRowActions || enableRowEditing) &&\n positionActionsColumn === 'first' &&\n (isParentHeader ? (\n <MRT_TableSpacerCell />\n ) : (\n <MRT_TableHeadCellActions />\n ))}\n {anyRowsCanExpand || renderDetailPanel ? (\n !disableExpandAll && !isParentHeader ? (\n <TableCell\n size=\"small\"\n {...tableInstance.getToggleAllRowsExpandedProps()}\n sx={{\n ...commonTableHeadCellStyles(tableInstance.state.densePadding),\n width: '3rem',\n maxWidth: '3rem',\n textAlign: 'center',\n }}\n >\n <MRT_ExpandAllButton />\n </TableCell>\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 ...commonTableHeadCellStyles(tableInstance.state.densePadding),\n maxWidth: '3rem',\n width: '3rem',\n textAlign: 'center',\n }}\n >\n <MRT_SelectCheckbox selectAll />\n </TableCell>\n ) : (\n <MRT_TableSpacerCell width=\"1rem\" />\n )\n ) : null}\n {enableRowNumbers &&\n (isParentHeader ? (\n <MRT_TableSpacerCell />\n ) : (\n <TableCell\n sx={{\n ...commonTableHeadCellStyles(tableInstance.state.densePadding),\n width: '2rem',\n maxWidth: '2rem',\n }}\n >\n #\n </TableCell>\n ))}\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, { 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, children }) => {\n const { localization, muiTableBodyCellCopyButtonProps } = 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 const mTableBodyCellCopyButtonProps =\n muiTableBodyCellCopyButtonProps instanceof Function\n ? muiTableBodyCellCopyButtonProps(cell)\n : muiTableBodyCellCopyButtonProps;\n\n const mcTableBodyCellCopyButtonProps =\n cell.column.muiTableBodyCellCopyButtonProps instanceof Function\n ? cell.column.muiTableBodyCellCopyButtonProps(cell)\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 } 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 enableClickToCopy && !cell.column.disableClickToCopy ? (\n <MRT_CopyButton cell={cell}>\n {cell.render('Aggregated')}\n </MRT_CopyButton>\n ) : (\n cell.render('Aggregated')\n )\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}>{cell.render('Cell')}</MRT_CopyButton>\n ) : (\n cell.render('Cell')\n )}\n </TableCell>\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 } from '@mui/material';\nimport { useMRT } from '../useMRT';\nimport type { MRT_Row } from '..';\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 } = 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 <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 );\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 {(enableRowActions || enableRowEditing) &&\n positionActionsColumn === 'first' && (\n <MRT_ToggleRowActionMenuButton row={row} />\n )}\n {(anyRowsCanExpand || renderDetailPanel) && (\n <TableCell\n size=\"small\"\n sx={{\n ...commonTableBodyButtonCellStyles(densePadding),\n pl: `${row.depth + 0.5}rem`,\n textAlign: 'left',\n }}\n >\n <MRT_ExpandButton row={row} />\n </TableCell>\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 {enableRowNumbers && (\n <TableCell sx={{ ...commonTableBodyCellStyles(densePadding) }}>\n {row.index + 1}\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, MouseEvent, useState } from 'react';\nimport {\n Collapse,\n IconButton,\n InputAdornment,\n TextField,\n Tooltip,\n} from '@mui/material';\nimport { useMRT } from '../useMRT';\nimport { useAsyncDebounce } from 'react-table';\nimport { MRT_FilterTypeMenu } from '../menus/MRT_FilterTypeMenu';\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 [anchorEl, setAnchorEl] = useState<null | HTMLElement>(null);\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 handleGlobalFilterMenuOpen = (event: MouseEvent<HTMLElement>) => {\n setAnchorEl(event.currentTarget);\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 <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 {...muiSearchTextFieldProps}\n sx={{ justifySelf: 'end', ...muiSearchTextFieldProps?.sx }}\n />\n <MRT_FilterTypeMenu anchorEl={anchorEl} setAnchorEl={setAnchorEl} />\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 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 filterBestMatchFirst: string;\n filterByColumn: string;\n filterContains: string;\n filterEmpty: string;\n filterEndsWith: string;\n filterEquals: string;\n filterBestMatch: 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 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 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 ButtonProps,\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 enabledFilterTypes?: (MRT_FILTER_TYPE | string)[];\n filter?: MRT_FilterType | string | FilterType<D>;\n filterSelectOptions?: (string | { text: string; value: string })[];\n muiTableBodyCellCopyButtonProps?:\n | ButtonProps\n | ((cell?: MRT_Cell<D>) => ButtonProps);\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 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 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 currentGlobalFilterType: 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 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 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 muiTableBodyCellCopyButtonProps?:\n | ButtonProps\n | ((cell?: MRT_Cell<D>) => ButtonProps);\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 onSelectAllChange?: (event: ChangeEvent, selectedRows: Row<D>[]) => void;\n onSelectChange?: (\n event: ChangeEvent,\n row: Row<D>,\n selectedRows: Row<D>[],\n ) => 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 = MRT_FILTER_TYPE.BEST_MATCH_FIRST,\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":["MRT_FILTER_TYPE","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","EQUALS","BEST_MATCH","currentFilterTypes","setCurrentFilterTypes","globalFilter","currentGlobalFilterType","setCurrentGlobalFilterType","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","bestMatchFirst","columnIds","filterValue","matchSorter","trim","keys","isArray","autoRemove","val","bestMatch","sorter","rankedItems","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","enabledGlobalFilterTypes","localization","type","BEST_MATCH_FIRST","label","filterBestMatchFirst","divider","fn","filterBestMatch","CONTAINS","filterContains","STARTS_WITH","filterStartsWith","ENDS_WITH","filterEndsWith","filterEquals","NOT_EQUALS","filterNotEquals","GREATER_THAN","filterGreaterThan","LESS_THAN","filterLessThan","EMPTY","filterEmpty","NOT_EMPTY","filterNotEmpty","filterType","enabledFilterTypes","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","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","maxWidth","getSortByToggleProps","flexWrap","whiteSpace","TableSortLabel","active","direction","disableRipple","backgroundColor","flexItem","orientation","onDoubleClick","resetResizing","getResizerProps","borderRightWidth","borderRadius","maxHeight","Collapse","MRT_SelectCheckbox","selectAll","muiSelectCheckboxProps","onSelectChange","onSelectAllChange","handleSelectChange","getToggleAllRowsSelectedProps","getToggleRowSelectedProps","selectedFlatRows","selectedRow","mTableBodyRowSelectCheckboxProps","rtSelectCheckboxProps","checkboxProps","toggleSelectAll","toggleSelectRow","Checkbox","MRT_ExpandAllButton","DoubleArrowDownIcon","expandAll","isAllRowsExpanded","MRT_TableSpacerCell","muiTableBodyCellProps","MRT_TableHeadCellActions","textAlign","actions","MRT_TableHeadRow","headerGroup","disableExpandAll","disableSelectAll","enableRowActions","enableRowEditing","enableRowNumbers","enableSelection","muiTableHeadRowProps","positionActionsColumn","renderDetailPanel","headers","h","mTableHeadRowProps","tableRowProps","getHeaderGroupProps","TableRow","getToggleAllRowsExpandedProps","expandedDepth","MRT_TableHead","muiTableHeadProps","tableHeadProps","TableHead","headerGroups","MRT_EditCellTextField","cell","muiTableBodyCellEditTextFieldProps","onCellEditChange","mTableBodyCellEditTextFieldProps","mcTableBodyCellEditTextFieldProps","disableEditing","Edit","MRT_CopyButton","muiTableBodyCellCopyButtonProps","copied","setCopied","handleCopy","navigator","clipboard","writeText","mTableBodyCellCopyButtonProps","mcTableBodyCellCopyButtonProps","buttonProps","copiedToClipboard","clickToCopy","border","color","fontFamily","letterSpacing","textTransform","commonTableBodyCellStyles","commonTableBodyButtonCellStyles","MRT_TableBodyCell","enableClickToCopy","muiTableBodyCellSkeletonProps","onCellClick","mTableCellBodyProps","mcTableCellBodyProps","getCellProps","Skeleton","animation","isPlaceholder","isAggregated","disableClickToCopy","subRows","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","handleGlobalFilterMenuOpen","search","changeSearchMode","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"],"mappings":"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"}