material-react-table 0.3.0 → 0.3.4
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/README.md +32 -162
- package/dist/MaterialReactTable.d.ts +52 -45
- package/dist/body/MRT_TableBodyRow.d.ts +16 -1
- 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/buttons/MRT_ToggleSearchButton.d.ts +4 -0
- package/dist/head/MRT_TableHeadCell.d.ts +4 -0
- package/dist/index.d.ts +2 -2
- package/dist/inputs/MRT_DensePaddingSwitch.d.ts +5 -0
- package/dist/inputs/MRT_EditCellTextField.d.ts +7 -0
- package/dist/inputs/MRT_FilterTextField.d.ts +1 -1
- package/dist/material-react-table.cjs.development.js +1732 -466
- 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 +1743 -477
- package/dist/material-react-table.esm.js.map +1 -1
- package/dist/menus/MRT_ColumnActionMenu.d.ts +2 -2
- package/dist/menus/MRT_RowActionMenu.d.ts +10 -0
- package/dist/table/MRT_TableButtonCell.d.ts +3 -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 +10 -2
- package/dist/utils/localization.d.ts +25 -14
- package/dist/utils/useMRTCalcs.d.ts +1 -1
- package/package.json +26 -21
- package/src/@types/faker.d.ts +4 -0
- package/src/@types/react-table-config.d.ts +131 -0
- package/src/MaterialReactTable.tsx +92 -101
- package/src/body/MRT_TableBody.tsx +17 -40
- package/src/body/MRT_TableBodyCell.tsx +36 -11
- package/src/body/MRT_TableBodyRow.tsx +35 -26
- package/src/body/MRT_TableDetailPanel.tsx +41 -15
- package/src/buttons/MRT_EditActionButtons.tsx +49 -0
- package/src/buttons/MRT_ExpandAllButton.tsx +15 -19
- package/src/buttons/MRT_ExpandButton.tsx +23 -21
- package/src/buttons/MRT_ShowHideColumnsButton.tsx +14 -21
- package/src/buttons/MRT_ToggleColumnActionMenuButton.tsx +5 -9
- package/src/buttons/MRT_ToggleFiltersButton.tsx +23 -0
- package/src/buttons/MRT_ToggleRowActionMenuButton.tsx +83 -0
- package/src/buttons/MRT_ToggleSearchButton.tsx +29 -0
- package/src/footer/MRT_TableFooter.tsx +4 -22
- package/src/footer/MRT_TableFooterCell.tsx +35 -10
- package/src/footer/MRT_TableFooterRow.tsx +24 -16
- package/src/head/MRT_TableHead.tsx +6 -23
- package/src/head/MRT_TableHeadCell.tsx +65 -28
- package/src/head/MRT_TableHeadRow.tsx +44 -17
- package/src/index.tsx +2 -5
- package/src/inputs/MRT_DensePaddingSwitch.tsx +23 -0
- package/src/inputs/MRT_EditCellTextField.tsx +64 -0
- package/src/inputs/MRT_FilterTextField.tsx +42 -15
- package/src/inputs/MRT_SearchTextField.tsx +40 -43
- package/src/inputs/MRT_SelectAllCheckbox.tsx +9 -6
- package/src/inputs/MRT_SelectCheckbox.tsx +9 -5
- package/src/menus/MRT_ColumnActionMenu.tsx +69 -48
- package/src/menus/MRT_RowActionMenu.tsx +33 -0
- package/src/menus/MRT_ShowHideColumnsMenu.tsx +2 -2
- package/src/table/MRT_Table.tsx +13 -5
- package/src/table/MRT_TableButtonCell.tsx +9 -0
- package/src/table/MRT_TableContainer.tsx +32 -5
- package/src/table/MRT_TableSpacerCell.tsx +15 -1
- package/src/toolbar/MRT_TablePagination.tsx +34 -0
- package/src/toolbar/MRT_ToolbarBottom.tsx +41 -0
- package/src/toolbar/MRT_ToolbarButtons.tsx +29 -0
- package/src/toolbar/MRT_ToolbarTop.tsx +59 -0
- package/src/useMaterialReactTable.tsx +40 -44
- package/src/utils/localization.ts +42 -20
- package/src/utils/useMRTCalcs.tsx +1 -3
- 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/table/MRT_TableButtonCell.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/inputs/MRT_EditCellTextField.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/buttons/MRT_ToggleSearchButton.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 {}>({ tableInstance }: 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, { Context, createContext, PropsWithChildren, useContext, useState } from 'react';\nimport {\n PluginHook,\n Row,\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 currentEditingRow: Row<D> | null;\n densePadding: boolean;\n setCurrentEditingRow: (currentRowEditingId: Row<D> | null) => void;\n setDensePadding: (densePadding: boolean) => void;\n setShowFilters: (showFilters: boolean) => void;\n setShowSearch: (showSearch: boolean) => void;\n showFilters: boolean;\n showSearch: boolean;\n tableInstance: TableInstance<D>;\n}\n\nconst MaterialReactTableContext = (<D extends {}>() =>\n createContext<UseMaterialReactTable<D>>({} as UseMaterialReactTable<D>) as Context<\n UseMaterialReactTable<D>\n >)();\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 [showSearch, setShowSearch] = useState(props.defaultShowSearchTextField ?? false);\n const [showFilters, setShowFilters] = useState<boolean>(props.defaultShowFilters ?? false);\n const [densePadding, setDensePadding] = useState<boolean>(props.defaultDensePadding ?? false);\n const [currentEditingRow, setCurrentEditingRow] = useState<Row | null>(null);\n\n return (\n <MaterialReactTableContext.Provider\n value={{\n ...mrtCalcs,\n ...props,\n currentEditingRow,\n densePadding,\n setCurrentEditingRow,\n setDensePadding,\n setShowFilters,\n setShowSearch,\n showFilters,\n showSearch,\n // @ts-ignore\n tableInstance,\n }}\n >\n {props.children}\n </MaterialReactTableContext.Provider>\n );\n};\n\nexport const useMaterialReactTable = <D extends {}>(): UseMaterialReactTable<D> =>\n //@ts-ignore\n useContext<UseMaterialReactTable<D>>(MaterialReactTableContext);\n","import React, { ChangeEvent, FC, useState } from 'react';\nimport { IconButton, InputAdornment, TextField, Tooltip } 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 return <>{column.Filter?.({ column })}</>;\n }\n\n return (\n <TextField\n fullWidth\n id={`filter-${column.id}-column`}\n inputProps={{\n style: {\n textOverflow: 'ellipsis',\n },\n }}\n margin=\"dense\"\n placeholder={localization?.filterTextFieldPlaceholder?.replace(\n '{column}',\n String(column.Header),\n )}\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 <Tooltip\n arrow\n title={\n localization?.filterTextFieldPlaceholder?.replace(\n '{column}',\n String(column.Header),\n ) ?? ''\n }\n >\n <InputAdornment position=\"start\">\n <FilterIcon />\n </InputAdornment>\n </Tooltip>\n ),\n endAdornment: (\n <InputAdornment position=\"end\">\n <Tooltip arrow title={localization?.filterTextFieldClearButtonTitle ?? ''}>\n <span>\n <IconButton\n aria-label={localization?.filterTextFieldClearButtonTitle}\n disabled={filterValue?.length === 0}\n onClick={handleClear}\n size=\"small\"\n >\n <CloseIcon fontSize=\"small\" />\n </IconButton>\n </span>\n </Tooltip>\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 { HeaderGroup } 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';\nimport FilterIcon from '@mui/icons-material/FilterList';\n\nconst MenuItem = styled(MuiMenuItem)({\n display: 'flex',\n gap: '0.75rem',\n});\n\ninterface Props {\n anchorEl: HTMLElement | null;\n column: HeaderGroup;\n setAnchorEl: (anchorEl: HTMLElement | null) => void;\n}\n\nexport const MRT_ColumnActionMenu: FC<Props> = ({ anchorEl, column, setAnchorEl }) => {\n const {\n disableColumnHiding,\n enableColumnGrouping,\n disableSortBy,\n localization,\n disableFilters,\n setShowFilters,\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 const handleFilterByColumn = () => {\n setShowFilters(true);\n setTimeout(\n () =>\n document\n .getElementById(\n // @ts-ignore\n column.muiTableHeadCellFilterTextFieldProps?.id ?? `filter-${column.id}-column`,\n )\n ?.focus(),\n 200,\n );\n setAnchorEl(null);\n };\n\n return (\n <Menu anchorEl={anchorEl} open={!!anchorEl} onClose={() => setAnchorEl(null)}>\n {!disableSortBy &&\n column.canSort && [\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 />{' '}\n {localization?.columnActionMenuItemSortAsc?.replace('{column}', String(column.Header))}\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?.replace('{column}', String(column.Header))}\n </MenuItem>,\n ]}\n {!disableFilters &&\n column.canFilter && [\n <Divider key={0} />,\n <MenuItem key={1} onClick={handleFilterByColumn}>\n <FilterIcon />{' '}\n {localization?.filterTextFieldPlaceholder?.replace('{column}', String(column.Header))}\n </MenuItem>,\n ]}\n {enableColumnGrouping &&\n column.canGroupBy && [\n <Divider key={1} />,\n <MenuItem key={2} onClick={handleGroupByColumn}>\n <DynamicFeedIcon />{' '}\n {localization?.[\n column.isGrouped ? 'columnActionMenuItemUnGroupBy' : 'columnActionMenuItemGroupBy'\n ]?.replace('{column}', String(column.Header))}\n </MenuItem>,\n ]}\n {!disableColumnHiding && [\n <Divider key={0} />,\n <MenuItem key={1} onClick={handleHideColumn}>\n <VisibilityOffIcon />{' '}\n {localization?.columnActionMenuItemHideColumn?.replace('{column}', String(column.Header))}\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: '1.6rem',\n width: '1.6rem',\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 onClick={handleClick}\n size=\"small\"\n title={localization?.columnActionMenuButtonTitle}\n >\n <MoreVertIcon />\n </IconButton>\n <MRT_ColumnActionMenu anchorEl={anchorEl} column={column} setAnchorEl={setAnchorEl} />\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 shouldForwardProp: (prop) => prop !== 'densePadding' && prop !== 'enableColumnResizing',\n})<{ densePadding?: boolean; enableColumnResizing?: boolean }>(\n ({ densePadding, enableColumnResizing }) => ({\n fontWeight: 'bold',\n height: '100%',\n padding: densePadding ? '0.5rem' : '1rem',\n transition: `all ${enableColumnResizing ? '10ms' : '0.2s'} ease-in-out`,\n verticalAlign: 'text-top',\n }),\n);\n\nconst TableCellWrapper = styled('div')({\n alignContent: 'space-between',\n display: 'grid',\n height: '100%',\n});\n\nconst TableCellTopContents = styled('div')({\n width: '100%',\n display: 'flex',\n justifyContent: 'space-between',\n alignItems: 'flex-start',\n});\n\nconst CellFlexItem = styled('span')({\n alignItems: 'center',\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 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 mcTableHeadCellProps =\n column.muiTableHeadCellProps instanceof Function\n ? column.muiTableHeadCellProps(column)\n : column.muiTableHeadCellProps;\n\n const tableCellProps = {\n ...mTableHeadCellProps,\n ...mcTableHeadCellProps,\n ...column.getHeaderProps(),\n style: {\n ...column.getHeaderProps().style,\n ...(mTableHeadCellProps?.style ?? {}),\n ...(mcTableHeadCellProps?.style ?? {}),\n },\n };\n\n return (\n <StyledTableHeadCell\n align={isParentHeader ? 'center' : 'left'}\n densePadding={densePadding}\n enableColumnResizing={enableColumnResizing}\n {...tableCellProps}\n >\n <TableCellWrapper>\n <TableCellTopContents style={{ justifyContent: isParentHeader ? 'center' : undefined }}>\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 />\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 </TableCellTopContents>\n {!disableFilters && column.canFilter && (\n <Collapse in={showFilters}>\n <MRT_FilterTextField column={column} />\n </Collapse>\n )}\n </TableCellWrapper>\n </StyledTableHeadCell>\n );\n};\n","import { styled, TableCell as MuiTableCell } from '@mui/material';\n\nexport const MRT_TableButtonCell = styled(MuiTableCell, {\n shouldForwardProp: (prop) => prop !== 'densePadding',\n})<{ densePadding?: boolean }>(({ densePadding }) => ({\n padding: densePadding ? '1px' : '0.6rem',\n textAlign: 'center',\n transition: 'all 0.2s ease-in-out',\n}));\n","import React from 'react';\nimport { Checkbox } from '@mui/material';\nimport { useMaterialReactTable } from '../useMaterialReactTable';\nimport { MRT_TableButtonCell } from '../table/MRT_TableButtonCell';\n\nexport const MRT_SelectAllCheckbox = () => {\n const { tableInstance, disableSelectAll, densePadding, localization } = useMaterialReactTable();\n\n return (\n <MRT_TableButtonCell densePadding={densePadding} variant=\"head\">\n {!disableSelectAll ? (\n <Checkbox\n inputProps={{\n 'aria-label': localization?.selectAllCheckboxTitle ?? '',\n }}\n {...tableInstance.getToggleAllPageRowsSelectedProps()}\n />\n ) : null}\n </MRT_TableButtonCell>\n );\n};\n","import React, { FC } from 'react';\nimport { IconButton, styled } from '@mui/material';\nimport MuiArrowRightIcon from '@mui/icons-material/KeyboardDoubleArrowDown';\nimport { useMaterialReactTable } from '../useMaterialReactTable';\nimport { MRT_TableButtonCell } from '../table/MRT_TableButtonCell';\n\nconst ArrowRightIcon = styled(MuiArrowRightIcon, {\n shouldForwardProp: (prop) => prop !== 'rotation',\n})<{ rotation?: number }>(({ rotation }) => ({\n transform: `rotate(${rotation}deg)`,\n transition: 'transform 0.2s',\n}));\n\ninterface Props {}\n\nexport const MRT_ExpandAllButton: FC<Props> = () => {\n const { tableInstance, localization, anyRowsExpanded, densePadding } = useMaterialReactTable();\n\n return (\n <MRT_TableButtonCell\n size=\"small\"\n densePadding={densePadding}\n {...tableInstance.getToggleAllRowsExpandedProps()}\n >\n <IconButton\n aria-label={localization?.expandAllButtonTitle}\n title={localization?.expandAllButtonTitle}\n >\n <ArrowRightIcon\n fontSize=\"small\"\n rotation={tableInstance.isAllRowsExpanded ? -180 : anyRowsExpanded ? -90 : 0}\n />\n </IconButton>\n </MRT_TableButtonCell>\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 mTableBodyCellrops =\n muiTableBodyCellProps instanceof Function ? muiTableBodyCellProps() : muiTableBodyCellProps;\n\n const tableCellProps = {\n ...mTableBodyCellrops,\n style: {\n width,\n ...(mTableBodyCellrops?.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 densePadding,\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 style={{ textAlign: 'center' }}>\n {localization?.actionsHeadColumnTitle}\n </StyledTableHeadCell>\n ))}\n {anyRowsCanExpand || renderDetailPanel ? (\n !disableExpandAll && !isParentHeader ? (\n <MRT_ExpandAllButton />\n ) : (\n <MRT_TableSpacerCell\n width={`${renderDetailPanel ? 2 : tableInstance.expandedDepth + 0.5}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: HeaderGroup) => (\n <MRT_TableHeadCell key={column.getHeaderProps().key} column={column} />\n ))}\n {enableRowActions &&\n positionActionsColumn === 'last' &&\n (isParentHeader ? (\n <MRT_TableSpacerCell />\n ) : (\n <StyledTableHeadCell densePadding={densePadding}>\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 ? muiTableHeadProps(tableInstance) : muiTableHeadProps;\n\n return (\n <TableHead {...tableHeadProps}>\n {tableInstance.headerGroups.map((headerGroup) => (\n <MRT_TableHeadRow key={headerGroup.getHeaderGroupProps().key} headerGroup={headerGroup} />\n ))}\n </TableHead>\n );\n};\n","import React, { ChangeEvent, FC } from 'react';\nimport { TextField } from '@mui/material';\nimport { Cell } from 'react-table';\nimport { useMaterialReactTable } from '../useMaterialReactTable';\n\ninterface Props {\n cell: Cell;\n}\n\nexport const MRT_EditCellTextField: FC<Props> = ({ cell }) => {\n const {\n currentEditingRow,\n localization,\n muiTableBodyCellEditTextFieldProps,\n setCurrentEditingRow,\n } = useMaterialReactTable();\n\n const handleChange = (event: ChangeEvent<HTMLInputElement>) => {\n if (currentEditingRow) {\n cell.row.values[cell.column.id] = event.target.value;\n setCurrentEditingRow({\n ...currentEditingRow,\n });\n }\n cell.column.onCellEditChange?.(event, cell);\n };\n\n const mTableBodyCellEditTextFieldProps =\n muiTableBodyCellEditTextFieldProps instanceof Function\n ? muiTableBodyCellEditTextFieldProps(cell)\n : muiTableBodyCellEditTextFieldProps;\n\n const mcTableBodyCellEditTextFieldProps =\n cell.column.muiTableBodyCellEditTextFieldProps instanceof Function\n ? cell.column.muiTableBodyCellEditTextFieldProps(cell)\n : cell.column.muiTableBodyCellEditTextFieldProps;\n\n const textFieldProps = {\n ...mTableBodyCellEditTextFieldProps,\n ...mcTableBodyCellEditTextFieldProps,\n style: {\n //@ts-ignore\n ...muiTableBodyCellEditTextFieldProps?.style,\n //@ts-ignore\n ...cell.column.muiTableBodyCellEditTextFieldProps?.style,\n },\n };\n\n if (cell.column.editable && cell.column.Edit) {\n return <>{cell.column.Edit({ ...textFieldProps, cell })}</>;\n }\n\n return (\n <TextField\n margin=\"dense\"\n onChange={handleChange}\n onClick={(e) => e.stopPropagation()}\n placeholder={localization?.filterTextFieldPlaceholder}\n value={cell.value}\n variant=\"standard\"\n {...textFieldProps}\n />\n );\n};\n","import React, { FC, MouseEvent } from 'react';\nimport { styled, TableCell as MuiTableCell } from '@mui/material';\nimport { Cell } from 'react-table';\nimport { useMaterialReactTable } from '../useMaterialReactTable';\nimport { MRT_EditCellTextField } from '../inputs/MRT_EditCellTextField';\n\nconst TableCell = styled(MuiTableCell, {\n shouldForwardProp: (prop) => prop !== 'densePadding',\n})<{ densePadding?: boolean }>(({ densePadding }) => ({\n padding: densePadding ? '0.5rem' : '1rem',\n transition: 'all 0.2s ease-in-out',\n whiteSpace: densePadding ? 'nowrap' : 'normal',\n}));\n\ninterface Props {\n cell: Cell;\n}\n\nexport const MRT_TableBodyCell: FC<Props> = ({ cell }) => {\n const { onCellClick, muiTableBodyCellProps, densePadding, currentEditingRow } =\n useMaterialReactTable();\n\n const mTableCellBodyProps =\n muiTableBodyCellProps instanceof Function ? muiTableBodyCellProps(cell) : muiTableBodyCellProps;\n\n const mcTableCellBodyProps =\n cell.column.muiTableBodyCellProps instanceof Function\n ? cell.column.muiTableBodyCellProps(cell)\n : cell.column.muiTableBodyCellProps;\n\n const tableCellProps = {\n ...mTableCellBodyProps,\n ...mcTableCellBodyProps,\n ...cell.getCellProps(),\n style: {\n ...cell.getCellProps().style,\n ...(mTableCellBodyProps?.style ?? {}),\n ...(mcTableCellBodyProps?.style ?? {}),\n },\n };\n\n return (\n <TableCell\n densePadding={densePadding}\n onClick={(event: MouseEvent<HTMLTableCellElement>) => onCellClick?.(event, cell)}\n {...tableCellProps}\n >\n {currentEditingRow?.id === cell.row.id ? (\n <MRT_EditCellTextField cell={cell} />\n ) : cell.isPlaceholder ? null : cell.isAggregated ? (\n cell.render('Aggregated')\n ) : cell.isGrouped ? (\n <span>\n {cell.render('Cell')} ({cell.row.subRows.length})\n </span>\n ) : (\n cell.render('Cell')\n )}\n {}\n </TableCell>\n );\n};\n","import React, { FC, MouseEvent } from 'react';\nimport { Collapse, styled, TableCell as MuiTableCell, TableRow } from '@mui/material';\nimport { Row } from 'react-table';\nimport { useMaterialReactTable } from '../useMaterialReactTable';\n\nconst TableCell = styled(MuiTableCell, {\n shouldForwardProp: (prop) => prop !== 'isExpanded',\n})<{ isExpanded?: boolean }>(({ isExpanded }) => ({\n borderBottom: !isExpanded ? 'none' : undefined,\n paddingBottom: isExpanded ? '1rem' : 0,\n paddingTop: isExpanded ? '1rem' : 0,\n transition: 'all 0.2s ease-in-out',\n}));\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 ? muiTableBodyRowProps(row) : 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 ...(mTableDetailPanelProps?.style ?? {}),\n },\n };\n\n return (\n <TableRow hover {...tableRowProps}>\n <TableCell\n colSpan={tableInstance.visibleColumns.length + 10}\n isExpanded={row.isExpanded}\n onClick={(event: MouseEvent<HTMLTableCellElement>) => onDetailPanelClick?.(event, row)}\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, styled } from '@mui/material';\nimport { Row } from 'react-table';\nimport MuiExpandMoreIcon from '@mui/icons-material/ExpandMore';\nimport { useMaterialReactTable } from '../useMaterialReactTable';\nimport { MRT_TableButtonCell } from '../table/MRT_TableButtonCell';\n\nconst TableCell = styled(MRT_TableButtonCell, {\n shouldForwardProp: (prop) => prop !== 'depth',\n})<{ depth: number }>(({ depth }) => ({\n paddingLeft: `${depth + 0.5}rem`,\n textAlign: 'left',\n}));\n\nconst ExpandMoreIcon = styled(MuiExpandMoreIcon, {\n shouldForwardProp: (prop) => prop !== 'rotation',\n})<{ rotation?: number }>(({ rotation }) => ({\n transform: `rotate(${rotation}deg)`,\n transition: 'transform 0.2s',\n}));\n\ninterface Props {\n row: Row;\n}\n\nexport const MRT_ExpandButton: FC<Props> = ({ row }) => {\n const { localization, densePadding, renderDetailPanel } = useMaterialReactTable();\n\n return (\n <TableCell size=\"small\" densePadding={densePadding} depth={row.depth}>\n <IconButton\n aria-label={localization?.expandButtonTitle}\n disabled={!row.canExpand && !renderDetailPanel}\n title={localization?.expandButtonTitle}\n {...row.getToggleRowExpandedProps()}\n >\n <ExpandMoreIcon\n fontSize={row.canExpand || renderDetailPanel ? 'medium' : 'small'}\n rotation={!row.canExpand && !renderDetailPanel ? -90 : row.isExpanded ? -180 : 0}\n />\n </IconButton>\n </TableCell>\n );\n};\n","import React, { ChangeEvent, FC } from 'react';\nimport { Checkbox } from '@mui/material';\nimport { Row } from 'react-table';\nimport { useMaterialReactTable } from '../useMaterialReactTable';\nimport { MRT_TableButtonCell } from '../table/MRT_TableButtonCell';\n\ninterface Props {\n row: Row;\n}\n\nexport const MRT_SelectCheckbox: FC<Props> = ({ row }) => {\n const { tableInstance, onRowSelectChange, densePadding, localization } = useMaterialReactTable();\n\n const onSelectChange = (event: ChangeEvent) => {\n row.getToggleRowSelectedProps()?.onChange?.(event);\n onRowSelectChange?.(event, row, tableInstance.selectedFlatRows);\n };\n\n return (\n <MRT_TableButtonCell densePadding={densePadding}>\n <Checkbox\n inputProps={{\n 'aria-label': localization?.selectCheckboxTitle,\n }}\n onChange={onSelectChange}\n {...row.getToggleRowSelectedProps()}\n />\n </MRT_TableButtonCell>\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 handleEdit: () => void;\n}\n\nexport const MRT_RowActionMenu: FC<Props> = ({ anchorEl, row, handleEdit, setAnchorEl }) => {\n const { enableRowEditing, localization, renderRowActionMenuItems, tableInstance } =\n useMaterialReactTable();\n\n return (\n <Menu anchorEl={anchorEl} open={!!anchorEl} onClose={() => setAnchorEl(null)}>\n {enableRowEditing && (\n <MenuItem onClick={handleEdit}>\n <EditIcon /> {localization?.rowActionMenuItemEdit}\n </MenuItem>\n )}\n {renderRowActionMenuItems?.(row, tableInstance, () => setAnchorEl(null)) ?? 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, setCurrentEditingRow, onRowEditSubmit, currentEditingRow } =\n useMaterialReactTable();\n\n const handleCancel = () => {\n row.values = row.original;\n setCurrentEditingRow(null);\n };\n\n const handleSave = async () => {\n await onRowEditSubmit?.(currentEditingRow ?? row);\n setCurrentEditingRow(null);\n };\n\n return (\n <EditActionButtonWrappers>\n <Tooltip arrow title={localization?.rowActionButtonCancel ?? ''}>\n <IconButton aria-label={localization?.rowActionButtonCancel} onClick={handleCancel}>\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, Tooltip } from '@mui/material';\nimport MoreHorizIcon from '@mui/icons-material/MoreHoriz';\nimport EditIcon from '@mui/icons-material/Edit';\nimport { useMaterialReactTable } from '../useMaterialReactTable';\nimport { Row } from 'react-table';\nimport { MRT_RowActionMenu } from '../menus/MRT_RowActionMenu';\nimport { MRT_EditActionButtons } from './MRT_EditActionButtons';\nimport { MRT_TableButtonCell } from '../table/MRT_TableButtonCell';\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 currentEditingRow,\n densePadding,\n localization,\n renderRowActionMenuItems,\n enableRowEditing,\n setCurrentEditingRow,\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 const handleEdit = () => {\n setCurrentEditingRow({ ...row });\n setAnchorEl(null);\n };\n\n return (\n <MRT_TableButtonCell densePadding={densePadding}>\n {renderRowActions ? (\n <>{renderRowActions(row, tableInstance)}</>\n ) : row.id === currentEditingRow?.id ? (\n <MRT_EditActionButtons row={row} />\n ) : !renderRowActionMenuItems && enableRowEditing ? (\n <Tooltip placement=\"right\" arrow title={localization?.rowActionMenuItemEdit ?? ''}>\n <IconButton onClick={handleEdit}>\n <EditIcon />\n </IconButton>\n </Tooltip>\n ) : renderRowActionMenuItems ? (\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 handleEdit={handleEdit}\n row={row}\n setAnchorEl={setAnchorEl}\n />\n </>\n ) : null}\n </MRT_TableButtonCell>\n );\n};\n","import React, { FC, MouseEvent } from 'react';\nimport { alpha, styled, TableRow as MuiTableRow } 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\nexport const TableRow = styled(MuiTableRow, {\n shouldForwardProp: (prop) => prop !== 'isSelected',\n})<{ isSelected?: boolean }>(({ isSelected, theme }) => ({\n backgroundColor: isSelected ? alpha(theme.palette.primary.light, 0.1) : 'transparent',\n}));\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\n const mTableBodyRowProps =\n muiTableBodyRowProps instanceof Function ? muiTableBodyRowProps(row) : muiTableBodyRowProps;\n\n const tableRowProps = {\n ...mTableBodyRowProps,\n ...row.getRowProps(),\n style: {\n ...row.getRowProps().style,\n ...(mTableBodyRowProps?.style ?? {}),\n },\n };\n\n return (\n <>\n <TableRow\n isSelected={row.isSelected}\n hover\n onClick={(event: MouseEvent<HTMLTableRowElement>) => onRowClick?.(event, row)}\n {...tableRowProps}\n >\n {enableRowActions && positionActionsColumn === 'first' && (\n <MRT_ToggleRowActionMenuButton row={row} />\n )}\n {(anyRowsCanExpand || renderDetailPanel) && <MRT_ExpandButton row={row} />}\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 <MRT_ToggleRowActionMenuButton row={row} />\n )}\n </TableRow>\n {renderDetailPanel && <MRT_TableDetailPanel row={row} />}\n </>\n );\n};\n","import React, { FC } from 'react';\nimport { styled, TableBody as MuiTableBody } from '@mui/material';\nimport { MRT_TableBodyRow } from './MRT_TableBodyRow';\nimport { useMaterialReactTable } from '../useMaterialReactTable';\n\nconst TableBody = styled(MuiTableBody)({\n overflowY: 'hidden',\n});\n\ninterface Props {}\n\nexport const MRT_TableBody: FC<Props> = () => {\n const { tableInstance, muiTableBodyProps, manualPagination } = 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 {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 shouldForwardProp: (prop) => prop !== 'densePadding' && prop !== 'enableColumnResizing',\n})<{ densePadding?: boolean; enableColumnResizing?: boolean }>(\n ({ densePadding, enableColumnResizing }) => ({\n fontWeight: 'bold',\n verticalAlign: 'text-top',\n padding: densePadding ? '0.5rem' : '1rem',\n transition: `all ${enableColumnResizing ? '10ms' : '0.2s'} ease-in-out`,\n }),\n);\n\ninterface Props {\n column: HeaderGroup;\n}\n\nexport const MRT_TableFooterCell: FC<Props> = ({ column }) => {\n const { muiTableFooterCellProps, densePadding, enableColumnResizing } = 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 mcTableFooterCellProps =\n column.muiTableFooterCellProps instanceof Function\n ? column.muiTableFooterCellProps(column)\n : column.muiTableFooterCellProps;\n\n const tableCellProps = {\n ...mTableFooterCellProps,\n ...mcTableFooterCellProps,\n ...column.getFooterProps(),\n style: {\n ...column.getFooterProps().style,\n ...(mTableFooterCellProps?.style ?? {}),\n ...(mcTableFooterCellProps?.style ?? {}),\n },\n };\n\n return (\n <TableCell\n align={isParentHeader ? 'center' : 'left'}\n densePadding={densePadding}\n enableColumnResizing={enableColumnResizing}\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' && <MRT_TableSpacerCell />}\n {(anyRowsCanExpand || renderDetailPanel) && (\n <MRT_TableSpacerCell\n width={`${renderDetailPanel ? 2 : tableInstance.expandedDepth + 0.5}rem`}\n />\n )}\n {enableSelection && <MRT_TableSpacerCell width=\"1rem\" />}\n {footerGroup.headers.map((column) => (\n <MRT_TableFooterCell key={column.getFooterProps().key} column={column} />\n ))}\n {enableRowActions && positionActionsColumn === 'last' && <MRT_TableSpacerCell />}\n </TableRow>\n );\n};\n","import React, { FC } from 'react';\nimport { TableFooter } from '@mui/material';\nimport { MRT_TableFooterRow } from './MRT_TableFooterRow';\nimport { 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) => (\n <MRT_TableFooterRow key={footerGroup.getFooterGroupProps().key} footerGroup={footerGroup} />\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 } = 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 Collapse,\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 { showSearch, localization, muiSearchTextFieldProps, onGlobalFilterChange, tableInstance } =\n useMaterialReactTable();\n\n const [searchValue, setSearchValue] = useState('');\n\n const handleChange = useAsyncDebounce((event: ChangeEvent<HTMLInputElement>) => {\n tableInstance.setGlobalFilter(event.target.value ?? undefined);\n onGlobalFilterChange?.(event);\n }, 200);\n\n const handleClear = () => {\n setSearchValue('');\n tableInstance.setGlobalFilter(undefined);\n };\n\n return (\n <Collapse in={showSearch} orientation=\"horizontal\">\n <TextField\n id=\"global-search-text-field\"\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 </Collapse>\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 anchorEl={anchorEl} open={!!anchorEl} onClose={() => setAnchorEl(null)}>\n {tableInstance.columns.map((column, index) => (\n <MRT_ShowHideColumnsMenu key={`${index}-${column.id}`} column={column} />\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 } = useMaterialReactTable();\n\n return (\n <Tooltip arrow title={localization?.toggleDensePaddingSwitchTitle ?? ''}>\n <Switch\n inputProps={{\n 'aria-label': localization?.toggleDensePaddingSwitchTitle ?? '',\n }}\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 { IconButton, Tooltip } from '@mui/material';\nimport { useMaterialReactTable } from '../useMaterialReactTable';\nimport SearchIcon from '@mui/icons-material/Search';\nimport SearchOffIcon from '@mui/icons-material/SearchOff';\n\ntype Props = {};\n\nexport const MRT_ToggleSearchButton: FC<Props> = () => {\n const { localization, setShowSearch, showSearch, muiSearchTextFieldProps } =\n useMaterialReactTable();\n\n const handleToggleSearch = () => {\n setShowSearch(!showSearch);\n setTimeout(\n () =>\n document.getElementById(muiSearchTextFieldProps?.id ?? `global-search-text-field`)?.focus(),\n 200,\n );\n };\n\n return (\n <Tooltip arrow title={localization?.toggleSearchButtonTitle ?? ''}>\n <IconButton size=\"small\" onClick={handleToggleSearch}>\n {showSearch ? <SearchOffIcon /> : <SearchIcon />}\n </IconButton>\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';\nimport { MRT_ToggleSearchButton } from '../buttons/MRT_ToggleSearchButton';\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, disableGlobalFilter } =\n useMaterialReactTable();\n\n return (\n <ToolbarButtonsContainer>\n {!disableGlobalFilter && <MRT_ToggleSearchButton />}\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={tableInstance.rows.length / tableInstance.state.pageSize > 2}\n showLastButton={tableInstance.rows.length / tableInstance.state.pageSize > 2}\n style={{ padding: 0 }}\n {...tablePaginationProps}\n />\n );\n};\n","import React, { FC } from 'react';\nimport { styled, Toolbar as MuiToolbar } 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 padding: '0.5rem !important',\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 hideToolbarActions,\n manualPagination,\n muiTableToolbarTopProps,\n positionPagination,\n positionToolbarActions,\n renderToolbarActions,\n tableInstance,\n } = useMaterialReactTable();\n\n const toolbarProps =\n muiTableToolbarTopProps instanceof Function\n ? muiTableToolbarTopProps(tableInstance)\n : muiTableToolbarTopProps;\n\n return (\n <Toolbar variant=\"dense\" {...toolbarProps}>\n <ToolbarTopRow>\n {renderToolbarActions?.(tableInstance) ?? <span />}\n <ToolbarActionsContainer>\n {!disableGlobalFilter && <MRT_SearchTextField />}\n {!hideToolbarActions && positionToolbarActions === 'top' && <MRT_ToolbarButtons />}\n </ToolbarActionsContainer>\n </ToolbarTopRow>\n <div>\n {!manualPagination && ['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 display: 'flex',\n justifyContent: 'space-between',\n});\n\ninterface Props {}\n\nexport const MRT_ToolbarBottom: FC<Props> = () => {\n const {\n hideToolbarActions,\n manualPagination,\n muiTableToolbarBottomProps,\n positionPagination,\n positionToolbarActions,\n tableInstance,\n } = useMaterialReactTable();\n\n const toolbarProps =\n muiTableToolbarBottomProps instanceof Function\n ? muiTableToolbarBottomProps(tableInstance)\n : muiTableToolbarBottomProps;\n\n return (\n <Toolbar style={{ padding: 0 }} variant=\"dense\" {...toolbarProps}>\n {!hideToolbarActions && positionToolbarActions === 'bottom' ? (\n <MRT_ToolbarButtons />\n ) : (\n <span />\n )}\n {!manualPagination && ['bottom', 'both'].includes(positionPagination ?? '') && (\n <MRT_TablePagination />\n )}\n </Toolbar>\n );\n};\n","import React, { FC } from 'react';\nimport {\n alpha,\n CircularProgress,\n LinearProgress,\n Paper,\n styled,\n TableContainer,\n} 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\nconst CircularProgressWrapper = styled('div')(({ theme }) => ({\n alignItems: 'center',\n backgroundColor: alpha(theme.palette.background.paper, 0.5),\n display: 'grid',\n height: '100%',\n justifyContent: 'center',\n margin: 'auto',\n position: 'absolute',\n width: 'calc(100% - 2rem)',\n}));\n\ninterface Props {}\n\nexport const MRT_TableContainer: FC<Props> = () => {\n const { muiTableContainerProps, hideToolbarTop, hideToolbarBottom, isLoading, isFetching } =\n useMaterialReactTable();\n\n return (\n <TableContainer component={Paper} {...muiTableContainerProps}>\n {!hideToolbarTop && <MRT_ToolbarTop />}\n {isFetching && <LinearProgress />}\n {isLoading && (\n <CircularProgressWrapper>\n <CircularProgress aria-busy=\"true\" aria-label=\"Loading data\" />\n </CircularProgressWrapper>\n )}\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 rowActionButtonCancel: string;\n rowActionButtonSave: string;\n rowActionMenuButtonTitle: string;\n rowActionMenuItemEdit: string;\n rowActionsColumnTitle: string;\n searchTextFieldClearButtonTitle: string;\n searchTextFieldPlaceholder: string;\n selectAllCheckboxTitle: string;\n selectCheckboxTitle: string;\n showHideColumnsButtonTitle: string;\n toggleDensePaddingSwitchTitle: string;\n toggleFilterButtonTitle: string;\n toggleSearchButtonTitle: 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} column',\n columnActionMenuItemSortAsc: 'Sort by {column} ascending',\n columnActionMenuItemSortDesc: 'Sort by {column} descending',\n columnActionMenuItemUnGroupBy: 'Ungroup by {column}',\n expandAllButtonTitle: 'Expand all',\n expandButtonTitle: 'Expand',\n filterTextFieldClearButtonTitle: 'Clear filter',\n filterTextFieldPlaceholder: 'Filter by {column}',\n rowActionButtonCancel: 'Cancel',\n rowActionButtonSave: 'Save',\n rowActionMenuButtonTitle: 'Row Actions',\n rowActionMenuItemEdit: 'Edit',\n selectCheckboxTitle: 'Select row',\n rowActionsColumnTitle: 'Actions',\n searchTextFieldClearButtonTitle: 'Clear search',\n searchTextFieldPlaceholder: 'Search',\n selectAllCheckboxTitle: 'Select all',\n showHideColumnsButtonTitle: 'Show/Hide columns',\n toggleDensePaddingSwitchTitle: 'Toggle dense padding',\n toggleFilterButtonTitle: 'Toggle filters',\n toggleSearchButtonTitle: 'Toggle search'\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} 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 UseTableOptions,\n} from 'react-table';\nimport { MaterialReactTableProvider } from './useMaterialReactTable';\nimport { MRT_TableContainer } from './table/MRT_TableContainer';\nimport { defaultLocalization, MRT_Localization } from './utils/localization';\nimport { MRT_ColumnInterface } from './@types/react-table-config';\n\nexport type MaterialReactTableProps<D extends {} = {}> = TableOptions<D> &\n UseTableOptions<D> &\n UseExpandedOptions<D> &\n UseFiltersOptions<D> &\n UseGlobalFiltersOptions<D> &\n UseGroupByOptions<D> &\n UsePaginationOptions<D> &\n UseResizeColumnsOptions<D> &\n UseRowSelectOptions<D> &\n UseRowStateOptions<D> &\n UseSortByOptions<D> & {\n columns: (Column<D> & MRT_ColumnInterface)[];\n defaultDensePadding?: boolean;\n defaultShowFilters?: boolean;\n defaultShowSearchTextField?: 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 muiTableBodyCellEditTextFieldProps?: TextFieldProps | ((cell?: Cell<D>) => TextFieldProps);\n muiTableBodyCellProps?: TableCellProps | ((cell?: Cell<D>) => TableCellProps);\n muiTableBodyProps?: TableBodyProps;\n muiTableBodyRowProps?: TableRowProps | ((row: Row<D>) => TableRowProps);\n muiTableContainerProps?: TableContainerProps;\n muiTableDetailPanelProps?: TableCellProps | ((row: Row<D>) => TableCellProps);\n muiTableFooterCellProps?: TableCellProps | ((column: Column<D>) => TableCellProps);\n muiTableFooterProps?: TableFooterProps;\n muiTableFooterRowProps?: TableRowProps | ((footerGroup: HeaderGroup<D>) => TableRowProps);\n muiTableHeadCellFilterTextFieldProps?: TextFieldProps | ((column: Column<D>) => TextFieldProps);\n muiTableHeadCellProps?: TableCellProps | ((column: Column<D>) => TableCellProps);\n muiTableHeadProps?: TableHeadProps;\n muiTableHeadRowProps?: TableRowProps | ((row: HeaderGroup<D>) => TableRowProps);\n muiTablePaginationProps?:\n | Partial<TablePaginationProps>\n | ((tableInstance: TableInstance<D>) => Partial<TablePaginationProps>);\n muiTableProps?: TableProps;\n muiTableToolbarBottomProps?: ToolbarProps | ((tableInstance: TableInstance<D>) => ToolbarProps);\n muiTableToolbarTopProps?: ToolbarProps | ((tableInstance: TableInstance<D>) => ToolbarProps);\n onCellClick?: (event: MouseEvent<HTMLTableCellElement>, cell: Cell<D>) => void;\n onColumnHide?: (column: Column<D>, visibleColumns: Column<D>[]) => void;\n onDetailPanelClick?: (event: MouseEvent<HTMLTableCellElement>, row: Row<D>) => 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?: (event: MouseEvent<HTMLButtonElement>, row: Row<D>) => void;\n onRowSelectChange?: (event: ChangeEvent, row: Row<D>, selectedRows: Row<D>[]) => void;\n positionActionsColumn?: 'first' | 'last';\n positionPagination?: 'bottom' | 'top' | 'both';\n positionToolbarActions?: 'bottom' | 'top';\n renderDetailPanel?: (row: Row<D>) => ReactNode;\n renderRowActionMenuItems?: (\n rowData: Row<D>,\n tableInstance: TableInstance<D>,\n closeMenu: () => void,\n ) => ReactNode[];\n renderRowActions?: (row: Row<D>, tableInstance: TableInstance<D>) => ReactNode;\n renderToolbarActions?: (tableInstance: TableInstance<D>) => 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","defaultShowSearchTextField","showSearch","setShowSearch","defaultShowFilters","showFilters","setShowFilters","defaultDensePadding","densePadding","setDensePadding","currentEditingRow","setCurrentEditingRow","React","Provider","value","children","useMaterialReactTable","useContext","MRT_FilterTextField","localization","filterValue","setFilterValue","handleChange","useAsyncDebounce","setFilter","undefined","handleClear","Filter","TextField","fullWidth","id","inputProps","style","textOverflow","margin","placeholder","filterTextFieldPlaceholder","replace","String","Header","onChange","e","target","onClick","stopPropagation","variant","InputProps","startAdornment","Tooltip","arrow","title","InputAdornment","position","FilterIcon","endAdornment","filterTextFieldClearButtonTitle","IconButton","disabled","size","CloseIcon","fontSize","MenuItem","styled","MuiMenuItem","display","gap","MRT_ColumnActionMenu","anchorEl","setAnchorEl","disableColumnHiding","enableColumnGrouping","disableSortBy","disableFilters","handleClearSort","clearSortBy","handleSortAsc","toggleSortBy","handleSortDesc","handleHideColumn","toggleHidden","handleGroupByColumn","toggleGroupBy","handleFilterByColumn","setTimeout","document","getElementById","muiTableHeadCellFilterTextFieldProps","focus","Menu","open","onClose","canSort","key","isSorted","ClearAllIcon","columnActionMenuItemClearSort","isSortedDesc","SortIcon","columnActionMenuItemSortAsc","transform","columnActionMenuItemSortDesc","canFilter","Divider","canGroupBy","DynamicFeedIcon","isGrouped","VisibilityOffIcon","columnActionMenuItemHideColumn","MuiIconButton","opacity","transition","marginRight","height","width","MRT_ToggleColumnActionMenuButton","handleClick","event","preventDefault","currentTarget","columnActionMenuButtonTitle","MoreVertIcon","StyledTableHeadCell","MuiTableCell","shouldForwardProp","prop","fontWeight","padding","verticalAlign","TableCellWrapper","alignContent","TableCellTopContents","justifyContent","alignItems","CellFlexItem","flexWrap","MuiDivider","borderRightWidth","borderRadius","maxHeight","MRT_TableHeadCell","disableColumnActions","muiTableHeadCellProps","isParentHeader","mTableHeadCellProps","Function","mcTableHeadCellProps","tableCellProps","getHeaderProps","align","getSortByToggleProps","render","TableSortLabel","sortDescFirst","active","direction","flexItem","orientation","onDoubleClick","resetResizing","getResizerProps","Collapse","MRT_TableButtonCell","textAlign","MRT_SelectAllCheckbox","disableSelectAll","Checkbox","selectAllCheckboxTitle","getToggleAllPageRowsSelectedProps","ArrowRightIcon","MuiArrowRightIcon","rotation","MRT_ExpandAllButton","getToggleAllRowsExpandedProps","expandAllButtonTitle","isAllRowsExpanded","MRT_TableSpacerCell","muiTableBodyCellProps","mTableBodyCellrops","TableCell","MRT_TableHeadRow","headerGroup","disableExpandAll","enableRowActions","enableSelection","muiTableHeadRowProps","positionActionsColumn","renderDetailPanel","headers","h","mTableHeadRowProps","tableRowProps","getHeaderGroupProps","TableRow","actionsHeadColumnTitle","expandedDepth","map","MRT_TableHead","muiTableHeadProps","tableHeadProps","TableHead","headerGroups","MRT_EditCellTextField","cell","muiTableBodyCellEditTextFieldProps","values","onCellEditChange","mTableBodyCellEditTextFieldProps","mcTableBodyCellEditTextFieldProps","textFieldProps","editable","Edit","whiteSpace","MRT_TableBodyCell","onCellClick","mTableCellBodyProps","mcTableCellBodyProps","getCellProps","isPlaceholder","isAggregated","subRows","borderBottom","paddingBottom","paddingTop","MRT_TableDetailPanel","muiTableDetailPanelProps","muiTableBodyRowProps","onDetailPanelClick","mTableBodyRowProps","getToggleRowExpandedProps","mTableDetailPanelProps","hover","colSpan","visibleColumns","depth","paddingLeft","ExpandMoreIcon","MuiExpandMoreIcon","MRT_ExpandButton","expandButtonTitle","MRT_SelectCheckbox","onRowSelectChange","onSelectChange","getToggleRowSelectedProps","selectedFlatRows","selectCheckboxTitle","MRT_RowActionMenu","handleEdit","enableRowEditing","renderRowActionMenuItems","EditIcon","rowActionMenuItemEdit","EditActionButtonWrappers","MRT_EditActionButtons","onRowEditSubmit","handleCancel","original","handleSave","rowActionButtonCancel","CancelIcon","rowActionButtonSave","color","SaveIcon","MRT_ToggleRowActionMenuButton","renderRowActions","handleOpenRowActionMenu","placement","rowActionMenuButtonTitle","MoreHorizIcon","MuiTableRow","isSelected","theme","backgroundColor","alpha","palette","primary","light","MRT_TableBodyRow","onRowClick","getRowProps","cells","TableBody","MuiTableBody","overflowY","MRT_TableBody","muiTableBodyProps","manualPagination","page","tableBodyProps","getTableBodyProps","prepareRow","MRT_TableFooterCell","muiTableFooterCellProps","mTableFooterCellProps","mcTableFooterCellProps","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","Typography","i","MRT_ShowHideColumnsButton","showHideColumnsButtonTitle","ViewColumnIcon","index","MRT_DensePaddingSwitch","toggleDensePaddingSwitchTitle","MRT_ToggleSearchButton","handleToggleSearch","toggleSearchButtonTitle","SearchOffIcon","ToolbarButtonsContainer","MRT_ToolbarButtons","disableDensePaddingToggle","disableGlobalFilter","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","hideToolbarActions","muiTableToolbarTopProps","positionPagination","positionToolbarActions","renderToolbarActions","toolbarProps","includes","MRT_ToolbarBottom","muiTableToolbarBottomProps","CircularProgressWrapper","background","paper","MRT_TableContainer","muiTableContainerProps","hideToolbarTop","hideToolbarBottom","isLoading","isFetching","TableContainer","Paper","LinearProgress","CircularProgress","defaultLocalization","columnActionMenuItemGroupBy","columnActionMenuItemUnGroupBy","rowActionsColumnTitle","defaultColumn","minWidth","maxWidth","rest"],"mappings":"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"}
|