@kdcloudjs/table 1.2.1-canary.6 → 1.2.1-canary.7-hotfix.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/dist/@kdcloudjs/table.css +1 -1
- package/dist/@kdcloudjs/table.css.map +0 -0
- package/dist/@kdcloudjs/table.js +1755 -3334
- package/dist/@kdcloudjs/table.js.map +1 -1
- package/dist/@kdcloudjs/table.min.css +1 -1
- package/dist/@kdcloudjs/table.min.js +16 -16
- package/dist/@kdcloudjs/table.min.js.map +1 -1
- package/dist/default-theme.js +0 -0
- package/dist/kd-ui-complete.less +0 -0
- package/dist/kd-ui.less +0 -0
- package/dist/theme.js +0 -0
- package/es/_utils/arrayUtil.js +0 -3
- package/es/_utils/devwarning.js +0 -1
- package/es/_utils/formatUtil.js +35 -96
- package/es/_utils/hooks.js +18 -42
- package/es/_utils/index.js +0 -2
- package/es/_utils/numberUtil.js +32 -55
- package/es/_utils/omit.js +0 -2
- package/es/_utils/type.js +0 -2
- package/es/_utils/usePopper.js +74 -137
- package/es/config-provider/compDefaultProps.js +0 -1
- package/es/config-provider/configProvider.js +2 -7
- package/es/config-provider/defaultConfig.js +0 -1
- package/es/index.js +0 -2
- package/es/locale/locale.js +5 -43
- package/es/table/base/calculations.js +22 -72
- package/es/table/base/colgroup.js +0 -1
- package/es/table/base/empty.js +4 -4
- package/es/table/base/header.js +16 -69
- package/es/table/base/helpers/SpanManager.js +3 -9
- package/es/table/base/helpers/TableDOMUtils.js +4 -28
- package/es/table/base/helpers/__test__/SpanManager.test.js +2 -2
- package/es/table/base/helpers/__test__/TableDOMUtils.test.js +0 -1
- package/es/table/base/helpers/getRichVisibleRectsStream.js +13 -45
- package/es/table/base/helpers/rowHeightManager.js +0 -28
- package/es/table/base/html-table.js +14 -35
- package/es/table/base/loading.js +6 -8
- package/es/table/base/renderTemplates.js +26 -44
- package/es/table/base/styles.js +0 -9
- package/es/table/base/table.js +95 -181
- package/es/table/base/utils.js +14 -54
- package/es/table/common-views.js +0 -7
- package/es/table/internals.js +0 -13
- package/es/table/pipeline/features/autoFill.js +11 -40
- package/es/table/pipeline/features/autoRowSpan.js +1 -14
- package/es/table/pipeline/features/colGroupExtendable.js +4 -19
- package/es/table/pipeline/features/columnDrag.js +41 -96
- package/es/table/pipeline/features/columnFilter.js +11 -48
- package/es/table/pipeline/features/columnHover.js +1 -7
- package/es/table/pipeline/features/columnRangeHover.js +1 -8
- package/es/table/pipeline/features/columnResizeWidth.js +11 -37
- package/es/table/pipeline/features/contextMenu.js +18 -89
- package/es/table/pipeline/features/filter/DefaultFilterContent.js +10 -25
- package/es/table/pipeline/features/filter/DefaultFilterIcon.js +1 -1
- package/es/table/pipeline/features/filter/Filter.js +25 -48
- package/es/table/pipeline/features/filter/FilterPanel.js +11 -25
- package/es/table/pipeline/features/filter/util.js +0 -4
- package/es/table/pipeline/features/footerDataSource.js +0 -3
- package/es/table/pipeline/features/mergeCellHover.js +0 -1
- package/es/table/pipeline/features/multiSelect.js +15 -57
- package/es/table/pipeline/features/rangeSelection.js +63 -142
- package/es/table/pipeline/features/rowDetail.js +2 -41
- package/es/table/pipeline/features/rowDrag.js +38 -76
- package/es/table/pipeline/features/rowGrouping.js +2 -35
- package/es/table/pipeline/features/singleSelect.js +0 -24
- package/es/table/pipeline/features/sort.js +32 -89
- package/es/table/pipeline/features/tips.js +0 -6
- package/es/table/pipeline/features/treeMode.js +14 -46
- package/es/table/pipeline/features/treeSelect.js +0 -26
- package/es/table/pipeline/pipeline.js +11 -51
- package/es/table/pivot/cross-table/buildCrossTable.js +15 -64
- package/es/table/pivot/cross-table/cross-table.js +22 -28
- package/es/table/pivot/cross-tree-table/buildCrossTreeTable.js +14 -47
- package/es/table/pivot/cross-tree-table/cross-tree-table.js +28 -50
- package/es/table/pivot/pivot-utils/buildDrillTree.js +10 -23
- package/es/table/pivot/pivot-utils/builders.js +31 -71
- package/es/table/pivot/pivot-utils/convert-utils.js +13 -39
- package/es/table/pivot/pivot-utils/simpleEncode.js +0 -1
- package/es/table/transforms/autoRowSpan.js +1 -15
- package/es/table/transforms/autoWidth.js +10 -32
- package/es/table/transforms/buildTree.js +1 -2
- package/es/table/transforms/columnHover.js +9 -15
- package/es/table/transforms/columnRangeHover.js +12 -19
- package/es/table/transforms/columnResize.js +15 -37
- package/es/table/transforms/flatten.js +0 -3
- package/es/table/transforms/orderField.js +0 -3
- package/es/table/transforms/sort.js +36 -93
- package/es/table/transforms/tips.js +1 -6
- package/es/table/transforms/treeMode.js +30 -69
- package/es/table/transforms/visible.js +0 -2
- package/es/table/use/useResizeObserver.js +1 -4
- package/es/table/utils/applyTransforms.js +0 -1
- package/es/table/utils/browserType.js +12 -19
- package/es/table/utils/buildTree.js +4 -19
- package/es/table/utils/collectNodes.js +1 -10
- package/es/table/utils/console.js +0 -14
- package/es/table/utils/copyToClipboard.js +0 -4
- package/es/table/utils/element.js +14 -41
- package/es/table/utils/exportTableAsExcel.js +4 -40
- package/es/table/utils/getTreeDepth.js +1 -9
- package/es/table/utils/groupBy.js +1 -10
- package/es/table/utils/layeredFilter.js +0 -4
- package/es/table/utils/layeredSort.js +0 -5
- package/es/table/utils/makeRecursiveMapper.js +1 -12
- package/es/table/utils/mergeCellProps.js +6 -13
- package/es/table/utils/others.js +3 -16
- package/es/table/utils/proto.js +2 -30
- package/es/table/utils/smartCompare.js +4 -12
- package/es/table/utils/traverseColumn.js +2 -15
- package/es/table/utils/tree-data-helpers/StrictTreeDataHelper.js +1 -22
- package/es/table/utils/tree-data-helpers/TreeDataHelper.js +15 -69
- package/es/table/utils/uiDegrade.js +0 -5
- package/lib/_utils/arrayUtil.js +0 -5
- package/lib/_utils/devwarning.js +0 -5
- package/lib/_utils/formatUtil.js +35 -100
- package/lib/_utils/hooks.js +18 -53
- package/lib/_utils/index.js +0 -6
- package/lib/_utils/numberUtil.js +32 -63
- package/lib/_utils/omit.js +0 -5
- package/lib/_utils/react-children.js +0 -5
- package/lib/_utils/type.js +0 -6
- package/lib/_utils/usePopper.js +74 -158
- package/lib/config-provider/ConfigContext.js +1 -4
- package/lib/config-provider/compDefaultProps.js +0 -1
- package/lib/config-provider/configProvider.js +3 -18
- package/lib/config-provider/defaultConfig.js +0 -5
- package/lib/config-provider/index.js +0 -6
- package/lib/index.js +2 -8
- package/lib/locale/index.js +0 -7
- package/lib/locale/locale.js +5 -57
- package/lib/table/base/calculations.js +22 -83
- package/lib/table/base/colgroup.js +0 -5
- package/lib/table/base/empty.js +4 -16
- package/lib/table/base/header.js +16 -79
- package/lib/table/base/helpers/SpanManager.js +3 -11
- package/lib/table/base/helpers/TableDOMUtils.js +2 -28
- package/lib/table/base/helpers/__test__/SpanManager.test.js +2 -4
- package/lib/table/base/helpers/__test__/TableDOMUtils.test.js +0 -5
- package/lib/table/base/helpers/__test__/rowHeightManager.test.js +0 -1
- package/lib/table/base/helpers/getRichVisibleRectsStream.js +13 -63
- package/lib/table/base/helpers/rowHeightManager.js +0 -33
- package/lib/table/base/html-table.js +14 -45
- package/lib/table/base/index.js +0 -2
- package/lib/table/base/loading.js +6 -12
- package/lib/table/base/renderTemplates.js +27 -58
- package/lib/table/base/styles.js +0 -21
- package/lib/table/base/table.js +95 -214
- package/lib/table/base/utils.js +14 -89
- package/lib/table/common-views.js +0 -16
- package/lib/table/index.js +0 -13
- package/lib/table/internals.js +0 -14
- package/lib/table/pipeline/features/autoFill.js +11 -47
- package/lib/table/pipeline/features/autoRowSpan.js +1 -19
- package/lib/table/pipeline/features/buildTree.js +0 -2
- package/lib/table/pipeline/features/colGroupExtendable.js +4 -32
- package/lib/table/pipeline/features/columnDrag.js +41 -102
- package/lib/table/pipeline/features/columnFilter.js +11 -62
- package/lib/table/pipeline/features/columnHover.js +1 -11
- package/lib/table/pipeline/features/columnRangeHover.js +1 -13
- package/lib/table/pipeline/features/columnResizeWidth.js +11 -53
- package/lib/table/pipeline/features/contextMenu.js +18 -113
- package/lib/table/pipeline/features/filter/DefaultFilterContent.js +10 -43
- package/lib/table/pipeline/features/filter/DefaultFilterIcon.js +1 -4
- package/lib/table/pipeline/features/filter/Filter.js +25 -70
- package/lib/table/pipeline/features/filter/FilterPanel.js +11 -40
- package/lib/table/pipeline/features/filter/index.js +0 -5
- package/lib/table/pipeline/features/filter/util.js +0 -7
- package/lib/table/pipeline/features/footerDataSource.js +0 -10
- package/lib/table/pipeline/features/index.js +0 -23
- package/lib/table/pipeline/features/mergeCellHover.js +0 -5
- package/lib/table/pipeline/features/multiSelect.js +15 -71
- package/lib/table/pipeline/features/rangeSelection.js +63 -159
- package/lib/table/pipeline/features/rowDetail.js +2 -65
- package/lib/table/pipeline/features/rowDrag.js +38 -87
- package/lib/table/pipeline/features/rowGrouping.js +2 -55
- package/lib/table/pipeline/features/singleSelect.js +0 -34
- package/lib/table/pipeline/features/sort.js +31 -108
- package/lib/table/pipeline/features/tips.js +0 -15
- package/lib/table/pipeline/features/treeMode.js +14 -67
- package/lib/table/pipeline/features/treeSelect.js +0 -34
- package/lib/table/pipeline/index.js +0 -8
- package/lib/table/pipeline/pipeline.js +11 -60
- package/lib/table/pivot/cross-table/buildCrossTable.js +15 -75
- package/lib/table/pivot/cross-table/cross-table.js +22 -36
- package/lib/table/pivot/cross-table/index.js +0 -4
- package/lib/table/pivot/cross-tree-table/buildCrossTreeTable.js +14 -60
- package/lib/table/pivot/cross-tree-table/cross-tree-table.js +28 -60
- package/lib/table/pivot/cross-tree-table/index.js +0 -3
- package/lib/table/pivot/pivot-utils/buildDrillTree.js +10 -29
- package/lib/table/pivot/pivot-utils/builders.js +31 -82
- package/lib/table/pivot/pivot-utils/convert-utils.js +13 -57
- package/lib/table/pivot/pivot-utils/index.js +0 -7
- package/lib/table/pivot/pivot-utils/simpleEncode.js +0 -2
- package/lib/table/style/css.js +0 -1
- package/lib/table/style/index.js +0 -1
- package/lib/table/transforms/autoRowSpan.js +1 -21
- package/lib/table/transforms/autoWidth.js +10 -53
- package/lib/table/transforms/buildTree.js +1 -4
- package/lib/table/transforms/columnHover.js +9 -22
- package/lib/table/transforms/columnRangeHover.js +12 -27
- package/lib/table/transforms/columnResize.js +15 -56
- package/lib/table/transforms/flatten.js +0 -5
- package/lib/table/transforms/index.js +0 -12
- package/lib/table/transforms/orderField.js +0 -7
- package/lib/table/transforms/sort.js +36 -117
- package/lib/table/transforms/tips.js +1 -16
- package/lib/table/transforms/treeMode.js +30 -96
- package/lib/table/transforms/visible.js +0 -7
- package/lib/table/transforms/warnTransformsDeprecated.js +0 -4
- package/lib/table/use/useResizeObserver.js +1 -8
- package/lib/table/utils/applyTransforms.js +0 -2
- package/lib/table/utils/browserType.js +12 -19
- package/lib/table/utils/buildTree.js +4 -30
- package/lib/table/utils/collectNodes.js +1 -15
- package/lib/table/utils/console.js +0 -16
- package/lib/table/utils/copyToClipboard.js +0 -6
- package/lib/table/utils/element.js +14 -46
- package/lib/table/utils/exportTableAsExcel.js +4 -49
- package/lib/table/utils/getTreeDepth.js +1 -14
- package/lib/table/utils/groupBy.js +1 -14
- package/lib/table/utils/index.js +0 -22
- package/lib/table/utils/isGroupColumn.js +0 -3
- package/lib/table/utils/isLeafNode.js +0 -1
- package/lib/table/utils/layeredFilter.js +0 -10
- package/lib/table/utils/layeredSort.js +0 -10
- package/lib/table/utils/makeRecursiveMapper.js +1 -21
- package/lib/table/utils/mergeCellProps.js +6 -17
- package/lib/table/utils/others.js +3 -31
- package/lib/table/utils/proto.js +2 -33
- package/lib/table/utils/selectColumn.js +0 -1
- package/lib/table/utils/smartCompare.js +4 -13
- package/lib/table/utils/traverseColumn.js +2 -22
- package/lib/table/utils/tree-data-helpers/StrictTreeDataHelper.js +1 -30
- package/lib/table/utils/tree-data-helpers/TreeDataHelper.js +15 -82
- package/lib/table/utils/uiDegrade.js +1 -8
- package/package.json +2 -1
- package/lib/style/color/colors.less +0 -2
- package/lib/style/core/index.less +0 -2
- package/lib/style/core/motion/other.less +0 -28
- package/lib/style/core/motion/slide.less +0 -53
- package/lib/style/core/motion.less +0 -2
- package/lib/style/core/reset.less +0 -186
- package/lib/style/index.css +0 -410
- package/lib/style/index.less +0 -2
- package/lib/style/mixins/index.less +0 -19
- package/lib/style/mixins/overlay.less +0 -22
- package/lib/style/mixins/reset.less +0 -13
- package/lib/style/themes/default.less +0 -445
- package/lib/style/themes/index.less +0 -1
- package/lib/table/style/index.css +0 -0
- package/lib/table/style/index.less +0 -1
|
@@ -1,56 +1,34 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _flatMapInstanceProperty = require("@babel/runtime-corejs3/core-js-stable/instance/flat-map");
|
|
4
|
-
|
|
5
4
|
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
|
|
6
|
-
|
|
7
5
|
Object.defineProperty(exports, "__esModule", {
|
|
8
6
|
value: true
|
|
9
7
|
});
|
|
10
8
|
exports.rowGrouping = rowGrouping;
|
|
11
|
-
|
|
12
9
|
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/toConsumableArray"));
|
|
13
|
-
|
|
14
10
|
var _toArray2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/toArray"));
|
|
15
|
-
|
|
16
11
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/defineProperty"));
|
|
17
|
-
|
|
18
12
|
var _extends3 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/extends"));
|
|
19
|
-
|
|
20
13
|
var _symbol = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/symbol"));
|
|
21
|
-
|
|
22
14
|
var _map = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/map"));
|
|
23
|
-
|
|
24
15
|
var _set = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/set"));
|
|
25
|
-
|
|
26
16
|
var _concat = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/concat"));
|
|
27
|
-
|
|
28
17
|
var _slice = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/slice"));
|
|
29
|
-
|
|
30
18
|
var _filter = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/filter"));
|
|
31
|
-
|
|
32
19
|
var _classnames = _interopRequireDefault(require("classnames"));
|
|
33
|
-
|
|
34
20
|
var _react = _interopRequireDefault(require("react"));
|
|
35
|
-
|
|
36
21
|
var _commonViews = require("../../common-views");
|
|
37
|
-
|
|
38
22
|
var _internals = require("../../internals");
|
|
39
|
-
|
|
40
23
|
var _utils = require("../../utils");
|
|
41
|
-
|
|
42
24
|
var _others = require("../../utils/others");
|
|
43
|
-
|
|
44
25
|
var _base = require("../../base");
|
|
45
|
-
|
|
46
26
|
var groupingMetaSymbol = (0, _symbol.default)('row-grouping-meta');
|
|
47
|
-
|
|
48
27
|
function attachGroupingMeta(row) {
|
|
49
28
|
return (0, _extends3.default)((0, _defineProperty2.default)({}, groupingMetaSymbol, {
|
|
50
29
|
expandable: !(0, _utils.isLeafNode)(row)
|
|
51
30
|
}), row);
|
|
52
31
|
}
|
|
53
|
-
|
|
54
32
|
function getGroupingMeta(row) {
|
|
55
33
|
if (row[groupingMetaSymbol] == null) {
|
|
56
34
|
return {
|
|
@@ -58,13 +36,11 @@ function getGroupingMeta(row) {
|
|
|
58
36
|
expandable: false
|
|
59
37
|
};
|
|
60
38
|
}
|
|
61
|
-
|
|
62
39
|
return {
|
|
63
40
|
isGroupHeader: true,
|
|
64
41
|
expandable: row[groupingMetaSymbol].expandable
|
|
65
42
|
};
|
|
66
43
|
}
|
|
67
|
-
|
|
68
44
|
function rowGroupingRowPropsGetter(row) {
|
|
69
45
|
if (getGroupingMeta(row).isGroupHeader) {
|
|
70
46
|
return {
|
|
@@ -72,75 +48,56 @@ function rowGroupingRowPropsGetter(row) {
|
|
|
72
48
|
};
|
|
73
49
|
}
|
|
74
50
|
}
|
|
75
|
-
|
|
76
51
|
function rowGrouping() {
|
|
77
52
|
var opts = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
78
53
|
return function (pipeline) {
|
|
79
54
|
var _context;
|
|
80
|
-
|
|
81
55
|
var _a, _b, _c;
|
|
82
|
-
|
|
83
56
|
var stateKey = 'rowGrouping';
|
|
84
57
|
var indents = pipeline.ctx.indents;
|
|
85
58
|
var textOffset = indents.iconIndent + indents.iconWidth + indents.iconGap;
|
|
86
59
|
var primaryKey = pipeline.ensurePrimaryKey('rowGrouping');
|
|
87
|
-
|
|
88
60
|
if (typeof primaryKey !== 'string') {
|
|
89
61
|
throw new Error('rowGrouping 仅支持字符串作为 primaryKey');
|
|
90
62
|
}
|
|
91
|
-
|
|
92
63
|
var openKeys = (_c = (_b = (_a = opts.openKeys) !== null && _a !== void 0 ? _a : pipeline.getStateAtKey(stateKey)) !== null && _b !== void 0 ? _b : opts.defaultOpenAll ? (0, _map.default)(_context = pipeline.getDataSource()).call(_context, function (row) {
|
|
93
64
|
return row[primaryKey];
|
|
94
65
|
}) : opts.defaultOpenKeys) !== null && _c !== void 0 ? _c : [];
|
|
95
66
|
var openKeySet = new _set.default(openKeys);
|
|
96
|
-
|
|
97
67
|
var onChangeOpenKeys = function onChangeOpenKeys(nextKeys, key, action) {
|
|
98
68
|
var _a;
|
|
99
|
-
|
|
100
69
|
(_a = opts.onChangeOpenKeys) === null || _a === void 0 ? void 0 : _a.call(opts, nextKeys, key, action);
|
|
101
70
|
pipeline.setStateAtKey(stateKey, nextKeys, {
|
|
102
71
|
key: key,
|
|
103
72
|
action: action
|
|
104
73
|
});
|
|
105
74
|
};
|
|
106
|
-
|
|
107
75
|
return pipeline.mapDataSource(processDataSource).mapColumns(processColumns).appendRowPropsGetter(rowGroupingRowPropsGetter);
|
|
108
|
-
|
|
109
76
|
function processDataSource(input) {
|
|
110
77
|
return (0, _flatMapInstanceProperty(_others))(input, function (row) {
|
|
111
78
|
var result = [attachGroupingMeta(row)];
|
|
112
79
|
var expanded = openKeySet.has(row[primaryKey]);
|
|
113
|
-
|
|
114
80
|
if (expanded) {
|
|
115
81
|
if (Array.isArray(row.children)) {
|
|
116
82
|
result = (0, _concat.default)(result).call(result, row.children);
|
|
117
83
|
}
|
|
118
84
|
}
|
|
119
|
-
|
|
120
85
|
return result;
|
|
121
86
|
});
|
|
122
87
|
}
|
|
123
|
-
|
|
124
88
|
function processColumns(columns) {
|
|
125
89
|
var _context3;
|
|
126
|
-
|
|
127
90
|
if (columns.length === 0) {
|
|
128
91
|
return columns;
|
|
129
92
|
}
|
|
130
|
-
|
|
131
93
|
var columnFlatCount = (0, _utils.collectNodes)(columns, 'leaf-only').length;
|
|
132
|
-
|
|
133
94
|
var _columns = (0, _toArray2.default)(columns),
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
95
|
+
firstCol = _columns[0],
|
|
96
|
+
others = (0, _slice.default)(_columns).call(_columns, 1);
|
|
137
97
|
var render = function render(value, row, rowIndex) {
|
|
138
98
|
var _a, _b;
|
|
139
|
-
|
|
140
99
|
var content = _internals.internals.safeRender(firstCol, row, rowIndex);
|
|
141
|
-
|
|
142
100
|
var meta = getGroupingMeta(row);
|
|
143
|
-
|
|
144
101
|
if (!meta.isGroupHeader || !meta.expandable) {
|
|
145
102
|
var marginLeft = textOffset + (meta.isGroupHeader ? 0 : indents.indentSize);
|
|
146
103
|
return /*#__PURE__*/_react.default.createElement(_commonViews.InlineFlexCell, {
|
|
@@ -149,7 +106,6 @@ function rowGrouping() {
|
|
|
149
106
|
}
|
|
150
107
|
}, meta.isGroupHeader ? (_a = row.groupTitle) !== null && _a !== void 0 ? _a : content : content);
|
|
151
108
|
}
|
|
152
|
-
|
|
153
109
|
var expanded = openKeySet.has(row[primaryKey]);
|
|
154
110
|
var expandCls = expanded ? _base.Classes.expanded : _base.Classes.collapsed;
|
|
155
111
|
return /*#__PURE__*/_react.default.createElement(_commonViews.ExpansionCell, {
|
|
@@ -162,39 +118,31 @@ function rowGrouping() {
|
|
|
162
118
|
}
|
|
163
119
|
}), (_b = row.groupTitle) !== null && _b !== void 0 ? _b : content);
|
|
164
120
|
};
|
|
165
|
-
|
|
166
121
|
var getCellProps = function getCellProps(value, row, rowIndex) {
|
|
167
122
|
var _a;
|
|
168
|
-
|
|
169
123
|
var meta = getGroupingMeta(row);
|
|
170
|
-
|
|
171
124
|
if (!meta.isGroupHeader) {
|
|
172
125
|
return;
|
|
173
126
|
}
|
|
174
|
-
|
|
175
127
|
var expandable = meta.expandable;
|
|
176
128
|
var rowKey = row[primaryKey];
|
|
177
129
|
var expanded = openKeySet.has(rowKey);
|
|
178
130
|
var onClick;
|
|
179
|
-
|
|
180
131
|
if (expandable) {
|
|
181
132
|
onClick = function onClick(e) {
|
|
182
133
|
if (opts.stopClickEventPropagation) {
|
|
183
134
|
e.stopPropagation();
|
|
184
135
|
}
|
|
185
|
-
|
|
186
136
|
if (expanded) {
|
|
187
137
|
onChangeOpenKeys((0, _filter.default)(openKeys).call(openKeys, function (key) {
|
|
188
138
|
return key !== rowKey;
|
|
189
139
|
}), rowKey, 'collapse');
|
|
190
140
|
} else {
|
|
191
141
|
var _context2;
|
|
192
|
-
|
|
193
142
|
onChangeOpenKeys((0, _concat.default)(_context2 = []).call(_context2, (0, _toConsumableArray2.default)(openKeys), [rowKey]), rowKey, 'expand');
|
|
194
143
|
}
|
|
195
144
|
};
|
|
196
145
|
}
|
|
197
|
-
|
|
198
146
|
var prevProps = (_a = firstCol.getCellProps) === null || _a === void 0 ? void 0 : _a.call(firstCol, value, row, rowIndex);
|
|
199
147
|
return (0, _utils.mergeCellProps)(prevProps, {
|
|
200
148
|
onClick: onClick,
|
|
@@ -203,7 +151,6 @@ function rowGrouping() {
|
|
|
203
151
|
}
|
|
204
152
|
});
|
|
205
153
|
};
|
|
206
|
-
|
|
207
154
|
return (0, _concat.default)(_context3 = [(0, _extends3.default)((0, _extends3.default)({}, firstCol), {
|
|
208
155
|
title: /*#__PURE__*/_react.default.createElement("div", {
|
|
209
156
|
style: {
|
|
@@ -1,52 +1,36 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
4
|
Object.defineProperty(exports, "__esModule", {
|
|
6
5
|
value: true
|
|
7
6
|
});
|
|
8
7
|
exports.singleSelect = singleSelect;
|
|
9
|
-
|
|
10
8
|
var _slice = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/slice"));
|
|
11
|
-
|
|
12
9
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/defineProperty"));
|
|
13
|
-
|
|
14
10
|
var _extends3 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/extends"));
|
|
15
|
-
|
|
16
11
|
var _react = _interopRequireDefault(require("react"));
|
|
17
|
-
|
|
18
12
|
var _internals = require("../../internals");
|
|
19
|
-
|
|
20
13
|
var _others = require("../../utils/others");
|
|
21
|
-
|
|
22
14
|
var _utils = require("../../utils");
|
|
23
|
-
|
|
24
15
|
function singleSelect() {
|
|
25
16
|
var opts = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
26
17
|
return function singleSelectStep(pipeline) {
|
|
27
18
|
var _context;
|
|
28
|
-
|
|
29
19
|
var _a, _b, _c, _d, _e, _f;
|
|
30
|
-
|
|
31
20
|
var Radio = pipeline.ctx.components.Radio;
|
|
32
|
-
|
|
33
21
|
if (Radio == null) {
|
|
34
22
|
throw new Error('使用 singleSelect 之前需要通过 pipeline context 设置 components.Radio');
|
|
35
23
|
}
|
|
36
|
-
|
|
37
24
|
var stateKey = 'singleSelect';
|
|
38
25
|
var clickArea = (_a = opts.clickArea) !== null && _a !== void 0 ? _a : 'radio';
|
|
39
26
|
var isDisabled = (_b = opts.isDisabled) !== null && _b !== void 0 ? _b : (0, _others.always)(false);
|
|
40
27
|
var primaryKey = pipeline.ensurePrimaryKey('singleSelect');
|
|
41
28
|
var value = (_d = (_c = opts.value) !== null && _c !== void 0 ? _c : pipeline.getStateAtKey(stateKey)) !== null && _d !== void 0 ? _d : opts.defaultValue;
|
|
42
|
-
|
|
43
29
|
var onChange = function onChange(rowKey) {
|
|
44
30
|
var _a;
|
|
45
|
-
|
|
46
31
|
(_a = opts.onChange) === null || _a === void 0 ? void 0 : _a.call(opts, rowKey);
|
|
47
32
|
pipeline.setStateAtKey(stateKey, rowKey);
|
|
48
33
|
};
|
|
49
|
-
|
|
50
34
|
var radioColumn = (0, _extends3.default)((0, _extends3.default)({
|
|
51
35
|
name: '',
|
|
52
36
|
width: 50,
|
|
@@ -54,12 +38,9 @@ function singleSelect() {
|
|
|
54
38
|
}, opts.radioColumn), {
|
|
55
39
|
getCellProps: function getCellProps(value, row, rowIndex) {
|
|
56
40
|
var _a, _b;
|
|
57
|
-
|
|
58
41
|
var preCellProps = (_b = (_a = opts.radioColumn) === null || _a === void 0 ? void 0 : _a.getCellProps) === null || _b === void 0 ? void 0 : _b.call(_a, value, row, rowIndex);
|
|
59
|
-
|
|
60
42
|
if (clickArea === 'cell') {
|
|
61
43
|
var rowKey = _internals.internals.safeGetRowKey(primaryKey, row, rowIndex);
|
|
62
|
-
|
|
63
44
|
var disabled = isDisabled(row, rowIndex);
|
|
64
45
|
return (0, _utils.mergeCellProps)(preCellProps, {
|
|
65
46
|
style: {
|
|
@@ -69,33 +50,26 @@ function singleSelect() {
|
|
|
69
50
|
if (opts.stopClickEventPropagation) {
|
|
70
51
|
e.stopPropagation();
|
|
71
52
|
}
|
|
72
|
-
|
|
73
53
|
onChange(rowKey);
|
|
74
54
|
}
|
|
75
55
|
});
|
|
76
56
|
}
|
|
77
|
-
|
|
78
57
|
return preCellProps;
|
|
79
58
|
},
|
|
80
59
|
render: function render(_, row, rowIndex) {
|
|
81
60
|
if (row[pipeline.getFeatureOptions('footerRowMetaKey')]) {
|
|
82
61
|
return null;
|
|
83
62
|
}
|
|
84
|
-
|
|
85
63
|
var rowKey = _internals.internals.safeGetRowKey(primaryKey, row, rowIndex);
|
|
86
|
-
|
|
87
64
|
return /*#__PURE__*/_react.default.createElement(Radio, {
|
|
88
65
|
checked: value === rowKey,
|
|
89
66
|
disabled: isDisabled(row, rowIndex),
|
|
90
67
|
onChange: clickArea === 'radio' ? function (arg1, arg2) {
|
|
91
68
|
var _a;
|
|
92
|
-
|
|
93
69
|
var nativeEvent = (_a = arg2 === null || arg2 === void 0 ? void 0 : arg2.nativeEvent) !== null && _a !== void 0 ? _a : arg1 === null || arg1 === void 0 ? void 0 : arg1.nativeEvent;
|
|
94
|
-
|
|
95
70
|
if (nativeEvent && opts.stopClickEventPropagation) {
|
|
96
71
|
nativeEvent.stopPropagation();
|
|
97
72
|
}
|
|
98
|
-
|
|
99
73
|
onChange(rowKey);
|
|
100
74
|
} : undefined
|
|
101
75
|
});
|
|
@@ -104,39 +78,31 @@ function singleSelect() {
|
|
|
104
78
|
});
|
|
105
79
|
var nextColumns = (0, _slice.default)(_context = pipeline.getColumns()).call(_context);
|
|
106
80
|
var radioPlacement = (_f = opts.radioPlacement) !== null && _f !== void 0 ? _f : 'start';
|
|
107
|
-
|
|
108
81
|
if (radioPlacement === 'start') {
|
|
109
82
|
nextColumns.unshift(radioColumn);
|
|
110
83
|
} else {
|
|
111
84
|
nextColumns.push(radioColumn);
|
|
112
85
|
}
|
|
113
|
-
|
|
114
86
|
pipeline.columns(nextColumns);
|
|
115
87
|
pipeline.appendRowPropsGetter(function (row, rowIndex) {
|
|
116
88
|
var rowKey = _internals.internals.safeGetRowKey(primaryKey, row, rowIndex);
|
|
117
|
-
|
|
118
89
|
var style = {};
|
|
119
90
|
var className;
|
|
120
91
|
var onClick;
|
|
121
|
-
|
|
122
92
|
if (opts.highlightRowWhenSelected) {
|
|
123
93
|
if (value === rowKey) {
|
|
124
94
|
className = 'highlight';
|
|
125
95
|
}
|
|
126
96
|
}
|
|
127
|
-
|
|
128
97
|
if (clickArea === 'row' && !isDisabled(row, rowIndex)) {
|
|
129
98
|
style.cursor = 'pointer';
|
|
130
|
-
|
|
131
99
|
onClick = function onClick(e) {
|
|
132
100
|
if (opts.stopClickEventPropagation) {
|
|
133
101
|
e.stopPropagation();
|
|
134
102
|
}
|
|
135
|
-
|
|
136
103
|
onChange(rowKey);
|
|
137
104
|
};
|
|
138
105
|
}
|
|
139
|
-
|
|
140
106
|
return {
|
|
141
107
|
className: className,
|
|
142
108
|
style: style,
|
|
@@ -1,64 +1,39 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _sliceInstanceProperty2 = require("@babel/runtime-corejs3/core-js-stable/instance/slice");
|
|
4
|
-
|
|
5
4
|
var _Array$from = require("@babel/runtime-corejs3/core-js-stable/array/from");
|
|
6
|
-
|
|
7
5
|
var _Symbol = require("@babel/runtime-corejs3/core-js-stable/symbol");
|
|
8
|
-
|
|
9
6
|
var _getIteratorMethod = require("@babel/runtime-corejs3/core-js/get-iterator-method");
|
|
10
|
-
|
|
11
7
|
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
|
|
12
|
-
|
|
13
8
|
Object.defineProperty(exports, "__esModule", {
|
|
14
9
|
value: true
|
|
15
10
|
});
|
|
16
11
|
exports.sort = sort;
|
|
17
|
-
|
|
18
12
|
var _filter = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/filter"));
|
|
19
|
-
|
|
20
13
|
var _slice = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/slice"));
|
|
21
|
-
|
|
22
14
|
var _map = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/map"));
|
|
23
|
-
|
|
24
15
|
var _map2 = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/map"));
|
|
25
|
-
|
|
26
16
|
var _concat = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/concat"));
|
|
27
|
-
|
|
28
17
|
var _findIndex = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/find-index"));
|
|
29
|
-
|
|
30
18
|
var _extends2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/extends"));
|
|
31
|
-
|
|
32
19
|
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/taggedTemplateLiteral"));
|
|
33
|
-
|
|
34
20
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/defineProperty"));
|
|
35
|
-
|
|
36
21
|
var _react = _interopRequireDefault(require("react"));
|
|
37
|
-
|
|
38
22
|
var _styledComponents = _interopRequireDefault(require("styled-components"));
|
|
39
|
-
|
|
40
23
|
var _classnames = _interopRequireDefault(require("classnames"));
|
|
41
|
-
|
|
42
24
|
var _internals = require("../../internals");
|
|
43
|
-
|
|
44
25
|
var _utils = require("../../utils");
|
|
45
|
-
|
|
46
26
|
var _styles = require("../../base/styles");
|
|
47
|
-
|
|
48
27
|
var _templateObject;
|
|
49
|
-
|
|
50
28
|
function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof _Symbol !== "undefined" && _getIteratorMethod(o) || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
|
|
51
|
-
|
|
52
29
|
function _unsupportedIterableToArray(o, minLen) { var _context4; if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = _sliceInstanceProperty2(_context4 = Object.prototype.toString.call(o)).call(_context4, 8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return _Array$from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
53
|
-
|
|
54
30
|
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
|
|
55
|
-
|
|
56
31
|
function SortIcon(_ref) {
|
|
57
32
|
var _ref$size = _ref.size,
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
33
|
+
size = _ref$size === void 0 ? 32 : _ref$size,
|
|
34
|
+
style = _ref.style,
|
|
35
|
+
className = _ref.className,
|
|
36
|
+
order = _ref.order;
|
|
62
37
|
return /*#__PURE__*/_react.default.createElement("svg", {
|
|
63
38
|
style: style,
|
|
64
39
|
className: className,
|
|
@@ -79,16 +54,14 @@ function SortIcon(_ref) {
|
|
|
79
54
|
d: "M24 24L16 32 8 24z "
|
|
80
55
|
}));
|
|
81
56
|
}
|
|
82
|
-
|
|
83
57
|
function DefaultSortHeaderCell(_ref2) {
|
|
84
58
|
var _cx;
|
|
85
|
-
|
|
86
59
|
var children = _ref2.children,
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
60
|
+
column = _ref2.column,
|
|
61
|
+
onToggle = _ref2.onToggle,
|
|
62
|
+
sortOrder = _ref2.sortOrder,
|
|
63
|
+
sortIndex = _ref2.sortIndex,
|
|
64
|
+
sortOptions = _ref2.sortOptions;
|
|
92
65
|
// 通过 justify-content 来与 col.align 保持对齐方向一致
|
|
93
66
|
var justifyContent = column.align === 'right' ? 'flex-end' : column.align === 'center' ? 'center' : 'flex-start';
|
|
94
67
|
return /*#__PURE__*/_react.default.createElement(TableHeaderCell, {
|
|
@@ -116,48 +89,39 @@ function DefaultSortHeaderCell(_ref2) {
|
|
|
116
89
|
}
|
|
117
90
|
}, sortIndex + 1));
|
|
118
91
|
}
|
|
119
|
-
|
|
120
92
|
function hasAnySortableColumns(cols) {
|
|
121
93
|
return cols.some(function (col) {
|
|
122
94
|
var _a;
|
|
123
|
-
|
|
124
95
|
return Boolean((_a = col.features) === null || _a === void 0 ? void 0 : _a.sortable) || !(0, _utils.isLeafNode)(col) && hasAnySortableColumns(col.children);
|
|
125
96
|
});
|
|
126
97
|
}
|
|
127
|
-
|
|
128
98
|
var TableHeaderCell = _styledComponents.default.div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n cursor: pointer;\n display: flex;\n align-items: center;\n // flex: auto;\n"])));
|
|
129
|
-
|
|
130
99
|
var stateKey = 'sort';
|
|
131
|
-
|
|
132
100
|
function sort() {
|
|
133
101
|
var opts = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
134
102
|
return function sortStep(pipeline) {
|
|
135
103
|
var _a, _b, _c;
|
|
136
|
-
|
|
137
104
|
var _opts$orders = opts.orders,
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
105
|
+
orders = _opts$orders === void 0 ? ['desc', 'asc', 'none'] : _opts$orders,
|
|
106
|
+
_opts$mode = opts.mode,
|
|
107
|
+
mode = _opts$mode === void 0 ? 'multiple' : _opts$mode,
|
|
108
|
+
_opts$SortHeaderCell = opts.SortHeaderCell,
|
|
109
|
+
SortHeaderCell = _opts$SortHeaderCell === void 0 ? DefaultSortHeaderCell : _opts$SortHeaderCell,
|
|
110
|
+
keepDataSource = opts.keepDataSource,
|
|
111
|
+
highlightColumnWhenActive = opts.highlightColumnWhenActive,
|
|
112
|
+
stopClickEventPropagation = opts.stopClickEventPropagation,
|
|
113
|
+
sortIconHoverShow = opts.sortIconHoverShow;
|
|
147
114
|
var inputSorts = (_c = (_b = (_a = opts.sorts) !== null && _a !== void 0 ? _a : pipeline.getStateAtKey(stateKey)) !== null && _b !== void 0 ? _b : opts.defaultSorts) !== null && _c !== void 0 ? _c : [];
|
|
148
115
|
var activeSorts = (0, _filter.default)(inputSorts).call(inputSorts, function (s) {
|
|
149
116
|
return s.order !== 'none';
|
|
150
|
-
});
|
|
151
|
-
|
|
117
|
+
});
|
|
118
|
+
// 单字段排序的情况下 sorts 中只有第一个排序字段才会生效
|
|
152
119
|
var sorts = mode === 'multiple' ? activeSorts : (0, _slice.default)(activeSorts).call(activeSorts, 0, 1);
|
|
153
|
-
|
|
154
120
|
var onChangeSortsInMultipleMode = function onChangeSortsInMultipleMode(nextSorts, currentSort) {
|
|
155
121
|
var _a;
|
|
156
|
-
|
|
157
122
|
(_a = opts.onChangeSorts) === null || _a === void 0 ? void 0 : _a.call(opts, nextSorts, currentSort);
|
|
158
123
|
pipeline.setStateAtKey(stateKey, nextSorts);
|
|
159
124
|
};
|
|
160
|
-
|
|
161
125
|
var onChangeSorts = mode === 'multiple' ? onChangeSortsInMultipleMode : function (nextSorts, currentSort) {
|
|
162
126
|
// 单字段排序的情况下,nextSorts 中只有最后一个排序字段才会生效
|
|
163
127
|
var len = nextSorts.length;
|
|
@@ -180,59 +144,41 @@ function sort() {
|
|
|
180
144
|
}));
|
|
181
145
|
var dataSource = pipeline.getDataSource();
|
|
182
146
|
var columns = pipeline.getColumns();
|
|
183
|
-
|
|
184
|
-
if (process.env.NODE_ENV !== 'production') {
|
|
185
|
-
if (!hasAnySortableColumns(columns)) {
|
|
186
|
-
_utils.console.warn('commonTransform.sort 缺少可排序的列,请通过 column.features.sortable 来指定哪些列可排序', columns);
|
|
187
|
-
}
|
|
188
|
-
}
|
|
189
|
-
|
|
190
147
|
pipeline.dataSource(processDataSource(dataSource));
|
|
191
148
|
pipeline.columns(processColumns(columns));
|
|
192
149
|
return pipeline;
|
|
193
|
-
|
|
194
150
|
function processDataSource(dataSource) {
|
|
195
151
|
var _context, _context2;
|
|
196
|
-
|
|
197
152
|
if (keepDataSource) {
|
|
198
153
|
return dataSource;
|
|
199
154
|
}
|
|
200
|
-
|
|
201
155
|
if (sortMap.size === 0) {
|
|
202
156
|
return dataSource;
|
|
203
157
|
}
|
|
204
|
-
|
|
205
158
|
var sortColumnsMap = new _map.default((0, _map2.default)(_context = (0, _filter.default)(_context2 = (0, _utils.collectNodes)(columns, 'leaf-only')).call(_context2, function (col) {
|
|
206
159
|
var _a, _b;
|
|
207
|
-
|
|
208
160
|
return ((_a = col.features) === null || _a === void 0 ? void 0 : _a.sortable) !== false && ((_b = col.features) === null || _b === void 0 ? void 0 : _b.sortable) != null;
|
|
209
161
|
})).call(_context, function (col) {
|
|
210
162
|
return [col.code, col];
|
|
211
163
|
}));
|
|
212
164
|
return (0, _utils.layeredSort)(dataSource, function (x, y) {
|
|
213
165
|
var _iterator = _createForOfIteratorHelper(sorts),
|
|
214
|
-
|
|
215
|
-
|
|
166
|
+
_step;
|
|
216
167
|
try {
|
|
217
168
|
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
218
169
|
var _step$value = _step.value,
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
var column = sortColumnsMap.get(code);
|
|
222
|
-
|
|
170
|
+
code = _step$value.code,
|
|
171
|
+
order = _step$value.order;
|
|
172
|
+
var column = sortColumnsMap.get(code);
|
|
173
|
+
// 如果 code 对应的 column 不可排序,我们跳过该 code
|
|
223
174
|
if (column == null) {
|
|
224
175
|
continue;
|
|
225
176
|
}
|
|
226
|
-
|
|
227
177
|
var sortable = column.features.sortable;
|
|
228
178
|
var compareFn = typeof sortable === 'function' ? sortable : _utils.smartCompare;
|
|
229
|
-
|
|
230
179
|
var xValue = _internals.internals.safeGetValue(column, x, -1);
|
|
231
|
-
|
|
232
180
|
var yValue = _internals.internals.safeGetValue(column, y, -1);
|
|
233
|
-
|
|
234
181
|
var cmp = compareFn(xValue, yValue, x, y);
|
|
235
|
-
|
|
236
182
|
if (cmp !== 0) {
|
|
237
183
|
return cmp * (order === 'asc' ? 1 : -1);
|
|
238
184
|
}
|
|
@@ -242,16 +188,13 @@ function sort() {
|
|
|
242
188
|
} finally {
|
|
243
189
|
_iterator.f();
|
|
244
190
|
}
|
|
245
|
-
|
|
246
191
|
return 0;
|
|
247
192
|
});
|
|
248
|
-
}
|
|
249
|
-
|
|
250
|
-
|
|
193
|
+
}
|
|
194
|
+
// 在「升序 - 降序 - 不排序」之间不断切换
|
|
251
195
|
function toggle(code) {
|
|
252
196
|
var sort = sortMap.get(code);
|
|
253
197
|
var currentSort;
|
|
254
|
-
|
|
255
198
|
if (sort == null) {
|
|
256
199
|
currentSort = {
|
|
257
200
|
code: code,
|
|
@@ -268,7 +211,6 @@ function sort() {
|
|
|
268
211
|
code: code,
|
|
269
212
|
order: nextOrder
|
|
270
213
|
};
|
|
271
|
-
|
|
272
214
|
if (nextOrder === 'none') {
|
|
273
215
|
nextSorts.pop();
|
|
274
216
|
} else {
|
|
@@ -276,43 +218,33 @@ function sort() {
|
|
|
276
218
|
order: nextOrder
|
|
277
219
|
});
|
|
278
220
|
}
|
|
279
|
-
|
|
280
221
|
onChangeSorts(nextSorts, currentSort);
|
|
281
222
|
}
|
|
282
223
|
}
|
|
283
|
-
|
|
284
224
|
function processColumns(columns) {
|
|
285
225
|
return (0, _map2.default)(columns).call(columns, dfs);
|
|
286
|
-
|
|
287
226
|
function dfs(col) {
|
|
288
227
|
var _a;
|
|
289
|
-
|
|
290
228
|
var result = (0, _extends2.default)({}, col);
|
|
291
229
|
var sortable = col.code && (((_a = col.features) === null || _a === void 0 ? void 0 : _a.sortable) || sortMap.has(col.code));
|
|
292
230
|
var active = sortable && sortMap.has(col.code);
|
|
293
|
-
|
|
294
231
|
if (sortable) {
|
|
295
232
|
var sortIndex = -1;
|
|
296
233
|
var sortOrder = 'none';
|
|
297
|
-
|
|
298
234
|
if (active) {
|
|
299
235
|
var _sortMap$get = sortMap.get(col.code),
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
236
|
+
order = _sortMap$get.order,
|
|
237
|
+
index = _sortMap$get.index;
|
|
303
238
|
sortOrder = order;
|
|
304
239
|
sortIndex = index;
|
|
305
|
-
|
|
306
240
|
if (highlightColumnWhenActive) {
|
|
307
241
|
result.headerCellProps = (0, _utils.mergeCellProps)(col.headerCellProps, {
|
|
308
242
|
style: {
|
|
309
243
|
background: 'var(--header-highlight-bgcolor)'
|
|
310
244
|
}
|
|
311
245
|
});
|
|
312
|
-
|
|
313
246
|
result.getCellProps = function (value, row, rowIndex) {
|
|
314
247
|
var prevCellProps = _internals.internals.safeGetCellProps(col, row, rowIndex);
|
|
315
|
-
|
|
316
248
|
return (0, _utils.mergeCellProps)(prevCellProps, {
|
|
317
249
|
style: {
|
|
318
250
|
background: 'var(--highlight-bgcolor)'
|
|
@@ -321,13 +253,11 @@ function sort() {
|
|
|
321
253
|
};
|
|
322
254
|
}
|
|
323
255
|
}
|
|
324
|
-
|
|
325
256
|
var sortNode = /*#__PURE__*/_react.default.createElement(SortHeaderCell, {
|
|
326
257
|
onToggle: function onToggle(e) {
|
|
327
258
|
if (stopClickEventPropagation) {
|
|
328
259
|
e.stopPropagation();
|
|
329
260
|
}
|
|
330
|
-
|
|
331
261
|
toggle(col.code);
|
|
332
262
|
},
|
|
333
263
|
sortOrder: sortOrder,
|
|
@@ -337,22 +267,19 @@ function sort() {
|
|
|
337
267
|
}, _internals.internals.safeRenderHeader((0, _extends2.default)((0, _extends2.default)({}, col), {
|
|
338
268
|
title: col.title && col.title[0] ? col.title[0] : col.title
|
|
339
269
|
})));
|
|
340
|
-
|
|
341
270
|
var _sortNodeWithoutTitle = /*#__PURE__*/_react.default.createElement(SortHeaderCell, {
|
|
342
271
|
onToggle: function onToggle(e) {
|
|
343
272
|
if (stopClickEventPropagation) {
|
|
344
273
|
e.stopPropagation();
|
|
345
274
|
}
|
|
346
|
-
|
|
347
275
|
toggle(col.code);
|
|
348
276
|
},
|
|
349
277
|
sortOrder: sortOrder,
|
|
350
278
|
column: col,
|
|
351
279
|
sortIndex: sortIndex,
|
|
352
280
|
sortOptions: sortOptions
|
|
353
|
-
});
|
|
354
|
-
|
|
355
|
-
|
|
281
|
+
});
|
|
282
|
+
// 开启标题行高自适应后,修改表头的渲染结构
|
|
356
283
|
if (col.renderHeader) {
|
|
357
284
|
result.title = col.renderHeader(result.title, _sortNodeWithoutTitle);
|
|
358
285
|
} else {
|
|
@@ -363,17 +290,13 @@ function sort() {
|
|
|
363
290
|
}
|
|
364
291
|
}
|
|
365
292
|
}
|
|
366
|
-
|
|
367
293
|
if (!(0, _utils.isLeafNode)(col)) {
|
|
368
294
|
var _context3;
|
|
369
|
-
|
|
370
295
|
result.children = (0, _map2.default)(_context3 = col.children).call(_context3, dfs);
|
|
371
296
|
}
|
|
372
|
-
|
|
373
297
|
return result;
|
|
374
298
|
}
|
|
375
299
|
}
|
|
376
|
-
|
|
377
300
|
function getNextOrder(order) {
|
|
378
301
|
var idx = orders.indexOf(order);
|
|
379
302
|
return orders[idx === orders.length - 1 ? 0 : idx + 1];
|