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.
- package/dist/MaterialReactTable.d.ts +26 -25
- package/dist/head/MRT_TableHeadCell.d.ts +0 -1
- package/dist/index.d.ts +3 -1
- package/dist/material-react-table.cjs.development.js +147 -104
- package/dist/material-react-table.cjs.development.js.map +1 -1
- package/dist/material-react-table.cjs.production.min.js +1 -1
- package/dist/material-react-table.cjs.production.min.js.map +1 -1
- package/dist/material-react-table.esm.js +149 -106
- package/dist/material-react-table.esm.js.map +1 -1
- package/dist/useMaterialReactTable.d.ts +3 -4
- package/dist/utils/localization.d.ts +2 -0
- package/dist/utils/overrideWarnings.d.ts +1 -1
- package/package.json +1 -1
- package/src/MaterialReactTable.tsx +48 -43
- package/src/body/MRT_TableBody.tsx +3 -3
- package/src/body/MRT_TableBodyCell.tsx +21 -9
- package/src/body/MRT_TableBodyRow.tsx +8 -6
- package/src/body/MRT_TableDetailPanel.tsx +3 -3
- package/src/buttons/MRT_ExpandAllButton.tsx +2 -2
- package/src/buttons/MRT_ExpandButton.tsx +5 -2
- package/src/buttons/MRT_ToggleColumnActionMenuButton.tsx +2 -0
- package/src/footer/MRT_TableFooter.tsx +3 -3
- package/src/footer/MRT_TableFooterCell.tsx +3 -3
- package/src/footer/MRT_TableFooterRow.tsx +9 -5
- package/src/footer/MRT_TablePagination.tsx +7 -4
- package/src/head/MRT_TableHead.tsx +5 -5
- package/src/head/MRT_TableHeadCell.tsx +22 -16
- package/src/head/MRT_TableHeadRow.tsx +7 -9
- package/src/index.tsx +6 -1
- package/src/inputs/MRT_SearchTextField.tsx +16 -7
- package/src/inputs/MRT_SelectAllCheckbox.tsx +4 -1
- package/src/inputs/MRT_SelectCheckbox.tsx +1 -1
- package/src/menus/MRT_ColumnActionMenu.tsx +43 -23
- package/src/toolbar/MRT_Toolbar.tsx +3 -3
- package/src/useMaterialReactTable.tsx +24 -11
- package/src/utils/localization.ts +5 -1
- package/src/utils/overrideWarnings.ts +12 -12
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"material-react-table.cjs.production.min.js","sources":["../src/utils/useMRTCalcs.tsx","../src/useMaterialReactTable.tsx","../src/inputs/MRT_FilterTextField.tsx","../src/menus/MRT_ColumnActionMenu.tsx","../src/buttons/MRT_ToggleColumnActionMenuButton.tsx","../src/head/MRT_TableHeadCell.tsx","../src/inputs/MRT_SelectAllCheckbox.tsx","../src/buttons/MRT_ExpandAllButton.tsx","../src/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","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":["MaterialReactTableContext","createContext","MaterialReactTableProvider","children","columns","data","rest","tableInstance","useTable","useFlexLayout","useResizeColumns","useFilters","useGlobalFilter","useSortBy","useExpanded","usePagination","useRowSelect","mrtCalcs","anyRowsCanExpand","useMemo","rows","some","row","canExpand","anyRowsExpanded","isExpanded","maxColumnDepth","maxDepth","forEach","column","_column$columns","length","Math","max","useMRTCalcs","React","Provider","value","useMaterialReactTable","useContext","MRT_FilterTextfield","localization","useState","filterValue","setFilterValue","handleChange","useAsyncDebounce","setFilter","undefined","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","Menu","open","onClose","enableSorting","isSorted","clearSortBy","ClearAllIcon","columnActionMenuItemClearSort","isSortedDesc","toggleSortBy","SortIcon","columnActionMenuItemSortAsc","style","transform","columnActionMenuItemSortDesc","Divider","toggleHidden","VisibilityOffIcon","columnActionMenuItemHideColumn","MuiIconButton","opacity","transition","marginRight","MRT_ToggleColumnActionMenuButton","columnActionMenuButtonTitle","event","preventDefault","currentTarget","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","padding","enableSelectAll","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","OverrideTableHeadRowComponent","enableExpandAll","enableSelection","renderDetailPanel","h","_h$columns","TableRow","getHeaderGroupProps","MRT_TablePagination","tablePaginationProps","OverrideTablePaginationComponent","TablePagination","colSpan","count","onPageChange","_","newPage","gotoPage","onRowsPerPageChange","setPageSize","page","state","pageIndex","rowsPerPage","pageSize","showFirstButton","showLastButton","MRT_TableHead","OverrideTableHeadComponent","tableHeadProps","enablePagination","isReloading","positionPagination","TableHead","LinearProgress","includes","headerGroups","MRT_TableBodyCell","cell","OverrideTableBodyCellComponent","getCellProps","MRT_TableDetailPanel","OverrideTableDetailPanelComponent","tableDetailPanelProps","getToggleRowExpandedProps","borderBottom","paddingBottom","paddingTop","MRT_ExpandButton","expandButtonTitle","ExpandMoreIcon","MRT_SelectCheckbox","onRowSelectChange","getToggleRowSelectedProps","selectedFlatRows","MRT_TableBodyRow","OverrideTableBodyRowComponent","enableSubRowTree","onRowClick","getRowProps","cells","TableBody","MuiTableBody","overflowY","CircularProgressWrapper","backgroundColor","height","MRT_TableBody","tableBodyProps","isLoading","OverrideTableBodyComponent","getTableBodyProps","CircularProgress","prepareRow","MRT_TableFooterCell","OverrideTableFooterCellComponent","getFooterProps","MRT_TableFooterRow","footerGroup","OverrideTableFooterRowComponent","Footer","getFooterGroupProps","MRT_TableFooter","OverrideTableFooterComponent","tableFooterProps","TableFooter","footerGroups","MRT_Table","showHead","showFooter","Table","tableProps","getTableProps","MuiTextField","justifySelf","MRT_SearchTextField","tableSearchTextfieldProps","searchValue","setSearchValue","setGlobalFilter","searchTextFieldPlaceholder","SearchIcon","searchTextFieldClearButtonTitle","Toolbar","MuiToolbar","MRT_Toolbar","OverrideTableToolbarComponent","enableSearch","tableTitleProps","tableToolbarProps","MRT_TableContainer","showToolbar","TableContainer","component","Paper","tableContainerProps","defaultLocalization"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"material-react-table.cjs.production.min.js","sources":["../src/utils/useMRTCalcs.tsx","../src/useMaterialReactTable.tsx","../src/inputs/MRT_FilterTextField.tsx","../src/menus/MRT_ColumnActionMenu.tsx","../src/buttons/MRT_ToggleColumnActionMenuButton.tsx","../src/head/MRT_TableHeadCell.tsx","../src/inputs/MRT_SelectAllCheckbox.tsx","../src/buttons/MRT_ExpandAllButton.tsx","../src/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","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":["MaterialReactTableContext","createContext","MaterialReactTableProvider","children","columns","data","defaultColumn","getRowId","getSubRows","initialState","stateReducer","rest","tableInstance","useTable","useFlexLayout","useResizeColumns","useFilters","useGlobalFilter","useGroupBy","useSortBy","useExpanded","usePagination","useRowSelect","mrtCalcs","anyRowsCanExpand","useMemo","rows","some","row","canExpand","anyRowsExpanded","isExpanded","maxColumnDepth","maxDepth","forEach","column","_column$columns","length","Math","max","useMRTCalcs","React","Provider","value","useMaterialReactTable","useContext","MRT_FilterTextfield","localization","useState","filterValue","setFilterValue","handleChange","useAsyncDebounce","setFilter","undefined","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","handleGroupByColumn","toggleGroupBy","Menu","open","onClose","enableSorting","key","isSorted","clearSortBy","ClearAllIcon","columnActionMenuItemClearSort","isSortedDesc","toggleSortBy","SortIcon","columnActionMenuItemSortAsc","style","transform","columnActionMenuItemSortDesc","Divider","toggleHidden","VisibilityOffIcon","columnActionMenuItemHideColumn","canGroupBy","isGrouped","DynamicFeedIcon","columnActionMenuItemGroupBy","columnActionMenuItemUnGroupBy","MuiIconButton","opacity","transition","marginRight","height","width","MRT_ToggleColumnActionMenuButton","columnActionMenuButtonTitle","event","preventDefault","currentTarget","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","padding","enableSelectAll","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","overrideTableHeadRowComponent","enableExpandAll","enableSelection","headers","h","_h$columns","TableRow","getHeaderGroupProps","MRT_TablePagination","tablePaginationProps","overrideTablePaginationComponent","TablePagination","colSpan","visibleColumns","count","onPageChange","_","newPage","gotoPage","onRowsPerPageChange","setPageSize","page","state","pageIndex","rowsPerPage","pageSize","showFirstButton","showLastButton","MRT_TableHead","overrideTableHeadComponent","tableHeadProps","enablePagination","isFetching","positionPagination","TableHead","LinearProgress","includes","headerGroups","MRT_TableBodyCell","cell","overrideTableBodyCellComponent","onCellClick","getCellProps","isPlaceholder","isAggregated","subRows","MRT_TableDetailPanel","overrideTableDetailPanelComponent","tableDetailPanelProps","getToggleRowExpandedProps","borderBottom","paddingBottom","paddingTop","MRT_ExpandButton","expandButtonTitle","ExpandMoreIcon","MRT_SelectCheckbox","onRowSelectChange","getToggleRowSelectedProps","selectedFlatRows","MRT_TableBodyRow","overrideTableBodyRowComponent","enableSubRowTree","onRowClick","getRowProps","cells","TableBody","MuiTableBody","overflowY","CircularProgressWrapper","backgroundColor","MRT_TableBody","tableBodyProps","isLoading","overrideTableBodyComponent","getTableBodyProps","CircularProgress","prepareRow","MRT_TableFooterCell","overrideTableFooterCellComponent","getFooterProps","MRT_TableFooterRow","footerGroup","overrideTableFooterRowComponent","Footer","getFooterGroupProps","MRT_TableFooter","overrideTableFooterComponent","tableFooterProps","TableFooter","footerGroups","MRT_Table","showHead","showFooter","Table","tableProps","getTableProps","MuiTextField","justifySelf","MRT_SearchTextField","tableSearchTextfieldProps","onSearchChange","searchValue","setSearchValue","setGlobalFilter","searchTextFieldPlaceholder","SearchIcon","searchTextFieldClearButtonTitle","Toolbar","MuiToolbar","MRT_Toolbar","overrideTableToolbarComponent","enableSearch","tableTitleProps","tableToolbarProps","MRT_TableContainer","showToolbar","TableContainer","component","Paper","tableContainerProps","defaultLocalization","minWidth","maxWidth"],"mappings":"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"}
|