@synerise/ds-table 0.60.1 → 0.60.3
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/CHANGELOG.md +19 -0
- package/dist/Cell/Action/ActionCell.js +5 -11
- package/dist/Cell/Action/ActionCell.styles.js +2 -1
- package/dist/Cell/AvatarLabel/AvatarLabel.js +10 -18
- package/dist/Cell/Copyable/Copyable.styles.js +2 -1
- package/dist/Cell/Copyable/CopyableCell.js +6 -12
- package/dist/Cell/Editable/EditableCell.js +7 -14
- package/dist/Cell/FlagLabel/FlagLabelCell.js +2 -7
- package/dist/Cell/FlagLabel/FlagLabelCell.styles.js +2 -1
- package/dist/Cell/IconLabel/IconLabel.js +2 -7
- package/dist/Cell/IconLabel/IconLabel.styles.js +2 -1
- package/dist/Cell/IconTooltipCell/IconTooltipCell.js +7 -13
- package/dist/Cell/LabelsWithShowMore/LabelsWithShowMore.js +8 -14
- package/dist/Cell/LabelsWithShowMore/Modal/Modal.js +8 -12
- package/dist/Cell/Star/StarCell.d.ts +4 -3
- package/dist/Cell/Star/StarCell.js +5 -10
- package/dist/Cell/Star/StarCell.styles.d.ts +2 -6
- package/dist/Cell/StatusLabel/StatusLabel.js +3 -8
- package/dist/Cell/TagIcon/TagIcon.js +1 -6
- package/dist/Cell/TagIcon/TagIcon.styles.js +2 -1
- package/dist/ColumnSortMenu/SortIcons.js +3 -15
- package/dist/ColumnSortMenu/SortRenderer.js +8 -14
- package/dist/ColumnSortMenu/TitleWithSort.js +3 -7
- package/dist/ColumnSortMenu/columnWithSortButtons.js +0 -10
- package/dist/ColumnSortMenu/groupedColumnsSort.js +2 -15
- package/dist/ColumnSortMenu/replaceSortButtons.js +0 -7
- package/dist/ColumnSortMenu/useSortState.js +4 -40
- package/dist/DefaultTable/DefaultTable.js +26 -50
- package/dist/FilterTrigger/FilterTrigger.js +16 -20
- package/dist/GroupTable/GroupTable.js +24 -40
- package/dist/GroupTable/GroupTable.styles.js +2 -2
- package/dist/GroupTable/GroupTableBody/GroupTableBody.js +12 -17
- package/dist/GroupTable/GroupTableHeader/GroupTableHeader.js +6 -7
- package/dist/InfiniteScroll/BackToTopButton.js +0 -1
- package/dist/InfiniteScroll/InfiniteLoaderItem.js +9 -12
- package/dist/InfiniteScroll/OuterListElement.js +7 -25
- package/dist/InfiniteScroll/utils.js +2 -2
- package/dist/ItemsMenu/ItemsMenu.js +0 -2
- package/dist/ItemsMenu/ItemsMenu.styles.js +2 -1
- package/dist/RowSelection/RowSelectionColumn.js +12 -22
- package/dist/Table.js +26 -40
- package/dist/TableHeader/TableHeader.js +21 -28
- package/dist/TableHeader/TableLimit/TableLimit.js +4 -7
- package/dist/TableHeader/TableSelection.js +13 -34
- package/dist/TreeTable/TreeTable.js +9 -11
- package/dist/TreeTable/TreeTable.styles.js +0 -2
- package/dist/VirtualTable/VirtualTable.js +101 -178
- package/dist/VirtualTable/VirtualTable.styles.js +0 -3
- package/dist/VirtualTable/VirtualTableRow.js +10 -26
- package/dist/constants/TableSkeleton.constants.js +0 -1
- package/dist/hooks/useRowKey/useRowKey.js +3 -1
- package/dist/hooks/useRowStar/useRowStar.js +6 -12
- package/dist/utils/calculateColumnWidths.js +0 -5
- package/dist/utils/calculatePixels.js +4 -10
- package/dist/utils/getRecordSelectionStatus.js +2 -3
- package/dist/utils/getSkeletonProps.js +7 -15
- package/dist/utils/getValueFromPath.js +2 -1
- package/dist/utils/isRecordSelectable.js +2 -4
- package/dist/utils/locale.js +0 -5
- package/package.json +27 -27
|
@@ -7,24 +7,20 @@ import { useTableLocaleContext } from '../utils/locale';
|
|
|
7
7
|
import * as S from './SortRender.styles';
|
|
8
8
|
import { toSortOrder } from './useSortState';
|
|
9
9
|
import { CheckIcon, DefaultSortIcon, StringSortIcon } from './SortIcons';
|
|
10
|
-
|
|
11
10
|
var handleButtonClick = function handleButtonClick(event) {
|
|
12
11
|
event.stopPropagation();
|
|
13
12
|
};
|
|
14
|
-
|
|
15
13
|
export var CommonRenderer = function CommonRenderer(_ref) {
|
|
16
14
|
var column = _ref.column,
|
|
17
|
-
|
|
15
|
+
sortStateApi = _ref.sortStateApi;
|
|
18
16
|
var getColumnSortOrder = sortStateApi.getColumnSortOrder,
|
|
19
|
-
|
|
17
|
+
setColumnSortOrder = sortStateApi.setColumnSortOrder;
|
|
20
18
|
var columnKey = String(column.key);
|
|
21
19
|
var columnSortOrder = column.key ? getColumnSortOrder(columnKey) : null;
|
|
22
20
|
var onSortOrderChange = partial(setColumnSortOrder, columnKey);
|
|
23
|
-
|
|
24
21
|
var _useState = useState(false),
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
22
|
+
isDropdownVisible = _useState[0],
|
|
23
|
+
setIsDropdownVisible = _useState[1];
|
|
28
24
|
var locale = useTableLocaleContext();
|
|
29
25
|
return /*#__PURE__*/React.createElement(Dropdown, {
|
|
30
26
|
onVisibleChange: function onVisibleChange(isVisible) {
|
|
@@ -80,17 +76,15 @@ export var CommonRenderer = function CommonRenderer(_ref) {
|
|
|
80
76
|
};
|
|
81
77
|
export var StringRenderer = function StringRenderer(_ref3) {
|
|
82
78
|
var column = _ref3.column,
|
|
83
|
-
|
|
79
|
+
sortStateApi = _ref3.sortStateApi;
|
|
84
80
|
var getColumnSortOrder = sortStateApi.getColumnSortOrder,
|
|
85
|
-
|
|
81
|
+
setColumnSortOrder = sortStateApi.setColumnSortOrder;
|
|
86
82
|
var columnKey = String(column.key);
|
|
87
83
|
var columnSortOrder = column.key ? getColumnSortOrder(columnKey) : null;
|
|
88
84
|
var onSortOrderChange = partial(setColumnSortOrder, columnKey);
|
|
89
|
-
|
|
90
85
|
var _useState2 = useState(false),
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
86
|
+
isDropdownVisible = _useState2[0],
|
|
87
|
+
setIsDropdownVisible = _useState2[1];
|
|
94
88
|
var locale = useTableLocaleContext();
|
|
95
89
|
return /*#__PURE__*/React.createElement(Dropdown, {
|
|
96
90
|
onVisibleChange: function onVisibleChange(isVisible) {
|
|
@@ -1,17 +1,13 @@
|
|
|
1
1
|
var _excluded = ["column", "sortRender", "titleProps"];
|
|
2
|
-
|
|
3
2
|
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
4
|
-
|
|
5
3
|
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
|
|
6
|
-
|
|
7
4
|
import React from 'react';
|
|
8
5
|
import createReplaceButtonsPortal from './replaceSortButtons';
|
|
9
6
|
export var TitleWithSort = function TitleWithSort(_ref) {
|
|
10
7
|
var column = _ref.column,
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
8
|
+
sortRender = _ref.sortRender,
|
|
9
|
+
titleProps = _ref.titleProps,
|
|
10
|
+
spanProps = _objectWithoutPropertiesLoose(_ref, _excluded);
|
|
15
11
|
var itemRef = React.useRef(null);
|
|
16
12
|
var ReplaceButtonsPortal = createReplaceButtonsPortal(itemRef.current, sortRender);
|
|
17
13
|
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("span", _extends({
|
|
@@ -1,26 +1,18 @@
|
|
|
1
1
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
2
|
-
|
|
3
2
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
4
|
-
|
|
5
3
|
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
6
|
-
|
|
7
4
|
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
|
|
8
|
-
|
|
9
5
|
function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
|
10
|
-
|
|
11
6
|
import React from 'react';
|
|
12
7
|
import { TitleWithSort } from './TitleWithSort';
|
|
13
8
|
import { CommonRenderer, StringRenderer } from './SortRenderer';
|
|
14
|
-
|
|
15
9
|
var getSortRenderer = function getSortRenderer(sortRender, onSort) {
|
|
16
10
|
if (sortRender === void 0) {
|
|
17
11
|
sortRender = 'default';
|
|
18
12
|
}
|
|
19
|
-
|
|
20
13
|
if (typeof sortRender === 'function') {
|
|
21
14
|
return sortRender;
|
|
22
15
|
}
|
|
23
|
-
|
|
24
16
|
switch (sortRender) {
|
|
25
17
|
case 'string':
|
|
26
18
|
return function (sortStateApi, column) {
|
|
@@ -30,7 +22,6 @@ var getSortRenderer = function getSortRenderer(sortRender, onSort) {
|
|
|
30
22
|
onSort: onSort
|
|
31
23
|
});
|
|
32
24
|
};
|
|
33
|
-
|
|
34
25
|
case 'default':
|
|
35
26
|
default:
|
|
36
27
|
return function (sortStateApi, column) {
|
|
@@ -42,7 +33,6 @@ var getSortRenderer = function getSortRenderer(sortRender, onSort) {
|
|
|
42
33
|
};
|
|
43
34
|
}
|
|
44
35
|
};
|
|
45
|
-
|
|
46
36
|
export var columnWithSortButtons = function columnWithSortButtons(sortStateApi, onSort) {
|
|
47
37
|
return function (column) {
|
|
48
38
|
var sortRenderer = getSortRenderer(column.sortRender, onSort);
|
|
@@ -1,22 +1,15 @@
|
|
|
1
1
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
2
|
-
|
|
3
2
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
4
|
-
|
|
5
3
|
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
6
|
-
|
|
7
4
|
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
|
|
8
|
-
|
|
9
5
|
function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
|
10
|
-
|
|
11
6
|
export var getColumnsWithActiveSorting = function getColumnsWithActiveSorting(sortStateApi, columns) {
|
|
12
7
|
return !columns ? [] : columns.filter(function (_ref) {
|
|
13
8
|
var key = _ref.key,
|
|
14
|
-
|
|
15
|
-
|
|
9
|
+
sorter = _ref.sorter;
|
|
16
10
|
if (sortStateApi.getColumnSortOrder(String(key)) && typeof sorter === 'function') {
|
|
17
11
|
return true;
|
|
18
12
|
}
|
|
19
|
-
|
|
20
13
|
return false;
|
|
21
14
|
});
|
|
22
15
|
};
|
|
@@ -24,32 +17,26 @@ export var sortRows = function sortRows(sortOrder, compareFn, rows) {
|
|
|
24
17
|
if (sortOrder === 'ascend') {
|
|
25
18
|
return [].concat(rows).sort(compareFn);
|
|
26
19
|
}
|
|
27
|
-
|
|
28
20
|
if (sortOrder === 'descend') {
|
|
29
21
|
return [].concat(rows).sort(compareFn).reverse();
|
|
30
22
|
}
|
|
31
|
-
|
|
32
23
|
return rows;
|
|
33
24
|
};
|
|
34
25
|
export var sortDataSourceRows = function sortDataSourceRows(sortStateApi, sortingColumns, dataSource) {
|
|
35
26
|
if (!dataSource) {
|
|
36
27
|
return [];
|
|
37
28
|
}
|
|
38
|
-
|
|
39
29
|
if (!(sortingColumns != null && sortingColumns.length)) {
|
|
40
30
|
return dataSource;
|
|
41
31
|
}
|
|
42
|
-
|
|
43
32
|
return dataSource == null ? void 0 : dataSource.map(function (dataItem) {
|
|
44
33
|
var sortedRows = sortingColumns.reduce(function (currRows, _ref2) {
|
|
45
34
|
var sorter = _ref2.sorter,
|
|
46
|
-
|
|
35
|
+
key = _ref2.key;
|
|
47
36
|
var sortOrder = sortStateApi.getColumnSortOrder(String(key));
|
|
48
|
-
|
|
49
37
|
if (!sortOrder || typeof sorter !== 'function') {
|
|
50
38
|
return currRows;
|
|
51
39
|
}
|
|
52
|
-
|
|
53
40
|
return sortRows(sortOrder, sorter, currRows);
|
|
54
41
|
}, [].concat(dataItem.rows));
|
|
55
42
|
return _objectSpread({}, dataItem, {
|
|
@@ -1,23 +1,16 @@
|
|
|
1
1
|
import * as ReactDOM from 'react-dom';
|
|
2
|
-
|
|
3
2
|
var createReplaceButtonsPortal = function createReplaceButtonsPortal(columnTitleElement, newButtonsNode) {
|
|
4
3
|
return function () {
|
|
5
4
|
var _columnTitleElement$p;
|
|
6
|
-
|
|
7
5
|
var sortContainerElem = columnTitleElement == null || (_columnTitleElement$p = columnTitleElement.parentElement) == null ? void 0 : _columnTitleElement$p.nextSibling;
|
|
8
|
-
|
|
9
6
|
if (!sortContainerElem) {
|
|
10
7
|
return null;
|
|
11
8
|
}
|
|
12
|
-
|
|
13
9
|
var sortInnerElem = sortContainerElem.querySelector('.ant-table-column-sorter-inner');
|
|
14
|
-
|
|
15
10
|
if (sortInnerElem) {
|
|
16
11
|
sortContainerElem.removeChild(sortInnerElem);
|
|
17
12
|
}
|
|
18
|
-
|
|
19
13
|
return ReactDOM.createPortal(newButtonsNode, sortContainerElem);
|
|
20
14
|
};
|
|
21
15
|
};
|
|
22
|
-
|
|
23
16
|
export default createReplaceButtonsPortal;
|
|
@@ -1,47 +1,36 @@
|
|
|
1
1
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
2
|
-
|
|
3
2
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
4
|
-
|
|
5
3
|
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
6
|
-
|
|
7
4
|
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
|
|
8
|
-
|
|
9
5
|
function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
|
10
|
-
|
|
11
6
|
import React from 'react';
|
|
12
7
|
import { groupBy, merge } from 'lodash';
|
|
13
8
|
export var toSortOrder = function toSortOrder(value) {
|
|
14
9
|
if (value === 'descend' || value === 'ascend') {
|
|
15
10
|
return value;
|
|
16
11
|
}
|
|
17
|
-
|
|
18
12
|
return null;
|
|
19
13
|
};
|
|
20
14
|
export var columnsToSortState = function columnsToSortState(columns) {
|
|
21
15
|
if (columns === void 0) {
|
|
22
16
|
columns = [];
|
|
23
17
|
}
|
|
24
|
-
|
|
25
18
|
if (process.env.NODE_ENV === 'development') {
|
|
26
19
|
var columnsKeys = columns.map(function (c, i) {
|
|
27
20
|
if (c.sorter && !c.key) {
|
|
28
21
|
// eslint-disable-next-line no-console
|
|
29
22
|
console.warn("DefaultTable: column " + (typeof c.title === 'string' ? c.title : i + 1) + " has no \"key\" prop set which is required to use sorter");
|
|
30
23
|
}
|
|
31
|
-
|
|
32
24
|
return c.key;
|
|
33
25
|
});
|
|
34
26
|
var uniqueColumnKeys = Array.from(new Set(columnsKeys));
|
|
35
|
-
|
|
36
27
|
if (columnsKeys.length !== uniqueColumnKeys.length) {
|
|
37
28
|
// eslint-disable-next-line no-console
|
|
38
29
|
console.warn('DefaultTable: column keys are not unique what may affect sorting. Columns grouped by key:', groupBy(columns, 'key'));
|
|
39
30
|
}
|
|
40
31
|
}
|
|
41
|
-
|
|
42
32
|
return columns.reduce(function (state, column) {
|
|
43
33
|
var _objectSpread2, _objectSpread3;
|
|
44
|
-
|
|
45
34
|
return typeof column.sorter === 'object' ? _objectSpread({}, state, (_objectSpread2 = {}, _objectSpread2[String(column.key)] = {
|
|
46
35
|
sortOrder: toSortOrder(column.sortOrder) || toSortOrder(column.defaultSortOrder),
|
|
47
36
|
multiple: column.sorter.multiple || false
|
|
@@ -51,100 +40,79 @@ export var columnsToSortState = function columnsToSortState(columns) {
|
|
|
51
40
|
}, _objectSpread3));
|
|
52
41
|
}, {});
|
|
53
42
|
};
|
|
54
|
-
|
|
55
43
|
var setSingleOrder = function setSingleOrder(state, action) {
|
|
56
44
|
var _objectSpread5;
|
|
57
|
-
|
|
58
45
|
var payload = action.payload;
|
|
59
46
|
var onSort = payload.onSort;
|
|
60
47
|
var clearedSortState = Object.entries(state).reduce(function (newState, _ref) {
|
|
61
48
|
var _objectSpread4;
|
|
62
|
-
|
|
63
49
|
var currKey = _ref[0],
|
|
64
|
-
|
|
50
|
+
currValue = _ref[1];
|
|
65
51
|
return _objectSpread({}, newState, (_objectSpread4 = {}, _objectSpread4[currKey] = _objectSpread({}, currValue, {
|
|
66
52
|
sortOrder: null
|
|
67
53
|
}), _objectSpread4));
|
|
68
54
|
}, {});
|
|
69
|
-
|
|
70
55
|
var newState = _objectSpread({}, clearedSortState, (_objectSpread5 = {}, _objectSpread5[payload.key] = _objectSpread({}, state[payload.key], {
|
|
71
56
|
sortOrder: payload.sortOrder
|
|
72
57
|
}), _objectSpread5));
|
|
73
|
-
|
|
74
58
|
onSort && onSort({
|
|
75
59
|
columnKey: payload.key,
|
|
76
60
|
order: payload.sortOrder
|
|
77
61
|
}, newState);
|
|
78
62
|
return newState;
|
|
79
63
|
};
|
|
80
|
-
|
|
81
64
|
var setMultipleOrder = function setMultipleOrder(state, action) {
|
|
82
65
|
var _objectSpread8;
|
|
83
|
-
|
|
84
66
|
var payload = action.payload;
|
|
85
67
|
var onSort = payload.onSort;
|
|
86
68
|
var clearedSortState = Object.entries(state).reduce(function (newState, _ref2) {
|
|
87
69
|
var _objectSpread6, _objectSpread7;
|
|
88
|
-
|
|
89
70
|
var currKey = _ref2[0],
|
|
90
|
-
|
|
71
|
+
currValue = _ref2[1];
|
|
91
72
|
return currValue.multiple === false ? _objectSpread({}, newState, (_objectSpread6 = {}, _objectSpread6[currKey] = _objectSpread({}, currValue, {
|
|
92
73
|
sortOrder: null
|
|
93
74
|
}), _objectSpread6)) : _objectSpread({}, newState, (_objectSpread7 = {}, _objectSpread7[currKey] = state[currKey], _objectSpread7));
|
|
94
75
|
}, {});
|
|
95
|
-
|
|
96
76
|
var newState = _objectSpread({}, clearedSortState, (_objectSpread8 = {}, _objectSpread8[payload.key] = _objectSpread({}, state[payload.key], {
|
|
97
77
|
sortOrder: payload.sortOrder
|
|
98
78
|
}), _objectSpread8));
|
|
99
|
-
|
|
100
79
|
onSort && onSort({
|
|
101
80
|
columnKey: payload.key,
|
|
102
81
|
order: payload.sortOrder
|
|
103
82
|
}, newState);
|
|
104
83
|
return newState;
|
|
105
84
|
};
|
|
106
|
-
|
|
107
85
|
var updateColumns = function updateColumns(state, action) {
|
|
108
86
|
var payload = action.payload;
|
|
109
87
|
return merge(payload.columns, state);
|
|
110
88
|
};
|
|
111
|
-
|
|
112
89
|
var sortReducer = function sortReducer(state, action) {
|
|
113
90
|
var type = action.type;
|
|
114
|
-
|
|
115
91
|
switch (type) {
|
|
116
92
|
case 'setSingleOrder':
|
|
117
93
|
// @ts-ignore
|
|
118
94
|
return setSingleOrder(state, action);
|
|
119
|
-
|
|
120
95
|
case 'setMultipleOrder':
|
|
121
96
|
// @ts-ignore
|
|
122
97
|
return setMultipleOrder(state, action);
|
|
123
|
-
|
|
124
98
|
case 'updateColumns':
|
|
125
99
|
// @ts-ignore
|
|
126
100
|
return updateColumns(state, action);
|
|
127
|
-
|
|
128
101
|
default:
|
|
129
102
|
return state;
|
|
130
103
|
}
|
|
131
104
|
};
|
|
132
|
-
|
|
133
105
|
export var useSortState = function useSortState(initialState, onSort) {
|
|
134
106
|
if (initialState === void 0) {
|
|
135
107
|
initialState = {};
|
|
136
108
|
}
|
|
137
|
-
|
|
138
109
|
var _React$useReducer = React.useReducer(sortReducer, initialState),
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
110
|
+
columnsSortState = _React$useReducer[0],
|
|
111
|
+
dispatch = _React$useReducer[1];
|
|
142
112
|
var getColumnSortOrder = function getColumnSortOrder(key) {
|
|
143
113
|
var _columnsSortState$key;
|
|
144
|
-
|
|
145
114
|
return (_columnsSortState$key = columnsSortState[key]) == null ? void 0 : _columnsSortState$key.sortOrder;
|
|
146
115
|
};
|
|
147
|
-
|
|
148
116
|
var updateColumnsData = function updateColumnsData(columns) {
|
|
149
117
|
dispatch({
|
|
150
118
|
type: 'updateColumns',
|
|
@@ -153,10 +121,8 @@ export var useSortState = function useSortState(initialState, onSort) {
|
|
|
153
121
|
}
|
|
154
122
|
});
|
|
155
123
|
};
|
|
156
|
-
|
|
157
124
|
var setColumnSortOrder = function setColumnSortOrder(key, sortOrder) {
|
|
158
125
|
var _columnsSortState$key2, _columnsSortState$key3, _columnsSortState$key4, _columnsSortState$key5;
|
|
159
|
-
|
|
160
126
|
if (((_columnsSortState$key2 = columnsSortState[key]) == null ? void 0 : _columnsSortState$key2.sortOrder) !== sortOrder && ((_columnsSortState$key3 = columnsSortState[key]) == null ? void 0 : _columnsSortState$key3.multiple) === false) {
|
|
161
127
|
dispatch({
|
|
162
128
|
type: 'setSingleOrder',
|
|
@@ -167,7 +133,6 @@ export var useSortState = function useSortState(initialState, onSort) {
|
|
|
167
133
|
}
|
|
168
134
|
});
|
|
169
135
|
}
|
|
170
|
-
|
|
171
136
|
if (((_columnsSortState$key4 = columnsSortState[key]) == null ? void 0 : _columnsSortState$key4.sortOrder) !== sortOrder && (_columnsSortState$key5 = columnsSortState[key]) != null && _columnsSortState$key5.multiple) {
|
|
172
137
|
dispatch({
|
|
173
138
|
type: 'setMultipleOrder',
|
|
@@ -179,7 +144,6 @@ export var useSortState = function useSortState(initialState, onSort) {
|
|
|
179
144
|
});
|
|
180
145
|
}
|
|
181
146
|
};
|
|
182
|
-
|
|
183
147
|
return {
|
|
184
148
|
columnsSortState: columnsSortState,
|
|
185
149
|
updateColumnsData: updateColumnsData,
|
|
@@ -1,19 +1,11 @@
|
|
|
1
1
|
var _excluded = ["children"];
|
|
2
|
-
|
|
3
2
|
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
4
|
-
|
|
5
3
|
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
|
|
6
|
-
|
|
7
4
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
8
|
-
|
|
9
5
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
10
|
-
|
|
11
6
|
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
12
|
-
|
|
13
7
|
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
|
|
14
|
-
|
|
15
8
|
function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
|
16
|
-
|
|
17
9
|
import React, { useCallback, useEffect, useMemo } from 'react';
|
|
18
10
|
import { compact, isEqual } from 'lodash';
|
|
19
11
|
import Table from 'antd/lib/table';
|
|
@@ -26,32 +18,26 @@ import { useRowKey } from '../hooks/useRowKey';
|
|
|
26
18
|
import { useRowStar } from '../hooks/useRowStar/useRowStar';
|
|
27
19
|
import { RowSelectionColumn } from '../RowSelection';
|
|
28
20
|
import { getChildrenColumnName, isRecordSelectable } from '../utils';
|
|
29
|
-
|
|
30
21
|
function DefaultTable(props) {
|
|
31
22
|
var _selection$selections;
|
|
32
|
-
|
|
33
23
|
var title = props.title,
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
24
|
+
selection = props.selection,
|
|
25
|
+
rowStar = props.rowStar,
|
|
26
|
+
dataSource = props.dataSource,
|
|
27
|
+
rowKey = props.rowKey,
|
|
28
|
+
locale = props.locale,
|
|
29
|
+
expandable = props.expandable,
|
|
30
|
+
components = props.components,
|
|
31
|
+
columns = props.columns,
|
|
32
|
+
onSort = props.onSort,
|
|
33
|
+
emptyDataComponent = props.emptyDataComponent;
|
|
44
34
|
var previousColumns = usePrevious(columns);
|
|
45
35
|
var sortStateApi = useSortState(columnsToSortState(columns), onSort);
|
|
46
|
-
|
|
47
36
|
var _useRowStar = useRowStar((rowStar == null ? void 0 : rowStar.starredRowKeys) || []),
|
|
48
|
-
|
|
49
|
-
|
|
37
|
+
getRowStarColumn = _useRowStar.getRowStarColumn;
|
|
50
38
|
var childrenColumnName = getChildrenColumnName(expandable == null ? void 0 : expandable.childrenColumnName);
|
|
51
|
-
|
|
52
39
|
var _useRowKey = useRowKey(rowKey),
|
|
53
|
-
|
|
54
|
-
|
|
40
|
+
getRowKey = _useRowKey.getRowKey;
|
|
55
41
|
var starColumn = useMemo(function () {
|
|
56
42
|
return getRowStarColumn(_objectSpread({}, props, {
|
|
57
43
|
getRowKey: getRowKey
|
|
@@ -73,17 +59,14 @@ function DefaultTable(props) {
|
|
|
73
59
|
}, [columns, previousColumns, sortStateApi]);
|
|
74
60
|
var RenderRow = useCallback(function (row) {
|
|
75
61
|
var children = row.children,
|
|
76
|
-
|
|
77
|
-
|
|
62
|
+
rowProps = _objectWithoutPropertiesLoose(row, _excluded);
|
|
78
63
|
var classNameWithLevel = row.className.split(' ').find(function (name) {
|
|
79
64
|
return name.includes('row-level');
|
|
80
65
|
});
|
|
81
66
|
var level;
|
|
82
|
-
|
|
83
67
|
if (classNameWithLevel) {
|
|
84
68
|
level = classNameWithLevel.split('-').pop();
|
|
85
69
|
}
|
|
86
|
-
|
|
87
70
|
return (
|
|
88
71
|
/*#__PURE__*/
|
|
89
72
|
// eslint-disable-next-line react/jsx-handler-names
|
|
@@ -98,8 +81,7 @@ function DefaultTable(props) {
|
|
|
98
81
|
});
|
|
99
82
|
var decoratedComponents = components && Object.entries(components).map(function (_ref) {
|
|
100
83
|
var key = _ref[0],
|
|
101
|
-
|
|
102
|
-
|
|
84
|
+
value = _ref[1];
|
|
103
85
|
if (typeof value === 'function') {
|
|
104
86
|
return [key, function (rawData, meta) {
|
|
105
87
|
return value(rawData, meta, _objectSpread({}, props, {
|
|
@@ -107,34 +89,28 @@ function DefaultTable(props) {
|
|
|
107
89
|
}));
|
|
108
90
|
}];
|
|
109
91
|
}
|
|
110
|
-
|
|
111
92
|
return [key, value];
|
|
112
93
|
}).reduce(function (acc, _ref2) {
|
|
113
94
|
var _objectSpread2;
|
|
114
|
-
|
|
115
95
|
var key = _ref2[0],
|
|
116
|
-
|
|
96
|
+
value = _ref2[1];
|
|
117
97
|
return _objectSpread({}, acc, (_objectSpread2 = {}, _objectSpread2[key] = value, _objectSpread2));
|
|
118
98
|
}, {});
|
|
119
99
|
var selectedRecords = useMemo(function () {
|
|
120
100
|
if (selection) {
|
|
121
101
|
var _ref3 = selection,
|
|
122
|
-
|
|
123
|
-
|
|
102
|
+
selectedRowKeys = _ref3.selectedRowKeys,
|
|
103
|
+
checkRowSelectionStatus = _ref3.checkRowSelectionStatus;
|
|
124
104
|
var selectedRows = [];
|
|
125
105
|
dataSource && dataSource.forEach(function (row) {
|
|
126
106
|
var key = getRowKey(row);
|
|
127
|
-
|
|
128
107
|
if (key && selectedRowKeys.indexOf(key) >= 0 && isRecordSelectable(row, checkRowSelectionStatus)) {
|
|
129
108
|
selectedRows = [].concat(selectedRows, [row]);
|
|
130
109
|
}
|
|
131
|
-
|
|
132
110
|
var rowChildren = row[childrenColumnName];
|
|
133
|
-
|
|
134
111
|
if (rowChildren !== undefined && Array.isArray(rowChildren)) {
|
|
135
112
|
rowChildren.forEach(function (child) {
|
|
136
113
|
var childKey = getRowKey(child);
|
|
137
|
-
|
|
138
114
|
if (childKey && selectedRowKeys.indexOf(childKey) >= 0 && isRecordSelectable(child, checkRowSelectionStatus)) {
|
|
139
115
|
selectedRows = [].concat(selectedRows, [child]);
|
|
140
116
|
}
|
|
@@ -143,16 +119,15 @@ function DefaultTable(props) {
|
|
|
143
119
|
});
|
|
144
120
|
return selectedRows;
|
|
145
121
|
}
|
|
146
|
-
|
|
147
122
|
return [];
|
|
148
123
|
}, [childrenColumnName, dataSource, getRowKey, selection]);
|
|
149
124
|
var renderRowSelection = useCallback(function (key, record) {
|
|
150
125
|
var _ref4 = selection,
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
126
|
+
selectedRowKeys = _ref4.selectedRowKeys,
|
|
127
|
+
limit = _ref4.limit,
|
|
128
|
+
independentSelectionExpandedRows = _ref4.independentSelectionExpandedRows,
|
|
129
|
+
onChange = _ref4.onChange,
|
|
130
|
+
checkRowSelectionStatus = _ref4.checkRowSelectionStatus;
|
|
156
131
|
return /*#__PURE__*/React.createElement(RowSelectionColumn, {
|
|
157
132
|
rowKey: rowKey,
|
|
158
133
|
record: record,
|
|
@@ -174,7 +149,8 @@ function DefaultTable(props) {
|
|
|
174
149
|
}, expandable),
|
|
175
150
|
locale: _objectSpread({}, locale, {
|
|
176
151
|
emptyText: emptyData
|
|
177
|
-
})
|
|
152
|
+
})
|
|
153
|
+
// @ts-ignore
|
|
178
154
|
,
|
|
179
155
|
title: title,
|
|
180
156
|
showSorterTooltip: false,
|
|
@@ -182,7 +158,8 @@ function DefaultTable(props) {
|
|
|
182
158
|
body: {
|
|
183
159
|
row: RenderRow
|
|
184
160
|
}
|
|
185
|
-
}, decoratedComponents)
|
|
161
|
+
}, decoratedComponents)
|
|
162
|
+
// @ts-ignore
|
|
186
163
|
,
|
|
187
164
|
rowSelection: selection && _objectSpread({}, selection, {
|
|
188
165
|
selections: selection == null || (_selection$selections = selection.selections) == null ? void 0 : _selection$selections.filter(Boolean),
|
|
@@ -191,5 +168,4 @@ function DefaultTable(props) {
|
|
|
191
168
|
})
|
|
192
169
|
}));
|
|
193
170
|
}
|
|
194
|
-
|
|
195
171
|
export default DefaultTable;
|
|
@@ -3,28 +3,25 @@ import Icon, { Close3S, FolderM } from '@synerise/ds-icon';
|
|
|
3
3
|
import Tooltip from '@synerise/ds-tooltip';
|
|
4
4
|
import { useOnClickOutside } from '@synerise/ds-utils';
|
|
5
5
|
import * as S from './FilterTrigger.styles';
|
|
6
|
-
|
|
7
6
|
var FilterTrigger = function FilterTrigger(_ref) {
|
|
8
7
|
var name = _ref.name,
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
8
|
+
selected = _ref.selected,
|
|
9
|
+
iconComponent = _ref.iconComponent,
|
|
10
|
+
_ref$tooltips = _ref.tooltips,
|
|
11
|
+
tooltips = _ref$tooltips === void 0 ? {
|
|
12
|
+
"default": 'Filter',
|
|
13
|
+
define: 'Define filter',
|
|
14
|
+
clear: 'Clear filter',
|
|
15
|
+
list: 'Saved filters'
|
|
16
|
+
} : _ref$tooltips,
|
|
17
|
+
openedLabel = _ref.openedLabel,
|
|
18
|
+
handleClear = _ref.handleClear,
|
|
19
|
+
showList = _ref.showList,
|
|
20
|
+
show = _ref.show,
|
|
21
|
+
disabled = _ref.disabled;
|
|
24
22
|
var _React$useState = React.useState(false),
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
23
|
+
opened = _React$useState[0],
|
|
24
|
+
setOpened = _React$useState[1];
|
|
28
25
|
React.useEffect(function () {
|
|
29
26
|
selected && setOpened(true);
|
|
30
27
|
}, [selected, opened, setOpened]);
|
|
@@ -74,5 +71,4 @@ var FilterTrigger = function FilterTrigger(_ref) {
|
|
|
74
71
|
component: /*#__PURE__*/React.createElement(FolderM, null)
|
|
75
72
|
})))));
|
|
76
73
|
};
|
|
77
|
-
|
|
78
74
|
export default React.memo(FilterTrigger);
|