@kdcloudjs/table 1.0.1 → 1.0.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.
- package/LICENSE +1 -1
- package/README.md +34 -33
- package/dist/@kdcloudjs/table.css +1 -1
- package/dist/@kdcloudjs/table.css.map +1 -1
- package/dist/@kdcloudjs/table.js +6323 -3240
- package/dist/@kdcloudjs/table.js.map +1 -1
- package/dist/@kdcloudjs/table.min.css +1 -1
- package/dist/@kdcloudjs/table.min.js +32 -24
- package/dist/@kdcloudjs/table.min.js.map +1 -1
- package/es/_utils/hooks.js +1 -2
- package/es/_utils/numberUtil.js +3 -4
- package/es/locale/locale.js +1 -2
- package/es/table/base/calculations.js +2 -3
- package/es/table/base/header.d.ts +6 -2
- package/es/table/base/header.js +36 -13
- package/es/table/base/helpers/SpanManager.js +1 -1
- package/es/table/base/helpers/TableDOMUtils.d.ts +3 -0
- package/es/table/base/helpers/TableDOMUtils.js +23 -5
- package/es/table/base/helpers/getRichVisibleRectsStream.d.ts +23 -0
- package/es/table/base/helpers/getRichVisibleRectsStream.js +216 -0
- package/es/table/base/html-table.d.ts +3 -1
- package/es/table/base/html-table.js +34 -8
- package/es/table/base/interfaces.d.ts +1 -0
- package/es/table/base/renderTemplates.d.ts +1 -0
- package/es/table/base/renderTemplates.js +344 -0
- package/es/table/base/styles.d.ts +14 -0
- package/es/table/base/styles.js +20 -8
- package/es/table/base/table.d.ts +12 -4
- package/es/table/base/table.js +183 -136
- package/es/table/base/utils.d.ts +6 -3
- package/es/table/base/utils.js +27 -6
- package/es/table/common-views.js +1 -1
- package/es/table/pipeline/features/autoFill.js +7 -1
- package/es/table/pipeline/features/columnDrag.js +109 -41
- package/es/table/pipeline/features/columnFilter.js +7 -9
- package/es/table/pipeline/features/columnResizeWidth.d.ts +3 -0
- package/es/table/pipeline/features/columnResizeWidth.js +11 -4
- package/es/table/pipeline/features/contextMenu.js +42 -10
- package/es/table/pipeline/features/filter/Filter.js +74 -37
- package/es/table/pipeline/features/index.d.ts +1 -0
- package/es/table/pipeline/features/index.js +2 -1
- package/es/table/pipeline/features/rangeSelection.d.ts +10 -0
- package/es/table/pipeline/features/rangeSelection.js +231 -0
- package/es/table/pipeline/features/rowDetail.js +37 -15
- package/es/table/pipeline/features/singleSelect.js +4 -1
- package/es/table/pipeline/features/sort.js +2 -3
- package/es/table/pipeline/features/treeMode.js +1 -2
- package/es/table/pipeline/pipeline.d.ts +4 -0
- package/es/table/pipeline/pipeline.js +32 -5
- package/es/table/pivot/cross-table/buildCrossTable.js +1 -2
- package/es/table/pivot/cross-tree-table/buildCrossTreeTable.js +1 -2
- package/es/table/pivot/pivot-utils/builders.js +1 -2
- package/es/table/pivot/pivot-utils/convert-utils.js +1 -2
- package/es/table/transforms/autoWidth.js +1 -2
- package/es/table/transforms/sort.js +1 -2
- package/es/table/transforms/treeMode.js +1 -2
- package/es/table/utils/applyTransforms.js +1 -3
- package/es/table/utils/browserType.d.ts +6 -0
- package/es/table/utils/browserType.js +6 -0
- package/es/table/utils/buildTree.js +4 -5
- package/es/table/utils/collectNodes.js +1 -2
- package/es/table/utils/exportTableAsExcel.js +1 -2
- package/es/table/utils/getTreeDepth.js +1 -2
- package/es/table/utils/groupBy.js +1 -2
- package/es/table/utils/index.d.ts +1 -0
- package/es/table/utils/index.js +2 -1
- package/es/table/utils/layeredSort.js +5 -2
- package/es/table/utils/makeRecursiveMapper.js +4 -5
- package/es/table/utils/others.d.ts +1 -1
- package/es/table/utils/others.js +20 -14
- package/es/table/utils/traverseColumn.js +1 -2
- package/es/table/utils/tree-data-helpers/StrictTreeDataHelper.js +4 -5
- package/es/table/utils/tree-data-helpers/TreeDataHelper.js +4 -5
- package/lib/_utils/formatUtil.js +1 -1
- package/lib/_utils/hooks.js +2 -4
- package/lib/_utils/numberUtil.js +7 -9
- package/lib/_utils/usePopper.js +9 -1
- package/lib/config-provider/configProvider.js +9 -1
- package/lib/config-provider/index.js +5 -5
- package/lib/locale/index.js +14 -6
- package/lib/locale/locale.js +2 -4
- package/lib/table/base/calculations.js +3 -5
- package/lib/table/base/empty.js +9 -1
- package/lib/table/base/header.d.ts +6 -2
- package/lib/table/base/header.js +33 -10
- package/lib/table/base/helpers/SpanManager.js +1 -1
- package/lib/table/base/helpers/TableDOMUtils.d.ts +3 -0
- package/lib/table/base/helpers/TableDOMUtils.js +21 -5
- package/lib/table/base/helpers/getRichVisibleRectsStream.d.ts +23 -0
- package/lib/table/base/helpers/getRichVisibleRectsStream.js +246 -0
- package/lib/table/base/html-table.d.ts +3 -1
- package/lib/table/base/html-table.js +34 -8
- package/lib/table/base/index.js +4 -4
- package/lib/table/base/interfaces.d.ts +1 -0
- package/lib/table/base/renderTemplates.d.ts +1 -0
- package/lib/table/base/renderTemplates.js +370 -0
- package/lib/table/base/styles.d.ts +14 -0
- package/lib/table/base/styles.js +31 -12
- package/lib/table/base/table.d.ts +12 -4
- package/lib/table/base/table.js +191 -137
- package/lib/table/base/utils.d.ts +6 -3
- package/lib/table/base/utils.js +47 -10
- package/lib/table/common-views.js +2 -2
- package/lib/table/pipeline/features/__test__/sort.test.js +5 -3
- package/lib/table/pipeline/features/autoFill.js +9 -2
- package/lib/table/pipeline/features/columnDrag.js +108 -40
- package/lib/table/pipeline/features/columnFilter.js +6 -9
- package/lib/table/pipeline/features/columnResizeWidth.d.ts +3 -0
- package/lib/table/pipeline/features/columnResizeWidth.js +21 -5
- package/lib/table/pipeline/features/contextMenu.js +53 -11
- package/lib/table/pipeline/features/filter/DefaultFilterContent.js +10 -2
- package/lib/table/pipeline/features/filter/Filter.js +88 -37
- package/lib/table/pipeline/features/filter/FilterPanel.js +10 -2
- package/lib/table/pipeline/features/filter/index.js +4 -4
- package/lib/table/pipeline/features/index.d.ts +1 -0
- package/lib/table/pipeline/features/index.js +37 -27
- package/lib/table/pipeline/features/rangeSelection.d.ts +10 -0
- package/lib/table/pipeline/features/rangeSelection.js +256 -0
- package/lib/table/pipeline/features/rowDetail.js +39 -15
- package/lib/table/pipeline/features/singleSelect.js +4 -1
- package/lib/table/pipeline/features/sort.js +2 -4
- package/lib/table/pipeline/features/treeMode.js +2 -4
- package/lib/table/pipeline/index.js +11 -3
- package/lib/table/pipeline/pipeline.d.ts +4 -0
- package/lib/table/pipeline/pipeline.js +33 -7
- package/lib/table/pivot/cross-table/buildCrossTable.js +1 -3
- package/lib/table/pivot/cross-table/index.js +4 -4
- package/lib/table/pivot/cross-tree-table/buildCrossTreeTable.js +1 -3
- package/lib/table/pivot/pivot-utils/builders.js +2 -4
- package/lib/table/pivot/pivot-utils/convert-utils.js +1 -3
- package/lib/table/pivot/pivot-utils/index.js +4 -4
- package/lib/table/transforms/autoWidth.js +10 -4
- package/lib/table/transforms/columnResize.js +10 -2
- package/lib/table/transforms/index.js +32 -32
- package/lib/table/transforms/sort.js +10 -4
- package/lib/table/transforms/treeMode.js +9 -3
- package/lib/table/utils/applyTransforms.js +1 -5
- package/lib/table/utils/browserType.d.ts +6 -0
- package/lib/table/utils/browserType.js +13 -0
- package/lib/table/utils/buildTree.js +1 -3
- package/lib/table/utils/collectNodes.js +1 -3
- package/lib/table/utils/copyToClipboard.js +1 -1
- package/lib/table/utils/element.js +3 -3
- package/lib/table/utils/exportTableAsExcel.js +1 -3
- package/lib/table/utils/getTreeDepth.js +1 -3
- package/lib/table/utils/groupBy.js +1 -3
- package/lib/table/utils/index.d.ts +1 -0
- package/lib/table/utils/index.js +57 -49
- package/lib/table/utils/layeredSort.js +6 -2
- package/lib/table/utils/makeRecursiveMapper.js +1 -3
- package/lib/table/utils/others.d.ts +1 -1
- package/lib/table/utils/others.js +23 -18
- package/lib/table/utils/traverseColumn.js +1 -3
- package/lib/table/utils/tree-data-helpers/StrictTreeDataHelper.js +5 -7
- package/lib/table/utils/tree-data-helpers/TreeDataHelper.js +5 -7
- package/package.json +6 -2
- package/dist/kd-table.css +0 -422
- package/dist/kd-table.css.map +0 -1
- package/dist/kd-table.js +0 -38578
- package/dist/kd-table.js.map +0 -1
- package/dist/kd-table.min.css +0 -9
- package/dist/kd-table.min.js +0 -208
- package/dist/kd-table.min.js.map +0 -1
- package/es/table/base/helpers/__test__/visible-part.test.d.ts +0 -1
- package/es/table/base/helpers/__test__/visible-part.test.js +0 -28
- package/es/table/base/helpers/visible-part.d.ts +0 -23
- package/es/table/base/helpers/visible-part.js +0 -58
- package/lib/table/base/helpers/__test__/visible-part.test.d.ts +0 -1
- package/lib/table/base/helpers/__test__/visible-part.test.js +0 -31
- package/lib/table/base/helpers/visible-part.d.ts +0 -23
- package/lib/table/base/helpers/visible-part.js +0 -72
package/lib/table/base/table.js
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
+
var _typeof = require("@babel/runtime-corejs3/helpers/typeof");
|
|
4
|
+
|
|
3
5
|
var _Reflect$construct = require("@babel/runtime-corejs3/core-js-stable/reflect/construct");
|
|
4
6
|
|
|
5
7
|
var _sliceInstanceProperty2 = require("@babel/runtime-corejs3/core-js-stable/instance/slice");
|
|
@@ -10,9 +12,9 @@ var _Symbol = require("@babel/runtime-corejs3/core-js-stable/symbol");
|
|
|
10
12
|
|
|
11
13
|
var _getIteratorMethod = require("@babel/runtime-corejs3/core-js/get-iterator-method");
|
|
12
14
|
|
|
13
|
-
var
|
|
15
|
+
var _WeakMap = require("@babel/runtime-corejs3/core-js-stable/weak-map");
|
|
14
16
|
|
|
15
|
-
var
|
|
17
|
+
var _Object$getOwnPropertyDescriptor = require("@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor");
|
|
16
18
|
|
|
17
19
|
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
|
|
18
20
|
|
|
@@ -21,10 +23,10 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
21
23
|
});
|
|
22
24
|
exports.BaseTable = void 0;
|
|
23
25
|
|
|
24
|
-
var _flat = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/flat"));
|
|
25
|
-
|
|
26
26
|
var _slice = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/slice"));
|
|
27
27
|
|
|
28
|
+
var _flat = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/flat"));
|
|
29
|
+
|
|
28
30
|
var _map = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/map"));
|
|
29
31
|
|
|
30
32
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/slicedToArray"));
|
|
@@ -57,12 +59,12 @@ var _empty = require("./empty");
|
|
|
57
59
|
|
|
58
60
|
var _header = _interopRequireDefault(require("./header"));
|
|
59
61
|
|
|
62
|
+
var _getRichVisibleRectsStream = require("./helpers/getRichVisibleRectsStream");
|
|
63
|
+
|
|
60
64
|
var _rowHeightManager = require("./helpers/rowHeightManager");
|
|
61
65
|
|
|
62
66
|
var _TableDOMUtils = require("./helpers/TableDOMUtils");
|
|
63
67
|
|
|
64
|
-
var _visiblePart = require("./helpers/visible-part");
|
|
65
|
-
|
|
66
68
|
var _htmlTable = require("./html-table");
|
|
67
69
|
|
|
68
70
|
var _loading = _interopRequireDefault(require("./loading"));
|
|
@@ -75,7 +77,13 @@ var _cssVarsPonyfill = _interopRequireDefault(require("css-vars-ponyfill"));
|
|
|
75
77
|
|
|
76
78
|
var _utils2 = require("../utils");
|
|
77
79
|
|
|
78
|
-
|
|
80
|
+
var _renderTemplates = _interopRequireDefault(require("./renderTemplates"));
|
|
81
|
+
|
|
82
|
+
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); }
|
|
83
|
+
|
|
84
|
+
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; }
|
|
85
|
+
|
|
86
|
+
function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof _Symbol !== "undefined" && _getIteratorMethod(o) || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
|
|
79
87
|
|
|
80
88
|
function _unsupportedIterableToArray(o, minLen) { var _context2; if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = _sliceInstanceProperty2(_context2 = Object.prototype.toString.call(o)).call(_context2, 8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return _Array$from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
81
89
|
|
|
@@ -99,7 +107,6 @@ var cssPolifill = function cssPolifill(_ref) {
|
|
|
99
107
|
return;
|
|
100
108
|
}
|
|
101
109
|
|
|
102
|
-
var t0 = performance.now();
|
|
103
110
|
(0, _cssVarsPonyfill.default)({
|
|
104
111
|
// exclude: 'link[href*="semantic-ui"]',
|
|
105
112
|
// onlyLegacy: false,
|
|
@@ -107,13 +114,7 @@ var cssPolifill = function cssPolifill(_ref) {
|
|
|
107
114
|
include: 'style[data-styled]',
|
|
108
115
|
variables: (0, _extends2.default)({}, _styles.defaultCSSVariables, variables),
|
|
109
116
|
watch: true,
|
|
110
|
-
silent: true
|
|
111
|
-
onComplete: function onComplete() {
|
|
112
|
-
var t1 = performance.now();
|
|
113
|
-
var time = ((t1 - t0) / 1000).toFixed(2);
|
|
114
|
-
|
|
115
|
-
_utils2.console.log("css-vars-ponyfill completed in ".concat(time, " seconds"));
|
|
116
|
-
}
|
|
117
|
+
silent: true
|
|
117
118
|
});
|
|
118
119
|
};
|
|
119
120
|
|
|
@@ -142,6 +143,130 @@ var BaseTable = /*#__PURE__*/function (_React$Component) {
|
|
|
142
143
|
_this.rootSubscription = new _rxjs.Subscription();
|
|
143
144
|
_this.hasScrollY = false;
|
|
144
145
|
_this.resizeSubject = new _rxjs.Subject();
|
|
146
|
+
|
|
147
|
+
_this.getRowNodeListByEvent = function (e) {
|
|
148
|
+
var nodeList = null;
|
|
149
|
+
var rowIndex = e.currentTarget.dataset.rowindex;
|
|
150
|
+
|
|
151
|
+
if (rowIndex !== undefined) {
|
|
152
|
+
var _this$domHelper = _this.domHelper,
|
|
153
|
+
tableBody = _this$domHelper.tableBody,
|
|
154
|
+
tableFooter = _this$domHelper.tableFooter;
|
|
155
|
+
var targetParent = tableBody.contains(e.currentTarget) ? tableBody : tableFooter;
|
|
156
|
+
nodeList = targetParent.querySelectorAll("tr[data-rowindex=\"".concat(rowIndex, "\"]"));
|
|
157
|
+
}
|
|
158
|
+
|
|
159
|
+
return nodeList;
|
|
160
|
+
};
|
|
161
|
+
|
|
162
|
+
_this.handleRowMouseEnter = function (e) {
|
|
163
|
+
var nodeList = _this.getRowNodeListByEvent(e);
|
|
164
|
+
|
|
165
|
+
nodeList && nodeList.forEach(function (node) {
|
|
166
|
+
node.classList.add('row-hover');
|
|
167
|
+
});
|
|
168
|
+
};
|
|
169
|
+
|
|
170
|
+
_this.handleRowMouseLeave = function (e) {
|
|
171
|
+
var nodeList = _this.getRowNodeListByEvent(e);
|
|
172
|
+
|
|
173
|
+
nodeList && nodeList.forEach(function (node) {
|
|
174
|
+
node.classList.remove('row-hover');
|
|
175
|
+
});
|
|
176
|
+
};
|
|
177
|
+
|
|
178
|
+
_this.renderTableBody = function (info) {
|
|
179
|
+
// console.log('render body')
|
|
180
|
+
var _this$props = _this.props,
|
|
181
|
+
dataSource = _this$props.dataSource,
|
|
182
|
+
getRowProps = _this$props.getRowProps,
|
|
183
|
+
primaryKey = _this$props.primaryKey,
|
|
184
|
+
isLoading = _this$props.isLoading,
|
|
185
|
+
emptyCellHeight = _this$props.emptyCellHeight,
|
|
186
|
+
footerDataSource = _this$props.footerDataSource;
|
|
187
|
+
var tableBodyClassName = (0, _classnames.default)(_styles.Classes.tableBody, _styles.Classes.horizontalScrollContainer); // 低版本Edge浏览器下也会出现双滚动条,这里设置overflow: 'hidden',先去掉edge的方向键控制滚动条的功能
|
|
188
|
+
|
|
189
|
+
var virtualStyle = _utils2.browserType.isIE || _utils2.browserType.isEdge ? {
|
|
190
|
+
overflow: 'hidden'
|
|
191
|
+
} : {};
|
|
192
|
+
|
|
193
|
+
if (dataSource.length === 0) {
|
|
194
|
+
var _this$props2 = _this.props,
|
|
195
|
+
components = _this$props2.components,
|
|
196
|
+
emptyContent = _this$props2.emptyContent;
|
|
197
|
+
var EmptyContent = components.EmptyContent;
|
|
198
|
+
|
|
199
|
+
if (EmptyContent == null && emptyContent != null) {
|
|
200
|
+
warnPropsDotEmptyContentIsDeprecated();
|
|
201
|
+
|
|
202
|
+
EmptyContent = function EmptyContent() {
|
|
203
|
+
return emptyContent;
|
|
204
|
+
};
|
|
205
|
+
}
|
|
206
|
+
|
|
207
|
+
return /*#__PURE__*/_react.default.createElement("div", {
|
|
208
|
+
className: (0, _classnames.default)(tableBodyClassName, 'empty')
|
|
209
|
+
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
210
|
+
className: _styles.Classes.virtual,
|
|
211
|
+
style: virtualStyle
|
|
212
|
+
}, /*#__PURE__*/_react.default.createElement(_empty.EmptyHtmlTable, {
|
|
213
|
+
descriptors: info.visible,
|
|
214
|
+
isLoading: isLoading,
|
|
215
|
+
EmptyContent: EmptyContent,
|
|
216
|
+
emptyCellHeight: emptyCellHeight
|
|
217
|
+
})));
|
|
218
|
+
}
|
|
219
|
+
|
|
220
|
+
var _info$verticalRenderR = info.verticalRenderRange,
|
|
221
|
+
topIndex = _info$verticalRenderR.topIndex,
|
|
222
|
+
bottomBlank = _info$verticalRenderR.bottomBlank,
|
|
223
|
+
topBlank = _info$verticalRenderR.topBlank,
|
|
224
|
+
bottomIndex = _info$verticalRenderR.bottomIndex;
|
|
225
|
+
var renderBody = (0, _renderTemplates.default)('body');
|
|
226
|
+
|
|
227
|
+
if (typeof renderBody === 'function') {
|
|
228
|
+
return renderBody(info, _this.props, {
|
|
229
|
+
rowProps: {
|
|
230
|
+
onMouseEnter: _this.handleRowMouseEnter,
|
|
231
|
+
onMouseLeave: _this.handleRowMouseLeave
|
|
232
|
+
},
|
|
233
|
+
hasScrollY: _this.hasScrollY
|
|
234
|
+
});
|
|
235
|
+
}
|
|
236
|
+
|
|
237
|
+
return /*#__PURE__*/_react.default.createElement("div", {
|
|
238
|
+
className: tableBodyClassName
|
|
239
|
+
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
240
|
+
className: _styles.Classes.virtual,
|
|
241
|
+
style: virtualStyle
|
|
242
|
+
}, topBlank > 0 && /*#__PURE__*/_react.default.createElement("div", {
|
|
243
|
+
key: "top-blank",
|
|
244
|
+
className: (0, _classnames.default)(_styles.Classes.virtualBlank, 'top'),
|
|
245
|
+
style: {
|
|
246
|
+
height: topBlank
|
|
247
|
+
}
|
|
248
|
+
}), /*#__PURE__*/_react.default.createElement(_htmlTable.HtmlTable, {
|
|
249
|
+
tbodyHtmlTag: "tbody",
|
|
250
|
+
getRowProps: getRowProps,
|
|
251
|
+
primaryKey: primaryKey,
|
|
252
|
+
data: (0, _slice.default)(dataSource).call(dataSource, topIndex, bottomIndex),
|
|
253
|
+
hasScrollY: _this.hasScrollY,
|
|
254
|
+
horizontalRenderInfo: info,
|
|
255
|
+
verticalRenderInfo: {
|
|
256
|
+
first: 0,
|
|
257
|
+
offset: topIndex,
|
|
258
|
+
limit: bottomIndex,
|
|
259
|
+
last: dataSource.length - 1
|
|
260
|
+
}
|
|
261
|
+
}), bottomBlank > 0 && /*#__PURE__*/_react.default.createElement("div", {
|
|
262
|
+
key: "bottom-blank",
|
|
263
|
+
className: (0, _classnames.default)(_styles.Classes.virtualBlank, 'bottom'),
|
|
264
|
+
style: {
|
|
265
|
+
height: bottomBlank
|
|
266
|
+
}
|
|
267
|
+
})));
|
|
268
|
+
};
|
|
269
|
+
|
|
145
270
|
_this.state = {
|
|
146
271
|
hasScroll: true,
|
|
147
272
|
hasScrollY: true,
|
|
@@ -173,10 +298,10 @@ var BaseTable = /*#__PURE__*/function (_React$Component) {
|
|
|
173
298
|
value: function updateStickyScroll() {
|
|
174
299
|
var _a, _b;
|
|
175
300
|
|
|
176
|
-
var _this$
|
|
177
|
-
stickyScroll = _this$
|
|
178
|
-
artTable = _this$
|
|
179
|
-
stickyScrollItem = _this$
|
|
301
|
+
var _this$domHelper2 = this.domHelper,
|
|
302
|
+
stickyScroll = _this$domHelper2.stickyScroll,
|
|
303
|
+
artTable = _this$domHelper2.artTable,
|
|
304
|
+
stickyScrollItem = _this$domHelper2.stickyScrollItem;
|
|
180
305
|
var _lastHasScrollY = this.hasScrollY;
|
|
181
306
|
|
|
182
307
|
if (!artTable) {
|
|
@@ -207,7 +332,7 @@ var BaseTable = /*#__PURE__*/function (_React$Component) {
|
|
|
207
332
|
}
|
|
208
333
|
}
|
|
209
334
|
|
|
210
|
-
if (this.domHelper.
|
|
335
|
+
if (this.domHelper.virtual.offsetHeight > this.domHelper.tableBody.offsetHeight) {
|
|
211
336
|
// if (!this.state.hasScroll) {
|
|
212
337
|
// this.setState({
|
|
213
338
|
// hasScrollY: true
|
|
@@ -215,7 +340,7 @@ var BaseTable = /*#__PURE__*/function (_React$Component) {
|
|
|
215
340
|
// }
|
|
216
341
|
this.hasScrollY = true;
|
|
217
342
|
} else {
|
|
218
|
-
stickyScroll.style.
|
|
343
|
+
stickyScroll.style.paddingRight = "".concat(stickyScrollHeight, "px"); // this.setState({
|
|
219
344
|
// hasScrollY: false
|
|
220
345
|
// })
|
|
221
346
|
|
|
@@ -232,9 +357,14 @@ var BaseTable = /*#__PURE__*/function (_React$Component) {
|
|
|
232
357
|
}, {
|
|
233
358
|
key: "renderTableHeader",
|
|
234
359
|
value: function renderTableHeader(info) {
|
|
235
|
-
var _this$
|
|
236
|
-
stickyTop = _this$
|
|
237
|
-
hasHeader = _this$
|
|
360
|
+
var _this$props3 = this.props,
|
|
361
|
+
stickyTop = _this$props3.stickyTop,
|
|
362
|
+
hasHeader = _this$props3.hasHeader;
|
|
363
|
+
var renderHeader = (0, _renderTemplates.default)('header');
|
|
364
|
+
|
|
365
|
+
if (typeof renderHeader === 'function') {
|
|
366
|
+
return renderHeader(info, this.props);
|
|
367
|
+
}
|
|
238
368
|
|
|
239
369
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
240
370
|
className: (0, _classnames.default)(_styles.Classes.tableHeader, 'no-scrollbar'),
|
|
@@ -244,6 +374,11 @@ var BaseTable = /*#__PURE__*/function (_React$Component) {
|
|
|
244
374
|
}
|
|
245
375
|
}, /*#__PURE__*/_react.default.createElement(_header.default, {
|
|
246
376
|
info: info
|
|
377
|
+
}), /*#__PURE__*/_react.default.createElement("div", {
|
|
378
|
+
className: _styles.Classes.verticalScrollPlaceholder,
|
|
379
|
+
style: this.hasScrollY ? {
|
|
380
|
+
width: (0, _utils.getScrollbarSize)().width
|
|
381
|
+
} : undefined
|
|
247
382
|
}));
|
|
248
383
|
}
|
|
249
384
|
}, {
|
|
@@ -308,80 +443,6 @@ var BaseTable = /*#__PURE__*/function (_React$Component) {
|
|
|
308
443
|
return (0, _rowHeightManager.getFullRenderRange)(rowCount);
|
|
309
444
|
}
|
|
310
445
|
}
|
|
311
|
-
}, {
|
|
312
|
-
key: "renderTableBody",
|
|
313
|
-
value: function renderTableBody(info) {
|
|
314
|
-
// console.log('render body')
|
|
315
|
-
var _this$props2 = this.props,
|
|
316
|
-
dataSource = _this$props2.dataSource,
|
|
317
|
-
getRowProps = _this$props2.getRowProps,
|
|
318
|
-
primaryKey = _this$props2.primaryKey,
|
|
319
|
-
isLoading = _this$props2.isLoading,
|
|
320
|
-
emptyCellHeight = _this$props2.emptyCellHeight,
|
|
321
|
-
footerDataSource = _this$props2.footerDataSource;
|
|
322
|
-
var tableBodyClassName = (0, _classnames.default)(_styles.Classes.tableBody, _styles.Classes.horizontalScrollContainer);
|
|
323
|
-
|
|
324
|
-
if (dataSource.length === 0) {
|
|
325
|
-
var _this$props3 = this.props,
|
|
326
|
-
components = _this$props3.components,
|
|
327
|
-
emptyContent = _this$props3.emptyContent;
|
|
328
|
-
var EmptyContent = components.EmptyContent;
|
|
329
|
-
|
|
330
|
-
if (EmptyContent == null && emptyContent != null) {
|
|
331
|
-
warnPropsDotEmptyContentIsDeprecated();
|
|
332
|
-
|
|
333
|
-
EmptyContent = function EmptyContent() {
|
|
334
|
-
return emptyContent;
|
|
335
|
-
};
|
|
336
|
-
}
|
|
337
|
-
|
|
338
|
-
return /*#__PURE__*/_react.default.createElement("div", {
|
|
339
|
-
className: (0, _classnames.default)(tableBodyClassName, 'empty')
|
|
340
|
-
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
341
|
-
className: _styles.Classes.virtual
|
|
342
|
-
}, /*#__PURE__*/_react.default.createElement(_empty.EmptyHtmlTable, {
|
|
343
|
-
descriptors: info.visible,
|
|
344
|
-
isLoading: isLoading,
|
|
345
|
-
EmptyContent: EmptyContent,
|
|
346
|
-
emptyCellHeight: emptyCellHeight
|
|
347
|
-
})));
|
|
348
|
-
}
|
|
349
|
-
|
|
350
|
-
var _info$verticalRenderR = info.verticalRenderRange,
|
|
351
|
-
topIndex = _info$verticalRenderR.topIndex,
|
|
352
|
-
bottomBlank = _info$verticalRenderR.bottomBlank,
|
|
353
|
-
topBlank = _info$verticalRenderR.topBlank,
|
|
354
|
-
bottomIndex = _info$verticalRenderR.bottomIndex;
|
|
355
|
-
return /*#__PURE__*/_react.default.createElement("div", {
|
|
356
|
-
className: tableBodyClassName
|
|
357
|
-
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
358
|
-
className: _styles.Classes.virtual
|
|
359
|
-
}, topBlank > 0 && /*#__PURE__*/_react.default.createElement("div", {
|
|
360
|
-
key: "top-blank",
|
|
361
|
-
className: (0, _classnames.default)(_styles.Classes.virtualBlank, 'top'),
|
|
362
|
-
style: {
|
|
363
|
-
height: topBlank
|
|
364
|
-
}
|
|
365
|
-
}), /*#__PURE__*/_react.default.createElement(_htmlTable.HtmlTable, {
|
|
366
|
-
tbodyHtmlTag: "tbody",
|
|
367
|
-
getRowProps: getRowProps,
|
|
368
|
-
primaryKey: primaryKey,
|
|
369
|
-
data: (0, _slice.default)(dataSource).call(dataSource, topIndex, bottomIndex),
|
|
370
|
-
horizontalRenderInfo: info,
|
|
371
|
-
verticalRenderInfo: {
|
|
372
|
-
first: 0,
|
|
373
|
-
offset: topIndex,
|
|
374
|
-
limit: bottomIndex,
|
|
375
|
-
last: dataSource.length - 1
|
|
376
|
-
}
|
|
377
|
-
}), bottomBlank > 0 && /*#__PURE__*/_react.default.createElement("div", {
|
|
378
|
-
key: "bottom-blank",
|
|
379
|
-
className: (0, _classnames.default)(_styles.Classes.virtualBlank, 'bottom'),
|
|
380
|
-
style: {
|
|
381
|
-
height: bottomBlank
|
|
382
|
-
}
|
|
383
|
-
})));
|
|
384
|
-
}
|
|
385
446
|
}, {
|
|
386
447
|
key: "renderTableFooter",
|
|
387
448
|
value: function renderTableFooter(info) {
|
|
@@ -392,6 +453,17 @@ var BaseTable = /*#__PURE__*/function (_React$Component) {
|
|
|
392
453
|
getRowProps = _this$props4.getRowProps,
|
|
393
454
|
primaryKey = _this$props4.primaryKey,
|
|
394
455
|
stickyBottom = _this$props4.stickyBottom;
|
|
456
|
+
var renderFooter = (0, _renderTemplates.default)('footer');
|
|
457
|
+
|
|
458
|
+
if (typeof renderFooter === 'function') {
|
|
459
|
+
return renderFooter(info, this.props, {
|
|
460
|
+
rowProps: {
|
|
461
|
+
onMouseEnter: this.handleRowMouseEnter,
|
|
462
|
+
onMouseLeave: this.handleRowMouseLeave
|
|
463
|
+
}
|
|
464
|
+
});
|
|
465
|
+
}
|
|
466
|
+
|
|
395
467
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
396
468
|
className: (0, _classnames.default)(_styles.Classes.tableFooter, _styles.Classes.horizontalScrollContainer),
|
|
397
469
|
style: {
|
|
@@ -409,6 +481,12 @@ var BaseTable = /*#__PURE__*/function (_React$Component) {
|
|
|
409
481
|
last: footerDataSource.length - 1,
|
|
410
482
|
limit: Infinity
|
|
411
483
|
}
|
|
484
|
+
}), /*#__PURE__*/_react.default.createElement("div", {
|
|
485
|
+
className: _styles.Classes.verticalScrollPlaceholder,
|
|
486
|
+
style: this.hasScrollY ? {
|
|
487
|
+
width: (0, _utils.getScrollbarSize)().width,
|
|
488
|
+
visibility: 'initial'
|
|
489
|
+
} : undefined
|
|
412
490
|
}));
|
|
413
491
|
}
|
|
414
492
|
}, {
|
|
@@ -477,7 +555,8 @@ var BaseTable = /*#__PURE__*/function (_React$Component) {
|
|
|
477
555
|
'has-header': hasHeader,
|
|
478
556
|
'sticky-header': isStickyHeader !== null && isStickyHeader !== void 0 ? isStickyHeader : isStickyHead,
|
|
479
557
|
'has-footer': footerDataSource.length > 0,
|
|
480
|
-
'sticky-footer': isStickyFooter
|
|
558
|
+
'sticky-footer': isStickyFooter,
|
|
559
|
+
'ie-polyfill-wrapper': _utils2.browserType.isIE
|
|
481
560
|
}, className);
|
|
482
561
|
var artTableWrapperProps = (0, _defineProperty2.default)({
|
|
483
562
|
className: artTableWrapperClassName,
|
|
@@ -494,7 +573,7 @@ var BaseTable = /*#__PURE__*/function (_React$Component) {
|
|
|
494
573
|
}, {
|
|
495
574
|
key: "componentDidMount",
|
|
496
575
|
value: function componentDidMount() {
|
|
497
|
-
var _a, _b; // console.log('did mount start')
|
|
576
|
+
var _a, _b, _c, _d; // console.log('did mount start')
|
|
498
577
|
// console.log('update dom helper start')
|
|
499
578
|
|
|
500
579
|
|
|
@@ -512,6 +591,7 @@ var BaseTable = /*#__PURE__*/function (_React$Component) {
|
|
|
512
591
|
enableCSSVariables: enableCSSVariables
|
|
513
592
|
});
|
|
514
593
|
(_b = (_a = this.props).setTableWidth) === null || _b === void 0 ? void 0 : _b.call(_a, this.domHelper.tableBody.clientWidth);
|
|
594
|
+
(_d = (_c = this.props).setTableDomHelper) === null || _d === void 0 ? void 0 : _d.call(_c, this.domHelper);
|
|
515
595
|
}
|
|
516
596
|
}, {
|
|
517
597
|
key: "componentDidUpdate",
|
|
@@ -544,7 +624,7 @@ var BaseTable = /*#__PURE__*/function (_React$Component) {
|
|
|
544
624
|
var currentHasFooter = this.props.footerDataSource.length > 0;
|
|
545
625
|
|
|
546
626
|
if (!prevHasFooter && currentHasFooter) {
|
|
547
|
-
this.domHelper.
|
|
627
|
+
(0, _utils.getTableScrollFooterDOM)(this.domHelper).scrollLeft = this.domHelper.tableBody.scrollLeft;
|
|
548
628
|
}
|
|
549
629
|
}
|
|
550
630
|
}
|
|
@@ -553,11 +633,9 @@ var BaseTable = /*#__PURE__*/function (_React$Component) {
|
|
|
553
633
|
value: function initSubscriptions() {
|
|
554
634
|
var _this2 = this;
|
|
555
635
|
|
|
556
|
-
var _this$
|
|
557
|
-
|
|
558
|
-
|
|
559
|
-
tableFooter = _this$domHelper2.tableFooter,
|
|
560
|
-
stickyScroll = _this$domHelper2.stickyScroll;
|
|
636
|
+
var _this$domHelper3 = this.domHelper,
|
|
637
|
+
virtual = _this$domHelper3.virtual,
|
|
638
|
+
stickyScroll = _this$domHelper3.stickyScroll;
|
|
561
639
|
this.rootSubscription.add(_utils.throttledWindowResize$.subscribe(function () {
|
|
562
640
|
_this2.updateStickyScroll();
|
|
563
641
|
|
|
@@ -575,36 +653,12 @@ var BaseTable = /*#__PURE__*/function (_React$Component) {
|
|
|
575
653
|
|
|
576
654
|
this.resizeObserver = (0, _utils.addResizeObserver)(this.domHelper.artTableWrapper, handleTableWrapperResize); // 滚动同步
|
|
577
655
|
|
|
578
|
-
this.rootSubscription.add((0, _utils.syncScrollLeft)([
|
|
656
|
+
this.rootSubscription.add((0, _utils.syncScrollLeft)([(0, _utils.getTableScrollHeaderDOM)(this.domHelper), virtual, (0, _utils.getTableScrollFooterDOM)(this.domHelper), stickyScroll], function (scrollLeft) {
|
|
579
657
|
_this2.syncHorizontalScroll(scrollLeft);
|
|
580
|
-
}));
|
|
581
|
-
|
|
582
|
-
var resolvedFlowRoot$ = this.props$.pipe(op.map(function (props) {
|
|
583
|
-
return props.flowRoot;
|
|
584
|
-
}), op.switchMap(function (flowRoot) {
|
|
585
|
-
var wrapper = _this2.domHelper.tableBody;
|
|
586
|
-
|
|
587
|
-
if (flowRoot === 'auto') {
|
|
588
|
-
var computedStyle = getComputedStyle(wrapper);
|
|
589
|
-
return (0, _rxjs.of)(computedStyle.overflowY !== 'visible' ? wrapper : window);
|
|
590
|
-
} else if (flowRoot === 'self') {
|
|
591
|
-
return (0, _rxjs.of)(wrapper);
|
|
592
|
-
} else {
|
|
593
|
-
if (typeof flowRoot === 'function') {
|
|
594
|
-
// 在一些情况下 flowRoot 需要在父组件 didMount 时才会准备好
|
|
595
|
-
// 故这里使用 animationFrameScheduler 等下一个动画帧
|
|
596
|
-
return (0, _rxjs.timer)(0, _rxjs.animationFrameScheduler).pipe(op.map(flowRoot));
|
|
597
|
-
} else {
|
|
598
|
-
return (0, _rxjs.of)(flowRoot);
|
|
599
|
-
}
|
|
600
|
-
}
|
|
601
|
-
}), op.distinctUntilChanged()); // 表格在 flowRoot 中的可见部分
|
|
602
|
-
|
|
603
|
-
var visiblePart$ = resolvedFlowRoot$.pipe(op.switchMap(function (resolvedFlowRoot) {
|
|
604
|
-
return (0, _visiblePart.getVisiblePartObservable)(_this2.domHelper.virtual, resolvedFlowRoot);
|
|
605
|
-
})); // 每当可见部分发生变化的时候,调整 loading icon 的未知(如果 loading icon 存在的话)
|
|
658
|
+
}));
|
|
659
|
+
var richVisibleRects$ = (0, _getRichVisibleRectsStream.getRichVisibleRectsStream)(this.domHelper.virtual, this.props$.pipe(op.skip(1), op.mapTo('structure-may-change')), this.props.virtualDebugLabel).pipe(op.shareReplay()); // 每当可见部分发生变化的时候,调整 loading icon 的未知(如果 loading icon 存在的话)
|
|
606
660
|
|
|
607
|
-
this.rootSubscription.add((0, _rxjs.combineLatest)([
|
|
661
|
+
this.rootSubscription.add((0, _rxjs.combineLatest)([richVisibleRects$.pipe(op.map(function (p) {
|
|
608
662
|
return p.clipRect;
|
|
609
663
|
}), op.distinctUntilChanged(_utils.shallowEqual)), this.props$.pipe(op.startWith(null), op.pairwise(), op.filter(function (_ref2) {
|
|
610
664
|
var _ref3 = (0, _slicedToArray2.default)(_ref2, 2),
|
|
@@ -622,12 +676,13 @@ var BaseTable = /*#__PURE__*/function (_React$Component) {
|
|
|
622
676
|
return;
|
|
623
677
|
}
|
|
624
678
|
|
|
625
|
-
var height = clipRect.bottom - clipRect.top;
|
|
679
|
+
var height = clipRect.bottom - clipRect.top; // fixme 这里的定位在有些特殊情况下可能会出错 see #132
|
|
680
|
+
|
|
626
681
|
loadingIndicator.style.top = "".concat(height / 2, "px");
|
|
627
682
|
loadingIndicator.style.marginTop = "".concat(height / 2, "px");
|
|
628
683
|
})); // 每当可见部分发生变化的时候,如果开启了虚拟滚动,则重新触发 render
|
|
629
684
|
|
|
630
|
-
this.rootSubscription.add(
|
|
685
|
+
this.rootSubscription.add(richVisibleRects$.pipe(op.filter(function () {
|
|
631
686
|
var _this2$lastInfo$useVi = _this2.lastInfo.useVirtual,
|
|
632
687
|
horizontal = _this2$lastInfo$useVi.horizontal,
|
|
633
688
|
vertical = _this2$lastInfo$useVi.vertical;
|
|
@@ -767,7 +822,6 @@ BaseTable.defaultProps = {
|
|
|
767
822
|
components: {},
|
|
768
823
|
getTableProps: _rxjs.noop,
|
|
769
824
|
getRowProps: _rxjs.noop,
|
|
770
|
-
flowRoot: 'auto',
|
|
771
825
|
dataSource: [],
|
|
772
826
|
useOuterBorder: true
|
|
773
827
|
};
|
|
@@ -1,5 +1,7 @@
|
|
|
1
|
+
import React from 'react';
|
|
1
2
|
import { Subscription } from 'rxjs';
|
|
2
3
|
import ResizeObserver from 'resize-observer-polyfill';
|
|
4
|
+
import { TableDOMHelper } from './helpers/TableDOMUtils';
|
|
3
5
|
/** styled-components 类库的版本,ali-react-table 同时支持 v3 和 v5 */
|
|
4
6
|
export declare const STYLED_VERSION: string;
|
|
5
7
|
export declare const STYLED_REF_PROP: string;
|
|
@@ -29,8 +31,9 @@ export declare function syncScrollLeft(elements: HTMLElement[], callback: (scrol
|
|
|
29
31
|
* Performs equality by iterating through keys on an object and returning false
|
|
30
32
|
* when any key has values which are not strictly equal between the arguments.
|
|
31
33
|
* Returns true when the values of all keys are strictly equal.
|
|
32
|
-
*
|
|
33
|
-
* 这个函数是从 facebook 某个官方库中复制过来的
|
|
34
34
|
*/
|
|
35
|
-
export declare function shallowEqual(objA:
|
|
35
|
+
export declare function shallowEqual<T>(objA: T, objB: T): boolean;
|
|
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
|
+
export declare function getTableScrollHeaderDOM(domHelper: TableDOMHelper): HTMLDivElement;
|
|
38
|
+
export declare function getTableScrollFooterDOM(domHelper: TableDOMHelper): HTMLDivElement;
|
|
36
39
|
export {};
|
package/lib/table/base/utils.js
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
+
var _typeof3 = require("@babel/runtime-corejs3/helpers/typeof");
|
|
4
|
+
|
|
3
5
|
var _mapInstanceProperty = require("@babel/runtime-corejs3/core-js-stable/instance/map");
|
|
4
6
|
|
|
5
7
|
var _sliceInstanceProperty = require("@babel/runtime-corejs3/core-js-stable/instance/slice");
|
|
@@ -10,20 +12,24 @@ var _Symbol = require("@babel/runtime-corejs3/core-js-stable/symbol");
|
|
|
10
12
|
|
|
11
13
|
var _getIteratorMethod = require("@babel/runtime-corejs3/core-js/get-iterator-method");
|
|
12
14
|
|
|
13
|
-
var
|
|
15
|
+
var _WeakMap = require("@babel/runtime-corejs3/core-js-stable/weak-map");
|
|
14
16
|
|
|
15
|
-
var
|
|
17
|
+
var _Object$getOwnPropertyDescriptor = require("@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor");
|
|
16
18
|
|
|
17
19
|
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
|
|
18
20
|
|
|
19
21
|
Object.defineProperty(exports, "__esModule", {
|
|
20
22
|
value: true
|
|
21
23
|
});
|
|
22
|
-
exports.
|
|
24
|
+
exports.addResizeObserver = exports.STYLED_VERSION = exports.STYLED_REF_PROP = exports.OVERSCAN_SIZE = exports.AUTO_VIRTUAL_THRESHOLD = void 0;
|
|
25
|
+
exports.composeRowPropsGetter = composeRowPropsGetter;
|
|
23
26
|
exports.getScrollbarSize = getScrollbarSize;
|
|
24
|
-
exports.
|
|
27
|
+
exports.getTableScrollFooterDOM = getTableScrollFooterDOM;
|
|
28
|
+
exports.getTableScrollHeaderDOM = getTableScrollHeaderDOM;
|
|
25
29
|
exports.shallowEqual = shallowEqual;
|
|
26
|
-
exports.
|
|
30
|
+
exports.sum = sum;
|
|
31
|
+
exports.syncScrollLeft = syncScrollLeft;
|
|
32
|
+
exports.throttledWindowResize$ = void 0;
|
|
27
33
|
|
|
28
34
|
var _set = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/set"));
|
|
29
35
|
|
|
@@ -43,7 +49,15 @@ var _resizeObserverPolyfill = _interopRequireDefault(require("resize-observer-po
|
|
|
43
49
|
|
|
44
50
|
var styledComponents = _interopRequireWildcard(require("styled-components"));
|
|
45
51
|
|
|
46
|
-
|
|
52
|
+
var _mergeCellProps = _interopRequireDefault(require("../utils/mergeCellProps"));
|
|
53
|
+
|
|
54
|
+
var _utils = require("../utils");
|
|
55
|
+
|
|
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); }
|
|
57
|
+
|
|
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; }
|
|
59
|
+
|
|
60
|
+
function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof _Symbol !== "undefined" && _getIteratorMethod(o) || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
|
|
47
61
|
|
|
48
62
|
function _unsupportedIterableToArray(o, minLen) { var _context; if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = _sliceInstanceProperty(_context = Object.prototype.toString.call(o)).call(_context, 8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return _Array$from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
49
63
|
|
|
@@ -69,7 +83,9 @@ function sum(arr) {
|
|
|
69
83
|
|
|
70
84
|
|
|
71
85
|
var throttledWindowResize$ = (0, _rxjs.defer)(function () {
|
|
72
|
-
return (0, _rxjs.fromEvent)(window, 'resize'
|
|
86
|
+
return (0, _rxjs.fromEvent)(window, 'resize', {
|
|
87
|
+
passive: true
|
|
88
|
+
}).pipe((0, _operators.throttleTime)(150, _rxjs.asyncScheduler, {
|
|
73
89
|
leading: true,
|
|
74
90
|
trailing: true
|
|
75
91
|
}));
|
|
@@ -202,12 +218,12 @@ function syncScrollLeft(elements, callback) {
|
|
|
202
218
|
* Performs equality by iterating through keys on an object and returning false
|
|
203
219
|
* when any key has values which are not strictly equal between the arguments.
|
|
204
220
|
* Returns true when the values of all keys are strictly equal.
|
|
205
|
-
*
|
|
206
|
-
* 这个函数是从 facebook 某个官方库中复制过来的
|
|
207
221
|
*/
|
|
208
222
|
|
|
209
223
|
|
|
210
224
|
function shallowEqual(objA, objB) {
|
|
225
|
+
var hasOwnProperty = Object.prototype.hasOwnProperty;
|
|
226
|
+
|
|
211
227
|
if ((0, _is.default)(objA, objB)) {
|
|
212
228
|
return true;
|
|
213
229
|
}
|
|
@@ -225,10 +241,31 @@ function shallowEqual(objA, objB) {
|
|
|
225
241
|
|
|
226
242
|
|
|
227
243
|
for (var i = 0; i < keysA.length; i++) {
|
|
228
|
-
if (!
|
|
244
|
+
if (!hasOwnProperty.call(objB, keysA[i]) || !(0, _is.default)(objA[keysA[i]], objB[keysA[i]])) {
|
|
229
245
|
return false;
|
|
230
246
|
}
|
|
231
247
|
}
|
|
232
248
|
|
|
233
249
|
return true;
|
|
250
|
+
} // todo: 抽出mergeRowProps
|
|
251
|
+
|
|
252
|
+
|
|
253
|
+
function composeRowPropsGetter(getRowProps, pendingRowProps) {
|
|
254
|
+
var keys = (0, _keys.default)(pendingRowProps);
|
|
255
|
+
|
|
256
|
+
if (keys.length) {
|
|
257
|
+
return function (row, rowIndex) {
|
|
258
|
+
return (0, _mergeCellProps.default)(getRowProps(row, rowIndex), pendingRowProps);
|
|
259
|
+
};
|
|
260
|
+
}
|
|
261
|
+
|
|
262
|
+
return getRowProps;
|
|
263
|
+
}
|
|
264
|
+
|
|
265
|
+
function getTableScrollHeaderDOM(domHelper) {
|
|
266
|
+
return _utils.browserType.isIE ? domHelper.tableHeaderMain : domHelper.tableHeader;
|
|
267
|
+
}
|
|
268
|
+
|
|
269
|
+
function getTableScrollFooterDOM(domHelper) {
|
|
270
|
+
return _utils.browserType.isIE ? domHelper.tableFooterMain : domHelper.tableFooter;
|
|
234
271
|
}
|
|
@@ -5,7 +5,7 @@ var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequ
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", {
|
|
6
6
|
value: true
|
|
7
7
|
});
|
|
8
|
-
exports.
|
|
8
|
+
exports.icons = exports.InlineFlexCell = exports.ExpansionCell = exports.ContextMenuStyleWrap = void 0;
|
|
9
9
|
|
|
10
10
|
var _extends2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/extends"));
|
|
11
11
|
|
|
@@ -85,6 +85,6 @@ var icons = {
|
|
|
85
85
|
};
|
|
86
86
|
exports.icons = icons;
|
|
87
87
|
|
|
88
|
-
var ContextMenuStyleWrap = _styledComponents.default.div(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2.default)(["\n &.", "{\n border: 1px solid #e9ecf1;\n border-radius: 2px;\n background-color: #Fff;\n box-shadow: 0px 0px 5px 0px rgb(154 154 154 / 50%);\n cursor: default;\n font-size: 13px;\n position:absolute;\n z-index: 1050;\n width:120px;\n }\n\n .", "{\n width:100%;\n display: table;\n }\n\n .", " .", "{\n display: table-row;\n }\n\n .", " .", "{\n background-color: #f5f5f5;\n }\n\n .", " .", " .", "{\n display: table-cell;\n padding: 5px 8px;\n
|
|
88
|
+
var ContextMenuStyleWrap = _styledComponents.default.div(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2.default)(["\n &.", "{\n border: 1px solid #e9ecf1;\n border-radius: 2px;\n background-color: #Fff;\n box-shadow: 0px 0px 5px 0px rgb(154 154 154 / 50%);\n cursor: default;\n font-size: 13px;\n position:absolute;\n z-index: 1050;\n width:120px;\n }\n\n .", "{\n width:100%;\n display: table;\n }\n\n .", " .", "{\n display: table-row;\n color: #666666;\n }\n\n .", " .", "{\n background-color: #f5f5f5;\n }\n\n .", " .", " .", "{\n display: table-cell;\n padding: 5px 8px;\n }\n .", " .", ".", "{\n opacity: .5;\n }\n\n"])), _styles.MenuClasses.menu, _styles.MenuClasses.menuList, _styles.MenuClasses.menuList, _styles.MenuClasses.menuOption, _styles.MenuClasses.menuList, _styles.MenuClasses.menuOptionActive, _styles.MenuClasses.menuList, _styles.MenuClasses.menuOption, _styles.MenuClasses.menuOptionText, _styles.MenuClasses.menuList, _styles.MenuClasses.menuOption, _styles.MenuClasses.menuOptionDisable);
|
|
89
89
|
|
|
90
90
|
exports.ContextMenuStyleWrap = ContextMenuStyleWrap;
|