@popmenu/table 0.126.1 → 0.126.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/cjs/components/ColumnFilterChip/ColumnFilterChip.d.ts +9 -0
- package/build/cjs/components/ColumnFilterChip/ColumnFilterChipStyles.d.ts +1 -0
- package/build/cjs/components/ColumnFilterChip/index.d.ts +1 -0
- package/build/cjs/components/ColumnFilterResetButton/ColumnFilterResetButton.d.ts +3 -0
- package/build/cjs/components/ColumnFilterResetButton/index.d.ts +1 -0
- package/build/cjs/components/FilterPanel/FilterControl/FilterControl.d.ts +3 -0
- package/build/cjs/components/FilterPanel/FilterControl/SelectFilter/SelectFilter.d.ts +5 -0
- package/build/cjs/components/FilterPanel/FilterControl/SelectFilter/SelectFilterStyles.d.ts +1 -0
- package/build/cjs/components/FilterPanel/FilterControl/SelectFilter/index.d.ts +1 -0
- package/build/cjs/components/FilterPanel/FilterControl/ToggleFilter/ToggleFilter.d.ts +4 -0
- package/build/cjs/components/FilterPanel/FilterControl/ToggleFilter/index.d.ts +1 -0
- package/build/cjs/components/FilterPanel/FilterControl/index.d.ts +1 -0
- package/build/cjs/components/FilterPanel/FilterPanel.d.ts +2 -0
- package/build/cjs/components/FilterPanel/FilterPanelContext/FilterPanelContext.d.ts +7 -0
- package/build/cjs/components/FilterPanel/FilterPanelContext/index.d.ts +1 -0
- package/build/cjs/components/FilterPanel/FilterPanelProps.d.ts +11 -0
- package/build/cjs/components/FilterPanel/Panel/Panel.d.ts +7 -0
- package/build/cjs/components/FilterPanel/Panel/PanelStyles.d.ts +1 -0
- package/build/cjs/components/FilterPanel/Panel/index.d.ts +1 -0
- package/build/cjs/components/FilterPanel/Trigger/Trigger.d.ts +7 -0
- package/build/cjs/components/FilterPanel/Trigger/TriggerStyles.d.ts +1 -0
- package/build/cjs/components/FilterPanel/Trigger/index.d.ts +1 -0
- package/build/cjs/components/FilterPanel/index.d.ts +1 -0
- package/build/cjs/components/GlobalFilter/GlobalFilter.d.ts +3 -0
- package/build/cjs/components/GlobalFilter/GlobalFilterProps.d.ts +7 -0
- package/build/cjs/components/GlobalFilter/GlobalFilterStyles.d.ts +1 -0
- package/build/cjs/components/GlobalFilter/index.d.ts +2 -0
- package/build/cjs/components/RowActions/RowActions.d.ts +3 -0
- package/build/cjs/components/RowActions/RowActionsProps.d.ts +13 -0
- package/build/cjs/components/RowActions/index.d.ts +2 -0
- package/build/cjs/components/Table/Table.d.ts +21 -0
- package/build/cjs/components/Table/TableProps.d.ts +47 -0
- package/build/cjs/components/Table/TableStyles.d.ts +2 -0
- package/build/cjs/components/Table/index.d.ts +2 -0
- package/build/cjs/components/TableBody/TableBody.d.ts +4 -0
- package/build/cjs/components/TableBody/index.d.ts +1 -0
- package/build/cjs/components/TableCell/TableCell.d.ts +4 -0
- package/build/cjs/components/TableCell/TableCellStyles.d.ts +1 -0
- package/build/cjs/components/TableCell/index.d.ts +1 -0
- package/build/cjs/components/TableContext/index.d.ts +16 -0
- package/build/cjs/components/TableControlsContainer/TableControlsContainer.d.ts +3 -0
- package/build/cjs/components/TableControlsContainer/TableControlsContainerProps.d.ts +6 -0
- package/build/cjs/components/TableControlsContainer/index.d.ts +1 -0
- package/build/cjs/components/TableFooter/TableFooter.d.ts +4 -0
- package/build/cjs/components/TableFooter/index.d.ts +1 -0
- package/build/cjs/components/TableHeader/TableHeader.d.ts +4 -0
- package/build/cjs/components/TableHeader/index.d.ts +1 -0
- package/build/cjs/components/TableHeaderCell/TableHeaderCell.d.ts +3 -0
- package/build/cjs/components/TableHeaderCell/TableHeaderCellProps.d.ts +6 -0
- package/build/cjs/components/TableHeaderCell/TableHeaderCellStyles.d.ts +4 -0
- package/build/cjs/components/TableHeaderCell/index.d.ts +2 -0
- package/build/cjs/components/TableHeaderRow/TableHeaderRow.d.ts +4 -0
- package/build/cjs/components/TableHeaderRow/index.d.ts +1 -0
- package/build/cjs/components/TableRow/TableRow.d.ts +4 -0
- package/build/cjs/components/TableRow/TableRowStyles.d.ts +1 -0
- package/build/cjs/components/TableRow/index.d.ts +1 -0
- package/build/cjs/components/index.d.ts +10 -0
- package/build/cjs/hooks/index.d.ts +2 -0
- package/build/cjs/hooks/useColumnFilters.d.ts +9 -0
- package/build/cjs/hooks/useStagedColumnFilters.d.ts +8 -0
- package/build/cjs/index.d.ts +1 -0
- package/build/{index.js → cjs/index.js} +3 -659
- package/build/cjs/index.js.map +1 -0
- package/build/cjs/util/coercedValueIncludesString.d.ts +2 -0
- package/build/cjs/util/getTableMinHeight.d.ts +2 -0
- package/build/cjs/util/index.d.ts +3 -0
- package/build/cjs/util/tableConstants.d.ts +5 -0
- package/build/cjs/util/validateRowAction.d.ts +2 -0
- package/build/esm/components/GlobalFilter/GlobalFilterProps.d.ts +1 -1
- package/build/esm/components/TableHeaderCell/TableHeaderCell.js +5 -4
- package/build/esm/components/TableHeaderCell/TableHeaderCell.js.map +1 -1
- package/package.json +3 -3
- package/build/esm/_virtual/_commonjsHelpers.js +0 -4
- package/build/esm/_virtual/_commonjsHelpers.js.map +0 -1
- package/build/esm/node_modules/lodash/_Symbol.js +0 -11
- package/build/esm/node_modules/lodash/_Symbol.js.map +0 -1
- package/build/esm/node_modules/lodash/_arrayMap.js +0 -25
- package/build/esm/node_modules/lodash/_arrayMap.js.map +0 -1
- package/build/esm/node_modules/lodash/_arrayReduce.js +0 -30
- package/build/esm/node_modules/lodash/_arrayReduce.js.map +0 -1
- package/build/esm/node_modules/lodash/_asciiWords.js +0 -19
- package/build/esm/node_modules/lodash/_asciiWords.js.map +0 -1
- package/build/esm/node_modules/lodash/_baseGetTag.js +0 -35
- package/build/esm/node_modules/lodash/_baseGetTag.js.map +0 -1
- package/build/esm/node_modules/lodash/_basePropertyOf.js +0 -18
- package/build/esm/node_modules/lodash/_basePropertyOf.js.map +0 -1
- package/build/esm/node_modules/lodash/_baseToString.js +0 -42
- package/build/esm/node_modules/lodash/_baseToString.js.map +0 -1
- package/build/esm/node_modules/lodash/_createCompounder.js +0 -31
- package/build/esm/node_modules/lodash/_createCompounder.js.map +0 -1
- package/build/esm/node_modules/lodash/_deburrLetter.js +0 -76
- package/build/esm/node_modules/lodash/_deburrLetter.js.map +0 -1
- package/build/esm/node_modules/lodash/_freeGlobal.js +0 -10
- package/build/esm/node_modules/lodash/_freeGlobal.js.map +0 -1
- package/build/esm/node_modules/lodash/_getRawTag.js +0 -51
- package/build/esm/node_modules/lodash/_getRawTag.js.map +0 -1
- package/build/esm/node_modules/lodash/_hasUnicodeWord.js +0 -19
- package/build/esm/node_modules/lodash/_hasUnicodeWord.js.map +0 -1
- package/build/esm/node_modules/lodash/_objectToString.js +0 -26
- package/build/esm/node_modules/lodash/_objectToString.js.map +0 -1
- package/build/esm/node_modules/lodash/_root.js +0 -14
- package/build/esm/node_modules/lodash/_root.js.map +0 -1
- package/build/esm/node_modules/lodash/_unicodeWords.js +0 -73
- package/build/esm/node_modules/lodash/_unicodeWords.js.map +0 -1
- package/build/esm/node_modules/lodash/deburr.js +0 -51
- package/build/esm/node_modules/lodash/deburr.js.map +0 -1
- package/build/esm/node_modules/lodash/isArray.js +0 -30
- package/build/esm/node_modules/lodash/isArray.js.map +0 -1
- package/build/esm/node_modules/lodash/isObjectLike.js +0 -33
- package/build/esm/node_modules/lodash/isObjectLike.js.map +0 -1
- package/build/esm/node_modules/lodash/isSymbol.js +0 -35
- package/build/esm/node_modules/lodash/isSymbol.js.map +0 -1
- package/build/esm/node_modules/lodash/kebabCase.js +0 -33
- package/build/esm/node_modules/lodash/kebabCase.js.map +0 -1
- package/build/esm/node_modules/lodash/toString.js +0 -33
- package/build/esm/node_modules/lodash/toString.js.map +0 -1
- package/build/esm/node_modules/lodash/words.js +0 -43
- package/build/esm/node_modules/lodash/words.js.map +0 -1
- package/build/index.js.map +0 -1
package/build/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../src/components/TableRow/TableRowStyles.ts","../src/components/TableRow/TableRow.tsx","../src/util/tableConstants.ts","../src/util/coercedValueIncludesString.ts","../src/util/getTableMinHeight.ts","../src/components/TableCell/TableCellStyles.ts","../src/components/TableCell/TableCell.tsx","../src/components/TableBody/TableBody.tsx","../src/components/Table/TableStyles.ts","../src/components/TableHeader/TableHeader.tsx","../src/components/TableFooter/TableFooter.tsx","../src/components/FilterPanel/Panel/PanelStyles.ts","../src/components/FilterPanel/FilterControl/SelectFilter/SelectFilterStyles.ts","../src/components/TableContext/index.tsx","../src/components/FilterPanel/FilterPanelContext/FilterPanelContext.tsx","../src/components/FilterPanel/FilterControl/SelectFilter/SelectFilter.tsx","../src/components/FilterPanel/FilterControl/ToggleFilter/ToggleFilter.tsx","../src/components/FilterPanel/FilterControl/FilterControl.tsx","../src/hooks/useColumnFilters.ts","../src/hooks/useStagedColumnFilters.ts","../src/components/FilterPanel/Panel/Panel.tsx","../src/components/FilterPanel/Trigger/TriggerStyles.ts","../src/components/FilterPanel/Trigger/Trigger.tsx","../src/components/FilterPanel/FilterPanel.tsx","../src/components/GlobalFilter/GlobalFilterStyles.ts","../src/components/GlobalFilter/GlobalFilter.tsx","../src/components/TableHeaderRow/TableHeaderRow.tsx","../src/components/TableHeaderCell/TableHeaderCellStyles.ts","../../../node_modules/lodash/_arrayReduce.js","../../../node_modules/lodash/_basePropertyOf.js","../../../node_modules/lodash/_deburrLetter.js","../../../node_modules/lodash/_freeGlobal.js","../../../node_modules/lodash/_root.js","../../../node_modules/lodash/_Symbol.js","../../../node_modules/lodash/_arrayMap.js","../../../node_modules/lodash/isArray.js","../../../node_modules/lodash/_getRawTag.js","../../../node_modules/lodash/_objectToString.js","../../../node_modules/lodash/_baseGetTag.js","../../../node_modules/lodash/isObjectLike.js","../../../node_modules/lodash/isSymbol.js","../../../node_modules/lodash/_baseToString.js","../../../node_modules/lodash/toString.js","../../../node_modules/lodash/deburr.js","../../../node_modules/lodash/_asciiWords.js","../../../node_modules/lodash/_hasUnicodeWord.js","../../../node_modules/lodash/_unicodeWords.js","../../../node_modules/lodash/words.js","../../../node_modules/lodash/_createCompounder.js","../../../node_modules/lodash/kebabCase.js","../src/components/TableHeaderCell/TableHeaderCell.tsx","../src/components/ColumnFilterChip/ColumnFilterChipStyles.ts","../src/components/ColumnFilterChip/ColumnFilterChip.tsx","../src/components/TableControlsContainer/TableControlsContainer.tsx","../src/components/ColumnFilterResetButton/ColumnFilterResetButton.tsx","../src/components/Table/Table.tsx","../src/util/validateRowAction.ts","../src/components/RowActions/RowActions.tsx"],"sourcesContent":["import { makeStyles } from '@material-ui/core'\n\nexport const useTableRowStyles = makeStyles((theme) => ({\n root: () => ({\n '&:nth-child(even)': {\n backgroundColor: theme.palette.grey[100],\n },\n }),\n}))\n","import React, { HTMLAttributes, PropsWithChildren } from 'react'\nimport { useTableRowStyles } from './TableRowStyles'\n\ntype TableRowProps = PropsWithChildren<HTMLAttributes<HTMLTableRowElement>>\n\nexport const TableRow = (props: TableRowProps) => {\n const { children, ...restProps } = props\n const { root } = useTableRowStyles(props)\n return (\n <tr data-table-element=\"body-row\" className={root} {...restProps}>\n {children}\n </tr>\n )\n}\n","export const tableConstants = {\n tableTypography: 'body1',\n cellPaddingFactor: 2,\n headerBorder: 2,\n}\n","import { FilterFn } from '@tanstack/react-table'\n\nexport const coercedValueIncludesString: FilterFn<any> = (row, columnId, value) => {\n if (value === '') return true\n const cellValue = row.getValue(columnId)\n return String(cellValue).toLowerCase().includes(value.toLowerCase())\n}\n","import { RefObject } from 'react'\n\nexport const getTableMinHeight = (rootRef: RefObject<HTMLDivElement>, pageSize: number) => {\n const defaultBodyRowHeight = 56\n const defaultHeaderRowHeight = 57\n const defaultFooterHeight = 88\n let minHeight = defaultBodyRowHeight * pageSize + defaultHeaderRowHeight + defaultFooterHeight\n if (rootRef?.current) {\n const rootTableNode = rootRef.current\n const headerRowNode = rootTableNode.querySelector(`[data-table-element=\"header-row\"]`)\n const bodyRowNode = rootTableNode.querySelector(`[data-table-element=\"body-row\"]`)\n if (headerRowNode && bodyRowNode) {\n const headerRowHeight = headerRowNode.getBoundingClientRect().height\n const bodyRowHeight = bodyRowNode.getBoundingClientRect().height\n minHeight = headerRowHeight + bodyRowHeight * pageSize + defaultFooterHeight\n }\n }\n return minHeight\n}\n","import { makeStyles } from '@material-ui/core'\nimport { tableConstants } from '../../util'\n\nexport const useTableCellStyles = makeStyles((theme) => ({\n root: () => ({\n padding: theme.spacing(tableConstants.cellPaddingFactor),\n }),\n}))\n","import React, { HTMLAttributes, PropsWithChildren } from 'react'\n\nimport { useTableCellStyles } from './TableCellStyles'\n\ntype TableCellProps = PropsWithChildren<HTMLAttributes<HTMLTableCellElement>>\n\nexport const TableCell = (props: TableCellProps) => {\n const { children, ...restProps } = props\n const { root } = useTableCellStyles(props)\n return (\n <td className={root} {...restProps}>\n {children}\n </td>\n )\n}\n","import React, { HTMLAttributes, PropsWithChildren } from 'react'\n\ntype TableBodyProps = PropsWithChildren<HTMLAttributes<HTMLTableSectionElement>>\n\nexport const TableBody = (props: TableBodyProps) => {\n const { children, ...restProps } = props\n return <tbody {...restProps}>{children}</tbody>\n}\n","import { makeStyles, Theme } from '@material-ui/core'\nimport { tableConstants } from '../../util'\n\nimport { TableProps } from './TableProps'\n\nexport const useStyles = makeStyles<Theme, TableProps<any>>(({ typography }) => ({\n root: ({ fullWidth }) => ({\n display: fullWidth ? 'flex' : 'inline-flex',\n flexDirection: 'column',\n }),\n table: ({ fullWidth }) => ({\n borderCollapse: 'collapse',\n ...(fullWidth && { width: '100%' }),\n // @ts-expect-error - todo.\n ...typography[tableConstants.tableTypography],\n }),\n tableContainer: () => ({\n maxWidth: '100%',\n overflowX: 'auto',\n overflowY: 'hidden',\n }),\n}))\n","import React, { HTMLAttributes, PropsWithChildren } from 'react'\n\ntype TableHeadProps = PropsWithChildren<HTMLAttributes<HTMLTableSectionElement>>\n\nexport const TableHeader = (props: TableHeadProps) => {\n const { children, ...restProps } = props\n return <thead {...restProps}>{children}</thead>\n}\n","import React, { HTMLAttributes, PropsWithChildren } from 'react'\nimport { Box } from '@popmenu/common-ui'\n\ntype TableFooterProps = PropsWithChildren<HTMLAttributes<HTMLDivElement>>\n\nexport const TableFooter = (props: TableFooterProps) => {\n return (\n <Box display=\"flex\" justifyContent=\"center\" alignItems=\"end\" paddingTop={3} paddingBottom={4}>\n {props.children}\n </Box>\n )\n}\n","import { makeStyles, Theme } from '@material-ui/core'\n\nexport const useStyles = makeStyles<Theme>((theme) => ({\n buttonBox: {\n '& > :last-child': {\n marginLeft: theme.spacing(2),\n },\n display: 'flex',\n justifyContent: 'flex-end',\n padding: `0px ${theme.spacing(3)}px ${theme.spacing(3)}px ${theme.spacing(3)}px`,\n },\n buttonLabel: {\n fontWeight: 400,\n },\n filterPopoverContents: {\n backgroundColor: 'white',\n borderRadius: theme.spacing(1),\n position: 'relative',\n margin: '10px',\n marginTop: theme.spacing(2),\n width: '323px',\n '&::before': {\n backgroundColor: 'white',\n borderRadius: theme.spacing(0.5),\n content: '\"\"',\n display: 'block',\n filter: 'drop-shadow(4px 4px 3px rgba(0, 0, 0, 0.14)) drop-shadow(0px 1px 5px rgba(0, 0, 0, 0.12))',\n position: 'absolute',\n width: theme.spacing(2.5),\n height: theme.spacing(2.5),\n top: -7,\n transform: 'rotate(45deg)',\n left: 'calc(90% - 12px)',\n zIndex: 0,\n },\n '&::after': {\n backgroundColor: 'white',\n content: '\"\"',\n display: 'block',\n position: 'absolute',\n top: 0,\n left: 'calc(80%)',\n width: theme.spacing(6),\n height: theme.spacing(4),\n },\n },\n menuTitle: {\n fontWeight: 400,\n fontSize: '20px',\n paddingBottom: theme.spacing(2),\n },\n selectInput: {\n margin: '8px 0',\n },\n}))\n","import { makeStyles, Theme } from '@material-ui/core'\n\nexport const useStyles = makeStyles<Theme>((theme) => ({\n icon: {\n marginRight: theme.spacing(1.5),\n marginTop: theme.spacing(0.5),\n scale: 1.5,\n },\n selectContainer: {\n padding: '8px 0',\n },\n selectRoot: {\n '&:focus': {\n backgroundColor: 'transparent',\n },\n },\n hidden: {\n display: 'none',\n },\n}))\n","import { ColumnFilter, Table } from '@tanstack/react-table'\nimport { createContext } from 'react'\n\nexport type StagedColumnFilter = {\n update: (columnId: string, value: string | Array<string>) => void\n get: (columnId: string) => string | Array<string> | undefined\n clear: () => void\n delete: (columnFilter: ColumnFilter) => void\n exist: () => boolean\n}\n\ntype TabelContextValue = {\n table: Table<any>\n stagedColumnFilters: StagedColumnFilter\n stageFilterSelections: boolean | undefined\n}\n\nexport const TableContext = createContext<TabelContextValue>({} as TabelContextValue)\n","import React, { createContext, useContext } from 'react'\n\ntype FilterPanelContextValue = {\n anchorState: [Element | null, React.Dispatch<React.SetStateAction<Element | null>>]\n}\n\nexport const FilterPanelContext = createContext<FilterPanelContextValue | null>(null)\n\nexport const useFilterPanelContext = () => {\n const context = useContext(FilterPanelContext)\n\n if (!context) {\n throw new Error('useFilterPanelContext has to be used within <FilterPanelContext.Provider>')\n }\n\n return context\n}\n","import React, { ChangeEvent, useContext, useState } from 'react'\nimport { Select, InputLabel, FormControl, Box } from '@material-ui/core'\nimport { ChevronDown } from '@popmenu/web-icons'\nimport { MenuItem, Typography } from '@popmenu/common-ui'\n\nimport { useStyles } from './SelectFilterStyles'\nimport { TableContext } from '../../../TableContext'\nimport { ColumnFilter } from '../../FilterPanelProps'\nimport { useFilterPanelContext } from '../../FilterPanelContext'\n\nexport const SelectFilter = (props: Pick<ColumnFilter, 'options' | 'columnId'> & { multiple: boolean }) => {\n const { options, columnId, multiple } = props\n const classes = useStyles()\n const { table, stagedColumnFilters, stageFilterSelections } = useContext(TableContext)\n\n const [open, setOpen] = useState(false)\n const {\n anchorState: [, setAnchorEl],\n } = useFilterPanelContext()\n const column = table.getColumn(columnId)\n const { meta } = column.columnDef as { meta?: any }\n const filterName = meta?.filter?.name\n let value = '' as unknown\n if (stageFilterSelections && !!stagedColumnFilters.get(columnId)) {\n value = stagedColumnFilters.get(columnId) as unknown\n } else {\n value = column.getFilterValue() as unknown\n }\n\n const fallbackValue = multiple ? [] : ''\n const filteredOptions = options.map((option) => {\n if (Array.isArray(value)) {\n if (value.includes(option.value)) {\n return { ...option, hide: !stageFilterSelections }\n }\n }\n if (typeof value === 'string' || typeof value === 'number') {\n if (value === option.value) {\n return { ...option, hide: !stageFilterSelections }\n }\n }\n return { ...option, hide: false }\n })\n const filteredOptionsCount = filteredOptions.filter((option) => !option?.hide).length\n let renderedValue = ''\n if (!stageFilterSelections && value && filteredOptions && filteredOptionsCount > 0) {\n if (typeof value === 'string' || typeof value === 'number') {\n renderedValue = filteredOptions.find((option) => option.value === value)?.label ?? filterName\n } else if (Array.isArray(value) && value.length > 0) {\n renderedValue = `${value.length} selected`\n } else {\n renderedValue = filterName\n }\n }\n const handleChange = (event: ChangeEvent<HTMLInputElement>) => {\n event.stopPropagation()\n if (stageFilterSelections) {\n stagedColumnFilters.update(columnId, event.target.value)\n } else {\n column.setFilterValue(event.target.value)\n setAnchorEl(null)\n }\n }\n const handleItemClick = () => {\n if (multiple) {\n if (!stageFilterSelections && filteredOptionsCount === 1) {\n setOpen(false)\n } else {\n setOpen(false)\n }\n }\n }\n\n return (\n <Box className={classes.selectContainer}>\n <FormControl variant=\"outlined\" fullWidth>\n <InputLabel id={`select-filter-label-${filterName}`}>{filterName || 'filter'}</InputLabel>\n <Select\n variant=\"outlined\"\n open={open}\n onOpen={() => setOpen(true)}\n onClose={() => setOpen(false)}\n value={value || fallbackValue}\n displayEmpty\n multiple={multiple}\n renderValue={stageFilterSelections ? undefined : () => <Typography>{renderedValue}</Typography>}\n label={filterName || 'filter'}\n labelId={`select-filter-label-${filterName}`}\n disabled={!filteredOptionsCount}\n IconComponent={ChevronDown}\n onChange={handleChange}\n fullWidth\n classes={{\n root: classes.selectRoot,\n icon: classes.icon,\n }}\n MenuProps={{\n disablePortal: true,\n anchorOrigin: {\n vertical: 'bottom',\n horizontal: 'left',\n },\n transformOrigin: {\n vertical: 'top',\n horizontal: 'left',\n },\n getContentAnchorEl: null,\n }}\n >\n {filteredOptions.map((option, index) => {\n return (\n <MenuItem\n classes={{ root: option.hide ? classes.hidden : undefined }}\n key={`option-${value}-${index}`}\n value={option.value}\n onClick={handleItemClick}\n >\n {option.label}\n </MenuItem>\n )\n })}\n </Select>\n </FormControl>\n </Box>\n )\n}\n","import React, { useContext } from 'react'\nimport { FormControlLabel, Switch } from '@material-ui/core'\nimport { TableContext } from '../../../TableContext'\n\nexport const ToggleFilter = (props: { columnId: string }) => {\n const table = useContext(TableContext).table\n const { columnId } = props\n const column = table.getColumn(columnId)\n const meta = column.columnDef.meta as { filter: { name: string } }\n const filterName = meta.filter.name\n const value = column.getFilterValue() as boolean\n const handleChange = (event: React.SyntheticEvent<HTMLInputElement>, checked: boolean) => {\n event.stopPropagation()\n column.setFilterValue(checked)\n }\n return <FormControlLabel control={<Switch checked={value} onChange={handleChange} />} label={filterName} />\n}\n","import React, { createElement } from 'react'\n\nimport { TextField } from '@material-ui/core'\nimport { ColumnFilter } from '../FilterPanelProps'\nimport { SelectFilter } from './SelectFilter'\nimport { ToggleFilter } from './ToggleFilter'\n\nexport const FilterControl = (props: ColumnFilter) => {\n const { input, ...columnFilter } = props\n const inputDictionary = {\n text: TextField,\n select: SelectFilter,\n 'multi-select': SelectFilter,\n toggle: ToggleFilter,\n }\n const propsDictionary = {\n select: { multiple: false },\n 'multi-select': { multiple: true },\n }\n // @ts-expect-error - todo.\n return <div>{createElement(inputDictionary[input], { ...columnFilter, ...propsDictionary[input] })}</div>\n}\n","import { Column, ColumnFilter, Table, TableState } from '@tanstack/react-table'\n\nexport const useColumnFilters = (table: Table<unknown>) => {\n const selectedColumnFilters = getSelectedColumnFilters(table.getState())\n const columnFilters = getColumnFilters(table.getAllFlatColumns())\n const hasColumnFilters = columnFilters.length > 0\n const deselectColumnFilter = makeDeselectColumnFilter(table)\n const formatSelectedFilterText = makeFormatSelectedFilterText(table)\n const resetColumnFilters = table.resetColumnFilters\n return {\n selectedColumnFilters,\n columnFilters,\n hasColumnFilters,\n deselectColumnFilter,\n formatSelectedFilterText,\n resetColumnFilters,\n }\n}\n\nfunction getSelectedColumnFilters(state: TableState) {\n const { columnFilters } = state\n const selectedColumnFilters = columnFilters.reduce((acc: Array<ColumnFilter>, columnFilter: ColumnFilter) => {\n const { id, value } = columnFilter\n const selections = []\n if (value) {\n if (Array.isArray(value)) {\n value.forEach((innerValue) => {\n selections.push({ id, value: innerValue })\n })\n } else if (typeof value === 'string' || typeof value === 'number') {\n selections.push({ id, value })\n }\n }\n return [...acc, ...selections]\n }, [])\n return selectedColumnFilters\n}\n\nfunction getColumnFilters(columns: Array<Column<unknown>>) {\n return columns\n .map((column) => {\n const { meta } = column.columnDef as { meta: any }\n if (meta?.filter) {\n return { columnId: column.id, ...meta.filter }\n }\n })\n .filter(Boolean)\n}\n\nfunction makeDeselectColumnFilter(table: Table<unknown>) {\n return function (columnFilter: ColumnFilter) {\n const column = table.getColumn(columnFilter.id)\n column.setFilterValue((prev: unknown) => {\n if (Array.isArray(prev)) {\n return prev.filter((value) => value !== columnFilter.value)\n } else if (typeof prev === 'string' || typeof prev === 'number') {\n return null\n }\n return prev\n })\n }\n}\n\nfunction makeFormatSelectedFilterText(table: Table<unknown>) {\n return function (columnFilter: ColumnFilter) {\n const column = table.getColumn(columnFilter.id)\n const { meta } = column.columnDef as {\n meta?: { filter: { name: string; options: Array<{ label: string; value: any }> } }\n }\n const name = meta?.filter.name || ''\n const optionMatch = meta?.filter.options.find((option) => option.value === columnFilter.value)\n const label = optionMatch?.label\n return [name, label] as [string, string]\n }\n}\n","import { ColumnFilter } from '@tanstack/react-table'\nimport { useState } from 'react'\n\nexport const useStagedColumnFilters = (selectedColumnFilters: ColumnFilter[]) => {\n const [columnInputValues, setColumnInputValues] = useState<Map<string, string | Array<string>>>(() =>\n selectedColumnFilters.reduce((acc, { id, value }) => {\n if (acc.has(id)) {\n const existingValue = acc.get(id)\n // If the existing value is a string, convert it to an array and add the new value\n if (typeof existingValue === 'string') {\n acc.set(id, [existingValue, value])\n } else {\n existingValue.push(value)\n }\n } else {\n acc.set(id, value)\n }\n return acc\n }, new Map()),\n )\n const filterState = {\n update: (columnId: string, value: string | Array<string>) =>\n setColumnInputValues(columnInputValues.set(columnId, value)),\n get: (columnId: string) => columnInputValues.get(columnId),\n clear: () => {\n columnInputValues.clear()\n setColumnInputValues(columnInputValues)\n },\n delete: (columnFilter: ColumnFilter) => {\n const values = columnInputValues.get(columnFilter.id)\n if (values && Array.isArray(values)) {\n const valueIndex = values.indexOf(columnFilter.value as string)\n values.splice(valueIndex, 1)\n if (values.length > 0) {\n columnInputValues.set(columnFilter.id, values)\n } else {\n columnInputValues.delete(columnFilter.id)\n }\n } else {\n columnInputValues.delete(columnFilter.id)\n }\n setColumnInputValues(columnInputValues)\n },\n exist: () => columnInputValues.size > 0,\n }\n\n return filterState\n}\n","import React, { MouseEvent, useContext, useRef } from 'react'\nimport { Paper, Box, Typography, Popover } from '@popmenu/common-ui'\n\nimport { useStyles } from './PanelStyles'\nimport { FilterControl } from '../FilterControl'\nimport { TableContext } from '../../TableContext'\nimport { useColumnFilters } from '../../../hooks'\nimport { Button } from '@popmenu/admin-ui'\n\ntype PanelProps = {\n anchorEl: null | Element\n onClose: () => void\n}\n\nexport const Panel = (props: PanelProps) => {\n const { anchorEl, onClose } = props\n const classes = useStyles()\n const { table, stagedColumnFilters, stageFilterSelections } = useContext(TableContext)\n const paperRef = useRef<HTMLDivElement>(null)\n const { columnFilters, resetColumnFilters } = useColumnFilters(table)\n\n const handleClick = (e: MouseEvent) => {\n const rect = paperRef.current?.getBoundingClientRect()\n if (rect) {\n const buffer = 10\n const mouseX = e.nativeEvent.x\n const mouseY = e.nativeEvent.y\n const xHit = rect.x - buffer < mouseX && mouseX < rect.x + rect.width + buffer\n const yHit = rect.y - buffer < mouseY && mouseY < rect.y + rect.height + buffer\n if (!xHit || !yHit) {\n onClose()\n }\n }\n }\n\n const handleApplyClick = () => {\n if (stagedColumnFilters.exist()) {\n columnFilters.forEach((columnFilter) => {\n const columnInputValue = stagedColumnFilters.get(columnFilter.columnId)\n if (columnInputValue) {\n const column = table.getColumn(columnFilter.columnId)\n column.setFilterValue(columnInputValue)\n }\n })\n } else {\n resetColumnFilters()\n }\n onClose()\n }\n\n const handleCancelClick = () => {\n onClose()\n }\n const open = Boolean(anchorEl)\n return (\n <Popover\n onClick={handleClick}\n anchorEl={anchorEl}\n anchorOrigin={{\n vertical: 'bottom',\n horizontal: 'right',\n }}\n className={classes.filterPopover}\n onClose={onClose}\n open={open}\n PaperProps={{\n style: {\n backgroundColor: 'transparent',\n boxShadow: 'none',\n borderRadius: 0,\n },\n }}\n transformOrigin={{\n vertical: 'top',\n horizontal: 'right',\n }}\n >\n <Paper className={classes.filterPopoverContents} elevation={2}>\n <Box {...{ ref: paperRef }} padding={3}>\n <Typography className={classes.menuTitle}>Filter By</Typography>\n {columnFilters.map((columnFilter, i) => (\n <FilterControl {...columnFilter} key={i} />\n ))}\n </Box>\n {stageFilterSelections && (\n <Box className={classes.buttonBox}>\n <Button variant=\"secondary\" onClick={handleCancelClick}>\n Cancel\n </Button>\n <Button onClick={handleApplyClick}>Apply</Button>\n </Box>\n )}\n </Paper>\n </Popover>\n )\n}\n","import { makeStyles } from '@material-ui/core'\n\nexport const useStyles = makeStyles({\n root: {\n justifySelf: 'end',\n gridArea: 'columnFilter',\n },\n})\n","import React, { SyntheticEvent } from 'react'\nimport { Icon } from '@popmenu/common-ui'\nimport { Button } from '@popmenu/admin-ui'\nimport { Filter } from '@popmenu/web-icons'\nimport { useStyles } from './TriggerStyles'\n\ntype FitlerPanelTriggerProps = {\n onClick: (event: SyntheticEvent) => void\n label?: string\n}\n\nexport const Trigger = (props: FitlerPanelTriggerProps) => {\n const { label = 'Filter', onClick } = props\n const classes = useStyles()\n return (\n <Button\n className={classes.root}\n onClick={onClick}\n startIcon={<Icon icon={Filter} />}\n textTransform=\"none\"\n variant=\"ghost\"\n >\n {label}\n </Button>\n )\n}\n","import React, { useContext, useState } from 'react'\n\nimport { Panel } from './Panel'\nimport { Trigger } from './Trigger'\nimport { FilterPanelContext } from './FilterPanelContext'\nimport { TableContext } from '../TableContext'\n\nexport const FilterPanel = () => {\n const [anchorEl, setAnchorEl] = useState<Element | null>(null)\n const { stageFilterSelections, stagedColumnFilters } = useContext(TableContext)\n\n const handleClick = (event: React.SyntheticEvent) => {\n setAnchorEl(event.currentTarget)\n }\n\n const handleClose = () => {\n if (stageFilterSelections) stagedColumnFilters.clear()\n setAnchorEl(null)\n }\n return (\n <FilterPanelContext.Provider value={{ anchorState: [anchorEl, setAnchorEl] }}>\n <Trigger onClick={handleClick} />\n <Panel onClose={handleClose} anchorEl={anchorEl} />\n </FilterPanelContext.Provider>\n )\n}\n","import { makeStyles } from '@material-ui/core'\n\nexport const useStyles = makeStyles({\n root: {\n justifySelf: 'start',\n maxWidth: 300,\n minWidth: 200,\n width: '100%',\n gridArea: 'globalFilter',\n },\n})\n","import React, { ChangeEventHandler } from 'react'\nimport { InputAdornment, TextField } from '@material-ui/core'\n\nimport { Icon } from '@popmenu/common-ui'\nimport { Search } from '@popmenu/web-icons'\nimport { useStyles } from './GlobalFilterStyles'\nimport { GlobalFilterProps } from './GlobalFilterProps'\n\nexport const GlobalFilter = (props: GlobalFilterProps) => {\n const { value, setValue, ...restProps } = props\n const classes = useStyles()\n const handleChange: ChangeEventHandler<HTMLInputElement> = (e) => {\n setValue(e.target.value)\n }\n return (\n <TextField\n className={classes.root}\n variant=\"outlined\"\n value={value}\n onChange={handleChange}\n InputProps={{\n startAdornment: (\n <InputAdornment position=\"start\">\n <Icon icon={Search} />\n </InputAdornment>\n ),\n }}\n {...restProps}\n />\n )\n}\n","import React, { PropsWithChildren, HTMLAttributes } from 'react'\n\ntype TableHaderRowProps = PropsWithChildren<HTMLAttributes<HTMLTableRowElement>>\n\nexport const TableHeaderRow = (props: TableHaderRowProps) => {\n const { children, ...restProps } = props\n return (\n <tr data-table-element={'header-row'} {...restProps}>\n {children}\n </tr>\n )\n}\n","import { makeStyles, Theme } from '@material-ui/core'\nimport { TableHeaderCellProps } from './TableHeaderCellProps'\n\n// const getWidth = (props: TableHeaderCellProps) => {\n// const {\n// column: { isActionColumn },\n// tableProps: { fullWidth },\n// } = props\n\n// let width\n// if (fullWidth && isActionColumn) {\n// width = '0.0000000001%'\n// }\n// if (fullWidth && !isActionColumn) {\n// width = '1%'\n// }\n// if (!fullWidth && isActionColumn) {\n// width = 72\n// }\n// if (!fullWidth && !isActionColumn) {\n// width = undefined\n// }\n// return width\n// }\n\nexport const useStyles = makeStyles<Theme, TableHeaderCellProps & { sortable: boolean }>((theme) => ({\n root: {\n borderBottomStyle: 'solid',\n borderBottomWidth: 2,\n borderBottomColor: theme.palette.grey[100],\n padding: theme.spacing(2),\n textAlign: 'left',\n fontWeight: 500,\n },\n box: {\n cursor: ({ sortable }) => (sortable ? 'pointer' : 'default'),\n },\n}))\n","/**\n * A specialized version of `_.reduce` for arrays without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @param {*} [accumulator] The initial value.\n * @param {boolean} [initAccum] Specify using the first element of `array` as\n * the initial value.\n * @returns {*} Returns the accumulated value.\n */\nfunction arrayReduce(array, iteratee, accumulator, initAccum) {\n var index = -1,\n length = array == null ? 0 : array.length;\n\n if (initAccum && length) {\n accumulator = array[++index];\n }\n while (++index < length) {\n accumulator = iteratee(accumulator, array[index], index, array);\n }\n return accumulator;\n}\n\nmodule.exports = arrayReduce;\n","/**\n * The base implementation of `_.propertyOf` without support for deep paths.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Function} Returns the new accessor function.\n */\nfunction basePropertyOf(object) {\n return function(key) {\n return object == null ? undefined : object[key];\n };\n}\n\nmodule.exports = basePropertyOf;\n","var basePropertyOf = require('./_basePropertyOf');\n\n/** Used to map Latin Unicode letters to basic Latin letters. */\nvar deburredLetters = {\n // Latin-1 Supplement block.\n '\\xc0': 'A', '\\xc1': 'A', '\\xc2': 'A', '\\xc3': 'A', '\\xc4': 'A', '\\xc5': 'A',\n '\\xe0': 'a', '\\xe1': 'a', '\\xe2': 'a', '\\xe3': 'a', '\\xe4': 'a', '\\xe5': 'a',\n '\\xc7': 'C', '\\xe7': 'c',\n '\\xd0': 'D', '\\xf0': 'd',\n '\\xc8': 'E', '\\xc9': 'E', '\\xca': 'E', '\\xcb': 'E',\n '\\xe8': 'e', '\\xe9': 'e', '\\xea': 'e', '\\xeb': 'e',\n '\\xcc': 'I', '\\xcd': 'I', '\\xce': 'I', '\\xcf': 'I',\n '\\xec': 'i', '\\xed': 'i', '\\xee': 'i', '\\xef': 'i',\n '\\xd1': 'N', '\\xf1': 'n',\n '\\xd2': 'O', '\\xd3': 'O', '\\xd4': 'O', '\\xd5': 'O', '\\xd6': 'O', '\\xd8': 'O',\n '\\xf2': 'o', '\\xf3': 'o', '\\xf4': 'o', '\\xf5': 'o', '\\xf6': 'o', '\\xf8': 'o',\n '\\xd9': 'U', '\\xda': 'U', '\\xdb': 'U', '\\xdc': 'U',\n '\\xf9': 'u', '\\xfa': 'u', '\\xfb': 'u', '\\xfc': 'u',\n '\\xdd': 'Y', '\\xfd': 'y', '\\xff': 'y',\n '\\xc6': 'Ae', '\\xe6': 'ae',\n '\\xde': 'Th', '\\xfe': 'th',\n '\\xdf': 'ss',\n // Latin Extended-A block.\n '\\u0100': 'A', '\\u0102': 'A', '\\u0104': 'A',\n '\\u0101': 'a', '\\u0103': 'a', '\\u0105': 'a',\n '\\u0106': 'C', '\\u0108': 'C', '\\u010a': 'C', '\\u010c': 'C',\n '\\u0107': 'c', '\\u0109': 'c', '\\u010b': 'c', '\\u010d': 'c',\n '\\u010e': 'D', '\\u0110': 'D', '\\u010f': 'd', '\\u0111': 'd',\n '\\u0112': 'E', '\\u0114': 'E', '\\u0116': 'E', '\\u0118': 'E', '\\u011a': 'E',\n '\\u0113': 'e', '\\u0115': 'e', '\\u0117': 'e', '\\u0119': 'e', '\\u011b': 'e',\n '\\u011c': 'G', '\\u011e': 'G', '\\u0120': 'G', '\\u0122': 'G',\n '\\u011d': 'g', '\\u011f': 'g', '\\u0121': 'g', '\\u0123': 'g',\n '\\u0124': 'H', '\\u0126': 'H', '\\u0125': 'h', '\\u0127': 'h',\n '\\u0128': 'I', '\\u012a': 'I', '\\u012c': 'I', '\\u012e': 'I', '\\u0130': 'I',\n '\\u0129': 'i', '\\u012b': 'i', '\\u012d': 'i', '\\u012f': 'i', '\\u0131': 'i',\n '\\u0134': 'J', '\\u0135': 'j',\n '\\u0136': 'K', '\\u0137': 'k', '\\u0138': 'k',\n '\\u0139': 'L', '\\u013b': 'L', '\\u013d': 'L', '\\u013f': 'L', '\\u0141': 'L',\n '\\u013a': 'l', '\\u013c': 'l', '\\u013e': 'l', '\\u0140': 'l', '\\u0142': 'l',\n '\\u0143': 'N', '\\u0145': 'N', '\\u0147': 'N', '\\u014a': 'N',\n '\\u0144': 'n', '\\u0146': 'n', '\\u0148': 'n', '\\u014b': 'n',\n '\\u014c': 'O', '\\u014e': 'O', '\\u0150': 'O',\n '\\u014d': 'o', '\\u014f': 'o', '\\u0151': 'o',\n '\\u0154': 'R', '\\u0156': 'R', '\\u0158': 'R',\n '\\u0155': 'r', '\\u0157': 'r', '\\u0159': 'r',\n '\\u015a': 'S', '\\u015c': 'S', '\\u015e': 'S', '\\u0160': 'S',\n '\\u015b': 's', '\\u015d': 's', '\\u015f': 's', '\\u0161': 's',\n '\\u0162': 'T', '\\u0164': 'T', '\\u0166': 'T',\n '\\u0163': 't', '\\u0165': 't', '\\u0167': 't',\n '\\u0168': 'U', '\\u016a': 'U', '\\u016c': 'U', '\\u016e': 'U', '\\u0170': 'U', '\\u0172': 'U',\n '\\u0169': 'u', '\\u016b': 'u', '\\u016d': 'u', '\\u016f': 'u', '\\u0171': 'u', '\\u0173': 'u',\n '\\u0174': 'W', '\\u0175': 'w',\n '\\u0176': 'Y', '\\u0177': 'y', '\\u0178': 'Y',\n '\\u0179': 'Z', '\\u017b': 'Z', '\\u017d': 'Z',\n '\\u017a': 'z', '\\u017c': 'z', '\\u017e': 'z',\n '\\u0132': 'IJ', '\\u0133': 'ij',\n '\\u0152': 'Oe', '\\u0153': 'oe',\n '\\u0149': \"'n\", '\\u017f': 's'\n};\n\n/**\n * Used by `_.deburr` to convert Latin-1 Supplement and Latin Extended-A\n * letters to basic Latin letters.\n *\n * @private\n * @param {string} letter The matched letter to deburr.\n * @returns {string} Returns the deburred letter.\n */\nvar deburrLetter = basePropertyOf(deburredLetters);\n\nmodule.exports = deburrLetter;\n","/** Detect free variable `global` from Node.js. */\nvar freeGlobal = typeof global == 'object' && global && global.Object === Object && global;\n\nmodule.exports = freeGlobal;\n","var freeGlobal = require('./_freeGlobal');\n\n/** Detect free variable `self`. */\nvar freeSelf = typeof self == 'object' && self && self.Object === Object && self;\n\n/** Used as a reference to the global object. */\nvar root = freeGlobal || freeSelf || Function('return this')();\n\nmodule.exports = root;\n","var root = require('./_root');\n\n/** Built-in value references. */\nvar Symbol = root.Symbol;\n\nmodule.exports = Symbol;\n","/**\n * A specialized version of `_.map` for arrays without support for iteratee\n * shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array} Returns the new mapped array.\n */\nfunction arrayMap(array, iteratee) {\n var index = -1,\n length = array == null ? 0 : array.length,\n result = Array(length);\n\n while (++index < length) {\n result[index] = iteratee(array[index], index, array);\n }\n return result;\n}\n\nmodule.exports = arrayMap;\n","/**\n * Checks if `value` is classified as an `Array` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an array, else `false`.\n * @example\n *\n * _.isArray([1, 2, 3]);\n * // => true\n *\n * _.isArray(document.body.children);\n * // => false\n *\n * _.isArray('abc');\n * // => false\n *\n * _.isArray(_.noop);\n * // => false\n */\nvar isArray = Array.isArray;\n\nmodule.exports = isArray;\n","var Symbol = require('./_Symbol');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar nativeObjectToString = objectProto.toString;\n\n/** Built-in value references. */\nvar symToStringTag = Symbol ? Symbol.toStringTag : undefined;\n\n/**\n * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the raw `toStringTag`.\n */\nfunction getRawTag(value) {\n var isOwn = hasOwnProperty.call(value, symToStringTag),\n tag = value[symToStringTag];\n\n try {\n value[symToStringTag] = undefined;\n var unmasked = true;\n } catch (e) {}\n\n var result = nativeObjectToString.call(value);\n if (unmasked) {\n if (isOwn) {\n value[symToStringTag] = tag;\n } else {\n delete value[symToStringTag];\n }\n }\n return result;\n}\n\nmodule.exports = getRawTag;\n","/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar nativeObjectToString = objectProto.toString;\n\n/**\n * Converts `value` to a string using `Object.prototype.toString`.\n *\n * @private\n * @param {*} value The value to convert.\n * @returns {string} Returns the converted string.\n */\nfunction objectToString(value) {\n return nativeObjectToString.call(value);\n}\n\nmodule.exports = objectToString;\n","var Symbol = require('./_Symbol'),\n getRawTag = require('./_getRawTag'),\n objectToString = require('./_objectToString');\n\n/** `Object#toString` result references. */\nvar nullTag = '[object Null]',\n undefinedTag = '[object Undefined]';\n\n/** Built-in value references. */\nvar symToStringTag = Symbol ? Symbol.toStringTag : undefined;\n\n/**\n * The base implementation of `getTag` without fallbacks for buggy environments.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the `toStringTag`.\n */\nfunction baseGetTag(value) {\n if (value == null) {\n return value === undefined ? undefinedTag : nullTag;\n }\n return (symToStringTag && symToStringTag in Object(value))\n ? getRawTag(value)\n : objectToString(value);\n}\n\nmodule.exports = baseGetTag;\n","/**\n * Checks if `value` is object-like. A value is object-like if it's not `null`\n * and has a `typeof` result of \"object\".\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is object-like, else `false`.\n * @example\n *\n * _.isObjectLike({});\n * // => true\n *\n * _.isObjectLike([1, 2, 3]);\n * // => true\n *\n * _.isObjectLike(_.noop);\n * // => false\n *\n * _.isObjectLike(null);\n * // => false\n */\nfunction isObjectLike(value) {\n return value != null && typeof value == 'object';\n}\n\nmodule.exports = isObjectLike;\n","var baseGetTag = require('./_baseGetTag'),\n isObjectLike = require('./isObjectLike');\n\n/** `Object#toString` result references. */\nvar symbolTag = '[object Symbol]';\n\n/**\n * Checks if `value` is classified as a `Symbol` primitive or object.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a symbol, else `false`.\n * @example\n *\n * _.isSymbol(Symbol.iterator);\n * // => true\n *\n * _.isSymbol('abc');\n * // => false\n */\nfunction isSymbol(value) {\n return typeof value == 'symbol' ||\n (isObjectLike(value) && baseGetTag(value) == symbolTag);\n}\n\nmodule.exports = isSymbol;\n","var Symbol = require('./_Symbol'),\n arrayMap = require('./_arrayMap'),\n isArray = require('./isArray'),\n isSymbol = require('./isSymbol');\n\n/** Used as references for various `Number` constants. */\nvar INFINITY = 1 / 0;\n\n/** Used to convert symbols to primitives and strings. */\nvar symbolProto = Symbol ? Symbol.prototype : undefined,\n symbolToString = symbolProto ? symbolProto.toString : undefined;\n\n/**\n * The base implementation of `_.toString` which doesn't convert nullish\n * values to empty strings.\n *\n * @private\n * @param {*} value The value to process.\n * @returns {string} Returns the string.\n */\nfunction baseToString(value) {\n // Exit early for strings to avoid a performance hit in some environments.\n if (typeof value == 'string') {\n return value;\n }\n if (isArray(value)) {\n // Recursively convert values (susceptible to call stack limits).\n return arrayMap(value, baseToString) + '';\n }\n if (isSymbol(value)) {\n return symbolToString ? symbolToString.call(value) : '';\n }\n var result = (value + '');\n return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result;\n}\n\nmodule.exports = baseToString;\n","var baseToString = require('./_baseToString');\n\n/**\n * Converts `value` to a string. An empty string is returned for `null`\n * and `undefined` values. The sign of `-0` is preserved.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {string} Returns the converted string.\n * @example\n *\n * _.toString(null);\n * // => ''\n *\n * _.toString(-0);\n * // => '-0'\n *\n * _.toString([1, 2, 3]);\n * // => '1,2,3'\n */\nfunction toString(value) {\n return value == null ? '' : baseToString(value);\n}\n\nmodule.exports = toString;\n","var deburrLetter = require('./_deburrLetter'),\n toString = require('./toString');\n\n/** Used to match Latin Unicode letters (excluding mathematical operators). */\nvar reLatin = /[\\xc0-\\xd6\\xd8-\\xf6\\xf8-\\xff\\u0100-\\u017f]/g;\n\n/** Used to compose unicode character classes. */\nvar rsComboMarksRange = '\\\\u0300-\\\\u036f',\n reComboHalfMarksRange = '\\\\ufe20-\\\\ufe2f',\n rsComboSymbolsRange = '\\\\u20d0-\\\\u20ff',\n rsComboRange = rsComboMarksRange + reComboHalfMarksRange + rsComboSymbolsRange;\n\n/** Used to compose unicode capture groups. */\nvar rsCombo = '[' + rsComboRange + ']';\n\n/**\n * Used to match [combining diacritical marks](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks) and\n * [combining diacritical marks for symbols](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks_for_Symbols).\n */\nvar reComboMark = RegExp(rsCombo, 'g');\n\n/**\n * Deburrs `string` by converting\n * [Latin-1 Supplement](https://en.wikipedia.org/wiki/Latin-1_Supplement_(Unicode_block)#Character_table)\n * and [Latin Extended-A](https://en.wikipedia.org/wiki/Latin_Extended-A)\n * letters to basic Latin letters and removing\n * [combining diacritical marks](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks).\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to deburr.\n * @returns {string} Returns the deburred string.\n * @example\n *\n * _.deburr('déjà vu');\n * // => 'deja vu'\n */\nfunction deburr(string) {\n string = toString(string);\n return string && string.replace(reLatin, deburrLetter).replace(reComboMark, '');\n}\n\nmodule.exports = deburr;\n","/** Used to match words composed of alphanumeric characters. */\nvar reAsciiWord = /[^\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\x7f]+/g;\n\n/**\n * Splits an ASCII `string` into an array of its words.\n *\n * @private\n * @param {string} The string to inspect.\n * @returns {Array} Returns the words of `string`.\n */\nfunction asciiWords(string) {\n return string.match(reAsciiWord) || [];\n}\n\nmodule.exports = asciiWords;\n","/** Used to detect strings that need a more robust regexp to match words. */\nvar reHasUnicodeWord = /[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/;\n\n/**\n * Checks if `string` contains a word composed of Unicode symbols.\n *\n * @private\n * @param {string} string The string to inspect.\n * @returns {boolean} Returns `true` if a word is found, else `false`.\n */\nfunction hasUnicodeWord(string) {\n return reHasUnicodeWord.test(string);\n}\n\nmodule.exports = hasUnicodeWord;\n","/** Used to compose unicode character classes. */\nvar rsAstralRange = '\\\\ud800-\\\\udfff',\n rsComboMarksRange = '\\\\u0300-\\\\u036f',\n reComboHalfMarksRange = '\\\\ufe20-\\\\ufe2f',\n rsComboSymbolsRange = '\\\\u20d0-\\\\u20ff',\n rsComboRange = rsComboMarksRange + reComboHalfMarksRange + rsComboSymbolsRange,\n rsDingbatRange = '\\\\u2700-\\\\u27bf',\n rsLowerRange = 'a-z\\\\xdf-\\\\xf6\\\\xf8-\\\\xff',\n rsMathOpRange = '\\\\xac\\\\xb1\\\\xd7\\\\xf7',\n rsNonCharRange = '\\\\x00-\\\\x2f\\\\x3a-\\\\x40\\\\x5b-\\\\x60\\\\x7b-\\\\xbf',\n rsPunctuationRange = '\\\\u2000-\\\\u206f',\n rsSpaceRange = ' \\\\t\\\\x0b\\\\f\\\\xa0\\\\ufeff\\\\n\\\\r\\\\u2028\\\\u2029\\\\u1680\\\\u180e\\\\u2000\\\\u2001\\\\u2002\\\\u2003\\\\u2004\\\\u2005\\\\u2006\\\\u2007\\\\u2008\\\\u2009\\\\u200a\\\\u202f\\\\u205f\\\\u3000',\n rsUpperRange = 'A-Z\\\\xc0-\\\\xd6\\\\xd8-\\\\xde',\n rsVarRange = '\\\\ufe0e\\\\ufe0f',\n rsBreakRange = rsMathOpRange + rsNonCharRange + rsPunctuationRange + rsSpaceRange;\n\n/** Used to compose unicode capture groups. */\nvar rsApos = \"['\\u2019]\",\n rsBreak = '[' + rsBreakRange + ']',\n rsCombo = '[' + rsComboRange + ']',\n rsDigits = '\\\\d+',\n rsDingbat = '[' + rsDingbatRange + ']',\n rsLower = '[' + rsLowerRange + ']',\n rsMisc = '[^' + rsAstralRange + rsBreakRange + rsDigits + rsDingbatRange + rsLowerRange + rsUpperRange + ']',\n rsFitz = '\\\\ud83c[\\\\udffb-\\\\udfff]',\n rsModifier = '(?:' + rsCombo + '|' + rsFitz + ')',\n rsNonAstral = '[^' + rsAstralRange + ']',\n rsRegional = '(?:\\\\ud83c[\\\\udde6-\\\\uddff]){2}',\n rsSurrPair = '[\\\\ud800-\\\\udbff][\\\\udc00-\\\\udfff]',\n rsUpper = '[' + rsUpperRange + ']',\n rsZWJ = '\\\\u200d';\n\n/** Used to compose unicode regexes. */\nvar rsMiscLower = '(?:' + rsLower + '|' + rsMisc + ')',\n rsMiscUpper = '(?:' + rsUpper + '|' + rsMisc + ')',\n rsOptContrLower = '(?:' + rsApos + '(?:d|ll|m|re|s|t|ve))?',\n rsOptContrUpper = '(?:' + rsApos + '(?:D|LL|M|RE|S|T|VE))?',\n reOptMod = rsModifier + '?',\n rsOptVar = '[' + rsVarRange + ']?',\n rsOptJoin = '(?:' + rsZWJ + '(?:' + [rsNonAstral, rsRegional, rsSurrPair].join('|') + ')' + rsOptVar + reOptMod + ')*',\n rsOrdLower = '\\\\d*(?:1st|2nd|3rd|(?![123])\\\\dth)(?=\\\\b|[A-Z_])',\n rsOrdUpper = '\\\\d*(?:1ST|2ND|3RD|(?![123])\\\\dTH)(?=\\\\b|[a-z_])',\n rsSeq = rsOptVar + reOptMod + rsOptJoin,\n rsEmoji = '(?:' + [rsDingbat, rsRegional, rsSurrPair].join('|') + ')' + rsSeq;\n\n/** Used to match complex or compound words. */\nvar reUnicodeWord = RegExp([\n rsUpper + '?' + rsLower + '+' + rsOptContrLower + '(?=' + [rsBreak, rsUpper, '$'].join('|') + ')',\n rsMiscUpper + '+' + rsOptContrUpper + '(?=' + [rsBreak, rsUpper + rsMiscLower, '$'].join('|') + ')',\n rsUpper + '?' + rsMiscLower + '+' + rsOptContrLower,\n rsUpper + '+' + rsOptContrUpper,\n rsOrdUpper,\n rsOrdLower,\n rsDigits,\n rsEmoji\n].join('|'), 'g');\n\n/**\n * Splits a Unicode `string` into an array of its words.\n *\n * @private\n * @param {string} The string to inspect.\n * @returns {Array} Returns the words of `string`.\n */\nfunction unicodeWords(string) {\n return string.match(reUnicodeWord) || [];\n}\n\nmodule.exports = unicodeWords;\n","var asciiWords = require('./_asciiWords'),\n hasUnicodeWord = require('./_hasUnicodeWord'),\n toString = require('./toString'),\n unicodeWords = require('./_unicodeWords');\n\n/**\n * Splits `string` into an array of its words.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to inspect.\n * @param {RegExp|string} [pattern] The pattern to match words.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {Array} Returns the words of `string`.\n * @example\n *\n * _.words('fred, barney, & pebbles');\n * // => ['fred', 'barney', 'pebbles']\n *\n * _.words('fred, barney, & pebbles', /[^, ]+/g);\n * // => ['fred', 'barney', '&', 'pebbles']\n */\nfunction words(string, pattern, guard) {\n string = toString(string);\n pattern = guard ? undefined : pattern;\n\n if (pattern === undefined) {\n return hasUnicodeWord(string) ? unicodeWords(string) : asciiWords(string);\n }\n return string.match(pattern) || [];\n}\n\nmodule.exports = words;\n","var arrayReduce = require('./_arrayReduce'),\n deburr = require('./deburr'),\n words = require('./words');\n\n/** Used to compose unicode capture groups. */\nvar rsApos = \"['\\u2019]\";\n\n/** Used to match apostrophes. */\nvar reApos = RegExp(rsApos, 'g');\n\n/**\n * Creates a function like `_.camelCase`.\n *\n * @private\n * @param {Function} callback The function to combine each word.\n * @returns {Function} Returns the new compounder function.\n */\nfunction createCompounder(callback) {\n return function(string) {\n return arrayReduce(words(deburr(string).replace(reApos, '')), callback, '');\n };\n}\n\nmodule.exports = createCompounder;\n","var createCompounder = require('./_createCompounder');\n\n/**\n * Converts `string` to\n * [kebab case](https://en.wikipedia.org/wiki/Letter_case#Special_case_styles).\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to convert.\n * @returns {string} Returns the kebab cased string.\n * @example\n *\n * _.kebabCase('Foo Bar');\n * // => 'foo-bar'\n *\n * _.kebabCase('fooBar');\n * // => 'foo-bar'\n *\n * _.kebabCase('__FOO_BAR__');\n * // => 'foo-bar'\n */\nvar kebabCase = createCompounder(function(result, word, index) {\n return result + (index ? '-' : '') + word.toLowerCase();\n});\n\nmodule.exports = kebabCase;\n","import React from 'react'\nimport { useTheme } from '@material-ui/core'\nimport { Box, Icon } from '@popmenu/common-ui'\n\nimport { useStyles } from './TableHeaderCellStyles'\nimport { TableHeaderCellProps } from './TableHeaderCellProps'\nimport { ChevronDown, ChevronUp, Sort } from '@popmenu/web-icons'\nimport kebabCase from 'lodash/kebabCase'\n\nexport const TableHeaderCell = (props: TableHeaderCellProps) => {\n const { children, context, ...restProps } = props\n const sortable = context.header.column.getCanSort()\n const sorted = context.header.column.getIsSorted()\n const handleSort = context.header.column.getToggleSortingHandler()\n const classes = useStyles({ ...props, sortable })\n const { spacing, palette } = useTheme()\n const sortIndicators = {\n asc: ChevronUp,\n desc: ChevronDown,\n }\n\n const idBase = context.table.options.meta?.idBase\n const dataTourIdProps =\n idBase && sortable ? { 'data-tour-id': kebabCase(`sort ${idBase} on ${context.header.column.id}`) } : {}\n\n return (\n <th className={classes.root} {...restProps}>\n <Box\n className={classes.box}\n display=\"flex\"\n alignItems=\"center\"\n gridGap={spacing(1)}\n onClick={handleSort}\n {...dataTourIdProps}\n >\n {children}\n {sortable && !sorted && <Icon icon={Sort} color={palette.grey[500]} />}\n {sortable && sorted && <Icon icon={sortIndicators[sorted]} />}\n </Box>\n </th>\n )\n}\n","import { makeStyles } from '@material-ui/core'\n\nexport const useStyles = makeStyles({\n chip: {\n overflow: 'visible',\n height: 'auto',\n },\n label: {\n whiteSpace: 'normal',\n },\n})\n","import React from 'react'\nimport { ColumnFilter } from '@tanstack/react-table'\nimport { useStyles } from './ColumnFilterChipStyles'\nimport { Box, Chip, Typography } from '@popmenu/common-ui'\n\ninterface ColumnFilterChipProps {\n columnFilter: ColumnFilter\n label: [string, string]\n onClick: (columnFilter: ColumnFilter) => void\n}\n\nexport const ColumnFilterChip = (props: ColumnFilterChipProps) => {\n const { columnFilter, onClick, label } = props\n const classes = useStyles()\n return (\n <Chip\n className={classes.chip}\n onDelete={() => onClick(columnFilter)}\n label={\n <Box display=\"flex\" gridGap={4} flexWrap=\"wrap\">\n <Typography>{label[0]}:</Typography>\n <Typography className={classes.label} weight=\"semi-bold\" {...{ component: 'span' }}>\n {label[1]}\n </Typography>\n </Box>\n }\n />\n )\n}\n","import React from 'react'\nimport { TableControlsContainerProps } from './TableControlsContainerProps'\nimport { Box } from '@material-ui/core'\n\nexport const TableControlsContainer = (props: TableControlsContainerProps) => {\n const { showTitle, showGlobalSearch, showColumnFilter } = props\n let gridTemplateAreas\n switch (true) {\n case showTitle && showGlobalSearch && showColumnFilter:\n gridTemplateAreas = `\n \"title .\"\n \"globalFilter columnFilter\"\n `\n break\n case showTitle && !showGlobalSearch && showColumnFilter:\n gridTemplateAreas = `\n \"title columnFilter\"\n `\n break\n case !showTitle && showGlobalSearch && showColumnFilter:\n gridTemplateAreas = `\n \"globalFilter columnFilter\"\n `\n break\n case showTitle && !showGlobalSearch && !showColumnFilter:\n gridTemplateAreas = `\n \"title .\"\n `\n break\n case !showTitle && !showGlobalSearch && showColumnFilter:\n gridTemplateAreas = `\n \". columnFilter\"\n `\n break\n case !showTitle && showGlobalSearch && !showColumnFilter:\n gridTemplateAreas = `\n \"globalFilter .\"\n `\n break\n case showTitle && showGlobalSearch && !showColumnFilter:\n gridTemplateAreas = `\n \"title .\"\n \"globalFilter .\"\n `\n break\n default:\n break\n }\n return (\n <Box\n display=\"grid\"\n gridTemplateColumns=\"repeat(2, minmax(150px, 1fr))\"\n gridTemplateAreas={gridTemplateAreas}\n gridGap={16}\n marginBottom={3}\n >\n {props.children}\n </Box>\n )\n}\n","import React from 'react'\nimport { Button, ButtonProps } from '@popmenu/admin-ui'\n\nexport const ColumnFilterResetButton = (props: ButtonProps) => {\n const { children = 'Clear All', ...restProps } = props\n return (\n <Button variant=\"text\" textTransform=\"none\" {...restProps}>\n {children}\n </Button>\n )\n}\n","import React, { ChangeEvent, createElement, isValidElement, useRef } from 'react'\nimport { Typography } from '@material-ui/core'\nimport { Pagination } from '@material-ui/lab'\nimport { Box, CircularProgress } from '@popmenu/common-ui'\nimport {\n flexRender,\n getCoreRowModel,\n getFilteredRowModel,\n getPaginationRowModel,\n getSortedRowModel,\n useReactTable,\n ColumnFilter as ReactTableColumnFilter,\n ColumnFilter,\n} from '@tanstack/react-table'\n\nimport { TableRow } from '../TableRow'\nimport { TableCell } from '../TableCell'\nimport { TableBody } from '../TableBody'\nimport { useStyles } from './TableStyles'\nimport { TableProps } from './TableProps'\nimport { TableHeader } from '../TableHeader'\nimport { TableFooter } from '../TableFooter'\nimport { FilterPanel } from '../FilterPanel'\nimport { TableContext } from '../TableContext'\nimport { GlobalFilter } from '../GlobalFilter'\nimport { TableHeaderRow } from '../TableHeaderRow'\nimport { TableHeaderCell } from '../TableHeaderCell'\nimport { useColumnFilters, useStagedColumnFilters } from '../../hooks'\nimport { ColumnFilterChip } from '../ColumnFilterChip'\nimport { TableControlsContainer } from '../TableControlsContainer'\nimport { ColumnFilterResetButton } from '../ColumnFilterResetButton'\nimport { coercedValueIncludesString, getTableMinHeight } from '../../util'\n\nconst defaultTableProps = {\n enableSortingRemoval: true,\n fullWidth: true,\n paginated: true,\n sortable: false,\n searchable: false,\n}\n\ntype DefaultTableProps<T> = TableProps<T> & typeof defaultTableProps\n\nexport const Table = <T,>(props: DefaultTableProps<T>) => {\n const {\n title,\n data,\n columns,\n enableSortingRemoval,\n loading,\n searchable,\n sortable,\n filterState: externalFilterState,\n globalFilterState: externalGlobalFilterState,\n paginationState: externalPaginationState,\n sortingState: externalSortingState,\n visibilityState: externalVisibilityState,\n paginated,\n pageCount,\n GlobalFilterProps,\n Empty,\n idBase,\n stageFilterSelections,\n } = props\n const classes = useStyles(props)\n const rootRef = useRef<HTMLDivElement>(null)\n\n // Prepare Empty State\n const isEmpty = data.length === 0\n const isEmptyComponentValid = Empty && isValidElement(createElement(Empty))\n\n // Prepare Sorting\n const [sorting, setSorting] = externalSortingState || []\n const isControlledColumnSort = Boolean(externalSortingState)\n const controlledColumnSortOptions = { onSortingChange: setSorting, manualSorting: true }\n\n // Prepare Global Filtering\n const [globalFilter, setGlobalFilter] = externalGlobalFilterState || []\n const isControlledGlobalFilter = Boolean(externalGlobalFilterState)\n const controlledGlobalFilterOptions = { onGlobalFilterChange: setGlobalFilter, manualFiltering: true }\n\n // Prepare ColumnFiltering\n const [columnFilters, setColumnFilters] = externalFilterState || []\n const isControlledColumnFilters = Boolean(externalFilterState)\n const controlledColumnFiltersOptions = { onColumnFiltersChange: setColumnFilters, manualFiltering: true }\n\n // Prepare Pagination\n const [pagination, setPagination] = externalPaginationState || []\n const isControlledPagination = Boolean(externalPaginationState && pageCount)\n const controlledPaginationOptions = { manualPagination: true, onPaginationChange: setPagination, pageCount }\n\n // Prepare Column Visibility\n const [columnVisibility] = externalVisibilityState || []\n const isControlledColumnVisibility = Boolean(externalVisibilityState)\n\n // Init table instance\n const table = useReactTable({\n data,\n columns,\n state: {\n ...(isControlledPagination && { pagination }),\n ...(isControlledGlobalFilter && { globalFilter }),\n ...(isControlledColumnFilters && { columnFilters }),\n ...(isControlledColumnVisibility && { columnVisibility }),\n ...(isControlledColumnSort && { sorting }),\n },\n enableSorting: sortable,\n enableSortingRemoval,\n globalFilterFn: coercedValueIncludesString,\n getCoreRowModel: getCoreRowModel(),\n getSortedRowModel: getSortedRowModel(),\n getFilteredRowModel: getFilteredRowModel(),\n ...(paginated && { getPaginationRowModel: getPaginationRowModel() }),\n ...(isControlledPagination && controlledPaginationOptions),\n ...(isControlledGlobalFilter && controlledGlobalFilterOptions),\n ...(isControlledColumnFilters && controlledColumnFiltersOptions),\n ...(isControlledColumnSort && controlledColumnSortOptions),\n meta: { idBase: idBase },\n })\n\n const {\n selectedColumnFilters,\n hasColumnFilters,\n deselectColumnFilter,\n formatSelectedFilterText,\n resetColumnFilters,\n } = useColumnFilters(table)\n\n // stagedColumnFilters is only used when stageFilterSelections is enabled\n const stagedColumnFilters = useStagedColumnFilters(selectedColumnFilters)\n\n const handlePagination = (_e: ChangeEvent, pageNumber: number) => {\n const pageIndex = pageNumber - 1\n table.setPageIndex(pageIndex)\n }\n const showTitle = Boolean(title)\n const showGlobalSearch = Boolean(searchable || isControlledGlobalFilter)\n const showColumnFilter = Boolean(hasColumnFilters)\n const showControls = Boolean(showTitle || showGlobalSearch || showColumnFilter)\n\n return (\n <TableContext.Provider value={{ table, stagedColumnFilters, stageFilterSelections }}>\n <Box\n className={classes.root}\n {...{ ref: rootRef }}\n data-table-element=\"root\"\n {...(table.getPageCount() > 1 && {\n minHeight: getTableMinHeight(rootRef, table.getState().pagination.pageSize),\n })}\n >\n {showControls && (\n <Box>\n <TableControlsContainer\n showTitle={showTitle}\n showGlobalSearch={showGlobalSearch}\n showColumnFilter={showColumnFilter}\n >\n {showTitle && (\n <Typography style={{ gridArea: 'title', alignSelf: 'center', fontSize: '18px', lineHeight: '27px' }}>\n {title}\n </Typography>\n )}\n {showGlobalSearch && (\n <GlobalFilter\n {...GlobalFilterProps}\n value={table.getState().globalFilter}\n setValue={table.setGlobalFilter}\n />\n )}\n {showColumnFilter && <FilterPanel />}\n </TableControlsContainer>\n <Box display=\"flex\" flexWrap=\"wrap\" gridGap={8}>\n {selectedColumnFilters.map((selectedColumnFilter: ReactTableColumnFilter, i) => (\n <ColumnFilterChip\n key={`selected-column-filter-chip-${i}`}\n columnFilter={selectedColumnFilter}\n label={formatSelectedFilterText(selectedColumnFilter)}\n onClick={(columnFilter: ColumnFilter) => {\n if (stageFilterSelections) {\n stagedColumnFilters.delete(columnFilter)\n }\n deselectColumnFilter(columnFilter)\n }}\n />\n ))}\n {selectedColumnFilters.length >= 1 && (\n <ColumnFilterResetButton\n onClick={() => {\n if (stageFilterSelections) {\n stagedColumnFilters.clear()\n }\n resetColumnFilters()\n }}\n />\n )}\n </Box>\n </Box>\n )}\n <Box className={classes.tableContainer} flexGrow={loading || isEmpty ? 0 : 1}>\n <table className={classes.table}>\n <TableHeader>\n {table.getHeaderGroups().map((headerGroup) => (\n <TableHeaderRow key={headerGroup.id}>\n {headerGroup.headers.map((header) => (\n <TableHeaderCell key={header.id} context={header.getContext()}>\n {flexRender(header.column.columnDef.header, header.getContext())}\n </TableHeaderCell>\n ))}\n </TableHeaderRow>\n ))}\n </TableHeader>\n {!loading && (\n <TableBody>\n {table.getRowModel().rows.map((row) => (\n <TableRow key={row.id}>\n {row.getVisibleCells().map((cell) => (\n <TableCell key={cell.id}>{flexRender(cell.column.columnDef.cell, cell.getContext())}</TableCell>\n ))}\n </TableRow>\n ))}\n </TableBody>\n )}\n </table>\n </Box>\n {isEmpty && isEmptyComponentValid && Empty && !loading && (\n <Box display=\"flex\" flexDirection=\"column\" justifyContent=\"center\" alignItems=\"center\" p={2} flexGrow={1}>\n {createElement(Empty)}\n </Box>\n )}\n {loading && (\n <Box display=\"flex\" flexDirection=\"column\" justifyContent=\"center\" alignItems=\"center\" p={2} flexGrow={1}>\n <CircularProgress size={80} color=\"inherit\" />\n </Box>\n )}\n {paginated && table.getPageCount() > 1 && (\n <TableFooter>\n <Pagination\n page={table.getState().pagination.pageIndex + 1}\n count={table.getPageCount()}\n onChange={handlePagination}\n disabled={loading}\n />\n </TableFooter>\n )}\n </Box>\n </TableContext.Provider>\n )\n}\n\nTable.defaultProps = defaultTableProps\n","import { RowAction } from '../components/RowActions/RowActionsProps'\nimport { createElement, isValidElement } from 'react'\n\nexport const validateAction = (action: Partial<RowAction>) => {\n const { icon, label, onClick } = action\n const onClickIsValid = typeof onClick === 'function'\n const labelIsValid = typeof label === 'string'\n const iconIsValid = icon && isValidElement(createElement(icon))\n return onClickIsValid && labelIsValid && iconIsValid\n}\n","import React, { MouseEvent } from 'react'\nimport { More } from '@popmenu/web-icons'\nimport { RowActionsProps } from './RowActionsProps'\nimport { Tooltip, IconButton, Icon, Box, Menu, MenuItem } from '@popmenu/common-ui'\n\nimport { validateAction } from '../../util/validateRowAction'\n\nexport const RowActions = (props: RowActionsProps) => {\n const { context, actions } = props\n const validActions = actions.filter(validateAction)\n const [anchorEl, setAnchorEl] = React.useState<(EventTarget & Element) | null>(null)\n const openMenu = (event: MouseEvent) => {\n setAnchorEl(event.currentTarget)\n }\n const closeMenu = () => {\n setAnchorEl(null)\n }\n const actionsCount = validActions.length\n let mainActions\n let overflowActions\n if (actionsCount <= 3) {\n mainActions = validActions\n } else {\n const [firstAction, secondAction, ...restActions] = validActions\n mainActions = [firstAction, secondAction]\n overflowActions = restActions\n }\n\n return (\n <Box display=\"flex\">\n {mainActions.map(({ label, onClick, icon, ...restProps }) => (\n <Tooltip title={label} key={label}>\n <IconButton size=\"small\" onClick={() => onClick(context)} {...restProps}>\n <Icon icon={icon} />\n </IconButton>\n </Tooltip>\n ))}\n {overflowActions && (\n <>\n <IconButton size=\"small\" onClick={openMenu}>\n <Icon icon={More} />\n </IconButton>\n <Menu anchorEl={anchorEl} open={Boolean(anchorEl)} onClose={closeMenu}>\n {overflowActions.map((action) => (\n <MenuItem key={action.label} onClick={() => action.onClick(context)}>\n {action.label}\n </MenuItem>\n ))}\n </Menu>\n </>\n )}\n </Box>\n )\n}\n"],"names":["makeStyles","__rest","__assign","useStyles","Box","createContext","useContext","useState","FormControl","InputLabel","Select","Typography","ChevronDown","MenuItem","FormControlLabel","Switch","TextField","createElement","__spreadArray","useRef","Popover","Paper","Button","Icon","Filter","InputAdornment","Search","arrayReduce","basePropertyOf","require$$0","deburrLetter","freeGlobal","global","root","Symbol","arrayMap","isArray","objectProto","nativeObjectToString","symToStringTag","getRawTag","objectToString","require$$1","require$$2","baseGetTag","isObjectLike","isSymbol","require$$3","baseToString","toString","rsComboMarksRange","reComboHalfMarksRange","rsComboSymbolsRange","rsComboRange","rsCombo","deburr","asciiWords","hasUnicodeWord","rsApos","unicodeWords","words","createCompounder","useTheme","ChevronUp","kebabCase","Sort","Chip","isValidElement","useReactTable","getCoreRowModel","getSortedRowModel","getFilteredRowModel","getPaginationRowModel","flexRender","CircularProgress","Pagination","Tooltip","IconButton","More","Menu"],"mappings":"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G,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG;AAC7D,EAAE,QAAQ,EAAE,GAAG,GAAG,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG;AAC5E,EAAE,QAAQ,EAAE,GAAG,GAAG,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG;AAC5E,EAAE,QAAQ,EAAE,GAAG,GAAG,QAAQ,EAAE,GAAG;AAC/B,EAAE,QAAQ,EAAE,GAAG,GAAG,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG;AAC9C,EAAE,QAAQ,EAAE,GAAG,GAAG,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG;AAC5E,EAAE,QAAQ,EAAE,GAAG,GAAG,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG;AAC5E,EAAE,QAAQ,EAAE,GAAG,GAAG,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG;AAC7D,EAAE,QAAQ,EAAE,GAAG,GAAG,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG;AAC7D,EAAE,QAAQ,EAAE,GAAG,GAAG,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG;AAC9C,EAAE,QAAQ,EAAE,GAAG,GAAG,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG;AAC9C,EAAE,QAAQ,EAAE,GAAG,GAAG,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG;AAC9C,EAAE,QAAQ,EAAE,GAAG,GAAG,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG;AAC9C,EAAE,QAAQ,EAAE,GAAG,GAAG,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG;AAC7D,EAAE,QAAQ,EAAE,GAAG,GAAG,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG;AAC7D,EAAE,QAA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","x_google_ignoreList":[28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49]}
|