@kdcloudjs/table 1.1.3 → 1.1.4-canary.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (75) hide show
  1. package/dist/@kdcloudjs/table.css +1 -1
  2. package/dist/@kdcloudjs/table.js +642 -288
  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 +10 -2
  9. package/es/table/base/styles.js +17 -7
  10. package/es/table/base/table.d.ts +2 -0
  11. package/es/table/base/table.js +31 -53
  12. package/es/table/base/utils.d.ts +7 -0
  13. package/es/table/base/utils.js +29 -1
  14. package/es/table/pipeline/features/columnDrag.js +21 -11
  15. package/es/table/pipeline/features/columnFilter.d.ts +4 -2
  16. package/es/table/pipeline/features/columnFilter.js +39 -17
  17. package/es/table/pipeline/features/columnResizeWidth.js +1 -1
  18. package/es/table/pipeline/features/filter/DefaultFilterContent.js +22 -2
  19. package/es/table/pipeline/features/filter/DefaultFilterIcon.d.ts +5 -0
  20. package/es/table/pipeline/features/filter/DefaultFilterIcon.js +20 -0
  21. package/es/table/pipeline/features/filter/Filter.d.ts +3 -2
  22. package/es/table/pipeline/features/filter/Filter.js +44 -34
  23. package/es/table/pipeline/features/filter/FilterPanel.d.ts +2 -1
  24. package/es/table/pipeline/features/filter/FilterPanel.js +29 -20
  25. package/es/table/pipeline/features/filter/util.js +4 -4
  26. package/es/table/pipeline/features/footerDataSource.d.ts +9 -0
  27. package/es/table/pipeline/features/footerDataSource.js +25 -0
  28. package/es/table/pipeline/features/index.d.ts +1 -0
  29. package/es/table/pipeline/features/index.js +2 -1
  30. package/es/table/pipeline/features/multiSelect.js +7 -2
  31. package/es/table/pipeline/features/rangeSelection.d.ts +1 -1
  32. package/es/table/pipeline/features/rangeSelection.js +156 -28
  33. package/es/table/pipeline/features/singleSelect.js +4 -0
  34. package/es/table/pipeline/features/treeMode.d.ts +2 -0
  35. package/es/table/pipeline/features/treeMode.js +18 -20
  36. package/es/table/pipeline/pipeline.d.ts +5 -1
  37. package/es/table/pipeline/pipeline.js +12 -11
  38. package/es/table/utils/keyCode.d.ts +4 -0
  39. package/es/table/utils/keyCode.js +4 -0
  40. package/es/table/utils/mergeCellProps.js +2 -6
  41. package/lib/table/base/html-table.js +1 -1
  42. package/lib/table/base/styles.d.ts +10 -2
  43. package/lib/table/base/styles.js +17 -7
  44. package/lib/table/base/table.d.ts +2 -0
  45. package/lib/table/base/table.js +31 -53
  46. package/lib/table/base/utils.d.ts +7 -0
  47. package/lib/table/base/utils.js +35 -1
  48. package/lib/table/pipeline/features/columnDrag.js +21 -11
  49. package/lib/table/pipeline/features/columnFilter.d.ts +4 -2
  50. package/lib/table/pipeline/features/columnFilter.js +37 -17
  51. package/lib/table/pipeline/features/columnResizeWidth.js +1 -1
  52. package/lib/table/pipeline/features/filter/DefaultFilterContent.js +23 -1
  53. package/lib/table/pipeline/features/filter/DefaultFilterIcon.d.ts +5 -0
  54. package/lib/table/pipeline/features/filter/DefaultFilterIcon.js +30 -0
  55. package/lib/table/pipeline/features/filter/Filter.d.ts +3 -2
  56. package/lib/table/pipeline/features/filter/Filter.js +46 -34
  57. package/lib/table/pipeline/features/filter/FilterPanel.d.ts +2 -1
  58. package/lib/table/pipeline/features/filter/FilterPanel.js +30 -19
  59. package/lib/table/pipeline/features/filter/util.js +4 -4
  60. package/lib/table/pipeline/features/footerDataSource.d.ts +9 -0
  61. package/lib/table/pipeline/features/footerDataSource.js +41 -0
  62. package/lib/table/pipeline/features/index.d.ts +1 -0
  63. package/lib/table/pipeline/features/index.js +15 -1
  64. package/lib/table/pipeline/features/multiSelect.js +6 -1
  65. package/lib/table/pipeline/features/rangeSelection.d.ts +1 -1
  66. package/lib/table/pipeline/features/rangeSelection.js +158 -30
  67. package/lib/table/pipeline/features/singleSelect.js +4 -0
  68. package/lib/table/pipeline/features/treeMode.d.ts +2 -0
  69. package/lib/table/pipeline/features/treeMode.js +19 -22
  70. package/lib/table/pipeline/pipeline.d.ts +5 -1
  71. package/lib/table/pipeline/pipeline.js +13 -11
  72. package/lib/table/utils/keyCode.d.ts +4 -0
  73. package/lib/table/utils/keyCode.js +11 -0
  74. package/lib/table/utils/mergeCellProps.js +2 -6
  75. package/package.json +3 -3
@@ -1,6 +1,6 @@
1
1
  /*!
2
2
  *
3
- * @kdcloudjs/table v1.1.2
3
+ * @kdcloudjs/table v1.1.4-canary.1
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"),
@@ -3289,6 +3290,8 @@ var Classes = {
3289
3290
  button: "".concat(prefix, "btn"),
3290
3291
  buttonPrimary: "".concat(prefix, "btn-primary"),
3291
3292
  filterIcon: "".concat(prefix, "filter-icon"),
3293
+ rangeSelection: "".concat(prefix, "range-selection"),
3294
+ tableCellRangeSingleCell: "".concat(prefix, "table-cell-range-single-cell"),
3292
3295
  tableCellRangeSelected: "".concat(prefix, "table-cell-range-selected"),
3293
3296
  tableCellRangeTop: "".concat(prefix, "table-cell-range-top"),
3294
3297
  tableCellRangeLeft: "".concat(prefix, "table-cell-range-left"),
@@ -3308,7 +3311,10 @@ var Classes = {
3308
3311
  rowSpan: "".concat(prefix, "row-span"),
3309
3312
  leaf: "".concat(prefix, "leaf"),
3310
3313
  expanded: "".concat(prefix, "expanded"),
3311
- collapsed: "".concat(prefix, "collapsed")
3314
+ collapsed: "".concat(prefix, "collapsed"),
3315
+ popup: "".concat(prefix, "popup"),
3316
+ popupHeader: "".concat(prefix, "popup-header"),
3317
+ popupBody: "".concat(prefix, "popup-body")
3312
3318
  };
3313
3319
  var MenuClasses = {
3314
3320
  menu: "".concat(prefix, "table-menu"),
@@ -3327,7 +3333,7 @@ var Z = {
3327
3333
  scrollItem: 30,
3328
3334
  loadingIndicator: 40
3329
3335
  };
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);
3336
+ 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
3337
  var defaultCSSVariables = {
3332
3338
  '--row-height': '48px',
3333
3339
  '--color': '#333',
@@ -3337,7 +3343,7 @@ var defaultCSSVariables = {
3337
3343
  '--primary-color': '#5582F3',
3338
3344
  '--primary-color-level1': 'rgb(242, 248, 255)',
3339
3345
  '--primary-color-level2': 'rgb(135, 173, 255)',
3340
- '--icon-color': '#bfbfbf',
3346
+ '--icon-color': '#666666',
3341
3347
  '--strong-border-color': '#d9d9d9',
3342
3348
  '--header-row-height': '32px',
3343
3349
  '--header-color': '#333',
@@ -3353,11 +3359,15 @@ var defaultCSSVariables = {
3353
3359
  '--cell-border-horizontal': '1px solid #dfe3e8',
3354
3360
  '---cell-border-vertical': '1px solid #dfe3e8',
3355
3361
  '--header-cell-border': '1px solid #dfe3e8',
3356
- '--header-cell-border-horizontal': '1px solid #dfe3e8'
3362
+ '--cell-border-vertical': '1px solid #dfe3e8',
3363
+ '--header-cell-border-horizontal': '1px solid #dfe3e8',
3364
+ '--header-cell-border-vertical': '1px solid #dfe3e8'
3357
3365
  };
3358
3366
  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);
3367
+ 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"])));
3368
+ 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);
3369
+ 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 }\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 \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.verticalScrollPlaceholder, Classes.tableFooter, Classes.verticalScrollPlaceholder, Classes.tableHeaderCellResize);
3370
+ 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
3371
 
3362
3372
  function getCssVariableText(obj) {
3363
3373
  return Object.keys(obj).reduce(function (acc, key) {
@@ -3400,22 +3410,22 @@ __webpack_require__.r(__webpack_exports__);
3400
3410
  /* 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
3411
  /* 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
3412
  /* 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__);
3413
+ /* harmony import */ var _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! @babel/runtime/helpers/extends */ "./node_modules/@babel/runtime/helpers/extends.js");
3414
+ /* harmony import */ var _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_11___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_11__);
3415
+ /* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/@babel/runtime/helpers/classCallCheck.js");
3416
+ /* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_12___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_12__);
3417
+ /* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/@babel/runtime/helpers/createClass.js");
3418
+ /* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_13___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_13__);
3419
+ /* harmony import */ var _babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! @babel/runtime/helpers/assertThisInitialized */ "./node_modules/@babel/runtime/helpers/assertThisInitialized.js");
3420
+ /* harmony import */ var _babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_14___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_14__);
3421
+ /* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! @babel/runtime/helpers/inherits */ "./node_modules/@babel/runtime/helpers/inherits.js");
3422
+ /* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_15___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_15__);
3423
+ /* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "./node_modules/@babel/runtime/helpers/possibleConstructorReturn.js");
3424
+ /* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_16___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_16__);
3425
+ /* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "./node_modules/@babel/runtime/helpers/getPrototypeOf.js");
3426
+ /* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_17___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_17__);
3427
+ /* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/@babel/runtime/helpers/defineProperty.js");
3428
+ /* 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
3429
  /* 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
3430
  /* 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
3431
  /* 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 +3456,8 @@ __webpack_require__.r(__webpack_exports__);
3446
3456
  /* harmony import */ var _loading__WEBPACK_IMPORTED_MODULE_37__ = __webpack_require__(/*! ./loading */ "./components/table/base/loading.tsx");
3447
3457
  /* harmony import */ var _styles__WEBPACK_IMPORTED_MODULE_38__ = __webpack_require__(/*! ./styles */ "./components/table/base/styles.ts");
3448
3458
  /* 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");
3459
+ /* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_40__ = __webpack_require__(/*! ../utils */ "./components/table/utils/index.tsx");
3460
+ /* harmony import */ var _renderTemplates__WEBPACK_IMPORTED_MODULE_41__ = __webpack_require__(/*! ./renderTemplates */ "./components/table/base/renderTemplates.tsx");
3452
3461
 
3453
3462
 
3454
3463
 
@@ -3483,7 +3492,7 @@ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len
3483
3492
 
3484
3493
 
3485
3494
 
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); }; }
3495
+ 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
3496
 
3488
3497
  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
3498
 
@@ -3503,75 +3512,48 @@ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Re
3503
3512
 
3504
3513
 
3505
3514
 
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
3515
  var propsDotEmptyContentDeprecatedWarned = false;
3534
3516
 
3535
3517
  function warnPropsDotEmptyContentIsDeprecated() {
3536
3518
  if (!propsDotEmptyContentDeprecatedWarned) {
3537
3519
  propsDotEmptyContentDeprecatedWarned = true;
3538
- _utils__WEBPACK_IMPORTED_MODULE_41__["console"].warn('BaseTable props.emptyContent 已经过时,请使用 props.components.EmptyContent 来自定义数据为空时的表格表现');
3520
+ _utils__WEBPACK_IMPORTED_MODULE_40__["console"].warn('BaseTable props.emptyContent 已经过时,请使用 props.components.EmptyContent 来自定义数据为空时的表格表现');
3539
3521
  }
3540
3522
  }
3541
3523
 
3542
3524
  var BaseTable = /*#__PURE__*/function (_React$Component) {
3543
- _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_14___default()(BaseTable, _React$Component);
3525
+ _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_15___default()(BaseTable, _React$Component);
3544
3526
 
3545
3527
  var _super = _createSuper(BaseTable);
3546
3528
 
3547
3529
  function BaseTable(props) {
3548
3530
  var _this;
3549
3531
 
3550
- _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_11___default()(this, BaseTable);
3532
+ _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_12___default()(this, BaseTable);
3551
3533
 
3552
3534
  _this = _super.call(this, props);
3553
3535
 
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));
3536
+ _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
3537
 
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());
3538
+ _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
3539
 
3558
- _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_17___default()(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_13___default()(_this), "domHelper", void 0);
3540
+ _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_18___default()(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_14___default()(_this), "domHelper", void 0);
3559
3541
 
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"]());
3542
+ _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
3543
 
3562
- _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_17___default()(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_13___default()(_this), "lastInfo", void 0);
3544
+ _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_18___default()(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_14___default()(_this), "lastInfo", void 0);
3563
3545
 
3564
- _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_17___default()(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_13___default()(_this), "props$", void 0);
3546
+ _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_18___default()(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_14___default()(_this), "props$", void 0);
3565
3547
 
3566
- _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_17___default()(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_13___default()(_this), "hasScrollY", false);
3548
+ _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_18___default()(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_14___default()(_this), "hasScrollY", false);
3567
3549
 
3568
- _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_17___default()(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_13___default()(_this), "resizeObserver", void 0);
3550
+ _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_18___default()(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_14___default()(_this), "resizeObserver", void 0);
3569
3551
 
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"]());
3552
+ _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
3553
 
3572
- _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_17___default()(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_13___default()(_this), "offsetY", 0);
3554
+ _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_18___default()(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_14___default()(_this), "offsetY", 0);
3573
3555
 
3574
- _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_17___default()(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_13___default()(_this), "handleRowMouseEnter", function (e) {
3556
+ _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_18___default()(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_14___default()(_this), "handleRowMouseEnter", function (e) {
3575
3557
  var nodeList = _this.domHelper.getRowNodeListByEvent(e);
3576
3558
 
3577
3559
  nodeList && nodeList.forEach(function (node) {
@@ -3579,7 +3561,7 @@ var BaseTable = /*#__PURE__*/function (_React$Component) {
3579
3561
  });
3580
3562
  });
3581
3563
 
3582
- _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_17___default()(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_13___default()(_this), "handleRowMouseLeave", function (e) {
3564
+ _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_18___default()(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_14___default()(_this), "handleRowMouseLeave", function (e) {
3583
3565
  var nodeList = _this.domHelper.getRowNodeListByEvent(e);
3584
3566
 
3585
3567
  nodeList && nodeList.forEach(function (node) {
@@ -3587,7 +3569,7 @@ var BaseTable = /*#__PURE__*/function (_React$Component) {
3587
3569
  });
3588
3570
  });
3589
3571
 
3590
- _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_17___default()(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_13___default()(_this), "renderTableBody", function (info) {
3572
+ _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_18___default()(_babel_runtime_helpers_assertThisInitialized__WEBPACK_IMPORTED_MODULE_14___default()(_this), "renderTableBody", function (info) {
3591
3573
  // console.log('render body')
3592
3574
  var _this$props = _this.props,
3593
3575
  dataSource = _this$props.dataSource,
@@ -3598,7 +3580,7 @@ var BaseTable = /*#__PURE__*/function (_React$Component) {
3598
3580
  footerDataSource = _this$props.footerDataSource;
3599
3581
  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
3582
 
3601
- var virtualStyle = _utils__WEBPACK_IMPORTED_MODULE_41__["browserType"].isIE || _utils__WEBPACK_IMPORTED_MODULE_41__["browserType"].isEdge ? {
3583
+ var virtualStyle = _utils__WEBPACK_IMPORTED_MODULE_40__["browserType"].isIE || _utils__WEBPACK_IMPORTED_MODULE_40__["browserType"].isEdge ? {
3602
3584
  overflow: 'hidden'
3603
3585
  } : {};
3604
3586
 
@@ -3636,7 +3618,7 @@ var BaseTable = /*#__PURE__*/function (_React$Component) {
3636
3618
  topBlank = _info$verticalRenderR.topBlank,
3637
3619
  bottomIndex = _info$verticalRenderR.bottomIndex;
3638
3620
  var stickyRightOffset = _this.hasScrollY ? _this.getScrollBarWidth() : 0;
3639
- var renderBody = Object(_renderTemplates__WEBPACK_IMPORTED_MODULE_42__["default"])('body');
3621
+ var renderBody = Object(_renderTemplates__WEBPACK_IMPORTED_MODULE_41__["default"])('body');
3640
3622
 
3641
3623
  if (typeof renderBody === 'function') {
3642
3624
  return renderBody(info, _this.props, {
@@ -3699,13 +3681,13 @@ var BaseTable = /*#__PURE__*/function (_React$Component) {
3699
3681
  /** 自定义滚动条宽度为table宽度,使滚动条滑块宽度相同 */
3700
3682
 
3701
3683
 
3702
- _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_12___default()(BaseTable, [{
3684
+ _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_13___default()(BaseTable, [{
3703
3685
  key: "getDoms",
3704
3686
  value: // 最近一次渲染的计算结果缓存
3705
3687
 
3706
3688
  /** @deprecated BaseTable.getDoms() 已经过时,请勿调用 */
3707
3689
  function getDoms() {
3708
- _utils__WEBPACK_IMPORTED_MODULE_41__["console"].warn('[kd-table] BaseTable.getDoms() 已经过时');
3690
+ _utils__WEBPACK_IMPORTED_MODULE_40__["console"].warn('[kd-table] BaseTable.getDoms() 已经过时');
3709
3691
  return this.domHelper;
3710
3692
  }
3711
3693
  }, {
@@ -3775,7 +3757,7 @@ var BaseTable = /*#__PURE__*/function (_React$Component) {
3775
3757
  var _this$props4 = this.props,
3776
3758
  stickyTop = _this$props4.stickyTop,
3777
3759
  hasHeader = _this$props4.hasHeader;
3778
- var renderHeader = Object(_renderTemplates__WEBPACK_IMPORTED_MODULE_42__["default"])('header');
3760
+ var renderHeader = Object(_renderTemplates__WEBPACK_IMPORTED_MODULE_41__["default"])('header');
3779
3761
 
3780
3762
  if (typeof renderHeader === 'function') {
3781
3763
  return renderHeader(info, this.props);
@@ -3868,7 +3850,7 @@ var BaseTable = /*#__PURE__*/function (_React$Component) {
3868
3850
  getRowProps = _this$props5.getRowProps,
3869
3851
  primaryKey = _this$props5.primaryKey,
3870
3852
  stickyBottom = _this$props5.stickyBottom;
3871
- var renderFooter = Object(_renderTemplates__WEBPACK_IMPORTED_MODULE_42__["default"])('footer');
3853
+ var renderFooter = Object(_renderTemplates__WEBPACK_IMPORTED_MODULE_41__["default"])('footer');
3872
3854
 
3873
3855
  if (typeof renderFooter === 'function') {
3874
3856
  return renderFooter(info, this.props, {
@@ -3952,6 +3934,8 @@ var BaseTable = /*#__PURE__*/function (_React$Component) {
3952
3934
  }, {
3953
3935
  key: "render",
3954
3936
  value: function render() {
3937
+ var _cx;
3938
+
3955
3939
  // console.log('render table')
3956
3940
  var info = Object(_calculations__WEBPACK_IMPORTED_MODULE_30__["calculateRenderInfo"])(this);
3957
3941
  this.lastInfo = info;
@@ -3967,30 +3951,31 @@ var BaseTable = /*#__PURE__*/function (_React$Component) {
3967
3951
  isLoading = _this$props7.isLoading,
3968
3952
  getTableProps = _this$props7.getTableProps,
3969
3953
  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, {
3954
+ components = _this$props7.components,
3955
+ bordered = _this$props7.bordered;
3956
+ var artTableWrapperClassName = classnames__WEBPACK_IMPORTED_MODULE_26___default()(_styles__WEBPACK_IMPORTED_MODULE_38__["Classes"].artTableWrapper, (_cx = {
3972
3957
  'use-outer-border': useOuterBorder,
3973
3958
  empty: dataSource.length === 0,
3974
3959
  lock: info.hasLockColumn,
3975
3960
  'has-header': hasHeader,
3976
3961
  'sticky-header': isStickyHeader !== null && isStickyHeader !== void 0 ? isStickyHeader : isStickyHead,
3977
3962
  'has-footer': footerDataSource.length > 0,
3978
- 'sticky-footer': isStickyFooter,
3979
- 'ie-polyfill-wrapper': _utils__WEBPACK_IMPORTED_MODULE_41__["browserType"].isIE
3980
- }, className);
3963
+ 'sticky-footer': isStickyFooter
3964
+ }, _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
3965
 
3982
- var artTableWrapperProps = _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_17___default()({
3966
+ var artTableWrapperProps = _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_18___default()({
3983
3967
  className: artTableWrapperClassName,
3984
3968
  style: style
3985
3969
  }, _utils__WEBPACK_IMPORTED_MODULE_39__["STYLED_REF_PROP"], this.artTableWrapperRef);
3986
3970
 
3971
+ var tableProps = getTableProps() || {};
3987
3972
  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
3973
  visible: isLoading,
3989
3974
  LoadingIcon: components.LoadingIcon,
3990
3975
  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)));
3976
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_27___default.a.createElement("div", _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_11___default()({}, tableProps, {
3977
+ className: classnames__WEBPACK_IMPORTED_MODULE_26___default()(_styles__WEBPACK_IMPORTED_MODULE_38__["Classes"].artTable, tableProps.className)
3978
+ }), this.renderTableHeader(info), this.renderTableBody(info), this.renderTableFooter(info), this.renderLockShadows(info)), this.renderStickyScroll(info)));
3994
3979
  }
3995
3980
  }, {
3996
3981
  key: "componentDidMount",
@@ -4007,10 +3992,12 @@ var BaseTable = /*#__PURE__*/function (_React$Component) {
4007
3992
 
4008
3993
  var _this$props8 = this.props,
4009
3994
  cssVariables = _this$props8.cssVariables,
4010
- enableCSSVariables = _this$props8.enableCSSVariables;
4011
- cssPolifill({
3995
+ enableCSSVariables = _this$props8.enableCSSVariables,
3996
+ bordered = _this$props8.bordered;
3997
+ Object(_utils__WEBPACK_IMPORTED_MODULE_39__["cssPolifill"])({
4012
3998
  variables: cssVariables || {},
4013
- enableCSSVariables: enableCSSVariables
3999
+ enableCSSVariables: enableCSSVariables,
4000
+ bordered: bordered
4014
4001
  });
4015
4002
  (_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
4003
  (_this$props$setTableD = (_this$props10 = this.props).setTableDomHelper) === null || _this$props$setTableD === void 0 ? void 0 : _this$props$setTableD.call(_this$props10, this.domHelper);
@@ -4082,15 +4069,15 @@ var BaseTable = /*#__PURE__*/function (_React$Component) {
4082
4069
 
4083
4070
  this.rootSubscription.add(Object(rxjs__WEBPACK_IMPORTED_MODULE_28__["combineLatest"])([richVisibleRects$.pipe(rxjs_operators__WEBPACK_IMPORTED_MODULE_29__["map"](function (p) {
4084
4071
  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];
4072
+ }), 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) {
4073
+ var _ref2 = _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_10___default()(_ref, 2),
4074
+ prevProps = _ref2[0],
4075
+ props = _ref2[1];
4089
4076
 
4090
4077
  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];
4078
+ }))]).subscribe(function (_ref3) {
4079
+ var _ref4 = _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_10___default()(_ref3, 1),
4080
+ clipRect = _ref4[0];
4094
4081
 
4095
4082
  var loadingIndicator = _this2.domHelper.getLoadingIndicator();
4096
4083
 
@@ -4109,9 +4096,9 @@ var BaseTable = /*#__PURE__*/function (_React$Component) {
4109
4096
  horizontal = _this2$lastInfo$useVi.horizontal,
4110
4097
  vertical = _this2$lastInfo$useVi.vertical;
4111
4098
  return horizontal || vertical;
4112
- }), rxjs_operators__WEBPACK_IMPORTED_MODULE_29__["map"](function (_ref6) {
4113
- var clipRect = _ref6.clipRect,
4114
- offsetY = _ref6.offsetY;
4099
+ }), rxjs_operators__WEBPACK_IMPORTED_MODULE_29__["map"](function (_ref5) {
4100
+ var clipRect = _ref5.clipRect,
4101
+ offsetY = _ref5.offsetY;
4115
4102
  return {
4116
4103
  maxRenderHeight: clipRect.bottom - clipRect.top,
4117
4104
  maxRenderWidth: clipRect.right - clipRect.left,
@@ -4128,9 +4115,9 @@ var BaseTable = /*#__PURE__*/function (_React$Component) {
4128
4115
  })).subscribe(function (sizeAndOffset) {
4129
4116
  _this2.setState(sizeAndOffset);
4130
4117
  }));
4131
- this.rootSubscription.add(richVisibleRects$.pipe(rxjs_operators__WEBPACK_IMPORTED_MODULE_29__["map"](function (_ref7) {
4132
- var clipRect = _ref7.clipRect,
4133
- offsetY = _ref7.offsetY;
4118
+ this.rootSubscription.add(richVisibleRects$.pipe(rxjs_operators__WEBPACK_IMPORTED_MODULE_29__["map"](function (_ref6) {
4119
+ var clipRect = _ref6.clipRect,
4120
+ offsetY = _ref6.offsetY;
4134
4121
  return {
4135
4122
  maxRenderHeight: clipRect.bottom - clipRect.top,
4136
4123
  maxRenderWidth: clipRect.right - clipRect.left,
@@ -4276,7 +4263,7 @@ var BaseTable = /*#__PURE__*/function (_React$Component) {
4276
4263
  return BaseTable;
4277
4264
  }(react__WEBPACK_IMPORTED_MODULE_27___default.a.Component);
4278
4265
 
4279
- _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_17___default()(BaseTable, "defaultProps", {
4266
+ _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_18___default()(BaseTable, "defaultProps", {
4280
4267
  hasHeader: true,
4281
4268
  isStickyHeader: true,
4282
4269
  stickyTop: 0,
@@ -4301,7 +4288,7 @@ _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_17___default()(Ba
4301
4288
  /*!*****************************************!*\
4302
4289
  !*** ./components/table/base/utils.tsx ***!
4303
4290
  \*****************************************/
4304
- /*! exports provided: STYLED_VERSION, STYLED_REF_PROP, OVERSCAN_SIZE, AUTO_VIRTUAL_THRESHOLD, sum, throttledWindowResize$, addResizeObserver, getScrollbarSize, syncScrollLeft, shallowEqual, composeRowPropsGetter, getTableScrollHeaderDOM, getTableScrollFooterDOM */
4291
+ /*! exports provided: STYLED_VERSION, STYLED_REF_PROP, OVERSCAN_SIZE, AUTO_VIRTUAL_THRESHOLD, sum, throttledWindowResize$, addResizeObserver, getScrollbarSize, syncScrollLeft, shallowEqual, composeRowPropsGetter, getTableScrollHeaderDOM, getTableScrollFooterDOM, cssPolifill */
4305
4292
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
4306
4293
 
4307
4294
  "use strict";
@@ -4319,6 +4306,7 @@ __webpack_require__.r(__webpack_exports__);
4319
4306
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "composeRowPropsGetter", function() { return composeRowPropsGetter; });
4320
4307
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getTableScrollHeaderDOM", function() { return getTableScrollHeaderDOM; });
4321
4308
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getTableScrollFooterDOM", function() { return getTableScrollFooterDOM; });
4309
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "cssPolifill", function() { return cssPolifill; });
4322
4310
  /* 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
4311
  /* 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
4312
  /* 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 +4345,10 @@ __webpack_require__.r(__webpack_exports__);
4357
4345
  /* harmony import */ var rxjs_operators__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! rxjs/operators */ "./node_modules/rxjs/_esm5/operators/index.js");
4358
4346
  /* 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
4347
  /* 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");
4348
+ /* 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");
4349
+ /* harmony import */ var _utils_mergeCellProps__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! ../utils/mergeCellProps */ "./components/table/utils/mergeCellProps.ts");
4350
+ /* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(/*! ../utils */ "./components/table/utils/index.tsx");
4351
+ /* harmony import */ var _styles__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(/*! ./styles */ "./components/table/base/styles.ts");
4362
4352
 
4363
4353
 
4364
4354
 
@@ -4389,6 +4379,8 @@ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len
4389
4379
 
4390
4380
 
4391
4381
 
4382
+
4383
+
4392
4384
  /** styled-components 类库的版本,ali-react-table 同时支持 v3 和 v5 */
4393
4385
 
4394
4386
  var STYLED_VERSION = styled_components__WEBPACK_IMPORTED_MODULE_20__["createGlobalStyle"] != null ? 'v5' : 'v3';
@@ -4568,18 +4560,44 @@ function composeRowPropsGetter(getRowProps, pendingRowProps) {
4568
4560
 
4569
4561
  if (keys.length) {
4570
4562
  return function (row, rowIndex) {
4571
- return Object(_utils_mergeCellProps__WEBPACK_IMPORTED_MODULE_21__["default"])(getRowProps(row, rowIndex), pendingRowProps);
4563
+ return Object(_utils_mergeCellProps__WEBPACK_IMPORTED_MODULE_22__["default"])(getRowProps(row, rowIndex), pendingRowProps);
4572
4564
  };
4573
4565
  }
4574
4566
 
4575
4567
  return getRowProps;
4576
4568
  }
4577
4569
  function getTableScrollHeaderDOM(domHelper) {
4578
- return _utils__WEBPACK_IMPORTED_MODULE_22__["browserType"].isIE ? domHelper.tableHeaderMain : domHelper.tableHeader;
4570
+ return _utils__WEBPACK_IMPORTED_MODULE_23__["browserType"].isIE ? domHelper.tableHeaderMain : domHelper.tableHeader;
4579
4571
  }
4580
4572
  function getTableScrollFooterDOM(domHelper) {
4581
- return _utils__WEBPACK_IMPORTED_MODULE_22__["browserType"].isIE ? domHelper.tableFooterMain : domHelper.tableFooter;
4573
+ return _utils__WEBPACK_IMPORTED_MODULE_23__["browserType"].isIE ? domHelper.tableFooterMain : domHelper.tableFooter;
4582
4574
  }
4575
+ var cssPolifill = function cssPolifill(_ref) {
4576
+ var variables = _ref.variables,
4577
+ enableCSSVariables = _ref.enableCSSVariables,
4578
+ bordered = _ref.bordered;
4579
+
4580
+ if (enableCSSVariables === false) {
4581
+ return;
4582
+ }
4583
+
4584
+ var conditionCSSVariables = {}; // 默认情况下存在td、th无左右边框,开启`bordered`属性后才开启,否则隐藏这两种属性
4585
+
4586
+ if (!bordered) {
4587
+ conditionCSSVariables['--cell-border-vertical'] = 'none';
4588
+ conditionCSSVariables['--header-cell-border-vertical'] = 'none';
4589
+ }
4590
+
4591
+ Object(css_vars_ponyfill__WEBPACK_IMPORTED_MODULE_21__["default"])({
4592
+ // exclude: 'link[href*="semantic-ui"]',
4593
+ // onlyLegacy: false,
4594
+ // rootElement: rootElement,
4595
+ include: 'style[data-styled]',
4596
+ variables: _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_8___default()({}, _styles__WEBPACK_IMPORTED_MODULE_24__["defaultCSSVariables"], variables, conditionCSSVariables),
4597
+ watch: true,
4598
+ silent: true
4599
+ });
4600
+ };
4583
4601
 
4584
4602
  /***/ }),
4585
4603
 
@@ -5246,7 +5264,7 @@ function columnDrag() {
5246
5264
  },
5247
5265
  headerCellProps: Object(_utils__WEBPACK_IMPORTED_MODULE_10__["mergeCellProps"])(col.headerCellProps, {
5248
5266
  onMouseDown: !isLeaf || path.length > 1 ? undefined : function (e) {
5249
- if (e.button !== 0) {
5267
+ if (e.button !== 0 || !e.currentTarget.contains(e.target)) {
5250
5268
  return;
5251
5269
  }
5252
5270
 
@@ -5272,6 +5290,8 @@ function columnDrag() {
5272
5290
  var currentTarget = e.currentTarget;
5273
5291
  var rect = e.currentTarget.parentElement.getClientRects()[0];
5274
5292
  var startX = rect.left;
5293
+ var mouseDownClientX = e.clientX;
5294
+ var mouseDownClientY = e.clientY;
5275
5295
  var moveData = [];
5276
5296
  var allColumns = Object(_utils__WEBPACK_IMPORTED_MODULE_10__["collectNodes"])(columns);
5277
5297
  var tableBodyClientRect = tableBody.getBoundingClientRect();
@@ -5291,8 +5311,6 @@ function columnDrag() {
5291
5311
  }
5292
5312
  };
5293
5313
 
5294
- var stopClickPropagationFlag = false;
5295
-
5296
5314
  function handleMouseMove(e) {
5297
5315
  var client = {
5298
5316
  clientX: e.clientX,
@@ -5306,12 +5324,6 @@ function columnDrag() {
5306
5324
  if (e.clientX - leftPosition < 20) {
5307
5325
  return;
5308
5326
  } else {
5309
- // 阻止列头点击事件,防止拖动后触发列头过滤事件
5310
- if (stopClickPropagationFlag === false) {
5311
- stopClickPropagationFlag = true;
5312
- currentTarget.addEventListener('click', stopClickPropagation);
5313
- }
5314
-
5315
5327
  e.stopPropagation();
5316
5328
  }
5317
5329
 
@@ -5428,14 +5440,19 @@ function columnDrag() {
5428
5440
  }
5429
5441
 
5430
5442
  function handleMouseUp(e) {
5431
- e.stopPropagation();
5432
5443
  document.body.removeEventListener('mousemove', handleMouseMove);
5433
5444
  document.body.removeEventListener('mouseup', handleMouseUp);
5434
5445
  window.removeEventListener('selectstart', disableSelect);
5446
+
5447
+ if (_isMoveWhenClicking(mouseDownClientX, mouseDownClientY, e.clientX, e.clientY)) {
5448
+ e.stopPropagation(); // 存在移动就阻止冒泡
5449
+
5450
+ currentTarget.addEventListener('click', stopClickPropagation); // 阻止列头点击事件,防止拖动后触发列头过滤事件
5451
+ }
5452
+
5435
5453
  window.requestAnimationFrame(function () {
5436
5454
  // 取消阻止列头点击事件
5437
5455
  currentTarget.removeEventListener('click', stopClickPropagation);
5438
- stopClickPropagationFlag = false;
5439
5456
  currentTarget = null;
5440
5457
 
5441
5458
  var _moveData = moveData,
@@ -5553,6 +5570,17 @@ function moveAllChildren(cols, cloumnsTranslateData, width, isMinus) {
5553
5570
  });
5554
5571
  }
5555
5572
 
5573
+ function _isMoveWhenClicking(mouseDownClientX, mouseDownClientY, mouseUpClientX, mouseUpClientY) {
5574
+ var xDiff = mouseUpClientX - mouseDownClientX;
5575
+ var yDiff = mouseUpClientY - mouseDownClientY; // 鼠标点按和松开的偏移量大于5px,认为存在移动
5576
+
5577
+ if (Math.sqrt(xDiff * xDiff + yDiff * yDiff) > 5) {
5578
+ return true;
5579
+ }
5580
+
5581
+ return false;
5582
+ }
5583
+
5556
5584
  /***/ }),
5557
5585
 
5558
5586
  /***/ "./components/table/pipeline/features/columnFilter.tsx":
@@ -5649,7 +5677,8 @@ function filter() {
5649
5677
  keepDataSource = opts.keepDataSource,
5650
5678
  mode = opts.mode,
5651
5679
  filterIcon = opts.filterIcon,
5652
- stopClickEventPropagation = opts.stopClickEventPropagation;
5680
+ stopClickEventPropagation = opts.stopClickEventPropagation,
5681
+ hideFilterPopupHeader = opts.hideFilterPopupHeader;
5653
5682
  var inputFilters = (_ref = (_ref2 = filters !== null && filters !== void 0 ? filters : pipeline.getStateAtKey(stateKey)) !== null && _ref2 !== void 0 ? _ref2 : defaultFilters) !== null && _ref !== void 0 ? _ref : [];
5654
5683
  inputFilters = mode === 'single' ? inputFilters.slice(0, 1) : inputFilters;
5655
5684
  var inputFiltersMap = new Map(inputFilters.map(function (filterItem) {
@@ -5668,7 +5697,7 @@ function filter() {
5668
5697
  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;
5669
5698
 
5670
5699
  if (filterable) {
5671
- var _col$features2, _result$title, _cx;
5700
+ var _col$features2, _col$features$filterI, _col$features3, _result$title, _cx;
5672
5701
 
5673
5702
  var handleFilterChanged = function handleFilterChanged(filterItem) {
5674
5703
  var nextFiltersMap = new Map(inputFiltersMap);
@@ -5701,18 +5730,20 @@ function filter() {
5701
5730
  };
5702
5731
 
5703
5732
  var filterPanel = (_col$features2 = col.features) === null || _col$features2 === void 0 ? void 0 : _col$features2.filterPanel;
5733
+ 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;
5704
5734
  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), {}, {
5705
5735
  title: null
5706
5736
  }))])), [/*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_17___default.a.createElement(_filter__WEBPACK_IMPORTED_MODULE_21__["Filter"], {
5707
5737
  key: "filter",
5708
5738
  FilterPanelContent: filterPanel,
5709
- filterIcon: filterIcon,
5739
+ filterIcon: colFilterIcon,
5710
5740
  filterModel: inputFiltersMap.get(col.code),
5711
5741
  setFilterModel: handleFilterChanged,
5712
5742
  setFilter: setFilter,
5713
5743
  isFilterActive: filterActive,
5714
5744
  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)),
5715
- stopClickEventPropagation: stopClickEventPropagation
5745
+ stopClickEventPropagation: stopClickEventPropagation,
5746
+ hideFilterPopupHeader: hideFilterPopupHeader
5716
5747
  })]); // result.headerCellProps = mergeCellProps(col.headerCellProps, {
5717
5748
  // style: {
5718
5749
  // paddingRight: '18px'
@@ -5740,9 +5771,9 @@ function filter() {
5740
5771
 
5741
5772
  var columns = pipeline.getColumns();
5742
5773
  var columnsMap = new Map(Object(_utils__WEBPACK_IMPORTED_MODULE_20__["collectNodes"])(columns, 'leaf-only').filter(function (col) {
5743
- var _col$features3, _col$features4;
5774
+ var _col$features4, _col$features5;
5744
5775
 
5745
- 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;
5776
+ 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;
5746
5777
  }).map(function (col) {
5747
5778
  return [col.code, col];
5748
5779
  }));
@@ -5750,8 +5781,8 @@ function filter() {
5750
5781
  return [item.key, _objectSpread({}, item)];
5751
5782
  }));
5752
5783
 
5753
- function isMatchedFilterCondition(record, rowIndex) {
5754
- return !filtersKeys.some(function (key) {
5784
+ function isMatchedFilterCondition(record) {
5785
+ return filtersKeys.every(function (key) {
5755
5786
  var _columnsMap$get, _columnsMap$get$featu;
5756
5787
 
5757
5788
  var filterItem = inputFiltersMap.get(key);
@@ -5765,20 +5796,13 @@ function filter() {
5765
5796
  } else {
5766
5797
  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"));
5767
5798
  comparisonFn = defaultFilterOptionsMap.get('contain').filter;
5768
- } // 不符合过滤条件,退出循环
5769
-
5799
+ }
5770
5800
 
5771
- return !comparisonFn(filterItem.filter, filterItem)(_internals__WEBPACK_IMPORTED_MODULE_19__["internals"].safeGetValue(columnsMap.get(key), record, rowIndex), record);
5801
+ return comparisonFn(filterItem.filter, filterItem)(_internals__WEBPACK_IMPORTED_MODULE_19__["internals"].safeGetValue(columnsMap.get(key), record, -1), record);
5772
5802
  });
5773
5803
  }
5774
5804
 
5775
- return dataSource.reduce(function (pre, record, rowIndex) {
5776
- if (isMatchedFilterCondition(record, rowIndex)) {
5777
- return pre.concat([record]);
5778
- }
5779
-
5780
- return pre;
5781
- }, []);
5805
+ return layeredFilter(dataSource, isMatchedFilterCondition);
5782
5806
  }
5783
5807
 
5784
5808
  pipeline.dataSource(processDataSource(dataSource));
@@ -5787,6 +5811,30 @@ function filter() {
5787
5811
  };
5788
5812
  }
5789
5813
 
5814
+ function layeredFilter(array, matchFn) {
5815
+ return dfs(array);
5816
+
5817
+ function dfs(rows) {
5818
+ var parentMatched = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
5819
+ return rows.map(function (row) {
5820
+ var currentMatched = matchFn(row);
5821
+
5822
+ if (Object(_utils__WEBPACK_IMPORTED_MODULE_20__["isLeafNode"])(row)) {
5823
+ return (parentMatched || currentMatched) && _objectSpread({}, row);
5824
+ }
5825
+
5826
+ var children = row.children;
5827
+
5828
+ var rowAfterFilterChildren = _objectSpread(_objectSpread({}, row), {}, {
5829
+ children: dfs(children, parentMatched || currentMatched)
5830
+ });
5831
+
5832
+ var matchedByChildren = !Object(_utils__WEBPACK_IMPORTED_MODULE_20__["isLeafNode"])(rowAfterFilterChildren);
5833
+ return (parentMatched || currentMatched || matchedByChildren) && rowAfterFilterChildren;
5834
+ }).filter(Boolean);
5835
+ }
5836
+ }
5837
+
5790
5838
  /***/ }),
5791
5839
 
5792
5840
  /***/ "./components/table/pipeline/features/columnHover.tsx":
@@ -6069,7 +6117,7 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va
6069
6117
 
6070
6118
 
6071
6119
 
6072
- 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"])));
6120
+ 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"])));
6073
6121
  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"])));
6074
6122
 
6075
6123
  function clamp(min, x, max) {
@@ -6720,6 +6768,7 @@ __webpack_require__.r(__webpack_exports__);
6720
6768
  /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_8__);
6721
6769
  /* harmony import */ var _util__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./util */ "./components/table/pipeline/features/filter/util.tsx");
6722
6770
  /* harmony import */ var _base_styles__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../base/styles */ "./components/table/base/styles.ts");
6771
+ /* harmony import */ var _utils_keyCode__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../utils/keyCode */ "./components/table/utils/keyCode.ts");
6723
6772
 
6724
6773
 
6725
6774
 
@@ -6734,6 +6783,7 @@ var _templateObject;
6734
6783
 
6735
6784
 
6736
6785
 
6786
+
6737
6787
  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"]);
6738
6788
 
6739
6789
  function DefaultFilterContent(_ref) {
@@ -6753,6 +6803,7 @@ function DefaultFilterContent(_ref) {
6753
6803
  innerValue = _React$useState4[0],
6754
6804
  setInnerValue = _React$useState4[1];
6755
6805
 
6806
+ var inputRef = Object(react__WEBPACK_IMPORTED_MODULE_6__["useRef"])();
6756
6807
  var handleClick = react__WEBPACK_IMPORTED_MODULE_6___default.a.useCallback(function (option) {
6757
6808
  setSelectedValue(option.key);
6758
6809
  }, []);
@@ -6770,10 +6821,26 @@ function DefaultFilterContent(_ref) {
6770
6821
  });
6771
6822
  };
6772
6823
 
6824
+ var handleKeyDown = function handleKeyDown(e) {
6825
+ if (e.keyCode === _utils_keyCode__WEBPACK_IMPORTED_MODULE_11__["default"].ENTER) {
6826
+ confirm();
6827
+ }
6828
+ };
6829
+
6773
6830
  Object(react__WEBPACK_IMPORTED_MODULE_6__["useEffect"])(function () {
6774
6831
  setSelectedValue((filterModel === null || filterModel === void 0 ? void 0 : filterModel.filterCondition) || 'contain');
6775
6832
  setInnerValue((filterModel === null || filterModel === void 0 ? void 0 : filterModel.filter) || '');
6776
6833
  }, [filterModel]);
6834
+ Object(react__WEBPACK_IMPORTED_MODULE_6__["useEffect"])(function () {
6835
+ // 兼容设置焦点后发生滚动
6836
+ setTimeout(function () {
6837
+ var _inputRef$current;
6838
+
6839
+ (_inputRef$current = inputRef.current) === null || _inputRef$current === void 0 ? void 0 : _inputRef$current.focus({
6840
+ preventScroll: true
6841
+ });
6842
+ });
6843
+ }, []);
6777
6844
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_6___default.a.createElement(DefaultFilterContentStyle, null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_6___default.a.createElement("div", {
6778
6845
  className: "filter-option-list"
6779
6846
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_6___default.a.createElement("ul", null, _util__WEBPACK_IMPORTED_MODULE_9__["DEFAULT_FILTER_OPTIONS"].map(function (option, index) {
@@ -6795,7 +6862,9 @@ function DefaultFilterContent(_ref) {
6795
6862
  value: innerValue,
6796
6863
  onChange: function onChange(e) {
6797
6864
  setInnerValue(e.target.value);
6798
- }
6865
+ },
6866
+ onKeyDown: handleKeyDown,
6867
+ ref: inputRef
6799
6868
  })), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_6___default.a.createElement("div", {
6800
6869
  className: "filter-footer"
6801
6870
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_6___default.a.createElement("button", {
@@ -6815,6 +6884,41 @@ function DefaultFilterContent(_ref) {
6815
6884
 
6816
6885
  /***/ }),
6817
6886
 
6887
+ /***/ "./components/table/pipeline/features/filter/DefaultFilterIcon.tsx":
6888
+ /*!*************************************************************************!*\
6889
+ !*** ./components/table/pipeline/features/filter/DefaultFilterIcon.tsx ***!
6890
+ \*************************************************************************/
6891
+ /*! exports provided: default */
6892
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
6893
+
6894
+ "use strict";
6895
+ __webpack_require__.r(__webpack_exports__);
6896
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return DefaultFilterIcon; });
6897
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
6898
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
6899
+
6900
+ function DefaultFilterIcon(_ref) {
6901
+ var width = _ref.width,
6902
+ height = _ref.height;
6903
+ return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("svg", {
6904
+ width: width,
6905
+ height: height,
6906
+ style: {
6907
+ verticalAlign: 'middle'
6908
+ },
6909
+ viewBox: "0 0 1024 1024",
6910
+ focusable: "false",
6911
+ "data-icon": "filter",
6912
+ fill: "currentColor",
6913
+ version: "1.1",
6914
+ xmlns: "http://www.w3.org/2000/svg"
6915
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("path", {
6916
+ 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"
6917
+ }));
6918
+ }
6919
+
6920
+ /***/ }),
6921
+
6818
6922
  /***/ "./components/table/pipeline/features/filter/Filter.tsx":
6819
6923
  /*!**************************************************************!*\
6820
6924
  !*** ./components/table/pipeline/features/filter/Filter.tsx ***!
@@ -6838,10 +6942,11 @@ __webpack_require__.r(__webpack_exports__);
6838
6942
  /* harmony import */ var _base_styles__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../base/styles */ "./components/table/base/styles.ts");
6839
6943
  /* harmony import */ var _FilterPanel__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./FilterPanel */ "./components/table/pipeline/features/filter/FilterPanel.tsx");
6840
6944
  /* harmony import */ var _DefaultFilterContent__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./DefaultFilterContent */ "./components/table/pipeline/features/filter/DefaultFilterContent.tsx");
6841
- /* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../utils */ "./components/table/utils/index.tsx");
6842
- /* harmony import */ var _base_utils__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../base/utils */ "./components/table/base/utils.tsx");
6843
- /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! classnames */ "./node_modules/classnames/index.js");
6844
- /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_11___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_11__);
6945
+ /* harmony import */ var _DefaultFilterIcon__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./DefaultFilterIcon */ "./components/table/pipeline/features/filter/DefaultFilterIcon.tsx");
6946
+ /* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../utils */ "./components/table/utils/index.tsx");
6947
+ /* harmony import */ var _base_utils__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../base/utils */ "./components/table/base/utils.tsx");
6948
+ /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! classnames */ "./node_modules/classnames/index.js");
6949
+ /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_12___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_12__);
6845
6950
 
6846
6951
 
6847
6952
 
@@ -6857,23 +6962,22 @@ var _templateObject;
6857
6962
 
6858
6963
 
6859
6964
 
6860
- var HEADER_ICON_OFFSET_Y = 6 + 1; // padding-top + border
6965
+
6966
+ var HEADER_ICON_OFFSET_Y = 8 + 1; // padding-top + border
6861
6967
 
6862
6968
  var HEADER_ICON_OFFSET_X = 16 + 1; // padding-left+ border
6863
6969
 
6864
- 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"])));
6970
+ 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_6__["Classes"].filterIcon);
6865
6971
 
6866
6972
  function Panel(_ref) {
6867
6973
  var ele = _ref.ele,
6868
6974
  filterIcon = _ref.filterIcon,
6869
6975
  hidePanel = _ref.hidePanel,
6870
- renderPanelContent = _ref.renderPanelContent;
6976
+ renderPanelContent = _ref.renderPanelContent,
6977
+ hideFilterPopupHeader = _ref.hideFilterPopupHeader;
6871
6978
  var filterPanelRef = react__WEBPACK_IMPORTED_MODULE_3___default.a.useRef(null);
6872
6979
 
6873
- var _React$useState = react__WEBPACK_IMPORTED_MODULE_3___default.a.useState(Object(_utils__WEBPACK_IMPORTED_MODULE_9__["calculatePopupRelative"])(ele, document.body, {
6874
- x: HEADER_ICON_OFFSET_X,
6875
- y: HEADER_ICON_OFFSET_Y
6876
- })),
6980
+ var _React$useState = react__WEBPACK_IMPORTED_MODULE_3___default.a.useState(Object(_utils__WEBPACK_IMPORTED_MODULE_10__["calculatePopupRelative"])(ele, document.body, _getPanelOffset(ele, hideFilterPopupHeader))),
6877
6981
  _React$useState2 = _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_1___default()(_React$useState, 2),
6878
6982
  position = _React$useState2[0],
6879
6983
  setPosition = _React$useState2[1];
@@ -6884,14 +6988,11 @@ function Panel(_ref) {
6884
6988
  };
6885
6989
 
6886
6990
  var handleFilterPanelResize = function handleFilterPanelResize(resize) {
6887
- setPosition(Object(_utils__WEBPACK_IMPORTED_MODULE_9__["calculatePopupRelative"])(ele, document.body, {
6888
- x: HEADER_ICON_OFFSET_X,
6889
- y: HEADER_ICON_OFFSET_Y
6890
- }));
6991
+ setPosition(Object(_utils__WEBPACK_IMPORTED_MODULE_10__["calculatePopupRelative"])(ele, document.body, _getPanelOffset(ele, hideFilterPopupHeader)));
6891
6992
  };
6892
6993
 
6893
6994
  Object(react__WEBPACK_IMPORTED_MODULE_3__["useEffect"])(function () {
6894
- var resizeObserver = Object(_base_utils__WEBPACK_IMPORTED_MODULE_10__["addResizeObserver"])(filterPanelRef.current.children[0], handleFilterPanelResize);
6995
+ var resizeObserver = Object(_base_utils__WEBPACK_IMPORTED_MODULE_11__["addResizeObserver"])(filterPanelRef.current.children[0], handleFilterPanelResize);
6895
6996
  return function () {
6896
6997
  resizeObserver && resizeObserver.disconnect();
6897
6998
  };
@@ -6902,7 +7003,8 @@ function Panel(_ref) {
6902
7003
  style: style,
6903
7004
  onClose: hidePanel,
6904
7005
  position: position,
6905
- filterIcon: filterIcon
7006
+ filterIcon: filterIcon,
7007
+ hideFilterPopupHeader: hideFilterPopupHeader
6906
7008
  }, renderPanelContent()));
6907
7009
  }
6908
7010
 
@@ -6919,7 +7021,8 @@ function Filter(_ref2) {
6919
7021
  setFilterModel = _ref2.setFilterModel,
6920
7022
  filterModel = _ref2.filterModel,
6921
7023
  isFilterActive = _ref2.isFilterActive,
6922
- stopClickEventPropagation = _ref2.stopClickEventPropagation;
7024
+ stopClickEventPropagation = _ref2.stopClickEventPropagation,
7025
+ hideFilterPopupHeader = _ref2.hideFilterPopupHeader;
6923
7026
 
6924
7027
  var _React$useState3 = react__WEBPACK_IMPORTED_MODULE_3___default.a.useState(false),
6925
7028
  _React$useState4 = _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_1___default()(_React$useState3, 2),
@@ -6927,15 +7030,12 @@ function Filter(_ref2) {
6927
7030
  setShowPanel = _React$useState4[1];
6928
7031
 
6929
7032
  var iconRef = react__WEBPACK_IMPORTED_MODULE_3___default.a.useRef(null);
7033
+ var iconWrapRef = react__WEBPACK_IMPORTED_MODULE_3___default.a.useRef();
6930
7034
 
6931
7035
  var hidePanel = function hidePanel() {
6932
7036
  return setShowPanel(false);
6933
7037
  };
6934
7038
 
6935
- var handleMouseDown = function handleMouseDown(e) {
6936
- e.stopPropagation(); // 阻止触发拖拽
6937
- };
6938
-
6939
7039
  var renderPanelContent = function renderPanelContent() {
6940
7040
  if (FilterPanelContent) {
6941
7041
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_3___default.a.createElement(FilterPanelContent, {
@@ -6955,6 +7055,12 @@ function Filter(_ref2) {
6955
7055
  };
6956
7056
 
6957
7057
  var handleIconClick = function handleIconClick(e) {
7058
+ // 只有当icon区域点击会触发面板展开
7059
+ // 防止 createPortal 区域的点击触发该事件
7060
+ if (!e.currentTarget.contains(e.target)) {
7061
+ return;
7062
+ }
7063
+
6958
7064
  if (stopClickEventPropagation) {
6959
7065
  e.stopPropagation();
6960
7066
  }
@@ -6962,33 +7068,42 @@ function Filter(_ref2) {
6962
7068
  setShowPanel(true);
6963
7069
  };
6964
7070
 
6965
- 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));
7071
+ var iconClassName = classnames__WEBPACK_IMPORTED_MODULE_12___default()((_cx = {}, _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(_cx, className, true), _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(_cx, 'filter-panel-open', showPanel), _cx));
7072
+ var displayFilterIcon = typeof filterIcon === 'function' ? filterIcon(isFilterActive) : filterIcon;
6966
7073
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_3___default.a.createElement(FilterIconSpanStyle, {
6967
7074
  style: style,
6968
7075
  className: iconClassName,
6969
- onMouseDown: handleMouseDown,
6970
- ref: iconRef
7076
+ onClick: handleIconClick,
7077
+ ref: iconWrapRef
6971
7078
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_3___default.a.createElement("span", {
6972
- className: _base_styles__WEBPACK_IMPORTED_MODULE_6__["Classes"].filterIcon,
6973
- onClick: handleIconClick
6974
- }, filterIcon || /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_3___default.a.createElement("svg", {
7079
+ ref: iconRef,
7080
+ className: _base_styles__WEBPACK_IMPORTED_MODULE_6__["Classes"].filterIcon
7081
+ }, displayFilterIcon || /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_3___default.a.createElement(_DefaultFilterIcon__WEBPACK_IMPORTED_MODULE_9__["default"], {
6975
7082
  width: size,
6976
- height: size,
6977
- viewBox: "64 64 896 896",
6978
- focusable: "false",
6979
- "data-icon": "filter",
6980
- fill: "currentColor",
6981
- "aria-hidden": "true"
6982
- }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_3___default.a.createElement("path", {
6983
- 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"
6984
- }))), showPanel && /*#__PURE__*/Object(react_dom__WEBPACK_IMPORTED_MODULE_4__["createPortal"])( /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_3___default.a.createElement(Panel, {
6985
- ele: iconRef.current,
6986
- filterIcon: filterIcon,
7083
+ height: size
7084
+ })), showPanel && /*#__PURE__*/Object(react_dom__WEBPACK_IMPORTED_MODULE_4__["createPortal"])( /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_3___default.a.createElement(Panel, {
7085
+ ele: hideFilterPopupHeader ? iconWrapRef.current : iconRef.current,
7086
+ filterIcon: displayFilterIcon,
6987
7087
  hidePanel: hidePanel,
6988
- renderPanelContent: renderPanelContent
7088
+ renderPanelContent: renderPanelContent,
7089
+ hideFilterPopupHeader: hideFilterPopupHeader
6989
7090
  }), document.body));
6990
7091
  }
6991
7092
 
7093
+ function _getPanelOffset(ele, hideFilterPopupHeader) {
7094
+ if (hideFilterPopupHeader) {
7095
+ return {
7096
+ x: 0,
7097
+ y: 0 - ele.offsetHeight
7098
+ };
7099
+ }
7100
+
7101
+ return {
7102
+ x: HEADER_ICON_OFFSET_X,
7103
+ y: HEADER_ICON_OFFSET_Y
7104
+ };
7105
+ }
7106
+
6992
7107
  /* harmony default export */ __webpack_exports__["default"] = (Filter);
6993
7108
 
6994
7109
  /***/ }),
@@ -7026,6 +7141,8 @@ __webpack_require__.r(__webpack_exports__);
7026
7141
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_10__);
7027
7142
  /* harmony import */ var styled_components__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! styled-components */ "./node_modules/styled-components/dist/styled-components.browser.esm.js");
7028
7143
  /* harmony import */ var _utils___WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../utils/ */ "./components/table/utils/index.tsx");
7144
+ /* harmony import */ var _DefaultFilterIcon__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./DefaultFilterIcon */ "./components/table/pipeline/features/filter/DefaultFilterIcon.tsx");
7145
+ /* harmony import */ var _base_styles__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../../base/styles */ "./components/table/base/styles.ts");
7029
7146
 
7030
7147
 
7031
7148
 
@@ -7046,7 +7163,9 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va
7046
7163
 
7047
7164
 
7048
7165
 
7049
- 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"])));
7166
+
7167
+
7168
+ 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);
7050
7169
 
7051
7170
  var useWindowEvents = function useWindowEvents(func, evens) {
7052
7171
  react__WEBPACK_IMPORTED_MODULE_10___default.a.useEffect(function () {
@@ -7066,7 +7185,8 @@ function FilterPanel(_ref) {
7066
7185
  children = _ref.children,
7067
7186
  position = _ref.position,
7068
7187
  filterIcon = _ref.filterIcon,
7069
- onClose = _ref.onClose;
7188
+ onClose = _ref.onClose,
7189
+ hideFilterPopupHeader = _ref.hideFilterPopupHeader;
7070
7190
 
7071
7191
  var _useState = Object(react__WEBPACK_IMPORTED_MODULE_10__["useState"])(position),
7072
7192
  _useState2 = _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_1___default()(_useState, 2),
@@ -7088,32 +7208,38 @@ function FilterPanel(_ref) {
7088
7208
  setPerfectPosition(Object(_utils___WEBPACK_IMPORTED_MODULE_12__["keepWithinBounds"])(document.body, ref.current, position.x, position.y, true));
7089
7209
  setVisible(true);
7090
7210
  }, [position]);
7211
+ var hasPopupMouseEvent = Object(react__WEBPACK_IMPORTED_MODULE_10__["useRef"])(false);
7212
+
7213
+ var handleMouseEvent = function handleMouseEvent() {
7214
+ // 当弹出的过滤面板内部发生鼠标按下、抬起事件时,标记当前事件,并在click捕获期清除标记,用来确定鼠标按下、抬起发生在过滤面板内部
7215
+ // 利用了React.createPortal冒泡是根据React Tree的特性:
7216
+ // https://jwwnz.medium.com/react-portals-and-event-bubbling-8df3e35ca3f1
7217
+ hasPopupMouseEvent.current = true;
7218
+ };
7219
+
7091
7220
  useWindowEvents(function (e) {
7092
- return !isContainPanel(e) && onClose();
7093
- }, ['mousedown']);
7221
+ !isContainPanel(e) && !hasPopupMouseEvent.current && onClose();
7222
+ hasPopupMouseEvent.current = false;
7223
+ }, ['click']);
7094
7224
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_10___default.a.createElement(FilterPanelStyle, {
7225
+ className: _base_styles__WEBPACK_IMPORTED_MODULE_14__["Classes"].popup,
7095
7226
  style: _objectSpread(_objectSpread({}, style), {}, {
7096
7227
  left: visible ? perfectPosition.x : 0,
7097
7228
  top: visible ? perfectPosition.y : 0,
7098
7229
  opacity: visible ? 1 : 0
7099
7230
  }),
7231
+ onMouseDown: handleMouseEvent,
7232
+ onMouseUp: handleMouseEvent,
7100
7233
  ref: ref
7101
- }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_10___default.a.createElement("div", {
7102
- className: 'popup-header'
7234
+ }, !hideFilterPopupHeader ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_10___default.a.createElement("div", {
7235
+ className: _base_styles__WEBPACK_IMPORTED_MODULE_14__["Classes"].popupHeader
7103
7236
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_10___default.a.createElement("span", {
7104
- className: 'popup-header-icon'
7105
- }, filterIcon || /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_10___default.a.createElement("svg", {
7106
- width: 14,
7107
- height: 14,
7108
- viewBox: "64 64 896 896",
7109
- focusable: "false",
7110
- "data-icon": "filter",
7111
- fill: "currentColor",
7112
- "aria-hidden": "true"
7113
- }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_10___default.a.createElement("path", {
7114
- 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"
7115
- })))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_10___default.a.createElement("div", {
7116
- className: "popup-body"
7237
+ className: _base_styles__WEBPACK_IMPORTED_MODULE_14__["Classes"].filterIcon
7238
+ }, filterIcon || /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_10___default.a.createElement(_DefaultFilterIcon__WEBPACK_IMPORTED_MODULE_13__["default"], {
7239
+ width: 12,
7240
+ height: 12
7241
+ }))) : null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_10___default.a.createElement("div", {
7242
+ className: _base_styles__WEBPACK_IMPORTED_MODULE_14__["Classes"].popupBody
7117
7243
  }, children));
7118
7244
  }
7119
7245
 
@@ -7178,7 +7304,7 @@ var DEFAULT_FILTER_OPTIONS = [{
7178
7304
  data = data + '';
7179
7305
  }
7180
7306
 
7181
- return data.includes(value);
7307
+ return data.includes(value[0]);
7182
7308
  };
7183
7309
  }
7184
7310
  }, {
@@ -7194,7 +7320,7 @@ var DEFAULT_FILTER_OPTIONS = [{
7194
7320
  data = data + '';
7195
7321
  }
7196
7322
 
7197
- return !data.includes(value);
7323
+ return !data.includes(value[0]);
7198
7324
  };
7199
7325
  }
7200
7326
  }, {
@@ -7202,7 +7328,7 @@ var DEFAULT_FILTER_OPTIONS = [{
7202
7328
  key: 'equal',
7203
7329
  filter: function filter(value) {
7204
7330
  return function (data) {
7205
- return value !== data;
7331
+ return value[0] === data;
7206
7332
  };
7207
7333
  }
7208
7334
  }, {
@@ -7210,7 +7336,7 @@ var DEFAULT_FILTER_OPTIONS = [{
7210
7336
  key: 'notEqual',
7211
7337
  filter: function filter(value) {
7212
7338
  return function (data) {
7213
- return value !== data;
7339
+ return value[0] !== data;
7214
7340
  };
7215
7341
  }
7216
7342
  }, {
@@ -7232,13 +7358,83 @@ var DEFAULT_FILTER_OPTIONS = [{
7232
7358
  }];
7233
7359
 
7234
7360
 
7361
+ /***/ }),
7362
+
7363
+ /***/ "./components/table/pipeline/features/footerDataSource.ts":
7364
+ /*!****************************************************************!*\
7365
+ !*** ./components/table/pipeline/features/footerDataSource.ts ***!
7366
+ \****************************************************************/
7367
+ /*! exports provided: footerRowMetaSymbol, footerDataSource */
7368
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
7369
+
7370
+ "use strict";
7371
+ __webpack_require__.r(__webpack_exports__);
7372
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "footerRowMetaSymbol", function() { return footerRowMetaSymbol; });
7373
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "footerDataSource", function() { return footerDataSource; });
7374
+ /* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/@babel/runtime/helpers/defineProperty.js");
7375
+ /* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__);
7376
+ /* 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");
7377
+ /* 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__);
7378
+ /* 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");
7379
+ /* 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__);
7380
+ /* 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");
7381
+ /* 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__);
7382
+ /* 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");
7383
+ /* 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__);
7384
+ /* 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");
7385
+ /* 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__);
7386
+ /* 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");
7387
+ /* 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__);
7388
+ /* 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");
7389
+ /* 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__);
7390
+ /* 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");
7391
+ /* 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__);
7392
+ /* 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");
7393
+ /* 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__);
7394
+
7395
+
7396
+ 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; }
7397
+
7398
+ 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; }
7399
+
7400
+
7401
+
7402
+
7403
+
7404
+
7405
+
7406
+
7407
+
7408
+
7409
+ var footerRowMetaSymbol = Symbol('footer-row');
7410
+ function footerDataSource() {
7411
+ var opts = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
7412
+ return function footerDataSourceStep(pipeline) {
7413
+ var _opts$dataSource, _opts$footerRowMetaKe;
7414
+
7415
+ var footerDataSource = (_opts$dataSource = opts.dataSource) !== null && _opts$dataSource !== void 0 ? _opts$dataSource : pipeline.getFooterDataSource();
7416
+ var footerRowMetaKey = (_opts$footerRowMetaKe = opts.footerRowMetaKey) !== null && _opts$footerRowMetaKe !== void 0 ? _opts$footerRowMetaKe : footerRowMetaSymbol;
7417
+ pipeline.setFeatureOptions('footerRowMetaKey', footerRowMetaKey);
7418
+
7419
+ if (footerDataSource) {
7420
+ pipeline.footerDataSource(footerDataSource.map(function (row) {
7421
+ return _objectSpread(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()({}, footerRowMetaKey, true), row);
7422
+ }));
7423
+ } else {
7424
+ console.warn('调用 pipeline.use(features.footerDataSource()) 前请先设置页脚数据源,设置方法有:pipeline.use(features.footerDataSource({dataSource:any[]})) 或者 pipeline.footerDataSource(any[])');
7425
+ }
7426
+
7427
+ return pipeline;
7428
+ };
7429
+ }
7430
+
7235
7431
  /***/ }),
7236
7432
 
7237
7433
  /***/ "./components/table/pipeline/features/index.ts":
7238
7434
  /*!*****************************************************!*\
7239
7435
  !*** ./components/table/pipeline/features/index.ts ***!
7240
7436
  \*****************************************************/
7241
- /*! 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 */
7437
+ /*! 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 */
7242
7438
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
7243
7439
 
7244
7440
  "use strict";
@@ -7327,6 +7523,14 @@ __webpack_require__.r(__webpack_exports__);
7327
7523
  /* harmony import */ var _mergeCellHover__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ./mergeCellHover */ "./components/table/pipeline/features/mergeCellHover.tsx");
7328
7524
  /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "mergeCellHover", function() { return _mergeCellHover__WEBPACK_IMPORTED_MODULE_17__["mergeCellHover"]; });
7329
7525
 
7526
+ /* harmony import */ var _footerDataSource__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ./footerDataSource */ "./components/table/pipeline/features/footerDataSource.ts");
7527
+ /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "footerDataSource", function() { return _footerDataSource__WEBPACK_IMPORTED_MODULE_18__["footerDataSource"]; });
7528
+
7529
+ /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "FooterDataSourceFeatureOptions", function() { return _footerDataSource__WEBPACK_IMPORTED_MODULE_18__["FooterDataSourceFeatureOptions"]; });
7530
+
7531
+ /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "footerRowMetaSymbol", function() { return _footerDataSource__WEBPACK_IMPORTED_MODULE_18__["footerRowMetaSymbol"]; });
7532
+
7533
+
7330
7534
 
7331
7535
 
7332
7536
 
@@ -7526,7 +7730,8 @@ function multiSelect() {
7526
7730
  /** 所有有效的 keys(disable 状态为 false) */
7527
7731
 
7528
7732
  var allKeys = [];
7529
- dataSource.forEach(function (row, rowIndex) {
7733
+ var flatDataSource = Object(_utils__WEBPACK_IMPORTED_MODULE_17__["collectNodes"])(dataSource);
7734
+ flatDataSource.forEach(function (row, rowIndex) {
7530
7735
  var rowKey = _internals__WEBPACK_IMPORTED_MODULE_15__["internals"].safeGetRowKey(primaryKey, row, rowIndex);
7531
7736
  fullKeySet.add(rowKey); // 在 allKeys 中排除被禁用的 key
7532
7737
 
@@ -7592,6 +7797,10 @@ function multiSelect() {
7592
7797
  return Object(_utils__WEBPACK_IMPORTED_MODULE_17__["mergeCellProps"])(preCellProps, checkboxCellProps);
7593
7798
  },
7594
7799
  render: function render(_, row, rowIndex) {
7800
+ if (row[pipeline.getFeatureOptions('footerRowMetaKey')]) {
7801
+ return null;
7802
+ }
7803
+
7595
7804
  var key = _internals__WEBPACK_IMPORTED_MODULE_15__["internals"].safeGetRowKey(primaryKey, row, rowIndex);
7596
7805
  var checked = set.has(key);
7597
7806
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_14___default.a.createElement(Checkbox, {
@@ -7700,13 +7909,13 @@ function multiSelect() {
7700
7909
  /*!***************************************************************!*\
7701
7910
  !*** ./components/table/pipeline/features/rangeSelection.tsx ***!
7702
7911
  \***************************************************************/
7703
- /*! exports provided: rangeSelectionKey, lastClickCell, rangeSelection */
7912
+ /*! exports provided: rangeSelectionKey, lastClickCellKey, rangeSelection */
7704
7913
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
7705
7914
 
7706
7915
  "use strict";
7707
7916
  __webpack_require__.r(__webpack_exports__);
7708
7917
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "rangeSelectionKey", function() { return rangeSelectionKey; });
7709
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "lastClickCell", function() { return lastClickCell; });
7918
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "lastClickCellKey", function() { return lastClickCellKey; });
7710
7919
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "rangeSelection", function() { return rangeSelection; });
7711
7920
  /* 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");
7712
7921
  /* 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__);
@@ -7760,40 +7969,42 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va
7760
7969
 
7761
7970
 
7762
7971
  var rangeSelectionKey = 'rangeSelection';
7763
- var lastClickCell = 'lastClickCell';
7972
+ var lastClickCellKey = 'lastClickCell';
7764
7973
  function rangeSelection(opts) {
7765
7974
  return function step(pipeline) {
7766
7975
  var SCROLL_SIZE = 30;
7767
7976
  var tableBody = pipeline.ref.current.domHelper && pipeline.ref.current.domHelper.tableBody;
7977
+ var tableFooter = pipeline.ref.current.domHelper && pipeline.ref.current.domHelper.tableFooter;
7768
7978
 
7769
7979
  if (!tableBody) {
7770
7980
  return pipeline;
7771
7981
  }
7772
7982
 
7773
7983
  var columns = pipeline.getColumns();
7984
+ var dataSource = pipeline.getDataSource();
7774
7985
 
7775
7986
  var rangeSelectedChange = function rangeSelectedChange(rangeSelection) {
7776
7987
  var _opts$rangeSelectedCh;
7777
7988
 
7778
7989
  pipeline.setStateAtKey(rangeSelectionKey, rangeSelection);
7779
7990
  opts === null || opts === void 0 ? void 0 : (_opts$rangeSelectedCh = opts.rangeSelectedChange) === null || _opts$rangeSelectedCh === void 0 ? void 0 : _opts$rangeSelectedCh.call(opts, rangeSelection);
7780
- }; // if (!pipeline.getFeatureOptions(rangeSelectionKey)) {
7781
- // pipeline.setFeatureOptions(rangeSelectionKey, {
7782
- // optionKey: rangeSelectionKey,
7783
- // rangeSelectedChange: rangeSelectedChange
7784
- // })
7785
- // }
7786
-
7991
+ };
7787
7992
 
7788
7993
  var setRangeSelection = function setRangeSelection(startDragCell, draggingCell) {
7789
- if (!startDragCell || !draggingCell || isSameCell(startDragCell, draggingCell)) return;
7994
+ if (!startDragCell || !draggingCell) return;
7790
7995
  var rangeColumns = getRangeColumns(startDragCell, draggingCell, columns);
7791
- var isTopToBottom = startDragCell.rowIndex <= draggingCell.rowIndex;
7996
+
7997
+ var _getRangeSelectionRow = getRangeSelectionRowInfo(startDragCell, draggingCell, dataSource),
7998
+ startRow = _getRangeSelectionRow.startRow,
7999
+ endRow = _getRangeSelectionRow.endRow,
8000
+ footerRowRange = _getRangeSelectionRow.footerRowRange;
8001
+
7792
8002
  var rangeSelection = {
7793
- startRow: isTopToBottom ? startDragCell.rowIndex : startDragCell.rowIndex + startDragCell.rowSpan - 1,
7794
- endRow: isTopToBottom ? draggingCell.rowIndex + draggingCell.rowSpan - 1 : draggingCell.rowIndex,
8003
+ startRow: startRow,
8004
+ endRow: endRow,
7795
8005
  columns: rangeColumns,
7796
- startColumn: startDragCell.column
8006
+ startColumn: startDragCell.column,
8007
+ footerRowRange: footerRowRange
7797
8008
  };
7798
8009
  rangeSelectedChange(rangeSelection);
7799
8010
  };
@@ -7804,23 +8015,23 @@ function rangeSelection(opts) {
7804
8015
 
7805
8016
  if (clickCell) {
7806
8017
  if (event.shiftKey) {
7807
- var _lastClickCell = pipeline.getStateAtKey(lastClickCell);
8018
+ var _lastClickCell = pipeline.getStateAtKey(lastClickCellKey);
7808
8019
 
7809
8020
  if (_lastClickCell) {
7810
8021
  setRangeSelection(_lastClickCell, clickCell);
7811
8022
  } else {
7812
8023
  // 第一次进来就按住shift键,这时候要记住点击的单元格
7813
- pipeline.setStateAtKey(lastClickCell, clickCell);
8024
+ pipeline.setStateAtKey(lastClickCellKey, clickCell);
7814
8025
  }
7815
8026
  } else {
7816
- pipeline.setStateAtKey(lastClickCell, clickCell);
7817
- rangeSelectedChange(null);
8027
+ pipeline.setStateAtKey(lastClickCellKey, clickCell);
8028
+ setRangeSelection(clickCell, clickCell);
7818
8029
  }
7819
8030
  }
7820
8031
  };
7821
8032
 
7822
8033
  var onMouseDown = function onMouseDown(mouseDownEvent) {
7823
- if (mouseDownEvent.button !== 0 || !Object(_utils__WEBPACK_IMPORTED_MODULE_11__["isElementInEventPath"])(tableBody, mouseDownEvent.nativeEvent)) return; // mouseDownEvent.preventDefault()
8034
+ if (mouseDownEvent.button !== 0 || !(Object(_utils__WEBPACK_IMPORTED_MODULE_11__["isElementInEventPath"])(tableBody, mouseDownEvent.nativeEvent) || Object(_utils__WEBPACK_IMPORTED_MODULE_11__["isElementInEventPath"])(tableFooter, mouseDownEvent.nativeEvent))) return; // mouseDownEvent.preventDefault()
7824
8035
  // shift + 点击选中
7825
8036
 
7826
8037
  shiftKeySelect(mouseDownEvent);
@@ -7876,10 +8087,11 @@ function rangeSelection(opts) {
7876
8087
  };
7877
8088
 
7878
8089
  var onKeyDown = function onKeyDown(e) {
7879
- if (!Object(_utils__WEBPACK_IMPORTED_MODULE_11__["isElementInEventPath"])(tableBody, e.nativeEvent)) return;
8090
+ if (!(Object(_utils__WEBPACK_IMPORTED_MODULE_11__["isElementInEventPath"])(tableBody, e.nativeEvent) || Object(_utils__WEBPACK_IMPORTED_MODULE_11__["isElementInEventPath"])(tableFooter, e.nativeEvent))) return;
7880
8091
 
7881
8092
  if ((e.ctrlKey || e.metaKey) && e.key === 'a') {
7882
8093
  var rowLen = pipeline.getDataSource().length;
8094
+ var footerDataSource = pipeline.getFooterDataSource() || [];
7883
8095
 
7884
8096
  if (columns.length && rowLen) {
7885
8097
  opts.preventkDefaultOfKeyDownEvent !== false && e.preventDefault();
@@ -7887,7 +8099,11 @@ function rangeSelection(opts) {
7887
8099
  startRow: 0,
7888
8100
  endRow: rowLen - 1,
7889
8101
  columns: columns,
7890
- startColumn: columns[0]
8102
+ startColumn: columns[0],
8103
+ footerRowRange: footerDataSource.length > 0 ? {
8104
+ startRow: 0,
8105
+ endRow: footerDataSource.length - 1
8106
+ } : null
7891
8107
  });
7892
8108
  }
7893
8109
  }
@@ -7896,7 +8112,8 @@ function rangeSelection(opts) {
7896
8112
  pipeline.addTableProps({
7897
8113
  onMouseDown: onMouseDown,
7898
8114
  onKeyDown: onKeyDown,
7899
- tabIndex: -1
8115
+ tabIndex: -1,
8116
+ className: classnames__WEBPACK_IMPORTED_MODULE_16___default()([_base_styles__WEBPACK_IMPORTED_MODULE_15__["Classes"].rangeSelection])
7900
8117
  }); // todo: 后面可以把mousedown放到一个流里面
7901
8118
 
7902
8119
  return pipeline.mapColumns(Object(_utils__WEBPACK_IMPORTED_MODULE_11__["makeRecursiveMapper"])(function (col) {
@@ -7910,15 +8127,29 @@ function rangeSelection(opts) {
7910
8127
  var _cx;
7911
8128
 
7912
8129
  var prevCellProps = prevGetCellProps === null || prevGetCellProps === void 0 ? void 0 : prevGetCellProps(value, record, rowIndex);
8130
+ var isInFooter = record[pipeline.getFeatureOptions('footerRowMetaKey')];
7913
8131
  var startRow = rangeSelection.startRow,
7914
8132
  endRow = rangeSelection.endRow,
7915
- columns = rangeSelection.columns;
7916
- var startIndex = startRow < endRow ? startRow : endRow;
7917
- var endIndex = startRow < endRow ? endRow : startRow;
8133
+ columns = rangeSelection.columns,
8134
+ footerRowRange = rangeSelection.footerRowRange;
8135
+
8136
+ var _getRowIndex = getRowIndex(startRow, endRow),
8137
+ startRowIndex = _getRowIndex.startRowIndex,
8138
+ endRowIndex = _getRowIndex.endRowIndex;
8139
+
8140
+ var _getFooterRowIndex = getFooterRowIndex(footerRowRange),
8141
+ footerStartRowIndex = _getFooterRowIndex.startRowIndex,
8142
+ footerEndRowIndex = _getFooterRowIndex.endRowIndex;
8143
+
7918
8144
  var startCol = columns[0];
7919
8145
  var endCol = columns[columns.length - 1];
7920
- var match = rowIndex >= startIndex && rowIndex <= endIndex;
7921
- 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));
8146
+ var bodyMatch = !isInFooter && rowIndex >= startRowIndex && rowIndex <= endRowIndex;
8147
+ var footerMatch = isInFooter && footerRowRange && rowIndex >= footerStartRowIndex && rowIndex <= footerEndRowIndex;
8148
+ var match = footerMatch || bodyMatch;
8149
+ var matchSingleCell = match && isCellRangeSingleCell(rangeSelection); // 单个范围选中单元格不显示样式
8150
+
8151
+ var showCellRangeStyle = match && !matchSingleCell;
8152
+ var className = classnames__WEBPACK_IMPORTED_MODULE_16___default()((_cx = {}, _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_8___default()(_cx, _base_styles__WEBPACK_IMPORTED_MODULE_15__["Classes"].tableCellRangeSingleCell, matchSingleCell), _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_8___default()(_cx, _base_styles__WEBPACK_IMPORTED_MODULE_15__["Classes"].tableCellRangeSelected, showCellRangeStyle), _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_8___default()(_cx, _base_styles__WEBPACK_IMPORTED_MODULE_15__["Classes"].tableCellRangeTop, showCellRangeStyle && (isInFooter ? startRowIndex !== -1 ? false : rowIndex === footerStartRowIndex : rowIndex === startRowIndex)), _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_8___default()(_cx, _base_styles__WEBPACK_IMPORTED_MODULE_15__["Classes"].tableCellRangeLeft, showCellRangeStyle && col.code === startCol.code), _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_8___default()(_cx, _base_styles__WEBPACK_IMPORTED_MODULE_15__["Classes"].tableCellRangeBottom, showCellRangeStyle && (isInFooter ? rowIndex === footerEndRowIndex : footerRowRange ? false : rowIndex === endRowIndex)), _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_8___default()(_cx, _base_styles__WEBPACK_IMPORTED_MODULE_15__["Classes"].tableCellRangeRight, showCellRangeStyle && col.code === endCol.code), _cx));
7922
8153
  return Object(_utils__WEBPACK_IMPORTED_MODULE_11__["mergeCellProps"])(prevCellProps, {
7923
8154
  className: className
7924
8155
  });
@@ -7944,7 +8175,8 @@ function getTargetCell(target, columns) {
7944
8175
  rowIndex: parseInt(target.getAttribute('data-rowindex')),
7945
8176
  rowSpan: parseInt(target.getAttribute('rowspan') || 1),
7946
8177
  code: columnCode,
7947
- column: column
8178
+ column: column,
8179
+ isInFooter: isEleInFooter(target)
7948
8180
  }
7949
8181
  };
7950
8182
  }();
@@ -7959,7 +8191,19 @@ function getTargetCell(target, columns) {
7959
8191
  }
7960
8192
 
7961
8193
  function isSameCell(cell1, cell2) {
7962
- return cell1.rowIndex === cell2.rowIndex && cell1.code === cell2.code;
8194
+ return cell1.rowIndex === cell2.rowIndex && cell1.code === cell2.code && cell1.isInFooter === cell2.isInFooter;
8195
+ }
8196
+
8197
+ function isEleInFooter(target) {
8198
+ while (target && !target.classList.contains(_base_styles__WEBPACK_IMPORTED_MODULE_15__["Classes"].artTable)) {
8199
+ if (target.classList.contains(_base_styles__WEBPACK_IMPORTED_MODULE_15__["Classes"].tableFooter)) {
8200
+ return true;
8201
+ }
8202
+
8203
+ target = target.parentElement;
8204
+ }
8205
+
8206
+ return false;
7963
8207
  }
7964
8208
 
7965
8209
  function getRangeColumns(startCell, endCell, columns) {
@@ -7978,6 +8222,99 @@ function getRangeColumns(startCell, endCell, columns) {
7978
8222
  }
7979
8223
  }
7980
8224
 
8225
+ function getRangeSelectionRowInfo(startCell, endCell, dataSource) {
8226
+ var footerRowRange = null;
8227
+ var startRow = -1;
8228
+ var endRow = -1;
8229
+
8230
+ var _getCellRangeRow = getCellRangeRow(startCell, endCell),
8231
+ _startRow = _getCellRangeRow.startRow,
8232
+ _endRow = _getCellRangeRow.endRow; // 两个单元格都在表体
8233
+
8234
+
8235
+ if (!startCell.isInFooter && !endCell.isInFooter) {
8236
+ startRow = _startRow;
8237
+ endRow = _endRow;
8238
+ } else if (startCell.isInFooter && endCell.isInFooter) {
8239
+ // 两个单元格都在表底
8240
+ footerRowRange = {
8241
+ startRow: _startRow,
8242
+ endRow: _endRow
8243
+ };
8244
+ } else {
8245
+ // 一个单元格在表体,一个在表底
8246
+ if (startCell.isInFooter) {
8247
+ startRow = dataSource.length - 1;
8248
+ endRow = endCell.rowIndex;
8249
+ footerRowRange = {
8250
+ startRow: startCell.rowIndex,
8251
+ endRow: 0
8252
+ };
8253
+ } else {
8254
+ startRow = startCell.rowIndex;
8255
+ endRow = dataSource.length - 1;
8256
+ footerRowRange = {
8257
+ startRow: 0,
8258
+ endRow: endCell.rowIndex
8259
+ };
8260
+ }
8261
+ }
8262
+
8263
+ return {
8264
+ startRow: startRow,
8265
+ endRow: endRow,
8266
+ footerRowRange: footerRowRange
8267
+ };
8268
+ }
8269
+
8270
+ function getCellRangeRow(startCell, endCell) {
8271
+ if (isSameCell(startCell, endCell)) {
8272
+ return {
8273
+ startRow: startCell.rowIndex,
8274
+ endRow: startCell.rowIndex
8275
+ };
8276
+ }
8277
+
8278
+ var isTopToBottom = startCell.rowIndex <= endCell.rowIndex;
8279
+ var startRow = isTopToBottom ? startCell.rowIndex : startCell.rowIndex + startCell.rowSpan - 1;
8280
+ var endRow = isTopToBottom ? endCell.rowIndex + endCell.rowSpan - 1 : endCell.rowIndex;
8281
+ return {
8282
+ startRow: startRow,
8283
+ endRow: endRow
8284
+ };
8285
+ }
8286
+
8287
+ function isCellRangeSingleCell(rangeSelection) {
8288
+ var startRow = rangeSelection.startRow,
8289
+ endRow = rangeSelection.endRow,
8290
+ columns = rangeSelection.columns,
8291
+ footerRowRange = rangeSelection.footerRowRange;
8292
+ var isBodySingleCell = !footerRowRange && startRow === endRow && columns.length === 1;
8293
+ var isFooterSingleCell = startRow === -1 && footerRowRange.startRow === footerRowRange.endRow && columns.length === 1;
8294
+ return isBodySingleCell || isFooterSingleCell;
8295
+ }
8296
+
8297
+ function getRowIndex(startRow, endRow) {
8298
+ var isReverse = startRow > endRow;
8299
+ var startRowIndex = isReverse ? endRow : startRow;
8300
+ var endRowIndex = isReverse ? startRow : endRow;
8301
+ return {
8302
+ startRowIndex: startRowIndex,
8303
+ endRowIndex: endRowIndex
8304
+ };
8305
+ }
8306
+
8307
+ function getFooterRowIndex(footerRowRange) {
8308
+ if (footerRowRange) {
8309
+ return getRowIndex(footerRowRange.startRow, footerRowRange.endRow);
8310
+ }
8311
+
8312
+ return {
8313
+ startRowIndex: -1,
8314
+ endRowIndex: -1
8315
+ };
8316
+ }
8317
+
7981
8318
  /***/ }),
7982
8319
 
7983
8320
  /***/ "./components/table/pipeline/features/rowDetail.tsx":
@@ -8702,6 +9039,10 @@ function singleSelect() {
8702
9039
  return preCellProps;
8703
9040
  },
8704
9041
  render: function render(_, row, rowIndex) {
9042
+ if (row[pipeline.getFeatureOptions('footerRowMetaKey')]) {
9043
+ return null;
9044
+ }
9045
+
8705
9046
  var rowKey = _internals__WEBPACK_IMPORTED_MODULE_10__["internals"].safeGetRowKey(primaryKey, row, rowIndex);
8706
9047
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_9___default.a.createElement(Radio, {
8707
9048
  checked: value === rowKey,
@@ -9290,24 +9631,24 @@ function tips() {
9290
9631
  __webpack_require__.r(__webpack_exports__);
9291
9632
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "treeMetaSymbol", function() { return treeMetaSymbol; });
9292
9633
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "treeMode", function() { return treeMode; });
9293
- /* 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");
9294
- /* 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__);
9295
- /* 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");
9296
- /* 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__);
9297
- /* 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");
9298
- /* 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__);
9299
- /* 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");
9300
- /* 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__);
9301
- /* 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");
9302
- /* 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__);
9303
- /* 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");
9304
- /* 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__);
9305
- /* 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");
9306
- /* 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__);
9307
- /* 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");
9308
- /* 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__);
9309
- /* harmony import */ var _babel_runtime_helpers_toArray__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! @babel/runtime/helpers/toArray */ "./node_modules/@babel/runtime/helpers/toArray.js");
9310
- /* harmony import */ var _babel_runtime_helpers_toArray__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_toArray__WEBPACK_IMPORTED_MODULE_8__);
9634
+ /* 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");
9635
+ /* 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__);
9636
+ /* 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");
9637
+ /* 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__);
9638
+ /* 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");
9639
+ /* 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__);
9640
+ /* 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");
9641
+ /* 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__);
9642
+ /* 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");
9643
+ /* 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__);
9644
+ /* 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");
9645
+ /* 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__);
9646
+ /* 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");
9647
+ /* 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__);
9648
+ /* 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");
9649
+ /* 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__);
9650
+ /* 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");
9651
+ /* 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__);
9311
9652
  /* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/@babel/runtime/helpers/defineProperty.js");
9312
9653
  /* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_9__);
9313
9654
  /* harmony import */ var _babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ "./node_modules/@babel/runtime/helpers/toConsumableArray.js");
@@ -9330,8 +9671,8 @@ __webpack_require__.r(__webpack_exports__);
9330
9671
  /* 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__);
9331
9672
  /* 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");
9332
9673
  /* 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__);
9333
- /* 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");
9334
- /* 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__);
9674
+ /* 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");
9675
+ /* 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__);
9335
9676
  /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! classnames */ "./node_modules/classnames/index.js");
9336
9677
  /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_21___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_21__);
9337
9678
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! react */ "react");
@@ -9387,11 +9728,6 @@ function treeMode() {
9387
9728
  var stateKey = 'treeMode';
9388
9729
  var ctx = pipeline.ctx;
9389
9730
  var primaryKey = pipeline.ensurePrimaryKey('treeMode');
9390
-
9391
- if (typeof primaryKey !== 'string') {
9392
- throw new Error('treeMode 仅支持字符串作为 primaryKey');
9393
- }
9394
-
9395
9731
  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 : [];
9396
9732
  var openKeySet = new Set(openKeys);
9397
9733
 
@@ -9444,7 +9780,7 @@ function treeMode() {
9444
9780
  try {
9445
9781
  for (_iterator.s(); !(_step = _iterator.n()).done;) {
9446
9782
  var _node = _step.value;
9447
- var rowKey = _node[primaryKey];
9783
+ var rowKey = _internals__WEBPACK_IMPORTED_MODULE_24__["internals"].safeGetRowKey(primaryKey, _node, -1);
9448
9784
  var expanded = openKeySet.has(rowKey);
9449
9785
  var isLeaf = isLeafNode(_node, {
9450
9786
  depth: depth,
@@ -9478,12 +9814,15 @@ function treeMode() {
9478
9814
  return columns;
9479
9815
  }
9480
9816
 
9481
- var _columns = _babel_runtime_helpers_toArray__WEBPACK_IMPORTED_MODULE_8___default()(columns),
9482
- firstCol = _columns[0],
9483
- others = _columns.slice(1);
9817
+ var expandColIndex = columns.findIndex(function (_ref3) {
9818
+ var code = _ref3.code;
9819
+ return code && opts.expandColCode === code;
9820
+ });
9821
+ expandColIndex = expandColIndex === -1 ? 0 : expandColIndex;
9822
+ var expandCol = columns[expandColIndex];
9484
9823
 
9485
9824
  var render = function render(value, record, recordIndex) {
9486
- var content = _internals__WEBPACK_IMPORTED_MODULE_24__["internals"].safeRender(firstCol, record, recordIndex);
9825
+ var content = _internals__WEBPACK_IMPORTED_MODULE_24__["internals"].safeRender(expandCol, record, recordIndex);
9487
9826
 
9488
9827
  if (record[treeMetaKey] == null) {
9489
9828
  // 没有 treeMeta 信息的话,就返回原先的渲染结果
@@ -9543,7 +9882,7 @@ function treeMode() {
9543
9882
  };
9544
9883
 
9545
9884
  var getCellProps = function getCellProps(value, record, rowIndex) {
9546
- var prevProps = _internals__WEBPACK_IMPORTED_MODULE_24__["internals"].safeGetCellProps(firstCol, record, rowIndex);
9885
+ var prevProps = _internals__WEBPACK_IMPORTED_MODULE_24__["internals"].safeGetCellProps(expandCol, record, rowIndex);
9547
9886
 
9548
9887
  if (record[treeMetaKey] == null) {
9549
9888
  // 没有 treeMeta 信息的话,就返回原先的 cellProps
@@ -9572,15 +9911,16 @@ function treeMode() {
9572
9911
  });
9573
9912
  };
9574
9913
 
9575
- return [_objectSpread(_objectSpread({}, firstCol), {}, {
9914
+ columns[expandColIndex] = _objectSpread(_objectSpread({}, expandCol), {}, {
9576
9915
  title: /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_22___default.a.createElement("span", {
9577
9916
  style: {
9578
9917
  marginLeft: iconIndent + iconWidth + iconGap
9579
9918
  }
9580
- }, _internals__WEBPACK_IMPORTED_MODULE_24__["internals"].safeRenderHeader(firstCol)),
9919
+ }, _internals__WEBPACK_IMPORTED_MODULE_24__["internals"].safeRenderHeader(expandCol)),
9581
9920
  render: render,
9582
- getCellProps: clickArea === 'cell' ? getCellProps : firstCol.getCellProps
9583
- })].concat(_babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_10___default()(others));
9921
+ getCellProps: clickArea === 'cell' ? getCellProps : expandCol.getCellProps
9922
+ });
9923
+ return _babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_10___default()(columns);
9584
9924
  }
9585
9925
  };
9586
9926
  }
@@ -9852,6 +10192,7 @@ __webpack_require__.r(__webpack_exports__);
9852
10192
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_15___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_15__);
9853
10193
  /* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../utils */ "./components/table/utils/index.tsx");
9854
10194
  /* harmony import */ var _features_autoFill__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ./features/autoFill */ "./components/table/pipeline/features/autoFill.tsx");
10195
+ /* harmony import */ var _features_rangeSelection__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ./features/rangeSelection */ "./components/table/pipeline/features/rangeSelection.tsx");
9855
10196
 
9856
10197
 
9857
10198
 
@@ -9876,6 +10217,7 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va
9876
10217
 
9877
10218
 
9878
10219
 
10220
+
9879
10221
  /**
9880
10222
  * 表格数据处理流水线。TablePipeline 提供了表格数据处理过程中的一些上下方与工具方法,包括……
9881
10223
  *
@@ -10150,25 +10492,25 @@ var TablePipeline = /*#__PURE__*/function () {
10150
10492
  var preTableWidth = _this2.getStateAtKey(_features_autoFill__WEBPACK_IMPORTED_MODULE_17__["tableWidthKey"]);
10151
10493
 
10152
10494
  if (preTableWidth !== tableWidth) {
10153
- _this2.setStateAtKey(_features_autoFill__WEBPACK_IMPORTED_MODULE_17__["tableWidthKey"], tableWidth);
10495
+ tableWidth && _this2.setStateAtKey(_features_autoFill__WEBPACK_IMPORTED_MODULE_17__["tableWidthKey"], tableWidth);
10154
10496
  }
10155
10497
  };
10156
10498
 
10157
10499
  result.setTableDomHelper = function (domHelper) {
10158
10500
  _this2.ref.current.domHelper = domHelper;
10159
- }; // if (this.getFeatureOptions(rangeSelectionKey)) {
10160
- // result.clearRangeSelectionStatus = () => {
10161
- // const { rangeSelectedChange } = this.getFeatureOptions(rangeSelectionKey)
10162
- // const rangeSelection = this.getStateAtKey(rangeSelectionKey)
10163
- // if (rangeSelection) {
10164
- // rangeSelectedChange?.(null)
10165
- // }
10166
- // }
10167
- // }
10168
-
10501
+ };
10169
10502
 
10170
10503
  return result;
10171
10504
  }
10505
+ /**
10506
+ * 清除范围选中内容
10507
+ */
10508
+
10509
+ }, {
10510
+ key: "clearRangeSelection",
10511
+ value: function clearRangeSelection() {
10512
+ this.setStateAtKey(_features_rangeSelection__WEBPACK_IMPORTED_MODULE_18__["rangeSelectionKey"], null);
10513
+ }
10172
10514
  }]);
10173
10515
 
10174
10516
  return TablePipeline;
@@ -13366,6 +13708,22 @@ function isLeafNode(node) {
13366
13708
 
13367
13709
  /***/ }),
13368
13710
 
13711
+ /***/ "./components/table/utils/keyCode.ts":
13712
+ /*!*******************************************!*\
13713
+ !*** ./components/table/utils/keyCode.ts ***!
13714
+ \*******************************************/
13715
+ /*! exports provided: default */
13716
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
13717
+
13718
+ "use strict";
13719
+ __webpack_require__.r(__webpack_exports__);
13720
+ var KeyCode = {
13721
+ ENTER: 13
13722
+ };
13723
+ /* harmony default export */ __webpack_exports__["default"] = (KeyCode);
13724
+
13725
+ /***/ }),
13726
+
13369
13727
  /***/ "./components/table/utils/layeredFilter.ts":
13370
13728
  /*!*************************************************!*\
13371
13729
  !*** ./components/table/utils/layeredFilter.ts ***!
@@ -13672,13 +14030,9 @@ __webpack_require__.r(__webpack_exports__);
13672
14030
 
13673
14031
  function composeEventHandler(handler1, handler2) {
13674
14032
  return function () {
13675
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
13676
- args[_key] = arguments[_key];
13677
- }
13678
-
13679
14033
  // 先执行原有的事件回调函数
13680
- handler1(args);
13681
- handler2(args); // 事件回调函数没有返回值,故这里不进行 return
14034
+ handler1.apply(void 0, arguments);
14035
+ handler2.apply(void 0, arguments); // 事件回调函数没有返回值,故这里不进行 return
13682
14036
  };
13683
14037
  }
13684
14038
  /** 合并两个 cellProps(单元格属性)对象,返回一个合并后的全新对象。