@kdcloudjs/table 1.1.4 → 1.1.5-canary.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (83) hide show
  1. package/dist/@kdcloudjs/table.css +1 -1
  2. package/dist/@kdcloudjs/table.js +860 -310
  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 +10 -9
  6. package/dist/@kdcloudjs/table.min.js.map +1 -1
  7. package/es/table/base/html-table.js +1 -1
  8. package/es/table/base/styles.d.ts +11 -2
  9. package/es/table/base/styles.js +18 -7
  10. package/es/table/base/table.d.ts +2 -0
  11. package/es/table/base/table.js +32 -54
  12. package/es/table/base/utils.d.ts +7 -0
  13. package/es/table/base/utils.js +36 -2
  14. package/es/table/pipeline/features/colGroupExtendable.d.ts +6 -0
  15. package/es/table/pipeline/features/colGroupExtendable.js +103 -0
  16. package/es/table/pipeline/features/columnDrag.js +5 -4
  17. package/es/table/pipeline/features/columnFilter.d.ts +4 -2
  18. package/es/table/pipeline/features/columnFilter.js +39 -19
  19. package/es/table/pipeline/features/columnResizeWidth.js +1 -1
  20. package/es/table/pipeline/features/filter/DefaultFilterContent.js +22 -2
  21. package/es/table/pipeline/features/filter/DefaultFilterIcon.d.ts +5 -0
  22. package/es/table/pipeline/features/filter/DefaultFilterIcon.js +20 -0
  23. package/es/table/pipeline/features/filter/Filter.d.ts +3 -2
  24. package/es/table/pipeline/features/filter/Filter.js +54 -35
  25. package/es/table/pipeline/features/filter/FilterPanel.d.ts +2 -1
  26. package/es/table/pipeline/features/filter/FilterPanel.js +40 -21
  27. package/es/table/pipeline/features/filter/util.js +4 -4
  28. package/es/table/pipeline/features/footerDataSource.d.ts +9 -0
  29. package/es/table/pipeline/features/footerDataSource.js +25 -0
  30. package/es/table/pipeline/features/index.d.ts +2 -0
  31. package/es/table/pipeline/features/index.js +3 -1
  32. package/es/table/pipeline/features/multiSelect.js +7 -2
  33. package/es/table/pipeline/features/rangeSelection.d.ts +1 -1
  34. package/es/table/pipeline/features/rangeSelection.js +170 -30
  35. package/es/table/pipeline/features/singleSelect.js +4 -0
  36. package/es/table/pipeline/features/treeMode.d.ts +2 -0
  37. package/es/table/pipeline/features/treeMode.js +20 -21
  38. package/es/table/pipeline/pipeline.d.ts +5 -1
  39. package/es/table/pipeline/pipeline.js +11 -10
  40. package/es/table/utils/element.d.ts +1 -0
  41. package/es/table/utils/element.js +4 -0
  42. package/es/table/utils/keyCode.d.ts +5 -0
  43. package/es/table/utils/keyCode.js +5 -0
  44. package/es/table/utils/mergeCellProps.js +2 -6
  45. package/lib/table/base/html-table.js +1 -1
  46. package/lib/table/base/styles.d.ts +11 -2
  47. package/lib/table/base/styles.js +18 -7
  48. package/lib/table/base/table.d.ts +2 -0
  49. package/lib/table/base/table.js +32 -54
  50. package/lib/table/base/utils.d.ts +7 -0
  51. package/lib/table/base/utils.js +43 -2
  52. package/lib/table/pipeline/features/colGroupExtendable.d.ts +6 -0
  53. package/lib/table/pipeline/features/colGroupExtendable.js +124 -0
  54. package/lib/table/pipeline/features/columnDrag.js +5 -4
  55. package/lib/table/pipeline/features/columnFilter.d.ts +4 -2
  56. package/lib/table/pipeline/features/columnFilter.js +37 -19
  57. package/lib/table/pipeline/features/columnResizeWidth.js +1 -1
  58. package/lib/table/pipeline/features/filter/DefaultFilterContent.js +23 -1
  59. package/lib/table/pipeline/features/filter/DefaultFilterIcon.d.ts +5 -0
  60. package/lib/table/pipeline/features/filter/DefaultFilterIcon.js +30 -0
  61. package/lib/table/pipeline/features/filter/Filter.d.ts +3 -2
  62. package/lib/table/pipeline/features/filter/Filter.js +57 -35
  63. package/lib/table/pipeline/features/filter/FilterPanel.d.ts +2 -1
  64. package/lib/table/pipeline/features/filter/FilterPanel.js +42 -20
  65. package/lib/table/pipeline/features/filter/util.js +4 -4
  66. package/lib/table/pipeline/features/footerDataSource.d.ts +9 -0
  67. package/lib/table/pipeline/features/footerDataSource.js +41 -0
  68. package/lib/table/pipeline/features/index.d.ts +2 -0
  69. package/lib/table/pipeline/features/index.js +23 -1
  70. package/lib/table/pipeline/features/multiSelect.js +6 -1
  71. package/lib/table/pipeline/features/rangeSelection.d.ts +1 -1
  72. package/lib/table/pipeline/features/rangeSelection.js +173 -32
  73. package/lib/table/pipeline/features/singleSelect.js +4 -0
  74. package/lib/table/pipeline/features/treeMode.d.ts +2 -0
  75. package/lib/table/pipeline/features/treeMode.js +21 -23
  76. package/lib/table/pipeline/pipeline.d.ts +5 -1
  77. package/lib/table/pipeline/pipeline.js +12 -10
  78. package/lib/table/utils/element.d.ts +1 -0
  79. package/lib/table/utils/element.js +6 -0
  80. package/lib/table/utils/keyCode.d.ts +5 -0
  81. package/lib/table/utils/keyCode.js +12 -0
  82. package/lib/table/utils/mergeCellProps.js +2 -6
  83. package/package.json +3 -3
@@ -1,6 +1,6 @@
1
1
  /*!
2
2
  *
3
- * @kdcloudjs/table v1.1.3
3
+ * @kdcloudjs/table v1.1.4-canary.2
4
4
  *
5
5
  * Copyright 2020-present, Kingdee, Inc.
6
6
  * All rights reserved.
@@ -2664,7 +2664,7 @@ function HtmlTable(_ref) {
2664
2664
  positionStyle.left = hozInfo.stickyLeftMap.get(colIndex);
2665
2665
  } else if (colIndex >= fullFlatCount - rightFlatCount) {
2666
2666
  positionStyle.position = 'sticky';
2667
- positionStyle.right = hozInfo.stickyRightMap.get(colIndex) - stickyRightOffset;
2667
+ positionStyle.right = hozInfo.stickyRightMap.get(colIndex) - (typeof stickyRightOffset === 'number' ? stickyRightOffset : 0);
2668
2668
  }
2669
2669
 
2670
2670
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default.a.createElement('td', _objectSpread(_objectSpread(_objectSpread({
@@ -3235,7 +3235,7 @@ __webpack_require__.r(__webpack_exports__);
3235
3235
  /* harmony import */ var styled_components__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! styled-components */ "./node_modules/styled-components/dist/styled-components.browser.esm.js");
3236
3236
 
3237
3237
 
3238
- var _templateObject, _templateObject2, _templateObject3;
3238
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5;
3239
3239
 
3240
3240
 
3241
3241
 
@@ -3246,6 +3246,7 @@ var prefix = 'kd-';
3246
3246
  var Classes = {
3247
3247
  /** BaseTable 表格组件的外层包裹 div */
3248
3248
  artTableWrapper: "".concat(prefix, "table-wrapper"),
3249
+ artTableBordered: "".concat(prefix, "table-bordered"),
3249
3250
  artTable: "".concat(prefix, "table"),
3250
3251
  tableHeaderMain: "".concat(prefix, "table-header-main"),
3251
3252
  tableHeader: "".concat(prefix, "table-header"),
@@ -3286,9 +3287,12 @@ var Classes = {
3286
3287
  tableHeaderCellLine: "".concat(prefix, "table-header-cell-line"),
3287
3288
  tableFilterTrigger: "".concat(prefix, "filter-trigger"),
3288
3289
  tableSortIcon: "".concat(prefix, "sort-icon"),
3290
+ tableExtendIcon: "".concat(prefix, "extend-icon"),
3289
3291
  button: "".concat(prefix, "btn"),
3290
3292
  buttonPrimary: "".concat(prefix, "btn-primary"),
3291
3293
  filterIcon: "".concat(prefix, "filter-icon"),
3294
+ rangeSelection: "".concat(prefix, "range-selection"),
3295
+ tableCellRangeSingleCell: "".concat(prefix, "table-cell-range-single-cell"),
3292
3296
  tableCellRangeSelected: "".concat(prefix, "table-cell-range-selected"),
3293
3297
  tableCellRangeTop: "".concat(prefix, "table-cell-range-top"),
3294
3298
  tableCellRangeLeft: "".concat(prefix, "table-cell-range-left"),
@@ -3308,7 +3312,10 @@ var Classes = {
3308
3312
  rowSpan: "".concat(prefix, "row-span"),
3309
3313
  leaf: "".concat(prefix, "leaf"),
3310
3314
  expanded: "".concat(prefix, "expanded"),
3311
- collapsed: "".concat(prefix, "collapsed")
3315
+ collapsed: "".concat(prefix, "collapsed"),
3316
+ popup: "".concat(prefix, "popup"),
3317
+ popupHeader: "".concat(prefix, "popup-header"),
3318
+ popupBody: "".concat(prefix, "popup-body")
3312
3319
  };
3313
3320
  var MenuClasses = {
3314
3321
  menu: "".concat(prefix, "table-menu"),
@@ -3327,7 +3334,7 @@ var Z = {
3327
3334
  scrollItem: 30,
3328
3335
  loadingIndicator: 40
3329
3336
  };
3330
- var outerBorderStyleMixin = Object(styled_components__WEBPACK_IMPORTED_MODULE_4__["css"])(_templateObject || (_templateObject = _babel_runtime_helpers_taggedTemplateLiteral__WEBPACK_IMPORTED_MODULE_0___default()(["\n border-top: 1px solid #cccccc;\n border-right: 1px solid #cccccc;\n border-bottom: 1px solid #cccccc;\n border-left: 1px solid #cccccc;\n\n td.", ",\n th.", " {\n border-left: none;\n }\n td.", ",\n th.", " {\n --border-right: none;\n }\n\n thead tr.", " th,\n tbody tr.", " td {\n border-top: none;\n }\n &.has-footer tfoot tr.", " td {\n border-bottom: none;\n }\n &:not(.has-footer) tbody tr.", " td {\n border-bottom: none;\n }\n td.", ":not(.", "){\n border-left: var(---cell-border-vertical);\n }\n td.", ":not(.", "){\n border-right: var(---cell-border-vertical);\n }\n"])), Classes.first, Classes.first, Classes.last, Classes.last, Classes.first, Classes.first, Classes.last, Classes.last, Classes.rowSpan, Classes.first, Classes.rowSpan, Classes.last);
3337
+ var outerBorderStyleMixin = Object(styled_components__WEBPACK_IMPORTED_MODULE_4__["css"])(_templateObject || (_templateObject = _babel_runtime_helpers_taggedTemplateLiteral__WEBPACK_IMPORTED_MODULE_0___default()(["\n border-top: 1px solid #cccccc;\n border-right: 1px solid #cccccc;\n border-bottom: 1px solid #cccccc;\n border-left: 1px solid #cccccc;\n\n td.", ",\n th.", " {\n border-left: none;\n }\n td.", ",\n th.", " {\n border-right: none;\n }\n\n thead tr.", " th,\n tbody tr.", " td {\n border-top: none;\n }\n &.has-footer tfoot tr.", " td {\n border-bottom: none;\n }\n &:not(.has-footer) tbody tr.", " td {\n border-bottom: none;\n }\n td.", ":not(.", "){\n border-left: var(---cell-border-vertical);\n }\n td.", ":not(.", "){\n border-right: var(---cell-border-vertical);\n }\n"])), Classes.first, Classes.first, Classes.last, Classes.last, Classes.first, Classes.first, Classes.last, Classes.last, Classes.rowSpan, Classes.first, Classes.rowSpan, Classes.last);
3331
3338
  var defaultCSSVariables = {
3332
3339
  '--row-height': '48px',
3333
3340
  '--color': '#333',
@@ -3337,7 +3344,7 @@ var defaultCSSVariables = {
3337
3344
  '--primary-color': '#5582F3',
3338
3345
  '--primary-color-level1': 'rgb(242, 248, 255)',
3339
3346
  '--primary-color-level2': 'rgb(135, 173, 255)',
3340
- '--icon-color': '#bfbfbf',
3347
+ '--icon-color': '#666666',
3341
3348
  '--strong-border-color': '#d9d9d9',
3342
3349
  '--header-row-height': '32px',
3343
3350
  '--header-color': '#333',
@@ -3353,11 +3360,15 @@ var defaultCSSVariables = {
3353
3360
  '--cell-border-horizontal': '1px solid #dfe3e8',
3354
3361
  '---cell-border-vertical': '1px solid #dfe3e8',
3355
3362
  '--header-cell-border': '1px solid #dfe3e8',
3356
- '--header-cell-border-horizontal': '1px solid #dfe3e8'
3363
+ '--cell-border-vertical': '1px solid #dfe3e8',
3364
+ '--header-cell-border-horizontal': '1px solid #dfe3e8',
3365
+ '--header-cell-border-vertical': '1px solid #dfe3e8'
3357
3366
  };
3358
3367
  var variableConst = getCssVariableText(defaultCSSVariables);
3359
- 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 // \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: 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);
3360
- 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);
3368
+ var notBorderedStyleMixin = Object(styled_components__WEBPACK_IMPORTED_MODULE_4__["css"])(_templateObject2 || (_templateObject2 = _babel_runtime_helpers_taggedTemplateLiteral__WEBPACK_IMPORTED_MODULE_0___default()(["\n --cell-border-vertical: none;\n --header-cell-border-vertical: none;\n"])));
3369
+ var borderedStyleMixin = Object(styled_components__WEBPACK_IMPORTED_MODULE_4__["css"])(_templateObject3 || (_templateObject3 = _babel_runtime_helpers_taggedTemplateLiteral__WEBPACK_IMPORTED_MODULE_0___default()(["\n //th\u9690\u85CF\u5217\u5BBD\u62D6\u62FD\u7684\u80CC\u666F\u8272\uFF0C\u4F7F\u7528th\u7684\u53F3\u8FB9\u6846\u4EE3\u66FF\n .", "::after{\n background-color: inherit;\n }\n"])), Classes.tableHeaderCellResize);
3370
+ var StyledArtTableWrapper = styled_components__WEBPACK_IMPORTED_MODULE_4__["default"].div(_templateObject4 || (_templateObject4 = _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 // \u8868\u683C\u4E0D\u542F\u7528\u8FB9\u6846\u7EBF\uFF0C\u9690\u85CFth\u3001td\u7684\u5355\u5143\u683C\u5DE6\u53F3\u8FB9\u6846\u7EBF\n &:not(.", ") {\n ", "\n }\n &.", "{\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: var(--header-cell-border-vertical)\n }\n\n th.", " {\n border-right: var(--header-cell-border-vertical);\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 &:focus {\n outline: none\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 .", " {\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\n //#region \u62D6\u62FD\u5217\u5BBD\u5927\u5C0F\n .", "::after{\n background-color: var(--border-color);\n }\n //#endregion\n\n "])), variableConst, variableConst, outerBorderStyleMixin, Classes.artTableBordered, notBorderedStyleMixin, Classes.artTableBordered, borderedStyleMixin, 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.tableSortIcon, Classes.tableExtendIcon, Classes.verticalScrollPlaceholder, Classes.tableFooter, Classes.verticalScrollPlaceholder, Classes.tableHeaderCellResize);
3371
+ var ButtonCSS = Object(styled_components__WEBPACK_IMPORTED_MODULE_4__["css"])(_templateObject5 || (_templateObject5 = _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);
3361
3372
 
3362
3373
  function getCssVariableText(obj) {
3363
3374
  return Object.keys(obj).reduce(function (acc, key) {
@@ -3400,22 +3411,22 @@ __webpack_require__.r(__webpack_exports__);
3400
3411
  /* harmony import */ var core_js_modules_web_dom_collections_iterator_js__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_web_dom_collections_iterator_js__WEBPACK_IMPORTED_MODULE_9__);
3401
3412
  /* harmony import */ var _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "./node_modules/@babel/runtime/helpers/slicedToArray.js");
3402
3413
  /* harmony import */ var _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_10__);
3403
- /* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/@babel/runtime/helpers/classCallCheck.js");
3404
- /* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_11___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_11__);
3405
- /* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/@babel/runtime/helpers/createClass.js");
3406
- /* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_12___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_12__);
3407
- /* harmony import */ var _babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! @babel/runtime/helpers/assertThisInitialized */ "./node_modules/@babel/runtime/helpers/assertThisInitialized.js");
3408
- /* harmony import */ var _babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_13___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_13__);
3409
- /* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! @babel/runtime/helpers/inherits */ "./node_modules/@babel/runtime/helpers/inherits.js");
3410
- /* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_14___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_14__);
3411
- /* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "./node_modules/@babel/runtime/helpers/possibleConstructorReturn.js");
3412
- /* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_15___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_15__);
3413
- /* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "./node_modules/@babel/runtime/helpers/getPrototypeOf.js");
3414
- /* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_16___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_16__);
3415
- /* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/@babel/runtime/helpers/defineProperty.js");
3416
- /* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_17___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_17__);
3417
- /* harmony import */ var _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! @babel/runtime/helpers/extends */ "./node_modules/@babel/runtime/helpers/extends.js");
3418
- /* harmony import */ var _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_18___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_18__);
3414
+ /* harmony import */ var _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! @babel/runtime/helpers/extends */ "./node_modules/@babel/runtime/helpers/extends.js");
3415
+ /* harmony import */ var _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_11___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_11__);
3416
+ /* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/@babel/runtime/helpers/classCallCheck.js");
3417
+ /* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_12___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_12__);
3418
+ /* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/@babel/runtime/helpers/createClass.js");
3419
+ /* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_13___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_13__);
3420
+ /* harmony import */ var _babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! @babel/runtime/helpers/assertThisInitialized */ "./node_modules/@babel/runtime/helpers/assertThisInitialized.js");
3421
+ /* harmony import */ var _babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_14___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_14__);
3422
+ /* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! @babel/runtime/helpers/inherits */ "./node_modules/@babel/runtime/helpers/inherits.js");
3423
+ /* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_15___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_15__);
3424
+ /* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "./node_modules/@babel/runtime/helpers/possibleConstructorReturn.js");
3425
+ /* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_16___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_16__);
3426
+ /* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "./node_modules/@babel/runtime/helpers/getPrototypeOf.js");
3427
+ /* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_17___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_17__);
3428
+ /* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/@babel/runtime/helpers/defineProperty.js");
3429
+ /* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_18___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_18__);
3419
3430
  /* harmony import */ var core_js_modules_es_object_to_string_js__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! core-js/modules/es.object.to-string.js */ "./node_modules/core-js/modules/es.object.to-string.js");
3420
3431
  /* harmony import */ var core_js_modules_es_object_to_string_js__WEBPACK_IMPORTED_MODULE_19___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_to_string_js__WEBPACK_IMPORTED_MODULE_19__);
3421
3432
  /* harmony import */ var core_js_modules_web_dom_collections_for_each_js__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! core-js/modules/web.dom-collections.for-each.js */ "./node_modules/core-js/modules/web.dom-collections.for-each.js");
@@ -3446,9 +3457,8 @@ __webpack_require__.r(__webpack_exports__);
3446
3457
  /* harmony import */ var _loading__WEBPACK_IMPORTED_MODULE_37__ = __webpack_require__(/*! ./loading */ "./components/table/base/loading.tsx");
3447
3458
  /* harmony import */ var _styles__WEBPACK_IMPORTED_MODULE_38__ = __webpack_require__(/*! ./styles */ "./components/table/base/styles.ts");
3448
3459
  /* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_39__ = __webpack_require__(/*! ./utils */ "./components/table/base/utils.tsx");
3449
- /* harmony import */ var css_vars_ponyfill__WEBPACK_IMPORTED_MODULE_40__ = __webpack_require__(/*! css-vars-ponyfill */ "./node_modules/css-vars-ponyfill/dist/css-vars-ponyfill.esm.js");
3450
- /* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_41__ = __webpack_require__(/*! ../utils */ "./components/table/utils/index.tsx");
3451
- /* harmony import */ var _renderTemplates__WEBPACK_IMPORTED_MODULE_42__ = __webpack_require__(/*! ./renderTemplates */ "./components/table/base/renderTemplates.tsx");
3460
+ /* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_40__ = __webpack_require__(/*! ../utils */ "./components/table/utils/index.tsx");
3461
+ /* harmony import */ var _renderTemplates__WEBPACK_IMPORTED_MODULE_41__ = __webpack_require__(/*! ./renderTemplates */ "./components/table/base/renderTemplates.tsx");
3452
3462
 
3453
3463
 
3454
3464
 
@@ -3483,7 +3493,7 @@ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len
3483
3493
 
3484
3494
 
3485
3495
 
3486
- function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_16___default()(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_16___default()(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_15___default()(this, result); }; }
3496
+ function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_17___default()(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_17___default()(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_16___default()(this, result); }; }
3487
3497
 
3488
3498
  function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
3489
3499
 
@@ -3503,75 +3513,48 @@ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Re
3503
3513
 
3504
3514
 
3505
3515
 
3506
-
3507
-
3508
- var cssPolifill = function cssPolifill(_ref) {
3509
- var variables = _ref.variables,
3510
- enableCSSVariables = _ref.enableCSSVariables;
3511
-
3512
- // const style = document.createElement('style')
3513
- // style.type = 'text/css'
3514
- // style.innerHTML = '.aaa{ --color: red; }'
3515
- // document.getElementsByTagName('head').item(0).appendChild(style)
3516
- // const variableNames = variableConst.match(/--.*?(?=:)/g)
3517
- // variables = variableNames.map((name) => rootElement.style[name])
3518
- if (enableCSSVariables === false) {
3519
- return;
3520
- }
3521
-
3522
- Object(css_vars_ponyfill__WEBPACK_IMPORTED_MODULE_40__["default"])({
3523
- // exclude: 'link[href*="semantic-ui"]',
3524
- // onlyLegacy: false,
3525
- // rootElement: rootElement,
3526
- include: 'style[data-styled]',
3527
- variables: _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_18___default()({}, _styles__WEBPACK_IMPORTED_MODULE_38__["defaultCSSVariables"], variables),
3528
- watch: true,
3529
- silent: true
3530
- });
3531
- };
3532
-
3533
3516
  var propsDotEmptyContentDeprecatedWarned = false;
3534
3517
 
3535
3518
  function warnPropsDotEmptyContentIsDeprecated() {
3536
3519
  if (!propsDotEmptyContentDeprecatedWarned) {
3537
3520
  propsDotEmptyContentDeprecatedWarned = true;
3538
- _utils__WEBPACK_IMPORTED_MODULE_41__["console"].warn('BaseTable props.emptyContent 已经过时,请使用 props.components.EmptyContent 来自定义数据为空时的表格表现');
3521
+ _utils__WEBPACK_IMPORTED_MODULE_40__["console"].warn('BaseTable props.emptyContent 已经过时,请使用 props.components.EmptyContent 来自定义数据为空时的表格表现');
3539
3522
  }
3540
3523
  }
3541
3524
 
3542
3525
  var BaseTable = /*#__PURE__*/function (_React$Component) {
3543
- _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_14___default()(BaseTable, _React$Component);
3526
+ _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_15___default()(BaseTable, _React$Component);
3544
3527
 
3545
3528
  var _super = _createSuper(BaseTable);
3546
3529
 
3547
3530
  function BaseTable(props) {
3548
3531
  var _this;
3549
3532
 
3550
- _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_11___default()(this, BaseTable);
3533
+ _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_12___default()(this, BaseTable);
3551
3534
 
3552
3535
  _this = _super.call(this, props);
3553
3536
 
3554
- _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_17___default()(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_13___default()(_this), "rowHeightManager", Object(_helpers_rowHeightManager__WEBPACK_IMPORTED_MODULE_34__["makeRowHeightManager"])(_this.props.dataSource.length, _this.props.estimatedRowHeight));
3537
+ _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_18___default()(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_14___default()(_this), "rowHeightManager", Object(_helpers_rowHeightManager__WEBPACK_IMPORTED_MODULE_34__["makeRowHeightManager"])(_this.props.dataSource.length, _this.props.estimatedRowHeight));
3555
3538
 
3556
- _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_17___default()(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_13___default()(_this), "artTableWrapperRef", /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_27___default.a.createRef());
3539
+ _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_18___default()(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_14___default()(_this), "artTableWrapperRef", /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_27___default.a.createRef());
3557
3540
 
3558
- _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_17___default()(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_13___default()(_this), "domHelper", void 0);
3541
+ _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_18___default()(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_14___default()(_this), "domHelper", void 0);
3559
3542
 
3560
- _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_17___default()(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_13___default()(_this), "rootSubscription", new rxjs__WEBPACK_IMPORTED_MODULE_28__["Subscription"]());
3543
+ _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_18___default()(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_14___default()(_this), "rootSubscription", new rxjs__WEBPACK_IMPORTED_MODULE_28__["Subscription"]());
3561
3544
 
3562
- _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_17___default()(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_13___default()(_this), "lastInfo", void 0);
3545
+ _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_18___default()(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_14___default()(_this), "lastInfo", void 0);
3563
3546
 
3564
- _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_17___default()(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_13___default()(_this), "props$", void 0);
3547
+ _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_18___default()(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_14___default()(_this), "props$", void 0);
3565
3548
 
3566
- _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_17___default()(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_13___default()(_this), "hasScrollY", false);
3549
+ _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_18___default()(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_14___default()(_this), "hasScrollY", false);
3567
3550
 
3568
- _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_17___default()(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_13___default()(_this), "resizeObserver", void 0);
3551
+ _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_18___default()(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_14___default()(_this), "resizeObserver", void 0);
3569
3552
 
3570
- _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_17___default()(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_13___default()(_this), "resizeSubject", new rxjs__WEBPACK_IMPORTED_MODULE_28__["Subject"]());
3553
+ _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_18___default()(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_14___default()(_this), "resizeSubject", new rxjs__WEBPACK_IMPORTED_MODULE_28__["Subject"]());
3571
3554
 
3572
- _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_17___default()(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_13___default()(_this), "offsetY", 0);
3555
+ _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_18___default()(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_14___default()(_this), "offsetY", 0);
3573
3556
 
3574
- _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_17___default()(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_13___default()(_this), "handleRowMouseEnter", function (e) {
3557
+ _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_18___default()(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_14___default()(_this), "handleRowMouseEnter", function (e) {
3575
3558
  var nodeList = _this.domHelper.getRowNodeListByEvent(e);
3576
3559
 
3577
3560
  nodeList && nodeList.forEach(function (node) {
@@ -3579,7 +3562,7 @@ var BaseTable = /*#__PURE__*/function (_React$Component) {
3579
3562
  });
3580
3563
  });
3581
3564
 
3582
- _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_17___default()(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_13___default()(_this), "handleRowMouseLeave", function (e) {
3565
+ _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_18___default()(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_14___default()(_this), "handleRowMouseLeave", function (e) {
3583
3566
  var nodeList = _this.domHelper.getRowNodeListByEvent(e);
3584
3567
 
3585
3568
  nodeList && nodeList.forEach(function (node) {
@@ -3587,7 +3570,7 @@ var BaseTable = /*#__PURE__*/function (_React$Component) {
3587
3570
  });
3588
3571
  });
3589
3572
 
3590
- _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_17___default()(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_13___default()(_this), "renderTableBody", function (info) {
3573
+ _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_18___default()(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_14___default()(_this), "renderTableBody", function (info) {
3591
3574
  // console.log('render body')
3592
3575
  var _this$props = _this.props,
3593
3576
  dataSource = _this$props.dataSource,
@@ -3598,7 +3581,7 @@ var BaseTable = /*#__PURE__*/function (_React$Component) {
3598
3581
  footerDataSource = _this$props.footerDataSource;
3599
3582
  var tableBodyClassName = classnames__WEBPACK_IMPORTED_MODULE_26___default()(_styles__WEBPACK_IMPORTED_MODULE_38__["Classes"].tableBody, _styles__WEBPACK_IMPORTED_MODULE_38__["Classes"].horizontalScrollContainer); // 低版本Edge浏览器下也会出现双滚动条,这里设置overflow: 'hidden',先去掉edge的方向键控制滚动条的功能
3600
3583
 
3601
- var virtualStyle = _utils__WEBPACK_IMPORTED_MODULE_41__["browserType"].isIE || _utils__WEBPACK_IMPORTED_MODULE_41__["browserType"].isEdge ? {
3584
+ var virtualStyle = _utils__WEBPACK_IMPORTED_MODULE_40__["browserType"].isIE || _utils__WEBPACK_IMPORTED_MODULE_40__["browserType"].isEdge ? {
3602
3585
  overflow: 'hidden'
3603
3586
  } : {};
3604
3587
 
@@ -3636,7 +3619,7 @@ var BaseTable = /*#__PURE__*/function (_React$Component) {
3636
3619
  topBlank = _info$verticalRenderR.topBlank,
3637
3620
  bottomIndex = _info$verticalRenderR.bottomIndex;
3638
3621
  var stickyRightOffset = _this.hasScrollY ? _this.getScrollBarWidth() : 0;
3639
- var renderBody = Object(_renderTemplates__WEBPACK_IMPORTED_MODULE_42__["default"])('body');
3622
+ var renderBody = Object(_renderTemplates__WEBPACK_IMPORTED_MODULE_41__["default"])('body');
3640
3623
 
3641
3624
  if (typeof renderBody === 'function') {
3642
3625
  return renderBody(info, _this.props, {
@@ -3699,13 +3682,13 @@ var BaseTable = /*#__PURE__*/function (_React$Component) {
3699
3682
  /** 自定义滚动条宽度为table宽度,使滚动条滑块宽度相同 */
3700
3683
 
3701
3684
 
3702
- _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_12___default()(BaseTable, [{
3685
+ _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_13___default()(BaseTable, [{
3703
3686
  key: "getDoms",
3704
3687
  value: // 最近一次渲染的计算结果缓存
3705
3688
 
3706
3689
  /** @deprecated BaseTable.getDoms() 已经过时,请勿调用 */
3707
3690
  function getDoms() {
3708
- _utils__WEBPACK_IMPORTED_MODULE_41__["console"].warn('[kd-table] BaseTable.getDoms() 已经过时');
3691
+ _utils__WEBPACK_IMPORTED_MODULE_40__["console"].warn('[kd-table] BaseTable.getDoms() 已经过时');
3709
3692
  return this.domHelper;
3710
3693
  }
3711
3694
  }, {
@@ -3775,7 +3758,7 @@ var BaseTable = /*#__PURE__*/function (_React$Component) {
3775
3758
  var _this$props4 = this.props,
3776
3759
  stickyTop = _this$props4.stickyTop,
3777
3760
  hasHeader = _this$props4.hasHeader;
3778
- var renderHeader = Object(_renderTemplates__WEBPACK_IMPORTED_MODULE_42__["default"])('header');
3761
+ var renderHeader = Object(_renderTemplates__WEBPACK_IMPORTED_MODULE_41__["default"])('header');
3779
3762
 
3780
3763
  if (typeof renderHeader === 'function') {
3781
3764
  return renderHeader(info, this.props);
@@ -3868,7 +3851,7 @@ var BaseTable = /*#__PURE__*/function (_React$Component) {
3868
3851
  getRowProps = _this$props5.getRowProps,
3869
3852
  primaryKey = _this$props5.primaryKey,
3870
3853
  stickyBottom = _this$props5.stickyBottom;
3871
- var renderFooter = Object(_renderTemplates__WEBPACK_IMPORTED_MODULE_42__["default"])('footer');
3854
+ var renderFooter = Object(_renderTemplates__WEBPACK_IMPORTED_MODULE_41__["default"])('footer');
3872
3855
 
3873
3856
  if (typeof renderFooter === 'function') {
3874
3857
  return renderFooter(info, this.props, {
@@ -3952,6 +3935,8 @@ var BaseTable = /*#__PURE__*/function (_React$Component) {
3952
3935
  }, {
3953
3936
  key: "render",
3954
3937
  value: function render() {
3938
+ var _cx;
3939
+
3955
3940
  // console.log('render table')
3956
3941
  var info = Object(_calculations__WEBPACK_IMPORTED_MODULE_30__["calculateRenderInfo"])(this);
3957
3942
  this.lastInfo = info;
@@ -3967,30 +3952,31 @@ var BaseTable = /*#__PURE__*/function (_React$Component) {
3967
3952
  isLoading = _this$props7.isLoading,
3968
3953
  getTableProps = _this$props7.getTableProps,
3969
3954
  footerDataSource = _this$props7.footerDataSource,
3970
- components = _this$props7.components;
3971
- var artTableWrapperClassName = classnames__WEBPACK_IMPORTED_MODULE_26___default()(_styles__WEBPACK_IMPORTED_MODULE_38__["Classes"].artTableWrapper, {
3955
+ components = _this$props7.components,
3956
+ bordered = _this$props7.bordered;
3957
+ var artTableWrapperClassName = classnames__WEBPACK_IMPORTED_MODULE_26___default()(_styles__WEBPACK_IMPORTED_MODULE_38__["Classes"].artTableWrapper, (_cx = {
3972
3958
  'use-outer-border': useOuterBorder,
3973
3959
  empty: dataSource.length === 0,
3974
3960
  lock: info.hasLockColumn,
3975
3961
  'has-header': hasHeader,
3976
3962
  'sticky-header': isStickyHeader !== null && isStickyHeader !== void 0 ? isStickyHeader : isStickyHead,
3977
3963
  'has-footer': footerDataSource.length > 0,
3978
- 'sticky-footer': isStickyFooter,
3979
- 'ie-polyfill-wrapper': _utils__WEBPACK_IMPORTED_MODULE_41__["browserType"].isIE
3980
- }, className);
3964
+ 'sticky-footer': isStickyFooter
3965
+ }, _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_18___default()(_cx, _styles__WEBPACK_IMPORTED_MODULE_38__["Classes"].artTableBordered, bordered), _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_18___default()(_cx, 'ie-polyfill-wrapper', _utils__WEBPACK_IMPORTED_MODULE_40__["browserType"].isIE), _cx), className);
3981
3966
 
3982
- var artTableWrapperProps = _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_17___default()({
3967
+ var artTableWrapperProps = _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_18___default()({
3983
3968
  className: artTableWrapperClassName,
3984
3969
  style: style
3985
3970
  }, _utils__WEBPACK_IMPORTED_MODULE_39__["STYLED_REF_PROP"], this.artTableWrapperRef);
3986
3971
 
3972
+ var tableProps = getTableProps() || {};
3987
3973
  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"], {
3988
3974
  visible: isLoading,
3989
3975
  LoadingIcon: components.LoadingIcon,
3990
3976
  LoadingContentWrapper: components.LoadingContentWrapper
3991
- }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_27___default.a.createElement("div", _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_18___default()({
3992
- className: _styles__WEBPACK_IMPORTED_MODULE_38__["Classes"].artTable
3993
- }, getTableProps()), this.renderTableHeader(info), this.renderTableBody(info), this.renderTableFooter(info), this.renderLockShadows(info)), this.renderStickyScroll(info)));
3977
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_27___default.a.createElement("div", _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_11___default()({}, tableProps, {
3978
+ className: classnames__WEBPACK_IMPORTED_MODULE_26___default()(_styles__WEBPACK_IMPORTED_MODULE_38__["Classes"].artTable, tableProps.className)
3979
+ }), this.renderTableHeader(info), this.renderTableBody(info), this.renderTableFooter(info), this.renderLockShadows(info)), this.renderStickyScroll(info)));
3994
3980
  }
3995
3981
  }, {
3996
3982
  key: "componentDidMount",
@@ -4007,10 +3993,12 @@ var BaseTable = /*#__PURE__*/function (_React$Component) {
4007
3993
 
4008
3994
  var _this$props8 = this.props,
4009
3995
  cssVariables = _this$props8.cssVariables,
4010
- enableCSSVariables = _this$props8.enableCSSVariables;
4011
- cssPolifill({
3996
+ enableCSSVariables = _this$props8.enableCSSVariables,
3997
+ bordered = _this$props8.bordered;
3998
+ Object(_utils__WEBPACK_IMPORTED_MODULE_39__["cssPolifill"])({
4012
3999
  variables: cssVariables || {},
4013
- enableCSSVariables: enableCSSVariables
4000
+ enableCSSVariables: enableCSSVariables,
4001
+ bordered: bordered
4014
4002
  });
4015
4003
  (_this$props$setTableW2 = (_this$props9 = this.props).setTableWidth) === null || _this$props$setTableW2 === void 0 ? void 0 : _this$props$setTableW2.call(_this$props9, this.domHelper.tableBody.clientWidth);
4016
4004
  (_this$props$setTableD = (_this$props10 = this.props).setTableDomHelper) === null || _this$props$setTableD === void 0 ? void 0 : _this$props$setTableD.call(_this$props10, this.domHelper);
@@ -4046,7 +4034,7 @@ var BaseTable = /*#__PURE__*/function (_React$Component) {
4046
4034
  var currentHasFooter = this.props.footerDataSource.length > 0;
4047
4035
 
4048
4036
  if (!prevHasFooter && currentHasFooter) {
4049
- Object(_utils__WEBPACK_IMPORTED_MODULE_39__["getTableScrollFooterDOM"])(this.domHelper).scrollLeft = this.domHelper.tableBody.scrollLeft;
4037
+ Object(_utils__WEBPACK_IMPORTED_MODULE_39__["getTableScrollFooterDOM"])(this.domHelper).scrollLeft = this.domHelper.virtual.scrollLeft;
4050
4038
  }
4051
4039
  }
4052
4040
  }
@@ -4082,15 +4070,15 @@ var BaseTable = /*#__PURE__*/function (_React$Component) {
4082
4070
 
4083
4071
  this.rootSubscription.add(Object(rxjs__WEBPACK_IMPORTED_MODULE_28__["combineLatest"])([richVisibleRects$.pipe(rxjs_operators__WEBPACK_IMPORTED_MODULE_29__["map"](function (p) {
4084
4072
  return p.clipRect;
4085
- }), rxjs_operators__WEBPACK_IMPORTED_MODULE_29__["distinctUntilChanged"](_utils__WEBPACK_IMPORTED_MODULE_39__["shallowEqual"])), this.props$.pipe(rxjs_operators__WEBPACK_IMPORTED_MODULE_29__["startWith"](null), rxjs_operators__WEBPACK_IMPORTED_MODULE_29__["pairwise"](), rxjs_operators__WEBPACK_IMPORTED_MODULE_29__["filter"](function (_ref2) {
4086
- var _ref3 = _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_10___default()(_ref2, 2),
4087
- prevProps = _ref3[0],
4088
- props = _ref3[1];
4073
+ }), rxjs_operators__WEBPACK_IMPORTED_MODULE_29__["distinctUntilChanged"](_utils__WEBPACK_IMPORTED_MODULE_39__["shallowEqual"])), this.props$.pipe(rxjs_operators__WEBPACK_IMPORTED_MODULE_29__["startWith"](null), rxjs_operators__WEBPACK_IMPORTED_MODULE_29__["pairwise"](), rxjs_operators__WEBPACK_IMPORTED_MODULE_29__["filter"](function (_ref) {
4074
+ var _ref2 = _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_10___default()(_ref, 2),
4075
+ prevProps = _ref2[0],
4076
+ props = _ref2[1];
4089
4077
 
4090
4078
  return prevProps == null || !prevProps.isLoading && props.isLoading;
4091
- }))]).subscribe(function (_ref4) {
4092
- var _ref5 = _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_10___default()(_ref4, 1),
4093
- clipRect = _ref5[0];
4079
+ }))]).subscribe(function (_ref3) {
4080
+ var _ref4 = _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_10___default()(_ref3, 1),
4081
+ clipRect = _ref4[0];
4094
4082
 
4095
4083
  var loadingIndicator = _this2.domHelper.getLoadingIndicator();
4096
4084
 
@@ -4109,9 +4097,9 @@ var BaseTable = /*#__PURE__*/function (_React$Component) {
4109
4097
  horizontal = _this2$lastInfo$useVi.horizontal,
4110
4098
  vertical = _this2$lastInfo$useVi.vertical;
4111
4099
  return horizontal || vertical;
4112
- }), rxjs_operators__WEBPACK_IMPORTED_MODULE_29__["map"](function (_ref6) {
4113
- var clipRect = _ref6.clipRect,
4114
- offsetY = _ref6.offsetY;
4100
+ }), rxjs_operators__WEBPACK_IMPORTED_MODULE_29__["map"](function (_ref5) {
4101
+ var clipRect = _ref5.clipRect,
4102
+ offsetY = _ref5.offsetY;
4115
4103
  return {
4116
4104
  maxRenderHeight: clipRect.bottom - clipRect.top,
4117
4105
  maxRenderWidth: clipRect.right - clipRect.left,
@@ -4128,9 +4116,9 @@ var BaseTable = /*#__PURE__*/function (_React$Component) {
4128
4116
  })).subscribe(function (sizeAndOffset) {
4129
4117
  _this2.setState(sizeAndOffset);
4130
4118
  }));
4131
- this.rootSubscription.add(richVisibleRects$.pipe(rxjs_operators__WEBPACK_IMPORTED_MODULE_29__["map"](function (_ref7) {
4132
- var clipRect = _ref7.clipRect,
4133
- offsetY = _ref7.offsetY;
4119
+ this.rootSubscription.add(richVisibleRects$.pipe(rxjs_operators__WEBPACK_IMPORTED_MODULE_29__["map"](function (_ref6) {
4120
+ var clipRect = _ref6.clipRect,
4121
+ offsetY = _ref6.offsetY;
4134
4122
  return {
4135
4123
  maxRenderHeight: clipRect.bottom - clipRect.top,
4136
4124
  maxRenderWidth: clipRect.right - clipRect.left,
@@ -4276,7 +4264,7 @@ var BaseTable = /*#__PURE__*/function (_React$Component) {
4276
4264
  return BaseTable;
4277
4265
  }(react__WEBPACK_IMPORTED_MODULE_27___default.a.Component);
4278
4266
 
4279
- _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_17___default()(BaseTable, "defaultProps", {
4267
+ _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_18___default()(BaseTable, "defaultProps", {
4280
4268
  hasHeader: true,
4281
4269
  isStickyHeader: true,
4282
4270
  stickyTop: 0,
@@ -4301,7 +4289,7 @@ _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_17___default()(Ba
4301
4289
  /*!*****************************************!*\
4302
4290
  !*** ./components/table/base/utils.tsx ***!
4303
4291
  \*****************************************/
4304
- /*! exports provided: STYLED_VERSION, STYLED_REF_PROP, OVERSCAN_SIZE, AUTO_VIRTUAL_THRESHOLD, sum, throttledWindowResize$, addResizeObserver, getScrollbarSize, syncScrollLeft, shallowEqual, composeRowPropsGetter, getTableScrollHeaderDOM, getTableScrollFooterDOM */
4292
+ /*! exports provided: STYLED_VERSION, STYLED_REF_PROP, OVERSCAN_SIZE, AUTO_VIRTUAL_THRESHOLD, sum, throttledWindowResize$, addResizeObserver, getScrollbarSize, syncScrollLeft, shallowEqual, composeRowPropsGetter, getTableScrollHeaderDOM, getTableScrollFooterDOM, cssPolifill */
4305
4293
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
4306
4294
 
4307
4295
  "use strict";
@@ -4319,6 +4307,7 @@ __webpack_require__.r(__webpack_exports__);
4319
4307
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "composeRowPropsGetter", function() { return composeRowPropsGetter; });
4320
4308
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getTableScrollHeaderDOM", function() { return getTableScrollHeaderDOM; });
4321
4309
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getTableScrollFooterDOM", function() { return getTableScrollFooterDOM; });
4310
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "cssPolifill", function() { return cssPolifill; });
4322
4311
  /* 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");
4323
4312
  /* 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__);
4324
4313
  /* 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");
@@ -4357,8 +4346,11 @@ __webpack_require__.r(__webpack_exports__);
4357
4346
  /* harmony import */ var rxjs_operators__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! rxjs/operators */ "./node_modules/rxjs/_esm5/operators/index.js");
4358
4347
  /* harmony import */ var resize_observer_polyfill__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! resize-observer-polyfill */ "./node_modules/resize-observer-polyfill/dist/ResizeObserver.es.js");
4359
4348
  /* harmony import */ var styled_components__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! styled-components */ "./node_modules/styled-components/dist/styled-components.browser.esm.js");
4360
- /* harmony import */ var _utils_mergeCellProps__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! ../utils/mergeCellProps */ "./components/table/utils/mergeCellProps.ts");
4361
- /* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! ../utils */ "./components/table/utils/index.tsx");
4349
+ /* harmony import */ var css_vars_ponyfill__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! css-vars-ponyfill */ "./node_modules/css-vars-ponyfill/dist/css-vars-ponyfill.esm.js");
4350
+ /* harmony import */ var _utils_mergeCellProps__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! ../utils/mergeCellProps */ "./components/table/utils/mergeCellProps.ts");
4351
+ /* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(/*! ../utils */ "./components/table/utils/index.tsx");
4352
+ /* harmony import */ var _styles__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(/*! ./styles */ "./components/table/base/styles.ts");
4353
+ /* harmony import */ var _utils_element__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__(/*! ../utils/element */ "./components/table/utils/element.ts");
4362
4354
 
4363
4355
 
4364
4356
 
@@ -4389,6 +4381,9 @@ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len
4389
4381
 
4390
4382
 
4391
4383
 
4384
+
4385
+
4386
+
4392
4387
  /** styled-components 类库的版本,ali-react-table 同时支持 v3 和 v5 */
4393
4388
 
4394
4389
  var STYLED_VERSION = styled_components__WEBPACK_IMPORTED_MODULE_20__["createGlobalStyle"] != null ? 'v5' : 'v3';
@@ -4505,7 +4500,12 @@ function syncScrollLeft(elements, callback) {
4505
4500
  return;
4506
4501
  }
4507
4502
 
4508
- var scrollLeft = ele.scrollLeft;
4503
+ var scrollLeft = ele.scrollLeft; // 某一元素当滚动条消失时会触发scroll事件(scrolLeft重置为0),不同步其他其他元素的scrollLeft
4504
+
4505
+ if (scrollLeft === 0 && !Object(_utils_element__WEBPACK_IMPORTED_MODULE_25__["hasScroll"])(ele)) {
4506
+ return;
4507
+ }
4508
+
4509
4509
  publishScrollLeft(ele, scrollLeft);
4510
4510
  callback(scrollLeft);
4511
4511
  };
@@ -4568,18 +4568,44 @@ function composeRowPropsGetter(getRowProps, pendingRowProps) {
4568
4568
 
4569
4569
  if (keys.length) {
4570
4570
  return function (row, rowIndex) {
4571
- return Object(_utils_mergeCellProps__WEBPACK_IMPORTED_MODULE_21__["default"])(getRowProps(row, rowIndex), pendingRowProps);
4571
+ return Object(_utils_mergeCellProps__WEBPACK_IMPORTED_MODULE_22__["default"])(getRowProps(row, rowIndex), pendingRowProps);
4572
4572
  };
4573
4573
  }
4574
4574
 
4575
4575
  return getRowProps;
4576
4576
  }
4577
4577
  function getTableScrollHeaderDOM(domHelper) {
4578
- return _utils__WEBPACK_IMPORTED_MODULE_22__["browserType"].isIE ? domHelper.tableHeaderMain : domHelper.tableHeader;
4578
+ return _utils__WEBPACK_IMPORTED_MODULE_23__["browserType"].isIE ? domHelper.tableHeaderMain : domHelper.tableHeader;
4579
4579
  }
4580
4580
  function getTableScrollFooterDOM(domHelper) {
4581
- return _utils__WEBPACK_IMPORTED_MODULE_22__["browserType"].isIE ? domHelper.tableFooterMain : domHelper.tableFooter;
4581
+ return _utils__WEBPACK_IMPORTED_MODULE_23__["browserType"].isIE ? domHelper.tableFooterMain : domHelper.tableFooter;
4582
4582
  }
4583
+ var cssPolifill = function cssPolifill(_ref) {
4584
+ var variables = _ref.variables,
4585
+ enableCSSVariables = _ref.enableCSSVariables,
4586
+ bordered = _ref.bordered;
4587
+
4588
+ if (enableCSSVariables === false) {
4589
+ return;
4590
+ }
4591
+
4592
+ var conditionCSSVariables = {}; // 默认情况下存在td、th无左右边框,开启`bordered`属性后才开启,否则隐藏这两种属性
4593
+
4594
+ if (!bordered) {
4595
+ conditionCSSVariables['--cell-border-vertical'] = 'none';
4596
+ conditionCSSVariables['--header-cell-border-vertical'] = 'none';
4597
+ }
4598
+
4599
+ Object(css_vars_ponyfill__WEBPACK_IMPORTED_MODULE_21__["default"])({
4600
+ // exclude: 'link[href*="semantic-ui"]',
4601
+ // onlyLegacy: false,
4602
+ // rootElement: rootElement,
4603
+ include: 'style[data-styled]',
4604
+ variables: _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_8___default()({}, _styles__WEBPACK_IMPORTED_MODULE_24__["defaultCSSVariables"], variables, conditionCSSVariables),
4605
+ watch: true,
4606
+ silent: true
4607
+ });
4608
+ };
4583
4609
 
4584
4610
  /***/ }),
4585
4611
 
@@ -5136,6 +5162,159 @@ function buildTree(idProp, parentIdProp) {
5136
5162
 
5137
5163
  /***/ }),
5138
5164
 
5165
+ /***/ "./components/table/pipeline/features/colGroupExtendable.tsx":
5166
+ /*!*******************************************************************!*\
5167
+ !*** ./components/table/pipeline/features/colGroupExtendable.tsx ***!
5168
+ \*******************************************************************/
5169
+ /*! exports provided: colGroupExtendable */
5170
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
5171
+
5172
+ "use strict";
5173
+ __webpack_require__.r(__webpack_exports__);
5174
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "colGroupExtendable", function() { return colGroupExtendable; });
5175
+ /* 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");
5176
+ /* 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__);
5177
+ /* 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");
5178
+ /* 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__);
5179
+ /* 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");
5180
+ /* 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__);
5181
+ /* 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");
5182
+ /* 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__);
5183
+ /* harmony import */ var core_js_modules_es_object_get_own_property_descriptor_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! core-js/modules/es.object.get-own-property-descriptor.js */ "./node_modules/core-js/modules/es.object.get-own-property-descriptor.js");
5184
+ /* harmony import */ var core_js_modules_es_object_get_own_property_descriptor_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_get_own_property_descriptor_js__WEBPACK_IMPORTED_MODULE_4__);
5185
+ /* harmony import */ var core_js_modules_web_dom_collections_for_each_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! core-js/modules/web.dom-collections.for-each.js */ "./node_modules/core-js/modules/web.dom-collections.for-each.js");
5186
+ /* harmony import */ var core_js_modules_web_dom_collections_for_each_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_web_dom_collections_for_each_js__WEBPACK_IMPORTED_MODULE_5__);
5187
+ /* harmony import */ var core_js_modules_es_object_get_own_property_descriptors_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! core-js/modules/es.object.get-own-property-descriptors.js */ "./node_modules/core-js/modules/es.object.get-own-property-descriptors.js");
5188
+ /* harmony import */ var core_js_modules_es_object_get_own_property_descriptors_js__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_get_own_property_descriptors_js__WEBPACK_IMPORTED_MODULE_6__);
5189
+ /* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/@babel/runtime/helpers/defineProperty.js");
5190
+ /* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_7__);
5191
+ /* harmony import */ var _babel_runtime_helpers_taggedTemplateLiteral__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! @babel/runtime/helpers/taggedTemplateLiteral */ "./node_modules/@babel/runtime/helpers/taggedTemplateLiteral.js");
5192
+ /* harmony import */ var _babel_runtime_helpers_taggedTemplateLiteral__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_taggedTemplateLiteral__WEBPACK_IMPORTED_MODULE_8__);
5193
+ /* harmony import */ var core_js_modules_es_array_splice_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! core-js/modules/es.array.splice.js */ "./node_modules/core-js/modules/es.array.splice.js");
5194
+ /* harmony import */ var core_js_modules_es_array_splice_js__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_splice_js__WEBPACK_IMPORTED_MODULE_9__);
5195
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! react */ "react");
5196
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_10__);
5197
+ /* harmony import */ var styled_components__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! styled-components */ "./node_modules/styled-components/dist/styled-components.browser.esm.js");
5198
+ /* harmony import */ var _internals__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../internals */ "./components/table/internals.ts");
5199
+ /* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../utils */ "./components/table/utils/index.tsx");
5200
+ /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! classnames */ "./node_modules/classnames/index.js");
5201
+ /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_14___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_14__);
5202
+ /* harmony import */ var _base_styles__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../../base/styles */ "./components/table/base/styles.ts");
5203
+
5204
+
5205
+
5206
+
5207
+
5208
+
5209
+
5210
+
5211
+
5212
+
5213
+ var _templateObject;
5214
+
5215
+
5216
+
5217
+ 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; }
5218
+
5219
+ 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_7___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; }
5220
+
5221
+
5222
+
5223
+
5224
+
5225
+
5226
+
5227
+ var ExtendIconStyle = styled_components__WEBPACK_IMPORTED_MODULE_11__["default"].span(_templateObject || (_templateObject = _babel_runtime_helpers_taggedTemplateLiteral__WEBPACK_IMPORTED_MODULE_8___default()(["\n font-size:12px;\n margin-left:4px;\n"])));
5228
+ var stateKey = 'colExtend';
5229
+
5230
+ var ExpandIcon = function ExpandIcon(_ref) {
5231
+ var style = _ref.style,
5232
+ className = _ref.className,
5233
+ size = _ref.size,
5234
+ isExtend = _ref.isExtend;
5235
+ return isExtend ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_10___default.a.createElement("svg", {
5236
+ className: className,
5237
+ width: size,
5238
+ height: size,
5239
+ style: style,
5240
+ viewBox: "96 96 896 896"
5241
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_10___default.a.createElement("path", {
5242
+ d: "M678.347087 178.347087C690.550972 166.143203 690.550972 146.356797 678.347087 134.152913C666.143203 121.949029 646.356797 121.949029 634.152913 134.152913L290.402913 477.902913C278.199029 490.106797 278.199029 509.893203 290.402913 522.097087L634.152913 865.847087C646.356797 878.050972 666.143203 878.050972 678.347087 865.847087C690.550972 853.643203 690.550972 833.856797 678.347087 821.652913L356.694175 500L678.347087 178.347087z"
5243
+ })) : /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_10___default.a.createElement("svg", {
5244
+ className: className,
5245
+ width: size,
5246
+ height: size,
5247
+ style: style,
5248
+ viewBox: "96 96 896 896"
5249
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_10___default.a.createElement("path", {
5250
+ d: "M321.652913 178.347087C309.449029 166.143203 309.449029 146.356797 321.652913 134.152913C333.856797 121.949029 353.643203 121.949029 365.847088 134.152913L709.597087 477.902913C721.800972 490.106797 721.800972 509.893203 709.597087 522.097087L365.847088 865.847087C353.643203 878.050972 333.856797 878.050972 321.652913 865.847087C309.449029 853.643203 309.449029 833.856797 321.652913 821.652913L643.305825 500L321.652913 178.347087z"
5251
+ }));
5252
+ };
5253
+
5254
+ var colGroupExtendable = function colGroupExtendable() {
5255
+ var opts = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
5256
+ return function (pipeline) {
5257
+ var _ref2, _opts$extendStatus;
5258
+
5259
+ var columns = pipeline.getColumns();
5260
+ var curState = (_ref2 = (_opts$extendStatus = opts.extendStatus) !== null && _opts$extendStatus !== void 0 ? _opts$extendStatus : pipeline.getStateAtKey(stateKey)) !== null && _ref2 !== void 0 ? _ref2 : {};
5261
+
5262
+ var processColumns = function processColumns(columns) {
5263
+ // 当组合列可伸缩,且处于收缩状态时,只渲染一个子列,其他不渲染
5264
+ var toggle = function toggle(col) {
5265
+ // 对应的 col 进行状态切换
5266
+ var changedValue = _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_7___default()({}, col.code, !curState[col.code]);
5267
+
5268
+ curState[col.code] = !curState[col.code];
5269
+ pipeline.setStateAtKey(stateKey, _objectSpread({}, curState));
5270
+ (opts === null || opts === void 0 ? void 0 : opts.onChangeExtendStatus) && opts.onChangeExtendStatus(curState, changedValue);
5271
+ };
5272
+
5273
+ var addIcon = function addIcon(col) {
5274
+ var result = _objectSpread({}, col);
5275
+
5276
+ var addIconNode = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_10___default.a.createElement(react__WEBPACK_IMPORTED_MODULE_10___default.a.Fragment, null, _internals__WEBPACK_IMPORTED_MODULE_12__["internals"].safeRenderHeader(_objectSpread({}, col)), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_10___default.a.createElement(ExtendIconStyle, {
5277
+ onClick: function onClick() {
5278
+ toggle(col);
5279
+ }
5280
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_10___default.a.createElement(ExpandIcon, {
5281
+ style: {
5282
+ userSelect: 'none',
5283
+ marginLeft: 2,
5284
+ flexShrink: 0,
5285
+ cursor: "pointer",
5286
+ verticalAlign: 'middle'
5287
+ },
5288
+ className: classnames__WEBPACK_IMPORTED_MODULE_14___default()(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_7___default()({}, _base_styles__WEBPACK_IMPORTED_MODULE_15__["Classes"].tableExtendIcon, true)),
5289
+ size: 16,
5290
+ isExtend: curState[col.code]
5291
+ })));
5292
+ result.title = addIconNode;
5293
+ return result;
5294
+ };
5295
+
5296
+ return Object(_utils__WEBPACK_IMPORTED_MODULE_13__["makeRecursiveMapper"])(function (col) {
5297
+ var _col, _col$children;
5298
+
5299
+ var _ref3 = ((_col = col) === null || _col === void 0 ? void 0 : _col.features) || {},
5300
+ showExtendIcon = _ref3.showExtendIcon;
5301
+
5302
+ if (showExtendIcon === true && ((_col$children = col.children) === null || _col$children === void 0 ? void 0 : _col$children.length) > 1) {
5303
+ col = addIcon(col);
5304
+ curState[col.code] === false && col.children.splice(1, col.children.length);
5305
+ }
5306
+
5307
+ return col;
5308
+ })(columns);
5309
+ };
5310
+
5311
+ pipeline.columns(processColumns(columns));
5312
+ return pipeline;
5313
+ };
5314
+ };
5315
+
5316
+ /***/ }),
5317
+
5139
5318
  /***/ "./components/table/pipeline/features/columnDrag.tsx":
5140
5319
  /*!***********************************************************!*\
5141
5320
  !*** ./components/table/pipeline/features/columnDrag.tsx ***!
@@ -5246,7 +5425,7 @@ function columnDrag() {
5246
5425
  },
5247
5426
  headerCellProps: Object(_utils__WEBPACK_IMPORTED_MODULE_10__["mergeCellProps"])(col.headerCellProps, {
5248
5427
  onMouseDown: !isLeaf || path.length > 1 ? undefined : function (e) {
5249
- if (e.button !== 0) {
5428
+ if (e.button !== 0 || !e.currentTarget.contains(e.target)) {
5250
5429
  return;
5251
5430
  }
5252
5431
 
@@ -5422,13 +5601,14 @@ function columnDrag() {
5422
5601
  }
5423
5602
 
5424
5603
  function handleMouseUp(e) {
5425
- e.stopPropagation();
5426
5604
  document.body.removeEventListener('mousemove', handleMouseMove);
5427
5605
  document.body.removeEventListener('mouseup', handleMouseUp);
5428
- window.removeEventListener('selectstart', disableSelect); // 阻止列头点击事件,防止拖动后触发列头过滤事件
5606
+ window.removeEventListener('selectstart', disableSelect);
5429
5607
 
5430
5608
  if (_isMoveWhenClicking(mouseDownClientX, mouseDownClientY, e.clientX, e.clientY)) {
5431
- currentTarget.addEventListener('click', stopClickPropagation);
5609
+ e.stopPropagation(); // 存在移动就阻止冒泡
5610
+
5611
+ currentTarget.addEventListener('click', stopClickPropagation); // 阻止列头点击事件,防止拖动后触发列头过滤事件
5432
5612
  }
5433
5613
 
5434
5614
  window.requestAnimationFrame(function () {
@@ -5658,7 +5838,8 @@ function filter() {
5658
5838
  keepDataSource = opts.keepDataSource,
5659
5839
  mode = opts.mode,
5660
5840
  filterIcon = opts.filterIcon,
5661
- stopClickEventPropagation = opts.stopClickEventPropagation;
5841
+ stopClickEventPropagation = opts.stopClickEventPropagation,
5842
+ hideFilterPopupHeader = opts.hideFilterPopupHeader;
5662
5843
  var inputFilters = (_ref = (_ref2 = filters !== null && filters !== void 0 ? filters : pipeline.getStateAtKey(stateKey)) !== null && _ref2 !== void 0 ? _ref2 : defaultFilters) !== null && _ref !== void 0 ? _ref : [];
5663
5844
  inputFilters = mode === 'single' ? inputFilters.slice(0, 1) : inputFilters;
5664
5845
  var inputFiltersMap = new Map(inputFilters.map(function (filterItem) {
@@ -5677,7 +5858,7 @@ function filter() {
5677
5858
  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;
5678
5859
 
5679
5860
  if (filterable) {
5680
- var _col$features2, _result$title, _cx;
5861
+ var _col$features2, _col$features$filterI, _col$features3, _result$title, _cx;
5681
5862
 
5682
5863
  var handleFilterChanged = function handleFilterChanged(filterItem) {
5683
5864
  var nextFiltersMap = new Map(inputFiltersMap);
@@ -5710,18 +5891,18 @@ function filter() {
5710
5891
  };
5711
5892
 
5712
5893
  var filterPanel = (_col$features2 = col.features) === null || _col$features2 === void 0 ? void 0 : _col$features2.filterPanel;
5713
- 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), {}, {
5714
- title: null
5715
- }))])), [/*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_17___default.a.createElement(_filter__WEBPACK_IMPORTED_MODULE_21__["Filter"], {
5894
+ 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;
5895
+ 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({}, col))])), [/*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_17___default.a.createElement(_filter__WEBPACK_IMPORTED_MODULE_21__["Filter"], {
5716
5896
  key: "filter",
5717
5897
  FilterPanelContent: filterPanel,
5718
- filterIcon: filterIcon,
5898
+ filterIcon: colFilterIcon,
5719
5899
  filterModel: inputFiltersMap.get(col.code),
5720
5900
  setFilterModel: handleFilterChanged,
5721
5901
  setFilter: setFilter,
5722
5902
  isFilterActive: filterActive,
5723
5903
  className: classnames__WEBPACK_IMPORTED_MODULE_18___default()((_cx = {}, _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_5___default()(_cx, _base_styles__WEBPACK_IMPORTED_MODULE_22__["Classes"].tableFilterTrigger, true), _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_5___default()(_cx, "active", filterActive), _cx)),
5724
- stopClickEventPropagation: stopClickEventPropagation
5904
+ stopClickEventPropagation: stopClickEventPropagation,
5905
+ hideFilterPopupHeader: hideFilterPopupHeader
5725
5906
  })]); // result.headerCellProps = mergeCellProps(col.headerCellProps, {
5726
5907
  // style: {
5727
5908
  // paddingRight: '18px'
@@ -5749,9 +5930,9 @@ function filter() {
5749
5930
 
5750
5931
  var columns = pipeline.getColumns();
5751
5932
  var columnsMap = new Map(Object(_utils__WEBPACK_IMPORTED_MODULE_20__["collectNodes"])(columns, 'leaf-only').filter(function (col) {
5752
- var _col$features3, _col$features4;
5933
+ var _col$features4, _col$features5;
5753
5934
 
5754
- 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;
5935
+ 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;
5755
5936
  }).map(function (col) {
5756
5937
  return [col.code, col];
5757
5938
  }));
@@ -5759,8 +5940,8 @@ function filter() {
5759
5940
  return [item.key, _objectSpread({}, item)];
5760
5941
  }));
5761
5942
 
5762
- function isMatchedFilterCondition(record, rowIndex) {
5763
- return !filtersKeys.some(function (key) {
5943
+ function isMatchedFilterCondition(record) {
5944
+ return filtersKeys.every(function (key) {
5764
5945
  var _columnsMap$get, _columnsMap$get$featu;
5765
5946
 
5766
5947
  var filterItem = inputFiltersMap.get(key);
@@ -5774,20 +5955,13 @@ function filter() {
5774
5955
  } else {
5775
5956
  console.warn("\u5217[".concat(key, "]\u672A\u914D\u7F6E\u7B5B\u9009\u51FD\u6570\uFF0C\u8BF7\u8BBE\u7F6E column.features.filterable \u6765\u4F5C\u4E3A\u8BE5\u5217\u7684\u7B5B\u9009\u51FD\u6570, \u76EE\u524D\u4F7F\u7528\u9ED8\u8BA4\u5305\u542B\u7B5B\u9009\u51FD\u6570"));
5776
5957
  comparisonFn = defaultFilterOptionsMap.get('contain').filter;
5777
- } // 不符合过滤条件,退出循环
5778
-
5958
+ }
5779
5959
 
5780
- return !comparisonFn(filterItem.filter, filterItem)(_internals__WEBPACK_IMPORTED_MODULE_19__["internals"].safeGetValue(columnsMap.get(key), record, rowIndex), record);
5960
+ return comparisonFn(filterItem.filter, filterItem)(_internals__WEBPACK_IMPORTED_MODULE_19__["internals"].safeGetValue(columnsMap.get(key), record, -1), record);
5781
5961
  });
5782
5962
  }
5783
5963
 
5784
- return dataSource.reduce(function (pre, record, rowIndex) {
5785
- if (isMatchedFilterCondition(record, rowIndex)) {
5786
- return pre.concat([record]);
5787
- }
5788
-
5789
- return pre;
5790
- }, []);
5964
+ return layeredFilter(dataSource, isMatchedFilterCondition);
5791
5965
  }
5792
5966
 
5793
5967
  pipeline.dataSource(processDataSource(dataSource));
@@ -5796,6 +5970,30 @@ function filter() {
5796
5970
  };
5797
5971
  }
5798
5972
 
5973
+ function layeredFilter(array, matchFn) {
5974
+ return dfs(array);
5975
+
5976
+ function dfs(rows) {
5977
+ var parentMatched = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
5978
+ return rows.map(function (row) {
5979
+ var currentMatched = matchFn(row);
5980
+
5981
+ if (Object(_utils__WEBPACK_IMPORTED_MODULE_20__["isLeafNode"])(row)) {
5982
+ return (parentMatched || currentMatched) && _objectSpread({}, row);
5983
+ }
5984
+
5985
+ var children = row.children;
5986
+
5987
+ var rowAfterFilterChildren = _objectSpread(_objectSpread({}, row), {}, {
5988
+ children: dfs(children, parentMatched || currentMatched)
5989
+ });
5990
+
5991
+ var matchedByChildren = !Object(_utils__WEBPACK_IMPORTED_MODULE_20__["isLeafNode"])(rowAfterFilterChildren);
5992
+ return (parentMatched || currentMatched || matchedByChildren) && rowAfterFilterChildren;
5993
+ }).filter(Boolean);
5994
+ }
5995
+ }
5996
+
5799
5997
  /***/ }),
5800
5998
 
5801
5999
  /***/ "./components/table/pipeline/features/columnHover.tsx":
@@ -6078,7 +6276,7 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va
6078
6276
 
6079
6277
 
6080
6278
 
6081
- var TableHeaderCellResize = styled_components__WEBPACK_IMPORTED_MODULE_11__["default"].div(_templateObject || (_templateObject = _babel_runtime_helpers_taggedTemplateLiteral__WEBPACK_IMPORTED_MODULE_5___default()(["\n position: absolute;\n top: 0;\n right: -5px;\n height: 100%;\n width: 10px;\n cursor: ew-resize;\n display: flex;\n flex-direction: column;\n align-items: center;\n z-index:1;\n\n &:after {\n content: \"\";\n position: absolute;\n display: block;\n left: calc(50% - 1px);\n width: 1px;\n height: calc(100% - 14px);\n top: 7px;\n background-color: var(--border-color);\n }\n"])));
6279
+ var TableHeaderCellResize = styled_components__WEBPACK_IMPORTED_MODULE_11__["default"].div(_templateObject || (_templateObject = _babel_runtime_helpers_taggedTemplateLiteral__WEBPACK_IMPORTED_MODULE_5___default()(["\n position: absolute;\n top: 0;\n right: -5px;\n height: 100%;\n width: 10px;\n cursor: ew-resize;\n display: flex;\n flex-direction: column;\n align-items: center;\n z-index:1;\n\n &:after {\n content: \"\";\n position: absolute;\n display: block;\n left: calc(50% - 1px);\n width: 1px;\n height: calc(100% - 14px);\n top: 7px;\n }\n"])));
6082
6280
  var TableHeaderGroupCellResize = Object(styled_components__WEBPACK_IMPORTED_MODULE_11__["default"])(TableHeaderCellResize)(_templateObject2 || (_templateObject2 = _babel_runtime_helpers_taggedTemplateLiteral__WEBPACK_IMPORTED_MODULE_5___default()(["\n &:after {\n height: 100%;\n top: 0;\n }\n"])));
6083
6281
 
6084
6282
  function clamp(min, x, max) {
@@ -6729,6 +6927,7 @@ __webpack_require__.r(__webpack_exports__);
6729
6927
  /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_8__);
6730
6928
  /* harmony import */ var _util__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./util */ "./components/table/pipeline/features/filter/util.tsx");
6731
6929
  /* harmony import */ var _base_styles__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../base/styles */ "./components/table/base/styles.ts");
6930
+ /* harmony import */ var _utils_keyCode__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../utils/keyCode */ "./components/table/utils/keyCode.ts");
6732
6931
 
6733
6932
 
6734
6933
 
@@ -6743,6 +6942,7 @@ var _templateObject;
6743
6942
 
6744
6943
 
6745
6944
 
6945
+
6746
6946
  var DefaultFilterContentStyle = styled_components__WEBPACK_IMPORTED_MODULE_7__["default"].div(_templateObject || (_templateObject = _babel_runtime_helpers_taggedTemplateLiteral__WEBPACK_IMPORTED_MODULE_2___default()(["\n display: flex;\n flex-direction: column;\n background-color: #ffffff;\n border-radius: 2px;\n width: 100%;\n\n ", "\n .filter-option-list {\n display: flex;\n flex-direction: column;\n margin-top: 8px;\n ul {\n margin: 0;\n padding: 0;\n li {\n display: flex;\n position: relative;\n flex-shrink: 0;\n height: 32px;\n align-items: center;\n border-radius: 2px;\n font-size: 12px;\n color: var(--color);\n padding: 0 12px;\n overflow: hidden;\n cursor: pointer;\n &:hover{\n background-color: var(--primary-color-level1);\n }\n }\n li.active{\n background-color: var(--primary-color-level1);\n }\n }\n }\n\n .filter-search {\n display: flex;\n padding: 6px 12px;\n\n .filter-search-inner {\n width: 100%;\n font-size: 12px;\n color: #333333;\n height: 28px;\n line-height: 28px;\n padding: 0 8px;\n outline: none;\n background-color: #FAFAFA;\n border-radius: 2px;\n border: 1px solid var(--strong-border-color);\n &:hover{\n border-color: var(--primary-color)\n } \n &:focus{\n border-color: var(--primary-color)\n } \n }\n }\n\n .filter-footer {\n display: flex;\n flex-direction: row;\n padding: 8px 12px;\n justify-content: space-between;\n\n .filter-btn {\n text-align: center;\n font-size: 12px;\n width: 60px;\n height: 24px;\n line-height: 24px;\n }\n \n }\n"])), _base_styles__WEBPACK_IMPORTED_MODULE_10__["ButtonCSS"]);
6747
6947
 
6748
6948
  function DefaultFilterContent(_ref) {
@@ -6762,6 +6962,7 @@ function DefaultFilterContent(_ref) {
6762
6962
  innerValue = _React$useState4[0],
6763
6963
  setInnerValue = _React$useState4[1];
6764
6964
 
6965
+ var inputRef = Object(react__WEBPACK_IMPORTED_MODULE_6__["useRef"])();
6765
6966
  var handleClick = react__WEBPACK_IMPORTED_MODULE_6___default.a.useCallback(function (option) {
6766
6967
  setSelectedValue(option.key);
6767
6968
  }, []);
@@ -6779,10 +6980,26 @@ function DefaultFilterContent(_ref) {
6779
6980
  });
6780
6981
  };
6781
6982
 
6983
+ var handleKeyDown = function handleKeyDown(e) {
6984
+ if (e.keyCode === _utils_keyCode__WEBPACK_IMPORTED_MODULE_11__["default"].ENTER) {
6985
+ confirm();
6986
+ }
6987
+ };
6988
+
6782
6989
  Object(react__WEBPACK_IMPORTED_MODULE_6__["useEffect"])(function () {
6783
6990
  setSelectedValue((filterModel === null || filterModel === void 0 ? void 0 : filterModel.filterCondition) || 'contain');
6784
6991
  setInnerValue((filterModel === null || filterModel === void 0 ? void 0 : filterModel.filter) || '');
6785
6992
  }, [filterModel]);
6993
+ Object(react__WEBPACK_IMPORTED_MODULE_6__["useEffect"])(function () {
6994
+ // 兼容设置焦点后发生滚动
6995
+ setTimeout(function () {
6996
+ var _inputRef$current;
6997
+
6998
+ (_inputRef$current = inputRef.current) === null || _inputRef$current === void 0 ? void 0 : _inputRef$current.focus({
6999
+ preventScroll: true
7000
+ });
7001
+ });
7002
+ }, []);
6786
7003
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_6___default.a.createElement(DefaultFilterContentStyle, null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_6___default.a.createElement("div", {
6787
7004
  className: "filter-option-list"
6788
7005
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_6___default.a.createElement("ul", null, _util__WEBPACK_IMPORTED_MODULE_9__["DEFAULT_FILTER_OPTIONS"].map(function (option, index) {
@@ -6804,7 +7021,9 @@ function DefaultFilterContent(_ref) {
6804
7021
  value: innerValue,
6805
7022
  onChange: function onChange(e) {
6806
7023
  setInnerValue(e.target.value);
6807
- }
7024
+ },
7025
+ onKeyDown: handleKeyDown,
7026
+ ref: inputRef
6808
7027
  })), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_6___default.a.createElement("div", {
6809
7028
  className: "filter-footer"
6810
7029
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_6___default.a.createElement("button", {
@@ -6824,6 +7043,41 @@ function DefaultFilterContent(_ref) {
6824
7043
 
6825
7044
  /***/ }),
6826
7045
 
7046
+ /***/ "./components/table/pipeline/features/filter/DefaultFilterIcon.tsx":
7047
+ /*!*************************************************************************!*\
7048
+ !*** ./components/table/pipeline/features/filter/DefaultFilterIcon.tsx ***!
7049
+ \*************************************************************************/
7050
+ /*! exports provided: default */
7051
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
7052
+
7053
+ "use strict";
7054
+ __webpack_require__.r(__webpack_exports__);
7055
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return DefaultFilterIcon; });
7056
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
7057
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
7058
+
7059
+ function DefaultFilterIcon(_ref) {
7060
+ var width = _ref.width,
7061
+ height = _ref.height;
7062
+ return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("svg", {
7063
+ width: width,
7064
+ height: height,
7065
+ style: {
7066
+ verticalAlign: 'middle'
7067
+ },
7068
+ viewBox: "0 0 1024 1024",
7069
+ focusable: "false",
7070
+ "data-icon": "filter",
7071
+ fill: "currentColor",
7072
+ version: "1.1",
7073
+ xmlns: "http://www.w3.org/2000/svg"
7074
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("path", {
7075
+ 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"
7076
+ }));
7077
+ }
7078
+
7079
+ /***/ }),
7080
+
6827
7081
  /***/ "./components/table/pipeline/features/filter/Filter.tsx":
6828
7082
  /*!**************************************************************!*\
6829
7083
  !*** ./components/table/pipeline/features/filter/Filter.tsx ***!
@@ -6844,13 +7098,15 @@ __webpack_require__.r(__webpack_exports__);
6844
7098
  /* harmony import */ var react_dom__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! react-dom */ "react-dom");
6845
7099
  /* harmony import */ var react_dom__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(react_dom__WEBPACK_IMPORTED_MODULE_4__);
6846
7100
  /* harmony import */ var styled_components__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! styled-components */ "./node_modules/styled-components/dist/styled-components.browser.esm.js");
6847
- /* harmony import */ var _base_styles__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../base/styles */ "./components/table/base/styles.ts");
6848
- /* harmony import */ var _FilterPanel__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./FilterPanel */ "./components/table/pipeline/features/filter/FilterPanel.tsx");
6849
- /* harmony import */ var _DefaultFilterContent__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./DefaultFilterContent */ "./components/table/pipeline/features/filter/DefaultFilterContent.tsx");
6850
- /* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../utils */ "./components/table/utils/index.tsx");
6851
- /* harmony import */ var _base_utils__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../base/utils */ "./components/table/base/utils.tsx");
6852
- /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! classnames */ "./node_modules/classnames/index.js");
6853
- /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_11___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_11__);
7101
+ /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! classnames */ "./node_modules/classnames/index.js");
7102
+ /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_6__);
7103
+ /* harmony import */ var _base_styles__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../base/styles */ "./components/table/base/styles.ts");
7104
+ /* harmony import */ var _FilterPanel__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./FilterPanel */ "./components/table/pipeline/features/filter/FilterPanel.tsx");
7105
+ /* harmony import */ var _DefaultFilterContent__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./DefaultFilterContent */ "./components/table/pipeline/features/filter/DefaultFilterContent.tsx");
7106
+ /* harmony import */ var _DefaultFilterIcon__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./DefaultFilterIcon */ "./components/table/pipeline/features/filter/DefaultFilterIcon.tsx");
7107
+ /* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../utils */ "./components/table/utils/index.tsx");
7108
+ /* harmony import */ var _base_utils__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../base/utils */ "./components/table/base/utils.tsx");
7109
+ /* harmony import */ var _utils_keyCode__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../../utils/keyCode */ "./components/table/utils/keyCode.ts");
6854
7110
 
6855
7111
 
6856
7112
 
@@ -6866,23 +7122,23 @@ var _templateObject;
6866
7122
 
6867
7123
 
6868
7124
 
6869
- var HEADER_ICON_OFFSET_Y = 6 + 1; // padding-top + border
7125
+
7126
+
7127
+ var HEADER_ICON_OFFSET_Y = 8 + 1; // padding-top + border
6870
7128
 
6871
7129
  var HEADER_ICON_OFFSET_X = 16 + 1; // padding-left+ border
6872
7130
 
6873
- var FilterIconSpanStyle = styled_components__WEBPACK_IMPORTED_MODULE_5__["default"].span(_templateObject || (_templateObject = _babel_runtime_helpers_taggedTemplateLiteral__WEBPACK_IMPORTED_MODULE_2___default()(["\n // position: absolute;\n // right: 4px;\n // cursor: pointer;\n // transform: translateY(-50%);\n // top: 50%;\n // height: 12px; \n"])));
7131
+ var FilterIconSpanStyle = styled_components__WEBPACK_IMPORTED_MODULE_5__["default"].span(_templateObject || (_templateObject = _babel_runtime_helpers_taggedTemplateLiteral__WEBPACK_IMPORTED_MODULE_2___default()(["\n // position: absolute;\n // right: 4px;\n // cursor: pointer;\n // transform: translateY(-50%);\n // top: 50%;\n // height: 12px; \n > .", " {\n display: flex\n }\n"])), _base_styles__WEBPACK_IMPORTED_MODULE_7__["Classes"].filterIcon);
6874
7132
 
6875
7133
  function Panel(_ref) {
6876
7134
  var ele = _ref.ele,
6877
7135
  filterIcon = _ref.filterIcon,
6878
7136
  hidePanel = _ref.hidePanel,
6879
- renderPanelContent = _ref.renderPanelContent;
7137
+ renderPanelContent = _ref.renderPanelContent,
7138
+ hideFilterPopupHeader = _ref.hideFilterPopupHeader;
6880
7139
  var filterPanelRef = react__WEBPACK_IMPORTED_MODULE_3___default.a.useRef(null);
6881
7140
 
6882
- var _React$useState = react__WEBPACK_IMPORTED_MODULE_3___default.a.useState(Object(_utils__WEBPACK_IMPORTED_MODULE_9__["calculatePopupRelative"])(ele, document.body, {
6883
- x: HEADER_ICON_OFFSET_X,
6884
- y: HEADER_ICON_OFFSET_Y
6885
- })),
7141
+ var _React$useState = react__WEBPACK_IMPORTED_MODULE_3___default.a.useState(Object(_utils__WEBPACK_IMPORTED_MODULE_11__["calculatePopupRelative"])(ele, document.body, _getPanelOffset(ele, hideFilterPopupHeader))),
6886
7142
  _React$useState2 = _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_1___default()(_React$useState, 2),
6887
7143
  position = _React$useState2[0],
6888
7144
  setPosition = _React$useState2[1];
@@ -6893,25 +7149,23 @@ function Panel(_ref) {
6893
7149
  };
6894
7150
 
6895
7151
  var handleFilterPanelResize = function handleFilterPanelResize(resize) {
6896
- setPosition(Object(_utils__WEBPACK_IMPORTED_MODULE_9__["calculatePopupRelative"])(ele, document.body, {
6897
- x: HEADER_ICON_OFFSET_X,
6898
- y: HEADER_ICON_OFFSET_Y
6899
- }));
7152
+ setPosition(Object(_utils__WEBPACK_IMPORTED_MODULE_11__["calculatePopupRelative"])(ele, document.body, _getPanelOffset(ele, hideFilterPopupHeader)));
6900
7153
  };
6901
7154
 
6902
7155
  Object(react__WEBPACK_IMPORTED_MODULE_3__["useEffect"])(function () {
6903
- var resizeObserver = Object(_base_utils__WEBPACK_IMPORTED_MODULE_10__["addResizeObserver"])(filterPanelRef.current.children[0], handleFilterPanelResize);
7156
+ var resizeObserver = Object(_base_utils__WEBPACK_IMPORTED_MODULE_12__["addResizeObserver"])(filterPanelRef.current.children[0], handleFilterPanelResize);
6904
7157
  return function () {
6905
7158
  resizeObserver && resizeObserver.disconnect();
6906
7159
  };
6907
7160
  }, []);
6908
7161
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_3___default.a.createElement("div", {
6909
7162
  ref: filterPanelRef
6910
- }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_3___default.a.createElement(_FilterPanel__WEBPACK_IMPORTED_MODULE_7__["default"], {
7163
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_3___default.a.createElement(_FilterPanel__WEBPACK_IMPORTED_MODULE_8__["default"], {
6911
7164
  style: style,
6912
7165
  onClose: hidePanel,
6913
7166
  position: position,
6914
- filterIcon: filterIcon
7167
+ filterIcon: filterIcon,
7168
+ hideFilterPopupHeader: hideFilterPopupHeader
6915
7169
  }, renderPanelContent()));
6916
7170
  }
6917
7171
 
@@ -6928,7 +7182,8 @@ function Filter(_ref2) {
6928
7182
  setFilterModel = _ref2.setFilterModel,
6929
7183
  filterModel = _ref2.filterModel,
6930
7184
  isFilterActive = _ref2.isFilterActive,
6931
- stopClickEventPropagation = _ref2.stopClickEventPropagation;
7185
+ stopClickEventPropagation = _ref2.stopClickEventPropagation,
7186
+ hideFilterPopupHeader = _ref2.hideFilterPopupHeader;
6932
7187
 
6933
7188
  var _React$useState3 = react__WEBPACK_IMPORTED_MODULE_3___default.a.useState(false),
6934
7189
  _React$useState4 = _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_1___default()(_React$useState3, 2),
@@ -6936,15 +7191,12 @@ function Filter(_ref2) {
6936
7191
  setShowPanel = _React$useState4[1];
6937
7192
 
6938
7193
  var iconRef = react__WEBPACK_IMPORTED_MODULE_3___default.a.useRef(null);
7194
+ var iconWrapRef = react__WEBPACK_IMPORTED_MODULE_3___default.a.useRef();
6939
7195
 
6940
7196
  var hidePanel = function hidePanel() {
6941
7197
  return setShowPanel(false);
6942
7198
  };
6943
7199
 
6944
- var handleMouseDown = function handleMouseDown(e) {
6945
- e.stopPropagation(); // 阻止触发拖拽
6946
- };
6947
-
6948
7200
  var renderPanelContent = function renderPanelContent() {
6949
7201
  if (FilterPanelContent) {
6950
7202
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_3___default.a.createElement(FilterPanelContent, {
@@ -6954,7 +7206,7 @@ function Filter(_ref2) {
6954
7206
  hidePanel: hidePanel
6955
7207
  });
6956
7208
  } else {
6957
- return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_3___default.a.createElement(_DefaultFilterContent__WEBPACK_IMPORTED_MODULE_8__["default"], {
7209
+ return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_3___default.a.createElement(_DefaultFilterContent__WEBPACK_IMPORTED_MODULE_9__["default"], {
6958
7210
  setFilterModel: setFilterModel,
6959
7211
  filterModel: filterModel,
6960
7212
  isFilterActive: isFilterActive,
@@ -6964,6 +7216,12 @@ function Filter(_ref2) {
6964
7216
  };
6965
7217
 
6966
7218
  var handleIconClick = function handleIconClick(e) {
7219
+ // 只有当icon区域点击会触发面板展开
7220
+ // 防止 createPortal 区域的点击触发该事件
7221
+ if (!e.currentTarget.contains(e.target)) {
7222
+ return;
7223
+ }
7224
+
6967
7225
  if (stopClickEventPropagation) {
6968
7226
  e.stopPropagation();
6969
7227
  }
@@ -6971,33 +7229,50 @@ function Filter(_ref2) {
6971
7229
  setShowPanel(true);
6972
7230
  };
6973
7231
 
6974
- 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));
7232
+ var handleKeyDown = function handleKeyDown(e) {
7233
+ if (e.currentTarget.contains(e.target) && e.keyCode === _utils_keyCode__WEBPACK_IMPORTED_MODULE_13__["default"].ESC) {
7234
+ setShowPanel(false);
7235
+ }
7236
+ };
7237
+
7238
+ var iconClassName = classnames__WEBPACK_IMPORTED_MODULE_6___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));
7239
+ var displayFilterIcon = typeof filterIcon === 'function' ? filterIcon(isFilterActive) : filterIcon;
6975
7240
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_3___default.a.createElement(FilterIconSpanStyle, {
6976
7241
  style: style,
6977
7242
  className: iconClassName,
6978
- onMouseDown: handleMouseDown,
6979
- ref: iconRef
7243
+ onClick: handleIconClick,
7244
+ onKeyDown: handleKeyDown,
7245
+ ref: iconWrapRef,
7246
+ tabIndex: -1
6980
7247
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_3___default.a.createElement("span", {
6981
- className: _base_styles__WEBPACK_IMPORTED_MODULE_6__["Classes"].filterIcon,
6982
- onClick: handleIconClick
6983
- }, filterIcon || /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_3___default.a.createElement("svg", {
7248
+ ref: iconRef,
7249
+ className: _base_styles__WEBPACK_IMPORTED_MODULE_7__["Classes"].filterIcon
7250
+ }, displayFilterIcon || /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_3___default.a.createElement(_DefaultFilterIcon__WEBPACK_IMPORTED_MODULE_10__["default"], {
6984
7251
  width: size,
6985
- height: size,
6986
- viewBox: "64 64 896 896",
6987
- focusable: "false",
6988
- "data-icon": "filter",
6989
- fill: "currentColor",
6990
- "aria-hidden": "true"
6991
- }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_3___default.a.createElement("path", {
6992
- 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"
6993
- }))), showPanel && /*#__PURE__*/Object(react_dom__WEBPACK_IMPORTED_MODULE_4__["createPortal"])( /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_3___default.a.createElement(Panel, {
6994
- ele: iconRef.current,
6995
- filterIcon: filterIcon,
7252
+ height: size
7253
+ })), showPanel && /*#__PURE__*/Object(react_dom__WEBPACK_IMPORTED_MODULE_4__["createPortal"])( /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_3___default.a.createElement(Panel, {
7254
+ ele: hideFilterPopupHeader ? iconWrapRef.current : iconRef.current,
7255
+ filterIcon: displayFilterIcon,
6996
7256
  hidePanel: hidePanel,
6997
- renderPanelContent: renderPanelContent
7257
+ renderPanelContent: renderPanelContent,
7258
+ hideFilterPopupHeader: hideFilterPopupHeader
6998
7259
  }), document.body));
6999
7260
  }
7000
7261
 
7262
+ function _getPanelOffset(ele, hideFilterPopupHeader) {
7263
+ if (hideFilterPopupHeader) {
7264
+ return {
7265
+ x: 0,
7266
+ y: 0 - ele.offsetHeight
7267
+ };
7268
+ }
7269
+
7270
+ return {
7271
+ x: HEADER_ICON_OFFSET_X,
7272
+ y: HEADER_ICON_OFFSET_Y
7273
+ };
7274
+ }
7275
+
7001
7276
  /* harmony default export */ __webpack_exports__["default"] = (Filter);
7002
7277
 
7003
7278
  /***/ }),
@@ -7035,6 +7310,9 @@ __webpack_require__.r(__webpack_exports__);
7035
7310
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_10__);
7036
7311
  /* harmony import */ var styled_components__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! styled-components */ "./node_modules/styled-components/dist/styled-components.browser.esm.js");
7037
7312
  /* harmony import */ var _utils___WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../utils/ */ "./components/table/utils/index.tsx");
7313
+ /* harmony import */ var _DefaultFilterIcon__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./DefaultFilterIcon */ "./components/table/pipeline/features/filter/DefaultFilterIcon.tsx");
7314
+ /* harmony import */ var _base_styles__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../../base/styles */ "./components/table/base/styles.ts");
7315
+ /* harmony import */ var _utils_keyCode__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../../../utils/keyCode */ "./components/table/utils/keyCode.ts");
7038
7316
 
7039
7317
 
7040
7318
 
@@ -7055,7 +7333,10 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va
7055
7333
 
7056
7334
 
7057
7335
 
7058
- 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"])));
7336
+
7337
+
7338
+
7339
+ 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 .", " {\n display: flex;\n background-color: #ebedf1;\n\n .", " {\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 .", " {\n display: flex;\n }\n"])), _base_styles__WEBPACK_IMPORTED_MODULE_14__["Classes"].popupHeader, _base_styles__WEBPACK_IMPORTED_MODULE_14__["Classes"].filterIcon, _base_styles__WEBPACK_IMPORTED_MODULE_14__["Classes"].popupBody);
7059
7340
 
7060
7341
  var useWindowEvents = function useWindowEvents(func, evens) {
7061
7342
  react__WEBPACK_IMPORTED_MODULE_10___default.a.useEffect(function () {
@@ -7075,7 +7356,8 @@ function FilterPanel(_ref) {
7075
7356
  children = _ref.children,
7076
7357
  position = _ref.position,
7077
7358
  filterIcon = _ref.filterIcon,
7078
- onClose = _ref.onClose;
7359
+ onClose = _ref.onClose,
7360
+ hideFilterPopupHeader = _ref.hideFilterPopupHeader;
7079
7361
 
7080
7362
  var _useState = Object(react__WEBPACK_IMPORTED_MODULE_10__["useState"])(position),
7081
7363
  _useState2 = _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_1___default()(_useState, 2),
@@ -7097,32 +7379,47 @@ function FilterPanel(_ref) {
7097
7379
  setPerfectPosition(Object(_utils___WEBPACK_IMPORTED_MODULE_12__["keepWithinBounds"])(document.body, ref.current, position.x, position.y, true));
7098
7380
  setVisible(true);
7099
7381
  }, [position]);
7382
+ var hasPopupMouseEvent = Object(react__WEBPACK_IMPORTED_MODULE_10__["useRef"])(false);
7383
+
7384
+ var handleMouseEvent = function handleMouseEvent() {
7385
+ // 当弹出的过滤面板内部发生鼠标按下、抬起事件时,标记当前事件,并在click捕获期清除标记,用来确定鼠标按下、抬起发生在过滤面板内部
7386
+ // 利用了React.createPortal冒泡是根据React Tree的特性:
7387
+ // https://jwwnz.medium.com/react-portals-and-event-bubbling-8df3e35ca3f1
7388
+ hasPopupMouseEvent.current = true;
7389
+ };
7390
+
7100
7391
  useWindowEvents(function (e) {
7101
- return !isContainPanel(e) && onClose();
7102
- }, ['mousedown']);
7392
+ !isContainPanel(e) && !hasPopupMouseEvent.current && onClose();
7393
+ hasPopupMouseEvent.current = false;
7394
+ }, ['click']);
7395
+
7396
+ var handleKeyDown = function handleKeyDown(e) {
7397
+ if (e.currentTarget.contains(e.target) && e.keyCode === _utils_keyCode__WEBPACK_IMPORTED_MODULE_15__["default"].ESC) {
7398
+ onClose();
7399
+ }
7400
+ };
7401
+
7103
7402
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_10___default.a.createElement(FilterPanelStyle, {
7403
+ className: _base_styles__WEBPACK_IMPORTED_MODULE_14__["Classes"].popup,
7104
7404
  style: _objectSpread(_objectSpread({}, style), {}, {
7105
7405
  left: visible ? perfectPosition.x : 0,
7106
7406
  top: visible ? perfectPosition.y : 0,
7107
7407
  opacity: visible ? 1 : 0
7108
7408
  }),
7109
- ref: ref
7110
- }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_10___default.a.createElement("div", {
7111
- className: 'popup-header'
7409
+ onMouseDown: handleMouseEvent,
7410
+ onMouseUp: handleMouseEvent,
7411
+ onKeyDown: handleKeyDown,
7412
+ ref: ref,
7413
+ tabIndex: -1
7414
+ }, !hideFilterPopupHeader ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_10___default.a.createElement("div", {
7415
+ className: _base_styles__WEBPACK_IMPORTED_MODULE_14__["Classes"].popupHeader
7112
7416
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_10___default.a.createElement("span", {
7113
- className: 'popup-header-icon'
7114
- }, filterIcon || /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_10___default.a.createElement("svg", {
7115
- width: 14,
7116
- height: 14,
7117
- viewBox: "64 64 896 896",
7118
- focusable: "false",
7119
- "data-icon": "filter",
7120
- fill: "currentColor",
7121
- "aria-hidden": "true"
7122
- }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_10___default.a.createElement("path", {
7123
- 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"
7124
- })))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_10___default.a.createElement("div", {
7125
- className: "popup-body"
7417
+ className: _base_styles__WEBPACK_IMPORTED_MODULE_14__["Classes"].filterIcon
7418
+ }, filterIcon || /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_10___default.a.createElement(_DefaultFilterIcon__WEBPACK_IMPORTED_MODULE_13__["default"], {
7419
+ width: 12,
7420
+ height: 12
7421
+ }))) : null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_10___default.a.createElement("div", {
7422
+ className: _base_styles__WEBPACK_IMPORTED_MODULE_14__["Classes"].popupBody
7126
7423
  }, children));
7127
7424
  }
7128
7425
 
@@ -7187,7 +7484,7 @@ var DEFAULT_FILTER_OPTIONS = [{
7187
7484
  data = data + '';
7188
7485
  }
7189
7486
 
7190
- return data.includes(value);
7487
+ return data.includes(value[0]);
7191
7488
  };
7192
7489
  }
7193
7490
  }, {
@@ -7203,7 +7500,7 @@ var DEFAULT_FILTER_OPTIONS = [{
7203
7500
  data = data + '';
7204
7501
  }
7205
7502
 
7206
- return !data.includes(value);
7503
+ return !data.includes(value[0]);
7207
7504
  };
7208
7505
  }
7209
7506
  }, {
@@ -7211,7 +7508,7 @@ var DEFAULT_FILTER_OPTIONS = [{
7211
7508
  key: 'equal',
7212
7509
  filter: function filter(value) {
7213
7510
  return function (data) {
7214
- return value !== data;
7511
+ return value[0] === data;
7215
7512
  };
7216
7513
  }
7217
7514
  }, {
@@ -7219,7 +7516,7 @@ var DEFAULT_FILTER_OPTIONS = [{
7219
7516
  key: 'notEqual',
7220
7517
  filter: function filter(value) {
7221
7518
  return function (data) {
7222
- return value !== data;
7519
+ return value[0] !== data;
7223
7520
  };
7224
7521
  }
7225
7522
  }, {
@@ -7241,13 +7538,83 @@ var DEFAULT_FILTER_OPTIONS = [{
7241
7538
  }];
7242
7539
 
7243
7540
 
7541
+ /***/ }),
7542
+
7543
+ /***/ "./components/table/pipeline/features/footerDataSource.ts":
7544
+ /*!****************************************************************!*\
7545
+ !*** ./components/table/pipeline/features/footerDataSource.ts ***!
7546
+ \****************************************************************/
7547
+ /*! exports provided: footerRowMetaSymbol, footerDataSource */
7548
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
7549
+
7550
+ "use strict";
7551
+ __webpack_require__.r(__webpack_exports__);
7552
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "footerRowMetaSymbol", function() { return footerRowMetaSymbol; });
7553
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "footerDataSource", function() { return footerDataSource; });
7554
+ /* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/@babel/runtime/helpers/defineProperty.js");
7555
+ /* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__);
7556
+ /* 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");
7557
+ /* 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__);
7558
+ /* 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");
7559
+ /* 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__);
7560
+ /* 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");
7561
+ /* 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__);
7562
+ /* 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");
7563
+ /* 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__);
7564
+ /* 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");
7565
+ /* 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__);
7566
+ /* 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");
7567
+ /* 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__);
7568
+ /* 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");
7569
+ /* 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__);
7570
+ /* 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");
7571
+ /* 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__);
7572
+ /* 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");
7573
+ /* 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__);
7574
+
7575
+
7576
+ 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; }
7577
+
7578
+ 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; }
7579
+
7580
+
7581
+
7582
+
7583
+
7584
+
7585
+
7586
+
7587
+
7588
+
7589
+ var footerRowMetaSymbol = Symbol('footer-row');
7590
+ function footerDataSource() {
7591
+ var opts = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
7592
+ return function footerDataSourceStep(pipeline) {
7593
+ var _opts$dataSource, _opts$footerRowMetaKe;
7594
+
7595
+ var footerDataSource = (_opts$dataSource = opts.dataSource) !== null && _opts$dataSource !== void 0 ? _opts$dataSource : pipeline.getFooterDataSource();
7596
+ var footerRowMetaKey = (_opts$footerRowMetaKe = opts.footerRowMetaKey) !== null && _opts$footerRowMetaKe !== void 0 ? _opts$footerRowMetaKe : footerRowMetaSymbol;
7597
+ pipeline.setFeatureOptions('footerRowMetaKey', footerRowMetaKey);
7598
+
7599
+ if (footerDataSource) {
7600
+ pipeline.footerDataSource(footerDataSource.map(function (row) {
7601
+ return _objectSpread(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()({}, footerRowMetaKey, true), row);
7602
+ }));
7603
+ } else {
7604
+ console.warn('调用 pipeline.use(features.footerDataSource()) 前请先设置页脚数据源,设置方法有:pipeline.use(features.footerDataSource({dataSource:any[]})) 或者 pipeline.footerDataSource(any[])');
7605
+ }
7606
+
7607
+ return pipeline;
7608
+ };
7609
+ }
7610
+
7244
7611
  /***/ }),
7245
7612
 
7246
7613
  /***/ "./components/table/pipeline/features/index.ts":
7247
7614
  /*!*****************************************************!*\
7248
7615
  !*** ./components/table/pipeline/features/index.ts ***!
7249
7616
  \*****************************************************/
7250
- /*! 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 */
7617
+ /*! 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, colGroupExtendable, colGroupExtendOption */
7251
7618
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
7252
7619
 
7253
7620
  "use strict";
@@ -7336,6 +7703,20 @@ __webpack_require__.r(__webpack_exports__);
7336
7703
  /* harmony import */ var _mergeCellHover__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ./mergeCellHover */ "./components/table/pipeline/features/mergeCellHover.tsx");
7337
7704
  /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "mergeCellHover", function() { return _mergeCellHover__WEBPACK_IMPORTED_MODULE_17__["mergeCellHover"]; });
7338
7705
 
7706
+ /* harmony import */ var _footerDataSource__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ./footerDataSource */ "./components/table/pipeline/features/footerDataSource.ts");
7707
+ /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "footerDataSource", function() { return _footerDataSource__WEBPACK_IMPORTED_MODULE_18__["footerDataSource"]; });
7708
+
7709
+ /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "FooterDataSourceFeatureOptions", function() { return _footerDataSource__WEBPACK_IMPORTED_MODULE_18__["FooterDataSourceFeatureOptions"]; });
7710
+
7711
+ /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "footerRowMetaSymbol", function() { return _footerDataSource__WEBPACK_IMPORTED_MODULE_18__["footerRowMetaSymbol"]; });
7712
+
7713
+ /* harmony import */ var _colGroupExtendable__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ./colGroupExtendable */ "./components/table/pipeline/features/colGroupExtendable.tsx");
7714
+ /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "colGroupExtendable", function() { return _colGroupExtendable__WEBPACK_IMPORTED_MODULE_19__["colGroupExtendable"]; });
7715
+
7716
+ /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "colGroupExtendOption", function() { return _colGroupExtendable__WEBPACK_IMPORTED_MODULE_19__["colGroupExtendOption"]; });
7717
+
7718
+
7719
+
7339
7720
 
7340
7721
 
7341
7722
 
@@ -7535,7 +7916,8 @@ function multiSelect() {
7535
7916
  /** 所有有效的 keys(disable 状态为 false) */
7536
7917
 
7537
7918
  var allKeys = [];
7538
- dataSource.forEach(function (row, rowIndex) {
7919
+ var flatDataSource = Object(_utils__WEBPACK_IMPORTED_MODULE_17__["collectNodes"])(dataSource);
7920
+ flatDataSource.forEach(function (row, rowIndex) {
7539
7921
  var rowKey = _internals__WEBPACK_IMPORTED_MODULE_15__["internals"].safeGetRowKey(primaryKey, row, rowIndex);
7540
7922
  fullKeySet.add(rowKey); // 在 allKeys 中排除被禁用的 key
7541
7923
 
@@ -7601,6 +7983,10 @@ function multiSelect() {
7601
7983
  return Object(_utils__WEBPACK_IMPORTED_MODULE_17__["mergeCellProps"])(preCellProps, checkboxCellProps);
7602
7984
  },
7603
7985
  render: function render(_, row, rowIndex) {
7986
+ if (row[pipeline.getFeatureOptions('footerRowMetaKey')]) {
7987
+ return null;
7988
+ }
7989
+
7604
7990
  var key = _internals__WEBPACK_IMPORTED_MODULE_15__["internals"].safeGetRowKey(primaryKey, row, rowIndex);
7605
7991
  var checked = set.has(key);
7606
7992
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default.a.createElement(Checkbox, {
@@ -7709,13 +8095,13 @@ function multiSelect() {
7709
8095
  /*!***************************************************************!*\
7710
8096
  !*** ./components/table/pipeline/features/rangeSelection.tsx ***!
7711
8097
  \***************************************************************/
7712
- /*! exports provided: rangeSelectionKey, lastClickCell, rangeSelection */
8098
+ /*! exports provided: rangeSelectionKey, lastClickCellKey, rangeSelection */
7713
8099
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
7714
8100
 
7715
8101
  "use strict";
7716
8102
  __webpack_require__.r(__webpack_exports__);
7717
8103
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "rangeSelectionKey", function() { return rangeSelectionKey; });
7718
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "lastClickCell", function() { return lastClickCell; });
8104
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "lastClickCellKey", function() { return lastClickCellKey; });
7719
8105
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "rangeSelection", function() { return rangeSelection; });
7720
8106
  /* 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");
7721
8107
  /* 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__);
@@ -7739,13 +8125,15 @@ __webpack_require__.r(__webpack_exports__);
7739
8125
  /* harmony import */ var core_js_modules_es_array_find_index_js__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_find_index_js__WEBPACK_IMPORTED_MODULE_9__);
7740
8126
  /* harmony import */ var core_js_modules_es_array_slice_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! core-js/modules/es.array.slice.js */ "./node_modules/core-js/modules/es.array.slice.js");
7741
8127
  /* harmony import */ var core_js_modules_es_array_slice_js__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_slice_js__WEBPACK_IMPORTED_MODULE_10__);
7742
- /* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../utils */ "./components/table/utils/index.tsx");
7743
- /* harmony import */ var _utils_others__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../utils/others */ "./components/table/utils/others.ts");
7744
- /* harmony import */ var rxjs__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! rxjs */ "./node_modules/rxjs/_esm5/index.js");
7745
- /* harmony import */ var rxjs_operators__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! rxjs/operators */ "./node_modules/rxjs/_esm5/operators/index.js");
7746
- /* harmony import */ var _base_styles__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../../base/styles */ "./components/table/base/styles.ts");
7747
- /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! classnames */ "./node_modules/classnames/index.js");
7748
- /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_16___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_16__);
8128
+ /* harmony import */ var core_js_modules_es_array_includes_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! core-js/modules/es.array.includes.js */ "./node_modules/core-js/modules/es.array.includes.js");
8129
+ /* harmony import */ var core_js_modules_es_array_includes_js__WEBPACK_IMPORTED_MODULE_11___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_includes_js__WEBPACK_IMPORTED_MODULE_11__);
8130
+ /* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../utils */ "./components/table/utils/index.tsx");
8131
+ /* harmony import */ var _utils_others__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../utils/others */ "./components/table/utils/others.ts");
8132
+ /* harmony import */ var rxjs__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! rxjs */ "./node_modules/rxjs/_esm5/index.js");
8133
+ /* harmony import */ var rxjs_operators__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! rxjs/operators */ "./node_modules/rxjs/_esm5/operators/index.js");
8134
+ /* harmony import */ var _base_styles__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../../base/styles */ "./components/table/base/styles.ts");
8135
+ /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! classnames */ "./node_modules/classnames/index.js");
8136
+ /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_17___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_17__);
7749
8137
 
7750
8138
 
7751
8139
 
@@ -7768,41 +8156,44 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va
7768
8156
 
7769
8157
 
7770
8158
 
8159
+
7771
8160
  var rangeSelectionKey = 'rangeSelection';
7772
- var lastClickCell = 'lastClickCell';
8161
+ var lastClickCellKey = 'lastClickCell';
7773
8162
  function rangeSelection(opts) {
7774
8163
  return function step(pipeline) {
7775
8164
  var SCROLL_SIZE = 30;
7776
8165
  var tableBody = pipeline.ref.current.domHelper && pipeline.ref.current.domHelper.tableBody;
8166
+ var tableFooter = pipeline.ref.current.domHelper && pipeline.ref.current.domHelper.tableFooter;
7777
8167
 
7778
8168
  if (!tableBody) {
7779
8169
  return pipeline;
7780
8170
  }
7781
8171
 
7782
8172
  var columns = pipeline.getColumns();
8173
+ var dataSource = pipeline.getDataSource();
7783
8174
 
7784
8175
  var rangeSelectedChange = function rangeSelectedChange(rangeSelection) {
7785
8176
  var _opts$rangeSelectedCh;
7786
8177
 
7787
8178
  pipeline.setStateAtKey(rangeSelectionKey, rangeSelection);
7788
8179
  opts === null || opts === void 0 ? void 0 : (_opts$rangeSelectedCh = opts.rangeSelectedChange) === null || _opts$rangeSelectedCh === void 0 ? void 0 : _opts$rangeSelectedCh.call(opts, rangeSelection);
7789
- }; // if (!pipeline.getFeatureOptions(rangeSelectionKey)) {
7790
- // pipeline.setFeatureOptions(rangeSelectionKey, {
7791
- // optionKey: rangeSelectionKey,
7792
- // rangeSelectedChange: rangeSelectedChange
7793
- // })
7794
- // }
7795
-
8180
+ };
7796
8181
 
7797
8182
  var setRangeSelection = function setRangeSelection(startDragCell, draggingCell) {
7798
- if (!startDragCell || !draggingCell || isSameCell(startDragCell, draggingCell)) return;
8183
+ if (!startDragCell || !draggingCell) return;
7799
8184
  var rangeColumns = getRangeColumns(startDragCell, draggingCell, columns);
7800
- var isTopToBottom = startDragCell.rowIndex <= draggingCell.rowIndex;
8185
+
8186
+ var _getRangeSelectionRow = getRangeSelectionRowInfo(startDragCell, draggingCell, dataSource),
8187
+ startRow = _getRangeSelectionRow.startRow,
8188
+ endRow = _getRangeSelectionRow.endRow,
8189
+ footerRowRange = _getRangeSelectionRow.footerRowRange;
8190
+
7801
8191
  var rangeSelection = {
7802
- startRow: isTopToBottom ? startDragCell.rowIndex : startDragCell.rowIndex + startDragCell.rowSpan - 1,
7803
- endRow: isTopToBottom ? draggingCell.rowIndex + draggingCell.rowSpan - 1 : draggingCell.rowIndex,
8192
+ startRow: startRow,
8193
+ endRow: endRow,
7804
8194
  columns: rangeColumns,
7805
- startColumn: startDragCell.column
8195
+ startColumn: startDragCell.column,
8196
+ footerRowRange: footerRowRange
7806
8197
  };
7807
8198
  rangeSelectedChange(rangeSelection);
7808
8199
  };
@@ -7813,30 +8204,30 @@ function rangeSelection(opts) {
7813
8204
 
7814
8205
  if (clickCell) {
7815
8206
  if (event.shiftKey) {
7816
- var _lastClickCell = pipeline.getStateAtKey(lastClickCell);
8207
+ var _lastClickCell = pipeline.getStateAtKey(lastClickCellKey);
7817
8208
 
7818
8209
  if (_lastClickCell) {
7819
8210
  setRangeSelection(_lastClickCell, clickCell);
7820
8211
  } else {
7821
8212
  // 第一次进来就按住shift键,这时候要记住点击的单元格
7822
- pipeline.setStateAtKey(lastClickCell, clickCell);
8213
+ pipeline.setStateAtKey(lastClickCellKey, clickCell);
7823
8214
  }
7824
8215
  } else {
7825
- pipeline.setStateAtKey(lastClickCell, clickCell);
7826
- rangeSelectedChange(null);
8216
+ pipeline.setStateAtKey(lastClickCellKey, clickCell);
8217
+ setRangeSelection(clickCell, clickCell);
7827
8218
  }
7828
8219
  }
7829
8220
  };
7830
8221
 
7831
8222
  var onMouseDown = function onMouseDown(mouseDownEvent) {
7832
- if (mouseDownEvent.button !== 0 || !Object(_utils__WEBPACK_IMPORTED_MODULE_11__["isElementInEventPath"])(tableBody, mouseDownEvent.nativeEvent)) return; // mouseDownEvent.preventDefault()
8223
+ if (mouseDownEvent.button !== 0 || !(Object(_utils__WEBPACK_IMPORTED_MODULE_12__["isElementInEventPath"])(tableBody, mouseDownEvent.nativeEvent) || Object(_utils__WEBPACK_IMPORTED_MODULE_12__["isElementInEventPath"])(tableFooter, mouseDownEvent.nativeEvent))) return; // mouseDownEvent.preventDefault()
7833
8224
  // shift + 点击选中
7834
8225
 
7835
8226
  shiftKeySelect(mouseDownEvent);
7836
8227
  var target = mouseDownEvent.target;
7837
8228
  var startDragCell = getTargetCell(target, columns);
7838
- var mousemove$ = Object(rxjs__WEBPACK_IMPORTED_MODULE_13__["fromEvent"])(window, 'mousemove');
7839
- var mouseup$ = Object(rxjs__WEBPACK_IMPORTED_MODULE_13__["fromEvent"])(window, 'mouseup');
8229
+ var mousemove$ = Object(rxjs__WEBPACK_IMPORTED_MODULE_14__["fromEvent"])(window, 'mousemove');
8230
+ var mouseup$ = Object(rxjs__WEBPACK_IMPORTED_MODULE_14__["fromEvent"])(window, 'mouseup');
7840
8231
  var tableBodyClientRect = tableBody.getBoundingClientRect();
7841
8232
 
7842
8233
  var updateScrollPosition = function updateScrollPosition(client) {
@@ -7864,7 +8255,7 @@ function rangeSelection(opts) {
7864
8255
  }
7865
8256
  };
7866
8257
 
7867
- var rangeSelected$ = mousemove$.pipe(Object(rxjs_operators__WEBPACK_IMPORTED_MODULE_14__["map"])(function (mouseMoveEvent) {
8258
+ var rangeSelected$ = mousemove$.pipe(Object(rxjs_operators__WEBPACK_IMPORTED_MODULE_15__["map"])(function (mouseMoveEvent) {
7868
8259
  var target = mouseMoveEvent.target || mouseMoveEvent.srcElement;
7869
8260
  var draggingCell = getTargetCell(target, columns);
7870
8261
  var client = {
@@ -7876,7 +8267,7 @@ function rangeSelection(opts) {
7876
8267
  startDragCell: startDragCell,
7877
8268
  draggingCell: draggingCell
7878
8269
  };
7879
- }), Object(rxjs_operators__WEBPACK_IMPORTED_MODULE_14__["takeUntil"])(mouseup$));
8270
+ }), Object(rxjs_operators__WEBPACK_IMPORTED_MODULE_15__["takeUntil"])(mouseup$));
7880
8271
  rangeSelected$.subscribe(function (_ref) {
7881
8272
  var startDragCell = _ref.startDragCell,
7882
8273
  draggingCell = _ref.draggingCell;
@@ -7885,18 +8276,23 @@ function rangeSelection(opts) {
7885
8276
  };
7886
8277
 
7887
8278
  var onKeyDown = function onKeyDown(e) {
7888
- if (!Object(_utils__WEBPACK_IMPORTED_MODULE_11__["isElementInEventPath"])(tableBody, e.nativeEvent)) return;
8279
+ if (!(Object(_utils__WEBPACK_IMPORTED_MODULE_12__["isElementInEventPath"])(tableBody, e.nativeEvent) || Object(_utils__WEBPACK_IMPORTED_MODULE_12__["isElementInEventPath"])(tableFooter, e.nativeEvent))) return;
7889
8280
 
7890
8281
  if ((e.ctrlKey || e.metaKey) && e.key === 'a') {
7891
8282
  var rowLen = pipeline.getDataSource().length;
8283
+ var footerDataSource = pipeline.getFooterDataSource() || []; // 焦点位于可编辑的单元格内不做全选
7892
8284
 
7893
- if (columns.length && rowLen) {
8285
+ if (columns.length && rowLen && !getElementEditable(e.target)) {
7894
8286
  opts.preventkDefaultOfKeyDownEvent !== false && e.preventDefault();
7895
8287
  rangeSelectedChange({
7896
8288
  startRow: 0,
7897
8289
  endRow: rowLen - 1,
7898
- columns: columns,
7899
- startColumn: columns[0]
8290
+ columns: Object(_utils__WEBPACK_IMPORTED_MODULE_12__["collectNodes"])(columns, 'leaf-only'),
8291
+ startColumn: columns[0],
8292
+ footerRowRange: footerDataSource.length > 0 ? {
8293
+ startRow: 0,
8294
+ endRow: footerDataSource.length - 1
8295
+ } : null
7900
8296
  });
7901
8297
  }
7902
8298
  }
@@ -7905,10 +8301,11 @@ function rangeSelection(opts) {
7905
8301
  pipeline.addTableProps({
7906
8302
  onMouseDown: onMouseDown,
7907
8303
  onKeyDown: onKeyDown,
7908
- tabIndex: -1
8304
+ tabIndex: -1,
8305
+ className: classnames__WEBPACK_IMPORTED_MODULE_17___default()([_base_styles__WEBPACK_IMPORTED_MODULE_16__["Classes"].rangeSelection])
7909
8306
  }); // todo: 后面可以把mousedown放到一个流里面
7910
8307
 
7911
- return pipeline.mapColumns(Object(_utils__WEBPACK_IMPORTED_MODULE_11__["makeRecursiveMapper"])(function (col) {
8308
+ return pipeline.mapColumns(Object(_utils__WEBPACK_IMPORTED_MODULE_12__["makeRecursiveMapper"])(function (col) {
7912
8309
  var rangeSelection = pipeline.getStateAtKey(rangeSelectionKey);
7913
8310
  if (!rangeSelection || rangeSelection.columns.findIndex(function (selectedCol) {
7914
8311
  return selectedCol.code === col.code;
@@ -7919,16 +8316,30 @@ function rangeSelection(opts) {
7919
8316
  var _cx;
7920
8317
 
7921
8318
  var prevCellProps = prevGetCellProps === null || prevGetCellProps === void 0 ? void 0 : prevGetCellProps(value, record, rowIndex);
8319
+ var isInFooter = record[pipeline.getFeatureOptions('footerRowMetaKey')];
7922
8320
  var startRow = rangeSelection.startRow,
7923
8321
  endRow = rangeSelection.endRow,
7924
- columns = rangeSelection.columns;
7925
- var startIndex = startRow < endRow ? startRow : endRow;
7926
- var endIndex = startRow < endRow ? endRow : startRow;
8322
+ columns = rangeSelection.columns,
8323
+ footerRowRange = rangeSelection.footerRowRange;
8324
+
8325
+ var _getRowIndex = getRowIndex(startRow, endRow),
8326
+ startRowIndex = _getRowIndex.startRowIndex,
8327
+ endRowIndex = _getRowIndex.endRowIndex;
8328
+
8329
+ var _getFooterRowIndex = getFooterRowIndex(footerRowRange),
8330
+ footerStartRowIndex = _getFooterRowIndex.startRowIndex,
8331
+ footerEndRowIndex = _getFooterRowIndex.endRowIndex;
8332
+
7927
8333
  var startCol = columns[0];
7928
8334
  var endCol = columns[columns.length - 1];
7929
- var match = rowIndex >= startIndex && rowIndex <= endIndex;
7930
- 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));
7931
- return Object(_utils__WEBPACK_IMPORTED_MODULE_11__["mergeCellProps"])(prevCellProps, {
8335
+ var bodyMatch = !isInFooter && rowIndex >= startRowIndex && rowIndex <= endRowIndex;
8336
+ var footerMatch = isInFooter && footerRowRange && rowIndex >= footerStartRowIndex && rowIndex <= footerEndRowIndex;
8337
+ var match = footerMatch || bodyMatch;
8338
+ var matchSingleCell = match && isCellRangeSingleCell(rangeSelection); // 单个范围选中单元格不显示样式
8339
+
8340
+ var showCellRangeStyle = match && !matchSingleCell;
8341
+ var className = classnames__WEBPACK_IMPORTED_MODULE_17___default()((_cx = {}, _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_8___default()(_cx, _base_styles__WEBPACK_IMPORTED_MODULE_16__["Classes"].tableCellRangeSingleCell, matchSingleCell), _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_8___default()(_cx, _base_styles__WEBPACK_IMPORTED_MODULE_16__["Classes"].tableCellRangeSelected, showCellRangeStyle), _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_8___default()(_cx, _base_styles__WEBPACK_IMPORTED_MODULE_16__["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_16__["Classes"].tableCellRangeLeft, showCellRangeStyle && col.code === startCol.code), _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_8___default()(_cx, _base_styles__WEBPACK_IMPORTED_MODULE_16__["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_16__["Classes"].tableCellRangeRight, showCellRangeStyle && col.code === endCol.code), _cx));
8342
+ return Object(_utils__WEBPACK_IMPORTED_MODULE_12__["mergeCellProps"])(prevCellProps, {
7932
8343
  className: className
7933
8344
  });
7934
8345
  }
@@ -7942,7 +8353,7 @@ function getTargetCell(target, columns) {
7942
8353
  if (target.getAttribute('data-role') === 'table-cell') {
7943
8354
  var _ret = function () {
7944
8355
  var columnCode = target.getAttribute('data-code');
7945
- var column = Object(_utils_others__WEBPACK_IMPORTED_MODULE_12__["findByTree"])(columns, function (item, index) {
8356
+ var column = Object(_utils_others__WEBPACK_IMPORTED_MODULE_13__["findByTree"])(columns, function (item, index) {
7946
8357
  return item.code === columnCode;
7947
8358
  });
7948
8359
  if (!column) return {
@@ -7953,7 +8364,8 @@ function getTargetCell(target, columns) {
7953
8364
  rowIndex: parseInt(target.getAttribute('data-rowindex')),
7954
8365
  rowSpan: parseInt(target.getAttribute('rowspan') || 1),
7955
8366
  code: columnCode,
7956
- column: column
8367
+ column: column,
8368
+ isInFooter: isEleInFooter(target)
7957
8369
  }
7958
8370
  };
7959
8371
  }();
@@ -7968,11 +8380,23 @@ function getTargetCell(target, columns) {
7968
8380
  }
7969
8381
 
7970
8382
  function isSameCell(cell1, cell2) {
7971
- return cell1.rowIndex === cell2.rowIndex && cell1.code === cell2.code;
8383
+ return cell1.rowIndex === cell2.rowIndex && cell1.code === cell2.code && cell1.isInFooter === cell2.isInFooter;
8384
+ }
8385
+
8386
+ function isEleInFooter(target) {
8387
+ while (target && !target.classList.contains(_base_styles__WEBPACK_IMPORTED_MODULE_16__["Classes"].artTable)) {
8388
+ if (target.classList.contains(_base_styles__WEBPACK_IMPORTED_MODULE_16__["Classes"].tableFooter)) {
8389
+ return true;
8390
+ }
8391
+
8392
+ target = target.parentElement;
8393
+ }
8394
+
8395
+ return false;
7972
8396
  }
7973
8397
 
7974
8398
  function getRangeColumns(startCell, endCell, columns) {
7975
- var flatColumns = Object(_utils__WEBPACK_IMPORTED_MODULE_11__["collectNodes"])(columns, 'leaf-only');
8399
+ var flatColumns = Object(_utils__WEBPACK_IMPORTED_MODULE_12__["collectNodes"])(columns, 'leaf-only');
7976
8400
  var startIndex = flatColumns.findIndex(function (col) {
7977
8401
  return col.code === startCell.code;
7978
8402
  });
@@ -7987,6 +8411,108 @@ function getRangeColumns(startCell, endCell, columns) {
7987
8411
  }
7988
8412
  }
7989
8413
 
8414
+ function getRangeSelectionRowInfo(startCell, endCell, dataSource) {
8415
+ var footerRowRange = null;
8416
+ var startRow = -1;
8417
+ var endRow = -1;
8418
+
8419
+ var _getCellRangeRow = getCellRangeRow(startCell, endCell),
8420
+ _startRow = _getCellRangeRow.startRow,
8421
+ _endRow = _getCellRangeRow.endRow; // 两个单元格都在表体
8422
+
8423
+
8424
+ if (!startCell.isInFooter && !endCell.isInFooter) {
8425
+ startRow = _startRow;
8426
+ endRow = _endRow;
8427
+ } else if (startCell.isInFooter && endCell.isInFooter) {
8428
+ // 两个单元格都在表底
8429
+ footerRowRange = {
8430
+ startRow: _startRow,
8431
+ endRow: _endRow
8432
+ };
8433
+ } else {
8434
+ // 一个单元格在表体,一个在表底
8435
+ if (startCell.isInFooter) {
8436
+ startRow = dataSource.length - 1;
8437
+ endRow = endCell.rowIndex;
8438
+ footerRowRange = {
8439
+ startRow: startCell.rowIndex,
8440
+ endRow: 0
8441
+ };
8442
+ } else {
8443
+ startRow = startCell.rowIndex;
8444
+ endRow = dataSource.length - 1;
8445
+ footerRowRange = {
8446
+ startRow: 0,
8447
+ endRow: endCell.rowIndex
8448
+ };
8449
+ }
8450
+ }
8451
+
8452
+ return {
8453
+ startRow: startRow,
8454
+ endRow: endRow,
8455
+ footerRowRange: footerRowRange
8456
+ };
8457
+ }
8458
+
8459
+ function getCellRangeRow(startCell, endCell) {
8460
+ if (isSameCell(startCell, endCell)) {
8461
+ return {
8462
+ startRow: startCell.rowIndex,
8463
+ endRow: startCell.rowIndex
8464
+ };
8465
+ }
8466
+
8467
+ var isTopToBottom = startCell.rowIndex <= endCell.rowIndex;
8468
+ var startRow = isTopToBottom ? startCell.rowIndex : startCell.rowIndex + startCell.rowSpan - 1;
8469
+ var endRow = isTopToBottom ? endCell.rowIndex + endCell.rowSpan - 1 : endCell.rowIndex;
8470
+ return {
8471
+ startRow: startRow,
8472
+ endRow: endRow
8473
+ };
8474
+ }
8475
+
8476
+ function isCellRangeSingleCell(rangeSelection) {
8477
+ var startRow = rangeSelection.startRow,
8478
+ endRow = rangeSelection.endRow,
8479
+ columns = rangeSelection.columns,
8480
+ footerRowRange = rangeSelection.footerRowRange;
8481
+ var isBodySingleCell = !footerRowRange && startRow === endRow && columns.length === 1;
8482
+ var isFooterSingleCell = startRow === -1 && footerRowRange.startRow === footerRowRange.endRow && columns.length === 1;
8483
+ return isBodySingleCell || isFooterSingleCell;
8484
+ }
8485
+
8486
+ function getRowIndex(startRow, endRow) {
8487
+ var isReverse = startRow > endRow;
8488
+ var startRowIndex = isReverse ? endRow : startRow;
8489
+ var endRowIndex = isReverse ? startRow : endRow;
8490
+ return {
8491
+ startRowIndex: startRowIndex,
8492
+ endRowIndex: endRowIndex
8493
+ };
8494
+ }
8495
+
8496
+ function getFooterRowIndex(footerRowRange) {
8497
+ if (footerRowRange) {
8498
+ return getRowIndex(footerRowRange.startRow, footerRowRange.endRow);
8499
+ }
8500
+
8501
+ return {
8502
+ startRowIndex: -1,
8503
+ endRowIndex: -1
8504
+ };
8505
+ }
8506
+
8507
+ function getElementEditable(target) {
8508
+ if (!target) return;
8509
+
8510
+ if (['input', 'textarea'].includes(target.tagName.toLowerCase())) {
8511
+ if (target.type === 'checkbox') return;
8512
+ return !target.disabled && !target.readOnly;
8513
+ }
8514
+ }
8515
+
7990
8516
  /***/ }),
7991
8517
 
7992
8518
  /***/ "./components/table/pipeline/features/rowDetail.tsx":
@@ -8711,6 +9237,10 @@ function singleSelect() {
8711
9237
  return preCellProps;
8712
9238
  },
8713
9239
  render: function render(_, row, rowIndex) {
9240
+ if (row[pipeline.getFeatureOptions('footerRowMetaKey')]) {
9241
+ return null;
9242
+ }
9243
+
8714
9244
  var rowKey = _internals__WEBPACK_IMPORTED_MODULE_10__["internals"].safeGetRowKey(primaryKey, row, rowIndex);
8715
9245
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_9___default.a.createElement(Radio, {
8716
9246
  checked: value === rowKey,
@@ -9299,24 +9829,24 @@ function tips() {
9299
9829
  __webpack_require__.r(__webpack_exports__);
9300
9830
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "treeMetaSymbol", function() { return treeMetaSymbol; });
9301
9831
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "treeMode", function() { return treeMode; });
9302
- /* 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");
9303
- /* 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__);
9304
- /* 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");
9305
- /* 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__);
9306
- /* 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");
9307
- /* 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__);
9308
- /* 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");
9309
- /* 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__);
9310
- /* 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");
9311
- /* 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__);
9312
- /* 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");
9313
- /* 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__);
9314
- /* 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");
9315
- /* 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__);
9316
- /* 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");
9317
- /* 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__);
9318
- /* harmony import */ var _babel_runtime_helpers_toArray__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! @babel/runtime/helpers/toArray */ "./node_modules/@babel/runtime/helpers/toArray.js");
9319
- /* harmony import */ var _babel_runtime_helpers_toArray__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_toArray__WEBPACK_IMPORTED_MODULE_8__);
9832
+ /* 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");
9833
+ /* 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__);
9834
+ /* 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");
9835
+ /* 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__);
9836
+ /* 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");
9837
+ /* 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__);
9838
+ /* 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");
9839
+ /* 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__);
9840
+ /* 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");
9841
+ /* 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__);
9842
+ /* 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");
9843
+ /* 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__);
9844
+ /* 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");
9845
+ /* 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__);
9846
+ /* 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");
9847
+ /* 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__);
9848
+ /* 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");
9849
+ /* 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__);
9320
9850
  /* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/@babel/runtime/helpers/defineProperty.js");
9321
9851
  /* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_9__);
9322
9852
  /* harmony import */ var _babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ "./node_modules/@babel/runtime/helpers/toConsumableArray.js");
@@ -9339,8 +9869,8 @@ __webpack_require__.r(__webpack_exports__);
9339
9869
  /* 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__);
9340
9870
  /* 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");
9341
9871
  /* 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__);
9342
- /* 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");
9343
- /* 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__);
9872
+ /* 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");
9873
+ /* 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__);
9344
9874
  /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! classnames */ "./node_modules/classnames/index.js");
9345
9875
  /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_21___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_21__);
9346
9876
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! react */ "react");
@@ -9396,11 +9926,6 @@ function treeMode() {
9396
9926
  var stateKey = 'treeMode';
9397
9927
  var ctx = pipeline.ctx;
9398
9928
  var primaryKey = pipeline.ensurePrimaryKey('treeMode');
9399
-
9400
- if (typeof primaryKey !== 'string') {
9401
- throw new Error('treeMode 仅支持字符串作为 primaryKey');
9402
- }
9403
-
9404
9929
  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 : [];
9405
9930
  var openKeySet = new Set(openKeys);
9406
9931
 
@@ -9453,7 +9978,7 @@ function treeMode() {
9453
9978
  try {
9454
9979
  for (_iterator.s(); !(_step = _iterator.n()).done;) {
9455
9980
  var _node = _step.value;
9456
- var rowKey = _node[primaryKey];
9981
+ var rowKey = _internals__WEBPACK_IMPORTED_MODULE_24__["internals"].safeGetRowKey(primaryKey, _node, -1);
9457
9982
  var expanded = openKeySet.has(rowKey);
9458
9983
  var isLeaf = isLeafNode(_node, {
9459
9984
  depth: depth,
@@ -9487,12 +10012,15 @@ function treeMode() {
9487
10012
  return columns;
9488
10013
  }
9489
10014
 
9490
- var _columns = _babel_runtime_helpers_toArray__WEBPACK_IMPORTED_MODULE_8___default()(columns),
9491
- firstCol = _columns[0],
9492
- others = _columns.slice(1);
10015
+ var expandColIndex = columns.findIndex(function (_ref3) {
10016
+ var code = _ref3.code;
10017
+ return code && opts.expandColCode === code;
10018
+ });
10019
+ expandColIndex = expandColIndex === -1 ? 0 : expandColIndex;
10020
+ var expandCol = columns[expandColIndex];
9493
10021
 
9494
10022
  var render = function render(value, record, recordIndex) {
9495
- var content = _internals__WEBPACK_IMPORTED_MODULE_24__["internals"].safeRender(firstCol, record, recordIndex);
10023
+ var content = _internals__WEBPACK_IMPORTED_MODULE_24__["internals"].safeRender(expandCol, record, recordIndex);
9496
10024
 
9497
10025
  if (record[treeMetaKey] == null) {
9498
10026
  // 没有 treeMeta 信息的话,就返回原先的渲染结果
@@ -9552,7 +10080,7 @@ function treeMode() {
9552
10080
  };
9553
10081
 
9554
10082
  var getCellProps = function getCellProps(value, record, rowIndex) {
9555
- var prevProps = _internals__WEBPACK_IMPORTED_MODULE_24__["internals"].safeGetCellProps(firstCol, record, rowIndex);
10083
+ var prevProps = _internals__WEBPACK_IMPORTED_MODULE_24__["internals"].safeGetCellProps(expandCol, record, rowIndex);
9556
10084
 
9557
10085
  if (record[treeMetaKey] == null) {
9558
10086
  // 没有 treeMeta 信息的话,就返回原先的 cellProps
@@ -9581,15 +10109,17 @@ function treeMode() {
9581
10109
  });
9582
10110
  };
9583
10111
 
9584
- return [_objectSpread(_objectSpread({}, firstCol), {}, {
10112
+ columns[expandColIndex] = _objectSpread(_objectSpread({}, expandCol), {}, {
9585
10113
  title: /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_22___default.a.createElement("span", {
9586
10114
  style: {
9587
- marginLeft: iconIndent + iconWidth + iconGap
10115
+ marginLeft: iconIndent + iconWidth + iconGap,
10116
+ display: 'flex'
9588
10117
  }
9589
- }, _internals__WEBPACK_IMPORTED_MODULE_24__["internals"].safeRenderHeader(firstCol)),
10118
+ }, _internals__WEBPACK_IMPORTED_MODULE_24__["internals"].safeRenderHeader(expandCol)),
9590
10119
  render: render,
9591
- getCellProps: clickArea === 'cell' ? getCellProps : firstCol.getCellProps
9592
- })].concat(_babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_10___default()(others));
10120
+ getCellProps: clickArea === 'cell' ? getCellProps : expandCol.getCellProps
10121
+ });
10122
+ return _babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_10___default()(columns);
9593
10123
  }
9594
10124
  };
9595
10125
  }
@@ -9861,6 +10391,7 @@ __webpack_require__.r(__webpack_exports__);
9861
10391
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_15___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_15__);
9862
10392
  /* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../utils */ "./components/table/utils/index.tsx");
9863
10393
  /* harmony import */ var _features_autoFill__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ./features/autoFill */ "./components/table/pipeline/features/autoFill.tsx");
10394
+ /* harmony import */ var _features_rangeSelection__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ./features/rangeSelection */ "./components/table/pipeline/features/rangeSelection.tsx");
9864
10395
 
9865
10396
 
9866
10397
 
@@ -9885,6 +10416,7 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va
9885
10416
 
9886
10417
 
9887
10418
 
10419
+
9888
10420
  /**
9889
10421
  * 表格数据处理流水线。TablePipeline 提供了表格数据处理过程中的一些上下方与工具方法,包括……
9890
10422
  *
@@ -10165,19 +10697,19 @@ var TablePipeline = /*#__PURE__*/function () {
10165
10697
 
10166
10698
  result.setTableDomHelper = function (domHelper) {
10167
10699
  _this2.ref.current.domHelper = domHelper;
10168
- }; // if (this.getFeatureOptions(rangeSelectionKey)) {
10169
- // result.clearRangeSelectionStatus = () => {
10170
- // const { rangeSelectedChange } = this.getFeatureOptions(rangeSelectionKey)
10171
- // const rangeSelection = this.getStateAtKey(rangeSelectionKey)
10172
- // if (rangeSelection) {
10173
- // rangeSelectedChange?.(null)
10174
- // }
10175
- // }
10176
- // }
10177
-
10700
+ };
10178
10701
 
10179
10702
  return result;
10180
10703
  }
10704
+ /**
10705
+ * 清除范围选中内容
10706
+ */
10707
+
10708
+ }, {
10709
+ key: "clearRangeSelection",
10710
+ value: function clearRangeSelection() {
10711
+ this.setStateAtKey(_features_rangeSelection__WEBPACK_IMPORTED_MODULE_18__["rangeSelectionKey"], null);
10712
+ }
10181
10713
  }]);
10182
10714
 
10183
10715
  return TablePipeline;
@@ -12600,7 +13132,7 @@ function executeOnTempElement(callback) {
12600
13132
  /*!*******************************************!*\
12601
13133
  !*** ./components/table/utils/element.ts ***!
12602
13134
  \*******************************************/
12603
- /*! exports provided: getEventPath, isElementInEventPath, getTargetEleInEventPath, calculatePointerRelative, calculatePopupRelative, keepWithinBounds */
13135
+ /*! exports provided: getEventPath, isElementInEventPath, getTargetEleInEventPath, calculatePointerRelative, calculatePopupRelative, keepWithinBounds, hasScroll */
12604
13136
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
12605
13137
 
12606
13138
  "use strict";
@@ -12611,6 +13143,7 @@ __webpack_require__.r(__webpack_exports__);
12611
13143
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "calculatePointerRelative", function() { return calculatePointerRelative; });
12612
13144
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "calculatePopupRelative", function() { return calculatePopupRelative; });
12613
13145
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "keepWithinBounds", function() { return keepWithinBounds; });
13146
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "hasScroll", function() { return hasScroll; });
12614
13147
  /** elementUtil html元素用的工具函数 */
12615
13148
  // 获取面板相对屏幕的位置 panel - 面板 trigger - 触发器
12616
13149
  // export function getPanelScreenByTrigger ({ panel, trigger, defaultAlign }) {
@@ -12839,6 +13372,10 @@ function keepWithinBounds(popupParent, popup, x, y, isPerfect) {
12839
13372
  y: y
12840
13373
  };
12841
13374
  }
13375
+ function hasScroll(ele) {
13376
+ var isHorizontal = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
13377
+ return isHorizontal ? ele.scrollWidth > ele.clientWidth : ele.scrollHeight > ele.clientHeight;
13378
+ }
12842
13379
 
12843
13380
  /***/ }),
12844
13381
 
@@ -13375,6 +13912,23 @@ function isLeafNode(node) {
13375
13912
 
13376
13913
  /***/ }),
13377
13914
 
13915
+ /***/ "./components/table/utils/keyCode.ts":
13916
+ /*!*******************************************!*\
13917
+ !*** ./components/table/utils/keyCode.ts ***!
13918
+ \*******************************************/
13919
+ /*! exports provided: default */
13920
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
13921
+
13922
+ "use strict";
13923
+ __webpack_require__.r(__webpack_exports__);
13924
+ var KeyCode = {
13925
+ ENTER: 13,
13926
+ ESC: 27
13927
+ };
13928
+ /* harmony default export */ __webpack_exports__["default"] = (KeyCode);
13929
+
13930
+ /***/ }),
13931
+
13378
13932
  /***/ "./components/table/utils/layeredFilter.ts":
13379
13933
  /*!*************************************************!*\
13380
13934
  !*** ./components/table/utils/layeredFilter.ts ***!
@@ -13681,13 +14235,9 @@ __webpack_require__.r(__webpack_exports__);
13681
14235
 
13682
14236
  function composeEventHandler(handler1, handler2) {
13683
14237
  return function () {
13684
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
13685
- args[_key] = arguments[_key];
13686
- }
13687
-
13688
14238
  // 先执行原有的事件回调函数
13689
- handler1(args);
13690
- handler2(args); // 事件回调函数没有返回值,故这里不进行 return
14239
+ handler1.apply(void 0, arguments);
14240
+ handler2.apply(void 0, arguments); // 事件回调函数没有返回值,故这里不进行 return
13691
14241
  };
13692
14242
  }
13693
14243
  /** 合并两个 cellProps(单元格属性)对象,返回一个合并后的全新对象。