material-react-table 0.3.0 → 0.3.1
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.
- package/dist/MaterialReactTable.d.ts +46 -44
- package/dist/buttons/MRT_EditActionButtons.d.ts +7 -0
- package/dist/buttons/MRT_ToggleFiltersButton.d.ts +4 -0
- package/dist/buttons/MRT_ToggleRowActionMenuButton.d.ts +7 -0
- package/dist/head/MRT_TableHeadCell.d.ts +1 -0
- package/dist/index.d.ts +2 -2
- package/dist/inputs/MRT_DensePaddingSwitch.d.ts +5 -0
- package/dist/material-react-table.cjs.development.js +1459 -412
- package/dist/material-react-table.cjs.development.js.map +1 -1
- package/dist/material-react-table.cjs.production.min.js +1 -1
- package/dist/material-react-table.cjs.production.min.js.map +1 -1
- package/dist/material-react-table.esm.js +1474 -427
- package/dist/material-react-table.esm.js.map +1 -1
- package/dist/menus/MRT_RowActionMenu.d.ts +9 -0
- package/dist/{footer → toolbar}/MRT_TablePagination.d.ts +0 -0
- package/dist/toolbar/MRT_ToolbarBottom.d.ts +5 -0
- package/dist/toolbar/MRT_ToolbarButtons.d.ts +5 -0
- package/dist/toolbar/{MRT_Toolbar.d.ts → MRT_ToolbarTop.d.ts} +1 -1
- package/dist/useMaterialReactTable.d.ts +7 -1
- package/dist/utils/localization.d.ts +22 -14
- package/package.json +15 -13
- package/src/MaterialReactTable.tsx +117 -100
- package/src/body/MRT_TableBody.tsx +26 -27
- package/src/body/MRT_TableBodyCell.tsx +17 -6
- package/src/body/MRT_TableBodyRow.tsx +39 -23
- package/src/body/MRT_TableDetailPanel.tsx +38 -14
- package/src/buttons/MRT_EditActionButtons.tsx +51 -0
- package/src/buttons/MRT_ExpandAllButton.tsx +9 -4
- package/src/buttons/MRT_ExpandButton.tsx +12 -6
- package/src/buttons/MRT_ShowHideColumnsButton.tsx +12 -12
- package/src/buttons/MRT_ToggleColumnActionMenuButton.tsx +1 -1
- package/src/buttons/MRT_ToggleFiltersButton.tsx +23 -0
- package/src/buttons/MRT_ToggleRowActionMenuButton.tsx +65 -0
- package/src/footer/MRT_TableFooter.tsx +2 -17
- package/src/footer/MRT_TableFooterCell.tsx +18 -7
- package/src/footer/MRT_TableFooterRow.tsx +28 -14
- package/src/head/MRT_TableHead.tsx +6 -18
- package/src/head/MRT_TableHeadCell.tsx +37 -17
- package/src/head/MRT_TableHeadRow.tsx +42 -14
- package/src/index.tsx +2 -5
- package/src/inputs/MRT_DensePaddingSwitch.tsx +21 -0
- package/src/inputs/MRT_FilterTextField.tsx +5 -0
- package/src/inputs/MRT_SearchTextField.tsx +4 -4
- package/src/inputs/MRT_SelectAllCheckbox.tsx +11 -3
- package/src/inputs/MRT_SelectCheckbox.tsx +9 -2
- package/src/menus/MRT_ColumnActionMenu.tsx +29 -24
- package/src/menus/MRT_RowActionMenu.tsx +52 -0
- package/src/menus/MRT_ShowHideColumnsMenu.tsx +2 -2
- package/src/table/MRT_Table.tsx +13 -4
- package/src/table/MRT_TableContainer.tsx +9 -5
- package/src/table/MRT_TableSpacerCell.tsx +17 -1
- package/src/toolbar/MRT_TablePagination.tsx +37 -0
- package/src/toolbar/MRT_ToolbarBottom.tsx +58 -0
- package/src/toolbar/MRT_ToolbarButtons.tsx +27 -0
- package/src/toolbar/MRT_ToolbarTop.tsx +81 -0
- package/src/useMaterialReactTable.tsx +36 -32
- package/src/utils/localization.ts +32 -16
- package/dist/utils/overrideWarnings.d.ts +0 -1
- package/src/footer/MRT_TablePagination.tsx +0 -42
- package/src/toolbar/MRT_Toolbar.tsx +0 -39
- package/src/utils/overrideWarnings.ts +0 -41
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"material-react-table.cjs.development.js","sources":["../src/utils/useMRTCalcs.tsx","../src/utils/overrideWarnings.ts","../src/useMaterialReactTable.tsx","../src/inputs/MRT_FilterTextField.tsx","../src/menus/MRT_ColumnActionMenu.tsx","../src/buttons/MRT_ToggleColumnActionMenuButton.tsx","../src/head/MRT_TableHeadCell.tsx","../src/inputs/MRT_SelectAllCheckbox.tsx","../src/buttons/MRT_ExpandAllButton.tsx","../src/menus/MRT_ShowHideColumnsMenu.tsx","../src/buttons/MRT_ShowHideColumnsButton.tsx","../src/table/MRT_TableSpacerCell.tsx","../src/head/MRT_TableHeadRow.tsx","../src/footer/MRT_TablePagination.tsx","../src/head/MRT_TableHead.tsx","../src/body/MRT_TableBodyCell.tsx","../src/body/MRT_TableDetailPanel.tsx","../src/buttons/MRT_ExpandButton.tsx","../src/inputs/MRT_SelectCheckbox.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/toolbar/MRT_Toolbar.tsx","../src/table/MRT_TableContainer.tsx","../src/utils/localization.ts","../src/MaterialReactTable.tsx"],"sourcesContent":["import { useMemo } from 'react';\nimport { TableInstance } from 'react-table';\n\nexport interface UseMRTCalcs {\n anyRowsCanExpand: boolean;\n anyRowsExpanded: boolean;\n maxColumnDepth: number;\n}\n\ninterface Props<D extends {}> {\n tableInstance: TableInstance<D>;\n}\n\nexport const useMRTCalcs = <D extends {}>({\n tableInstance,\n}: Props<D>): UseMRTCalcs => {\n const anyRowsCanExpand = useMemo(\n () => tableInstance.rows.some((row) => row.canExpand),\n [tableInstance.rows],\n );\n\n const anyRowsExpanded = useMemo(\n () => tableInstance.rows.some((row) => row.isExpanded),\n [tableInstance.rows],\n );\n\n const maxColumnDepth = useMemo(() => {\n let maxDepth = 1;\n tableInstance.columns.forEach((column) => {\n if (column.columns?.length) {\n maxDepth = Math.max(maxDepth, column.columns.length);\n }\n });\n return maxDepth - 1;\n }, [tableInstance.columns]);\n\n return {\n anyRowsCanExpand,\n anyRowsExpanded,\n maxColumnDepth,\n };\n};\n","export const showoverrideWarnings = (props: any) => {\n if (props.overrideTableBodyCellComponent) {\n showWarning('TableCell', 'props');\n }\n if (props.overrideTableBodyComponent) {\n showWarning('TableBody', 'tableBodyProps');\n }\n if (props.overrideTableBodyRowComponent) {\n showWarning('TableRow', 'props');\n }\n if (props.overrideTableDetailPanelComponent) {\n showWarning('Detail Panel', 'tableDetailPanelProps');\n }\n if (props.overrideTableFooterComponent) {\n showWarning('TableFooter', 'tableFooterProps');\n }\n if (props.overrideTableFooterCellComponent) {\n showWarning('TableCell', 'props');\n }\n if (props.overrideTableFooterRowComponent) {\n showWarning('TableRow', 'props');\n }\n if (props.overrideTableHeadComponent) {\n showWarning('TableHead', 'tableHeadProps');\n }\n if (props.overrideTableHeadRowComponent) {\n showWarning('TableRow', 'props');\n }\n if (props.overrideTablePaginationComponent) {\n showWarning('', 'props');\n }\n if (props.overrideTableToolbarComponent) {\n showWarning('TableBodyCell', 'props');\n }\n};\n\nconst showWarning = (componentName: string, propsName: string) => {\n console.warn(\n `Caution.\\nYou are overriding the built-in Mui ${componentName} Component in material-react-table.\\n\\nYou should only use this as a last resort!\\n\\nConsider customizing the Mui ${componentName} Component instead with ${propsName}.`,\n );\n};\n","import React, {\n Context,\n createContext,\n PropsWithChildren,\n useContext,\n} from 'react';\nimport {\n TableInstance,\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 { MaterialReactTableProps } from './MaterialReactTable';\nimport { UseMRTCalcs, useMRTCalcs } from './utils/useMRTCalcs';\nimport { showoverrideWarnings } from './utils/overrideWarnings';\n\nexport interface UseMaterialReactTable<D extends {}>\n extends MaterialReactTableProps<D>,\n UseMRTCalcs {\n tableInstance: TableInstance<D>;\n}\n\nconst MaterialReactTableContext = (<D extends {}>() =>\n createContext<UseMaterialReactTable<D>>(\n {} as UseMaterialReactTable<D>,\n ) as Context<UseMaterialReactTable<D>>)();\n\nexport const MaterialReactTableProvider = <D extends {}>({\n children,\n columns,\n data,\n defaultColumn,\n getRowId,\n getSubRows,\n initialState,\n stateReducer,\n surpressoverrideWarnings,\n ...rest\n}: PropsWithChildren<MaterialReactTableProps<D>>) => {\n const tableInstance = useTable<D>(\n {\n columns,\n data,\n defaultColumn,\n getRowId,\n getSubRows,\n initialState,\n stateReducer,\n },\n useFlexLayout,\n useResizeColumns,\n useFilters,\n useGlobalFilter,\n useGroupBy,\n useSortBy,\n useExpanded,\n usePagination,\n useRowSelect,\n );\n\n const mrtCalcs = useMRTCalcs({ tableInstance });\n\n if (process.env.NODE_ENV !== 'production' && !surpressoverrideWarnings) {\n showoverrideWarnings(rest);\n }\n\n return (\n <MaterialReactTableContext.Provider\n value={{\n //@ts-ignore\n tableInstance,\n ...mrtCalcs,\n ...rest,\n }}\n >\n {children}\n </MaterialReactTableContext.Provider>\n );\n};\n\nexport const useMaterialReactTable = <\n D extends {},\n>(): UseMaterialReactTable<D> =>\n //@ts-ignore\n useContext<UseMaterialReactTable<D>>(MaterialReactTableContext);\n","import React, { ChangeEvent, FC, useState } from 'react';\nimport { IconButton, InputAdornment, TextField } from '@mui/material';\nimport CloseIcon from '@mui/icons-material/Close';\nimport FilterIcon from '@mui/icons-material/FilterList';\nimport { HeaderGroup, useAsyncDebounce } from 'react-table';\nimport { useMaterialReactTable } from '../useMaterialReactTable';\n\ninterface Props {\n column: HeaderGroup;\n}\n\nexport const MRT_FilterTextfield: FC<Props> = ({ column }) => {\n const { localization } = useMaterialReactTable();\n\n const [filterValue, setFilterValue] = useState('');\n\n const handleChange = useAsyncDebounce((value) => {\n column.setFilter(value ?? undefined);\n }, 150);\n\n const handleClear = () => {\n setFilterValue('');\n column.setFilter(undefined);\n };\n\n return (\n <TextField\n margin=\"dense\"\n placeholder={localization?.filterTextFieldPlaceholder}\n onChange={(e: ChangeEvent<HTMLInputElement>) => {\n setFilterValue(e.target.value);\n handleChange(e.target.value);\n }}\n onClick={(e) => e.stopPropagation()}\n value={filterValue ?? ''}\n variant=\"standard\"\n InputProps={{\n startAdornment: (\n <InputAdornment position=\"start\">\n <FilterIcon />\n </InputAdornment>\n ),\n endAdornment: (\n <InputAdornment position=\"end\">\n <IconButton\n aria-label={localization?.filterTextFieldClearButtonTitle}\n disabled={filterValue?.length === 0}\n onClick={handleClear}\n size=\"small\"\n title={localization?.filterTextFieldClearButtonTitle}\n >\n <CloseIcon fontSize=\"small\" />\n </IconButton>\n </InputAdornment>\n ),\n }}\n />\n );\n};\n","import React, { FC } from 'react';\nimport { Divider, Menu, MenuItem as MuiMenuItem, styled } from '@mui/material';\nimport { useMaterialReactTable } from '../useMaterialReactTable';\nimport { ColumnInstance } from 'react-table';\nimport ClearAllIcon from '@mui/icons-material/ClearAll';\nimport SortIcon from '@mui/icons-material/Sort';\nimport VisibilityOffIcon from '@mui/icons-material/VisibilityOff';\nimport DynamicFeedIcon from '@mui/icons-material/DynamicFeed';\n\nconst MenuItem = styled(MuiMenuItem)({\n display: 'flex',\n gap: '0.75rem',\n});\n\ninterface Props {\n anchorEl: HTMLElement | null;\n column: ColumnInstance;\n setAnchorEl: (anchorEl: HTMLElement | null) => void;\n}\n\nexport const MRT_ColumnActionMenu: FC<Props> = ({\n anchorEl,\n column,\n setAnchorEl,\n}) => {\n const {\n enableColumnHiding,\n enableColumnGrouping,\n enableSorting,\n localization,\n } = useMaterialReactTable();\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 return (\n <Menu\n anchorEl={anchorEl}\n open={!!anchorEl}\n onClose={() => setAnchorEl(null)}\n >\n {enableSorting && [\n <MenuItem key={1} disabled={!column.isSorted} onClick={handleClearSort}>\n <ClearAllIcon /> {localization?.columnActionMenuItemClearSort}\n </MenuItem>,\n <MenuItem\n key={2}\n disabled={column.isSorted && !column.isSortedDesc}\n onClick={handleSortAsc}\n >\n <SortIcon /> {localization?.columnActionMenuItemSortAsc}\n </MenuItem>,\n <MenuItem\n key={3}\n disabled={column.isSorted && column.isSortedDesc}\n onClick={handleSortDesc}\n >\n <SortIcon style={{ transform: 'rotate(180deg) scaleX(-1)' }} />{' '}\n {localization?.columnActionMenuItemSortDesc}\n </MenuItem>,\n <Divider key={4} />,\n ]}\n {enableColumnHiding && (\n <MenuItem onClick={handleHideColumn}>\n <VisibilityOffIcon /> {localization?.columnActionMenuItemHideColumn}\n </MenuItem>\n )}\n {enableColumnGrouping && column.canGroupBy && (\n <MenuItem disabled={column.isGrouped} onClick={handleGroupByColumn}>\n <DynamicFeedIcon /> {localization?.columnActionMenuItemGroupBy}\n </MenuItem>\n )}\n {enableColumnGrouping && column.canGroupBy && (\n <MenuItem disabled={!column.isGrouped} onClick={handleGroupByColumn}>\n <DynamicFeedIcon /> {localization?.columnActionMenuItemUnGroupBy}\n </MenuItem>\n )}\n </Menu>\n );\n};\n","import React, { FC, MouseEvent, useState } from 'react';\nimport { IconButton as MuiIconButton, styled } from '@mui/material';\nimport MoreVertIcon from '@mui/icons-material/MoreVert';\nimport { useMaterialReactTable } from '../useMaterialReactTable';\nimport { MRT_ColumnActionMenu } from '../menus/MRT_ColumnActionMenu';\nimport { HeaderGroup } from 'react-table';\n\nconst IconButton = styled(MuiIconButton)({\n opacity: 0.2,\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 column: HeaderGroup;\n}\n\nexport const MRT_ToggleColumnActionMenuButton: FC<Props> = ({ column }) => {\n const { localization } = useMaterialReactTable();\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 <IconButton\n aria-label={localization?.columnActionMenuButtonTitle}\n title={localization?.columnActionMenuButtonTitle}\n onClick={handleClick}\n size=\"small\"\n >\n <MoreVertIcon />\n </IconButton>\n <MRT_ColumnActionMenu\n anchorEl={anchorEl}\n column={column}\n setAnchorEl={setAnchorEl}\n />\n </>\n );\n};\n","import React, { FC } from 'react';\nimport {\n TableCell as MuiTableCell,\n TableSortLabel,\n styled,\n Divider as MuiDivider,\n Collapse,\n} from '@mui/material';\nimport { HeaderGroup } from 'react-table';\nimport { useMaterialReactTable } from '../useMaterialReactTable';\nimport { MRT_FilterTextfield } from '../inputs/MRT_FilterTextField';\nimport { MRT_ToggleColumnActionMenuButton } from '../buttons/MRT_ToggleColumnActionMenuButton';\n\nconst TableCell = styled(MuiTableCell)({\n fontWeight: 'bold',\n});\n\nconst TableCellContents = styled('div')({\n display: 'grid',\n});\n\nconst TableCellText = styled('div')({\n width: '100%',\n display: 'flex',\n justifyContent: 'space-between',\n});\n\nconst CellFlexItem = styled('span')({\n display: 'flex',\n flexWrap: 'nowrap',\n});\n\nconst Divider = styled(MuiDivider)({\n borderRightWidth: '2px',\n borderRadius: '2px',\n maxHeight: '2rem',\n});\n\ninterface Props {\n column: HeaderGroup;\n}\n\nexport const MRT_TableHeadCell: FC<Props> = ({ column }) => {\n const {\n overrideTableHeadCellComponent,\n enableColumnActions,\n enableColumnResizing,\n enableFiltering,\n showFiltersInColumnHead,\n tableInstance,\n } = useMaterialReactTable();\n\n if (overrideTableHeadCellComponent) {\n return <>{overrideTableHeadCellComponent(column, tableInstance)}</>;\n }\n\n const isParentHeader = (column?.columns?.length ?? 0) > 0;\n\n return (\n <TableCell\n align={isParentHeader ? 'center' : 'left'}\n {...column.getHeaderProps()}\n >\n <TableCellContents>\n <TableCellText\n style={{ justifyContent: isParentHeader ? 'center' : undefined }}\n >\n <CellFlexItem {...column.getSortByToggleProps()}>\n {column.render('Header')}\n {!isParentHeader && column.canSort && (\n <TableSortLabel\n active={column.isSorted}\n direction={column.isSortedDesc ? 'desc' : 'asc'}\n style={{ margin: 0 }}\n />\n )}\n </CellFlexItem>\n <CellFlexItem>\n {enableColumnActions && !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 />\n )}\n </CellFlexItem>\n </TableCellText>\n {enableFiltering && column.canFilter && (\n <Collapse in={showFiltersInColumnHead}>\n <MRT_FilterTextfield column={column} />\n </Collapse>\n )}\n </TableCellContents>\n </TableCell>\n );\n};\n","import React from 'react';\nimport { Checkbox, TableCell } from '@mui/material';\nimport { useMaterialReactTable } from '../useMaterialReactTable';\n\nexport const MRT_SelectAllCheckbox = () => {\n const { tableInstance, enableSelectAll } = useMaterialReactTable();\n\n return (\n <TableCell style={{ width: '2rem', padding: '0.5rem' }} variant=\"head\">\n {enableSelectAll ? (\n <Checkbox\n aria-label=\"\"\n {...tableInstance.getToggleAllPageRowsSelectedProps()}\n />\n ) : null}\n </TableCell>\n );\n};\n","import React, { FC } from 'react';\nimport { IconButton, TableCell } from '@mui/material';\nimport ArrowRightIcon from '@mui/icons-material/KeyboardDoubleArrowDown';\nimport { useMaterialReactTable } from '../useMaterialReactTable';\n\ninterface Props {}\n\nexport const MRT_ExpandAllButton: FC<Props> = () => {\n const { tableInstance, localization, anyRowsExpanded, renderDetailPanel } =\n useMaterialReactTable();\n\n return (\n <TableCell\n size=\"small\"\n {...tableInstance.getToggleAllRowsExpandedProps()}\n style={{\n padding: '0.5rem',\n paddingRight: '0',\n width: `${renderDetailPanel ? 2 : tableInstance.expandedDepth + 2}rem`,\n }}\n >\n <IconButton\n aria-label={localization?.expandAllButtonTitle}\n title={localization?.expandAllButtonTitle}\n >\n <ArrowRightIcon\n fontSize=\"small\"\n style={{\n transform: tableInstance.isAllRowsExpanded\n ? 'rotate(-180deg)'\n : anyRowsExpanded\n ? 'rotate(-90deg)'\n : 'rotate(0)',\n transition: 'transform 0.2s',\n }}\n />\n </IconButton>\n </TableCell>\n );\n};\n","import React, { FC } from 'react';\nimport { FormControlLabel, MenuItem, Switch, Typography } from '@mui/material';\nimport { useMaterialReactTable } from '../useMaterialReactTable';\nimport { ColumnInstance } from 'react-table';\n\ninterface Props {\n column: ColumnInstance;\n}\n\nexport const MRT_ShowHideColumnsMenu: FC<Props> = ({ column }) => {\n const { maxColumnDepth } = useMaterialReactTable();\n\n const isMaxDepth = column.depth === maxColumnDepth;\n\n return (\n <>\n <MenuItem style={{ paddingLeft: `${column.depth + 1}rem` }}>\n {isMaxDepth ? (\n <FormControlLabel\n onChange={() => isMaxDepth && column.toggleHidden()}\n label={column.Header as string}\n checked={column.isVisible}\n control={<Switch />}\n />\n ) : (\n <Typography>{column.Header}</Typography>\n )}\n </MenuItem>\n {column.columns?.map((c, i) => (\n <MRT_ShowHideColumnsMenu key={`${i}-${c.id}`} column={c} />\n ))}\n </>\n );\n};\n","import React, { FC, MouseEvent, useState } from 'react';\nimport { IconButton, Menu, TableCell } from '@mui/material';\nimport ViewColumnIcon from '@mui/icons-material/ViewColumn';\nimport { useMaterialReactTable } from '../useMaterialReactTable';\nimport { MRT_ShowHideColumnsMenu } from '../menus/MRT_ShowHideColumnsMenu';\n\ninterface Props {}\n\nexport const MRT_ShowHideColumnsButton: FC<Props> = () => {\n const { tableInstance, localization } = useMaterialReactTable();\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 <TableCell size=\"small\" style={{ width: '2rem', padding: '0.75rem 0' }}>\n <IconButton\n aria-label={localization?.showHideColumnsButtonTitle}\n title={localization?.showHideColumnsButtonTitle}\n onClick={handleClick}\n size=\"small\"\n style={{ margin: '0 0 0 -0.75rem' }}\n >\n <ViewColumnIcon />\n </IconButton>\n <Menu\n anchorEl={anchorEl}\n open={!!anchorEl}\n onClose={() => setAnchorEl(null)}\n >\n {tableInstance.columns.map((column, index) => (\n <MRT_ShowHideColumnsMenu\n key={`${index}-${column.id}`}\n column={column}\n />\n ))}\n </Menu>\n </TableCell>\n );\n};\n","import React, { CSSProperties, FC } from 'react';\nimport { TableCell } from '@mui/material';\n\ninterface Props {\n width?: CSSProperties['width'];\n}\n\nexport const MRT_TableSpacerCell: FC<Props> = ({ width }) => {\n return <TableCell style={{ width }} />;\n};\n","import React, { FC, useMemo } from 'react';\nimport { TableRow } from '@mui/material';\nimport { HeaderGroup } from 'react-table';\nimport { MRT_TableHeadCell } from './MRT_TableHeadCell';\nimport { useMaterialReactTable } from '../useMaterialReactTable';\nimport { MRT_SelectAllCheckbox } from '../inputs/MRT_SelectAllCheckbox';\nimport { MRT_ExpandAllButton } from '../buttons/MRT_ExpandAllButton';\nimport { MRT_ShowHideColumnsButton } from '../buttons/MRT_ShowHideColumnsButton';\nimport { MRT_TableSpacerCell } from '../table/MRT_TableSpacerCell';\n\ninterface Props {\n headerGroup: HeaderGroup;\n}\n\nexport const MRT_TableHeadRow: FC<Props> = ({ headerGroup }) => {\n const {\n overrideTableHeadRowComponent,\n anyRowsCanExpand,\n enableColumnHiding,\n enableExpandAll,\n enableSelection,\n renderDetailPanel,\n tableInstance,\n } = useMaterialReactTable();\n\n if (overrideTableHeadRowComponent) {\n return <>{overrideTableHeadRowComponent(headerGroup, tableInstance)}</>;\n }\n\n const isParentHeader = useMemo(\n () => headerGroup.headers.some((h) => (h.columns?.length ?? 0) > 0),\n [headerGroup.headers],\n );\n\n return (\n <TableRow {...headerGroup.getHeaderGroupProps()}>\n {anyRowsCanExpand || renderDetailPanel ? (\n enableExpandAll && !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_SelectAllCheckbox />\n ) : (\n <MRT_TableSpacerCell width=\"1rem\" />\n )\n ) : null}\n {headerGroup.headers.map((column, index) => (\n <MRT_TableHeadCell key={`${index}-${column.id}`} column={column} />\n ))}\n {enableColumnHiding && !isParentHeader && <MRT_ShowHideColumnsButton />}\n </TableRow>\n );\n};\n","import React, { ChangeEvent, FC } from 'react';\nimport { TablePagination, TableRow } from '@mui/material';\nimport { useMaterialReactTable } from '../useMaterialReactTable';\n\ninterface Props {}\n\nexport const MRT_TablePagination: FC<Props> = () => {\n const {\n tableInstance,\n tablePaginationProps,\n overrideTablePaginationComponent,\n } = useMaterialReactTable();\n\n const handleChangeRowsPerPage = (event: ChangeEvent<HTMLInputElement>) => {\n tableInstance.setPageSize(+event.target.value);\n tableInstance.gotoPage(0);\n };\n\n if (overrideTablePaginationComponent) {\n return <>{overrideTablePaginationComponent(tableInstance)}</>;\n }\n\n return (\n <TableRow>\n <TablePagination\n colSpan={tableInstance.visibleColumns.length + 10}\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 showFirstButton={\n tableInstance.rows.length / tableInstance.state.pageSize > 2\n }\n showLastButton={\n tableInstance.rows.length / tableInstance.state.pageSize > 2\n }\n {...tablePaginationProps}\n />\n </TableRow>\n );\n};\n","import React, { FC } from 'react';\nimport { LinearProgress, TableHead } from '@mui/material';\nimport { MRT_TableHeadRow } from './MRT_TableHeadRow';\nimport { useMaterialReactTable } from '../useMaterialReactTable';\nimport { MRT_TablePagination } from '../footer/MRT_TablePagination';\n\ninterface Props {}\n\nexport const MRT_TableHead: FC<Props> = () => {\n const {\n overrideTableHeadComponent,\n tableInstance,\n tableHeadProps,\n enablePagination,\n isFetching,\n positionPagination,\n } = useMaterialReactTable();\n\n if (overrideTableHeadComponent) {\n return <>{overrideTableHeadComponent(tableInstance)}</>;\n }\n\n return (\n <TableHead {...tableHeadProps}>\n {isFetching && <LinearProgress />}\n {enablePagination &&\n ['top', 'both'].includes(positionPagination ?? '') && (\n <MRT_TablePagination />\n )}\n {tableInstance.headerGroups.map((headerGroup, index) => (\n <MRT_TableHeadRow\n key={`${index}-${headerGroup.id}`}\n headerGroup={headerGroup}\n />\n ))}\n </TableHead>\n );\n};\n","import React, { FC, MouseEvent } from 'react';\nimport { TableCell } from '@mui/material';\nimport { Cell } from 'react-table';\nimport { useMaterialReactTable } from '../useMaterialReactTable';\n\ninterface Props {\n cell: Cell;\n}\n\nexport const MRT_TableBodyCell: FC<Props> = ({ cell }) => {\n const { tableInstance, overrideTableBodyCellComponent, onCellClick } =\n useMaterialReactTable();\n\n if (overrideTableBodyCellComponent) {\n return <>{overrideTableBodyCellComponent(cell, tableInstance)}</>;\n }\n\n return (\n <TableCell\n onClick={(event: MouseEvent<HTMLTableCellElement>) =>\n onCellClick?.(event, cell)\n }\n variant=\"body\"\n {...cell.getCellProps()}\n >\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 ) : (\n cell.render('Cell')\n )}\n </TableCell>\n );\n};\n","import React, { FC } from 'react';\nimport { Collapse, TableCell, TableRow } from '@mui/material';\nimport { Row } from 'react-table';\nimport { useMaterialReactTable } from '../useMaterialReactTable';\n\ninterface Props {\n row: Row;\n}\n\nexport const MRT_TableDetailPanel: FC<Props> = ({ row }) => {\n const {\n tableInstance,\n renderDetailPanel,\n overrideTableDetailPanelComponent,\n tableDetailPanelProps,\n } = useMaterialReactTable();\n\n if (overrideTableDetailPanelComponent) {\n return <>{overrideTableDetailPanelComponent(row, tableInstance)}</>;\n }\n\n return (\n <TableRow {...row.getToggleRowExpandedProps()}>\n <TableCell\n colSpan={tableInstance.visibleColumns.length + 10}\n style={{\n borderBottom: !row.isExpanded ? 'none' : undefined,\n paddingBottom: row.isExpanded ? '1rem' : 0,\n paddingTop: row.isExpanded ? '1rem' : 0,\n transition: 'all 0.2s',\n }}\n {...tableDetailPanelProps}\n >\n <Collapse in={row.isExpanded}>{renderDetailPanel?.(row)}</Collapse>\n </TableCell>\n </TableRow>\n );\n};\n","import React, { FC } from 'react';\nimport { IconButton, TableCell } from '@mui/material';\nimport { Row } from 'react-table';\nimport ExpandMoreIcon from '@mui/icons-material/ExpandMore';\nimport { useMaterialReactTable } from '../useMaterialReactTable';\n\ninterface Props {\n row: Row;\n}\n\nexport const MRT_ExpandButton: FC<Props> = ({ row }) => {\n const { localization, tableInstance, renderDetailPanel } =\n useMaterialReactTable();\n\n return (\n <TableCell\n size=\"small\"\n {...row.getToggleRowExpandedProps()}\n style={{\n padding: '0.5rem',\n paddingRight: '0',\n paddingLeft: `${row.depth + 0.5}rem`,\n width: `${\n renderDetailPanel ? 2 : tableInstance.expandedDepth - row.depth + 2\n }rem`,\n }}\n >\n <IconButton\n aria-label={localization?.expandButtonTitle}\n title={localization?.expandButtonTitle}\n >\n <ExpandMoreIcon\n fontSize=\"small\"\n style={{\n transform: row.isExpanded ? 'rotate(-180deg)' : 'rotate(0)',\n transition: 'transform 0.2s',\n }}\n />\n </IconButton>\n </TableCell>\n );\n};\n","import React, { ChangeEvent, FC } from 'react';\nimport { Checkbox, TableCell } from '@mui/material';\nimport { Row } from 'react-table';\nimport { useMaterialReactTable } from '../useMaterialReactTable';\n\ninterface Props {\n row: Row;\n}\n\nexport const MRT_SelectCheckbox: FC<Props> = ({ row }) => {\n const { tableInstance, onRowSelectChange } = useMaterialReactTable();\n\n const onSelectChange = (event: ChangeEvent) => {\n row.getToggleRowSelectedProps()?.onChange?.(event);\n onRowSelectChange?.(event, row, tableInstance.selectedFlatRows);\n };\n\n return (\n <TableCell style={{ width: '2rem', padding: '0.5rem' }}>\n <Checkbox\n {...row.getToggleRowSelectedProps()}\n onChange={onSelectChange}\n />\n </TableCell>\n );\n};\n","import React, { FC, MouseEvent } from 'react';\nimport { TableRow } from '@mui/material';\nimport { Row } from 'react-table';\nimport { MRT_TableBodyCell } from './MRT_TableBodyCell';\nimport { useMaterialReactTable } from '../useMaterialReactTable';\nimport { MRT_TableDetailPanel } from './MRT_TableDetailPanel';\nimport { MRT_ExpandButton } from '../buttons/MRT_ExpandButton';\nimport { MRT_SelectCheckbox } from '../inputs/MRT_SelectCheckbox';\nimport { MRT_TableSpacerCell } from '../table/MRT_TableSpacerCell';\n\ninterface Props {\n row: Row;\n}\n\nexport const MRT_TableBodyRow: FC<Props> = ({ row }) => {\n const {\n overrideTableBodyRowComponent,\n anyRowsCanExpand,\n enableSelection,\n enableSubRowTree,\n enableColumnHiding,\n onRowClick,\n renderDetailPanel,\n tableInstance,\n } = useMaterialReactTable();\n\n if (overrideTableBodyRowComponent) {\n return <>{overrideTableBodyRowComponent(row, tableInstance)}</>;\n }\n\n return (\n <>\n <TableRow\n onClick={(event: MouseEvent<HTMLTableRowElement>) =>\n onRowClick?.(event, row)\n }\n {...row.getRowProps()}\n >\n {((enableSubRowTree && anyRowsCanExpand) || renderDetailPanel) &&\n (row.canExpand || renderDetailPanel ? (\n <MRT_ExpandButton row={row} />\n ) : (\n <MRT_TableSpacerCell\n width={`${\n renderDetailPanel ? 2 : tableInstance.expandedDepth + 0.5\n }rem`}\n />\n ))}\n {enableSelection && <MRT_SelectCheckbox row={row} />}\n {row.cells.map((cell, index) => (\n <MRT_TableBodyCell key={`${index}-${cell.value}`} cell={cell} />\n ))}\n {enableColumnHiding && <MRT_TableSpacerCell />}\n </TableRow>\n {renderDetailPanel && <MRT_TableDetailPanel row={row} />}\n </>\n );\n};\n","import React, { FC } from 'react';\nimport {\n CircularProgress,\n styled,\n TableBody as MuiTableBody,\n} from '@mui/material';\nimport { MRT_TableBodyRow } from './MRT_TableBodyRow';\nimport { useMaterialReactTable } from '../useMaterialReactTable';\n\nconst TableBody = styled(MuiTableBody)({\n overflowY: 'hidden',\n});\n\nconst CircularProgressWrapper = styled('div')({\n backgroundColor: 'rgba(255, 255, 255, 0.5)',\n display: 'grid',\n height: '100%',\n justifyContent: 'center',\n margin: 'auto',\n paddingTop: '5rem',\n position: 'fixed',\n width: 'calc(100% - 2rem)',\n});\n\ninterface Props {}\n\nexport const MRT_TableBody: FC<Props> = () => {\n const {\n tableInstance,\n tableBodyProps,\n isLoading,\n enablePagination,\n overrideTableBodyComponent,\n } = useMaterialReactTable();\n\n if (overrideTableBodyComponent) {\n return <>{overrideTableBodyComponent(tableInstance)}</>;\n }\n\n const rows = enablePagination ? tableInstance.page : tableInstance.rows;\n\n return (\n <>\n <TableBody {...tableBodyProps} {...tableInstance.getTableBodyProps()}>\n {isLoading && (\n <CircularProgressWrapper>\n <CircularProgress />\n </CircularProgressWrapper>\n )}\n {rows.map((row, index) => {\n tableInstance.prepareRow(row);\n return <MRT_TableBodyRow key={`${index}-${row.id}`} row={row} />;\n })}\n </TableBody>\n </>\n );\n};\n","import React, { FC } from 'react';\nimport { styled, TableCell as MuiTableCell } from '@mui/material';\nimport { HeaderGroup } from 'react-table';\nimport { useMaterialReactTable } from '../useMaterialReactTable';\n\nconst TableCell = styled(MuiTableCell)({\n fontWeight: 'bold',\n});\n\ninterface Props {\n column: HeaderGroup;\n}\n\nexport const MRT_TableFooterCell: FC<Props> = ({ column }) => {\n const { tableInstance, overrideTableFooterCellComponent } =\n useMaterialReactTable();\n\n if (overrideTableFooterCellComponent) {\n return <>{overrideTableFooterCellComponent(column, tableInstance)}</>;\n }\n\n const isParentHeader = (column?.columns?.length ?? 0) > 0;\n\n return (\n <TableCell\n align={isParentHeader ? 'center' : 'left'}\n variant=\"head\"\n {...column.getFooterProps()}\n >\n {column.render('Footer')}\n </TableCell>\n );\n};\n","import React, { FC } from 'react';\nimport { TableCell, TableRow } from '@mui/material';\nimport { HeaderGroup } from 'react-table';\nimport { MRT_TableFooterCell } from './MRT_TableFooterCell';\nimport { MRT_TableSpacerCell } from '../table/MRT_TableSpacerCell';\nimport { useMaterialReactTable } from '../useMaterialReactTable';\n\ninterface Props {\n footerGroup: HeaderGroup;\n}\n\nexport const MRT_TableFooterRow: FC<Props> = ({ footerGroup }) => {\n const {\n renderDetailPanel,\n columns,\n anyRowsCanExpand,\n enableColumnHiding,\n enableSelection,\n tableInstance,\n overrideTableFooterRowComponent,\n } = useMaterialReactTable();\n\n //if no content in row, skip row\n if (!columns?.some((c) => c.Footer)) return null;\n\n if (overrideTableFooterRowComponent) {\n return <>{overrideTableFooterRowComponent(footerGroup, tableInstance)}</>;\n }\n\n return (\n <TableRow {...footerGroup.getFooterGroupProps()}>\n {(anyRowsCanExpand || renderDetailPanel) && (\n <TableCell\n style={{\n width: `${\n renderDetailPanel ? 2 : tableInstance.expandedDepth + 0.5\n }rem`,\n }}\n />\n )}\n {enableSelection && <MRT_TableSpacerCell width=\"1rem\" />}\n {footerGroup.headers.map((column, index) => (\n <MRT_TableFooterCell key={`${index}-${column.id}`} column={column} />\n ))}\n {enableColumnHiding && <MRT_TableSpacerCell />}\n </TableRow>\n );\n};\n","import React, { FC } from 'react';\nimport { TableFooter } from '@mui/material';\nimport { MRT_TableFooterRow } from './MRT_TableFooterRow';\nimport { useMaterialReactTable } from '../useMaterialReactTable';\nimport { MRT_TablePagination } from './MRT_TablePagination';\n\ninterface Props {}\n\nexport const MRT_TableFooter: FC<Props> = () => {\n const {\n overrideTableFooterComponent,\n enablePagination,\n positionPagination,\n tableFooterProps,\n tableInstance,\n } = useMaterialReactTable();\n\n if (overrideTableFooterComponent) {\n return <>{overrideTableFooterComponent(tableInstance)}</>;\n }\n\n return (\n <TableFooter {...tableFooterProps}>\n {tableInstance.footerGroups.map((footerGroup, index) => (\n <MRT_TableFooterRow\n key={`${index}-${footerGroup.id}`}\n footerGroup={footerGroup}\n />\n ))}\n {enablePagination &&\n ['bottom', 'both'].includes(positionPagination ?? '') && (\n <MRT_TablePagination />\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 { useMaterialReactTable } from '../useMaterialReactTable';\n\ninterface Props {}\n\nexport const MRT_Table: FC<Props> = () => {\n const { tableInstance, tableProps, showHead, showFooter } =\n useMaterialReactTable();\n\n return (\n <Table {...tableProps} {...tableInstance.getTableProps()}>\n {showHead && <MRT_TableHead />}\n <MRT_TableBody />\n {showFooter && <MRT_TableFooter />}\n </Table>\n );\n};\n","import React, { ChangeEvent, FC, useState } from 'react';\nimport {\n IconButton,\n InputAdornment,\n styled,\n TextField as MuiTextField,\n} from '@mui/material';\nimport SearchIcon from '@mui/icons-material/Search';\nimport CloseIcon from '@mui/icons-material/Close';\nimport { useMaterialReactTable } from '../useMaterialReactTable';\nimport { useAsyncDebounce } from 'react-table';\n\nconst TextField = styled(MuiTextField)({\n justifySelf: 'end',\n});\n\ninterface Props {}\n\nexport const MRT_SearchTextField: FC<Props> = () => {\n const {\n tableInstance,\n tableSearchTextfieldProps,\n localization,\n onSearchChange,\n } = useMaterialReactTable();\n\n const [searchValue, setSearchValue] = useState('');\n\n const handleChange = useAsyncDebounce(\n (event: ChangeEvent<HTMLInputElement>) => {\n tableInstance.setGlobalFilter(event.target.value ?? undefined);\n onSearchChange?.(event);\n },\n 200,\n );\n\n const handleClear = () => {\n setSearchValue('');\n tableInstance.setGlobalFilter(undefined);\n };\n\n return (\n <TextField\n placeholder={localization?.searchTextFieldPlaceholder}\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?.searchTextFieldClearButtonTitle}\n disabled={searchValue?.length === 0}\n onClick={handleClear}\n size=\"small\"\n title={localization?.searchTextFieldClearButtonTitle}\n >\n <CloseIcon fontSize=\"small\" />\n </IconButton>\n </InputAdornment>\n ),\n }}\n {...tableSearchTextfieldProps}\n />\n );\n};\n","import React, { FC } from 'react';\nimport { styled, Toolbar as MuiToolbar, Typography } from '@mui/material';\nimport { MRT_SearchTextField } from '../inputs/MRT_SearchTextField';\nimport { useMaterialReactTable } from '../useMaterialReactTable';\n\nconst Toolbar = styled(MuiToolbar)({\n padding: '0.5rem',\n display: 'flex',\n justifyContent: 'space-between',\n});\n\ninterface Props {}\n\nexport const MRT_Toolbar: FC<Props> = () => {\n const {\n overrideTableToolbarComponent,\n enableSearch,\n tableInstance,\n tableTitleProps,\n tableToolbarProps,\n title,\n } = useMaterialReactTable();\n\n if (overrideTableToolbarComponent) {\n return <>{overrideTableToolbarComponent(tableInstance)}</>;\n }\n\n //if no features in the toolbar are enabled, don't render anything\n if (!enableSearch && !title && !tableToolbarProps) {\n return null;\n }\n\n return (\n <Toolbar variant=\"dense\" {...tableToolbarProps}>\n {title ? <Typography {...tableTitleProps}>{title}</Typography> : <span />}\n {enableSearch && <MRT_SearchTextField />}\n </Toolbar>\n );\n};\n","import React, { FC } from 'react';\nimport { Paper, TableContainer } from '@mui/material';\nimport { useMaterialReactTable } from '../useMaterialReactTable';\nimport { MRT_Table } from './MRT_Table';\nimport { MRT_Toolbar } from '../toolbar/MRT_Toolbar';\n\ninterface Props {}\n\nexport const MRT_TableContainer: FC<Props> = () => {\n const { tableContainerProps, showToolbar } = useMaterialReactTable();\n\n return (\n <TableContainer component={Paper} {...tableContainerProps}>\n {showToolbar && <MRT_Toolbar />}\n <MRT_Table />\n </TableContainer>\n );\n};\n","export interface MRT_Localization {\n columnActionMenuButtonTitle?: string;\n columnActionMenuItemHideColumn?: string;\n columnActionMenuItemSortAsc?: string;\n columnActionMenuItemClearSort?: string;\n columnActionMenuItemSortDesc?: string;\n columnActionMenuItemGroupBy?: string;\n columnActionMenuItemUnGroupBy?: string;\n expandAllButtonTitle?: string;\n expandButtonTitle?: string;\n filterTextFieldClearButtonTitle?: string;\n filterTextFieldPlaceholder?: string;\n searchTextFieldClearButtonTitle?: string;\n searchTextFieldPlaceholder?: string;\n showHideColumnsButtonTitle?: string;\n}\n\nexport const defaultLocalization: MRT_Localization = {\n columnActionMenuButtonTitle: 'Column Actions',\n columnActionMenuItemHideColumn: 'Hide column',\n columnActionMenuItemSortAsc: 'Sort ascending',\n columnActionMenuItemClearSort: 'Clear sorting',\n columnActionMenuItemSortDesc: 'Sort descending',\n columnActionMenuItemGroupBy: 'Group by column',\n columnActionMenuItemUnGroupBy: 'Ungroup column',\n expandAllButtonTitle: 'Expand all',\n expandButtonTitle: 'Expand',\n filterTextFieldClearButtonTitle: 'Clear filter',\n filterTextFieldPlaceholder: 'Filter',\n searchTextFieldClearButtonTitle: 'Clear search',\n searchTextFieldPlaceholder: 'Search',\n showHideColumnsButtonTitle: 'Show/Hide columns',\n};\n","import React, { ChangeEvent, MouseEvent, ReactNode } from 'react';\nimport {\n TableBodyProps,\n TableCellProps,\n TableContainerProps,\n TableFooterProps,\n TableHeadProps,\n TablePaginationProps,\n TableProps,\n TextFieldProps,\n ToolbarProps,\n TypographyProps,\n} from '@mui/material';\nimport {\n Cell,\n HeaderGroup,\n Row,\n TableInstance,\n TableOptions,\n} from 'react-table';\nimport { MaterialReactTableProvider } from './useMaterialReactTable';\nimport { MRT_TableContainer } from './table/MRT_TableContainer';\nimport { defaultLocalization, MRT_Localization } from './utils/localization';\n\nexport interface MaterialReactTableProps<D extends {} = {}>\n extends TableOptions<D> {\n enableColumnActions?: boolean;\n enableColumnGrouping?: boolean;\n enableColumnHiding?: boolean;\n enableColumnReordering?: boolean;\n enableColumnResizing?: boolean;\n enableExpandAll?: boolean;\n enableFiltering?: boolean;\n enablePagination?: boolean;\n enableSearch?: boolean;\n enableSelectAll?: boolean;\n enableSelection?: boolean;\n enableSorting?: boolean;\n enableSubRowTree?: boolean;\n isFetching?: boolean;\n isLoading?: boolean;\n localization?: Partial<MRT_Localization>;\n onCellClick?: (\n event: MouseEvent<HTMLTableCellElement>,\n cell: Cell<D>,\n ) => void;\n onRowClick?: (event: MouseEvent<HTMLTableRowElement>, row: Row<D>) => 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 onSearchChange?: (event: ChangeEvent<HTMLInputElement>) => void;\n overrideTableBodyCellComponent?(\n cell: Cell<D>,\n tableInstance: TableInstance<D>,\n ): ReactNode;\n overrideTableBodyComponent?(tableInstance: TableInstance<D>): ReactNode;\n overrideTableBodyRowComponent?(\n row: Row<D>,\n tableInstance: TableInstance<D>,\n ): ReactNode;\n overrideTableDetailPanelComponent?(\n row: Row<D>,\n tableInstance: TableInstance<D>,\n ): ReactNode;\n overrideTableFooterCellComponent?(\n column: HeaderGroup<D>,\n tableInstance: TableInstance<D>,\n ): ReactNode;\n overrideTableFooterComponent?(tableInstance: TableInstance<D>): ReactNode;\n overrideTableFooterRowComponent?(\n footerGroup: HeaderGroup<D>,\n tableInstance: TableInstance<D>,\n ): ReactNode;\n overrideTableHeadCellComponent?(\n column: HeaderGroup<D>,\n tableInstance: TableInstance<D>,\n ): ReactNode;\n overrideTableHeadComponent?(tableInstance: TableInstance<D>): ReactNode;\n overrideTableHeadRowComponent?(\n headerGroup: HeaderGroup<D>,\n tableInstance: TableInstance<D>,\n ): ReactNode;\n overrideTablePaginationComponent?(tableInstance: TableInstance<D>): ReactNode;\n overrideTableToolbarComponent?(tableInstance: TableInstance<D>): ReactNode;\n positionPagination?: 'bottom' | 'top' | 'both';\n renderDetailPanel?: (rowData: Row<D>) => ReactNode;\n showFiltersInColumnHead?: boolean;\n showFooter?: boolean;\n showHead?: boolean;\n showToolbar?: boolean;\n surpressoverrideWarnings?: boolean;\n tableBodyProps?: TableBodyProps;\n tableContainerProps?: TableContainerProps;\n tableDetailPanelProps?: TableCellProps;\n tableFooterProps?: TableFooterProps;\n tableHeadProps?: TableHeadProps;\n tablePaginationProps?: TablePaginationProps;\n tableProps?: TableProps;\n tableSearchTextfieldProps?: TextFieldProps;\n tableTitleProps?: TypographyProps;\n tableToolbarProps?: ToolbarProps;\n title?: string | ReactNode;\n}\n\nexport const MaterialReactTable = <D extends {}>({\n defaultColumn = { minWidth: 50, maxWidth: 1000 },\n enablePagination = true,\n enableSorting = true,\n enableSubRowTree = true,\n localization = defaultLocalization,\n positionPagination = 'bottom',\n showFiltersInColumnHead = true,\n showFooter = true,\n showHead = true,\n showToolbar = true,\n ...rest\n}: MaterialReactTableProps<D>) => (\n <MaterialReactTableProvider\n defaultColumn={defaultColumn}\n enablePagination={enablePagination}\n enableSorting={enableSorting}\n enableSubRowTree={enableSubRowTree}\n localization={{ ...defaultLocalization, ...localization }}\n positionPagination={positionPagination}\n showFiltersInColumnHead={showFiltersInColumnHead}\n showFooter={showFooter}\n showHead={showHead}\n showToolbar={showToolbar}\n {...rest}\n >\n <MRT_TableContainer />\n </MaterialReactTableProvider>\n);\n"],"names":["useMRTCalcs","tableInstance","anyRowsCanExpand","useMemo","rows","some","row","canExpand","anyRowsExpanded","isExpanded","maxColumnDepth","maxDepth","columns","forEach","column","length","Math","max","showoverrideWarnings","props","overrideTableBodyCellComponent","showWarning","overrideTableBodyComponent","overrideTableBodyRowComponent","overrideTableDetailPanelComponent","overrideTableFooterComponent","overrideTableFooterCellComponent","overrideTableFooterRowComponent","overrideTableHeadComponent","overrideTableHeadRowComponent","overrideTablePaginationComponent","overrideTableToolbarComponent","componentName","propsName","console","warn","MaterialReactTableContext","createContext","MaterialReactTableProvider","children","data","defaultColumn","getRowId","getSubRows","initialState","stateReducer","surpressoverrideWarnings","rest","useTable","useFlexLayout","useResizeColumns","useFilters","useGlobalFilter","useGroupBy","useSortBy","useExpanded","usePagination","useRowSelect","mrtCalcs","process","React","Provider","value","useMaterialReactTable","useContext","MRT_FilterTextfield","localization","useState","filterValue","setFilterValue","handleChange","useAsyncDebounce","setFilter","undefined","handleClear","TextField","margin","placeholder","filterTextFieldPlaceholder","onChange","e","target","onClick","stopPropagation","variant","InputProps","startAdornment","InputAdornment","position","FilterIcon","endAdornment","IconButton","filterTextFieldClearButtonTitle","disabled","size","title","CloseIcon","fontSize","MenuItem","styled","MuiMenuItem","display","gap","MRT_ColumnActionMenu","anchorEl","setAnchorEl","enableColumnHiding","enableColumnGrouping","enableSorting","handleClearSort","clearSortBy","handleSortAsc","toggleSortBy","handleSortDesc","handleHideColumn","toggleHidden","handleGroupByColumn","toggleGroupBy","Menu","open","onClose","key","isSorted","ClearAllIcon","columnActionMenuItemClearSort","isSortedDesc","SortIcon","columnActionMenuItemSortAsc","style","transform","columnActionMenuItemSortDesc","Divider","VisibilityOffIcon","columnActionMenuItemHideColumn","canGroupBy","isGrouped","DynamicFeedIcon","columnActionMenuItemGroupBy","columnActionMenuItemUnGroupBy","MuiIconButton","opacity","transition","marginRight","height","width","MRT_ToggleColumnActionMenuButton","handleClick","event","preventDefault","currentTarget","columnActionMenuButtonTitle","MoreVertIcon","TableCell","MuiTableCell","fontWeight","TableCellContents","TableCellText","justifyContent","CellFlexItem","flexWrap","MuiDivider","borderRightWidth","borderRadius","maxHeight","MRT_TableHeadCell","overrideTableHeadCellComponent","enableColumnActions","enableColumnResizing","enableFiltering","showFiltersInColumnHead","isParentHeader","align","getHeaderProps","getSortByToggleProps","render","canSort","TableSortLabel","active","direction","flexItem","orientation","onDoubleClick","resetResizing","getResizerProps","canFilter","Collapse","MRT_SelectAllCheckbox","enableSelectAll","padding","Checkbox","getToggleAllPageRowsSelectedProps","MRT_ExpandAllButton","renderDetailPanel","getToggleAllRowsExpandedProps","paddingRight","expandedDepth","expandAllButtonTitle","ArrowRightIcon","isAllRowsExpanded","MRT_ShowHideColumnsMenu","isMaxDepth","depth","paddingLeft","FormControlLabel","label","Header","checked","isVisible","control","Switch","Typography","map","c","i","id","MRT_ShowHideColumnsButton","showHideColumnsButtonTitle","ViewColumnIcon","index","MRT_TableSpacerCell","MRT_TableHeadRow","headerGroup","enableExpandAll","enableSelection","headers","h","TableRow","getHeaderGroupProps","MRT_TablePagination","tablePaginationProps","handleChangeRowsPerPage","setPageSize","gotoPage","TablePagination","colSpan","visibleColumns","count","onPageChange","_","newPage","onRowsPerPageChange","page","state","pageIndex","rowsPerPage","pageSize","showFirstButton","showLastButton","MRT_TableHead","tableHeadProps","enablePagination","isFetching","positionPagination","TableHead","LinearProgress","includes","headerGroups","MRT_TableBodyCell","cell","onCellClick","getCellProps","isPlaceholder","isAggregated","subRows","MRT_TableDetailPanel","tableDetailPanelProps","getToggleRowExpandedProps","borderBottom","paddingBottom","paddingTop","MRT_ExpandButton","expandButtonTitle","ExpandMoreIcon","MRT_SelectCheckbox","onRowSelectChange","onSelectChange","getToggleRowSelectedProps","selectedFlatRows","MRT_TableBodyRow","enableSubRowTree","onRowClick","getRowProps","cells","TableBody","MuiTableBody","overflowY","CircularProgressWrapper","backgroundColor","MRT_TableBody","tableBodyProps","isLoading","getTableBodyProps","CircularProgress","prepareRow","MRT_TableFooterCell","getFooterProps","MRT_TableFooterRow","footerGroup","Footer","getFooterGroupProps","MRT_TableFooter","tableFooterProps","TableFooter","footerGroups","MRT_Table","tableProps","showHead","showFooter","Table","getTableProps","MuiTextField","justifySelf","MRT_SearchTextField","tableSearchTextfieldProps","onSearchChange","searchValue","setSearchValue","setGlobalFilter","searchTextFieldPlaceholder","SearchIcon","searchTextFieldClearButtonTitle","Toolbar","MuiToolbar","MRT_Toolbar","enableSearch","tableTitleProps","tableToolbarProps","MRT_TableContainer","tableContainerProps","showToolbar","TableContainer","component","Paper","defaultLocalization","MaterialReactTable","minWidth","maxWidth"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"material-react-table.cjs.development.js","sources":["../src/utils/useMRTCalcs.tsx","../src/useMaterialReactTable.tsx","../src/inputs/MRT_FilterTextField.tsx","../src/menus/MRT_ColumnActionMenu.tsx","../src/buttons/MRT_ToggleColumnActionMenuButton.tsx","../src/head/MRT_TableHeadCell.tsx","../src/inputs/MRT_SelectAllCheckbox.tsx","../src/buttons/MRT_ExpandAllButton.tsx","../src/table/MRT_TableSpacerCell.tsx","../src/head/MRT_TableHeadRow.tsx","../src/head/MRT_TableHead.tsx","../src/body/MRT_TableBodyCell.tsx","../src/body/MRT_TableDetailPanel.tsx","../src/buttons/MRT_ExpandButton.tsx","../src/inputs/MRT_SelectCheckbox.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_ToggleFiltersButton.tsx","../src/menus/MRT_ShowHideColumnsMenu.tsx","../src/buttons/MRT_ShowHideColumnsButton.tsx","../src/inputs/MRT_DensePaddingSwitch.tsx","../src/toolbar/MRT_ToolbarButtons.tsx","../src/toolbar/MRT_TablePagination.tsx","../src/toolbar/MRT_ToolbarTop.tsx","../src/toolbar/MRT_ToolbarBottom.tsx","../src/table/MRT_TableContainer.tsx","../src/utils/localization.ts","../src/MaterialReactTable.tsx"],"sourcesContent":["import { useMemo } from 'react';\nimport { TableInstance } from 'react-table';\n\nexport interface UseMRTCalcs {\n anyRowsCanExpand: boolean;\n anyRowsExpanded: boolean;\n maxColumnDepth: number;\n}\n\ninterface Props<D extends {}> {\n tableInstance: TableInstance<D>;\n}\n\nexport const useMRTCalcs = <D extends {}>({\n tableInstance,\n}: Props<D>): UseMRTCalcs => {\n const anyRowsCanExpand = useMemo(\n () => tableInstance.rows.some((row) => row.canExpand),\n [tableInstance.rows],\n );\n\n const anyRowsExpanded = useMemo(\n () => tableInstance.rows.some((row) => row.isExpanded),\n [tableInstance.rows],\n );\n\n const maxColumnDepth = useMemo(() => {\n let maxDepth = 1;\n tableInstance.columns.forEach((column) => {\n if (column.columns?.length) {\n maxDepth = Math.max(maxDepth, column.columns.length);\n }\n });\n return maxDepth - 1;\n }, [tableInstance.columns]);\n\n return {\n anyRowsCanExpand,\n anyRowsExpanded,\n maxColumnDepth,\n };\n};\n","import React, {\n Context,\n createContext,\n PropsWithChildren,\n useContext,\n useState,\n} from 'react';\nimport {\n PluginHook,\n TableInstance,\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 { MaterialReactTableProps } from './MaterialReactTable';\nimport { UseMRTCalcs, useMRTCalcs } from './utils/useMRTCalcs';\n\nexport interface UseMaterialReactTable<D extends {}>\n extends MaterialReactTableProps<D>,\n UseMRTCalcs {\n currentEditingRowId: string | null;\n densePadding: boolean;\n setCurrentEditingRowId: (currentRowEditingId: string | null) => void;\n setDensePadding: (densePadding: boolean) => void;\n setShowFilters: (showFilters: boolean) => void;\n showFilters: boolean;\n tableInstance: TableInstance<D>;\n}\n\nconst MaterialReactTableContext = (<D extends {}>() =>\n createContext<UseMaterialReactTable<D>>(\n {} as UseMaterialReactTable<D>,\n ) as Context<UseMaterialReactTable<D>>)();\n\nexport const MaterialReactTableProvider = <D extends {}>(\n props: PropsWithChildren<MaterialReactTableProps<D>>,\n) => {\n const hooks: PluginHook<D>[] = [\n useResizeColumns,\n useFilters,\n useGlobalFilter,\n useGroupBy,\n useSortBy,\n useExpanded,\n usePagination,\n useRowSelect,\n ];\n\n if (props.enableColumnResizing) hooks.unshift(useFlexLayout);\n\n const tableInstance = useTable<D>(props, ...hooks);\n\n const mrtCalcs = useMRTCalcs({ tableInstance });\n\n const [showFilters, setShowFilters] = useState<boolean>(\n props.defaultShowFilters ?? false,\n );\n const [densePadding, setDensePadding] = useState<boolean>(\n props.defaultDensePadding ?? false,\n );\n const [currentEditingRowId, setCurrentEditingRowId] = useState<string | null>(\n null,\n );\n\n return (\n <MaterialReactTableContext.Provider\n value={{\n ...mrtCalcs,\n ...props,\n densePadding,\n setDensePadding,\n setShowFilters,\n currentEditingRowId,\n setCurrentEditingRowId,\n showFilters,\n // @ts-ignore\n tableInstance,\n }}\n >\n {props.children}\n </MaterialReactTableContext.Provider>\n );\n};\n\nexport const useMaterialReactTable = <\n D extends {},\n>(): UseMaterialReactTable<D> =>\n //@ts-ignore\n useContext<UseMaterialReactTable<D>>(MaterialReactTableContext);\n","import React, { ChangeEvent, FC, useState } from 'react';\nimport { IconButton, InputAdornment, TextField } from '@mui/material';\nimport CloseIcon from '@mui/icons-material/Close';\nimport FilterIcon from '@mui/icons-material/FilterList';\nimport { HeaderGroup, useAsyncDebounce } from 'react-table';\nimport { useMaterialReactTable } from '../useMaterialReactTable';\n\ninterface Props {\n column: HeaderGroup;\n}\n\nexport const MRT_FilterTextfield: FC<Props> = ({ column }) => {\n const { localization } = useMaterialReactTable();\n\n const [filterValue, setFilterValue] = useState('');\n\n const handleChange = useAsyncDebounce((value) => {\n column.setFilter(value ?? undefined);\n }, 150);\n\n const handleClear = () => {\n setFilterValue('');\n column.setFilter(undefined);\n };\n\n if (column.Filter) {\n //@ts-ignore\n return <>{column.Filter({ column })}</>;\n }\n\n return (\n <TextField\n margin=\"dense\"\n placeholder={localization?.filterTextFieldPlaceholder}\n onChange={(e: ChangeEvent<HTMLInputElement>) => {\n setFilterValue(e.target.value);\n handleChange(e.target.value);\n }}\n onClick={(e) => e.stopPropagation()}\n value={filterValue ?? ''}\n variant=\"standard\"\n InputProps={{\n startAdornment: (\n <InputAdornment position=\"start\">\n <FilterIcon />\n </InputAdornment>\n ),\n endAdornment: (\n <InputAdornment position=\"end\">\n <IconButton\n aria-label={localization?.filterTextFieldClearButtonTitle}\n disabled={filterValue?.length === 0}\n onClick={handleClear}\n size=\"small\"\n title={localization?.filterTextFieldClearButtonTitle}\n >\n <CloseIcon fontSize=\"small\" />\n </IconButton>\n </InputAdornment>\n ),\n }}\n />\n );\n};\n","import React, { FC } from 'react';\nimport { Divider, Menu, MenuItem as MuiMenuItem, styled } from '@mui/material';\nimport { useMaterialReactTable } from '../useMaterialReactTable';\nimport { ColumnInstance } from 'react-table';\nimport ClearAllIcon from '@mui/icons-material/ClearAll';\nimport SortIcon from '@mui/icons-material/Sort';\nimport VisibilityOffIcon from '@mui/icons-material/VisibilityOff';\nimport DynamicFeedIcon from '@mui/icons-material/DynamicFeed';\n\nconst MenuItem = styled(MuiMenuItem)({\n display: 'flex',\n gap: '0.75rem',\n});\n\ninterface Props {\n anchorEl: HTMLElement | null;\n column: ColumnInstance;\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 enableColumnGrouping,\n disableSortBy,\n localization,\n } = useMaterialReactTable();\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 return (\n <Menu\n anchorEl={anchorEl}\n open={!!anchorEl}\n onClose={() => setAnchorEl(null)}\n >\n {!disableSortBy &&\n column.canSort && [\n <MenuItem\n key={1}\n disabled={!column.isSorted}\n onClick={handleClearSort}\n >\n <ClearAllIcon /> {localization?.columnActionMenuItemClearSort}\n </MenuItem>,\n <MenuItem\n key={2}\n disabled={column.isSorted && !column.isSortedDesc}\n onClick={handleSortAsc}\n >\n <SortIcon /> {localization?.columnActionMenuItemSortAsc}\n </MenuItem>,\n <MenuItem\n key={3}\n disabled={column.isSorted && column.isSortedDesc}\n onClick={handleSortDesc}\n >\n <SortIcon style={{ transform: 'rotate(180deg) scaleX(-1)' }} />{' '}\n {localization?.columnActionMenuItemSortDesc}\n </MenuItem>,\n <Divider key={4} />,\n ]}\n {!disableColumnHiding && (\n <MenuItem onClick={handleHideColumn}>\n <VisibilityOffIcon /> {localization?.columnActionMenuItemHideColumn}\n </MenuItem>\n )}\n {enableColumnGrouping && column.canGroupBy && (\n <MenuItem disabled={column.isGrouped} onClick={handleGroupByColumn}>\n <DynamicFeedIcon /> {localization?.columnActionMenuItemGroupBy}\n </MenuItem>\n )}\n {enableColumnGrouping && column.canGroupBy && (\n <MenuItem disabled={!column.isGrouped} onClick={handleGroupByColumn}>\n <DynamicFeedIcon /> {localization?.columnActionMenuItemUnGroupBy}\n </MenuItem>\n )}\n </Menu>\n );\n};\n","import React, { FC, MouseEvent, useState } from 'react';\nimport { IconButton as MuiIconButton, styled } from '@mui/material';\nimport MoreVertIcon from '@mui/icons-material/MoreVert';\nimport { useMaterialReactTable } from '../useMaterialReactTable';\nimport { MRT_ColumnActionMenu } from '../menus/MRT_ColumnActionMenu';\nimport { HeaderGroup } from 'react-table';\n\nconst IconButton = styled(MuiIconButton)({\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 column: HeaderGroup;\n}\n\nexport const MRT_ToggleColumnActionMenuButton: FC<Props> = ({ column }) => {\n const { localization } = useMaterialReactTable();\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 <IconButton\n aria-label={localization?.columnActionMenuButtonTitle}\n title={localization?.columnActionMenuButtonTitle}\n onClick={handleClick}\n size=\"small\"\n >\n <MoreVertIcon />\n </IconButton>\n <MRT_ColumnActionMenu\n anchorEl={anchorEl}\n column={column}\n setAnchorEl={setAnchorEl}\n />\n </>\n );\n};\n","import React, { FC } from 'react';\nimport {\n TableCell as MuiTableCell,\n TableSortLabel,\n styled,\n Divider as MuiDivider,\n Collapse,\n} from '@mui/material';\nimport { HeaderGroup } from 'react-table';\nimport { useMaterialReactTable } from '../useMaterialReactTable';\nimport { MRT_FilterTextfield } from '../inputs/MRT_FilterTextField';\nimport { MRT_ToggleColumnActionMenuButton } from '../buttons/MRT_ToggleColumnActionMenuButton';\n\nexport const StyledTableHeadCell = styled(MuiTableCell)({\n fontWeight: 'bold',\n verticalAlign: 'text-top',\n});\n\nconst TableCellContents = styled('div')({\n display: 'grid',\n});\n\nconst TableCellText = styled('div')({\n width: '100%',\n display: 'flex',\n justifyContent: 'space-between',\n});\n\nconst CellFlexItem = styled('span')({\n display: 'flex',\n flexWrap: 'nowrap',\n alignItems: 'center',\n});\n\nconst Divider = styled(MuiDivider)({\n borderRightWidth: '2px',\n borderRadius: '2px',\n maxHeight: '2rem',\n});\n\ninterface Props {\n column: HeaderGroup;\n}\n\nexport const MRT_TableHeadCell: FC<Props> = ({ column }) => {\n const {\n densePadding,\n disableColumnActions,\n disableFilters,\n enableColumnResizing,\n localization,\n muiTableHeadCellProps,\n showFilters,\n tableInstance,\n } = useMaterialReactTable();\n\n const isParentHeader = (column?.columns?.length ?? 0) > 0;\n\n const mTableHeadCellProps =\n muiTableHeadCellProps instanceof Function\n ? muiTableHeadCellProps(column)\n : muiTableHeadCellProps;\n\n const tableCellProps = {\n ...mTableHeadCellProps,\n ...column.getHeaderProps(),\n style: {\n padding: densePadding ? '0.5rem' : '1rem',\n transition: `all ${enableColumnResizing ? '10ms' : '0.2s'} ease-in-out`,\n ...column.getHeaderProps().style,\n ...(mTableHeadCellProps?.style ?? {}),\n },\n };\n\n return (\n <StyledTableHeadCell align={isParentHeader ? 'center' : 'left'} {...tableCellProps}>\n <TableCellContents>\n <TableCellText\n style={{ justifyContent: isParentHeader ? 'center' : undefined }}\n >\n <CellFlexItem {...column.getSortByToggleProps()}>\n {column.render('Header')}\n {!isParentHeader && column.canSort && (\n <TableSortLabel\n aria-label={\n column.isSorted\n ? column.sortDescFirst\n ? localization?.columnActionMenuItemClearSort\n : localization?.columnActionMenuItemSortDesc\n : localization?.columnActionMenuItemSortAsc\n }\n active={column.isSorted}\n direction={column.isSortedDesc ? 'desc' : 'asc'}\n style={{ margin: 0 }}\n />\n )}\n </CellFlexItem>\n <CellFlexItem>\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 />\n )}\n </CellFlexItem>\n </TableCellText>\n {!disableFilters && column.canFilter && (\n <Collapse in={showFilters}>\n <MRT_FilterTextfield column={column} />\n </Collapse>\n )}\n </TableCellContents>\n </StyledTableHeadCell>\n );\n};\n","import React from 'react';\nimport { Checkbox, TableCell } from '@mui/material';\nimport { useMaterialReactTable } from '../useMaterialReactTable';\n\nexport const MRT_SelectAllCheckbox = () => {\n const { tableInstance, disableSelectAll, densePadding } =\n useMaterialReactTable();\n\n return (\n <TableCell\n style={{\n width: '2rem',\n padding: densePadding ? '0' : '0.6rem',\n transition: 'all 0.2s ease-in-out',\n }}\n variant=\"head\"\n >\n {!disableSelectAll ? (\n <Checkbox\n aria-label=\"\"\n {...tableInstance.getToggleAllPageRowsSelectedProps()}\n />\n ) : null}\n </TableCell>\n );\n};\n","import React, { FC } from 'react';\nimport { IconButton, TableCell } from '@mui/material';\nimport ArrowRightIcon from '@mui/icons-material/KeyboardDoubleArrowDown';\nimport { useMaterialReactTable } from '../useMaterialReactTable';\n\ninterface Props {}\n\nexport const MRT_ExpandAllButton: FC<Props> = () => {\n const {\n tableInstance,\n localization,\n anyRowsExpanded,\n densePadding,\n renderDetailPanel,\n } = useMaterialReactTable();\n\n return (\n <TableCell\n size=\"small\"\n {...tableInstance.getToggleAllRowsExpandedProps()}\n style={{\n padding: densePadding ? '0' : '0.5rem 0.5rem',\n transition: 'all 0.2s ease-in-out',\n width: `${renderDetailPanel ? 2 : tableInstance.expandedDepth + 2}rem`,\n }}\n >\n <IconButton\n aria-label={localization?.expandAllButtonTitle}\n title={localization?.expandAllButtonTitle}\n >\n <ArrowRightIcon\n fontSize=\"small\"\n style={{\n transform: tableInstance.isAllRowsExpanded\n ? 'rotate(-180deg)'\n : anyRowsExpanded\n ? 'rotate(-90deg)'\n : 'rotate(0)',\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 { useMaterialReactTable } from '../useMaterialReactTable';\n\ninterface Props {\n width?: CSSProperties['width'];\n}\n\nexport const MRT_TableSpacerCell: FC<Props> = ({ width }) => {\n const { muiTableBodyCellProps } = useMaterialReactTable();\n\n const mTableBodyRowProps =\n muiTableBodyCellProps instanceof Function\n ? muiTableBodyCellProps()\n : muiTableBodyCellProps;\n\n const tableCellProps = {\n ...mTableBodyRowProps,\n style: {\n width,\n ...(mTableBodyRowProps?.style ?? {}),\n },\n };\n\n return <TableCell {...tableCellProps} />;\n};\n","import React, { FC, useMemo } from 'react';\nimport { TableRow } from '@mui/material';\nimport { HeaderGroup } from 'react-table';\nimport { MRT_TableHeadCell, StyledTableHeadCell } from './MRT_TableHeadCell';\nimport { useMaterialReactTable } from '../useMaterialReactTable';\nimport { MRT_SelectAllCheckbox } from '../inputs/MRT_SelectAllCheckbox';\nimport { MRT_ExpandAllButton } from '../buttons/MRT_ExpandAllButton';\nimport { MRT_TableSpacerCell } from '../table/MRT_TableSpacerCell';\n\ninterface Props {\n headerGroup: HeaderGroup;\n}\n\nexport const MRT_TableHeadRow: FC<Props> = ({ headerGroup }) => {\n const {\n anyRowsCanExpand,\n disableExpandAll,\n enableRowActions,\n enableSelection,\n localization,\n muiTableHeadRowProps,\n positionActionsColumn,\n renderDetailPanel,\n tableInstance,\n } = useMaterialReactTable();\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 &&\n positionActionsColumn === 'first' &&\n (isParentHeader ? (\n <MRT_TableSpacerCell />\n ) : (\n <StyledTableHeadCell>\n {localization?.actionsHeadColumnTitle}\n </StyledTableHeadCell>\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_SelectAllCheckbox />\n ) : (\n <MRT_TableSpacerCell width=\"1rem\" />\n )\n ) : null}\n {headerGroup.headers.map((column) => (\n <MRT_TableHeadCell key={column.getHeaderProps().key} column={column} />\n ))}\n {enableRowActions &&\n positionActionsColumn === 'last' &&\n (isParentHeader ? (\n <MRT_TableSpacerCell />\n ) : (\n <StyledTableHeadCell>\n {localization?.actionsHeadColumnTitle}\n </StyledTableHeadCell>\n ))}\n </TableRow>\n );\n};\n","import React, { FC } from 'react';\nimport { TableHead } from '@mui/material';\nimport { MRT_TableHeadRow } from './MRT_TableHeadRow';\nimport { useMaterialReactTable } from '../useMaterialReactTable';\n\ninterface Props {}\n\nexport const MRT_TableHead: FC<Props> = () => {\n const { tableInstance, muiTableHeadProps } = useMaterialReactTable();\n\n const tableHeadProps =\n muiTableHeadProps instanceof Function\n ? muiTableHeadProps(tableInstance)\n : muiTableHeadProps;\n\n return (\n <TableHead {...tableHeadProps}>\n {tableInstance.headerGroups.map((headerGroup, index) => (\n <MRT_TableHeadRow\n key={`${index}-${headerGroup.id}`}\n headerGroup={headerGroup}\n />\n ))}\n </TableHead>\n );\n};\n","import React, { FC, MouseEvent } from 'react';\nimport { TableCell } from '@mui/material';\nimport { Cell } from 'react-table';\nimport { useMaterialReactTable } from '../useMaterialReactTable';\n\ninterface Props {\n cell: Cell;\n}\n\nexport const MRT_TableBodyCell: FC<Props> = ({ cell }) => {\n const { onCellClick, muiTableBodyCellProps, densePadding } =\n useMaterialReactTable();\n\n const mTableCellBodyProps =\n muiTableBodyCellProps instanceof Function\n ? muiTableBodyCellProps(cell)\n : muiTableBodyCellProps;\n\n const tableCellProps = {\n ...mTableCellBodyProps,\n ...cell.getCellProps(),\n style: {\n padding: densePadding ? '0.5rem' : '1rem',\n transition: 'all 0.2s ease-in-out',\n ...cell.getCellProps().style,\n ...(mTableCellBodyProps?.style ?? {}),\n },\n };\n\n return (\n <TableCell\n onClick={(event: MouseEvent<HTMLTableCellElement>) =>\n onCellClick?.(event, cell)\n }\n {...tableCellProps}\n >\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 ) : (\n cell.render('Cell')\n )}\n </TableCell>\n );\n};\n","import React, { FC, MouseEvent } from 'react';\nimport { Collapse, TableCell, TableRow } from '@mui/material';\nimport { Row } from 'react-table';\nimport { useMaterialReactTable } from '../useMaterialReactTable';\n\ninterface Props {\n row: Row;\n}\n\nexport const MRT_TableDetailPanel: FC<Props> = ({ row }) => {\n const {\n tableInstance,\n renderDetailPanel,\n muiTableDetailPanelProps,\n muiTableBodyRowProps,\n onDetailPanelClick,\n } = useMaterialReactTable();\n\n const mTableBodyRowProps =\n muiTableBodyRowProps instanceof Function\n ? muiTableBodyRowProps(row)\n : muiTableBodyRowProps;\n\n const tableRowProps = {\n ...mTableBodyRowProps,\n ...row.getToggleRowExpandedProps(),\n style: {\n ...row.getToggleRowExpandedProps().style,\n ...(mTableBodyRowProps?.style ?? {}),\n },\n };\n\n const mTableDetailPanelProps =\n muiTableDetailPanelProps instanceof Function\n ? muiTableDetailPanelProps(row)\n : muiTableDetailPanelProps;\n\n const tableCellProps = {\n ...mTableDetailPanelProps,\n style: {\n borderBottom: !row.isExpanded ? 'none' : undefined,\n paddingBottom: row.isExpanded ? '1rem' : 0,\n paddingTop: row.isExpanded ? '1rem' : 0,\n transition: 'all 0.2s ease-in-out',\n ...(mTableDetailPanelProps?.style || {}),\n },\n };\n\n return (\n <TableRow hover {...tableRowProps}>\n <TableCell\n colSpan={tableInstance.visibleColumns.length + 10}\n onClick={(event: MouseEvent<HTMLTableCellElement>) =>\n onDetailPanelClick?.(event, row)\n }\n {...tableCellProps}\n >\n <Collapse in={row.isExpanded}>{renderDetailPanel?.(row)}</Collapse>\n </TableCell>\n </TableRow>\n );\n};\n","import React, { FC } from 'react';\nimport { IconButton, TableCell } from '@mui/material';\nimport { Row } from 'react-table';\nimport ExpandMoreIcon from '@mui/icons-material/ExpandMore';\nimport { useMaterialReactTable } from '../useMaterialReactTable';\n\ninterface Props {\n row: Row;\n}\n\nexport const MRT_ExpandButton: FC<Props> = ({ row }) => {\n const { localization, tableInstance, densePadding, renderDetailPanel } =\n useMaterialReactTable();\n\n return (\n <TableCell\n size=\"small\"\n style={{\n padding: densePadding ? '0' : '0.6rem 0',\n paddingLeft: `${row.depth + 0.5}rem`,\n transition: 'all 0.2s ease-in-out',\n width: `${\n renderDetailPanel ? 2 : tableInstance.expandedDepth - row.depth + 2\n }rem`,\n }}\n >\n <IconButton\n disabled={!row.canExpand && !renderDetailPanel}\n aria-label={localization?.expandButtonTitle}\n title={localization?.expandButtonTitle}\n {...row.getToggleRowExpandedProps()}\n >\n <ExpandMoreIcon\n fontSize={row.canExpand || renderDetailPanel ? 'medium' : 'small'}\n style={{\n transform:\n !row.canExpand && !renderDetailPanel\n ? 'rotate(-90deg)'\n : row.isExpanded\n ? 'rotate(-180deg)'\n : 'rotate(0)',\n transition: 'transform 0.2s',\n }}\n />\n </IconButton>\n </TableCell>\n );\n};\n","import React, { ChangeEvent, FC } from 'react';\nimport { Checkbox, TableCell } from '@mui/material';\nimport { Row } from 'react-table';\nimport { useMaterialReactTable } from '../useMaterialReactTable';\n\ninterface Props {\n row: Row;\n}\n\nexport const MRT_SelectCheckbox: FC<Props> = ({ row }) => {\n const { tableInstance, onRowSelectChange, densePadding } =\n useMaterialReactTable();\n\n const onSelectChange = (event: ChangeEvent) => {\n row.getToggleRowSelectedProps()?.onChange?.(event);\n onRowSelectChange?.(event, row, tableInstance.selectedFlatRows);\n };\n\n return (\n <TableCell\n style={{\n width: '2rem',\n padding: densePadding ? '0' : '0.6rem',\n transition: 'all 0.2s ease-in-out',\n }}\n >\n <Checkbox\n {...row.getToggleRowSelectedProps()}\n onChange={onSelectChange}\n />\n </TableCell>\n );\n};\n","import React, { FC } from 'react';\nimport { Menu, MenuItem as MuiMenuItem, styled } from '@mui/material';\nimport { useMaterialReactTable } from '../useMaterialReactTable';\nimport { Row } from 'react-table';\nimport EditIcon from '@mui/icons-material/Edit';\n\nconst MenuItem = styled(MuiMenuItem)({\n display: 'flex',\n gap: '0.75rem',\n});\n\ninterface Props {\n anchorEl: HTMLElement | null;\n row: Row;\n setAnchorEl: (anchorEl: HTMLElement | null) => void;\n}\n\nexport const MRT_RowActionMenu: FC<Props> = ({\n anchorEl,\n row,\n setAnchorEl,\n}) => {\n const {\n enableRowEditing,\n localization,\n renderRowActionMenuItems,\n setCurrentEditingRowId,\n tableInstance,\n } = useMaterialReactTable();\n\n const handleEdit = () => {\n setCurrentEditingRowId(row.id);\n setAnchorEl(null);\n };\n\n return (\n <Menu\n anchorEl={anchorEl}\n open={!!anchorEl}\n onClose={() => setAnchorEl(null)}\n >\n {enableRowEditing && (\n <MenuItem onClick={handleEdit}>\n <EditIcon /> {localization?.rowActionMenuItemEdit}\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 { IconButton, styled, Tooltip } from '@mui/material';\nimport SaveIcon from '@mui/icons-material/Save';\nimport CancelIcon from '@mui/icons-material/Cancel';\nimport { useMaterialReactTable } from '../useMaterialReactTable';\nimport { Row } from 'react-table';\n\nconst EditActionButtonWrappers = styled('div')({\n display: 'flex',\n gap: '0.75rem',\n});\n\ninterface Props {\n row: Row;\n}\n\nexport const MRT_EditActionButtons: FC<Props> = ({ row }) => {\n const { localization, setCurrentEditingRowId, onRowEditSubmit } =\n useMaterialReactTable();\n\n const handleCancel = () => {\n setCurrentEditingRowId(null);\n };\n\n const handleSave = async () => {\n setCurrentEditingRowId(null);\n await onRowEditSubmit?.(row);\n };\n\n return (\n <EditActionButtonWrappers>\n <Tooltip arrow title={localization?.rowActionButtonCancel ?? ''}>\n <IconButton\n aria-label={localization?.rowActionButtonCancel}\n onClick={handleCancel}\n >\n <CancelIcon />\n </IconButton>\n </Tooltip>\n <Tooltip arrow title={localization?.rowActionButtonSave ?? ''}>\n <IconButton\n aria-label={localization?.rowActionButtonSave}\n color=\"info\"\n onClick={handleSave}\n >\n <SaveIcon />\n </IconButton>\n </Tooltip>\n </EditActionButtonWrappers>\n );\n};\n","import React, { FC, MouseEvent, useState } from 'react';\nimport { IconButton as MuiIconButton, styled } from '@mui/material';\nimport MoreHorizIcon from '@mui/icons-material/MoreHoriz';\nimport { useMaterialReactTable } from '../useMaterialReactTable';\nimport { Row } from 'react-table';\nimport { MRT_RowActionMenu } from '../menus/MRT_RowActionMenu';\nimport { MRT_EditActionButtons } from './MRT_EditActionButtons';\n\nconst IconButton = styled(MuiIconButton)({\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: Row;\n}\n\nexport const MRT_ToggleRowActionMenuButton: FC<Props> = ({ row }) => {\n const {\n localization,\n currentEditingRowId,\n renderRowActions,\n tableInstance,\n } = useMaterialReactTable();\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 if (renderRowActions) {\n return <>{renderRowActions(row, tableInstance)}</>;\n }\n\n if (row.id === currentEditingRowId) {\n return <MRT_EditActionButtons row={row} />;\n }\n\n return (\n <>\n <IconButton\n aria-label={localization?.rowActionMenuButtonTitle}\n title={localization?.rowActionMenuButtonTitle}\n onClick={handleOpenRowActionMenu}\n size=\"small\"\n >\n <MoreHorizIcon />\n </IconButton>\n <MRT_RowActionMenu\n anchorEl={anchorEl}\n row={row}\n setAnchorEl={setAnchorEl}\n />\n </>\n );\n};\n","import React, { FC, MouseEvent } from 'react';\nimport { alpha, TableCell, TableRow, useTheme } from '@mui/material';\nimport { Row } from 'react-table';\nimport { MRT_TableBodyCell } from './MRT_TableBodyCell';\nimport { useMaterialReactTable } from '../useMaterialReactTable';\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';\n\ninterface Props {\n row: Row;\n}\n\nexport const MRT_TableBodyRow: FC<Props> = ({ row }) => {\n const {\n anyRowsCanExpand,\n enableRowActions,\n enableSelection,\n muiTableBodyRowProps,\n onRowClick,\n positionActionsColumn,\n renderDetailPanel,\n } = useMaterialReactTable();\n const theme = useTheme();\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 backgroundColor: row.isSelected\n ? alpha(theme.palette.primary.light, 0.1)\n : 'transparent',\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 {...tableRowProps}\n >\n {enableRowActions && positionActionsColumn === 'first' && (\n <TableCell>\n <MRT_ToggleRowActionMenuButton row={row} />\n </TableCell>\n )}\n {(anyRowsCanExpand || renderDetailPanel) && (\n <MRT_ExpandButton row={row} />\n )}\n {enableSelection && <MRT_SelectCheckbox row={row} />}\n {row.cells.map((cell) => (\n <MRT_TableBodyCell key={cell.getCellProps().key} cell={cell} />\n ))}\n {enableRowActions && positionActionsColumn === 'last' && (\n <TableCell>\n <MRT_ToggleRowActionMenuButton row={row} />\n </TableCell>\n )}\n </TableRow>\n {renderDetailPanel && <MRT_TableDetailPanel row={row} />}\n </>\n );\n};\n","import React, { FC } from 'react';\nimport {\n alpha,\n CircularProgress,\n styled,\n TableBody as MuiTableBody,\n} from '@mui/material';\nimport { MRT_TableBodyRow } from './MRT_TableBodyRow';\nimport { useMaterialReactTable } from '../useMaterialReactTable';\n\nconst TableBody = styled(MuiTableBody)({\n overflowY: 'hidden',\n});\n\nconst CircularProgressWrapper = styled('div')(({ theme }) => ({\n backgroundColor: alpha(theme.palette.background.paper, 0.5),\n display: 'grid',\n height: '100%',\n justifyContent: 'center',\n margin: 'auto',\n paddingTop: '5rem',\n position: 'fixed',\n width: 'calc(100% - 2rem)',\n}));\n\ninterface Props {}\n\nexport const MRT_TableBody: FC<Props> = () => {\n const { tableInstance, muiTableBodyProps, isLoading, manualPagination } =\n useMaterialReactTable();\n\n const rows = manualPagination ? tableInstance.rows : tableInstance.page;\n\n const tableBodyProps = {\n ...muiTableBodyProps,\n ...tableInstance.getTableBodyProps(),\n style: {\n ...tableInstance.getTableBodyProps().style,\n ...(muiTableBodyProps?.style ?? {}),\n },\n };\n\n return (\n <TableBody {...tableBodyProps}>\n {isLoading && (\n <CircularProgressWrapper>\n <CircularProgress />\n </CircularProgressWrapper>\n )}\n {rows.map((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 { styled, TableCell as MuiTableCell } from '@mui/material';\nimport { HeaderGroup } from 'react-table';\nimport { useMaterialReactTable } from '../useMaterialReactTable';\n\nconst TableCell = styled(MuiTableCell)({\n fontWeight: 'bold',\n});\n\ninterface Props {\n column: HeaderGroup;\n}\n\nexport const MRT_TableFooterCell: FC<Props> = ({ column }) => {\n const { muiTableFooterCellProps, densePadding } = useMaterialReactTable();\n\n const isParentHeader = (column?.columns?.length ?? 0) > 0;\n\n const mTableFooterCellProps =\n muiTableFooterCellProps instanceof Function\n ? muiTableFooterCellProps(column)\n : muiTableFooterCellProps;\n\n const tableCellProps = {\n ...mTableFooterCellProps,\n ...column.getFooterProps(),\n style: {\n padding: densePadding ? '0.5rem' : '1rem',\n transition: 'all 0.2s ease-in-out',\n ...column.getFooterProps().style,\n ...(mTableFooterCellProps?.style ?? {}),\n },\n };\n\n return (\n <TableCell\n align={isParentHeader ? 'center' : 'left'}\n variant=\"head\"\n {...tableCellProps}\n >\n {column.render('Footer')}\n </TableCell>\n );\n};\n","import React, { FC } from 'react';\nimport { TableRow } from '@mui/material';\nimport { HeaderGroup } from 'react-table';\nimport { MRT_TableFooterCell } from './MRT_TableFooterCell';\nimport { MRT_TableSpacerCell } from '../table/MRT_TableSpacerCell';\nimport { useMaterialReactTable } from '../useMaterialReactTable';\n\ninterface Props {\n footerGroup: HeaderGroup;\n}\n\nexport const MRT_TableFooterRow: FC<Props> = ({ footerGroup }) => {\n const {\n renderDetailPanel,\n columns,\n anyRowsCanExpand,\n enableSelection,\n enableRowActions,\n positionActionsColumn,\n tableInstance,\n muiTableFooterRowProps,\n } = useMaterialReactTable();\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 {enableRowActions && positionActionsColumn === 'first' && (\n <MRT_TableSpacerCell />\n )}\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, index) => (\n <MRT_TableFooterCell key={`${index}-${column.id}`} column={column} />\n ))}\n {enableRowActions && positionActionsColumn === 'last' && (\n <MRT_TableSpacerCell />\n )}\n </TableRow>\n );\n};\n","import React, { FC } from 'react';\nimport { TableFooter } from '@mui/material';\nimport { MRT_TableFooterRow } from './MRT_TableFooterRow';\nimport { useMaterialReactTable } from '../useMaterialReactTable';\n\ninterface Props {}\n\nexport const MRT_TableFooter: FC<Props> = () => {\n const { muiTableFooterProps, tableInstance } = useMaterialReactTable();\n\n return (\n <TableFooter {...muiTableFooterProps}>\n {tableInstance.footerGroups.map((footerGroup, index) => (\n <MRT_TableFooterRow\n key={`${index}-${footerGroup.id}`}\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 { useMaterialReactTable } from '../useMaterialReactTable';\n\ninterface Props {}\n\nexport const MRT_Table: FC<Props> = () => {\n const { tableInstance, muiTableProps, hideTableHead, hideTableFooter } =\n useMaterialReactTable();\n\n const tableProps = {\n ...muiTableProps,\n ...tableInstance.getTableProps(),\n style: {\n ...tableInstance.getTableProps().style,\n ...(muiTableProps?.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 {\n IconButton,\n InputAdornment,\n styled,\n TextField as MuiTextField,\n} from '@mui/material';\nimport SearchIcon from '@mui/icons-material/Search';\nimport CloseIcon from '@mui/icons-material/Close';\nimport { useMaterialReactTable } from '../useMaterialReactTable';\nimport { useAsyncDebounce } from 'react-table';\n\nconst TextField = styled(MuiTextField)({\n justifySelf: 'end',\n});\n\ninterface Props {}\n\nexport const MRT_SearchTextField: FC<Props> = () => {\n const {\n tableInstance,\n muiSearchTextFieldProps,\n localization,\n onGlobalFilterChange,\n } = useMaterialReactTable();\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 <TextField\n placeholder={localization?.searchTextFieldPlaceholder}\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?.searchTextFieldClearButtonTitle}\n disabled={searchValue?.length === 0}\n onClick={handleClear}\n size=\"small\"\n title={localization?.searchTextFieldClearButtonTitle}\n >\n <CloseIcon fontSize=\"small\" />\n </IconButton>\n </InputAdornment>\n ),\n }}\n {...muiSearchTextFieldProps}\n />\n );\n};\n","import React, { FC } from 'react';\nimport { IconButton, Tooltip } from '@mui/material';\nimport { useMaterialReactTable } from '../useMaterialReactTable';\nimport FilterListIcon from '@mui/icons-material/FilterList';\nimport FilterListOffIcon from '@mui/icons-material/FilterListOff';\n\ntype Props = {};\n\nexport const MRT_ToggleFiltersButton: FC<Props> = () => {\n const { localization, setShowFilters, showFilters } = useMaterialReactTable();\n\n return (\n <Tooltip arrow title={localization?.toggleFilterButtonTitle ?? ''}>\n <IconButton\n aria-label={localization?.toggleFilterButtonTitle}\n onClick={() => setShowFilters(!showFilters)}\n size=\"small\"\n >\n {showFilters ? <FilterListOffIcon /> : <FilterListIcon />}\n </IconButton>\n </Tooltip>\n );\n};\n","import React, { FC } from 'react';\nimport { FormControlLabel, MenuItem, Switch, Typography } from '@mui/material';\nimport { useMaterialReactTable } from '../useMaterialReactTable';\nimport { ColumnInstance } from 'react-table';\n\ninterface Props {\n column: ColumnInstance;\n}\n\nexport const MRT_ShowHideColumnsMenu: FC<Props> = ({ column }) => {\n const { maxColumnDepth } = useMaterialReactTable();\n\n const isMaxDepth = column.depth === maxColumnDepth;\n\n return (\n <>\n <MenuItem style={{ paddingLeft: `${column.depth + 1}rem` }}>\n {isMaxDepth ? (\n <FormControlLabel\n checked={column.isVisible}\n control={<Switch />}\n label={column.Header as string}\n onChange={() => isMaxDepth && column.toggleHidden()}\n />\n ) : (\n <Typography>{column.Header}</Typography>\n )}\n </MenuItem>\n {column.columns?.map((c, i) => (\n <MRT_ShowHideColumnsMenu key={`${i}-${c.id}`} column={c} />\n ))}\n </>\n );\n};\n","import React, { FC, MouseEvent, useState } from 'react';\nimport { IconButton, Menu, Tooltip } from '@mui/material';\nimport ViewColumnIcon from '@mui/icons-material/ViewColumn';\nimport { useMaterialReactTable } from '../useMaterialReactTable';\nimport { MRT_ShowHideColumnsMenu } from '../menus/MRT_ShowHideColumnsMenu';\n\ninterface Props {}\n\nexport const MRT_ShowHideColumnsButton: FC<Props> = () => {\n const { tableInstance, localization } = useMaterialReactTable();\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?.showHideColumnsButtonTitle ?? ''}>\n <IconButton\n aria-label={localization?.showHideColumnsButtonTitle}\n onClick={handleClick}\n size=\"small\"\n >\n <ViewColumnIcon />\n </IconButton>\n </Tooltip>\n <Menu\n anchorEl={anchorEl}\n open={!!anchorEl}\n onClose={() => setAnchorEl(null)}\n >\n {tableInstance.columns.map((column, index) => (\n <MRT_ShowHideColumnsMenu\n key={`${index}-${column.id}`}\n column={column}\n />\n ))}\n </Menu>\n </>\n );\n};\n","import React, { FC } from 'react';\nimport { Switch, Tooltip } from '@mui/material';\nimport { useMaterialReactTable } from '../useMaterialReactTable';\n\ninterface Props {}\n\nexport const MRT_DensePaddingSwitch: FC<Props> = () => {\n const { densePadding, setDensePadding, localization } =\n useMaterialReactTable();\n\n return (\n <Tooltip arrow title={localization?.toggleDensePaddingSwitchTitle ?? ''}>\n <Switch\n color=\"default\"\n checked={densePadding}\n size=\"small\"\n onChange={() => setDensePadding(!densePadding)}\n />\n </Tooltip>\n );\n};\n","import React, { FC } from 'react';\nimport { styled } from '@mui/material';\nimport { MRT_ToggleFiltersButton } from '../buttons/MRT_ToggleFiltersButton';\nimport { MRT_ShowHideColumnsButton } from '../buttons/MRT_ShowHideColumnsButton';\nimport { useMaterialReactTable } from '../useMaterialReactTable';\nimport { MRT_DensePaddingSwitch } from '../inputs/MRT_DensePaddingSwitch';\n\nconst ToolbarButtonsContainer = styled('div')({\n display: 'flex',\n gap: '0.5rem',\n alignItems: 'center',\n});\n\ninterface Props {}\n\nexport const MRT_ToolbarButtons: FC<Props> = () => {\n const { disableFilters, disableColumnHiding, disableDensePaddingToggle } =\n useMaterialReactTable();\n\n return (\n <ToolbarButtonsContainer>\n {!disableFilters && <MRT_ToggleFiltersButton />}\n {!disableColumnHiding && <MRT_ShowHideColumnsButton />}\n {!disableDensePaddingToggle && <MRT_DensePaddingSwitch />}\n </ToolbarButtonsContainer>\n );\n};\n","import React, { ChangeEvent, FC } from 'react';\nimport { TablePagination } from '@mui/material';\nimport { useMaterialReactTable } from '../useMaterialReactTable';\n\ninterface Props {}\n\nexport const MRT_TablePagination: FC<Props> = () => {\n const { tableInstance, muiTablePaginationProps } = useMaterialReactTable();\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 showFirstButton={\n tableInstance.rows.length / tableInstance.state.pageSize > 2\n }\n showLastButton={\n tableInstance.rows.length / tableInstance.state.pageSize > 2\n }\n {...tablePaginationProps}\n />\n );\n};\n","import React, { FC } from 'react';\nimport { styled, Toolbar as MuiToolbar, Typography } from '@mui/material';\nimport { MRT_SearchTextField } from '../inputs/MRT_SearchTextField';\nimport { useMaterialReactTable } from '../useMaterialReactTable';\nimport { MRT_ToolbarButtons } from './MRT_ToolbarButtons';\nimport { MRT_TablePagination } from './MRT_TablePagination';\n\nconst Toolbar = styled(MuiToolbar)({\n display: 'grid',\n});\n\nconst ToolbarTopRow = styled('div')({\n padding: '0.5rem',\n display: 'flex',\n justifyContent: 'space-between',\n});\n\nconst ToolbarActionsContainer = styled('div')({\n display: 'flex',\n gap: '0.5rem',\n});\n\ninterface Props {}\n\nexport const MRT_ToolbarTop: FC<Props> = () => {\n const {\n disableGlobalFilter,\n disableColumnHiding,\n muiTableTitleProps,\n disableFilters,\n manualPagination,\n positionPagination,\n muiTableToolbarTopProps,\n hideToolbarActions,\n positionToolbarActions,\n title,\n tableInstance,\n } = useMaterialReactTable();\n\n // if no features in the toolbar are enabled, don't render anything\n if (\n !muiTableToolbarTopProps &&\n !title &&\n disableColumnHiding &&\n disableFilters &&\n disableGlobalFilter\n ) {\n return null;\n }\n\n const toolbarProps =\n muiTableToolbarTopProps instanceof Function\n ? muiTableToolbarTopProps(tableInstance)\n : muiTableToolbarTopProps;\n\n return (\n <Toolbar variant=\"dense\" {...toolbarProps}>\n <ToolbarTopRow>\n {title ? (\n <Typography variant=\"h5\" {...muiTableTitleProps}>\n {title}\n </Typography>\n ) : (\n <span />\n )}\n <ToolbarActionsContainer>\n {!disableGlobalFilter && <MRT_SearchTextField />}\n {!hideToolbarActions && positionToolbarActions === 'top' && (\n <MRT_ToolbarButtons />\n )}\n </ToolbarActionsContainer>\n </ToolbarTopRow>\n <div>\n {!manualPagination &&\n ['top', 'both'].includes(positionPagination ?? '') && (\n <MRT_TablePagination />\n )}\n </div>\n </Toolbar>\n );\n};\n","import React, { FC } from 'react';\nimport { styled, Toolbar as MuiToolbar } from '@mui/material';\nimport { useMaterialReactTable } from '../useMaterialReactTable';\nimport { MRT_TablePagination } from './MRT_TablePagination';\nimport { MRT_ToolbarButtons } from './MRT_ToolbarButtons';\n\nconst Toolbar = styled(MuiToolbar)({\n padding: 0,\n display: 'flex',\n justifyContent: 'space-between',\n});\n\ninterface Props {}\n\nexport const MRT_ToolbarBottom: FC<Props> = () => {\n const {\n disableGlobalFilter,\n disableColumnHiding,\n manualPagination,\n positionPagination,\n disableFilters,\n hideToolbarActions,\n positionToolbarActions,\n muiTableToolbarBottomProps,\n title,\n tableInstance,\n } = useMaterialReactTable();\n\n // if no features in the toolbar are enabled, don't render anything\n if (\n !muiTableToolbarBottomProps &&\n !title &&\n disableColumnHiding &&\n disableFilters &&\n disableGlobalFilter\n ) {\n return null;\n }\n\n const toolbarProps =\n muiTableToolbarBottomProps instanceof Function\n ? muiTableToolbarBottomProps(tableInstance)\n : muiTableToolbarBottomProps;\n\n return (\n <Toolbar variant=\"dense\" {...toolbarProps}>\n {!hideToolbarActions && positionToolbarActions === 'bottom' ? (\n <MRT_ToolbarButtons />\n ) : (\n <span />\n )}\n {!manualPagination &&\n ['bottom', 'both'].includes(positionPagination ?? '') && (\n <MRT_TablePagination />\n )}\n </Toolbar>\n );\n};\n","import React, { FC } from 'react';\nimport { LinearProgress, Paper, TableContainer } from '@mui/material';\nimport { useMaterialReactTable } from '../useMaterialReactTable';\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 { muiTableContainerProps, hideToolbarTop, hideToolbarBottom, isFetching } =\n useMaterialReactTable();\n\n return (\n <TableContainer component={Paper} {...muiTableContainerProps}>\n {!hideToolbarTop && <MRT_ToolbarTop />}\n {isFetching && <LinearProgress />}\n <MRT_Table />\n {!hideToolbarBottom && <MRT_ToolbarBottom />}\n </TableContainer>\n );\n};\n","export interface MRT_Localization {\n actionsHeadColumnTitle: string;\n columnActionMenuButtonTitle: string;\n columnActionMenuItemClearSort: string;\n columnActionMenuItemGroupBy: string;\n columnActionMenuItemHideColumn: string;\n columnActionMenuItemSortAsc: string;\n columnActionMenuItemSortDesc: string;\n columnActionMenuItemUnGroupBy: string;\n expandAllButtonTitle: string;\n expandButtonTitle: string;\n filterTextFieldClearButtonTitle: string;\n filterTextFieldPlaceholder: string;\n rowActionMenuButtonTitle: string;\n rowActionsColumnTitle: string;\n rowActionButtonSave: string;\n rowActionButtonCancel: string;\n rowActionMenuItemEdit: string;\n searchTextFieldClearButtonTitle: string;\n searchTextFieldPlaceholder: string;\n showHideColumnsButtonTitle: string;\n toggleDensePaddingSwitchTitle: string;\n toggleFilterButtonTitle: string;\n}\n\nexport const defaultLocalization: MRT_Localization = {\n actionsHeadColumnTitle: 'Actions',\n columnActionMenuButtonTitle: 'Column Actions',\n columnActionMenuItemClearSort: 'Clear sorting',\n columnActionMenuItemGroupBy: 'Group by column',\n columnActionMenuItemHideColumn: 'Hide column',\n columnActionMenuItemSortAsc: 'Sort ascending',\n columnActionMenuItemSortDesc: 'Sort descending',\n columnActionMenuItemUnGroupBy: 'Ungroup column',\n expandAllButtonTitle: 'Expand all',\n expandButtonTitle: 'Expand',\n filterTextFieldClearButtonTitle: 'Clear filter',\n filterTextFieldPlaceholder: 'Filter',\n rowActionMenuButtonTitle: 'Row Actions',\n rowActionsColumnTitle: 'Actions',\n rowActionMenuItemEdit: 'Edit',\n rowActionButtonSave: 'Save',\n rowActionButtonCancel: 'Cancel',\n searchTextFieldClearButtonTitle: 'Clear search',\n searchTextFieldPlaceholder: 'Search',\n showHideColumnsButtonTitle: 'Show/Hide columns',\n toggleDensePaddingSwitchTitle: 'Toggle dense padding',\n toggleFilterButtonTitle: 'Toggle filters',\n};\n","import React, { ChangeEvent, MouseEvent, ReactNode } from 'react';\nimport {\n TableBodyProps,\n TableCellProps,\n TableContainerProps,\n TableFooterProps,\n TableHeadProps,\n TablePaginationProps,\n TableProps,\n TableRowProps,\n TextFieldProps,\n ToolbarProps,\n TypographyProps,\n} from '@mui/material';\nimport {\n Cell,\n Column,\n HeaderGroup,\n Row,\n TableInstance,\n TableOptions,\n UseExpandedOptions,\n UseFiltersOptions,\n UseGlobalFiltersOptions,\n UseGroupByOptions,\n UsePaginationOptions,\n UseResizeColumnsOptions,\n UseRowSelectOptions,\n UseRowStateOptions,\n UseSortByOptions,\n} from 'react-table';\nimport { MaterialReactTableProvider } from './useMaterialReactTable';\nimport { MRT_TableContainer } from './table/MRT_TableContainer';\nimport { defaultLocalization, MRT_Localization } from './utils/localization';\n\nexport type MaterialReactTableProps<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 defaultDensePadding?: boolean;\n defaultShowFilters?: boolean;\n disableColumnActions?: boolean;\n disableColumnHiding?: boolean;\n disableDensePaddingToggle?: boolean;\n disableExpandAll?: boolean;\n disableSelectAll?: boolean;\n disableSubRowTree?: boolean;\n enableColumnGrouping?: boolean;\n enableColumnResizing?: boolean;\n enableRowActions?: boolean;\n enableRowEditing?: boolean;\n enableSelection?: boolean;\n hideTableFooter?: boolean;\n hideTableHead?: boolean;\n hideToolbarActions?: boolean;\n hideToolbarBottom?: boolean;\n hideToolbarTop?: boolean;\n isFetching?: boolean;\n isLoading?: boolean;\n localization?: Partial<MRT_Localization>;\n muiSearchTextFieldProps?: TextFieldProps;\n muiTableBodyCellProps?:\n | TableCellProps\n | ((cell?: Cell<D>) => TableCellProps);\n muiTableBodyProps?: TableBodyProps;\n muiTableBodyRowProps?: TableRowProps | ((row: Row<D>) => TableRowProps);\n muiTableContainerProps?: TableContainerProps;\n muiTableDetailPanelProps?:\n | TableCellProps\n | ((row: Row<D>) => TableCellProps);\n muiTableFooterCellProps?:\n | TableCellProps\n | ((column: Column<D>) => TableCellProps);\n muiTableFooterProps?: TableFooterProps;\n muiTableFooterRowProps?:\n | TableRowProps\n | ((footerGroup: HeaderGroup<D>) => TableRowProps);\n muiTableHeadCellProps?:\n | TableCellProps\n | ((column: Column<D>) => TableCellProps);\n muiTableHeadProps?: TableHeadProps;\n muiTableHeadRowProps?:\n | TableRowProps\n | ((row: HeaderGroup<D>) => TableRowProps);\n muiTablePaginationProps?:\n | Partial<TablePaginationProps>\n | ((tableInstance: TableInstance<D>) => Partial<TablePaginationProps>);\n muiTableProps?: TableProps;\n muiTableTitleProps?: TypographyProps;\n muiTableToolbarBottomProps?:\n | ToolbarProps\n | ((tableInstance: TableInstance<D>) => ToolbarProps);\n muiTableToolbarTopProps?:\n | ToolbarProps\n | ((tableInstance: TableInstance<D>) => ToolbarProps);\n onCellClick?: (\n event: MouseEvent<HTMLTableCellElement>,\n cell: Cell<D>,\n ) => 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 positionActionsColumn?: 'first' | 'last';\n positionPagination?: 'bottom' | 'top' | 'both';\n positionToolbarActions?: 'bottom' | 'top';\n renderRowActions?: (\n row: Row<D>,\n tableInstance: TableInstance<D>,\n ) => ReactNode;\n renderDetailPanel?: (row: Row<D>) => ReactNode;\n renderRowActionMenuItems?: (\n rowData: Row<D>,\n tableInstance: TableInstance<D>,\n closeMenu: () => void,\n ) => ReactNode[];\n title?: string | ReactNode;\n };\n\nexport default <D extends {}>({\n defaultColumn = { minWidth: 50, maxWidth: 1000 },\n localization = defaultLocalization,\n positionActionsColumn = 'first',\n positionPagination = 'bottom',\n positionToolbarActions = 'top',\n ...rest\n}: MaterialReactTableProps<D>) => (\n <MaterialReactTableProvider\n defaultColumn={defaultColumn}\n localization={{ ...defaultLocalization, ...localization }}\n positionPagination={positionPagination}\n positionActionsColumn={positionActionsColumn}\n positionToolbarActions={positionToolbarActions}\n {...rest}\n >\n <MRT_TableContainer />\n </MaterialReactTableProvider>\n);\n"],"names":["useMRTCalcs","tableInstance","anyRowsCanExpand","useMemo","rows","some","row","canExpand","anyRowsExpanded","isExpanded","maxColumnDepth","maxDepth","columns","forEach","column","length","Math","max","MaterialReactTableContext","createContext","MaterialReactTableProvider","props","hooks","useResizeColumns","useFilters","useGlobalFilter","useGroupBy","useSortBy","useExpanded","usePagination","useRowSelect","enableColumnResizing","unshift","useFlexLayout","useTable","mrtCalcs","useState","defaultShowFilters","showFilters","setShowFilters","defaultDensePadding","densePadding","setDensePadding","currentEditingRowId","setCurrentEditingRowId","React","Provider","value","children","useMaterialReactTable","useContext","MRT_FilterTextfield","localization","filterValue","setFilterValue","handleChange","useAsyncDebounce","setFilter","undefined","handleClear","Filter","TextField","margin","placeholder","filterTextFieldPlaceholder","onChange","e","target","onClick","stopPropagation","variant","InputProps","startAdornment","InputAdornment","position","FilterIcon","endAdornment","IconButton","filterTextFieldClearButtonTitle","disabled","size","title","CloseIcon","fontSize","MenuItem","styled","MuiMenuItem","display","gap","MRT_ColumnActionMenu","anchorEl","setAnchorEl","disableColumnHiding","enableColumnGrouping","disableSortBy","handleClearSort","clearSortBy","handleSortAsc","toggleSortBy","handleSortDesc","handleHideColumn","toggleHidden","handleGroupByColumn","toggleGroupBy","Menu","open","onClose","canSort","key","isSorted","ClearAllIcon","columnActionMenuItemClearSort","isSortedDesc","SortIcon","columnActionMenuItemSortAsc","style","transform","columnActionMenuItemSortDesc","Divider","VisibilityOffIcon","columnActionMenuItemHideColumn","canGroupBy","isGrouped","DynamicFeedIcon","columnActionMenuItemGroupBy","columnActionMenuItemUnGroupBy","MuiIconButton","opacity","transition","marginRight","height","width","MRT_ToggleColumnActionMenuButton","handleClick","event","preventDefault","currentTarget","columnActionMenuButtonTitle","MoreVertIcon","StyledTableHeadCell","MuiTableCell","fontWeight","verticalAlign","TableCellContents","TableCellText","justifyContent","CellFlexItem","flexWrap","alignItems","MuiDivider","borderRightWidth","borderRadius","maxHeight","MRT_TableHeadCell","disableColumnActions","disableFilters","muiTableHeadCellProps","isParentHeader","mTableHeadCellProps","Function","tableCellProps","getHeaderProps","padding","align","getSortByToggleProps","render","TableSortLabel","sortDescFirst","active","direction","flexItem","orientation","onDoubleClick","resetResizing","getResizerProps","canFilter","Collapse","MRT_SelectAllCheckbox","disableSelectAll","TableCell","Checkbox","getToggleAllPageRowsSelectedProps","MRT_ExpandAllButton","renderDetailPanel","getToggleAllRowsExpandedProps","expandedDepth","expandAllButtonTitle","ArrowRightIcon","isAllRowsExpanded","MRT_TableSpacerCell","muiTableBodyCellProps","mTableBodyRowProps","MRT_TableHeadRow","headerGroup","disableExpandAll","enableRowActions","enableSelection","muiTableHeadRowProps","positionActionsColumn","headers","h","mTableHeadRowProps","tableRowProps","getHeaderGroupProps","TableRow","actionsHeadColumnTitle","map","MRT_TableHead","muiTableHeadProps","tableHeadProps","TableHead","headerGroups","index","id","MRT_TableBodyCell","cell","onCellClick","mTableCellBodyProps","getCellProps","isPlaceholder","isAggregated","subRows","MRT_TableDetailPanel","muiTableDetailPanelProps","muiTableBodyRowProps","onDetailPanelClick","getToggleRowExpandedProps","mTableDetailPanelProps","borderBottom","paddingBottom","paddingTop","hover","colSpan","visibleColumns","MRT_ExpandButton","paddingLeft","depth","expandButtonTitle","ExpandMoreIcon","MRT_SelectCheckbox","onRowSelectChange","onSelectChange","getToggleRowSelectedProps","selectedFlatRows","MRT_RowActionMenu","enableRowEditing","renderRowActionMenuItems","handleEdit","EditIcon","rowActionMenuItemEdit","EditActionButtonWrappers","MRT_EditActionButtons","onRowEditSubmit","handleCancel","handleSave","Tooltip","arrow","rowActionButtonCancel","CancelIcon","rowActionButtonSave","color","SaveIcon","MRT_ToggleRowActionMenuButton","renderRowActions","handleOpenRowActionMenu","rowActionMenuButtonTitle","MoreHorizIcon","MRT_TableBodyRow","onRowClick","theme","useTheme","getRowProps","backgroundColor","isSelected","alpha","palette","primary","light","cells","TableBody","MuiTableBody","overflowY","CircularProgressWrapper","background","paper","MRT_TableBody","muiTableBodyProps","isLoading","manualPagination","page","tableBodyProps","getTableBodyProps","CircularProgress","prepareRow","MRT_TableFooterCell","muiTableFooterCellProps","mTableFooterCellProps","getFooterProps","MRT_TableFooterRow","footerGroup","muiTableFooterRowProps","c","Footer","mTableFooterRowProps","getFooterGroupProps","MRT_TableFooter","muiTableFooterProps","TableFooter","footerGroups","MRT_Table","muiTableProps","hideTableHead","hideTableFooter","tableProps","getTableProps","Table","MuiTextField","justifySelf","MRT_SearchTextField","muiSearchTextFieldProps","onGlobalFilterChange","searchValue","setSearchValue","setGlobalFilter","searchTextFieldPlaceholder","SearchIcon","searchTextFieldClearButtonTitle","MRT_ToggleFiltersButton","toggleFilterButtonTitle","FilterListOffIcon","FilterListIcon","MRT_ShowHideColumnsMenu","isMaxDepth","FormControlLabel","checked","isVisible","control","Switch","label","Header","Typography","i","MRT_ShowHideColumnsButton","showHideColumnsButtonTitle","ViewColumnIcon","MRT_DensePaddingSwitch","toggleDensePaddingSwitchTitle","ToolbarButtonsContainer","MRT_ToolbarButtons","disableDensePaddingToggle","MRT_TablePagination","muiTablePaginationProps","tablePaginationProps","handleChangeRowsPerPage","setPageSize","gotoPage","TablePagination","component","count","onPageChange","_","newPage","onRowsPerPageChange","state","pageIndex","rowsPerPage","pageSize","showFirstButton","showLastButton","Toolbar","MuiToolbar","ToolbarTopRow","ToolbarActionsContainer","MRT_ToolbarTop","disableGlobalFilter","muiTableTitleProps","positionPagination","muiTableToolbarTopProps","hideToolbarActions","positionToolbarActions","toolbarProps","includes","MRT_ToolbarBottom","muiTableToolbarBottomProps","MRT_TableContainer","muiTableContainerProps","hideToolbarTop","hideToolbarBottom","isFetching","TableContainer","Paper","LinearProgress","defaultLocalization","rowActionsColumnTitle","defaultColumn","minWidth","maxWidth","rest"],"mappings":"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"}
|