@hi-ui/table 4.3.1 → 4.3.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 (137) hide show
  1. package/CHANGELOG.md +40 -0
  2. package/lib/cjs/BaseTable.js +136 -189
  3. package/lib/cjs/ColGroupContent.js +5 -28
  4. package/lib/cjs/SettingDrawer.js +76 -127
  5. package/lib/cjs/Table.js +107 -171
  6. package/lib/cjs/TableAdvancedFilter.js +49 -85
  7. package/lib/cjs/TableBody.js +33 -69
  8. package/lib/cjs/TableCell.js +56 -102
  9. package/lib/cjs/TableColumnMenu.js +39 -77
  10. package/lib/cjs/TableEmbedRow.js +11 -38
  11. package/lib/cjs/TableHeader.js +8 -33
  12. package/lib/cjs/TableRow.js +48 -88
  13. package/lib/cjs/TableSettingMenu.js +48 -94
  14. package/lib/cjs/TbodyContent.js +28 -56
  15. package/lib/cjs/TheadContent.js +20 -49
  16. package/lib/cjs/_virtual/index.js +0 -3
  17. package/lib/cjs/_virtual/index2.js +0 -3
  18. package/lib/cjs/_virtual/react-is.development.js +0 -3
  19. package/lib/cjs/_virtual/react-is.production.min.js +0 -3
  20. package/lib/cjs/context.js +0 -9
  21. package/lib/cjs/hooks/use-async-switch.js +13 -51
  22. package/lib/cjs/hooks/use-check.js +47 -77
  23. package/lib/cjs/hooks/use-col-hidden.js +16 -28
  24. package/lib/cjs/hooks/use-col-set.js +5 -18
  25. package/lib/cjs/hooks/use-col-sorter.js +18 -32
  26. package/lib/cjs/hooks/use-col-width.js +21 -57
  27. package/lib/cjs/hooks/use-colgroup.js +63 -85
  28. package/lib/cjs/hooks/use-drag.js +10 -31
  29. package/lib/cjs/hooks/use-embed-expand.js +23 -68
  30. package/lib/cjs/hooks/use-expand.js +32 -64
  31. package/lib/cjs/hooks/use-pagination.js +19 -50
  32. package/lib/cjs/hooks/use-queue.js +2 -14
  33. package/lib/cjs/icons/index.js +4 -21
  34. package/lib/cjs/index.js +0 -4
  35. package/lib/cjs/node_modules/classnames/index.js +2 -11
  36. package/lib/cjs/node_modules/perfect-scrollbar/dist/perfect-scrollbar.esm.js +31 -227
  37. package/lib/cjs/node_modules/rc-resize-observer/es/index.js +10 -68
  38. package/lib/cjs/node_modules/rc-resize-observer/node_modules/rc-util/es/Children/toArray.js +1 -17
  39. package/lib/cjs/node_modules/rc-resize-observer/node_modules/rc-util/es/Dom/findDOMNode.js +1 -14
  40. package/lib/cjs/node_modules/rc-resize-observer/node_modules/rc-util/es/ref.js +1 -25
  41. package/lib/cjs/node_modules/rc-resize-observer/node_modules/rc-util/es/warning.js +1 -5
  42. package/lib/cjs/node_modules/rc-util/es/Dom/canUseDom.js +0 -2
  43. package/lib/cjs/node_modules/rc-util/es/Dom/findDOMNode.js +1 -14
  44. package/lib/cjs/node_modules/rc-util/es/hooks/useLayoutEffect.js +2 -9
  45. package/lib/cjs/node_modules/rc-util/es/raf.js +0 -11
  46. package/lib/cjs/node_modules/rc-virtual-list/es/Filler.js +6 -25
  47. package/lib/cjs/node_modules/rc-virtual-list/es/Item.js +3 -14
  48. package/lib/cjs/node_modules/rc-virtual-list/es/List.js +103 -194
  49. package/lib/cjs/node_modules/rc-virtual-list/es/ScrollBar.js +16 -96
  50. package/lib/cjs/node_modules/rc-virtual-list/es/hooks/useChildren.js +2 -11
  51. package/lib/cjs/node_modules/rc-virtual-list/es/hooks/useDiffItem.js +8 -34
  52. package/lib/cjs/node_modules/rc-virtual-list/es/hooks/useFrameWheel.js +0 -10
  53. package/lib/cjs/node_modules/rc-virtual-list/es/hooks/useHeights.js +6 -39
  54. package/lib/cjs/node_modules/rc-virtual-list/es/hooks/useMobileTouchMove.js +0 -16
  55. package/lib/cjs/node_modules/rc-virtual-list/es/hooks/useOriginScroll.js +4 -9
  56. package/lib/cjs/node_modules/rc-virtual-list/es/hooks/useScrollTo.js +3 -28
  57. package/lib/cjs/node_modules/rc-virtual-list/es/index.js +0 -2
  58. package/lib/cjs/node_modules/rc-virtual-list/es/utils/CacheMap.js +2 -9
  59. package/lib/cjs/node_modules/rc-virtual-list/es/utils/algorithmUtil.js +0 -15
  60. package/lib/cjs/node_modules/rc-virtual-list/es/utils/isFirefox.js +0 -2
  61. package/lib/cjs/node_modules/react-is/cjs/react-is.development.js +3 -29
  62. package/lib/cjs/node_modules/react-is/cjs/react-is.production.min.js +19 -45
  63. package/lib/cjs/node_modules/react-is/index.js +0 -5
  64. package/lib/cjs/node_modules/resize-observer-polyfill/dist/ResizeObserver.es.js +83 -248
  65. package/lib/cjs/packages/hooks/use-merge-refs/lib/esm/index.js +3 -14
  66. package/lib/cjs/packages/ui/scrollbar/lib/esm/Scrollbar.js +48 -86
  67. package/lib/cjs/packages/ui/scrollbar/lib/esm/styles/index.scss.js +1 -15
  68. package/lib/cjs/packages/ui/scrollbar/lib/esm/utils/index.js +0 -13
  69. package/lib/cjs/styles/index.scss.js +1 -4
  70. package/lib/cjs/use-table.js +268 -355
  71. package/lib/cjs/utils/index.js +11 -45
  72. package/lib/esm/BaseTable.js +117 -138
  73. package/lib/esm/ColGroupContent.js +3 -9
  74. package/lib/esm/SettingDrawer.js +64 -83
  75. package/lib/esm/Table.js +97 -124
  76. package/lib/esm/TableAdvancedFilter.js +37 -47
  77. package/lib/esm/TableBody.js +24 -34
  78. package/lib/esm/TableCell.js +48 -72
  79. package/lib/esm/TableColumnMenu.js +24 -38
  80. package/lib/esm/TableEmbedRow.js +8 -15
  81. package/lib/esm/TableHeader.js +5 -11
  82. package/lib/esm/TableRow.js +36 -51
  83. package/lib/esm/TableSettingMenu.js +33 -49
  84. package/lib/esm/TbodyContent.js +20 -27
  85. package/lib/esm/TheadContent.js +14 -21
  86. package/lib/esm/context.js +0 -4
  87. package/lib/esm/hooks/use-async-switch.js +9 -28
  88. package/lib/esm/hooks/use-check.js +42 -55
  89. package/lib/esm/hooks/use-col-hidden.js +16 -21
  90. package/lib/esm/hooks/use-col-set.js +5 -13
  91. package/lib/esm/hooks/use-col-sorter.js +18 -23
  92. package/lib/esm/hooks/use-col-width.js +14 -34
  93. package/lib/esm/hooks/use-colgroup.js +60 -66
  94. package/lib/esm/hooks/use-drag.js +9 -13
  95. package/lib/esm/hooks/use-embed-expand.js +20 -42
  96. package/lib/esm/hooks/use-expand.js +32 -56
  97. package/lib/esm/hooks/use-pagination.js +13 -25
  98. package/lib/esm/hooks/use-queue.js +2 -10
  99. package/lib/esm/node_modules/classnames/index.js +2 -9
  100. package/lib/esm/node_modules/perfect-scrollbar/dist/perfect-scrollbar.esm.js +31 -228
  101. package/lib/esm/node_modules/rc-resize-observer/es/index.js +3 -26
  102. package/lib/esm/node_modules/rc-resize-observer/node_modules/rc-util/es/Children/toArray.js +0 -3
  103. package/lib/esm/node_modules/rc-resize-observer/node_modules/rc-util/es/Dom/findDOMNode.js +1 -2
  104. package/lib/esm/node_modules/rc-resize-observer/node_modules/rc-util/es/ref.js +0 -8
  105. package/lib/esm/node_modules/rc-resize-observer/node_modules/rc-util/es/warning.js +0 -5
  106. package/lib/esm/node_modules/rc-util/es/Dom/canUseDom.js +0 -1
  107. package/lib/esm/node_modules/rc-util/es/Dom/findDOMNode.js +1 -2
  108. package/lib/esm/node_modules/rc-util/es/hooks/useLayoutEffect.js +1 -0
  109. package/lib/esm/node_modules/rc-util/es/raf.js +0 -10
  110. package/lib/esm/node_modules/rc-virtual-list/es/Filler.js +4 -15
  111. package/lib/esm/node_modules/rc-virtual-list/es/Item.js +1 -3
  112. package/lib/esm/node_modules/rc-virtual-list/es/List.js +101 -174
  113. package/lib/esm/node_modules/rc-virtual-list/es/ScrollBar.js +14 -86
  114. package/lib/esm/node_modules/rc-virtual-list/es/hooks/useChildren.js +0 -2
  115. package/lib/esm/node_modules/rc-virtual-list/es/hooks/useDiffItem.js +6 -25
  116. package/lib/esm/node_modules/rc-virtual-list/es/hooks/useFrameWheel.js +0 -6
  117. package/lib/esm/node_modules/rc-virtual-list/es/hooks/useHeights.js +4 -28
  118. package/lib/esm/node_modules/rc-virtual-list/es/hooks/useMobileTouchMove.js +0 -13
  119. package/lib/esm/node_modules/rc-virtual-list/es/hooks/useOriginScroll.js +4 -8
  120. package/lib/esm/node_modules/rc-virtual-list/es/hooks/useScrollTo.js +1 -19
  121. package/lib/esm/node_modules/rc-virtual-list/es/index.js +1 -1
  122. package/lib/esm/node_modules/rc-virtual-list/es/utils/CacheMap.js +2 -8
  123. package/lib/esm/node_modules/rc-virtual-list/es/utils/algorithmUtil.js +1 -12
  124. package/lib/esm/node_modules/rc-virtual-list/es/utils/isFirefox.js +0 -1
  125. package/lib/esm/node_modules/react-is/cjs/react-is.development.js +4 -27
  126. package/lib/esm/node_modules/react-is/cjs/react-is.production.min.js +20 -44
  127. package/lib/esm/node_modules/react-is/index.js +0 -1
  128. package/lib/esm/node_modules/resize-observer-polyfill/dist/ResizeObserver.es.js +82 -248
  129. package/lib/esm/packages/hooks/use-merge-refs/lib/esm/index.js +3 -9
  130. package/lib/esm/packages/ui/scrollbar/lib/esm/Scrollbar.js +47 -64
  131. package/lib/esm/packages/ui/scrollbar/lib/esm/styles/index.scss.js +1 -3
  132. package/lib/esm/packages/ui/scrollbar/lib/esm/utils/index.js +0 -10
  133. package/lib/esm/styles/index.scss.js +1 -3
  134. package/lib/esm/use-table.js +261 -318
  135. package/lib/esm/utils/index.js +11 -41
  136. package/lib/types/BaseTable.d.ts +2 -2
  137. package/package.json +33 -33
@@ -9,88 +9,56 @@
9
9
  */
10
10
  'use strict';
11
11
 
12
- var _typeof = require("@babel/runtime/helpers/typeof");
13
-
14
- Object.defineProperty(exports, '__esModule', {
15
- value: true
16
- });
17
-
18
12
  var React = require('react');
19
-
20
13
  var List = require('./node_modules/rc-virtual-list/es/List.js');
21
-
22
14
  var classname = require('@hi-ui/classname');
23
-
24
15
  var env = require('@hi-ui/env');
25
-
26
16
  var useLatest = require('@hi-ui/use-latest');
27
-
28
17
  var typeAssertion = require('@hi-ui/type-assertion');
29
-
30
18
  require('./packages/ui/scrollbar/lib/esm/styles/index.scss.js');
31
-
32
19
  var Scrollbar = require('./packages/ui/scrollbar/lib/esm/Scrollbar.js');
33
-
34
20
  var TableRow = require('./TableRow.js');
35
-
36
21
  var context = require('./context.js');
37
-
38
22
  var ColGroupContent = require('./ColGroupContent.js');
39
-
40
23
  var TbodyContent = require('./TbodyContent.js');
41
-
42
- function _interopDefaultLegacy(e) {
43
- return e && _typeof(e) === 'object' && 'default' in e ? e : {
44
- 'default': e
45
- };
46
- }
47
-
48
- var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
49
-
50
24
  var _role = 'table';
51
-
52
25
  var _prefix = classname.getPrefixCls(_role);
53
-
54
26
  var TableBody = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
55
27
  var _ref$prefixCls = _ref.prefixCls,
56
- prefixCls = _ref$prefixCls === void 0 ? _prefix : _ref$prefixCls,
57
- emptyContent = _ref.emptyContent;
58
-
28
+ prefixCls = _ref$prefixCls === void 0 ? _prefix : _ref$prefixCls,
29
+ emptyContent = _ref.emptyContent;
59
30
  var _a;
60
-
61
31
  var _useTableContext = context.useTableContext(),
62
- columns = _useTableContext.columns,
63
- isExpandTreeRows = _useTableContext.isExpandTreeRows,
64
- transitionData = _useTableContext.transitionData,
65
- bodyTableRef = _useTableContext.bodyTableRef,
66
- scrollBodyElementRef = _useTableContext.scrollBodyElementRef,
67
- onTableBodyScroll = _useTableContext.onTableBodyScroll,
68
- onTableBodyScrollMock = _useTableContext.onTableBodyScrollMock,
69
- maxHeight = _useTableContext.maxHeight,
70
- canScroll = _useTableContext.canScroll,
71
- scrollWidth = _useTableContext.scrollWidth,
72
- colWidths = _useTableContext.colWidths,
73
- virtual = _useTableContext.virtual,
74
- measureRowElementRef = _useTableContext.measureRowElementRef,
75
- scrollbar = _useTableContext.scrollbar;
76
-
32
+ columns = _useTableContext.columns,
33
+ isExpandTreeRows = _useTableContext.isExpandTreeRows,
34
+ transitionData = _useTableContext.transitionData,
35
+ bodyTableRef = _useTableContext.bodyTableRef,
36
+ scrollBodyElementRef = _useTableContext.scrollBodyElementRef,
37
+ onTableBodyScroll = _useTableContext.onTableBodyScroll,
38
+ onTableBodyScrollMock = _useTableContext.onTableBodyScrollMock,
39
+ maxHeight = _useTableContext.maxHeight,
40
+ canScroll = _useTableContext.canScroll,
41
+ scrollWidth = _useTableContext.scrollWidth,
42
+ colWidths = _useTableContext.colWidths,
43
+ virtual = _useTableContext.virtual,
44
+ measureRowElementRef = _useTableContext.measureRowElementRef,
45
+ scrollbar = _useTableContext.scrollbar;
77
46
  var cls = classname.cx(prefixCls + "-body");
78
47
  var getRequiredProps = useLatest.useLatestCallback(function (id) {
79
48
  return {
80
49
  // @ts-ignore
81
- expandedTree: isExpandTreeRows(id) // checked: isCheckedId(id),
50
+ expandedTree: isExpandTreeRows(id)
51
+ // checked: isCheckedId(id),
82
52
  // semiChecked: isSemiCheckedId(id),
83
53
  // selected: selectedId === id,
84
54
  // loading: isLoadingId(id),
85
55
  // focused: focusedId === id,
86
-
87
56
  };
88
57
  });
89
58
 
90
59
  var _useState = React.useState(0),
91
- scrollLeft = _useState[0],
92
- setScrollLeft = _useState[1];
93
-
60
+ scrollLeft = _useState[0],
61
+ setScrollLeft = _useState[1];
94
62
  var rowWidth = React.useMemo(function () {
95
63
  var tmpWidth = 0;
96
64
  colWidths.forEach(function (width) {
@@ -100,16 +68,14 @@ var TableBody = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
100
68
  }, [colWidths]);
101
69
  var onVirtualContainerScroll = React.useCallback(function (evt) {
102
70
  var _a;
103
-
104
71
  setScrollLeft(((_a = scrollBodyElementRef === null || scrollBodyElementRef === void 0 ? void 0 : scrollBodyElementRef.current) === null || _a === void 0 ? void 0 : _a.scrollLeft) || 0);
105
72
  onTableBodyScroll(evt);
106
73
  }, [scrollBodyElementRef, onTableBodyScroll]);
107
-
108
74
  if (virtual) {
109
75
  // TODO: avg和summay row的逻辑
110
76
  var realHeight = (_a = scrollBodyElementRef.current) === null || _a === void 0 ? void 0 : _a.getBoundingClientRect().height;
111
77
  var vMaxHeight = maxHeight ? !isNaN(Number(String(maxHeight).replace(/px/, ''))) ? Number(maxHeight) : realHeight : 300;
112
- return /*#__PURE__*/React__default["default"].createElement("div", {
78
+ return /*#__PURE__*/React.createElement("div", {
113
79
  ref: scrollBodyElementRef,
114
80
  className: cls,
115
81
  onScroll: onVirtualContainerScroll,
@@ -119,37 +85,38 @@ var TableBody = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
119
85
  // 表格宽度大于div宽度才出现横向滚动条
120
86
  overflowX: canScroll ? 'scroll' : undefined
121
87
  }
122
- }, /*#__PURE__*/React__default["default"].createElement("div", {
88
+ }, /*#__PURE__*/React.createElement("div", {
123
89
  ref: measureRowElementRef,
124
90
  style: {
125
91
  height: 1,
126
92
  background: 'transparent'
127
93
  }
128
- }), /*#__PURE__*/React__default["default"].createElement("div", {
94
+ }), /*#__PURE__*/React.createElement("div", {
129
95
  ref: bodyTableRef,
130
96
  style: {
131
97
  height: 1,
132
98
  background: 'transparent',
133
99
  width: rowWidth
134
100
  }
135
- }), typeAssertion.isArrayNonEmpty(transitionData) ? /*#__PURE__*/React__default["default"].createElement("div", {
101
+ }), typeAssertion.isArrayNonEmpty(transitionData) ? /*#__PURE__*/React.createElement("div", {
136
102
  style: {
137
103
  width: '100%',
138
104
  position: 'sticky',
139
105
  left: 0
140
106
  }
141
- }, /*#__PURE__*/React__default["default"].createElement(List["default"], {
107
+ }, /*#__PURE__*/React.createElement(List["default"], {
142
108
  data: transitionData,
143
109
  height: vMaxHeight,
144
110
  itemHeight: 10,
145
111
  itemKey: "id",
146
112
  children: function children(row, index) {
147
- return /*#__PURE__*/React__default["default"].createElement("div", {
113
+ return /*#__PURE__*/React.createElement("div", {
148
114
  style: {
149
115
  position: 'relative',
150
116
  left: -scrollLeft
151
117
  }
152
- }, /*#__PURE__*/React__default["default"].createElement(TableRow.TableRow // key={depth + index}
118
+ }, /*#__PURE__*/React.createElement(TableRow.TableRow
119
+ // key={depth + index}
153
120
  , Object.assign({
154
121
  // key={depth + index}
155
122
  key: row.id,
@@ -166,13 +133,12 @@ var TableBody = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
166
133
  scrollBodyWidth: window.getComputedStyle(scrollBodyElementRef.current).getPropertyValue('width')
167
134
  } : {})));
168
135
  }
169
-
170
- var bodyContent = /*#__PURE__*/React__default["default"].createElement("table", {
136
+ var bodyContent = /*#__PURE__*/React.createElement("table", {
171
137
  ref: bodyTableRef,
172
138
  style: {
173
139
  width: canScroll && scrollWidth !== undefined ? scrollWidth : '100%'
174
140
  }
175
- }, /*#__PURE__*/React__default["default"].createElement(ColGroupContent.ColGroupContent, null), /*#__PURE__*/React__default["default"].createElement(TbodyContent.TbodyContent, null));
141
+ }, /*#__PURE__*/React.createElement(ColGroupContent.ColGroupContent, null), /*#__PURE__*/React.createElement(TbodyContent.TbodyContent, null));
176
142
  var scrollBodyProps = {
177
143
  ref: scrollBodyElementRef,
178
144
  className: cls,
@@ -180,13 +146,11 @@ var TableBody = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
180
146
  style: {
181
147
  maxHeight: maxHeight
182
148
  }
183
- }; // 外层增加 div 作为滚动容器
184
-
185
- return !scrollbar ? /*#__PURE__*/React__default["default"].createElement("div", Object.assign({}, scrollBodyProps), bodyContent) : /*#__PURE__*/React__default["default"].createElement(Scrollbar.Scrollbar, Object.assign({}, scrollBodyProps, typeAssertion.isObject(scrollbar) ? scrollbar : null), bodyContent);
149
+ };
150
+ // 外层增加 div 作为滚动容器
151
+ return !scrollbar ? /*#__PURE__*/React.createElement("div", Object.assign({}, scrollBodyProps), bodyContent) : /*#__PURE__*/React.createElement(Scrollbar.Scrollbar, Object.assign({}, scrollBodyProps, typeAssertion.isObject(scrollbar) ? scrollbar : null), bodyContent);
186
152
  });
187
-
188
153
  if (env.__DEV__) {
189
154
  TableBody.displayName = 'TableBody';
190
155
  }
191
-
192
156
  exports.TableBody = TableBody;
@@ -9,106 +9,74 @@
9
9
  */
10
10
  'use strict';
11
11
 
12
- var _typeof = require("@babel/runtime/helpers/typeof");
13
-
14
- Object.defineProperty(exports, '__esModule', {
15
- value: true
16
- });
17
-
18
12
  var React = require('react');
19
-
20
13
  var classname = require('@hi-ui/classname');
21
-
22
14
  var env = require('@hi-ui/env');
23
-
24
15
  var arrayUtils = require('@hi-ui/array-utils');
25
-
26
16
  var typeAssertion = require('@hi-ui/type-assertion');
27
-
28
17
  var iconButton = require('@hi-ui/icon-button');
29
-
30
18
  var context = require('./context.js');
31
-
32
19
  var index = require('./icons/index.js');
33
-
34
20
  var BaseTable = require('./BaseTable.js');
35
-
36
- function _interopDefaultLegacy(e) {
37
- return e && _typeof(e) === 'object' && 'default' in e ? e : {
38
- 'default': e
39
- };
40
- }
41
-
42
- var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
43
-
44
21
  var _prefix = classname.getPrefixCls('table-cell');
45
22
  /**
46
23
  * 表格 body 单元格渲染
47
24
  */
48
-
49
-
50
25
  var TableCell = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
51
26
  var _ref$prefixCls = _ref.prefixCls,
52
- prefixCls = _ref$prefixCls === void 0 ? _prefix : _ref$prefixCls,
53
- className = _ref.className,
54
- column = _ref.column,
55
- rowData = _ref.rowData,
56
- rowIndex = _ref.rowIndex,
57
- colIndex = _ref.colIndex,
58
- _ref$isSwitcherCol = _ref.isSwitcherCol,
59
- isSwitcherCol = _ref$isSwitcherCol === void 0 ? false : _ref$isSwitcherCol,
60
- _ref$expandedTree = _ref.expandedTree,
61
- expandedTree = _ref$expandedTree === void 0 ? false : _ref$expandedTree,
62
- _ref$expandedIcon = _ref.expandedIcon,
63
- expandedIcon = _ref$expandedIcon === void 0 ? index.defaultExpandIcon : _ref$expandedIcon,
64
- _ref$collapsedIcon = _ref.collapsedIcon,
65
- collapsedIcon = _ref$collapsedIcon === void 0 ? index.defaultCollapseIcon : _ref$collapsedIcon,
66
- _ref$leafIcon = _ref.leafIcon,
67
- leafIcon = _ref$leafIcon === void 0 ? index.defaultLeafIcon : _ref$leafIcon;
68
-
27
+ prefixCls = _ref$prefixCls === void 0 ? _prefix : _ref$prefixCls,
28
+ className = _ref.className,
29
+ column = _ref.column,
30
+ rowData = _ref.rowData,
31
+ rowIndex = _ref.rowIndex,
32
+ colIndex = _ref.colIndex,
33
+ _ref$isSwitcherCol = _ref.isSwitcherCol,
34
+ isSwitcherCol = _ref$isSwitcherCol === void 0 ? false : _ref$isSwitcherCol,
35
+ _ref$expandedTree = _ref.expandedTree,
36
+ expandedTree = _ref$expandedTree === void 0 ? false : _ref$expandedTree,
37
+ _ref$expandedIcon = _ref.expandedIcon,
38
+ expandedIcon = _ref$expandedIcon === void 0 ? index.defaultExpandIcon : _ref$expandedIcon,
39
+ _ref$collapsedIcon = _ref.collapsedIcon,
40
+ collapsedIcon = _ref$collapsedIcon === void 0 ? index.defaultCollapseIcon : _ref$collapsedIcon,
41
+ _ref$leafIcon = _ref.leafIcon,
42
+ leafIcon = _ref$leafIcon === void 0 ? index.defaultLeafIcon : _ref$leafIcon;
69
43
  var _useTableContext = context.useTableContext(),
70
- isHighlightedCol = _useTableContext.isHighlightedCol,
71
- onLoadChildren = _useTableContext.onLoadChildren,
72
- isHoveredHighlightCol = _useTableContext.isHoveredHighlightCol,
73
- showColHighlight = _useTableContext.showColHighlight,
74
- onHoveredColChange = _useTableContext.onHoveredColChange,
75
- onTreeNodeSwitch = _useTableContext.onTreeNodeSwitch,
76
- getStickyColProps = _useTableContext.getStickyColProps,
77
- canScroll = _useTableContext.canScroll,
78
- isTree = _useTableContext.isTree,
79
- cellRender = _useTableContext.cellRender,
80
- isLoadingTreeNodeId = _useTableContext.isLoadingTreeNodeId,
81
- colWidths = _useTableContext.colWidths,
82
- virtual = _useTableContext.virtual;
83
-
44
+ isHighlightedCol = _useTableContext.isHighlightedCol,
45
+ onLoadChildren = _useTableContext.onLoadChildren,
46
+ isHoveredHighlightCol = _useTableContext.isHoveredHighlightCol,
47
+ showColHighlight = _useTableContext.showColHighlight,
48
+ onHoveredColChange = _useTableContext.onHoveredColChange,
49
+ onTreeNodeSwitch = _useTableContext.onTreeNodeSwitch,
50
+ getStickyColProps = _useTableContext.getStickyColProps,
51
+ canScroll = _useTableContext.canScroll,
52
+ isTree = _useTableContext.isTree,
53
+ cellRender = _useTableContext.cellRender,
54
+ isLoadingTreeNodeId = _useTableContext.isLoadingTreeNodeId,
55
+ colWidths = _useTableContext.colWidths,
56
+ virtual = _useTableContext.virtual;
84
57
  var dataKey = column.id,
85
- leftStickyWidth = column.leftStickyWidth,
86
- rightStickyWidth = column.rightStickyWidth,
87
- rawRender = column.render,
88
- raw = column.raw;
58
+ leftStickyWidth = column.leftStickyWidth,
59
+ rightStickyWidth = column.rightStickyWidth,
60
+ rawRender = column.render,
61
+ raw = column.raw;
89
62
  var depth = rowData.depth,
90
- rowId = rowData.id;
63
+ rowId = rowData.id;
91
64
  /**
92
65
  * normalize 单元格渲染内容,支持自定义 render
93
66
  */
94
-
95
- var cellContent = React__default["default"].useMemo(function () {
67
+ var cellContent = React.useMemo(function () {
96
68
  var row = rowData.raw;
97
69
  var content = row[dataKey];
98
-
99
70
  if (typeAssertion.isFunction(rawRender)) {
100
71
  content = rawRender(content, BaseTable.EMBED_DATA_KEY === dataKey ? rowData : row, rowIndex, dataKey);
101
72
  } else if (typeAssertion.isFunction(cellRender)) {
102
73
  content = cellRender(content);
103
- } // 处理单元格内容,重载支持配置式合并单元格
104
-
105
-
106
- var childrenMaybePropsReturn = typeAssertion.isObject(content) && ! /*#__PURE__*/React__default["default"].isValidElement(content);
107
-
74
+ }
75
+ // 处理单元格内容,重载支持配置式合并单元格
76
+ var childrenMaybePropsReturn = typeAssertion.isObject(content) && ! /*#__PURE__*/React.isValidElement(content);
108
77
  if (childrenMaybePropsReturn) {
109
78
  return content;
110
79
  }
111
-
112
80
  return {
113
81
  children: content,
114
82
  props: {
@@ -116,20 +84,18 @@ var TableCell = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
116
84
  rowSpan: undefined
117
85
  }
118
86
  };
119
- }, [rawRender, dataKey, rowData, rowIndex, cellRender]); // 将被其它单元格(用户配置)合并,不进行渲染
120
-
87
+ }, [rawRender, dataKey, rowData, rowIndex, cellRender]);
88
+ // 将被其它单元格(用户配置)合并,不进行渲染
121
89
  if (cellContent.props.colSpan === 0 || cellContent.props.rowSpan === 0) {
122
90
  return null;
123
91
  }
124
-
125
92
  var loading = isLoadingTreeNodeId(rowId);
126
93
  var sticky = typeof rightStickyWidth !== 'undefined' || typeof leftStickyWidth !== 'undefined';
127
94
  var cls = classname.cx(prefixCls, className, raw.className, canScroll && sticky && prefixCls + "__col--sticky", isHighlightedCol(dataKey) && prefixCls + "__col--highlight", isHoveredHighlightCol(dataKey) && prefixCls + "__col--hovered-highlight");
128
-
129
95
  if (virtual) {
130
96
  var width = colWidths[colIndex];
131
97
  var colProps = getStickyColProps(column);
132
- return /*#__PURE__*/React__default["default"].createElement("div", Object.assign({
98
+ return /*#__PURE__*/React.createElement("div", Object.assign({
133
99
  ref: ref,
134
100
  key: dataKey,
135
101
  className: cls
@@ -162,8 +128,7 @@ var TableCell = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
162
128
  }
163
129
  }) : null, cellContent.children);
164
130
  }
165
-
166
- return /*#__PURE__*/React__default["default"].createElement("td", Object.assign({
131
+ return /*#__PURE__*/React.createElement("td", Object.assign({
167
132
  ref: ref,
168
133
  key: dataKey,
169
134
  className: cls
@@ -195,20 +160,17 @@ var TableCell = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
195
160
  }
196
161
  }) : null, cellContent.children);
197
162
  });
198
-
199
163
  if (env.__DEV__) {
200
164
  TableCell.displayName = 'TableCell';
201
165
  }
202
166
  /**
203
167
  * 渲染空白占位
204
168
  */
205
-
206
-
207
169
  var renderIndent = function renderIndent(_ref2) {
208
170
  var prefixCls = _ref2.prefixCls,
209
- depth = _ref2.depth;
171
+ depth = _ref2.depth;
210
172
  return arrayUtils.times(depth, function (index) {
211
- return /*#__PURE__*/React__default["default"].createElement("span", {
173
+ return /*#__PURE__*/React.createElement("span", {
212
174
  className: prefixCls + "__indent",
213
175
  key: index
214
176
  });
@@ -217,32 +179,27 @@ var renderIndent = function renderIndent(_ref2) {
217
179
  /**
218
180
  * 渲染子树折叠切换器
219
181
  */
220
-
221
-
222
182
  var renderSwitcher = function renderSwitcher(_ref3) {
223
183
  var prefixCls = _ref3.prefixCls,
224
- node = _ref3.node,
225
- loading = _ref3.loading,
226
- expanded = _ref3.expanded,
227
- expandedIcon = _ref3.expandedIcon,
228
- collapsedIcon = _ref3.collapsedIcon,
229
- leafIcon = _ref3.leafIcon,
230
- onNodeExpand = _ref3.onNodeExpand,
231
- onLoadChildren = _ref3.onLoadChildren,
232
- isTree = _ref3.isTree;
233
-
184
+ node = _ref3.node,
185
+ loading = _ref3.loading,
186
+ expanded = _ref3.expanded,
187
+ expandedIcon = _ref3.expandedIcon,
188
+ collapsedIcon = _ref3.collapsedIcon,
189
+ leafIcon = _ref3.leafIcon,
190
+ onNodeExpand = _ref3.onNodeExpand,
191
+ onLoadChildren = _ref3.onLoadChildren,
192
+ isTree = _ref3.isTree;
234
193
  if (loading) {
235
- return /*#__PURE__*/React__default["default"].createElement(iconButton.IconButton, {
194
+ return /*#__PURE__*/React.createElement(iconButton.IconButton, {
236
195
  className: classname.cx(prefixCls + "__switcher", prefixCls + "__switcher--loading"),
237
196
  icon: index.defaultLoadingIcon
238
197
  });
239
198
  }
240
-
241
199
  var hasChildren = node.children && node.children.length > 0;
242
200
  var canLoadChildren = onLoadChildren && !node.children && !node.isLeaf;
243
-
244
201
  if (hasChildren || canLoadChildren) {
245
- return /*#__PURE__*/React__default["default"].createElement(iconButton.IconButton, {
202
+ return /*#__PURE__*/React.createElement(iconButton.IconButton, {
246
203
  tabIndex: -1,
247
204
  className: classname.cx(prefixCls + "__switcher", prefixCls + "__switcher--" + (expanded ? 'expanded' : 'collapse')),
248
205
  icon: expanded ? expandedIcon : collapsedIcon,
@@ -252,16 +209,13 @@ var renderSwitcher = function renderSwitcher(_ref3) {
252
209
  }
253
210
  });
254
211
  }
255
-
256
212
  if (isTree) {
257
- return /*#__PURE__*/React__default["default"].createElement(iconButton.IconButton, {
213
+ return /*#__PURE__*/React.createElement(iconButton.IconButton, {
258
214
  tabIndex: -1,
259
215
  className: classname.cx(prefixCls + "__switcher", prefixCls + "__switcher--noop"),
260
216
  icon: leafIcon
261
217
  });
262
218
  }
263
-
264
219
  return null;
265
220
  };
266
-
267
221
  exports.TableCell = TableCell;
@@ -9,98 +9,66 @@
9
9
  */
10
10
  'use strict';
11
11
 
12
- var _typeof = require("@babel/runtime/helpers/typeof");
13
-
14
- Object.defineProperty(exports, '__esModule', {
15
- value: true
16
- });
17
-
18
12
  var React = require('react');
19
-
20
13
  var classname = require('@hi-ui/classname');
21
-
22
14
  var env = require('@hi-ui/env');
23
-
24
15
  var icons = require('@hi-ui/icons');
25
-
26
16
  var iconButton = require('@hi-ui/icon-button');
27
-
28
17
  var Popper = require('@hi-ui/popper');
29
-
30
18
  var useToggle = require('@hi-ui/use-toggle');
31
-
32
19
  var context = require('./context.js');
33
-
34
20
  var core = require('@hi-ui/core');
35
-
36
- function _interopDefaultLegacy(e) {
37
- return e && _typeof(e) === 'object' && 'default' in e ? e : {
38
- 'default': e
39
- };
40
- }
41
-
42
- var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
43
-
44
- var Popper__default = /*#__PURE__*/_interopDefaultLegacy(Popper);
45
-
46
21
  var _prefix = classname.getPrefixCls('table-column-menu');
47
22
  /**
48
23
  * 表头每列下拉式菜单,包含冻结、高亮、递增、递减操作
49
24
  */
50
-
51
-
52
25
  var TableColumnMenu = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
53
26
  var _ref$prefixCls = _ref.prefixCls,
54
- prefixCls = _ref$prefixCls === void 0 ? _prefix : _ref$prefixCls,
55
- column = _ref.column,
56
- onOpen = _ref.onOpen,
57
- onClose = _ref.onClose;
27
+ prefixCls = _ref$prefixCls === void 0 ? _prefix : _ref$prefixCls,
28
+ column = _ref.column,
29
+ onOpen = _ref.onOpen,
30
+ onClose = _ref.onClose;
58
31
  var i18n = core.useLocaleContext();
59
-
60
32
  var _useTableContext = context.useTableContext(),
61
- activeSorterType = _useTableContext.activeSorterType,
62
- activeSorterColumn = _useTableContext.activeSorterColumn,
63
- setActiveSorterType = _useTableContext.setActiveSorterType,
64
- setActiveSorterColumn = _useTableContext.setActiveSorterColumn,
65
- leftFreezeColumn = _useTableContext.leftFreezeColumn,
66
- setLeftFreezeColumn = _useTableContext.setLeftFreezeColumn,
67
- isHighlightedCol = _useTableContext.isHighlightedCol,
68
- onHighlightedColChange = _useTableContext.onHighlightedColChange;
69
-
33
+ activeSorterType = _useTableContext.activeSorterType,
34
+ activeSorterColumn = _useTableContext.activeSorterColumn,
35
+ setActiveSorterType = _useTableContext.setActiveSorterType,
36
+ setActiveSorterColumn = _useTableContext.setActiveSorterColumn,
37
+ leftFreezeColumn = _useTableContext.leftFreezeColumn,
38
+ setLeftFreezeColumn = _useTableContext.setLeftFreezeColumn,
39
+ isHighlightedCol = _useTableContext.isHighlightedCol,
40
+ onHighlightedColChange = _useTableContext.onHighlightedColChange;
70
41
  var dataKey = column.id,
71
- columnRaw = column.raw;
42
+ columnRaw = column.raw;
72
43
  var canSort = !!columnRaw.sorter;
73
-
74
44
  var _useUncontrolledToggl = useToggle.useUncontrolledToggle({
75
- onOpen: onOpen,
76
- onClose: onClose
77
- }),
78
- menuVisible = _useUncontrolledToggl[0],
79
- menuVisibleAction = _useUncontrolledToggl[1];
80
-
81
- var _React$useState = React__default["default"].useState(null),
82
- menuTrigger = _React$useState[0],
83
- setMenuTrigger = _React$useState[1];
84
-
85
- return /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, /*#__PURE__*/React__default["default"].createElement(iconButton.IconButton, {
45
+ onOpen: onOpen,
46
+ onClose: onClose
47
+ }),
48
+ menuVisible = _useUncontrolledToggl[0],
49
+ menuVisibleAction = _useUncontrolledToggl[1];
50
+ var _React$useState = React.useState(null),
51
+ menuTrigger = _React$useState[0],
52
+ setMenuTrigger = _React$useState[1];
53
+ return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(iconButton.IconButton, {
86
54
  className: prefixCls + "__trigger",
87
55
  ref: setMenuTrigger,
88
56
  onClick: menuVisibleAction.not,
89
- icon: /*#__PURE__*/React__default["default"].createElement(icons.DownOutlined, null)
90
- }), /*#__PURE__*/React__default["default"].createElement(Popper__default["default"], {
57
+ icon: /*#__PURE__*/React.createElement(icons.DownOutlined, null)
58
+ }), /*#__PURE__*/React.createElement(Popper, {
91
59
  className: prefixCls + "__popper",
92
60
  visible: menuVisible,
93
61
  attachEl: menuTrigger,
94
62
  onClose: menuVisibleAction.off,
95
63
  // @DesignToken zIndex: `overlay`
96
64
  zIndex: 1050
97
- }, /*#__PURE__*/React__default["default"].createElement("div", {
65
+ }, /*#__PURE__*/React.createElement("div", {
98
66
  className: prefixCls + "__content"
99
- }, canSort ? /*#__PURE__*/React__default["default"].createElement(TableColumnMenuItem, {
67
+ }, canSort ? /*#__PURE__*/React.createElement(TableColumnMenuItem, {
100
68
  prefixCls: prefixCls,
101
69
  active: activeSorterType === 'ascend' && activeSorterColumn === dataKey,
102
70
  content: i18n.get('table.ascend'),
103
- icon: /*#__PURE__*/React__default["default"].createElement(icons.SortAscendingOutlined, null),
71
+ icon: /*#__PURE__*/React.createElement(icons.SortAscendingOutlined, null),
104
72
  onSwitch: function onSwitch(shouldActive) {
105
73
  if (shouldActive) {
106
74
  setActiveSorterType('ascend');
@@ -109,14 +77,13 @@ var TableColumnMenu = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
109
77
  setActiveSorterType(null);
110
78
  setActiveSorterColumn(null);
111
79
  }
112
-
113
80
  menuVisibleAction.off();
114
81
  }
115
- }) : null, canSort ? /*#__PURE__*/React__default["default"].createElement(TableColumnMenuItem, {
82
+ }) : null, canSort ? /*#__PURE__*/React.createElement(TableColumnMenuItem, {
116
83
  prefixCls: prefixCls,
117
84
  active: activeSorterType === 'descend' && activeSorterColumn === dataKey,
118
85
  content: i18n.get('table.descend'),
119
- icon: /*#__PURE__*/React__default["default"].createElement(icons.SortDescendingOutlined, null),
86
+ icon: /*#__PURE__*/React.createElement(icons.SortDescendingOutlined, null),
120
87
  onSwitch: function onSwitch(shouldActive) {
121
88
  if (shouldActive) {
122
89
  setActiveSorterType('descend');
@@ -125,52 +92,47 @@ var TableColumnMenu = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
125
92
  setActiveSorterType(null);
126
93
  setActiveSorterColumn(null);
127
94
  }
128
-
129
95
  menuVisibleAction.off();
130
96
  }
131
- }) : null, /*#__PURE__*/React__default["default"].createElement(TableColumnMenuItem, {
97
+ }) : null, /*#__PURE__*/React.createElement(TableColumnMenuItem, {
132
98
  prefixCls: prefixCls,
133
99
  active: isHighlightedCol(dataKey),
134
100
  content: i18n.get('table.highlight'),
135
- icon: /*#__PURE__*/React__default["default"].createElement(icons.ColumnHeightOutlined, null),
101
+ icon: /*#__PURE__*/React.createElement(icons.ColumnHeightOutlined, null),
136
102
  onSwitch: function onSwitch(shouldActive) {
137
103
  onHighlightedColChange(column, shouldActive);
138
104
  menuVisibleAction.off();
139
105
  }
140
- }), /*#__PURE__*/React__default["default"].createElement(TableColumnMenuItem, {
106
+ }), /*#__PURE__*/React.createElement(TableColumnMenuItem, {
141
107
  prefixCls: prefixCls,
142
108
  active: leftFreezeColumn === dataKey,
143
109
  content: i18n.get('table.freeze'),
144
- icon: /*#__PURE__*/React__default["default"].createElement(icons.LockOutlined, null),
110
+ icon: /*#__PURE__*/React.createElement(icons.LockOutlined, null),
145
111
  onSwitch: function onSwitch(shouldActive) {
146
112
  if (shouldActive) {
147
113
  setLeftFreezeColumn(dataKey);
148
114
  } else {
149
115
  setLeftFreezeColumn('');
150
116
  }
151
-
152
117
  menuVisibleAction.off();
153
118
  }
154
119
  }))));
155
120
  });
156
-
157
121
  if (env.__DEV__) {
158
122
  TableColumnMenu.displayName = 'TableColumnMenu';
159
123
  }
160
-
161
124
  var TableColumnMenuItem = function TableColumnMenuItem(_ref2) {
162
125
  var prefixCls = _ref2.prefixCls,
163
- active = _ref2.active,
164
- onSwitch = _ref2.onSwitch,
165
- content = _ref2.content,
166
- icon = _ref2.icon;
167
- return /*#__PURE__*/React__default["default"].createElement("div", {
126
+ active = _ref2.active,
127
+ onSwitch = _ref2.onSwitch,
128
+ content = _ref2.content,
129
+ icon = _ref2.icon;
130
+ return /*#__PURE__*/React.createElement("div", {
168
131
  className: classname.cx(prefixCls + "__item", active && prefixCls + "__item--active"),
169
132
  onClick: function onClick() {
170
133
  return onSwitch(!active);
171
134
  }
172
- }, /*#__PURE__*/React__default["default"].createElement("span", null, content), icon);
135
+ }, /*#__PURE__*/React.createElement("span", null, content), icon);
173
136
  };
174
-
175
137
  exports.TableColumnMenu = TableColumnMenu;
176
138
  exports.TableColumnMenuItem = TableColumnMenuItem;