@sheinx/base 3.7.0-beta.4 → 3.7.0-beta.41
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/cjs/alert/alert.d.ts.map +1 -1
- package/cjs/alert/alert.js +1 -1
- package/cjs/alert/alert.type.d.ts +1 -0
- package/cjs/alert/alert.type.d.ts.map +1 -1
- package/cjs/animation-list/animation-list.js +1 -1
- package/cjs/carousel/carousel.d.ts.map +1 -1
- package/cjs/carousel/carousel.js +6 -3
- package/cjs/carousel/carousel.type.d.ts +13 -0
- package/cjs/carousel/carousel.type.d.ts.map +1 -1
- package/cjs/cascader/cascader.d.ts.map +1 -1
- package/cjs/cascader/cascader.js +55 -36
- package/cjs/cascader/cascader.type.d.ts +14 -2
- package/cjs/cascader/cascader.type.d.ts.map +1 -1
- package/cjs/cascader/filter-list.type.d.ts +1 -1
- package/cjs/cascader/filter-list.type.d.ts.map +1 -1
- package/cjs/cascader/filter-node.d.ts.map +1 -1
- package/cjs/cascader/filter-node.js +16 -6
- package/cjs/cascader/node.d.ts.map +1 -1
- package/cjs/cascader/node.js +11 -2
- package/cjs/common/common.type.d.ts +2 -0
- package/cjs/common/common.type.d.ts.map +1 -0
- package/cjs/common/common.type.js +12 -0
- package/cjs/common/index.d.ts +2 -0
- package/cjs/common/index.d.ts.map +1 -0
- package/cjs/common/index.js +6 -0
- package/cjs/common/type.d.ts +3 -0
- package/cjs/common/type.d.ts.map +1 -1
- package/cjs/date-picker/date-picker.js +1 -1
- package/cjs/date-picker/date-picker.type.d.ts +0 -1
- package/cjs/date-picker/date-picker.type.d.ts.map +1 -1
- package/cjs/date-picker/day.d.ts.map +1 -1
- package/cjs/date-picker/day.js +3 -4
- package/cjs/form/form-flow.js +1 -1
- package/cjs/form/form-footer-context.d.ts +2 -1
- package/cjs/form/form-footer-context.d.ts.map +1 -1
- package/cjs/form/form-item.d.ts.map +1 -1
- package/cjs/form/form-item.js +4 -3
- package/cjs/form/form.d.ts.map +1 -1
- package/cjs/form/form.js +4 -2
- package/cjs/form/form.type.d.ts +3 -0
- package/cjs/form/form.type.d.ts.map +1 -1
- package/cjs/grid/grid.d.ts +2 -2
- package/cjs/grid/grid.d.ts.map +1 -1
- package/cjs/grid/grid.js +8 -5
- package/cjs/grid/grid.type.d.ts +8 -0
- package/cjs/grid/grid.type.d.ts.map +1 -1
- package/cjs/grid/index.d.ts +1 -1
- package/cjs/grid/index.d.ts.map +1 -1
- package/cjs/grid/util.d.ts.map +1 -1
- package/cjs/grid/util.js +4 -12
- package/cjs/icons/config.d.ts +3 -2
- package/cjs/icons/config.d.ts.map +1 -1
- package/cjs/icons/config.js +5 -4
- package/cjs/icons/icons.js +6 -2
- package/cjs/image/image.d.ts.map +1 -1
- package/cjs/image/image.js +3 -2
- package/cjs/index.d.ts +2 -0
- package/cjs/index.d.ts.map +1 -1
- package/cjs/index.js +24 -0
- package/cjs/list/list.d.ts.map +1 -1
- package/cjs/list/list.js +16 -5
- package/cjs/list/list.type.d.ts +8 -0
- package/cjs/list/list.type.d.ts.map +1 -1
- package/cjs/modal/modal-content.d.ts.map +1 -1
- package/cjs/modal/modal-content.js +14 -3
- package/cjs/modal/modal-submit.d.ts.map +1 -1
- package/cjs/modal/modal-submit.js +10 -3
- package/cjs/modal/modal.d.ts.map +1 -1
- package/cjs/modal/modal.js +3 -0
- package/cjs/popover/confirm.type.d.ts +1 -1
- package/cjs/popover/confirm.type.d.ts.map +1 -1
- package/cjs/popover/popover.d.ts.map +1 -1
- package/cjs/popover/popover.js +29 -1
- package/cjs/select/list-option.d.ts.map +1 -1
- package/cjs/select/list-option.js +11 -2
- package/cjs/select/list.d.ts.map +1 -1
- package/cjs/select/list.js +2 -1
- package/cjs/select/result-more.d.ts.map +1 -1
- package/cjs/select/result-more.js +1 -1
- package/cjs/select/result.d.ts.map +1 -1
- package/cjs/select/result.js +10 -1
- package/cjs/select/select.d.ts.map +1 -1
- package/cjs/select/select.js +49 -38
- package/cjs/select/select.type.d.ts +10 -2
- package/cjs/select/select.type.d.ts.map +1 -1
- package/cjs/skeleton/button.d.ts +8 -0
- package/cjs/skeleton/button.d.ts.map +1 -0
- package/cjs/skeleton/button.js +34 -0
- package/cjs/skeleton/image.d.ts +8 -0
- package/cjs/skeleton/image.d.ts.map +1 -0
- package/cjs/skeleton/image.js +27 -0
- package/cjs/skeleton/index.d.ts +3 -0
- package/cjs/skeleton/index.d.ts.map +1 -0
- package/cjs/skeleton/index.js +20 -0
- package/cjs/skeleton/skeleton.d.ts +5 -0
- package/cjs/skeleton/skeleton.d.ts.map +1 -0
- package/cjs/skeleton/skeleton.js +58 -0
- package/cjs/skeleton/skeleton.type.d.ts +125 -0
- package/cjs/skeleton/skeleton.type.d.ts.map +1 -0
- package/cjs/skeleton/skeleton.type.js +5 -0
- package/cjs/skeleton/text.d.ts +8 -0
- package/cjs/skeleton/text.d.ts.map +1 -0
- package/cjs/skeleton/text.js +53 -0
- package/cjs/sticky/sticky.d.ts.map +1 -1
- package/cjs/sticky/sticky.js +6 -3
- package/cjs/sticky/sticky.type.d.ts +2 -2
- package/cjs/sticky/sticky.type.d.ts.map +1 -1
- package/cjs/table/table.d.ts.map +1 -1
- package/cjs/table/table.js +189 -43
- package/cjs/table/table.type.d.ts +19 -3
- package/cjs/table/table.type.d.ts.map +1 -1
- package/cjs/table/tbody.d.ts +1 -1
- package/cjs/table/tbody.d.ts.map +1 -1
- package/cjs/table/tbody.js +17 -7
- package/cjs/table/tbody.type.d.ts +2 -1
- package/cjs/table/tbody.type.d.ts.map +1 -1
- package/cjs/table/td.d.ts +3 -3
- package/cjs/table/td.d.ts.map +1 -1
- package/cjs/table/td.js +24 -18
- package/cjs/table/thead-filter.d.ts.map +1 -1
- package/cjs/table/thead-filter.js +20 -19
- package/cjs/table/thead.d.ts.map +1 -1
- package/cjs/table/thead.js +5 -1
- package/cjs/table/tr.d.ts +2 -1
- package/cjs/table/tr.d.ts.map +1 -1
- package/cjs/table/tr.js +17 -12
- package/cjs/tabs/tabs-panel.js +4 -3
- package/cjs/tabs/tabs.d.ts.map +1 -1
- package/cjs/tabs/tabs.js +10 -1
- package/cjs/tabs/tabs.type.d.ts +6 -0
- package/cjs/tabs/tabs.type.d.ts.map +1 -1
- package/cjs/tag/tag.d.ts.map +1 -1
- package/cjs/tag/tag.js +3 -1
- package/cjs/tag/tag.type.d.ts +6 -0
- package/cjs/tag/tag.type.d.ts.map +1 -1
- package/cjs/tooltip/tooltip.d.ts.map +1 -1
- package/cjs/tooltip/tooltip.js +21 -1
- package/cjs/transfer/transfer-list.type.d.ts +1 -1
- package/cjs/transfer/transfer-list.type.d.ts.map +1 -1
- package/cjs/transfer/transfer.d.ts.map +1 -1
- package/cjs/transfer/transfer.js +16 -2
- package/cjs/transfer/transfer.type.d.ts +1 -1
- package/cjs/transfer/transfer.type.d.ts.map +1 -1
- package/cjs/tree/tree-checkbox.d.ts.map +1 -1
- package/cjs/tree/tree-checkbox.js +4 -2
- package/cjs/tree/tree-checkbox.type.d.ts +1 -0
- package/cjs/tree/tree-checkbox.type.d.ts.map +1 -1
- package/cjs/tree/tree-content.d.ts.map +1 -1
- package/cjs/tree/tree-content.js +37 -5
- package/cjs/tree/tree-content.type.d.ts +1 -2
- package/cjs/tree/tree-content.type.d.ts.map +1 -1
- package/cjs/tree/tree-context.d.ts +3 -3
- package/cjs/tree/tree-context.d.ts.map +1 -1
- package/cjs/tree/tree-context.type.d.ts +2 -1
- package/cjs/tree/tree-context.type.d.ts.map +1 -1
- package/cjs/tree/tree-list.type.d.ts +1 -2
- package/cjs/tree/tree-list.type.d.ts.map +1 -1
- package/cjs/tree/tree-node.type.d.ts +2 -4
- package/cjs/tree/tree-node.type.d.ts.map +1 -1
- package/cjs/tree/tree-root.type.d.ts +1 -2
- package/cjs/tree/tree-root.type.d.ts.map +1 -1
- package/cjs/tree/tree-virtual-node.d.ts.map +1 -1
- package/cjs/tree/tree-virtual-node.js +20 -5
- package/cjs/tree/tree-virtual.d.ts.map +1 -1
- package/cjs/tree/tree-virtual.js +11 -4
- package/cjs/tree/tree.d.ts.map +1 -1
- package/cjs/tree/tree.js +11 -14
- package/cjs/tree/tree.type.d.ts +26 -7
- package/cjs/tree/tree.type.d.ts.map +1 -1
- package/cjs/tree-select/tree-select.d.ts.map +1 -1
- package/cjs/tree-select/tree-select.js +63 -40
- package/cjs/tree-select/tree-select.type.d.ts +36 -2
- package/cjs/tree-select/tree-select.type.d.ts.map +1 -1
- package/cjs/upload/drop.d.ts +1 -0
- package/cjs/upload/drop.d.ts.map +1 -1
- package/cjs/upload/drop.js +43 -12
- package/cjs/upload/upload.d.ts.map +1 -1
- package/cjs/upload/upload.js +3 -1
- package/cjs/upload/upload.type.d.ts +6 -0
- package/cjs/upload/upload.type.d.ts.map +1 -1
- package/cjs/virtual-scroll/scroll-table.d.ts +7 -4
- package/cjs/virtual-scroll/scroll-table.d.ts.map +1 -1
- package/cjs/virtual-scroll/scroll-table.js +59 -29
- package/esm/alert/alert.d.ts.map +1 -1
- package/esm/alert/alert.js +1 -1
- package/esm/alert/alert.type.d.ts +1 -0
- package/esm/alert/alert.type.d.ts.map +1 -1
- package/esm/animation-list/animation-list.js +1 -1
- package/esm/carousel/carousel.d.ts.map +1 -1
- package/esm/carousel/carousel.js +6 -3
- package/esm/carousel/carousel.type.d.ts +13 -0
- package/esm/carousel/carousel.type.d.ts.map +1 -1
- package/esm/cascader/cascader.d.ts.map +1 -1
- package/esm/cascader/cascader.js +55 -36
- package/esm/cascader/cascader.type.d.ts +14 -2
- package/esm/cascader/cascader.type.d.ts.map +1 -1
- package/esm/cascader/filter-list.type.d.ts +1 -1
- package/esm/cascader/filter-list.type.d.ts.map +1 -1
- package/esm/cascader/filter-node.d.ts.map +1 -1
- package/esm/cascader/filter-node.js +17 -7
- package/esm/cascader/node.d.ts.map +1 -1
- package/esm/cascader/node.js +13 -4
- package/esm/common/common.type.d.ts +2 -0
- package/esm/common/common.type.d.ts.map +1 -0
- package/esm/common/common.type.js +1 -0
- package/esm/common/index.d.ts +2 -0
- package/esm/common/index.d.ts.map +1 -0
- package/esm/common/index.js +2 -0
- package/esm/common/type.d.ts +3 -0
- package/esm/common/type.d.ts.map +1 -1
- package/esm/date-picker/date-picker.js +1 -1
- package/esm/date-picker/date-picker.type.d.ts +0 -1
- package/esm/date-picker/date-picker.type.d.ts.map +1 -1
- package/esm/date-picker/day.d.ts.map +1 -1
- package/esm/date-picker/day.js +3 -4
- package/esm/form/form-flow.js +1 -1
- package/esm/form/form-footer-context.d.ts +2 -1
- package/esm/form/form-footer-context.d.ts.map +1 -1
- package/esm/form/form-item.d.ts.map +1 -1
- package/esm/form/form-item.js +4 -3
- package/esm/form/form.d.ts.map +1 -1
- package/esm/form/form.js +4 -2
- package/esm/form/form.type.d.ts +3 -0
- package/esm/form/form.type.d.ts.map +1 -1
- package/esm/grid/grid.d.ts +2 -2
- package/esm/grid/grid.d.ts.map +1 -1
- package/esm/grid/grid.js +8 -5
- package/esm/grid/grid.type.d.ts +8 -0
- package/esm/grid/grid.type.d.ts.map +1 -1
- package/esm/grid/index.d.ts +1 -1
- package/esm/grid/index.d.ts.map +1 -1
- package/esm/grid/util.d.ts.map +1 -1
- package/esm/grid/util.js +4 -12
- package/esm/icons/config.d.ts +3 -2
- package/esm/icons/config.d.ts.map +1 -1
- package/esm/icons/config.js +5 -4
- package/esm/icons/icons.js +6 -2
- package/esm/image/image.d.ts.map +1 -1
- package/esm/image/image.js +3 -2
- package/esm/index.d.ts +2 -0
- package/esm/index.d.ts.map +1 -1
- package/esm/index.js +2 -0
- package/esm/list/list.d.ts.map +1 -1
- package/esm/list/list.js +16 -5
- package/esm/list/list.type.d.ts +8 -0
- package/esm/list/list.type.d.ts.map +1 -1
- package/esm/modal/modal-content.d.ts.map +1 -1
- package/esm/modal/modal-content.js +14 -3
- package/esm/modal/modal-submit.d.ts.map +1 -1
- package/esm/modal/modal-submit.js +10 -3
- package/esm/modal/modal.d.ts.map +1 -1
- package/esm/modal/modal.js +3 -0
- package/esm/popover/confirm.type.d.ts +1 -1
- package/esm/popover/confirm.type.d.ts.map +1 -1
- package/esm/popover/popover.d.ts.map +1 -1
- package/esm/popover/popover.js +29 -1
- package/esm/select/list-option.d.ts.map +1 -1
- package/esm/select/list-option.js +13 -4
- package/esm/select/list.d.ts.map +1 -1
- package/esm/select/list.js +2 -1
- package/esm/select/result-more.d.ts.map +1 -1
- package/esm/select/result-more.js +1 -1
- package/esm/select/result.d.ts.map +1 -1
- package/esm/select/result.js +10 -1
- package/esm/select/select.d.ts.map +1 -1
- package/esm/select/select.js +49 -38
- package/esm/select/select.type.d.ts +10 -2
- package/esm/select/select.type.d.ts.map +1 -1
- package/esm/skeleton/button.d.ts +8 -0
- package/esm/skeleton/button.d.ts.map +1 -0
- package/esm/skeleton/button.js +27 -0
- package/esm/skeleton/image.d.ts +8 -0
- package/esm/skeleton/image.d.ts.map +1 -0
- package/esm/skeleton/image.js +20 -0
- package/esm/skeleton/index.d.ts +3 -0
- package/esm/skeleton/index.d.ts.map +1 -0
- package/esm/skeleton/index.js +2 -0
- package/esm/skeleton/skeleton.d.ts +5 -0
- package/esm/skeleton/skeleton.d.ts.map +1 -0
- package/esm/skeleton/skeleton.js +52 -0
- package/esm/skeleton/skeleton.type.d.ts +125 -0
- package/esm/skeleton/skeleton.type.d.ts.map +1 -0
- package/esm/skeleton/skeleton.type.js +1 -0
- package/esm/skeleton/text.d.ts +8 -0
- package/esm/skeleton/text.d.ts.map +1 -0
- package/esm/skeleton/text.js +46 -0
- package/esm/sticky/sticky.d.ts.map +1 -1
- package/esm/sticky/sticky.js +6 -3
- package/esm/sticky/sticky.type.d.ts +2 -2
- package/esm/sticky/sticky.type.d.ts.map +1 -1
- package/esm/table/table.d.ts.map +1 -1
- package/esm/table/table.js +190 -44
- package/esm/table/table.type.d.ts +19 -3
- package/esm/table/table.type.d.ts.map +1 -1
- package/esm/table/tbody.d.ts +1 -1
- package/esm/table/tbody.d.ts.map +1 -1
- package/esm/table/tbody.js +18 -8
- package/esm/table/tbody.type.d.ts +2 -1
- package/esm/table/tbody.type.d.ts.map +1 -1
- package/esm/table/td.d.ts +3 -3
- package/esm/table/td.d.ts.map +1 -1
- package/esm/table/td.js +22 -18
- package/esm/table/thead-filter.d.ts.map +1 -1
- package/esm/table/thead-filter.js +20 -19
- package/esm/table/thead.d.ts.map +1 -1
- package/esm/table/thead.js +5 -1
- package/esm/table/tr.d.ts +2 -1
- package/esm/table/tr.d.ts.map +1 -1
- package/esm/table/tr.js +17 -12
- package/esm/tabs/tabs-panel.js +4 -3
- package/esm/tabs/tabs.d.ts.map +1 -1
- package/esm/tabs/tabs.js +10 -1
- package/esm/tabs/tabs.type.d.ts +6 -0
- package/esm/tabs/tabs.type.d.ts.map +1 -1
- package/esm/tag/tag.d.ts.map +1 -1
- package/esm/tag/tag.js +3 -1
- package/esm/tag/tag.type.d.ts +6 -0
- package/esm/tag/tag.type.d.ts.map +1 -1
- package/esm/tooltip/tooltip.d.ts.map +1 -1
- package/esm/tooltip/tooltip.js +21 -1
- package/esm/transfer/transfer-list.type.d.ts +1 -1
- package/esm/transfer/transfer-list.type.d.ts.map +1 -1
- package/esm/transfer/transfer.d.ts.map +1 -1
- package/esm/transfer/transfer.js +16 -2
- package/esm/transfer/transfer.type.d.ts +1 -1
- package/esm/transfer/transfer.type.d.ts.map +1 -1
- package/esm/tree/tree-checkbox.d.ts.map +1 -1
- package/esm/tree/tree-checkbox.js +4 -2
- package/esm/tree/tree-checkbox.type.d.ts +1 -0
- package/esm/tree/tree-checkbox.type.d.ts.map +1 -1
- package/esm/tree/tree-content.d.ts.map +1 -1
- package/esm/tree/tree-content.js +38 -5
- package/esm/tree/tree-content.type.d.ts +1 -2
- package/esm/tree/tree-content.type.d.ts.map +1 -1
- package/esm/tree/tree-context.d.ts +3 -3
- package/esm/tree/tree-context.d.ts.map +1 -1
- package/esm/tree/tree-context.type.d.ts +2 -1
- package/esm/tree/tree-context.type.d.ts.map +1 -1
- package/esm/tree/tree-list.type.d.ts +1 -2
- package/esm/tree/tree-list.type.d.ts.map +1 -1
- package/esm/tree/tree-node.type.d.ts +2 -4
- package/esm/tree/tree-node.type.d.ts.map +1 -1
- package/esm/tree/tree-root.type.d.ts +1 -2
- package/esm/tree/tree-root.type.d.ts.map +1 -1
- package/esm/tree/tree-virtual-node.d.ts.map +1 -1
- package/esm/tree/tree-virtual-node.js +21 -5
- package/esm/tree/tree-virtual.d.ts.map +1 -1
- package/esm/tree/tree-virtual.js +11 -4
- package/esm/tree/tree.d.ts.map +1 -1
- package/esm/tree/tree.js +11 -14
- package/esm/tree/tree.type.d.ts +26 -7
- package/esm/tree/tree.type.d.ts.map +1 -1
- package/esm/tree-select/tree-select.d.ts.map +1 -1
- package/esm/tree-select/tree-select.js +63 -40
- package/esm/tree-select/tree-select.type.d.ts +36 -2
- package/esm/tree-select/tree-select.type.d.ts.map +1 -1
- package/esm/upload/drop.d.ts +1 -0
- package/esm/upload/drop.d.ts.map +1 -1
- package/esm/upload/drop.js +43 -12
- package/esm/upload/upload.d.ts.map +1 -1
- package/esm/upload/upload.js +3 -1
- package/esm/upload/upload.type.d.ts +6 -0
- package/esm/upload/upload.type.d.ts.map +1 -1
- package/esm/virtual-scroll/scroll-table.d.ts +7 -4
- package/esm/virtual-scroll/scroll-table.d.ts.map +1 -1
- package/esm/virtual-scroll/scroll-table.js +60 -30
- package/package.json +2 -2
package/esm/table/table.js
CHANGED
|
@@ -7,7 +7,13 @@ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key i
|
|
|
7
7
|
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
|
|
8
8
|
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
9
9
|
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
10
|
-
|
|
10
|
+
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
11
|
+
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
12
|
+
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(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); }
|
|
13
|
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
|
|
14
|
+
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
|
|
15
|
+
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
16
|
+
import React, { useEffect, useMemo, useRef, useState } from 'react';
|
|
11
17
|
import Scroll from "../virtual-scroll/scroll-table";
|
|
12
18
|
import classNames from 'classnames';
|
|
13
19
|
import Spin from "../spin";
|
|
@@ -32,7 +38,7 @@ var emptyRef = {
|
|
|
32
38
|
current: null
|
|
33
39
|
};
|
|
34
40
|
export default (function (props) {
|
|
35
|
-
var _props$jssStyle, _props$jssStyle$table,
|
|
41
|
+
var _props$jssStyle, _props$jssStyle$table, _columns$find;
|
|
36
42
|
var _props$verticalAlign = props.verticalAlign,
|
|
37
43
|
verticalAlign = _props$verticalAlign === void 0 ? 'top' : _props$verticalAlign,
|
|
38
44
|
_props$size = props.size,
|
|
@@ -44,10 +50,20 @@ export default (function (props) {
|
|
|
44
50
|
var tableClasses = props === null || props === void 0 || (_props$jssStyle = props.jssStyle) === null || _props$jssStyle === void 0 || (_props$jssStyle$table = _props$jssStyle.table) === null || _props$jssStyle$table === void 0 ? void 0 : _props$jssStyle$table.call(_props$jssStyle);
|
|
45
51
|
var tbodyRef = useRef(null);
|
|
46
52
|
var theadRef = useRef(null);
|
|
53
|
+
var theadIdRef = useRef("thead-container-".concat(util.generateUUID()));
|
|
47
54
|
var tfootRef = useRef(null);
|
|
48
55
|
var scrollRef = useRef(null);
|
|
49
|
-
var
|
|
56
|
+
var headMirrorScrollRef = useRef(null);
|
|
57
|
+
var bottomMirrorScrollRef = useRef(null);
|
|
50
58
|
var tableRef = useRef(null);
|
|
59
|
+
var _useState = useState(false),
|
|
60
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
61
|
+
scrolling = _useState2[0],
|
|
62
|
+
setScrolling = _useState2[1];
|
|
63
|
+
var _useState3 = useState(false),
|
|
64
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
|
65
|
+
fakeVirtual = _useState4[0],
|
|
66
|
+
setFakeVirtual = _useState4[1];
|
|
51
67
|
var browserScrollbarWidth = useScrollbarWidth();
|
|
52
68
|
if (props.fixed) {
|
|
53
69
|
devUseWarning.deprecated('fixed', 'virtual', 'Table');
|
|
@@ -70,10 +86,11 @@ export default (function (props) {
|
|
|
70
86
|
};
|
|
71
87
|
var _useRef = useRef({
|
|
72
88
|
emptyHeight: 0,
|
|
73
|
-
theadAndTfootHeight: 0
|
|
89
|
+
theadAndTfootHeight: 0,
|
|
90
|
+
scrollingTimer: null
|
|
74
91
|
}),
|
|
75
92
|
context = _useRef.current;
|
|
76
|
-
var virtual =
|
|
93
|
+
var virtual = !fakeVirtual && props.rowsInView !== 0 && (!!props.virtual || props.fixed === 'both' || props.fixed === 'y' || props.fixed === 'auto');
|
|
77
94
|
|
|
78
95
|
// 虚拟列表高度另外计算
|
|
79
96
|
var _useResize = useResize({
|
|
@@ -204,7 +221,13 @@ export default (function (props) {
|
|
|
204
221
|
});
|
|
205
222
|
useEffect(function () {
|
|
206
223
|
var _theadRef$current, _tfootRef$current;
|
|
207
|
-
|
|
224
|
+
var theadHeight = (theadRef === null || theadRef === void 0 || (_theadRef$current = theadRef.current) === null || _theadRef$current === void 0 ? void 0 : _theadRef$current.clientHeight) || 0;
|
|
225
|
+
var tfootHeight = ((_tfootRef$current = tfootRef.current) === null || _tfootRef$current === void 0 ? void 0 : _tfootRef$current.clientHeight) || 0;
|
|
226
|
+
if (props.sticky) {
|
|
227
|
+
context.theadAndTfootHeight = tfootHeight;
|
|
228
|
+
} else {
|
|
229
|
+
context.theadAndTfootHeight = theadHeight + tfootHeight;
|
|
230
|
+
}
|
|
208
231
|
}, [theadRef.current, tfootRef.current]);
|
|
209
232
|
var virtualInfo = useTableVirtual({
|
|
210
233
|
disabled: !virtual,
|
|
@@ -219,14 +242,27 @@ export default (function (props) {
|
|
|
219
242
|
isRtl: isRtl,
|
|
220
243
|
theadAndTfootHeight: context.theadAndTfootHeight
|
|
221
244
|
});
|
|
245
|
+
var syncHeaderScroll = usePersistFn(function (left) {
|
|
246
|
+
var _tableRef$current;
|
|
247
|
+
if (props.hideHeader || !props.sticky) return;
|
|
248
|
+
|
|
249
|
+
// why use querySelectorAll: thead经历了Sticky组件的渲染再回来时,theadRef就丢失了
|
|
250
|
+
var theads = tableRef === null || tableRef === void 0 || (_tableRef$current = tableRef.current) === null || _tableRef$current === void 0 ? void 0 : _tableRef$current.querySelectorAll("[data-soui-role=".concat(theadIdRef.current, "]"));
|
|
251
|
+
theads === null || theads === void 0 || theads.forEach(function (item) {
|
|
252
|
+
item.scrollLeft = left;
|
|
253
|
+
});
|
|
254
|
+
});
|
|
222
255
|
|
|
223
256
|
// 简单表格的滚动事件
|
|
224
257
|
var handleBodyScroll = usePersistFn(function (e) {
|
|
225
258
|
var target = e.currentTarget;
|
|
226
259
|
if (!target) return;
|
|
227
260
|
layoutFunc.checkFloat();
|
|
228
|
-
if (
|
|
229
|
-
|
|
261
|
+
if (headMirrorScrollRef.current) {
|
|
262
|
+
headMirrorScrollRef.current.scrollLeft = target.scrollLeft;
|
|
263
|
+
}
|
|
264
|
+
if (bottomMirrorScrollRef.current) {
|
|
265
|
+
bottomMirrorScrollRef.current.scrollLeft = target.scrollLeft;
|
|
230
266
|
}
|
|
231
267
|
if (props.onScroll && typeof props.onScroll === 'function') {
|
|
232
268
|
var maxWidth = target.scrollWidth - target.clientWidth;
|
|
@@ -235,22 +271,34 @@ export default (function (props) {
|
|
|
235
271
|
var y = Math.min(target.scrollTop / maxHeight, 1);
|
|
236
272
|
props.onScroll(x, y, target.scrollLeft, target.scrollTop);
|
|
237
273
|
}
|
|
274
|
+
syncHeaderScroll(target.scrollLeft);
|
|
238
275
|
});
|
|
239
276
|
|
|
240
277
|
// 虚拟表格的滚动事件
|
|
241
278
|
var handleVirtualScroll = usePersistFn(function (info) {
|
|
242
279
|
virtualInfo.handleScroll(info);
|
|
243
280
|
layoutFunc.checkFloat();
|
|
244
|
-
if (
|
|
245
|
-
|
|
281
|
+
if (headMirrorScrollRef.current) {
|
|
282
|
+
headMirrorScrollRef.current.scrollLeft = info.scrollLeft;
|
|
283
|
+
}
|
|
284
|
+
if (bottomMirrorScrollRef.current) {
|
|
285
|
+
bottomMirrorScrollRef.current.scrollLeft = info.scrollLeft;
|
|
246
286
|
}
|
|
247
287
|
if (props.onScroll && typeof props.onScroll === 'function') {
|
|
248
288
|
props.onScroll(info.x, info.y, info.scrollLeft, info.scrollTop);
|
|
249
289
|
}
|
|
290
|
+
syncHeaderScroll(info.scrollLeft);
|
|
291
|
+
if (context.scrollingTimer) {
|
|
292
|
+
clearTimeout(context.scrollingTimer);
|
|
293
|
+
}
|
|
294
|
+
setScrolling(true);
|
|
295
|
+
context.scrollingTimer = setTimeout(function () {
|
|
296
|
+
setScrolling(false);
|
|
297
|
+
}, 100);
|
|
250
298
|
});
|
|
251
299
|
var renderEmpty = function renderEmpty() {
|
|
252
|
-
var _props$
|
|
253
|
-
if (!((_props$
|
|
300
|
+
var _props$data;
|
|
301
|
+
if (!((_props$data = props.data) !== null && _props$data !== void 0 && _props$data.length) || filteredData !== undefined && filteredData.length === 0) {
|
|
254
302
|
return /*#__PURE__*/_jsx("div", {
|
|
255
303
|
className: classNames(tableClasses === null || tableClasses === void 0 ? void 0 : tableClasses.emptyWrapper, isScrollX && (tableClasses === null || tableClasses === void 0 ? void 0 : tableClasses.emptyNoBorder)),
|
|
256
304
|
ref: function ref(el) {
|
|
@@ -263,14 +311,16 @@ export default (function (props) {
|
|
|
263
311
|
}
|
|
264
312
|
return null;
|
|
265
313
|
};
|
|
314
|
+
var $empty = renderEmpty();
|
|
266
315
|
var renderTable = function renderTable() {
|
|
267
|
-
var _props$summary, _sticky$top, _props$
|
|
316
|
+
var _props$summary, _sticky$top, _props$data2;
|
|
268
317
|
var Group = /*#__PURE__*/_jsx(Colgroup, {
|
|
269
318
|
colgroup: colgroup,
|
|
270
319
|
columns: columns,
|
|
271
320
|
shouldLastColAuto: !!shouldLastColAuto
|
|
272
321
|
});
|
|
273
322
|
var bodyCommonProps = {
|
|
323
|
+
virtual: props.virtual,
|
|
274
324
|
hover: props.hover,
|
|
275
325
|
disabled: props.disabled,
|
|
276
326
|
rowClickAttr: props.rowClickAttr,
|
|
@@ -339,16 +389,22 @@ export default (function (props) {
|
|
|
339
389
|
target: sticky === null || sticky === void 0 ? void 0 : sticky.target,
|
|
340
390
|
top: (_sticky$top = sticky === null || sticky === void 0 ? void 0 : sticky.top) !== null && _sticky$top !== void 0 ? _sticky$top : 0,
|
|
341
391
|
css: sticky === null || sticky === void 0 ? void 0 : sticky.css,
|
|
342
|
-
parent: tableRef === null || tableRef === void 0 ? void 0 : tableRef.current
|
|
392
|
+
parent: tableRef === null || tableRef === void 0 ? void 0 : tableRef.current,
|
|
393
|
+
onChange: function onChange(isSticky) {
|
|
394
|
+
if (isSticky) {
|
|
395
|
+
var _scrollRef$current;
|
|
396
|
+
syncHeaderScroll(((_scrollRef$current = scrollRef.current) === null || _scrollRef$current === void 0 ? void 0 : _scrollRef$current.scrollLeft) || 0);
|
|
397
|
+
}
|
|
398
|
+
}
|
|
343
399
|
};
|
|
344
|
-
var isRenderVirtualTable = virtual || props.sticky || !((_props$
|
|
345
|
-
var headWrapperClass = classNames(tableClasses === null || tableClasses === void 0 ? void 0 : tableClasses.headWrapper);
|
|
400
|
+
var isRenderVirtualTable = virtual || props.sticky || !((_props$data2 = props.data) !== null && _props$data2 !== void 0 && _props$data2.length);
|
|
401
|
+
var headWrapperClass = classNames(tableClasses === null || tableClasses === void 0 ? void 0 : tableClasses.headWrapper, !!$empty && tableClasses.emptyHeader, props.sticky && isScrollY && tableClasses.scrollY, props.sticky && !isScrollY && tableClasses.scrollX);
|
|
346
402
|
var footWrapperClass = classNames(tableClasses === null || tableClasses === void 0 ? void 0 : tableClasses.footWrapper);
|
|
347
403
|
var renderHeadMirrorScroller = function renderHeadMirrorScroller() {
|
|
348
|
-
var _scrollRef$
|
|
404
|
+
var _scrollRef$current2, _scrollRef$current3, _scrollRef$current4;
|
|
349
405
|
if (!props.showTopScrollbar) return null;
|
|
350
|
-
var scrollRefWidth = (scrollRef === null || scrollRef === void 0 || (_scrollRef$
|
|
351
|
-
var scrollRefScrollWidth = (scrollRef === null || scrollRef === void 0 || (_scrollRef$
|
|
406
|
+
var scrollRefWidth = (scrollRef === null || scrollRef === void 0 || (_scrollRef$current2 = scrollRef.current) === null || _scrollRef$current2 === void 0 ? void 0 : _scrollRef$current2.clientWidth) || 0;
|
|
407
|
+
var scrollRefScrollWidth = (scrollRef === null || scrollRef === void 0 || (_scrollRef$current3 = scrollRef.current) === null || _scrollRef$current3 === void 0 ? void 0 : _scrollRef$current3.scrollWidth) || 0;
|
|
352
408
|
var mirrorScrollRefWidth = scrollRefWidth + scrollBarWidth;
|
|
353
409
|
var showScroll = scrollRefScrollWidth > scrollRefWidth;
|
|
354
410
|
// 开启了双滚,但是没有滚动条,不显示
|
|
@@ -359,7 +415,7 @@ export default (function (props) {
|
|
|
359
415
|
});
|
|
360
416
|
return /*#__PURE__*/_jsx(StickyWrapper, _objectSpread(_objectSpread({}, props.sticky ? scrollerStickyProps : {}), {}, {
|
|
361
417
|
children: /*#__PURE__*/_jsx("div", {
|
|
362
|
-
className: tableClasses === null || tableClasses === void 0 ? void 0 : tableClasses.
|
|
418
|
+
className: tableClasses === null || tableClasses === void 0 ? void 0 : tableClasses.mirrorScroller,
|
|
363
419
|
style: {
|
|
364
420
|
height: browserScrollbarWidth,
|
|
365
421
|
width: mirrorScrollRefWidth
|
|
@@ -370,48 +426,102 @@ export default (function (props) {
|
|
|
370
426
|
scrollRef.current.scrollLeft = target.scrollLeft;
|
|
371
427
|
}
|
|
372
428
|
},
|
|
373
|
-
ref:
|
|
429
|
+
ref: headMirrorScrollRef,
|
|
374
430
|
children: /*#__PURE__*/_jsx("div", {
|
|
375
431
|
style: {
|
|
376
|
-
width: scrollRef === null || scrollRef === void 0 || (_scrollRef$
|
|
432
|
+
width: scrollRef === null || scrollRef === void 0 || (_scrollRef$current4 = scrollRef.current) === null || _scrollRef$current4 === void 0 ? void 0 : _scrollRef$current4.scrollWidth,
|
|
377
433
|
height: 1
|
|
378
434
|
}
|
|
379
435
|
})
|
|
380
436
|
})
|
|
381
437
|
}));
|
|
382
438
|
};
|
|
439
|
+
var renderBottomMirrorScroller = function renderBottomMirrorScroller() {
|
|
440
|
+
var _scrollRef$current5, _scrollRef$current6, _scrollRef$current7;
|
|
441
|
+
if (!props.showBottomScrollbar) return null;
|
|
442
|
+
var scrollRefWidth = (scrollRef === null || scrollRef === void 0 || (_scrollRef$current5 = scrollRef.current) === null || _scrollRef$current5 === void 0 ? void 0 : _scrollRef$current5.clientWidth) || 0;
|
|
443
|
+
var scrollRefScrollWidth = (scrollRef === null || scrollRef === void 0 || (_scrollRef$current6 = scrollRef.current) === null || _scrollRef$current6 === void 0 ? void 0 : _scrollRef$current6.scrollWidth) || 0;
|
|
444
|
+
var mirrorScrollRefWidth = scrollRefWidth + scrollBarWidth;
|
|
445
|
+
var showScroll = scrollRefScrollWidth > scrollRefWidth;
|
|
446
|
+
// 开启了双滚,但是没有滚动条,不显示
|
|
447
|
+
if (!scrollRefWidth || !mirrorScrollRefWidth || !showScroll) return null;
|
|
448
|
+
var options = props.showBottomScrollbar === true ? {} : props.showBottomScrollbar;
|
|
449
|
+
var scrollerStickyProps = {
|
|
450
|
+
bottom: options.bottom || 0,
|
|
451
|
+
zIndex: options.zIndex || defaultZIndex + 1,
|
|
452
|
+
parent: tableRef === null || tableRef === void 0 ? void 0 : tableRef.current
|
|
453
|
+
};
|
|
454
|
+
return /*#__PURE__*/_jsx(Sticky, _objectSpread(_objectSpread({}, scrollerStickyProps), {}, {
|
|
455
|
+
children: /*#__PURE__*/_jsx("div", {
|
|
456
|
+
className: tableClasses === null || tableClasses === void 0 ? void 0 : tableClasses.mirrorScroller,
|
|
457
|
+
style: {
|
|
458
|
+
height: browserScrollbarWidth,
|
|
459
|
+
width: mirrorScrollRefWidth,
|
|
460
|
+
marginTop: -browserScrollbarWidth
|
|
461
|
+
},
|
|
462
|
+
onScroll: function onScroll(e) {
|
|
463
|
+
var target = e.currentTarget;
|
|
464
|
+
if (scrollRef !== null && scrollRef !== void 0 && scrollRef.current && scrollRef.current.scrollLeft !== target.scrollLeft) {
|
|
465
|
+
scrollRef.current.scrollLeft = target.scrollLeft;
|
|
466
|
+
}
|
|
467
|
+
},
|
|
468
|
+
ref: bottomMirrorScrollRef,
|
|
469
|
+
children: /*#__PURE__*/_jsx("div", {
|
|
470
|
+
style: {
|
|
471
|
+
width: scrollRef === null || scrollRef === void 0 || (_scrollRef$current7 = scrollRef.current) === null || _scrollRef$current7 === void 0 ? void 0 : _scrollRef$current7.scrollWidth,
|
|
472
|
+
height: 1
|
|
473
|
+
}
|
|
474
|
+
})
|
|
475
|
+
})
|
|
476
|
+
}));
|
|
477
|
+
};
|
|
478
|
+
var $headTable = /*#__PURE__*/_jsx("div", _objectSpread(_objectSpread({
|
|
479
|
+
className: headWrapperClass
|
|
480
|
+
}, util.getDataAttribute({
|
|
481
|
+
role: theadIdRef.current
|
|
482
|
+
})), {}, {
|
|
483
|
+
children: /*#__PURE__*/_jsxs("table", {
|
|
484
|
+
style: {
|
|
485
|
+
width: width
|
|
486
|
+
},
|
|
487
|
+
ref: theadRef,
|
|
488
|
+
children: [Group, /*#__PURE__*/_jsx(Thead, _objectSpread({}, headCommonProps))]
|
|
489
|
+
})
|
|
490
|
+
}));
|
|
383
491
|
if (isRenderVirtualTable) {
|
|
384
|
-
var _props$
|
|
492
|
+
var _props$data3;
|
|
493
|
+
var showStickyHeader = !props.hideHeader && props.sticky;
|
|
385
494
|
return /*#__PURE__*/_jsxs(_Fragment, {
|
|
386
|
-
children: [renderHeadMirrorScroller(), /*#__PURE__*/
|
|
495
|
+
children: [renderHeadMirrorScroller(), showStickyHeader && /*#__PURE__*/_jsx(StickyWrapper, _objectSpread(_objectSpread({}, stickyProps), {}, {
|
|
496
|
+
children: $headTable
|
|
497
|
+
})), /*#__PURE__*/_jsxs(Scroll, {
|
|
498
|
+
style: {
|
|
499
|
+
display: 'flex',
|
|
500
|
+
minWidth: 0,
|
|
501
|
+
minHeight: 0,
|
|
502
|
+
flex: 1
|
|
503
|
+
},
|
|
387
504
|
wrapperRef: scrollRef,
|
|
388
505
|
scrollWidth: width || 1,
|
|
389
506
|
scrollHeight: virtual ? virtualInfo.scrollHeight : tbodyHeight,
|
|
390
507
|
onScroll: handleVirtualScroll,
|
|
391
508
|
defaultHeight: context.emptyHeight,
|
|
392
509
|
isScrollY: isScrollY,
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
style: {
|
|
399
|
-
width: width
|
|
400
|
-
},
|
|
401
|
-
ref: theadRef,
|
|
402
|
-
children: [Group, /*#__PURE__*/_jsx(Thead, _objectSpread({}, headCommonProps))]
|
|
403
|
-
})
|
|
404
|
-
})
|
|
405
|
-
})), !!((_props$data5 = props.data) !== null && _props$data5 !== void 0 && _props$data5.length) && /*#__PURE__*/_jsxs("table", {
|
|
510
|
+
isScrollX: isScrollX,
|
|
511
|
+
isEmpty: !!$empty,
|
|
512
|
+
tableRef: tableRef,
|
|
513
|
+
setFakeVirtual: setFakeVirtual,
|
|
514
|
+
children: [!props.hideHeader && !props.sticky && $headTable, !!((_props$data3 = props.data) !== null && _props$data3 !== void 0 && _props$data3.length) && /*#__PURE__*/_jsxs("table", {
|
|
406
515
|
style: {
|
|
407
516
|
width: width,
|
|
408
|
-
transform: virtualInfo.
|
|
517
|
+
transform: virtualInfo.translateStyle
|
|
409
518
|
},
|
|
410
519
|
ref: tbodyRef,
|
|
411
520
|
children: [Group, /*#__PURE__*/_jsx(Tbody, _objectSpread(_objectSpread({}, bodyCommonProps), {}, {
|
|
412
521
|
currentIndex: virtualInfo.startIndex,
|
|
413
522
|
data: virtualInfo.data,
|
|
414
|
-
setRowHeight: virtualInfo.setRowHeight
|
|
523
|
+
setRowHeight: virtualInfo.setRowHeight,
|
|
524
|
+
scrolling: scrolling
|
|
415
525
|
}))]
|
|
416
526
|
}), showFoot ? /*#__PURE__*/_jsx("div", {
|
|
417
527
|
className: footWrapperClass,
|
|
@@ -422,8 +532,8 @@ export default (function (props) {
|
|
|
422
532
|
ref: tfootRef,
|
|
423
533
|
children: [Group, /*#__PURE__*/_jsx(Tfoot, _objectSpread({}, footCommonProps))]
|
|
424
534
|
})
|
|
425
|
-
}) : null,
|
|
426
|
-
})]
|
|
535
|
+
}) : null, $empty]
|
|
536
|
+
}), renderBottomMirrorScroller()]
|
|
427
537
|
});
|
|
428
538
|
}
|
|
429
539
|
return /*#__PURE__*/_jsxs(_Fragment, {
|
|
@@ -438,9 +548,9 @@ export default (function (props) {
|
|
|
438
548
|
ref: tbodyRef,
|
|
439
549
|
children: [Group, !props.hideHeader && /*#__PURE__*/_jsx(Thead, _objectSpread({}, headCommonProps)), bodyCommonProps.data.length === 0 ? /*#__PURE__*/_jsx(TbodyEmpty, {
|
|
440
550
|
children: renderEmpty()
|
|
441
|
-
}) : /*#__PURE__*/_jsx(Tbody, _objectSpread({}, bodyCommonProps)), /*#__PURE__*/_jsx(Tfoot, _objectSpread({}, footCommonProps))]
|
|
551
|
+
}) : /*#__PURE__*/_jsx(Tbody, _objectSpread({}, bodyCommonProps)), showFoot && /*#__PURE__*/_jsx(Tfoot, _objectSpread({}, footCommonProps))]
|
|
442
552
|
})
|
|
443
|
-
})]
|
|
553
|
+
}), renderBottomMirrorScroller()]
|
|
444
554
|
});
|
|
445
555
|
};
|
|
446
556
|
var renderLoading = function renderLoading() {
|
|
@@ -460,6 +570,42 @@ export default (function (props) {
|
|
|
460
570
|
align: "right"
|
|
461
571
|
}, pagination), paginationInfo));
|
|
462
572
|
};
|
|
573
|
+
|
|
574
|
+
// handle head and foot scroll
|
|
575
|
+
var handleHeaderWheel = usePersistFn(function (e) {
|
|
576
|
+
var _theadRef$current2;
|
|
577
|
+
var scrollEl = scrollRef.current;
|
|
578
|
+
if (!scrollEl) return;
|
|
579
|
+
if (!(theadRef !== null && theadRef !== void 0 && (_theadRef$current2 = theadRef.current) !== null && _theadRef$current2 !== void 0 && _theadRef$current2.parentElement)) return;
|
|
580
|
+
var max = scrollEl.scrollWidth - scrollEl.clientWidth;
|
|
581
|
+
var scrollLeft = scrollEl.scrollLeft + e.deltaX;
|
|
582
|
+
if (scrollLeft === scrollEl.scrollLeft) {
|
|
583
|
+
return;
|
|
584
|
+
}
|
|
585
|
+
e.preventDefault();
|
|
586
|
+
var left = Math.min(Math.max(scrollLeft, 0), max);
|
|
587
|
+
scrollEl.scrollLeft = left;
|
|
588
|
+
theadRef.current.parentElement.scrollLeft = left;
|
|
589
|
+
});
|
|
590
|
+
useEffect(function () {
|
|
591
|
+
var _scrollRef$current8;
|
|
592
|
+
if (!props.sticky || !scrollRef.current || !isScrollX) return;
|
|
593
|
+
// sticky场景下,从空数据到有数据切换时,同步一次滚动条的位置
|
|
594
|
+
syncHeaderScroll(((_scrollRef$current8 = scrollRef.current) === null || _scrollRef$current8 === void 0 ? void 0 : _scrollRef$current8.scrollLeft) || 0);
|
|
595
|
+
}, [isScrollX, props.sticky, $empty]);
|
|
596
|
+
useEffect(function () {
|
|
597
|
+
// 绑定 wheel 事件
|
|
598
|
+
if (props.sticky && theadRef.current && theadRef.current.parentElement) {
|
|
599
|
+
theadRef.current.parentElement.addEventListener('wheel', handleHeaderWheel, {
|
|
600
|
+
passive: false
|
|
601
|
+
});
|
|
602
|
+
}
|
|
603
|
+
return function () {
|
|
604
|
+
if (props.sticky && theadRef.current && theadRef.current.parentElement) {
|
|
605
|
+
theadRef.current.parentElement.removeEventListener('wheel', handleHeaderWheel);
|
|
606
|
+
}
|
|
607
|
+
};
|
|
608
|
+
}, [theadRef.current, props.sticky, isScrollY]);
|
|
463
609
|
var getRenderIndexByData = function getRenderIndexByData(data) {
|
|
464
610
|
var originKey = typeof data === 'string' ? data : util.getKey(props.keygen, data);
|
|
465
611
|
var index = treeData.findIndex(function (item) {
|
|
@@ -495,7 +641,7 @@ export default (function (props) {
|
|
|
495
641
|
});
|
|
496
642
|
return /*#__PURE__*/_jsxs(_Fragment, {
|
|
497
643
|
children: [/*#__PURE__*/_jsx("div", _objectSpread(_objectSpread({
|
|
498
|
-
className: classNames(tableWrapperClass,
|
|
644
|
+
className: classNames(tableWrapperClass, _defineProperty(_defineProperty(_defineProperty({}, tableClasses.sticky, props.sticky), tableClasses.floatLeft, floatLeft), tableClasses.floatRight, floatRight)),
|
|
499
645
|
style: _objectSpread({
|
|
500
646
|
height: defaultHeight
|
|
501
647
|
}, props.style)
|
|
@@ -18,6 +18,7 @@ import { RadioClasses } from '../radio/radio.type';
|
|
|
18
18
|
import { PopoverClasses } from '../popover/popover.type';
|
|
19
19
|
import { TreeClasses } from '../tree/tree.type';
|
|
20
20
|
import { KeygenResult } from '@sheinx/hooks';
|
|
21
|
+
import { StickyProps } from '../sticky';
|
|
21
22
|
export type ListDatum = ReturnType<typeof useListSelect<any, any>>;
|
|
22
23
|
export type UseTreeResult = ReturnType<typeof useTableTree>;
|
|
23
24
|
export interface TableClasses {
|
|
@@ -35,12 +36,15 @@ export interface TableClasses {
|
|
|
35
36
|
simple: string;
|
|
36
37
|
striped: string;
|
|
37
38
|
loading: string;
|
|
38
|
-
|
|
39
|
+
mirrorScroller: string;
|
|
39
40
|
headWrapper: string;
|
|
40
41
|
bodyWrapper: string;
|
|
41
42
|
footWrapper: string;
|
|
42
43
|
emptyWrapper: string;
|
|
43
44
|
emptyNoBorder: string;
|
|
45
|
+
emptyHeader: string;
|
|
46
|
+
scrollY: string;
|
|
47
|
+
scrollX: string;
|
|
44
48
|
cellAlignLeft: string;
|
|
45
49
|
cellAlignRight: string;
|
|
46
50
|
cellAlignCenter: string;
|
|
@@ -202,9 +206,9 @@ export interface TableProps<DataItem, Value> extends Pick<CommonType, 'className
|
|
|
202
206
|
fixed?: TableFix | 'auto';
|
|
203
207
|
/**
|
|
204
208
|
* @en Whether to use virtual list
|
|
205
|
-
* @cn
|
|
209
|
+
* @cn 是否使用虚拟列表,设置为 lazy 时,表示在滚动时不触发 rerender
|
|
206
210
|
*/
|
|
207
|
-
virtual?: boolean;
|
|
211
|
+
virtual?: boolean | 'lazy';
|
|
208
212
|
/**
|
|
209
213
|
* @en The maximum number of rows for a single render. Table uses lazy render to optimize performance under large amounts of data. If your table displays more than 20 rows, you can change the value of rowsInView. Value of 0 render all data.
|
|
210
214
|
* @cn 单次 render的 最大行数。Table 采用了 lazy render 的方式来优化在大量数据下的性能,如果你的表格显示的高度超出了20条,可以调整 rowsInView 的值。为 0 表示单次 render 所有数据。
|
|
@@ -333,6 +337,7 @@ export interface TableProps<DataItem, Value> extends Pick<CommonType, 'className
|
|
|
333
337
|
sticky?: boolean | {
|
|
334
338
|
top?: number;
|
|
335
339
|
css?: boolean;
|
|
340
|
+
target?: Element | null;
|
|
336
341
|
};
|
|
337
342
|
/**
|
|
338
343
|
* @en Whether to show the top scroller
|
|
@@ -341,6 +346,13 @@ export interface TableProps<DataItem, Value> extends Pick<CommonType, 'className
|
|
|
341
346
|
* @version 3.4.0
|
|
342
347
|
*/
|
|
343
348
|
showTopScrollbar?: boolean;
|
|
349
|
+
/**
|
|
350
|
+
* @en Whether to show the bottom scroller
|
|
351
|
+
* @cn 是否开启底部自定吸附的滚动条
|
|
352
|
+
* @default false
|
|
353
|
+
* @version 3.7.0
|
|
354
|
+
*/
|
|
355
|
+
showBottomScrollbar?: boolean | BottomScrollbarOption;
|
|
344
356
|
/**
|
|
345
357
|
* @en Table instance (please use with caution: only fixed Table)
|
|
346
358
|
* @cn Table 实例(请谨慎使用:仅虚拟列表支持)
|
|
@@ -352,6 +364,9 @@ export interface TableProps<DataItem, Value> extends Pick<CommonType, 'className
|
|
|
352
364
|
*/
|
|
353
365
|
onRowSelect?: (rows: Value) => void;
|
|
354
366
|
}
|
|
367
|
+
interface BottomScrollbarOption extends Pick<StickyProps, 'bottom'> {
|
|
368
|
+
zIndex?: number;
|
|
369
|
+
}
|
|
355
370
|
export interface SorterInfo {
|
|
356
371
|
order?: ColumnOrder;
|
|
357
372
|
/**
|
|
@@ -389,4 +404,5 @@ export interface SummaryItem {
|
|
|
389
404
|
* @title TableColumn
|
|
390
405
|
*/
|
|
391
406
|
export type ColumnItem<DataItem> = TableColumnItem<DataItem>;
|
|
407
|
+
export {};
|
|
392
408
|
//# sourceMappingURL=table.type.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"table.type.d.ts","sourceRoot":"","sources":["table.type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,KAAK,EAAE,UAAU,EAAE,eAAe,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC5F,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAChE,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"table.type.d.ts","sourceRoot":"","sources":["table.type.ts"],"names":[],"mappings":"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"}
|
package/esm/table/tbody.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { TbodyProps } from './tbody.type';
|
|
2
|
-
declare const _default: (props: TbodyProps) => import("react/jsx-runtime").JSX.Element;
|
|
2
|
+
declare const _default: (props: TbodyProps) => import("react/jsx-runtime").JSX.Element | undefined;
|
|
3
3
|
export default _default;
|
|
4
4
|
//# sourceMappingURL=tbody.d.ts.map
|
package/esm/table/tbody.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tbody.d.ts","sourceRoot":"","sources":["tbody.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;gCAEnB,UAAU;AAAjC,
|
|
1
|
+
{"version":3,"file":"tbody.d.ts","sourceRoot":"","sources":["tbody.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;gCAEnB,UAAU;AAAjC,wBAsFE"}
|
package/esm/table/tbody.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import { useTableRow, useTableExpand, util } from '@sheinx/hooks';
|
|
2
|
+
import { useTableRow, useTableExpand, util, useComponentMemo } from '@sheinx/hooks';
|
|
3
3
|
import Tr from "./tr";
|
|
4
4
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
5
5
|
export default (function (props) {
|
|
@@ -30,9 +30,10 @@ export default (function (props) {
|
|
|
30
30
|
return col.type === 'expand' || col.type === 'row-expand';
|
|
31
31
|
});
|
|
32
32
|
var renderRow = function renderRow(item, index) {
|
|
33
|
+
var _props$rowEvents;
|
|
33
34
|
var rowIndex = index + currentIndex;
|
|
34
35
|
var originKey = util.getKey(props.keygen, item, rowIndex);
|
|
35
|
-
var trRenderKey = props.loader ? originKey : "".concat(originKey, "-").concat(rowIndex);
|
|
36
|
+
var trRenderKey = props.loader || (_props$rowEvents = props.rowEvents) !== null && _props$rowEvents !== void 0 && _props$rowEvents.draggable ? originKey : "".concat(originKey, "-").concat(rowIndex);
|
|
36
37
|
return /*#__PURE__*/_jsx(Tr, {
|
|
37
38
|
originKey: originKey,
|
|
38
39
|
row: rowData[index],
|
|
@@ -72,12 +73,21 @@ export default (function (props) {
|
|
|
72
73
|
bodyScrollWidth: props.bodyScrollWidth,
|
|
73
74
|
resizeFlag: props.resizeFlag,
|
|
74
75
|
treeCheckAll: props.treeCheckAll,
|
|
75
|
-
onCellClick: props.onCellClick
|
|
76
|
+
onCellClick: props.onCellClick,
|
|
77
|
+
virtual: props.virtual,
|
|
78
|
+
scrolling: props.scrolling
|
|
76
79
|
}, trRenderKey);
|
|
77
80
|
};
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
81
|
+
var $tbody = useComponentMemo(function () {
|
|
82
|
+
return /*#__PURE__*/_jsx("tbody", {
|
|
83
|
+
children: (props.data || []).map(function (item, index) {
|
|
84
|
+
return renderRow(item, index);
|
|
85
|
+
})
|
|
86
|
+
});
|
|
87
|
+
}, [props.data, currentIndex], props.virtual === 'lazy' ? function (prev, next) {
|
|
88
|
+
return prev.some(function (_, index) {
|
|
89
|
+
return !util.shallowEqual(prev === null || prev === void 0 ? void 0 : prev[index], next === null || next === void 0 ? void 0 : next[index]);
|
|
90
|
+
}) || !props.scrolling;
|
|
91
|
+
} : undefined);
|
|
92
|
+
return $tbody;
|
|
83
93
|
});
|
|
@@ -3,7 +3,7 @@ import { TableProps, ListDatum, UseTreeResult } from './table.type';
|
|
|
3
3
|
import type { TableFormatColumn, OptionalToRequired } from '@sheinx/hooks';
|
|
4
4
|
export type UseColumnsResult = ReturnType<typeof useTableColumns>;
|
|
5
5
|
export type UseTableRowResult = ReturnType<typeof useTableRow>;
|
|
6
|
-
export interface TbodyProps extends Pick<OptionalToRequired<TableProps<any, any>>, 'data' | 'jssStyle' | 'rowClassName' | 'expandKeys' | 'keygen' | 'treeEmptyExpand' | 'expandIcon' | 'treeExpandIcon' | 'loader' | 'striped' | 'radio' | 'onRowClick' | 'rowClickAttr' | 'rowEvents' | 'disabled' | 'hover' | 'treeCheckAll' | 'onCellClick'> {
|
|
6
|
+
export interface TbodyProps extends Pick<OptionalToRequired<TableProps<any, any>>, 'data' | 'jssStyle' | 'rowClassName' | 'expandKeys' | 'keygen' | 'treeEmptyExpand' | 'expandIcon' | 'treeExpandIcon' | 'loader' | 'striped' | 'radio' | 'onRowClick' | 'rowClickAttr' | 'rowEvents' | 'disabled' | 'hover' | 'treeCheckAll' | 'onCellClick' | 'virtual'> {
|
|
7
7
|
columns: TableFormatColumn<any>[];
|
|
8
8
|
data: any[];
|
|
9
9
|
colgroup: (number | string | undefined)[];
|
|
@@ -18,5 +18,6 @@ export interface TbodyProps extends Pick<OptionalToRequired<TableProps<any, any>
|
|
|
18
18
|
setRowHeight?: (index: number, height: number) => void;
|
|
19
19
|
bodyScrollWidth?: number;
|
|
20
20
|
resizeFlag?: number;
|
|
21
|
+
scrolling?: boolean;
|
|
21
22
|
}
|
|
22
23
|
//# sourceMappingURL=tbody.type.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tbody.type.d.ts","sourceRoot":"","sources":["tbody.type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC7D,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AACpE,OAAO,KAAK,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAE3E,MAAM,MAAM,gBAAgB,GAAG,UAAU,CAAC,OAAO,eAAe,CAAC,CAAC;AAClE,MAAM,MAAM,iBAAiB,GAAG,UAAU,CAAC,OAAO,WAAW,CAAC,CAAC;AAE/D,MAAM,WAAW,UACf,SAAQ,IAAI,CACV,kBAAkB,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,EACtC,MAAM,GACN,UAAU,GACV,cAAc,GACd,YAAY,GACZ,QAAQ,GACR,iBAAiB,GACjB,YAAY,GACZ,gBAAgB,GAChB,QAAQ,GACR,SAAS,GACT,OAAO,GACP,YAAY,GACZ,cAAc,GACd,WAAW,GACX,UAAU,GACV,OAAO,GACP,cAAc,GACd,aAAa,
|
|
1
|
+
{"version":3,"file":"tbody.type.d.ts","sourceRoot":"","sources":["tbody.type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC7D,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AACpE,OAAO,KAAK,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAE3E,MAAM,MAAM,gBAAgB,GAAG,UAAU,CAAC,OAAO,eAAe,CAAC,CAAC;AAClE,MAAM,MAAM,iBAAiB,GAAG,UAAU,CAAC,OAAO,WAAW,CAAC,CAAC;AAE/D,MAAM,WAAW,UACf,SAAQ,IAAI,CACV,kBAAkB,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,EACtC,MAAM,GACN,UAAU,GACV,cAAc,GACd,YAAY,GACZ,QAAQ,GACR,iBAAiB,GACjB,YAAY,GACZ,gBAAgB,GAChB,QAAQ,GACR,SAAS,GACT,OAAO,GACP,YAAY,GACZ,cAAc,GACd,WAAW,GACX,UAAU,GACV,OAAO,GACP,cAAc,GACd,aAAa,GACb,SAAS,CACZ;IACD,OAAO,EAAE,iBAAiB,CAAC,GAAG,CAAC,EAAE,CAAC;IAClC,IAAI,EAAE,GAAG,EAAE,CAAC;IACZ,QAAQ,EAAE,CAAC,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC,EAAE,CAAC;IAC1C,SAAS,EAAE,OAAO,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,gBAAgB,CAAC,eAAe,CAAC,CAAC;IACjD,KAAK,EAAE,SAAS,CAAC;IACjB,QAAQ,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAChC,eAAe,EAAE,aAAa,CAAC,iBAAiB,CAAC,CAAC;IAClD,WAAW,EAAE,OAAO,GAAG,SAAS,CAAC;IACjC,eAAe,EAAE,MAAM,GAAG,SAAS,CAAC;IACpC,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IACvD,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB"}
|
package/esm/table/td.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import { ShouldUpdate } from '@sheinx/hooks';
|
|
3
2
|
import type { TableFormatColumn } from '@sheinx/hooks';
|
|
4
|
-
|
|
3
|
+
import { TbodyProps } from './tbody.type';
|
|
4
|
+
interface TdProps extends Pick<TbodyProps, 'virtual'> {
|
|
5
5
|
col: TableFormatColumn<any>;
|
|
6
6
|
data: any[];
|
|
7
7
|
colSpan: number;
|
|
@@ -13,8 +13,8 @@ interface TdProps {
|
|
|
13
13
|
onMouseEnter?: () => void;
|
|
14
14
|
onMouseLeave?: () => void;
|
|
15
15
|
onClick?: () => void;
|
|
16
|
-
shouldUpdate?: ShouldUpdate<any>;
|
|
17
16
|
renderContent: (col: TableFormatColumn<any>, data: any[]) => React.ReactNode;
|
|
17
|
+
scrolling?: boolean;
|
|
18
18
|
}
|
|
19
19
|
export default function Td(props: TdProps): JSX.Element;
|
|
20
20
|
export {};
|
package/esm/table/td.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"td.d.ts","sourceRoot":"","sources":["td.tsx"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"td.d.ts","sourceRoot":"","sources":["td.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAoB,MAAM,OAAO,CAAC;AAEzC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,UAAU,OAAQ,SAAQ,IAAI,CAAC,UAAU,EAAI,SAAS,CAAC;IACrD,GAAG,EAAE,iBAAiB,CAAC,GAAG,CAAC,CAAC;IAC5B,IAAI,EAAE,GAAG,EAAE,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IAC5B,SAAS,EAAE,KAAK,GAAG,KAAK,CAAC;IACzB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;IAC1B,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;IAC1B,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,aAAa,EAAE,CAAC,GAAG,EAAE,iBAAiB,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,KAAK,CAAC,SAAS,CAAC;IAC7E,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,MAAM,CAAC,OAAO,UAAU,EAAE,CAAC,KAAK,EAAE,OAAO,GAAG,GAAG,CAAC,OAAO,CAiEtD"}
|