@mailstep/design-system 0.6.89-beta.3 → 0.6.90

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.
Files changed (35) hide show
  1. package/package.json +2 -1
  2. package/ui/Blocks/CommonGrid/CommonGridContainer.js +11 -11
  3. package/ui/Blocks/CommonGrid/HoC/withReduxActions.js +2 -1
  4. package/ui/Blocks/CommonGrid/components/ControlButtons/ControlButtons.d.ts +5 -1
  5. package/ui/Blocks/CommonGrid/components/ControlButtons/ControlButtons.js +19 -6
  6. package/ui/Blocks/CommonGrid/components/GridModals/index.d.ts +22 -0
  7. package/ui/Blocks/CommonGrid/components/GridModals/index.js +27 -0
  8. package/ui/Blocks/CommonGrid/components/HeadCell.d.ts +1 -1
  9. package/ui/Blocks/CommonGrid/components/HeadCell.js +6 -4
  10. package/ui/Blocks/CommonGrid/components/HeadRow.d.ts +1 -1
  11. package/ui/Blocks/CommonGrid/components/HeadRow.js +4 -4
  12. package/ui/Blocks/CommonGrid/components/ManageColumnForm/ManageColumnForm.d.ts +2 -2
  13. package/ui/Blocks/CommonGrid/components/ManageColumnForm/ManageColumnForm.js +4 -4
  14. package/ui/Blocks/CommonGrid/components/PresetsModalBody/index.d.ts +16 -0
  15. package/ui/Blocks/CommonGrid/components/PresetsModalBody/index.js +31 -0
  16. package/ui/Blocks/CommonGrid/hooks/useCreatePreset.d.ts +19 -0
  17. package/ui/Blocks/CommonGrid/hooks/useCreatePreset.js +52 -0
  18. package/ui/Blocks/CommonGrid/hooks/useDeletePreset.d.ts +17 -0
  19. package/ui/Blocks/CommonGrid/hooks/useDeletePreset.js +45 -0
  20. package/ui/Blocks/CommonGrid/hooks/usePresetFileHandlers.d.ts +13 -0
  21. package/ui/Blocks/CommonGrid/hooks/usePresetFileHandlers.js +68 -0
  22. package/ui/Blocks/CommonGrid/hooks/usePresetsState.d.ts +9 -0
  23. package/ui/Blocks/CommonGrid/hooks/usePresetsState.js +13 -0
  24. package/ui/Blocks/CommonGrid/hooks/useSelectPreset.d.ts +15 -0
  25. package/ui/Blocks/CommonGrid/hooks/useSelectPreset.js +47 -0
  26. package/ui/Blocks/CommonGrid/store/index.d.ts +3 -1
  27. package/ui/Blocks/CommonGrid/store/index.js +89 -89
  28. package/ui/Blocks/CommonGrid/storybook/stories/complexWithPaginationAndRedux.stories.js +1 -1
  29. package/ui/Blocks/CommonGrid/types.d.ts +3 -0
  30. package/ui/Blocks/CommonGrid/utils/constants.d.ts +1 -0
  31. package/ui/Blocks/CommonGrid/utils/constants.js +1 -0
  32. package/ui/Elements/Tag/palletes.js +3 -0
  33. package/ui/index.es.js +18170 -17343
  34. package/ui/index.umd.js +776 -776
  35. package/ui/utils/translations.js +1 -1
@@ -0,0 +1,68 @@
1
+ var __assign = (this && this.__assign) || function () {
2
+ __assign = Object.assign || function(t) {
3
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
4
+ s = arguments[i];
5
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
+ t[p] = s[p];
7
+ }
8
+ return t;
9
+ };
10
+ return __assign.apply(this, arguments);
11
+ };
12
+ import { useRef, useCallback } from 'react';
13
+ import { presetsLocalStorageKey } from '../utils/constants';
14
+ export var usePresetFileHandlers = function (_a) {
15
+ var gridName = _a.gridName, setGridPresets = _a.setGridPresets;
16
+ var fileInputRef = useRef(null);
17
+ var handleExportPresets = useCallback(function () {
18
+ if (!gridName)
19
+ return;
20
+ var presetsAsString = localStorage.getItem(presetsLocalStorageKey);
21
+ var presets = presetsAsString ? JSON.parse(presetsAsString) : {};
22
+ var blob = new Blob([JSON.stringify(presets[gridName], null, 2)], {
23
+ type: 'application/json'
24
+ });
25
+ var link = document.createElement('a');
26
+ link.href = URL.createObjectURL(blob);
27
+ link.download = "".concat(gridName, "Presets.json");
28
+ document.body.appendChild(link);
29
+ link.click();
30
+ document.body.removeChild(link);
31
+ }, [gridName]);
32
+ var handleImportPresets = useCallback(function (event) {
33
+ var _a;
34
+ if (!gridName)
35
+ return;
36
+ var file = (_a = event.target.files) === null || _a === void 0 ? void 0 : _a[0];
37
+ if (!file)
38
+ return;
39
+ var reader = new FileReader();
40
+ reader.readAsText(file);
41
+ reader.onload = function (e) {
42
+ var _a;
43
+ var _b;
44
+ try {
45
+ var fileContent = JSON.parse((_b = e.target) === null || _b === void 0 ? void 0 : _b.result);
46
+ var presetsAsString = localStorage.getItem(presetsLocalStorageKey);
47
+ var presets = presetsAsString ? JSON.parse(presetsAsString) : {};
48
+ var newPresets = JSON.stringify(__assign(__assign({}, presets), (_a = {}, _a[gridName] = fileContent, _a)));
49
+ localStorage.setItem(presetsLocalStorageKey, newPresets);
50
+ setGridPresets(fileContent);
51
+ }
52
+ catch (error) {
53
+ console.warn('Error parsing JSON file:', error);
54
+ alert('The uploaded file is not a valid JSON.');
55
+ }
56
+ };
57
+ }, [gridName]);
58
+ var handleImportButtonClick = useCallback(function () {
59
+ var _a;
60
+ (_a = fileInputRef.current) === null || _a === void 0 ? void 0 : _a.click();
61
+ }, []);
62
+ return {
63
+ fileInputRef: fileInputRef,
64
+ handleImportPresets: handleImportPresets,
65
+ handleExportPresets: handleExportPresets,
66
+ handleImportButtonClick: handleImportButtonClick
67
+ };
68
+ };
@@ -0,0 +1,9 @@
1
+ type HookType = () => {
2
+ isPresetsModalOpen: boolean;
3
+ onOpenPresetsModal: () => void;
4
+ onClosePresetsModal: () => void;
5
+ selectedPresetName: string;
6
+ setSelectedPresetName: (name: string) => void;
7
+ };
8
+ export declare const usePresetState: HookType;
9
+ export {};
@@ -0,0 +1,13 @@
1
+ import { useState } from 'react';
2
+ import { useModal } from '../../Modal/hooks/useModal';
3
+ export var usePresetState = function () {
4
+ var _a = useModal(), isPresetsModalOpen = _a.isOpen, onOpenPresetsModal = _a.onOpen, onClosePresetsModal = _a.onClose;
5
+ var _b = useState(''), selectedPresetName = _b[0], setSelectedPresetName = _b[1];
6
+ return {
7
+ isPresetsModalOpen: isPresetsModalOpen,
8
+ onOpenPresetsModal: onOpenPresetsModal,
9
+ onClosePresetsModal: onClosePresetsModal,
10
+ selectedPresetName: selectedPresetName,
11
+ setSelectedPresetName: setSelectedPresetName
12
+ };
13
+ };
@@ -0,0 +1,15 @@
1
+ import { Filtering, GridActionsType } from '../types';
2
+ type Props = {
3
+ gridName?: string;
4
+ gridActions: GridActionsType;
5
+ setSelectedPresetName: (value: string) => void;
6
+ onClosePresetsModal: () => void;
7
+ filters?: Filtering;
8
+ };
9
+ type HookType = (props: Props) => {
10
+ gridPresets: Record<string, Filtering>;
11
+ handleSelectPreset: (presetName: string, filters: Filtering) => () => void;
12
+ setGridPresets: (data: Record<string, Filtering>) => void;
13
+ };
14
+ export declare const useSelectPreset: HookType;
15
+ export {};
@@ -0,0 +1,47 @@
1
+ import { useCallback, useEffect, useState } from 'react';
2
+ import { isEqual } from 'lodash';
3
+ import { presetsLocalStorageKey } from '../utils/constants';
4
+ var getInitialPresets = function (gridName) {
5
+ var _a;
6
+ if (!gridName)
7
+ return {};
8
+ try {
9
+ var presetsAsString = localStorage.getItem(presetsLocalStorageKey);
10
+ var presets = presetsAsString ? JSON.parse(presetsAsString) : {};
11
+ return gridName ? (_a = presets[gridName]) !== null && _a !== void 0 ? _a : {} : {};
12
+ }
13
+ catch (error) {
14
+ console.error('Error parsing JSON file:', error);
15
+ }
16
+ };
17
+ export var useSelectPreset = function (_a) {
18
+ var gridName = _a.gridName, gridActions = _a.gridActions, setSelectedPresetName = _a.setSelectedPresetName, onClosePresetsModal = _a.onClosePresetsModal, filters = _a.filters;
19
+ var _b = useState(false), isFilterChangeFromButton = _b[0], setIsFilterChangeFromButton = _b[1];
20
+ var _c = useState(getInitialPresets(gridName)), gridPresets = _c[0], setGridPresets = _c[1];
21
+ var handleSelectPreset = useCallback(function (presetName, filters) { return function () {
22
+ var _a;
23
+ setSelectedPresetName(presetName);
24
+ (_a = gridActions.setFilters) === null || _a === void 0 ? void 0 : _a.call(gridActions, filters);
25
+ onClosePresetsModal();
26
+ setIsFilterChangeFromButton(true);
27
+ }; }, [gridActions]);
28
+ useEffect(function () {
29
+ if (!isFilterChangeFromButton) {
30
+ setSelectedPresetName('');
31
+ }
32
+ setIsFilterChangeFromButton(false);
33
+ }, [filters]);
34
+ useEffect(function () {
35
+ var _a;
36
+ if (!gridName || !gridPresets)
37
+ return;
38
+ var activePreset = (_a = Object.entries(gridPresets)) === null || _a === void 0 ? void 0 : _a.find(function (_a) {
39
+ var presetName = _a[0], presetFilters = _a[1];
40
+ return isEqual(presetFilters, filters);
41
+ });
42
+ if (activePreset) {
43
+ setSelectedPresetName(activePreset[0]);
44
+ }
45
+ }, []);
46
+ return { gridPresets: gridPresets, setGridPresets: setGridPresets, handleSelectPreset: handleSelectPreset };
47
+ };
@@ -1,4 +1,4 @@
1
- import { FilterProps, SortingValueType, InitProps, GridState, GridSelectorsType, ColumnConfig } from '../types';
1
+ import { FilterProps, SortingValueType, InitProps, GridState, GridSelectorsType, ColumnConfig, Filtering } from '../types';
2
2
  type DefaultRootState = {};
3
3
  export type MultiState = {
4
4
  [key: string]: GridState;
@@ -16,6 +16,7 @@ export declare const actionTypes: {
16
16
  setRowsPerPage: string;
17
17
  resetFilters: string;
18
18
  addFilter: string;
19
+ setFilters: string;
19
20
  addSorting: string;
20
21
  clearSettings: string;
21
22
  resetGrid: string;
@@ -40,6 +41,7 @@ export declare const createActions: (gridName: string) => {
40
41
  setRowsPerPage: (rowsPerPage: number) => Action;
41
42
  resetFilters: () => Action;
42
43
  addFilter: (column: string, value: any, filterProps: FilterProps) => Action;
44
+ setFilters: (filters: Filtering) => Action;
43
45
  addSorting: (column: string, direction: SortingValueType) => Action;
44
46
  clearSettings: () => Action;
45
47
  };
@@ -10,9 +10,9 @@ var __assign = (this && this.__assign) || function () {
10
10
  return __assign.apply(this, arguments);
11
11
  };
12
12
  import produce from 'immer';
13
+ import { createSelector } from 'reselect';
13
14
  import getOr from 'lodash/fp/getOr';
14
15
  import migrateState from './migrateState';
15
- import { createSelector } from 'reselect';
16
16
  export var initialState = {
17
17
  page: 1,
18
18
  rowsPerPage: 10,
@@ -20,13 +20,13 @@ export var initialState = {
20
20
  isConfigFormOpen: false,
21
21
  uxState: {
22
22
  selectedRow: null,
23
- checkedRows: {},
23
+ checkedRows: {}
24
24
  },
25
25
  columnConfig: {},
26
26
  filter: {},
27
27
  columnsWidth: {},
28
28
  columnsOrder: [],
29
- defaultSorting: [],
29
+ defaultSorting: []
30
30
  };
31
31
  export var actionPrefix = '@store/CommonGrid';
32
32
  export var actionTypes = {
@@ -40,11 +40,12 @@ export var actionTypes = {
40
40
  setRowsPerPage: "".concat(actionPrefix, "/setRowsPerPage"),
41
41
  resetFilters: "".concat(actionPrefix, "/resetFilters"),
42
42
  addFilter: "".concat(actionPrefix, "/addFilter"),
43
+ setFilters: "".concat(actionPrefix, "/setFilters"),
43
44
  addSorting: "".concat(actionPrefix, "/addSorting"),
44
45
  clearSettings: "".concat(actionPrefix, "/clearSettings"),
45
46
  resetGrid: "".concat(actionPrefix, "/resetGrid"),
46
47
  setColumnWidth: "".concat(actionPrefix, "/setColumnWidth"),
47
- setColumnsOrder: "".concat(actionPrefix, "/setColumnsOrder"),
48
+ setColumnsOrder: "".concat(actionPrefix, "/setColumnsOrder")
48
49
  };
49
50
  var migrationChecked = false;
50
51
  export default (function (state, action) {
@@ -64,81 +65,81 @@ export default (function (state, action) {
64
65
  // if this grid is not yet in store, initialize
65
66
  draft[gridName] = __assign({}, initialState);
66
67
  }
67
- if (action.type === actionTypes.init) {
68
- var defaultSorting = action.initProps.defaultSorting;
69
- draft[gridName].page = 1;
70
- if (defaultSorting) {
71
- draft[gridName].defaultSorting = defaultSorting;
72
- draft[gridName].sorting = ((_c = draft[gridName].sorting) === null || _c === void 0 ? void 0 : _c.length) ? draft[gridName].sorting : defaultSorting;
73
- }
74
- }
75
- else if (action.type === actionTypes.clearUxState) {
76
- draft[gridName].uxState = initialState.uxState;
77
- }
78
- else if (action.type === actionTypes.handleUxChange) {
79
- // for a specific row id (action.id) append uxState from action
80
- draft[gridName].uxState = __assign(__assign({}, draft[gridName].uxState), (_a = {}, _a[action.uxKey] = action.uxValue, _a));
81
- }
82
- else if (action.type === actionTypes.openConfigForm) {
83
- draft[gridName].isConfigFormOpen = true;
84
- }
85
- else if (action.type === actionTypes.closeConfigForm) {
86
- draft[gridName].isConfigFormOpen = false;
87
- }
88
- else if (action.type === actionTypes.setColumnConfig) {
89
- draft[gridName].columnConfig = action.columnConfig;
90
- draft[gridName].isConfigFormOpen = false;
91
- }
92
- else if (action.type === actionTypes.resetFilters) {
93
- draft[gridName].filter = {};
94
- }
95
- else if (action.type === actionTypes.addFilter) {
96
- // append desired filter for specific column to existing filters
97
- var column = action.column, value = action.value, filterProps = action.filterProps;
98
- var currentFilterState = (_b = {}, _b[column] = { value: value, filterProps: filterProps }, _b);
99
- draft[gridName].filter = __assign(__assign({}, draft[gridName].filter), currentFilterState);
100
- draft[gridName].page = 1;
101
- }
102
- else if (action.type === actionTypes.addSorting) {
103
- // append desired sorting for specific column to existing sortings
104
- var direction = action.direction;
105
- var column = action.column;
106
- if (((_f = (_e = (_d = draft[gridName]) === null || _d === void 0 ? void 0 : _d.defaultSorting) === null || _e === void 0 ? void 0 : _e[0]) === null || _f === void 0 ? void 0 : _f.column) === column && direction === null) {
107
- // default column cannot unset itself. it would be stuck on 'desc'
108
- direction = 'asc';
109
- }
110
- var sorting = [{ column: column, direction: direction }];
111
- if (direction === null) {
112
- sorting = ((_g = draft[gridName]) === null || _g === void 0 ? void 0 : _g.defaultSorting) || [];
113
- }
114
- draft[gridName].sorting = sorting;
115
- }
116
- else if (action.type === actionTypes.clearSettings) {
117
- // clear grid for reuse
118
- draft[gridName].page = initialState.page;
119
- draft[gridName].filter = initialState.filter;
120
- draft[gridName].uxState = initialState.uxState;
121
- }
122
- else if (action.type === actionTypes.setPage) {
123
- draft[gridName].page = action.page;
124
- }
125
- else if (action.type === actionTypes.setRowsPerPage) {
126
- draft[gridName].rowsPerPage = action.rowsPerPage;
127
- }
128
- else if (action.type === actionTypes.resetGrid) {
129
- draft[gridName] = __assign(__assign({}, initialState), { rowsPerPage: draft[gridName].rowsPerPage });
130
- }
131
- else if (action.type === actionTypes.setColumnWidth) {
132
- if (action.columnsWidth === null) {
133
- draft[gridName].columnsWidth = initialState.columnsWidth;
134
- }
135
- else {
136
- draft[gridName].columnsWidth = __assign(__assign({}, draft[gridName].columnsWidth), action.columnsWidth);
137
- }
138
- draft[gridName].columnsWidthVariant = action.columnLayout;
139
- }
140
- else if (action.type === actionTypes.setColumnsOrder) {
141
- draft[gridName].columnsOrder = action.columnsOrder;
68
+ switch (action.type) {
69
+ case actionTypes.init:
70
+ var defaultSorting = action.initProps.defaultSorting;
71
+ draft[gridName].page = 1;
72
+ if (defaultSorting) {
73
+ draft[gridName].defaultSorting = defaultSorting;
74
+ draft[gridName].sorting = ((_c = draft[gridName].sorting) === null || _c === void 0 ? void 0 : _c.length) ? draft[gridName].sorting : defaultSorting;
75
+ }
76
+ break;
77
+ case actionTypes.clearUxState:
78
+ draft[gridName].uxState = initialState.uxState;
79
+ break;
80
+ case actionTypes.handleUxChange:
81
+ draft[gridName].uxState = __assign(__assign({}, draft[gridName].uxState), (_a = {}, _a[action.uxKey] = action.uxValue, _a));
82
+ break;
83
+ case actionTypes.openConfigForm:
84
+ draft[gridName].isConfigFormOpen = true;
85
+ break;
86
+ case actionTypes.closeConfigForm:
87
+ draft[gridName].isConfigFormOpen = false;
88
+ break;
89
+ case actionTypes.setColumnConfig:
90
+ draft[gridName].columnConfig = action.columnConfig;
91
+ draft[gridName].isConfigFormOpen = false;
92
+ break;
93
+ case actionTypes.resetFilters:
94
+ draft[gridName].filter = action.filters;
95
+ break;
96
+ case actionTypes.addFilter:
97
+ var column = action.column, value = action.value, filterProps = action.filterProps;
98
+ var currentFilterState = (_b = {}, _b[column] = { value: value, filterProps: filterProps }, _b);
99
+ draft[gridName].filter = __assign(__assign({}, draft[gridName].filter), currentFilterState);
100
+ draft[gridName].page = 1;
101
+ break;
102
+ case actionTypes.setFilters:
103
+ draft[gridName].filter = action.filters;
104
+ break;
105
+ case actionTypes.addSorting:
106
+ var direction = action.direction;
107
+ var sortingColumn = action.column;
108
+ if (((_f = (_e = (_d = draft[gridName]) === null || _d === void 0 ? void 0 : _d.defaultSorting) === null || _e === void 0 ? void 0 : _e[0]) === null || _f === void 0 ? void 0 : _f.column) === sortingColumn && direction === null) {
109
+ direction = 'asc';
110
+ }
111
+ var sorting = [{ column: sortingColumn, direction: direction }];
112
+ if (direction === null) {
113
+ sorting = ((_g = draft[gridName]) === null || _g === void 0 ? void 0 : _g.defaultSorting) || [];
114
+ }
115
+ draft[gridName].sorting = sorting;
116
+ break;
117
+ case actionTypes.clearSettings:
118
+ draft[gridName].page = initialState.page;
119
+ draft[gridName].filter = initialState.filter;
120
+ draft[gridName].uxState = initialState.uxState;
121
+ break;
122
+ case actionTypes.setPage:
123
+ draft[gridName].page = action.page;
124
+ break;
125
+ case actionTypes.setRowsPerPage:
126
+ draft[gridName].rowsPerPage = action.rowsPerPage;
127
+ break;
128
+ case actionTypes.resetGrid:
129
+ draft[gridName] = __assign(__assign({}, initialState), { rowsPerPage: draft[gridName].rowsPerPage });
130
+ break;
131
+ case actionTypes.setColumnWidth:
132
+ if (action.columnsWidth === null) {
133
+ draft[gridName].columnsWidth = initialState.columnsWidth;
134
+ }
135
+ else {
136
+ draft[gridName].columnsWidth = __assign(__assign({}, draft[gridName].columnsWidth), action.columnsWidth);
137
+ }
138
+ draft[gridName].columnsWidthVariant = action.columnLayout;
139
+ break;
140
+ case actionTypes.setColumnsOrder:
141
+ draft[gridName].columnsOrder = action.columnsOrder;
142
+ break;
142
143
  }
143
144
  return draft;
144
145
  });
@@ -150,7 +151,7 @@ export var createActions = function (gridName) { return ({
150
151
  gridName: gridName,
151
152
  type: actionTypes.handleUxChange,
152
153
  uxKey: uxKey,
153
- uxValue: uxValue,
154
+ uxValue: uxValue
154
155
  }); },
155
156
  openConfigForm: function () { return ({ gridName: gridName, type: actionTypes.openConfigForm }); },
156
157
  closeConfigForm: function () { return ({ gridName: gridName, type: actionTypes.closeConfigForm }); },
@@ -160,13 +161,13 @@ export var createActions = function (gridName) { return ({
160
161
  gridName: gridName,
161
162
  type: actionTypes.setColumnWidth,
162
163
  columnsWidth: columnsWidth,
163
- columnLayout: columnLayout,
164
+ columnLayout: columnLayout
164
165
  }); },
165
166
  resetGrid: function () { return ({ gridName: gridName, type: actionTypes.resetGrid }); },
166
167
  setColumnsOrder: function (columnsOrder) { return ({
167
168
  gridName: gridName,
168
169
  type: actionTypes.setColumnsOrder,
169
- columnsOrder: columnsOrder,
170
+ columnsOrder: columnsOrder
170
171
  }); },
171
172
  setRowsPerPage: function (rowsPerPage) { return ({ gridName: gridName, type: actionTypes.setRowsPerPage, rowsPerPage: rowsPerPage }); },
172
173
  resetFilters: function () { return ({ gridName: gridName, type: actionTypes.resetFilters }); },
@@ -175,15 +176,16 @@ export var createActions = function (gridName) { return ({
175
176
  type: actionTypes.addFilter,
176
177
  column: column,
177
178
  value: value,
178
- filterProps: filterProps,
179
+ filterProps: filterProps
179
180
  }); },
181
+ setFilters: function (filters) { return ({ gridName: gridName, type: actionTypes.setFilters, filters: filters }); },
180
182
  addSorting: function (column, direction) { return ({
181
183
  gridName: gridName,
182
184
  type: actionTypes.addSorting,
183
185
  column: column,
184
- direction: direction,
186
+ direction: direction
185
187
  }); },
186
- clearSettings: function () { return ({ gridName: gridName, type: actionTypes.clearSettings }); },
188
+ clearSettings: function () { return ({ gridName: gridName, type: actionTypes.clearSettings }); }
187
189
  }); };
188
190
  export var createSelectors = function (gridName) { return ({
189
191
  getUxState: function (state) {
@@ -209,9 +211,7 @@ export var createSelectors = function (gridName) { return ({
209
211
  getColumnsWidthVariant: function (state) {
210
212
  return getOr(undefined, "commonGrid.".concat(gridName, ".columnsWidthVariant"), state);
211
213
  },
212
- getColumnsOrder: function (state) {
213
- return getOr([], "commonGrid.".concat(gridName, ".columnsOrder"), state);
214
- },
214
+ getColumnsOrder: function (state) { return getOr([], "commonGrid.".concat(gridName, ".columnsOrder"), state); }
215
215
  }); };
216
216
  export var createFullSelector = function (gridName) {
217
217
  var selectors = createSelectors(gridName);
@@ -225,6 +225,6 @@ export var createFullSelector = function (gridName) {
225
225
  sorting: sorting,
226
226
  columnsWidth: columnsWidth,
227
227
  columnsWidthVariant: columnsWidthVariant,
228
- columnsOrder: columnsOrder,
228
+ columnsOrder: columnsOrder
229
229
  }); });
230
230
  };
@@ -41,7 +41,7 @@ export default {
41
41
  title: 'Blocks/CommonGrid',
42
42
  decorators: [withRedux]
43
43
  };
44
- export var ComplexWithPaginationAndRedux = function () { return (_jsxs(LinguiContainer, { children: [_jsx(ConnectedFilterSetter, { gridActions: gridDummyActions }), _jsx(ReduxGrid, { columnsDefinitions: columnDefinitions, actionColumnDefinition: ActionColumnButtons, rowsData: createRandomData(10), onRowAction: onRowAction, onRowReadClick: onRowReadClick, onRowEditClick: onRowEditClick, totalRowsCount: 200, onBatchAction: onBatchAction, quickFilter: "productSku", extraControlButtons: extraControlButtons, comparators: comparators })] })); };
44
+ export var ComplexWithPaginationAndRedux = function () { return (_jsxs(LinguiContainer, { children: [_jsx(ConnectedFilterSetter, { gridActions: gridDummyActions }), _jsx(ReduxGrid, { columnsDefinitions: columnDefinitions, actionColumnDefinition: ActionColumnButtons, rowsData: createRandomData(10), onRowAction: onRowAction, onRowReadClick: onRowReadClick, onRowEditClick: onRowEditClick, totalRowsCount: 200, onBatchAction: onBatchAction, quickFilter: "productSku", extraControlButtons: extraControlButtons, comparators: comparators, gridName: "gridName" })] })); };
45
45
  ComplexWithPaginationAndRedux.story = {
46
46
  name: 'Complex, with pagination and redux'
47
47
  };
@@ -229,6 +229,7 @@ export type GridActionsType = {
229
229
  setPage?: (number: number) => void;
230
230
  setRowsPerPage?: (number: number) => RowsPerPageType | null;
231
231
  addFilter?: (column: string, value: any, filterProps: FilterProps) => void;
232
+ setFilters?: (filters: Filtering) => void;
232
233
  resetFilters?: () => void;
233
234
  addSorting?: (column: string, direction: SortingValueType) => void;
234
235
  openConfigForm?: () => void;
@@ -312,6 +313,8 @@ export type GridProps = CommonGridProps & {
312
313
  hideControlButtons?: boolean;
313
314
  queryRowsParam?: number | string;
314
315
  customPaginationHandler?: (page: number, rows: number) => void;
316
+ gridName?: string;
317
+ withPresets?: boolean;
315
318
  };
316
319
  export type Item = {
317
320
  title: string | JSX.Element;
@@ -0,0 +1 @@
1
+ export declare const presetsLocalStorageKey = "commonGridPresets";
@@ -0,0 +1 @@
1
+ export var presetsLocalStorageKey = 'commonGridPresets';
@@ -8,4 +8,7 @@ export var palletes = {
8
8
  magentaMagenta: { color: 'magenta20', textColor: 'magenta80' },
9
9
  tealTeal: { color: 'teal20', textColor: 'teal90' },
10
10
  orangeOrange: { color: 'orange20', textColor: 'orange80' },
11
+ grayGray: { color: 'neutral20', textColor: 'typoPrimary' },
12
+ redWhite: { color: 'red1', textColor: 'white' },
13
+ redRed: { color: 'red30', textColor: 'red1' }
11
14
  };