@kdcloudjs/table 1.2.0-canary.6 → 1.2.0-canary.6-hotfix.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +568 -568
- package/README.md +111 -111
- package/dist/@kdcloudjs/table.css +1 -1
- package/dist/@kdcloudjs/table.js +1877 -3363
- 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/kd-ui-complete.less +777 -777
- 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/style/color/colors.less +1 -1
- package/es/style/core/index.less +1 -1
- package/es/style/core/motion/other.less +27 -27
- package/es/style/core/motion/slide.less +53 -53
- package/es/style/core/motion.less +1 -1
- package/es/style/core/reset.less +185 -185
- package/es/style/index.less +1 -1
- package/es/style/mixins/index.less +18 -18
- package/es/style/mixins/overlay.less +21 -21
- package/es/style/mixins/reset.less +12 -12
- package/es/style/themes/default.less +445 -445
- 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.d.ts +2 -1
- package/es/table/base/header.js +17 -68
- package/es/table/base/helpers/SpanManager.js +3 -9
- package/es/table/base/helpers/TableDOMUtils.js +3 -26
- 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 +11 -44
- package/es/table/base/helpers/rowHeightManager.js +0 -28
- package/es/table/base/html-table.js +15 -36
- package/es/table/base/loading.js +6 -8
- package/es/table/base/renderTemplates.js +50 -54
- package/es/table/base/styles.js +1 -10
- package/es/table/base/table.js +116 -189
- 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 -38
- 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 -95
- package/es/table/pipeline/features/columnFilter.js +11 -44
- 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/rowGrouping.js +2 -35
- package/es/table/pipeline/features/singleSelect.js +0 -24
- package/es/table/pipeline/features/sort.js +29 -79
- package/es/table/pipeline/features/tips.js +0 -6
- package/es/table/pipeline/features/treeMode.js +9 -43
- package/es/table/pipeline/features/treeSelect.js +0 -26
- package/es/table/pipeline/pipeline.js +9 -49
- 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/style/index.less +1 -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 -88
- 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/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/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/style/color/colors.less +1 -1
- package/lib/style/components.less +1 -1
- package/lib/style/core/index.less +1 -1
- package/lib/style/core/motion/other.less +27 -27
- package/lib/style/core/motion/slide.less +53 -53
- package/lib/style/core/motion.less +1 -1
- package/lib/style/core/reset.less +185 -185
- package/lib/style/index.less +1 -1
- package/lib/style/mixins/index.less +18 -18
- package/lib/style/mixins/overlay.less +21 -21
- package/lib/style/mixins/reset.less +12 -12
- package/lib/style/themes/default.less +445 -445
- 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.d.ts +2 -1
- package/lib/table/base/header.js +17 -78
- package/lib/table/base/helpers/SpanManager.js +3 -11
- package/lib/table/base/helpers/TableDOMUtils.js +1 -26
- 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 +11 -62
- package/lib/table/base/helpers/rowHeightManager.js +0 -33
- package/lib/table/base/html-table.js +15 -46
- package/lib/table/base/index.js +0 -2
- package/lib/table/base/loading.js +6 -12
- package/lib/table/base/renderTemplates.js +51 -68
- package/lib/table/base/styles.js +1 -22
- package/lib/table/base/table.js +116 -222
- 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 -45
- 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 -101
- package/lib/table/pipeline/features/columnFilter.js +11 -58
- 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 -22
- package/lib/table/pipeline/features/mergeCellHover.js +0 -5
- package/lib/table/pipeline/features/multiSelect.js +15 -70
- package/lib/table/pipeline/features/rangeSelection.js +63 -159
- package/lib/table/pipeline/features/rowDetail.js +2 -65
- package/lib/table/pipeline/features/rowGrouping.js +2 -55
- package/lib/table/pipeline/features/singleSelect.js +0 -33
- package/lib/table/pipeline/features/sort.js +29 -99
- package/lib/table/pipeline/features/tips.js +0 -15
- package/lib/table/pipeline/features/treeMode.js +9 -64
- package/lib/table/pipeline/features/treeSelect.js +0 -34
- package/lib/table/pipeline/index.js +0 -8
- package/lib/table/pipeline/pipeline.js +9 -58
- 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/style/index.less +1 -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 -112
- 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/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 -20
- 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/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/package.json +219 -218
|
@@ -1,119 +1,89 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _Reflect$construct = require("@babel/runtime-corejs3/core-js-stable/reflect/construct");
|
|
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.default = void 0;
|
|
11
|
-
|
|
12
9
|
var _extends2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/extends"));
|
|
13
|
-
|
|
14
10
|
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/classCallCheck"));
|
|
15
|
-
|
|
16
11
|
var _createClass2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/createClass"));
|
|
17
|
-
|
|
18
12
|
var _inherits2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/inherits"));
|
|
19
|
-
|
|
20
13
|
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/possibleConstructorReturn"));
|
|
21
|
-
|
|
22
14
|
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/getPrototypeOf"));
|
|
23
|
-
|
|
24
15
|
var _getOwnPropertySymbols = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/get-own-property-symbols"));
|
|
25
|
-
|
|
26
16
|
var _react = _interopRequireDefault(require("react"));
|
|
27
|
-
|
|
28
17
|
var _rxjs = require("rxjs");
|
|
29
|
-
|
|
30
18
|
var _base = require("../../base");
|
|
31
|
-
|
|
32
19
|
var _crossTable = require("../cross-table");
|
|
33
|
-
|
|
34
20
|
var _buildCrossTreeTable2 = _interopRequireDefault(require("./buildCrossTreeTable"));
|
|
35
|
-
|
|
36
21
|
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = _Reflect$construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
|
|
37
|
-
|
|
38
22
|
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !_Reflect$construct) return false; if (_Reflect$construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(_Reflect$construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
39
|
-
|
|
40
23
|
var __rest = void 0 && (void 0).__rest || function (s, e) {
|
|
41
24
|
var t = {};
|
|
42
|
-
|
|
43
25
|
for (var p in s) {
|
|
44
26
|
if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
|
|
45
27
|
}
|
|
46
|
-
|
|
47
28
|
if (s != null && typeof _getOwnPropertySymbols.default === "function") for (var i = 0, p = (0, _getOwnPropertySymbols.default)(s); i < p.length; i++) {
|
|
48
29
|
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
|
|
49
30
|
}
|
|
50
31
|
return t;
|
|
51
32
|
};
|
|
52
|
-
|
|
53
33
|
var CrossTreeTable = /*#__PURE__*/function (_React$Component) {
|
|
54
34
|
(0, _inherits2.default)(CrossTreeTable, _React$Component);
|
|
55
|
-
|
|
56
35
|
var _super = _createSuper(CrossTreeTable);
|
|
57
|
-
|
|
58
36
|
function CrossTreeTable(props) {
|
|
59
37
|
var _this;
|
|
60
|
-
|
|
61
38
|
(0, _classCallCheck2.default)(this, CrossTreeTable);
|
|
62
39
|
_this = _super.call(this, props);
|
|
63
|
-
|
|
64
40
|
_this.onChangeOpenKeys = function (nextOpenKeys) {
|
|
65
41
|
_this.props.onChangeOpenKeys(nextOpenKeys);
|
|
66
|
-
|
|
67
42
|
if (!('openKeys' in _this.props)) {
|
|
68
43
|
_this.setState({
|
|
69
44
|
openKeys: nextOpenKeys
|
|
70
45
|
});
|
|
71
46
|
}
|
|
72
47
|
};
|
|
73
|
-
|
|
74
48
|
_this.state = {
|
|
75
49
|
openKeys: props.defaultOpenKeys
|
|
76
50
|
};
|
|
77
51
|
return _this;
|
|
78
52
|
}
|
|
79
|
-
|
|
80
53
|
(0, _createClass2.default)(CrossTreeTable, [{
|
|
81
54
|
key: "render",
|
|
82
55
|
value: function render() {
|
|
83
56
|
var _a = this.props,
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
57
|
+
_a$BaseTableComponent = _a.BaseTableComponent,
|
|
58
|
+
BaseTableComponent = _a$BaseTableComponent === void 0 ? _base.Table : _a$BaseTableComponent,
|
|
59
|
+
leftTree = _a.leftTree,
|
|
60
|
+
topTree = _a.topTree,
|
|
61
|
+
getValue = _a.getValue,
|
|
62
|
+
getCellProps = _a.getCellProps,
|
|
63
|
+
primaryColumn = _a.primaryColumn,
|
|
64
|
+
render = _a.render,
|
|
65
|
+
openKeysProp = _a.openKeys,
|
|
66
|
+
defaultOpenKeys = _a.defaultOpenKeys,
|
|
67
|
+
onChangeOpenKeys = _a.onChangeOpenKeys,
|
|
68
|
+
indentSize = _a.indentSize,
|
|
69
|
+
isLeafNode = _a.isLeafNode,
|
|
70
|
+
baseTableRef = _a.baseTableRef,
|
|
71
|
+
others = __rest(_a, ["BaseTableComponent", "leftTree", "topTree", "getValue", "getCellProps", "primaryColumn", "render", "openKeys", "defaultOpenKeys", "onChangeOpenKeys", "indentSize", "isLeafNode", "baseTableRef"]);
|
|
100
72
|
var openKeys = openKeysProp !== null && openKeysProp !== void 0 ? openKeysProp : this.state.openKeys;
|
|
101
|
-
|
|
102
73
|
var _buildCrossTreeTable = (0, _buildCrossTreeTable2.default)({
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
74
|
+
leftTree: leftTree,
|
|
75
|
+
topTree: topTree,
|
|
76
|
+
getValue: getValue,
|
|
77
|
+
getCellProps: getCellProps,
|
|
78
|
+
render: render,
|
|
79
|
+
primaryColumn: primaryColumn,
|
|
80
|
+
openKeys: openKeys,
|
|
81
|
+
onChangeOpenKeys: this.onChangeOpenKeys,
|
|
82
|
+
indentSize: indentSize,
|
|
83
|
+
isLeafNode: isLeafNode
|
|
84
|
+
}),
|
|
85
|
+
dataSource = _buildCrossTreeTable.dataSource,
|
|
86
|
+
columns = _buildCrossTreeTable.columns;
|
|
117
87
|
return /*#__PURE__*/_react.default.createElement(BaseTableComponent, (0, _extends2.default)({
|
|
118
88
|
ref: baseTableRef
|
|
119
89
|
}, others, {
|
|
@@ -130,13 +100,11 @@ var CrossTreeTable = /*#__PURE__*/function (_React$Component) {
|
|
|
130
100
|
openKeys: nextProps.openKeys
|
|
131
101
|
};
|
|
132
102
|
}
|
|
133
|
-
|
|
134
103
|
return null;
|
|
135
104
|
}
|
|
136
105
|
}]);
|
|
137
106
|
return CrossTreeTable;
|
|
138
107
|
}(_react.default.Component);
|
|
139
|
-
|
|
140
108
|
exports.default = CrossTreeTable;
|
|
141
109
|
CrossTreeTable.defaultProps = {
|
|
142
110
|
defaultOpenKeys: [],
|
|
@@ -1,7 +1,6 @@
|
|
|
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
|
});
|
|
@@ -17,7 +16,5 @@ Object.defineProperty(exports, "buildCrossTreeTable", {
|
|
|
17
16
|
return _buildCrossTreeTable.default;
|
|
18
17
|
}
|
|
19
18
|
});
|
|
20
|
-
|
|
21
19
|
var _crossTreeTable = _interopRequireDefault(require("./cross-tree-table"));
|
|
22
|
-
|
|
23
20
|
var _buildCrossTreeTable = _interopRequireDefault(require("./buildCrossTreeTable"));
|
|
@@ -1,41 +1,32 @@
|
|
|
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.default = buildDrillTree;
|
|
9
|
-
|
|
10
8
|
var _keys = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/keys"));
|
|
11
|
-
|
|
12
9
|
var _slice = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/slice"));
|
|
13
|
-
|
|
14
10
|
var _utils = require("../../utils");
|
|
15
|
-
|
|
16
11
|
var _others = require("../../utils/others");
|
|
17
|
-
|
|
18
12
|
var _simpleEncode = _interopRequireDefault(require("./simpleEncode"));
|
|
19
|
-
|
|
20
13
|
/** 根据指定的 code 序列计算下钻树 */
|
|
21
14
|
function buildDrillTree(data, codes) {
|
|
22
15
|
var _ref = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {},
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
16
|
+
_ref$encode = _ref.encode,
|
|
17
|
+
encode = _ref$encode === void 0 ? _simpleEncode.default : _ref$encode,
|
|
18
|
+
_ref$totalValue = _ref.totalValue,
|
|
19
|
+
totalValue = _ref$totalValue === void 0 ? '总计' : _ref$totalValue,
|
|
20
|
+
_ref$includeTopWrappe = _ref.includeTopWrapper,
|
|
21
|
+
includeTopWrapper = _ref$includeTopWrappe === void 0 ? false : _ref$includeTopWrappe,
|
|
22
|
+
_ref$isExpand = _ref.isExpand,
|
|
23
|
+
isExpand = _ref$isExpand === void 0 ? (0, _others.always)(true) : _ref$isExpand,
|
|
24
|
+
_ref$enforceExpandTot = _ref.enforceExpandTotalNode,
|
|
25
|
+
enforceExpandTotalNode = _ref$enforceExpandTot === void 0 ? true : _ref$enforceExpandTot;
|
|
34
26
|
var emptyPath = [];
|
|
35
27
|
var totalKey = encode(emptyPath);
|
|
36
28
|
var array;
|
|
37
29
|
var hasChild = false;
|
|
38
|
-
|
|
39
30
|
if (codes.length === 0) {
|
|
40
31
|
array = [];
|
|
41
32
|
} else if (!enforceExpandTotalNode && !isExpand(totalKey)) {
|
|
@@ -44,7 +35,6 @@ function buildDrillTree(data, codes) {
|
|
|
44
35
|
} else {
|
|
45
36
|
array = dfs(data, []);
|
|
46
37
|
}
|
|
47
|
-
|
|
48
38
|
if (includeTopWrapper) {
|
|
49
39
|
var rootNode = {
|
|
50
40
|
key: totalKey,
|
|
@@ -52,14 +42,11 @@ function buildDrillTree(data, codes) {
|
|
|
52
42
|
path: emptyPath,
|
|
53
43
|
children: array
|
|
54
44
|
};
|
|
55
|
-
|
|
56
45
|
if (hasChild) {
|
|
57
46
|
rootNode.hasChild = hasChild;
|
|
58
47
|
}
|
|
59
|
-
|
|
60
48
|
return [rootNode];
|
|
61
49
|
}
|
|
62
|
-
|
|
63
50
|
if (includeTopWrapper) {
|
|
64
51
|
return [{
|
|
65
52
|
key: totalKey,
|
|
@@ -68,9 +55,7 @@ function buildDrillTree(data, codes) {
|
|
|
68
55
|
children: array
|
|
69
56
|
}];
|
|
70
57
|
}
|
|
71
|
-
|
|
72
58
|
return array;
|
|
73
|
-
|
|
74
59
|
function dfs(slice, path) {
|
|
75
60
|
var depth = path.length;
|
|
76
61
|
var array = [];
|
|
@@ -78,7 +63,6 @@ function buildDrillTree(data, codes) {
|
|
|
78
63
|
var groups = (0, _utils.groupBy)(slice, function (row) {
|
|
79
64
|
return row[code];
|
|
80
65
|
});
|
|
81
|
-
|
|
82
66
|
for (var _i = 0, _Object$keys = (0, _keys.default)(groups); _i < _Object$keys.length; _i++) {
|
|
83
67
|
var groupKey = _Object$keys[_i];
|
|
84
68
|
path.push(groupKey);
|
|
@@ -89,7 +73,6 @@ function buildDrillTree(data, codes) {
|
|
|
89
73
|
};
|
|
90
74
|
array.push(node);
|
|
91
75
|
var group = groups[groupKey];
|
|
92
|
-
|
|
93
76
|
if (group.length > 0 && depth < codes.length - 1) {
|
|
94
77
|
if (isExpand(node.key)) {
|
|
95
78
|
node.children = dfs(group, path);
|
|
@@ -97,10 +80,8 @@ function buildDrillTree(data, codes) {
|
|
|
97
80
|
node.hasChild = true;
|
|
98
81
|
}
|
|
99
82
|
}
|
|
100
|
-
|
|
101
83
|
path.pop();
|
|
102
84
|
}
|
|
103
|
-
|
|
104
85
|
return array;
|
|
105
86
|
}
|
|
106
87
|
}
|
|
@@ -1,92 +1,67 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _sliceInstanceProperty = 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.buildRecordMap = buildRecordMap;
|
|
17
12
|
exports.buildRecordMatrix = buildRecordMatrix;
|
|
18
|
-
|
|
19
13
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/slicedToArray"));
|
|
20
|
-
|
|
21
14
|
var _set = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/set"));
|
|
22
|
-
|
|
23
15
|
var _map = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/map"));
|
|
24
|
-
|
|
25
16
|
var _filter = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/filter"));
|
|
26
|
-
|
|
27
17
|
var _map2 = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/map"));
|
|
28
|
-
|
|
29
18
|
var _utils = require("../../utils");
|
|
30
|
-
|
|
31
19
|
var _others = require("../../utils/others");
|
|
32
|
-
|
|
33
20
|
var _buildDrillTree = _interopRequireDefault(require("./buildDrillTree"));
|
|
34
|
-
|
|
35
21
|
var _simpleEncode = _interopRequireDefault(require("./simpleEncode"));
|
|
36
|
-
|
|
37
22
|
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; } } }; }
|
|
38
|
-
|
|
39
23
|
function _unsupportedIterableToArray(o, minLen) { var _context5; if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = _sliceInstanceProperty(_context5 = Object.prototype.toString.call(o)).call(_context5, 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); }
|
|
40
|
-
|
|
41
24
|
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; }
|
|
42
|
-
|
|
43
25
|
function fallbackAggregate(slice) {
|
|
44
26
|
return slice.length === 1 ? slice[0] : {};
|
|
45
27
|
}
|
|
46
28
|
/** 根据表格左侧与上方的下钻树,从全量明细数据中计算对应的数据立方 */
|
|
47
|
-
|
|
48
|
-
|
|
49
29
|
function buildRecordMatrix(_ref) {
|
|
50
30
|
var data = _ref.data,
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
31
|
+
leftCodes = _ref.leftCodes,
|
|
32
|
+
topCodes = _ref.topCodes,
|
|
33
|
+
_ref$aggregate = _ref.aggregate,
|
|
34
|
+
aggregate = _ref$aggregate === void 0 ? fallbackAggregate : _ref$aggregate,
|
|
35
|
+
_ref$encode = _ref.encode,
|
|
36
|
+
encode = _ref$encode === void 0 ? _simpleEncode.default : _ref$encode,
|
|
37
|
+
_ref$isLeftExpand = _ref.isLeftExpand,
|
|
38
|
+
isLeftExpand = _ref$isLeftExpand === void 0 ? (0, _others.always)(true) : _ref$isLeftExpand,
|
|
39
|
+
_ref$isTopExpand = _ref.isTopExpand,
|
|
40
|
+
isTopExpand = _ref$isTopExpand === void 0 ? (0, _others.always)(true) : _ref$isTopExpand,
|
|
41
|
+
prebuiltLeftTree = _ref.prebuiltLeftTree,
|
|
42
|
+
prebuiltTopTree = _ref.prebuiltTopTree;
|
|
63
43
|
var ctx = {
|
|
64
44
|
peculiarity: new _set.default()
|
|
65
45
|
};
|
|
66
|
-
|
|
67
46
|
var _ref2 = prebuiltLeftTree !== null && prebuiltLeftTree !== void 0 ? prebuiltLeftTree : (0, _buildDrillTree.default)(data, leftCodes, {
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
47
|
+
encode: encode,
|
|
48
|
+
includeTopWrapper: true,
|
|
49
|
+
isExpand: isLeftExpand
|
|
50
|
+
}),
|
|
51
|
+
_ref3 = (0, _slicedToArray2.default)(_ref2, 1),
|
|
52
|
+
leftRootDrillNode = _ref3[0];
|
|
75
53
|
var _ref4 = prebuiltTopTree !== null && prebuiltTopTree !== void 0 ? prebuiltTopTree : (0, _buildDrillTree.default)(data, topCodes, {
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
54
|
+
encode: encode,
|
|
55
|
+
includeTopWrapper: true,
|
|
56
|
+
isExpand: isTopExpand
|
|
57
|
+
}),
|
|
58
|
+
_ref5 = (0, _slicedToArray2.default)(_ref4, 1),
|
|
59
|
+
topRootDrillNode = _ref5[0];
|
|
83
60
|
var transientMatrixRow = buildByLeft(ctx, data, leftRootDrillNode, 0);
|
|
84
61
|
return makeMatrix(transientMatrixRow);
|
|
85
|
-
|
|
86
62
|
function buildByLeft(ctx, slice, drillNode, depth) {
|
|
87
63
|
var children = null;
|
|
88
64
|
var col;
|
|
89
|
-
|
|
90
65
|
if ((0, _utils.isLeafNode)(drillNode)) {
|
|
91
66
|
col = buildByTop(ctx, slice, topRootDrillNode, 0);
|
|
92
67
|
} else {
|
|
@@ -96,15 +71,12 @@ function buildRecordMatrix(_ref) {
|
|
|
96
71
|
return dwdRow[code];
|
|
97
72
|
});
|
|
98
73
|
ctx.peculiarity.add(code);
|
|
99
|
-
|
|
100
74
|
var _iterator = _createForOfIteratorHelper(drillNode.children),
|
|
101
|
-
|
|
102
|
-
|
|
75
|
+
_step;
|
|
103
76
|
try {
|
|
104
77
|
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
105
78
|
var child = _step.value;
|
|
106
79
|
var group = groups[child.value];
|
|
107
|
-
|
|
108
80
|
if (group) {
|
|
109
81
|
children.push(buildByLeft(ctx, group, child, depth + 1));
|
|
110
82
|
}
|
|
@@ -114,24 +86,20 @@ function buildRecordMatrix(_ref) {
|
|
|
114
86
|
} finally {
|
|
115
87
|
_iterator.f();
|
|
116
88
|
}
|
|
117
|
-
|
|
118
89
|
ctx.peculiarity.delete(code);
|
|
119
90
|
col = mergeColsByTopTree(ctx, (0, _map.default)(children).call(children, function (child) {
|
|
120
91
|
return child.col;
|
|
121
92
|
}));
|
|
122
93
|
}
|
|
123
|
-
|
|
124
94
|
return {
|
|
125
95
|
leftKey: drillNode.key,
|
|
126
96
|
children: children,
|
|
127
97
|
col: col
|
|
128
98
|
};
|
|
129
99
|
}
|
|
130
|
-
|
|
131
100
|
function buildByTop(ctx, slice, drillNode, depth) {
|
|
132
101
|
var children = null;
|
|
133
102
|
var record;
|
|
134
|
-
|
|
135
103
|
if ((0, _utils.isLeafNode)(drillNode)) {
|
|
136
104
|
record = aggregate(slice, ctx);
|
|
137
105
|
} else {
|
|
@@ -141,15 +109,12 @@ function buildRecordMatrix(_ref) {
|
|
|
141
109
|
return dwdRow[code];
|
|
142
110
|
});
|
|
143
111
|
ctx.peculiarity.add(code);
|
|
144
|
-
|
|
145
112
|
var _iterator2 = _createForOfIteratorHelper(drillNode.children),
|
|
146
|
-
|
|
147
|
-
|
|
113
|
+
_step2;
|
|
148
114
|
try {
|
|
149
115
|
for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
|
|
150
116
|
var child = _step2.value;
|
|
151
117
|
var group = groups[child.value];
|
|
152
|
-
|
|
153
118
|
if (group) {
|
|
154
119
|
children.push(buildByTop(ctx, group, child, depth + 1));
|
|
155
120
|
}
|
|
@@ -159,13 +124,11 @@ function buildRecordMatrix(_ref) {
|
|
|
159
124
|
} finally {
|
|
160
125
|
_iterator2.f();
|
|
161
126
|
}
|
|
162
|
-
|
|
163
127
|
ctx.peculiarity.delete(code);
|
|
164
128
|
record = aggregate((0, _map.default)(children).call(children, function (child) {
|
|
165
129
|
return child.record;
|
|
166
130
|
}), ctx);
|
|
167
131
|
}
|
|
168
|
-
|
|
169
132
|
return {
|
|
170
133
|
topKey: drillNode.key,
|
|
171
134
|
topValue: drillNode.value,
|
|
@@ -173,19 +136,15 @@ function buildRecordMatrix(_ref) {
|
|
|
173
136
|
record: record
|
|
174
137
|
};
|
|
175
138
|
}
|
|
176
|
-
|
|
177
139
|
function mergeColsByTopTree(ctx, colsToMerge) {
|
|
178
140
|
return dfs(ctx, colsToMerge, topRootDrillNode, 0);
|
|
179
|
-
|
|
180
141
|
function dfs(ctx, cols, topDrillNode, depth) {
|
|
181
142
|
var children = null;
|
|
182
143
|
var record = aggregate((0, _map.default)(cols).call(cols, function (c) {
|
|
183
144
|
return c.record;
|
|
184
145
|
}), ctx);
|
|
185
|
-
|
|
186
146
|
if (!(0, _utils.isLeafNode)(topDrillNode)) {
|
|
187
147
|
var _context, _context3;
|
|
188
|
-
|
|
189
148
|
var topCode = topCodes[depth];
|
|
190
149
|
ctx.peculiarity.add(topCode);
|
|
191
150
|
var drillChildDict = (0, _others.fromEntries)((0, _map.default)(_context = topDrillNode.children).call(_context, function (child) {
|
|
@@ -193,14 +152,12 @@ function buildRecordMatrix(_ref) {
|
|
|
193
152
|
}));
|
|
194
153
|
var colChildDictArray = (0, _map.default)(cols).call(cols, function (col) {
|
|
195
154
|
var _context2;
|
|
196
|
-
|
|
197
155
|
return (0, _others.fromEntries)((0, _map.default)(_context2 = col.children).call(_context2, function (child) {
|
|
198
156
|
return [child.topValue, child];
|
|
199
157
|
}));
|
|
200
158
|
});
|
|
201
159
|
children = (0, _map.default)(_context3 = topDrillNode.children).call(_context3, function (item) {
|
|
202
160
|
var _context4;
|
|
203
|
-
|
|
204
161
|
var childCols = (0, _filter.default)(_context4 = (0, _map.default)(colChildDictArray).call(colChildDictArray, function (colChildDict) {
|
|
205
162
|
return colChildDict[item.value];
|
|
206
163
|
})).call(_context4, Boolean);
|
|
@@ -208,7 +165,6 @@ function buildRecordMatrix(_ref) {
|
|
|
208
165
|
});
|
|
209
166
|
ctx.peculiarity.delete(topCode);
|
|
210
167
|
}
|
|
211
|
-
|
|
212
168
|
return {
|
|
213
169
|
topKey: topDrillNode.key,
|
|
214
170
|
topValue: topDrillNode.value,
|
|
@@ -217,27 +173,22 @@ function buildRecordMatrix(_ref) {
|
|
|
217
173
|
};
|
|
218
174
|
}
|
|
219
175
|
}
|
|
220
|
-
|
|
221
176
|
function makeMatrix(rootRow) {
|
|
222
177
|
var result = new _map2.default();
|
|
223
178
|
dfsRow(result, rootRow);
|
|
224
179
|
return result;
|
|
225
|
-
|
|
226
180
|
function dfsRow(matrix, row) {
|
|
227
181
|
var subMap = new _map2.default();
|
|
228
182
|
matrix.set(row.leftKey, subMap);
|
|
229
183
|
dfsCol(subMap, row.col);
|
|
230
|
-
|
|
231
184
|
if (!(0, _utils.isLeafNode)(row)) {
|
|
232
185
|
row.children.forEach(function (childRow) {
|
|
233
186
|
dfsRow(matrix, childRow);
|
|
234
187
|
});
|
|
235
188
|
}
|
|
236
189
|
}
|
|
237
|
-
|
|
238
190
|
function dfsCol(subMap, col) {
|
|
239
191
|
subMap.set(col.topKey, col.record);
|
|
240
|
-
|
|
241
192
|
if (!(0, _utils.isLeafNode)(col)) {
|
|
242
193
|
col.children.forEach(function (childCol) {
|
|
243
194
|
dfsCol(subMap, childCol);
|
|
@@ -248,15 +199,13 @@ function buildRecordMatrix(_ref) {
|
|
|
248
199
|
}
|
|
249
200
|
/** buildRecordMatrix 的简化版本,只能处理一个维度序列,返回一个 Map。
|
|
250
201
|
* 相当于只处理 matrix 的第一行(汇总行) */
|
|
251
|
-
|
|
252
|
-
|
|
253
202
|
function buildRecordMap(_ref6) {
|
|
254
203
|
var codes = _ref6.codes,
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
204
|
+
_ref6$encode = _ref6.encode,
|
|
205
|
+
encode = _ref6$encode === void 0 ? _simpleEncode.default : _ref6$encode,
|
|
206
|
+
data = _ref6.data,
|
|
207
|
+
aggregate = _ref6.aggregate,
|
|
208
|
+
isExpand = _ref6.isExpand;
|
|
260
209
|
var matrix = buildRecordMatrix({
|
|
261
210
|
data: data,
|
|
262
211
|
leftCodes: [],
|