@hi-ui/table 4.3.0 → 4.3.2-alpha.0
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.
- package/CHANGELOG.md +11 -0
- package/lib/cjs/BaseTable.js +136 -189
- package/lib/cjs/ColGroupContent.js +5 -28
- package/lib/cjs/SettingDrawer.js +76 -127
- package/lib/cjs/Table.js +107 -171
- package/lib/cjs/TableAdvancedFilter.js +49 -85
- package/lib/cjs/TableBody.js +42 -73
- package/lib/cjs/TableCell.js +56 -102
- package/lib/cjs/TableColumnMenu.js +39 -77
- package/lib/cjs/TableEmbedRow.js +11 -38
- package/lib/cjs/TableHeader.js +8 -33
- package/lib/cjs/TableRow.js +48 -88
- package/lib/cjs/TableSettingMenu.js +48 -94
- package/lib/cjs/TbodyContent.js +28 -56
- package/lib/cjs/TheadContent.js +20 -49
- package/lib/cjs/_virtual/index.js +0 -3
- package/lib/cjs/_virtual/index2.js +0 -3
- package/lib/cjs/_virtual/react-is.development.js +0 -3
- package/lib/cjs/_virtual/react-is.production.min.js +0 -3
- package/lib/cjs/context.js +0 -9
- package/lib/cjs/hooks/use-async-switch.js +13 -51
- package/lib/cjs/hooks/use-check.js +47 -77
- package/lib/cjs/hooks/use-col-hidden.js +16 -28
- package/lib/cjs/hooks/use-col-set.js +5 -18
- package/lib/cjs/hooks/use-col-sorter.js +18 -32
- package/lib/cjs/hooks/use-col-width.js +21 -57
- package/lib/cjs/hooks/use-colgroup.js +63 -85
- package/lib/cjs/hooks/use-drag.js +10 -31
- package/lib/cjs/hooks/use-embed-expand.js +23 -68
- package/lib/cjs/hooks/use-expand.js +32 -64
- package/lib/cjs/hooks/use-pagination.js +19 -50
- package/lib/cjs/hooks/use-queue.js +2 -14
- package/lib/cjs/icons/index.js +4 -21
- package/lib/cjs/index.js +0 -4
- package/lib/cjs/node_modules/classnames/index.js +2 -11
- package/lib/cjs/node_modules/perfect-scrollbar/dist/perfect-scrollbar.esm.js +1090 -0
- package/lib/cjs/node_modules/rc-resize-observer/es/index.js +10 -68
- package/lib/cjs/node_modules/rc-resize-observer/node_modules/rc-util/es/Children/toArray.js +1 -17
- package/lib/cjs/node_modules/rc-resize-observer/node_modules/rc-util/es/Dom/findDOMNode.js +1 -14
- package/lib/cjs/node_modules/rc-resize-observer/node_modules/rc-util/es/ref.js +1 -25
- package/lib/cjs/node_modules/rc-resize-observer/node_modules/rc-util/es/warning.js +1 -5
- package/lib/cjs/node_modules/rc-util/es/Dom/canUseDom.js +0 -2
- package/lib/cjs/node_modules/rc-util/es/Dom/findDOMNode.js +1 -14
- package/lib/cjs/node_modules/rc-util/es/hooks/useLayoutEffect.js +2 -9
- package/lib/cjs/node_modules/rc-util/es/raf.js +0 -11
- package/lib/cjs/node_modules/rc-virtual-list/es/Filler.js +6 -25
- package/lib/cjs/node_modules/rc-virtual-list/es/Item.js +3 -14
- package/lib/cjs/node_modules/rc-virtual-list/es/List.js +103 -194
- package/lib/cjs/node_modules/rc-virtual-list/es/ScrollBar.js +16 -96
- package/lib/cjs/node_modules/rc-virtual-list/es/hooks/useChildren.js +2 -11
- package/lib/cjs/node_modules/rc-virtual-list/es/hooks/useDiffItem.js +8 -34
- package/lib/cjs/node_modules/rc-virtual-list/es/hooks/useFrameWheel.js +0 -10
- package/lib/cjs/node_modules/rc-virtual-list/es/hooks/useHeights.js +6 -39
- package/lib/cjs/node_modules/rc-virtual-list/es/hooks/useMobileTouchMove.js +0 -16
- package/lib/cjs/node_modules/rc-virtual-list/es/hooks/useOriginScroll.js +4 -9
- package/lib/cjs/node_modules/rc-virtual-list/es/hooks/useScrollTo.js +3 -28
- package/lib/cjs/node_modules/rc-virtual-list/es/index.js +0 -2
- package/lib/cjs/node_modules/rc-virtual-list/es/utils/CacheMap.js +2 -9
- package/lib/cjs/node_modules/rc-virtual-list/es/utils/algorithmUtil.js +0 -15
- package/lib/cjs/node_modules/rc-virtual-list/es/utils/isFirefox.js +0 -2
- package/lib/cjs/node_modules/react-is/cjs/react-is.development.js +3 -29
- package/lib/cjs/node_modules/react-is/cjs/react-is.production.min.js +19 -45
- package/lib/cjs/node_modules/react-is/index.js +0 -5
- package/lib/cjs/node_modules/resize-observer-polyfill/dist/ResizeObserver.es.js +83 -248
- package/lib/cjs/packages/hooks/use-merge-refs/lib/esm/index.js +65 -0
- package/lib/cjs/packages/ui/scrollbar/lib/esm/Scrollbar.js +147 -0
- package/lib/cjs/packages/ui/scrollbar/lib/esm/styles/index.scss.js +28 -0
- package/lib/cjs/packages/ui/scrollbar/lib/esm/utils/index.js +68 -0
- package/lib/cjs/styles/index.scss.js +1 -4
- package/lib/cjs/use-table.js +276 -361
- package/lib/cjs/utils/index.js +11 -45
- package/lib/esm/BaseTable.js +117 -138
- package/lib/esm/ColGroupContent.js +3 -9
- package/lib/esm/SettingDrawer.js +64 -83
- package/lib/esm/Table.js +97 -124
- package/lib/esm/TableAdvancedFilter.js +37 -47
- package/lib/esm/TableBody.js +37 -44
- package/lib/esm/TableCell.js +48 -72
- package/lib/esm/TableColumnMenu.js +24 -38
- package/lib/esm/TableEmbedRow.js +8 -15
- package/lib/esm/TableHeader.js +5 -11
- package/lib/esm/TableRow.js +36 -51
- package/lib/esm/TableSettingMenu.js +33 -49
- package/lib/esm/TbodyContent.js +20 -27
- package/lib/esm/TheadContent.js +14 -21
- package/lib/esm/context.js +0 -4
- package/lib/esm/hooks/use-async-switch.js +9 -28
- package/lib/esm/hooks/use-check.js +42 -55
- package/lib/esm/hooks/use-col-hidden.js +16 -21
- package/lib/esm/hooks/use-col-set.js +5 -13
- package/lib/esm/hooks/use-col-sorter.js +18 -23
- package/lib/esm/hooks/use-col-width.js +14 -34
- package/lib/esm/hooks/use-colgroup.js +60 -66
- package/lib/esm/hooks/use-drag.js +9 -13
- package/lib/esm/hooks/use-embed-expand.js +20 -42
- package/lib/esm/hooks/use-expand.js +32 -56
- package/lib/esm/hooks/use-pagination.js +13 -25
- package/lib/esm/hooks/use-queue.js +2 -10
- package/lib/esm/node_modules/classnames/index.js +2 -9
- package/lib/esm/node_modules/perfect-scrollbar/dist/perfect-scrollbar.esm.js +1084 -0
- package/lib/esm/node_modules/rc-resize-observer/es/index.js +3 -26
- package/lib/esm/node_modules/rc-resize-observer/node_modules/rc-util/es/Children/toArray.js +0 -3
- package/lib/esm/node_modules/rc-resize-observer/node_modules/rc-util/es/Dom/findDOMNode.js +1 -2
- package/lib/esm/node_modules/rc-resize-observer/node_modules/rc-util/es/ref.js +0 -8
- package/lib/esm/node_modules/rc-resize-observer/node_modules/rc-util/es/warning.js +0 -5
- package/lib/esm/node_modules/rc-util/es/Dom/canUseDom.js +0 -1
- package/lib/esm/node_modules/rc-util/es/Dom/findDOMNode.js +1 -2
- package/lib/esm/node_modules/rc-util/es/hooks/useLayoutEffect.js +1 -0
- package/lib/esm/node_modules/rc-util/es/raf.js +0 -10
- package/lib/esm/node_modules/rc-virtual-list/es/Filler.js +4 -15
- package/lib/esm/node_modules/rc-virtual-list/es/Item.js +1 -3
- package/lib/esm/node_modules/rc-virtual-list/es/List.js +101 -174
- package/lib/esm/node_modules/rc-virtual-list/es/ScrollBar.js +14 -86
- package/lib/esm/node_modules/rc-virtual-list/es/hooks/useChildren.js +0 -2
- package/lib/esm/node_modules/rc-virtual-list/es/hooks/useDiffItem.js +6 -25
- package/lib/esm/node_modules/rc-virtual-list/es/hooks/useFrameWheel.js +0 -6
- package/lib/esm/node_modules/rc-virtual-list/es/hooks/useHeights.js +4 -28
- package/lib/esm/node_modules/rc-virtual-list/es/hooks/useMobileTouchMove.js +0 -13
- package/lib/esm/node_modules/rc-virtual-list/es/hooks/useOriginScroll.js +4 -8
- package/lib/esm/node_modules/rc-virtual-list/es/hooks/useScrollTo.js +1 -19
- package/lib/esm/node_modules/rc-virtual-list/es/index.js +1 -1
- package/lib/esm/node_modules/rc-virtual-list/es/utils/CacheMap.js +2 -8
- package/lib/esm/node_modules/rc-virtual-list/es/utils/algorithmUtil.js +1 -12
- package/lib/esm/node_modules/rc-virtual-list/es/utils/isFirefox.js +0 -1
- package/lib/esm/node_modules/react-is/cjs/react-is.development.js +4 -27
- package/lib/esm/node_modules/react-is/cjs/react-is.production.min.js +20 -44
- package/lib/esm/node_modules/react-is/index.js +0 -1
- package/lib/esm/node_modules/resize-observer-polyfill/dist/ResizeObserver.es.js +82 -248
- package/lib/esm/packages/hooks/use-merge-refs/lib/esm/index.js +62 -0
- package/lib/esm/packages/ui/scrollbar/lib/esm/Scrollbar.js +145 -0
- package/lib/esm/packages/ui/scrollbar/lib/esm/styles/index.scss.js +23 -0
- package/lib/esm/packages/ui/scrollbar/lib/esm/utils/index.js +66 -0
- package/lib/esm/styles/index.scss.js +1 -3
- package/lib/esm/use-table.js +268 -323
- package/lib/esm/utils/index.js +11 -41
- package/lib/types/context.d.ts +2 -0
- package/lib/types/use-table.d.ts +8 -2
- package/package.json +5 -5
|
@@ -9,93 +9,57 @@
|
|
|
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 _regeneratorRuntime = require('@babel/runtime/regenerator');
|
|
19
|
-
|
|
20
13
|
var tslib = require('tslib');
|
|
21
|
-
|
|
22
14
|
var React = require('react');
|
|
23
|
-
|
|
24
15
|
var classname = require('@hi-ui/classname');
|
|
25
|
-
|
|
26
16
|
var env = require('@hi-ui/env');
|
|
27
|
-
|
|
28
17
|
var icons = require('@hi-ui/icons');
|
|
29
|
-
|
|
30
18
|
var iconButton = require('@hi-ui/icon-button');
|
|
31
|
-
|
|
32
19
|
var useToggle = require('@hi-ui/use-toggle');
|
|
33
|
-
|
|
34
20
|
var useLatest = require('@hi-ui/use-latest');
|
|
35
|
-
|
|
36
21
|
var core = require('@hi-ui/core');
|
|
37
|
-
|
|
38
22
|
var funcUtils = require('@hi-ui/func-utils');
|
|
39
|
-
|
|
40
23
|
var useDragSorter = require('@hi-ui/use-drag-sorter');
|
|
41
|
-
|
|
42
24
|
var drawer = require('@hi-ui/drawer');
|
|
43
|
-
|
|
44
25
|
var button = require('@hi-ui/button');
|
|
45
|
-
|
|
46
26
|
var Checkbox = require('@hi-ui/checkbox');
|
|
47
|
-
|
|
48
|
-
function _interopDefaultLegacy(e) {
|
|
49
|
-
return e && _typeof(e) === 'object' && 'default' in e ? e : {
|
|
50
|
-
'default': e
|
|
51
|
-
};
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
var _regeneratorRuntime__default = /*#__PURE__*/_interopDefaultLegacy(_regeneratorRuntime);
|
|
55
|
-
|
|
56
|
-
var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
|
|
57
|
-
|
|
58
27
|
var _prefix = classname.getPrefixCls('table-setting');
|
|
59
28
|
/**
|
|
60
29
|
* 表头右侧高级设置菜单(抽屉式)
|
|
61
30
|
*/
|
|
62
|
-
|
|
63
|
-
|
|
64
31
|
var TableSettingMenu = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
|
65
32
|
var _ref$prefixCls = _ref.prefixCls,
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
33
|
+
prefixCls = _ref$prefixCls === void 0 ? _prefix : _ref$prefixCls,
|
|
34
|
+
sortedCols = _ref.sortedCols,
|
|
35
|
+
setSortColKeys = _ref.setSortColKeys,
|
|
36
|
+
cacheSortedCols = _ref.cacheSortedCols,
|
|
37
|
+
setCacheSortedCols = _ref.setCacheSortedCols,
|
|
38
|
+
hiddenColKeys = _ref.hiddenColKeys,
|
|
39
|
+
setHiddenColKeys = _ref.setHiddenColKeys,
|
|
40
|
+
cacheHiddenColKeys = _ref.cacheHiddenColKeys,
|
|
41
|
+
setCacheHiddenColKeys = _ref.setCacheHiddenColKeys,
|
|
42
|
+
onSetColKeysChange = _ref.onSetColKeysChange,
|
|
43
|
+
_ref$checkDisabledCol = _ref.checkDisabledColKeys,
|
|
44
|
+
checkDisabledColKeys = _ref$checkDisabledCol === void 0 ? [] : _ref$checkDisabledCol;
|
|
78
45
|
var i18n = core.useLocaleContext();
|
|
79
46
|
var dropProps = useDragSorter.useDrop({
|
|
80
47
|
draggable: true,
|
|
81
48
|
idFieldName: 'dataKey',
|
|
82
49
|
onSwap: function onSwap(dragItem, dropItem, direction, info) {
|
|
83
|
-
return tslib.__awaiter(void 0, void 0, void 0, /*#__PURE__*/
|
|
84
|
-
return
|
|
50
|
+
return tslib.__awaiter(void 0, void 0, void 0, /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
|
|
51
|
+
return _regeneratorRuntime.wrap(function _callee$(_context) {
|
|
85
52
|
while (1) {
|
|
86
53
|
switch (_context.prev = _context.next) {
|
|
87
54
|
case 0:
|
|
88
55
|
setCacheSortedCols(function (prev) {
|
|
89
56
|
var nextCacheSortCols = [].concat(prev);
|
|
90
|
-
|
|
91
57
|
var _nextCacheSortCols$sp = nextCacheSortCols.splice(info.dragIndex, 1),
|
|
92
|
-
|
|
93
|
-
|
|
58
|
+
removed = _nextCacheSortCols$sp[0];
|
|
94
59
|
nextCacheSortCols.splice(info.dropIndex, 0, removed);
|
|
95
60
|
return nextCacheSortCols;
|
|
96
61
|
});
|
|
97
62
|
return _context.abrupt("return", true);
|
|
98
|
-
|
|
99
63
|
case 2:
|
|
100
64
|
case "end":
|
|
101
65
|
return _context.stop();
|
|
@@ -105,25 +69,21 @@ var TableSettingMenu = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
|
|
105
69
|
}));
|
|
106
70
|
}
|
|
107
71
|
});
|
|
108
|
-
|
|
109
72
|
var _useToggle = useToggle.useToggle(),
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
73
|
+
menuVisible = _useToggle[0],
|
|
74
|
+
menuVisibleAction = _useToggle[1];
|
|
113
75
|
var resetLatest = useLatest.useLatestCallback(function () {
|
|
114
76
|
setCacheHiddenColKeys(hiddenColKeys);
|
|
115
77
|
setCacheSortedCols(sortedCols);
|
|
116
|
-
});
|
|
117
|
-
|
|
78
|
+
});
|
|
79
|
+
// 当 visible 由 false 变为 true 时触发
|
|
118
80
|
var prevShowPopperRef = React.useRef(!menuVisible);
|
|
119
81
|
React.useEffect(function () {
|
|
120
82
|
if (!prevShowPopperRef.current && menuVisible) {
|
|
121
83
|
resetLatest();
|
|
122
84
|
}
|
|
123
|
-
|
|
124
85
|
prevShowPopperRef.current = menuVisible;
|
|
125
86
|
}, [menuVisible, resetLatest]);
|
|
126
|
-
|
|
127
87
|
var onConfirm = function onConfirm() {
|
|
128
88
|
// 触发 table 更新列显隐及排序
|
|
129
89
|
setHiddenColKeys(cacheHiddenColKeys);
|
|
@@ -134,36 +94,35 @@ var TableSettingMenu = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
|
|
134
94
|
onSetColKeysChange && onSetColKeysChange(newSortKeys, cacheHiddenColKeys);
|
|
135
95
|
menuVisibleAction.off();
|
|
136
96
|
};
|
|
137
|
-
|
|
138
97
|
var cls = classname.cx(prefixCls);
|
|
139
|
-
return /*#__PURE__*/
|
|
98
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
140
99
|
ref: ref,
|
|
141
100
|
className: cls
|
|
142
|
-
}, /*#__PURE__*/
|
|
143
|
-
icon: /*#__PURE__*/
|
|
101
|
+
}, /*#__PURE__*/React.createElement(iconButton.IconButton, {
|
|
102
|
+
icon: /*#__PURE__*/React.createElement(icons.EllipsisVerticalOutlined, null),
|
|
144
103
|
onClick: menuVisibleAction.not
|
|
145
|
-
}), /*#__PURE__*/
|
|
104
|
+
}), /*#__PURE__*/React.createElement(drawer.Drawer, {
|
|
146
105
|
className: prefixCls + "__drawer",
|
|
147
106
|
title: i18n.get('table.fieldExplorer'),
|
|
148
107
|
visible: menuVisible,
|
|
149
108
|
onClose: menuVisibleAction.off,
|
|
150
109
|
width: 304,
|
|
151
|
-
footer: /*#__PURE__*/
|
|
110
|
+
footer: /*#__PURE__*/React.createElement("div", {
|
|
152
111
|
className: prefixCls + "__btn-group"
|
|
153
|
-
}, /*#__PURE__*/
|
|
112
|
+
}, /*#__PURE__*/React.createElement(button.Button, {
|
|
154
113
|
key: 0,
|
|
155
114
|
className: prefixCls + "__btn-cancel",
|
|
156
115
|
onClick: resetLatest
|
|
157
|
-
}, i18n.get('table.reset')), /*#__PURE__*/
|
|
116
|
+
}, i18n.get('table.reset')), /*#__PURE__*/React.createElement(button.Button, {
|
|
158
117
|
key: 1,
|
|
159
118
|
className: prefixCls + "__btn-confirm",
|
|
160
119
|
onClick: onConfirm,
|
|
161
120
|
type: "primary"
|
|
162
121
|
}, i18n.get('table.confirm')))
|
|
163
|
-
}, /*#__PURE__*/
|
|
122
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
164
123
|
className: prefixCls + "__content"
|
|
165
124
|
}, cacheSortedCols.map(function (col, index) {
|
|
166
|
-
return /*#__PURE__*/
|
|
125
|
+
return /*#__PURE__*/React.createElement(TableSettingMenuItem, {
|
|
167
126
|
key: col.dataKey,
|
|
168
127
|
prefixCls: prefixCls,
|
|
169
128
|
column: col,
|
|
@@ -175,38 +134,34 @@ var TableSettingMenu = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
|
|
175
134
|
});
|
|
176
135
|
}))));
|
|
177
136
|
});
|
|
178
|
-
|
|
179
137
|
if (env.__DEV__) {
|
|
180
138
|
TableSettingMenu.displayName = 'TableSettingMenu';
|
|
181
139
|
}
|
|
182
|
-
|
|
183
140
|
function TableSettingMenuItem(_ref2) {
|
|
184
141
|
var prefixCls = _ref2.prefixCls,
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
142
|
+
column = _ref2.column,
|
|
143
|
+
cacheHiddenColKeys = _ref2.cacheHiddenColKeys,
|
|
144
|
+
setCacheHiddenColKeys = _ref2.setCacheHiddenColKeys,
|
|
145
|
+
dropProps = _ref2.dropProps,
|
|
146
|
+
index = _ref2.index,
|
|
147
|
+
checkDisabled = _ref2.checkDisabled;
|
|
191
148
|
var dataKey = column.dataKey,
|
|
192
|
-
|
|
193
|
-
|
|
149
|
+
title = column.title;
|
|
194
150
|
var _useDrag = useDragSorter.useDrag(Object.assign(Object.assign({}, dropProps), {
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
return /*#__PURE__*/React__default["default"].createElement("div", Object.assign({
|
|
151
|
+
item: column,
|
|
152
|
+
index: index,
|
|
153
|
+
idFieldName: 'dataKey',
|
|
154
|
+
dataTransferKey: 'table-setting-data'
|
|
155
|
+
})),
|
|
156
|
+
dragging = _useDrag.dragging,
|
|
157
|
+
direction = _useDrag.direction,
|
|
158
|
+
getDragTriggerProps = _useDrag.getDragTriggerProps,
|
|
159
|
+
getDropTriggerProps = _useDrag.getDropTriggerProps;
|
|
160
|
+
return /*#__PURE__*/React.createElement("div", Object.assign({
|
|
206
161
|
className: classname.cx(prefixCls + "-item", dragging && prefixCls + "-item--dragging", direction && prefixCls + "-item--direction-" + direction)
|
|
207
|
-
}, getDragTriggerProps(), getDropTriggerProps()), /*#__PURE__*/
|
|
162
|
+
}, getDragTriggerProps(), getDropTriggerProps()), /*#__PURE__*/React.createElement("div", {
|
|
208
163
|
className: prefixCls + "-item__wrap"
|
|
209
|
-
}, /*#__PURE__*/
|
|
164
|
+
}, /*#__PURE__*/React.createElement(Checkbox.Checkbox, {
|
|
210
165
|
disabled: checkDisabled,
|
|
211
166
|
checked: !cacheHiddenColKeys.includes(dataKey),
|
|
212
167
|
onChange: function onChange(evt) {
|
|
@@ -216,7 +171,6 @@ function TableSettingMenuItem(_ref2) {
|
|
|
216
171
|
}) : cacheHiddenColKeys.concat(dataKey);
|
|
217
172
|
setCacheHiddenColKeys(nextCacheHiddenColKeys);
|
|
218
173
|
}
|
|
219
|
-
}, /*#__PURE__*/
|
|
174
|
+
}, /*#__PURE__*/React.createElement("span", null, funcUtils.runIfFunc(title))), /*#__PURE__*/React.createElement(icons.MoveOutlined, null)));
|
|
220
175
|
}
|
|
221
|
-
|
|
222
176
|
exports.TableSettingMenu = TableSettingMenu;
|
package/lib/cjs/TbodyContent.js
CHANGED
|
@@ -9,68 +9,43 @@
|
|
|
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 useLatest = require('@hi-ui/use-latest');
|
|
25
|
-
|
|
26
16
|
var typeAssertion = require('@hi-ui/type-assertion');
|
|
27
|
-
|
|
28
17
|
var emptyState = require('@hi-ui/empty-state');
|
|
29
|
-
|
|
30
18
|
var TableRow = require('./TableRow.js');
|
|
31
|
-
|
|
32
19
|
var context = require('./context.js');
|
|
33
|
-
|
|
34
|
-
function _interopDefaultLegacy(e) {
|
|
35
|
-
return e && _typeof(e) === 'object' && 'default' in e ? e : {
|
|
36
|
-
'default': e
|
|
37
|
-
};
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
|
|
41
|
-
|
|
42
20
|
var _prefix = classname.getPrefixCls('table-body');
|
|
43
|
-
|
|
44
21
|
var TbodyContent = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
|
45
22
|
var _ref$prefixCls = _ref.prefixCls,
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
23
|
+
prefixCls = _ref$prefixCls === void 0 ? _prefix : _ref$prefixCls,
|
|
24
|
+
emptyContent = _ref.emptyContent;
|
|
49
25
|
var _useTableContext = context.useTableContext(),
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
26
|
+
columns = _useTableContext.columns,
|
|
27
|
+
isExpandTreeRows = _useTableContext.isExpandTreeRows,
|
|
28
|
+
transitionData = _useTableContext.transitionData,
|
|
29
|
+
scrollBodyElementRef = _useTableContext.scrollBodyElementRef,
|
|
30
|
+
hasAvgColumn = _useTableContext.hasAvgColumn,
|
|
31
|
+
avgRow = _useTableContext.avgRow,
|
|
32
|
+
hasSumColumn = _useTableContext.hasSumColumn,
|
|
33
|
+
sumRow = _useTableContext.sumRow,
|
|
34
|
+
measureRowElementRef = _useTableContext.measureRowElementRef;
|
|
60
35
|
var getRequiredProps = useLatest.useLatestCallback(function (id) {
|
|
61
36
|
return {
|
|
62
37
|
// @ts-ignore
|
|
63
|
-
expandedTree: isExpandTreeRows(id)
|
|
38
|
+
expandedTree: isExpandTreeRows(id)
|
|
39
|
+
// checked: isCheckedId(id),
|
|
64
40
|
// semiChecked: isSemiCheckedId(id),
|
|
65
41
|
// selected: selectedId === id,
|
|
66
42
|
// loading: isLoadingId(id),
|
|
67
43
|
// focused: focusedId === id,
|
|
68
|
-
|
|
69
44
|
};
|
|
70
|
-
});
|
|
71
|
-
|
|
72
|
-
return /*#__PURE__*/
|
|
73
|
-
return /*#__PURE__*/
|
|
45
|
+
});
|
|
46
|
+
// 外层增加 div 作为滚动容器
|
|
47
|
+
return /*#__PURE__*/React.createElement("tbody", null, typeAssertion.isArrayNonEmpty(transitionData) ? /*#__PURE__*/React.createElement(React.Fragment, null, transitionData.map(function (row, index) {
|
|
48
|
+
return /*#__PURE__*/React.createElement(TableRow.TableRow, Object.assign({
|
|
74
49
|
ref: index === 0 ? measureRowElementRef : null,
|
|
75
50
|
// key={depth + index}
|
|
76
51
|
key: row.id,
|
|
@@ -78,17 +53,18 @@ var TbodyContent = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
|
|
78
53
|
rowIndex: index,
|
|
79
54
|
rowData: row
|
|
80
55
|
}, getRequiredProps(row.id)));
|
|
81
|
-
}), hasSumColumn ? /*#__PURE__*/
|
|
56
|
+
}), hasSumColumn ? /*#__PURE__*/React.createElement(TableRow.TableRow, {
|
|
82
57
|
key: sumRow.id,
|
|
83
58
|
rowIndex: transitionData.length,
|
|
84
59
|
rowData: sumRow,
|
|
85
60
|
isSumRow: true
|
|
86
|
-
}) : null, hasAvgColumn ? /*#__PURE__*/
|
|
61
|
+
}) : null, hasAvgColumn ? /*#__PURE__*/React.createElement(TableRow.TableRow, {
|
|
87
62
|
key: avgRow.id,
|
|
88
63
|
rowIndex: transitionData.length + 1,
|
|
89
64
|
rowData: avgRow,
|
|
90
65
|
isAvgRow: true
|
|
91
|
-
}) : null) :
|
|
66
|
+
}) : null) :
|
|
67
|
+
// 空状态,colSpan 占满表格整行
|
|
92
68
|
renderEmptyContent(Object.assign({
|
|
93
69
|
className: prefixCls + "-empty-content",
|
|
94
70
|
colSpan: columns.length,
|
|
@@ -97,33 +73,29 @@ var TbodyContent = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
|
|
97
73
|
scrollBodyWidth: window.getComputedStyle(scrollBodyElementRef.current).getPropertyValue('width')
|
|
98
74
|
} : {})));
|
|
99
75
|
});
|
|
100
|
-
|
|
101
76
|
if (env.__DEV__) {
|
|
102
77
|
TbodyContent.displayName = 'TbodyContent';
|
|
103
78
|
}
|
|
104
79
|
/**
|
|
105
80
|
* 负责空状态渲染
|
|
106
81
|
*/
|
|
107
|
-
|
|
108
|
-
|
|
109
82
|
var renderEmptyContent = function renderEmptyContent(_ref2) {
|
|
110
83
|
var className = _ref2.className,
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
return /*#__PURE__*/
|
|
84
|
+
colSpan = _ref2.colSpan,
|
|
85
|
+
emptyContent = _ref2.emptyContent,
|
|
86
|
+
scrollBodyWidth = _ref2.scrollBodyWidth;
|
|
87
|
+
return /*#__PURE__*/React.createElement("tr", {
|
|
115
88
|
className: className
|
|
116
|
-
}, /*#__PURE__*/
|
|
89
|
+
}, /*#__PURE__*/React.createElement("td", {
|
|
117
90
|
colSpan: colSpan
|
|
118
|
-
}, /*#__PURE__*/
|
|
91
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
119
92
|
style: {
|
|
120
93
|
position: 'sticky',
|
|
121
94
|
left: 0,
|
|
122
95
|
width: scrollBodyWidth !== null && scrollBodyWidth !== void 0 ? scrollBodyWidth : '100%',
|
|
123
96
|
overflow: 'hidden'
|
|
124
97
|
}
|
|
125
|
-
}, emptyContent || /*#__PURE__*/
|
|
98
|
+
}, emptyContent || /*#__PURE__*/React.createElement(emptyState.EmptyState, null))));
|
|
126
99
|
};
|
|
127
|
-
|
|
128
100
|
exports.TbodyContent = TbodyContent;
|
|
129
101
|
exports.renderEmptyContent = renderEmptyContent;
|
package/lib/cjs/TheadContent.js
CHANGED
|
@@ -9,72 +9,45 @@
|
|
|
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 tslib = require('tslib');
|
|
19
|
-
|
|
20
13
|
var React = require('react');
|
|
21
|
-
|
|
22
14
|
var reactResizable = require('react-resizable');
|
|
23
|
-
|
|
24
15
|
var classname = require('@hi-ui/classname');
|
|
25
|
-
|
|
26
16
|
var env = require('@hi-ui/env');
|
|
27
|
-
|
|
28
17
|
var typeAssertion = require('@hi-ui/type-assertion');
|
|
29
|
-
|
|
30
18
|
var useCheckState = require('@hi-ui/use-check-state');
|
|
31
|
-
|
|
32
19
|
var context = require('./context.js');
|
|
33
|
-
|
|
34
20
|
var TableAdvancedFilter = require('./TableAdvancedFilter.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-header');
|
|
45
|
-
|
|
46
22
|
var TheadContent = /*#__PURE__*/React.forwardRef(function (_a, ref) {
|
|
47
23
|
var _a$prefixCls = _a.prefixCls,
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
24
|
+
prefixCls = _a$prefixCls === void 0 ? _prefix : _a$prefixCls,
|
|
25
|
+
rest = tslib.__rest(_a, ["prefixCls"]);
|
|
51
26
|
var _useTableContext = context.useTableContext(),
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
27
|
+
groupedColumns = _useTableContext.groupedColumns,
|
|
28
|
+
resizable = _useTableContext.resizable,
|
|
29
|
+
colWidths = _useTableContext.colWidths,
|
|
30
|
+
isHoveredHighlightCol = _useTableContext.isHoveredHighlightCol,
|
|
31
|
+
isHighlightedCol = _useTableContext.isHighlightedCol,
|
|
32
|
+
onColumnResizable = _useTableContext.onColumnResizable,
|
|
33
|
+
getStickyColProps = _useTableContext.getStickyColProps,
|
|
34
|
+
showColMenu = _useTableContext.showColMenu,
|
|
35
|
+
setHeaderTableElement = _useTableContext.setHeaderTableElement;
|
|
62
36
|
var activeColumnKeysAction = useCheckState.useCheckState();
|
|
63
|
-
return /*#__PURE__*/
|
|
64
|
-
return /*#__PURE__*/
|
|
37
|
+
return /*#__PURE__*/React.createElement("thead", Object.assign({}, rest), groupedColumns.map(function (cols, colsIndex) {
|
|
38
|
+
return /*#__PURE__*/React.createElement("tr", {
|
|
65
39
|
key: colsIndex,
|
|
66
40
|
ref: setHeaderTableElement
|
|
67
41
|
}, cols.map(function (col, colIndex) {
|
|
68
42
|
var _ref = col || {},
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
43
|
+
dataKey = _ref.dataKey,
|
|
44
|
+
title = _ref.title,
|
|
45
|
+
raw = _ref.raw;
|
|
73
46
|
var titleContent = typeAssertion.isFunction(title) ? title(col) : title;
|
|
74
|
-
titleContent = resizable ? /*#__PURE__*/
|
|
47
|
+
titleContent = resizable ? /*#__PURE__*/React.createElement("span", {
|
|
75
48
|
className: prefixCls + "-header__title"
|
|
76
49
|
}, titleContent) : titleContent;
|
|
77
|
-
var cell = /*#__PURE__*/
|
|
50
|
+
var cell = /*#__PURE__*/React.createElement("th", Object.assign({
|
|
78
51
|
key: dataKey
|
|
79
52
|
}, getStickyColProps(col), {
|
|
80
53
|
className: classname.cx(prefixCls + "-cell", raw.className, isHighlightedCol(dataKey) && prefixCls + "-cell__col--highlight", isHoveredHighlightCol(dataKey) && prefixCls + "-cell__col--hovered-highlight", activeColumnKeysAction.has(dataKey) && prefixCls + "-cell__col--active"),
|
|
@@ -94,13 +67,13 @@ var TheadContent = /*#__PURE__*/React.forwardRef(function (_a, ref) {
|
|
|
94
67
|
return activeColumnKeysAction.remove(dataKey);
|
|
95
68
|
}
|
|
96
69
|
}));
|
|
97
|
-
return resizable && colIndex !== colWidths.length - 1 ? /*#__PURE__*/
|
|
70
|
+
return resizable && colIndex !== colWidths.length - 1 ? /*#__PURE__*/React.createElement(reactResizable.Resizable, {
|
|
98
71
|
key: colIndex,
|
|
99
72
|
className: prefixCls + "__resizable",
|
|
100
73
|
draggableOpts: {
|
|
101
74
|
enableUserSelectHack: false
|
|
102
75
|
},
|
|
103
|
-
handle: /*#__PURE__*/
|
|
76
|
+
handle: /*#__PURE__*/React.createElement("span", {
|
|
104
77
|
className: prefixCls + "__resizable-handle"
|
|
105
78
|
}),
|
|
106
79
|
height: 0,
|
|
@@ -112,9 +85,7 @@ var TheadContent = /*#__PURE__*/React.forwardRef(function (_a, ref) {
|
|
|
112
85
|
}));
|
|
113
86
|
}));
|
|
114
87
|
});
|
|
115
|
-
|
|
116
88
|
if (env.__DEV__) {
|
|
117
89
|
TheadContent.displayName = 'TheadContent';
|
|
118
90
|
}
|
|
119
|
-
|
|
120
91
|
exports.TheadContent = TheadContent;
|
package/lib/cjs/context.js
CHANGED
|
@@ -9,24 +9,15 @@
|
|
|
9
9
|
*/
|
|
10
10
|
'use strict';
|
|
11
11
|
|
|
12
|
-
Object.defineProperty(exports, '__esModule', {
|
|
13
|
-
value: true
|
|
14
|
-
});
|
|
15
|
-
|
|
16
12
|
var React = require('react');
|
|
17
|
-
|
|
18
13
|
var TableContext = /*#__PURE__*/React.createContext(null);
|
|
19
14
|
var TableProvider = TableContext.Provider;
|
|
20
|
-
|
|
21
15
|
var useTableContext = function useTableContext() {
|
|
22
16
|
var context = React.useContext(TableContext);
|
|
23
|
-
|
|
24
17
|
if (!context) {
|
|
25
18
|
throw new Error('The TableContext context should using in Table.');
|
|
26
19
|
}
|
|
27
|
-
|
|
28
20
|
return context;
|
|
29
21
|
};
|
|
30
|
-
|
|
31
22
|
exports.TableProvider = TableProvider;
|
|
32
23
|
exports.useTableContext = useTableContext;
|