@popmenu/table 0.126.4 → 0.127.1
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 +0 -1
- package/build/cjs/components/ColumnFilterResetButton/ColumnFilterResetButton.d.ts +0 -1
- package/build/cjs/components/FilterPanel/FilterControl/FilterControl.d.ts +0 -1
- package/build/cjs/components/FilterPanel/FilterControl/SelectFilter/SelectFilter.d.ts +0 -1
- package/build/cjs/components/FilterPanel/FilterControl/ToggleFilter/ToggleFilter.d.ts +0 -1
- package/build/cjs/components/FilterPanel/FilterPanel.d.ts +0 -1
- package/build/cjs/components/FilterPanel/FilterPanelContext/FilterPanelContext.d.ts +1 -1
- package/build/cjs/components/FilterPanel/FilterPanelProps.d.ts +2 -2
- package/build/cjs/components/FilterPanel/Panel/Panel.d.ts +1 -2
- package/build/cjs/components/FilterPanel/Trigger/Trigger.d.ts +1 -1
- package/build/cjs/components/GlobalFilter/GlobalFilter.d.ts +0 -1
- package/build/cjs/components/GlobalFilter/index.d.ts +1 -1
- package/build/cjs/components/RowActions/RowActions.d.ts +0 -1
- package/build/cjs/components/RowActions/index.d.ts +1 -1
- package/build/cjs/components/Table/Table.d.ts +0 -1
- package/build/cjs/components/Table/TableStyles.d.ts +1 -1
- package/build/cjs/components/Table/index.d.ts +1 -1
- package/build/cjs/components/TableBody/TableBody.d.ts +1 -1
- package/build/cjs/components/TableCell/TableCell.d.ts +1 -1
- package/build/cjs/components/TableContext/index.d.ts +2 -3
- package/build/cjs/components/TableControlsContainer/TableControlsContainer.d.ts +0 -1
- package/build/cjs/components/TableControlsContainer/TableControlsContainerProps.d.ts +1 -1
- package/build/cjs/components/TableFooter/TableFooter.d.ts +1 -1
- package/build/cjs/components/TableHeader/TableHeader.d.ts +1 -1
- package/build/cjs/components/TableHeaderCell/TableHeaderCell.d.ts +0 -1
- package/build/cjs/components/TableHeaderCell/TableHeaderCellProps.d.ts +1 -1
- package/build/cjs/components/TableHeaderCell/index.d.ts +1 -1
- package/build/cjs/components/TableHeaderRow/TableHeaderRow.d.ts +1 -1
- package/build/cjs/components/TableRow/TableRow.d.ts +1 -1
- package/build/cjs/components/index.d.ts +6 -3
- package/build/cjs/hooks/useColumnFilters.d.ts +1 -1
- package/build/cjs/index.js +469 -451
- package/build/cjs/index.js.map +1 -1
- package/build/esm/components/ColumnFilterChip/ColumnFilterChip.d.ts +0 -1
- package/build/esm/components/ColumnFilterChip/ColumnFilterChip.js +5 -6
- package/build/esm/components/ColumnFilterChip/ColumnFilterChip.js.map +1 -1
- package/build/esm/components/ColumnFilterChip/ColumnFilterChipStyles.js +1 -1
- package/build/esm/components/ColumnFilterChip/ColumnFilterChipStyles.js.map +1 -1
- package/build/esm/components/ColumnFilterResetButton/ColumnFilterResetButton.d.ts +0 -1
- package/build/esm/components/ColumnFilterResetButton/ColumnFilterResetButton.js +3 -4
- package/build/esm/components/ColumnFilterResetButton/ColumnFilterResetButton.js.map +1 -1
- package/build/esm/components/FilterPanel/FilterControl/FilterControl.d.ts +0 -1
- package/build/esm/components/FilterPanel/FilterControl/FilterControl.js +5 -6
- package/build/esm/components/FilterPanel/FilterControl/FilterControl.js.map +1 -1
- package/build/esm/components/FilterPanel/FilterControl/SelectFilter/SelectFilter.d.ts +0 -1
- package/build/esm/components/FilterPanel/FilterControl/SelectFilter/SelectFilter.js +28 -30
- package/build/esm/components/FilterPanel/FilterControl/SelectFilter/SelectFilter.js.map +1 -1
- package/build/esm/components/FilterPanel/FilterControl/SelectFilter/SelectFilterStyles.js +2 -2
- package/build/esm/components/FilterPanel/FilterControl/SelectFilter/SelectFilterStyles.js.map +1 -1
- package/build/esm/components/FilterPanel/FilterControl/ToggleFilter/ToggleFilter.d.ts +0 -1
- package/build/esm/components/FilterPanel/FilterControl/ToggleFilter/ToggleFilter.js +8 -8
- package/build/esm/components/FilterPanel/FilterControl/ToggleFilter/ToggleFilter.js.map +1 -1
- package/build/esm/components/FilterPanel/FilterPanel.d.ts +0 -1
- package/build/esm/components/FilterPanel/FilterPanel.js +5 -5
- package/build/esm/components/FilterPanel/FilterPanel.js.map +1 -1
- package/build/esm/components/FilterPanel/FilterPanelContext/FilterPanelContext.d.ts +1 -1
- package/build/esm/components/FilterPanel/FilterPanelContext/FilterPanelContext.js +3 -3
- package/build/esm/components/FilterPanel/FilterPanelContext/FilterPanelContext.js.map +1 -1
- package/build/esm/components/FilterPanel/FilterPanelProps.d.ts +2 -2
- package/build/esm/components/FilterPanel/Panel/Panel.d.ts +1 -2
- package/build/esm/components/FilterPanel/Panel/Panel.js +21 -23
- package/build/esm/components/FilterPanel/Panel/Panel.js.map +1 -1
- package/build/esm/components/FilterPanel/Panel/PanelStyles.js +3 -3
- package/build/esm/components/FilterPanel/Panel/PanelStyles.js.map +1 -1
- package/build/esm/components/FilterPanel/Trigger/Trigger.d.ts +1 -1
- package/build/esm/components/FilterPanel/Trigger/Trigger.js +3 -3
- package/build/esm/components/FilterPanel/Trigger/Trigger.js.map +1 -1
- package/build/esm/components/FilterPanel/Trigger/TriggerStyles.js +1 -1
- package/build/esm/components/FilterPanel/Trigger/TriggerStyles.js.map +1 -1
- package/build/esm/components/GlobalFilter/GlobalFilter.d.ts +0 -1
- package/build/esm/components/GlobalFilter/GlobalFilter.js +6 -7
- package/build/esm/components/GlobalFilter/GlobalFilter.js.map +1 -1
- package/build/esm/components/GlobalFilter/GlobalFilterStyles.js +1 -1
- package/build/esm/components/GlobalFilter/GlobalFilterStyles.js.map +1 -1
- package/build/esm/components/GlobalFilter/index.d.ts +1 -1
- package/build/esm/components/RowActions/RowActions.d.ts +0 -1
- package/build/esm/components/RowActions/RowActions.js +14 -18
- package/build/esm/components/RowActions/RowActions.js.map +1 -1
- package/build/esm/components/RowActions/index.d.ts +1 -1
- package/build/esm/components/Table/Table.d.ts +0 -1
- package/build/esm/components/Table/Table.js +76 -56
- package/build/esm/components/Table/Table.js.map +1 -1
- package/build/esm/components/Table/TableStyles.d.ts +1 -1
- package/build/esm/components/Table/TableStyles.js +17 -22
- package/build/esm/components/Table/TableStyles.js.map +1 -1
- package/build/esm/components/Table/index.d.ts +1 -1
- package/build/esm/components/TableBody/TableBody.d.ts +1 -1
- package/build/esm/components/TableBody/TableBody.js +3 -4
- package/build/esm/components/TableBody/TableBody.js.map +1 -1
- package/build/esm/components/TableCell/TableCell.d.ts +1 -1
- package/build/esm/components/TableCell/TableCell.js +4 -5
- package/build/esm/components/TableCell/TableCell.js.map +1 -1
- package/build/esm/components/TableCell/TableCellStyles.js +4 -4
- package/build/esm/components/TableCell/TableCellStyles.js.map +1 -1
- package/build/esm/components/TableContext/index.d.ts +2 -3
- package/build/esm/components/TableContext/index.js +1 -1
- package/build/esm/components/TableContext/index.js.map +1 -1
- package/build/esm/components/TableControlsContainer/TableControlsContainer.d.ts +0 -1
- package/build/esm/components/TableControlsContainer/TableControlsContainer.js +26 -10
- package/build/esm/components/TableControlsContainer/TableControlsContainer.js.map +1 -1
- package/build/esm/components/TableControlsContainer/TableControlsContainerProps.d.ts +1 -1
- package/build/esm/components/TableFooter/TableFooter.d.ts +1 -1
- package/build/esm/components/TableFooter/TableFooter.js +1 -1
- package/build/esm/components/TableFooter/TableFooter.js.map +1 -1
- package/build/esm/components/TableHeader/TableHeader.d.ts +1 -1
- package/build/esm/components/TableHeader/TableHeader.js +3 -4
- package/build/esm/components/TableHeader/TableHeader.js.map +1 -1
- package/build/esm/components/TableHeaderCell/TableHeaderCell.d.ts +0 -1
- package/build/esm/components/TableHeaderCell/TableHeaderCell.js +13 -15
- package/build/esm/components/TableHeaderCell/TableHeaderCell.js.map +1 -1
- package/build/esm/components/TableHeaderCell/TableHeaderCellProps.d.ts +1 -1
- package/build/esm/components/TableHeaderCell/TableHeaderCellStyles.js +3 -6
- package/build/esm/components/TableHeaderCell/TableHeaderCellStyles.js.map +1 -1
- package/build/esm/components/TableHeaderCell/index.d.ts +1 -1
- package/build/esm/components/TableHeaderRow/TableHeaderRow.d.ts +1 -1
- package/build/esm/components/TableHeaderRow/TableHeaderRow.js +3 -4
- package/build/esm/components/TableHeaderRow/TableHeaderRow.js.map +1 -1
- package/build/esm/components/TableRow/TableRow.d.ts +1 -1
- package/build/esm/components/TableRow/TableRow.js +4 -5
- package/build/esm/components/TableRow/TableRow.js.map +1 -1
- package/build/esm/components/TableRow/TableRowStyles.js +4 -4
- package/build/esm/components/TableRow/TableRowStyles.js.map +1 -1
- package/build/esm/components/index.d.ts +6 -3
- package/build/esm/hooks/useColumnFilters.d.ts +1 -1
- package/build/esm/hooks/useColumnFilters.js +33 -35
- package/build/esm/hooks/useColumnFilters.js.map +1 -1
- package/build/esm/hooks/useStagedColumnFilters.js +22 -27
- package/build/esm/hooks/useStagedColumnFilters.js.map +1 -1
- package/build/esm/index.js +2 -2
- package/build/esm/util/coercedValueIncludesString.js +2 -2
- package/build/esm/util/coercedValueIncludesString.js.map +1 -1
- package/build/esm/util/getTableMinHeight.js +11 -11
- package/build/esm/util/getTableMinHeight.js.map +1 -1
- package/build/esm/util/tableConstants.js +1 -1
- package/build/esm/util/tableConstants.js.map +1 -1
- package/build/esm/util/validateRowAction.js +5 -5
- package/build/esm/util/validateRowAction.js.map +1 -1
- package/package.json +3 -2
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { createContext, useContext } from 'react';
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
3
|
+
const FilterPanelContext = createContext(null);
|
|
4
|
+
const useFilterPanelContext = () => {
|
|
5
|
+
const context = useContext(FilterPanelContext);
|
|
6
6
|
if (!context) {
|
|
7
7
|
throw new Error('useFilterPanelContext has to be used within <FilterPanelContext.Provider>');
|
|
8
8
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FilterPanelContext.js","sources":["../../../../../src/components/FilterPanel/FilterPanelContext/FilterPanelContext.tsx"],"sourcesContent":["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"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"FilterPanelContext.js","sources":["../../../../../src/components/FilterPanel/FilterPanelContext/FilterPanelContext.tsx"],"sourcesContent":["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"],"names":[],"mappings":";;MAMa,kBAAkB,GAAG,aAAa,CAAiC,IAAI;AAE7E,MAAM,qBAAqB,GAAG,MAAK;AACxC,IAAA,MAAM,OAAO,GAAG,UAAU,CAAC,kBAAkB,CAAC;IAE9C,IAAI,CAAC,OAAO,EAAE;AACZ,QAAA,MAAM,IAAI,KAAK,CAAC,2EAA2E,CAAC;;AAG9F,IAAA,OAAO,OAAO;AAChB;;;;"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
export
|
|
2
|
-
export
|
|
1
|
+
export type ColumnFilterInput = 'text' | 'number' | 'radio' | 'select' | 'multi-select';
|
|
2
|
+
export type ColumnFilter = {
|
|
3
3
|
columnId: string;
|
|
4
4
|
input: ColumnFilterInput;
|
|
5
5
|
min?: number;
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { __assign } from 'tslib';
|
|
2
1
|
import React, { useContext, useRef } from 'react';
|
|
3
2
|
import { Popover, Paper, Box, Typography } from '@popmenu/common-ui';
|
|
4
3
|
import { useStyles } from './PanelStyles.js';
|
|
@@ -7,32 +6,31 @@ import { TableContext } from '../../TableContext/index.js';
|
|
|
7
6
|
import { useColumnFilters } from '../../../hooks/useColumnFilters.js';
|
|
8
7
|
import { Button } from '@popmenu/admin-ui';
|
|
9
8
|
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
var rect = (_a = paperRef.current) === null || _a === void 0 ? void 0 : _a.getBoundingClientRect();
|
|
9
|
+
const Panel = (props) => {
|
|
10
|
+
const { anchorEl, onClose } = props;
|
|
11
|
+
const classes = useStyles();
|
|
12
|
+
const { table, stagedColumnFilters, stageFilterSelections } = useContext(TableContext);
|
|
13
|
+
const paperRef = useRef(null);
|
|
14
|
+
const { columnFilters, resetColumnFilters } = useColumnFilters(table);
|
|
15
|
+
const handleClick = (e) => {
|
|
16
|
+
const rect = paperRef.current?.getBoundingClientRect();
|
|
19
17
|
if (rect) {
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
18
|
+
const buffer = 10;
|
|
19
|
+
const mouseX = e.nativeEvent.x;
|
|
20
|
+
const mouseY = e.nativeEvent.y;
|
|
21
|
+
const xHit = rect.x - buffer < mouseX && mouseX < rect.x + rect.width + buffer;
|
|
22
|
+
const yHit = rect.y - buffer < mouseY && mouseY < rect.y + rect.height + buffer;
|
|
25
23
|
if (!xHit || !yHit) {
|
|
26
24
|
onClose();
|
|
27
25
|
}
|
|
28
26
|
}
|
|
29
27
|
};
|
|
30
|
-
|
|
28
|
+
const handleApplyClick = () => {
|
|
31
29
|
if (stagedColumnFilters.exist()) {
|
|
32
|
-
columnFilters.forEach(
|
|
33
|
-
|
|
30
|
+
columnFilters.forEach((columnFilter) => {
|
|
31
|
+
const columnInputValue = stagedColumnFilters.get(columnFilter.columnId);
|
|
34
32
|
if (columnInputValue) {
|
|
35
|
-
|
|
33
|
+
const column = table.getColumn(columnFilter.columnId);
|
|
36
34
|
column.setFilterValue(columnInputValue);
|
|
37
35
|
}
|
|
38
36
|
});
|
|
@@ -42,10 +40,10 @@ var Panel = function (props) {
|
|
|
42
40
|
}
|
|
43
41
|
onClose();
|
|
44
42
|
};
|
|
45
|
-
|
|
43
|
+
const handleCancelClick = () => {
|
|
46
44
|
onClose();
|
|
47
45
|
};
|
|
48
|
-
|
|
46
|
+
const open = Boolean(anchorEl);
|
|
49
47
|
return (React.createElement(Popover, { onClick: handleClick, anchorEl: anchorEl, anchorOrigin: {
|
|
50
48
|
vertical: 'bottom',
|
|
51
49
|
horizontal: 'right',
|
|
@@ -60,9 +58,9 @@ var Panel = function (props) {
|
|
|
60
58
|
horizontal: 'right',
|
|
61
59
|
} },
|
|
62
60
|
React.createElement(Paper, { className: classes.filterPopoverContents, elevation: 2 },
|
|
63
|
-
React.createElement(Box,
|
|
61
|
+
React.createElement(Box, { ref: paperRef, padding: 3 },
|
|
64
62
|
React.createElement(Typography, { className: classes.menuTitle }, "Filter By"),
|
|
65
|
-
columnFilters.map(
|
|
63
|
+
columnFilters.map((columnFilter, i) => (React.createElement(FilterControl, { ...columnFilter, key: i })))),
|
|
66
64
|
stageFilterSelections && (React.createElement(Box, { className: classes.buttonBox },
|
|
67
65
|
React.createElement(Button, { variant: "secondary", onClick: handleCancelClick }, "Cancel"),
|
|
68
66
|
React.createElement(Button, { onClick: handleApplyClick }, "Apply"))))));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Panel.js","sources":["../../../../../src/components/FilterPanel/Panel/Panel.tsx"],"sourcesContent":["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"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Panel.js","sources":["../../../../../src/components/FilterPanel/Panel/Panel.tsx"],"sourcesContent":["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"],"names":[],"mappings":"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"}
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import { makeStyles } from '@material-ui/core';
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
const useStyles = makeStyles((theme) => ({
|
|
4
4
|
buttonBox: {
|
|
5
5
|
'& > :last-child': {
|
|
6
6
|
marginLeft: theme.spacing(2),
|
|
7
7
|
},
|
|
8
8
|
display: 'flex',
|
|
9
9
|
justifyContent: 'flex-end',
|
|
10
|
-
padding:
|
|
10
|
+
padding: `0px ${theme.spacing(3)}px ${theme.spacing(3)}px ${theme.spacing(3)}px`,
|
|
11
11
|
},
|
|
12
12
|
buttonLabel: {
|
|
13
13
|
fontWeight: 400,
|
|
@@ -52,7 +52,7 @@ var useStyles = makeStyles(function (theme) { return ({
|
|
|
52
52
|
selectInput: {
|
|
53
53
|
margin: '8px 0',
|
|
54
54
|
},
|
|
55
|
-
})
|
|
55
|
+
}));
|
|
56
56
|
|
|
57
57
|
export { useStyles };
|
|
58
58
|
//# sourceMappingURL=PanelStyles.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PanelStyles.js","sources":["../../../../../src/components/FilterPanel/Panel/PanelStyles.ts"],"sourcesContent":["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"],"names":[],"mappings":";;AAEa,
|
|
1
|
+
{"version":3,"file":"PanelStyles.js","sources":["../../../../../src/components/FilterPanel/Panel/PanelStyles.ts"],"sourcesContent":["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"],"names":[],"mappings":";;AAEa,MAAA,SAAS,GAAG,UAAU,CAAQ,CAAC,KAAK,MAAM;AACrD,IAAA,SAAS,EAAE;AACT,QAAA,iBAAiB,EAAE;AACjB,YAAA,UAAU,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;AAC7B,SAAA;AACD,QAAA,OAAO,EAAE,MAAM;AACf,QAAA,cAAc,EAAE,UAAU;QAC1B,OAAO,EAAE,OAAO,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA,GAAA,EAAM,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAM,GAAA,EAAA,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAI,EAAA,CAAA;AACjF,KAAA;AACD,IAAA,WAAW,EAAE;AACX,QAAA,UAAU,EAAE,GAAG;AAChB,KAAA;AACD,IAAA,qBAAqB,EAAE;AACrB,QAAA,eAAe,EAAE,OAAO;AACxB,QAAA,YAAY,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;AAC9B,QAAA,QAAQ,EAAE,UAAU;AACpB,QAAA,MAAM,EAAE,MAAM;AACd,QAAA,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;AAC3B,QAAA,KAAK,EAAE,OAAO;AACd,QAAA,WAAW,EAAE;AACX,YAAA,eAAe,EAAE,OAAO;AACxB,YAAA,YAAY,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC;AAChC,YAAA,OAAO,EAAE,IAAI;AACb,YAAA,OAAO,EAAE,OAAO;AAChB,YAAA,MAAM,EAAE,2FAA2F;AACnG,YAAA,QAAQ,EAAE,UAAU;AACpB,YAAA,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC;AACzB,YAAA,MAAM,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC;YAC1B,GAAG,EAAE,EAAE;AACP,YAAA,SAAS,EAAE,eAAe;AAC1B,YAAA,IAAI,EAAE,kBAAkB;AACxB,YAAA,MAAM,EAAE,CAAC;AACV,SAAA;AACD,QAAA,UAAU,EAAE;AACV,YAAA,eAAe,EAAE,OAAO;AACxB,YAAA,OAAO,EAAE,IAAI;AACb,YAAA,OAAO,EAAE,OAAO;AAChB,YAAA,QAAQ,EAAE,UAAU;AACpB,YAAA,GAAG,EAAE,CAAC;AACN,YAAA,IAAI,EAAE,WAAW;AACjB,YAAA,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;AACvB,YAAA,MAAM,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;AACzB,SAAA;AACF,KAAA;AACD,IAAA,SAAS,EAAE;AACT,QAAA,UAAU,EAAE,GAAG;AACf,QAAA,QAAQ,EAAE,MAAM;AAChB,QAAA,aAAa,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;AAChC,KAAA;AACD,IAAA,WAAW,EAAE;AACX,QAAA,MAAM,EAAE,OAAO;AAChB,KAAA;AACF,CAAA,CAAC;;;;"}
|
|
@@ -4,9 +4,9 @@ import { Button } from '@popmenu/admin-ui';
|
|
|
4
4
|
import { Filter } from '@popmenu/web-icons';
|
|
5
5
|
import { useStyles } from './TriggerStyles.js';
|
|
6
6
|
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
7
|
+
const Trigger = (props) => {
|
|
8
|
+
const { label = 'Filter', onClick } = props;
|
|
9
|
+
const classes = useStyles();
|
|
10
10
|
return (React.createElement(Button, { className: classes.root, onClick: onClick, startIcon: React.createElement(Icon, { icon: Filter }), textTransform: "none", variant: "ghost" }, label));
|
|
11
11
|
};
|
|
12
12
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Trigger.js","sources":["../../../../../src/components/FilterPanel/Trigger/Trigger.tsx"],"sourcesContent":["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"],"names":[],"mappings":";;;;;;
|
|
1
|
+
{"version":3,"file":"Trigger.js","sources":["../../../../../src/components/FilterPanel/Trigger/Trigger.tsx"],"sourcesContent":["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"],"names":[],"mappings":";;;;;;AAWa,MAAA,OAAO,GAAG,CAAC,KAA8B,KAAI;IACxD,MAAM,EAAE,KAAK,GAAG,QAAQ,EAAE,OAAO,EAAE,GAAG,KAAK;AAC3C,IAAA,MAAM,OAAO,GAAG,SAAS,EAAE;AAC3B,IAAA,QACE,KAAA,CAAA,aAAA,CAAC,MAAM,EAAA,EACL,SAAS,EAAE,OAAO,CAAC,IAAI,EACvB,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,KAAA,CAAA,aAAA,CAAC,IAAI,EAAA,EAAC,IAAI,EAAE,MAAM,EAAI,CAAA,EACjC,aAAa,EAAC,MAAM,EACpB,OAAO,EAAC,OAAO,EAAA,EAEd,KAAK,CACC;AAEb;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TriggerStyles.js","sources":["../../../../../src/components/FilterPanel/Trigger/TriggerStyles.ts"],"sourcesContent":["import { makeStyles } from '@material-ui/core'\n\nexport const useStyles = makeStyles({\n root: {\n justifySelf: 'end',\n gridArea: 'columnFilter',\n },\n})\n"],"names":[],"mappings":";;AAEO,
|
|
1
|
+
{"version":3,"file":"TriggerStyles.js","sources":["../../../../../src/components/FilterPanel/Trigger/TriggerStyles.ts"],"sourcesContent":["import { makeStyles } from '@material-ui/core'\n\nexport const useStyles = makeStyles({\n root: {\n justifySelf: 'end',\n gridArea: 'columnFilter',\n },\n})\n"],"names":[],"mappings":";;AAEO,MAAM,SAAS,GAAG,UAAU,CAAC;AAClC,IAAA,IAAI,EAAE;AACJ,QAAA,WAAW,EAAE,KAAK;AAClB,QAAA,QAAQ,EAAE,cAAc;AACzB,KAAA;AACF,CAAA;;;;"}
|
|
@@ -1,20 +1,19 @@
|
|
|
1
|
-
import { __rest, __assign } from 'tslib';
|
|
2
1
|
import React from 'react';
|
|
3
2
|
import { TextField, InputAdornment } from '@material-ui/core';
|
|
4
3
|
import { Icon } from '@popmenu/common-ui';
|
|
5
4
|
import { Search } from '@popmenu/web-icons';
|
|
6
5
|
import { useStyles } from './GlobalFilterStyles.js';
|
|
7
6
|
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
7
|
+
const GlobalFilter = (props) => {
|
|
8
|
+
const { value, setValue, ...restProps } = props;
|
|
9
|
+
const classes = useStyles();
|
|
10
|
+
const handleChange = (e) => {
|
|
12
11
|
setValue(e.target.value);
|
|
13
12
|
};
|
|
14
|
-
return (React.createElement(TextField,
|
|
13
|
+
return (React.createElement(TextField, { className: classes.root, variant: "outlined", value: value, onChange: handleChange, InputProps: {
|
|
15
14
|
startAdornment: (React.createElement(InputAdornment, { position: "start" },
|
|
16
15
|
React.createElement(Icon, { icon: Search }))),
|
|
17
|
-
}
|
|
16
|
+
}, ...restProps }));
|
|
18
17
|
};
|
|
19
18
|
|
|
20
19
|
export { GlobalFilter };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GlobalFilter.js","sources":["../../../../src/components/GlobalFilter/GlobalFilter.tsx"],"sourcesContent":["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"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"GlobalFilter.js","sources":["../../../../src/components/GlobalFilter/GlobalFilter.tsx"],"sourcesContent":["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"],"names":[],"mappings":";;;;;;AAQa,MAAA,YAAY,GAAG,CAAC,KAAwB,KAAI;IACvD,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,SAAS,EAAE,GAAG,KAAK;AAC/C,IAAA,MAAM,OAAO,GAAG,SAAS,EAAE;AAC3B,IAAA,MAAM,YAAY,GAAyC,CAAC,CAAC,KAAI;AAC/D,QAAA,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;AAC1B,KAAC;IACD,QACE,oBAAC,SAAS,EAAA,EACR,SAAS,EAAE,OAAO,CAAC,IAAI,EACvB,OAAO,EAAC,UAAU,EAClB,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,YAAY,EACtB,UAAU,EAAE;AACV,YAAA,cAAc,GACZ,KAAA,CAAA,aAAA,CAAC,cAAc,EAAC,EAAA,QAAQ,EAAC,OAAO,EAAA;AAC9B,gBAAA,KAAA,CAAA,aAAA,CAAC,IAAI,EAAC,EAAA,IAAI,EAAE,MAAM,EAAA,CAAI,CACP,CAClB;SACF,EACG,GAAA,SAAS,EACb,CAAA;AAEN;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GlobalFilterStyles.js","sources":["../../../../src/components/GlobalFilter/GlobalFilterStyles.ts"],"sourcesContent":["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"],"names":[],"mappings":";;AAEO,
|
|
1
|
+
{"version":3,"file":"GlobalFilterStyles.js","sources":["../../../../src/components/GlobalFilter/GlobalFilterStyles.ts"],"sourcesContent":["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"],"names":[],"mappings":";;AAEO,MAAM,SAAS,GAAG,UAAU,CAAC;AAClC,IAAA,IAAI,EAAE;AACJ,QAAA,WAAW,EAAE,OAAO;AACpB,QAAA,QAAQ,EAAE,GAAG;AACb,QAAA,QAAQ,EAAE,GAAG;AACb,QAAA,KAAK,EAAE,MAAM;AACb,QAAA,QAAQ,EAAE,cAAc;AACzB,KAAA;AACF,CAAA;;;;"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export { GlobalFilter } from './GlobalFilter';
|
|
2
|
-
export { GlobalFilterProps } from './GlobalFilterProps';
|
|
2
|
+
export type { GlobalFilterProps } from './GlobalFilterProps';
|
|
@@ -1,41 +1,37 @@
|
|
|
1
|
-
import { __rest, __assign } from 'tslib';
|
|
2
1
|
import React from 'react';
|
|
3
2
|
import { More } from '@popmenu/web-icons';
|
|
4
3
|
import { Box, Tooltip, IconButton, Icon, Menu, MenuItem } from '@popmenu/common-ui';
|
|
5
4
|
import { validateAction } from '../../util/validateRowAction.js';
|
|
6
5
|
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
6
|
+
const RowActions = (props) => {
|
|
7
|
+
const { context, actions } = props;
|
|
8
|
+
const validActions = actions.filter(validateAction);
|
|
9
|
+
const [anchorEl, setAnchorEl] = React.useState(null);
|
|
10
|
+
const openMenu = (event) => {
|
|
12
11
|
setAnchorEl(event.currentTarget);
|
|
13
12
|
};
|
|
14
|
-
|
|
13
|
+
const closeMenu = () => {
|
|
15
14
|
setAnchorEl(null);
|
|
16
15
|
};
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
16
|
+
const actionsCount = validActions.length;
|
|
17
|
+
let mainActions;
|
|
18
|
+
let overflowActions;
|
|
20
19
|
if (actionsCount <= 3) {
|
|
21
20
|
mainActions = validActions;
|
|
22
21
|
}
|
|
23
22
|
else {
|
|
24
|
-
|
|
23
|
+
const [firstAction, secondAction, ...restActions] = validActions;
|
|
25
24
|
mainActions = [firstAction, secondAction];
|
|
26
25
|
overflowActions = restActions;
|
|
27
26
|
}
|
|
28
27
|
return (React.createElement(Box, { display: "flex" },
|
|
29
|
-
mainActions.map(
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
React.createElement(IconButton, __assign({ size: "small", onClick: function () { return onClick(context); } }, restProps),
|
|
33
|
-
React.createElement(Icon, { icon: icon }))));
|
|
34
|
-
}),
|
|
28
|
+
mainActions.map(({ label, onClick, icon, ...restProps }) => (React.createElement(Tooltip, { title: label, key: label },
|
|
29
|
+
React.createElement(IconButton, { size: "small", onClick: () => onClick(context), ...restProps },
|
|
30
|
+
React.createElement(Icon, { icon: icon }))))),
|
|
35
31
|
overflowActions && (React.createElement(React.Fragment, null,
|
|
36
32
|
React.createElement(IconButton, { size: "small", onClick: openMenu },
|
|
37
33
|
React.createElement(Icon, { icon: More })),
|
|
38
|
-
React.createElement(Menu, { anchorEl: anchorEl, open: Boolean(anchorEl), onClose: closeMenu }, overflowActions.map(
|
|
34
|
+
React.createElement(Menu, { anchorEl: anchorEl, open: Boolean(anchorEl), onClose: closeMenu }, overflowActions.map((action) => (React.createElement(MenuItem, { key: action.label, onClick: () => action.onClick(context) }, action.label))))))));
|
|
39
35
|
};
|
|
40
36
|
|
|
41
37
|
export { RowActions };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RowActions.js","sources":["../../../../src/components/RowActions/RowActions.tsx"],"sourcesContent":["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":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"RowActions.js","sources":["../../../../src/components/RowActions/RowActions.tsx"],"sourcesContent":["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":[],"mappings":";;;;;AAOa,MAAA,UAAU,GAAG,CAAC,KAAsB,KAAI;AACnD,IAAA,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,KAAK;IAClC,MAAM,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC,cAAc,CAAC;AACnD,IAAA,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAiC,IAAI,CAAC;AACpF,IAAA,MAAM,QAAQ,GAAG,CAAC,KAAiB,KAAI;AACrC,QAAA,WAAW,CAAC,KAAK,CAAC,aAAa,CAAC;AAClC,KAAC;IACD,MAAM,SAAS,GAAG,MAAK;QACrB,WAAW,CAAC,IAAI,CAAC;AACnB,KAAC;AACD,IAAA,MAAM,YAAY,GAAG,YAAY,CAAC,MAAM;AACxC,IAAA,IAAI,WAAW;AACf,IAAA,IAAI,eAAe;AACnB,IAAA,IAAI,YAAY,IAAI,CAAC,EAAE;QACrB,WAAW,GAAG,YAAY;;SACrB;QACL,MAAM,CAAC,WAAW,EAAE,YAAY,EAAE,GAAG,WAAW,CAAC,GAAG,YAAY;AAChE,QAAA,WAAW,GAAG,CAAC,WAAW,EAAE,YAAY,CAAC;QACzC,eAAe,GAAG,WAAW;;AAG/B,IAAA,QACE,KAAC,CAAA,aAAA,CAAA,GAAG,EAAC,EAAA,OAAO,EAAC,MAAM,EAAA;QAChB,WAAW,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,SAAS,EAAE,MACtD,KAAA,CAAA,aAAA,CAAC,OAAO,EAAA,EAAC,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAA;AAC/B,YAAA,KAAA,CAAA,aAAA,CAAC,UAAU,EAAC,EAAA,IAAI,EAAC,OAAO,EAAC,OAAO,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,KAAM,SAAS,EAAA;gBACrE,KAAC,CAAA,aAAA,CAAA,IAAI,IAAC,IAAI,EAAE,IAAI,EAAI,CAAA,CACT,CACL,CACX,CAAC;AACD,QAAA,eAAe,KACd,KAAA,CAAA,aAAA,CAAA,KAAA,CAAA,QAAA,EAAA,IAAA;YACE,KAAC,CAAA,aAAA,CAAA,UAAU,IAAC,IAAI,EAAC,OAAO,EAAC,OAAO,EAAE,QAAQ,EAAA;AACxC,gBAAA,KAAA,CAAA,aAAA,CAAC,IAAI,EAAC,EAAA,IAAI,EAAE,IAAI,GAAI,CACT;YACb,KAAC,CAAA,aAAA,CAAA,IAAI,EAAC,EAAA,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,CAAC,QAAQ,CAAC,EAAE,OAAO,EAAE,SAAS,EAAA,EAClE,eAAe,CAAC,GAAG,CAAC,CAAC,MAAM,MAC1B,KAAC,CAAA,aAAA,CAAA,QAAQ,EAAC,EAAA,GAAG,EAAE,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAChE,EAAA,MAAM,CAAC,KAAK,CACJ,CACZ,CAAC,CACG,CACN,CACJ,CACG;AAEV;;;;"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export { RowActions } from './RowActions';
|
|
2
|
-
export { RowActionsProps } from './RowActionsProps';
|
|
2
|
+
export type { RowActionsProps } from './RowActionsProps';
|
|
@@ -1,3 +1,2 @@
|
|
|
1
|
-
/// <reference types="react" />
|
|
2
1
|
import { TableProps } from './TableProps';
|
|
3
2
|
export declare const Table: <T>({ title, data, columns, enableSortingRemoval, fullWidth, loading, searchable, sortable, filterState: externalFilterState, globalFilterState: externalGlobalFilterState, paginationState: externalPaginationState, sortingState: externalSortingState, visibilityState: externalVisibilityState, paginated, pageCount, GlobalFilterProps, Empty, idBase, stageFilterSelections, }: TableProps<T>) => JSX.Element;
|
|
@@ -1,84 +1,104 @@
|
|
|
1
|
-
import { __assign } from 'tslib';
|
|
2
|
-
import React, { useRef, isValidElement, createElement } from 'react';
|
|
3
1
|
import { Typography } from '@material-ui/core';
|
|
4
2
|
import { Pagination } from '@material-ui/lab';
|
|
5
3
|
import { Box, CircularProgress } from '@popmenu/common-ui';
|
|
6
|
-
import { useReactTable, getFilteredRowModel, getSortedRowModel, getCoreRowModel,
|
|
7
|
-
import {
|
|
8
|
-
import { TableCell } from '../TableCell/TableCell.js';
|
|
9
|
-
import { TableBody } from '../TableBody/TableBody.js';
|
|
10
|
-
import { useStyles } from './TableStyles.js';
|
|
11
|
-
import { TableHeader } from '../TableHeader/TableHeader.js';
|
|
12
|
-
import { TableFooter } from '../TableFooter/TableFooter.js';
|
|
13
|
-
import { FilterPanel } from '../FilterPanel/FilterPanel.js';
|
|
14
|
-
import { TableContext } from '../TableContext/index.js';
|
|
15
|
-
import { GlobalFilter } from '../GlobalFilter/GlobalFilter.js';
|
|
16
|
-
import { TableHeaderRow } from '../TableHeaderRow/TableHeaderRow.js';
|
|
17
|
-
import { TableHeaderCell } from '../TableHeaderCell/TableHeaderCell.js';
|
|
4
|
+
import { useReactTable, getPaginationRowModel, getFilteredRowModel, getSortedRowModel, getCoreRowModel, flexRender } from '@tanstack/react-table';
|
|
5
|
+
import React, { useRef, isValidElement, createElement } from 'react';
|
|
18
6
|
import { useColumnFilters } from '../../hooks/useColumnFilters.js';
|
|
19
7
|
import { useStagedColumnFilters } from '../../hooks/useStagedColumnFilters.js';
|
|
20
|
-
import { ColumnFilterChip } from '../ColumnFilterChip/ColumnFilterChip.js';
|
|
21
|
-
import { TableControlsContainer } from '../TableControlsContainer/TableControlsContainer.js';
|
|
22
|
-
import { ColumnFilterResetButton } from '../ColumnFilterResetButton/ColumnFilterResetButton.js';
|
|
23
8
|
import { coercedValueIncludesString } from '../../util/coercedValueIncludesString.js';
|
|
24
9
|
import { getTableMinHeight } from '../../util/getTableMinHeight.js';
|
|
10
|
+
import { ColumnFilterChip } from '../ColumnFilterChip/ColumnFilterChip.js';
|
|
11
|
+
import { ColumnFilterResetButton } from '../ColumnFilterResetButton/ColumnFilterResetButton.js';
|
|
12
|
+
import { FilterPanel } from '../FilterPanel/FilterPanel.js';
|
|
13
|
+
import { GlobalFilter } from '../GlobalFilter/GlobalFilter.js';
|
|
14
|
+
import { TableBody } from '../TableBody/TableBody.js';
|
|
15
|
+
import { TableCell } from '../TableCell/TableCell.js';
|
|
16
|
+
import { TableContext } from '../TableContext/index.js';
|
|
17
|
+
import { TableControlsContainer } from '../TableControlsContainer/TableControlsContainer.js';
|
|
18
|
+
import { TableFooter } from '../TableFooter/TableFooter.js';
|
|
19
|
+
import { TableHeader } from '../TableHeader/TableHeader.js';
|
|
20
|
+
import { TableHeaderCell } from '../TableHeaderCell/TableHeaderCell.js';
|
|
21
|
+
import { TableHeaderRow } from '../TableHeaderRow/TableHeaderRow.js';
|
|
22
|
+
import { TableRow } from '../TableRow/TableRow.js';
|
|
23
|
+
import { useStyles } from './TableStyles.js';
|
|
25
24
|
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
var rootRef = useRef(null);
|
|
25
|
+
const Table = ({ title, data, columns, enableSortingRemoval = true, fullWidth = true, loading, searchable = false, sortable = false, filterState: externalFilterState, globalFilterState: externalGlobalFilterState, paginationState: externalPaginationState, sortingState: externalSortingState, visibilityState: externalVisibilityState, paginated = true, pageCount, GlobalFilterProps, Empty, idBase, stageFilterSelections, }) => {
|
|
26
|
+
const classes = useStyles({ fullWidth });
|
|
27
|
+
const rootRef = useRef(null);
|
|
30
28
|
// Prepare Empty State
|
|
31
|
-
|
|
32
|
-
|
|
29
|
+
const isEmpty = data.length === 0;
|
|
30
|
+
const isEmptyComponentValid = Empty && isValidElement(createElement(Empty));
|
|
33
31
|
// Prepare Sorting
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
32
|
+
const [sorting, setSorting] = externalSortingState || [];
|
|
33
|
+
const isControlledColumnSort = Boolean(externalSortingState);
|
|
34
|
+
const controlledColumnSortOptions = { onSortingChange: setSorting, manualSorting: true };
|
|
37
35
|
// Prepare Global Filtering
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
36
|
+
const [globalFilter, setGlobalFilter] = externalGlobalFilterState || [];
|
|
37
|
+
const isControlledGlobalFilter = Boolean(externalGlobalFilterState);
|
|
38
|
+
const controlledGlobalFilterOptions = { onGlobalFilterChange: setGlobalFilter, manualFiltering: true };
|
|
41
39
|
// Prepare ColumnFiltering
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
40
|
+
const [columnFilters, setColumnFilters] = externalFilterState || [];
|
|
41
|
+
const isControlledColumnFilters = Boolean(externalFilterState);
|
|
42
|
+
const controlledColumnFiltersOptions = { onColumnFiltersChange: setColumnFilters, manualFiltering: true };
|
|
45
43
|
// Prepare Pagination
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
44
|
+
const [pagination, setPagination] = externalPaginationState || [];
|
|
45
|
+
const isControlledPagination = Boolean(externalPaginationState && pageCount);
|
|
46
|
+
const controlledPaginationOptions = { manualPagination: true, onPaginationChange: setPagination, pageCount };
|
|
49
47
|
// Prepare Column Visibility
|
|
50
|
-
|
|
51
|
-
|
|
48
|
+
const [columnVisibility] = externalVisibilityState || [];
|
|
49
|
+
const isControlledColumnVisibility = Boolean(externalVisibilityState);
|
|
52
50
|
// Init table instance
|
|
53
|
-
|
|
54
|
-
|
|
51
|
+
const table = useReactTable({
|
|
52
|
+
data,
|
|
53
|
+
columns,
|
|
54
|
+
state: {
|
|
55
|
+
...(isControlledPagination && { pagination }),
|
|
56
|
+
...(isControlledGlobalFilter && { globalFilter }),
|
|
57
|
+
...(isControlledColumnFilters && { columnFilters }),
|
|
58
|
+
...(isControlledColumnVisibility && { columnVisibility }),
|
|
59
|
+
...(isControlledColumnSort && { sorting }),
|
|
60
|
+
},
|
|
61
|
+
enableSorting: sortable,
|
|
62
|
+
enableSortingRemoval,
|
|
63
|
+
globalFilterFn: coercedValueIncludesString,
|
|
64
|
+
getCoreRowModel: getCoreRowModel(),
|
|
65
|
+
getSortedRowModel: getSortedRowModel(),
|
|
66
|
+
getFilteredRowModel: getFilteredRowModel(),
|
|
67
|
+
...(paginated && { getPaginationRowModel: getPaginationRowModel() }),
|
|
68
|
+
...(isControlledPagination && controlledPaginationOptions),
|
|
69
|
+
...(isControlledGlobalFilter && controlledGlobalFilterOptions),
|
|
70
|
+
...(isControlledColumnFilters && controlledColumnFiltersOptions),
|
|
71
|
+
...(isControlledColumnSort && controlledColumnSortOptions),
|
|
72
|
+
meta: { idBase: idBase },
|
|
73
|
+
});
|
|
74
|
+
const { selectedColumnFilters, hasColumnFilters, deselectColumnFilter, formatSelectedFilterText, resetColumnFilters, } = useColumnFilters(table);
|
|
55
75
|
// stagedColumnFilters is only used when stageFilterSelections is enabled
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
76
|
+
const stagedColumnFilters = useStagedColumnFilters(selectedColumnFilters);
|
|
77
|
+
const handlePagination = (_e, pageNumber) => {
|
|
78
|
+
const pageIndex = pageNumber - 1;
|
|
59
79
|
table.setPageIndex(pageIndex);
|
|
60
80
|
};
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
return (React.createElement(TableContext.Provider, { value: { table
|
|
66
|
-
React.createElement(Box,
|
|
67
|
-
|
|
68
|
-
|
|
81
|
+
const showTitle = Boolean(title);
|
|
82
|
+
const showGlobalSearch = Boolean(searchable || isControlledGlobalFilter);
|
|
83
|
+
const showColumnFilter = Boolean(hasColumnFilters);
|
|
84
|
+
const showControls = Boolean(showTitle || showGlobalSearch || showColumnFilter);
|
|
85
|
+
return (React.createElement(TableContext.Provider, { value: { table, stagedColumnFilters, stageFilterSelections } },
|
|
86
|
+
React.createElement(Box, { className: classes.root, ref: rootRef, "data-table-element": "root", ...(table.getPageCount() > 1 && {
|
|
87
|
+
minHeight: getTableMinHeight(rootRef, table.getState().pagination.pageSize),
|
|
88
|
+
}) },
|
|
69
89
|
showControls && (React.createElement(Box, null,
|
|
70
90
|
React.createElement(TableControlsContainer, { showTitle: showTitle, showGlobalSearch: showGlobalSearch, showColumnFilter: showColumnFilter },
|
|
71
91
|
showTitle && (React.createElement(Typography, { style: { gridArea: 'title', alignSelf: 'center', fontSize: '18px', lineHeight: '27px' } }, title)),
|
|
72
|
-
showGlobalSearch && (React.createElement(GlobalFilter,
|
|
92
|
+
showGlobalSearch && (React.createElement(GlobalFilter, { ...GlobalFilterProps, value: table.getState().globalFilter, setValue: table.setGlobalFilter })),
|
|
73
93
|
showColumnFilter && React.createElement(FilterPanel, null)),
|
|
74
94
|
React.createElement(Box, { display: "flex", flexWrap: "wrap", gridGap: 8 },
|
|
75
|
-
selectedColumnFilters.map(
|
|
95
|
+
selectedColumnFilters.map((selectedColumnFilter, i) => (React.createElement(ColumnFilterChip, { key: `selected-column-filter-chip-${i}`, columnFilter: selectedColumnFilter, label: formatSelectedFilterText(selectedColumnFilter), onClick: (columnFilter) => {
|
|
76
96
|
if (stageFilterSelections) {
|
|
77
97
|
stagedColumnFilters.delete(columnFilter);
|
|
78
98
|
}
|
|
79
99
|
deselectColumnFilter(columnFilter);
|
|
80
|
-
} }))
|
|
81
|
-
selectedColumnFilters.length >= 1 && (React.createElement(ColumnFilterResetButton, { onClick:
|
|
100
|
+
} }))),
|
|
101
|
+
selectedColumnFilters.length >= 1 && (React.createElement(ColumnFilterResetButton, { onClick: () => {
|
|
82
102
|
if (stageFilterSelections) {
|
|
83
103
|
stagedColumnFilters.clear();
|
|
84
104
|
}
|
|
@@ -86,8 +106,8 @@ var Table = function (_a) {
|
|
|
86
106
|
} }))))),
|
|
87
107
|
React.createElement(Box, { className: classes.tableContainer, flexGrow: loading || isEmpty ? 0 : 1 },
|
|
88
108
|
React.createElement("table", { className: classes.table },
|
|
89
|
-
React.createElement(TableHeader, null, table.getHeaderGroups().map(
|
|
90
|
-
!loading && (React.createElement(TableBody, null, table.getRowModel().rows.map(
|
|
109
|
+
React.createElement(TableHeader, null, table.getHeaderGroups().map((headerGroup) => (React.createElement(TableHeaderRow, { key: headerGroup.id }, headerGroup.headers.map((header) => (React.createElement(TableHeaderCell, { key: header.id, context: header.getContext() }, flexRender(header.column.columnDef.header, header.getContext())))))))),
|
|
110
|
+
!loading && (React.createElement(TableBody, null, table.getRowModel().rows.map((row) => (React.createElement(TableRow, { key: row.id }, row.getVisibleCells().map((cell) => (React.createElement(TableCell, { key: cell.id }, flexRender(cell.column.columnDef.cell, cell.getContext()))))))))))),
|
|
91
111
|
isEmpty && isEmptyComponentValid && Empty && !loading && (React.createElement(Box, { display: "flex", flexDirection: "column", justifyContent: "center", alignItems: "center", p: 2, flexGrow: 1 }, createElement(Empty))),
|
|
92
112
|
loading && (React.createElement(Box, { display: "flex", flexDirection: "column", justifyContent: "center", alignItems: "center", p: 2, flexGrow: 1 },
|
|
93
113
|
React.createElement(CircularProgress, { size: 80, color: "inherit" }))),
|