@kdcloudjs/table 1.2.0-canary.17 → 1.2.0-canary.17-hotfix
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 +4565 -5707
- 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 +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 +9 -48
- 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/header.js +19 -74
- package/es/table/base/helpers/SpanManager.js +4 -11
- package/es/table/base/helpers/TableDOMUtils.js +5 -30
- 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 +17 -39
- package/es/table/base/loading.js +8 -10
- package/es/table/base/renderTemplates.js +41 -59
- package/es/table/base/styles.js +0 -9
- package/es/table/base/table.js +108 -197
- package/es/table/base/utils.js +17 -57
- 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 -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 +18 -91
- 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 +26 -50
- 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 +74 -154
- package/es/table/pipeline/features/rowDetail.js +4 -43
- package/es/table/pipeline/features/rowDrag.js +37 -75
- 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 +37 -90
- package/es/table/pipeline/features/tips.js +4 -10
- package/es/table/pipeline/features/treeMode.js +14 -49
- package/es/table/pipeline/features/treeSelect.js +2 -28
- package/es/table/pipeline/pipeline.js +12 -53
- 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 +35 -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 -96
- 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/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 +5 -27
- package/es/table/utils/tree-data-helpers/TreeDataHelper.js +19 -74
- 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 +79 -166
- 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 +13 -69
- 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/header.js +19 -84
- package/lib/table/base/helpers/SpanManager.js +6 -16
- package/lib/table/base/helpers/TableDOMUtils.js +5 -33
- 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 -64
- 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 +44 -75
- package/lib/table/base/styles.js +9 -37
- package/lib/table/base/table.js +120 -241
- 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/internals.js +2 -17
- 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 +20 -117
- 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 +29 -76
- 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 +76 -175
- package/lib/table/pipeline/features/rowDetail.js +4 -67
- package/lib/table/pipeline/features/rowDrag.js +39 -89
- 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 -110
- package/lib/table/pipeline/features/tips.js +4 -19
- package/lib/table/pipeline/features/treeMode.js +15 -72
- package/lib/table/pipeline/features/treeSelect.js +2 -36
- package/lib/table/pipeline/index.js +2 -10
- package/lib/table/pipeline/pipeline.js +13 -64
- 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 +36 -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 -122
- 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 +2 -3
- 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 -21
- 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 +7 -38
- package/lib/table/utils/tree-data-helpers/TreeDataHelper.js +21 -90
- package/package.json +219 -218
|
@@ -1,56 +1,32 @@
|
|
|
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.rowDetail = rowDetail;
|
|
11
|
-
|
|
12
9
|
var _toArray2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/toArray"));
|
|
13
|
-
|
|
14
10
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/defineProperty"));
|
|
15
|
-
|
|
16
11
|
var _extends4 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/extends"));
|
|
17
|
-
|
|
18
12
|
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/toConsumableArray"));
|
|
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 _filter = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/filter"));
|
|
25
|
-
|
|
26
16
|
var _set = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/set"));
|
|
27
|
-
|
|
28
17
|
var _concat = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/concat"));
|
|
29
|
-
|
|
30
18
|
var _findIndex = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/find-index"));
|
|
31
|
-
|
|
32
19
|
var _slice = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/slice"));
|
|
33
|
-
|
|
34
20
|
var _classnames = _interopRequireDefault(require("classnames"));
|
|
35
|
-
|
|
36
21
|
var _react = _interopRequireDefault(require("react"));
|
|
37
|
-
|
|
38
22
|
var _commonViews = require("../../common-views");
|
|
39
|
-
|
|
40
23
|
var _internals = require("../../internals");
|
|
41
|
-
|
|
42
24
|
var _utils = require("../../utils");
|
|
43
|
-
|
|
44
25
|
var _others = require("../../utils/others");
|
|
45
|
-
|
|
46
26
|
var _console = _interopRequireDefault(require("../../utils/console"));
|
|
47
|
-
|
|
48
27
|
var _renderTemplates = _interopRequireDefault(require("../../base/renderTemplates"));
|
|
49
|
-
|
|
50
28
|
var _base = require("../../base");
|
|
51
|
-
|
|
52
29
|
var rowDetailSymbol = (0, _symbol.default)('row-detail');
|
|
53
|
-
|
|
54
30
|
var fallbackRenderDetail = function fallbackRenderDetail() {
|
|
55
31
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
56
32
|
style: {
|
|
@@ -62,14 +38,11 @@ var fallbackRenderDetail = function fallbackRenderDetail() {
|
|
|
62
38
|
}
|
|
63
39
|
}, "\u8BBE\u7F6E ", /*#__PURE__*/_react.default.createElement("code", null, "rowDetail.renderDetail"), " \u6765\u81EA\u5B9A\u4E49\u8BE6\u60C5\u5185\u5BB9"));
|
|
64
40
|
};
|
|
65
|
-
|
|
66
41
|
function rowDetail() {
|
|
67
42
|
var opts = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
68
43
|
return function rowDetailStep(pipeline) {
|
|
69
44
|
var _context, _context2;
|
|
70
|
-
|
|
71
45
|
var _a, _b, _c, _d, _e, _f, _g, _h;
|
|
72
|
-
|
|
73
46
|
var stateKey = 'rowDetail';
|
|
74
47
|
var rowDetailMetaKey = (_a = opts.rowDetailMetaKey) !== null && _a !== void 0 ? _a : rowDetailSymbol;
|
|
75
48
|
var primaryKey = pipeline.ensurePrimaryKey('rowDetail');
|
|
@@ -84,33 +57,26 @@ function rowDetail() {
|
|
|
84
57
|
var openKeys = (_h = (_g = (_f = opts.openKeys) !== null && _f !== void 0 ? _f : pipeline.getStateAtKey(stateKey)) !== null && _g !== void 0 ? _g : opts.defaultOpenAll ? (0, _map.default)(_context = (0, _filter.default)(_context2 = pipeline.getDataSource()).call(_context2, hasDetail)).call(_context, function (row, rowIndex) {
|
|
85
58
|
return _internals.internals.safeGetRowKey(primaryKey, row, rowIndex);
|
|
86
59
|
}) : opts.defaultOpenKeys) !== null && _h !== void 0 ? _h : [];
|
|
87
|
-
|
|
88
60
|
var onChangeOpenKeys = function onChangeOpenKeys(nextKeys, key, action) {
|
|
89
61
|
var _a;
|
|
90
|
-
|
|
91
62
|
(_a = opts.onChangeOpenKeys) === null || _a === void 0 ? void 0 : _a.call(opts, nextKeys, key, action);
|
|
92
63
|
pipeline.setStateAtKey(stateKey, nextKeys, {
|
|
93
64
|
key: key,
|
|
94
65
|
action: action
|
|
95
66
|
});
|
|
96
67
|
};
|
|
97
|
-
|
|
98
68
|
var openKeySet = new _set.default(openKeys);
|
|
99
|
-
|
|
100
69
|
var toggle = function toggle(rowKey) {
|
|
101
70
|
var expanded = openKeySet.has(rowKey);
|
|
102
|
-
|
|
103
71
|
if (expanded) {
|
|
104
72
|
onChangeOpenKeys((0, _filter.default)(openKeys).call(openKeys, function (key) {
|
|
105
73
|
return key !== rowKey;
|
|
106
74
|
}), rowKey, 'collapse');
|
|
107
75
|
} else {
|
|
108
76
|
var _context3;
|
|
109
|
-
|
|
110
77
|
onChangeOpenKeys((0, _concat.default)(_context3 = []).call(_context3, (0, _toConsumableArray2.default)(openKeys), [rowKey]), rowKey, 'expand');
|
|
111
78
|
}
|
|
112
79
|
};
|
|
113
|
-
|
|
114
80
|
var detailPrimaryKey = typeof primaryKey === 'string' ? primaryKey : rowDetailMetaKey.toString() + 'PrimaryKey';
|
|
115
81
|
return pipeline.dataSource((0, _flatMapInstanceProperty(_others))(pipeline.getDataSource(), function (row, rowIndex) {
|
|
116
82
|
if (openKeySet.has(_internals.internals.safeGetRowKey(primaryKey, row, rowIndex))) {
|
|
@@ -126,35 +92,27 @@ function rowDetail() {
|
|
|
126
92
|
};
|
|
127
93
|
}
|
|
128
94
|
});
|
|
129
|
-
|
|
130
95
|
function processColumns(columns) {
|
|
131
96
|
if (columns.length === 0) {
|
|
132
97
|
return columns;
|
|
133
98
|
}
|
|
134
|
-
|
|
135
99
|
var expandColumnIndex = 0;
|
|
136
|
-
|
|
137
100
|
if (opts.expandColumnCode) {
|
|
138
101
|
expandColumnIndex = (0, _findIndex.default)(columns).call(columns, function (col) {
|
|
139
102
|
return col.code === opts.expandColumnCode;
|
|
140
103
|
});
|
|
141
|
-
|
|
142
104
|
if (expandColumnIndex < 0) {
|
|
143
105
|
_console.default.warn('没找到可展开的列,请检查设置的展开列code');
|
|
144
|
-
|
|
145
106
|
return columns;
|
|
146
107
|
}
|
|
147
108
|
}
|
|
148
|
-
|
|
149
109
|
var expandCol = columns[expandColumnIndex];
|
|
150
110
|
var tableColumns = (0, _toConsumableArray2.default)(columns);
|
|
151
|
-
|
|
152
111
|
var render = function render(value, row, rowIndex) {
|
|
153
112
|
if (row[rowDetailMetaKey]) {
|
|
154
113
|
// 第一列内容已经渲染
|
|
155
114
|
if (expandColumnIndex !== 0) return;
|
|
156
115
|
var renderRowDetail = (0, _renderTemplates.default)('rowDetail');
|
|
157
|
-
|
|
158
116
|
if (typeof renderRowDetail === 'function') {
|
|
159
117
|
return renderRowDetail({
|
|
160
118
|
row: row,
|
|
@@ -163,12 +121,9 @@ function rowDetail() {
|
|
|
163
121
|
renderDetail: renderDetail
|
|
164
122
|
});
|
|
165
123
|
}
|
|
166
|
-
|
|
167
124
|
return renderDetail(row, rowIndex);
|
|
168
125
|
}
|
|
169
|
-
|
|
170
126
|
var content = _internals.internals.safeRender(expandCol, row, rowIndex);
|
|
171
|
-
|
|
172
127
|
if (!hasDetail(row, rowIndex)) {
|
|
173
128
|
return /*#__PURE__*/_react.default.createElement(_commonViews.InlineFlexCell, {
|
|
174
129
|
style: {
|
|
@@ -176,19 +131,14 @@ function rowDetail() {
|
|
|
176
131
|
}
|
|
177
132
|
}, content);
|
|
178
133
|
}
|
|
179
|
-
|
|
180
134
|
var rowKey = _internals.internals.safeGetRowKey(primaryKey, row, rowIndex);
|
|
181
|
-
|
|
182
135
|
var expanded = openKeySet.has(rowKey);
|
|
183
|
-
|
|
184
136
|
var onClick = function onClick(e) {
|
|
185
137
|
if (opts.stopClickEventPropagation) {
|
|
186
138
|
e.stopPropagation();
|
|
187
139
|
}
|
|
188
|
-
|
|
189
140
|
toggle(rowKey);
|
|
190
141
|
};
|
|
191
|
-
|
|
192
142
|
var expandCls = expanded ? _base.Classes.expanded : _base.Classes.collapsed;
|
|
193
143
|
var ExpandIcon = opts.expandIcon;
|
|
194
144
|
return /*#__PURE__*/_react.default.createElement(_commonViews.ExpansionCell, {
|
|
@@ -210,10 +160,8 @@ function rowDetail() {
|
|
|
210
160
|
onClick: clickArea === 'icon' ? onClick : undefined
|
|
211
161
|
}), content);
|
|
212
162
|
};
|
|
213
|
-
|
|
214
163
|
var getCellProps = function getCellProps(value, row, rowIndex) {
|
|
215
164
|
var _a;
|
|
216
|
-
|
|
217
165
|
if (row[rowDetailMetaKey]) {
|
|
218
166
|
return {
|
|
219
167
|
style: (0, _extends4.default)({
|
|
@@ -222,19 +170,15 @@ function rowDetail() {
|
|
|
222
170
|
}, opts.detailCellStyle)
|
|
223
171
|
};
|
|
224
172
|
}
|
|
225
|
-
|
|
226
173
|
var prevProps = (_a = expandCol.getCellProps) === null || _a === void 0 ? void 0 : _a.call(expandCol, value, row, rowIndex);
|
|
227
|
-
|
|
228
174
|
if (!hasDetail(row, rowIndex)) {
|
|
229
175
|
return prevProps;
|
|
230
176
|
}
|
|
231
|
-
|
|
232
177
|
return (0, _utils.mergeCellProps)(prevProps, {
|
|
233
178
|
onClick: function onClick(e) {
|
|
234
179
|
if (opts.stopClickEventPropagation) {
|
|
235
180
|
e.stopPropagation();
|
|
236
181
|
}
|
|
237
|
-
|
|
238
182
|
toggle(_internals.internals.safeGetRowKey(primaryKey, row, rowIndex));
|
|
239
183
|
},
|
|
240
184
|
style: {
|
|
@@ -242,15 +186,12 @@ function rowDetail() {
|
|
|
242
186
|
}
|
|
243
187
|
});
|
|
244
188
|
};
|
|
245
|
-
|
|
246
189
|
var _tableColumns = (0, _toArray2.default)(tableColumns),
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
190
|
+
firstCol = _tableColumns[0],
|
|
191
|
+
others = (0, _slice.default)(_tableColumns).call(_tableColumns, 1);
|
|
250
192
|
var firstColRender = function firstColRender(value, row, rowIndex) {
|
|
251
193
|
if (row[rowDetailMetaKey]) {
|
|
252
194
|
var renderRowDetail = (0, _renderTemplates.default)('rowDetail');
|
|
253
|
-
|
|
254
195
|
if (typeof renderRowDetail === 'function') {
|
|
255
196
|
return renderRowDetail({
|
|
256
197
|
row: row,
|
|
@@ -259,15 +200,11 @@ function rowDetail() {
|
|
|
259
200
|
renderDetail: renderDetail
|
|
260
201
|
});
|
|
261
202
|
}
|
|
262
|
-
|
|
263
203
|
return renderDetail(row, rowIndex);
|
|
264
204
|
}
|
|
265
|
-
|
|
266
205
|
var content = _internals.internals.safeRender(firstCol, row, rowIndex);
|
|
267
|
-
|
|
268
206
|
return content;
|
|
269
207
|
};
|
|
270
|
-
|
|
271
208
|
tableColumns[0] = (0, _extends4.default)((0, _extends4.default)({}, firstCol), {
|
|
272
209
|
render: firstColRender,
|
|
273
210
|
getSpanRect: function getSpanRect(value, row, rowIndex) {
|
|
@@ -283,12 +220,12 @@ function rowDetail() {
|
|
|
283
220
|
}
|
|
284
221
|
});
|
|
285
222
|
tableColumns[expandColumnIndex] = (0, _extends4.default)((0, _extends4.default)({}, expandCol), {
|
|
286
|
-
title: /*#__PURE__*/_react.default.createElement("div", {
|
|
223
|
+
title: ( /*#__PURE__*/_react.default.createElement("div", {
|
|
287
224
|
style: {
|
|
288
225
|
display: 'inline-block',
|
|
289
226
|
marginLeft: textOffset
|
|
290
227
|
}
|
|
291
|
-
}, _internals.internals.safeRenderHeader(expandCol)),
|
|
228
|
+
}, _internals.internals.safeRenderHeader(expandCol))),
|
|
292
229
|
render: render,
|
|
293
230
|
getCellProps: clickArea === 'cell' ? getCellProps : expandCol.getCellProps,
|
|
294
231
|
getSpanRect: function getSpanRect(value, row, rowIndex) {
|
|
@@ -1,36 +1,23 @@
|
|
|
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
|
});
|
|
10
8
|
exports.ROW_DRAG_COLUMN_CODE = void 0;
|
|
11
9
|
exports.rowDrag = rowDrag;
|
|
12
10
|
exports.rowDragKey = void 0;
|
|
13
|
-
|
|
14
11
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/defineProperty"));
|
|
15
|
-
|
|
16
12
|
var _slice = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/slice"));
|
|
17
|
-
|
|
18
13
|
var _concat = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/concat"));
|
|
19
|
-
|
|
20
14
|
var _react = _interopRequireDefault(require("react"));
|
|
21
|
-
|
|
22
15
|
var _rxjs = require("rxjs");
|
|
23
|
-
|
|
24
16
|
var _operators = require("rxjs/operators");
|
|
25
|
-
|
|
26
17
|
var _classnames = _interopRequireDefault(require("classnames"));
|
|
27
|
-
|
|
28
18
|
var _styles = require("../../base/styles");
|
|
29
|
-
|
|
30
|
-
var
|
|
31
|
-
exports.ROW_DRAG_COLUMN_CODE = ROW_DRAG_COLUMN_CODE;
|
|
32
|
-
var rowDragKey = 'rowDragKey';
|
|
33
|
-
exports.rowDragKey = rowDragKey;
|
|
19
|
+
var ROW_DRAG_COLUMN_CODE = exports.ROW_DRAG_COLUMN_CODE = '$_row_drag_column_&';
|
|
20
|
+
var rowDragKey = exports.rowDragKey = 'rowDragKey';
|
|
34
21
|
var SCROLL_OFFSET = 30;
|
|
35
22
|
var defaultRowDragColumn = {
|
|
36
23
|
name: '拖拽列',
|
|
@@ -58,47 +45,38 @@ var defaultRowDragColumn = {
|
|
|
58
45
|
}));
|
|
59
46
|
}
|
|
60
47
|
};
|
|
61
|
-
|
|
62
48
|
function rowDrag(opt) {
|
|
63
49
|
return function rowDragStep(pipeline) {
|
|
64
50
|
var _context;
|
|
65
|
-
|
|
66
51
|
var tableBody = pipeline.ref.current.domHelper && pipeline.ref.current.domHelper.tableBody;
|
|
67
52
|
var artTable = pipeline.ref.current.domHelper && pipeline.ref.current.domHelper.artTable;
|
|
68
53
|
if (!tableBody) return pipeline;
|
|
69
54
|
var dataSource = pipeline.getDataSource();
|
|
70
55
|
var rowHeight = (opt === null || opt === void 0 ? void 0 : opt.rowHeight) || 48;
|
|
71
|
-
|
|
72
56
|
var handleDragStrat = function handleDragStrat(event) {
|
|
73
|
-
var _a;
|
|
74
|
-
|
|
75
|
-
|
|
57
|
+
var _a;
|
|
58
|
+
// 开始拖拽
|
|
76
59
|
artTable.classList.add((0, _classnames.default)(_styles.Classes.rowDragging));
|
|
77
60
|
(_a = opt === null || opt === void 0 ? void 0 : opt.onDragStart) === null || _a === void 0 ? void 0 : _a.call(opt, event);
|
|
78
61
|
};
|
|
79
|
-
|
|
80
62
|
var handleDragMove = function handleDragMove(event) {
|
|
81
63
|
var _a;
|
|
82
|
-
|
|
83
64
|
(_a = opt === null || opt === void 0 ? void 0 : opt.onDragMove) === null || _a === void 0 ? void 0 : _a.call(opt, event);
|
|
84
65
|
pipeline.setStateAtKey(rowDragKey, event);
|
|
85
66
|
};
|
|
86
|
-
|
|
87
67
|
var handleDragEnd = function handleDragEnd(event, isOutOfRange) {
|
|
88
68
|
var _a;
|
|
89
|
-
|
|
90
69
|
artTable.classList.remove((0, _classnames.default)(_styles.Classes.rowDragging));
|
|
91
|
-
pipeline.setStateAtKey(rowDragKey, event);
|
|
92
|
-
|
|
70
|
+
pipeline.setStateAtKey(rowDragKey, event);
|
|
71
|
+
// 超出拖拽范围不触发dragend事件
|
|
93
72
|
if (!isOutOfRange) {
|
|
94
73
|
(_a = opt === null || opt === void 0 ? void 0 : opt.onDragEnd) === null || _a === void 0 ? void 0 : _a.call(opt, event);
|
|
95
74
|
}
|
|
96
75
|
};
|
|
97
|
-
|
|
98
76
|
var getDragEvent = function getDragEvent(startRowInfo, endRowInfo, _ref) {
|
|
99
77
|
var isFinished = _ref.isFinished,
|
|
100
|
-
|
|
101
|
-
|
|
78
|
+
_ref$dragPosition = _ref.dragPosition,
|
|
79
|
+
dragPosition = _ref$dragPosition === void 0 ? 'bottom' : _ref$dragPosition;
|
|
102
80
|
return {
|
|
103
81
|
startRowIndex: startRowInfo.rowIndex,
|
|
104
82
|
startRow: startRowInfo.row,
|
|
@@ -108,31 +86,26 @@ function rowDrag(opt) {
|
|
|
108
86
|
isFinished: isFinished
|
|
109
87
|
};
|
|
110
88
|
};
|
|
111
|
-
|
|
112
89
|
var updateScrollPosition = function updateScrollPosition(mouseMoveEvent) {
|
|
113
90
|
if (opt === null || opt === void 0 ? void 0 : opt.suppressScrollMove) return;
|
|
114
91
|
var clientY = mouseMoveEvent.clientY;
|
|
115
92
|
var tableBodyClientRect = tableBody.getBoundingClientRect();
|
|
116
93
|
var top = tableBodyClientRect.top,
|
|
117
|
-
|
|
118
|
-
|
|
94
|
+
height = tableBodyClientRect.height;
|
|
119
95
|
if (clientY + SCROLL_OFFSET >= top + height) {
|
|
120
96
|
pipeline.ref.current.domHelper.tableBody.scrollTop += SCROLL_OFFSET;
|
|
121
97
|
}
|
|
122
|
-
|
|
123
98
|
if (clientY + SCROLL_OFFSET <= top) {
|
|
124
99
|
pipeline.ref.current.domHelper.tableBody.scrollTop -= SCROLL_OFFSET;
|
|
125
100
|
}
|
|
126
101
|
};
|
|
127
|
-
|
|
128
102
|
var onMouseDown = function onMouseDown(mouseDownEvent) {
|
|
129
103
|
var _a;
|
|
130
|
-
|
|
131
104
|
var startRowInfo = getTargetRowInfo(mouseDownEvent.target, tableBody, dataSource);
|
|
132
105
|
var endRowInfo = startRowInfo;
|
|
133
106
|
if (!startRowInfo || startRowInfo.code !== rowDragColumn.code) return;
|
|
134
|
-
if ((_a = opt === null || opt === void 0 ? void 0 : opt.isDisabled) === null || _a === void 0 ? void 0 : _a.call(opt, startRowInfo.row, startRowInfo.rowIndex)) return;
|
|
135
|
-
|
|
107
|
+
if ((_a = opt === null || opt === void 0 ? void 0 : opt.isDisabled) === null || _a === void 0 ? void 0 : _a.call(opt, startRowInfo.row, startRowInfo.rowIndex)) return;
|
|
108
|
+
// 默认拖拽插入的位置是向下
|
|
136
109
|
var dragPosition = 'bottom';
|
|
137
110
|
var isOutOfRange = false;
|
|
138
111
|
var dragStartEvent = getDragEvent(startRowInfo, endRowInfo, {
|
|
@@ -141,11 +114,11 @@ function rowDrag(opt) {
|
|
|
141
114
|
});
|
|
142
115
|
handleDragStrat(dragStartEvent);
|
|
143
116
|
var tableWidth = tableBody.clientWidth;
|
|
144
|
-
var startRowRects = startRowInfo.cell.getBoundingClientRect();
|
|
145
|
-
|
|
117
|
+
var startRowRects = startRowInfo.cell.getBoundingClientRect();
|
|
118
|
+
// 光标位置距离初始拖拽行的偏移量
|
|
146
119
|
var startOffset = mouseDownEvent.clientY - startRowRects.top;
|
|
147
|
-
var dragElement = createDragElement(startRowRects, tableWidth, rowHeight);
|
|
148
|
-
|
|
120
|
+
var dragElement = createDragElement(startRowRects, tableWidth, rowHeight);
|
|
121
|
+
// 可拖拽的范围
|
|
149
122
|
var dragRange = getDragRange(tableBody, {
|
|
150
123
|
startOffset: startOffset,
|
|
151
124
|
rowHeight: rowHeight
|
|
@@ -156,7 +129,6 @@ function rowDrag(opt) {
|
|
|
156
129
|
};
|
|
157
130
|
var mousemove$ = (0, _rxjs.fromEvent)(window, 'mousemove');
|
|
158
131
|
var mouseup$ = (0, _rxjs.fromEvent)(window, 'mouseup');
|
|
159
|
-
|
|
160
132
|
var scrollCallback = function scrollCallback(event) {
|
|
161
133
|
// 在当前表格内滚动不处理
|
|
162
134
|
if (event.target === tableBody) return;
|
|
@@ -167,19 +139,16 @@ function rowDrag(opt) {
|
|
|
167
139
|
var isOutOfRange = isOutOfDragRange(mousePosition, dragRange);
|
|
168
140
|
updateCurSorStyle(isOutOfRange);
|
|
169
141
|
};
|
|
170
|
-
|
|
171
142
|
document.addEventListener('scroll', scrollCallback, true);
|
|
172
143
|
var rowDrag$ = mousemove$.pipe((0, _mapInstanceProperty(_operators))(function (mouseMoveEvent) {
|
|
173
144
|
var clientX = mouseMoveEvent.clientX,
|
|
174
|
-
|
|
145
|
+
clientY = mouseMoveEvent.clientY;
|
|
175
146
|
var tagretRow = getTargetRowInfo(mouseMoveEvent.target, tableBody, dataSource);
|
|
176
|
-
|
|
177
147
|
if (tagretRow) {
|
|
178
148
|
endRowInfo = tagretRow;
|
|
179
149
|
}
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
150
|
+
var targetRowRects = endRowInfo.cell.getBoundingClientRect();
|
|
151
|
+
// 判断拖拽插入的位置,拖拽框上边框位于目标行之上则向上插入,否则向下插入
|
|
183
152
|
var isMoveToTop = clientY - startOffset < targetRowRects.top;
|
|
184
153
|
dragPosition = isMoveToTop ? 'top' : 'bottom';
|
|
185
154
|
isOutOfRange = isOutOfDragRange({
|
|
@@ -191,7 +160,6 @@ function rowDrag(opt) {
|
|
|
191
160
|
y: clientY
|
|
192
161
|
};
|
|
193
162
|
updateScrollPosition(mouseMoveEvent); // 拖拽到底时让滚动条可以滚动
|
|
194
|
-
|
|
195
163
|
updateDragElementPosition(dragElement, dragRange, {
|
|
196
164
|
x: clientX,
|
|
197
165
|
y: clientY,
|
|
@@ -207,8 +175,8 @@ function rowDrag(opt) {
|
|
|
207
175
|
rowDrag$.subscribe({
|
|
208
176
|
next: function next(_ref2) {
|
|
209
177
|
var startRowInfo = _ref2.startRowInfo,
|
|
210
|
-
|
|
211
|
-
|
|
178
|
+
endRowInfo = _ref2.endRowInfo,
|
|
179
|
+
dragPosition = _ref2.dragPosition;
|
|
212
180
|
var dragMoveEvent = getDragEvent(startRowInfo, endRowInfo, {
|
|
213
181
|
isFinished: false,
|
|
214
182
|
dragPosition: dragPosition
|
|
@@ -227,7 +195,6 @@ function rowDrag(opt) {
|
|
|
227
195
|
}
|
|
228
196
|
});
|
|
229
197
|
};
|
|
230
|
-
|
|
231
198
|
var rowDragColumn = (opt === null || opt === void 0 ? void 0 : opt.rowDragColumn) || defaultRowDragColumn;
|
|
232
199
|
pipeline.setFeatureOptions('rowDragColumnKey', rowDragColumn.code);
|
|
233
200
|
var nextColumns = (0, _slice.default)(_context = pipeline.getColumns()).call(_context);
|
|
@@ -237,16 +204,14 @@ function rowDrag(opt) {
|
|
|
237
204
|
onMouseDown: onMouseDown
|
|
238
205
|
});
|
|
239
206
|
pipeline.appendRowPropsGetter(function (row, rowIndex) {
|
|
240
|
-
var _cx;
|
|
241
|
-
|
|
242
207
|
var rowDragEvent = pipeline.getStateAtKey(rowDragKey) || {};
|
|
243
208
|
var startRowIndex = rowDragEvent.startRowIndex,
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
209
|
+
endRowIndex = rowDragEvent.endRowIndex,
|
|
210
|
+
isFinished = rowDragEvent.isFinished,
|
|
211
|
+
dragPosition = rowDragEvent.dragPosition;
|
|
247
212
|
var isFooterCell = row[pipeline.getFeatureOptions('footerRowMetaKey')];
|
|
248
213
|
if (isFooterCell || isFinished || rowIndex !== startRowIndex && rowIndex !== endRowIndex) return;
|
|
249
|
-
var className = (0, _classnames.default)((
|
|
214
|
+
var className = (0, _classnames.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)({}, _styles.Classes.rowDragStart, rowIndex === startRowIndex), _styles.Classes.rowDragEnd, rowIndex === endRowIndex), _styles.Classes.rowDragEndToTop, rowIndex === endRowIndex && dragPosition === 'top'), _styles.Classes.rowDragEndToBottom, rowIndex === endRowIndex && dragPosition === 'bottom'));
|
|
250
215
|
return {
|
|
251
216
|
className: className
|
|
252
217
|
};
|
|
@@ -254,7 +219,6 @@ function rowDrag(opt) {
|
|
|
254
219
|
return pipeline;
|
|
255
220
|
};
|
|
256
221
|
}
|
|
257
|
-
|
|
258
222
|
function getTargetRowInfo(target, tableBody, record) {
|
|
259
223
|
while (target && tableBody.contains(target)) {
|
|
260
224
|
if (target.getAttribute('data-role') === 'table-cell') {
|
|
@@ -270,41 +234,33 @@ function getTargetRowInfo(target, tableBody, record) {
|
|
|
270
234
|
cell: target
|
|
271
235
|
};
|
|
272
236
|
}
|
|
273
|
-
|
|
274
237
|
target = target.parentElement;
|
|
275
238
|
}
|
|
276
|
-
|
|
277
239
|
return null;
|
|
278
240
|
}
|
|
279
|
-
|
|
280
241
|
function isEleInFooter(target) {
|
|
281
242
|
while (target && !target.classList.contains(_styles.Classes.artTable)) {
|
|
282
243
|
if (target.classList.contains(_styles.Classes.tableFooter)) {
|
|
283
244
|
return true;
|
|
284
245
|
}
|
|
285
|
-
|
|
286
246
|
target = target.parentElement;
|
|
287
247
|
}
|
|
288
|
-
|
|
289
248
|
return false;
|
|
290
249
|
}
|
|
291
|
-
|
|
292
250
|
function createDragElement(rects, tableWidth, rowHeight) {
|
|
293
251
|
var _context2, _context3, _context4;
|
|
294
|
-
|
|
295
252
|
var x = rects.x,
|
|
296
|
-
|
|
253
|
+
y = rects.y;
|
|
297
254
|
var dragMoveElement = document.createElement('div');
|
|
298
255
|
dragMoveElement.className = (0, _classnames.default)(_styles.Classes.rowDragElement);
|
|
299
256
|
dragMoveElement.style.cssText = (0, _concat.default)(_context2 = (0, _concat.default)(_context3 = (0, _concat.default)(_context4 = "position:fixed;z-index:9999;left:".concat(x, "px;top:")).call(_context4, y, "px;pointer-events:none;width:")).call(_context3, tableWidth, "px;height:")).call(_context2, rowHeight, "px;background:var(--primary-color);opacity: 0.1;");
|
|
300
257
|
document.body.appendChild(dragMoveElement);
|
|
301
258
|
return dragMoveElement;
|
|
302
259
|
}
|
|
303
|
-
|
|
304
260
|
function updateDragElementPosition(element, dragRange, _ref3) {
|
|
305
261
|
var x = _ref3.x,
|
|
306
|
-
|
|
307
|
-
|
|
262
|
+
y = _ref3.y,
|
|
263
|
+
startOffset = _ref3.startOffset;
|
|
308
264
|
var validPosition = getValidPosition({
|
|
309
265
|
x: x,
|
|
310
266
|
y: y
|
|
@@ -312,11 +268,9 @@ function updateDragElementPosition(element, dragRange, _ref3) {
|
|
|
312
268
|
element.style.top = validPosition.y - startOffset + 'px';
|
|
313
269
|
return element;
|
|
314
270
|
}
|
|
315
|
-
|
|
316
271
|
function removeDragElement(element) {
|
|
317
272
|
document.body.removeChild(element);
|
|
318
273
|
}
|
|
319
|
-
|
|
320
274
|
function updateCurSorStyle(isOutOfRange) {
|
|
321
275
|
if (isOutOfRange) {
|
|
322
276
|
document.body.style.cursor = 'no-drop';
|
|
@@ -324,19 +278,17 @@ function updateCurSorStyle(isOutOfRange) {
|
|
|
324
278
|
document.body.style.cursor = 'move';
|
|
325
279
|
}
|
|
326
280
|
}
|
|
327
|
-
|
|
328
281
|
function removeCurSorStyle() {
|
|
329
282
|
document.body.style.cursor = 'default';
|
|
330
283
|
}
|
|
331
|
-
|
|
332
284
|
function getDragRange(tableBody, _ref4) {
|
|
333
285
|
var startOffset = _ref4.startOffset,
|
|
334
|
-
|
|
286
|
+
rowHeight = _ref4.rowHeight;
|
|
335
287
|
var tableBodyClientRect = tableBody.getBoundingClientRect();
|
|
336
288
|
var height = tableBodyClientRect.height,
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
289
|
+
width = tableBodyClientRect.width,
|
|
290
|
+
top = tableBodyClientRect.top,
|
|
291
|
+
left = tableBodyClientRect.left;
|
|
340
292
|
return {
|
|
341
293
|
minX: left,
|
|
342
294
|
maxX: left + width,
|
|
@@ -344,14 +296,13 @@ function getDragRange(tableBody, _ref4) {
|
|
|
344
296
|
maxY: top + height + startOffset
|
|
345
297
|
};
|
|
346
298
|
}
|
|
347
|
-
|
|
348
299
|
function getValidPosition(position, dragRange) {
|
|
349
300
|
var x = position.x,
|
|
350
|
-
|
|
301
|
+
y = position.y;
|
|
351
302
|
var minX = dragRange.minX,
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
303
|
+
maxX = dragRange.maxX,
|
|
304
|
+
minY = dragRange.minY,
|
|
305
|
+
maxY = dragRange.maxY;
|
|
355
306
|
var newX = x < minX ? minX : x > maxX ? maxX : x;
|
|
356
307
|
var newY = y < minY ? minY : y > maxY ? maxY : y;
|
|
357
308
|
return {
|
|
@@ -359,13 +310,12 @@ function getValidPosition(position, dragRange) {
|
|
|
359
310
|
y: newY
|
|
360
311
|
};
|
|
361
312
|
}
|
|
362
|
-
|
|
363
313
|
function isOutOfDragRange(position, dragRange) {
|
|
364
314
|
var x = position.x,
|
|
365
|
-
|
|
315
|
+
y = position.y;
|
|
366
316
|
var minX = dragRange.minX,
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
317
|
+
maxX = dragRange.maxX,
|
|
318
|
+
minY = dragRange.minY,
|
|
319
|
+
maxY = dragRange.maxY;
|
|
370
320
|
return x > maxX || x < minX || y > maxY || y < minY;
|
|
371
321
|
}
|