@kdcloudjs/table 1.1.4-canary.1 → 1.1.4

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 (73) hide show
  1. package/dist/@kdcloudjs/table.css +1 -1
  2. package/dist/@kdcloudjs/table.js +260 -582
  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 +9 -10
  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 +2 -7
  9. package/es/table/base/styles.js +6 -13
  10. package/es/table/base/table.d.ts +0 -2
  11. package/es/table/base/table.js +53 -31
  12. package/es/table/base/utils.d.ts +0 -7
  13. package/es/table/base/utils.js +1 -29
  14. package/es/table/pipeline/features/columnDrag.js +4 -5
  15. package/es/table/pipeline/features/columnFilter.d.ts +2 -2
  16. package/es/table/pipeline/features/columnFilter.js +15 -35
  17. package/es/table/pipeline/features/columnResizeWidth.js +1 -1
  18. package/es/table/pipeline/features/filter/DefaultFilterContent.js +2 -22
  19. package/es/table/pipeline/features/filter/Filter.d.ts +1 -1
  20. package/es/table/pipeline/features/filter/Filter.js +20 -16
  21. package/es/table/pipeline/features/filter/FilterPanel.js +15 -21
  22. package/es/table/pipeline/features/filter/util.js +4 -4
  23. package/es/table/pipeline/features/index.d.ts +0 -1
  24. package/es/table/pipeline/features/index.js +1 -2
  25. package/es/table/pipeline/features/multiSelect.js +2 -7
  26. package/es/table/pipeline/features/rangeSelection.d.ts +1 -1
  27. package/es/table/pipeline/features/rangeSelection.js +28 -156
  28. package/es/table/pipeline/features/singleSelect.js +0 -4
  29. package/es/table/pipeline/features/treeMode.d.ts +0 -2
  30. package/es/table/pipeline/features/treeMode.js +20 -18
  31. package/es/table/pipeline/pipeline.d.ts +1 -5
  32. package/es/table/pipeline/pipeline.js +10 -11
  33. package/es/table/utils/mergeCellProps.js +6 -2
  34. package/lib/table/base/html-table.js +1 -1
  35. package/lib/table/base/styles.d.ts +2 -7
  36. package/lib/table/base/styles.js +6 -13
  37. package/lib/table/base/table.d.ts +0 -2
  38. package/lib/table/base/table.js +53 -31
  39. package/lib/table/base/utils.d.ts +0 -7
  40. package/lib/table/base/utils.js +1 -35
  41. package/lib/table/pipeline/features/columnDrag.js +4 -5
  42. package/lib/table/pipeline/features/columnFilter.d.ts +2 -2
  43. package/lib/table/pipeline/features/columnFilter.js +15 -33
  44. package/lib/table/pipeline/features/columnResizeWidth.js +1 -1
  45. package/lib/table/pipeline/features/filter/DefaultFilterContent.js +1 -23
  46. package/lib/table/pipeline/features/filter/Filter.d.ts +1 -1
  47. package/lib/table/pipeline/features/filter/Filter.js +20 -17
  48. package/lib/table/pipeline/features/filter/FilterPanel.js +14 -21
  49. package/lib/table/pipeline/features/filter/util.js +4 -4
  50. package/lib/table/pipeline/features/index.d.ts +0 -1
  51. package/lib/table/pipeline/features/index.js +1 -15
  52. package/lib/table/pipeline/features/multiSelect.js +1 -6
  53. package/lib/table/pipeline/features/rangeSelection.d.ts +1 -1
  54. package/lib/table/pipeline/features/rangeSelection.js +30 -158
  55. package/lib/table/pipeline/features/singleSelect.js +0 -4
  56. package/lib/table/pipeline/features/treeMode.d.ts +0 -2
  57. package/lib/table/pipeline/features/treeMode.js +22 -19
  58. package/lib/table/pipeline/pipeline.d.ts +1 -5
  59. package/lib/table/pipeline/pipeline.js +10 -12
  60. package/lib/table/utils/mergeCellProps.js +6 -2
  61. package/package.json +3 -3
  62. package/es/table/pipeline/features/filter/DefaultFilterIcon.d.ts +0 -5
  63. package/es/table/pipeline/features/filter/DefaultFilterIcon.js +0 -20
  64. package/es/table/pipeline/features/footerDataSource.d.ts +0 -9
  65. package/es/table/pipeline/features/footerDataSource.js +0 -25
  66. package/es/table/utils/keyCode.d.ts +0 -4
  67. package/es/table/utils/keyCode.js +0 -4
  68. package/lib/table/pipeline/features/filter/DefaultFilterIcon.d.ts +0 -5
  69. package/lib/table/pipeline/features/filter/DefaultFilterIcon.js +0 -30
  70. package/lib/table/pipeline/features/footerDataSource.d.ts +0 -9
  71. package/lib/table/pipeline/features/footerDataSource.js +0 -41
  72. package/lib/table/utils/keyCode.d.ts +0 -4
  73. package/lib/table/utils/keyCode.js +0 -11
@@ -8,7 +8,6 @@ import _sliceInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instan
8
8
  import { useState, useRef } from 'react';
9
9
  import { mergeCellProps } from '../utils';
10
10
  import { autoFillTableWidth, tableWidthKey } from './features/autoFill';
11
- import { rangeSelectionKey } from './features/rangeSelection';
12
11
  /**
13
12
  * 表格数据处理流水线。TablePipeline 提供了表格数据处理过程中的一些上下方与工具方法,包括……
14
13
  *
@@ -277,18 +276,18 @@ export var TablePipeline = /*#__PURE__*/function () {
277
276
 
278
277
  result.setTableDomHelper = function (domHelper) {
279
278
  _this2.ref.current.domHelper = domHelper;
280
- };
279
+ }; // if (this.getFeatureOptions(rangeSelectionKey)) {
280
+ // result.clearRangeSelectionStatus = () => {
281
+ // const { rangeSelectedChange } = this.getFeatureOptions(rangeSelectionKey)
282
+ // const rangeSelection = this.getStateAtKey(rangeSelectionKey)
283
+ // if (rangeSelection) {
284
+ // rangeSelectedChange?.(null)
285
+ // }
286
+ // }
287
+ // }
281
288
 
282
- return result;
283
- }
284
- /**
285
- * 清除范围选中内容
286
- */
287
289
 
288
- }, {
289
- key: "clearRangeSelection",
290
- value: function clearRangeSelection() {
291
- this.setStateAtKey(rangeSelectionKey, null);
290
+ return result;
292
291
  }
293
292
  }]);
294
293
 
@@ -5,9 +5,13 @@ import cx from 'classnames';
5
5
 
6
6
  function composeEventHandler(handler1, handler2) {
7
7
  return function () {
8
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
9
+ args[_key] = arguments[_key];
10
+ }
11
+
8
12
  // 先执行原有的事件回调函数
9
- handler1.apply(void 0, arguments);
10
- handler2.apply(void 0, arguments); // 事件回调函数没有返回值,故这里不进行 return
13
+ handler1(args);
14
+ handler2(args); // 事件回调函数没有返回值,故这里不进行 return
11
15
  };
12
16
  }
13
17
  /** 合并两个 cellProps(单元格属性)对象,返回一个合并后的全新对象。
@@ -141,7 +141,7 @@ function HtmlTable(_ref) {
141
141
  positionStyle.left = hozInfo.stickyLeftMap.get(colIndex);
142
142
  } else if (colIndex >= fullFlatCount - rightFlatCount) {
143
143
  positionStyle.position = 'sticky';
144
- positionStyle.right = hozInfo.stickyRightMap.get(colIndex) - (typeof stickyRightOffset === 'number' ? stickyRightOffset : 0);
144
+ positionStyle.right = hozInfo.stickyRightMap.get(colIndex) - stickyRightOffset;
145
145
  }
146
146
 
147
147
  return /*#__PURE__*/_react.default.createElement('td', (0, _extends2.default)((0, _extends2.default)((0, _extends2.default)((0, _extends2.default)({
@@ -2,7 +2,6 @@ export declare const LOCK_SHADOW_PADDING = 20;
2
2
  export declare const Classes: {
3
3
  /** BaseTable 表格组件的外层包裹 div */
4
4
  readonly artTableWrapper: string;
5
- readonly artTableBordered: string;
6
5
  readonly artTable: string;
7
6
  readonly tableHeaderMain: string;
8
7
  readonly tableHeader: string;
@@ -41,8 +40,6 @@ export declare const Classes: {
41
40
  readonly button: string;
42
41
  readonly buttonPrimary: string;
43
42
  readonly filterIcon: string;
44
- readonly rangeSelection: string;
45
- readonly tableCellRangeSingleCell: string;
46
43
  readonly tableCellRangeSelected: string;
47
44
  readonly tableCellRangeTop: string;
48
45
  readonly tableCellRangeLeft: string;
@@ -115,13 +112,13 @@ export declare type BaseTableCSSVariables = Partial<{
115
112
  '--border-color': string;
116
113
  /** 单元格边框,默认为 1px solid #dfe3e8 */
117
114
  '--cell-border': string;
118
- /** 单元格上下边框,默认为 none ,默认值为 1px solid #dfe3e8 */
115
+ /** 单元格上下边框,默认为 #dfe3e8 */
119
116
  '--cell-border-horizontal': string;
120
117
  /** 单元格左右边框,默认为 #dfe3e8 */
121
118
  '--cell-border-vertical': string;
122
119
  /** 表头单元格边框,默认为 1px solid #dfe3e8 */
123
120
  '--header-cell-border': string;
124
- /** 表头单元格上下边框,默认为 none ,默认值为 1px solid #dfe3e8 */
121
+ /** 表头单元格上下边框,默认为 1px solid #dfe3e8 */
125
122
  '--header-cell-border-horizontal': string;
126
123
  /** 表头单元格左右边框,默认为 1px solid #dfe3e8 */
127
124
  '--header-cell-border-vertical': string;
@@ -151,9 +148,7 @@ export declare const defaultCSSVariables: {
151
148
  '--cell-border-horizontal': string;
152
149
  '---cell-border-vertical': string;
153
150
  '--header-cell-border': string;
154
- '--cell-border-vertical': string;
155
151
  '--header-cell-border-horizontal': string;
156
- '--header-cell-border-vertical': string;
157
152
  };
158
153
  export declare const variableConst: string;
159
154
  export declare const StyledArtTableWrapper: any;
@@ -21,7 +21,7 @@ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime-cor
21
21
 
22
22
  var _styledComponents = _interopRequireWildcard(require("styled-components"));
23
23
 
24
- var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5;
24
+ var _templateObject, _templateObject2, _templateObject3;
25
25
 
26
26
  function _getRequireWildcardCache(nodeInterop) { if (typeof _WeakMap !== "function") return null; var cacheBabelInterop = new _WeakMap(); var cacheNodeInterop = new _WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
27
27
 
@@ -33,7 +33,6 @@ var prefix = 'kd-';
33
33
  var Classes = {
34
34
  /** BaseTable 表格组件的外层包裹 div */
35
35
  artTableWrapper: "".concat(prefix, "table-wrapper"),
36
- artTableBordered: "".concat(prefix, "table-bordered"),
37
36
  artTable: "".concat(prefix, "table"),
38
37
  tableHeaderMain: "".concat(prefix, "table-header-main"),
39
38
  tableHeader: "".concat(prefix, "table-header"),
@@ -77,8 +76,6 @@ var Classes = {
77
76
  button: "".concat(prefix, "btn"),
78
77
  buttonPrimary: "".concat(prefix, "btn-primary"),
79
78
  filterIcon: "".concat(prefix, "filter-icon"),
80
- rangeSelection: "".concat(prefix, "range-selection"),
81
- tableCellRangeSingleCell: "".concat(prefix, "table-cell-range-single-cell"),
82
79
  tableCellRangeSelected: "".concat(prefix, "table-cell-range-selected"),
83
80
  tableCellRangeTop: "".concat(prefix, "table-cell-range-top"),
84
81
  tableCellRangeLeft: "".concat(prefix, "table-cell-range-left"),
@@ -119,7 +116,7 @@ var Z = {
119
116
  scrollItem: 30,
120
117
  loadingIndicator: 40
121
118
  };
122
- var outerBorderStyleMixin = (0, _styledComponents.css)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.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);
119
+ var outerBorderStyleMixin = (0, _styledComponents.css)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.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);
123
120
  var defaultCSSVariables = {
124
121
  '--row-height': '48px',
125
122
  '--color': '#333',
@@ -129,7 +126,7 @@ var defaultCSSVariables = {
129
126
  '--primary-color': '#5582F3',
130
127
  '--primary-color-level1': 'rgb(242, 248, 255)',
131
128
  '--primary-color-level2': 'rgb(135, 173, 255)',
132
- '--icon-color': '#666666',
129
+ '--icon-color': '#bfbfbf',
133
130
  '--strong-border-color': '#d9d9d9',
134
131
  '--header-row-height': '32px',
135
132
  '--header-color': '#333',
@@ -145,20 +142,16 @@ var defaultCSSVariables = {
145
142
  '--cell-border-horizontal': '1px solid #dfe3e8',
146
143
  '---cell-border-vertical': '1px solid #dfe3e8',
147
144
  '--header-cell-border': '1px solid #dfe3e8',
148
- '--cell-border-vertical': '1px solid #dfe3e8',
149
- '--header-cell-border-horizontal': '1px solid #dfe3e8',
150
- '--header-cell-border-vertical': '1px solid #dfe3e8'
145
+ '--header-cell-border-horizontal': '1px solid #dfe3e8'
151
146
  };
152
147
  exports.defaultCSSVariables = defaultCSSVariables;
153
148
  var variableConst = getCssVariableText(defaultCSSVariables);
154
149
  exports.variableConst = variableConst;
155
- var notBorderedStyleMixin = (0, _styledComponents.css)(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["\n --cell-border-vertical: none;\n --header-cell-border-vertical: none;\n"])));
156
- var borderedStyleMixin = (0, _styledComponents.css)(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2.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);
157
150
 
158
- var StyledArtTableWrapper = _styledComponents.default.div(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2.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 .", " {\n display: flex\n }\n //#endregion\n\n //#region \u8868\u683C\u6392\u5E8F\n .", " {\n color:var(--icon-color);\n &.active{\n color:var(--primary-color);\n }\n }\n //#endregion\n\n //#region \u6EDA\u52A8\u6761\u5360\u4F4D\n .", " {\n visibility: hidden;\n flex-shrink: 0;\n }\n .", " .", " {\n border-top: var(--cell-border-horizontal);\n }\n //#endregion\n \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.filterIcon, Classes.tableSortIcon, Classes.verticalScrollPlaceholder, Classes.tableFooter, Classes.verticalScrollPlaceholder, Classes.tableHeaderCellResize);
151
+ var StyledArtTableWrapper = _styledComponents.default.div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.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);
159
152
 
160
153
  exports.StyledArtTableWrapper = StyledArtTableWrapper;
161
- var ButtonCSS = (0, _styledComponents.css)(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2.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);
154
+ var ButtonCSS = (0, _styledComponents.css)(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2.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);
162
155
  exports.ButtonCSS = ButtonCSS;
163
156
 
164
157
  function getCssVariableText(obj) {
@@ -47,8 +47,6 @@ export interface BaseTableProps {
47
47
  scrollbarWidth?: number;
48
48
  /** 使用来自外层 div 的边框代替单元格的外边框 */
49
49
  useOuterBorder?: boolean;
50
- /** 显示表格单元格边框线 */
51
- bordered?: boolean;
52
50
  /** 表格是否在加载中 */
53
51
  isLoading?: boolean;
54
52
  /** 数据为空时,单元格的高度 */
@@ -31,8 +31,6 @@ var _map = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable
31
31
 
32
32
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/slicedToArray"));
33
33
 
34
- var _extends2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/extends"));
35
-
36
34
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/defineProperty"));
37
35
 
38
36
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/classCallCheck"));
@@ -45,6 +43,8 @@ var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime
45
43
 
46
44
  var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/getPrototypeOf"));
47
45
 
46
+ var _extends2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/extends"));
47
+
48
48
  var _classnames = _interopRequireDefault(require("classnames"));
49
49
 
50
50
  var _react = _interopRequireDefault(require("react"));
@@ -73,6 +73,8 @@ var _styles = require("./styles");
73
73
 
74
74
  var _utils = require("./utils");
75
75
 
76
+ var _cssVarsPonyfill = _interopRequireDefault(require("css-vars-ponyfill"));
77
+
76
78
  var _utils2 = require("../utils");
77
79
 
78
80
  var _renderTemplates = _interopRequireDefault(require("./renderTemplates"));
@@ -91,6 +93,31 @@ function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflec
91
93
 
92
94
  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; } }
93
95
 
96
+ var cssPolifill = function cssPolifill(_ref) {
97
+ var variables = _ref.variables,
98
+ enableCSSVariables = _ref.enableCSSVariables;
99
+
100
+ // const style = document.createElement('style')
101
+ // style.type = 'text/css'
102
+ // style.innerHTML = '.aaa{ --color: red; }'
103
+ // document.getElementsByTagName('head').item(0).appendChild(style)
104
+ // const variableNames = variableConst.match(/--.*?(?=:)/g)
105
+ // variables = variableNames.map((name) => rootElement.style[name])
106
+ if (enableCSSVariables === false) {
107
+ return;
108
+ }
109
+
110
+ (0, _cssVarsPonyfill.default)({
111
+ // exclude: 'link[href*="semantic-ui"]',
112
+ // onlyLegacy: false,
113
+ // rootElement: rootElement,
114
+ include: 'style[data-styled]',
115
+ variables: (0, _extends2.default)({}, _styles.defaultCSSVariables, variables),
116
+ watch: true,
117
+ silent: true
118
+ });
119
+ };
120
+
94
121
  var propsDotEmptyContentDeprecatedWarned = false;
95
122
 
96
123
  function warnPropsDotEmptyContentIsDeprecated() {
@@ -499,8 +526,6 @@ var BaseTable = /*#__PURE__*/function (_React$Component) {
499
526
  }, {
500
527
  key: "render",
501
528
  value: function render() {
502
- var _cx;
503
-
504
529
  // console.log('render table')
505
530
  var info = (0, _calculations.calculateRenderInfo)(this);
506
531
  this.lastInfo = info;
@@ -516,29 +541,28 @@ var BaseTable = /*#__PURE__*/function (_React$Component) {
516
541
  isLoading = _this$props6.isLoading,
517
542
  getTableProps = _this$props6.getTableProps,
518
543
  footerDataSource = _this$props6.footerDataSource,
519
- components = _this$props6.components,
520
- bordered = _this$props6.bordered;
521
- var artTableWrapperClassName = (0, _classnames.default)(_styles.Classes.artTableWrapper, (_cx = {
544
+ components = _this$props6.components;
545
+ var artTableWrapperClassName = (0, _classnames.default)(_styles.Classes.artTableWrapper, {
522
546
  'use-outer-border': useOuterBorder,
523
547
  empty: dataSource.length === 0,
524
548
  lock: info.hasLockColumn,
525
549
  'has-header': hasHeader,
526
550
  'sticky-header': isStickyHeader !== null && isStickyHeader !== void 0 ? isStickyHeader : isStickyHead,
527
551
  'has-footer': footerDataSource.length > 0,
528
- 'sticky-footer': isStickyFooter
529
- }, (0, _defineProperty2.default)(_cx, _styles.Classes.artTableBordered, bordered), (0, _defineProperty2.default)(_cx, 'ie-polyfill-wrapper', _utils2.browserType.isIE), _cx), className);
552
+ 'sticky-footer': isStickyFooter,
553
+ 'ie-polyfill-wrapper': _utils2.browserType.isIE
554
+ }, className);
530
555
  var artTableWrapperProps = (0, _defineProperty2.default)({
531
556
  className: artTableWrapperClassName,
532
557
  style: style
533
558
  }, _utils.STYLED_REF_PROP, this.artTableWrapperRef);
534
- var tableProps = getTableProps() || {};
535
559
  return /*#__PURE__*/_react.default.createElement(_styles.StyledArtTableWrapper, (0, _extends2.default)({}, artTableWrapperProps), /*#__PURE__*/_react.default.createElement(_loading.default, {
536
560
  visible: isLoading,
537
561
  LoadingIcon: components.LoadingIcon,
538
562
  LoadingContentWrapper: components.LoadingContentWrapper
539
- }, /*#__PURE__*/_react.default.createElement("div", (0, _extends2.default)({}, tableProps, {
540
- className: (0, _classnames.default)(_styles.Classes.artTable, tableProps.className)
541
- }), this.renderTableHeader(info), this.renderTableBody(info), this.renderTableFooter(info), this.renderLockShadows(info)), this.renderStickyScroll(info)));
563
+ }, /*#__PURE__*/_react.default.createElement("div", (0, _extends2.default)({
564
+ className: _styles.Classes.artTable
565
+ }, getTableProps()), this.renderTableHeader(info), this.renderTableBody(info), this.renderTableFooter(info), this.renderLockShadows(info)), this.renderStickyScroll(info)));
542
566
  }
543
567
  }, {
544
568
  key: "componentDidMount",
@@ -555,12 +579,10 @@ var BaseTable = /*#__PURE__*/function (_React$Component) {
555
579
 
556
580
  var _this$props7 = this.props,
557
581
  cssVariables = _this$props7.cssVariables,
558
- enableCSSVariables = _this$props7.enableCSSVariables,
559
- bordered = _this$props7.bordered;
560
- (0, _utils.cssPolifill)({
582
+ enableCSSVariables = _this$props7.enableCSSVariables;
583
+ cssPolifill({
561
584
  variables: cssVariables || {},
562
- enableCSSVariables: enableCSSVariables,
563
- bordered: bordered
585
+ enableCSSVariables: enableCSSVariables
564
586
  });
565
587
  (_b = (_a = this.props).setTableWidth) === null || _b === void 0 ? void 0 : _b.call(_a, this.domHelper.tableBody.clientWidth);
566
588
  (_d = (_c = this.props).setTableDomHelper) === null || _d === void 0 ? void 0 : _d.call(_c, this.domHelper);
@@ -632,15 +654,15 @@ var BaseTable = /*#__PURE__*/function (_React$Component) {
632
654
 
633
655
  this.rootSubscription.add((0, _rxjs.combineLatest)([richVisibleRects$.pipe(op.map(function (p) {
634
656
  return p.clipRect;
635
- }), op.distinctUntilChanged(_utils.shallowEqual)), this.props$.pipe(op.startWith(null), op.pairwise(), op.filter(function (_ref) {
636
- var _ref2 = (0, _slicedToArray2.default)(_ref, 2),
637
- prevProps = _ref2[0],
638
- props = _ref2[1];
657
+ }), op.distinctUntilChanged(_utils.shallowEqual)), this.props$.pipe(op.startWith(null), op.pairwise(), op.filter(function (_ref2) {
658
+ var _ref3 = (0, _slicedToArray2.default)(_ref2, 2),
659
+ prevProps = _ref3[0],
660
+ props = _ref3[1];
639
661
 
640
662
  return prevProps == null || !prevProps.isLoading && props.isLoading;
641
- }))]).subscribe(function (_ref3) {
642
- var _ref4 = (0, _slicedToArray2.default)(_ref3, 1),
643
- clipRect = _ref4[0];
663
+ }))]).subscribe(function (_ref4) {
664
+ var _ref5 = (0, _slicedToArray2.default)(_ref4, 1),
665
+ clipRect = _ref5[0];
644
666
 
645
667
  var loadingIndicator = _this2.domHelper.getLoadingIndicator();
646
668
 
@@ -659,9 +681,9 @@ var BaseTable = /*#__PURE__*/function (_React$Component) {
659
681
  horizontal = _this2$lastInfo$useVi.horizontal,
660
682
  vertical = _this2$lastInfo$useVi.vertical;
661
683
  return horizontal || vertical;
662
- }), op.map(function (_ref5) {
663
- var clipRect = _ref5.clipRect,
664
- offsetY = _ref5.offsetY;
684
+ }), op.map(function (_ref6) {
685
+ var clipRect = _ref6.clipRect,
686
+ offsetY = _ref6.offsetY;
665
687
  return {
666
688
  maxRenderHeight: clipRect.bottom - clipRect.top,
667
689
  maxRenderWidth: clipRect.right - clipRect.left,
@@ -678,9 +700,9 @@ var BaseTable = /*#__PURE__*/function (_React$Component) {
678
700
  })).subscribe(function (sizeAndOffset) {
679
701
  _this2.setState(sizeAndOffset);
680
702
  }));
681
- this.rootSubscription.add(richVisibleRects$.pipe(op.map(function (_ref6) {
682
- var clipRect = _ref6.clipRect,
683
- offsetY = _ref6.offsetY;
703
+ this.rootSubscription.add(richVisibleRects$.pipe(op.map(function (_ref7) {
704
+ var clipRect = _ref7.clipRect,
705
+ offsetY = _ref7.offsetY;
684
706
  return {
685
707
  maxRenderHeight: clipRect.bottom - clipRect.top,
686
708
  maxRenderWidth: clipRect.right - clipRect.left,
@@ -36,11 +36,4 @@ export declare function shallowEqual<T>(objA: T, objB: T): boolean;
36
36
  export declare function composeRowPropsGetter(getRowProps: (record: any, rowIndex: number) => React.HTMLAttributes<HTMLTableRowElement>, pendingRowProps?: React.HTMLAttributes<HTMLTableRowElement>): (record: any, rowIndex: number) => React.HTMLAttributes<HTMLTableRowElement>;
37
37
  export declare function getTableScrollHeaderDOM(domHelper: TableDOMHelper): HTMLDivElement;
38
38
  export declare function getTableScrollFooterDOM(domHelper: TableDOMHelper): HTMLDivElement;
39
- export declare const cssPolifill: ({ variables, enableCSSVariables, bordered }: {
40
- variables: {
41
- [key: string]: any;
42
- };
43
- enableCSSVariables?: boolean;
44
- bordered?: boolean;
45
- }) => void;
46
39
  export {};
@@ -23,7 +23,6 @@ Object.defineProperty(exports, "__esModule", {
23
23
  });
24
24
  exports.addResizeObserver = exports.STYLED_VERSION = exports.STYLED_REF_PROP = exports.OVERSCAN_SIZE = exports.AUTO_VIRTUAL_THRESHOLD = void 0;
25
25
  exports.composeRowPropsGetter = composeRowPropsGetter;
26
- exports.cssPolifill = void 0;
27
26
  exports.getScrollbarSize = getScrollbarSize;
28
27
  exports.getTableScrollFooterDOM = getTableScrollFooterDOM;
29
28
  exports.getTableScrollHeaderDOM = getTableScrollHeaderDOM;
@@ -50,14 +49,10 @@ var _resizeObserverPolyfill = _interopRequireDefault(require("resize-observer-po
50
49
 
51
50
  var styledComponents = _interopRequireWildcard(require("styled-components"));
52
51
 
53
- var _cssVarsPonyfill = _interopRequireDefault(require("css-vars-ponyfill"));
54
-
55
52
  var _mergeCellProps = _interopRequireDefault(require("../utils/mergeCellProps"));
56
53
 
57
54
  var _utils = require("../utils");
58
55
 
59
- var _styles = require("./styles");
60
-
61
56
  function _getRequireWildcardCache(nodeInterop) { if (typeof _WeakMap !== "function") return null; var cacheBabelInterop = new _WeakMap(); var cacheNodeInterop = new _WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
62
57
 
63
58
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof3(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && _Object$getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? _Object$getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
@@ -273,33 +268,4 @@ function getTableScrollHeaderDOM(domHelper) {
273
268
 
274
269
  function getTableScrollFooterDOM(domHelper) {
275
270
  return _utils.browserType.isIE ? domHelper.tableFooterMain : domHelper.tableFooter;
276
- }
277
-
278
- var cssPolifill = function cssPolifill(_ref) {
279
- var variables = _ref.variables,
280
- enableCSSVariables = _ref.enableCSSVariables,
281
- bordered = _ref.bordered;
282
-
283
- if (enableCSSVariables === false) {
284
- return;
285
- }
286
-
287
- var conditionCSSVariables = {}; // 默认情况下存在td、th无左右边框,开启`bordered`属性后才开启,否则隐藏这两种属性
288
-
289
- if (!bordered) {
290
- conditionCSSVariables['--cell-border-vertical'] = 'none';
291
- conditionCSSVariables['--header-cell-border-vertical'] = 'none';
292
- }
293
-
294
- (0, _cssVarsPonyfill.default)({
295
- // exclude: 'link[href*="semantic-ui"]',
296
- // onlyLegacy: false,
297
- // rootElement: rootElement,
298
- include: 'style[data-styled]',
299
- variables: (0, _extends2.default)({}, _styles.defaultCSSVariables, variables, conditionCSSVariables),
300
- watch: true,
301
- silent: true
302
- });
303
- };
304
-
305
- exports.cssPolifill = cssPolifill;
271
+ }
@@ -79,7 +79,7 @@ function columnDrag() {
79
79
  },
80
80
  headerCellProps: (0, _utils.mergeCellProps)(col.headerCellProps, {
81
81
  onMouseDown: !isLeaf || path.length > 1 ? undefined : function (e) {
82
- if (e.button !== 0 || !e.currentTarget.contains(e.target)) {
82
+ if (e.button !== 0) {
83
83
  return;
84
84
  }
85
85
 
@@ -255,14 +255,13 @@ function columnDrag() {
255
255
  }
256
256
 
257
257
  function handleMouseUp(e) {
258
+ e.stopPropagation();
258
259
  document.body.removeEventListener('mousemove', handleMouseMove);
259
260
  document.body.removeEventListener('mouseup', handleMouseUp);
260
- window.removeEventListener('selectstart', disableSelect);
261
+ window.removeEventListener('selectstart', disableSelect); // 阻止列头点击事件,防止拖动后触发列头过滤事件
261
262
 
262
263
  if (_isMoveWhenClicking(mouseDownClientX, mouseDownClientY, e.clientX, e.clientY)) {
263
- e.stopPropagation(); // 存在移动就阻止冒泡
264
-
265
- currentTarget.addEventListener('click', stopClickPropagation); // 阻止列头点击事件,防止拖动后触发列头过滤事件
264
+ currentTarget.addEventListener('click', stopClickPropagation);
266
265
  }
267
266
 
268
267
  window.requestAnimationFrame(function () {
@@ -12,8 +12,8 @@ export interface FilterFeatureOptions {
12
12
  keepDataSource?: boolean;
13
13
  /** 过滤模式。单列过滤 single,多列过滤 multiple,默认为多选 */
14
14
  mode?: 'single' | 'multiple';
15
- /** 过滤图标 */
16
- filterIcon?: ReactNode | ((filtered: boolean) => ReactNode);
15
+ /**过滤图标 */
16
+ filterIcon?: ReactNode;
17
17
  /** 是否对触发弹出过滤面板 的 click 事件调用 event.stopPropagation() */
18
18
  stopClickEventPropagation?: boolean;
19
19
  }
@@ -65,7 +65,7 @@ function filter() {
65
65
  return (0, _map2.default)(columns).call(columns, dfs);
66
66
 
67
67
  function dfs(col) {
68
- var _a, _b, _c, _d, _e, _f, _g;
68
+ var _a, _b, _c, _d, _e;
69
69
 
70
70
  var result = (0, _extends2.default)({}, col);
71
71
  var filterable = col.code && ((_a = col.features) === null || _a === void 0 ? void 0 : _a.filterable);
@@ -104,13 +104,12 @@ function filter() {
104
104
  };
105
105
 
106
106
  var filterPanel = (_d = col.features) === null || _d === void 0 ? void 0 : _d.filterPanel;
107
- var colFilterIcon = (_f = (_e = col.features) === null || _e === void 0 ? void 0 : _e.filterIcon) !== null && _f !== void 0 ? _f : filterIcon;
108
- result.title = (0, _concat.default)(_context = []).call(_context, (0, _toConsumableArray2.default)((0, _concat.default)(_context2 = []).call(_context2, (_g = result.title) !== null && _g !== void 0 ? _g : [_internals.internals.safeRenderHeader((0, _extends2.default)((0, _extends2.default)({}, col), {
107
+ result.title = (0, _concat.default)(_context = []).call(_context, (0, _toConsumableArray2.default)((0, _concat.default)(_context2 = []).call(_context2, (_e = result.title) !== null && _e !== void 0 ? _e : [_internals.internals.safeRenderHeader((0, _extends2.default)((0, _extends2.default)({}, col), {
109
108
  title: null
110
109
  }))])), [/*#__PURE__*/_react.default.createElement(_filter2.Filter, {
111
110
  key: "filter",
112
111
  FilterPanelContent: filterPanel,
113
- filterIcon: colFilterIcon,
112
+ filterIcon: filterIcon,
114
113
  filterModel: inputFiltersMap.get(col.code),
115
114
  setFilterModel: handleFilterChanged,
116
115
  setFilter: setFilter,
@@ -158,8 +157,8 @@ function filter() {
158
157
  return [item.key, (0, _extends2.default)({}, item)];
159
158
  }));
160
159
 
161
- function isMatchedFilterCondition(record) {
162
- return filtersKeys.every(function (key) {
160
+ function isMatchedFilterCondition(record, rowIndex) {
161
+ return !filtersKeys.some(function (key) {
163
162
  var _a, _b;
164
163
 
165
164
  var filterItem = inputFiltersMap.get(key);
@@ -173,41 +172,24 @@ function filter() {
173
172
  } else {
174
173
  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"));
175
174
  comparisonFn = (0, _filter.default)(defaultFilterOptionsMap.get('contain'));
176
- }
175
+ } // 不符合过滤条件,退出循环
177
176
 
178
- return comparisonFn((0, _filter.default)(filterItem), filterItem)(_internals.internals.safeGetValue(columnsMap.get(key), record, -1), record);
177
+
178
+ return !comparisonFn((0, _filter.default)(filterItem), filterItem)(_internals.internals.safeGetValue(columnsMap.get(key), record, rowIndex), record);
179
179
  });
180
180
  }
181
181
 
182
- return layeredFilter(dataSource, isMatchedFilterCondition);
182
+ return dataSource.reduce(function (pre, record, rowIndex) {
183
+ if (isMatchedFilterCondition(record, rowIndex)) {
184
+ return (0, _concat.default)(pre).call(pre, [record]);
185
+ }
186
+
187
+ return pre;
188
+ }, []);
183
189
  }
184
190
 
185
191
  pipeline.dataSource(processDataSource(dataSource));
186
192
  pipeline.columns(processColumns(columns));
187
193
  return pipeline;
188
194
  };
189
- }
190
-
191
- function layeredFilter(array, matchFn) {
192
- return dfs(array);
193
-
194
- function dfs(rows) {
195
- var _context6;
196
-
197
- var parentMatched = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
198
- return (0, _filter.default)(_context6 = (0, _map2.default)(rows).call(rows, function (row) {
199
- var currentMatched = matchFn(row);
200
-
201
- if ((0, _utils.isLeafNode)(row)) {
202
- return (parentMatched || currentMatched) && (0, _extends2.default)({}, row);
203
- }
204
-
205
- var children = row.children;
206
- var rowAfterFilterChildren = (0, _extends2.default)((0, _extends2.default)({}, row), {
207
- children: dfs(children, parentMatched || currentMatched)
208
- });
209
- var matchedByChildren = !(0, _utils.isLeafNode)(rowAfterFilterChildren);
210
- return (parentMatched || currentMatched || matchedByChildren) && rowAfterFilterChildren;
211
- })).call(_context6, Boolean);
212
- }
213
195
  }
@@ -41,7 +41,7 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof _WeakMap !== "functi
41
41
 
42
42
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && _Object$getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? _Object$getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
43
43
 
44
- var TableHeaderCellResize = _styledComponents.default.div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.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"])));
44
+ var TableHeaderCellResize = _styledComponents.default.div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.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"])));
45
45
 
46
46
  var TableHeaderGroupCellResize = (0, _styledComponents.default)(TableHeaderCellResize)(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["\n &:after {\n height: 100%;\n top: 0;\n }\n"])));
47
47