material-react-table 0.5.7 → 0.5.8

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.esm.js","sources":["../src/filtersFNs.ts","../src/useMRT.tsx","../src/menus/MRT_ColumnActionMenu.tsx","../src/menus/MRT_FilterTypeMenu.tsx","../src/inputs/MRT_FilterTextField.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, useState } from 'react';\nimport {\n IconButton,\n ListItemIcon,\n ListItemText,\n Menu,\n MenuItem,\n} from '@mui/material';\nimport { useMRT } from '../useMRT';\nimport { MRT_HeaderGroup } from '..';\nimport { MRT_FilterTypeMenu } from './MRT_FilterTypeMenu';\n\nexport const commonMenuItemStyles = {\n py: '0 !important',\n my: '0 !important',\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 MenuListProps={{\n dense: tableInstance.state.densePadding,\n disablePadding: true,\n }}\n >\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 sx={commonMenuItemStyles}>\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 sx={commonMenuItemStyles}>\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 sx={commonMenuItemStyles}>\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 sx={commonMenuItemStyles}>\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 sx={commonMenuItemStyles}>\n {localization[\n column.isGrouped\n ? 'columnActionMenuItemUnGroupBy'\n : 'columnActionMenuItemGroupBy'\n ]?.replace('{column}', String(column.Header))}\n </ListItemText>\n </MenuItem>,\n ]}\n {!disableColumnHiding && [\n <MenuItem key={1} onClick={handleHideColumn} sx={commonMenuItemStyles}>\n <ListItemIcon>\n <VisibilityOffIcon />\n </ListItemIcon>\n <ListItemText sx={commonMenuItemStyles}>\n {localization.columnActionMenuItemHideColumn?.replace(\n '{column}',\n String(column.Header),\n )}\n </ListItemText>\n </MenuItem>,\n ]}\n </Menu>\n );\n};\n","import React, { FC, useMemo } from 'react';\nimport { Menu, MenuItem } from '@mui/material';\nimport { useMRT } from '../useMRT';\nimport { MRT_FilterType, MRT_HeaderGroup } from '..';\nimport { commonMenuItemStyles } from './MRT_ColumnActionMenu';\n\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 MenuListProps={{\n dense: tableInstance.state.densePadding,\n disablePadding: true,\n }}\n >\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 sx={commonMenuItemStyles}\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_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 : undefined,\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, 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 { Skeleton, 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 isLoading,\n muiTableBodyCellProps,\n muiTableBodyCellSkeletonProps,\n onCellClick,\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 {isLoading ? (\n <Skeleton\n animation=\"wave\"\n height={20}\n width={Math.random() * (120 - 60) + 60}\n {...muiTableBodyCellSkeletonProps}\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 { ListItemIcon, ListItemText, Menu, MenuItem } from '@mui/material';\nimport { useMRT } from '../useMRT';\nimport { MRT_Row } from '..';\nimport { commonMenuItemStyles } from './MRT_ColumnActionMenu';\n\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 MenuListProps={{\n dense: tableInstance.state.densePadding,\n disablePadding: true,\n }}\n >\n {enableRowEditing && (\n <MenuItem onClick={handleEdit} sx={commonMenuItemStyles}>\n <ListItemIcon>\n <EditIcon />\n </ListItemIcon>\n <ListItemText sx={commonMenuItemStyles}>\n {localization.rowActionMenuItemEdit}\n </ListItemText>\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;\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} from '@mui/material';\nimport { useMRT } from '../useMRT';\nimport { MRT_ShowHideColumnsMenu } from '../menus/MRT_ShowHideColumnsMenu';\nimport { MRT_ColumnInstance } from '..';\nimport { commonMenuItemStyles } from '../menus/MRT_ColumnActionMenu';\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 MenuListProps={{\n dense: tableInstance.state.densePadding,\n disablePadding: true,\n }}\n sx={commonMenuItemStyles}\n >\n <Box\n sx={{\n display: 'flex',\n justifyContent: 'space-between',\n p: '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 muiLinearProgressProps,\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 const linearProgressProps =\n muiLinearProgressProps instanceof Function\n ? muiLinearProgressProps(tableInstance)\n : muiLinearProgressProps;\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 {...linearProgressProps} />\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 LinearProgressProps,\n SkeletonProps,\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 muiLinearProgressProps?:\n | LinearProgressProps\n | ((tableInstance: MRT_TableInstance) => LinearProgressProps);\n muiSearchTextFieldProps?: TextFieldProps;\n muiTableBodyCellEditTextFieldProps?:\n | TextFieldProps\n | ((cell?: MRT_Cell<D>) => TextFieldProps);\n muiTableBodyCellProps?:\n | TableCellProps\n | ((cell?: MRT_Cell<D>) => TableCellProps);\n muiTableBodyCellSkeletonProps?:\n | SkeletonProps\n | ((cell?: MRT_Cell<D>) => SkeletonProps);\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","commonMenuItemStyles","py","my","MRT_ColumnActionMenu","anchorEl","setAnchorEl","disableColumnHiding","disableFilters","disableSortBy","enableColumnGrouping","icons","ArrowRightIcon","ClearAllIcon","DynamicFeedIcon","FilterListIcon","SortIcon","VisibilityOffIcon","localization","filterMenuAnchorEl","setFilterMenuAnchorEl","handleClearSort","clearSortBy","handleSortAsc","toggleSortBy","handleSortDesc","handleHideColumn","toggleHidden","handleGroupByColumn","toggleGroupBy","handleFilterByColumn","setTimeout","document","getElementById","muiTableHeadCellFilterTextFieldProps","focus","handleOpenFilterModeMenu","event","stopPropagation","currentTarget","Menu","open","onClose","MenuListProps","dense","disablePadding","canSort","MenuItem","key","disabled","isSorted","onClick","sx","ListItemIcon","ListItemText","columnActionMenuItemClearSort","isSortedDesc","columnActionMenuItemSortAsc","replace","String","Header","divider","style","transform","columnActionMenuItemSortDesc","canFilter","filterTextFieldPlaceholder","IconButton","onMouseEnter","size","p","MRT_FilterTypeMenu","onSelect","canGroupBy","isGrouped","columnActionMenuItemHideColumn","type","label","filterMenuItemFuzzy","filterMenuItemContains","filterMenuItemStartsWith","filterMenuItemEndsWith","filterMenuItemEquals","filterMenuItemNotEquals","filterMenuItemEmpty","filterMenuItemNotEmpty","handleSelectFilterType","prev","setFilter","filterType","anchorOrigin","vertical","horizontal","selected","MRT_FilterTextField","CloseIcon","mTableHeadCellFilterTextFieldProps","Function","mcTableHeadCellFilterTextFieldProps","textFieldProps","setFilterValue","handleChange","useAsyncDebounce","undefined","handleFilterMenuOpen","handleClear","handleClearFilterChip","Filter","filterChipLabel","filterPlaceholder","TextField","fullWidth","inputProps","textOverflow","width","title","margin","placeholder","onChange","e","target","variant","InputProps","startAdornment","InputAdornment","position","Tooltip","arrow","height","Chip","onDelete","endAdornment","placement","filterTextFieldClearButtonTitle","length","fontSize","m","minWidth","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","alignItems","display","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","isLoading","muiTableBodyCellProps","muiTableBodyCellSkeletonProps","onCellClick","mTableCellBodyProps","mcTableCellBodyProps","getCellProps","Skeleton","animation","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","muiLinearProgressProps","muiTableContainerProps","originalBodyOverflowStyle","useRef","useEffect","window","current","body","overflow","tableContainerProps","linearProgressProps","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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"}
1
+ {"version":3,"file":"material-react-table.esm.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 fuzzySearchFN = (\n rows: MRT_Row[],\n columnIds: string[],\n filterValue: string | number,\n) =>\n matchSorter(rows, filterValue.toString().trim(), {\n keys: columnIds.map((c) => `values.${c}`),\n sorter: (rankedItems) => rankedItems,\n });\n\nfuzzySearchFN.autoRemove = (val: any) => !val;\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_FILTER_TYPE, 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<{\n [key in MRT_FILTER_TYPE]: any;\n }>(\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.map((c) => ({\n [c.accessor as string]:\n c.filter ??\n props?.initialState?.filters?.[c.accessor as any] ??\n (!!c.filterSelectOptions ? 'equals' : 'fuzzy'),\n })),\n ),\n );\n\n const columns = useMemo(\n () =>\n props.columns.map((column) => {\n column.filter =\n filterTypes[\n currentFilterTypes[column.accessor as string] as MRT_FILTER_TYPE\n ];\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 globalFilterValue: 'fuzzy',\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 } from '@mui/material';\nimport { useMRT } from '../useMRT';\nimport { MRT_FilterType, MRT_FILTER_TYPE, MRT_HeaderGroup } from '..';\n\nconst commonMenuItemStyles = {\n py: '6px',\n my: 0,\n alignItems: 'center',\n};\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_FILTER_TYPE;\n label: string;\n divider: boolean;\n }[] = useMemo(\n () => [\n {\n type: MRT_FILTER_TYPE.FUZZY,\n label: localization.filterMenuItemFuzzy,\n divider: false,\n },\n {\n type: MRT_FILTER_TYPE.CONTAINS,\n label: localization.filterMenuItemContains,\n divider: true,\n },\n {\n type: MRT_FILTER_TYPE.STARTS_WITH,\n label: localization.filterMenuItemStartsWith,\n divider: false,\n },\n {\n type: MRT_FILTER_TYPE.ENDS_WITH,\n label: localization.filterMenuItemEndsWith,\n divider: true,\n },\n {\n type: MRT_FILTER_TYPE.EQUALS,\n label: localization.filterMenuItemEquals,\n divider: false,\n },\n {\n type: MRT_FILTER_TYPE.NOT_EQUALS,\n label: localization.filterMenuItemNotEquals,\n divider: true,\n },\n {\n type: MRT_FILTER_TYPE.EMPTY,\n label: localization.filterMenuItemEmpty,\n divider: false,\n },\n {\n type: MRT_FILTER_TYPE.NOT_EMPTY,\n label: localization.filterMenuItemNotEmpty,\n divider: false,\n },\n ],\n [],\n );\n\n const handleSelectFilterType = (value: MRT_FILTER_TYPE) => {\n setAnchorEl(null);\n setCurrentFilterTypes((prev: { [key: string]: MRT_FilterType }) => ({\n ...prev,\n [column.id]: value,\n }));\n if ([MRT_FILTER_TYPE.EMPTY, MRT_FILTER_TYPE.NOT_EMPTY].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 MenuListProps={{\n dense: tableInstance.state.densePadding,\n }}\n >\n {filterTypes.map(({ type, label, divider }, index) => (\n <MenuItem\n divider={divider}\n key={index}\n onClick={() => handleSelectFilterType(type)}\n selected={type === filterType}\n sx={commonMenuItemStyles}\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 MenuItem,\n TextField,\n TextFieldProps,\n Tooltip,\n} from '@mui/material';\nimport { useAsyncDebounce } from 'react-table';\nimport { useMRT } from '../useMRT';\nimport { MRT_FILTER_TYPE, 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) => ({\n ...prev,\n [column.id]: MRT_FILTER_TYPE.FUZZY,\n }));\n };\n\n if (column.Filter) {\n return <>{column.Filter?.({ column })}</>;\n }\n\n const filterType = tableInstance.state.currentFilterTypes[column.id];\n const isCustomFilterType = filterType instanceof Function;\n const isSelectFilter = !!column.filterSelectOptions;\n const filterChipLabel =\n !isCustomFilterType &&\n [MRT_FILTER_TYPE.EMPTY, MRT_FILTER_TYPE.NOT_EMPTY].includes(\n filterType as MRT_FILTER_TYPE,\n );\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 : undefined,\n },\n title: filterPlaceholder,\n }}\n label={isSelectFilter && !filterValue ? filterPlaceholder : undefined}\n InputLabelProps={{\n shrink: false,\n sx: {\n maxWidth: 'calc(100% - 2.5rem)',\n },\n title: filterPlaceholder,\n }}\n margin=\"none\"\n placeholder={\n filterChipLabel || isSelectFilter ? undefined : filterPlaceholder\n }\n onChange={(e: ChangeEvent<HTMLInputElement>) => {\n setFilterValue(e.target.value);\n handleChange(e.target.value);\n }}\n onClick={(e) => e.stopPropagation()}\n select={isSelectFilter}\n value={filterValue ?? ''}\n variant=\"standard\"\n InputProps={{\n startAdornment: !isSelectFilter && (\n <InputAdornment position=\"start\">\n <Tooltip arrow title={localization.changeFilterMode}>\n <span>\n <IconButton\n disabled={isCustomFilterType}\n onClick={handleFilterMenuOpen}\n size=\"small\"\n sx={{ height: '1.75rem', width: '1.75rem' }}\n >\n <FilterListIcon />\n </IconButton>\n </span>\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 disableHoverListener={isSelectFilter}\n placement=\"right\"\n title={localization.filterTextFieldClearButtonTitle ?? ''}\n >\n <span>\n <IconButton\n aria-label={localization.filterTextFieldClearButtonTitle}\n disabled={!filterValue?.length}\n onClick={handleClear}\n size=\"small\"\n sx={{\n height: '1.75rem',\n width: '1.75rem',\n }}\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 mt: isSelectFilter && !filterValue ? '-1rem' : undefined,\n '&\t.MuiSelect-icon': {\n mr: '1.5rem',\n },\n ...textFieldProps?.sx,\n }}\n >\n {isSelectFilter && (\n <MenuItem divider disabled={!filterValue} value=\"\">\n {localization.filterTextFieldClearButtonTitle}\n </MenuItem>\n )}\n {column?.filterSelectOptions?.map((option) => {\n let value;\n let text;\n if (typeof option === 'string') {\n value = option;\n text = option;\n } else if (typeof option === 'object') {\n value = option.value;\n text = option.text;\n }\n return (\n <MenuItem key={value} value={value}>\n {text}\n </MenuItem>\n );\n })}\n </TextField>\n <MRT_FilterTypeMenu\n anchorEl={anchorEl}\n column={column}\n setAnchorEl={setAnchorEl}\n />\n </>\n );\n};\n","import React, { FC, useState } from 'react';\nimport { Box, IconButton, Menu, MenuItem } from '@mui/material';\nimport { useMRT } from '../useMRT';\nimport { MRT_HeaderGroup } from '..';\nimport { MRT_FilterTypeMenu } from './MRT_FilterTypeMenu';\n\nexport const commonMenuItemStyles = {\n py: '6px',\n my: 0,\n justifyContent: 'space-between',\n alignItems: 'center',\n};\n\nexport const commonListItemStyles = {\n display: 'flex',\n gap: '0.75rem',\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 FilterListOffIcon,\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 handleClearFilter = () => {\n column.setFilter('');\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 MenuListProps={{\n dense: tableInstance.state.densePadding,\n }}\n >\n {!disableSortBy &&\n column.canSort && [\n <MenuItem\n disabled={!column.isSorted}\n key={1}\n onClick={handleClearSort}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <ClearAllIcon />\n {localization.columnActionMenuItemClearSort}\n </Box>\n </MenuItem>,\n <MenuItem\n disabled={column.isSorted && !column.isSortedDesc}\n key={2}\n onClick={handleSortAsc}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <SortIcon />\n {localization.columnActionMenuItemSortAsc?.replace(\n '{column}',\n String(column.Header),\n )}\n </Box>\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 <Box sx={commonListItemStyles}>\n <SortIcon style={{ transform: 'rotate(180deg) scaleX(-1)' }} />\n {localization.columnActionMenuItemSortDesc?.replace(\n '{column}',\n String(column.Header),\n )}\n </Box>\n </MenuItem>,\n ]}\n {!disableFilters &&\n column.canFilter && [\n <MenuItem\n disabled={!column.filterValue}\n key={0}\n onClick={handleClearFilter}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <FilterListOffIcon />\n {localization.filterTextFieldClearButtonTitle}\n </Box>\n </MenuItem>,\n <MenuItem\n divider={enableColumnGrouping || !disableColumnHiding}\n key={1}\n onClick={handleFilterByColumn}\n sx={commonMenuItemStyles}\n >\n <Box sx={commonListItemStyles}>\n <FilterListIcon />\n {localization.filterTextFieldPlaceholder?.replace(\n '{column}',\n String(column.Header),\n )}\n </Box>\n {!column.filterSelectOptions && (\n <IconButton\n onClick={handleOpenFilterModeMenu}\n onMouseEnter={handleOpenFilterModeMenu}\n size=\"small\"\n sx={{ p: 0 }}\n >\n <ArrowRightIcon />\n </IconButton>\n )}\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 <Box sx={commonListItemStyles}>\n <DynamicFeedIcon />\n {localization[\n column.isGrouped\n ? 'columnActionMenuItemUnGroupBy'\n : 'columnActionMenuItemGroupBy'\n ]?.replace('{column}', String(column.Header))}\n </Box>\n </MenuItem>,\n ]}\n {!disableColumnHiding && [\n <MenuItem key={1} onClick={handleHideColumn} sx={commonMenuItemStyles}>\n <Box sx={commonListItemStyles}>\n <VisibilityOffIcon />\n {localization.columnActionMenuItemHideColumn?.replace(\n '{column}',\n String(column.Header),\n )}\n </Box>\n </MenuItem>,\n ]}\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('{filterType}', column.filterValue)\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 placement=\"top\" 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 placement=\"top\" title={filterTooltip}>\n <IconButton\n disableRipple\n onClick={(event) => {\n event.stopPropagation();\n setShowFilters(!tableInstance.state.showFilters);\n }}\n size=\"small\"\n sx={{\n m: 0,\n opacity: !!column.filterValue ? 0.8 : 0,\n p: '2px',\n transition: 'all 0.2s ease-in-out',\n '&:hover': {\n backgroundColor: 'transparent',\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 { Skeleton, 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 isLoading,\n muiTableBodyCellProps,\n muiTableBodyCellSkeletonProps,\n onCellClick,\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 {isLoading ? (\n <Skeleton\n animation=\"wave\"\n height={20}\n width={Math.random() * (120 - 60) + 60}\n {...muiTableBodyCellSkeletonProps}\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 '..';\nimport { commonMenuItemStyles } from './MRT_ColumnActionMenu';\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 MenuListProps={{\n dense: tableInstance.state.densePadding,\n }}\n >\n {enableRowEditing && (\n <MenuItem onClick={handleEdit} sx={commonMenuItemStyles}>\n <EditIcon />\n {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;\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 '..';\nimport { commonMenuItemStyles } from './MRT_ColumnActionMenu';\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\n sx={{ ...commonMenuItemStyles, pl: `${(column.depth + 0.5) * 2}rem` }}\n >\n <FormControlLabel\n componentsProps={{ typography: { sx: { marginBottom: 0 } } }}\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 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 MenuListProps={{\n dense: tableInstance.state.densePadding,\n }}\n >\n <Box\n sx={{\n display: 'flex',\n justifyContent: 'space-between',\n p: '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 muiLinearProgressProps,\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 const linearProgressProps =\n muiLinearProgressProps instanceof Function\n ? muiLinearProgressProps(tableInstance)\n : muiLinearProgressProps;\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 {...linearProgressProps} />\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 changeFilterMode: 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 changeFilterMode: 'Change filter mode',\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 LinearProgressProps,\n SkeletonProps,\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 FilterType,\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 filter?: MRT_FilterType | string | FilterType<D>;\n filterSelectOptions?: (string | { text: string; value: string })[];\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 enum MRT_FILTER_TYPE {\n CONTAINS = 'contains',\n EMPTY = 'empty',\n ENDS_WITH = 'endsWith',\n EQUALS = 'equals',\n FUZZY = 'fuzzy',\n NOT_EMPTY = 'notEmpty',\n NOT_EQUALS = 'notEquals',\n STARTS_WITH = 'startsWith',\n}\n\nexport type MRT_FilterType = MRT_FILTER_TYPE | Function;\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 muiLinearProgressProps?:\n | LinearProgressProps\n | ((tableInstance: MRT_TableInstance) => LinearProgressProps);\n muiSearchTextFieldProps?: TextFieldProps;\n muiTableBodyCellEditTextFieldProps?:\n | TextFieldProps\n | ((cell?: MRT_Cell<D>) => TextFieldProps);\n muiTableBodyCellProps?:\n | TableCellProps\n | ((cell?: MRT_Cell<D>) => TableCellProps);\n muiTableBodyCellSkeletonProps?:\n | SkeletonProps\n | ((cell?: MRT_Cell<D>) => SkeletonProps);\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","filterSelectOptions","currentFilterTypes","setCurrentFilterTypes","column","tableInstance","useTable","globalFilterValue","useControlledState","state","idPrefix","Math","random","substring","anyRowsCanExpand","some","canExpand","anyRowsExpanded","isExpanded","React","Provider","value","children","useMRT","useContext","commonMenuItemStyles","py","my","alignItems","MRT_FilterTypeMenu","anchorEl","onSelect","setAnchorEl","localization","type","MRT_FILTER_TYPE","FUZZY","label","filterMenuItemFuzzy","divider","CONTAINS","filterMenuItemContains","STARTS_WITH","filterMenuItemStartsWith","ENDS_WITH","filterMenuItemEndsWith","EQUALS","filterMenuItemEquals","NOT_EQUALS","filterMenuItemNotEquals","EMPTY","filterMenuItemEmpty","NOT_EMPTY","filterMenuItemNotEmpty","handleSelectFilterType","prev","setFilter","filterType","Menu","anchorOrigin","vertical","horizontal","onClose","open","MenuListProps","dense","index","MenuItem","key","onClick","selected","sx","MRT_FilterTextField","icons","FilterListIcon","CloseIcon","muiTableHeadCellFilterTextFieldProps","mTableHeadCellFilterTextFieldProps","Function","mcTableHeadCellFilterTextFieldProps","textFieldProps","style","setFilterValue","handleChange","useAsyncDebounce","undefined","handleFilterMenuOpen","event","currentTarget","handleClear","handleClearFilterChip","Filter","isCustomFilterType","isSelectFilter","filterChipLabel","filterPlaceholder","filterTextFieldPlaceholder","replace","String","Header","TextField","fullWidth","inputProps","disabled","textOverflow","width","title","InputLabelProps","shrink","maxWidth","margin","placeholder","onChange","e","target","stopPropagation","select","variant","InputProps","startAdornment","InputAdornment","position","Tooltip","arrow","changeFilterMode","IconButton","size","height","Chip","onDelete","endAdornment","disableHoverListener","placement","filterTextFieldClearButtonTitle","length","fontSize","m","minWidth","mt","mr","option","text","justifyContent","commonListItemStyles","display","gap","MRT_ColumnActionMenu","disableColumnHiding","disableFilters","disableSortBy","enableColumnGrouping","ArrowRightIcon","ClearAllIcon","DynamicFeedIcon","FilterListOffIcon","SortIcon","VisibilityOffIcon","filterMenuAnchorEl","setFilterMenuAnchorEl","handleClearSort","clearSortBy","handleSortAsc","toggleSortBy","handleSortDesc","handleHideColumn","toggleHidden","handleGroupByColumn","toggleGroupBy","handleClearFilter","handleFilterByColumn","setTimeout","document","getElementById","focus","handleOpenFilterModeMenu","canSort","isSorted","Box","columnActionMenuItemClearSort","isSortedDesc","columnActionMenuItemSortAsc","transform","columnActionMenuItemSortDesc","canFilter","onMouseEnter","p","canGroupBy","isGrouped","columnActionMenuItemHideColumn","MRT_ToggleColumnActionMenuButton","MoreVertIcon","handleClick","preventDefault","enterDelay","enterNextDelay","columnActionMenuButtonTitle","opacity","transition","commonTableHeadCellStyles","fontWeight","pt","verticalAlign","MRT_TableHeadCell","disableColumnActions","FilterAltIcon","FilterAltOff","muiTableHeadCellProps","isParentHeader","mTableHeadCellProps","mcTableHeadCellProps","tableCellProps","getHeaderProps","sortTooltip","filterTooltip","filterApplied","toggleFilterButtonTitle","columnHeader","render","TableCell","align","getSortByToggleProps","flexWrap","whiteSpace","TableSortLabel","active","direction","disableRipple","backgroundColor","Divider","flexItem","orientation","onDoubleClick","resetResizing","getResizerProps","borderRightWidth","borderRadius","maxHeight","Collapse","MRT_EditCellTextField","cell","muiTableBodyCellEditTextFieldProps","onCellEditChange","mTableBodyCellEditTextFieldProps","mcTableBodyCellEditTextFieldProps","editable","Edit","commonTableBodyCellStyles","commonTableBodyButtonCellStyles","textAlign","MRT_TableBodyCell","isLoading","muiTableBodyCellProps","muiTableBodyCellSkeletonProps","onCellClick","mTableCellBodyProps","mcTableCellBodyProps","getCellProps","Skeleton","animation","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","rowActionButtonCancel","rowActionButtonSave","color","commonIconButtonStyles","marginRight","MRT_ToggleRowActionMenuButton","MoreHorizIcon","renderRowActions","handleOpenRowActionMenu","rowActionMenuButtonTitle","MRT_TableBodyRow","onRowClick","mTableBodyRowProps","getRowProps","hover","theme","isSelected","alpha","palette","primary","light","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","componentsProps","typography","marginBottom","checked","control","Switch","i","MRT_ShowHideColumnsButton","ViewColumnIcon","showHideColumnsButtonTitle","Button","getToggleHideAllColumnsProps","indeterminate","toggleHideAllColumns","columnShowHideMenuHideAll","columnShowHideMenuShowAll","MRT_ToggleDensePaddingButton","DensityMediumIcon","DensitySmallIcon","toggleDensePaddingSwitchTitle","MRT_ToggleFiltersButton","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","muiLinearProgressProps","muiTableContainerProps","originalBodyOverflowStyle","useRef","useEffect","window","current","body","overflow","tableContainerProps","linearProgressProps","TableContainer","Paper","unmountOnExit","LinearProgress","overflowX","MRT_DefaultLocalization_EN","columnActionMenuItemGroupBy","columnActionMenuItemUnGroupBy","filterMenuTitle","filterTextFieldChangeFilterButtonTitle","filterTextFieldChipLabelEmpty","filterTextFieldChipLabelNotEmpty","rowActionsColumnTitle","MRT_Default_Icons","ExpandLessIcon","defaultColumn"],"mappings":"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"}