material-react-table 0.2.0 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (37) hide show
  1. package/dist/MaterialReactTable.d.ts +26 -25
  2. package/dist/head/MRT_TableHeadCell.d.ts +0 -1
  3. package/dist/index.d.ts +3 -1
  4. package/dist/material-react-table.cjs.development.js +147 -104
  5. package/dist/material-react-table.cjs.development.js.map +1 -1
  6. package/dist/material-react-table.cjs.production.min.js +1 -1
  7. package/dist/material-react-table.cjs.production.min.js.map +1 -1
  8. package/dist/material-react-table.esm.js +149 -106
  9. package/dist/material-react-table.esm.js.map +1 -1
  10. package/dist/useMaterialReactTable.d.ts +3 -4
  11. package/dist/utils/localization.d.ts +2 -0
  12. package/dist/utils/overrideWarnings.d.ts +1 -1
  13. package/package.json +1 -1
  14. package/src/MaterialReactTable.tsx +48 -43
  15. package/src/body/MRT_TableBody.tsx +3 -3
  16. package/src/body/MRT_TableBodyCell.tsx +21 -9
  17. package/src/body/MRT_TableBodyRow.tsx +8 -6
  18. package/src/body/MRT_TableDetailPanel.tsx +3 -3
  19. package/src/buttons/MRT_ExpandAllButton.tsx +2 -2
  20. package/src/buttons/MRT_ExpandButton.tsx +5 -2
  21. package/src/buttons/MRT_ToggleColumnActionMenuButton.tsx +2 -0
  22. package/src/footer/MRT_TableFooter.tsx +3 -3
  23. package/src/footer/MRT_TableFooterCell.tsx +3 -3
  24. package/src/footer/MRT_TableFooterRow.tsx +9 -5
  25. package/src/footer/MRT_TablePagination.tsx +7 -4
  26. package/src/head/MRT_TableHead.tsx +5 -5
  27. package/src/head/MRT_TableHeadCell.tsx +22 -16
  28. package/src/head/MRT_TableHeadRow.tsx +7 -9
  29. package/src/index.tsx +6 -1
  30. package/src/inputs/MRT_SearchTextField.tsx +16 -7
  31. package/src/inputs/MRT_SelectAllCheckbox.tsx +4 -1
  32. package/src/inputs/MRT_SelectCheckbox.tsx +1 -1
  33. package/src/menus/MRT_ColumnActionMenu.tsx +43 -23
  34. package/src/toolbar/MRT_Toolbar.tsx +3 -3
  35. package/src/useMaterialReactTable.tsx +24 -11
  36. package/src/utils/localization.ts +5 -1
  37. package/src/utils/overrideWarnings.ts +12 -12
@@ -1 +1 @@
1
- {"version":3,"file":"material-react-table.esm.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 usePagination,\n useResizeColumns,\n useRowSelect,\n useSortBy,\n useTable,\n} from 'react-table';\nimport { MaterialReactTableProps } from '.';\nimport { UseMRTCalcs, useMRTCalcs } from './utils/useMRTCalcs';\nimport { showOverrideWarnings } from './utils/overrideWarnings';\n\ninterface 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 surpressOverrideWarnings,\n ...rest\n}: PropsWithChildren<MaterialReactTableProps<D>>) => {\n const tableInstance = useTable(\n { columns, data },\n useFlexLayout,\n useResizeColumns,\n useFilters,\n useGlobalFilter,\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 //@ts-ignore\n value={{\n columns,\n data,\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';\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 { enableColumnHiding, enableSorting, 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 return (\n <Menu\n anchorEl={anchorEl}\n open={!!anchorEl}\n onClose={() => setAnchorEl(null)}\n >\n {enableSorting && (\n <>\n <MenuItem disabled={!column.isSorted} onClick={handleClearSort}>\n <ClearAllIcon /> {localization?.columnActionMenuItemClearSort}\n </MenuItem>\n <MenuItem\n disabled={column.isSorted && !column.isSortedDesc}\n onClick={handleSortAsc}\n >\n <SortIcon /> {localization?.columnActionMenuItemSortAsc}\n </MenuItem>\n <MenuItem\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 />\n </>\n )}\n {enableColumnHiding && (\n <MenuItem onClick={handleHideColumn}>\n <VisibilityOffIcon /> {localization?.columnActionMenuItemHideColumn}\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 '&: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,\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 alignItems: 'center',\n justifyContent: 'space-between',\n});\n\ninterface Props {\n column: HeaderGroup;\n index: number;\n}\n\nexport const MRT_TableHeadCell: FC<Props> = ({ column, index }) => {\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 const isLastColumn =\n (!isParentHeader && index === tableInstance.visibleColumns.length - 1) ||\n (isParentHeader && index === column.headers.length - 1);\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 <span {...column.getSortByToggleProps()}>\n {column.render('Header')}\n {!isParentHeader && column.canSort && (\n <TableSortLabel\n active={column.isSorted}\n direction={column.isSortedDesc ? 'desc' : 'asc'}\n />\n )}\n </span>\n <span style={{ display: 'flex' }}>\n {enableColumnActions && !isParentHeader && (\n <MRT_ToggleColumnActionMenuButton column={column} />\n )}\n {enableColumnResizing && !isLastColumn && (\n <Divider\n flexItem\n orientation=\"vertical\"\n style={{ borderRightWidth: '2px', borderRadius: '2px' }}\n onDoubleClick={() => tableInstance.resetResizing()}\n {...column.getResizerProps()}\n />\n )}\n </span>\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 aria-label='' {...tableInstance.getToggleAllPageRowsSelectedProps()} />\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 } =\n useMaterialReactTable();\n\n return (\n <TableCell\n size=\"small\"\n {...tableInstance.getToggleAllRowsExpandedProps()}\n style={{\n padding: '0.5rem',\n paddingRight: '0',\n width: `${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={`${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, index) => (\n <MRT_TableHeadCell\n key={`${index}-${column.id}`}\n column={column}\n index={index}\n />\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 { tableInstance, tablePaginationProps, 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 isReloading,\n positionPagination,\n } = useMaterialReactTable();\n\n if (OverrideTableHeadComponent) {\n return <>{OverrideTableHeadComponent(tableInstance)}</>;\n }\n\n return (\n <TableHead {...tableHeadProps}>\n {isReloading && <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 } 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 {\n tableInstance,\n OverrideTableBodyCellComponent,\n } = useMaterialReactTable();\n\n if (OverrideTableBodyCellComponent) {\n return <>{OverrideTableBodyCellComponent(cell, tableInstance)}</>;\n }\n\n return (\n <TableCell variant=\"body\" {...cell.getCellProps()}>\n {cell.render('Cell')}\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 } = 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: `${tableInstance.expandedDepth - row.depth + 2}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.state, 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 { TableCell, 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 <TableCell\n style={{ width: `${tableInstance.expandedDepth + 0.5}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={{ width: `${tableInstance.expandedDepth + 0.5}rem` }}\n />\n )}\n {enableSelection && <MRT_TableSpacerCell width=\"1rem\" />}\n {footerGroup.headers.map((column, index) => (\n <MRT_TableFooterCell key={`${index}-${column.id}`} column={column} />\n ))}\n {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 { tableInstance, tableSearchTextfieldProps, localization } = useMaterialReactTable();\n\n const [searchValue, setSearchValue] = useState('');\n\n const handleChange = useAsyncDebounce((value) => {\n tableInstance.setGlobalFilter(value ?? undefined);\n }, 200);\n\n const handleClear = () => {\n setSearchValue('');\n tableInstance.setGlobalFilter(undefined);\n };\n\n return (\n <TextField\n placeholder={localization?.searchTextFieldPlaceholder}\n onChange={(e: ChangeEvent<HTMLInputElement>) => {\n setSearchValue(e.target.value);\n handleChange(e.target.value);\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 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 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 Theme,\n ToolbarProps,\n TypographyProps,\n} from '@mui/material';\nimport {\n Cell,\n Column,\n HeaderGroup,\n Row,\n TableInstance,\n UseRowStateLocalState,\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 columns: Column<D | {}>[];\n data: D[];\n enableColumnActions?: 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 isLoading?: boolean;\n isReloading?: boolean;\n localization?: MRT_Localization;\n onRowClick?: (\n event: MouseEvent<HTMLTableRowElement>,\n rowData: Row<D>,\n ) => void;\n onRowSelectChange?: (\n event: ChangeEvent,\n rowState: UseRowStateLocalState<D, unknown>,\n selectedRows: Row<D>[],\n ) => void;\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 tableToolbarProps?: ToolbarProps;\n tableHeadProps?: TableHeadProps;\n tablePaginationProps?: TablePaginationProps;\n tableProps?: TableProps;\n tableSearchTextfieldProps?: TextFieldProps;\n tableTitleProps?: TypographyProps;\n theme?: Theme;\n title?: string | ReactNode;\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 OverrideTableFooterComponent?(tableInstance: TableInstance<D>): ReactNode;\n OverrideTableFooterCellComponent?(\n column: HeaderGroup<D>,\n tableInstance: TableInstance<D>,\n ): 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}\n\nexport const MaterialReactTable = <D extends {}>({\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 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","surpressOverrideWarnings","rest","useTable","useFlexLayout","useResizeColumns","useFilters","useGlobalFilter","useSortBy","useExpanded","usePagination","useRowSelect","mrtCalcs","process","env","NODE_ENV","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","enableSorting","handleClearSort","clearSortBy","handleSortAsc","toggleSortBy","handleSortDesc","handleHideColumn","toggleHidden","Menu","open","onClose","isSorted","ClearAllIcon","columnActionMenuItemClearSort","isSortedDesc","SortIcon","columnActionMenuItemSortAsc","style","transform","columnActionMenuItemSortDesc","Divider","VisibilityOffIcon","columnActionMenuItemHideColumn","MuiIconButton","opacity","transition","marginRight","MRT_ToggleColumnActionMenuButton","handleClick","event","preventDefault","currentTarget","columnActionMenuButtonTitle","MoreVertIcon","TableCell","MuiTableCell","fontWeight","TableCellContents","TableCellText","width","alignItems","justifyContent","MRT_TableHeadCell","index","OverrideTableHeadCellComponent","enableColumnActions","enableColumnResizing","enableFiltering","showFiltersInColumnHead","isParentHeader","isLastColumn","visibleColumns","headers","align","getHeaderProps","getSortByToggleProps","render","canSort","TableSortLabel","active","direction","flexItem","orientation","borderRightWidth","borderRadius","onDoubleClick","resetResizing","getResizerProps","canFilter","Collapse","MRT_SelectAllCheckbox","enableSelectAll","padding","Checkbox","getToggleAllPageRowsSelectedProps","MRT_ExpandAllButton","getToggleAllRowsExpandedProps","paddingRight","expandedDepth","expandAllButtonTitle","ArrowRightIcon","isAllRowsExpanded","MRT_ShowHideColumnsMenu","isMaxDepth","depth","paddingLeft","FormControlLabel","label","Header","checked","isVisible","control","Switch","Typography","map","c","i","key","id","MRT_ShowHideColumnsButton","showHideColumnsButtonTitle","ViewColumnIcon","MRT_TableSpacerCell","MRT_TableHeadRow","headerGroup","enableExpandAll","enableSelection","renderDetailPanel","h","TableRow","getHeaderGroupProps","MRT_TablePagination","tablePaginationProps","handleChangeRowsPerPage","setPageSize","gotoPage","TablePagination","colSpan","count","onPageChange","_","newPage","onRowsPerPageChange","page","state","pageIndex","rowsPerPage","pageSize","showFirstButton","showLastButton","MRT_TableHead","tableHeadProps","enablePagination","isReloading","positionPagination","TableHead","LinearProgress","includes","headerGroups","MRT_TableBodyCell","cell","getCellProps","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","height","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","searchValue","setSearchValue","setGlobalFilter","searchTextFieldPlaceholder","SearchIcon","searchTextFieldClearButtonTitle","Toolbar","MuiToolbar","MRT_Toolbar","enableSearch","tableTitleProps","tableToolbarProps","MRT_TableContainer","tableContainerProps","showToolbar","TableContainer","component","Paper","defaultLocalization","MaterialReactTable"],"mappings":"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"}
1
+ {"version":3,"file":"material-react-table.esm.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","env","NODE_ENV","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,10 +1,9 @@
1
1
  import React, { PropsWithChildren } from 'react';
2
2
  import { TableInstance } from 'react-table';
3
- import { MaterialReactTableProps } from '.';
3
+ import { MaterialReactTableProps } from './MaterialReactTable';
4
4
  import { UseMRTCalcs } from './utils/useMRTCalcs';
5
- interface UseMaterialReactTable<D extends {}> extends MaterialReactTableProps<D>, UseMRTCalcs {
5
+ export interface UseMaterialReactTable<D extends {}> extends MaterialReactTableProps<D>, UseMRTCalcs {
6
6
  tableInstance: TableInstance<D>;
7
7
  }
8
- export declare const MaterialReactTableProvider: <D extends {}>({ children, columns, data, surpressOverrideWarnings, ...rest }: React.PropsWithChildren<MaterialReactTableProps<D>>) => JSX.Element;
8
+ export declare const MaterialReactTableProvider: <D extends {}>({ children, columns, data, defaultColumn, getRowId, getSubRows, initialState, stateReducer, surpressoverrideWarnings, ...rest }: React.PropsWithChildren<MaterialReactTableProps<D>>) => JSX.Element;
9
9
  export declare const useMaterialReactTable: <D extends {}>() => UseMaterialReactTable<D>;
10
- export {};
@@ -4,6 +4,8 @@ export interface MRT_Localization {
4
4
  columnActionMenuItemSortAsc?: string;
5
5
  columnActionMenuItemClearSort?: string;
6
6
  columnActionMenuItemSortDesc?: string;
7
+ columnActionMenuItemGroupBy?: string;
8
+ columnActionMenuItemUnGroupBy?: string;
7
9
  expandAllButtonTitle?: string;
8
10
  expandButtonTitle?: string;
9
11
  filterTextFieldClearButtonTitle?: string;
@@ -1 +1 @@
1
- export declare const showOverrideWarnings: (props: any) => void;
1
+ export declare const showoverrideWarnings: (props: any) => void;
package/package.json CHANGED
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "0.2.0",
2
+ "version": "0.3.0",
3
3
  "license": "MIT",
4
4
  "name": "material-react-table",
5
5
  "description": "A fully featured Material-UI implementation of react-table, inspired by material-table and the mui DataGrid, written from the ground up in TypeScript.",
@@ -8,26 +8,24 @@ import {
8
8
  TablePaginationProps,
9
9
  TableProps,
10
10
  TextFieldProps,
11
- Theme,
12
11
  ToolbarProps,
13
12
  TypographyProps,
14
13
  } from '@mui/material';
15
14
  import {
16
15
  Cell,
17
- Column,
18
16
  HeaderGroup,
19
17
  Row,
20
18
  TableInstance,
21
- UseRowStateLocalState,
19
+ TableOptions,
22
20
  } from 'react-table';
23
21
  import { MaterialReactTableProvider } from './useMaterialReactTable';
24
22
  import { MRT_TableContainer } from './table/MRT_TableContainer';
25
23
  import { defaultLocalization, MRT_Localization } from './utils/localization';
26
24
 
27
- export interface MaterialReactTableProps<D extends {} = {}> {
28
- columns: Column<D | {}>[];
29
- data: D[];
25
+ export interface MaterialReactTableProps<D extends {} = {}>
26
+ extends TableOptions<D> {
30
27
  enableColumnActions?: boolean;
28
+ enableColumnGrouping?: boolean;
31
29
  enableColumnHiding?: boolean;
32
30
  enableColumnReordering?: boolean;
33
31
  enableColumnResizing?: boolean;
@@ -39,73 +37,79 @@ export interface MaterialReactTableProps<D extends {} = {}> {
39
37
  enableSelection?: boolean;
40
38
  enableSorting?: boolean;
41
39
  enableSubRowTree?: boolean;
40
+ isFetching?: boolean;
42
41
  isLoading?: boolean;
43
- isReloading?: boolean;
44
- localization?: MRT_Localization;
45
- onRowClick?: (
46
- event: MouseEvent<HTMLTableRowElement>,
47
- rowData: Row<D>,
42
+ localization?: Partial<MRT_Localization>;
43
+ onCellClick?: (
44
+ event: MouseEvent<HTMLTableCellElement>,
45
+ cell: Cell<D>,
46
+ ) => void;
47
+ onRowClick?: (event: MouseEvent<HTMLTableRowElement>, row: Row<D>) => void;
48
+ onRowExpandChange?: (
49
+ event: MouseEvent<HTMLButtonElement>,
50
+ row: Row<D>,
48
51
  ) => void;
49
52
  onRowSelectChange?: (
50
53
  event: ChangeEvent,
51
- rowState: UseRowStateLocalState<D, unknown>,
54
+ row: Row<D>,
52
55
  selectedRows: Row<D>[],
53
56
  ) => void;
54
- positionPagination?: 'bottom' | 'top' | 'both';
55
- renderDetailPanel?: (rowData: Row<D>) => ReactNode;
56
- showFiltersInColumnHead?: boolean;
57
- showFooter?: boolean;
58
- showHead?: boolean;
59
- showToolbar?: boolean;
60
- surpressOverrideWarnings?: boolean;
61
- tableBodyProps?: TableBodyProps;
62
- tableContainerProps?: TableContainerProps;
63
- tableDetailPanelProps?: TableCellProps;
64
- tableFooterProps?: TableFooterProps;
65
- tableToolbarProps?: ToolbarProps;
66
- tableHeadProps?: TableHeadProps;
67
- tablePaginationProps?: TablePaginationProps;
68
- tableProps?: TableProps;
69
- tableSearchTextfieldProps?: TextFieldProps;
70
- tableTitleProps?: TypographyProps;
71
- theme?: Theme;
72
- title?: string | ReactNode;
73
- OverrideTableBodyCellComponent?(
57
+ onSearchChange?: (event: ChangeEvent<HTMLInputElement>) => void;
58
+ overrideTableBodyCellComponent?(
74
59
  cell: Cell<D>,
75
60
  tableInstance: TableInstance<D>,
76
61
  ): ReactNode;
77
- OverrideTableBodyComponent?(tableInstance: TableInstance<D>): ReactNode;
78
- OverrideTableBodyRowComponent?(
62
+ overrideTableBodyComponent?(tableInstance: TableInstance<D>): ReactNode;
63
+ overrideTableBodyRowComponent?(
79
64
  row: Row<D>,
80
65
  tableInstance: TableInstance<D>,
81
66
  ): ReactNode;
82
- OverrideTableDetailPanelComponent?(
67
+ overrideTableDetailPanelComponent?(
83
68
  row: Row<D>,
84
69
  tableInstance: TableInstance<D>,
85
70
  ): ReactNode;
86
- OverrideTableFooterComponent?(tableInstance: TableInstance<D>): ReactNode;
87
- OverrideTableFooterCellComponent?(
71
+ overrideTableFooterCellComponent?(
88
72
  column: HeaderGroup<D>,
89
73
  tableInstance: TableInstance<D>,
90
74
  ): ReactNode;
91
- OverrideTableFooterRowComponent?(
75
+ overrideTableFooterComponent?(tableInstance: TableInstance<D>): ReactNode;
76
+ overrideTableFooterRowComponent?(
92
77
  footerGroup: HeaderGroup<D>,
93
78
  tableInstance: TableInstance<D>,
94
79
  ): ReactNode;
95
- OverrideTableHeadCellComponent?(
80
+ overrideTableHeadCellComponent?(
96
81
  column: HeaderGroup<D>,
97
82
  tableInstance: TableInstance<D>,
98
83
  ): ReactNode;
99
- OverrideTableHeadComponent?(tableInstance: TableInstance<D>): ReactNode;
100
- OverrideTableHeadRowComponent?(
84
+ overrideTableHeadComponent?(tableInstance: TableInstance<D>): ReactNode;
85
+ overrideTableHeadRowComponent?(
101
86
  headerGroup: HeaderGroup<D>,
102
87
  tableInstance: TableInstance<D>,
103
88
  ): ReactNode;
104
- OverrideTablePaginationComponent?(tableInstance: TableInstance<D>): ReactNode;
105
- OverrideTableToolbarComponent?(tableInstance: TableInstance<D>): ReactNode;
89
+ overrideTablePaginationComponent?(tableInstance: TableInstance<D>): ReactNode;
90
+ overrideTableToolbarComponent?(tableInstance: TableInstance<D>): ReactNode;
91
+ positionPagination?: 'bottom' | 'top' | 'both';
92
+ renderDetailPanel?: (rowData: Row<D>) => ReactNode;
93
+ showFiltersInColumnHead?: boolean;
94
+ showFooter?: boolean;
95
+ showHead?: boolean;
96
+ showToolbar?: boolean;
97
+ surpressoverrideWarnings?: boolean;
98
+ tableBodyProps?: TableBodyProps;
99
+ tableContainerProps?: TableContainerProps;
100
+ tableDetailPanelProps?: TableCellProps;
101
+ tableFooterProps?: TableFooterProps;
102
+ tableHeadProps?: TableHeadProps;
103
+ tablePaginationProps?: TablePaginationProps;
104
+ tableProps?: TableProps;
105
+ tableSearchTextfieldProps?: TextFieldProps;
106
+ tableTitleProps?: TypographyProps;
107
+ tableToolbarProps?: ToolbarProps;
108
+ title?: string | ReactNode;
106
109
  }
107
110
 
108
111
  export const MaterialReactTable = <D extends {}>({
112
+ defaultColumn = { minWidth: 50, maxWidth: 1000 },
109
113
  enablePagination = true,
110
114
  enableSorting = true,
111
115
  enableSubRowTree = true,
@@ -118,6 +122,7 @@ export const MaterialReactTable = <D extends {}>({
118
122
  ...rest
119
123
  }: MaterialReactTableProps<D>) => (
120
124
  <MaterialReactTableProvider
125
+ defaultColumn={defaultColumn}
121
126
  enablePagination={enablePagination}
122
127
  enableSorting={enableSorting}
123
128
  enableSubRowTree={enableSubRowTree}
@@ -30,11 +30,11 @@ export const MRT_TableBody: FC<Props> = () => {
30
30
  tableBodyProps,
31
31
  isLoading,
32
32
  enablePagination,
33
- OverrideTableBodyComponent,
33
+ overrideTableBodyComponent,
34
34
  } = useMaterialReactTable();
35
35
 
36
- if (OverrideTableBodyComponent) {
37
- return <>{OverrideTableBodyComponent(tableInstance)}</>;
36
+ if (overrideTableBodyComponent) {
37
+ return <>{overrideTableBodyComponent(tableInstance)}</>;
38
38
  }
39
39
 
40
40
  const rows = enablePagination ? tableInstance.page : tableInstance.rows;