@kdcloudjs/table 1.2.1-canary.6 → 1.2.2-canary.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/LICENSE +568 -568
- package/README.md +111 -111
- package/dist/@kdcloudjs/table.css +1 -1
- package/dist/@kdcloudjs/table.js +5480 -6087
- package/dist/@kdcloudjs/table.js.map +1 -1
- package/dist/@kdcloudjs/table.min.css +1 -1
- package/dist/@kdcloudjs/table.min.js +18 -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 +36 -101
- package/es/_utils/hooks.js +21 -45
- 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 +81 -144
- 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 +11 -50
- 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 +25 -75
- package/es/table/base/colgroup.js +0 -1
- package/es/table/base/empty.js +6 -6
- package/es/table/base/globalStyleComponent.d.ts +4 -0
- package/es/table/base/globalStyleComponent.js +24 -0
- package/es/table/base/header.js +21 -76
- package/es/table/base/helpers/SpanManager.js +4 -11
- package/es/table/base/helpers/TableDOMUtils.js +9 -34
- 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 +17 -39
- package/es/table/base/loading.js +8 -10
- package/es/table/base/renderTemplates.js +42 -60
- package/es/table/base/styles.d.ts +10 -0
- package/es/table/base/styles.js +17 -16
- package/es/table/base/table.js +113 -201
- package/es/table/base/utils.js +17 -57
- package/es/table/common-views.js +0 -7
- package/es/table/interfaces.d.ts +38 -0
- package/es/table/internals.js +0 -13
- package/es/table/pipeline/const.d.ts +3 -0
- package/es/table/pipeline/const.js +3 -0
- 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 -97
- package/es/table/pipeline/features/columnFilter.js +12 -51
- 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 +13 -39
- package/es/table/pipeline/features/contextMenu.js +22 -95
- package/es/table/pipeline/features/featureApi/RowDragApi.d.ts +15 -0
- package/es/table/pipeline/features/featureApi/RowDragApi.js +66 -0
- package/es/table/pipeline/features/featureApi/utils.d.ts +2 -0
- package/es/table/pipeline/features/featureApi/utils.js +10 -0
- package/es/table/pipeline/features/filter/DefaultFilterContent.js +14 -30
- package/es/table/pipeline/features/filter/DefaultFilterIcon.js +1 -1
- package/es/table/pipeline/features/filter/Filter.js +27 -51
- 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 +73 -152
- package/es/table/pipeline/features/rowDetail.js +4 -43
- package/es/table/pipeline/features/rowDrag.d.ts +10 -12
- package/es/table/pipeline/features/rowDrag.js +491 -236
- package/es/table/pipeline/features/rowGrouping.js +4 -37
- package/es/table/pipeline/features/singleSelect.js +0 -24
- package/es/table/pipeline/features/sort.js +38 -96
- package/es/table/pipeline/features/tips.js +4 -10
- package/es/table/pipeline/features/treeMode.d.ts +1 -0
- package/es/table/pipeline/features/treeMode.js +38 -57
- package/es/table/pipeline/features/treeSelect.js +2 -28
- package/es/table/pipeline/pipeline.d.ts +3 -0
- package/es/table/pipeline/pipeline.js +35 -54
- package/es/table/pivot/cross-table/buildCrossTable.js +21 -72
- package/es/table/pivot/cross-table/cross-table.js +23 -31
- package/es/table/pivot/cross-tree-table/buildCrossTreeTable.js +22 -57
- package/es/table/pivot/cross-tree-table/cross-tree-table.js +36 -61
- package/es/table/pivot/pivot-utils/buildDrillTree.js +10 -23
- package/es/table/pivot/pivot-utils/builders.js +34 -74
- package/es/table/pivot/pivot-utils/convert-utils.js +16 -42
- 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 +13 -35
- 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 +18 -42
- package/es/table/transforms/flatten.js +0 -3
- package/es/table/transforms/orderField.js +0 -3
- package/es/table/transforms/sort.js +42 -101
- package/es/table/transforms/tips.js +5 -10
- package/es/table/transforms/treeMode.js +36 -77
- 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 +7 -22
- package/es/table/utils/collectNodes.js +4 -13
- 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 +7 -43
- package/es/table/utils/getTreeDepth.js +4 -12
- package/es/table/utils/groupBy.js +4 -13
- package/es/table/utils/layeredFilter.js +0 -4
- package/es/table/utils/layeredSort.js +0 -5
- package/es/table/utils/makeRecursiveMapper.js +4 -15
- package/es/table/utils/mergeCellProps.js +6 -14
- package/es/table/utils/others.js +6 -19
- package/es/table/utils/proto.js +2 -30
- package/es/table/utils/smartCompare.js +4 -12
- package/es/table/utils/traverseColumn.js +5 -18
- package/es/table/utils/tree-data-helpers/StrictTreeDataHelper.js +8 -30
- package/es/table/utils/tree-data-helpers/TreeDataHelper.js +19 -74
- package/es/table/utils/uiDegrade.js +0 -5
- package/lib/_utils/arrayUtil.js +2 -8
- package/lib/_utils/devwarning.js +0 -5
- package/lib/_utils/formatUtil.js +36 -105
- package/lib/_utils/hooks.js +21 -56
- package/lib/_utils/index.js +2 -9
- 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 +3 -11
- package/lib/_utils/usePopper.js +86 -173
- package/lib/config-provider/ConfigContext.js +2 -6
- package/lib/config-provider/compDefaultProps.js +1 -3
- package/lib/config-provider/configProvider.js +6 -22
- package/lib/config-provider/defaultConfig.js +1 -7
- package/lib/config-provider/index.js +1 -8
- package/lib/index.js +2 -8
- package/lib/locale/index.js +3 -11
- package/lib/locale/locale.js +15 -71
- package/lib/locale/zh-CN.js +1 -2
- 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 +25 -86
- package/lib/table/base/colgroup.js +0 -5
- package/lib/table/base/empty.js +8 -20
- package/lib/table/base/globalStyleComponent.d.ts +4 -0
- package/lib/table/base/globalStyleComponent.js +35 -0
- package/lib/table/base/header.js +21 -86
- package/lib/table/base/helpers/SpanManager.js +6 -16
- package/lib/table/base/helpers/TableDOMUtils.js +9 -37
- 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 +15 -65
- package/lib/table/base/helpers/rowHeightManager.js +0 -33
- package/lib/table/base/html-table.js +17 -49
- package/lib/table/base/index.js +0 -2
- package/lib/table/base/loading.js +8 -14
- package/lib/table/base/renderTemplates.js +45 -76
- package/lib/table/base/styles.d.ts +10 -0
- package/lib/table/base/styles.js +24 -42
- package/lib/table/base/table.js +125 -245
- package/lib/table/base/utils.js +27 -109
- package/lib/table/common-views.js +4 -24
- package/lib/table/index.js +0 -13
- package/lib/table/interfaces.d.ts +38 -0
- package/lib/table/internals.js +2 -17
- package/lib/table/pipeline/const.d.ts +3 -0
- package/lib/table/pipeline/const.js +9 -0
- package/lib/table/pipeline/features/autoFill.js +14 -53
- 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 +6 -35
- package/lib/table/pipeline/features/columnDrag.js +41 -103
- package/lib/table/pipeline/features/columnFilter.js +12 -65
- 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 +18 -63
- package/lib/table/pipeline/features/contextMenu.js +24 -121
- package/lib/table/pipeline/features/featureApi/RowDragApi.d.ts +15 -0
- package/lib/table/pipeline/features/featureApi/RowDragApi.js +72 -0
- package/lib/table/pipeline/features/featureApi/utils.d.ts +2 -0
- package/lib/table/pipeline/features/featureApi/utils.js +17 -0
- package/lib/table/pipeline/features/filter/DefaultFilterContent.js +17 -52
- package/lib/table/pipeline/features/filter/DefaultFilterIcon.js +1 -4
- package/lib/table/pipeline/features/filter/Filter.js +30 -77
- package/lib/table/pipeline/features/filter/FilterPanel.js +14 -44
- package/lib/table/pipeline/features/filter/index.js +0 -5
- package/lib/table/pipeline/features/filter/util.js +2 -10
- package/lib/table/pipeline/features/footerDataSource.js +1 -12
- 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 +75 -173
- package/lib/table/pipeline/features/rowDetail.js +4 -67
- package/lib/table/pipeline/features/rowDrag.d.ts +10 -12
- package/lib/table/pipeline/features/rowDrag.js +494 -252
- package/lib/table/pipeline/features/rowGrouping.js +4 -57
- package/lib/table/pipeline/features/singleSelect.js +0 -34
- package/lib/table/pipeline/features/sort.js +37 -115
- package/lib/table/pipeline/features/tips.js +4 -19
- package/lib/table/pipeline/features/treeMode.d.ts +1 -0
- package/lib/table/pipeline/features/treeMode.js +40 -80
- package/lib/table/pipeline/features/treeSelect.js +2 -36
- package/lib/table/pipeline/index.js +2 -10
- package/lib/table/pipeline/pipeline.d.ts +3 -0
- package/lib/table/pipeline/pipeline.js +36 -65
- package/lib/table/pivot/cross-table/buildCrossTable.js +21 -83
- package/lib/table/pivot/cross-table/constants.js +1 -2
- package/lib/table/pivot/cross-table/cross-table.js +25 -42
- package/lib/table/pivot/cross-table/index.js +0 -4
- package/lib/table/pivot/cross-tree-table/buildCrossTreeTable.js +22 -70
- package/lib/table/pivot/cross-tree-table/cross-tree-table.js +37 -73
- 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 +34 -85
- package/lib/table/pivot/pivot-utils/convert-utils.js +16 -60
- 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 +15 -58
- 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 +20 -63
- 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 +44 -127
- package/lib/table/transforms/tips.js +5 -20
- package/lib/table/transforms/treeMode.js +38 -106
- package/lib/table/transforms/visible.js +0 -7
- package/lib/table/transforms/warnTransformsDeprecated.js +0 -4
- package/lib/table/use/useResizeObserver.js +2 -10
- package/lib/table/utils/applyTransforms.js +0 -2
- package/lib/table/utils/browserType.js +14 -23
- package/lib/table/utils/buildTree.js +7 -33
- package/lib/table/utils/collectNodes.js +4 -18
- package/lib/table/utils/console.js +2 -19
- package/lib/table/utils/copyToClipboard.js +1 -8
- package/lib/table/utils/element.js +14 -46
- package/lib/table/utils/exportTableAsExcel.js +7 -52
- package/lib/table/utils/getTreeDepth.js +4 -17
- package/lib/table/utils/groupBy.js +4 -17
- 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/keyCode.js +1 -2
- package/lib/table/utils/layeredFilter.js +0 -10
- package/lib/table/utils/layeredSort.js +0 -10
- package/lib/table/utils/makeRecursiveMapper.js +4 -24
- package/lib/table/utils/mergeCellProps.js +6 -18
- package/lib/table/utils/others.js +7 -36
- package/lib/table/utils/proto.js +3 -35
- package/lib/table/utils/selectColumn.js +2 -5
- package/lib/table/utils/smartCompare.js +4 -13
- package/lib/table/utils/traverseColumn.js +5 -25
- package/lib/table/utils/tree-data-helpers/StrictTreeDataHelper.js +10 -41
- package/lib/table/utils/tree-data-helpers/TreeDataHelper.js +21 -90
- package/lib/table/utils/uiDegrade.js +1 -8
- package/package.json +218 -218
|
@@ -1,9 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _mapInstanceProperty = require("@babel/runtime-corejs3/core-js-stable/instance/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
|
});
|
|
@@ -11,75 +9,48 @@ exports.getCellRangeId = getCellRangeId;
|
|
|
11
9
|
exports.lastClickCellKey = void 0;
|
|
12
10
|
exports.rangeSelection = rangeSelection;
|
|
13
11
|
exports.rangeSelectionKey = void 0;
|
|
14
|
-
|
|
15
12
|
var _filter = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/filter"));
|
|
16
|
-
|
|
17
13
|
var _findIndex = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/find-index"));
|
|
18
|
-
|
|
19
14
|
var _slice = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/slice"));
|
|
20
|
-
|
|
21
15
|
var _includes = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/includes"));
|
|
22
|
-
|
|
23
16
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/defineProperty"));
|
|
24
|
-
|
|
25
|
-
var _typeof2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/typeof"));
|
|
26
|
-
|
|
27
17
|
var _extends2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/extends"));
|
|
28
|
-
|
|
29
18
|
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/toConsumableArray"));
|
|
30
|
-
|
|
31
19
|
var _utils = require("../../utils");
|
|
32
|
-
|
|
33
20
|
var _others = require("../../utils/others");
|
|
34
|
-
|
|
35
21
|
var _rxjs = require("rxjs");
|
|
36
|
-
|
|
37
22
|
var _operators = require("rxjs/operators");
|
|
38
|
-
|
|
39
23
|
var _styles = require("../../base/styles");
|
|
40
|
-
|
|
41
24
|
var _classnames = _interopRequireDefault(require("classnames"));
|
|
42
|
-
|
|
43
|
-
var
|
|
44
|
-
exports.rangeSelectionKey = rangeSelectionKey;
|
|
45
|
-
var lastClickCellKey = 'lastClickCell';
|
|
46
|
-
exports.lastClickCellKey = lastClickCellKey;
|
|
25
|
+
var rangeSelectionKey = exports.rangeSelectionKey = 'rangeSelection';
|
|
26
|
+
var lastClickCellKey = exports.lastClickCellKey = 'lastClickCell';
|
|
47
27
|
var startSelectedCellRangesKey = 'startSelectedCellRanges';
|
|
48
28
|
var SCROLL_OFFSET = 30;
|
|
49
|
-
|
|
50
29
|
function rangeSelection(opts) {
|
|
51
30
|
return function step(pipeline) {
|
|
52
31
|
var tableBody = pipeline.ref.current.domHelper && pipeline.ref.current.domHelper.tableBody;
|
|
53
32
|
var tableFooter = pipeline.ref.current.domHelper && pipeline.ref.current.domHelper.tableFooter;
|
|
54
33
|
var artTable = pipeline.ref.current.domHelper && pipeline.ref.current.domHelper.artTable;
|
|
55
|
-
|
|
56
34
|
if (!tableBody) {
|
|
57
35
|
return pipeline;
|
|
58
36
|
}
|
|
59
|
-
|
|
60
37
|
var columns = pipeline.getColumns();
|
|
61
38
|
var dataSource = pipeline.getDataSource();
|
|
62
|
-
|
|
63
39
|
var rangeSelectedChange = function rangeSelectedChange(rangeSelection, isFinished) {
|
|
64
40
|
var _a;
|
|
65
|
-
|
|
66
41
|
if (isFinished) {
|
|
67
42
|
pipeline.setFeatureOptions(startSelectedCellRangesKey, rangeSelection);
|
|
68
43
|
}
|
|
69
|
-
|
|
70
44
|
pipeline.setStateAtKey(rangeSelectionKey, rangeSelection);
|
|
71
45
|
(_a = opts === null || opts === void 0 ? void 0 : opts.rangeSelectedChange) === null || _a === void 0 ? void 0 : _a.call(opts, rangeSelection, isFinished);
|
|
72
46
|
};
|
|
73
|
-
|
|
74
47
|
var setRangeSelection = function setRangeSelection(startDragCell, draggingCell, isFinished) {
|
|
75
48
|
if (!startDragCell || !draggingCell) return;
|
|
76
49
|
var rangeColumns = getRangeColumns(startDragCell, draggingCell, columns);
|
|
77
|
-
|
|
78
50
|
var _getRangeSelectionRow = getRangeSelectionRowInfo(startDragCell, draggingCell, dataSource),
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
51
|
+
startRow = _getRangeSelectionRow.startRow,
|
|
52
|
+
endRow = _getRangeSelectionRow.endRow,
|
|
53
|
+
footerRowRange = _getRangeSelectionRow.footerRowRange;
|
|
83
54
|
var cellRange = {
|
|
84
55
|
startRow: startRow,
|
|
85
56
|
endRow: endRow,
|
|
@@ -88,32 +59,25 @@ function rangeSelection(opts) {
|
|
|
88
59
|
footerRowRange: footerRowRange
|
|
89
60
|
};
|
|
90
61
|
var cellRanges = pipeline.getFeatureOptions(startSelectedCellRangesKey) ? (0, _toConsumableArray2.default)(pipeline.getFeatureOptions(startSelectedCellRangesKey)) : [];
|
|
91
|
-
|
|
92
62
|
if (isCellRangeSingleCell([cellRange])) {
|
|
93
63
|
var singleCellRangeId = getCellRangeId(cellRange);
|
|
94
64
|
cellRanges = (0, _filter.default)(cellRanges).call(cellRanges, function (item) {
|
|
95
65
|
return getCellRangeId(item) !== singleCellRangeId;
|
|
96
66
|
});
|
|
97
67
|
}
|
|
98
|
-
|
|
99
68
|
cellRanges.push(cellRange);
|
|
100
|
-
|
|
101
69
|
if (isCellRangeSingleCell(cellRanges)) {
|
|
102
70
|
artTable.classList.remove((0, _classnames.default)(_styles.Classes.rangeSelection));
|
|
103
71
|
} else {
|
|
104
72
|
artTable.classList.add((0, _classnames.default)(_styles.Classes.rangeSelection));
|
|
105
73
|
}
|
|
106
|
-
|
|
107
74
|
rangeSelectedChange(cellRanges, isFinished);
|
|
108
75
|
};
|
|
109
|
-
|
|
110
76
|
var shiftKeySelect = function shiftKeySelect(event) {
|
|
111
77
|
var target = event.target;
|
|
112
78
|
var clickCell = getTargetCell(target, columns);
|
|
113
|
-
|
|
114
79
|
if (clickCell) {
|
|
115
80
|
var _lastClickCell = pipeline.getFeatureOptions(lastClickCellKey);
|
|
116
|
-
|
|
117
81
|
if (_lastClickCell) {
|
|
118
82
|
setRangeSelection(_lastClickCell, clickCell, true);
|
|
119
83
|
} else {
|
|
@@ -122,71 +86,58 @@ function rangeSelection(opts) {
|
|
|
122
86
|
}
|
|
123
87
|
}
|
|
124
88
|
};
|
|
125
|
-
|
|
126
89
|
var updateScrollPosition = function updateScrollPosition(client) {
|
|
127
90
|
var clientX = client.clientX,
|
|
128
|
-
|
|
91
|
+
clientY = client.clientY;
|
|
129
92
|
var tableBodyClientRect = tableBody.getBoundingClientRect();
|
|
130
93
|
var left = tableBodyClientRect.left,
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
94
|
+
top = tableBodyClientRect.top,
|
|
95
|
+
height = tableBodyClientRect.height,
|
|
96
|
+
width = tableBodyClientRect.width;
|
|
135
97
|
if (clientX + SCROLL_OFFSET >= left + width) {
|
|
136
98
|
pipeline.ref.current.domHelper.virtual.scrollLeft += SCROLL_OFFSET;
|
|
137
99
|
}
|
|
138
|
-
|
|
139
100
|
if (clientX - SCROLL_OFFSET <= left) {
|
|
140
101
|
pipeline.ref.current.domHelper.virtual.scrollLeft -= SCROLL_OFFSET;
|
|
141
102
|
}
|
|
142
|
-
|
|
143
103
|
if (clientY + SCROLL_OFFSET >= top + height) {
|
|
144
104
|
pipeline.ref.current.domHelper.tableBody.scrollTop += SCROLL_OFFSET;
|
|
145
105
|
}
|
|
146
|
-
|
|
147
106
|
if (clientY + SCROLL_OFFSET <= top) {
|
|
148
107
|
pipeline.ref.current.domHelper.tableBody.scrollTop -= SCROLL_OFFSET;
|
|
149
108
|
}
|
|
150
109
|
};
|
|
151
|
-
|
|
152
110
|
var setStartSelectedCellRanges = function setStartSelectedCellRanges(isCtrlKey, isShiftKey) {
|
|
153
111
|
if (opts === null || opts === void 0 ? void 0 : opts.suppressMultiRangeSelection) {
|
|
154
112
|
pipeline.setFeatureOptions(startSelectedCellRangesKey, []);
|
|
155
113
|
return;
|
|
156
|
-
}
|
|
114
|
+
}
|
|
115
|
+
// ctrl 和shift 同时按时,优先生效shift
|
|
157
116
|
// 没有点击ctrl 或者shift时,每次点击开始时都清空选中范围
|
|
158
|
-
|
|
159
|
-
|
|
160
117
|
if (!isCtrlKey && !isShiftKey) {
|
|
161
118
|
pipeline.setFeatureOptions(startSelectedCellRangesKey, []);
|
|
162
|
-
}
|
|
163
|
-
|
|
164
|
-
|
|
119
|
+
}
|
|
120
|
+
// shift 点击框选,要保留之前的选中结果。最新的框选范围覆盖最后一次的框选范围
|
|
165
121
|
if (isShiftKey) {
|
|
166
122
|
var _startDragCellRanges = pipeline.getFeatureOptions(startSelectedCellRangesKey) ? (0, _toConsumableArray2.default)(pipeline.getFeatureOptions(startSelectedCellRangesKey)) : [];
|
|
167
|
-
|
|
168
123
|
_startDragCellRanges.pop();
|
|
169
|
-
|
|
170
124
|
pipeline.setFeatureOptions(startSelectedCellRangesKey, _startDragCellRanges);
|
|
171
125
|
}
|
|
172
126
|
};
|
|
173
|
-
|
|
174
127
|
var onMouseDown = function onMouseDown(mouseDownEvent) {
|
|
175
|
-
if (mouseDownEvent.button !== 0 || !((0, _utils.isElementInEventPath)(tableBody, mouseDownEvent.nativeEvent) || (0, _utils.isElementInEventPath)(tableFooter, mouseDownEvent.nativeEvent))) return;
|
|
176
|
-
|
|
128
|
+
if (mouseDownEvent.button !== 0 || !((0, _utils.isElementInEventPath)(tableBody, mouseDownEvent.nativeEvent) || (0, _utils.isElementInEventPath)(tableFooter, mouseDownEvent.nativeEvent))) return;
|
|
129
|
+
// mouseDownEvent.preventDefault()
|
|
177
130
|
var isCtrlKey = mouseDownEvent.ctrlKey || mouseDownEvent.metaKey;
|
|
178
131
|
var isShiftKey = mouseDownEvent.shiftKey;
|
|
179
132
|
var target = mouseDownEvent.target;
|
|
180
133
|
var startDragCell = getTargetCell(target, columns);
|
|
181
|
-
if (!startDragCell) return;
|
|
182
|
-
|
|
134
|
+
if (!startDragCell) return;
|
|
135
|
+
// 每次点击时先确认初始生效的框选范围
|
|
183
136
|
setStartSelectedCellRanges(isCtrlKey, isShiftKey);
|
|
184
|
-
|
|
185
137
|
if (isShiftKey) {
|
|
186
138
|
shiftKeySelect(mouseDownEvent);
|
|
187
139
|
return;
|
|
188
140
|
}
|
|
189
|
-
|
|
190
141
|
pipeline.setFeatureOptions(lastClickCellKey, startDragCell);
|
|
191
142
|
var draggingCell = startDragCell;
|
|
192
143
|
var mousemove$ = (0, _rxjs.fromEvent)(window, 'mousemove');
|
|
@@ -198,11 +149,9 @@ function rangeSelection(opts) {
|
|
|
198
149
|
clientX: mouseMoveEvent.clientX,
|
|
199
150
|
clientY: mouseMoveEvent.clientY
|
|
200
151
|
};
|
|
201
|
-
|
|
202
152
|
if (!(draggingCell === null || draggingCell === void 0 ? void 0 : draggingCell.isFooterCell)) {
|
|
203
153
|
updateScrollPosition(client);
|
|
204
154
|
}
|
|
205
|
-
|
|
206
155
|
return {
|
|
207
156
|
startDragCell: startDragCell,
|
|
208
157
|
draggingCell: draggingCell
|
|
@@ -211,7 +160,7 @@ function rangeSelection(opts) {
|
|
|
211
160
|
rangeSelected$.subscribe({
|
|
212
161
|
next: function next(_ref) {
|
|
213
162
|
var startDragCell = _ref.startDragCell,
|
|
214
|
-
|
|
163
|
+
draggingCell = _ref.draggingCell;
|
|
215
164
|
setRangeSelection(startDragCell, draggingCell, false);
|
|
216
165
|
},
|
|
217
166
|
complete: function complete() {
|
|
@@ -219,14 +168,12 @@ function rangeSelection(opts) {
|
|
|
219
168
|
}
|
|
220
169
|
});
|
|
221
170
|
};
|
|
222
|
-
|
|
223
171
|
var onKeyDown = function onKeyDown(e) {
|
|
224
172
|
if (!((0, _utils.isElementInEventPath)(tableBody, e.nativeEvent) || (0, _utils.isElementInEventPath)(tableFooter, e.nativeEvent))) return;
|
|
225
|
-
|
|
226
173
|
if ((e.ctrlKey || e.metaKey) && e.key === 'a') {
|
|
227
174
|
var rowLen = pipeline.getDataSource().length;
|
|
228
|
-
var footerDataSource = pipeline.getFooterDataSource() || [];
|
|
229
|
-
|
|
175
|
+
var footerDataSource = pipeline.getFooterDataSource() || [];
|
|
176
|
+
// 焦点位于可编辑的单元格内不做全选
|
|
230
177
|
if (columns.length && rowLen && !getElementEditable(e.target)) {
|
|
231
178
|
opts.preventkDefaultOfKeyDownEvent !== false && e.preventDefault();
|
|
232
179
|
artTable.classList.add((0, _classnames.default)(_styles.Classes.rangeSelection));
|
|
@@ -243,13 +190,11 @@ function rangeSelection(opts) {
|
|
|
243
190
|
}
|
|
244
191
|
}
|
|
245
192
|
};
|
|
246
|
-
|
|
247
193
|
pipeline.addTableProps({
|
|
248
194
|
onMouseDown: onMouseDown,
|
|
249
195
|
onKeyDown: onKeyDown,
|
|
250
196
|
tabIndex: -1
|
|
251
197
|
}); // todo: 后面可以把mousedown放到一个流里面
|
|
252
|
-
|
|
253
198
|
return pipeline.mapColumns((0, _utils.makeRecursiveMapper)(function (col) {
|
|
254
199
|
var cellRanges = pipeline.getStateAtKey(rangeSelectionKey) || [];
|
|
255
200
|
var prevGetCellProps = col.getCellProps;
|
|
@@ -274,11 +219,9 @@ function rangeSelection(opts) {
|
|
|
274
219
|
}));
|
|
275
220
|
};
|
|
276
221
|
}
|
|
277
|
-
|
|
278
222
|
function getTargetCell(target, columns) {
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
var _ret = function () {
|
|
223
|
+
var _loop = function _loop() {
|
|
224
|
+
if (target.getAttribute('data-role') === 'table-cell') {
|
|
282
225
|
var columnCode = target.getAttribute('data-code');
|
|
283
226
|
var column = (0, _others.findByTree)(columns, function (item, index) {
|
|
284
227
|
return item.code === columnCode;
|
|
@@ -295,33 +238,28 @@ function getTargetCell(target, columns) {
|
|
|
295
238
|
isFooterCell: isEleInFooter(target)
|
|
296
239
|
}
|
|
297
240
|
};
|
|
298
|
-
}
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
241
|
+
}
|
|
242
|
+
target = target.parentElement;
|
|
243
|
+
},
|
|
244
|
+
_ret;
|
|
245
|
+
while (target) {
|
|
246
|
+
_ret = _loop();
|
|
247
|
+
if (_ret) return _ret.v;
|
|
304
248
|
}
|
|
305
|
-
|
|
306
249
|
return null;
|
|
307
250
|
}
|
|
308
|
-
|
|
309
251
|
function isSameCell(cell1, cell2) {
|
|
310
252
|
return cell1.rowIndex === cell2.rowIndex && cell1.code === cell2.code && cell1.isFooterCell === cell2.isFooterCell;
|
|
311
253
|
}
|
|
312
|
-
|
|
313
254
|
function isEleInFooter(target) {
|
|
314
255
|
while (target && !target.classList.contains(_styles.Classes.artTable)) {
|
|
315
256
|
if (target.classList.contains(_styles.Classes.tableFooter)) {
|
|
316
257
|
return true;
|
|
317
258
|
}
|
|
318
|
-
|
|
319
259
|
target = target.parentElement;
|
|
320
260
|
}
|
|
321
|
-
|
|
322
261
|
return false;
|
|
323
262
|
}
|
|
324
|
-
|
|
325
263
|
function getRangeColumns(startCell, endCell, columns) {
|
|
326
264
|
var flatColumns = (0, _utils.collectNodes)(columns, 'leaf-only');
|
|
327
265
|
var startIndex = (0, _findIndex.default)(flatColumns).call(flatColumns, function (col) {
|
|
@@ -330,24 +268,20 @@ function getRangeColumns(startCell, endCell, columns) {
|
|
|
330
268
|
var endIndex = (0, _findIndex.default)(flatColumns).call(flatColumns, function (col) {
|
|
331
269
|
return col.code === endCell.code;
|
|
332
270
|
});
|
|
333
|
-
|
|
334
271
|
if (startIndex < endIndex) {
|
|
335
272
|
return (0, _slice.default)(flatColumns).call(flatColumns, startIndex, endIndex + 1);
|
|
336
273
|
} else {
|
|
337
274
|
return (0, _slice.default)(flatColumns).call(flatColumns, endIndex, startIndex + 1);
|
|
338
275
|
}
|
|
339
276
|
}
|
|
340
|
-
|
|
341
277
|
function getRangeSelectionRowInfo(startCell, endCell, dataSource) {
|
|
342
278
|
var footerRowRange = null;
|
|
343
279
|
var startRow = -1;
|
|
344
280
|
var endRow = -1;
|
|
345
|
-
|
|
346
281
|
var _getCellRangeRow = getCellRangeRow(startCell, endCell),
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
282
|
+
_startRow = _getCellRangeRow.startRow,
|
|
283
|
+
_endRow = _getCellRangeRow.endRow;
|
|
284
|
+
// 两个单元格都在表体
|
|
351
285
|
if (!startCell.isFooterCell && !endCell.isFooterCell) {
|
|
352
286
|
startRow = _startRow;
|
|
353
287
|
endRow = _endRow;
|
|
@@ -375,7 +309,6 @@ function getRangeSelectionRowInfo(startCell, endCell, dataSource) {
|
|
|
375
309
|
};
|
|
376
310
|
}
|
|
377
311
|
}
|
|
378
|
-
|
|
379
312
|
return {
|
|
380
313
|
startRow: startRow,
|
|
381
314
|
endRow: endRow,
|
|
@@ -388,8 +321,6 @@ function getRangeSelectionRowInfo(startCell, endCell, dataSource) {
|
|
|
388
321
|
* @param endCell 结束单元格
|
|
389
322
|
* @returns
|
|
390
323
|
*/
|
|
391
|
-
|
|
392
|
-
|
|
393
324
|
function getCellRangeRow(startCell, endCell) {
|
|
394
325
|
if (isSameCell(startCell, endCell)) {
|
|
395
326
|
return {
|
|
@@ -397,7 +328,6 @@ function getCellRangeRow(startCell, endCell) {
|
|
|
397
328
|
endRow: startCell.rowIndex
|
|
398
329
|
};
|
|
399
330
|
}
|
|
400
|
-
|
|
401
331
|
var isTopToBottom = startCell.rowIndex <= endCell.rowIndex;
|
|
402
332
|
var startRow = isTopToBottom ? startCell.rowIndex : startCell.rowIndex + startCell.rowSpan - 1;
|
|
403
333
|
var endRow = isTopToBottom ? endCell.rowIndex + endCell.rowSpan - 1 : endCell.rowIndex;
|
|
@@ -411,20 +341,17 @@ function getCellRangeRow(startCell, endCell) {
|
|
|
411
341
|
* @param cellRanges
|
|
412
342
|
* @returns
|
|
413
343
|
*/
|
|
414
|
-
|
|
415
|
-
|
|
416
344
|
function isCellRangeSingleCell(cellRanges) {
|
|
417
345
|
if (cellRanges.length !== 1) return false;
|
|
418
346
|
var _cellRanges$ = cellRanges[0],
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
347
|
+
startRow = _cellRanges$.startRow,
|
|
348
|
+
endRow = _cellRanges$.endRow,
|
|
349
|
+
columns = _cellRanges$.columns,
|
|
350
|
+
footerRowRange = _cellRanges$.footerRowRange;
|
|
423
351
|
var isBodySingleCell = !footerRowRange && startRow === endRow && columns.length === 1;
|
|
424
352
|
var isFooterSingleCell = startRow === -1 && footerRowRange.startRow === footerRowRange.endRow && columns.length === 1;
|
|
425
353
|
return isBodySingleCell || isFooterSingleCell;
|
|
426
354
|
}
|
|
427
|
-
|
|
428
355
|
function getRowIndex(startRow, endRow) {
|
|
429
356
|
var isReverse = startRow > endRow;
|
|
430
357
|
var startRowIndex = isReverse ? endRow : startRow;
|
|
@@ -434,23 +361,18 @@ function getRowIndex(startRow, endRow) {
|
|
|
434
361
|
endRowIndex: endRowIndex
|
|
435
362
|
};
|
|
436
363
|
}
|
|
437
|
-
|
|
438
364
|
function getFooterRowIndex(footerRowRange) {
|
|
439
365
|
if (footerRowRange) {
|
|
440
366
|
return getRowIndex(footerRowRange.startRow, footerRowRange.endRow);
|
|
441
367
|
}
|
|
442
|
-
|
|
443
368
|
return {
|
|
444
369
|
startRowIndex: -1,
|
|
445
370
|
endRowIndex: -1
|
|
446
371
|
};
|
|
447
372
|
}
|
|
448
|
-
|
|
449
373
|
function getElementEditable(target) {
|
|
450
374
|
var _context;
|
|
451
|
-
|
|
452
375
|
if (!target) return;
|
|
453
|
-
|
|
454
376
|
if ((0, _includes.default)(_context = ['input', 'textarea']).call(_context, target.tagName.toLowerCase())) {
|
|
455
377
|
if (target.type === 'checkbox') return;
|
|
456
378
|
return !target.disabled && !target.readOnly;
|
|
@@ -464,26 +386,21 @@ function getElementEditable(target) {
|
|
|
464
386
|
* @param isFooterCell
|
|
465
387
|
* @returns
|
|
466
388
|
*/
|
|
467
|
-
|
|
468
|
-
|
|
469
389
|
function isCellInRange(cellRange, rowIndex, col, isFooterCell) {
|
|
470
390
|
var startRow = cellRange.startRow,
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
|
|
391
|
+
endRow = cellRange.endRow,
|
|
392
|
+
columns = cellRange.columns,
|
|
393
|
+
footerRowRange = cellRange.footerRowRange;
|
|
474
394
|
var isColInRanges = (0, _findIndex.default)(columns).call(columns, function (item) {
|
|
475
395
|
return item.code === col.code;
|
|
476
396
|
}) !== -1;
|
|
477
397
|
if (!isColInRanges) return false;
|
|
478
|
-
|
|
479
398
|
var _getRowIndex = getRowIndex(startRow, endRow),
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
|
|
399
|
+
startRowIndex = _getRowIndex.startRowIndex,
|
|
400
|
+
endRowIndex = _getRowIndex.endRowIndex;
|
|
483
401
|
var _getFooterRowIndex = getFooterRowIndex(footerRowRange),
|
|
484
|
-
|
|
485
|
-
|
|
486
|
-
|
|
402
|
+
footerStartRowIndex = _getFooterRowIndex.startRowIndex,
|
|
403
|
+
footerEndRowIndex = _getFooterRowIndex.endRowIndex;
|
|
487
404
|
var bodyMatch = !isFooterCell && rowIndex >= startRowIndex && rowIndex <= endRowIndex;
|
|
488
405
|
var footerMatch = isFooterCell && footerRowRange && rowIndex >= footerStartRowIndex && rowIndex <= footerEndRowIndex;
|
|
489
406
|
var isRowInRange = footerMatch || bodyMatch;
|
|
@@ -494,22 +411,17 @@ function isCellInRange(cellRange, rowIndex, col, isFooterCell) {
|
|
|
494
411
|
* @param {*} cellRange
|
|
495
412
|
* @returns
|
|
496
413
|
*/
|
|
497
|
-
|
|
498
|
-
|
|
499
414
|
function getCellRangeId(cellRange) {
|
|
500
415
|
var startRow = cellRange.startRow,
|
|
501
|
-
|
|
502
|
-
|
|
503
|
-
|
|
504
|
-
|
|
416
|
+
endRow = cellRange.endRow,
|
|
417
|
+
footerRowRange = cellRange.footerRowRange,
|
|
418
|
+
columns = cellRange.columns;
|
|
505
419
|
var _getRowIndex2 = getRowIndex(startRow, endRow),
|
|
506
|
-
|
|
507
|
-
|
|
508
|
-
|
|
420
|
+
startRowIndex = _getRowIndex2.startRowIndex,
|
|
421
|
+
endRowIndex = _getRowIndex2.endRowIndex;
|
|
509
422
|
var _getFooterRowIndex2 = getFooterRowIndex(footerRowRange),
|
|
510
|
-
|
|
511
|
-
|
|
512
|
-
|
|
423
|
+
footerStartRowIndex = _getFooterRowIndex2.startRowIndex,
|
|
424
|
+
footerEndRowIndex = _getFooterRowIndex2.endRowIndex;
|
|
513
425
|
var firstColId = columns[0].code;
|
|
514
426
|
var endColId = columns[columns.length - 1].code;
|
|
515
427
|
return startRowIndex + '_' + endRowIndex + '_' + footerStartRowIndex + '_' + footerEndRowIndex + '_' + firstColId + '_' + endColId;
|
|
@@ -520,59 +432,49 @@ function getCellRangeId(cellRange) {
|
|
|
520
432
|
* @param param1
|
|
521
433
|
* @returns
|
|
522
434
|
*/
|
|
523
|
-
|
|
524
|
-
|
|
525
435
|
function getCellRangesClassName(cellRanges, _ref2) {
|
|
526
|
-
var _cx;
|
|
527
|
-
|
|
528
436
|
var isFooterCell = _ref2.isFooterCell,
|
|
529
|
-
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
|
|
437
|
+
rowIndex = _ref2.rowIndex,
|
|
438
|
+
col = _ref2.col,
|
|
439
|
+
record = _ref2.record;
|
|
533
440
|
var _getMatchBorderStyle = getMatchBorderStyle(cellRanges, {
|
|
534
|
-
|
|
535
|
-
|
|
536
|
-
|
|
537
|
-
|
|
538
|
-
|
|
539
|
-
|
|
540
|
-
|
|
541
|
-
|
|
542
|
-
|
|
543
|
-
|
|
441
|
+
isFooterCell: isFooterCell,
|
|
442
|
+
rowIndex: rowIndex,
|
|
443
|
+
col: col,
|
|
444
|
+
record: record
|
|
445
|
+
}),
|
|
446
|
+
matchCellRangeTop = _getMatchBorderStyle.matchCellRangeTop,
|
|
447
|
+
matchCellRangeLeft = _getMatchBorderStyle.matchCellRangeLeft,
|
|
448
|
+
matchCellRangeBottom = _getMatchBorderStyle.matchCellRangeBottom,
|
|
449
|
+
matchCellRangeRight = _getMatchBorderStyle.matchCellRangeRight;
|
|
544
450
|
var isSingleCell = isCellRangeSingleCell(cellRanges);
|
|
545
|
-
var className = (0, _classnames.default)((
|
|
451
|
+
var className = (0, _classnames.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)({}, _styles.Classes.tableCellRangeSingleCell, isSingleCell), _styles.Classes.tableCellRangeSelected, !isSingleCell), _styles.Classes.tableCellRangeTop, !isSingleCell && matchCellRangeTop), _styles.Classes.tableCellRangeLeft, !isSingleCell && matchCellRangeLeft), _styles.Classes.tableCellRangeBottom, !isSingleCell && matchCellRangeBottom), _styles.Classes.tableCellRangeRight, !isSingleCell && matchCellRangeRight));
|
|
546
452
|
return className;
|
|
547
453
|
}
|
|
548
|
-
|
|
549
454
|
function getMatchBorderStyle(cellRanges, _ref3) {
|
|
550
455
|
var isFooterCell = _ref3.isFooterCell,
|
|
551
|
-
|
|
552
|
-
|
|
553
|
-
|
|
456
|
+
rowIndex = _ref3.rowIndex,
|
|
457
|
+
col = _ref3.col,
|
|
458
|
+
record = _ref3.record;
|
|
554
459
|
return cellRanges.reduce(function (obj, cellRange) {
|
|
555
460
|
if (!isCellInRange(cellRange, rowIndex, col, isFooterCell)) return obj;
|
|
556
461
|
var startRow = cellRange.startRow,
|
|
557
|
-
|
|
558
|
-
|
|
559
|
-
|
|
560
|
-
|
|
462
|
+
endRow = cellRange.endRow,
|
|
463
|
+
columns = cellRange.columns,
|
|
464
|
+
footerRowRange = cellRange.footerRowRange;
|
|
561
465
|
var _getRowIndex3 = getRowIndex(startRow, endRow),
|
|
562
|
-
|
|
563
|
-
|
|
564
|
-
|
|
466
|
+
startRowIndex = _getRowIndex3.startRowIndex,
|
|
467
|
+
endRowIndex = _getRowIndex3.endRowIndex;
|
|
565
468
|
var _getFooterRowIndex3 = getFooterRowIndex(footerRowRange),
|
|
566
|
-
|
|
567
|
-
|
|
568
|
-
|
|
469
|
+
footerStartRowIndex = _getFooterRowIndex3.startRowIndex,
|
|
470
|
+
footerEndRowIndex = _getFooterRowIndex3.endRowIndex;
|
|
569
471
|
var startCol = columns[0];
|
|
570
472
|
var endCol = columns[columns.length - 1];
|
|
571
473
|
var matchCellRangeTop = isFooterCell ? startRowIndex !== -1 ? false : rowIndex === footerStartRowIndex : rowIndex === startRowIndex;
|
|
572
474
|
var matchCellRangeLeft = col.code === startCol.code;
|
|
573
475
|
var matchCellRangeBottom = isFooterCell ? rowIndex === footerEndRowIndex : footerRowRange ? false : rowIndex === endRowIndex;
|
|
574
|
-
var matchCellRangeRight = col.code === endCol.code;
|
|
575
|
-
|
|
476
|
+
var matchCellRangeRight = col.code === endCol.code;
|
|
477
|
+
// 如果样式已经匹配上了,就不需要再取计算的样式
|
|
576
478
|
obj.matchCellRangeTop = obj.matchCellRangeTop || matchCellRangeTop;
|
|
577
479
|
obj.matchCellRangeLeft = obj.matchCellRangeLeft || matchCellRangeLeft;
|
|
578
480
|
obj.matchCellRangeBottom = obj.matchCellRangeBottom || matchCellRangeBottom;
|