@kdcloudjs/table 1.1.5 → 1.1.6-canary.1

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.4
3
+ * @kdcloudjs/table v1.1.5-canary.10
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.4
3
+ * @kdcloudjs/table v1.1.5-canary.10
4
4
  *
5
5
  * Copyright 2020-present, Kingdee, Inc.
6
6
  * All rights reserved.
@@ -4944,18 +4944,45 @@ __webpack_require__.r(__webpack_exports__);
4944
4944
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "FILL_COLUMN_CODE", function() { return FILL_COLUMN_CODE; });
4945
4945
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "tableWidthKey", function() { return tableWidthKey; });
4946
4946
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "autoFillTableWidth", function() { return autoFillTableWidth; });
4947
- /* harmony import */ var core_js_modules_es_array_find_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! core-js/modules/es.array.find.js */ "./node_modules/core-js/modules/es.array.find.js");
4948
- /* harmony import */ var core_js_modules_es_array_find_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_find_js__WEBPACK_IMPORTED_MODULE_0__);
4949
- /* harmony import */ var core_js_modules_es_object_to_string_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! core-js/modules/es.object.to-string.js */ "./node_modules/core-js/modules/es.object.to-string.js");
4950
- /* harmony import */ var core_js_modules_es_object_to_string_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_to_string_js__WEBPACK_IMPORTED_MODULE_1__);
4951
- /* harmony import */ var core_js_modules_es_array_slice_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! core-js/modules/es.array.slice.js */ "./node_modules/core-js/modules/es.array.slice.js");
4952
- /* harmony import */ var core_js_modules_es_array_slice_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_slice_js__WEBPACK_IMPORTED_MODULE_2__);
4953
- /* harmony import */ var core_js_modules_es_array_splice_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! core-js/modules/es.array.splice.js */ "./node_modules/core-js/modules/es.array.splice.js");
4954
- /* harmony import */ var core_js_modules_es_array_splice_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_splice_js__WEBPACK_IMPORTED_MODULE_3__);
4955
- /* harmony import */ var _base_calculations__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../base/calculations */ "./components/table/base/calculations.tsx");
4956
- /* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../utils */ "./components/table/utils/index.tsx");
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");
4947
+ /* 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");
4948
+ /* 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__);
4949
+ /* harmony import */ var core_js_modules_es_symbol_description_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! core-js/modules/es.symbol.description.js */ "./node_modules/core-js/modules/es.symbol.description.js");
4950
+ /* harmony import */ var core_js_modules_es_symbol_description_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_symbol_description_js__WEBPACK_IMPORTED_MODULE_1__);
4951
+ /* harmony import */ var core_js_modules_es_object_to_string_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! core-js/modules/es.object.to-string.js */ "./node_modules/core-js/modules/es.object.to-string.js");
4952
+ /* harmony import */ var core_js_modules_es_object_to_string_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_to_string_js__WEBPACK_IMPORTED_MODULE_2__);
4953
+ /* harmony import */ var core_js_modules_es_number_max_safe_integer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! core-js/modules/es.number.max-safe-integer.js */ "./node_modules/core-js/modules/es.number.max-safe-integer.js");
4954
+ /* harmony import */ var core_js_modules_es_number_max_safe_integer_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_number_max_safe_integer_js__WEBPACK_IMPORTED_MODULE_3__);
4955
+ /* harmony import */ var core_js_modules_es_number_constructor_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! core-js/modules/es.number.constructor.js */ "./node_modules/core-js/modules/es.number.constructor.js");
4956
+ /* harmony import */ var core_js_modules_es_number_constructor_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_number_constructor_js__WEBPACK_IMPORTED_MODULE_4__);
4957
+ /* harmony import */ var core_js_modules_es_array_find_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! core-js/modules/es.array.find.js */ "./node_modules/core-js/modules/es.array.find.js");
4958
+ /* harmony import */ var core_js_modules_es_array_find_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_find_js__WEBPACK_IMPORTED_MODULE_5__);
4959
+ /* harmony import */ var core_js_modules_es_array_slice_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! core-js/modules/es.array.slice.js */ "./node_modules/core-js/modules/es.array.slice.js");
4960
+ /* harmony import */ var core_js_modules_es_array_slice_js__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_slice_js__WEBPACK_IMPORTED_MODULE_6__);
4961
+ /* harmony import */ var core_js_modules_es_array_splice_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! core-js/modules/es.array.splice.js */ "./node_modules/core-js/modules/es.array.splice.js");
4962
+ /* harmony import */ var core_js_modules_es_array_splice_js__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_splice_js__WEBPACK_IMPORTED_MODULE_7__);
4963
+ /* harmony import */ var core_js_modules_es_array_iterator_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! core-js/modules/es.array.iterator.js */ "./node_modules/core-js/modules/es.array.iterator.js");
4964
+ /* harmony import */ var core_js_modules_es_array_iterator_js__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_iterator_js__WEBPACK_IMPORTED_MODULE_8__);
4965
+ /* harmony import */ var core_js_modules_es_map_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! core-js/modules/es.map.js */ "./node_modules/core-js/modules/es.map.js");
4966
+ /* harmony import */ var core_js_modules_es_map_js__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_map_js__WEBPACK_IMPORTED_MODULE_9__);
4967
+ /* harmony import */ var core_js_modules_es_string_iterator_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! core-js/modules/es.string.iterator.js */ "./node_modules/core-js/modules/es.string.iterator.js");
4968
+ /* harmony import */ var core_js_modules_es_string_iterator_js__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_string_iterator_js__WEBPACK_IMPORTED_MODULE_10__);
4969
+ /* harmony import */ var core_js_modules_web_dom_collections_iterator_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! core-js/modules/web.dom-collections.iterator.js */ "./node_modules/core-js/modules/web.dom-collections.iterator.js");
4970
+ /* harmony import */ var core_js_modules_web_dom_collections_iterator_js__WEBPACK_IMPORTED_MODULE_11___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_web_dom_collections_iterator_js__WEBPACK_IMPORTED_MODULE_11__);
4971
+ /* harmony import */ var core_js_modules_web_dom_collections_for_each_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! core-js/modules/web.dom-collections.for-each.js */ "./node_modules/core-js/modules/web.dom-collections.for-each.js");
4972
+ /* harmony import */ var core_js_modules_web_dom_collections_for_each_js__WEBPACK_IMPORTED_MODULE_12___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_web_dom_collections_for_each_js__WEBPACK_IMPORTED_MODULE_12__);
4973
+ /* harmony import */ var _base_calculations__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../base/calculations */ "./components/table/base/calculations.tsx");
4974
+ /* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../utils */ "./components/table/utils/index.tsx");
4975
+ /* harmony import */ var _base_styles__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../../base/styles */ "./components/table/base/styles.ts");
4976
+ /* harmony import */ var _columnResizeWidth__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ./columnResizeWidth */ "./components/table/pipeline/features/columnResizeWidth.tsx");
4977
+
4978
+
4979
+
4980
+
4981
+
4982
+
4983
+
4984
+
4985
+
4959
4986
 
4960
4987
 
4961
4988
 
@@ -4966,65 +4993,141 @@ __webpack_require__.r(__webpack_exports__);
4966
4993
 
4967
4994
  var FILL_COLUMN_CODE = '$_fill_column_&';
4968
4995
  var tableWidthKey = 'tableWidth';
4969
- var fillColumnWidthKey = 'fillColumnWidth';
4996
+ var FLEX_COLUMN_COUNT = Symbol('flexCount');
4970
4997
  var autoFillTableWidth = function autoFillTableWidth() {
4971
4998
  return function (pipeline) {
4972
- var width = pipeline.getStateAtKey(fillColumnWidthKey, 0);
4973
- var columns = pipeline.getColumns();
4974
- var fillColumns = columns.find(function (col) {
4975
- return col.code === FILL_COLUMN_CODE;
4976
- });
4999
+ var flexColumnResult = findFlexColumns(pipeline);
5000
+ var flexCount = flexColumnResult.get(FLEX_COLUMN_COUNT);
5001
+
5002
+ if (flexCount) {
5003
+ // 设置了flex宽度,flex列平分剩余宽度
5004
+ var remainingWidth = getTableRemainingWidth(pipeline) || 0;
5005
+
5006
+ if (remainingWidth > 0) {
5007
+ // 保存剩余的flex总和和剩余宽度总和宽度
5008
+ var residualFlexCount = flexCount;
5009
+ var residualFlexWidth = remainingWidth;
5010
+ var columnSize = pipeline.getFeatureOptions(_columnResizeWidth__WEBPACK_IMPORTED_MODULE_16__["COLUMN_SIZE_KEY"]) || {};
5011
+ pipeline.mapColumns(Object(_utils__WEBPACK_IMPORTED_MODULE_14__["makeRecursiveMapper"])(function (col, recursiveFlatMapInfo) {
5012
+ var isLeaf = recursiveFlatMapInfo.isLeaf;
5013
+
5014
+ if (isLeaf && isValidFlexColumn(col, pipeline)) {
5015
+ var code = col.code,
5016
+ _col$features = col.features,
5017
+ features = _col$features === void 0 ? {} : _col$features;
5018
+ var flex = features.flex,
5019
+ _features$minWidth = features.minWidth,
5020
+ minWidth = _features$minWidth === void 0 ? 0 : _features$minWidth,
5021
+ _features$maxWidth = features.maxWidth,
5022
+ maxWidth = _features$maxWidth === void 0 ? Number.MAX_SAFE_INTEGER : _features$maxWidth;
5023
+ var usedRemainingWidth = Math.floor(remainingWidth * flex / flexCount);
5024
+ var preColWidth = col.width; // 如果当前已经是最后一个flex列,将剩余的宽度添加到该列,其他计算相应的列
5025
+
5026
+ col.width = clamp(minWidth, preColWidth + (residualFlexCount === flex ? residualFlexWidth : usedRemainingWidth), maxWidth);
5027
+ residualFlexCount -= flex;
5028
+ residualFlexWidth -= col.width - preColWidth;
5029
+ columnSize[code] = col.width;
5030
+ }
4977
5031
 
4978
- if (fillColumns) {
4979
- fillColumns.width = width;
5032
+ return col;
5033
+ }));
5034
+ pipeline.setFeatureOptions(_columnResizeWidth__WEBPACK_IMPORTED_MODULE_16__["COLUMN_SIZE_KEY"], columnSize);
5035
+ }
4980
5036
  } else {
4981
- var rightNestedLockCount = Object(_base_calculations__WEBPACK_IMPORTED_MODULE_4__["getLeftNestedLockCount"])(columns.slice().reverse());
4982
- var spliceIndex = columns.length - rightNestedLockCount;
4983
- var _fillColumns = {
4984
- name: '',
4985
- code: FILL_COLUMN_CODE,
4986
- width: width,
4987
- features: {
4988
- resizeable: false
4989
- },
4990
- getCellProps: function getCellProps(value, record, rowIndex) {
4991
- return {
4992
- className: _base_styles__WEBPACK_IMPORTED_MODULE_6__["Classes"].emptyColCell
4993
- };
4994
- }
4995
- };
4996
- columns.splice(spliceIndex || columns.length, 0, _fillColumns);
5037
+ // 未设置了flex宽度,创建占位列
5038
+ var columns = pipeline.getColumns();
5039
+ var fillColumns = columns.find(function (col) {
5040
+ return col.code === FILL_COLUMN_CODE;
5041
+ });
5042
+ var width = getTableRemainingWidth(pipeline) || 0;
5043
+
5044
+ if (fillColumns) {
5045
+ fillColumns.width = width;
5046
+ } else {
5047
+ var rightNestedLockCount = Object(_base_calculations__WEBPACK_IMPORTED_MODULE_13__["getLeftNestedLockCount"])(columns.slice().reverse());
5048
+ var spliceIndex = columns.length - rightNestedLockCount;
5049
+ var _fillColumns = {
5050
+ name: '',
5051
+ code: FILL_COLUMN_CODE,
5052
+ width: width,
5053
+ features: {
5054
+ resizeable: false
5055
+ },
5056
+ getCellProps: function getCellProps(value, record, rowIndex) {
5057
+ return {
5058
+ className: _base_styles__WEBPACK_IMPORTED_MODULE_15__["Classes"].emptyColCell
5059
+ };
5060
+ }
5061
+ };
5062
+ columns.splice(spliceIndex || columns.length, 0, _fillColumns);
5063
+ }
5064
+
5065
+ pipeline.columns(columns);
4997
5066
  }
4998
5067
 
4999
- pipeline.columns(columns);
5000
- setAutoFillWidth(pipeline);
5001
5068
  return pipeline;
5069
+
5070
+ function findFlexColumns(pipeline) {
5071
+ var result = new Map([[FLEX_COLUMN_COUNT, 0]]);
5072
+ dfs(pipeline.getColumns(), result);
5073
+ return result;
5074
+
5075
+ function dfs(columns, result) {
5076
+ columns.forEach(function (col) {
5077
+ if (Object(_utils__WEBPACK_IMPORTED_MODULE_14__["isLeafNode"])(col)) {
5078
+ if (isValidFlexColumn(col, pipeline)) {
5079
+ result.set(FLEX_COLUMN_COUNT, result.get(FLEX_COLUMN_COUNT) + col.features.flex);
5080
+ }
5081
+ } else {
5082
+ dfs(col.children, result);
5083
+ }
5084
+ });
5085
+ }
5086
+ }
5002
5087
  };
5003
5088
  };
5004
5089
 
5005
- var setAutoFillWidth = function setAutoFillWidth(pipeline) {
5090
+ function getColumnWidthSum(pipeline) {
5091
+ return dfs(pipeline.getColumns());
5092
+
5093
+ function dfs(columns) {
5094
+ return columns.reduce(function (acc, col) {
5095
+ var width = col.width,
5096
+ code = col.code;
5097
+
5098
+ if (Object(_utils__WEBPACK_IMPORTED_MODULE_14__["isLeafNode"])(col) && code !== FILL_COLUMN_CODE) {
5099
+ var resizeColumn = pipeline.getFeatureOptions(_columnResizeWidth__WEBPACK_IMPORTED_MODULE_16__["COLUMN_SIZE_KEY"]);
5100
+ return acc + (resizeColumn && resizeColumn[code]) || width;
5101
+ } else {
5102
+ return acc + dfs(col.children);
5103
+ }
5104
+ }, 0);
5105
+ }
5106
+ }
5107
+
5108
+ function getTableRemainingWidth(pipeline) {
5006
5109
  var tableWidth = pipeline.getStateAtKey(tableWidthKey);
5007
5110
  if (!tableWidth) return;
5008
- var columnWidthSum = 0;
5009
- pipeline.mapColumns(Object(_utils__WEBPACK_IMPORTED_MODULE_5__["makeRecursiveMapper"])(function (col) {
5010
- var width = col.width,
5011
- code = col.code;
5111
+ var remainingWidth = Math.floor(tableWidth - getColumnWidthSum(pipeline));
5112
+ return remainingWidth > 0 ? remainingWidth : 0;
5113
+ }
5012
5114
 
5013
- if (Object(_utils__WEBPACK_IMPORTED_MODULE_5__["isLeafNode"])(col) && code !== FILL_COLUMN_CODE) {
5014
- var resizeColumn = pipeline.getFeatureOptions(_columnResizeWidth__WEBPACK_IMPORTED_MODULE_7__["COLUMN_RESIZE_KEY"]);
5015
- columnWidthSum += resizeColumn && resizeColumn[code] || width;
5016
- }
5115
+ function isValidFlexColumn(col, pipeline) {
5116
+ var _col$features2;
5017
5117
 
5018
- return col;
5019
- }));
5020
- var fillColumnWidth = Math.floor(tableWidth - columnWidthSum);
5021
- fillColumnWidth = fillColumnWidth > 0 ? fillColumnWidth : 0;
5022
- var preWidth = pipeline.getStateAtKey(fillColumnWidthKey, 0);
5118
+ var resizeColumn = pipeline.getFeatureOptions(_columnResizeWidth__WEBPACK_IMPORTED_MODULE_16__["RESIZED_COLUMN_KEY"]); // 拖拽列自动禁止flex
5023
5119
 
5024
- if (preWidth !== fillColumnWidth) {
5025
- pipeline.setStateAtKey('fillColumnWidth', fillColumnWidth);
5120
+ if (resizeColumn !== null && resizeColumn !== void 0 && resizeColumn.has(col.code)) {
5121
+ return false;
5026
5122
  }
5027
- };
5123
+
5124
+ var flex = (_col$features2 = col.features) === null || _col$features2 === void 0 ? void 0 : _col$features2.flex;
5125
+ return typeof flex === 'number' && flex > 0;
5126
+ }
5127
+
5128
+ function clamp(min, x, max) {
5129
+ return Math.max(min, Math.min(max, x));
5130
+ }
5028
5131
 
5029
5132
  /***/ }),
5030
5133
 
@@ -6227,12 +6330,13 @@ function columnRangeHover() {
6227
6330
  /*!******************************************************************!*\
6228
6331
  !*** ./components/table/pipeline/features/columnResizeWidth.tsx ***!
6229
6332
  \******************************************************************/
6230
- /*! exports provided: COLUMN_RESIZE_KEY, columnResize */
6333
+ /*! exports provided: COLUMN_SIZE_KEY, RESIZED_COLUMN_KEY, columnResize */
6231
6334
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
6232
6335
 
6233
6336
  "use strict";
6234
6337
  __webpack_require__.r(__webpack_exports__);
6235
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "COLUMN_RESIZE_KEY", function() { return COLUMN_RESIZE_KEY; });
6338
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "COLUMN_SIZE_KEY", function() { return COLUMN_SIZE_KEY; });
6339
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "RESIZED_COLUMN_KEY", function() { return RESIZED_COLUMN_KEY; });
6236
6340
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "columnResize", function() { return columnResize; });
6237
6341
  /* 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");
6238
6342
  /* 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__);
@@ -6250,18 +6354,26 @@ __webpack_require__.r(__webpack_exports__);
6250
6354
  /* harmony import */ var core_js_modules_es_object_to_string_js__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_to_string_js__WEBPACK_IMPORTED_MODULE_6__);
6251
6355
  /* harmony import */ var core_js_modules_web_dom_collections_for_each_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! core-js/modules/web.dom-collections.for-each.js */ "./node_modules/core-js/modules/web.dom-collections.for-each.js");
6252
6356
  /* harmony import */ var core_js_modules_web_dom_collections_for_each_js__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_web_dom_collections_for_each_js__WEBPACK_IMPORTED_MODULE_7__);
6253
- /* harmony import */ var core_js_modules_es_array_map_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! core-js/modules/es.array.map.js */ "./node_modules/core-js/modules/es.array.map.js");
6254
- /* harmony import */ var core_js_modules_es_array_map_js__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_map_js__WEBPACK_IMPORTED_MODULE_8__);
6255
- /* harmony import */ var core_js_modules_es_object_keys_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! core-js/modules/es.object.keys.js */ "./node_modules/core-js/modules/es.object.keys.js");
6256
- /* harmony import */ var core_js_modules_es_object_keys_js__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_keys_js__WEBPACK_IMPORTED_MODULE_9__);
6257
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! react */ "react");
6258
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_10__);
6259
- /* harmony import */ var styled_components__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! styled-components */ "./node_modules/styled-components/dist/styled-components.browser.esm.js");
6260
- /* harmony import */ var rxjs__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! rxjs */ "./node_modules/rxjs/_esm5/index.js");
6261
- /* harmony import */ var rxjs_operators__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! rxjs/operators */ "./node_modules/rxjs/_esm5/operators/index.js");
6262
- /* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../utils */ "./components/table/utils/index.tsx");
6263
- /* harmony import */ var _internals__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../../internals */ "./components/table/internals.ts");
6264
- /* harmony import */ var _base_styles__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../../base/styles */ "./components/table/base/styles.ts");
6357
+ /* harmony import */ var core_js_modules_es_array_iterator_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! core-js/modules/es.array.iterator.js */ "./node_modules/core-js/modules/es.array.iterator.js");
6358
+ /* harmony import */ var core_js_modules_es_array_iterator_js__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_iterator_js__WEBPACK_IMPORTED_MODULE_8__);
6359
+ /* harmony import */ var core_js_modules_es_set_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! core-js/modules/es.set.js */ "./node_modules/core-js/modules/es.set.js");
6360
+ /* harmony import */ var core_js_modules_es_set_js__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_set_js__WEBPACK_IMPORTED_MODULE_9__);
6361
+ /* harmony import */ var core_js_modules_es_string_iterator_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! core-js/modules/es.string.iterator.js */ "./node_modules/core-js/modules/es.string.iterator.js");
6362
+ /* harmony import */ var core_js_modules_es_string_iterator_js__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_string_iterator_js__WEBPACK_IMPORTED_MODULE_10__);
6363
+ /* harmony import */ var core_js_modules_web_dom_collections_iterator_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! core-js/modules/web.dom-collections.iterator.js */ "./node_modules/core-js/modules/web.dom-collections.iterator.js");
6364
+ /* harmony import */ var core_js_modules_web_dom_collections_iterator_js__WEBPACK_IMPORTED_MODULE_11___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_web_dom_collections_iterator_js__WEBPACK_IMPORTED_MODULE_11__);
6365
+ /* harmony import */ var core_js_modules_es_object_keys_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! core-js/modules/es.object.keys.js */ "./node_modules/core-js/modules/es.object.keys.js");
6366
+ /* harmony import */ var core_js_modules_es_object_keys_js__WEBPACK_IMPORTED_MODULE_12___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_keys_js__WEBPACK_IMPORTED_MODULE_12__);
6367
+ /* harmony import */ var core_js_modules_es_array_map_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! core-js/modules/es.array.map.js */ "./node_modules/core-js/modules/es.array.map.js");
6368
+ /* harmony import */ var core_js_modules_es_array_map_js__WEBPACK_IMPORTED_MODULE_13___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_map_js__WEBPACK_IMPORTED_MODULE_13__);
6369
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! react */ "react");
6370
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_14___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_14__);
6371
+ /* harmony import */ var styled_components__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! styled-components */ "./node_modules/styled-components/dist/styled-components.browser.esm.js");
6372
+ /* harmony import */ var rxjs__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! rxjs */ "./node_modules/rxjs/_esm5/index.js");
6373
+ /* harmony import */ var rxjs_operators__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! rxjs/operators */ "./node_modules/rxjs/_esm5/operators/index.js");
6374
+ /* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ../../utils */ "./components/table/utils/index.tsx");
6375
+ /* harmony import */ var _internals__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ../../internals */ "./components/table/internals.ts");
6376
+ /* harmony import */ var _base_styles__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ../../base/styles */ "./components/table/base/styles.ts");
6265
6377
 
6266
6378
 
6267
6379
 
@@ -6286,8 +6398,12 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va
6286
6398
 
6287
6399
 
6288
6400
 
6289
- var TableHeaderCellResize = styled_components__WEBPACK_IMPORTED_MODULE_11__["default"].div(_templateObject || (_templateObject = _babel_runtime_helpers_taggedTemplateLiteral__WEBPACK_IMPORTED_MODULE_5___default()(["\n position: absolute;\n top: 0;\n right: -5px;\n height: 100%;\n width: 10px;\n cursor: ew-resize;\n display: flex;\n flex-direction: column;\n align-items: center;\n z-index:1;\n\n &:after {\n content: \"\";\n position: absolute;\n display: block;\n left: calc(50% - 1px);\n width: 1px;\n height: calc(100% - 14px);\n top: 7px;\n }\n"])));
6290
- var TableHeaderGroupCellResize = Object(styled_components__WEBPACK_IMPORTED_MODULE_11__["default"])(TableHeaderCellResize)(_templateObject2 || (_templateObject2 = _babel_runtime_helpers_taggedTemplateLiteral__WEBPACK_IMPORTED_MODULE_5___default()(["\n &:after {\n height: 100%;\n top: 0;\n }\n"])));
6401
+
6402
+
6403
+
6404
+
6405
+ var TableHeaderCellResize = styled_components__WEBPACK_IMPORTED_MODULE_15__["default"].div(_templateObject || (_templateObject = _babel_runtime_helpers_taggedTemplateLiteral__WEBPACK_IMPORTED_MODULE_5___default()(["\n position: absolute;\n top: 0;\n right: -5px;\n height: 100%;\n width: 10px;\n cursor: ew-resize;\n display: flex;\n flex-direction: column;\n align-items: center;\n z-index:1;\n\n &:after {\n content: \"\";\n position: absolute;\n display: block;\n left: calc(50% - 1px);\n width: 1px;\n height: calc(100% - 14px);\n top: 7px;\n }\n"])));
6406
+ var TableHeaderGroupCellResize = Object(styled_components__WEBPACK_IMPORTED_MODULE_15__["default"])(TableHeaderCellResize)(_templateObject2 || (_templateObject2 = _babel_runtime_helpers_taggedTemplateLiteral__WEBPACK_IMPORTED_MODULE_5___default()(["\n &:after {\n height: 100%;\n top: 0;\n }\n"])));
6291
6407
 
6292
6408
  function clamp(min, x, max) {
6293
6409
  return Math.max(min, Math.min(max, x));
@@ -6298,7 +6414,8 @@ function disableSelect(event) {
6298
6414
  }
6299
6415
 
6300
6416
  var stateKey = 'columnResize';
6301
- var COLUMN_RESIZE_KEY = 'columnResize';
6417
+ var COLUMN_SIZE_KEY = 'columnResize';
6418
+ var RESIZED_COLUMN_KEY = 'resizedColumn';
6302
6419
  function columnResize() {
6303
6420
  var _opts$minSize, _opts$fallbackSize, _opts$maxSize;
6304
6421
 
@@ -6310,7 +6427,7 @@ function columnResize() {
6310
6427
  var _ref, _opts$columnSize;
6311
6428
 
6312
6429
  var columnSize = (_ref = (_opts$columnSize = opts.columnSize) !== null && _opts$columnSize !== void 0 ? _opts$columnSize : pipeline.getStateAtKey(stateKey)) !== null && _ref !== void 0 ? _ref : {};
6313
- var leafColumns = Object(_utils__WEBPACK_IMPORTED_MODULE_14__["collectNodes"])(pipeline.getColumns(), 'leaf-only');
6430
+ var leafColumns = Object(_utils__WEBPACK_IMPORTED_MODULE_18__["collectNodes"])(pipeline.getColumns(), 'leaf-only');
6314
6431
  leafColumns.forEach(function (_ref2) {
6315
6432
  var code = _ref2.code,
6316
6433
  width = _ref2.width;
@@ -6322,10 +6439,10 @@ function columnResize() {
6322
6439
  columnSize[code] = fallbackSize;
6323
6440
  }
6324
6441
  }
6325
- }); // 为了autofill时能取到最新值,实时存储一份最新的columnSize
6442
+ }); // 实时存储一份最新的columnSize,与autoFill共用一份数据
6326
6443
  // 存在state里可能存到取不到最新的
6327
6444
 
6328
- pipeline.setFeatureOptions(COLUMN_RESIZE_KEY, columnSize);
6445
+ pipeline.setFeatureOptions(COLUMN_SIZE_KEY, columnSize);
6329
6446
 
6330
6447
  var onChangeSize = function onChangeSize(nextColumnSize) {
6331
6448
  window.requestAnimationFrame(function () {
@@ -6337,7 +6454,9 @@ function columnResize() {
6337
6454
  };
6338
6455
 
6339
6456
  var handleDoubleClick = function handleDoubleClick(e, col) {
6340
- opts === null || opts === void 0 ? void 0 : opts.doubleClickCallback(e, col);
6457
+ var _opts$doubleClickCall;
6458
+
6459
+ (_opts$doubleClickCall = opts.doubleClickCallback) === null || _opts$doubleClickCall === void 0 ? void 0 : _opts$doubleClickCall.call(opts, e, col);
6341
6460
  };
6342
6461
 
6343
6462
  var handleMouseDown = function handleMouseDown(e, col) {
@@ -6345,10 +6464,17 @@ function columnResize() {
6345
6464
  var changedColumnSize = {};
6346
6465
  var startX = e.clientX;
6347
6466
  var children = col.children,
6348
- code = col.code;
6467
+ code = col.code,
6468
+ _col$features = col.features,
6469
+ features = _col$features === void 0 ? {} : _col$features;
6470
+ var minWidth = features.minWidth,
6471
+ maxWidth = features.maxWidth;
6472
+ var realMinSize = typeof minWidth === 'number' ? minWidth : minSize;
6473
+ var realMaxSize = typeof maxWidth === 'number' ? maxWidth : maxSize;
6474
+ var columnSize = pipeline.getFeatureOptions(COLUMN_SIZE_KEY);
6349
6475
  var recordColumnSize = columnSize;
6350
6476
  e.stopPropagation();
6351
- var nextSize$ = Object(rxjs__WEBPACK_IMPORTED_MODULE_12__["fromEvent"])(window, 'mousemove').pipe(rxjs_operators__WEBPACK_IMPORTED_MODULE_13__["takeUntil"](Object(rxjs__WEBPACK_IMPORTED_MODULE_12__["fromEvent"])(window, 'mouseup')), rxjs_operators__WEBPACK_IMPORTED_MODULE_13__["map"](function (e) {
6477
+ var nextSize$ = Object(rxjs__WEBPACK_IMPORTED_MODULE_16__["fromEvent"])(window, 'mousemove').pipe(rxjs_operators__WEBPACK_IMPORTED_MODULE_17__["takeUntil"](Object(rxjs__WEBPACK_IMPORTED_MODULE_16__["fromEvent"])(window, 'mouseup')), rxjs_operators__WEBPACK_IMPORTED_MODULE_17__["map"](function (e) {
6352
6478
  var movingX = e.clientX;
6353
6479
 
6354
6480
  var nextColumnSize = _objectSpread({}, columnSize);
@@ -6357,7 +6483,7 @@ function columnResize() {
6357
6483
  var deltaRemaining = deltaSum;
6358
6484
 
6359
6485
  if ((children === null || children === void 0 ? void 0 : children.length) > 0) {
6360
- var leafChildColumns = Object(_utils__WEBPACK_IMPORTED_MODULE_14__["collectNodes"])(children, 'leaf-only');
6486
+ var leafChildColumns = Object(_utils__WEBPACK_IMPORTED_MODULE_18__["collectNodes"])(children, 'leaf-only');
6361
6487
  var childrenWidthSum = leafChildColumns.reduce(function (sum, _ref3) {
6362
6488
  var code = _ref3.code;
6363
6489
  return sum + columnSize[code];
@@ -6368,17 +6494,17 @@ function columnResize() {
6368
6494
  var currentDeltaWidth = Math.round(deltaSum * startSize / childrenWidthSum);
6369
6495
 
6370
6496
  if (index < leafChildColumns.length - 1) {
6371
- nextColumnSize[code] = clamp(minSize, startSize + currentDeltaWidth, maxSize);
6497
+ nextColumnSize[code] = clamp(realMinSize, startSize + currentDeltaWidth, realMaxSize);
6372
6498
  changedColumnSize[code] = nextColumnSize[code];
6373
6499
  deltaRemaining -= currentDeltaWidth;
6374
6500
  } else {
6375
- nextColumnSize[code] = clamp(minSize, startSize + deltaRemaining, maxSize);
6501
+ nextColumnSize[code] = clamp(realMinSize, startSize + deltaRemaining, realMaxSize);
6376
6502
  changedColumnSize[code] = nextColumnSize[code];
6377
6503
  }
6378
6504
  });
6379
6505
  } else {
6380
6506
  var startSize = columnSize[code];
6381
- nextColumnSize[code] = clamp(minSize, startSize + deltaSum, maxSize);
6507
+ nextColumnSize[code] = clamp(realMinSize, startSize + deltaSum, realMaxSize);
6382
6508
  changedColumnSize[code] = nextColumnSize[code];
6383
6509
  }
6384
6510
 
@@ -6386,7 +6512,15 @@ function columnResize() {
6386
6512
  return nextColumnSize;
6387
6513
  }));
6388
6514
  nextSize$.subscribe({
6389
- next: onChangeSize,
6515
+ next: function next(nextColumnSize) {
6516
+ onChangeSize(nextColumnSize); // 由于COLUMN_RESIZE_KEY记录的是全量的列宽,此处记录被改变过的列宽
6517
+
6518
+ var resizedColumnSet = pipeline.getFeatureOptions(RESIZED_COLUMN_KEY) || new Set();
6519
+ Object.keys(changedColumnSize).forEach(function (code) {
6520
+ resizedColumnSet.add(code, changedColumnSize[code]);
6521
+ });
6522
+ pipeline.setFeatureOptions(RESIZED_COLUMN_KEY, resizedColumnSet);
6523
+ },
6390
6524
  complete: function complete() {
6391
6525
  var changedColumnSizes = Object.keys(changedColumnSize).map(function (code) {
6392
6526
  return {
@@ -6404,26 +6538,26 @@ function columnResize() {
6404
6538
  });
6405
6539
  };
6406
6540
 
6407
- var isGroup = Object(_utils__WEBPACK_IMPORTED_MODULE_14__["isGroupColumn"])(pipeline.getColumns());
6408
- return pipeline.mapColumns(Object(_utils__WEBPACK_IMPORTED_MODULE_14__["makeRecursiveMapper"])(function (col) {
6541
+ var isGroup = Object(_utils__WEBPACK_IMPORTED_MODULE_18__["isGroupColumn"])(pipeline.getColumns());
6542
+ return pipeline.mapColumns(Object(_utils__WEBPACK_IMPORTED_MODULE_18__["makeRecursiveMapper"])(function (col) {
6409
6543
  var _columnSize$code;
6410
6544
 
6411
- var prevTitle = _internals__WEBPACK_IMPORTED_MODULE_15__["internals"].safeRenderHeader(col);
6545
+ var prevTitle = _internals__WEBPACK_IMPORTED_MODULE_19__["internals"].safeRenderHeader(col);
6412
6546
  var code = col.code,
6413
6547
  features = col.features,
6414
6548
  width = col.width;
6415
6549
  return _objectSpread(_objectSpread({}, col), {}, {
6416
6550
  width: (_columnSize$code = columnSize[code]) !== null && _columnSize$code !== void 0 ? _columnSize$code : width,
6417
- title: /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_10___default.a.createElement(react__WEBPACK_IMPORTED_MODULE_10___default.a.Fragment, null, prevTitle, (features === null || features === void 0 ? void 0 : features.resizeable) !== false && (isGroup ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_10___default.a.createElement(TableHeaderGroupCellResize, {
6418
- className: _base_styles__WEBPACK_IMPORTED_MODULE_16__["Classes"].tableHeaderCellResize,
6551
+ title: /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default.a.createElement(react__WEBPACK_IMPORTED_MODULE_14___default.a.Fragment, null, prevTitle, (features === null || features === void 0 ? void 0 : features.resizeable) !== false && (isGroup ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default.a.createElement(TableHeaderGroupCellResize, {
6552
+ className: _base_styles__WEBPACK_IMPORTED_MODULE_20__["Classes"].tableHeaderCellResize,
6419
6553
  onDoubleClick: function onDoubleClick(e) {
6420
6554
  return handleDoubleClick(e, col);
6421
6555
  },
6422
6556
  onMouseDown: function onMouseDown(e) {
6423
6557
  return handleMouseDown(e, col);
6424
6558
  }
6425
- }) : /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_10___default.a.createElement(TableHeaderCellResize, {
6426
- className: _base_styles__WEBPACK_IMPORTED_MODULE_16__["Classes"].tableHeaderCellResize,
6559
+ }) : /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default.a.createElement(TableHeaderCellResize, {
6560
+ className: _base_styles__WEBPACK_IMPORTED_MODULE_20__["Classes"].tableHeaderCellResize,
6427
6561
  onDoubleClick: function onDoubleClick(e) {
6428
6562
  return handleDoubleClick(e, col);
6429
6563
  },
@@ -6431,7 +6565,7 @@ function columnResize() {
6431
6565
  return handleMouseDown(e, col);
6432
6566
  }
6433
6567
  }))),
6434
- headerCellProps: Object(_utils__WEBPACK_IMPORTED_MODULE_14__["mergeCellProps"])(col.headerCellProps, {
6568
+ headerCellProps: Object(_utils__WEBPACK_IMPORTED_MODULE_18__["mergeCellProps"])(col.headerCellProps, {
6435
6569
  className: 'resizeable'
6436
6570
  })
6437
6571
  });
@@ -10740,8 +10874,9 @@ function useTablePipeline(ctx) {
10740
10874
  state = _useState2[0],
10741
10875
  setState = _useState2[1];
10742
10876
 
10743
- var ref = Object(react__WEBPACK_IMPORTED_MODULE_15__["useRef"])({});
10744
- ref.current.featureOptions = {};
10877
+ var ref = Object(react__WEBPACK_IMPORTED_MODULE_15__["useRef"])({
10878
+ featureOptions: {}
10879
+ });
10745
10880
  return new TablePipeline({
10746
10881
  state: state,
10747
10882
  setState: setState,
@@ -22783,6 +22918,24 @@ if (isForced(NUMBER, !NativeNumber(' 0o1') || !NativeNumber('0b1') || NativeNumb
22783
22918
  }
22784
22919
 
22785
22920
 
22921
+ /***/ }),
22922
+
22923
+ /***/ "./node_modules/core-js/modules/es.number.max-safe-integer.js":
22924
+ /*!********************************************************************!*\
22925
+ !*** ./node_modules/core-js/modules/es.number.max-safe-integer.js ***!
22926
+ \********************************************************************/
22927
+ /*! no static exports found */
22928
+ /***/ (function(module, exports, __webpack_require__) {
22929
+
22930
+ var $ = __webpack_require__(/*! ../internals/export */ "./node_modules/core-js/internals/export.js");
22931
+
22932
+ // `Number.MAX_SAFE_INTEGER` constant
22933
+ // https://tc39.es/ecma262/#sec-number.max_safe_integer
22934
+ $({ target: 'Number', stat: true }, {
22935
+ MAX_SAFE_INTEGER: 0x1FFFFFFFFFFFFF
22936
+ });
22937
+
22938
+
22786
22939
  /***/ }),
22787
22940
 
22788
22941
  /***/ "./node_modules/core-js/modules/es.object.get-own-property-descriptor.js":