@kdcloudjs/table 1.1.5-canary.8 → 1.1.5

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.
@@ -1,6 +1,6 @@
1
1
  /*!
2
2
  *
3
- * @kdcloudjs/table v1.1.5-canary.7
3
+ * @kdcloudjs/table v1.1.4
4
4
  *
5
5
  * Copyright 2020-present, Kingdee, Inc.
6
6
  * All rights reserved.
@@ -1,6 +1,6 @@
1
1
  /*!
2
2
  *
3
- * @kdcloudjs/table v1.1.5-canary.7
3
+ * @kdcloudjs/table v1.1.4
4
4
  *
5
5
  * Copyright 2020-present, Kingdee, Inc.
6
6
  * All rights reserved.
@@ -3339,7 +3339,7 @@ var defaultCSSVariables = {
3339
3339
  '--row-height': '48px',
3340
3340
  '--color': '#333',
3341
3341
  '--bgcolor': 'white',
3342
- '--hover-bgcolor': 'var(--hover-color, #F2F6FF)',
3342
+ '--hover-bgcolor': 'var(--hover-color, #f5f5f5)',
3343
3343
  '--highlight-bgcolor': '#eee',
3344
3344
  '--primary-color': '#5582F3',
3345
3345
  '--primary-color-level1': 'rgb(242, 248, 255)',
@@ -4700,7 +4700,7 @@ var icons = {
4700
4700
  CaretRight: CaretRightIcon,
4701
4701
  Info: InfoIcon
4702
4702
  };
4703
- var ContextMenuStyleWrap = styled_components__WEBPACK_IMPORTED_MODULE_3__["default"].div(_templateObject3 || (_templateObject3 = _babel_runtime_helpers_taggedTemplateLiteral__WEBPACK_IMPORTED_MODULE_1___default()(["\n &.", "{\n border: 1px solid #e9ecf1;\n border-radius: 2px;\n background-color: #Fff;\n box-shadow: 0px 0px 5px 0px rgb(154 154 154 / 50%);\n cursor: default;\n font-size: 13px;\n position:absolute;\n z-index: 1050;\n width:120px;\n }\n\n .", "{\n width:100%;\n display: table;\n }\n\n .", " .", "{\n display: table-row;\n color: #666666;\n }\n\n .", " .", "{\n background-color: #f5f5f5;\n }\n\n .", " .", " .", "{\n display: table-cell;\n padding: 5px 8px;\n }\n .", " .", ".", "{\n opacity: .5;\n }\n\n"])), _base_styles__WEBPACK_IMPORTED_MODULE_4__["MenuClasses"].menu, _base_styles__WEBPACK_IMPORTED_MODULE_4__["MenuClasses"].menuList, _base_styles__WEBPACK_IMPORTED_MODULE_4__["MenuClasses"].menuList, _base_styles__WEBPACK_IMPORTED_MODULE_4__["MenuClasses"].menuOption, _base_styles__WEBPACK_IMPORTED_MODULE_4__["MenuClasses"].menuList, _base_styles__WEBPACK_IMPORTED_MODULE_4__["MenuClasses"].menuOptionActive, _base_styles__WEBPACK_IMPORTED_MODULE_4__["MenuClasses"].menuList, _base_styles__WEBPACK_IMPORTED_MODULE_4__["MenuClasses"].menuOption, _base_styles__WEBPACK_IMPORTED_MODULE_4__["MenuClasses"].menuOptionText, _base_styles__WEBPACK_IMPORTED_MODULE_4__["MenuClasses"].menuList, _base_styles__WEBPACK_IMPORTED_MODULE_4__["MenuClasses"].menuOption, _base_styles__WEBPACK_IMPORTED_MODULE_4__["MenuClasses"].menuOptionDisable);
4703
+ var ContextMenuStyleWrap = styled_components__WEBPACK_IMPORTED_MODULE_3__["default"].div(_templateObject3 || (_templateObject3 = _babel_runtime_helpers_taggedTemplateLiteral__WEBPACK_IMPORTED_MODULE_1___default()(["\n &.", "{\n border: 1px solid #e9ecf1;\n border-radius: 2px;\n background-color: #Fff;\n box-shadow: 0px 0px 5px 0px rgb(154 154 154 / 50%);\n cursor: default;\n font-size: 12px;\n position:absolute;\n z-index: 1050;\n max-width: 600px;\n padding: 8px 0;\n }\n\n .", "{\n width:100%;\n display: table;\n }\n\n .", " .", "{\n display: table-row;\n color: #212121;\n }\n\n .", " .", "{\n background-color: var(--hover-bgcolor);\n }\n\n .", " .", " .", "{\n display: table-cell;\n padding: 8px 12px;\n max-width: 576px;\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n line-height: 16px;\n }\n .", " .", ".", "{\n opacity: .5;\n }\n\n"])), _base_styles__WEBPACK_IMPORTED_MODULE_4__["MenuClasses"].menu, _base_styles__WEBPACK_IMPORTED_MODULE_4__["MenuClasses"].menuList, _base_styles__WEBPACK_IMPORTED_MODULE_4__["MenuClasses"].menuList, _base_styles__WEBPACK_IMPORTED_MODULE_4__["MenuClasses"].menuOption, _base_styles__WEBPACK_IMPORTED_MODULE_4__["MenuClasses"].menuList, _base_styles__WEBPACK_IMPORTED_MODULE_4__["MenuClasses"].menuOptionActive, _base_styles__WEBPACK_IMPORTED_MODULE_4__["MenuClasses"].menuList, _base_styles__WEBPACK_IMPORTED_MODULE_4__["MenuClasses"].menuOption, _base_styles__WEBPACK_IMPORTED_MODULE_4__["MenuClasses"].menuOptionText, _base_styles__WEBPACK_IMPORTED_MODULE_4__["MenuClasses"].menuList, _base_styles__WEBPACK_IMPORTED_MODULE_4__["MenuClasses"].menuOption, _base_styles__WEBPACK_IMPORTED_MODULE_4__["MenuClasses"].menuOptionDisable);
4704
4704
 
4705
4705
  /***/ }),
4706
4706
 
@@ -4955,6 +4955,8 @@ __webpack_require__.r(__webpack_exports__);
4955
4955
  /* harmony import */ var _base_calculations__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../base/calculations */ "./components/table/base/calculations.tsx");
4956
4956
  /* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../utils */ "./components/table/utils/index.tsx");
4957
4957
  /* harmony import */ var _base_styles__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../base/styles */ "./components/table/base/styles.ts");
4958
+ /* harmony import */ var _columnResizeWidth__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./columnResizeWidth */ "./components/table/pipeline/features/columnResizeWidth.tsx");
4959
+
4958
4960
 
4959
4961
 
4960
4962
 
@@ -5009,7 +5011,7 @@ var setAutoFillWidth = function setAutoFillWidth(pipeline) {
5009
5011
  code = col.code;
5010
5012
 
5011
5013
  if (Object(_utils__WEBPACK_IMPORTED_MODULE_5__["isLeafNode"])(col) && code !== FILL_COLUMN_CODE) {
5012
- var resizeColumn = pipeline.getStateAtKey('columnResize');
5014
+ var resizeColumn = pipeline.getFeatureOptions(_columnResizeWidth__WEBPACK_IMPORTED_MODULE_7__["COLUMN_RESIZE_KEY"]);
5013
5015
  columnWidthSum += resizeColumn && resizeColumn[code] || width;
5014
5016
  }
5015
5017
 
@@ -6225,11 +6227,12 @@ function columnRangeHover() {
6225
6227
  /*!******************************************************************!*\
6226
6228
  !*** ./components/table/pipeline/features/columnResizeWidth.tsx ***!
6227
6229
  \******************************************************************/
6228
- /*! exports provided: columnResize */
6230
+ /*! exports provided: COLUMN_RESIZE_KEY, columnResize */
6229
6231
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
6230
6232
 
6231
6233
  "use strict";
6232
6234
  __webpack_require__.r(__webpack_exports__);
6235
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "COLUMN_RESIZE_KEY", function() { return COLUMN_RESIZE_KEY; });
6233
6236
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "columnResize", function() { return columnResize; });
6234
6237
  /* harmony import */ var core_js_modules_es_symbol_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! core-js/modules/es.symbol.js */ "./node_modules/core-js/modules/es.symbol.js");
6235
6238
  /* harmony import */ var core_js_modules_es_symbol_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_symbol_js__WEBPACK_IMPORTED_MODULE_0__);
@@ -6294,16 +6297,17 @@ function disableSelect(event) {
6294
6297
  event.preventDefault();
6295
6298
  }
6296
6299
 
6300
+ var stateKey = 'columnResize';
6301
+ var COLUMN_RESIZE_KEY = 'columnResize';
6297
6302
  function columnResize() {
6298
6303
  var _opts$minSize, _opts$fallbackSize, _opts$maxSize;
6299
6304
 
6300
6305
  var opts = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
6301
- var stateKey = 'columnResize';
6302
6306
  var minSize = (_opts$minSize = opts.minSize) !== null && _opts$minSize !== void 0 ? _opts$minSize : 60;
6303
6307
  var fallbackSize = (_opts$fallbackSize = opts.fallbackSize) !== null && _opts$fallbackSize !== void 0 ? _opts$fallbackSize : 150;
6304
6308
  var maxSize = (_opts$maxSize = opts.maxSize) !== null && _opts$maxSize !== void 0 ? _opts$maxSize : 1000;
6305
6309
  return function columnResizeFeature(pipeline) {
6306
- var _ref, _opts$columnSize, _pipeline$ref;
6310
+ var _ref, _opts$columnSize;
6307
6311
 
6308
6312
  var columnSize = (_ref = (_opts$columnSize = opts.columnSize) !== null && _opts$columnSize !== void 0 ? _opts$columnSize : pipeline.getStateAtKey(stateKey)) !== null && _ref !== void 0 ? _ref : {};
6309
6313
  var leafColumns = Object(_utils__WEBPACK_IMPORTED_MODULE_14__["collectNodes"])(pipeline.getColumns(), 'leaf-only');
@@ -6318,15 +6322,10 @@ function columnResize() {
6318
6322
  columnSize[code] = fallbackSize;
6319
6323
  }
6320
6324
  }
6321
- }); // 初始化 || opts.columnSize发生变化(为了autofill时能取到最新值)
6322
-
6323
- if (!pipeline.getStateAtKey(stateKey) || ((_pipeline$ref = pipeline.ref) === null || _pipeline$ref === void 0 ? void 0 : _pipeline$ref.current.lastOptColumnSize) !== opts.columnSize) {
6324
- pipeline.setStateAtKey(stateKey, columnSize);
6325
- }
6325
+ }); // 为了autofill时能取到最新值,实时存储一份最新的columnSize
6326
+ // 存在state里可能存到取不到最新的
6326
6327
 
6327
- if (pipeline.ref) {
6328
- pipeline.ref.current.lastOptColumnSize = opts.columnSize;
6329
- }
6328
+ pipeline.setFeatureOptions(COLUMN_RESIZE_KEY, columnSize);
6330
6329
 
6331
6330
  var onChangeSize = function onChangeSize(nextColumnSize) {
6332
6331
  window.requestAnimationFrame(function () {
@@ -6334,12 +6333,6 @@ function columnResize() {
6334
6333
 
6335
6334
  pipeline.setStateAtKey(stateKey, nextColumnSize);
6336
6335
  opts === null || opts === void 0 ? void 0 : (_opts$onChangeSize = opts.onChangeSize) === null || _opts$onChangeSize === void 0 ? void 0 : _opts$onChangeSize.call(opts, nextColumnSize);
6337
-
6338
- if (opts.columnSize) {
6339
- if (pipeline.ref) {
6340
- pipeline.ref.current.lastOptColumnSize = nextColumnSize; // 这里记录由列宽拖拽导致的opts.columnSize变化,避免重复渲染
6341
- }
6342
- }
6343
6336
  });
6344
6337
  };
6345
6338
 
@@ -6498,7 +6491,6 @@ __webpack_require__.r(__webpack_exports__);
6498
6491
 
6499
6492
 
6500
6493
 
6501
- var stateKey = 'contextMenu';
6502
6494
  function contextMenu() {
6503
6495
  var opts = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
6504
6496
  return function step(pipeline) {
@@ -6536,13 +6528,11 @@ function contextMenu() {
6536
6528
  };
6537
6529
 
6538
6530
  var onContextMenu = function onContextMenu(e) {
6539
- if (suppressShowContextMenu(e)) {
6540
- return;
6531
+ if (canShowContextMenu(e, pipeline)) {
6532
+ e.preventDefault();
6533
+ e.stopPropagation();
6534
+ showContextMenu(e);
6541
6535
  }
6542
-
6543
- e.preventDefault();
6544
- e.stopPropagation();
6545
- showContextMenu(e);
6546
6536
  };
6547
6537
 
6548
6538
  pipeline.addTableProps({
@@ -6879,24 +6869,12 @@ function isElementInsideTheFooter(ele) {
6879
6869
  }
6880
6870
 
6881
6871
  return false;
6882
- } // 禁止弹出右键菜单
6883
-
6884
-
6885
- function suppressShowContextMenu(e) {
6886
- var path = Object(_utils__WEBPACK_IMPORTED_MODULE_11__["getEventPath"])(e.nativeEvent);
6887
- var pointIndex = 0;
6888
-
6889
- while (pointIndex < path.length) {
6890
- var ele = path[pointIndex];
6891
-
6892
- if (ele.classList.contains(_base_styles__WEBPACK_IMPORTED_MODULE_14__["Classes"].tableBody) || ele.classList.contains(_base_styles__WEBPACK_IMPORTED_MODULE_14__["Classes"].tableFooter)) {
6893
- return false;
6894
- }
6872
+ }
6895
6873
 
6896
- pointIndex++;
6897
- }
6874
+ function canShowContextMenu(e, pipeline) {
6875
+ var _pipeline$ref$current, _pipeline$ref$current2;
6898
6876
 
6899
- return true;
6877
+ return ((_pipeline$ref$current = pipeline.ref.current.domHelper) === null || _pipeline$ref$current === void 0 ? void 0 : _pipeline$ref$current.tableBody.contains(e.target)) || ((_pipeline$ref$current2 = pipeline.ref.current.domHelper) === null || _pipeline$ref$current2 === void 0 ? void 0 : _pipeline$ref$current2.tableFooter.contains(e.target));
6900
6878
  } // 默认选项
6901
6879
 
6902
6880
 
@@ -7937,28 +7915,34 @@ function multiSelect() {
7937
7915
  /** 所有有效的 keys(disable 状态为 false) */
7938
7916
 
7939
7917
  var allKeys = [];
7918
+ var set = new Set(value);
7919
+ var isAllChecked = set.size !== 0; // 当前不存在选中则默认为false
7920
+
7921
+ var isAnyChecked = false;
7940
7922
  var flatDataSource = Object(_utils__WEBPACK_IMPORTED_MODULE_17__["collectNodes"])(dataSource);
7941
7923
  flatDataSource.forEach(function (row, rowIndex) {
7942
7924
  var rowKey = _internals__WEBPACK_IMPORTED_MODULE_15__["internals"].safeGetRowKey(primaryKey, row, rowIndex);
7943
7925
  fullKeySet.add(rowKey); // 在 allKeys 中排除被禁用的 key
7944
7926
 
7945
7927
  if (!isDisabled(row, rowIndex)) {
7946
- allKeys.push(rowKey);
7928
+ allKeys.push(rowKey); // 存在一个非选中,则不再进行判断
7929
+
7930
+ if (isAllChecked) {
7931
+ isAllChecked = set.has(rowKey);
7932
+ } // 存在一个选中,则不再进行判断
7933
+
7934
+
7935
+ if (!isAnyChecked) {
7936
+ isAnyChecked = set.has(rowKey);
7937
+ }
7947
7938
  }
7948
- });
7949
- var set = new Set(value); // todo: 暂使用hidden隐藏选择列 后续增加配置
7939
+ }); // todo: 暂使用hidden隐藏选择列 后续增加配置
7950
7940
 
7951
7941
  var hiddenSelectColumn = opts.checkboxColumn && opts.checkboxColumn.hidden === true;
7952
7942
 
7953
7943
  if (!hiddenSelectColumn) {
7954
7944
  var _opts$checkboxPlaceme;
7955
7945
 
7956
- var isAllChecked = allKeys.length > 0 && allKeys.every(function (key) {
7957
- return set.has(key);
7958
- });
7959
- var isAnyChecked = allKeys.some(function (key) {
7960
- return set.has(key);
7961
- });
7962
7946
  var defaultCheckboxColumnTitle = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default.a.createElement(Checkbox, {
7963
7947
  checked: isAllChecked,
7964
7948
  indeterminate: !isAllChecked && isAnyChecked,
@@ -8233,16 +8217,16 @@ function rangeSelection(opts) {
8233
8217
 
8234
8218
  if (clickCell) {
8235
8219
  if (event.shiftKey) {
8236
- var _lastClickCell = pipeline.getStateAtKey(lastClickCellKey);
8220
+ var _lastClickCell = pipeline.getFeatureOptions(lastClickCellKey);
8237
8221
 
8238
8222
  if (_lastClickCell) {
8239
8223
  setRangeSelection(_lastClickCell, clickCell);
8240
8224
  } else {
8241
8225
  // 第一次进来就按住shift键,这时候要记住点击的单元格
8242
- pipeline.setStateAtKey(lastClickCellKey, clickCell);
8226
+ pipeline.setFeatureOptions(lastClickCellKey, clickCell);
8243
8227
  }
8244
8228
  } else {
8245
- pipeline.setStateAtKey(lastClickCellKey, clickCell);
8229
+ pipeline.setFeatureOptions(lastClickCellKey, clickCell);
8246
8230
  setRangeSelection(clickCell, clickCell);
8247
8231
  }
8248
8232
  }
@@ -9585,6 +9569,10 @@ function sort() {
9585
9569
  return dataSource;
9586
9570
  }
9587
9571
 
9572
+ if (sortMap.size === 0) {
9573
+ return dataSource;
9574
+ }
9575
+
9588
9576
  var sortColumnsMap = new Map(Object(_utils__WEBPACK_IMPORTED_MODULE_27__["collectNodes"])(columns, 'leaf-only').filter(function (col) {
9589
9577
  var _col$features2, _col$features3;
9590
9578