material-react-table 0.5.4 → 0.5.5

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.
@@ -1 +1 @@
1
- {"version":3,"file":"material-react-table.cjs.development.js","sources":["../src/filtersFNs.ts","../src/useMRT.tsx","../src/menus/MRT_FilterMenu.tsx","../src/inputs/MRT_FilterTextField.tsx","../src/menus/MRT_ColumnActionMenu.tsx","../src/buttons/MRT_ToggleColumnActionMenuButton.tsx","../src/head/MRT_TableHeadCell.tsx","../src/inputs/MRT_EditCellTextField.tsx","../src/body/MRT_TableBodyCell.tsx","../src/inputs/MRT_SelectCheckbox.tsx","../src/buttons/MRT_ExpandAllButton.tsx","../src/table/MRT_TableSpacerCell.tsx","../src/head/MRT_TableHeadCellActions.tsx","../src/head/MRT_TableHeadRow.tsx","../src/head/MRT_TableHead.tsx","../src/body/MRT_TableDetailPanel.tsx","../src/buttons/MRT_ExpandButton.tsx","../src/menus/MRT_RowActionMenu.tsx","../node_modules/regenerator-runtime/runtime.js","../src/buttons/MRT_EditActionButtons.tsx","../src/buttons/MRT_ToggleRowActionMenuButton.tsx","../src/body/MRT_TableBodyRow.tsx","../src/body/MRT_TableBody.tsx","../src/footer/MRT_TableFooterCell.tsx","../src/footer/MRT_TableFooterRow.tsx","../src/footer/MRT_TableFooter.tsx","../src/table/MRT_Table.tsx","../src/inputs/MRT_SearchTextField.tsx","../src/buttons/MRT_FullScreenToggleButton.tsx","../src/menus/MRT_ShowHideColumnsMenu.tsx","../src/buttons/MRT_ShowHideColumnsButton.tsx","../src/buttons/MRT_ToggleDensePaddingButton.tsx","../src/buttons/MRT_ToggleFiltersButton.tsx","../src/buttons/MRT_ToggleSearchButton.tsx","../src/toolbar/MRT_ToolbarInternalButtons.tsx","../src/toolbar/MRT_TablePagination.tsx","../src/toolbar/MRT_ToolbarAlertBanner.tsx","../src/toolbar/MRT_ToolbarTop.tsx","../src/toolbar/MRT_ToolbarBottom.tsx","../src/table/MRT_TableContainer.tsx","../src/localization.ts","../src/icons.tsx","../src/MaterialReactTable.tsx"],"sourcesContent":["import { matchSorter } from 'match-sorter';\nimport { MRT_Row } from '.';\n\nexport const fuzzyFilterFN = (\n rows: MRT_Row[],\n id: string,\n filterValue: string | number,\n) =>\n matchSorter(rows, filterValue.toString().trim(), {\n keys: [`values.${id}`],\n sorter: (rankedItems) => rankedItems,\n });\n\nfuzzyFilterFN.autoRemove = (val: any) => !val;\n\nexport const containsFilterFN = (\n rows: MRT_Row[],\n id: string,\n filterValue: string | number,\n) =>\n rows.filter((row) =>\n row.values[id]\n .toString()\n .toLowerCase()\n .trim()\n .includes(filterValue.toString().toLowerCase().trim()),\n );\n\ncontainsFilterFN.autoRemove = (val: any) => !val;\n\nexport const startsWithFilterFN = (\n rows: MRT_Row[],\n id: string,\n filterValue: string | number,\n) =>\n rows.filter((row) =>\n row.values[id]\n .toString()\n .toLowerCase()\n .trim()\n .startsWith(filterValue.toString().toLowerCase().trim()),\n );\n\nstartsWithFilterFN.autoRemove = (val: any) => !val;\n\nexport const endsWithFilterFN = (\n rows: MRT_Row[],\n id: string,\n filterValue: string | number,\n) =>\n rows.filter((row) =>\n row.values[id]\n .toString()\n .toLowerCase()\n .trim()\n .endsWith(filterValue.toString().toLowerCase().trim()),\n );\n\nendsWithFilterFN.autoRemove = (val: any) => !val;\n\nexport const equalsFilterFN = (\n rows: MRT_Row[],\n id: string,\n filterValue: string | number,\n) =>\n rows.filter(\n (row) =>\n row.values[id].toString().toLowerCase().trim() ===\n filterValue.toString().toLowerCase().trim(),\n );\n\nequalsFilterFN.autoRemove = (val: any) => !val;\n\nexport const notEqualsFilterFN = (\n rows: MRT_Row[],\n id: string,\n filterValue: string | number,\n) =>\n rows.filter(\n (row) =>\n row.values[id].toString().toLowerCase().trim() !==\n filterValue.toString().toLowerCase().trim(),\n );\n\nnotEqualsFilterFN.autoRemove = (val: any) => !val;\n\nexport const emptyFilterFN = (\n rows: MRT_Row[],\n id: string,\n _filterValue: string | number,\n) => rows.filter((row) => !row.values[id].toString().toLowerCase().trim());\n\nemptyFilterFN.autoRemove = (val: any) => !val;\n\nexport const notEmptyFilterFN = (\n rows: MRT_Row[],\n id: string,\n _filterValue: string | number,\n) => rows.filter((row) => !!row.values[id].toString().toLowerCase().trim());\n\nnotEmptyFilterFN.autoRemove = (val: any) => !val;\n\nexport const defaultFilterFNs = {\n contains: containsFilterFN,\n empty: emptyFilterFN,\n endsWith: endsWithFilterFN,\n equals: equalsFilterFN,\n fuzzy: fuzzyFilterFN,\n notEmpty: notEmptyFilterFN,\n notEquals: notEqualsFilterFN,\n startsWith: startsWithFilterFN,\n};\n","import React, {\n Context,\n PropsWithChildren,\n createContext,\n useContext,\n useMemo,\n useState,\n Dispatch,\n SetStateAction,\n} from 'react';\nimport {\n PluginHook,\n useExpanded,\n useFilters,\n useFlexLayout,\n useGlobalFilter,\n useGroupBy,\n usePagination,\n useResizeColumns,\n useRowSelect,\n useSortBy,\n useTable,\n} from 'react-table';\nimport { MRT_FilterType, MRT_Row, MRT_TableInstance } from '.';\nimport { defaultFilterFNs } from './filtersFNs';\nimport { MRT_Icons } from './icons';\nimport { MRT_Localization } from './localization';\nimport { MaterialReactTableProps } from './MaterialReactTable';\n\nexport type UseMRT<D extends {} = {}> = MaterialReactTableProps<D> & {\n anyRowsCanExpand: boolean;\n anyRowsExpanded: boolean;\n icons: MRT_Icons;\n idPrefix: string;\n localization: MRT_Localization;\n setCurrentEditingRow: Dispatch<SetStateAction<MRT_Row<D> | null>>;\n setCurrentFilterTypes: Dispatch<\n SetStateAction<{\n [key: string]: MRT_FilterType;\n }>\n >;\n setDensePadding: Dispatch<SetStateAction<boolean>>;\n setFullScreen: Dispatch<SetStateAction<boolean>>;\n setShowFilters: Dispatch<SetStateAction<boolean>>;\n setShowSearch: Dispatch<SetStateAction<boolean>>;\n tableInstance: MRT_TableInstance<D>;\n};\n\nconst MaterialReactTableContext = (<D extends {} = {}>() =>\n createContext<UseMRT<D>>({} as UseMRT<D>) as Context<UseMRT<D>>)();\n\nexport const MaterialReactTableProvider = <D extends {} = {}>(\n props: PropsWithChildren<MaterialReactTableProps<D>>,\n) => {\n const hooks: PluginHook<D>[] = [\n useFilters,\n useGlobalFilter,\n useGroupBy,\n useSortBy,\n useExpanded,\n usePagination,\n useRowSelect,\n ];\n\n if (props.enableColumnResizing)\n hooks.unshift(useResizeColumns, useFlexLayout);\n\n const [currentEditingRow, setCurrentEditingRow] = useState<MRT_Row<D> | null>(\n null,\n );\n const [densePadding, setDensePadding] = useState(\n props.initialState?.densePadding ?? false,\n );\n const [fullScreen, setFullScreen] = useState(\n props.initialState?.fullScreen ?? false,\n );\n const [showFilters, setShowFilters] = useState(\n props.initialState?.showFilters ?? false,\n );\n const [showSearch, setShowSearch] = useState(\n props.initialState?.showSearch ?? false,\n );\n\n const filterTypes = useMemo<Partial<{ [key in MRT_FilterType]: any }>>(\n () => ({\n ...defaultFilterFNs,\n ...props.filterTypes,\n }),\n [props.filterTypes],\n );\n\n const [currentFilterTypes, setCurrentFilterTypes] = useState<{\n [key: string]: MRT_FilterType;\n }>(() =>\n Object.assign(\n {},\n ...props.columns\n .map((c) => c.accessor?.toString() as string)\n .map((accessor) => ({\n [accessor]:\n props?.initialState?.filters?.[accessor as any] ?? 'fuzzy',\n })),\n ),\n );\n\n const columns = useMemo(\n () =>\n props.columns.map((column) => {\n column.filter =\n filterTypes[currentFilterTypes[column.accessor as string]];\n return column;\n }),\n [props.columns, filterTypes, currentFilterTypes],\n );\n\n const tableInstance = useTable(\n {\n ...props,\n columns,\n // @ts-ignore\n filterTypes,\n useControlledState: (state) =>\n useMemo(\n () => ({\n ...state,\n currentEditingRow,\n currentFilterTypes,\n densePadding,\n fullScreen,\n showFilters,\n showSearch,\n //@ts-ignore\n ...props?.useControlledState?.(state),\n }),\n [\n currentEditingRow,\n currentFilterTypes,\n densePadding,\n fullScreen,\n showFilters,\n showSearch,\n state,\n ],\n ),\n },\n ...hooks,\n ) as MRT_TableInstance<D>;\n\n const idPrefix = useMemo(\n () => props.idPrefix ?? Math.random().toString(36).substring(2, 9),\n [props.idPrefix],\n );\n const anyRowsCanExpand = useMemo(\n () => tableInstance.rows.some((row) => row.canExpand),\n [tableInstance.rows],\n );\n const anyRowsExpanded = useMemo(\n () => tableInstance.rows.some((row) => row.isExpanded),\n [tableInstance.rows],\n );\n\n return (\n <MaterialReactTableContext.Provider\n value={{\n ...props,\n anyRowsCanExpand,\n anyRowsExpanded,\n idPrefix,\n //@ts-ignore\n setCurrentEditingRow,\n setCurrentFilterTypes,\n setDensePadding,\n setFullScreen,\n setShowFilters,\n setShowSearch,\n //@ts-ignore\n tableInstance,\n }}\n >\n {props.children}\n </MaterialReactTableContext.Provider>\n );\n};\n\nexport const useMRT = <D extends {} = {}>(): UseMRT<D> =>\n useContext<UseMRT<D>>(\n MaterialReactTableContext as unknown as Context<UseMRT<D>>,\n );\n","import React, { FC, useMemo } from 'react';\nimport { Divider, Menu, MenuItem, Typography } from '@mui/material';\nimport { useMRT } from '../useMRT';\nimport { MRT_FilterType, MRT_HeaderGroup } from '..';\n\ninterface Props {\n anchorEl: HTMLElement | null;\n column: MRT_HeaderGroup;\n setAnchorEl: (anchorEl: HTMLElement | null) => void;\n onSelect?: () => void;\n}\n\nexport const MRT_FilterMenu: FC<Props> = ({\n anchorEl,\n column,\n onSelect,\n setAnchorEl,\n}) => {\n const { localization, setCurrentFilterTypes, tableInstance } = useMRT();\n\n const filterTypes: {\n type: MRT_FilterType;\n label: string;\n divider: boolean;\n }[] = useMemo(\n () => [\n {\n type: 'fuzzy',\n label: localization.filterMenuItemFuzzy,\n divider: false,\n },\n {\n type: 'contains',\n label: localization.filterMenuItemContains,\n divider: true,\n },\n {\n type: 'startsWith',\n label: localization.filterMenuItemStartsWith,\n divider: false,\n },\n {\n type: 'endsWith',\n label: localization.filterMenuItemEndsWith,\n divider: true,\n },\n {\n type: 'equals',\n label: localization.filterMenuItemEquals,\n divider: false,\n },\n {\n type: 'notEquals',\n label: localization.filterMenuItemNotEquals,\n divider: true,\n },\n {\n type: 'empty',\n label: localization.filterMenuItemEmpty,\n divider: false,\n },\n {\n type: 'notEmpty',\n label: localization.filterMenuItemNotEmpty,\n divider: false,\n },\n ],\n [],\n );\n\n const handleSelectMenuItem = (value: MRT_FilterType) => {\n setAnchorEl(null);\n setCurrentFilterTypes((prev: { [key: string]: MRT_FilterType }) => ({\n ...prev,\n [column.id]: value,\n }));\n if (['empty', 'notEmpty'].includes(value)) {\n column.setFilter(' ');\n }\n onSelect?.();\n };\n\n const filterType = tableInstance.state.currentFilterTypes[column.id];\n\n return (\n <Menu\n anchorEl={anchorEl}\n open={!!anchorEl}\n anchorOrigin={{ vertical: 'center', horizontal: 'right' }}\n onClose={() => setAnchorEl(null)}\n >\n <Typography sx={{ fontWeight: 'bold', p: '1rem', fontSize: '1.1rem' }}>\n {localization.filterMenuTitle}\n </Typography>\n <Divider />\n {filterTypes.map(({ type, label, divider }) => (\n <MenuItem\n divider={divider}\n key={type}\n onClick={() => handleSelectMenuItem(type)}\n selected={type === filterType}\n value={type}\n >\n {label}\n </MenuItem>\n ))}\n </Menu>\n );\n};\n","import React, { ChangeEvent, FC, MouseEvent, useState } from 'react';\nimport {\n Chip,\n IconButton,\n InputAdornment,\n TextField,\n TextFieldProps,\n Tooltip,\n} from '@mui/material';\nimport { useAsyncDebounce } from 'react-table';\nimport { useMRT } from '../useMRT';\nimport { MRT_HeaderGroup } from '..';\nimport { MRT_FilterMenu } from '../menus/MRT_FilterMenu';\n\ninterface Props {\n column: MRT_HeaderGroup;\n}\n\nexport const MRT_FilterTextField: FC<Props> = ({ column }) => {\n const {\n icons: { FilterListIcon, CloseIcon },\n idPrefix,\n localization,\n muiTableHeadCellFilterTextFieldProps,\n setCurrentFilterTypes,\n tableInstance,\n } = useMRT();\n\n const [anchorEl, setAnchorEl] = useState<null | HTMLElement>(null);\n\n const mTableHeadCellFilterTextFieldProps =\n muiTableHeadCellFilterTextFieldProps instanceof Function\n ? muiTableHeadCellFilterTextFieldProps(column)\n : muiTableHeadCellFilterTextFieldProps;\n\n const mcTableHeadCellFilterTextFieldProps =\n column.muiTableHeadCellFilterTextFieldProps instanceof Function\n ? column.muiTableHeadCellFilterTextFieldProps(column)\n : column.muiTableHeadCellFilterTextFieldProps;\n\n const textFieldProps = {\n ...mTableHeadCellFilterTextFieldProps,\n ...mcTableHeadCellFilterTextFieldProps,\n style: {\n ...mTableHeadCellFilterTextFieldProps?.style,\n ...mcTableHeadCellFilterTextFieldProps?.style,\n },\n } as TextFieldProps;\n\n const [filterValue, setFilterValue] = useState('');\n\n const handleChange = useAsyncDebounce((value) => {\n column.setFilter(value ?? undefined);\n }, 150);\n\n const handleFilterMenuOpen = (event: MouseEvent<HTMLElement>) => {\n setAnchorEl(event.currentTarget);\n };\n\n const handleClear = () => {\n setFilterValue('');\n column.setFilter(undefined);\n };\n\n const handleClearFilterChip = () => {\n setFilterValue('');\n column.setFilter(undefined);\n setCurrentFilterTypes((prev) => ({ ...prev, [column.id]: 'fuzzy' }));\n };\n\n if (column.Filter) {\n return <>{column.Filter?.({ column })}</>;\n }\n\n const filterType = tableInstance.state.currentFilterTypes[column.id];\n const showFilterChip = ['empty', 'notEmpty'].includes(filterType);\n const filterPlaceholder = localization.filterTextFieldPlaceholder?.replace(\n '{column}',\n String(column.Header),\n );\n\n return (\n <>\n <TextField\n fullWidth\n id={`mrt-${idPrefix}-${column.id}-filter-text-field`}\n inputProps={{\n sx: {\n textOverflow: 'ellipsis',\n },\n title: filterPlaceholder,\n }}\n margin=\"none\"\n placeholder={showFilterChip ? '' : filterPlaceholder}\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 <Tooltip arrow title=\"Change Filter Mode\">\n <IconButton\n onClick={handleFilterMenuOpen}\n size=\"small\"\n sx={{ height: '1.75rem', width: '1.75rem' }}\n >\n <FilterListIcon />\n </IconButton>\n </Tooltip>\n {showFilterChip && (\n <Chip onDelete={handleClearFilterChip} label={filterType} />\n )}\n </InputAdornment>\n ),\n endAdornment: !showFilterChip && (\n <InputAdornment position=\"end\">\n <Tooltip\n arrow\n placement=\"right\"\n title={localization.filterTextFieldClearButtonTitle ?? ''}\n >\n <span>\n <IconButton\n aria-label={localization.filterTextFieldClearButtonTitle}\n disabled={filterValue?.length === 0}\n onClick={handleClear}\n size=\"small\"\n sx={{ height: '1.75rem', width: '1.75rem' }}\n >\n <CloseIcon fontSize=\"small\" />\n </IconButton>\n </span>\n </Tooltip>\n </InputAdornment>\n ),\n }}\n {...textFieldProps}\n sx={{\n minWidth: '6rem',\n ...textFieldProps?.sx,\n }}\n />\n <MRT_FilterMenu\n anchorEl={anchorEl}\n column={column}\n setAnchorEl={setAnchorEl}\n />\n </>\n );\n};\n","import React, { FC, useState } from 'react';\nimport {\n Divider,\n IconButton,\n ListItemIcon,\n ListItemText,\n Menu,\n MenuItem,\n MenuList,\n} from '@mui/material';\nimport { useMRT } from '../useMRT';\nimport { MRT_HeaderGroup } from '..';\nimport { MRT_FilterMenu } from './MRT_FilterMenu';\nimport ArrowRightIcon from '@mui/icons-material/ArrowRight';\n\ninterface Props {\n anchorEl: HTMLElement | null;\n column: MRT_HeaderGroup;\n setAnchorEl: (anchorEl: HTMLElement | null) => void;\n}\n\nexport const MRT_ColumnActionMenu: FC<Props> = ({\n anchorEl,\n column,\n setAnchorEl,\n}) => {\n const {\n disableColumnHiding,\n disableFilters,\n disableSortBy,\n enableColumnGrouping,\n icons: {\n ClearAllIcon,\n DynamicFeedIcon,\n FilterListIcon,\n SortIcon,\n VisibilityOffIcon,\n },\n idPrefix,\n localization,\n setShowFilters,\n } = useMRT();\n\n const [filterMenuAnchorEl, setFilterMenuAnchorEl] =\n useState<null | HTMLElement>(null);\n\n const handleClearSort = () => {\n column.clearSortBy();\n setAnchorEl(null);\n };\n\n const handleSortAsc = () => {\n column.toggleSortBy(false);\n setAnchorEl(null);\n };\n\n const handleSortDesc = () => {\n column.toggleSortBy(true);\n setAnchorEl(null);\n };\n\n const handleHideColumn = () => {\n column.toggleHidden();\n setAnchorEl(null);\n };\n\n const handleGroupByColumn = () => {\n column.toggleGroupBy();\n setAnchorEl(null);\n };\n\n const handleFilterByColumn = () => {\n setShowFilters(true);\n setTimeout(\n () =>\n document\n .getElementById(\n // @ts-ignore\n column.muiTableHeadCellFilterTextFieldProps?.id ??\n `mrt-${idPrefix}-${column.id}-filter-text-field`,\n )\n ?.focus(),\n 200,\n );\n setAnchorEl(null);\n };\n\n const handleOpenFilterModeMenu = (event: React.MouseEvent<HTMLElement>) => {\n event.stopPropagation();\n setFilterMenuAnchorEl(event.currentTarget);\n };\n\n return (\n <Menu\n anchorEl={anchorEl}\n open={!!anchorEl}\n onClose={() => setAnchorEl(null)}\n >\n <MenuList>\n {!disableSortBy &&\n column.canSort && [\n <MenuItem\n key={1}\n disabled={!column.isSorted}\n onClick={handleClearSort}\n >\n <ListItemIcon>\n <ClearAllIcon />\n </ListItemIcon>\n <ListItemText>\n {localization.columnActionMenuItemClearSort}\n </ListItemText>\n </MenuItem>,\n <MenuItem\n key={2}\n disabled={column.isSorted && !column.isSortedDesc}\n onClick={handleSortAsc}\n >\n <ListItemIcon>\n <SortIcon />\n </ListItemIcon>\n <ListItemText>\n {localization.columnActionMenuItemSortAsc?.replace(\n '{column}',\n String(column.Header),\n )}\n </ListItemText>\n </MenuItem>,\n <MenuItem\n key={3}\n disabled={column.isSorted && column.isSortedDesc}\n onClick={handleSortDesc}\n >\n <ListItemIcon>\n <SortIcon style={{ transform: 'rotate(180deg) scaleX(-1)' }} />\n </ListItemIcon>\n <ListItemText>\n {localization.columnActionMenuItemSortDesc?.replace(\n '{column}',\n String(column.Header),\n )}\n </ListItemText>\n </MenuItem>,\n ]}\n {!disableFilters &&\n column.canFilter && [\n <Divider key={0} />,\n <MenuItem key={1} onClick={handleFilterByColumn}>\n <ListItemIcon>\n <FilterListIcon />\n </ListItemIcon>\n <ListItemText>\n {localization.filterTextFieldPlaceholder?.replace(\n '{column}',\n String(column.Header),\n )}\n </ListItemText>\n <IconButton size=\"small\" onMouseEnter={handleOpenFilterModeMenu}>\n <ArrowRightIcon />\n </IconButton>\n </MenuItem>,\n <MRT_FilterMenu\n anchorEl={filterMenuAnchorEl}\n column={column}\n key={2}\n setAnchorEl={setFilterMenuAnchorEl}\n onSelect={handleFilterByColumn}\n />,\n ]}\n {enableColumnGrouping &&\n column.canGroupBy && [\n <Divider key={1} />,\n <MenuItem key={2} onClick={handleGroupByColumn}>\n <ListItemIcon>\n <DynamicFeedIcon />\n </ListItemIcon>\n <ListItemText>\n {localization[\n column.isGrouped\n ? 'columnActionMenuItemUnGroupBy'\n : 'columnActionMenuItemGroupBy'\n ]?.replace('{column}', String(column.Header))}\n </ListItemText>\n </MenuItem>,\n ]}\n {!disableColumnHiding && [\n <Divider key={0} />,\n <MenuItem key={1} onClick={handleHideColumn}>\n <ListItemIcon>\n <VisibilityOffIcon />\n </ListItemIcon>\n <ListItemText>\n {localization.columnActionMenuItemHideColumn?.replace(\n '{column}',\n String(column.Header),\n )}\n </ListItemText>\n </MenuItem>,\n ]}\n </MenuList>\n </Menu>\n );\n};\n","import React, { FC, MouseEvent, useState } from 'react';\nimport { IconButton, Tooltip } from '@mui/material';\nimport { useMRT } from '../useMRT';\nimport { MRT_ColumnActionMenu } from '../menus/MRT_ColumnActionMenu';\nimport { MRT_HeaderGroup } from '..';\n\ninterface Props {\n column: MRT_HeaderGroup;\n}\n\nexport const MRT_ToggleColumnActionMenuButton: FC<Props> = ({ column }) => {\n const {\n localization,\n icons: { MoreVertIcon },\n } = useMRT();\n\n const [anchorEl, setAnchorEl] = useState<null | HTMLElement>(null);\n\n const handleClick = (event: MouseEvent<HTMLElement>) => {\n event.stopPropagation();\n event.preventDefault();\n setAnchorEl(event.currentTarget);\n };\n\n return (\n <>\n <Tooltip\n arrow\n enterDelay={1000}\n enterNextDelay={1000}\n title={localization.columnActionMenuButtonTitle}\n >\n <IconButton\n aria-label={localization.columnActionMenuButtonTitle}\n onClick={handleClick}\n size=\"small\"\n sx={{\n height: '2rem',\n mr: '2px',\n mt: '-0.2rem',\n opacity: 0.5,\n transition: 'opacity 0.2s',\n width: '2rem',\n '&:hover': {\n opacity: 1,\n },\n }}\n >\n <MoreVertIcon />\n </IconButton>\n </Tooltip>\n <MRT_ColumnActionMenu\n anchorEl={anchorEl}\n column={column}\n setAnchorEl={setAnchorEl}\n />\n </>\n );\n};\n","import React, { FC } from 'react';\nimport {\n TableCell,\n TableSortLabel,\n Divider,\n Collapse,\n Tooltip,\n Box,\n} from '@mui/material';\nimport { useMRT } from '../useMRT';\nimport { MRT_FilterTextField } from '../inputs/MRT_FilterTextField';\nimport { MRT_ToggleColumnActionMenuButton } from '../buttons/MRT_ToggleColumnActionMenuButton';\nimport { MRT_HeaderGroup } from '..';\n\nexport const commonTableHeadCellStyles = (\n densePadding: boolean,\n enableColumnResizing?: boolean,\n) => ({\n fontWeight: 'bold',\n height: '100%',\n p: densePadding ? '0.5rem' : '1rem',\n pt: densePadding ? '0.75rem' : '1.25rem',\n transition: `all ${enableColumnResizing ? '10ms' : '0.2s'} ease-in-out`,\n verticalAlign: 'text-top',\n});\n\ninterface Props {\n column: MRT_HeaderGroup;\n}\n\nexport const MRT_TableHeadCell: FC<Props> = ({ column }) => {\n const {\n disableColumnActions,\n disableFilters,\n enableColumnResizing,\n localization,\n muiTableHeadCellProps,\n tableInstance,\n } = useMRT();\n\n const isParentHeader = (column?.columns?.length ?? 0) > 0;\n\n const mTableHeadCellProps =\n muiTableHeadCellProps instanceof Function\n ? muiTableHeadCellProps(column)\n : muiTableHeadCellProps;\n\n const mcTableHeadCellProps =\n column.muiTableHeadCellProps instanceof Function\n ? column.muiTableHeadCellProps(column)\n : column.muiTableHeadCellProps;\n\n const tableCellProps = {\n ...mTableHeadCellProps,\n ...mcTableHeadCellProps,\n ...column.getHeaderProps(),\n style: {\n ...column.getHeaderProps().style,\n ...mTableHeadCellProps?.style,\n ...mcTableHeadCellProps?.style,\n },\n };\n\n const sortTooltip = column.isSorted\n ? column.isSortedDesc\n ? localization.columnActionMenuItemClearSort\n : localization.columnActionMenuItemSortDesc?.replace(\n '{column}',\n column.Header as string,\n )\n : localization.columnActionMenuItemSortAsc?.replace(\n '{column}',\n column.Header as string,\n );\n\n const columnHeader = column.render('Header') as string;\n\n return (\n <TableCell\n align={isParentHeader ? 'center' : 'left'}\n {...tableCellProps}\n sx={{\n ...commonTableHeadCellStyles(\n tableInstance.state.densePadding,\n enableColumnResizing,\n ),\n ...tableCellProps?.sx,\n }}\n >\n <Box\n sx={{\n alignItems: 'flex-start',\n display: 'flex',\n justifyContent: isParentHeader ? 'center' : 'space-between',\n width: '100%',\n }}\n >\n <Box\n {...column.getSortByToggleProps()}\n sx={{\n alignItems: 'center',\n display: 'flex',\n flexWrap: 'nowrap',\n whiteSpace: columnHeader.length < 15 ? 'nowrap' : 'normal',\n }}\n title={undefined}\n >\n {column.render('Header')}\n {!isParentHeader && column.canSort && (\n <Tooltip arrow title={sortTooltip}>\n <TableSortLabel\n aria-label={sortTooltip}\n active={column.isSorted}\n direction={column.isSortedDesc ? 'desc' : 'asc'}\n />\n </Tooltip>\n )}\n </Box>\n <Box sx={{ alignItems: 'center', display: 'flex', flexWrap: 'nowrap' }}>\n {!disableColumnActions && !isParentHeader && (\n <MRT_ToggleColumnActionMenuButton column={column} />\n )}\n {enableColumnResizing && !isParentHeader && (\n <Divider\n flexItem\n orientation=\"vertical\"\n onDoubleClick={() => tableInstance.resetResizing()}\n {...column.getResizerProps()}\n sx={{\n borderRightWidth: '2px',\n borderRadius: '2px',\n maxHeight: '2rem',\n }}\n />\n )}\n </Box>\n </Box>\n {!disableFilters && column.canFilter && (\n <Collapse in={tableInstance.state.showFilters}>\n <MRT_FilterTextField column={column} />\n </Collapse>\n )}\n </TableCell>\n );\n};\n","import React, { ChangeEvent, FC } from 'react';\nimport { TextField } from '@mui/material';\nimport { useMRT } from '../useMRT';\nimport { MRT_Cell } from '..';\n\ninterface Props {\n cell: MRT_Cell;\n}\n\nexport const MRT_EditCellTextField: FC<Props> = ({ cell }) => {\n const {\n muiTableBodyCellEditTextFieldProps,\n setCurrentEditingRow,\n tableInstance: {\n state: { currentEditingRow },\n },\n } = useMRT();\n\n const handleChange = (event: ChangeEvent<HTMLInputElement>) => {\n if (currentEditingRow) {\n cell.row.values[cell.column.id] = event.target.value;\n setCurrentEditingRow({\n ...currentEditingRow,\n });\n }\n cell.column.onCellEditChange?.(event, cell);\n };\n\n const mTableBodyCellEditTextFieldProps =\n muiTableBodyCellEditTextFieldProps instanceof Function\n ? muiTableBodyCellEditTextFieldProps(cell)\n : muiTableBodyCellEditTextFieldProps;\n\n const mcTableBodyCellEditTextFieldProps =\n cell.column.muiTableBodyCellEditTextFieldProps instanceof Function\n ? cell.column.muiTableBodyCellEditTextFieldProps(cell)\n : cell.column.muiTableBodyCellEditTextFieldProps;\n\n const textFieldProps = {\n ...mTableBodyCellEditTextFieldProps,\n ...mcTableBodyCellEditTextFieldProps,\n style: {\n //@ts-ignore\n ...muiTableBodyCellEditTextFieldProps?.style,\n //@ts-ignore\n ...cell.column.muiTableBodyCellEditTextFieldProps?.style,\n },\n };\n\n if (cell.column.editable && cell.column.Edit) {\n return <>{cell.column.Edit({ ...textFieldProps, cell })}</>;\n }\n\n return (\n <TextField\n margin=\"dense\"\n onChange={handleChange}\n onClick={(e) => e.stopPropagation()}\n placeholder={cell.column.Header as string}\n value={cell.value}\n variant=\"standard\"\n {...textFieldProps}\n />\n );\n};\n","import React, { FC, MouseEvent } from 'react';\nimport { TableCell, TableCellProps } from '@mui/material';\nimport { useMRT } from '../useMRT';\nimport { MRT_EditCellTextField } from '../inputs/MRT_EditCellTextField';\nimport { MRT_Cell } from '..';\n\nexport const commonTableBodyCellStyles = (densePadding: boolean) => ({\n p: densePadding ? '0.5rem' : '1rem',\n transition: 'all 0.2s ease-in-out',\n whiteSpace: densePadding ? 'nowrap' : 'normal',\n});\n\nexport const commonTableBodyButtonCellStyles = (densePadding: boolean) => ({\n p: densePadding ? '1px' : '0.6rem',\n textAlign: 'center',\n transition: 'all 0.2s ease-in-out',\n});\n\ninterface Props {\n cell: MRT_Cell;\n}\n\nexport const MRT_TableBodyCell: FC<Props> = ({ cell }) => {\n const {\n onCellClick,\n muiTableBodyCellProps,\n tableInstance: {\n state: { currentEditingRow, densePadding },\n },\n } = useMRT();\n\n const mTableCellBodyProps =\n muiTableBodyCellProps instanceof Function\n ? muiTableBodyCellProps(cell)\n : muiTableBodyCellProps;\n\n const mcTableCellBodyProps =\n cell.column.muiTableBodyCellProps instanceof Function\n ? cell.column.muiTableBodyCellProps(cell)\n : cell.column.muiTableBodyCellProps;\n\n const tableCellProps = {\n ...mTableCellBodyProps,\n ...mcTableCellBodyProps,\n ...cell.getCellProps(),\n style: {\n ...cell.getCellProps().style,\n ...mTableCellBodyProps?.style,\n ...mcTableCellBodyProps?.style,\n },\n };\n\n return (\n <TableCell\n onClick={(event: MouseEvent<HTMLTableCellElement>) =>\n onCellClick?.(event, cell)\n }\n {...tableCellProps}\n sx={\n {\n ...commonTableBodyCellStyles(densePadding),\n ...tableCellProps?.sx,\n } as TableCellProps['sx']\n }\n >\n {currentEditingRow?.id === cell.row.id ? (\n <MRT_EditCellTextField cell={cell} />\n ) : cell.isPlaceholder ? null : cell.isAggregated ? (\n cell.render('Aggregated')\n ) : cell.isGrouped ? (\n <span>\n {cell.render('Cell')} ({cell.row.subRows.length})\n </span>\n ) : (\n cell.render('Cell')\n )}\n </TableCell>\n );\n};\n","import React, { ChangeEvent, FC } from 'react';\nimport { Checkbox, TableCell, Tooltip } from '@mui/material';\nimport { useMRT } from '../useMRT';\nimport { MRT_Row } from '..';\nimport { commonTableBodyButtonCellStyles } from '../body/MRT_TableBodyCell';\n\ninterface Props {\n row?: MRT_Row;\n selectAll?: boolean;\n}\n\nexport const MRT_SelectCheckbox: FC<Props> = ({ row, selectAll }) => {\n const { localization, onRowSelectChange, onSelectAllChange, tableInstance } =\n useMRT();\n\n const onSelectChange = (event: ChangeEvent<HTMLInputElement>) => {\n if (selectAll) {\n tableInstance?.getToggleAllRowsSelectedProps?.()?.onChange?.(event);\n onSelectAllChange?.(event, tableInstance.selectedFlatRows);\n } else if (row) {\n row?.getToggleRowSelectedProps()?.onChange?.(event);\n onRowSelectChange?.(event, row, tableInstance.selectedFlatRows);\n }\n };\n\n const checkboxProps = selectAll\n ? tableInstance.getToggleAllRowsSelectedProps()\n : row?.getToggleRowSelectedProps();\n\n return (\n <TableCell\n sx={commonTableBodyButtonCellStyles(tableInstance.state.densePadding)}\n >\n <Tooltip\n arrow\n enterDelay={1000}\n enterNextDelay={1000}\n title={\n selectAll\n ? localization.selectAllCheckboxTitle\n : localization.selectCheckboxTitle\n }\n >\n <Checkbox\n inputProps={{\n 'aria-label': selectAll\n ? localization.selectAllCheckboxTitle\n : localization.selectCheckboxTitle,\n }}\n onChange={onSelectChange}\n {...checkboxProps}\n title={undefined}\n />\n </Tooltip>\n </TableCell>\n );\n};\n","import React, { FC } from 'react';\nimport { IconButton, TableCell } from '@mui/material';\nimport { useMRT } from '../useMRT';\nimport { commonTableBodyButtonCellStyles } from '../body/MRT_TableBodyCell';\n\ninterface Props {}\n\nexport const MRT_ExpandAllButton: FC<Props> = () => {\n const {\n anyRowsExpanded,\n icons: { DoubleArrowDownIcon },\n localization,\n tableInstance,\n } = useMRT();\n\n return (\n <TableCell\n size=\"small\"\n {...tableInstance.getToggleAllRowsExpandedProps()}\n sx={commonTableBodyButtonCellStyles(tableInstance.state.densePadding)}\n >\n <IconButton\n aria-label={localization.expandAllButtonTitle}\n title={localization.expandAllButtonTitle}\n >\n <DoubleArrowDownIcon\n style={{\n transform: `rotate(${\n tableInstance.isAllRowsExpanded ? -180 : anyRowsExpanded ? -90 : 0\n }deg)`,\n transition: 'transform 0.2s',\n }}\n />\n </IconButton>\n </TableCell>\n );\n};\n","import React, { CSSProperties, FC } from 'react';\nimport { TableCell } from '@mui/material';\nimport { useMRT } from '../useMRT';\n\ninterface Props {\n width?: CSSProperties['width'];\n}\n\nexport const MRT_TableSpacerCell: FC<Props> = ({ width }) => {\n const { muiTableBodyCellProps } = useMRT();\n\n const mTableBodyCellrops =\n muiTableBodyCellProps instanceof Function\n ? muiTableBodyCellProps()\n : muiTableBodyCellProps;\n\n const tableCellProps = {\n ...mTableBodyCellrops,\n style: {\n ...mTableBodyCellrops?.style,\n },\n };\n\n return (\n <TableCell {...tableCellProps} sx={{ width, ...tableCellProps?.sx }} />\n );\n};\n","import React, { FC } from 'react';\nimport { TableCell } from '@mui/material';\nimport { useMRT } from '../useMRT';\nimport { commonTableHeadCellStyles } from './MRT_TableHeadCell';\n\ninterface Props {}\n\nexport const MRT_TableHeadCellActions: FC<Props> = () => {\n const {\n localization,\n tableInstance: {\n state: { densePadding },\n },\n } = useMRT();\n\n return (\n <TableCell\n style={{ textAlign: 'center' }}\n sx={{ ...commonTableHeadCellStyles(densePadding), textAlign: 'center' }}\n >\n {localization.actionsHeadColumnTitle}\n </TableCell>\n );\n};\n","import React, { FC, useMemo } from 'react';\nimport { TableCell, TableRow } from '@mui/material';\nimport {\n commonTableHeadCellStyles,\n MRT_TableHeadCell,\n} from './MRT_TableHeadCell';\nimport { useMRT } from '../useMRT';\nimport { MRT_SelectCheckbox } from '../inputs/MRT_SelectCheckbox';\nimport { MRT_ExpandAllButton } from '../buttons/MRT_ExpandAllButton';\nimport { MRT_TableSpacerCell } from '../table/MRT_TableSpacerCell';\nimport { MRT_TableHeadCellActions } from './MRT_TableHeadCellActions';\nimport { MRT_HeaderGroup } from '..';\n\ninterface Props {\n headerGroup: MRT_HeaderGroup;\n}\n\nexport const MRT_TableHeadRow: FC<Props> = ({ headerGroup }) => {\n const {\n anyRowsCanExpand,\n disableExpandAll,\n enableRowActions,\n enableRowEditing,\n enableRowNumbers,\n enableSelection,\n muiTableHeadRowProps,\n positionActionsColumn,\n renderDetailPanel,\n tableInstance,\n } = useMRT();\n\n const isParentHeader = useMemo(\n () => headerGroup.headers.some((h) => (h.columns?.length ?? 0) > 0),\n [headerGroup.headers],\n );\n\n const mTableHeadRowProps =\n muiTableHeadRowProps instanceof Function\n ? muiTableHeadRowProps(headerGroup)\n : muiTableHeadRowProps;\n\n const tableRowProps = {\n ...mTableHeadRowProps,\n ...headerGroup.getHeaderGroupProps(),\n style: {\n ...headerGroup.getHeaderGroupProps().style,\n ...mTableHeadRowProps?.style,\n },\n };\n\n return (\n <TableRow {...tableRowProps}>\n {enableRowNumbers &&\n (isParentHeader ? (\n <MRT_TableSpacerCell />\n ) : (\n <TableCell\n sx={{\n ...commonTableHeadCellStyles(tableInstance.state.densePadding),\n }}\n >\n #\n </TableCell>\n ))}\n {(enableRowActions || enableRowEditing) &&\n positionActionsColumn === 'first' &&\n (isParentHeader ? (\n <MRT_TableSpacerCell />\n ) : (\n <MRT_TableHeadCellActions />\n ))}\n {anyRowsCanExpand || renderDetailPanel ? (\n !disableExpandAll && !isParentHeader ? (\n <MRT_ExpandAllButton />\n ) : (\n <MRT_TableSpacerCell\n width={`${\n renderDetailPanel ? 2 : tableInstance.expandedDepth + 0.5\n }rem`}\n />\n )\n ) : null}\n {enableSelection ? (\n !isParentHeader ? (\n <MRT_SelectCheckbox selectAll />\n ) : (\n <MRT_TableSpacerCell width=\"1rem\" />\n )\n ) : null}\n {headerGroup.headers.map((column: MRT_HeaderGroup) => (\n <MRT_TableHeadCell key={column.getHeaderProps().key} column={column} />\n ))}\n {(enableRowActions || enableRowEditing) &&\n positionActionsColumn === 'last' &&\n (isParentHeader ? (\n <MRT_TableSpacerCell />\n ) : (\n <MRT_TableHeadCellActions />\n ))}\n </TableRow>\n );\n};\n","import React, { FC } from 'react';\nimport { TableHead } from '@mui/material';\nimport { MRT_TableHeadRow } from './MRT_TableHeadRow';\nimport { useMRT } from '../useMRT';\nimport { MRT_HeaderGroup } from '..';\n\ninterface Props {}\n\nexport const MRT_TableHead: FC<Props> = () => {\n const { tableInstance, muiTableHeadProps } = useMRT();\n\n const tableHeadProps =\n muiTableHeadProps instanceof Function\n ? muiTableHeadProps(tableInstance)\n : muiTableHeadProps;\n\n return (\n <TableHead {...tableHeadProps}>\n {tableInstance.headerGroups.map((headerGroup: MRT_HeaderGroup) => (\n <MRT_TableHeadRow\n key={headerGroup.getHeaderGroupProps().key}\n headerGroup={headerGroup}\n />\n ))}\n </TableHead>\n );\n};\n","import React, { FC, MouseEvent } from 'react';\nimport { Collapse, TableCell, TableRow } from '@mui/material';\nimport { useMRT } from '../useMRT';\nimport { MRT_Row } from '..';\n\ninterface Props {\n row: MRT_Row;\n}\n\nexport const MRT_TableDetailPanel: FC<Props> = ({ row }) => {\n const {\n muiTableBodyRowProps,\n muiTableDetailPanelProps,\n onDetailPanelClick,\n renderDetailPanel,\n tableInstance,\n } = useMRT();\n\n const tableRowProps =\n muiTableBodyRowProps instanceof Function\n ? muiTableBodyRowProps(row)\n : muiTableBodyRowProps;\n\n const tableCellProps =\n muiTableDetailPanelProps instanceof Function\n ? muiTableDetailPanelProps(row)\n : muiTableDetailPanelProps;\n\n return (\n <TableRow {...tableRowProps}>\n <TableCell\n colSpan={tableInstance.visibleColumns.length + 10}\n onClick={(event: MouseEvent<HTMLTableCellElement>) =>\n onDetailPanelClick?.(event, row)\n }\n {...tableCellProps}\n sx={{\n borderBottom: !row.isExpanded ? 'none' : undefined,\n pb: row.isExpanded ? '1rem' : 0,\n pt: row.isExpanded ? '1rem' : 0,\n transition: 'all 0.2s ease-in-out',\n ...tableCellProps?.sx,\n }}\n >\n <Collapse in={row.isExpanded}>{renderDetailPanel?.(row)}</Collapse>\n </TableCell>\n </TableRow>\n );\n};\n","import React, { FC } from 'react';\nimport { IconButton, TableCell } from '@mui/material';\nimport { useMRT } from '../useMRT';\nimport { MRT_Row } from '..';\nimport { commonTableBodyButtonCellStyles } from '../body/MRT_TableBodyCell';\n\ninterface Props {\n row: MRT_Row;\n}\n\nexport const MRT_ExpandButton: FC<Props> = ({ row }) => {\n const {\n icons: { ExpandMoreIcon },\n localization,\n renderDetailPanel,\n tableInstance: {\n state: { densePadding },\n },\n } = useMRT();\n\n return (\n <TableCell\n size=\"small\"\n sx={{\n ...commonTableBodyButtonCellStyles(densePadding),\n pl: `${row.depth + 0.5}rem`,\n textAlign: 'left',\n }}\n >\n <IconButton\n aria-label={localization.expandButtonTitle}\n disabled={!row.canExpand && !renderDetailPanel}\n title={localization.expandButtonTitle}\n {...row.getToggleRowExpandedProps()}\n >\n <ExpandMoreIcon\n style={{\n transform: `rotate(${\n !row.canExpand && !renderDetailPanel\n ? -90\n : row.isExpanded\n ? -180\n : 0\n }deg)`,\n transition: 'transform 0.2s',\n }}\n />\n </IconButton>\n </TableCell>\n );\n};\n","import React, { FC } from 'react';\nimport { Menu, MenuItem } from '@mui/material';\nimport { useMRT } from '../useMRT';\nimport { MRT_Row } from '..';\n\ninterface Props {\n anchorEl: HTMLElement | null;\n row: MRT_Row;\n setAnchorEl: (anchorEl: HTMLElement | null) => void;\n handleEdit: () => void;\n}\n\nexport const MRT_RowActionMenu: FC<Props> = ({\n anchorEl,\n row,\n handleEdit,\n setAnchorEl,\n}) => {\n const {\n icons: { EditIcon },\n enableRowEditing,\n localization,\n renderRowActionMenuItems,\n tableInstance,\n } = useMRT();\n\n return (\n <Menu\n anchorEl={anchorEl}\n open={!!anchorEl}\n onClose={() => setAnchorEl(null)}\n >\n {enableRowEditing && (\n <MenuItem sx={{ display: 'flex', gap: '0.75rem' }} onClick={handleEdit}>\n <EditIcon /> {localization.rowActionMenuItemEdit}\n </MenuItem>\n )}\n {renderRowActionMenuItems?.(row, tableInstance, () =>\n setAnchorEl(null),\n ) ?? null}\n </Menu>\n );\n};\n","/**\n * Copyright (c) 2014-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nvar runtime = (function (exports) {\n \"use strict\";\n\n var Op = Object.prototype;\n var hasOwn = Op.hasOwnProperty;\n var undefined; // More compressible than void 0.\n var $Symbol = typeof Symbol === \"function\" ? Symbol : {};\n var iteratorSymbol = $Symbol.iterator || \"@@iterator\";\n var asyncIteratorSymbol = $Symbol.asyncIterator || \"@@asyncIterator\";\n var toStringTagSymbol = $Symbol.toStringTag || \"@@toStringTag\";\n\n function define(obj, key, value) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n return obj[key];\n }\n try {\n // IE 8 has a broken Object.defineProperty that only works on DOM objects.\n define({}, \"\");\n } catch (err) {\n define = function(obj, key, value) {\n return obj[key] = value;\n };\n }\n\n function wrap(innerFn, outerFn, self, tryLocsList) {\n // If outerFn provided and outerFn.prototype is a Generator, then outerFn.prototype instanceof Generator.\n var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator;\n var generator = Object.create(protoGenerator.prototype);\n var context = new Context(tryLocsList || []);\n\n // The ._invoke method unifies the implementations of the .next,\n // .throw, and .return methods.\n generator._invoke = makeInvokeMethod(innerFn, self, context);\n\n return generator;\n }\n exports.wrap = wrap;\n\n // Try/catch helper to minimize deoptimizations. Returns a completion\n // record like context.tryEntries[i].completion. This interface could\n // have been (and was previously) designed to take a closure to be\n // invoked without arguments, but in all the cases we care about we\n // already have an existing method we want to call, so there's no need\n // to create a new function object. We can even get away with assuming\n // the method takes exactly one argument, since that happens to be true\n // in every case, so we don't have to touch the arguments object. The\n // only additional allocation required is the completion record, which\n // has a stable shape and so hopefully should be cheap to allocate.\n function tryCatch(fn, obj, arg) {\n try {\n return { type: \"normal\", arg: fn.call(obj, arg) };\n } catch (err) {\n return { type: \"throw\", arg: err };\n }\n }\n\n var GenStateSuspendedStart = \"suspendedStart\";\n var GenStateSuspendedYield = \"suspendedYield\";\n var GenStateExecuting = \"executing\";\n var GenStateCompleted = \"completed\";\n\n // Returning this object from the innerFn has the same effect as\n // breaking out of the dispatch switch statement.\n var ContinueSentinel = {};\n\n // Dummy constructor functions that we use as the .constructor and\n // .constructor.prototype properties for functions that return Generator\n // objects. For full spec compliance, you may wish to configure your\n // minifier not to mangle the names of these two functions.\n function Generator() {}\n function GeneratorFunction() {}\n function GeneratorFunctionPrototype() {}\n\n // This is a polyfill for %IteratorPrototype% for environments that\n // don't natively support it.\n var IteratorPrototype = {};\n define(IteratorPrototype, iteratorSymbol, function () {\n return this;\n });\n\n var getProto = Object.getPrototypeOf;\n var NativeIteratorPrototype = getProto && getProto(getProto(values([])));\n if (NativeIteratorPrototype &&\n NativeIteratorPrototype !== Op &&\n hasOwn.call(NativeIteratorPrototype, iteratorSymbol)) {\n // This environment has a native %IteratorPrototype%; use it instead\n // of the polyfill.\n IteratorPrototype = NativeIteratorPrototype;\n }\n\n var Gp = GeneratorFunctionPrototype.prototype =\n Generator.prototype = Object.create(IteratorPrototype);\n GeneratorFunction.prototype = GeneratorFunctionPrototype;\n define(Gp, \"constructor\", GeneratorFunctionPrototype);\n define(GeneratorFunctionPrototype, \"constructor\", GeneratorFunction);\n GeneratorFunction.displayName = define(\n GeneratorFunctionPrototype,\n toStringTagSymbol,\n \"GeneratorFunction\"\n );\n\n // Helper for defining the .next, .throw, and .return methods of the\n // Iterator interface in terms of a single ._invoke method.\n function defineIteratorMethods(prototype) {\n [\"next\", \"throw\", \"return\"].forEach(function(method) {\n define(prototype, method, function(arg) {\n return this._invoke(method, arg);\n });\n });\n }\n\n exports.isGeneratorFunction = function(genFun) {\n var ctor = typeof genFun === \"function\" && genFun.constructor;\n return ctor\n ? ctor === GeneratorFunction ||\n // For the native GeneratorFunction constructor, the best we can\n // do is to check its .name property.\n (ctor.displayName || ctor.name) === \"GeneratorFunction\"\n : false;\n };\n\n exports.mark = function(genFun) {\n if (Object.setPrototypeOf) {\n Object.setPrototypeOf(genFun, GeneratorFunctionPrototype);\n } else {\n genFun.__proto__ = GeneratorFunctionPrototype;\n define(genFun, toStringTagSymbol, \"GeneratorFunction\");\n }\n genFun.prototype = Object.create(Gp);\n return genFun;\n };\n\n // Within the body of any async function, `await x` is transformed to\n // `yield regeneratorRuntime.awrap(x)`, so that the runtime can test\n // `hasOwn.call(value, \"__await\")` to determine if the yielded value is\n // meant to be awaited.\n exports.awrap = function(arg) {\n return { __await: arg };\n };\n\n function AsyncIterator(generator, PromiseImpl) {\n function invoke(method, arg, resolve, reject) {\n var record = tryCatch(generator[method], generator, arg);\n if (record.type === \"throw\") {\n reject(record.arg);\n } else {\n var result = record.arg;\n var value = result.value;\n if (value &&\n typeof value === \"object\" &&\n hasOwn.call(value, \"__await\")) {\n return PromiseImpl.resolve(value.__await).then(function(value) {\n invoke(\"next\", value, resolve, reject);\n }, function(err) {\n invoke(\"throw\", err, resolve, reject);\n });\n }\n\n return PromiseImpl.resolve(value).then(function(unwrapped) {\n // When a yielded Promise is resolved, its final value becomes\n // the .value of the Promise<{value,done}> result for the\n // current iteration.\n result.value = unwrapped;\n resolve(result);\n }, function(error) {\n // If a rejected Promise was yielded, throw the rejection back\n // into the async generator function so it can be handled there.\n return invoke(\"throw\", error, resolve, reject);\n });\n }\n }\n\n var previousPromise;\n\n function enqueue(method, arg) {\n function callInvokeWithMethodAndArg() {\n return new PromiseImpl(function(resolve, reject) {\n invoke(method, arg, resolve, reject);\n });\n }\n\n return previousPromise =\n // If enqueue has been called before, then we want to wait until\n // all previous Promises have been resolved before calling invoke,\n // so that results are always delivered in the correct order. If\n // enqueue has not been called before, then it is important to\n // call invoke immediately, without waiting on a callback to fire,\n // so that the async generator function has the opportunity to do\n // any necessary setup in a predictable way. This predictability\n // is why the Promise constructor synchronously invokes its\n // executor callback, and why async functions synchronously\n // execute code before the first await. Since we implement simple\n // async functions in terms of async generators, it is especially\n // important to get this right, even though it requires care.\n previousPromise ? previousPromise.then(\n callInvokeWithMethodAndArg,\n // Avoid propagating failures to Promises returned by later\n // invocations of the iterator.\n callInvokeWithMethodAndArg\n ) : callInvokeWithMethodAndArg();\n }\n\n // Define the unified helper method that is used to implement .next,\n // .throw, and .return (see defineIteratorMethods).\n this._invoke = enqueue;\n }\n\n defineIteratorMethods(AsyncIterator.prototype);\n define(AsyncIterator.prototype, asyncIteratorSymbol, function () {\n return this;\n });\n exports.AsyncIterator = AsyncIterator;\n\n // Note that simple async functions are implemented on top of\n // AsyncIterator objects; they just return a Promise for the value of\n // the final result produced by the iterator.\n exports.async = function(innerFn, outerFn, self, tryLocsList, PromiseImpl) {\n if (PromiseImpl === void 0) PromiseImpl = Promise;\n\n var iter = new AsyncIterator(\n wrap(innerFn, outerFn, self, tryLocsList),\n PromiseImpl\n );\n\n return exports.isGeneratorFunction(outerFn)\n ? iter // If outerFn is a generator, return the full iterator.\n : iter.next().then(function(result) {\n return result.done ? result.value : iter.next();\n });\n };\n\n function makeInvokeMethod(innerFn, self, context) {\n var state = GenStateSuspendedStart;\n\n return function invoke(method, arg) {\n if (state === GenStateExecuting) {\n throw new Error(\"Generator is already running\");\n }\n\n if (state === GenStateCompleted) {\n if (method === \"throw\") {\n throw arg;\n }\n\n // Be forgiving, per 25.3.3.3.3 of the spec:\n // https://people.mozilla.org/~jorendorff/es6-draft.html#sec-generatorresume\n return doneResult();\n }\n\n context.method = method;\n context.arg = arg;\n\n while (true) {\n var delegate = context.delegate;\n if (delegate) {\n var delegateResult = maybeInvokeDelegate(delegate, context);\n if (delegateResult) {\n if (delegateResult === ContinueSentinel) continue;\n return delegateResult;\n }\n }\n\n if (context.method === \"next\") {\n // Setting context._sent for legacy support of Babel's\n // function.sent implementation.\n context.sent = context._sent = context.arg;\n\n } else if (context.method === \"throw\") {\n if (state === GenStateSuspendedStart) {\n state = GenStateCompleted;\n throw context.arg;\n }\n\n context.dispatchException(context.arg);\n\n } else if (context.method === \"return\") {\n context.abrupt(\"return\", context.arg);\n }\n\n state = GenStateExecuting;\n\n var record = tryCatch(innerFn, self, context);\n if (record.type === \"normal\") {\n // If an exception is thrown from innerFn, we leave state ===\n // GenStateExecuting and loop back for another invocation.\n state = context.done\n ? GenStateCompleted\n : GenStateSuspendedYield;\n\n if (record.arg === ContinueSentinel) {\n continue;\n }\n\n return {\n value: record.arg,\n done: context.done\n };\n\n } else if (record.type === \"throw\") {\n state = GenStateCompleted;\n // Dispatch the exception by looping back around to the\n // context.dispatchException(context.arg) call above.\n context.method = \"throw\";\n context.arg = record.arg;\n }\n }\n };\n }\n\n // Call delegate.iterator[context.method](context.arg) and handle the\n // result, either by returning a { value, done } result from the\n // delegate iterator, or by modifying context.method and context.arg,\n // setting context.delegate to null, and returning the ContinueSentinel.\n function maybeInvokeDelegate(delegate, context) {\n var method = delegate.iterator[context.method];\n if (method === undefined) {\n // A .throw or .return when the delegate iterator has no .throw\n // method always terminates the yield* loop.\n context.delegate = null;\n\n if (context.method === \"throw\") {\n // Note: [\"return\"] must be used for ES3 parsing compatibility.\n if (delegate.iterator[\"return\"]) {\n // If the delegate iterator has a return method, give it a\n // chance to clean up.\n context.method = \"return\";\n context.arg = undefined;\n maybeInvokeDelegate(delegate, context);\n\n if (context.method === \"throw\") {\n // If maybeInvokeDelegate(context) changed context.method from\n // \"return\" to \"throw\", let that override the TypeError below.\n return ContinueSentinel;\n }\n }\n\n context.method = \"throw\";\n context.arg = new TypeError(\n \"The iterator does not provide a 'throw' method\");\n }\n\n return ContinueSentinel;\n }\n\n var record = tryCatch(method, delegate.iterator, context.arg);\n\n if (record.type === \"throw\") {\n context.method = \"throw\";\n context.arg = record.arg;\n context.delegate = null;\n return ContinueSentinel;\n }\n\n var info = record.arg;\n\n if (! info) {\n context.method = \"throw\";\n context.arg = new TypeError(\"iterator result is not an object\");\n context.delegate = null;\n return ContinueSentinel;\n }\n\n if (info.done) {\n // Assign the result of the finished delegate to the temporary\n // variable specified by delegate.resultName (see delegateYield).\n context[delegate.resultName] = info.value;\n\n // Resume execution at the desired location (see delegateYield).\n context.next = delegate.nextLoc;\n\n // If context.method was \"throw\" but the delegate handled the\n // exception, let the outer generator proceed normally. If\n // context.method was \"next\", forget context.arg since it has been\n // \"consumed\" by the delegate iterator. If context.method was\n // \"return\", allow the original .return call to continue in the\n // outer generator.\n if (context.method !== \"return\") {\n context.method = \"next\";\n context.arg = undefined;\n }\n\n } else {\n // Re-yield the result returned by the delegate method.\n return info;\n }\n\n // The delegate iterator is finished, so forget it and continue with\n // the outer generator.\n context.delegate = null;\n return ContinueSentinel;\n }\n\n // Define Generator.prototype.{next,throw,return} in terms of the\n // unified ._invoke helper method.\n defineIteratorMethods(Gp);\n\n define(Gp, toStringTagSymbol, \"Generator\");\n\n // A Generator should always return itself as the iterator object when the\n // @@iterator function is called on it. Some browsers' implementations of the\n // iterator prototype chain incorrectly implement this, causing the Generator\n // object to not be returned from this call. This ensures that doesn't happen.\n // See https://github.com/facebook/regenerator/issues/274 for more details.\n define(Gp, iteratorSymbol, function() {\n return this;\n });\n\n define(Gp, \"toString\", function() {\n return \"[object Generator]\";\n });\n\n function pushTryEntry(locs) {\n var entry = { tryLoc: locs[0] };\n\n if (1 in locs) {\n entry.catchLoc = locs[1];\n }\n\n if (2 in locs) {\n entry.finallyLoc = locs[2];\n entry.afterLoc = locs[3];\n }\n\n this.tryEntries.push(entry);\n }\n\n function resetTryEntry(entry) {\n var record = entry.completion || {};\n record.type = \"normal\";\n delete record.arg;\n entry.completion = record;\n }\n\n function Context(tryLocsList) {\n // The root entry object (effectively a try statement without a catch\n // or a finally block) gives us a place to store values thrown from\n // locations where there is no enclosing try statement.\n this.tryEntries = [{ tryLoc: \"root\" }];\n tryLocsList.forEach(pushTryEntry, this);\n this.reset(true);\n }\n\n exports.keys = function(object) {\n var keys = [];\n for (var key in object) {\n keys.push(key);\n }\n keys.reverse();\n\n // Rather than returning an object with a next method, we keep\n // things simple and return the next function itself.\n return function next() {\n while (keys.length) {\n var key = keys.pop();\n if (key in object) {\n next.value = key;\n next.done = false;\n return next;\n }\n }\n\n // To avoid creating an additional object, we just hang the .value\n // and .done properties off the next function object itself. This\n // also ensures that the minifier will not anonymize the function.\n next.done = true;\n return next;\n };\n };\n\n function values(iterable) {\n if (iterable) {\n var iteratorMethod = iterable[iteratorSymbol];\n if (iteratorMethod) {\n return iteratorMethod.call(iterable);\n }\n\n if (typeof iterable.next === \"function\") {\n return iterable;\n }\n\n if (!isNaN(iterable.length)) {\n var i = -1, next = function next() {\n while (++i < iterable.length) {\n if (hasOwn.call(iterable, i)) {\n next.value = iterable[i];\n next.done = false;\n return next;\n }\n }\n\n next.value = undefined;\n next.done = true;\n\n return next;\n };\n\n return next.next = next;\n }\n }\n\n // Return an iterator with no values.\n return { next: doneResult };\n }\n exports.values = values;\n\n function doneResult() {\n return { value: undefined, done: true };\n }\n\n Context.prototype = {\n constructor: Context,\n\n reset: function(skipTempReset) {\n this.prev = 0;\n this.next = 0;\n // Resetting context._sent for legacy support of Babel's\n // function.sent implementation.\n this.sent = this._sent = undefined;\n this.done = false;\n this.delegate = null;\n\n this.method = \"next\";\n this.arg = undefined;\n\n this.tryEntries.forEach(resetTryEntry);\n\n if (!skipTempReset) {\n for (var name in this) {\n // Not sure about the optimal order of these conditions:\n if (name.charAt(0) === \"t\" &&\n hasOwn.call(this, name) &&\n !isNaN(+name.slice(1))) {\n this[name] = undefined;\n }\n }\n }\n },\n\n stop: function() {\n this.done = true;\n\n var rootEntry = this.tryEntries[0];\n var rootRecord = rootEntry.completion;\n if (rootRecord.type === \"throw\") {\n throw rootRecord.arg;\n }\n\n return this.rval;\n },\n\n dispatchException: function(exception) {\n if (this.done) {\n throw exception;\n }\n\n var context = this;\n function handle(loc, caught) {\n record.type = \"throw\";\n record.arg = exception;\n context.next = loc;\n\n if (caught) {\n // If the dispatched exception was caught by a catch block,\n // then let that catch block handle the exception normally.\n context.method = \"next\";\n context.arg = undefined;\n }\n\n return !! caught;\n }\n\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n var record = entry.completion;\n\n if (entry.tryLoc === \"root\") {\n // Exception thrown outside of any try block that could handle\n // it, so set the completion value of the entire function to\n // throw the exception.\n return handle(\"end\");\n }\n\n if (entry.tryLoc <= this.prev) {\n var hasCatch = hasOwn.call(entry, \"catchLoc\");\n var hasFinally = hasOwn.call(entry, \"finallyLoc\");\n\n if (hasCatch && hasFinally) {\n if (this.prev < entry.catchLoc) {\n return handle(entry.catchLoc, true);\n } else if (this.prev < entry.finallyLoc) {\n return handle(entry.finallyLoc);\n }\n\n } else if (hasCatch) {\n if (this.prev < entry.catchLoc) {\n return handle(entry.catchLoc, true);\n }\n\n } else if (hasFinally) {\n if (this.prev < entry.finallyLoc) {\n return handle(entry.finallyLoc);\n }\n\n } else {\n throw new Error(\"try statement without catch or finally\");\n }\n }\n }\n },\n\n abrupt: function(type, arg) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc <= this.prev &&\n hasOwn.call(entry, \"finallyLoc\") &&\n this.prev < entry.finallyLoc) {\n var finallyEntry = entry;\n break;\n }\n }\n\n if (finallyEntry &&\n (type === \"break\" ||\n type === \"continue\") &&\n finallyEntry.tryLoc <= arg &&\n arg <= finallyEntry.finallyLoc) {\n // Ignore the finally entry if control is not jumping to a\n // location outside the try/catch block.\n finallyEntry = null;\n }\n\n var record = finallyEntry ? finallyEntry.completion : {};\n record.type = type;\n record.arg = arg;\n\n if (finallyEntry) {\n this.method = \"next\";\n this.next = finallyEntry.finallyLoc;\n return ContinueSentinel;\n }\n\n return this.complete(record);\n },\n\n complete: function(record, afterLoc) {\n if (record.type === \"throw\") {\n throw record.arg;\n }\n\n if (record.type === \"break\" ||\n record.type === \"continue\") {\n this.next = record.arg;\n } else if (record.type === \"return\") {\n this.rval = this.arg = record.arg;\n this.method = \"return\";\n this.next = \"end\";\n } else if (record.type === \"normal\" && afterLoc) {\n this.next = afterLoc;\n }\n\n return ContinueSentinel;\n },\n\n finish: function(finallyLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.finallyLoc === finallyLoc) {\n this.complete(entry.completion, entry.afterLoc);\n resetTryEntry(entry);\n return ContinueSentinel;\n }\n }\n },\n\n \"catch\": function(tryLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc === tryLoc) {\n var record = entry.completion;\n if (record.type === \"throw\") {\n var thrown = record.arg;\n resetTryEntry(entry);\n }\n return thrown;\n }\n }\n\n // The context.catch method must only be called with a location\n // argument that corresponds to a known catch block.\n throw new Error(\"illegal catch attempt\");\n },\n\n delegateYield: function(iterable, resultName, nextLoc) {\n this.delegate = {\n iterator: values(iterable),\n resultName: resultName,\n nextLoc: nextLoc\n };\n\n if (this.method === \"next\") {\n // Deliberately forget the last sent value so that we don't\n // accidentally pass it on to the delegate.\n this.arg = undefined;\n }\n\n return ContinueSentinel;\n }\n };\n\n // Regardless of whether this script is executing as a CommonJS module\n // or not, return the runtime object so that we can declare the variable\n // regeneratorRuntime in the outer scope, which allows this module to be\n // injected easily by `bin/regenerator --include-runtime script.js`.\n return exports;\n\n}(\n // If this script is executing as a CommonJS module, use module.exports\n // as the regeneratorRuntime namespace. Otherwise create a new empty\n // object. Either way, the resulting object will be used to initialize\n // the regeneratorRuntime variable at the top of this file.\n typeof module === \"object\" ? module.exports : {}\n));\n\ntry {\n regeneratorRuntime = runtime;\n} catch (accidentalStrictMode) {\n // This module should not be running in strict mode, so the above\n // assignment should always work unless something is misconfigured. Just\n // in case runtime.js accidentally runs in strict mode, in modern engines\n // we can explicitly access globalThis. In older engines we can escape\n // strict mode using a global Function call. This could conceivably fail\n // if a Content Security Policy forbids using Function, but in that case\n // the proper solution is to fix the accidental strict mode problem. If\n // you've misconfigured your bundler to force strict mode and applied a\n // CSP to forbid Function, and you're not willing to fix either of those\n // problems, please detail your unique predicament in a GitHub issue.\n if (typeof globalThis === \"object\") {\n globalThis.regeneratorRuntime = runtime;\n } else {\n Function(\"r\", \"regeneratorRuntime = r\")(runtime);\n }\n}\n","import React, { FC } from 'react';\nimport { Box, IconButton, Tooltip } from '@mui/material';\nimport { useMRT } from '../useMRT';\nimport { MRT_Row } from '..';\n\ninterface Props {\n row: MRT_Row;\n}\n\nexport const MRT_EditActionButtons: FC<Props> = ({ row }) => {\n const {\n icons: { CancelIcon, SaveIcon },\n localization,\n onRowEditSubmit,\n setCurrentEditingRow,\n tableInstance: {\n state: { currentEditingRow },\n },\n } = useMRT();\n\n const handleCancel = () => {\n row.values = row.original;\n setCurrentEditingRow(null);\n };\n\n const handleSave = async () => {\n await onRowEditSubmit?.(currentEditingRow ?? row);\n setCurrentEditingRow(null);\n };\n\n return (\n <Box sx={{ display: 'flex', gap: '0.75rem' }}>\n <Tooltip arrow title={localization.rowActionButtonCancel}>\n <IconButton\n aria-label={localization.rowActionButtonCancel}\n onClick={handleCancel}\n >\n <CancelIcon />\n </IconButton>\n </Tooltip>\n <Tooltip arrow title={localization.rowActionButtonSave}>\n <IconButton\n aria-label={localization.rowActionButtonSave}\n color=\"info\"\n onClick={handleSave}\n >\n <SaveIcon />\n </IconButton>\n </Tooltip>\n </Box>\n );\n};\n","import React, { FC, MouseEvent, useState } from 'react';\nimport { IconButton, TableCell, Tooltip } from '@mui/material';\nimport { useMRT } from '../useMRT';\nimport { MRT_RowActionMenu } from '../menus/MRT_RowActionMenu';\nimport { MRT_EditActionButtons } from './MRT_EditActionButtons';\nimport { MRT_Row } from '..';\nimport { commonTableBodyButtonCellStyles } from '../body/MRT_TableBodyCell';\n\nconst commonIconButtonStyles = {\n opacity: 0.5,\n transition: 'opacity 0.2s',\n marginRight: '2px',\n height: '2rem',\n width: '2rem',\n '&:hover': {\n opacity: 1,\n },\n};\n\ninterface Props {\n row: MRT_Row;\n}\n\nexport const MRT_ToggleRowActionMenuButton: FC<Props> = ({ row }) => {\n const {\n enableRowEditing,\n icons: { EditIcon, MoreHorizIcon },\n localization,\n renderRowActionMenuItems,\n renderRowActions,\n setCurrentEditingRow,\n tableInstance,\n } = useMRT();\n\n const [anchorEl, setAnchorEl] = useState<null | HTMLElement>(null);\n\n const handleOpenRowActionMenu = (event: MouseEvent<HTMLElement>) => {\n event.stopPropagation();\n event.preventDefault();\n setAnchorEl(event.currentTarget);\n };\n\n const handleEdit = () => {\n setCurrentEditingRow({ ...row });\n setAnchorEl(null);\n };\n\n return (\n <TableCell\n sx={commonTableBodyButtonCellStyles(tableInstance.state.densePadding)}\n >\n {renderRowActions ? (\n <>{renderRowActions(row, tableInstance)}</>\n ) : row.id === tableInstance.state.currentEditingRow?.id ? (\n <MRT_EditActionButtons row={row} />\n ) : !renderRowActionMenuItems && enableRowEditing ? (\n <Tooltip\n placement=\"right\"\n arrow\n title={localization.rowActionMenuItemEdit}\n >\n <IconButton sx={commonIconButtonStyles} onClick={handleEdit}>\n <EditIcon />\n </IconButton>\n </Tooltip>\n ) : renderRowActionMenuItems ? (\n <>\n <Tooltip\n arrow\n enterDelay={1000}\n enterNextDelay={1000}\n title={localization.rowActionMenuButtonTitle}\n >\n <IconButton\n aria-label={localization.rowActionMenuButtonTitle}\n onClick={handleOpenRowActionMenu}\n size=\"small\"\n sx={commonIconButtonStyles}\n >\n <MoreHorizIcon />\n </IconButton>\n </Tooltip>\n <MRT_RowActionMenu\n anchorEl={anchorEl}\n handleEdit={handleEdit}\n row={row}\n setAnchorEl={setAnchorEl}\n />\n </>\n ) : null}\n </TableCell>\n );\n};\n","import React, { FC, MouseEvent } from 'react';\nimport { alpha, TableCell, TableRow } from '@mui/material';\nimport {\n commonTableBodyCellStyles,\n MRT_TableBodyCell,\n} from './MRT_TableBodyCell';\nimport { useMRT } from '../useMRT';\nimport { MRT_TableDetailPanel } from './MRT_TableDetailPanel';\nimport { MRT_ExpandButton } from '../buttons/MRT_ExpandButton';\nimport { MRT_SelectCheckbox } from '../inputs/MRT_SelectCheckbox';\nimport { MRT_ToggleRowActionMenuButton } from '../buttons/MRT_ToggleRowActionMenuButton';\nimport { MRT_Cell, MRT_Row } from '..';\n\ninterface Props {\n row: MRT_Row;\n}\n\nexport const MRT_TableBodyRow: FC<Props> = ({ row }) => {\n const {\n anyRowsCanExpand,\n enableRowActions,\n enableRowEditing,\n enableRowNumbers,\n enableSelection,\n muiTableBodyRowProps,\n onRowClick,\n positionActionsColumn,\n renderDetailPanel,\n tableInstance: {\n state: { densePadding },\n },\n } = useMRT();\n\n const mTableBodyRowProps =\n muiTableBodyRowProps instanceof Function\n ? muiTableBodyRowProps(row)\n : muiTableBodyRowProps;\n\n const tableRowProps = {\n ...mTableBodyRowProps,\n ...row.getRowProps(),\n style: {\n ...row.getRowProps().style,\n ...mTableBodyRowProps?.style,\n },\n };\n\n return (\n <>\n <TableRow\n hover\n onClick={(event: MouseEvent<HTMLTableRowElement>) =>\n onRowClick?.(event, row)\n }\n {...tableRowProps}\n sx={(theme) =>\n ({\n backgroundColor: row.isSelected\n ? alpha(theme.palette.primary.light, 0.1)\n : 'transparent',\n ...tableRowProps?.sx,\n } as any)\n }\n >\n {enableRowNumbers && (\n <TableCell sx={{ ...commonTableBodyCellStyles(densePadding) }}>\n {row.index + 1}\n </TableCell>\n )}\n {(enableRowActions || enableRowEditing) &&\n positionActionsColumn === 'first' && (\n <MRT_ToggleRowActionMenuButton row={row} />\n )}\n {(anyRowsCanExpand || renderDetailPanel) && (\n <MRT_ExpandButton row={row} />\n )}\n {enableSelection && <MRT_SelectCheckbox row={row} />}\n {row.cells.map((cell: MRT_Cell) => (\n <MRT_TableBodyCell key={cell.getCellProps().key} cell={cell} />\n ))}\n {(enableRowActions || enableRowEditing) &&\n positionActionsColumn === 'last' && (\n <MRT_ToggleRowActionMenuButton row={row} />\n )}\n </TableRow>\n {renderDetailPanel && !row.isGrouped && (\n <MRT_TableDetailPanel row={row} />\n )}\n </>\n );\n};\n","import React, { FC } from 'react';\nimport { TableBody } from '@mui/material';\nimport { MRT_TableBodyRow } from './MRT_TableBodyRow';\nimport { useMRT } from '../useMRT';\nimport { MRT_Row } from '..';\n\ninterface Props {}\n\nexport const MRT_TableBody: FC<Props> = () => {\n const { tableInstance, muiTableBodyProps, manualPagination } = useMRT();\n\n const rows = manualPagination ? tableInstance.rows : tableInstance.page;\n\n const mTableBodyProps =\n muiTableBodyProps instanceof Function\n ? muiTableBodyProps(tableInstance)\n : muiTableBodyProps;\n\n const tableBodyProps = {\n ...mTableBodyProps,\n ...tableInstance.getTableBodyProps(),\n style: {\n ...tableInstance.getTableBodyProps().style,\n ...mTableBodyProps?.style,\n },\n };\n\n return (\n <TableBody\n {...tableBodyProps}\n sx={{ overflowY: 'hidden', ...tableBodyProps?.sx }}\n >\n {rows.map((row: MRT_Row) => {\n tableInstance.prepareRow(row);\n return <MRT_TableBodyRow key={row.getRowProps().key} row={row} />;\n })}\n </TableBody>\n );\n};\n","import React, { FC } from 'react';\nimport { TableCell } from '@mui/material';\nimport { useMRT } from '../useMRT';\nimport { MRT_HeaderGroup } from '..';\n\ninterface Props {\n column: MRT_HeaderGroup;\n}\n\nexport const MRT_TableFooterCell: FC<Props> = ({ column }) => {\n const {\n muiTableFooterCellProps,\n enableColumnResizing,\n tableInstance: {\n state: { densePadding },\n },\n } = useMRT();\n\n const isParentHeader = (column?.columns?.length ?? 0) > 0;\n\n const mTableFooterCellProps =\n muiTableFooterCellProps instanceof Function\n ? muiTableFooterCellProps(column)\n : muiTableFooterCellProps;\n\n const mcTableFooterCellProps =\n column.muiTableFooterCellProps instanceof Function\n ? column.muiTableFooterCellProps(column)\n : column.muiTableFooterCellProps;\n\n const tableCellProps = {\n ...mTableFooterCellProps,\n ...mcTableFooterCellProps,\n ...column.getFooterProps(),\n style: {\n ...column.getFooterProps().style,\n ...mTableFooterCellProps?.style,\n ...mcTableFooterCellProps?.style,\n },\n };\n\n return (\n <TableCell\n align={isParentHeader ? 'center' : 'left'}\n variant=\"head\"\n {...tableCellProps}\n sx={{\n fontWeight: 'bold',\n verticalAlign: 'text-top',\n p: densePadding ? '0.5rem' : '1rem',\n transition: `all ${enableColumnResizing ? '10ms' : '0.2s'} ease-in-out`,\n ...tableCellProps?.sx,\n }}\n >\n {column.render('Footer')}\n </TableCell>\n );\n};\n","import React, { FC } from 'react';\nimport { TableRow } from '@mui/material';\nimport { MRT_TableFooterCell } from './MRT_TableFooterCell';\nimport { MRT_TableSpacerCell } from '../table/MRT_TableSpacerCell';\nimport { useMRT } from '../useMRT';\nimport { MRT_HeaderGroup } from '..';\n\ninterface Props {\n footerGroup: MRT_HeaderGroup;\n}\n\nexport const MRT_TableFooterRow: FC<Props> = ({ footerGroup }) => {\n const {\n anyRowsCanExpand,\n columns,\n enableRowActions,\n enableRowEditing,\n enableRowNumbers,\n enableSelection,\n muiTableFooterRowProps,\n positionActionsColumn,\n renderDetailPanel,\n tableInstance,\n } = useMRT();\n\n //if no content in row, skip row\n if (!columns?.some((c) => c.Footer)) return null;\n\n const mTableFooterRowProps =\n muiTableFooterRowProps instanceof Function\n ? muiTableFooterRowProps(footerGroup)\n : muiTableFooterRowProps;\n\n const tableRowProps = {\n ...mTableFooterRowProps,\n ...footerGroup.getFooterGroupProps(),\n style: {\n ...footerGroup.getFooterGroupProps().style,\n ...mTableFooterRowProps?.style,\n },\n };\n\n return (\n <TableRow {...tableRowProps}>\n {enableRowNumbers && <MRT_TableSpacerCell />}\n {(enableRowActions || enableRowEditing) &&\n positionActionsColumn === 'first' && <MRT_TableSpacerCell />}\n {(anyRowsCanExpand || renderDetailPanel) && (\n <MRT_TableSpacerCell\n width={`${\n renderDetailPanel ? 2 : tableInstance.expandedDepth + 0.5\n }rem`}\n />\n )}\n {enableSelection && <MRT_TableSpacerCell width=\"1rem\" />}\n {footerGroup.headers.map((column: MRT_HeaderGroup) => (\n <MRT_TableFooterCell\n key={column.getFooterProps().key}\n column={column}\n />\n ))}\n {(enableRowActions || enableRowEditing) &&\n positionActionsColumn === 'last' && <MRT_TableSpacerCell />}\n </TableRow>\n );\n};\n","import React, { FC } from 'react';\nimport { TableFooter } from '@mui/material';\nimport { MRT_TableFooterRow } from './MRT_TableFooterRow';\nimport { useMRT } from '../useMRT';\nimport { MRT_HeaderGroup } from '..';\n\ninterface Props {}\n\nexport const MRT_TableFooter: FC<Props> = () => {\n const { muiTableFooterProps, tableInstance } = useMRT();\n\n const tableFooterProps =\n muiTableFooterProps instanceof Function\n ? muiTableFooterProps(tableInstance)\n : muiTableFooterProps;\n\n return (\n <TableFooter {...tableFooterProps}>\n {tableInstance.footerGroups.map((footerGroup: MRT_HeaderGroup) => (\n <MRT_TableFooterRow\n key={footerGroup.getFooterGroupProps().key}\n footerGroup={footerGroup}\n />\n ))}\n </TableFooter>\n );\n};\n","import React, { FC } from 'react';\nimport { Table } from '@mui/material';\nimport { MRT_TableHead } from '../head/MRT_TableHead';\nimport { MRT_TableBody } from '../body/MRT_TableBody';\nimport { MRT_TableFooter } from '../footer/MRT_TableFooter';\nimport { useMRT } from '../useMRT';\n\ninterface Props {}\n\nexport const MRT_Table: FC<Props> = () => {\n const { tableInstance, muiTableProps, hideTableHead, hideTableFooter } =\n useMRT();\n\n const mTableProps =\n muiTableProps instanceof Function\n ? muiTableProps(tableInstance)\n : muiTableProps;\n\n const tableProps = {\n ...mTableProps,\n ...tableInstance.getTableProps(),\n style: {\n ...tableInstance.getTableProps().style,\n ...mTableProps?.style,\n },\n };\n\n return (\n <Table {...tableProps}>\n {!hideTableHead && <MRT_TableHead />}\n <MRT_TableBody />\n {!hideTableFooter && <MRT_TableFooter />}\n </Table>\n );\n};\n","import React, { ChangeEvent, FC, useState } from 'react';\nimport { Collapse, IconButton, InputAdornment, TextField } from '@mui/material';\nimport { useMRT } from '../useMRT';\nimport { useAsyncDebounce } from 'react-table';\n\ninterface Props {}\n\nexport const MRT_SearchTextField: FC<Props> = () => {\n const {\n icons: { SearchIcon, CloseIcon },\n idPrefix,\n localization,\n muiSearchTextFieldProps,\n onGlobalFilterChange,\n tableInstance,\n } = useMRT();\n\n const [searchValue, setSearchValue] = useState('');\n\n const handleChange = useAsyncDebounce(\n (event: ChangeEvent<HTMLInputElement>) => {\n tableInstance.setGlobalFilter(event.target.value ?? undefined);\n onGlobalFilterChange?.(event);\n },\n 200,\n );\n\n const handleClear = () => {\n setSearchValue('');\n tableInstance.setGlobalFilter(undefined);\n };\n\n return (\n <Collapse in={tableInstance.state.showSearch} orientation=\"horizontal\">\n <TextField\n id={`mrt-${idPrefix}-search-text-field`}\n placeholder={localization.searchTextFieldPlaceholder}\n onChange={(event: ChangeEvent<HTMLInputElement>) => {\n setSearchValue(event.target.value);\n handleChange(event);\n }}\n value={searchValue ?? ''}\n variant=\"standard\"\n InputProps={{\n startAdornment: (\n <InputAdornment position=\"start\">\n <SearchIcon fontSize=\"small\" />\n </InputAdornment>\n ),\n endAdornment: (\n <InputAdornment position=\"end\">\n <IconButton\n aria-label={localization.searchTextFieldClearButtonTitle}\n disabled={searchValue?.length === 0}\n onClick={handleClear}\n size=\"small\"\n title={localization.searchTextFieldClearButtonTitle}\n >\n <CloseIcon fontSize=\"small\" />\n </IconButton>\n </InputAdornment>\n ),\n }}\n {...muiSearchTextFieldProps}\n sx={{ justifySelf: 'end', ...muiSearchTextFieldProps?.sx }}\n />\n </Collapse>\n );\n};\n","import React, { FC } from 'react';\nimport { IconButton, IconButtonProps, Tooltip } from '@mui/material';\nimport { useMRT } from '../useMRT';\n\ninterface Props extends IconButtonProps {}\n\nexport const MRT_FullScreenToggleButton: FC<Props> = ({ ...rest }) => {\n const {\n icons: { FullscreenExitIcon, FullscreenIcon },\n localization,\n setFullScreen,\n tableInstance: {\n state: { fullScreen },\n },\n } = useMRT();\n\n return (\n <Tooltip arrow title={localization.toggleFullScreenButtonTitle}>\n <IconButton\n aria-label={localization.toggleFilterButtonTitle}\n onClick={() => setFullScreen(!fullScreen)}\n size=\"small\"\n {...rest}\n >\n {fullScreen ? <FullscreenExitIcon /> : <FullscreenIcon />}\n </IconButton>\n </Tooltip>\n );\n};\n","import React, { FC } from 'react';\nimport { FormControlLabel, MenuItem, Switch } from '@mui/material';\nimport { ColumnInstance } from 'react-table';\nimport { MRT_ColumnInstance } from '..';\n\ninterface Props {\n column: MRT_ColumnInstance;\n}\n\nexport const MRT_ShowHideColumnsMenu: FC<Props> = ({ column }) => {\n const isParentHeader = (column?.columns?.length ?? 0) > 0;\n\n const allChildColumnsVisible =\n isParentHeader &&\n !!column.columns?.every((childColumn) => childColumn.isVisible);\n\n const switchChecked = column.isVisible ?? allChildColumnsVisible;\n\n const handleToggleColumnHidden = (column: ColumnInstance) => {\n if (isParentHeader) {\n column?.columns?.forEach?.((childColumn) => {\n childColumn.toggleHidden(switchChecked);\n });\n } else {\n column.toggleHidden();\n }\n };\n\n return (\n <>\n <MenuItem sx={{ pl: `${(column.depth + 0.5) * 2}rem` }}>\n <FormControlLabel\n checked={switchChecked}\n control={<Switch />}\n label={column.Header as string}\n onChange={() => handleToggleColumnHidden(column)}\n />\n </MenuItem>\n {column.columns?.map((c: MRT_ColumnInstance, i) => (\n <MRT_ShowHideColumnsMenu key={`${i}-${c.id}`} column={c} />\n ))}\n </>\n );\n};\n","import React, { FC, MouseEvent, useState } from 'react';\nimport {\n Button,\n IconButton,\n Menu,\n Tooltip,\n Divider,\n IconButtonProps,\n Box,\n} from '@mui/material';\nimport { useMRT } from '../useMRT';\nimport { MRT_ShowHideColumnsMenu } from '../menus/MRT_ShowHideColumnsMenu';\nimport { MRT_ColumnInstance } from '..';\n\ninterface Props extends IconButtonProps {}\n\nexport const MRT_ShowHideColumnsButton: FC<Props> = ({ ...rest }) => {\n const {\n tableInstance,\n localization,\n icons: { ViewColumnIcon },\n } = useMRT();\n\n const [anchorEl, setAnchorEl] = useState<null | HTMLElement>(null);\n\n const handleClick = (event: MouseEvent<HTMLElement>) => {\n setAnchorEl(event.currentTarget);\n };\n\n return (\n <>\n <Tooltip arrow title={localization.showHideColumnsButtonTitle}>\n <IconButton\n aria-label={localization.showHideColumnsButtonTitle}\n onClick={handleClick}\n size=\"small\"\n {...rest}\n >\n <ViewColumnIcon />\n </IconButton>\n </Tooltip>\n <Menu\n anchorEl={anchorEl}\n open={!!anchorEl}\n onClose={() => setAnchorEl(null)}\n >\n <Box\n sx={{\n display: 'flex',\n justifyContent: 'space-between',\n p: '0 0.5rem 0.5rem 0.5rem',\n }}\n >\n <Button\n disabled={\n !tableInstance.getToggleHideAllColumnsProps().checked &&\n !tableInstance.getToggleHideAllColumnsProps().indeterminate\n }\n onClick={() => tableInstance.toggleHideAllColumns(true)}\n >\n {localization.columnShowHideMenuHideAll}\n </Button>\n <Button\n disabled={tableInstance.getToggleHideAllColumnsProps().checked}\n onClick={() => tableInstance.toggleHideAllColumns(false)}\n >\n {localization.columnShowHideMenuShowAll}\n </Button>\n </Box>\n <Divider />\n {tableInstance.columns.map((column: MRT_ColumnInstance, index) => (\n <MRT_ShowHideColumnsMenu\n key={`${index}-${column.id}`}\n column={column}\n />\n ))}\n </Menu>\n </>\n );\n};\n","import React, { FC } from 'react';\nimport { IconButton, IconButtonProps, Tooltip } from '@mui/material';\nimport { useMRT } from '../useMRT';\n\ninterface Props extends IconButtonProps {}\n\nexport const MRT_ToggleDensePaddingButton: FC<Props> = ({ ...rest }) => {\n const {\n setDensePadding,\n localization,\n icons: { DensityMediumIcon, DensitySmallIcon },\n tableInstance: {\n state: { densePadding },\n },\n } = useMRT();\n\n return (\n <Tooltip arrow title={localization.toggleDensePaddingSwitchTitle}>\n <IconButton\n aria-label={localization.toggleDensePaddingSwitchTitle}\n onClick={() => setDensePadding(!densePadding)}\n size=\"small\"\n {...rest}\n >\n {densePadding ? <DensitySmallIcon /> : <DensityMediumIcon />}\n </IconButton>\n </Tooltip>\n );\n};\n","import React, { FC } from 'react';\nimport { IconButton, IconButtonProps, Tooltip } from '@mui/material';\nimport { useMRT } from '../useMRT';\n\ninterface Props extends IconButtonProps {}\n\nexport const MRT_ToggleFiltersButton: FC<Props> = ({ ...rest }) => {\n const {\n icons: { FilterListIcon, FilterListOffIcon },\n localization,\n setShowFilters,\n tableInstance: {\n state: { showFilters },\n },\n } = useMRT();\n\n return (\n <Tooltip arrow title={localization.toggleFilterButtonTitle}>\n <IconButton\n aria-label={localization.toggleFilterButtonTitle}\n onClick={() => setShowFilters(!showFilters)}\n size=\"small\"\n {...rest}\n >\n {showFilters ? <FilterListOffIcon /> : <FilterListIcon />}\n </IconButton>\n </Tooltip>\n );\n};\n","import React, { FC } from 'react';\nimport { IconButton, IconButtonProps, Tooltip } from '@mui/material';\nimport { useMRT } from '../useMRT';\n\ninterface Props extends IconButtonProps {}\n\nexport const MRT_ToggleSearchButton: FC<Props> = ({ ...rest }) => {\n const {\n icons: { SearchIcon, SearchOffIcon },\n idPrefix,\n localization,\n muiSearchTextFieldProps,\n setShowSearch,\n tableInstance: {\n state: { showSearch },\n },\n } = useMRT();\n\n const handleToggleSearch = () => {\n setShowSearch(!showSearch);\n setTimeout(\n () =>\n document\n .getElementById(\n muiSearchTextFieldProps?.id ?? `mrt-${idPrefix}-search-text-field`,\n )\n ?.focus(),\n 200,\n );\n };\n\n return (\n <Tooltip arrow title={localization.toggleSearchButtonTitle}>\n <IconButton size=\"small\" onClick={handleToggleSearch} {...rest}>\n {showSearch ? <SearchOffIcon /> : <SearchIcon />}\n </IconButton>\n </Tooltip>\n );\n};\n","import React, { FC } from 'react';\nimport { Box } from '@mui/material';\nimport { MRT_FullScreenToggleButton } from '../buttons/MRT_FullScreenToggleButton';\nimport { MRT_ShowHideColumnsButton } from '../buttons/MRT_ShowHideColumnsButton';\nimport { MRT_ToggleDensePaddingButton } from '../buttons/MRT_ToggleDensePaddingButton';\nimport { MRT_ToggleFiltersButton } from '../buttons/MRT_ToggleFiltersButton';\nimport { MRT_ToggleSearchButton } from '../buttons/MRT_ToggleSearchButton';\nimport { useMRT } from '../useMRT';\n\ninterface Props {}\n\nexport const MRT_ToolbarInternalButtons: FC<Props> = () => {\n const {\n disableFilters,\n disableColumnHiding,\n disableDensePaddingToggle,\n disableGlobalFilter,\n disableFullScreenToggle,\n renderToolbarInternalActions,\n tableInstance,\n } = useMRT();\n\n if (renderToolbarInternalActions) {\n return (\n <>\n {renderToolbarInternalActions(tableInstance, {\n MRT_ToggleSearchButton,\n MRT_ToggleFiltersButton,\n MRT_ShowHideColumnsButton,\n MRT_ToggleDensePaddingButton,\n MRT_FullScreenToggleButton,\n })}\n </>\n );\n }\n\n return (\n <Box\n sx={{\n display: 'flex',\n gap: '0.5rem',\n alignItems: 'center',\n p: '0 0.5rem',\n }}\n >\n {!disableGlobalFilter && <MRT_ToggleSearchButton />}\n {!disableFilters && <MRT_ToggleFiltersButton />}\n {!disableColumnHiding && <MRT_ShowHideColumnsButton />}\n {!disableDensePaddingToggle && <MRT_ToggleDensePaddingButton />}\n {!disableFullScreenToggle && <MRT_FullScreenToggleButton />}\n </Box>\n );\n};\n","import React, { ChangeEvent, FC } from 'react';\nimport { TablePagination } from '@mui/material';\nimport { useMRT } from '../useMRT';\n\ninterface Props {}\n\nexport const MRT_TablePagination: FC<Props> = () => {\n const { tableInstance, muiTablePaginationProps } = useMRT();\n\n const tablePaginationProps =\n muiTablePaginationProps instanceof Function\n ? muiTablePaginationProps(tableInstance)\n : muiTablePaginationProps;\n\n const handleChangeRowsPerPage = (event: ChangeEvent<HTMLInputElement>) => {\n tableInstance.setPageSize(+event.target.value);\n tableInstance.gotoPage(0);\n };\n\n return (\n <TablePagination\n component={'div'}\n count={tableInstance.rows.length}\n onPageChange={(_, newPage) => tableInstance.gotoPage(newPage)}\n onRowsPerPageChange={handleChangeRowsPerPage}\n page={tableInstance.state.pageIndex}\n rowsPerPage={tableInstance.state.pageSize}\n SelectProps={{ style: { margin: '0 1rem 0 1ch' } }}\n showFirstButton={\n tableInstance.rows.length / tableInstance.state.pageSize > 2\n }\n showLastButton={\n tableInstance.rows.length / tableInstance.state.pageSize > 2\n }\n {...tablePaginationProps}\n sx={{\n p: 0,\n position: 'relative',\n zIndex: 2,\n ...tablePaginationProps?.sx,\n }}\n />\n );\n};\n","import React, { FC, Fragment } from 'react';\nimport { Alert, Box, Chip, Collapse, useMediaQuery } from '@mui/material';\nimport { useMRT } from '../useMRT';\n\ninterface Props {}\n\nexport const MRT_ToolbarAlertBanner: FC<Props> = () => {\n const {\n muiTableToolbarAlertBannerProps,\n tableInstance,\n positionToolbarAlertBanner,\n positionToolbarActions,\n localization,\n renderToolbarCustomActions,\n } = useMRT();\n\n const isMobile = useMediaQuery('(max-width:720px)');\n\n const alertProps =\n muiTableToolbarAlertBannerProps instanceof Function\n ? muiTableToolbarAlertBannerProps(tableInstance)\n : muiTableToolbarAlertBannerProps;\n\n const selectMessage =\n tableInstance.selectedFlatRows.length > 0\n ? localization.toolbarAlertSelectionMessage\n ?.replace(\n '{selectedCount}',\n tableInstance.selectedFlatRows.length.toString(),\n )\n ?.replace('{rowCount}', tableInstance.flatRows.length.toString())\n : null;\n\n const groupedByMessage =\n tableInstance.state.groupBy.length > 0 ? (\n <span>\n {localization.toolbarAlertGroupedByMessage}{' '}\n {tableInstance.state.groupBy.map((columnId, index) => (\n <Fragment key={`${index}-${columnId}`}>\n {index > 0 ? localization.toolbarAlertGroupedThenByMessage : ''}\n <Chip\n color=\"secondary\"\n label={\n tableInstance.allColumns.find(\n (column) => column.id === columnId,\n )?.Header\n }\n onDelete={() => tableInstance.toggleGroupBy(columnId, false)}\n />\n </Fragment>\n ))}\n </span>\n ) : null;\n\n const displayAbsolute = !(\n isMobile ||\n (positionToolbarAlertBanner === 'bottom' &&\n positionToolbarActions === 'bottom') ||\n (positionToolbarAlertBanner === 'top' && !!renderToolbarCustomActions)\n );\n\n return (\n <Collapse\n in={!!selectMessage || !!groupedByMessage}\n timeout={displayAbsolute ? 0 : 200}\n >\n <Alert\n color=\"info\"\n icon={false}\n sx={{\n borderRadius: 0,\n fontSize: '1rem',\n left: 0,\n p: 0,\n position: displayAbsolute ? 'absolute' : 'relative',\n right: 0,\n minHeight: '3.5rem',\n top: 0,\n width: '100%',\n zIndex: 2,\n ...alertProps?.sx,\n }}\n {...alertProps}\n >\n <Box sx={{ p: '0.5rem 1rem' }}>\n {selectMessage}\n {groupedByMessage}\n </Box>\n </Alert>\n </Collapse>\n );\n};\n","import React, { FC } from 'react';\nimport { alpha, Box, Toolbar } from '@mui/material';\nimport { MRT_SearchTextField } from '../inputs/MRT_SearchTextField';\nimport { useMRT } from '../useMRT';\nimport { MRT_ToolbarInternalButtons } from './MRT_ToolbarInternalButtons';\nimport { MRT_TablePagination } from './MRT_TablePagination';\nimport { MRT_ToolbarAlertBanner } from './MRT_ToolbarAlertBanner';\n\ninterface Props {}\n\nexport const MRT_ToolbarTop: FC<Props> = () => {\n const {\n disableGlobalFilter,\n hideToolbarInternalActions,\n manualPagination,\n muiTableToolbarTopProps,\n positionPagination,\n positionToolbarActions,\n positionToolbarAlertBanner,\n renderToolbarCustomActions,\n tableInstance,\n } = useMRT();\n\n const toolbarProps =\n muiTableToolbarTopProps instanceof Function\n ? muiTableToolbarTopProps(tableInstance)\n : muiTableToolbarTopProps;\n\n return (\n <Toolbar\n variant=\"dense\"\n {...toolbarProps}\n sx={(theme) =>\n ({\n backgroundColor: theme.palette.background.default,\n backgroundImage: `linear-gradient(${alpha(\n theme.palette.common.white,\n 0.05,\n )},${alpha(theme.palette.common.white, 0.05)})`,\n display: 'grid',\n p: '0 !important',\n position: tableInstance.state.fullScreen ? 'sticky' : undefined,\n top: tableInstance.state.fullScreen ? '0' : undefined,\n width: '100%',\n zIndex: 1,\n ...toolbarProps?.sx,\n } as any)\n }\n >\n {positionToolbarAlertBanner === 'top' && <MRT_ToolbarAlertBanner />}\n <Box\n sx={{\n p: '0.5rem',\n display: 'flex',\n justifyContent: 'space-between',\n }}\n >\n {renderToolbarCustomActions?.(tableInstance) ?? <span />}\n <Box\n sx={{\n display: 'flex',\n gap: '0.5rem',\n position: 'relative',\n zIndex: 3,\n }}\n >\n {!disableGlobalFilter && <MRT_SearchTextField />}\n {!hideToolbarInternalActions && positionToolbarActions === 'top' && (\n <MRT_ToolbarInternalButtons />\n )}\n </Box>\n </Box>\n <div>\n {!manualPagination &&\n ['top', 'both'].includes(positionPagination ?? '') && (\n <MRT_TablePagination />\n )}\n </div>\n </Toolbar>\n );\n};\n","import React, { FC } from 'react';\nimport { alpha, Toolbar } from '@mui/material';\nimport { useMRT } from '../useMRT';\nimport { MRT_TablePagination } from './MRT_TablePagination';\nimport { MRT_ToolbarInternalButtons } from './MRT_ToolbarInternalButtons';\nimport { MRT_ToolbarAlertBanner } from './MRT_ToolbarAlertBanner';\n\ninterface Props {}\n\nexport const MRT_ToolbarBottom: FC<Props> = () => {\n const {\n hideToolbarInternalActions,\n manualPagination,\n muiTableToolbarBottomProps,\n positionPagination,\n positionToolbarActions,\n positionToolbarAlertBanner,\n tableInstance,\n } = useMRT();\n\n const toolbarProps =\n muiTableToolbarBottomProps instanceof Function\n ? muiTableToolbarBottomProps(tableInstance)\n : muiTableToolbarBottomProps;\n\n return (\n <Toolbar\n variant=\"dense\"\n {...toolbarProps}\n sx={(theme) =>\n ({\n backgroundColor: theme.palette.background.default,\n backgroundImage: `linear-gradient(${alpha(\n theme.palette.common.white,\n 0.05,\n )},${alpha(theme.palette.common.white, 0.05)})`,\n bottom: tableInstance.state.fullScreen ? '0' : undefined,\n display: 'flex',\n justifyContent: 'space-between',\n overflowY: 'hidden',\n p: '0 0.5rem !important',\n position: tableInstance.state.fullScreen ? 'fixed' : undefined,\n width: 'calc(100% - 1rem)',\n zIndex: 1,\n ...toolbarProps?.sx,\n } as any)\n }\n >\n {!hideToolbarInternalActions && positionToolbarActions === 'bottom' ? (\n <MRT_ToolbarInternalButtons />\n ) : (\n <span />\n )}\n {positionToolbarAlertBanner === 'bottom' && <MRT_ToolbarAlertBanner />}\n {!manualPagination &&\n ['bottom', 'both'].includes(positionPagination ?? '') && (\n <MRT_TablePagination />\n )}\n </Toolbar>\n );\n};\n","import React, { FC, useEffect, useRef } from 'react';\nimport {\n LinearProgress,\n Paper,\n TableContainer,\n Collapse,\n Box,\n} from '@mui/material';\nimport { useMRT } from '../useMRT';\nimport { MRT_Table } from './MRT_Table';\nimport { MRT_ToolbarTop } from '../toolbar/MRT_ToolbarTop';\nimport { MRT_ToolbarBottom } from '../toolbar/MRT_ToolbarBottom';\n\ninterface Props {}\n\nexport const MRT_TableContainer: FC<Props> = () => {\n const {\n hideToolbarBottom,\n hideToolbarTop,\n isFetching,\n isLoading,\n muiTableContainerProps,\n tableInstance,\n } = useMRT();\n const fullScreen = tableInstance.state.fullScreen;\n const originalBodyOverflowStyle = useRef<string | undefined>();\n\n useEffect(() => {\n if (typeof window !== 'undefined') {\n originalBodyOverflowStyle.current = document?.body?.style?.overflow;\n }\n }, []);\n\n useEffect(() => {\n if (typeof window !== 'undefined') {\n if (fullScreen) {\n document.body.style.overflow = 'hidden';\n } else {\n document.body.style.overflow =\n originalBodyOverflowStyle.current ?? 'auto';\n }\n }\n }, [fullScreen]);\n\n const tableContainerProps =\n muiTableContainerProps instanceof Function\n ? muiTableContainerProps(tableInstance)\n : muiTableContainerProps;\n\n return (\n <TableContainer\n component={Paper}\n {...tableContainerProps}\n sx={{\n bottom: fullScreen ? '0' : undefined,\n height: fullScreen ? '100%' : undefined,\n left: fullScreen ? '0' : undefined,\n m: fullScreen ? '0' : undefined,\n position: fullScreen ? 'fixed' : undefined,\n right: fullScreen ? '0' : undefined,\n top: fullScreen ? '0' : undefined,\n transition: 'all 0.2s ease-in-out',\n width: fullScreen ? '100vw' : undefined,\n zIndex: fullScreen ? 1200 : 1,\n ...tableContainerProps?.sx,\n }}\n >\n {!hideToolbarTop && <MRT_ToolbarTop />}\n <Collapse in={isFetching || isLoading} unmountOnExit>\n <LinearProgress />\n </Collapse>\n <Box\n sx={{\n maxWidth: '100%',\n overflowX: 'auto',\n }}\n >\n <MRT_Table />\n </Box>\n {!hideToolbarBottom && <MRT_ToolbarBottom />}\n </TableContainer>\n );\n};\n","export interface MRT_Localization {\n actionsHeadColumnTitle: string;\n columnActionMenuButtonTitle: string;\n columnActionMenuItemClearSort: string;\n columnActionMenuItemGroupBy: string;\n columnActionMenuItemHideColumn: string;\n columnActionMenuItemSortAsc: string;\n columnActionMenuItemSortDesc: string;\n columnActionMenuItemUnGroupBy: string;\n columnShowHideMenuHideAll: string;\n columnShowHideMenuShowAll: string;\n expandAllButtonTitle: string;\n expandButtonTitle: string;\n filterMenuItemContains: string;\n filterMenuItemEmpty: string;\n filterMenuItemEndsWith: string;\n filterMenuItemEquals: string;\n filterMenuItemFuzzy: string;\n filterMenuItemNotEmpty: string;\n filterMenuItemNotEquals: string;\n filterMenuItemStartsWith: string;\n filterMenuTitle: string;\n filterTextFieldClearButtonTitle: string;\n filterTextFieldPlaceholder: string;\n rowActionButtonCancel: string;\n rowActionButtonSave: string;\n rowActionMenuButtonTitle: string;\n rowActionMenuItemEdit: string;\n rowActionsColumnTitle: string;\n searchTextFieldClearButtonTitle: string;\n searchTextFieldPlaceholder: string;\n selectAllCheckboxTitle: string;\n selectCheckboxTitle: string;\n showHideColumnsButtonTitle: string;\n toggleDensePaddingSwitchTitle: string;\n toggleFilterButtonTitle: string;\n toggleFullScreenButtonTitle: string;\n toggleSearchButtonTitle: string;\n toolbarAlertGroupedByMessage: string;\n toolbarAlertGroupedThenByMessage: string;\n toolbarAlertSelectionMessage: string;\n}\n\nexport const MRT_DefaultLocalization_EN: MRT_Localization = {\n actionsHeadColumnTitle: 'Actions',\n columnActionMenuButtonTitle: 'Column Actions',\n columnActionMenuItemClearSort: 'Clear sort',\n columnActionMenuItemGroupBy: 'Group by {column}',\n columnActionMenuItemHideColumn: 'Hide {column} column',\n columnActionMenuItemSortAsc: 'Sort by {column} ascending',\n columnActionMenuItemSortDesc: 'Sort by {column} descending',\n columnActionMenuItemUnGroupBy: 'Ungroup by {column}',\n columnShowHideMenuHideAll: 'Hide all',\n columnShowHideMenuShowAll: 'Show all',\n expandAllButtonTitle: 'Expand all',\n expandButtonTitle: 'Expand',\n filterMenuItemContains: 'Contains Exact',\n filterMenuItemEmpty: 'Empty',\n filterMenuItemEndsWith: 'Ends With',\n filterMenuItemEquals: 'Equals',\n filterMenuItemFuzzy: 'Fuzzy Match',\n filterMenuItemNotEmpty: 'Not Empty',\n filterMenuItemNotEquals: 'Not Equals',\n filterMenuItemStartsWith: 'Starts With',\n filterMenuTitle: 'Filter Mode',\n filterTextFieldClearButtonTitle: 'Clear filter',\n filterTextFieldPlaceholder: 'Filter by {column}',\n rowActionButtonCancel: 'Cancel',\n rowActionButtonSave: 'Save',\n rowActionMenuButtonTitle: 'Row Actions',\n rowActionMenuItemEdit: 'Edit',\n rowActionsColumnTitle: 'Actions',\n searchTextFieldClearButtonTitle: 'Clear search',\n searchTextFieldPlaceholder: 'Search',\n selectAllCheckboxTitle: 'Toggle select all',\n selectCheckboxTitle: 'Toggle select row',\n showHideColumnsButtonTitle: 'Show/Hide columns',\n toggleDensePaddingSwitchTitle: 'Toggle dense padding',\n toggleFilterButtonTitle: 'Toggle filters',\n toggleFullScreenButtonTitle: 'Toggle full screen',\n toggleSearchButtonTitle: 'Toggle search',\n toolbarAlertGroupedByMessage: 'Grouped by ',\n toolbarAlertGroupedThenByMessage: ', then by ',\n toolbarAlertSelectionMessage: '{selectedCount} of {rowCount} row(s) selected',\n};\n","import CancelIcon from '@mui/icons-material/Cancel';\nimport ClearAllIcon from '@mui/icons-material/ClearAll';\nimport CloseIcon from '@mui/icons-material/Close';\nimport DensityMediumIcon from '@mui/icons-material/DensityMedium';\nimport DensitySmallIcon from '@mui/icons-material/DensitySmall';\nimport DoubleArrowDownIcon from '@mui/icons-material/KeyboardDoubleArrowDown';\nimport DynamicFeedIcon from '@mui/icons-material/DynamicFeed';\nimport EditIcon from '@mui/icons-material/Edit';\nimport ExpandLessIcon from '@mui/icons-material/ExpandLess';\nimport ExpandMoreIcon from '@mui/icons-material/ExpandMore';\nimport FilterListIcon from '@mui/icons-material/FilterList';\nimport FilterListOffIcon from '@mui/icons-material/FilterListOff';\nimport FullscreenExitIcon from '@mui/icons-material/FullscreenExit';\nimport FullscreenIcon from '@mui/icons-material/Fullscreen';\nimport MoreHorizIcon from '@mui/icons-material/MoreHoriz';\nimport MoreVertIcon from '@mui/icons-material/MoreVert';\nimport SaveIcon from '@mui/icons-material/Save';\nimport SearchIcon from '@mui/icons-material/Search';\nimport SearchOffIcon from '@mui/icons-material/SearchOff';\nimport SortIcon from '@mui/icons-material/Sort';\nimport ViewColumnIcon from '@mui/icons-material/ViewColumn';\nimport VisibilityOffIcon from '@mui/icons-material/VisibilityOff';\n\nexport interface MRT_Icons {\n CancelIcon: any;\n ClearAllIcon: any;\n CloseIcon: any;\n DensityMediumIcon: any;\n DensitySmallIcon: any;\n DoubleArrowDownIcon: any;\n DynamicFeedIcon: any;\n EditIcon: any;\n ExpandLessIcon: any;\n ExpandMoreIcon: any;\n FilterListIcon: any;\n FilterListOffIcon: any;\n FullscreenExitIcon: any;\n FullscreenIcon: any;\n MoreHorizIcon: any;\n MoreVertIcon: any;\n SaveIcon: any;\n SearchIcon: any;\n SearchOffIcon: any;\n SortIcon: any;\n ViewColumnIcon: any;\n VisibilityOffIcon: any;\n}\n\nexport const MRT_Default_Icons: MRT_Icons = {\n CancelIcon,\n ClearAllIcon,\n CloseIcon,\n DensityMediumIcon,\n DensitySmallIcon,\n DoubleArrowDownIcon,\n DynamicFeedIcon,\n EditIcon,\n ExpandLessIcon,\n ExpandMoreIcon,\n FilterListIcon,\n FilterListOffIcon,\n FullscreenExitIcon,\n FullscreenIcon,\n MoreHorizIcon,\n MoreVertIcon,\n SaveIcon,\n SearchIcon,\n SearchOffIcon,\n SortIcon,\n ViewColumnIcon,\n VisibilityOffIcon,\n};\n","import React, { ChangeEvent, FC, MouseEvent, ReactNode } from 'react';\nimport {\n AlertProps,\n IconButtonProps,\n TableBodyProps,\n TableCellProps,\n TableContainerProps,\n TableFooterProps,\n TableHeadProps,\n TablePaginationProps,\n TableProps,\n TableRowProps,\n TextFieldProps,\n ToolbarProps,\n} from '@mui/material';\nimport {\n Cell,\n Column,\n ColumnInstance,\n // ColumnInterface,\n HeaderGroup,\n Row,\n TableInstance,\n TableOptions,\n TableState,\n UseColumnOrderInstanceProps,\n UseColumnOrderState,\n UseExpandedInstanceProps,\n UseExpandedOptions,\n UseExpandedRowProps,\n UseExpandedState,\n UseFiltersColumnOptions,\n UseFiltersColumnProps,\n UseFiltersInstanceProps,\n UseFiltersOptions,\n UseFiltersState,\n UseGlobalFiltersColumnOptions,\n UseGlobalFiltersInstanceProps,\n UseGlobalFiltersOptions,\n UseGlobalFiltersState,\n UseGroupByCellProps,\n UseGroupByColumnOptions,\n UseGroupByColumnProps,\n UseGroupByInstanceProps,\n UseGroupByOptions,\n UseGroupByRowProps,\n UseGroupByState,\n UsePaginationInstanceProps,\n UsePaginationOptions,\n UsePaginationState,\n UseResizeColumnsColumnOptions,\n UseResizeColumnsColumnProps,\n UseResizeColumnsOptions,\n UseResizeColumnsState,\n UseRowSelectInstanceProps,\n UseRowSelectOptions,\n UseRowSelectRowProps,\n UseRowSelectState,\n UseRowStateCellProps,\n UseRowStateInstanceProps,\n UseRowStateOptions,\n UseRowStateRowProps,\n UseRowStateState,\n UseSortByColumnOptions,\n UseSortByColumnProps,\n UseSortByInstanceProps,\n UseSortByOptions,\n UseSortByState,\n UseTableHeaderGroupProps,\n UseTableInstanceProps,\n UseTableOptions,\n} from 'react-table';\nimport { MaterialReactTableProvider } from './useMRT';\nimport { MRT_TableContainer } from './table/MRT_TableContainer';\nimport { MRT_Localization, MRT_DefaultLocalization_EN } from './localization';\nimport { MRT_Default_Icons, MRT_Icons } from './icons';\n\nexport type MRT_TableOptions<D extends {} = {}> = TableOptions<D> &\n UseExpandedOptions<D> &\n UseFiltersOptions<D> &\n UseGlobalFiltersOptions<D> &\n UseGroupByOptions<D> &\n UsePaginationOptions<D> &\n UseResizeColumnsOptions<D> &\n UseRowSelectOptions<D> &\n UseRowStateOptions<D> &\n UseSortByOptions<D> & {\n columns: (Column<D> & MRT_ColumnInterface)[];\n data: D[];\n initialState?: Partial<MRT_TableState>;\n };\n\nexport type MRT_TableInstance<D extends {} = {}> = TableInstance<D> &\n UseTableInstanceProps<D> &\n UseColumnOrderInstanceProps<D> &\n UseExpandedInstanceProps<D> &\n UseFiltersInstanceProps<D> &\n UseGlobalFiltersInstanceProps<D> &\n UseGroupByInstanceProps<D> &\n UsePaginationInstanceProps<D> &\n UseRowSelectInstanceProps<D> &\n UseRowStateInstanceProps<D> &\n UseSortByInstanceProps<D> & {\n columns: (Column<D> & MRT_ColumnInstance<D>)[];\n headerGroups: MRT_HeaderGroup<D>[];\n footerGroups: MRT_HeaderGroup<D>[];\n state: MRT_TableState<D>;\n rows: MRT_Row<D>[];\n page: MRT_Row<D>[];\n resetResizing: () => void;\n getToggleAllRowsExpandedProps: () => void;\n };\n\nexport type MRT_ColumnInterface<D extends {} = {}> =\n // ColumnInterface<D> &\n UseFiltersColumnOptions<D> &\n UseGlobalFiltersColumnOptions<D> &\n UseGroupByColumnOptions<D> &\n UseResizeColumnsColumnOptions<D> &\n UseSortByColumnOptions<D> & {\n Edit?: ({\n cell,\n onChange,\n }: {\n cell: MRT_Cell<D>;\n onChange?: (event: ChangeEvent<HTMLInputElement>) => void;\n }) => ReactNode;\n Filter?: ({ column }: { column: MRT_HeaderGroup<D> }) => ReactNode;\n Footer?: string;\n Header?: string;\n disableFilters?: boolean;\n editable?: boolean;\n muiTableBodyCellEditTextFieldProps?:\n | TextFieldProps\n | ((cell: MRT_Cell<D>) => TextFieldProps);\n muiTableBodyCellProps?:\n | TableCellProps\n | ((cell: MRT_Cell<D>) => TableCellProps);\n muiTableFooterCellProps?:\n | TableCellProps\n | ((column: Column<D>) => TableCellProps);\n muiTableHeadCellFilterTextFieldProps?:\n | TextFieldProps\n | ((column: Column<D>) => TextFieldProps);\n muiTableHeadCellProps?:\n | TableCellProps\n | ((column: Column<D>) => TableCellProps);\n onCellEditChange?: (\n event: ChangeEvent<HTMLInputElement>,\n cell: MRT_Cell<D>,\n ) => void;\n onFilterChange?: (\n event: ChangeEvent<HTMLInputElement>,\n filterValue: any,\n ) => void;\n };\n\nexport type MRT_ColumnInstance<D extends {} = {}> = ColumnInstance<D> &\n UseFiltersColumnProps<D> &\n UseGroupByColumnProps<D> &\n UseResizeColumnsColumnProps<D> &\n UseSortByColumnProps<D> & {\n columns?: MRT_ColumnInstance<D>[];\n };\n\nexport type MRT_HeaderGroup<D extends {} = {}> = HeaderGroup<D> &\n MRT_ColumnInstance<D> &\n UseTableHeaderGroupProps<D> & {\n headers: MRT_HeaderGroup<D>[];\n };\n\nexport type MRT_Row<D extends {} = {}> = Row<D> &\n UseExpandedRowProps<D> &\n UseGroupByRowProps<D> &\n UseRowSelectRowProps<D> &\n UseRowStateRowProps<D> & {\n cells: MRT_Cell<D>[];\n };\n\nexport type MRT_Cell<D extends {} = {}, _V = any> = Cell<D> &\n UseGroupByCellProps<D> &\n UseRowStateCellProps<D> & {};\n\nexport type MRT_FilterType =\n | 'contains'\n | 'empty'\n | 'endsWith'\n | 'equals'\n | 'fuzzy'\n | 'notEmpty'\n | 'notEquals'\n | 'startsWith';\n\nexport type MRT_TableState<D extends {} = {}> = TableState<D> &\n UseColumnOrderState<D> &\n UseExpandedState<D> &\n UseFiltersState<D> &\n UseGlobalFiltersState<D> &\n UseGroupByState<D> &\n UsePaginationState<D> &\n UseResizeColumnsState<D> &\n UseRowSelectState<D> &\n UseRowStateState<D> &\n UseSortByState<D> & {\n currentEditingRow: MRT_Row<D> | null;\n currentFilterTypes: { [key: string]: MRT_FilterType };\n densePadding: boolean;\n fullScreen: boolean;\n showFilters: boolean;\n showSearch: boolean;\n };\n\nexport type MaterialReactTableProps<D extends {} = {}> = UseTableOptions<D> &\n UseExpandedOptions<D> &\n UseFiltersOptions<D> &\n UseGlobalFiltersOptions<D> &\n UseGroupByOptions<D> &\n UsePaginationOptions<D> &\n UseResizeColumnsOptions<D> &\n UseRowSelectOptions<D> &\n UseRowStateOptions<D> &\n UseSortByOptions<D> &\n MRT_TableOptions<D> & {\n disableColumnActions?: boolean;\n disableColumnHiding?: boolean;\n disableDensePaddingToggle?: boolean;\n disableExpandAll?: boolean;\n disableFullScreenToggle?: boolean;\n disableSelectAll?: boolean;\n disableSubRowTree?: boolean;\n enableColumnGrouping?: boolean;\n enableColumnResizing?: boolean;\n enableRowActions?: boolean;\n enableRowEditing?: boolean;\n enableRowNumbers?: boolean;\n enableSelection?: boolean;\n hideTableFooter?: boolean;\n hideTableHead?: boolean;\n hideToolbarBottom?: boolean;\n hideToolbarInternalActions?: boolean;\n hideToolbarTop?: boolean;\n icons?: Partial<MRT_Icons>;\n idPrefix?: string;\n isFetching?: boolean;\n isLoading?: boolean;\n localization?: Partial<MRT_Localization>;\n muiSearchTextFieldProps?: TextFieldProps;\n muiTableBodyCellEditTextFieldProps?:\n | TextFieldProps\n | ((cell?: MRT_Cell<D>) => TextFieldProps);\n muiTableBodyCellProps?:\n | TableCellProps\n | ((cell?: MRT_Cell<D>) => TableCellProps);\n muiTableBodyProps?:\n | TableBodyProps\n | ((tableInstance: MRT_TableInstance<D>) => TableBodyProps);\n muiTableBodyRowProps?: TableRowProps | ((row: Row<D>) => TableRowProps);\n muiTableContainerProps?:\n | TableContainerProps\n | ((tableInstance: MRT_TableInstance<D>) => TableContainerProps);\n muiTableDetailPanelProps?:\n | TableCellProps\n | ((row: Row<D>) => TableCellProps);\n muiTableFooterCellProps?:\n | TableCellProps\n | ((column: Column<D>) => TableCellProps);\n muiTableFooterProps?:\n | TableFooterProps\n | ((tableInstance: MRT_TableInstance<D>) => TableFooterProps);\n muiTableFooterRowProps?:\n | TableRowProps\n | ((footerGroup: MRT_HeaderGroup<D>) => TableRowProps);\n muiTableHeadCellFilterTextFieldProps?:\n | TextFieldProps\n | ((column: Column<D>) => TextFieldProps);\n muiTableHeadCellProps?:\n | TableCellProps\n | ((column: Column<D>) => TableCellProps);\n muiTableHeadProps?:\n | TableHeadProps\n | ((tableInstance: MRT_TableInstance<D>) => TableHeadProps);\n muiTableHeadRowProps?:\n | TableRowProps\n | ((row: MRT_HeaderGroup<D>) => TableRowProps);\n muiTablePaginationProps?:\n | Partial<TablePaginationProps>\n | ((\n tableInstance: MRT_TableInstance<D>,\n ) => Partial<TablePaginationProps>);\n muiTableProps?:\n | TableProps\n | ((tableInstance: MRT_TableInstance<D>) => TableProps);\n muiTableToolbarAlertBannerProps?:\n | AlertProps\n | ((tableInstance: MRT_TableInstance<D>) => AlertProps);\n muiTableToolbarBottomProps?:\n | ToolbarProps\n | ((tableInstance: MRT_TableInstance<D>) => ToolbarProps);\n muiTableToolbarTopProps?:\n | ToolbarProps\n | ((tableInstance: MRT_TableInstance<D>) => ToolbarProps);\n onCellClick?: (\n event: MouseEvent<HTMLTableCellElement>,\n cell: MRT_Cell<D>,\n ) => void;\n onColumnHide?: (column: Column<D>, visibleColumns: Column<D>[]) => void;\n onDetailPanelClick?: (\n event: MouseEvent<HTMLTableCellElement>,\n row: Row<D>,\n ) => void;\n onGlobalFilterChange?: (event: ChangeEvent<HTMLInputElement>) => void;\n onRowClick?: (event: MouseEvent<HTMLTableRowElement>, row: Row<D>) => void;\n onRowEditSubmit?: (row: Row<D>) => Promise<void> | void;\n onRowExpandChange?: (\n event: MouseEvent<HTMLButtonElement>,\n row: Row<D>,\n ) => void;\n onRowSelectChange?: (\n event: ChangeEvent,\n row: Row<D>,\n selectedRows: Row<D>[],\n ) => void;\n onSelectAllChange?: (event: ChangeEvent, selectedRows: Row<D>[]) => void;\n positionActionsColumn?: 'first' | 'last';\n positionPagination?: 'bottom' | 'top' | 'both';\n positionToolbarActions?: 'bottom' | 'top';\n positionToolbarAlertBanner?: 'bottom' | 'top';\n renderDetailPanel?: (row: Row<D>) => ReactNode;\n renderRowActionMenuItems?: (\n rowData: Row<D>,\n tableInstance: MRT_TableInstance<D>,\n closeMenu: () => void,\n ) => ReactNode[];\n renderRowActions?: (\n row: Row<D>,\n tableInstance: MRT_TableInstance<D>,\n ) => ReactNode;\n renderToolbarCustomActions?: (\n tableInstance: MRT_TableInstance<D>,\n ) => ReactNode;\n renderToolbarInternalActions?: (\n tableInstance: MRT_TableInstance<D>,\n {\n MRT_ToggleSearchButton,\n MRT_ToggleFiltersButton,\n MRT_ShowHideColumnsButton,\n MRT_ToggleDensePaddingButton,\n MRT_FullScreenToggleButton,\n }: {\n MRT_ToggleSearchButton: FC<IconButtonProps>;\n MRT_ToggleFiltersButton: FC<IconButtonProps>;\n MRT_ShowHideColumnsButton: FC<IconButtonProps>;\n MRT_ToggleDensePaddingButton: FC<IconButtonProps>;\n MRT_FullScreenToggleButton: FC<IconButtonProps>;\n },\n ) => ReactNode;\n };\n\nexport default <D extends {}>({\n defaultColumn = { minWidth: 50, maxWidth: 1000 },\n icons,\n localization,\n positionActionsColumn = 'first',\n positionPagination = 'bottom',\n positionToolbarActions = 'top',\n positionToolbarAlertBanner = 'top',\n ...rest\n}: MaterialReactTableProps<D>) => (\n <MaterialReactTableProvider\n defaultColumn={defaultColumn}\n icons={{ ...MRT_Default_Icons, ...icons }}\n localization={{ ...MRT_DefaultLocalization_EN, ...localization }}\n positionActionsColumn={positionActionsColumn}\n positionPagination={positionPagination}\n positionToolbarActions={positionToolbarActions}\n positionToolbarAlertBanner={positionToolbarAlertBanner}\n {...rest}\n >\n <MRT_TableContainer />\n </MaterialReactTableProvider>\n);\n"],"names":["fuzzyFilterFN","rows","id","filterValue","matchSorter","toString","trim","keys","sorter","rankedItems","autoRemove","val","containsFilterFN","filter","row","values","toLowerCase","includes","startsWithFilterFN","startsWith","endsWithFilterFN","endsWith","equalsFilterFN","notEqualsFilterFN","emptyFilterFN","_filterValue","notEmptyFilterFN","defaultFilterFNs","contains","empty","equals","fuzzy","notEmpty","notEquals","MaterialReactTableContext","createContext","MaterialReactTableProvider","props","hooks","useFilters","useGlobalFilter","useGroupBy","useSortBy","useExpanded","usePagination","useRowSelect","enableColumnResizing","unshift","useResizeColumns","useFlexLayout","useState","currentEditingRow","setCurrentEditingRow","initialState","densePadding","setDensePadding","fullScreen","setFullScreen","showFilters","setShowFilters","showSearch","setShowSearch","filterTypes","useMemo","Object","assign","columns","map","c","accessor","filters","currentFilterTypes","setCurrentFilterTypes","column","tableInstance","useTable","useControlledState","state","idPrefix","Math","random","substring","anyRowsCanExpand","some","canExpand","anyRowsExpanded","isExpanded","React","Provider","value","children","useMRT","useContext","MRT_FilterMenu","anchorEl","onSelect","setAnchorEl","localization","type","label","filterMenuItemFuzzy","divider","filterMenuItemContains","filterMenuItemStartsWith","filterMenuItemEndsWith","filterMenuItemEquals","filterMenuItemNotEquals","filterMenuItemEmpty","filterMenuItemNotEmpty","handleSelectMenuItem","prev","setFilter","filterType","Menu","open","anchorOrigin","vertical","horizontal","onClose","Typography","sx","fontWeight","p","fontSize","filterMenuTitle","Divider","MenuItem","key","onClick","selected","MRT_FilterTextField","icons","FilterListIcon","CloseIcon","muiTableHeadCellFilterTextFieldProps","mTableHeadCellFilterTextFieldProps","Function","mcTableHeadCellFilterTextFieldProps","textFieldProps","style","setFilterValue","handleChange","useAsyncDebounce","undefined","handleFilterMenuOpen","event","currentTarget","handleClear","handleClearFilterChip","Filter","showFilterChip","filterPlaceholder","filterTextFieldPlaceholder","replace","String","Header","TextField","fullWidth","inputProps","textOverflow","title","margin","placeholder","onChange","e","target","stopPropagation","variant","InputProps","startAdornment","InputAdornment","position","Tooltip","arrow","IconButton","size","height","width","Chip","onDelete","endAdornment","placement","filterTextFieldClearButtonTitle","disabled","length","minWidth","MRT_ColumnActionMenu","disableColumnHiding","disableFilters","disableSortBy","enableColumnGrouping","ClearAllIcon","DynamicFeedIcon","SortIcon","VisibilityOffIcon","filterMenuAnchorEl","setFilterMenuAnchorEl","handleClearSort","clearSortBy","handleSortAsc","toggleSortBy","handleSortDesc","handleHideColumn","toggleHidden","handleGroupByColumn","toggleGroupBy","handleFilterByColumn","setTimeout","document","getElementById","focus","handleOpenFilterModeMenu","MenuList","canSort","isSorted","ListItemIcon","ListItemText","columnActionMenuItemClearSort","isSortedDesc","columnActionMenuItemSortAsc","transform","columnActionMenuItemSortDesc","canFilter","onMouseEnter","ArrowRightIcon","canGroupBy","isGrouped","columnActionMenuItemHideColumn","MRT_ToggleColumnActionMenuButton","MoreVertIcon","handleClick","preventDefault","enterDelay","enterNextDelay","columnActionMenuButtonTitle","mr","mt","opacity","transition","commonTableHeadCellStyles","pt","verticalAlign","MRT_TableHeadCell","disableColumnActions","muiTableHeadCellProps","isParentHeader","mTableHeadCellProps","mcTableHeadCellProps","tableCellProps","getHeaderProps","sortTooltip","columnHeader","render","TableCell","align","Box","alignItems","display","justifyContent","getSortByToggleProps","flexWrap","whiteSpace","TableSortLabel","active","direction","flexItem","orientation","onDoubleClick","resetResizing","getResizerProps","borderRightWidth","borderRadius","maxHeight","Collapse","MRT_EditCellTextField","cell","muiTableBodyCellEditTextFieldProps","onCellEditChange","mTableBodyCellEditTextFieldProps","mcTableBodyCellEditTextFieldProps","editable","Edit","commonTableBodyCellStyles","commonTableBodyButtonCellStyles","textAlign","MRT_TableBodyCell","onCellClick","muiTableBodyCellProps","mTableCellBodyProps","mcTableCellBodyProps","getCellProps","isPlaceholder","isAggregated","subRows","MRT_SelectCheckbox","selectAll","onRowSelectChange","onSelectAllChange","onSelectChange","getToggleAllRowsSelectedProps","selectedFlatRows","getToggleRowSelectedProps","checkboxProps","selectAllCheckboxTitle","selectCheckboxTitle","Checkbox","MRT_ExpandAllButton","DoubleArrowDownIcon","getToggleAllRowsExpandedProps","expandAllButtonTitle","isAllRowsExpanded","MRT_TableSpacerCell","mTableBodyCellrops","MRT_TableHeadCellActions","actionsHeadColumnTitle","MRT_TableHeadRow","headerGroup","disableExpandAll","enableRowActions","enableRowEditing","enableRowNumbers","enableSelection","muiTableHeadRowProps","positionActionsColumn","renderDetailPanel","headers","h","mTableHeadRowProps","tableRowProps","getHeaderGroupProps","TableRow","expandedDepth","MRT_TableHead","muiTableHeadProps","tableHeadProps","TableHead","headerGroups","MRT_TableDetailPanel","muiTableBodyRowProps","muiTableDetailPanelProps","onDetailPanelClick","colSpan","visibleColumns","borderBottom","pb","MRT_ExpandButton","ExpandMoreIcon","pl","depth","expandButtonTitle","getToggleRowExpandedProps","MRT_RowActionMenu","handleEdit","EditIcon","renderRowActionMenuItems","gap","rowActionMenuItemEdit","MRT_EditActionButtons","CancelIcon","SaveIcon","onRowEditSubmit","handleCancel","original","handleSave","rowActionButtonCancel","rowActionButtonSave","color","commonIconButtonStyles","marginRight","MRT_ToggleRowActionMenuButton","MoreHorizIcon","renderRowActions","handleOpenRowActionMenu","rowActionMenuButtonTitle","MRT_TableBodyRow","onRowClick","mTableBodyRowProps","getRowProps","hover","theme","backgroundColor","isSelected","alpha","palette","primary","light","index","cells","MRT_TableBody","muiTableBodyProps","manualPagination","page","mTableBodyProps","tableBodyProps","getTableBodyProps","TableBody","overflowY","prepareRow","MRT_TableFooterCell","muiTableFooterCellProps","mTableFooterCellProps","mcTableFooterCellProps","getFooterProps","MRT_TableFooterRow","footerGroup","muiTableFooterRowProps","Footer","mTableFooterRowProps","getFooterGroupProps","MRT_TableFooter","muiTableFooterProps","tableFooterProps","TableFooter","footerGroups","MRT_Table","muiTableProps","hideTableHead","hideTableFooter","mTableProps","tableProps","getTableProps","Table","MRT_SearchTextField","SearchIcon","muiSearchTextFieldProps","onGlobalFilterChange","searchValue","setSearchValue","setGlobalFilter","searchTextFieldPlaceholder","searchTextFieldClearButtonTitle","justifySelf","MRT_FullScreenToggleButton","rest","FullscreenExitIcon","FullscreenIcon","toggleFullScreenButtonTitle","toggleFilterButtonTitle","MRT_ShowHideColumnsMenu","allChildColumnsVisible","every","childColumn","isVisible","switchChecked","handleToggleColumnHidden","forEach","FormControlLabel","checked","control","Switch","i","MRT_ShowHideColumnsButton","ViewColumnIcon","showHideColumnsButtonTitle","Button","getToggleHideAllColumnsProps","indeterminate","toggleHideAllColumns","columnShowHideMenuHideAll","columnShowHideMenuShowAll","MRT_ToggleDensePaddingButton","DensityMediumIcon","DensitySmallIcon","toggleDensePaddingSwitchTitle","MRT_ToggleFiltersButton","FilterListOffIcon","MRT_ToggleSearchButton","SearchOffIcon","handleToggleSearch","toggleSearchButtonTitle","MRT_ToolbarInternalButtons","disableDensePaddingToggle","disableGlobalFilter","disableFullScreenToggle","renderToolbarInternalActions","MRT_TablePagination","muiTablePaginationProps","tablePaginationProps","handleChangeRowsPerPage","setPageSize","gotoPage","TablePagination","component","count","onPageChange","_","newPage","onRowsPerPageChange","pageIndex","rowsPerPage","pageSize","SelectProps","showFirstButton","showLastButton","zIndex","MRT_ToolbarAlertBanner","muiTableToolbarAlertBannerProps","positionToolbarAlertBanner","positionToolbarActions","renderToolbarCustomActions","isMobile","useMediaQuery","alertProps","selectMessage","toolbarAlertSelectionMessage","flatRows","groupedByMessage","groupBy","toolbarAlertGroupedByMessage","columnId","Fragment","toolbarAlertGroupedThenByMessage","allColumns","find","displayAbsolute","timeout","Alert","icon","left","right","minHeight","top","MRT_ToolbarTop","hideToolbarInternalActions","muiTableToolbarTopProps","positionPagination","toolbarProps","Toolbar","background","backgroundImage","common","white","MRT_ToolbarBottom","muiTableToolbarBottomProps","bottom","MRT_TableContainer","hideToolbarBottom","hideToolbarTop","isFetching","isLoading","muiTableContainerProps","originalBodyOverflowStyle","useRef","useEffect","window","current","body","overflow","tableContainerProps","TableContainer","Paper","m","unmountOnExit","LinearProgress","maxWidth","overflowX","MRT_DefaultLocalization_EN","columnActionMenuItemGroupBy","columnActionMenuItemUnGroupBy","rowActionsColumnTitle","MRT_Default_Icons","ExpandLessIcon","defaultColumn"],"mappings":"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"}
1
+ {"version":3,"file":"material-react-table.cjs.development.js","sources":["../src/filtersFNs.ts","../src/useMRT.tsx","../src/menus/MRT_FilterTypeMenu.tsx","../src/inputs/MRT_FilterTextField.tsx","../src/menus/MRT_ColumnActionMenu.tsx","../src/buttons/MRT_ToggleColumnActionMenuButton.tsx","../src/head/MRT_TableHeadCell.tsx","../src/inputs/MRT_EditCellTextField.tsx","../src/body/MRT_TableBodyCell.tsx","../src/inputs/MRT_SelectCheckbox.tsx","../src/buttons/MRT_ExpandAllButton.tsx","../src/table/MRT_TableSpacerCell.tsx","../src/head/MRT_TableHeadCellActions.tsx","../src/head/MRT_TableHeadRow.tsx","../src/head/MRT_TableHead.tsx","../src/body/MRT_TableDetailPanel.tsx","../src/buttons/MRT_ExpandButton.tsx","../src/menus/MRT_RowActionMenu.tsx","../node_modules/regenerator-runtime/runtime.js","../src/buttons/MRT_EditActionButtons.tsx","../src/buttons/MRT_ToggleRowActionMenuButton.tsx","../src/body/MRT_TableBodyRow.tsx","../src/body/MRT_TableBody.tsx","../src/footer/MRT_TableFooterCell.tsx","../src/footer/MRT_TableFooterRow.tsx","../src/footer/MRT_TableFooter.tsx","../src/table/MRT_Table.tsx","../src/inputs/MRT_SearchTextField.tsx","../src/buttons/MRT_FullScreenToggleButton.tsx","../src/menus/MRT_ShowHideColumnsMenu.tsx","../src/buttons/MRT_ShowHideColumnsButton.tsx","../src/buttons/MRT_ToggleDensePaddingButton.tsx","../src/buttons/MRT_ToggleFiltersButton.tsx","../src/buttons/MRT_ToggleSearchButton.tsx","../src/toolbar/MRT_ToolbarInternalButtons.tsx","../src/toolbar/MRT_TablePagination.tsx","../src/toolbar/MRT_ToolbarAlertBanner.tsx","../src/toolbar/MRT_ToolbarTop.tsx","../src/toolbar/MRT_ToolbarBottom.tsx","../src/table/MRT_TableContainer.tsx","../src/localization.ts","../src/icons.ts","../src/MaterialReactTable.tsx"],"sourcesContent":["import { matchSorter } from 'match-sorter';\nimport { MRT_Row } from '.';\n\nexport const fuzzyFilterFN = (\n rows: MRT_Row[],\n id: string,\n filterValue: string | number,\n) =>\n matchSorter(rows, filterValue.toString().trim(), {\n keys: [`values.${id}`],\n sorter: (rankedItems) => rankedItems,\n });\n\nfuzzyFilterFN.autoRemove = (val: any) => !val;\n\nexport const containsFilterFN = (\n rows: MRT_Row[],\n id: string,\n filterValue: string | number,\n) =>\n rows.filter((row) =>\n row.values[id]\n .toString()\n .toLowerCase()\n .trim()\n .includes(filterValue.toString().toLowerCase().trim()),\n );\n\ncontainsFilterFN.autoRemove = (val: any) => !val;\n\nexport const startsWithFilterFN = (\n rows: MRT_Row[],\n id: string,\n filterValue: string | number,\n) =>\n rows.filter((row) =>\n row.values[id]\n .toString()\n .toLowerCase()\n .trim()\n .startsWith(filterValue.toString().toLowerCase().trim()),\n );\n\nstartsWithFilterFN.autoRemove = (val: any) => !val;\n\nexport const endsWithFilterFN = (\n rows: MRT_Row[],\n id: string,\n filterValue: string | number,\n) =>\n rows.filter((row) =>\n row.values[id]\n .toString()\n .toLowerCase()\n .trim()\n .endsWith(filterValue.toString().toLowerCase().trim()),\n );\n\nendsWithFilterFN.autoRemove = (val: any) => !val;\n\nexport const equalsFilterFN = (\n rows: MRT_Row[],\n id: string,\n filterValue: string | number,\n) =>\n rows.filter(\n (row) =>\n row.values[id].toString().toLowerCase().trim() ===\n filterValue.toString().toLowerCase().trim(),\n );\n\nequalsFilterFN.autoRemove = (val: any) => !val;\n\nexport const notEqualsFilterFN = (\n rows: MRT_Row[],\n id: string,\n filterValue: string | number,\n) =>\n rows.filter(\n (row) =>\n row.values[id].toString().toLowerCase().trim() !==\n filterValue.toString().toLowerCase().trim(),\n );\n\nnotEqualsFilterFN.autoRemove = (val: any) => !val;\n\nexport const emptyFilterFN = (\n rows: MRT_Row[],\n id: string,\n _filterValue: string | number,\n) => rows.filter((row) => !row.values[id].toString().toLowerCase().trim());\n\nemptyFilterFN.autoRemove = (val: any) => !val;\n\nexport const notEmptyFilterFN = (\n rows: MRT_Row[],\n id: string,\n _filterValue: string | number,\n) => rows.filter((row) => !!row.values[id].toString().toLowerCase().trim());\n\nnotEmptyFilterFN.autoRemove = (val: any) => !val;\n\nexport const defaultFilterFNs = {\n contains: containsFilterFN,\n empty: emptyFilterFN,\n endsWith: endsWithFilterFN,\n equals: equalsFilterFN,\n fuzzy: fuzzyFilterFN,\n notEmpty: notEmptyFilterFN,\n notEquals: notEqualsFilterFN,\n startsWith: startsWithFilterFN,\n};\n","import React, {\n Context,\n PropsWithChildren,\n createContext,\n useContext,\n useMemo,\n useState,\n Dispatch,\n SetStateAction,\n} from 'react';\nimport {\n PluginHook,\n useExpanded,\n useFilters,\n useFlexLayout,\n useGlobalFilter,\n useGroupBy,\n usePagination,\n useResizeColumns,\n useRowSelect,\n useSortBy,\n useTable,\n} from 'react-table';\nimport { MRT_FilterType, MRT_Row, MRT_TableInstance } from '.';\nimport { defaultFilterFNs } from './filtersFNs';\nimport { MRT_Icons } from './icons';\nimport { MRT_Localization } from './localization';\nimport { MaterialReactTableProps } from './MaterialReactTable';\n\nexport type UseMRT<D extends {} = {}> = MaterialReactTableProps<D> & {\n anyRowsCanExpand: boolean;\n anyRowsExpanded: boolean;\n icons: MRT_Icons;\n idPrefix: string;\n localization: MRT_Localization;\n setCurrentEditingRow: Dispatch<SetStateAction<MRT_Row<D> | null>>;\n setCurrentFilterTypes: Dispatch<\n SetStateAction<{\n [key: string]: MRT_FilterType;\n }>\n >;\n setDensePadding: Dispatch<SetStateAction<boolean>>;\n setFullScreen: Dispatch<SetStateAction<boolean>>;\n setShowFilters: Dispatch<SetStateAction<boolean>>;\n setShowSearch: Dispatch<SetStateAction<boolean>>;\n tableInstance: MRT_TableInstance<D>;\n};\n\nconst MaterialReactTableContext = (<D extends {} = {}>() =>\n createContext<UseMRT<D>>({} as UseMRT<D>) as Context<UseMRT<D>>)();\n\nexport const MaterialReactTableProvider = <D extends {} = {}>(\n props: PropsWithChildren<MaterialReactTableProps<D>>,\n) => {\n const hooks: PluginHook<D>[] = [\n useFilters,\n useGlobalFilter,\n useGroupBy,\n useSortBy,\n useExpanded,\n usePagination,\n useRowSelect,\n ];\n\n if (props.enableColumnResizing)\n hooks.unshift(useResizeColumns, useFlexLayout);\n\n const [currentEditingRow, setCurrentEditingRow] = useState<MRT_Row<D> | null>(\n null,\n );\n const [densePadding, setDensePadding] = useState(\n props.initialState?.densePadding ?? false,\n );\n const [fullScreen, setFullScreen] = useState(\n props.initialState?.fullScreen ?? false,\n );\n const [showFilters, setShowFilters] = useState(\n props.initialState?.showFilters ?? false,\n );\n const [showSearch, setShowSearch] = useState(\n props.initialState?.showSearch ?? false,\n );\n\n const filterTypes = useMemo<Partial<{ [key in MRT_FilterType]: any }>>(\n () => ({\n ...defaultFilterFNs,\n ...props.filterTypes,\n }),\n [props.filterTypes],\n );\n\n const [currentFilterTypes, setCurrentFilterTypes] = useState<{\n [key: string]: MRT_FilterType;\n }>(() =>\n Object.assign(\n {},\n ...props.columns\n .map((c) => c.accessor?.toString() as string)\n .map((accessor) => ({\n [accessor]:\n props?.initialState?.filters?.[accessor as any] ?? 'fuzzy',\n })),\n ),\n );\n\n const columns = useMemo(\n () =>\n props.columns.map((column) => {\n column.filter =\n filterTypes[currentFilterTypes[column.accessor as string]];\n return column;\n }),\n [props.columns, filterTypes, currentFilterTypes],\n );\n\n const tableInstance = useTable(\n {\n ...props,\n columns,\n // @ts-ignore\n filterTypes,\n useControlledState: (state) =>\n useMemo(\n () => ({\n ...state,\n currentEditingRow,\n currentFilterTypes,\n densePadding,\n fullScreen,\n showFilters,\n showSearch,\n //@ts-ignore\n ...props?.useControlledState?.(state),\n }),\n [\n currentEditingRow,\n currentFilterTypes,\n densePadding,\n fullScreen,\n showFilters,\n showSearch,\n state,\n ],\n ),\n },\n ...hooks,\n ) as MRT_TableInstance<D>;\n\n const idPrefix = useMemo(\n () => props.idPrefix ?? Math.random().toString(36).substring(2, 9),\n [props.idPrefix],\n );\n const anyRowsCanExpand = useMemo(\n () => tableInstance.rows.some((row) => row.canExpand),\n [tableInstance.rows],\n );\n const anyRowsExpanded = useMemo(\n () => tableInstance.rows.some((row) => row.isExpanded),\n [tableInstance.rows],\n );\n\n return (\n <MaterialReactTableContext.Provider\n value={{\n ...props,\n anyRowsCanExpand,\n anyRowsExpanded,\n idPrefix,\n //@ts-ignore\n setCurrentEditingRow,\n setCurrentFilterTypes,\n setDensePadding,\n setFullScreen,\n setShowFilters,\n setShowSearch,\n //@ts-ignore\n tableInstance,\n }}\n >\n {props.children}\n </MaterialReactTableContext.Provider>\n );\n};\n\nexport const useMRT = <D extends {} = {}>(): UseMRT<D> =>\n useContext<UseMRT<D>>(\n MaterialReactTableContext as unknown as Context<UseMRT<D>>,\n );\n","import React, { FC, useMemo } from 'react';\nimport { Menu, MenuItem, MenuList } from '@mui/material';\nimport { useMRT } from '../useMRT';\nimport { MRT_FilterType, MRT_HeaderGroup } from '..';\n\ninterface Props {\n anchorEl: HTMLElement | null;\n column: MRT_HeaderGroup;\n setAnchorEl: (anchorEl: HTMLElement | null) => void;\n onSelect?: () => void;\n}\n\nexport const MRT_FilterTypeMenu: FC<Props> = ({\n anchorEl,\n column,\n onSelect,\n setAnchorEl,\n}) => {\n const { localization, setCurrentFilterTypes, tableInstance } = useMRT();\n\n const filterTypes: {\n type: MRT_FilterType;\n label: string;\n divider: boolean;\n }[] = useMemo(\n () => [\n {\n type: 'fuzzy',\n label: localization.filterMenuItemFuzzy,\n divider: false,\n },\n {\n type: 'contains',\n label: localization.filterMenuItemContains,\n divider: true,\n },\n {\n type: 'startsWith',\n label: localization.filterMenuItemStartsWith,\n divider: false,\n },\n {\n type: 'endsWith',\n label: localization.filterMenuItemEndsWith,\n divider: true,\n },\n {\n type: 'equals',\n label: localization.filterMenuItemEquals,\n divider: false,\n },\n {\n type: 'notEquals',\n label: localization.filterMenuItemNotEquals,\n divider: true,\n },\n {\n type: 'empty',\n label: localization.filterMenuItemEmpty,\n divider: false,\n },\n {\n type: 'notEmpty',\n label: localization.filterMenuItemNotEmpty,\n divider: false,\n },\n ],\n [],\n );\n\n const handleSelectFilterType = (value: MRT_FilterType) => {\n setAnchorEl(null);\n setCurrentFilterTypes((prev: { [key: string]: MRT_FilterType }) => ({\n ...prev,\n [column.id]: value,\n }));\n if (['empty', 'notEmpty'].includes(value)) {\n column.setFilter(' ');\n }\n onSelect?.();\n };\n\n const filterType = tableInstance.state.currentFilterTypes[column.id];\n\n return (\n <Menu\n anchorEl={anchorEl}\n anchorOrigin={{ vertical: 'center', horizontal: 'right' }}\n onClose={() => setAnchorEl(null)}\n open={!!anchorEl}\n >\n <MenuList dense={tableInstance.state.densePadding} disablePadding>\n {filterTypes.map(({ type, label, divider }) => (\n <MenuItem\n divider={divider}\n key={type}\n onClick={() => handleSelectFilterType(type)}\n selected={type === filterType}\n value={type}\n >\n {label}\n </MenuItem>\n ))}\n </MenuList>\n </Menu>\n );\n};\n","import React, { ChangeEvent, FC, MouseEvent, useState } from 'react';\nimport {\n Chip,\n IconButton,\n InputAdornment,\n TextField,\n TextFieldProps,\n Tooltip,\n} from '@mui/material';\nimport { useAsyncDebounce } from 'react-table';\nimport { useMRT } from '../useMRT';\nimport { MRT_HeaderGroup } from '..';\nimport { MRT_FilterTypeMenu } from '../menus/MRT_FilterTypeMenu';\n\ninterface Props {\n column: MRT_HeaderGroup;\n}\n\nexport const MRT_FilterTextField: FC<Props> = ({ column }) => {\n const {\n icons: { FilterListIcon, CloseIcon },\n idPrefix,\n localization,\n muiTableHeadCellFilterTextFieldProps,\n setCurrentFilterTypes,\n tableInstance,\n } = useMRT();\n\n const [anchorEl, setAnchorEl] = useState<null | HTMLElement>(null);\n\n const mTableHeadCellFilterTextFieldProps =\n muiTableHeadCellFilterTextFieldProps instanceof Function\n ? muiTableHeadCellFilterTextFieldProps(column)\n : muiTableHeadCellFilterTextFieldProps;\n\n const mcTableHeadCellFilterTextFieldProps =\n column.muiTableHeadCellFilterTextFieldProps instanceof Function\n ? column.muiTableHeadCellFilterTextFieldProps(column)\n : column.muiTableHeadCellFilterTextFieldProps;\n\n const textFieldProps = {\n ...mTableHeadCellFilterTextFieldProps,\n ...mcTableHeadCellFilterTextFieldProps,\n style: {\n ...mTableHeadCellFilterTextFieldProps?.style,\n ...mcTableHeadCellFilterTextFieldProps?.style,\n },\n } as TextFieldProps;\n\n const [filterValue, setFilterValue] = useState('');\n\n const handleChange = useAsyncDebounce((value) => {\n column.setFilter(value ?? undefined);\n }, 150);\n\n const handleFilterMenuOpen = (event: MouseEvent<HTMLElement>) => {\n setAnchorEl(event.currentTarget);\n };\n\n const handleClear = () => {\n setFilterValue('');\n column.setFilter(undefined);\n };\n\n const handleClearFilterChip = () => {\n setFilterValue('');\n column.setFilter(undefined);\n setCurrentFilterTypes((prev) => ({ ...prev, [column.id]: 'fuzzy' }));\n };\n\n if (column.Filter) {\n return <>{column.Filter?.({ column })}</>;\n }\n\n const filterType = tableInstance.state.currentFilterTypes[column.id];\n const filterChipLabel = ['empty', 'notEmpty'].includes(filterType);\n const filterPlaceholder = localization.filterTextFieldPlaceholder?.replace(\n '{column}',\n String(column.Header),\n );\n\n return (\n <>\n <TextField\n fullWidth\n id={`mrt-${idPrefix}-${column.id}-filter-text-field`}\n inputProps={{\n disabled: !!filterChipLabel,\n sx: {\n textOverflow: 'ellipsis',\n width: filterChipLabel ? 0 : 'auto',\n },\n title: filterPlaceholder,\n }}\n margin=\"none\"\n placeholder={filterChipLabel ? '' : filterPlaceholder}\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 <Tooltip arrow title=\"Change Filter Mode\">\n <IconButton\n onClick={handleFilterMenuOpen}\n size=\"small\"\n sx={{ height: '1.75rem', width: '1.75rem' }}\n >\n <FilterListIcon />\n </IconButton>\n </Tooltip>\n {filterChipLabel && (\n <Chip onDelete={handleClearFilterChip} label={filterType} />\n )}\n </InputAdornment>\n ),\n endAdornment: !filterChipLabel && (\n <InputAdornment position=\"end\">\n <Tooltip\n arrow\n placement=\"right\"\n title={localization.filterTextFieldClearButtonTitle ?? ''}\n >\n <span>\n <IconButton\n aria-label={localization.filterTextFieldClearButtonTitle}\n disabled={filterValue?.length === 0}\n onClick={handleClear}\n size=\"small\"\n sx={{ height: '1.75rem', width: '1.75rem' }}\n >\n <CloseIcon fontSize=\"small\" />\n </IconButton>\n </span>\n </Tooltip>\n </InputAdornment>\n ),\n }}\n {...textFieldProps}\n sx={{\n m: '0 -0.25rem',\n minWidth: !filterChipLabel ? '5rem' : 'auto',\n width: 'calc(100% + 0.5rem)',\n ...textFieldProps?.sx,\n }}\n />\n <MRT_FilterTypeMenu\n anchorEl={anchorEl}\n column={column}\n setAnchorEl={setAnchorEl}\n />\n </>\n );\n};\n","import React, { FC, useState } from 'react';\nimport {\n IconButton,\n ListItemIcon,\n ListItemText,\n Menu,\n MenuItem,\n MenuList,\n} from '@mui/material';\nimport { useMRT } from '../useMRT';\nimport { MRT_HeaderGroup } from '..';\nimport { MRT_FilterTypeMenu } from './MRT_FilterTypeMenu';\n\nconst commonMenuItemStyles = {\n display: 'flex',\n alignItems: 'center',\n};\n\ninterface Props {\n anchorEl: HTMLElement | null;\n column: MRT_HeaderGroup;\n setAnchorEl: (anchorEl: HTMLElement | null) => void;\n}\n\nexport const MRT_ColumnActionMenu: FC<Props> = ({\n anchorEl,\n column,\n setAnchorEl,\n}) => {\n const {\n disableColumnHiding,\n disableFilters,\n disableSortBy,\n enableColumnGrouping,\n icons: {\n ArrowRightIcon,\n ClearAllIcon,\n DynamicFeedIcon,\n FilterListIcon,\n SortIcon,\n VisibilityOffIcon,\n },\n idPrefix,\n localization,\n setShowFilters,\n tableInstance,\n } = useMRT();\n\n const [filterMenuAnchorEl, setFilterMenuAnchorEl] =\n useState<null | HTMLElement>(null);\n\n const handleClearSort = () => {\n column.clearSortBy();\n setAnchorEl(null);\n };\n\n const handleSortAsc = () => {\n column.toggleSortBy(false);\n setAnchorEl(null);\n };\n\n const handleSortDesc = () => {\n column.toggleSortBy(true);\n setAnchorEl(null);\n };\n\n const handleHideColumn = () => {\n column.toggleHidden();\n setAnchorEl(null);\n };\n\n const handleGroupByColumn = () => {\n column.toggleGroupBy();\n setAnchorEl(null);\n };\n\n const handleFilterByColumn = () => {\n setShowFilters(true);\n setTimeout(\n () =>\n document\n .getElementById(\n // @ts-ignore\n column.muiTableHeadCellFilterTextFieldProps?.id ??\n `mrt-${idPrefix}-${column.id}-filter-text-field`,\n )\n ?.focus(),\n 200,\n );\n setAnchorEl(null);\n };\n\n const handleOpenFilterModeMenu = (event: React.MouseEvent<HTMLElement>) => {\n event.stopPropagation();\n setFilterMenuAnchorEl(event.currentTarget);\n };\n\n return (\n <Menu\n anchorEl={anchorEl}\n open={!!anchorEl}\n onClose={() => setAnchorEl(null)}\n >\n <MenuList dense={tableInstance.state.densePadding} disablePadding>\n {!disableSortBy &&\n column.canSort && [\n <MenuItem\n key={1}\n disabled={!column.isSorted}\n onClick={handleClearSort}\n sx={commonMenuItemStyles}\n >\n <ListItemIcon>\n <ClearAllIcon />\n </ListItemIcon>\n <ListItemText>\n {localization.columnActionMenuItemClearSort}\n </ListItemText>\n </MenuItem>,\n <MenuItem\n disabled={column.isSorted && !column.isSortedDesc}\n key={2}\n onClick={handleSortAsc}\n sx={commonMenuItemStyles}\n >\n <ListItemIcon>\n <SortIcon />\n </ListItemIcon>\n <ListItemText>\n {localization.columnActionMenuItemSortAsc?.replace(\n '{column}',\n String(column.Header),\n )}\n </ListItemText>\n </MenuItem>,\n <MenuItem\n divider={\n !disableFilters || enableColumnGrouping || !disableColumnHiding\n }\n key={3}\n disabled={column.isSorted && column.isSortedDesc}\n onClick={handleSortDesc}\n sx={commonMenuItemStyles}\n >\n <ListItemIcon>\n <SortIcon style={{ transform: 'rotate(180deg) scaleX(-1)' }} />\n </ListItemIcon>\n <ListItemText>\n {localization.columnActionMenuItemSortDesc?.replace(\n '{column}',\n String(column.Header),\n )}\n </ListItemText>\n </MenuItem>,\n ]}\n {!disableFilters &&\n column.canFilter && [\n <MenuItem\n divider={enableColumnGrouping || !disableColumnHiding}\n key={1}\n onClick={handleFilterByColumn}\n sx={commonMenuItemStyles}\n >\n <ListItemIcon>\n <FilterListIcon />\n </ListItemIcon>\n <ListItemText>\n {localization.filterTextFieldPlaceholder?.replace(\n '{column}',\n String(column.Header),\n )}\n </ListItemText>\n <IconButton\n onClick={handleOpenFilterModeMenu}\n onMouseEnter={handleOpenFilterModeMenu}\n size=\"small\"\n sx={{ p: 0 }}\n >\n <ArrowRightIcon />\n </IconButton>\n </MenuItem>,\n <MRT_FilterTypeMenu\n anchorEl={filterMenuAnchorEl}\n column={column}\n key={2}\n setAnchorEl={setFilterMenuAnchorEl}\n onSelect={handleFilterByColumn}\n />,\n ]}\n {enableColumnGrouping &&\n column.canGroupBy && [\n <MenuItem\n divider={!disableColumnHiding}\n key={2}\n onClick={handleGroupByColumn}\n sx={commonMenuItemStyles}\n >\n <ListItemIcon>\n <DynamicFeedIcon />\n </ListItemIcon>\n <ListItemText>\n {localization[\n column.isGrouped\n ? 'columnActionMenuItemUnGroupBy'\n : 'columnActionMenuItemGroupBy'\n ]?.replace('{column}', String(column.Header))}\n </ListItemText>\n </MenuItem>,\n ]}\n {!disableColumnHiding && [\n <MenuItem\n key={1}\n onClick={handleHideColumn}\n sx={commonMenuItemStyles}\n >\n <ListItemIcon>\n <VisibilityOffIcon />\n </ListItemIcon>\n <ListItemText>\n {localization.columnActionMenuItemHideColumn?.replace(\n '{column}',\n String(column.Header),\n )}\n </ListItemText>\n </MenuItem>,\n ]}\n </MenuList>\n </Menu>\n );\n};\n","import React, { FC, MouseEvent, useState } from 'react';\nimport { IconButton, Tooltip } from '@mui/material';\nimport { useMRT } from '../useMRT';\nimport { MRT_ColumnActionMenu } from '../menus/MRT_ColumnActionMenu';\nimport { MRT_HeaderGroup } from '..';\n\ninterface Props {\n column: MRT_HeaderGroup;\n}\n\nexport const MRT_ToggleColumnActionMenuButton: FC<Props> = ({ column }) => {\n const {\n localization,\n icons: { MoreVertIcon },\n } = useMRT();\n\n const [anchorEl, setAnchorEl] = useState<null | HTMLElement>(null);\n\n const handleClick = (event: MouseEvent<HTMLElement>) => {\n event.stopPropagation();\n event.preventDefault();\n setAnchorEl(event.currentTarget);\n };\n\n return (\n <>\n <Tooltip\n arrow\n enterDelay={1000}\n enterNextDelay={1000}\n title={localization.columnActionMenuButtonTitle}\n >\n <IconButton\n aria-label={localization.columnActionMenuButtonTitle}\n onClick={handleClick}\n size=\"small\"\n sx={{\n height: '2rem',\n mr: '2px',\n mt: '-0.2rem',\n opacity: 0.5,\n transition: 'opacity 0.2s',\n width: '2rem',\n '&:hover': {\n opacity: 1,\n },\n }}\n >\n <MoreVertIcon />\n </IconButton>\n </Tooltip>\n <MRT_ColumnActionMenu\n anchorEl={anchorEl}\n column={column}\n setAnchorEl={setAnchorEl}\n />\n </>\n );\n};\n","import React, { FC } from 'react';\nimport {\n TableCell,\n TableSortLabel,\n Divider,\n Collapse,\n Tooltip,\n Box,\n IconButton,\n} from '@mui/material';\nimport { useMRT } from '../useMRT';\nimport { MRT_FilterTextField } from '../inputs/MRT_FilterTextField';\nimport { MRT_ToggleColumnActionMenuButton } from '../buttons/MRT_ToggleColumnActionMenuButton';\nimport { MRT_HeaderGroup } from '..';\n\nexport const commonTableHeadCellStyles = (\n densePadding: boolean,\n enableColumnResizing?: boolean,\n) => ({\n fontWeight: 'bold',\n height: '100%',\n p: densePadding ? '0.5rem' : '1rem',\n pt: densePadding ? '0.75rem' : '1.25rem',\n transition: `all ${enableColumnResizing ? '10ms' : '0.2s'} ease-in-out`,\n verticalAlign: 'text-top',\n});\n\ninterface Props {\n column: MRT_HeaderGroup;\n}\n\nexport const MRT_TableHeadCell: FC<Props> = ({ column }) => {\n const {\n disableColumnActions,\n disableFilters,\n enableColumnResizing,\n icons: { FilterAltIcon, FilterAltOff },\n localization,\n muiTableHeadCellProps,\n setShowFilters,\n tableInstance,\n } = useMRT();\n\n const isParentHeader = !!column?.columns?.length;\n\n const mTableHeadCellProps =\n muiTableHeadCellProps instanceof Function\n ? muiTableHeadCellProps(column)\n : muiTableHeadCellProps;\n\n const mcTableHeadCellProps =\n column.muiTableHeadCellProps instanceof Function\n ? column.muiTableHeadCellProps(column)\n : column.muiTableHeadCellProps;\n\n const tableCellProps = {\n ...mTableHeadCellProps,\n ...mcTableHeadCellProps,\n ...column.getHeaderProps(),\n style: {\n ...column.getHeaderProps().style,\n ...mTableHeadCellProps?.style,\n ...mcTableHeadCellProps?.style,\n },\n };\n\n const sortTooltip = column.isSorted\n ? column.isSortedDesc\n ? localization.columnActionMenuItemClearSort\n : localization.columnActionMenuItemSortDesc?.replace(\n '{column}',\n column.Header as string,\n )\n : localization.columnActionMenuItemSortAsc?.replace(\n '{column}',\n column.Header as string,\n );\n\n const filterTooltip = !!column.filterValue\n ? localization.filterApplied\n .replace('{column}', String(column.Header))\n .replace(\n '{filterType}',\n // @ts-ignore\n localization[\n `filterMenuItem${\n tableInstance.state.currentFilterTypes[column.id]\n .charAt(0)\n .toUpperCase() +\n tableInstance.state.currentFilterTypes[column.id].slice(1)\n }`\n ],\n )\n : localization.toggleFilterButtonTitle;\n\n const columnHeader = column.render('Header') as string;\n\n return (\n <TableCell\n align={isParentHeader ? 'center' : 'left'}\n {...tableCellProps}\n sx={{\n ...commonTableHeadCellStyles(\n tableInstance.state.densePadding,\n enableColumnResizing,\n ),\n ...tableCellProps?.sx,\n }}\n >\n <Box\n sx={{\n alignItems: 'flex-start',\n display: 'flex',\n justifyContent: isParentHeader ? 'center' : 'space-between',\n width: '100%',\n }}\n >\n <Box\n {...column.getSortByToggleProps()}\n sx={{\n alignItems: 'center',\n display: 'flex',\n flexWrap: 'nowrap',\n whiteSpace: columnHeader.length < 15 ? 'nowrap' : 'normal',\n }}\n title={undefined}\n >\n {column.render('Header')}\n {!isParentHeader && column.canSort && (\n <Tooltip arrow title={sortTooltip}>\n <TableSortLabel\n aria-label={sortTooltip}\n active={column.isSorted}\n direction={column.isSortedDesc ? 'desc' : 'asc'}\n />\n </Tooltip>\n )}\n {!isParentHeader && !!column.canFilter && (\n <Tooltip arrow title={filterTooltip}>\n <IconButton\n onClick={(event) => {\n event.stopPropagation();\n setShowFilters(!tableInstance.state.showFilters);\n }}\n size=\"small\"\n sx={{\n opacity: !!column.filterValue ? 0.8 : 0,\n p: '2px',\n m: 0,\n transition: 'all 0.2s ease-in-out',\n '&:hover': {\n opacity: 0.8,\n },\n }}\n >\n {tableInstance.state.showFilters && !column.filterValue ? (\n <FilterAltOff fontSize=\"small\" />\n ) : (\n <FilterAltIcon fontSize=\"small\" />\n )}\n </IconButton>\n </Tooltip>\n )}\n </Box>\n <Box sx={{ alignItems: 'center', display: 'flex', flexWrap: 'nowrap' }}>\n {!disableColumnActions && !isParentHeader && (\n <MRT_ToggleColumnActionMenuButton column={column} />\n )}\n {enableColumnResizing && !isParentHeader && (\n <Divider\n flexItem\n orientation=\"vertical\"\n onDoubleClick={() => tableInstance.resetResizing()}\n {...column.getResizerProps()}\n sx={{\n borderRightWidth: '2px',\n borderRadius: '2px',\n maxHeight: '2rem',\n }}\n />\n )}\n </Box>\n </Box>\n {!disableFilters && column.canFilter && (\n <Collapse in={tableInstance.state.showFilters}>\n <MRT_FilterTextField column={column} />\n </Collapse>\n )}\n </TableCell>\n );\n};\n","import React, { ChangeEvent, FC } from 'react';\nimport { TextField } from '@mui/material';\nimport { useMRT } from '../useMRT';\nimport { MRT_Cell } from '..';\n\ninterface Props {\n cell: MRT_Cell;\n}\n\nexport const MRT_EditCellTextField: FC<Props> = ({ cell }) => {\n const {\n muiTableBodyCellEditTextFieldProps,\n setCurrentEditingRow,\n tableInstance: {\n state: { currentEditingRow },\n },\n } = useMRT();\n\n const handleChange = (event: ChangeEvent<HTMLInputElement>) => {\n if (currentEditingRow) {\n cell.row.values[cell.column.id] = event.target.value;\n setCurrentEditingRow({\n ...currentEditingRow,\n });\n }\n cell.column.onCellEditChange?.(event, cell);\n };\n\n const mTableBodyCellEditTextFieldProps =\n muiTableBodyCellEditTextFieldProps instanceof Function\n ? muiTableBodyCellEditTextFieldProps(cell)\n : muiTableBodyCellEditTextFieldProps;\n\n const mcTableBodyCellEditTextFieldProps =\n cell.column.muiTableBodyCellEditTextFieldProps instanceof Function\n ? cell.column.muiTableBodyCellEditTextFieldProps(cell)\n : cell.column.muiTableBodyCellEditTextFieldProps;\n\n const textFieldProps = {\n ...mTableBodyCellEditTextFieldProps,\n ...mcTableBodyCellEditTextFieldProps,\n style: {\n //@ts-ignore\n ...muiTableBodyCellEditTextFieldProps?.style,\n //@ts-ignore\n ...cell.column.muiTableBodyCellEditTextFieldProps?.style,\n },\n };\n\n if (cell.column.editable && cell.column.Edit) {\n return <>{cell.column.Edit({ ...textFieldProps, cell })}</>;\n }\n\n return (\n <TextField\n margin=\"dense\"\n onChange={handleChange}\n onClick={(e) => e.stopPropagation()}\n placeholder={cell.column.Header as string}\n value={cell.value}\n variant=\"standard\"\n {...textFieldProps}\n />\n );\n};\n","import React, { FC, MouseEvent } from 'react';\nimport { TableCell, TableCellProps } from '@mui/material';\nimport { useMRT } from '../useMRT';\nimport { MRT_EditCellTextField } from '../inputs/MRT_EditCellTextField';\nimport { MRT_Cell } from '..';\n\nexport const commonTableBodyCellStyles = (densePadding: boolean) => ({\n p: densePadding ? '0.5rem' : '1rem',\n transition: 'all 0.2s ease-in-out',\n whiteSpace: densePadding ? 'nowrap' : 'normal',\n});\n\nexport const commonTableBodyButtonCellStyles = (densePadding: boolean) => ({\n p: densePadding ? '1px' : '0.6rem',\n textAlign: 'center',\n transition: 'all 0.2s ease-in-out',\n});\n\ninterface Props {\n cell: MRT_Cell;\n}\n\nexport const MRT_TableBodyCell: FC<Props> = ({ cell }) => {\n const {\n onCellClick,\n muiTableBodyCellProps,\n tableInstance: {\n state: { currentEditingRow, densePadding },\n },\n } = useMRT();\n\n const mTableCellBodyProps =\n muiTableBodyCellProps instanceof Function\n ? muiTableBodyCellProps(cell)\n : muiTableBodyCellProps;\n\n const mcTableCellBodyProps =\n cell.column.muiTableBodyCellProps instanceof Function\n ? cell.column.muiTableBodyCellProps(cell)\n : cell.column.muiTableBodyCellProps;\n\n const tableCellProps = {\n ...mTableCellBodyProps,\n ...mcTableCellBodyProps,\n ...cell.getCellProps(),\n style: {\n ...cell.getCellProps().style,\n ...mTableCellBodyProps?.style,\n ...mcTableCellBodyProps?.style,\n },\n };\n\n return (\n <TableCell\n onClick={(event: MouseEvent<HTMLTableCellElement>) =>\n onCellClick?.(event, cell)\n }\n {...tableCellProps}\n sx={\n {\n ...commonTableBodyCellStyles(densePadding),\n ...tableCellProps?.sx,\n } as TableCellProps['sx']\n }\n >\n {currentEditingRow?.id === cell.row.id ? (\n <MRT_EditCellTextField cell={cell} />\n ) : cell.isPlaceholder ? null : cell.isAggregated ? (\n cell.render('Aggregated')\n ) : cell.isGrouped ? (\n <span>\n {cell.render('Cell')} ({cell.row.subRows.length})\n </span>\n ) : (\n cell.render('Cell')\n )}\n </TableCell>\n );\n};\n","import React, { ChangeEvent, FC } from 'react';\nimport { Checkbox, TableCell, Tooltip } from '@mui/material';\nimport { useMRT } from '../useMRT';\nimport { MRT_Row } from '..';\nimport { commonTableBodyButtonCellStyles } from '../body/MRT_TableBodyCell';\n\ninterface Props {\n row?: MRT_Row;\n selectAll?: boolean;\n}\n\nexport const MRT_SelectCheckbox: FC<Props> = ({ row, selectAll }) => {\n const { localization, onRowSelectChange, onSelectAllChange, tableInstance } =\n useMRT();\n\n const onSelectChange = (event: ChangeEvent<HTMLInputElement>) => {\n if (selectAll) {\n tableInstance?.getToggleAllRowsSelectedProps?.()?.onChange?.(event);\n onSelectAllChange?.(event, tableInstance.selectedFlatRows);\n } else if (row) {\n row?.getToggleRowSelectedProps()?.onChange?.(event);\n onRowSelectChange?.(event, row, tableInstance.selectedFlatRows);\n }\n };\n\n const checkboxProps = selectAll\n ? tableInstance.getToggleAllRowsSelectedProps()\n : row?.getToggleRowSelectedProps();\n\n return (\n <TableCell\n sx={commonTableBodyButtonCellStyles(tableInstance.state.densePadding)}\n >\n <Tooltip\n arrow\n enterDelay={1000}\n enterNextDelay={1000}\n title={\n selectAll\n ? localization.selectAllCheckboxTitle\n : localization.selectCheckboxTitle\n }\n >\n <Checkbox\n inputProps={{\n 'aria-label': selectAll\n ? localization.selectAllCheckboxTitle\n : localization.selectCheckboxTitle,\n }}\n onChange={onSelectChange}\n {...checkboxProps}\n title={undefined}\n />\n </Tooltip>\n </TableCell>\n );\n};\n","import React, { FC } from 'react';\nimport { IconButton, TableCell } from '@mui/material';\nimport { useMRT } from '../useMRT';\nimport { commonTableBodyButtonCellStyles } from '../body/MRT_TableBodyCell';\n\ninterface Props {}\n\nexport const MRT_ExpandAllButton: FC<Props> = () => {\n const {\n anyRowsExpanded,\n icons: { DoubleArrowDownIcon },\n localization,\n tableInstance,\n } = useMRT();\n\n return (\n <TableCell\n size=\"small\"\n {...tableInstance.getToggleAllRowsExpandedProps()}\n sx={commonTableBodyButtonCellStyles(tableInstance.state.densePadding)}\n >\n <IconButton\n aria-label={localization.expandAllButtonTitle}\n title={localization.expandAllButtonTitle}\n >\n <DoubleArrowDownIcon\n style={{\n transform: `rotate(${\n tableInstance.isAllRowsExpanded ? -180 : anyRowsExpanded ? -90 : 0\n }deg)`,\n transition: 'transform 0.2s',\n }}\n />\n </IconButton>\n </TableCell>\n );\n};\n","import React, { CSSProperties, FC } from 'react';\nimport { TableCell } from '@mui/material';\nimport { useMRT } from '../useMRT';\n\ninterface Props {\n width?: CSSProperties['width'];\n}\n\nexport const MRT_TableSpacerCell: FC<Props> = ({ width }) => {\n const { muiTableBodyCellProps } = useMRT();\n\n const mTableBodyCellrops =\n muiTableBodyCellProps instanceof Function\n ? muiTableBodyCellProps()\n : muiTableBodyCellProps;\n\n const tableCellProps = {\n ...mTableBodyCellrops,\n style: {\n ...mTableBodyCellrops?.style,\n },\n };\n\n return (\n <TableCell {...tableCellProps} sx={{ width, ...tableCellProps?.sx }} />\n );\n};\n","import React, { FC } from 'react';\nimport { TableCell } from '@mui/material';\nimport { useMRT } from '../useMRT';\nimport { commonTableHeadCellStyles } from './MRT_TableHeadCell';\n\ninterface Props {}\n\nexport const MRT_TableHeadCellActions: FC<Props> = () => {\n const {\n localization,\n tableInstance: {\n state: { densePadding },\n },\n } = useMRT();\n\n return (\n <TableCell\n style={{ textAlign: 'center' }}\n sx={{ ...commonTableHeadCellStyles(densePadding), textAlign: 'center' }}\n >\n {localization.actionsHeadColumnTitle}\n </TableCell>\n );\n};\n","import React, { FC, useMemo } from 'react';\nimport { TableCell, TableRow } from '@mui/material';\nimport {\n commonTableHeadCellStyles,\n MRT_TableHeadCell,\n} from './MRT_TableHeadCell';\nimport { useMRT } from '../useMRT';\nimport { MRT_SelectCheckbox } from '../inputs/MRT_SelectCheckbox';\nimport { MRT_ExpandAllButton } from '../buttons/MRT_ExpandAllButton';\nimport { MRT_TableSpacerCell } from '../table/MRT_TableSpacerCell';\nimport { MRT_TableHeadCellActions } from './MRT_TableHeadCellActions';\nimport { MRT_HeaderGroup } from '..';\n\ninterface Props {\n headerGroup: MRT_HeaderGroup;\n}\n\nexport const MRT_TableHeadRow: FC<Props> = ({ headerGroup }) => {\n const {\n anyRowsCanExpand,\n disableExpandAll,\n enableRowActions,\n enableRowEditing,\n enableRowNumbers,\n enableSelection,\n muiTableHeadRowProps,\n positionActionsColumn,\n renderDetailPanel,\n tableInstance,\n } = useMRT();\n\n const isParentHeader = useMemo(\n () => headerGroup.headers.some((h) => (h.columns?.length ?? 0) > 0),\n [headerGroup.headers],\n );\n\n const mTableHeadRowProps =\n muiTableHeadRowProps instanceof Function\n ? muiTableHeadRowProps(headerGroup)\n : muiTableHeadRowProps;\n\n const tableRowProps = {\n ...mTableHeadRowProps,\n ...headerGroup.getHeaderGroupProps(),\n style: {\n ...headerGroup.getHeaderGroupProps().style,\n ...mTableHeadRowProps?.style,\n },\n };\n\n return (\n <TableRow {...tableRowProps}>\n {enableRowNumbers &&\n (isParentHeader ? (\n <MRT_TableSpacerCell />\n ) : (\n <TableCell\n sx={{\n ...commonTableHeadCellStyles(tableInstance.state.densePadding),\n }}\n >\n #\n </TableCell>\n ))}\n {(enableRowActions || enableRowEditing) &&\n positionActionsColumn === 'first' &&\n (isParentHeader ? (\n <MRT_TableSpacerCell />\n ) : (\n <MRT_TableHeadCellActions />\n ))}\n {anyRowsCanExpand || renderDetailPanel ? (\n !disableExpandAll && !isParentHeader ? (\n <MRT_ExpandAllButton />\n ) : (\n <MRT_TableSpacerCell\n width={`${\n renderDetailPanel ? 2 : tableInstance.expandedDepth + 0.5\n }rem`}\n />\n )\n ) : null}\n {enableSelection ? (\n !isParentHeader ? (\n <MRT_SelectCheckbox selectAll />\n ) : (\n <MRT_TableSpacerCell width=\"1rem\" />\n )\n ) : null}\n {headerGroup.headers.map((column: MRT_HeaderGroup) => (\n <MRT_TableHeadCell key={column.getHeaderProps().key} column={column} />\n ))}\n {(enableRowActions || enableRowEditing) &&\n positionActionsColumn === 'last' &&\n (isParentHeader ? (\n <MRT_TableSpacerCell />\n ) : (\n <MRT_TableHeadCellActions />\n ))}\n </TableRow>\n );\n};\n","import React, { FC } from 'react';\nimport { TableHead } from '@mui/material';\nimport { MRT_TableHeadRow } from './MRT_TableHeadRow';\nimport { useMRT } from '../useMRT';\nimport { MRT_HeaderGroup } from '..';\n\ninterface Props {}\n\nexport const MRT_TableHead: FC<Props> = () => {\n const { tableInstance, muiTableHeadProps } = useMRT();\n\n const tableHeadProps =\n muiTableHeadProps instanceof Function\n ? muiTableHeadProps(tableInstance)\n : muiTableHeadProps;\n\n return (\n <TableHead {...tableHeadProps}>\n {tableInstance.headerGroups.map((headerGroup: MRT_HeaderGroup) => (\n <MRT_TableHeadRow\n key={headerGroup.getHeaderGroupProps().key}\n headerGroup={headerGroup}\n />\n ))}\n </TableHead>\n );\n};\n","import React, { FC, MouseEvent } from 'react';\nimport { Collapse, TableCell, TableRow } from '@mui/material';\nimport { useMRT } from '../useMRT';\nimport { MRT_Row } from '..';\n\ninterface Props {\n row: MRT_Row;\n}\n\nexport const MRT_TableDetailPanel: FC<Props> = ({ row }) => {\n const {\n muiTableBodyRowProps,\n muiTableDetailPanelProps,\n onDetailPanelClick,\n renderDetailPanel,\n tableInstance,\n } = useMRT();\n\n const tableRowProps =\n muiTableBodyRowProps instanceof Function\n ? muiTableBodyRowProps(row)\n : muiTableBodyRowProps;\n\n const tableCellProps =\n muiTableDetailPanelProps instanceof Function\n ? muiTableDetailPanelProps(row)\n : muiTableDetailPanelProps;\n\n return (\n <TableRow {...tableRowProps}>\n <TableCell\n colSpan={tableInstance.visibleColumns.length + 10}\n onClick={(event: MouseEvent<HTMLTableCellElement>) =>\n onDetailPanelClick?.(event, row)\n }\n {...tableCellProps}\n sx={{\n borderBottom: !row.isExpanded ? 'none' : undefined,\n pb: row.isExpanded ? '1rem' : 0,\n pt: row.isExpanded ? '1rem' : 0,\n transition: 'all 0.2s ease-in-out',\n ...tableCellProps?.sx,\n }}\n >\n <Collapse in={row.isExpanded}>{renderDetailPanel?.(row)}</Collapse>\n </TableCell>\n </TableRow>\n );\n};\n","import React, { FC } from 'react';\nimport { IconButton, TableCell } from '@mui/material';\nimport { useMRT } from '../useMRT';\nimport { MRT_Row } from '..';\nimport { commonTableBodyButtonCellStyles } from '../body/MRT_TableBodyCell';\n\ninterface Props {\n row: MRT_Row;\n}\n\nexport const MRT_ExpandButton: FC<Props> = ({ row }) => {\n const {\n icons: { ExpandMoreIcon },\n localization,\n renderDetailPanel,\n tableInstance: {\n state: { densePadding },\n },\n } = useMRT();\n\n return (\n <TableCell\n size=\"small\"\n sx={{\n ...commonTableBodyButtonCellStyles(densePadding),\n pl: `${row.depth + 0.5}rem`,\n textAlign: 'left',\n }}\n >\n <IconButton\n aria-label={localization.expandButtonTitle}\n disabled={!row.canExpand && !renderDetailPanel}\n title={localization.expandButtonTitle}\n {...row.getToggleRowExpandedProps()}\n >\n <ExpandMoreIcon\n style={{\n transform: `rotate(${\n !row.canExpand && !renderDetailPanel\n ? -90\n : row.isExpanded\n ? -180\n : 0\n }deg)`,\n transition: 'transform 0.2s',\n }}\n />\n </IconButton>\n </TableCell>\n );\n};\n","import React, { FC } from 'react';\nimport {\n ListItemIcon,\n ListItemText,\n Menu,\n MenuItem,\n MenuList,\n} from '@mui/material';\nimport { useMRT } from '../useMRT';\nimport { MRT_Row } from '..';\n\ninterface Props {\n anchorEl: HTMLElement | null;\n row: MRT_Row;\n setAnchorEl: (anchorEl: HTMLElement | null) => void;\n handleEdit: () => void;\n}\n\nexport const MRT_RowActionMenu: FC<Props> = ({\n anchorEl,\n row,\n handleEdit,\n setAnchorEl,\n}) => {\n const {\n icons: { EditIcon },\n enableRowEditing,\n localization,\n renderRowActionMenuItems,\n tableInstance,\n } = useMRT();\n\n return (\n <Menu\n anchorEl={anchorEl}\n open={!!anchorEl}\n onClose={() => setAnchorEl(null)}\n >\n <MenuList dense={tableInstance.state.densePadding} disablePadding>\n {enableRowEditing && (\n <MenuItem onClick={handleEdit}>\n <ListItemIcon>\n <EditIcon />\n </ListItemIcon>\n <ListItemText>{localization.rowActionMenuItemEdit}</ListItemText>\n </MenuItem>\n )}\n {renderRowActionMenuItems?.(row, tableInstance, () =>\n setAnchorEl(null),\n ) ?? null}\n </MenuList>\n </Menu>\n );\n};\n","/**\n * Copyright (c) 2014-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nvar runtime = (function (exports) {\n \"use strict\";\n\n var Op = Object.prototype;\n var hasOwn = Op.hasOwnProperty;\n var undefined; // More compressible than void 0.\n var $Symbol = typeof Symbol === \"function\" ? Symbol : {};\n var iteratorSymbol = $Symbol.iterator || \"@@iterator\";\n var asyncIteratorSymbol = $Symbol.asyncIterator || \"@@asyncIterator\";\n var toStringTagSymbol = $Symbol.toStringTag || \"@@toStringTag\";\n\n function define(obj, key, value) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n return obj[key];\n }\n try {\n // IE 8 has a broken Object.defineProperty that only works on DOM objects.\n define({}, \"\");\n } catch (err) {\n define = function(obj, key, value) {\n return obj[key] = value;\n };\n }\n\n function wrap(innerFn, outerFn, self, tryLocsList) {\n // If outerFn provided and outerFn.prototype is a Generator, then outerFn.prototype instanceof Generator.\n var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator;\n var generator = Object.create(protoGenerator.prototype);\n var context = new Context(tryLocsList || []);\n\n // The ._invoke method unifies the implementations of the .next,\n // .throw, and .return methods.\n generator._invoke = makeInvokeMethod(innerFn, self, context);\n\n return generator;\n }\n exports.wrap = wrap;\n\n // Try/catch helper to minimize deoptimizations. Returns a completion\n // record like context.tryEntries[i].completion. This interface could\n // have been (and was previously) designed to take a closure to be\n // invoked without arguments, but in all the cases we care about we\n // already have an existing method we want to call, so there's no need\n // to create a new function object. We can even get away with assuming\n // the method takes exactly one argument, since that happens to be true\n // in every case, so we don't have to touch the arguments object. The\n // only additional allocation required is the completion record, which\n // has a stable shape and so hopefully should be cheap to allocate.\n function tryCatch(fn, obj, arg) {\n try {\n return { type: \"normal\", arg: fn.call(obj, arg) };\n } catch (err) {\n return { type: \"throw\", arg: err };\n }\n }\n\n var GenStateSuspendedStart = \"suspendedStart\";\n var GenStateSuspendedYield = \"suspendedYield\";\n var GenStateExecuting = \"executing\";\n var GenStateCompleted = \"completed\";\n\n // Returning this object from the innerFn has the same effect as\n // breaking out of the dispatch switch statement.\n var ContinueSentinel = {};\n\n // Dummy constructor functions that we use as the .constructor and\n // .constructor.prototype properties for functions that return Generator\n // objects. For full spec compliance, you may wish to configure your\n // minifier not to mangle the names of these two functions.\n function Generator() {}\n function GeneratorFunction() {}\n function GeneratorFunctionPrototype() {}\n\n // This is a polyfill for %IteratorPrototype% for environments that\n // don't natively support it.\n var IteratorPrototype = {};\n define(IteratorPrototype, iteratorSymbol, function () {\n return this;\n });\n\n var getProto = Object.getPrototypeOf;\n var NativeIteratorPrototype = getProto && getProto(getProto(values([])));\n if (NativeIteratorPrototype &&\n NativeIteratorPrototype !== Op &&\n hasOwn.call(NativeIteratorPrototype, iteratorSymbol)) {\n // This environment has a native %IteratorPrototype%; use it instead\n // of the polyfill.\n IteratorPrototype = NativeIteratorPrototype;\n }\n\n var Gp = GeneratorFunctionPrototype.prototype =\n Generator.prototype = Object.create(IteratorPrototype);\n GeneratorFunction.prototype = GeneratorFunctionPrototype;\n define(Gp, \"constructor\", GeneratorFunctionPrototype);\n define(GeneratorFunctionPrototype, \"constructor\", GeneratorFunction);\n GeneratorFunction.displayName = define(\n GeneratorFunctionPrototype,\n toStringTagSymbol,\n \"GeneratorFunction\"\n );\n\n // Helper for defining the .next, .throw, and .return methods of the\n // Iterator interface in terms of a single ._invoke method.\n function defineIteratorMethods(prototype) {\n [\"next\", \"throw\", \"return\"].forEach(function(method) {\n define(prototype, method, function(arg) {\n return this._invoke(method, arg);\n });\n });\n }\n\n exports.isGeneratorFunction = function(genFun) {\n var ctor = typeof genFun === \"function\" && genFun.constructor;\n return ctor\n ? ctor === GeneratorFunction ||\n // For the native GeneratorFunction constructor, the best we can\n // do is to check its .name property.\n (ctor.displayName || ctor.name) === \"GeneratorFunction\"\n : false;\n };\n\n exports.mark = function(genFun) {\n if (Object.setPrototypeOf) {\n Object.setPrototypeOf(genFun, GeneratorFunctionPrototype);\n } else {\n genFun.__proto__ = GeneratorFunctionPrototype;\n define(genFun, toStringTagSymbol, \"GeneratorFunction\");\n }\n genFun.prototype = Object.create(Gp);\n return genFun;\n };\n\n // Within the body of any async function, `await x` is transformed to\n // `yield regeneratorRuntime.awrap(x)`, so that the runtime can test\n // `hasOwn.call(value, \"__await\")` to determine if the yielded value is\n // meant to be awaited.\n exports.awrap = function(arg) {\n return { __await: arg };\n };\n\n function AsyncIterator(generator, PromiseImpl) {\n function invoke(method, arg, resolve, reject) {\n var record = tryCatch(generator[method], generator, arg);\n if (record.type === \"throw\") {\n reject(record.arg);\n } else {\n var result = record.arg;\n var value = result.value;\n if (value &&\n typeof value === \"object\" &&\n hasOwn.call(value, \"__await\")) {\n return PromiseImpl.resolve(value.__await).then(function(value) {\n invoke(\"next\", value, resolve, reject);\n }, function(err) {\n invoke(\"throw\", err, resolve, reject);\n });\n }\n\n return PromiseImpl.resolve(value).then(function(unwrapped) {\n // When a yielded Promise is resolved, its final value becomes\n // the .value of the Promise<{value,done}> result for the\n // current iteration.\n result.value = unwrapped;\n resolve(result);\n }, function(error) {\n // If a rejected Promise was yielded, throw the rejection back\n // into the async generator function so it can be handled there.\n return invoke(\"throw\", error, resolve, reject);\n });\n }\n }\n\n var previousPromise;\n\n function enqueue(method, arg) {\n function callInvokeWithMethodAndArg() {\n return new PromiseImpl(function(resolve, reject) {\n invoke(method, arg, resolve, reject);\n });\n }\n\n return previousPromise =\n // If enqueue has been called before, then we want to wait until\n // all previous Promises have been resolved before calling invoke,\n // so that results are always delivered in the correct order. If\n // enqueue has not been called before, then it is important to\n // call invoke immediately, without waiting on a callback to fire,\n // so that the async generator function has the opportunity to do\n // any necessary setup in a predictable way. This predictability\n // is why the Promise constructor synchronously invokes its\n // executor callback, and why async functions synchronously\n // execute code before the first await. Since we implement simple\n // async functions in terms of async generators, it is especially\n // important to get this right, even though it requires care.\n previousPromise ? previousPromise.then(\n callInvokeWithMethodAndArg,\n // Avoid propagating failures to Promises returned by later\n // invocations of the iterator.\n callInvokeWithMethodAndArg\n ) : callInvokeWithMethodAndArg();\n }\n\n // Define the unified helper method that is used to implement .next,\n // .throw, and .return (see defineIteratorMethods).\n this._invoke = enqueue;\n }\n\n defineIteratorMethods(AsyncIterator.prototype);\n define(AsyncIterator.prototype, asyncIteratorSymbol, function () {\n return this;\n });\n exports.AsyncIterator = AsyncIterator;\n\n // Note that simple async functions are implemented on top of\n // AsyncIterator objects; they just return a Promise for the value of\n // the final result produced by the iterator.\n exports.async = function(innerFn, outerFn, self, tryLocsList, PromiseImpl) {\n if (PromiseImpl === void 0) PromiseImpl = Promise;\n\n var iter = new AsyncIterator(\n wrap(innerFn, outerFn, self, tryLocsList),\n PromiseImpl\n );\n\n return exports.isGeneratorFunction(outerFn)\n ? iter // If outerFn is a generator, return the full iterator.\n : iter.next().then(function(result) {\n return result.done ? result.value : iter.next();\n });\n };\n\n function makeInvokeMethod(innerFn, self, context) {\n var state = GenStateSuspendedStart;\n\n return function invoke(method, arg) {\n if (state === GenStateExecuting) {\n throw new Error(\"Generator is already running\");\n }\n\n if (state === GenStateCompleted) {\n if (method === \"throw\") {\n throw arg;\n }\n\n // Be forgiving, per 25.3.3.3.3 of the spec:\n // https://people.mozilla.org/~jorendorff/es6-draft.html#sec-generatorresume\n return doneResult();\n }\n\n context.method = method;\n context.arg = arg;\n\n while (true) {\n var delegate = context.delegate;\n if (delegate) {\n var delegateResult = maybeInvokeDelegate(delegate, context);\n if (delegateResult) {\n if (delegateResult === ContinueSentinel) continue;\n return delegateResult;\n }\n }\n\n if (context.method === \"next\") {\n // Setting context._sent for legacy support of Babel's\n // function.sent implementation.\n context.sent = context._sent = context.arg;\n\n } else if (context.method === \"throw\") {\n if (state === GenStateSuspendedStart) {\n state = GenStateCompleted;\n throw context.arg;\n }\n\n context.dispatchException(context.arg);\n\n } else if (context.method === \"return\") {\n context.abrupt(\"return\", context.arg);\n }\n\n state = GenStateExecuting;\n\n var record = tryCatch(innerFn, self, context);\n if (record.type === \"normal\") {\n // If an exception is thrown from innerFn, we leave state ===\n // GenStateExecuting and loop back for another invocation.\n state = context.done\n ? GenStateCompleted\n : GenStateSuspendedYield;\n\n if (record.arg === ContinueSentinel) {\n continue;\n }\n\n return {\n value: record.arg,\n done: context.done\n };\n\n } else if (record.type === \"throw\") {\n state = GenStateCompleted;\n // Dispatch the exception by looping back around to the\n // context.dispatchException(context.arg) call above.\n context.method = \"throw\";\n context.arg = record.arg;\n }\n }\n };\n }\n\n // Call delegate.iterator[context.method](context.arg) and handle the\n // result, either by returning a { value, done } result from the\n // delegate iterator, or by modifying context.method and context.arg,\n // setting context.delegate to null, and returning the ContinueSentinel.\n function maybeInvokeDelegate(delegate, context) {\n var method = delegate.iterator[context.method];\n if (method === undefined) {\n // A .throw or .return when the delegate iterator has no .throw\n // method always terminates the yield* loop.\n context.delegate = null;\n\n if (context.method === \"throw\") {\n // Note: [\"return\"] must be used for ES3 parsing compatibility.\n if (delegate.iterator[\"return\"]) {\n // If the delegate iterator has a return method, give it a\n // chance to clean up.\n context.method = \"return\";\n context.arg = undefined;\n maybeInvokeDelegate(delegate, context);\n\n if (context.method === \"throw\") {\n // If maybeInvokeDelegate(context) changed context.method from\n // \"return\" to \"throw\", let that override the TypeError below.\n return ContinueSentinel;\n }\n }\n\n context.method = \"throw\";\n context.arg = new TypeError(\n \"The iterator does not provide a 'throw' method\");\n }\n\n return ContinueSentinel;\n }\n\n var record = tryCatch(method, delegate.iterator, context.arg);\n\n if (record.type === \"throw\") {\n context.method = \"throw\";\n context.arg = record.arg;\n context.delegate = null;\n return ContinueSentinel;\n }\n\n var info = record.arg;\n\n if (! info) {\n context.method = \"throw\";\n context.arg = new TypeError(\"iterator result is not an object\");\n context.delegate = null;\n return ContinueSentinel;\n }\n\n if (info.done) {\n // Assign the result of the finished delegate to the temporary\n // variable specified by delegate.resultName (see delegateYield).\n context[delegate.resultName] = info.value;\n\n // Resume execution at the desired location (see delegateYield).\n context.next = delegate.nextLoc;\n\n // If context.method was \"throw\" but the delegate handled the\n // exception, let the outer generator proceed normally. If\n // context.method was \"next\", forget context.arg since it has been\n // \"consumed\" by the delegate iterator. If context.method was\n // \"return\", allow the original .return call to continue in the\n // outer generator.\n if (context.method !== \"return\") {\n context.method = \"next\";\n context.arg = undefined;\n }\n\n } else {\n // Re-yield the result returned by the delegate method.\n return info;\n }\n\n // The delegate iterator is finished, so forget it and continue with\n // the outer generator.\n context.delegate = null;\n return ContinueSentinel;\n }\n\n // Define Generator.prototype.{next,throw,return} in terms of the\n // unified ._invoke helper method.\n defineIteratorMethods(Gp);\n\n define(Gp, toStringTagSymbol, \"Generator\");\n\n // A Generator should always return itself as the iterator object when the\n // @@iterator function is called on it. Some browsers' implementations of the\n // iterator prototype chain incorrectly implement this, causing the Generator\n // object to not be returned from this call. This ensures that doesn't happen.\n // See https://github.com/facebook/regenerator/issues/274 for more details.\n define(Gp, iteratorSymbol, function() {\n return this;\n });\n\n define(Gp, \"toString\", function() {\n return \"[object Generator]\";\n });\n\n function pushTryEntry(locs) {\n var entry = { tryLoc: locs[0] };\n\n if (1 in locs) {\n entry.catchLoc = locs[1];\n }\n\n if (2 in locs) {\n entry.finallyLoc = locs[2];\n entry.afterLoc = locs[3];\n }\n\n this.tryEntries.push(entry);\n }\n\n function resetTryEntry(entry) {\n var record = entry.completion || {};\n record.type = \"normal\";\n delete record.arg;\n entry.completion = record;\n }\n\n function Context(tryLocsList) {\n // The root entry object (effectively a try statement without a catch\n // or a finally block) gives us a place to store values thrown from\n // locations where there is no enclosing try statement.\n this.tryEntries = [{ tryLoc: \"root\" }];\n tryLocsList.forEach(pushTryEntry, this);\n this.reset(true);\n }\n\n exports.keys = function(object) {\n var keys = [];\n for (var key in object) {\n keys.push(key);\n }\n keys.reverse();\n\n // Rather than returning an object with a next method, we keep\n // things simple and return the next function itself.\n return function next() {\n while (keys.length) {\n var key = keys.pop();\n if (key in object) {\n next.value = key;\n next.done = false;\n return next;\n }\n }\n\n // To avoid creating an additional object, we just hang the .value\n // and .done properties off the next function object itself. This\n // also ensures that the minifier will not anonymize the function.\n next.done = true;\n return next;\n };\n };\n\n function values(iterable) {\n if (iterable) {\n var iteratorMethod = iterable[iteratorSymbol];\n if (iteratorMethod) {\n return iteratorMethod.call(iterable);\n }\n\n if (typeof iterable.next === \"function\") {\n return iterable;\n }\n\n if (!isNaN(iterable.length)) {\n var i = -1, next = function next() {\n while (++i < iterable.length) {\n if (hasOwn.call(iterable, i)) {\n next.value = iterable[i];\n next.done = false;\n return next;\n }\n }\n\n next.value = undefined;\n next.done = true;\n\n return next;\n };\n\n return next.next = next;\n }\n }\n\n // Return an iterator with no values.\n return { next: doneResult };\n }\n exports.values = values;\n\n function doneResult() {\n return { value: undefined, done: true };\n }\n\n Context.prototype = {\n constructor: Context,\n\n reset: function(skipTempReset) {\n this.prev = 0;\n this.next = 0;\n // Resetting context._sent for legacy support of Babel's\n // function.sent implementation.\n this.sent = this._sent = undefined;\n this.done = false;\n this.delegate = null;\n\n this.method = \"next\";\n this.arg = undefined;\n\n this.tryEntries.forEach(resetTryEntry);\n\n if (!skipTempReset) {\n for (var name in this) {\n // Not sure about the optimal order of these conditions:\n if (name.charAt(0) === \"t\" &&\n hasOwn.call(this, name) &&\n !isNaN(+name.slice(1))) {\n this[name] = undefined;\n }\n }\n }\n },\n\n stop: function() {\n this.done = true;\n\n var rootEntry = this.tryEntries[0];\n var rootRecord = rootEntry.completion;\n if (rootRecord.type === \"throw\") {\n throw rootRecord.arg;\n }\n\n return this.rval;\n },\n\n dispatchException: function(exception) {\n if (this.done) {\n throw exception;\n }\n\n var context = this;\n function handle(loc, caught) {\n record.type = \"throw\";\n record.arg = exception;\n context.next = loc;\n\n if (caught) {\n // If the dispatched exception was caught by a catch block,\n // then let that catch block handle the exception normally.\n context.method = \"next\";\n context.arg = undefined;\n }\n\n return !! caught;\n }\n\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n var record = entry.completion;\n\n if (entry.tryLoc === \"root\") {\n // Exception thrown outside of any try block that could handle\n // it, so set the completion value of the entire function to\n // throw the exception.\n return handle(\"end\");\n }\n\n if (entry.tryLoc <= this.prev) {\n var hasCatch = hasOwn.call(entry, \"catchLoc\");\n var hasFinally = hasOwn.call(entry, \"finallyLoc\");\n\n if (hasCatch && hasFinally) {\n if (this.prev < entry.catchLoc) {\n return handle(entry.catchLoc, true);\n } else if (this.prev < entry.finallyLoc) {\n return handle(entry.finallyLoc);\n }\n\n } else if (hasCatch) {\n if (this.prev < entry.catchLoc) {\n return handle(entry.catchLoc, true);\n }\n\n } else if (hasFinally) {\n if (this.prev < entry.finallyLoc) {\n return handle(entry.finallyLoc);\n }\n\n } else {\n throw new Error(\"try statement without catch or finally\");\n }\n }\n }\n },\n\n abrupt: function(type, arg) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc <= this.prev &&\n hasOwn.call(entry, \"finallyLoc\") &&\n this.prev < entry.finallyLoc) {\n var finallyEntry = entry;\n break;\n }\n }\n\n if (finallyEntry &&\n (type === \"break\" ||\n type === \"continue\") &&\n finallyEntry.tryLoc <= arg &&\n arg <= finallyEntry.finallyLoc) {\n // Ignore the finally entry if control is not jumping to a\n // location outside the try/catch block.\n finallyEntry = null;\n }\n\n var record = finallyEntry ? finallyEntry.completion : {};\n record.type = type;\n record.arg = arg;\n\n if (finallyEntry) {\n this.method = \"next\";\n this.next = finallyEntry.finallyLoc;\n return ContinueSentinel;\n }\n\n return this.complete(record);\n },\n\n complete: function(record, afterLoc) {\n if (record.type === \"throw\") {\n throw record.arg;\n }\n\n if (record.type === \"break\" ||\n record.type === \"continue\") {\n this.next = record.arg;\n } else if (record.type === \"return\") {\n this.rval = this.arg = record.arg;\n this.method = \"return\";\n this.next = \"end\";\n } else if (record.type === \"normal\" && afterLoc) {\n this.next = afterLoc;\n }\n\n return ContinueSentinel;\n },\n\n finish: function(finallyLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.finallyLoc === finallyLoc) {\n this.complete(entry.completion, entry.afterLoc);\n resetTryEntry(entry);\n return ContinueSentinel;\n }\n }\n },\n\n \"catch\": function(tryLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc === tryLoc) {\n var record = entry.completion;\n if (record.type === \"throw\") {\n var thrown = record.arg;\n resetTryEntry(entry);\n }\n return thrown;\n }\n }\n\n // The context.catch method must only be called with a location\n // argument that corresponds to a known catch block.\n throw new Error(\"illegal catch attempt\");\n },\n\n delegateYield: function(iterable, resultName, nextLoc) {\n this.delegate = {\n iterator: values(iterable),\n resultName: resultName,\n nextLoc: nextLoc\n };\n\n if (this.method === \"next\") {\n // Deliberately forget the last sent value so that we don't\n // accidentally pass it on to the delegate.\n this.arg = undefined;\n }\n\n return ContinueSentinel;\n }\n };\n\n // Regardless of whether this script is executing as a CommonJS module\n // or not, return the runtime object so that we can declare the variable\n // regeneratorRuntime in the outer scope, which allows this module to be\n // injected easily by `bin/regenerator --include-runtime script.js`.\n return exports;\n\n}(\n // If this script is executing as a CommonJS module, use module.exports\n // as the regeneratorRuntime namespace. Otherwise create a new empty\n // object. Either way, the resulting object will be used to initialize\n // the regeneratorRuntime variable at the top of this file.\n typeof module === \"object\" ? module.exports : {}\n));\n\ntry {\n regeneratorRuntime = runtime;\n} catch (accidentalStrictMode) {\n // This module should not be running in strict mode, so the above\n // assignment should always work unless something is misconfigured. Just\n // in case runtime.js accidentally runs in strict mode, in modern engines\n // we can explicitly access globalThis. In older engines we can escape\n // strict mode using a global Function call. This could conceivably fail\n // if a Content Security Policy forbids using Function, but in that case\n // the proper solution is to fix the accidental strict mode problem. If\n // you've misconfigured your bundler to force strict mode and applied a\n // CSP to forbid Function, and you're not willing to fix either of those\n // problems, please detail your unique predicament in a GitHub issue.\n if (typeof globalThis === \"object\") {\n globalThis.regeneratorRuntime = runtime;\n } else {\n Function(\"r\", \"regeneratorRuntime = r\")(runtime);\n }\n}\n","import React, { FC } from 'react';\nimport { Box, IconButton, Tooltip } from '@mui/material';\nimport { useMRT } from '../useMRT';\nimport { MRT_Row } from '..';\n\ninterface Props {\n row: MRT_Row;\n}\n\nexport const MRT_EditActionButtons: FC<Props> = ({ row }) => {\n const {\n icons: { CancelIcon, SaveIcon },\n localization,\n onRowEditSubmit,\n setCurrentEditingRow,\n tableInstance: {\n state: { currentEditingRow },\n },\n } = useMRT();\n\n const handleCancel = () => {\n row.values = row.original;\n setCurrentEditingRow(null);\n };\n\n const handleSave = async () => {\n await onRowEditSubmit?.(currentEditingRow ?? row);\n setCurrentEditingRow(null);\n };\n\n return (\n <Box sx={{ display: 'flex', gap: '0.75rem' }}>\n <Tooltip arrow title={localization.rowActionButtonCancel}>\n <IconButton\n aria-label={localization.rowActionButtonCancel}\n onClick={handleCancel}\n >\n <CancelIcon />\n </IconButton>\n </Tooltip>\n <Tooltip arrow title={localization.rowActionButtonSave}>\n <IconButton\n aria-label={localization.rowActionButtonSave}\n color=\"info\"\n onClick={handleSave}\n >\n <SaveIcon />\n </IconButton>\n </Tooltip>\n </Box>\n );\n};\n","import React, { FC, MouseEvent, useState } from 'react';\nimport { IconButton, TableCell, Tooltip } from '@mui/material';\nimport { useMRT } from '../useMRT';\nimport { MRT_RowActionMenu } from '../menus/MRT_RowActionMenu';\nimport { MRT_EditActionButtons } from './MRT_EditActionButtons';\nimport { MRT_Row } from '..';\nimport { commonTableBodyButtonCellStyles } from '../body/MRT_TableBodyCell';\n\nconst commonIconButtonStyles = {\n opacity: 0.5,\n transition: 'opacity 0.2s',\n marginRight: '2px',\n height: '2rem',\n width: '2rem',\n '&:hover': {\n opacity: 1,\n },\n};\n\ninterface Props {\n row: MRT_Row;\n}\n\nexport const MRT_ToggleRowActionMenuButton: FC<Props> = ({ row }) => {\n const {\n enableRowEditing,\n icons: { EditIcon, MoreHorizIcon },\n localization,\n renderRowActionMenuItems,\n renderRowActions,\n setCurrentEditingRow,\n tableInstance,\n } = useMRT();\n\n const [anchorEl, setAnchorEl] = useState<null | HTMLElement>(null);\n\n const handleOpenRowActionMenu = (event: MouseEvent<HTMLElement>) => {\n event.stopPropagation();\n event.preventDefault();\n setAnchorEl(event.currentTarget);\n };\n\n const handleEdit = () => {\n setCurrentEditingRow({ ...row });\n setAnchorEl(null);\n };\n\n return (\n <TableCell\n sx={commonTableBodyButtonCellStyles(tableInstance.state.densePadding)}\n >\n {renderRowActions ? (\n <>{renderRowActions(row, tableInstance)}</>\n ) : row.id === tableInstance.state.currentEditingRow?.id ? (\n <MRT_EditActionButtons row={row} />\n ) : !renderRowActionMenuItems && enableRowEditing ? (\n <Tooltip\n placement=\"right\"\n arrow\n title={localization.rowActionMenuItemEdit}\n >\n <IconButton sx={commonIconButtonStyles} onClick={handleEdit}>\n <EditIcon />\n </IconButton>\n </Tooltip>\n ) : renderRowActionMenuItems ? (\n <>\n <Tooltip\n arrow\n enterDelay={1000}\n enterNextDelay={1000}\n title={localization.rowActionMenuButtonTitle}\n >\n <IconButton\n aria-label={localization.rowActionMenuButtonTitle}\n onClick={handleOpenRowActionMenu}\n size=\"small\"\n sx={commonIconButtonStyles}\n >\n <MoreHorizIcon />\n </IconButton>\n </Tooltip>\n <MRT_RowActionMenu\n anchorEl={anchorEl}\n handleEdit={handleEdit}\n row={row}\n setAnchorEl={setAnchorEl}\n />\n </>\n ) : null}\n </TableCell>\n );\n};\n","import React, { FC, MouseEvent } from 'react';\nimport { alpha, TableCell, TableRow } from '@mui/material';\nimport {\n commonTableBodyCellStyles,\n MRT_TableBodyCell,\n} from './MRT_TableBodyCell';\nimport { useMRT } from '../useMRT';\nimport { MRT_TableDetailPanel } from './MRT_TableDetailPanel';\nimport { MRT_ExpandButton } from '../buttons/MRT_ExpandButton';\nimport { MRT_SelectCheckbox } from '../inputs/MRT_SelectCheckbox';\nimport { MRT_ToggleRowActionMenuButton } from '../buttons/MRT_ToggleRowActionMenuButton';\nimport { MRT_Cell, MRT_Row } from '..';\n\ninterface Props {\n row: MRT_Row;\n}\n\nexport const MRT_TableBodyRow: FC<Props> = ({ row }) => {\n const {\n anyRowsCanExpand,\n enableRowActions,\n enableRowEditing,\n enableRowNumbers,\n enableSelection,\n muiTableBodyRowProps,\n onRowClick,\n positionActionsColumn,\n renderDetailPanel,\n tableInstance: {\n state: { densePadding },\n },\n } = useMRT();\n\n const mTableBodyRowProps =\n muiTableBodyRowProps instanceof Function\n ? muiTableBodyRowProps(row)\n : muiTableBodyRowProps;\n\n const tableRowProps = {\n ...mTableBodyRowProps,\n ...row.getRowProps(),\n style: {\n ...row.getRowProps().style,\n ...mTableBodyRowProps?.style,\n },\n };\n\n return (\n <>\n <TableRow\n hover\n onClick={(event: MouseEvent<HTMLTableRowElement>) =>\n onRowClick?.(event, row)\n }\n {...tableRowProps}\n sx={(theme) =>\n ({\n backgroundColor: row.isSelected\n ? alpha(theme.palette.primary.light, 0.1)\n : 'transparent',\n ...tableRowProps?.sx,\n } as any)\n }\n >\n {enableRowNumbers && (\n <TableCell sx={{ ...commonTableBodyCellStyles(densePadding) }}>\n {row.index + 1}\n </TableCell>\n )}\n {(enableRowActions || enableRowEditing) &&\n positionActionsColumn === 'first' && (\n <MRT_ToggleRowActionMenuButton row={row} />\n )}\n {(anyRowsCanExpand || renderDetailPanel) && (\n <MRT_ExpandButton row={row} />\n )}\n {enableSelection && <MRT_SelectCheckbox row={row} />}\n {row.cells.map((cell: MRT_Cell) => (\n <MRT_TableBodyCell key={cell.getCellProps().key} cell={cell} />\n ))}\n {(enableRowActions || enableRowEditing) &&\n positionActionsColumn === 'last' && (\n <MRT_ToggleRowActionMenuButton row={row} />\n )}\n </TableRow>\n {renderDetailPanel && !row.isGrouped && (\n <MRT_TableDetailPanel row={row} />\n )}\n </>\n );\n};\n","import React, { FC } from 'react';\nimport { TableBody } from '@mui/material';\nimport { MRT_TableBodyRow } from './MRT_TableBodyRow';\nimport { useMRT } from '../useMRT';\nimport { MRT_Row } from '..';\n\ninterface Props {}\n\nexport const MRT_TableBody: FC<Props> = () => {\n const { tableInstance, muiTableBodyProps, manualPagination } = useMRT();\n\n const rows = manualPagination ? tableInstance.rows : tableInstance.page;\n\n const mTableBodyProps =\n muiTableBodyProps instanceof Function\n ? muiTableBodyProps(tableInstance)\n : muiTableBodyProps;\n\n const tableBodyProps = {\n ...mTableBodyProps,\n ...tableInstance.getTableBodyProps(),\n style: {\n ...tableInstance.getTableBodyProps().style,\n ...mTableBodyProps?.style,\n },\n };\n\n return (\n <TableBody\n {...tableBodyProps}\n sx={{ overflowY: 'hidden', ...tableBodyProps?.sx }}\n >\n {rows.map((row: MRT_Row) => {\n tableInstance.prepareRow(row);\n return <MRT_TableBodyRow key={row.getRowProps().key} row={row} />;\n })}\n </TableBody>\n );\n};\n","import React, { FC } from 'react';\nimport { TableCell } from '@mui/material';\nimport { useMRT } from '../useMRT';\nimport { MRT_HeaderGroup } from '..';\n\ninterface Props {\n column: MRT_HeaderGroup;\n}\n\nexport const MRT_TableFooterCell: FC<Props> = ({ column }) => {\n const {\n muiTableFooterCellProps,\n enableColumnResizing,\n tableInstance: {\n state: { densePadding },\n },\n } = useMRT();\n\n const isParentHeader = !!column?.columns?.length;\n\n const mTableFooterCellProps =\n muiTableFooterCellProps instanceof Function\n ? muiTableFooterCellProps(column)\n : muiTableFooterCellProps;\n\n const mcTableFooterCellProps =\n column.muiTableFooterCellProps instanceof Function\n ? column.muiTableFooterCellProps(column)\n : column.muiTableFooterCellProps;\n\n const tableCellProps = {\n ...mTableFooterCellProps,\n ...mcTableFooterCellProps,\n ...column.getFooterProps(),\n style: {\n ...column.getFooterProps().style,\n ...mTableFooterCellProps?.style,\n ...mcTableFooterCellProps?.style,\n },\n };\n\n return (\n <TableCell\n align={isParentHeader ? 'center' : 'left'}\n variant=\"head\"\n {...tableCellProps}\n sx={{\n fontWeight: 'bold',\n verticalAlign: 'text-top',\n p: densePadding ? '0.5rem' : '1rem',\n transition: `all ${enableColumnResizing ? '10ms' : '0.2s'} ease-in-out`,\n ...tableCellProps?.sx,\n }}\n >\n {column.render('Footer')}\n </TableCell>\n );\n};\n","import React, { FC } from 'react';\nimport { TableRow } from '@mui/material';\nimport { MRT_TableFooterCell } from './MRT_TableFooterCell';\nimport { MRT_TableSpacerCell } from '../table/MRT_TableSpacerCell';\nimport { useMRT } from '../useMRT';\nimport { MRT_HeaderGroup } from '..';\n\ninterface Props {\n footerGroup: MRT_HeaderGroup;\n}\n\nexport const MRT_TableFooterRow: FC<Props> = ({ footerGroup }) => {\n const {\n anyRowsCanExpand,\n columns,\n enableRowActions,\n enableRowEditing,\n enableRowNumbers,\n enableSelection,\n muiTableFooterRowProps,\n positionActionsColumn,\n renderDetailPanel,\n tableInstance,\n } = useMRT();\n\n //if no content in row, skip row\n if (!columns?.some((c) => c.Footer)) return null;\n\n const mTableFooterRowProps =\n muiTableFooterRowProps instanceof Function\n ? muiTableFooterRowProps(footerGroup)\n : muiTableFooterRowProps;\n\n const tableRowProps = {\n ...mTableFooterRowProps,\n ...footerGroup.getFooterGroupProps(),\n style: {\n ...footerGroup.getFooterGroupProps().style,\n ...mTableFooterRowProps?.style,\n },\n };\n\n return (\n <TableRow {...tableRowProps}>\n {enableRowNumbers && <MRT_TableSpacerCell />}\n {(enableRowActions || enableRowEditing) &&\n positionActionsColumn === 'first' && <MRT_TableSpacerCell />}\n {(anyRowsCanExpand || renderDetailPanel) && (\n <MRT_TableSpacerCell\n width={`${\n renderDetailPanel ? 2 : tableInstance.expandedDepth + 0.5\n }rem`}\n />\n )}\n {enableSelection && <MRT_TableSpacerCell width=\"1rem\" />}\n {footerGroup.headers.map((column: MRT_HeaderGroup) => (\n <MRT_TableFooterCell\n key={column.getFooterProps().key}\n column={column}\n />\n ))}\n {(enableRowActions || enableRowEditing) &&\n positionActionsColumn === 'last' && <MRT_TableSpacerCell />}\n </TableRow>\n );\n};\n","import React, { FC } from 'react';\nimport { TableFooter } from '@mui/material';\nimport { MRT_TableFooterRow } from './MRT_TableFooterRow';\nimport { useMRT } from '../useMRT';\nimport { MRT_HeaderGroup } from '..';\n\ninterface Props {}\n\nexport const MRT_TableFooter: FC<Props> = () => {\n const { muiTableFooterProps, tableInstance } = useMRT();\n\n const tableFooterProps =\n muiTableFooterProps instanceof Function\n ? muiTableFooterProps(tableInstance)\n : muiTableFooterProps;\n\n return (\n <TableFooter {...tableFooterProps}>\n {tableInstance.footerGroups.map((footerGroup: MRT_HeaderGroup) => (\n <MRT_TableFooterRow\n key={footerGroup.getFooterGroupProps().key}\n footerGroup={footerGroup}\n />\n ))}\n </TableFooter>\n );\n};\n","import React, { FC } from 'react';\nimport { Table } from '@mui/material';\nimport { MRT_TableHead } from '../head/MRT_TableHead';\nimport { MRT_TableBody } from '../body/MRT_TableBody';\nimport { MRT_TableFooter } from '../footer/MRT_TableFooter';\nimport { useMRT } from '../useMRT';\n\ninterface Props {}\n\nexport const MRT_Table: FC<Props> = () => {\n const { tableInstance, muiTableProps, hideTableHead, hideTableFooter } =\n useMRT();\n\n const mTableProps =\n muiTableProps instanceof Function\n ? muiTableProps(tableInstance)\n : muiTableProps;\n\n const tableProps = {\n ...mTableProps,\n ...tableInstance.getTableProps(),\n style: {\n ...tableInstance.getTableProps().style,\n ...mTableProps?.style,\n },\n };\n\n return (\n <Table {...tableProps}>\n {!hideTableHead && <MRT_TableHead />}\n <MRT_TableBody />\n {!hideTableFooter && <MRT_TableFooter />}\n </Table>\n );\n};\n","import React, { ChangeEvent, FC, useState } from 'react';\nimport { Collapse, IconButton, InputAdornment, TextField } from '@mui/material';\nimport { useMRT } from '../useMRT';\nimport { useAsyncDebounce } from 'react-table';\n\ninterface Props {}\n\nexport const MRT_SearchTextField: FC<Props> = () => {\n const {\n icons: { SearchIcon, CloseIcon },\n idPrefix,\n localization,\n muiSearchTextFieldProps,\n onGlobalFilterChange,\n tableInstance,\n } = useMRT();\n\n const [searchValue, setSearchValue] = useState('');\n\n const handleChange = useAsyncDebounce(\n (event: ChangeEvent<HTMLInputElement>) => {\n tableInstance.setGlobalFilter(event.target.value ?? undefined);\n onGlobalFilterChange?.(event);\n },\n 200,\n );\n\n const handleClear = () => {\n setSearchValue('');\n tableInstance.setGlobalFilter(undefined);\n };\n\n return (\n <Collapse in={tableInstance.state.showSearch} orientation=\"horizontal\">\n <TextField\n id={`mrt-${idPrefix}-search-text-field`}\n placeholder={localization.searchTextFieldPlaceholder}\n onChange={(event: ChangeEvent<HTMLInputElement>) => {\n setSearchValue(event.target.value);\n handleChange(event);\n }}\n value={searchValue ?? ''}\n variant=\"standard\"\n InputProps={{\n startAdornment: (\n <InputAdornment position=\"start\">\n <SearchIcon fontSize=\"small\" />\n </InputAdornment>\n ),\n endAdornment: (\n <InputAdornment position=\"end\">\n <IconButton\n aria-label={localization.searchTextFieldClearButtonTitle}\n disabled={searchValue?.length === 0}\n onClick={handleClear}\n size=\"small\"\n title={localization.searchTextFieldClearButtonTitle}\n >\n <CloseIcon fontSize=\"small\" />\n </IconButton>\n </InputAdornment>\n ),\n }}\n {...muiSearchTextFieldProps}\n sx={{ justifySelf: 'end', ...muiSearchTextFieldProps?.sx }}\n />\n </Collapse>\n );\n};\n","import React, { FC } from 'react';\nimport { IconButton, IconButtonProps, Tooltip } from '@mui/material';\nimport { useMRT } from '../useMRT';\n\ninterface Props extends IconButtonProps {}\n\nexport const MRT_FullScreenToggleButton: FC<Props> = ({ ...rest }) => {\n const {\n icons: { FullscreenExitIcon, FullscreenIcon },\n localization,\n setFullScreen,\n tableInstance: {\n state: { fullScreen },\n },\n } = useMRT();\n\n return (\n <Tooltip arrow title={localization.toggleFullScreenButtonTitle}>\n <IconButton\n aria-label={localization.toggleFilterButtonTitle}\n onClick={() => setFullScreen(!fullScreen)}\n size=\"small\"\n {...rest}\n >\n {fullScreen ? <FullscreenExitIcon /> : <FullscreenIcon />}\n </IconButton>\n </Tooltip>\n );\n};\n","import React, { FC } from 'react';\nimport { FormControlLabel, MenuItem, Switch } from '@mui/material';\nimport { ColumnInstance } from 'react-table';\nimport { MRT_ColumnInstance } from '..';\n\ninterface Props {\n column: MRT_ColumnInstance;\n}\n\nexport const MRT_ShowHideColumnsMenu: FC<Props> = ({ column }) => {\n const isParentHeader = !!column?.columns?.length;\n\n const allChildColumnsVisible =\n isParentHeader &&\n !!column.columns?.every((childColumn) => childColumn.isVisible);\n\n const switchChecked = column.isVisible ?? allChildColumnsVisible;\n\n const handleToggleColumnHidden = (column: ColumnInstance) => {\n if (isParentHeader) {\n column?.columns?.forEach?.((childColumn) => {\n childColumn.toggleHidden(switchChecked);\n });\n } else {\n column.toggleHidden();\n }\n };\n\n return (\n <>\n <MenuItem sx={{ pl: `${(column.depth + 0.5) * 2}rem` }}>\n <FormControlLabel\n checked={switchChecked}\n control={<Switch />}\n label={column.Header as string}\n onChange={() => handleToggleColumnHidden(column)}\n />\n </MenuItem>\n {column.columns?.map((c: MRT_ColumnInstance, i) => (\n <MRT_ShowHideColumnsMenu key={`${i}-${c.id}`} column={c} />\n ))}\n </>\n );\n};\n","import React, { FC, MouseEvent, useState } from 'react';\nimport {\n Button,\n IconButton,\n Menu,\n Tooltip,\n Divider,\n IconButtonProps,\n Box,\n MenuList,\n} from '@mui/material';\nimport { useMRT } from '../useMRT';\nimport { MRT_ShowHideColumnsMenu } from '../menus/MRT_ShowHideColumnsMenu';\nimport { MRT_ColumnInstance } from '..';\n\ninterface Props extends IconButtonProps {}\n\nexport const MRT_ShowHideColumnsButton: FC<Props> = ({ ...rest }) => {\n const {\n icons: { ViewColumnIcon },\n localization,\n tableInstance,\n } = useMRT();\n\n const [anchorEl, setAnchorEl] = useState<null | HTMLElement>(null);\n\n const handleClick = (event: MouseEvent<HTMLElement>) => {\n setAnchorEl(event.currentTarget);\n };\n\n return (\n <>\n <Tooltip arrow title={localization.showHideColumnsButtonTitle}>\n <IconButton\n aria-label={localization.showHideColumnsButtonTitle}\n onClick={handleClick}\n size=\"small\"\n {...rest}\n >\n <ViewColumnIcon />\n </IconButton>\n </Tooltip>\n <Menu\n anchorEl={anchorEl}\n open={!!anchorEl}\n onClose={() => setAnchorEl(null)}\n >\n <MenuList dense={tableInstance.state.densePadding} disablePadding>\n <Box\n sx={{\n display: 'flex',\n justifyContent: 'space-between',\n p: '0 0.5rem 0.5rem 0.5rem',\n }}\n >\n <Button\n disabled={\n !tableInstance.getToggleHideAllColumnsProps().checked &&\n !tableInstance.getToggleHideAllColumnsProps().indeterminate\n }\n onClick={() => tableInstance.toggleHideAllColumns(true)}\n >\n {localization.columnShowHideMenuHideAll}\n </Button>\n <Button\n disabled={tableInstance.getToggleHideAllColumnsProps().checked}\n onClick={() => tableInstance.toggleHideAllColumns(false)}\n >\n {localization.columnShowHideMenuShowAll}\n </Button>\n </Box>\n <Divider />\n {tableInstance.columns.map((column: MRT_ColumnInstance, index) => (\n <MRT_ShowHideColumnsMenu\n key={`${index}-${column.id}`}\n column={column}\n />\n ))}\n </MenuList>\n </Menu>\n </>\n );\n};\n","import React, { FC } from 'react';\nimport { IconButton, IconButtonProps, Tooltip } from '@mui/material';\nimport { useMRT } from '../useMRT';\n\ninterface Props extends IconButtonProps {}\n\nexport const MRT_ToggleDensePaddingButton: FC<Props> = ({ ...rest }) => {\n const {\n setDensePadding,\n localization,\n icons: { DensityMediumIcon, DensitySmallIcon },\n tableInstance: {\n state: { densePadding },\n },\n } = useMRT();\n\n return (\n <Tooltip arrow title={localization.toggleDensePaddingSwitchTitle}>\n <IconButton\n aria-label={localization.toggleDensePaddingSwitchTitle}\n onClick={() => setDensePadding(!densePadding)}\n size=\"small\"\n {...rest}\n >\n {densePadding ? <DensitySmallIcon /> : <DensityMediumIcon />}\n </IconButton>\n </Tooltip>\n );\n};\n","import React, { FC } from 'react';\nimport { IconButton, IconButtonProps, Tooltip } from '@mui/material';\nimport { useMRT } from '../useMRT';\n\ninterface Props extends IconButtonProps {}\n\nexport const MRT_ToggleFiltersButton: FC<Props> = ({ ...rest }) => {\n const {\n icons: { FilterListIcon, FilterListOffIcon },\n localization,\n setShowFilters,\n tableInstance: {\n state: { showFilters },\n },\n } = useMRT();\n\n return (\n <Tooltip arrow title={localization.toggleFilterButtonTitle}>\n <IconButton\n aria-label={localization.toggleFilterButtonTitle}\n onClick={() => setShowFilters(!showFilters)}\n size=\"small\"\n {...rest}\n >\n {showFilters ? <FilterListOffIcon /> : <FilterListIcon />}\n </IconButton>\n </Tooltip>\n );\n};\n","import React, { FC } from 'react';\nimport { IconButton, IconButtonProps, Tooltip } from '@mui/material';\nimport { useMRT } from '../useMRT';\n\ninterface Props extends IconButtonProps {}\n\nexport const MRT_ToggleSearchButton: FC<Props> = ({ ...rest }) => {\n const {\n icons: { SearchIcon, SearchOffIcon },\n idPrefix,\n localization,\n muiSearchTextFieldProps,\n setShowSearch,\n tableInstance: {\n state: { showSearch },\n },\n } = useMRT();\n\n const handleToggleSearch = () => {\n setShowSearch(!showSearch);\n setTimeout(\n () =>\n document\n .getElementById(\n muiSearchTextFieldProps?.id ?? `mrt-${idPrefix}-search-text-field`,\n )\n ?.focus(),\n 200,\n );\n };\n\n return (\n <Tooltip arrow title={localization.toggleSearchButtonTitle}>\n <IconButton size=\"small\" onClick={handleToggleSearch} {...rest}>\n {showSearch ? <SearchOffIcon /> : <SearchIcon />}\n </IconButton>\n </Tooltip>\n );\n};\n","import React, { FC } from 'react';\nimport { Box } from '@mui/material';\nimport { MRT_FullScreenToggleButton } from '../buttons/MRT_FullScreenToggleButton';\nimport { MRT_ShowHideColumnsButton } from '../buttons/MRT_ShowHideColumnsButton';\nimport { MRT_ToggleDensePaddingButton } from '../buttons/MRT_ToggleDensePaddingButton';\nimport { MRT_ToggleFiltersButton } from '../buttons/MRT_ToggleFiltersButton';\nimport { MRT_ToggleSearchButton } from '../buttons/MRT_ToggleSearchButton';\nimport { useMRT } from '../useMRT';\n\ninterface Props {}\n\nexport const MRT_ToolbarInternalButtons: FC<Props> = () => {\n const {\n disableFilters,\n disableColumnHiding,\n disableDensePaddingToggle,\n disableGlobalFilter,\n disableFullScreenToggle,\n renderToolbarInternalActions,\n tableInstance,\n } = useMRT();\n\n if (renderToolbarInternalActions) {\n return (\n <>\n {renderToolbarInternalActions(tableInstance, {\n MRT_ToggleSearchButton,\n MRT_ToggleFiltersButton,\n MRT_ShowHideColumnsButton,\n MRT_ToggleDensePaddingButton,\n MRT_FullScreenToggleButton,\n })}\n </>\n );\n }\n\n return (\n <Box\n sx={{\n display: 'flex',\n gap: '0.5rem',\n alignItems: 'center',\n p: '0 0.5rem',\n }}\n >\n {!disableGlobalFilter && <MRT_ToggleSearchButton />}\n {!disableFilters && <MRT_ToggleFiltersButton />}\n {!disableColumnHiding && <MRT_ShowHideColumnsButton />}\n {!disableDensePaddingToggle && <MRT_ToggleDensePaddingButton />}\n {!disableFullScreenToggle && <MRT_FullScreenToggleButton />}\n </Box>\n );\n};\n","import React, { ChangeEvent, FC } from 'react';\nimport { TablePagination } from '@mui/material';\nimport { useMRT } from '../useMRT';\n\ninterface Props {}\n\nexport const MRT_TablePagination: FC<Props> = () => {\n const { tableInstance, muiTablePaginationProps } = useMRT();\n\n const tablePaginationProps =\n muiTablePaginationProps instanceof Function\n ? muiTablePaginationProps(tableInstance)\n : muiTablePaginationProps;\n\n const handleChangeRowsPerPage = (event: ChangeEvent<HTMLInputElement>) => {\n tableInstance.setPageSize(+event.target.value);\n tableInstance.gotoPage(0);\n };\n\n return (\n <TablePagination\n component={'div'}\n count={tableInstance.rows.length}\n onPageChange={(_, newPage) => tableInstance.gotoPage(newPage)}\n onRowsPerPageChange={handleChangeRowsPerPage}\n page={tableInstance.state.pageIndex}\n rowsPerPage={tableInstance.state.pageSize}\n SelectProps={{ style: { margin: '0 1rem 0 1ch' } }}\n showFirstButton={\n tableInstance.rows.length / tableInstance.state.pageSize > 2\n }\n showLastButton={\n tableInstance.rows.length / tableInstance.state.pageSize > 2\n }\n {...tablePaginationProps}\n sx={{\n p: 0,\n position: 'relative',\n zIndex: 2,\n ...tablePaginationProps?.sx,\n }}\n />\n );\n};\n","import React, { FC, Fragment } from 'react';\nimport { Alert, Box, Chip, Collapse, useMediaQuery } from '@mui/material';\nimport { useMRT } from '../useMRT';\n\ninterface Props {}\n\nexport const MRT_ToolbarAlertBanner: FC<Props> = () => {\n const {\n muiTableToolbarAlertBannerProps,\n tableInstance,\n positionToolbarAlertBanner,\n positionToolbarActions,\n localization,\n renderToolbarCustomActions,\n } = useMRT();\n\n const isMobile = useMediaQuery('(max-width:720px)');\n\n const alertProps =\n muiTableToolbarAlertBannerProps instanceof Function\n ? muiTableToolbarAlertBannerProps(tableInstance)\n : muiTableToolbarAlertBannerProps;\n\n const selectMessage =\n tableInstance.selectedFlatRows.length > 0\n ? localization.toolbarAlertSelectionMessage\n ?.replace(\n '{selectedCount}',\n tableInstance.selectedFlatRows.length.toString(),\n )\n ?.replace('{rowCount}', tableInstance.flatRows.length.toString())\n : null;\n\n const groupedByMessage =\n tableInstance.state.groupBy.length > 0 ? (\n <span>\n {localization.toolbarAlertGroupedByMessage}{' '}\n {tableInstance.state.groupBy.map((columnId, index) => (\n <Fragment key={`${index}-${columnId}`}>\n {index > 0 ? localization.toolbarAlertGroupedThenByMessage : ''}\n <Chip\n color=\"secondary\"\n label={\n tableInstance.allColumns.find(\n (column) => column.id === columnId,\n )?.Header\n }\n onDelete={() => tableInstance.toggleGroupBy(columnId, false)}\n />\n </Fragment>\n ))}\n </span>\n ) : null;\n\n const displayAbsolute = !(\n isMobile ||\n (positionToolbarAlertBanner === 'bottom' &&\n positionToolbarActions === 'bottom') ||\n (positionToolbarAlertBanner === 'top' && !!renderToolbarCustomActions)\n );\n\n return (\n <Collapse\n in={!!selectMessage || !!groupedByMessage}\n timeout={displayAbsolute ? 0 : 200}\n >\n <Alert\n color=\"info\"\n icon={false}\n sx={{\n borderRadius: 0,\n fontSize: '1rem',\n left: 0,\n p: 0,\n position: displayAbsolute ? 'absolute' : 'relative',\n right: 0,\n minHeight: '3.5rem',\n top: 0,\n width: '100%',\n zIndex: 2,\n ...alertProps?.sx,\n }}\n {...alertProps}\n >\n <Box sx={{ p: '0.5rem 1rem' }}>\n {selectMessage}\n {groupedByMessage}\n </Box>\n </Alert>\n </Collapse>\n );\n};\n","import React, { FC } from 'react';\nimport { alpha, Box, Toolbar } from '@mui/material';\nimport { MRT_SearchTextField } from '../inputs/MRT_SearchTextField';\nimport { useMRT } from '../useMRT';\nimport { MRT_ToolbarInternalButtons } from './MRT_ToolbarInternalButtons';\nimport { MRT_TablePagination } from './MRT_TablePagination';\nimport { MRT_ToolbarAlertBanner } from './MRT_ToolbarAlertBanner';\n\ninterface Props {}\n\nexport const MRT_ToolbarTop: FC<Props> = () => {\n const {\n disableGlobalFilter,\n hideToolbarInternalActions,\n manualPagination,\n muiTableToolbarTopProps,\n positionPagination,\n positionToolbarActions,\n positionToolbarAlertBanner,\n renderToolbarCustomActions,\n tableInstance,\n } = useMRT();\n\n const toolbarProps =\n muiTableToolbarTopProps instanceof Function\n ? muiTableToolbarTopProps(tableInstance)\n : muiTableToolbarTopProps;\n\n return (\n <Toolbar\n variant=\"dense\"\n {...toolbarProps}\n sx={(theme) =>\n ({\n backgroundColor: theme.palette.background.default,\n backgroundImage: `linear-gradient(${alpha(\n theme.palette.common.white,\n 0.05,\n )},${alpha(theme.palette.common.white, 0.05)})`,\n display: 'grid',\n p: '0 !important',\n position: tableInstance.state.fullScreen ? 'sticky' : undefined,\n top: tableInstance.state.fullScreen ? '0' : undefined,\n width: '100%',\n zIndex: 1,\n ...toolbarProps?.sx,\n } as any)\n }\n >\n {positionToolbarAlertBanner === 'top' && <MRT_ToolbarAlertBanner />}\n <Box\n sx={{\n p: '0.5rem',\n display: 'flex',\n justifyContent: 'space-between',\n }}\n >\n {renderToolbarCustomActions?.(tableInstance) ?? <span />}\n <Box\n sx={{\n display: 'flex',\n gap: '0.5rem',\n position: 'relative',\n zIndex: 3,\n }}\n >\n {!disableGlobalFilter && <MRT_SearchTextField />}\n {!hideToolbarInternalActions && positionToolbarActions === 'top' && (\n <MRT_ToolbarInternalButtons />\n )}\n </Box>\n </Box>\n <div>\n {!manualPagination &&\n ['top', 'both'].includes(positionPagination ?? '') && (\n <MRT_TablePagination />\n )}\n </div>\n </Toolbar>\n );\n};\n","import React, { FC } from 'react';\nimport { alpha, Toolbar } from '@mui/material';\nimport { useMRT } from '../useMRT';\nimport { MRT_TablePagination } from './MRT_TablePagination';\nimport { MRT_ToolbarInternalButtons } from './MRT_ToolbarInternalButtons';\nimport { MRT_ToolbarAlertBanner } from './MRT_ToolbarAlertBanner';\n\ninterface Props {}\n\nexport const MRT_ToolbarBottom: FC<Props> = () => {\n const {\n hideToolbarInternalActions,\n manualPagination,\n muiTableToolbarBottomProps,\n positionPagination,\n positionToolbarActions,\n positionToolbarAlertBanner,\n tableInstance,\n } = useMRT();\n\n const toolbarProps =\n muiTableToolbarBottomProps instanceof Function\n ? muiTableToolbarBottomProps(tableInstance)\n : muiTableToolbarBottomProps;\n\n return (\n <Toolbar\n variant=\"dense\"\n {...toolbarProps}\n sx={(theme) =>\n ({\n backgroundColor: theme.palette.background.default,\n backgroundImage: `linear-gradient(${alpha(\n theme.palette.common.white,\n 0.05,\n )},${alpha(theme.palette.common.white, 0.05)})`,\n bottom: tableInstance.state.fullScreen ? '0' : undefined,\n display: 'flex',\n justifyContent: 'space-between',\n overflowY: 'hidden',\n p: '0 0.5rem !important',\n position: tableInstance.state.fullScreen ? 'fixed' : undefined,\n width: 'calc(100% - 1rem)',\n zIndex: 1,\n ...toolbarProps?.sx,\n } as any)\n }\n >\n {!hideToolbarInternalActions && positionToolbarActions === 'bottom' ? (\n <MRT_ToolbarInternalButtons />\n ) : (\n <span />\n )}\n {positionToolbarAlertBanner === 'bottom' && <MRT_ToolbarAlertBanner />}\n {!manualPagination &&\n ['bottom', 'both'].includes(positionPagination ?? '') && (\n <MRT_TablePagination />\n )}\n </Toolbar>\n );\n};\n","import React, { FC, useEffect, useRef } from 'react';\nimport {\n LinearProgress,\n Paper,\n TableContainer,\n Collapse,\n Box,\n} from '@mui/material';\nimport { useMRT } from '../useMRT';\nimport { MRT_Table } from './MRT_Table';\nimport { MRT_ToolbarTop } from '../toolbar/MRT_ToolbarTop';\nimport { MRT_ToolbarBottom } from '../toolbar/MRT_ToolbarBottom';\n\ninterface Props {}\n\nexport const MRT_TableContainer: FC<Props> = () => {\n const {\n hideToolbarBottom,\n hideToolbarTop,\n isFetching,\n isLoading,\n muiTableContainerProps,\n tableInstance,\n } = useMRT();\n const fullScreen = tableInstance.state.fullScreen;\n const originalBodyOverflowStyle = useRef<string | undefined>();\n\n useEffect(() => {\n if (typeof window !== 'undefined') {\n originalBodyOverflowStyle.current = document?.body?.style?.overflow;\n }\n }, []);\n\n useEffect(() => {\n if (typeof window !== 'undefined') {\n if (fullScreen) {\n document.body.style.overflow = 'hidden';\n } else {\n document.body.style.overflow =\n originalBodyOverflowStyle.current ?? 'auto';\n }\n }\n }, [fullScreen]);\n\n const tableContainerProps =\n muiTableContainerProps instanceof Function\n ? muiTableContainerProps(tableInstance)\n : muiTableContainerProps;\n\n return (\n <TableContainer\n component={Paper}\n {...tableContainerProps}\n sx={{\n bottom: fullScreen ? '0' : undefined,\n height: fullScreen ? '100%' : undefined,\n left: fullScreen ? '0' : undefined,\n m: fullScreen ? '0' : undefined,\n position: fullScreen ? 'fixed' : undefined,\n right: fullScreen ? '0' : undefined,\n top: fullScreen ? '0' : undefined,\n transition: 'all 0.2s ease-in-out',\n width: fullScreen ? '100vw' : undefined,\n zIndex: fullScreen ? 1200 : 1,\n ...tableContainerProps?.sx,\n }}\n >\n {!hideToolbarTop && <MRT_ToolbarTop />}\n <Collapse in={isFetching || isLoading} unmountOnExit>\n <LinearProgress />\n </Collapse>\n <Box\n sx={{\n maxWidth: '100%',\n overflowX: 'auto',\n }}\n >\n <MRT_Table />\n </Box>\n {!hideToolbarBottom && <MRT_ToolbarBottom />}\n </TableContainer>\n );\n};\n","export interface MRT_Localization {\n actionsHeadColumnTitle: string;\n columnActionMenuButtonTitle: string;\n columnActionMenuItemClearSort: string;\n columnActionMenuItemGroupBy: string;\n columnActionMenuItemHideColumn: string;\n columnActionMenuItemSortAsc: string;\n columnActionMenuItemSortDesc: string;\n columnActionMenuItemUnGroupBy: string;\n columnShowHideMenuHideAll: string;\n columnShowHideMenuShowAll: string;\n expandAllButtonTitle: string;\n expandButtonTitle: string;\n filterApplied: string;\n filterMenuItemContains: string;\n filterMenuItemEmpty: string;\n filterMenuItemEndsWith: string;\n filterMenuItemEquals: string;\n filterMenuItemFuzzy: string;\n filterMenuItemNotEmpty: string;\n filterMenuItemNotEquals: string;\n filterMenuItemStartsWith: string;\n filterMenuTitle: string;\n filterTextFieldChangeFilterButtonTitle: string;\n filterTextFieldChipLabelEmpty: string;\n filterTextFieldChipLabelNotEmpty: string;\n filterTextFieldClearButtonTitle: string;\n filterTextFieldPlaceholder: string;\n rowActionButtonCancel: string;\n rowActionButtonSave: string;\n rowActionMenuButtonTitle: string;\n rowActionMenuItemEdit: string;\n rowActionsColumnTitle: string;\n searchTextFieldClearButtonTitle: string;\n searchTextFieldPlaceholder: string;\n selectAllCheckboxTitle: string;\n selectCheckboxTitle: string;\n showHideColumnsButtonTitle: string;\n toggleDensePaddingSwitchTitle: string;\n toggleFilterButtonTitle: string;\n toggleFullScreenButtonTitle: string;\n toggleSearchButtonTitle: string;\n toolbarAlertGroupedByMessage: string;\n toolbarAlertGroupedThenByMessage: string;\n toolbarAlertSelectionMessage: string;\n}\n\nexport const MRT_DefaultLocalization_EN: MRT_Localization = {\n actionsHeadColumnTitle: 'Actions',\n columnActionMenuButtonTitle: 'Column Actions',\n columnActionMenuItemClearSort: 'Clear sort',\n columnActionMenuItemGroupBy: 'Group by {column}',\n columnActionMenuItemHideColumn: 'Hide {column} column',\n columnActionMenuItemSortAsc: 'Sort by {column} ascending',\n columnActionMenuItemSortDesc: 'Sort by {column} descending',\n columnActionMenuItemUnGroupBy: 'Ungroup by {column}',\n columnShowHideMenuHideAll: 'Hide all',\n columnShowHideMenuShowAll: 'Show all',\n expandAllButtonTitle: 'Expand all',\n expandButtonTitle: 'Expand',\n filterApplied: 'Filtering by {column} - ({filterType})',\n filterMenuItemContains: 'Contains Exact',\n filterMenuItemEmpty: 'Empty',\n filterMenuItemEndsWith: 'Ends With',\n filterMenuItemEquals: 'Equals',\n filterMenuItemFuzzy: 'Fuzzy Match (Default)',\n filterMenuItemNotEmpty: 'Not Empty',\n filterMenuItemNotEquals: 'Not Equals',\n filterMenuItemStartsWith: 'Starts With',\n filterMenuTitle: 'Filter Mode',\n filterTextFieldChangeFilterButtonTitle: 'Change Filter Mode',\n filterTextFieldChipLabelEmpty: 'Empty',\n filterTextFieldChipLabelNotEmpty: 'Not Empty',\n filterTextFieldClearButtonTitle: 'Clear filter',\n filterTextFieldPlaceholder: 'Filter by {column}',\n rowActionButtonCancel: 'Cancel',\n rowActionButtonSave: 'Save',\n rowActionMenuButtonTitle: 'Row Actions',\n rowActionMenuItemEdit: 'Edit',\n rowActionsColumnTitle: 'Actions',\n searchTextFieldClearButtonTitle: 'Clear search',\n searchTextFieldPlaceholder: 'Search',\n selectAllCheckboxTitle: 'Toggle select all',\n selectCheckboxTitle: 'Toggle select row',\n showHideColumnsButtonTitle: 'Show/Hide columns',\n toggleDensePaddingSwitchTitle: 'Toggle dense padding',\n toggleFilterButtonTitle: 'Show/Hide filters',\n toggleFullScreenButtonTitle: 'Toggle full screen',\n toggleSearchButtonTitle: 'Show/Hide search',\n toolbarAlertGroupedByMessage: 'Grouped by ',\n toolbarAlertGroupedThenByMessage: ', then by ',\n toolbarAlertSelectionMessage: '{selectedCount} of {rowCount} row(s) selected',\n};\n","import ArrowRightIcon from '@mui/icons-material/ArrowRight';\nimport CancelIcon from '@mui/icons-material/Cancel';\nimport ClearAllIcon from '@mui/icons-material/ClearAll';\nimport CloseIcon from '@mui/icons-material/Close';\nimport DensityMediumIcon from '@mui/icons-material/DensityMedium';\nimport DensitySmallIcon from '@mui/icons-material/DensitySmall';\nimport DoubleArrowDownIcon from '@mui/icons-material/KeyboardDoubleArrowDown';\nimport DynamicFeedIcon from '@mui/icons-material/DynamicFeed';\nimport EditIcon from '@mui/icons-material/Edit';\nimport ExpandLessIcon from '@mui/icons-material/ExpandLess';\nimport ExpandMoreIcon from '@mui/icons-material/ExpandMore';\nimport FilterAltIcon from '@mui/icons-material/FilterAlt';\nimport FilterAltOff from '@mui/icons-material/FilterAltOff';\nimport FilterListIcon from '@mui/icons-material/FilterList';\nimport FilterListOffIcon from '@mui/icons-material/FilterListOff';\nimport FullscreenExitIcon from '@mui/icons-material/FullscreenExit';\nimport FullscreenIcon from '@mui/icons-material/Fullscreen';\nimport MoreHorizIcon from '@mui/icons-material/MoreHoriz';\nimport MoreVertIcon from '@mui/icons-material/MoreVert';\nimport SaveIcon from '@mui/icons-material/Save';\nimport SearchIcon from '@mui/icons-material/Search';\nimport SearchOffIcon from '@mui/icons-material/SearchOff';\nimport SortIcon from '@mui/icons-material/Sort';\nimport ViewColumnIcon from '@mui/icons-material/ViewColumn';\nimport VisibilityOffIcon from '@mui/icons-material/VisibilityOff';\n\nexport interface MRT_Icons {\n ArrowRightIcon: any;\n CancelIcon: any;\n ClearAllIcon: any;\n CloseIcon: any;\n DensityMediumIcon: any;\n DensitySmallIcon: any;\n DoubleArrowDownIcon: any;\n DynamicFeedIcon: any;\n EditIcon: any;\n ExpandLessIcon: any;\n ExpandMoreIcon: any;\n FilterAltIcon: any;\n FilterAltOff: any;\n FilterListIcon: any;\n FilterListOffIcon: any;\n FullscreenExitIcon: any;\n FullscreenIcon: any;\n MoreHorizIcon: any;\n MoreVertIcon: any;\n SaveIcon: any;\n SearchIcon: any;\n SearchOffIcon: any;\n SortIcon: any;\n ViewColumnIcon: any;\n VisibilityOffIcon: any;\n}\n\nexport const MRT_Default_Icons: MRT_Icons = {\n ArrowRightIcon,\n CancelIcon,\n ClearAllIcon,\n CloseIcon,\n DensityMediumIcon,\n DensitySmallIcon,\n DoubleArrowDownIcon,\n DynamicFeedIcon,\n EditIcon,\n ExpandLessIcon,\n ExpandMoreIcon,\n FilterAltIcon,\n FilterAltOff,\n FilterListIcon,\n FilterListOffIcon,\n FullscreenExitIcon,\n FullscreenIcon,\n MoreHorizIcon,\n MoreVertIcon,\n SaveIcon,\n SearchIcon,\n SearchOffIcon,\n SortIcon,\n ViewColumnIcon,\n VisibilityOffIcon,\n};\n","import React, { ChangeEvent, FC, MouseEvent, ReactNode } from 'react';\nimport {\n AlertProps,\n IconButtonProps,\n TableBodyProps,\n TableCellProps,\n TableContainerProps,\n TableFooterProps,\n TableHeadProps,\n TablePaginationProps,\n TableProps,\n TableRowProps,\n TextFieldProps,\n ToolbarProps,\n} from '@mui/material';\nimport {\n Cell,\n Column,\n ColumnInstance,\n // ColumnInterface,\n HeaderGroup,\n Row,\n TableInstance,\n TableOptions,\n TableState,\n UseColumnOrderInstanceProps,\n UseColumnOrderState,\n UseExpandedInstanceProps,\n UseExpandedOptions,\n UseExpandedRowProps,\n UseExpandedState,\n UseFiltersColumnOptions,\n UseFiltersColumnProps,\n UseFiltersInstanceProps,\n UseFiltersOptions,\n UseFiltersState,\n UseGlobalFiltersColumnOptions,\n UseGlobalFiltersInstanceProps,\n UseGlobalFiltersOptions,\n UseGlobalFiltersState,\n UseGroupByCellProps,\n UseGroupByColumnOptions,\n UseGroupByColumnProps,\n UseGroupByInstanceProps,\n UseGroupByOptions,\n UseGroupByRowProps,\n UseGroupByState,\n UsePaginationInstanceProps,\n UsePaginationOptions,\n UsePaginationState,\n UseResizeColumnsColumnOptions,\n UseResizeColumnsColumnProps,\n UseResizeColumnsOptions,\n UseResizeColumnsState,\n UseRowSelectInstanceProps,\n UseRowSelectOptions,\n UseRowSelectRowProps,\n UseRowSelectState,\n UseRowStateCellProps,\n UseRowStateInstanceProps,\n UseRowStateOptions,\n UseRowStateRowProps,\n UseRowStateState,\n UseSortByColumnOptions,\n UseSortByColumnProps,\n UseSortByInstanceProps,\n UseSortByOptions,\n UseSortByState,\n UseTableHeaderGroupProps,\n UseTableInstanceProps,\n UseTableOptions,\n} from 'react-table';\nimport { MaterialReactTableProvider } from './useMRT';\nimport { MRT_TableContainer } from './table/MRT_TableContainer';\nimport { MRT_Localization, MRT_DefaultLocalization_EN } from './localization';\nimport { MRT_Default_Icons, MRT_Icons } from './icons';\n\nexport type MRT_TableOptions<D extends {} = {}> = TableOptions<D> &\n UseExpandedOptions<D> &\n UseFiltersOptions<D> &\n UseGlobalFiltersOptions<D> &\n UseGroupByOptions<D> &\n UsePaginationOptions<D> &\n UseResizeColumnsOptions<D> &\n UseRowSelectOptions<D> &\n UseRowStateOptions<D> &\n UseSortByOptions<D> & {\n columns: (Column<D> & MRT_ColumnInterface)[];\n data: D[];\n initialState?: Partial<MRT_TableState>;\n };\n\nexport type MRT_TableInstance<D extends {} = {}> = TableInstance<D> &\n UseTableInstanceProps<D> &\n UseColumnOrderInstanceProps<D> &\n UseExpandedInstanceProps<D> &\n UseFiltersInstanceProps<D> &\n UseGlobalFiltersInstanceProps<D> &\n UseGroupByInstanceProps<D> &\n UsePaginationInstanceProps<D> &\n UseRowSelectInstanceProps<D> &\n UseRowStateInstanceProps<D> &\n UseSortByInstanceProps<D> & {\n columns: (Column<D> & MRT_ColumnInstance<D>)[];\n headerGroups: MRT_HeaderGroup<D>[];\n footerGroups: MRT_HeaderGroup<D>[];\n state: MRT_TableState<D>;\n rows: MRT_Row<D>[];\n page: MRT_Row<D>[];\n resetResizing: () => void;\n getToggleAllRowsExpandedProps: () => void;\n };\n\nexport type MRT_ColumnInterface<D extends {} = {}> =\n // ColumnInterface<D> &\n UseFiltersColumnOptions<D> &\n UseGlobalFiltersColumnOptions<D> &\n UseGroupByColumnOptions<D> &\n UseResizeColumnsColumnOptions<D> &\n UseSortByColumnOptions<D> & {\n Edit?: ({\n cell,\n onChange,\n }: {\n cell: MRT_Cell<D>;\n onChange?: (event: ChangeEvent<HTMLInputElement>) => void;\n }) => ReactNode;\n Filter?: ({ column }: { column: MRT_HeaderGroup<D> }) => ReactNode;\n Footer?: string;\n Header?: string;\n disableFilters?: boolean;\n editable?: boolean;\n muiTableBodyCellEditTextFieldProps?:\n | TextFieldProps\n | ((cell: MRT_Cell<D>) => TextFieldProps);\n muiTableBodyCellProps?:\n | TableCellProps\n | ((cell: MRT_Cell<D>) => TableCellProps);\n muiTableFooterCellProps?:\n | TableCellProps\n | ((column: Column<D>) => TableCellProps);\n muiTableHeadCellFilterTextFieldProps?:\n | TextFieldProps\n | ((column: Column<D>) => TextFieldProps);\n muiTableHeadCellProps?:\n | TableCellProps\n | ((column: Column<D>) => TableCellProps);\n onCellEditChange?: (\n event: ChangeEvent<HTMLInputElement>,\n cell: MRT_Cell<D>,\n ) => void;\n onFilterChange?: (\n event: ChangeEvent<HTMLInputElement>,\n filterValue: any,\n ) => void;\n };\n\nexport type MRT_ColumnInstance<D extends {} = {}> = ColumnInstance<D> &\n UseFiltersColumnProps<D> &\n UseGroupByColumnProps<D> &\n UseResizeColumnsColumnProps<D> &\n UseSortByColumnProps<D> & {\n columns?: MRT_ColumnInstance<D>[];\n };\n\nexport type MRT_HeaderGroup<D extends {} = {}> = HeaderGroup<D> &\n MRT_ColumnInstance<D> &\n UseTableHeaderGroupProps<D> & {\n headers: MRT_HeaderGroup<D>[];\n };\n\nexport type MRT_Row<D extends {} = {}> = Row<D> &\n UseExpandedRowProps<D> &\n UseGroupByRowProps<D> &\n UseRowSelectRowProps<D> &\n UseRowStateRowProps<D> & {\n cells: MRT_Cell<D>[];\n };\n\nexport type MRT_Cell<D extends {} = {}, _V = any> = Cell<D> &\n UseGroupByCellProps<D> &\n UseRowStateCellProps<D> & {};\n\nexport type MRT_FilterType =\n | 'contains'\n | 'empty'\n | 'endsWith'\n | 'equals'\n | 'fuzzy'\n | 'notEmpty'\n | 'notEquals'\n | 'startsWith';\n\nexport type MRT_TableState<D extends {} = {}> = TableState<D> &\n UseColumnOrderState<D> &\n UseExpandedState<D> &\n UseFiltersState<D> &\n UseGlobalFiltersState<D> &\n UseGroupByState<D> &\n UsePaginationState<D> &\n UseResizeColumnsState<D> &\n UseRowSelectState<D> &\n UseRowStateState<D> &\n UseSortByState<D> & {\n currentEditingRow: MRT_Row<D> | null;\n currentFilterTypes: { [key: string]: MRT_FilterType };\n densePadding: boolean;\n fullScreen: boolean;\n showFilters: boolean;\n showSearch: boolean;\n };\n\nexport type MaterialReactTableProps<D extends {} = {}> = UseTableOptions<D> &\n UseExpandedOptions<D> &\n UseFiltersOptions<D> &\n UseGlobalFiltersOptions<D> &\n UseGroupByOptions<D> &\n UsePaginationOptions<D> &\n UseResizeColumnsOptions<D> &\n UseRowSelectOptions<D> &\n UseRowStateOptions<D> &\n UseSortByOptions<D> &\n MRT_TableOptions<D> & {\n disableColumnActions?: boolean;\n disableColumnHiding?: boolean;\n disableDensePaddingToggle?: boolean;\n disableExpandAll?: boolean;\n disableFullScreenToggle?: boolean;\n disableSelectAll?: boolean;\n disableSubRowTree?: boolean;\n enableColumnGrouping?: boolean;\n enableColumnResizing?: boolean;\n enableRowActions?: boolean;\n enableRowEditing?: boolean;\n enableRowNumbers?: boolean;\n enableSelection?: boolean;\n hideTableFooter?: boolean;\n hideTableHead?: boolean;\n hideToolbarBottom?: boolean;\n hideToolbarInternalActions?: boolean;\n hideToolbarTop?: boolean;\n icons?: Partial<MRT_Icons>;\n idPrefix?: string;\n isFetching?: boolean;\n isLoading?: boolean;\n localization?: Partial<MRT_Localization>;\n muiSearchTextFieldProps?: TextFieldProps;\n muiTableBodyCellEditTextFieldProps?:\n | TextFieldProps\n | ((cell?: MRT_Cell<D>) => TextFieldProps);\n muiTableBodyCellProps?:\n | TableCellProps\n | ((cell?: MRT_Cell<D>) => TableCellProps);\n muiTableBodyProps?:\n | TableBodyProps\n | ((tableInstance: MRT_TableInstance<D>) => TableBodyProps);\n muiTableBodyRowProps?: TableRowProps | ((row: Row<D>) => TableRowProps);\n muiTableContainerProps?:\n | TableContainerProps\n | ((tableInstance: MRT_TableInstance<D>) => TableContainerProps);\n muiTableDetailPanelProps?:\n | TableCellProps\n | ((row: Row<D>) => TableCellProps);\n muiTableFooterCellProps?:\n | TableCellProps\n | ((column: Column<D>) => TableCellProps);\n muiTableFooterProps?:\n | TableFooterProps\n | ((tableInstance: MRT_TableInstance<D>) => TableFooterProps);\n muiTableFooterRowProps?:\n | TableRowProps\n | ((footerGroup: MRT_HeaderGroup<D>) => TableRowProps);\n muiTableHeadCellFilterTextFieldProps?:\n | TextFieldProps\n | ((column: Column<D>) => TextFieldProps);\n muiTableHeadCellProps?:\n | TableCellProps\n | ((column: Column<D>) => TableCellProps);\n muiTableHeadProps?:\n | TableHeadProps\n | ((tableInstance: MRT_TableInstance<D>) => TableHeadProps);\n muiTableHeadRowProps?:\n | TableRowProps\n | ((row: MRT_HeaderGroup<D>) => TableRowProps);\n muiTablePaginationProps?:\n | Partial<TablePaginationProps>\n | ((\n tableInstance: MRT_TableInstance<D>,\n ) => Partial<TablePaginationProps>);\n muiTableProps?:\n | TableProps\n | ((tableInstance: MRT_TableInstance<D>) => TableProps);\n muiTableToolbarAlertBannerProps?:\n | AlertProps\n | ((tableInstance: MRT_TableInstance<D>) => AlertProps);\n muiTableToolbarBottomProps?:\n | ToolbarProps\n | ((tableInstance: MRT_TableInstance<D>) => ToolbarProps);\n muiTableToolbarTopProps?:\n | ToolbarProps\n | ((tableInstance: MRT_TableInstance<D>) => ToolbarProps);\n onCellClick?: (\n event: MouseEvent<HTMLTableCellElement>,\n cell: MRT_Cell<D>,\n ) => void;\n onColumnHide?: (column: Column<D>, visibleColumns: Column<D>[]) => void;\n onDetailPanelClick?: (\n event: MouseEvent<HTMLTableCellElement>,\n row: Row<D>,\n ) => void;\n onGlobalFilterChange?: (event: ChangeEvent<HTMLInputElement>) => void;\n onRowClick?: (event: MouseEvent<HTMLTableRowElement>, row: Row<D>) => void;\n onRowEditSubmit?: (row: Row<D>) => Promise<void> | void;\n onRowExpandChange?: (\n event: MouseEvent<HTMLButtonElement>,\n row: Row<D>,\n ) => void;\n onRowSelectChange?: (\n event: ChangeEvent,\n row: Row<D>,\n selectedRows: Row<D>[],\n ) => void;\n onSelectAllChange?: (event: ChangeEvent, selectedRows: Row<D>[]) => void;\n positionActionsColumn?: 'first' | 'last';\n positionPagination?: 'bottom' | 'top' | 'both';\n positionToolbarActions?: 'bottom' | 'top';\n positionToolbarAlertBanner?: 'bottom' | 'top';\n renderDetailPanel?: (row: Row<D>) => ReactNode;\n renderRowActionMenuItems?: (\n rowData: Row<D>,\n tableInstance: MRT_TableInstance<D>,\n closeMenu: () => void,\n ) => ReactNode[];\n renderRowActions?: (\n row: Row<D>,\n tableInstance: MRT_TableInstance<D>,\n ) => ReactNode;\n renderToolbarCustomActions?: (\n tableInstance: MRT_TableInstance<D>,\n ) => ReactNode;\n renderToolbarInternalActions?: (\n tableInstance: MRT_TableInstance<D>,\n {\n MRT_ToggleSearchButton,\n MRT_ToggleFiltersButton,\n MRT_ShowHideColumnsButton,\n MRT_ToggleDensePaddingButton,\n MRT_FullScreenToggleButton,\n }: {\n MRT_ToggleSearchButton: FC<IconButtonProps>;\n MRT_ToggleFiltersButton: FC<IconButtonProps>;\n MRT_ShowHideColumnsButton: FC<IconButtonProps>;\n MRT_ToggleDensePaddingButton: FC<IconButtonProps>;\n MRT_FullScreenToggleButton: FC<IconButtonProps>;\n },\n ) => ReactNode;\n };\n\nexport default <D extends {}>({\n defaultColumn = { minWidth: 50, maxWidth: 1000 },\n icons,\n localization,\n positionActionsColumn = 'first',\n positionPagination = 'bottom',\n positionToolbarActions = 'top',\n positionToolbarAlertBanner = 'top',\n ...rest\n}: MaterialReactTableProps<D>) => (\n <MaterialReactTableProvider\n defaultColumn={defaultColumn}\n icons={{ ...MRT_Default_Icons, ...icons }}\n localization={{ ...MRT_DefaultLocalization_EN, ...localization }}\n positionActionsColumn={positionActionsColumn}\n positionPagination={positionPagination}\n positionToolbarActions={positionToolbarActions}\n positionToolbarAlertBanner={positionToolbarAlertBanner}\n {...rest}\n >\n <MRT_TableContainer />\n </MaterialReactTableProvider>\n);\n"],"names":["fuzzyFilterFN","rows","id","filterValue","matchSorter","toString","trim","keys","sorter","rankedItems","autoRemove","val","containsFilterFN","filter","row","values","toLowerCase","includes","startsWithFilterFN","startsWith","endsWithFilterFN","endsWith","equalsFilterFN","notEqualsFilterFN","emptyFilterFN","_filterValue","notEmptyFilterFN","defaultFilterFNs","contains","empty","equals","fuzzy","notEmpty","notEquals","MaterialReactTableContext","createContext","MaterialReactTableProvider","props","hooks","useFilters","useGlobalFilter","useGroupBy","useSortBy","useExpanded","usePagination","useRowSelect","enableColumnResizing","unshift","useResizeColumns","useFlexLayout","useState","currentEditingRow","setCurrentEditingRow","initialState","densePadding","setDensePadding","fullScreen","setFullScreen","showFilters","setShowFilters","showSearch","setShowSearch","filterTypes","useMemo","Object","assign","columns","map","c","accessor","filters","currentFilterTypes","setCurrentFilterTypes","column","tableInstance","useTable","useControlledState","state","idPrefix","Math","random","substring","anyRowsCanExpand","some","canExpand","anyRowsExpanded","isExpanded","React","Provider","value","children","useMRT","useContext","MRT_FilterTypeMenu","anchorEl","onSelect","setAnchorEl","localization","type","label","filterMenuItemFuzzy","divider","filterMenuItemContains","filterMenuItemStartsWith","filterMenuItemEndsWith","filterMenuItemEquals","filterMenuItemNotEquals","filterMenuItemEmpty","filterMenuItemNotEmpty","handleSelectFilterType","prev","setFilter","filterType","Menu","anchorOrigin","vertical","horizontal","onClose","open","MenuList","dense","disablePadding","MenuItem","key","onClick","selected","MRT_FilterTextField","icons","FilterListIcon","CloseIcon","muiTableHeadCellFilterTextFieldProps","mTableHeadCellFilterTextFieldProps","Function","mcTableHeadCellFilterTextFieldProps","textFieldProps","style","setFilterValue","handleChange","useAsyncDebounce","undefined","handleFilterMenuOpen","event","currentTarget","handleClear","handleClearFilterChip","Filter","filterChipLabel","filterPlaceholder","filterTextFieldPlaceholder","replace","String","Header","TextField","fullWidth","inputProps","disabled","sx","textOverflow","width","title","margin","placeholder","onChange","e","target","stopPropagation","variant","InputProps","startAdornment","InputAdornment","position","Tooltip","arrow","IconButton","size","height","Chip","onDelete","endAdornment","placement","filterTextFieldClearButtonTitle","length","fontSize","m","minWidth","commonMenuItemStyles","display","alignItems","MRT_ColumnActionMenu","disableColumnHiding","disableFilters","disableSortBy","enableColumnGrouping","ArrowRightIcon","ClearAllIcon","DynamicFeedIcon","SortIcon","VisibilityOffIcon","filterMenuAnchorEl","setFilterMenuAnchorEl","handleClearSort","clearSortBy","handleSortAsc","toggleSortBy","handleSortDesc","handleHideColumn","toggleHidden","handleGroupByColumn","toggleGroupBy","handleFilterByColumn","setTimeout","document","getElementById","focus","handleOpenFilterModeMenu","canSort","isSorted","ListItemIcon","ListItemText","columnActionMenuItemClearSort","isSortedDesc","columnActionMenuItemSortAsc","transform","columnActionMenuItemSortDesc","canFilter","onMouseEnter","p","canGroupBy","isGrouped","columnActionMenuItemHideColumn","MRT_ToggleColumnActionMenuButton","MoreVertIcon","handleClick","preventDefault","enterDelay","enterNextDelay","columnActionMenuButtonTitle","mr","mt","opacity","transition","commonTableHeadCellStyles","fontWeight","pt","verticalAlign","MRT_TableHeadCell","disableColumnActions","FilterAltIcon","FilterAltOff","muiTableHeadCellProps","isParentHeader","mTableHeadCellProps","mcTableHeadCellProps","tableCellProps","getHeaderProps","sortTooltip","filterTooltip","filterApplied","charAt","toUpperCase","slice","toggleFilterButtonTitle","columnHeader","render","TableCell","align","Box","justifyContent","getSortByToggleProps","flexWrap","whiteSpace","TableSortLabel","active","direction","Divider","flexItem","orientation","onDoubleClick","resetResizing","getResizerProps","borderRightWidth","borderRadius","maxHeight","Collapse","MRT_EditCellTextField","cell","muiTableBodyCellEditTextFieldProps","onCellEditChange","mTableBodyCellEditTextFieldProps","mcTableBodyCellEditTextFieldProps","editable","Edit","commonTableBodyCellStyles","commonTableBodyButtonCellStyles","textAlign","MRT_TableBodyCell","onCellClick","muiTableBodyCellProps","mTableCellBodyProps","mcTableCellBodyProps","getCellProps","isPlaceholder","isAggregated","subRows","MRT_SelectCheckbox","selectAll","onRowSelectChange","onSelectAllChange","onSelectChange","getToggleAllRowsSelectedProps","selectedFlatRows","getToggleRowSelectedProps","checkboxProps","selectAllCheckboxTitle","selectCheckboxTitle","Checkbox","MRT_ExpandAllButton","DoubleArrowDownIcon","getToggleAllRowsExpandedProps","expandAllButtonTitle","isAllRowsExpanded","MRT_TableSpacerCell","mTableBodyCellrops","MRT_TableHeadCellActions","actionsHeadColumnTitle","MRT_TableHeadRow","headerGroup","disableExpandAll","enableRowActions","enableRowEditing","enableRowNumbers","enableSelection","muiTableHeadRowProps","positionActionsColumn","renderDetailPanel","headers","h","mTableHeadRowProps","tableRowProps","getHeaderGroupProps","TableRow","expandedDepth","MRT_TableHead","muiTableHeadProps","tableHeadProps","TableHead","headerGroups","MRT_TableDetailPanel","muiTableBodyRowProps","muiTableDetailPanelProps","onDetailPanelClick","colSpan","visibleColumns","borderBottom","pb","MRT_ExpandButton","ExpandMoreIcon","pl","depth","expandButtonTitle","getToggleRowExpandedProps","MRT_RowActionMenu","handleEdit","EditIcon","renderRowActionMenuItems","rowActionMenuItemEdit","MRT_EditActionButtons","CancelIcon","SaveIcon","onRowEditSubmit","handleCancel","original","handleSave","gap","rowActionButtonCancel","rowActionButtonSave","color","commonIconButtonStyles","marginRight","MRT_ToggleRowActionMenuButton","MoreHorizIcon","renderRowActions","handleOpenRowActionMenu","rowActionMenuButtonTitle","MRT_TableBodyRow","onRowClick","mTableBodyRowProps","getRowProps","hover","theme","backgroundColor","isSelected","alpha","palette","primary","light","index","cells","MRT_TableBody","muiTableBodyProps","manualPagination","page","mTableBodyProps","tableBodyProps","getTableBodyProps","TableBody","overflowY","prepareRow","MRT_TableFooterCell","muiTableFooterCellProps","mTableFooterCellProps","mcTableFooterCellProps","getFooterProps","MRT_TableFooterRow","footerGroup","muiTableFooterRowProps","Footer","mTableFooterRowProps","getFooterGroupProps","MRT_TableFooter","muiTableFooterProps","tableFooterProps","TableFooter","footerGroups","MRT_Table","muiTableProps","hideTableHead","hideTableFooter","mTableProps","tableProps","getTableProps","Table","MRT_SearchTextField","SearchIcon","muiSearchTextFieldProps","onGlobalFilterChange","searchValue","setSearchValue","setGlobalFilter","searchTextFieldPlaceholder","searchTextFieldClearButtonTitle","justifySelf","MRT_FullScreenToggleButton","rest","FullscreenExitIcon","FullscreenIcon","toggleFullScreenButtonTitle","MRT_ShowHideColumnsMenu","allChildColumnsVisible","every","childColumn","isVisible","switchChecked","handleToggleColumnHidden","forEach","FormControlLabel","checked","control","Switch","i","MRT_ShowHideColumnsButton","ViewColumnIcon","showHideColumnsButtonTitle","Button","getToggleHideAllColumnsProps","indeterminate","toggleHideAllColumns","columnShowHideMenuHideAll","columnShowHideMenuShowAll","MRT_ToggleDensePaddingButton","DensityMediumIcon","DensitySmallIcon","toggleDensePaddingSwitchTitle","MRT_ToggleFiltersButton","FilterListOffIcon","MRT_ToggleSearchButton","SearchOffIcon","handleToggleSearch","toggleSearchButtonTitle","MRT_ToolbarInternalButtons","disableDensePaddingToggle","disableGlobalFilter","disableFullScreenToggle","renderToolbarInternalActions","MRT_TablePagination","muiTablePaginationProps","tablePaginationProps","handleChangeRowsPerPage","setPageSize","gotoPage","TablePagination","component","count","onPageChange","_","newPage","onRowsPerPageChange","pageIndex","rowsPerPage","pageSize","SelectProps","showFirstButton","showLastButton","zIndex","MRT_ToolbarAlertBanner","muiTableToolbarAlertBannerProps","positionToolbarAlertBanner","positionToolbarActions","renderToolbarCustomActions","isMobile","useMediaQuery","alertProps","selectMessage","toolbarAlertSelectionMessage","flatRows","groupedByMessage","groupBy","toolbarAlertGroupedByMessage","columnId","Fragment","toolbarAlertGroupedThenByMessage","allColumns","find","displayAbsolute","timeout","Alert","icon","left","right","minHeight","top","MRT_ToolbarTop","hideToolbarInternalActions","muiTableToolbarTopProps","positionPagination","toolbarProps","Toolbar","background","backgroundImage","common","white","MRT_ToolbarBottom","muiTableToolbarBottomProps","bottom","MRT_TableContainer","hideToolbarBottom","hideToolbarTop","isFetching","isLoading","muiTableContainerProps","originalBodyOverflowStyle","useRef","useEffect","window","current","body","overflow","tableContainerProps","TableContainer","Paper","unmountOnExit","LinearProgress","maxWidth","overflowX","MRT_DefaultLocalization_EN","columnActionMenuItemGroupBy","columnActionMenuItemUnGroupBy","filterMenuTitle","filterTextFieldChangeFilterButtonTitle","filterTextFieldChipLabelEmpty","filterTextFieldChipLabelNotEmpty","rowActionsColumnTitle","MRT_Default_Icons","ExpandLessIcon","defaultColumn"],"mappings":"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"}