@kdcloudjs/table 1.1.3-canary.1 → 1.1.3-canary.10

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.
Files changed (71) hide show
  1. package/dist/@kdcloudjs/table.css +1 -1
  2. package/dist/@kdcloudjs/table.js +602 -205
  3. package/dist/@kdcloudjs/table.js.map +1 -1
  4. package/dist/@kdcloudjs/table.min.css +1 -1
  5. package/dist/@kdcloudjs/table.min.js +6 -6
  6. package/dist/@kdcloudjs/table.min.js.map +1 -1
  7. package/es/table/base/helpers/TableDOMUtils.d.ts +2 -0
  8. package/es/table/base/helpers/TableDOMUtils.js +48 -12
  9. package/es/table/base/helpers/getRichVisibleRectsStream.js +1 -1
  10. package/es/table/base/html-table.js +1 -1
  11. package/es/table/base/styles.d.ts +2 -0
  12. package/es/table/base/styles.js +4 -2
  13. package/es/table/base/table.d.ts +0 -1
  14. package/es/table/base/table.js +13 -27
  15. package/es/table/pipeline/features/columnDrag.js +27 -16
  16. package/es/table/pipeline/features/columnFilter.d.ts +2 -2
  17. package/es/table/pipeline/features/columnFilter.js +33 -12
  18. package/es/table/pipeline/features/contextMenu.js +1 -0
  19. package/es/table/pipeline/features/filter/DefaultFilterIcon.d.ts +5 -0
  20. package/es/table/pipeline/features/filter/DefaultFilterIcon.js +20 -0
  21. package/es/table/pipeline/features/filter/Filter.d.ts +1 -1
  22. package/es/table/pipeline/features/filter/Filter.js +16 -20
  23. package/es/table/pipeline/features/filter/FilterPanel.js +25 -16
  24. package/es/table/pipeline/features/filter/util.js +4 -4
  25. package/es/table/pipeline/features/footerDataSource.d.ts +9 -0
  26. package/es/table/pipeline/features/footerDataSource.js +25 -0
  27. package/es/table/pipeline/features/index.d.ts +2 -0
  28. package/es/table/pipeline/features/index.js +3 -1
  29. package/es/table/pipeline/features/mergeCellHover.d.ts +2 -0
  30. package/es/table/pipeline/features/mergeCellHover.js +32 -0
  31. package/es/table/pipeline/features/multiSelect.js +7 -2
  32. package/es/table/pipeline/features/rangeSelection.d.ts +1 -1
  33. package/es/table/pipeline/features/rangeSelection.js +156 -28
  34. package/es/table/pipeline/features/singleSelect.js +4 -0
  35. package/es/table/pipeline/features/treeMode.d.ts +2 -0
  36. package/es/table/pipeline/features/treeMode.js +18 -20
  37. package/es/table/pipeline/pipeline.d.ts +5 -1
  38. package/es/table/pipeline/pipeline.js +11 -10
  39. package/lib/table/base/helpers/TableDOMUtils.d.ts +2 -0
  40. package/lib/table/base/helpers/TableDOMUtils.js +51 -12
  41. package/lib/table/base/helpers/getRichVisibleRectsStream.js +1 -1
  42. package/lib/table/base/html-table.js +1 -1
  43. package/lib/table/base/styles.d.ts +2 -0
  44. package/lib/table/base/styles.js +4 -2
  45. package/lib/table/base/table.d.ts +0 -1
  46. package/lib/table/base/table.js +13 -27
  47. package/lib/table/pipeline/features/columnDrag.js +27 -16
  48. package/lib/table/pipeline/features/columnFilter.d.ts +2 -2
  49. package/lib/table/pipeline/features/columnFilter.js +31 -12
  50. package/lib/table/pipeline/features/contextMenu.js +1 -0
  51. package/lib/table/pipeline/features/filter/DefaultFilterIcon.d.ts +5 -0
  52. package/lib/table/pipeline/features/filter/DefaultFilterIcon.js +30 -0
  53. package/lib/table/pipeline/features/filter/Filter.d.ts +1 -1
  54. package/lib/table/pipeline/features/filter/Filter.js +17 -20
  55. package/lib/table/pipeline/features/filter/FilterPanel.js +25 -15
  56. package/lib/table/pipeline/features/filter/util.js +4 -4
  57. package/lib/table/pipeline/features/footerDataSource.d.ts +9 -0
  58. package/lib/table/pipeline/features/footerDataSource.js +41 -0
  59. package/lib/table/pipeline/features/index.d.ts +2 -0
  60. package/lib/table/pipeline/features/index.js +23 -1
  61. package/lib/table/pipeline/features/mergeCellHover.d.ts +2 -0
  62. package/lib/table/pipeline/features/mergeCellHover.js +43 -0
  63. package/lib/table/pipeline/features/multiSelect.js +6 -1
  64. package/lib/table/pipeline/features/rangeSelection.d.ts +1 -1
  65. package/lib/table/pipeline/features/rangeSelection.js +158 -30
  66. package/lib/table/pipeline/features/singleSelect.js +4 -0
  67. package/lib/table/pipeline/features/treeMode.d.ts +2 -0
  68. package/lib/table/pipeline/features/treeMode.js +19 -22
  69. package/lib/table/pipeline/pipeline.d.ts +5 -1
  70. package/lib/table/pipeline/pipeline.js +12 -10
  71. package/package.json +1 -1
@@ -1,6 +1,6 @@
1
1
  /*!
2
2
  *
3
- * @kdcloudjs/table v1.1.2
3
+ * @kdcloudjs/table v1.1.3-canary.9
4
4
  *
5
5
  * Copyright 2020-present, Kingdee, Inc.
6
6
  * All rights reserved.
@@ -1862,9 +1862,18 @@ __webpack_require__.r(__webpack_exports__);
1862
1862
  /* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__);
1863
1863
  /* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/@babel/runtime/helpers/defineProperty.js");
1864
1864
  /* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_2__);
1865
- /* harmony import */ var core_js_modules_es_array_concat_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! core-js/modules/es.array.concat.js */ "./node_modules/core-js/modules/es.array.concat.js");
1866
- /* harmony import */ var core_js_modules_es_array_concat_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_concat_js__WEBPACK_IMPORTED_MODULE_3__);
1867
- /* harmony import */ var _styles__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../styles */ "./components/table/base/styles.ts");
1865
+ /* harmony import */ var core_js_modules_es_array_slice_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! core-js/modules/es.array.slice.js */ "./node_modules/core-js/modules/es.array.slice.js");
1866
+ /* harmony import */ var core_js_modules_es_array_slice_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_slice_js__WEBPACK_IMPORTED_MODULE_3__);
1867
+ /* harmony import */ var core_js_modules_es_array_from_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! core-js/modules/es.array.from.js */ "./node_modules/core-js/modules/es.array.from.js");
1868
+ /* harmony import */ var core_js_modules_es_array_from_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_from_js__WEBPACK_IMPORTED_MODULE_4__);
1869
+ /* harmony import */ var core_js_modules_es_string_iterator_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! core-js/modules/es.string.iterator.js */ "./node_modules/core-js/modules/es.string.iterator.js");
1870
+ /* harmony import */ var core_js_modules_es_string_iterator_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_string_iterator_js__WEBPACK_IMPORTED_MODULE_5__);
1871
+ /* harmony import */ var core_js_modules_es_array_concat_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! core-js/modules/es.array.concat.js */ "./node_modules/core-js/modules/es.array.concat.js");
1872
+ /* harmony import */ var core_js_modules_es_array_concat_js__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_concat_js__WEBPACK_IMPORTED_MODULE_6__);
1873
+ /* harmony import */ var _styles__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../styles */ "./components/table/base/styles.ts");
1874
+
1875
+
1876
+
1868
1877
 
1869
1878
 
1870
1879
 
@@ -1909,6 +1918,8 @@ __webpack_require__.r(__webpack_exports__);
1909
1918
 
1910
1919
  var TableDOMHelper = /*#__PURE__*/function () {
1911
1920
  function TableDOMHelper(artTableWrapper) {
1921
+ var _this = this;
1922
+
1912
1923
  _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default()(this, TableDOMHelper);
1913
1924
 
1914
1925
  _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_2___default()(this, "artTableWrapper", void 0);
@@ -1933,58 +1944,89 @@ var TableDOMHelper = /*#__PURE__*/function () {
1933
1944
 
1934
1945
  _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_2___default()(this, "tableFooterMain", void 0);
1935
1946
 
1947
+ _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_2___default()(this, "getRowNodeListByEvent", function (e) {
1948
+ var nodeList = null;
1949
+ var rowIndex = e.currentTarget.dataset.rowindex;
1950
+
1951
+ if (rowIndex !== undefined) {
1952
+ var targetParent = _this.tableBody.contains(e.currentTarget) ? _this.tableBody : _this.tableFooter;
1953
+ nodeList = targetParent.querySelectorAll("tr[data-rowindex=\"".concat(rowIndex, "\"]"));
1954
+ }
1955
+
1956
+ return nodeList;
1957
+ });
1958
+
1959
+ _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_2___default()(this, "getInRangeRowByCellEvent", function (e) {
1960
+ var _e, _getParentNode;
1961
+
1962
+ var getParentNode = function getParentNode(ele, target) {
1963
+ if (ele.parentNode.nodeName === target) {
1964
+ return ele.parentNode;
1965
+ }
1966
+
1967
+ return getParentNode(ele.parentNode, target);
1968
+ };
1969
+
1970
+ e = e instanceof Array ? e[0] : e;
1971
+ var curCell = (_e = e) === null || _e === void 0 ? void 0 : _e.currentTarget;
1972
+ var curRow = getParentNode(curCell, 'TR');
1973
+ var curRowSpan = parseInt(e.currentTarget.getAttribute('rowspan')) || 1;
1974
+ var rows = (_getParentNode = getParentNode(curCell, 'TABLE')) === null || _getParentNode === void 0 ? void 0 : _getParentNode.rows;
1975
+ return Array.from(rows).slice(curRow.rowIndex, curRow.rowIndex + curRowSpan);
1976
+ });
1977
+
1936
1978
  this.artTableWrapper = artTableWrapper;
1937
- this.artTable = artTableWrapper.querySelector(".".concat(_styles__WEBPACK_IMPORTED_MODULE_4__["Classes"].artTable));
1938
- this.tableHeader = this.artTable.querySelector(".".concat(_styles__WEBPACK_IMPORTED_MODULE_4__["Classes"].tableHeader));
1939
- this.tableHeaderMain = this.artTable.querySelector(".".concat(_styles__WEBPACK_IMPORTED_MODULE_4__["Classes"].tableHeaderMain));
1940
- this.tableBody = this.artTable.querySelector(".".concat(_styles__WEBPACK_IMPORTED_MODULE_4__["Classes"].tableBody));
1941
- this.virtual = this.artTable.querySelector(".".concat(_styles__WEBPACK_IMPORTED_MODULE_4__["Classes"].virtual));
1942
- this.tableElement = this.artTable.querySelector(".".concat(_styles__WEBPACK_IMPORTED_MODULE_4__["Classes"].tableBody, " table"));
1943
- this.tableFooter = this.artTable.querySelector(".".concat(_styles__WEBPACK_IMPORTED_MODULE_4__["Classes"].tableFooter));
1944
- this.tableFooterMain = this.artTable.querySelector(".".concat(_styles__WEBPACK_IMPORTED_MODULE_4__["Classes"].tableFooterMain));
1945
- var stickyScrollSelector = ".".concat(_styles__WEBPACK_IMPORTED_MODULE_4__["Classes"].artTable, " + .").concat(_styles__WEBPACK_IMPORTED_MODULE_4__["Classes"].stickyScroll);
1979
+ this.artTable = artTableWrapper.querySelector(".".concat(_styles__WEBPACK_IMPORTED_MODULE_7__["Classes"].artTable));
1980
+ this.tableHeader = this.artTable.querySelector(".".concat(_styles__WEBPACK_IMPORTED_MODULE_7__["Classes"].tableHeader));
1981
+ this.tableHeaderMain = this.artTable.querySelector(".".concat(_styles__WEBPACK_IMPORTED_MODULE_7__["Classes"].tableHeaderMain));
1982
+ this.tableBody = this.artTable.querySelector(".".concat(_styles__WEBPACK_IMPORTED_MODULE_7__["Classes"].tableBody));
1983
+ this.virtual = this.artTable.querySelector(".".concat(_styles__WEBPACK_IMPORTED_MODULE_7__["Classes"].virtual));
1984
+ this.tableElement = this.artTable.querySelector(".".concat(_styles__WEBPACK_IMPORTED_MODULE_7__["Classes"].tableBody, " table"));
1985
+ this.tableFooter = this.artTable.querySelector(".".concat(_styles__WEBPACK_IMPORTED_MODULE_7__["Classes"].tableFooter));
1986
+ this.tableFooterMain = this.artTable.querySelector(".".concat(_styles__WEBPACK_IMPORTED_MODULE_7__["Classes"].tableFooterMain));
1987
+ var stickyScrollSelector = ".".concat(_styles__WEBPACK_IMPORTED_MODULE_7__["Classes"].artTable, " + .").concat(_styles__WEBPACK_IMPORTED_MODULE_7__["Classes"].stickyScroll);
1946
1988
  this.stickyScroll = artTableWrapper.querySelector(stickyScrollSelector);
1947
- this.stickyScrollItem = this.stickyScroll.querySelector(".".concat(_styles__WEBPACK_IMPORTED_MODULE_4__["Classes"].stickyScrollItem));
1989
+ this.stickyScrollItem = this.stickyScroll.querySelector(".".concat(_styles__WEBPACK_IMPORTED_MODULE_7__["Classes"].stickyScrollItem));
1948
1990
  }
1949
1991
 
1950
1992
  _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default()(TableDOMHelper, [{
1951
1993
  key: "getVirtualTop",
1952
1994
  value: function getVirtualTop() {
1953
- return this.tableBody.querySelector(".".concat(_styles__WEBPACK_IMPORTED_MODULE_4__["Classes"].virtualBlank, ".top"));
1995
+ return this.tableBody.querySelector(".".concat(_styles__WEBPACK_IMPORTED_MODULE_7__["Classes"].virtualBlank, ".top"));
1954
1996
  }
1955
1997
  }, {
1956
1998
  key: "getTableRows",
1957
1999
  value: function getTableRows() {
1958
- var tbody = this.artTable.querySelector(".".concat(_styles__WEBPACK_IMPORTED_MODULE_4__["Classes"].tableBody, " .").concat(_styles__WEBPACK_IMPORTED_MODULE_4__["Classes"].virtual, " table tbody"));
2000
+ var tbody = this.artTable.querySelector(".".concat(_styles__WEBPACK_IMPORTED_MODULE_7__["Classes"].tableBody, " .").concat(_styles__WEBPACK_IMPORTED_MODULE_7__["Classes"].virtual, " table tbody"));
1959
2001
  return tbody.childNodes;
1960
2002
  }
1961
2003
  }, {
1962
2004
  key: "getTableBodyHtmlTable",
1963
2005
  value: function getTableBodyHtmlTable() {
1964
- return this.artTable.querySelector(".".concat(_styles__WEBPACK_IMPORTED_MODULE_4__["Classes"].tableBody, " .").concat(_styles__WEBPACK_IMPORTED_MODULE_4__["Classes"].virtual, " table"));
2006
+ return this.artTable.querySelector(".".concat(_styles__WEBPACK_IMPORTED_MODULE_7__["Classes"].tableBody, " .").concat(_styles__WEBPACK_IMPORTED_MODULE_7__["Classes"].virtual, " table"));
1965
2007
  }
1966
2008
  }, {
1967
2009
  key: "getLeftLockShadow",
1968
2010
  value: function getLeftLockShadow() {
1969
- var selector = ".".concat(_styles__WEBPACK_IMPORTED_MODULE_4__["Classes"].lockShadowMask, " .").concat(_styles__WEBPACK_IMPORTED_MODULE_4__["Classes"].leftLockShadow);
2011
+ var selector = ".".concat(_styles__WEBPACK_IMPORTED_MODULE_7__["Classes"].lockShadowMask, " .").concat(_styles__WEBPACK_IMPORTED_MODULE_7__["Classes"].leftLockShadow);
1970
2012
  return this.artTable.querySelector(selector);
1971
2013
  }
1972
2014
  }, {
1973
2015
  key: "getRightLockShadow",
1974
2016
  value: function getRightLockShadow() {
1975
- var selector = ".".concat(_styles__WEBPACK_IMPORTED_MODULE_4__["Classes"].lockShadowMask, " .").concat(_styles__WEBPACK_IMPORTED_MODULE_4__["Classes"].rightLockShadow);
2017
+ var selector = ".".concat(_styles__WEBPACK_IMPORTED_MODULE_7__["Classes"].lockShadowMask, " .").concat(_styles__WEBPACK_IMPORTED_MODULE_7__["Classes"].rightLockShadow);
1976
2018
  return this.artTable.querySelector(selector);
1977
2019
  }
1978
2020
  }, {
1979
2021
  key: "getLoadingIndicator",
1980
2022
  value: function getLoadingIndicator() {
1981
- return this.artTableWrapper.querySelector(".".concat(_styles__WEBPACK_IMPORTED_MODULE_4__["Classes"].loadingIndicator));
2023
+ return this.artTableWrapper.querySelector(".".concat(_styles__WEBPACK_IMPORTED_MODULE_7__["Classes"].loadingIndicator));
1982
2024
  }
1983
2025
  }, {
1984
2026
  key: "getRowTop",
1985
2027
  value: function getRowTop(rowIndex) {
1986
2028
  if (rowIndex === 0) return 0;
1987
- var selector = ".".concat(_styles__WEBPACK_IMPORTED_MODULE_4__["Classes"].tableBody, " .").concat(_styles__WEBPACK_IMPORTED_MODULE_4__["Classes"].tableRow, "[data-rowindex=\"").concat(rowIndex, "\"]");
2029
+ var selector = ".".concat(_styles__WEBPACK_IMPORTED_MODULE_7__["Classes"].tableBody, " .").concat(_styles__WEBPACK_IMPORTED_MODULE_7__["Classes"].tableRow, "[data-rowindex=\"").concat(rowIndex, "\"]");
1988
2030
  var row = this.artTable.querySelector(selector);
1989
2031
  var rowOffsetTop = row && row.offsetTop || 0;
1990
2032
  var tableOffsetTop = this.tableElement.offsetTop || 0;
@@ -2043,7 +2085,7 @@ __webpack_require__.r(__webpack_exports__);
2043
2085
 
2044
2086
 
2045
2087
  function isWindow(arg) {
2046
- return arg.toString() === '[object Window]';
2088
+ return arg.toString() === '[object Window]' || arg.toString() === '[object global]';
2047
2089
  }
2048
2090
 
2049
2091
  function isBody(arg) {
@@ -2622,7 +2664,7 @@ function HtmlTable(_ref) {
2622
2664
  positionStyle.left = hozInfo.stickyLeftMap.get(colIndex);
2623
2665
  } else if (colIndex >= fullFlatCount - rightFlatCount) {
2624
2666
  positionStyle.position = 'sticky';
2625
- positionStyle.right = hozInfo.stickyRightMap.get(colIndex) - stickyRightOffset;
2667
+ positionStyle.right = hozInfo.stickyRightMap.get(colIndex) - (typeof stickyRightOffset === 'number' ? stickyRightOffset : 0);
2626
2668
  }
2627
2669
 
2628
2670
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default.a.createElement('td', _objectSpread(_objectSpread(_objectSpread({
@@ -3247,6 +3289,8 @@ var Classes = {
3247
3289
  button: "".concat(prefix, "btn"),
3248
3290
  buttonPrimary: "".concat(prefix, "btn-primary"),
3249
3291
  filterIcon: "".concat(prefix, "filter-icon"),
3292
+ rangeSelection: "".concat(prefix, "range-selection"),
3293
+ tableCellRangeSingleCell: "".concat(prefix, "table-cell-range-single-cell"),
3250
3294
  tableCellRangeSelected: "".concat(prefix, "table-cell-range-selected"),
3251
3295
  tableCellRangeTop: "".concat(prefix, "table-cell-range-top"),
3252
3296
  tableCellRangeLeft: "".concat(prefix, "table-cell-range-left"),
@@ -3295,7 +3339,7 @@ var defaultCSSVariables = {
3295
3339
  '--primary-color': '#5582F3',
3296
3340
  '--primary-color-level1': 'rgb(242, 248, 255)',
3297
3341
  '--primary-color-level2': 'rgb(135, 173, 255)',
3298
- '--icon-color': '#bfbfbf',
3342
+ '--icon-color': '#666666',
3299
3343
  '--strong-border-color': '#d9d9d9',
3300
3344
  '--header-row-height': '32px',
3301
3345
  '--header-color': '#333',
@@ -3314,7 +3358,7 @@ var defaultCSSVariables = {
3314
3358
  '--header-cell-border-horizontal': '1px solid #dfe3e8'
3315
3359
  };
3316
3360
  var variableConst = getCssVariableText(defaultCSSVariables);
3317
- var StyledArtTableWrapper = styled_components__WEBPACK_IMPORTED_MODULE_4__["default"].div(_templateObject2 || (_templateObject2 = _babel_runtime_helpers_taggedTemplateLiteral__WEBPACK_IMPORTED_MODULE_0___default()(["\n :root {\n ", "\n }\n ", "\n\n box-sizing: border-box;\n * {\n box-sizing: border-box;\n }\n cursor: default;\n color: var(--color);\n font-size: var(--font-size);\n line-height: var(--line-height);\n position: relative;\n\n // \u8868\u683C\u5916\u8FB9\u6846\u7531 art-table-wrapper \u63D0\u4F9B\uFF0C\u800C\u4E0D\u662F\u7531\u5355\u5143\u683C\u63D0\u4F9B\n &.use-outer-border {\n ", ";\n }\n\n .no-scrollbar {\n ::-webkit-scrollbar {\n display: none;\n }\n }\n\n .", " {\n overflow: auto;\n flex-shrink: 1;\n flex-grow: 1;\n display: flex;\n flex-direction: column;\n user-select:none;\n }\n\n .", " {\n overflow: hidden;\n background: var(--header-bgcolor);\n display: flex;\n flex-shrink: 0;\n border-bottom: var(--header-cell-border-horizontal);\n }\n\n .", " {\n display: flex;\n // justify-content: flex-start;\n align-items: center;\n height: inherit;\n }\n\n .", " {\n overflow-x:auto;\n flex-shrink: 0;\n flex-grow: 0;\n scrollbar-width: none; // \u517C\u5BB9\u706B\u72D0\n & {\n ::-webkit-scrollbar {\n display:none;\n }\n }\n }\n\n .", " {\n display: flex;\n flex: none;\n }\n .", ", .", " {\n background: var(--bgcolor);\n overflow: auto;\n overflow-x: hidden;\n overflow-anchor: none;\n position:relative;\n &.empty {\n position: relative;\n }\n }\n\n .", " {\n position: relative;\n }\n .", " {\n .", "{\n background-color: #e6effb !important;\n }\n .", "{\n border-top: 1px solid #0E5FD8 !important;\n }\n .", "{\n border-left: 1px solid #0E5FD8 !important;\n }\n .", "{\n border-bottom: 1px solid #0E5FD8 !important;\n }\n .", "{\n border-right: 1px solid #0E5FD8 !important;\n }\n }\n \n\n &.sticky-header .", " {\n position: sticky;\n top: 0;\n z-index: ", ";\n }\n\n &.sticky-footer .", " {\n position: sticky;\n bottom: 0;\n z-index: ", ";\n }\n\n table {\n width: 0;\n table-layout: fixed;\n border-collapse: separate;\n border-spacing: 0;\n display: table;\n margin: 0;\n padding: 0;\n flex-shrink: 0;\n flex-grow: 0;\n position:relative;\n }\n\n // \u5728 tr \u4E0A\u8BBE\u7F6E .no-hover \u53EF\u4EE5\u7981\u7528\u9F20\u6807\u60AC\u505C\u6548\u679C\n tr:not(.no-hover):hover > td {\n background: var(--hover-bgcolor);\n }\n // \u5728 tr \u8BBE\u7F6E highlight \u53EF\u4EE5\u4E3A\u5E95\u4E0B\u7684 td \u8BBE\u7F6E\u4E3A\u9AD8\u4EAE\u8272\n // \u800C\u8BBE\u7F6E .no-highlight \u7684\u8BDD\u5219\u53EF\u4EE5\u7981\u7528\u9AD8\u4EAE\u6548\u679C\uFF1B\n tr:not(.no-highlight).highlight > td {\n background: var(--highlight-bgcolor);\n }\n\n th {\n font-weight: normal;\n text-align: left;\n padding: var(--cell-padding);\n height: var(--header-row-height);\n color: var(--header-color);\n background: var(--header-bgcolor);\n border:1px solid transparent;\n border-right: var(--header-cell-border-vertical);\n border-bottom: var(--header-cell-border-horizontal);\n position: relative;\n }\n\n th.resizeable{\n border-right:none\n }\n\n th.", " {\n border-right: none;\n border-bottom: none;\n }\n\n tr.", " th {\n border-top: var(--header-cell-border-horizontal);\n }\n th.", " {\n border-left: var(--header-cell-border-vertical);\n }\n\n td {\n padding: var(--cell-padding);\n background: var(--bgcolor);\n height: var(--row-height);\n border:1px solid transparent;\n border-right: var(--cell-border-vertical);\n border-bottom: var(--cell-border-horizontal);\n word-break: break-all;\n }\n td.", " {\n border-left: var(--cell-border-vertical);\n }\n tr.", " td {\n border-top: var(--cell-border-horizontal);\n }\n &.has-header tbody tr.", " td {\n border-top: none;\n }\n &.has-footer tbody tr.", " td {\n border-bottom: none;\n }\n\n .", ",\n .", " {\n z-index: ", ";\n }\n\n //#region \u9501\u5217\u9634\u5F71\n .", " {\n position: absolute;\n top: 0;\n bottom: 0;\n z-index: ", ";\n pointer-events: none;\n overflow: hidden;\n\n .", " {\n height: 100%;\n }\n\n .", " {\n margin-right: ", "px;\n box-shadow: none;\n\n &.show-shadow {\n box-shadow: var(--lock-shadow);\n border-right: var(--cell-border-vertical);\n }\n }\n\n .", " {\n margin-left: ", "px;\n box-shadow: none;\n\n &.show-shadow {\n box-shadow: var(--lock-shadow);\n border-left: var(--cell-border-vertical);\n }\n }\n }\n //#endregion\n\n //#region \u7A7A\u8868\u683C\u5C55\u73B0\n .", " {\n pointer-events: none;\n color: #99a3b3;\n font-size: 12px;\n text-align: center;\n position: absolute;\n left: 50%;\n top: 50%;\n transform: translate(-50%, -50%);\n\n .empty-image {\n width: 50px;\n height: 50px;\n }\n\n .empty-tips {\n margin-top: 16px;\n line-height: 1.5;\n }\n }\n //#endregion\n\n //#region IE\u517C\u5BB9\n &.ie-polyfill-wrapper {\n //\u9501\u5B9A\u5217\u517C\u5BB9 \u4EC5\u5728\u9501\u5B9A\u5217\u7684\u60C5\u51B5\u4E0B\u751F\u6548\n .", " {\n overflow-x: hidden;\n }\n .", ", .", " {\n position:relative;\n }\n .", " {\n overflow: hidden;\n }\n .", " {\n position: relative;\n }\n\n .", " {\n overflow: auto;\n overflow-x: hidden;\n overflow-anchor: none;\n }\n\n .", ", .", "{\n position: absolute;\n z-index: ", ";\n top: 0;\n }\n .", "{\n left:0;\n }\n .", "{\n right:0;\n }\n\n .", "{\n .", "{\n position: absolute;\n top: 0;\n width: 100%;\n z-index: ", ";\n }\n }\n\n tr:not(.no-hover).row-hover > td {\n background: var(--hover-bgcolor);\n }\n }\n //#endregion\n\n //#region \u7C98\u6027\u6EDA\u52A8\u6761\n .", " {\n overflow-y: hidden;\n overflow-x: auto;\n z-index: ", ";\n flex-shrink: 0;\n flex-grow: 0;\n border-top: 1px solid var(--border-color);\n background: var(--bgcolor);\n }\n\n .", " {\n // \u5FC5\u987B\u6709\u9AD8\u5EA6\u624D\u80FD\u51FA\u73B0\u6EDA\u52A8\u6761\n height: 1px;\n visibility: hidden;\n }\n //#endregion\n\n //#region \u52A0\u8F7D\u6837\u5F0F\n .", " {\n position: relative;\n width: 100%;\n height: 100%;\n overflow: auto;\n\n .", " {\n filter: none;\n width: 100%;\n height: 100%;\n overflow: auto;\n display: flex;\n position: relative;\n flex-direction: column;\n }\n\n .", " {\n position: absolute;\n left: 0;\n right: 0;\n top: 0;\n bottom: 0;\n pointer-events: none;\n }\n\n .", " {\n position: sticky;\n z-index: ", ";\n transform: translateY(-50%);\n }\n }\n //#endregion\n \n //#region \u8868\u683C\u8FC7\u6EE4\n .", " {\n color:var(--icon-color);\n &.active{\n color:var(--primary-color);\n }\n }\n //#endregion\n\n //#region \u8868\u683C\u6392\u5E8F\n .", " {\n color:var(--icon-color);\n &.active{\n color:var(--primary-color);\n }\n }\n //#endregion\n\n //#region \u6EDA\u52A8\u6761\u5360\u4F4D\n .", " {\n visibility: hidden;\n flex-shrink: 0;\n }\n .", " .", " {\n border-top: var(--cell-border-horizontal);\n }\n //#endregion\n "])), variableConst, variableConst, outerBorderStyleMixin, Classes.artTable, Classes.tableHeader, Classes.tableHeaderCellContent, Classes.virtual, Classes.tableFooter, Classes.tableBody, Classes.tableFooter, Classes.tableRow, Classes.tableBody, Classes.tableCellRangeSelected, Classes.tableCellRangeTop, Classes.tableCellRangeLeft, Classes.tableCellRangeBottom, Classes.tableCellRangeRight, Classes.tableHeader, Z.header, Classes.tableFooter, Z.footer, Classes.leaf, Classes.first, Classes.first, Classes.first, Classes.first, Classes.first, Classes.last, Classes.lockLeft, Classes.lockRight, Z.lock, Classes.lockShadowMask, Z.lockShadow, Classes.lockShadow, Classes.leftLockShadow, LOCK_SHADOW_PADDING, Classes.rightLockShadow, LOCK_SHADOW_PADDING, Classes.emptyWrapper, Classes.virtual, Classes.tableBody, Classes.tableFooter, Classes.tableHeaderMain, Classes.tableHeader, Classes.tableFooterMain, Classes.fixedLeft, Classes.fixedRight, Z.lock, Classes.fixedLeft, Classes.fixedRight, Classes.rowDetailContainer, Classes.rowDetailItem, Z.rowDetail, Classes.stickyScroll, Z.scrollItem, Classes.stickyScrollItem, Classes.loadingWrapper, Classes.loadingContentWrapper, Classes.loadingIndicatorWrapper, Classes.loadingIndicator, Z.loadingIndicator, Classes.tableFilterTrigger, Classes.tableSortIcon, Classes.verticalScrollPlaceholder, Classes.tableFooter, Classes.verticalScrollPlaceholder);
3361
+ var StyledArtTableWrapper = styled_components__WEBPACK_IMPORTED_MODULE_4__["default"].div(_templateObject2 || (_templateObject2 = _babel_runtime_helpers_taggedTemplateLiteral__WEBPACK_IMPORTED_MODULE_0___default()(["\n :root {\n ", "\n }\n ", "\n\n box-sizing: border-box;\n * {\n box-sizing: border-box;\n }\n cursor: default;\n color: var(--color);\n font-size: var(--font-size);\n line-height: var(--line-height);\n position: relative;\n\n // \u8868\u683C\u5916\u8FB9\u6846\u7531 art-table-wrapper \u63D0\u4F9B\uFF0C\u800C\u4E0D\u662F\u7531\u5355\u5143\u683C\u63D0\u4F9B\n &.use-outer-border {\n ", ";\n }\n\n .no-scrollbar {\n ::-webkit-scrollbar {\n display: none;\n }\n }\n\n .", " {\n overflow: auto;\n flex-shrink: 1;\n flex-grow: 1;\n display: flex;\n flex-direction: column;\n }\n\n .", " {\n overflow: hidden;\n background: var(--header-bgcolor);\n display: flex;\n flex-shrink: 0;\n border-bottom: var(--header-cell-border-horizontal);\n }\n\n .", " {\n display: flex;\n // justify-content: flex-start;\n align-items: center;\n height: inherit;\n }\n\n .", " {\n overflow-x:auto;\n flex-shrink: 0;\n flex-grow: 0;\n scrollbar-width: none; // \u517C\u5BB9\u706B\u72D0\n & {\n ::-webkit-scrollbar {\n display:none;\n }\n }\n }\n\n .", " {\n display: flex;\n flex: none;\n }\n .", ", .", " {\n background: var(--bgcolor);\n overflow: auto;\n overflow-x: hidden;\n overflow-anchor: none;\n position:relative;\n &.empty {\n position: relative;\n }\n }\n\n .", " {\n position: relative;\n }\n .", ", .", " {\n .", "{\n background-color: #e6effb !important;\n }\n .", "{\n border-top: 1px solid #0E5FD8 !important;\n }\n .", "{\n border-left: 1px solid #0E5FD8 !important;\n }\n .", "{\n border-bottom: 1px solid #0E5FD8 !important;\n }\n .", "{\n border-right: 1px solid #0E5FD8 !important;\n }\n }\n \n .", " {\n user-select:none;\n }\n\n\n &.sticky-header .", " {\n position: sticky;\n top: 0;\n z-index: ", ";\n }\n\n &.sticky-footer .", " {\n position: sticky;\n bottom: 0;\n z-index: ", ";\n }\n\n table {\n width: 0;\n table-layout: fixed;\n border-collapse: separate;\n border-spacing: 0;\n display: table;\n margin: 0;\n padding: 0;\n flex-shrink: 0;\n flex-grow: 0;\n position:relative;\n }\n\n // \u5728 tr \u4E0A\u8BBE\u7F6E .no-hover \u53EF\u4EE5\u7981\u7528\u9F20\u6807\u60AC\u505C\u6548\u679C\n tr:not(.no-hover):hover > td {\n background: var(--hover-bgcolor);\n }\n // \u4F7F\u7528 js \u6DFB\u52A0\u60AC\u6D6E\u6548\u679C\n tr:not(.no-hover).row-hover > td {\n background: var(--hover-bgcolor);\n }\n // \u5728 tr \u8BBE\u7F6E highlight \u53EF\u4EE5\u4E3A\u5E95\u4E0B\u7684 td \u8BBE\u7F6E\u4E3A\u9AD8\u4EAE\u8272\n // \u800C\u8BBE\u7F6E .no-highlight \u7684\u8BDD\u5219\u53EF\u4EE5\u7981\u7528\u9AD8\u4EAE\u6548\u679C\uFF1B\n tr:not(.no-highlight).highlight > td {\n background: var(--highlight-bgcolor);\n }\n\n th {\n font-weight: normal;\n text-align: left;\n padding: var(--cell-padding);\n height: var(--header-row-height);\n color: var(--header-color);\n background: var(--header-bgcolor);\n border:1px solid transparent;\n border-right: var(--header-cell-border-vertical);\n border-bottom: var(--header-cell-border-horizontal);\n position: relative;\n }\n\n th.resizeable{\n border-right:none\n }\n\n th.", " {\n border-right: none;\n border-bottom: none;\n }\n\n tr.", " th {\n border-top: var(--header-cell-border-horizontal);\n }\n th.", " {\n border-left: var(--header-cell-border-vertical);\n }\n\n td {\n padding: var(--cell-padding);\n background: var(--bgcolor);\n height: var(--row-height);\n border:1px solid transparent;\n border-right: var(--cell-border-vertical);\n border-bottom: var(--cell-border-horizontal);\n word-break: break-all;\n }\n td.", " {\n border-left: var(--cell-border-vertical);\n }\n tr.", " td {\n border-top: var(--cell-border-horizontal);\n }\n &.has-header tbody tr.", " td {\n border-top: none;\n }\n &.has-footer tbody tr.", " td {\n border-bottom: none;\n }\n\n .", ",\n .", " {\n z-index: ", ";\n }\n\n //#region \u9501\u5217\u9634\u5F71\n .", " {\n position: absolute;\n top: 0;\n bottom: 0;\n z-index: ", ";\n pointer-events: none;\n overflow: hidden;\n\n .", " {\n height: 100%;\n }\n\n .", " {\n margin-right: ", "px;\n box-shadow: none;\n\n &.show-shadow {\n box-shadow: var(--lock-shadow);\n border-right: var(--cell-border-vertical);\n }\n }\n\n .", " {\n margin-left: ", "px;\n box-shadow: none;\n\n &.show-shadow {\n box-shadow: var(--lock-shadow);\n border-left: var(--cell-border-vertical);\n }\n }\n }\n //#endregion\n\n //#region \u7A7A\u8868\u683C\u5C55\u73B0\n .", " {\n pointer-events: none;\n color: #99a3b3;\n font-size: 12px;\n text-align: center;\n position: absolute;\n left: 50%;\n top: 50%;\n transform: translate(-50%, -50%);\n\n .empty-image {\n width: 50px;\n height: 50px;\n }\n\n .empty-tips {\n margin-top: 16px;\n line-height: 1.5;\n }\n }\n //#endregion\n\n //#region IE\u517C\u5BB9\n &.ie-polyfill-wrapper {\n //\u9501\u5B9A\u5217\u517C\u5BB9 \u4EC5\u5728\u9501\u5B9A\u5217\u7684\u60C5\u51B5\u4E0B\u751F\u6548\n .", " {\n overflow-x: hidden;\n }\n .", ", .", " {\n position:relative;\n }\n .", " {\n overflow: hidden;\n }\n .", " {\n position: relative;\n }\n\n .", " {\n overflow: auto;\n overflow-x: hidden;\n overflow-anchor: none;\n }\n\n .", ", .", "{\n position: absolute;\n z-index: ", ";\n top: 0;\n }\n .", "{\n left:0;\n }\n .", "{\n right:0;\n }\n\n .", "{\n .", "{\n position: absolute;\n top: 0;\n width: 100%;\n z-index: ", ";\n }\n }\n\n tr:not(.no-hover).row-hover > td {\n background: var(--hover-bgcolor);\n }\n }\n //#endregion\n\n //#region \u7C98\u6027\u6EDA\u52A8\u6761\n .", " {\n overflow-y: hidden;\n overflow-x: auto;\n z-index: ", ";\n flex-shrink: 0;\n flex-grow: 0;\n border-top: 1px solid var(--border-color);\n background: var(--bgcolor);\n }\n\n .", " {\n // \u5FC5\u987B\u6709\u9AD8\u5EA6\u624D\u80FD\u51FA\u73B0\u6EDA\u52A8\u6761\n height: 1px;\n visibility: hidden;\n }\n //#endregion\n\n //#region \u52A0\u8F7D\u6837\u5F0F\n .", " {\n position: relative;\n width: 100%;\n height: 100%;\n overflow: auto;\n\n .", " {\n filter: none;\n width: 100%;\n height: 100%;\n overflow: hidden;//\u5217\u5168\u90E8\u56FA\u5B9A\u65F6\uFF0C\u5B58\u5728\u53CC\u6A2A\u5411\u6EDA\u52A8\u6761\n display: flex;\n position: relative;\n flex-direction: column;\n }\n\n .", " {\n position: absolute;\n left: 0;\n right: 0;\n top: 0;\n bottom: 0;\n pointer-events: none;\n }\n\n .", " {\n position: sticky;\n z-index: ", ";\n transform: translateY(-50%);\n }\n }\n //#endregion\n\n //#region \u8868\u683C\u8FC7\u6EE4\n .", " {\n color:var(--icon-color);\n &.active{\n color:var(--primary-color);\n }\n padding: 6px 4px;\n &:hover{\n background-color: #e5e5e5;\n }\n }\n .", " {\n display: flex\n }\n //#endregion\n\n //#region \u8868\u683C\u6392\u5E8F\n .", " {\n color:var(--icon-color);\n &.active{\n color:var(--primary-color);\n }\n }\n //#endregion\n\n //#region \u6EDA\u52A8\u6761\u5360\u4F4D\n .", " {\n visibility: hidden;\n flex-shrink: 0;\n }\n .", " .", " {\n border-top: var(--cell-border-horizontal);\n }\n //#endregion\n "])), variableConst, variableConst, outerBorderStyleMixin, Classes.artTable, Classes.tableHeader, Classes.tableHeaderCellContent, Classes.virtual, Classes.tableFooter, Classes.tableBody, Classes.tableFooter, Classes.tableRow, Classes.tableBody, Classes.tableFooter, Classes.tableCellRangeSelected, Classes.tableCellRangeTop, Classes.tableCellRangeLeft, Classes.tableCellRangeBottom, Classes.tableCellRangeRight, Classes.rangeSelection, Classes.tableHeader, Z.header, Classes.tableFooter, Z.footer, Classes.leaf, Classes.first, Classes.first, Classes.first, Classes.first, Classes.first, Classes.last, Classes.lockLeft, Classes.lockRight, Z.lock, Classes.lockShadowMask, Z.lockShadow, Classes.lockShadow, Classes.leftLockShadow, LOCK_SHADOW_PADDING, Classes.rightLockShadow, LOCK_SHADOW_PADDING, Classes.emptyWrapper, Classes.virtual, Classes.tableBody, Classes.tableFooter, Classes.tableHeaderMain, Classes.tableHeader, Classes.tableFooterMain, Classes.fixedLeft, Classes.fixedRight, Z.lock, Classes.fixedLeft, Classes.fixedRight, Classes.rowDetailContainer, Classes.rowDetailItem, Z.rowDetail, Classes.stickyScroll, Z.scrollItem, Classes.stickyScrollItem, Classes.loadingWrapper, Classes.loadingContentWrapper, Classes.loadingIndicatorWrapper, Classes.loadingIndicator, Z.loadingIndicator, Classes.tableFilterTrigger, Classes.filterIcon, Classes.tableSortIcon, Classes.verticalScrollPlaceholder, Classes.tableFooter, Classes.verticalScrollPlaceholder);
3318
3362
  var ButtonCSS = Object(styled_components__WEBPACK_IMPORTED_MODULE_4__["css"])(_templateObject3 || (_templateObject3 = _babel_runtime_helpers_taggedTemplateLiteral__WEBPACK_IMPORTED_MODULE_0___default()(["\n ", "\n //#region \u6309\u94AE\n .", "{\n color: var(--color);\n background:#ffffff;\n border:1px solid var(--strong-border-color);\n border-radius: 2px;\n cursor: pointer;\n &:hover{\n color: var(--primary-color);\n border:1px solid var(--primary-color);\n }\n }\n .", " {\n color:#ffffff;\n background-color: var(--primary-color);\n border:none;\n &:hover{\n color:#ffffff;\n background-color: var(--primary-color-level2);\n border:none;\n }\n }\n//#endregion\n"])), variableConst, Classes.button, Classes.buttonPrimary);
3319
3363
 
3320
3364
  function getCssVariableText(obj) {
@@ -3529,23 +3573,8 @@ var BaseTable = /*#__PURE__*/function (_React$Component) {
3529
3573
 
3530
3574
  _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_17___default()(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_13___default()(_this), "offsetY", 0);
3531
3575
 
3532
- _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_17___default()(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_13___default()(_this), "getRowNodeListByEvent", function (e) {
3533
- var nodeList = null;
3534
- var rowIndex = e.currentTarget.dataset.rowindex;
3535
-
3536
- if (rowIndex !== undefined) {
3537
- var _this$domHelper = _this.domHelper,
3538
- tableBody = _this$domHelper.tableBody,
3539
- tableFooter = _this$domHelper.tableFooter;
3540
- var targetParent = tableBody.contains(e.currentTarget) ? tableBody : tableFooter;
3541
- nodeList = targetParent.querySelectorAll("tr[data-rowindex=\"".concat(rowIndex, "\"]"));
3542
- }
3543
-
3544
- return nodeList;
3545
- });
3546
-
3547
3576
  _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_17___default()(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_13___default()(_this), "handleRowMouseEnter", function (e) {
3548
- var nodeList = _this.getRowNodeListByEvent(e);
3577
+ var nodeList = _this.domHelper.getRowNodeListByEvent(e);
3549
3578
 
3550
3579
  nodeList && nodeList.forEach(function (node) {
3551
3580
  node.classList.add('row-hover');
@@ -3553,7 +3582,7 @@ var BaseTable = /*#__PURE__*/function (_React$Component) {
3553
3582
  });
3554
3583
 
3555
3584
  _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_17___default()(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_13___default()(_this), "handleRowMouseLeave", function (e) {
3556
- var nodeList = _this.getRowNodeListByEvent(e);
3585
+ var nodeList = _this.domHelper.getRowNodeListByEvent(e);
3557
3586
 
3558
3587
  nodeList && nodeList.forEach(function (node) {
3559
3588
  node.classList.remove('row-hover');
@@ -3684,10 +3713,10 @@ var BaseTable = /*#__PURE__*/function (_React$Component) {
3684
3713
  }, {
3685
3714
  key: "updateStickyScroll",
3686
3715
  value: function updateStickyScroll() {
3687
- var _this$domHelper2 = this.domHelper,
3688
- stickyScroll = _this$domHelper2.stickyScroll,
3689
- artTable = _this$domHelper2.artTable,
3690
- stickyScrollItem = _this$domHelper2.stickyScrollItem;
3716
+ var _this$domHelper = this.domHelper,
3717
+ stickyScroll = _this$domHelper.stickyScroll,
3718
+ artTable = _this$domHelper.artTable,
3719
+ stickyScrollItem = _this$domHelper.stickyScrollItem;
3691
3720
  var _lastHasScrollY = this.hasScrollY;
3692
3721
 
3693
3722
  if (!artTable) {
@@ -3957,13 +3986,14 @@ var BaseTable = /*#__PURE__*/function (_React$Component) {
3957
3986
  style: style
3958
3987
  }, _utils__WEBPACK_IMPORTED_MODULE_39__["STYLED_REF_PROP"], this.artTableWrapperRef);
3959
3988
 
3989
+ var tableProps = getTableProps() || {};
3960
3990
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_27___default.a.createElement(_styles__WEBPACK_IMPORTED_MODULE_38__["StyledArtTableWrapper"], artTableWrapperProps, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_27___default.a.createElement(_loading__WEBPACK_IMPORTED_MODULE_37__["default"], {
3961
3991
  visible: isLoading,
3962
3992
  LoadingIcon: components.LoadingIcon,
3963
3993
  LoadingContentWrapper: components.LoadingContentWrapper
3964
- }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_27___default.a.createElement("div", _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_18___default()({
3965
- className: _styles__WEBPACK_IMPORTED_MODULE_38__["Classes"].artTable
3966
- }, getTableProps()), this.renderTableHeader(info), this.renderTableBody(info), this.renderTableFooter(info), this.renderLockShadows(info)), this.renderStickyScroll(info)));
3994
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_27___default.a.createElement("div", _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_18___default()({}, tableProps, {
3995
+ className: classnames__WEBPACK_IMPORTED_MODULE_26___default()(_styles__WEBPACK_IMPORTED_MODULE_38__["Classes"].artTable, tableProps.className)
3996
+ }), this.renderTableHeader(info), this.renderTableBody(info), this.renderTableFooter(info), this.renderLockShadows(info)), this.renderStickyScroll(info)));
3967
3997
  }
3968
3998
  }, {
3969
3999
  key: "componentDidMount",
@@ -4028,9 +4058,9 @@ var BaseTable = /*#__PURE__*/function (_React$Component) {
4028
4058
  value: function initSubscriptions() {
4029
4059
  var _this2 = this;
4030
4060
 
4031
- var _this$domHelper3 = this.domHelper,
4032
- virtual = _this$domHelper3.virtual,
4033
- stickyScroll = _this$domHelper3.stickyScroll;
4061
+ var _this$domHelper2 = this.domHelper,
4062
+ virtual = _this$domHelper2.virtual,
4063
+ stickyScroll = _this$domHelper2.stickyScroll;
4034
4064
  this.rootSubscription.add(_utils__WEBPACK_IMPORTED_MODULE_39__["throttledWindowResize$"].subscribe(function () {
4035
4065
  _this2.updateStickyScroll();
4036
4066
 
@@ -5161,6 +5191,10 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va
5161
5191
  var stateKey = 'columnDrag';
5162
5192
  var SCROLL_SIZE = 30;
5163
5193
 
5194
+ function disableSelect(event) {
5195
+ event.preventDefault();
5196
+ }
5197
+
5164
5198
  function sortColumns(columns, sort) {
5165
5199
  var res = new Array(columns.length);
5166
5200
 
@@ -5215,9 +5249,11 @@ function columnDrag() {
5215
5249
  },
5216
5250
  headerCellProps: Object(_utils__WEBPACK_IMPORTED_MODULE_10__["mergeCellProps"])(col.headerCellProps, {
5217
5251
  onMouseDown: !isLeaf || path.length > 1 ? undefined : function (e) {
5218
- if (e.button !== 0) {
5252
+ if (e.button !== 0 || !e.currentTarget.contains(e.target)) {
5219
5253
  return;
5220
- } // const cx = e.clientX
5254
+ }
5255
+
5256
+ window.addEventListener('selectstart', disableSelect); // const cx = e.clientX
5221
5257
  // const width = col.width
5222
5258
  // const a = startIndex
5223
5259
  // const b = endIndex
@@ -5226,7 +5262,6 @@ function columnDrag() {
5226
5262
  // let newStartIndex = startIndex
5227
5263
  // let endIdx = endIndex
5228
5264
 
5229
-
5230
5265
  var columnMoved = false;
5231
5266
  var columns = pipeline.getColumns();
5232
5267
 
@@ -5240,6 +5275,8 @@ function columnDrag() {
5240
5275
  var currentTarget = e.currentTarget;
5241
5276
  var rect = e.currentTarget.parentElement.getClientRects()[0];
5242
5277
  var startX = rect.left;
5278
+ var mouseDownClientX = e.clientX;
5279
+ var mouseDownClientY = e.clientY;
5243
5280
  var moveData = [];
5244
5281
  var allColumns = Object(_utils__WEBPACK_IMPORTED_MODULE_10__["collectNodes"])(columns);
5245
5282
  var tableBodyClientRect = tableBody.getBoundingClientRect();
@@ -5259,8 +5296,6 @@ function columnDrag() {
5259
5296
  }
5260
5297
  };
5261
5298
 
5262
- var stopClickPropagationFlag = false;
5263
-
5264
5299
  function handleMouseMove(e) {
5265
5300
  var client = {
5266
5301
  clientX: e.clientX,
@@ -5274,12 +5309,6 @@ function columnDrag() {
5274
5309
  if (e.clientX - leftPosition < 20) {
5275
5310
  return;
5276
5311
  } else {
5277
- // 阻止列头点击事件,防止拖动后触发列头过滤事件
5278
- if (stopClickPropagationFlag === false) {
5279
- stopClickPropagationFlag = true;
5280
- currentTarget.addEventListener('click', stopClickPropagation);
5281
- }
5282
-
5283
5312
  e.stopPropagation();
5284
5313
  }
5285
5314
 
@@ -5399,10 +5428,15 @@ function columnDrag() {
5399
5428
  e.stopPropagation();
5400
5429
  document.body.removeEventListener('mousemove', handleMouseMove);
5401
5430
  document.body.removeEventListener('mouseup', handleMouseUp);
5431
+ window.removeEventListener('selectstart', disableSelect); // 阻止列头点击事件,防止拖动后触发列头过滤事件
5432
+
5433
+ if (_isMoveWhenClicking(mouseDownClientX, mouseDownClientY, e.clientX, e.clientY)) {
5434
+ currentTarget.addEventListener('click', stopClickPropagation);
5435
+ }
5436
+
5402
5437
  window.requestAnimationFrame(function () {
5403
5438
  // 取消阻止列头点击事件
5404
5439
  currentTarget.removeEventListener('click', stopClickPropagation);
5405
- stopClickPropagationFlag = false;
5406
5440
  currentTarget = null;
5407
5441
 
5408
5442
  var _moveData = moveData,
@@ -5481,10 +5515,6 @@ function columnDrag() {
5481
5515
 
5482
5516
  document.body.addEventListener('mousemove', handleMouseMove);
5483
5517
  document.body.addEventListener('mouseup', handleMouseUp);
5484
-
5485
- document.body.onselectstart = function () {
5486
- return false;
5487
- };
5488
5518
  },
5489
5519
  style: style
5490
5520
  })
@@ -5524,6 +5554,17 @@ function moveAllChildren(cols, cloumnsTranslateData, width, isMinus) {
5524
5554
  });
5525
5555
  }
5526
5556
 
5557
+ function _isMoveWhenClicking(mouseDownClientX, mouseDownClientY, mouseUpClientX, mouseUpClientY) {
5558
+ var xDiff = mouseUpClientX - mouseDownClientX;
5559
+ var yDiff = mouseUpClientY - mouseDownClientY; // 鼠标点按和松开的偏移量大于5px,认为存在移动
5560
+
5561
+ if (Math.sqrt(xDiff * xDiff + yDiff * yDiff) > 5) {
5562
+ return true;
5563
+ }
5564
+
5565
+ return false;
5566
+ }
5567
+
5527
5568
  /***/ }),
5528
5569
 
5529
5570
  /***/ "./components/table/pipeline/features/columnFilter.tsx":
@@ -5639,7 +5680,7 @@ function filter() {
5639
5680
  var filterActive = filterable && (inputFiltersMap === null || inputFiltersMap === void 0 ? void 0 : (_inputFiltersMap$get = inputFiltersMap.get(col.code)) === null || _inputFiltersMap$get === void 0 ? void 0 : (_inputFiltersMap$get$ = _inputFiltersMap$get.filter) === null || _inputFiltersMap$get$ === void 0 ? void 0 : _inputFiltersMap$get$.length) > 0;
5640
5681
 
5641
5682
  if (filterable) {
5642
- var _col$features2, _result$title, _cx;
5683
+ var _col$features2, _col$features$filterI, _col$features3, _result$title, _cx;
5643
5684
 
5644
5685
  var handleFilterChanged = function handleFilterChanged(filterItem) {
5645
5686
  var nextFiltersMap = new Map(inputFiltersMap);
@@ -5672,12 +5713,13 @@ function filter() {
5672
5713
  };
5673
5714
 
5674
5715
  var filterPanel = (_col$features2 = col.features) === null || _col$features2 === void 0 ? void 0 : _col$features2.filterPanel;
5716
+ var colFilterIcon = (_col$features$filterI = (_col$features3 = col.features) === null || _col$features3 === void 0 ? void 0 : _col$features3.filterIcon) !== null && _col$features$filterI !== void 0 ? _col$features$filterI : filterIcon;
5675
5717
  result.title = [].concat(_babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_4___default()([].concat((_result$title = result.title) !== null && _result$title !== void 0 ? _result$title : [_internals__WEBPACK_IMPORTED_MODULE_19__["internals"].safeRenderHeader(_objectSpread(_objectSpread({}, col), {}, {
5676
5718
  title: null
5677
5719
  }))])), [/*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_17___default.a.createElement(_filter__WEBPACK_IMPORTED_MODULE_21__["Filter"], {
5678
5720
  key: "filter",
5679
5721
  FilterPanelContent: filterPanel,
5680
- filterIcon: filterIcon,
5722
+ filterIcon: colFilterIcon,
5681
5723
  filterModel: inputFiltersMap.get(col.code),
5682
5724
  setFilterModel: handleFilterChanged,
5683
5725
  setFilter: setFilter,
@@ -5711,9 +5753,9 @@ function filter() {
5711
5753
 
5712
5754
  var columns = pipeline.getColumns();
5713
5755
  var columnsMap = new Map(Object(_utils__WEBPACK_IMPORTED_MODULE_20__["collectNodes"])(columns, 'leaf-only').filter(function (col) {
5714
- var _col$features3, _col$features4;
5756
+ var _col$features4, _col$features5;
5715
5757
 
5716
- return ((_col$features3 = col.features) === null || _col$features3 === void 0 ? void 0 : _col$features3.filterable) !== false && ((_col$features4 = col.features) === null || _col$features4 === void 0 ? void 0 : _col$features4.filterable) != null;
5758
+ return ((_col$features4 = col.features) === null || _col$features4 === void 0 ? void 0 : _col$features4.filterable) !== false && ((_col$features5 = col.features) === null || _col$features5 === void 0 ? void 0 : _col$features5.filterable) != null;
5717
5759
  }).map(function (col) {
5718
5760
  return [col.code, col];
5719
5761
  }));
@@ -5722,7 +5764,7 @@ function filter() {
5722
5764
  }));
5723
5765
 
5724
5766
  function isMatchedFilterCondition(record) {
5725
- return !filtersKeys.some(function (key) {
5767
+ return filtersKeys.every(function (key) {
5726
5768
  var _columnsMap$get, _columnsMap$get$featu;
5727
5769
 
5728
5770
  var filterItem = inputFiltersMap.get(key);
@@ -5738,17 +5780,11 @@ function filter() {
5738
5780
  comparisonFn = defaultFilterOptionsMap.get('contain').filter;
5739
5781
  }
5740
5782
 
5741
- return !comparisonFn(filterItem.filter)(record[key]); //不符合过滤条件,退出循环
5783
+ return comparisonFn(filterItem.filter, filterItem)(_internals__WEBPACK_IMPORTED_MODULE_19__["internals"].safeGetValue(columnsMap.get(key), record, -1), record);
5742
5784
  });
5743
5785
  }
5744
5786
 
5745
- return dataSource.reduce(function (pre, record) {
5746
- if (isMatchedFilterCondition(record)) {
5747
- return pre.concat([record]);
5748
- }
5749
-
5750
- return pre;
5751
- }, []);
5787
+ return layeredFilter(dataSource, isMatchedFilterCondition);
5752
5788
  }
5753
5789
 
5754
5790
  pipeline.dataSource(processDataSource(dataSource));
@@ -5757,6 +5793,30 @@ function filter() {
5757
5793
  };
5758
5794
  }
5759
5795
 
5796
+ function layeredFilter(array, matchFn) {
5797
+ return dfs(array);
5798
+
5799
+ function dfs(rows) {
5800
+ var parentMatched = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
5801
+ return rows.map(function (row) {
5802
+ var currentMatched = matchFn(row);
5803
+
5804
+ if (Object(_utils__WEBPACK_IMPORTED_MODULE_20__["isLeafNode"])(row)) {
5805
+ return (parentMatched || currentMatched) && _objectSpread({}, row);
5806
+ }
5807
+
5808
+ var children = row.children;
5809
+
5810
+ var rowAfterFilterChildren = _objectSpread(_objectSpread({}, row), {}, {
5811
+ children: dfs(children, parentMatched || currentMatched)
5812
+ });
5813
+
5814
+ var matchedByChildren = !Object(_utils__WEBPACK_IMPORTED_MODULE_20__["isLeafNode"])(rowAfterFilterChildren);
5815
+ return (parentMatched || currentMatched || matchedByChildren) && rowAfterFilterChildren;
5816
+ }).filter(Boolean);
5817
+ }
5818
+ }
5819
+
5760
5820
  /***/ }),
5761
5821
 
5762
5822
  /***/ "./components/table/pipeline/features/columnHover.tsx":
@@ -6296,6 +6356,7 @@ function contextMenu() {
6296
6356
  }
6297
6357
 
6298
6358
  e.preventDefault();
6359
+ e.stopPropagation();
6299
6360
  showContextMenu(e);
6300
6361
  };
6301
6362
 
@@ -6784,6 +6845,41 @@ function DefaultFilterContent(_ref) {
6784
6845
 
6785
6846
  /***/ }),
6786
6847
 
6848
+ /***/ "./components/table/pipeline/features/filter/DefaultFilterIcon.tsx":
6849
+ /*!*************************************************************************!*\
6850
+ !*** ./components/table/pipeline/features/filter/DefaultFilterIcon.tsx ***!
6851
+ \*************************************************************************/
6852
+ /*! exports provided: default */
6853
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
6854
+
6855
+ "use strict";
6856
+ __webpack_require__.r(__webpack_exports__);
6857
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return DefaultFilterIcon; });
6858
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
6859
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
6860
+
6861
+ function DefaultFilterIcon(_ref) {
6862
+ var width = _ref.width,
6863
+ height = _ref.height;
6864
+ return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("svg", {
6865
+ width: width,
6866
+ height: height,
6867
+ style: {
6868
+ verticalAlign: 'middle'
6869
+ },
6870
+ viewBox: "0 0 1024 1024",
6871
+ focusable: "false",
6872
+ "data-icon": "filter",
6873
+ fill: "currentColor",
6874
+ version: "1.1",
6875
+ xmlns: "http://www.w3.org/2000/svg"
6876
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("path", {
6877
+ d: "M891.448889 159.573333L626.460444 460.231111v443.221333c0 32.881778-25.429333 63.658667-55.864888 63.658667l-170.268445-172.942222V456.419556L132.266667 159.857778A59.619556 59.619556 0 0 1 173.511111 56.888889h676.977778c32.995556 0 59.733333 26.680889 59.733333 59.562667 0 17.066667-7.224889 32.312889-18.773333 43.121777z"
6878
+ }));
6879
+ }
6880
+
6881
+ /***/ }),
6882
+
6787
6883
  /***/ "./components/table/pipeline/features/filter/Filter.tsx":
6788
6884
  /*!**************************************************************!*\
6789
6885
  !*** ./components/table/pipeline/features/filter/Filter.tsx ***!
@@ -6807,10 +6903,11 @@ __webpack_require__.r(__webpack_exports__);
6807
6903
  /* harmony import */ var _base_styles__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../base/styles */ "./components/table/base/styles.ts");
6808
6904
  /* harmony import */ var _FilterPanel__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./FilterPanel */ "./components/table/pipeline/features/filter/FilterPanel.tsx");
6809
6905
  /* harmony import */ var _DefaultFilterContent__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./DefaultFilterContent */ "./components/table/pipeline/features/filter/DefaultFilterContent.tsx");
6810
- /* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../utils */ "./components/table/utils/index.tsx");
6811
- /* harmony import */ var _base_utils__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../base/utils */ "./components/table/base/utils.tsx");
6812
- /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! classnames */ "./node_modules/classnames/index.js");
6813
- /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_11___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_11__);
6906
+ /* harmony import */ var _DefaultFilterIcon__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./DefaultFilterIcon */ "./components/table/pipeline/features/filter/DefaultFilterIcon.tsx");
6907
+ /* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../utils */ "./components/table/utils/index.tsx");
6908
+ /* harmony import */ var _base_utils__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../base/utils */ "./components/table/base/utils.tsx");
6909
+ /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! classnames */ "./node_modules/classnames/index.js");
6910
+ /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_12___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_12__);
6814
6911
 
6815
6912
 
6816
6913
 
@@ -6826,7 +6923,8 @@ var _templateObject;
6826
6923
 
6827
6924
 
6828
6925
 
6829
- var HEADER_ICON_OFFSET_Y = 6 + 1; // padding-top + border
6926
+
6927
+ var HEADER_ICON_OFFSET_Y = 8 + 1; // padding-top + border
6830
6928
 
6831
6929
  var HEADER_ICON_OFFSET_X = 16 + 1; // padding-left+ border
6832
6930
 
@@ -6839,7 +6937,7 @@ function Panel(_ref) {
6839
6937
  renderPanelContent = _ref.renderPanelContent;
6840
6938
  var filterPanelRef = react__WEBPACK_IMPORTED_MODULE_3___default.a.useRef(null);
6841
6939
 
6842
- var _React$useState = react__WEBPACK_IMPORTED_MODULE_3___default.a.useState(Object(_utils__WEBPACK_IMPORTED_MODULE_9__["calculatePopupRelative"])(ele, document.body, {
6940
+ var _React$useState = react__WEBPACK_IMPORTED_MODULE_3___default.a.useState(Object(_utils__WEBPACK_IMPORTED_MODULE_10__["calculatePopupRelative"])(ele, document.body, {
6843
6941
  x: HEADER_ICON_OFFSET_X,
6844
6942
  y: HEADER_ICON_OFFSET_Y
6845
6943
  })),
@@ -6853,14 +6951,14 @@ function Panel(_ref) {
6853
6951
  };
6854
6952
 
6855
6953
  var handleFilterPanelResize = function handleFilterPanelResize(resize) {
6856
- setPosition(Object(_utils__WEBPACK_IMPORTED_MODULE_9__["calculatePopupRelative"])(ele, document.body, {
6954
+ setPosition(Object(_utils__WEBPACK_IMPORTED_MODULE_10__["calculatePopupRelative"])(ele, document.body, {
6857
6955
  x: HEADER_ICON_OFFSET_X,
6858
6956
  y: HEADER_ICON_OFFSET_Y
6859
6957
  }));
6860
6958
  };
6861
6959
 
6862
6960
  Object(react__WEBPACK_IMPORTED_MODULE_3__["useEffect"])(function () {
6863
- var resizeObserver = Object(_base_utils__WEBPACK_IMPORTED_MODULE_10__["addResizeObserver"])(filterPanelRef.current.children[0], handleFilterPanelResize);
6961
+ var resizeObserver = Object(_base_utils__WEBPACK_IMPORTED_MODULE_11__["addResizeObserver"])(filterPanelRef.current.children[0], handleFilterPanelResize);
6864
6962
  return function () {
6865
6963
  resizeObserver && resizeObserver.disconnect();
6866
6964
  };
@@ -6901,10 +6999,6 @@ function Filter(_ref2) {
6901
6999
  return setShowPanel(false);
6902
7000
  };
6903
7001
 
6904
- var handleMouseDown = function handleMouseDown(e) {
6905
- e.stopPropagation(); // 阻止触发拖拽
6906
- };
6907
-
6908
7002
  var renderPanelContent = function renderPanelContent() {
6909
7003
  if (FilterPanelContent) {
6910
7004
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_3___default.a.createElement(FilterPanelContent, {
@@ -6924,6 +7018,12 @@ function Filter(_ref2) {
6924
7018
  };
6925
7019
 
6926
7020
  var handleIconClick = function handleIconClick(e) {
7021
+ // 只有当icon区域点击会触发面板展开
7022
+ // 防止 createPortal 区域的点击触发该事件
7023
+ if (!e.currentTarget.contains(e.target)) {
7024
+ return;
7025
+ }
7026
+
6927
7027
  if (stopClickEventPropagation) {
6928
7028
  e.stopPropagation();
6929
7029
  }
@@ -6931,28 +7031,21 @@ function Filter(_ref2) {
6931
7031
  setShowPanel(true);
6932
7032
  };
6933
7033
 
6934
- var iconClassName = classnames__WEBPACK_IMPORTED_MODULE_11___default()((_cx = {}, _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(_cx, className, true), _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(_cx, 'filter-panel-open', showPanel), _cx));
7034
+ var iconClassName = classnames__WEBPACK_IMPORTED_MODULE_12___default()((_cx = {}, _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(_cx, className, true), _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(_cx, 'filter-panel-open', showPanel), _cx));
7035
+ var displayFilterIcon = typeof filterIcon === 'function' ? filterIcon(isFilterActive) : filterIcon;
6935
7036
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_3___default.a.createElement(FilterIconSpanStyle, {
6936
7037
  style: style,
6937
7038
  className: iconClassName,
6938
- onMouseDown: handleMouseDown,
6939
- ref: iconRef
6940
- }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_3___default.a.createElement("span", {
6941
- className: _base_styles__WEBPACK_IMPORTED_MODULE_6__["Classes"].filterIcon,
6942
7039
  onClick: handleIconClick
6943
- }, filterIcon || /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_3___default.a.createElement("svg", {
7040
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_3___default.a.createElement("span", {
7041
+ ref: iconRef,
7042
+ className: _base_styles__WEBPACK_IMPORTED_MODULE_6__["Classes"].filterIcon
7043
+ }, displayFilterIcon || /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_3___default.a.createElement(_DefaultFilterIcon__WEBPACK_IMPORTED_MODULE_9__["default"], {
6944
7044
  width: size,
6945
- height: size,
6946
- viewBox: "64 64 896 896",
6947
- focusable: "false",
6948
- "data-icon": "filter",
6949
- fill: "currentColor",
6950
- "aria-hidden": "true"
6951
- }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_3___default.a.createElement("path", {
6952
- d: "M349 838c0 17.7 14.2 32 31.8 32h262.4c17.6 0 31.8-14.3 31.8-32V642H349v196zm531.1-684H143.9c-24.5 0-39.8 26.7-27.5 48l221.3 376h348.8l221.3-376c12.1-21.3-3.2-48-27.7-48z"
6953
- }))), showPanel && /*#__PURE__*/Object(react_dom__WEBPACK_IMPORTED_MODULE_4__["createPortal"])( /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_3___default.a.createElement(Panel, {
7045
+ height: size
7046
+ })), showPanel && /*#__PURE__*/Object(react_dom__WEBPACK_IMPORTED_MODULE_4__["createPortal"])( /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_3___default.a.createElement(Panel, {
6954
7047
  ele: iconRef.current,
6955
- filterIcon: filterIcon,
7048
+ filterIcon: displayFilterIcon,
6956
7049
  hidePanel: hidePanel,
6957
7050
  renderPanelContent: renderPanelContent
6958
7051
  }), document.body));
@@ -6995,6 +7088,7 @@ __webpack_require__.r(__webpack_exports__);
6995
7088
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_10__);
6996
7089
  /* harmony import */ var styled_components__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! styled-components */ "./node_modules/styled-components/dist/styled-components.browser.esm.js");
6997
7090
  /* harmony import */ var _utils___WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../utils/ */ "./components/table/utils/index.tsx");
7091
+ /* harmony import */ var _DefaultFilterIcon__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./DefaultFilterIcon */ "./components/table/pipeline/features/filter/DefaultFilterIcon.tsx");
6998
7092
 
6999
7093
 
7000
7094
 
@@ -7015,16 +7109,17 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va
7015
7109
 
7016
7110
 
7017
7111
 
7018
- var FilterPanelStyle = styled_components__WEBPACK_IMPORTED_MODULE_11__["default"].div(_templateObject || (_templateObject = _babel_runtime_helpers_taggedTemplateLiteral__WEBPACK_IMPORTED_MODULE_2___default()(["\n display: flex;\n flex-direction: column;\n max-height: 450px;\n min-width: 160px;\n border-radius: 2px;\n background-color: #fff;\n box-shadow: 0 0 5px 0 rgba(154,154,154,.5);\n cursor: default;\n\n .popup-header {\n display: flex;\n background-color: #ebedf1;\n\n .popup-header-icon {\n color:#666;\n background-color: #fff;\n padding: 6px 16px 6px 16px;\n display: inline-block;\n border-right: 1px solid transparent;\n border-left: 1px solid transparent;\n border-top: 1px solid transparent;\n border-top-right-radius: 2px;\n border-top-left-radius: 2px;\n }\n }\n\n .popup-body {\n display: flex;\n }\n"])));
7112
+
7113
+ var FilterPanelStyle = styled_components__WEBPACK_IMPORTED_MODULE_11__["default"].div(_templateObject || (_templateObject = _babel_runtime_helpers_taggedTemplateLiteral__WEBPACK_IMPORTED_MODULE_2___default()(["\n display: flex;\n flex-direction: column;\n max-height: 450px;\n min-width: 160px;\n border-radius: 2px;\n background-color: #fff;\n box-shadow: 0 0 5px 0 rgba(154,154,154,.5);\n cursor: default;\n\n .popup-header {\n display: flex;\n background-color: #ebedf1;\n\n .popup-header-icon {\n display: flex;\n color:#666;\n background-color: #fff;\n padding: 8px 16px 8px 16px;\n border-right: 1px solid transparent;\n border-left: 1px solid transparent;\n border-top: 1px solid transparent;\n border-top-right-radius: 2px;\n border-top-left-radius: 2px;\n }\n }\n\n .popup-body {\n display: flex;\n }\n"])));
7019
7114
 
7020
7115
  var useWindowEvents = function useWindowEvents(func, evens) {
7021
7116
  react__WEBPACK_IMPORTED_MODULE_10___default.a.useEffect(function () {
7022
7117
  evens.forEach(function (event) {
7023
- return window.addEventListener(event, func, true);
7118
+ return window.addEventListener(event, func);
7024
7119
  });
7025
7120
  return function () {
7026
7121
  return evens.forEach(function (event) {
7027
- return window.removeEventListener(event, func, true);
7122
+ return window.removeEventListener(event, func);
7028
7123
  });
7029
7124
  };
7030
7125
  }, [evens, func]);
@@ -7057,8 +7152,22 @@ function FilterPanel(_ref) {
7057
7152
  setPerfectPosition(Object(_utils___WEBPACK_IMPORTED_MODULE_12__["keepWithinBounds"])(document.body, ref.current, position.x, position.y, true));
7058
7153
  setVisible(true);
7059
7154
  }, [position]);
7155
+ var hasPopupMouseDown = Object(react__WEBPACK_IMPORTED_MODULE_10__["useRef"])(false);
7156
+ var mouseDownTimeout = Object(react__WEBPACK_IMPORTED_MODULE_10__["useRef"])();
7157
+
7158
+ var handleMouseDown = function handleMouseDown(e) {
7159
+ // 当弹出的过滤面板内部发生鼠标按下事件时,标记当前事件,并在下个周期清除标记,用来确定鼠标按下发生在过滤面板内部
7160
+ // 利用了React.createPortal冒泡是根据React Tree的特性:
7161
+ // https://jwwnz.medium.com/react-portals-and-event-bubbling-8df3e35ca3f1
7162
+ hasPopupMouseDown.current = true;
7163
+ clearTimeout(mouseDownTimeout.current);
7164
+ mouseDownTimeout.current = window.setTimeout(function () {
7165
+ hasPopupMouseDown.current = false;
7166
+ }, 0);
7167
+ };
7168
+
7060
7169
  useWindowEvents(function (e) {
7061
- return !isContainPanel(e) && onClose();
7170
+ !isContainPanel(e) && !hasPopupMouseDown.current && onClose();
7062
7171
  }, ['mousedown']);
7063
7172
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_10___default.a.createElement(FilterPanelStyle, {
7064
7173
  style: _objectSpread(_objectSpread({}, style), {}, {
@@ -7066,22 +7175,16 @@ function FilterPanel(_ref) {
7066
7175
  top: visible ? perfectPosition.y : 0,
7067
7176
  opacity: visible ? 1 : 0
7068
7177
  }),
7178
+ onMouseDown: handleMouseDown,
7069
7179
  ref: ref
7070
7180
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_10___default.a.createElement("div", {
7071
7181
  className: 'popup-header'
7072
7182
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_10___default.a.createElement("span", {
7073
7183
  className: 'popup-header-icon'
7074
- }, filterIcon || /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_10___default.a.createElement("svg", {
7075
- width: 14,
7076
- height: 14,
7077
- viewBox: "64 64 896 896",
7078
- focusable: "false",
7079
- "data-icon": "filter",
7080
- fill: "currentColor",
7081
- "aria-hidden": "true"
7082
- }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_10___default.a.createElement("path", {
7083
- d: "M349 838c0 17.7 14.2 32 31.8 32h262.4c17.6 0 31.8-14.3 31.8-32V642H349v196zm531.1-684H143.9c-24.5 0-39.8 26.7-27.5 48l221.3 376h348.8l221.3-376c12.1-21.3-3.2-48-27.7-48z"
7084
- })))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_10___default.a.createElement("div", {
7184
+ }, filterIcon || /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_10___default.a.createElement(_DefaultFilterIcon__WEBPACK_IMPORTED_MODULE_13__["default"], {
7185
+ width: 12,
7186
+ height: 12
7187
+ }))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_10___default.a.createElement("div", {
7085
7188
  className: "popup-body"
7086
7189
  }, children));
7087
7190
  }
@@ -7147,7 +7250,7 @@ var DEFAULT_FILTER_OPTIONS = [{
7147
7250
  data = data + '';
7148
7251
  }
7149
7252
 
7150
- return data.includes(value);
7253
+ return data.includes(value[0]);
7151
7254
  };
7152
7255
  }
7153
7256
  }, {
@@ -7163,7 +7266,7 @@ var DEFAULT_FILTER_OPTIONS = [{
7163
7266
  data = data + '';
7164
7267
  }
7165
7268
 
7166
- return !data.includes(value);
7269
+ return !data.includes(value[0]);
7167
7270
  };
7168
7271
  }
7169
7272
  }, {
@@ -7171,7 +7274,7 @@ var DEFAULT_FILTER_OPTIONS = [{
7171
7274
  key: 'equal',
7172
7275
  filter: function filter(value) {
7173
7276
  return function (data) {
7174
- return value !== data;
7277
+ return value[0] === data;
7175
7278
  };
7176
7279
  }
7177
7280
  }, {
@@ -7179,7 +7282,7 @@ var DEFAULT_FILTER_OPTIONS = [{
7179
7282
  key: 'notEqual',
7180
7283
  filter: function filter(value) {
7181
7284
  return function (data) {
7182
- return value !== data;
7285
+ return value[0] !== data;
7183
7286
  };
7184
7287
  }
7185
7288
  }, {
@@ -7201,13 +7304,83 @@ var DEFAULT_FILTER_OPTIONS = [{
7201
7304
  }];
7202
7305
 
7203
7306
 
7307
+ /***/ }),
7308
+
7309
+ /***/ "./components/table/pipeline/features/footerDataSource.ts":
7310
+ /*!****************************************************************!*\
7311
+ !*** ./components/table/pipeline/features/footerDataSource.ts ***!
7312
+ \****************************************************************/
7313
+ /*! exports provided: footerRowMetaSymbol, footerDataSource */
7314
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
7315
+
7316
+ "use strict";
7317
+ __webpack_require__.r(__webpack_exports__);
7318
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "footerRowMetaSymbol", function() { return footerRowMetaSymbol; });
7319
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "footerDataSource", function() { return footerDataSource; });
7320
+ /* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/@babel/runtime/helpers/defineProperty.js");
7321
+ /* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__);
7322
+ /* harmony import */ var core_js_modules_es_symbol_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! core-js/modules/es.symbol.js */ "./node_modules/core-js/modules/es.symbol.js");
7323
+ /* harmony import */ var core_js_modules_es_symbol_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_symbol_js__WEBPACK_IMPORTED_MODULE_1__);
7324
+ /* harmony import */ var core_js_modules_es_symbol_description_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! core-js/modules/es.symbol.description.js */ "./node_modules/core-js/modules/es.symbol.description.js");
7325
+ /* harmony import */ var core_js_modules_es_symbol_description_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_symbol_description_js__WEBPACK_IMPORTED_MODULE_2__);
7326
+ /* harmony import */ var core_js_modules_es_object_to_string_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! core-js/modules/es.object.to-string.js */ "./node_modules/core-js/modules/es.object.to-string.js");
7327
+ /* harmony import */ var core_js_modules_es_object_to_string_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_to_string_js__WEBPACK_IMPORTED_MODULE_3__);
7328
+ /* harmony import */ var core_js_modules_es_array_map_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! core-js/modules/es.array.map.js */ "./node_modules/core-js/modules/es.array.map.js");
7329
+ /* harmony import */ var core_js_modules_es_array_map_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_map_js__WEBPACK_IMPORTED_MODULE_4__);
7330
+ /* harmony import */ var core_js_modules_es_object_keys_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! core-js/modules/es.object.keys.js */ "./node_modules/core-js/modules/es.object.keys.js");
7331
+ /* harmony import */ var core_js_modules_es_object_keys_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_keys_js__WEBPACK_IMPORTED_MODULE_5__);
7332
+ /* harmony import */ var core_js_modules_es_array_filter_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! core-js/modules/es.array.filter.js */ "./node_modules/core-js/modules/es.array.filter.js");
7333
+ /* harmony import */ var core_js_modules_es_array_filter_js__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_filter_js__WEBPACK_IMPORTED_MODULE_6__);
7334
+ /* harmony import */ var core_js_modules_es_object_get_own_property_descriptor_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! core-js/modules/es.object.get-own-property-descriptor.js */ "./node_modules/core-js/modules/es.object.get-own-property-descriptor.js");
7335
+ /* harmony import */ var core_js_modules_es_object_get_own_property_descriptor_js__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_get_own_property_descriptor_js__WEBPACK_IMPORTED_MODULE_7__);
7336
+ /* harmony import */ var core_js_modules_web_dom_collections_for_each_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! core-js/modules/web.dom-collections.for-each.js */ "./node_modules/core-js/modules/web.dom-collections.for-each.js");
7337
+ /* harmony import */ var core_js_modules_web_dom_collections_for_each_js__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_web_dom_collections_for_each_js__WEBPACK_IMPORTED_MODULE_8__);
7338
+ /* harmony import */ var core_js_modules_es_object_get_own_property_descriptors_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! core-js/modules/es.object.get-own-property-descriptors.js */ "./node_modules/core-js/modules/es.object.get-own-property-descriptors.js");
7339
+ /* harmony import */ var core_js_modules_es_object_get_own_property_descriptors_js__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_get_own_property_descriptors_js__WEBPACK_IMPORTED_MODULE_9__);
7340
+
7341
+
7342
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
7343
+
7344
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
7345
+
7346
+
7347
+
7348
+
7349
+
7350
+
7351
+
7352
+
7353
+
7354
+
7355
+ var footerRowMetaSymbol = Symbol('footer-row');
7356
+ function footerDataSource() {
7357
+ var opts = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
7358
+ return function footerDataSourceStep(pipeline) {
7359
+ var _opts$dataSource, _opts$footerRowMetaKe;
7360
+
7361
+ var footerDataSource = (_opts$dataSource = opts.dataSource) !== null && _opts$dataSource !== void 0 ? _opts$dataSource : pipeline.getFooterDataSource();
7362
+ var footerRowMetaKey = (_opts$footerRowMetaKe = opts.footerRowMetaKey) !== null && _opts$footerRowMetaKe !== void 0 ? _opts$footerRowMetaKe : footerRowMetaSymbol;
7363
+ pipeline.setFeatureOptions('footerRowMetaKey', footerRowMetaKey);
7364
+
7365
+ if (footerDataSource) {
7366
+ pipeline.footerDataSource(footerDataSource.map(function (row) {
7367
+ return _objectSpread(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()({}, footerRowMetaKey, true), row);
7368
+ }));
7369
+ } else {
7370
+ console.warn('调用 pipeline.use(features.footerDataSource()) 前请先设置页脚数据源,设置方法有:pipeline.use(features.footerDataSource({dataSource:any[]})) 或者 pipeline.footerDataSource(any[])');
7371
+ }
7372
+
7373
+ return pipeline;
7374
+ };
7375
+ }
7376
+
7204
7377
  /***/ }),
7205
7378
 
7206
7379
  /***/ "./components/table/pipeline/features/index.ts":
7207
7380
  /*!*****************************************************!*\
7208
7381
  !*** ./components/table/pipeline/features/index.ts ***!
7209
7382
  \*****************************************************/
7210
- /*! exports provided: autoRowSpan, buildTree, columnHover, ColumnHoverFeatureOptions, columnRangeHover, ColumnRangeHoverFeatureOptions, multiSelect, MultiSelectFeatureOptions, rowDetail, RowDetailFeatureOptions, rowGrouping, RowGroupingFeatureOptions, singleSelect, SingleSelectFeatureOptions, sort, SortFeatureOptions, tips, treeMode, TreeModeFeatureOptions, treeMetaSymbol, treeSelect, TreeSelectFeatureOptions, columnDrag, ColumnDragOptions, columnResize, ColumnResizeOptions, contextMenu, ContextMenuFeatureOptions, filter, FilterFeatureOptions, rangeSelection, RangeSelectionFeatureOptions */
7383
+ /*! exports provided: autoRowSpan, buildTree, columnHover, ColumnHoverFeatureOptions, columnRangeHover, ColumnRangeHoverFeatureOptions, multiSelect, MultiSelectFeatureOptions, rowDetail, RowDetailFeatureOptions, rowGrouping, RowGroupingFeatureOptions, singleSelect, SingleSelectFeatureOptions, sort, SortFeatureOptions, tips, treeMode, TreeModeFeatureOptions, treeMetaSymbol, treeSelect, TreeSelectFeatureOptions, columnDrag, ColumnDragOptions, columnResize, ColumnResizeOptions, contextMenu, ContextMenuFeatureOptions, filter, FilterFeatureOptions, rangeSelection, RangeSelectionFeatureOptions, mergeCellHover, footerDataSource, FooterDataSourceFeatureOptions, footerRowMetaSymbol */
7211
7384
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
7212
7385
 
7213
7386
  "use strict";
@@ -7293,10 +7466,65 @@ __webpack_require__.r(__webpack_exports__);
7293
7466
 
7294
7467
  /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "RangeSelectionFeatureOptions", function() { return _rangeSelection__WEBPACK_IMPORTED_MODULE_16__["RangeSelectionFeatureOptions"]; });
7295
7468
 
7469
+ /* harmony import */ var _mergeCellHover__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ./mergeCellHover */ "./components/table/pipeline/features/mergeCellHover.tsx");
7470
+ /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "mergeCellHover", function() { return _mergeCellHover__WEBPACK_IMPORTED_MODULE_17__["mergeCellHover"]; });
7471
+
7472
+ /* harmony import */ var _footerDataSource__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ./footerDataSource */ "./components/table/pipeline/features/footerDataSource.ts");
7473
+ /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "footerDataSource", function() { return _footerDataSource__WEBPACK_IMPORTED_MODULE_18__["footerDataSource"]; });
7474
+
7475
+ /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "FooterDataSourceFeatureOptions", function() { return _footerDataSource__WEBPACK_IMPORTED_MODULE_18__["FooterDataSourceFeatureOptions"]; });
7476
+
7477
+ /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "footerRowMetaSymbol", function() { return _footerDataSource__WEBPACK_IMPORTED_MODULE_18__["footerRowMetaSymbol"]; });
7478
+
7479
+
7480
+
7481
+
7482
+
7483
+
7484
+
7485
+
7486
+
7487
+
7488
+
7489
+
7490
+
7491
+
7492
+
7493
+
7494
+
7296
7495
 
7297
7496
 
7298
7497
 
7299
7498
 
7499
+ /***/ }),
7500
+
7501
+ /***/ "./components/table/pipeline/features/mergeCellHover.tsx":
7502
+ /*!***************************************************************!*\
7503
+ !*** ./components/table/pipeline/features/mergeCellHover.tsx ***!
7504
+ \***************************************************************/
7505
+ /*! exports provided: mergeCellHover */
7506
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
7507
+
7508
+ "use strict";
7509
+ __webpack_require__.r(__webpack_exports__);
7510
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "mergeCellHover", function() { return mergeCellHover; });
7511
+ /* harmony import */ var core_js_modules_es_object_keys_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! core-js/modules/es.object.keys.js */ "./node_modules/core-js/modules/es.object.keys.js");
7512
+ /* harmony import */ var core_js_modules_es_object_keys_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_keys_js__WEBPACK_IMPORTED_MODULE_0__);
7513
+ /* harmony import */ var core_js_modules_es_symbol_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! core-js/modules/es.symbol.js */ "./node_modules/core-js/modules/es.symbol.js");
7514
+ /* harmony import */ var core_js_modules_es_symbol_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_symbol_js__WEBPACK_IMPORTED_MODULE_1__);
7515
+ /* harmony import */ var core_js_modules_es_array_filter_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! core-js/modules/es.array.filter.js */ "./node_modules/core-js/modules/es.array.filter.js");
7516
+ /* harmony import */ var core_js_modules_es_array_filter_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_filter_js__WEBPACK_IMPORTED_MODULE_2__);
7517
+ /* harmony import */ var core_js_modules_es_object_get_own_property_descriptor_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! core-js/modules/es.object.get-own-property-descriptor.js */ "./node_modules/core-js/modules/es.object.get-own-property-descriptor.js");
7518
+ /* harmony import */ var core_js_modules_es_object_get_own_property_descriptor_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_get_own_property_descriptor_js__WEBPACK_IMPORTED_MODULE_3__);
7519
+ /* harmony import */ var core_js_modules_es_object_get_own_property_descriptors_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! core-js/modules/es.object.get-own-property-descriptors.js */ "./node_modules/core-js/modules/es.object.get-own-property-descriptors.js");
7520
+ /* harmony import */ var core_js_modules_es_object_get_own_property_descriptors_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_get_own_property_descriptors_js__WEBPACK_IMPORTED_MODULE_4__);
7521
+ /* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/@babel/runtime/helpers/defineProperty.js");
7522
+ /* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_5__);
7523
+ /* harmony import */ var core_js_modules_es_object_to_string_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! core-js/modules/es.object.to-string.js */ "./node_modules/core-js/modules/es.object.to-string.js");
7524
+ /* 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__);
7525
+ /* 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");
7526
+ /* 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__);
7527
+ /* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../utils */ "./components/table/utils/index.tsx");
7300
7528
 
7301
7529
 
7302
7530
 
@@ -7306,10 +7534,41 @@ __webpack_require__.r(__webpack_exports__);
7306
7534
 
7307
7535
 
7308
7536
 
7537
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
7309
7538
 
7539
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_5___default()(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
7310
7540
 
7311
7541
 
7542
+ function mergeCellHover() {
7543
+ return function (pipeline) {
7544
+ return pipeline.mapColumns(Object(_utils__WEBPACK_IMPORTED_MODULE_8__["makeRecursiveMapper"])(function (col) {
7545
+ if (!Object(_utils__WEBPACK_IMPORTED_MODULE_8__["isLeafNode"])(col)) {
7546
+ return col;
7547
+ }
7312
7548
 
7549
+ var prevGetCellProps = col.getCellProps;
7550
+ return _objectSpread(_objectSpread({}, col), {}, {
7551
+ getCellProps: function getCellProps(value, record, rowIndex) {
7552
+ var prevCellProps = prevGetCellProps === null || prevGetCellProps === void 0 ? void 0 : prevGetCellProps(value, record, rowIndex);
7553
+ return Object(_utils__WEBPACK_IMPORTED_MODULE_8__["mergeCellProps"])(prevCellProps, {
7554
+ onMouseEnter: function onMouseEnter(e) {
7555
+ var InRangeRow = pipeline.ref.current.domHelper.getInRangeRowByCellEvent(e);
7556
+ InRangeRow.forEach(function (row) {
7557
+ row.classList.add('row-hover');
7558
+ });
7559
+ },
7560
+ onMouseLeave: function onMouseLeave(e) {
7561
+ var InRangeRow = pipeline.ref.current.domHelper.getInRangeRowByCellEvent(e);
7562
+ InRangeRow.forEach(function (row) {
7563
+ row.classList.remove('row-hover');
7564
+ });
7565
+ }
7566
+ });
7567
+ }
7568
+ });
7569
+ }));
7570
+ };
7571
+ }
7313
7572
 
7314
7573
  /***/ }),
7315
7574
 
@@ -7417,7 +7676,8 @@ function multiSelect() {
7417
7676
  /** 所有有效的 keys(disable 状态为 false) */
7418
7677
 
7419
7678
  var allKeys = [];
7420
- dataSource.forEach(function (row, rowIndex) {
7679
+ var flatDataSource = Object(_utils__WEBPACK_IMPORTED_MODULE_17__["collectNodes"])(dataSource);
7680
+ flatDataSource.forEach(function (row, rowIndex) {
7421
7681
  var rowKey = _internals__WEBPACK_IMPORTED_MODULE_15__["internals"].safeGetRowKey(primaryKey, row, rowIndex);
7422
7682
  fullKeySet.add(rowKey); // 在 allKeys 中排除被禁用的 key
7423
7683
 
@@ -7483,6 +7743,10 @@ function multiSelect() {
7483
7743
  return Object(_utils__WEBPACK_IMPORTED_MODULE_17__["mergeCellProps"])(preCellProps, checkboxCellProps);
7484
7744
  },
7485
7745
  render: function render(_, row, rowIndex) {
7746
+ if (row[pipeline.getFeatureOptions('footerRowMetaKey')]) {
7747
+ return null;
7748
+ }
7749
+
7486
7750
  var key = _internals__WEBPACK_IMPORTED_MODULE_15__["internals"].safeGetRowKey(primaryKey, row, rowIndex);
7487
7751
  var checked = set.has(key);
7488
7752
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default.a.createElement(Checkbox, {
@@ -7591,13 +7855,13 @@ function multiSelect() {
7591
7855
  /*!***************************************************************!*\
7592
7856
  !*** ./components/table/pipeline/features/rangeSelection.tsx ***!
7593
7857
  \***************************************************************/
7594
- /*! exports provided: rangeSelectionKey, lastClickCell, rangeSelection */
7858
+ /*! exports provided: rangeSelectionKey, lastClickCellKey, rangeSelection */
7595
7859
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
7596
7860
 
7597
7861
  "use strict";
7598
7862
  __webpack_require__.r(__webpack_exports__);
7599
7863
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "rangeSelectionKey", function() { return rangeSelectionKey; });
7600
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "lastClickCell", function() { return lastClickCell; });
7864
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "lastClickCellKey", function() { return lastClickCellKey; });
7601
7865
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "rangeSelection", function() { return rangeSelection; });
7602
7866
  /* harmony import */ var core_js_modules_es_object_keys_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! core-js/modules/es.object.keys.js */ "./node_modules/core-js/modules/es.object.keys.js");
7603
7867
  /* harmony import */ var core_js_modules_es_object_keys_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_keys_js__WEBPACK_IMPORTED_MODULE_0__);
@@ -7651,40 +7915,42 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va
7651
7915
 
7652
7916
 
7653
7917
  var rangeSelectionKey = 'rangeSelection';
7654
- var lastClickCell = 'lastClickCell';
7918
+ var lastClickCellKey = 'lastClickCell';
7655
7919
  function rangeSelection(opts) {
7656
7920
  return function step(pipeline) {
7657
7921
  var SCROLL_SIZE = 30;
7658
7922
  var tableBody = pipeline.ref.current.domHelper && pipeline.ref.current.domHelper.tableBody;
7923
+ var tableFooter = pipeline.ref.current.domHelper && pipeline.ref.current.domHelper.tableFooter;
7659
7924
 
7660
7925
  if (!tableBody) {
7661
7926
  return pipeline;
7662
7927
  }
7663
7928
 
7664
7929
  var columns = pipeline.getColumns();
7930
+ var dataSource = pipeline.getDataSource();
7665
7931
 
7666
7932
  var rangeSelectedChange = function rangeSelectedChange(rangeSelection) {
7667
7933
  var _opts$rangeSelectedCh;
7668
7934
 
7669
7935
  pipeline.setStateAtKey(rangeSelectionKey, rangeSelection);
7670
7936
  opts === null || opts === void 0 ? void 0 : (_opts$rangeSelectedCh = opts.rangeSelectedChange) === null || _opts$rangeSelectedCh === void 0 ? void 0 : _opts$rangeSelectedCh.call(opts, rangeSelection);
7671
- }; // if (!pipeline.getFeatureOptions(rangeSelectionKey)) {
7672
- // pipeline.setFeatureOptions(rangeSelectionKey, {
7673
- // optionKey: rangeSelectionKey,
7674
- // rangeSelectedChange: rangeSelectedChange
7675
- // })
7676
- // }
7677
-
7937
+ };
7678
7938
 
7679
7939
  var setRangeSelection = function setRangeSelection(startDragCell, draggingCell) {
7680
- if (!startDragCell || !draggingCell || isSameCell(startDragCell, draggingCell)) return;
7940
+ if (!startDragCell || !draggingCell) return;
7681
7941
  var rangeColumns = getRangeColumns(startDragCell, draggingCell, columns);
7682
- var isTopToBottom = startDragCell.rowIndex <= draggingCell.rowIndex;
7942
+
7943
+ var _getRangeSelectionRow = getRangeSelectionRowInfo(startDragCell, draggingCell, dataSource),
7944
+ startRow = _getRangeSelectionRow.startRow,
7945
+ endRow = _getRangeSelectionRow.endRow,
7946
+ footerRowRange = _getRangeSelectionRow.footerRowRange;
7947
+
7683
7948
  var rangeSelection = {
7684
- startRow: isTopToBottom ? startDragCell.rowIndex : startDragCell.rowIndex + startDragCell.rowSpan - 1,
7685
- endRow: isTopToBottom ? draggingCell.rowIndex + draggingCell.rowSpan - 1 : draggingCell.rowIndex,
7949
+ startRow: startRow,
7950
+ endRow: endRow,
7686
7951
  columns: rangeColumns,
7687
- startColumn: startDragCell.column
7952
+ startColumn: startDragCell.column,
7953
+ footerRowRange: footerRowRange
7688
7954
  };
7689
7955
  rangeSelectedChange(rangeSelection);
7690
7956
  };
@@ -7695,23 +7961,23 @@ function rangeSelection(opts) {
7695
7961
 
7696
7962
  if (clickCell) {
7697
7963
  if (event.shiftKey) {
7698
- var _lastClickCell = pipeline.getStateAtKey(lastClickCell);
7964
+ var _lastClickCell = pipeline.getStateAtKey(lastClickCellKey);
7699
7965
 
7700
7966
  if (_lastClickCell) {
7701
7967
  setRangeSelection(_lastClickCell, clickCell);
7702
7968
  } else {
7703
7969
  // 第一次进来就按住shift键,这时候要记住点击的单元格
7704
- pipeline.setStateAtKey(lastClickCell, clickCell);
7970
+ pipeline.setStateAtKey(lastClickCellKey, clickCell);
7705
7971
  }
7706
7972
  } else {
7707
- pipeline.setStateAtKey(lastClickCell, clickCell);
7708
- rangeSelectedChange(null);
7973
+ pipeline.setStateAtKey(lastClickCellKey, clickCell);
7974
+ setRangeSelection(clickCell, clickCell);
7709
7975
  }
7710
7976
  }
7711
7977
  };
7712
7978
 
7713
7979
  var onMouseDown = function onMouseDown(mouseDownEvent) {
7714
- if (mouseDownEvent.button !== 0 || !Object(_utils__WEBPACK_IMPORTED_MODULE_11__["isElementInEventPath"])(tableBody, mouseDownEvent.nativeEvent)) return; // mouseDownEvent.preventDefault()
7980
+ if (mouseDownEvent.button !== 0 || !(Object(_utils__WEBPACK_IMPORTED_MODULE_11__["isElementInEventPath"])(tableBody, mouseDownEvent.nativeEvent) || Object(_utils__WEBPACK_IMPORTED_MODULE_11__["isElementInEventPath"])(tableFooter, mouseDownEvent.nativeEvent))) return; // mouseDownEvent.preventDefault()
7715
7981
  // shift + 点击选中
7716
7982
 
7717
7983
  shiftKeySelect(mouseDownEvent);
@@ -7767,10 +8033,11 @@ function rangeSelection(opts) {
7767
8033
  };
7768
8034
 
7769
8035
  var onKeyDown = function onKeyDown(e) {
7770
- if (!Object(_utils__WEBPACK_IMPORTED_MODULE_11__["isElementInEventPath"])(tableBody, e.nativeEvent)) return;
8036
+ if (!(Object(_utils__WEBPACK_IMPORTED_MODULE_11__["isElementInEventPath"])(tableBody, e.nativeEvent) || Object(_utils__WEBPACK_IMPORTED_MODULE_11__["isElementInEventPath"])(tableFooter, e.nativeEvent))) return;
7771
8037
 
7772
8038
  if ((e.ctrlKey || e.metaKey) && e.key === 'a') {
7773
8039
  var rowLen = pipeline.getDataSource().length;
8040
+ var footerDataSource = pipeline.getFooterDataSource() || [];
7774
8041
 
7775
8042
  if (columns.length && rowLen) {
7776
8043
  opts.preventkDefaultOfKeyDownEvent !== false && e.preventDefault();
@@ -7778,7 +8045,11 @@ function rangeSelection(opts) {
7778
8045
  startRow: 0,
7779
8046
  endRow: rowLen - 1,
7780
8047
  columns: columns,
7781
- startColumn: columns[0]
8048
+ startColumn: columns[0],
8049
+ footerRowRange: footerDataSource.length > 0 ? {
8050
+ startRow: 0,
8051
+ endRow: footerDataSource.length - 1
8052
+ } : null
7782
8053
  });
7783
8054
  }
7784
8055
  }
@@ -7787,7 +8058,8 @@ function rangeSelection(opts) {
7787
8058
  pipeline.addTableProps({
7788
8059
  onMouseDown: onMouseDown,
7789
8060
  onKeyDown: onKeyDown,
7790
- tabIndex: -1
8061
+ tabIndex: -1,
8062
+ className: classnames__WEBPACK_IMPORTED_MODULE_16___default()([_base_styles__WEBPACK_IMPORTED_MODULE_15__["Classes"].rangeSelection])
7791
8063
  }); // todo: 后面可以把mousedown放到一个流里面
7792
8064
 
7793
8065
  return pipeline.mapColumns(Object(_utils__WEBPACK_IMPORTED_MODULE_11__["makeRecursiveMapper"])(function (col) {
@@ -7801,15 +8073,29 @@ function rangeSelection(opts) {
7801
8073
  var _cx;
7802
8074
 
7803
8075
  var prevCellProps = prevGetCellProps === null || prevGetCellProps === void 0 ? void 0 : prevGetCellProps(value, record, rowIndex);
8076
+ var isInFooter = record[pipeline.getFeatureOptions('footerRowMetaKey')];
7804
8077
  var startRow = rangeSelection.startRow,
7805
8078
  endRow = rangeSelection.endRow,
7806
- columns = rangeSelection.columns;
7807
- var startIndex = startRow < endRow ? startRow : endRow;
7808
- var endIndex = startRow < endRow ? endRow : startRow;
8079
+ columns = rangeSelection.columns,
8080
+ footerRowRange = rangeSelection.footerRowRange;
8081
+
8082
+ var _getRowIndex = getRowIndex(startRow, endRow),
8083
+ startRowIndex = _getRowIndex.startRowIndex,
8084
+ endRowIndex = _getRowIndex.endRowIndex;
8085
+
8086
+ var _getFooterRowIndex = getFooterRowIndex(footerRowRange),
8087
+ footerStartRowIndex = _getFooterRowIndex.startRowIndex,
8088
+ footerEndRowIndex = _getFooterRowIndex.endRowIndex;
8089
+
7809
8090
  var startCol = columns[0];
7810
8091
  var endCol = columns[columns.length - 1];
7811
- var match = rowIndex >= startIndex && rowIndex <= endIndex;
7812
- var className = classnames__WEBPACK_IMPORTED_MODULE_16___default()((_cx = {}, _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_8___default()(_cx, _base_styles__WEBPACK_IMPORTED_MODULE_15__["Classes"].tableCellRangeSelected, match), _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_8___default()(_cx, _base_styles__WEBPACK_IMPORTED_MODULE_15__["Classes"].tableCellRangeTop, rowIndex === startIndex), _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_8___default()(_cx, _base_styles__WEBPACK_IMPORTED_MODULE_15__["Classes"].tableCellRangeLeft, col.code === startCol.code && match), _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_8___default()(_cx, _base_styles__WEBPACK_IMPORTED_MODULE_15__["Classes"].tableCellRangeBottom, rowIndex === endIndex), _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_8___default()(_cx, _base_styles__WEBPACK_IMPORTED_MODULE_15__["Classes"].tableCellRangeRight, col.code === endCol.code && match), _cx));
8092
+ var bodyMatch = !isInFooter && rowIndex >= startRowIndex && rowIndex <= endRowIndex;
8093
+ var footerMatch = isInFooter && footerRowRange && rowIndex >= footerStartRowIndex && rowIndex <= footerEndRowIndex;
8094
+ var match = footerMatch || bodyMatch;
8095
+ var matchSingleCell = match && isCellRangeSingleCell(rangeSelection); // 单个范围选中单元格不显示样式
8096
+
8097
+ var showCellRangeStyle = match && !matchSingleCell;
8098
+ var className = classnames__WEBPACK_IMPORTED_MODULE_16___default()((_cx = {}, _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_8___default()(_cx, _base_styles__WEBPACK_IMPORTED_MODULE_15__["Classes"].tableCellRangeSingleCell, matchSingleCell), _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_8___default()(_cx, _base_styles__WEBPACK_IMPORTED_MODULE_15__["Classes"].tableCellRangeSelected, showCellRangeStyle), _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_8___default()(_cx, _base_styles__WEBPACK_IMPORTED_MODULE_15__["Classes"].tableCellRangeTop, showCellRangeStyle && (isInFooter ? startRowIndex !== -1 ? false : rowIndex === footerStartRowIndex : rowIndex === startRowIndex)), _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_8___default()(_cx, _base_styles__WEBPACK_IMPORTED_MODULE_15__["Classes"].tableCellRangeLeft, showCellRangeStyle && col.code === startCol.code), _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_8___default()(_cx, _base_styles__WEBPACK_IMPORTED_MODULE_15__["Classes"].tableCellRangeBottom, showCellRangeStyle && (isInFooter ? rowIndex === footerEndRowIndex : footerRowRange ? false : rowIndex === endRowIndex)), _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_8___default()(_cx, _base_styles__WEBPACK_IMPORTED_MODULE_15__["Classes"].tableCellRangeRight, showCellRangeStyle && col.code === endCol.code), _cx));
7813
8099
  return Object(_utils__WEBPACK_IMPORTED_MODULE_11__["mergeCellProps"])(prevCellProps, {
7814
8100
  className: className
7815
8101
  });
@@ -7835,7 +8121,8 @@ function getTargetCell(target, columns) {
7835
8121
  rowIndex: parseInt(target.getAttribute('data-rowindex')),
7836
8122
  rowSpan: parseInt(target.getAttribute('rowspan') || 1),
7837
8123
  code: columnCode,
7838
- column: column
8124
+ column: column,
8125
+ isInFooter: isEleInFooter(target)
7839
8126
  }
7840
8127
  };
7841
8128
  }();
@@ -7850,7 +8137,19 @@ function getTargetCell(target, columns) {
7850
8137
  }
7851
8138
 
7852
8139
  function isSameCell(cell1, cell2) {
7853
- return cell1.rowIndex === cell2.rowIndex && cell1.code === cell2.code;
8140
+ return cell1.rowIndex === cell2.rowIndex && cell1.code === cell2.code && cell1.isInFooter === cell2.isInFooter;
8141
+ }
8142
+
8143
+ function isEleInFooter(target) {
8144
+ while (target && !target.classList.contains(_base_styles__WEBPACK_IMPORTED_MODULE_15__["Classes"].artTable)) {
8145
+ if (target.classList.contains(_base_styles__WEBPACK_IMPORTED_MODULE_15__["Classes"].tableFooter)) {
8146
+ return true;
8147
+ }
8148
+
8149
+ target = target.parentElement;
8150
+ }
8151
+
8152
+ return false;
7854
8153
  }
7855
8154
 
7856
8155
  function getRangeColumns(startCell, endCell, columns) {
@@ -7869,6 +8168,99 @@ function getRangeColumns(startCell, endCell, columns) {
7869
8168
  }
7870
8169
  }
7871
8170
 
8171
+ function getRangeSelectionRowInfo(startCell, endCell, dataSource) {
8172
+ var footerRowRange = null;
8173
+ var startRow = -1;
8174
+ var endRow = -1;
8175
+
8176
+ var _getCellRangeRow = getCellRangeRow(startCell, endCell),
8177
+ _startRow = _getCellRangeRow.startRow,
8178
+ _endRow = _getCellRangeRow.endRow; // 两个单元格都在表体
8179
+
8180
+
8181
+ if (!startCell.isInFooter && !endCell.isInFooter) {
8182
+ startRow = _startRow;
8183
+ endRow = _endRow;
8184
+ } else if (startCell.isInFooter && endCell.isInFooter) {
8185
+ // 两个单元格都在表底
8186
+ footerRowRange = {
8187
+ startRow: _startRow,
8188
+ endRow: _endRow
8189
+ };
8190
+ } else {
8191
+ // 一个单元格在表体,一个在表底
8192
+ if (startCell.isInFooter) {
8193
+ startRow = dataSource.length - 1;
8194
+ endRow = endCell.rowIndex;
8195
+ footerRowRange = {
8196
+ startRow: startCell.rowIndex,
8197
+ endRow: 0
8198
+ };
8199
+ } else {
8200
+ startRow = startCell.rowIndex;
8201
+ endRow = dataSource.length - 1;
8202
+ footerRowRange = {
8203
+ startRow: 0,
8204
+ endRow: endCell.rowIndex
8205
+ };
8206
+ }
8207
+ }
8208
+
8209
+ return {
8210
+ startRow: startRow,
8211
+ endRow: endRow,
8212
+ footerRowRange: footerRowRange
8213
+ };
8214
+ }
8215
+
8216
+ function getCellRangeRow(startCell, endCell) {
8217
+ if (isSameCell(startCell, endCell)) {
8218
+ return {
8219
+ startRow: startCell.rowIndex,
8220
+ endRow: startCell.rowIndex
8221
+ };
8222
+ }
8223
+
8224
+ var isTopToBottom = startCell.rowIndex <= endCell.rowIndex;
8225
+ var startRow = isTopToBottom ? startCell.rowIndex : startCell.rowIndex + startCell.rowSpan - 1;
8226
+ var endRow = isTopToBottom ? endCell.rowIndex + endCell.rowSpan - 1 : endCell.rowIndex;
8227
+ return {
8228
+ startRow: startRow,
8229
+ endRow: endRow
8230
+ };
8231
+ }
8232
+
8233
+ function isCellRangeSingleCell(rangeSelection) {
8234
+ var startRow = rangeSelection.startRow,
8235
+ endRow = rangeSelection.endRow,
8236
+ columns = rangeSelection.columns,
8237
+ footerRowRange = rangeSelection.footerRowRange;
8238
+ var isBodySingleCell = !footerRowRange && startRow === endRow && columns.length === 1;
8239
+ var isFooterSingleCell = startRow === -1 && footerRowRange.startRow === footerRowRange.endRow && columns.length === 1;
8240
+ return isBodySingleCell || isFooterSingleCell;
8241
+ }
8242
+
8243
+ function getRowIndex(startRow, endRow) {
8244
+ var isReverse = startRow > endRow;
8245
+ var startRowIndex = isReverse ? endRow : startRow;
8246
+ var endRowIndex = isReverse ? startRow : endRow;
8247
+ return {
8248
+ startRowIndex: startRowIndex,
8249
+ endRowIndex: endRowIndex
8250
+ };
8251
+ }
8252
+
8253
+ function getFooterRowIndex(footerRowRange) {
8254
+ if (footerRowRange) {
8255
+ return getRowIndex(footerRowRange.startRow, footerRowRange.endRow);
8256
+ }
8257
+
8258
+ return {
8259
+ startRowIndex: -1,
8260
+ endRowIndex: -1
8261
+ };
8262
+ }
8263
+
7872
8264
  /***/ }),
7873
8265
 
7874
8266
  /***/ "./components/table/pipeline/features/rowDetail.tsx":
@@ -8593,6 +8985,10 @@ function singleSelect() {
8593
8985
  return preCellProps;
8594
8986
  },
8595
8987
  render: function render(_, row, rowIndex) {
8988
+ if (row[pipeline.getFeatureOptions('footerRowMetaKey')]) {
8989
+ return null;
8990
+ }
8991
+
8596
8992
  var rowKey = _internals__WEBPACK_IMPORTED_MODULE_10__["internals"].safeGetRowKey(primaryKey, row, rowIndex);
8597
8993
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_9___default.a.createElement(Radio, {
8598
8994
  checked: value === rowKey,
@@ -9181,24 +9577,24 @@ function tips() {
9181
9577
  __webpack_require__.r(__webpack_exports__);
9182
9578
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "treeMetaSymbol", function() { return treeMetaSymbol; });
9183
9579
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "treeMode", function() { return treeMode; });
9184
- /* harmony import */ var core_js_modules_es_function_name_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! core-js/modules/es.function.name.js */ "./node_modules/core-js/modules/es.function.name.js");
9185
- /* harmony import */ var core_js_modules_es_function_name_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_function_name_js__WEBPACK_IMPORTED_MODULE_0__);
9186
- /* harmony import */ var core_js_modules_es_array_from_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! core-js/modules/es.array.from.js */ "./node_modules/core-js/modules/es.array.from.js");
9187
- /* harmony import */ var core_js_modules_es_array_from_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_from_js__WEBPACK_IMPORTED_MODULE_1__);
9188
- /* harmony import */ var core_js_modules_es_regexp_exec_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! core-js/modules/es.regexp.exec.js */ "./node_modules/core-js/modules/es.regexp.exec.js");
9189
- /* harmony import */ var core_js_modules_es_regexp_exec_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_regexp_exec_js__WEBPACK_IMPORTED_MODULE_2__);
9190
- /* harmony import */ var core_js_modules_es_symbol_iterator_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! core-js/modules/es.symbol.iterator.js */ "./node_modules/core-js/modules/es.symbol.iterator.js");
9191
- /* harmony import */ var core_js_modules_es_symbol_iterator_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_symbol_iterator_js__WEBPACK_IMPORTED_MODULE_3__);
9192
- /* harmony import */ var core_js_modules_es_object_keys_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! core-js/modules/es.object.keys.js */ "./node_modules/core-js/modules/es.object.keys.js");
9193
- /* harmony import */ var core_js_modules_es_object_keys_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_keys_js__WEBPACK_IMPORTED_MODULE_4__);
9194
- /* harmony import */ var core_js_modules_es_object_get_own_property_descriptor_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! core-js/modules/es.object.get-own-property-descriptor.js */ "./node_modules/core-js/modules/es.object.get-own-property-descriptor.js");
9195
- /* harmony import */ var core_js_modules_es_object_get_own_property_descriptor_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_get_own_property_descriptor_js__WEBPACK_IMPORTED_MODULE_5__);
9196
- /* harmony import */ var core_js_modules_web_dom_collections_for_each_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! core-js/modules/web.dom-collections.for-each.js */ "./node_modules/core-js/modules/web.dom-collections.for-each.js");
9197
- /* harmony import */ var core_js_modules_web_dom_collections_for_each_js__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_web_dom_collections_for_each_js__WEBPACK_IMPORTED_MODULE_6__);
9198
- /* harmony import */ var core_js_modules_es_object_get_own_property_descriptors_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! core-js/modules/es.object.get-own-property-descriptors.js */ "./node_modules/core-js/modules/es.object.get-own-property-descriptors.js");
9199
- /* harmony import */ var core_js_modules_es_object_get_own_property_descriptors_js__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_get_own_property_descriptors_js__WEBPACK_IMPORTED_MODULE_7__);
9200
- /* harmony import */ var _babel_runtime_helpers_toArray__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! @babel/runtime/helpers/toArray */ "./node_modules/@babel/runtime/helpers/toArray.js");
9201
- /* harmony import */ var _babel_runtime_helpers_toArray__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_toArray__WEBPACK_IMPORTED_MODULE_8__);
9580
+ /* harmony import */ var core_js_modules_es_array_slice_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! core-js/modules/es.array.slice.js */ "./node_modules/core-js/modules/es.array.slice.js");
9581
+ /* harmony import */ var core_js_modules_es_array_slice_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_slice_js__WEBPACK_IMPORTED_MODULE_0__);
9582
+ /* harmony import */ var core_js_modules_es_function_name_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! core-js/modules/es.function.name.js */ "./node_modules/core-js/modules/es.function.name.js");
9583
+ /* harmony import */ var core_js_modules_es_function_name_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_function_name_js__WEBPACK_IMPORTED_MODULE_1__);
9584
+ /* harmony import */ var core_js_modules_es_array_from_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! core-js/modules/es.array.from.js */ "./node_modules/core-js/modules/es.array.from.js");
9585
+ /* harmony import */ var core_js_modules_es_array_from_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_from_js__WEBPACK_IMPORTED_MODULE_2__);
9586
+ /* harmony import */ var core_js_modules_es_regexp_exec_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! core-js/modules/es.regexp.exec.js */ "./node_modules/core-js/modules/es.regexp.exec.js");
9587
+ /* harmony import */ var core_js_modules_es_regexp_exec_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_regexp_exec_js__WEBPACK_IMPORTED_MODULE_3__);
9588
+ /* harmony import */ var core_js_modules_es_symbol_iterator_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! core-js/modules/es.symbol.iterator.js */ "./node_modules/core-js/modules/es.symbol.iterator.js");
9589
+ /* harmony import */ var core_js_modules_es_symbol_iterator_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_symbol_iterator_js__WEBPACK_IMPORTED_MODULE_4__);
9590
+ /* harmony import */ var core_js_modules_es_object_keys_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! core-js/modules/es.object.keys.js */ "./node_modules/core-js/modules/es.object.keys.js");
9591
+ /* harmony import */ var core_js_modules_es_object_keys_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_keys_js__WEBPACK_IMPORTED_MODULE_5__);
9592
+ /* harmony import */ var core_js_modules_es_object_get_own_property_descriptor_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! core-js/modules/es.object.get-own-property-descriptor.js */ "./node_modules/core-js/modules/es.object.get-own-property-descriptor.js");
9593
+ /* harmony import */ var core_js_modules_es_object_get_own_property_descriptor_js__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_get_own_property_descriptor_js__WEBPACK_IMPORTED_MODULE_6__);
9594
+ /* 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");
9595
+ /* 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__);
9596
+ /* harmony import */ var core_js_modules_es_object_get_own_property_descriptors_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! core-js/modules/es.object.get-own-property-descriptors.js */ "./node_modules/core-js/modules/es.object.get-own-property-descriptors.js");
9597
+ /* harmony import */ var core_js_modules_es_object_get_own_property_descriptors_js__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_get_own_property_descriptors_js__WEBPACK_IMPORTED_MODULE_8__);
9202
9598
  /* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/@babel/runtime/helpers/defineProperty.js");
9203
9599
  /* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_9__);
9204
9600
  /* harmony import */ var _babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ "./node_modules/@babel/runtime/helpers/toConsumableArray.js");
@@ -9221,8 +9617,8 @@ __webpack_require__.r(__webpack_exports__);
9221
9617
  /* harmony import */ var core_js_modules_es_array_filter_js__WEBPACK_IMPORTED_MODULE_18___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_filter_js__WEBPACK_IMPORTED_MODULE_18__);
9222
9618
  /* harmony import */ var core_js_modules_es_array_concat_js__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! core-js/modules/es.array.concat.js */ "./node_modules/core-js/modules/es.array.concat.js");
9223
9619
  /* harmony import */ var core_js_modules_es_array_concat_js__WEBPACK_IMPORTED_MODULE_19___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_concat_js__WEBPACK_IMPORTED_MODULE_19__);
9224
- /* harmony import */ var core_js_modules_es_array_slice_js__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! core-js/modules/es.array.slice.js */ "./node_modules/core-js/modules/es.array.slice.js");
9225
- /* harmony import */ var core_js_modules_es_array_slice_js__WEBPACK_IMPORTED_MODULE_20___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_slice_js__WEBPACK_IMPORTED_MODULE_20__);
9620
+ /* harmony import */ var core_js_modules_es_array_find_index_js__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! core-js/modules/es.array.find-index.js */ "./node_modules/core-js/modules/es.array.find-index.js");
9621
+ /* harmony import */ var core_js_modules_es_array_find_index_js__WEBPACK_IMPORTED_MODULE_20___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_find_index_js__WEBPACK_IMPORTED_MODULE_20__);
9226
9622
  /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! classnames */ "./node_modules/classnames/index.js");
9227
9623
  /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_21___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_21__);
9228
9624
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! react */ "react");
@@ -9278,11 +9674,6 @@ function treeMode() {
9278
9674
  var stateKey = 'treeMode';
9279
9675
  var ctx = pipeline.ctx;
9280
9676
  var primaryKey = pipeline.ensurePrimaryKey('treeMode');
9281
-
9282
- if (typeof primaryKey !== 'string') {
9283
- throw new Error('treeMode 仅支持字符串作为 primaryKey');
9284
- }
9285
-
9286
9677
  var openKeys = (_ref = (_ref2 = (_opts$openKeys = opts.openKeys) !== null && _opts$openKeys !== void 0 ? _opts$openKeys : pipeline.getStateAtKey(stateKey)) !== null && _ref2 !== void 0 ? _ref2 : opts.defaultOpenKeys) !== null && _ref !== void 0 ? _ref : [];
9287
9678
  var openKeySet = new Set(openKeys);
9288
9679
 
@@ -9335,7 +9726,7 @@ function treeMode() {
9335
9726
  try {
9336
9727
  for (_iterator.s(); !(_step = _iterator.n()).done;) {
9337
9728
  var _node = _step.value;
9338
- var rowKey = _node[primaryKey];
9729
+ var rowKey = _internals__WEBPACK_IMPORTED_MODULE_24__["internals"].safeGetRowKey(primaryKey, _node, -1);
9339
9730
  var expanded = openKeySet.has(rowKey);
9340
9731
  var isLeaf = isLeafNode(_node, {
9341
9732
  depth: depth,
@@ -9369,12 +9760,15 @@ function treeMode() {
9369
9760
  return columns;
9370
9761
  }
9371
9762
 
9372
- var _columns = _babel_runtime_helpers_toArray__WEBPACK_IMPORTED_MODULE_8___default()(columns),
9373
- firstCol = _columns[0],
9374
- others = _columns.slice(1);
9763
+ var expandColIndex = columns.findIndex(function (_ref3) {
9764
+ var code = _ref3.code;
9765
+ return code && opts.expandColCode === code;
9766
+ });
9767
+ expandColIndex = expandColIndex === -1 ? 0 : expandColIndex;
9768
+ var expandCol = columns[expandColIndex];
9375
9769
 
9376
9770
  var render = function render(value, record, recordIndex) {
9377
- var content = _internals__WEBPACK_IMPORTED_MODULE_24__["internals"].safeRender(firstCol, record, recordIndex);
9771
+ var content = _internals__WEBPACK_IMPORTED_MODULE_24__["internals"].safeRender(expandCol, record, recordIndex);
9378
9772
 
9379
9773
  if (record[treeMetaKey] == null) {
9380
9774
  // 没有 treeMeta 信息的话,就返回原先的渲染结果
@@ -9434,7 +9828,7 @@ function treeMode() {
9434
9828
  };
9435
9829
 
9436
9830
  var getCellProps = function getCellProps(value, record, rowIndex) {
9437
- var prevProps = _internals__WEBPACK_IMPORTED_MODULE_24__["internals"].safeGetCellProps(firstCol, record, rowIndex);
9831
+ var prevProps = _internals__WEBPACK_IMPORTED_MODULE_24__["internals"].safeGetCellProps(expandCol, record, rowIndex);
9438
9832
 
9439
9833
  if (record[treeMetaKey] == null) {
9440
9834
  // 没有 treeMeta 信息的话,就返回原先的 cellProps
@@ -9463,15 +9857,16 @@ function treeMode() {
9463
9857
  });
9464
9858
  };
9465
9859
 
9466
- return [_objectSpread(_objectSpread({}, firstCol), {}, {
9860
+ columns[expandColIndex] = _objectSpread(_objectSpread({}, expandCol), {}, {
9467
9861
  title: /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_22___default.a.createElement("span", {
9468
9862
  style: {
9469
9863
  marginLeft: iconIndent + iconWidth + iconGap
9470
9864
  }
9471
- }, _internals__WEBPACK_IMPORTED_MODULE_24__["internals"].safeRenderHeader(firstCol)),
9865
+ }, _internals__WEBPACK_IMPORTED_MODULE_24__["internals"].safeRenderHeader(expandCol)),
9472
9866
  render: render,
9473
- getCellProps: clickArea === 'cell' ? getCellProps : firstCol.getCellProps
9474
- })].concat(_babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_10___default()(others));
9867
+ getCellProps: clickArea === 'cell' ? getCellProps : expandCol.getCellProps
9868
+ });
9869
+ return _babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_10___default()(columns);
9475
9870
  }
9476
9871
  };
9477
9872
  }
@@ -9743,6 +10138,7 @@ __webpack_require__.r(__webpack_exports__);
9743
10138
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_15___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_15__);
9744
10139
  /* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../utils */ "./components/table/utils/index.tsx");
9745
10140
  /* harmony import */ var _features_autoFill__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ./features/autoFill */ "./components/table/pipeline/features/autoFill.tsx");
10141
+ /* harmony import */ var _features_rangeSelection__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ./features/rangeSelection */ "./components/table/pipeline/features/rangeSelection.tsx");
9746
10142
 
9747
10143
 
9748
10144
 
@@ -9767,6 +10163,7 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va
9767
10163
 
9768
10164
 
9769
10165
 
10166
+
9770
10167
  /**
9771
10168
  * 表格数据处理流水线。TablePipeline 提供了表格数据处理过程中的一些上下方与工具方法,包括……
9772
10169
  *
@@ -10047,19 +10444,19 @@ var TablePipeline = /*#__PURE__*/function () {
10047
10444
 
10048
10445
  result.setTableDomHelper = function (domHelper) {
10049
10446
  _this2.ref.current.domHelper = domHelper;
10050
- }; // if (this.getFeatureOptions(rangeSelectionKey)) {
10051
- // result.clearRangeSelectionStatus = () => {
10052
- // const { rangeSelectedChange } = this.getFeatureOptions(rangeSelectionKey)
10053
- // const rangeSelection = this.getStateAtKey(rangeSelectionKey)
10054
- // if (rangeSelection) {
10055
- // rangeSelectedChange?.(null)
10056
- // }
10057
- // }
10058
- // }
10059
-
10447
+ };
10060
10448
 
10061
10449
  return result;
10062
10450
  }
10451
+ /**
10452
+ * 清除范围选中内容
10453
+ */
10454
+
10455
+ }, {
10456
+ key: "clearRangeSelection",
10457
+ value: function clearRangeSelection() {
10458
+ this.setStateAtKey(_features_rangeSelection__WEBPACK_IMPORTED_MODULE_18__["rangeSelectionKey"], null);
10459
+ }
10063
10460
  }]);
10064
10461
 
10065
10462
  return TablePipeline;