@kdcloudjs/table 1.2.0 → 1.2.1-canary.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/dist/@kdcloudjs/table.css +1 -1
- package/dist/@kdcloudjs/table.js +36 -17
- package/dist/@kdcloudjs/table.js.map +1 -1
- package/dist/@kdcloudjs/table.min.css +1 -1
- package/dist/@kdcloudjs/table.min.js +6 -6
- package/dist/@kdcloudjs/table.min.js.map +1 -1
- package/es/table/base/helpers/getRichVisibleRectsStream.js +2 -1
- package/es/table/pipeline/features/contextMenu.js +1 -2
- package/es/table/pipeline/features/multiSelect.js +31 -12
- package/es/table/pipeline/features/treeMode.js +1 -1
- package/lib/table/base/helpers/getRichVisibleRectsStream.js +2 -1
- package/lib/table/pipeline/features/contextMenu.js +1 -2
- package/lib/table/pipeline/features/multiSelect.js +33 -12
- package/lib/table/pipeline/features/treeMode.js +1 -1
- package/package.json +3 -3
package/dist/@kdcloudjs/table.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
*
|
|
3
|
-
* @kdcloudjs/table v1.1.
|
|
3
|
+
* @kdcloudjs/table v1.2.1-canary.1
|
|
4
4
|
*
|
|
5
5
|
* Copyright 2020-present, Kingdee, Inc.
|
|
6
6
|
* All rights reserved.
|
|
@@ -2253,7 +2253,8 @@ function getScrollParent(elem) {
|
|
|
2253
2253
|
|
|
2254
2254
|
|
|
2255
2255
|
function getRichVisibleRectsStream(target, structureMayChange$, virtualDebugLabel) {
|
|
2256
|
-
return structureMayChange$.pipe(rxjs_operators__WEBPACK_IMPORTED_MODULE_13__["
|
|
2256
|
+
return structureMayChange$.pipe(rxjs_operators__WEBPACK_IMPORTED_MODULE_13__["mapTo"](target), rxjs_operators__WEBPACK_IMPORTED_MODULE_13__["distinctUntilChanged"](_utils__WEBPACK_IMPORTED_MODULE_14__["shallowEqual"]), // 当target没有发生变化时,无需重新查找
|
|
2257
|
+
rxjs_operators__WEBPACK_IMPORTED_MODULE_13__["startWith"]('init'), rxjs_operators__WEBPACK_IMPORTED_MODULE_13__["map"](function () {
|
|
2257
2258
|
// target 的第一个滚动父元素,我们认为这就是虚拟滚动发生的地方
|
|
2258
2259
|
// 即虚拟滚动不考虑「更上层元素发生滚动」的情况
|
|
2259
2260
|
// 直接从父元素开始查找,防止自身设置overflow属性导致是同一个元素
|
|
@@ -7110,8 +7111,7 @@ function keepWithinBounds(popupParent, ePopup, x, y) {
|
|
|
7110
7111
|
}
|
|
7111
7112
|
|
|
7112
7113
|
if (y) {
|
|
7113
|
-
var
|
|
7114
|
-
var maxY = parentHeight - minHeight;
|
|
7114
|
+
var maxY = parentHeight - ePopupRect.height;
|
|
7115
7115
|
y = Math.min(Math.max(y, 0), Math.abs(maxY)); // 目前位置,最大支持的位置
|
|
7116
7116
|
}
|
|
7117
7117
|
|
|
@@ -8175,6 +8175,9 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va
|
|
|
8175
8175
|
|
|
8176
8176
|
|
|
8177
8177
|
|
|
8178
|
+
var fullRowsSetKey = 'fullRowsSetKey';
|
|
8179
|
+
var allEnableKeys = 'allEnableKeys';
|
|
8180
|
+
var selectValueSetKey = 'selectValueSetKey';
|
|
8178
8181
|
function multiSelect() {
|
|
8179
8182
|
var opts = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
8180
8183
|
return function multiSelectStep(pipeline) {
|
|
@@ -8205,10 +8208,9 @@ function multiSelect() {
|
|
|
8205
8208
|
action: action
|
|
8206
8209
|
});
|
|
8207
8210
|
};
|
|
8208
|
-
|
|
8209
|
-
var dataSource = pipeline.getDataSource();
|
|
8210
8211
|
/** dataSource 中包含的所有 keys */
|
|
8211
8212
|
|
|
8213
|
+
|
|
8212
8214
|
var fullKeySet = new Set();
|
|
8213
8215
|
/** 所有有效的 keys(disable 状态为 false) */
|
|
8214
8216
|
|
|
@@ -8217,7 +8219,7 @@ function multiSelect() {
|
|
|
8217
8219
|
var isAllChecked = set.size !== 0; // 当前不存在选中则默认为false
|
|
8218
8220
|
|
|
8219
8221
|
var isAnyChecked = false;
|
|
8220
|
-
var flatDataSource = Object(_utils__WEBPACK_IMPORTED_MODULE_17__["collectNodes"])(
|
|
8222
|
+
var flatDataSource = Object(_utils__WEBPACK_IMPORTED_MODULE_17__["collectNodes"])(pipeline.getDataSource());
|
|
8221
8223
|
flatDataSource.forEach(function (row, rowIndex) {
|
|
8222
8224
|
var rowKey = _internals__WEBPACK_IMPORTED_MODULE_15__["internals"].safeGetRowKey(primaryKey, row, rowIndex);
|
|
8223
8225
|
fullKeySet.add(rowKey); // 在 allKeys 中排除被禁用的 key
|
|
@@ -8245,6 +8247,8 @@ function multiSelect() {
|
|
|
8245
8247
|
checked: isAllChecked,
|
|
8246
8248
|
indeterminate: !isAllChecked && isAnyChecked,
|
|
8247
8249
|
onChange: function onChange(_) {
|
|
8250
|
+
var allKeys = pipeline.getFeatureOptions(allEnableKeys);
|
|
8251
|
+
|
|
8248
8252
|
if (isAllChecked) {
|
|
8249
8253
|
_onChange(_utils_others__WEBPACK_IMPORTED_MODULE_16__["arrayUtils"].diff(value, allKeys), '', allKeys, 'uncheck-all');
|
|
8250
8254
|
} else {
|
|
@@ -8265,9 +8269,11 @@ function multiSelect() {
|
|
|
8265
8269
|
var rowKey = _internals__WEBPACK_IMPORTED_MODULE_15__["internals"].safeGetRowKey(primaryKey, row, rowIndex);
|
|
8266
8270
|
var checkboxCellProps = {};
|
|
8267
8271
|
var preCellProps = (_opts$checkboxColumn = opts.checkboxColumn) === null || _opts$checkboxColumn === void 0 ? void 0 : (_opts$checkboxColumn$ = _opts$checkboxColumn.getCellProps) === null || _opts$checkboxColumn$ === void 0 ? void 0 : _opts$checkboxColumn$.call(_opts$checkboxColumn, value, row, rowIndex);
|
|
8272
|
+
var fullRowsSet = pipeline.getFeatureOptions(fullRowsSetKey) || new Set();
|
|
8273
|
+
var selectValueSet = pipeline.getFeatureOptions(selectValueSetKey) || new Set();
|
|
8268
8274
|
|
|
8269
|
-
if (
|
|
8270
|
-
var prevChecked =
|
|
8275
|
+
if (fullRowsSet.has(rowKey) && clickArea === 'cell') {
|
|
8276
|
+
var prevChecked = selectValueSet.has(rowKey);
|
|
8271
8277
|
var disabled = isDisabled(row, rowIndex);
|
|
8272
8278
|
checkboxCellProps = {
|
|
8273
8279
|
style: {
|
|
@@ -8291,7 +8297,8 @@ function multiSelect() {
|
|
|
8291
8297
|
}
|
|
8292
8298
|
|
|
8293
8299
|
var key = _internals__WEBPACK_IMPORTED_MODULE_15__["internals"].safeGetRowKey(primaryKey, row, rowIndex);
|
|
8294
|
-
var
|
|
8300
|
+
var selectValueSet = pipeline.getFeatureOptions(selectValueSetKey) || new Set();
|
|
8301
|
+
var checked = selectValueSet.has(key);
|
|
8295
8302
|
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default.a.createElement(Checkbox, {
|
|
8296
8303
|
checked: checked,
|
|
8297
8304
|
disabled: isDisabled(row, rowIndex),
|
|
@@ -8330,8 +8337,9 @@ function multiSelect() {
|
|
|
8330
8337
|
|
|
8331
8338
|
pipeline.appendRowPropsGetter(function (row, rowIndex) {
|
|
8332
8339
|
var rowKey = _internals__WEBPACK_IMPORTED_MODULE_15__["internals"].safeGetRowKey(primaryKey, row, rowIndex);
|
|
8340
|
+
var fullRowsSet = pipeline.getFeatureOptions(fullRowsSetKey) || new Set();
|
|
8333
8341
|
|
|
8334
|
-
if (!
|
|
8342
|
+
if (!fullRowsSet.has(rowKey)) {
|
|
8335
8343
|
// rowKey 不在 fullKeySet 中说明这一行是在 multiSelect 之后才生成的,multiSelect 不对之后生成的行进行处理
|
|
8336
8344
|
return;
|
|
8337
8345
|
}
|
|
@@ -8339,7 +8347,8 @@ function multiSelect() {
|
|
|
8339
8347
|
var style = {};
|
|
8340
8348
|
var className;
|
|
8341
8349
|
var onClick;
|
|
8342
|
-
var
|
|
8350
|
+
var selectValueSet = pipeline.getFeatureOptions(selectValueSetKey) || new Set();
|
|
8351
|
+
var checked = selectValueSet.has(rowKey);
|
|
8343
8352
|
|
|
8344
8353
|
if (opts.highlightRowWhenSelected && checked) {
|
|
8345
8354
|
className = 'highlight';
|
|
@@ -8366,22 +8375,32 @@ function multiSelect() {
|
|
|
8366
8375
|
style: style,
|
|
8367
8376
|
onClick: onClick
|
|
8368
8377
|
};
|
|
8369
|
-
});
|
|
8378
|
+
}); // 只保留一份到pipeline, 避免行数据过多时内容被握住
|
|
8379
|
+
|
|
8380
|
+
pipeline.setFeatureOptions(fullRowsSetKey, fullKeySet);
|
|
8381
|
+
pipeline.setFeatureOptions(allEnableKeys, allKeys);
|
|
8382
|
+
pipeline.setFeatureOptions(selectValueSetKey, set);
|
|
8383
|
+
fullKeySet = null;
|
|
8384
|
+
allKeys = null;
|
|
8385
|
+
set = null;
|
|
8370
8386
|
return pipeline;
|
|
8371
8387
|
|
|
8372
8388
|
function onCheckboxChange(prevChecked, key, batch) {
|
|
8373
8389
|
var batchKeys = [key];
|
|
8374
8390
|
|
|
8375
8391
|
if (batch && lastKey) {
|
|
8376
|
-
var
|
|
8377
|
-
|
|
8392
|
+
var _allKeys = pipeline.getFeatureOptions(allEnableKeys);
|
|
8393
|
+
|
|
8394
|
+
var lastIdx = _allKeys.indexOf(lastKey);
|
|
8395
|
+
|
|
8396
|
+
var cntIdx = _allKeys.indexOf(key);
|
|
8378
8397
|
|
|
8379
8398
|
var _ref5 = lastIdx < cntIdx ? [lastIdx, cntIdx] : [cntIdx, lastIdx],
|
|
8380
8399
|
_ref6 = _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_5___default()(_ref5, 2),
|
|
8381
8400
|
start = _ref6[0],
|
|
8382
8401
|
end = _ref6[1];
|
|
8383
8402
|
|
|
8384
|
-
batchKeys =
|
|
8403
|
+
batchKeys = _allKeys.slice(start, end + 1);
|
|
8385
8404
|
}
|
|
8386
8405
|
|
|
8387
8406
|
if (prevChecked) {
|
|
@@ -10860,7 +10879,7 @@ function treeMode() {
|
|
|
10860
10879
|
return pipeline.getFeatureOptions('lastTreeMode');
|
|
10861
10880
|
}
|
|
10862
10881
|
|
|
10863
|
-
pipeline.setFeatureOptions('lastOpenKeys', pipeline.getStateAtKey(stateKey)
|
|
10882
|
+
pipeline.setFeatureOptions('lastOpenKeys', pipeline.getStateAtKey(stateKey));
|
|
10864
10883
|
var result = [];
|
|
10865
10884
|
dfs(input, 0);
|
|
10866
10885
|
|