shineout 3.9.14 → 3.9.15-beta.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/cjs/index.js +1 -1
- package/dist/shineout.js +165 -18
- package/dist/shineout.js.map +1 -1
- package/dist/shineout.min.js +1 -1
- package/dist/shineout.min.js.map +1 -1
- package/esm/index.js +1 -1
- package/package.json +5 -5
package/cjs/index.js
CHANGED
|
@@ -522,5 +522,5 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
|
|
|
522
522
|
// 此文件由脚本自动生成,请勿直接修改。
|
|
523
523
|
// This file was generated automatically by a script. Please do not modify it directly.
|
|
524
524
|
var _default = exports.default = {
|
|
525
|
-
version: '3.9.
|
|
525
|
+
version: '3.9.15-beta.2'
|
|
526
526
|
};
|
package/dist/shineout.js
CHANGED
|
@@ -12326,7 +12326,7 @@ var handleStyle = function handleStyle(style) {
|
|
|
12326
12326
|
};
|
|
12327
12327
|
/* harmony default export */ var jss_style_handleStyle = (handleStyle);
|
|
12328
12328
|
;// CONCATENATED MODULE: ../shineout-style/src/version.ts
|
|
12329
|
-
/* harmony default export */ var version = ('3.9.
|
|
12329
|
+
/* harmony default export */ var version = ('3.9.15-beta.2');
|
|
12330
12330
|
;// CONCATENATED MODULE: ../shineout-style/src/jss-style/index.tsx
|
|
12331
12331
|
|
|
12332
12332
|
|
|
@@ -55557,12 +55557,14 @@ var showGallery = function showGallery(jssStyle, images) {
|
|
|
55557
55557
|
var container = image_event_getContainer();
|
|
55558
55558
|
document.addEventListener('keydown', keyClose);
|
|
55559
55559
|
container.className = containerClass || '';
|
|
55560
|
-
|
|
55561
|
-
|
|
55562
|
-
|
|
55563
|
-
|
|
55564
|
-
|
|
55565
|
-
|
|
55560
|
+
setTimeout(function () {
|
|
55561
|
+
image_event_ReactRender( /*#__PURE__*/(0,jsx_runtime.jsx)(image_gallery, {
|
|
55562
|
+
jssStyle: jssStyle,
|
|
55563
|
+
onClose: image_event_close,
|
|
55564
|
+
current: current,
|
|
55565
|
+
images: Images
|
|
55566
|
+
}), container);
|
|
55567
|
+
}, 0);
|
|
55566
55568
|
};
|
|
55567
55569
|
/* harmony default export */ var image_event = (showGallery);
|
|
55568
55570
|
;// CONCATENATED MODULE: ../hooks/src/utils/style-unit.ts
|
|
@@ -66294,12 +66296,89 @@ var useTableSort = function useTableSort(props) {
|
|
|
66294
66296
|
};
|
|
66295
66297
|
};
|
|
66296
66298
|
/* harmony default export */ var use_table_sort = (useTableSort);
|
|
66299
|
+
;// CONCATENATED MODULE: ../hooks/src/components/use-table/use-table-virtual-external.tsx
|
|
66300
|
+
|
|
66301
|
+
|
|
66302
|
+
|
|
66303
|
+
var useTableVirtualExternal = function useTableVirtualExternal(props) {
|
|
66304
|
+
var _useState = (0,external_root_React_commonjs2_react_commonjs_react_amd_react_.useState)(0),
|
|
66305
|
+
_useState2 = slicedToArray_default()(_useState, 2),
|
|
66306
|
+
headerOffset = _useState2[0],
|
|
66307
|
+
setHeaderOffset = _useState2[1];
|
|
66308
|
+
var externalStickyRef = (0,external_root_React_commonjs2_react_commonjs_react_amd_react_.useRef)(null);
|
|
66309
|
+
var tableOffsetRef = (0,external_root_React_commonjs2_react_commonjs_react_amd_react_.useRef)(0);
|
|
66310
|
+
var handleExternalScroll = usePersistFn(function () {
|
|
66311
|
+
var _props$tableRef, _externalStickyRef$cu;
|
|
66312
|
+
if (props.disabled) return;
|
|
66313
|
+
var container = props.virtualScrollContainer();
|
|
66314
|
+
var tableEl = (_props$tableRef = props.tableRef) === null || _props$tableRef === void 0 ? void 0 : _props$tableRef.current;
|
|
66315
|
+
if (!container || !tableEl) return;
|
|
66316
|
+
if (tableOffsetRef.current === 0) {
|
|
66317
|
+
if (container === document.documentElement || container === document.body) {
|
|
66318
|
+
tableOffsetRef.current = tableEl.getBoundingClientRect().top + window.scrollY;
|
|
66319
|
+
} else {
|
|
66320
|
+
tableOffsetRef.current = tableEl.getBoundingClientRect().top - container.getBoundingClientRect().top + container.scrollTop;
|
|
66321
|
+
}
|
|
66322
|
+
}
|
|
66323
|
+
var rawScrollTop;
|
|
66324
|
+
if (container === document.documentElement || container === document.body) {
|
|
66325
|
+
var rect = tableEl.getBoundingClientRect();
|
|
66326
|
+
rawScrollTop = -rect.top;
|
|
66327
|
+
} else {
|
|
66328
|
+
var containerRect = container.getBoundingClientRect();
|
|
66329
|
+
var tableRect = tableEl.getBoundingClientRect();
|
|
66330
|
+
rawScrollTop = containerRect.top - tableRect.top;
|
|
66331
|
+
}
|
|
66332
|
+
if (rawScrollTop < 0) rawScrollTop = 0;
|
|
66333
|
+
var sumHeight = props.getContentHeight(props.dataLength - 1);
|
|
66334
|
+
var viewportHeight = ((_externalStickyRef$cu = externalStickyRef.current) === null || _externalStickyRef$cu === void 0 ? void 0 : _externalStickyRef$cu.clientHeight) || container.clientHeight;
|
|
66335
|
+
var scrollTop;
|
|
66336
|
+
var max;
|
|
66337
|
+
if (props.externalStickyHeader) {
|
|
66338
|
+
max = sumHeight - props.tfootHeight - viewportHeight;
|
|
66339
|
+
scrollTop = rawScrollTop;
|
|
66340
|
+
} else {
|
|
66341
|
+
var newHeaderOffset = Math.min(rawScrollTop, props.theadHeight);
|
|
66342
|
+
if (newHeaderOffset !== headerOffset) {
|
|
66343
|
+
setHeaderOffset(newHeaderOffset);
|
|
66344
|
+
}
|
|
66345
|
+
max = sumHeight - props.theadHeight - props.tfootHeight - viewportHeight;
|
|
66346
|
+
scrollTop = rawScrollTop - props.theadHeight;
|
|
66347
|
+
if (scrollTop < 0) scrollTop = 0;
|
|
66348
|
+
}
|
|
66349
|
+
if (max > 0 && scrollTop > max) {
|
|
66350
|
+
scrollTop = max;
|
|
66351
|
+
}
|
|
66352
|
+
props.updateIndexAndTopFromTop(scrollTop);
|
|
66353
|
+
});
|
|
66354
|
+
(0,external_root_React_commonjs2_react_commonjs_react_amd_react_.useEffect)(function () {
|
|
66355
|
+
if (props.disabled) return;
|
|
66356
|
+
var container = props.virtualScrollContainer();
|
|
66357
|
+
if (!container) return;
|
|
66358
|
+
var scrollTarget = container === document.documentElement || container === document.body ? window : container;
|
|
66359
|
+
scrollTarget.addEventListener('scroll', handleExternalScroll, {
|
|
66360
|
+
passive: true
|
|
66361
|
+
});
|
|
66362
|
+
handleExternalScroll();
|
|
66363
|
+
return function () {
|
|
66364
|
+
scrollTarget.removeEventListener('scroll', handleExternalScroll);
|
|
66365
|
+
};
|
|
66366
|
+
}, [props.disabled, props.dataLength]);
|
|
66367
|
+
return {
|
|
66368
|
+
externalStickyRef: externalStickyRef,
|
|
66369
|
+
headerOffset: headerOffset,
|
|
66370
|
+
tableOffsetRef: tableOffsetRef
|
|
66371
|
+
};
|
|
66372
|
+
};
|
|
66373
|
+
/* harmony default export */ var use_table_virtual_external = (useTableVirtualExternal);
|
|
66297
66374
|
;// CONCATENATED MODULE: ../hooks/src/components/use-table/use-table-virtual.tsx
|
|
66298
66375
|
|
|
66299
66376
|
|
|
66300
66377
|
|
|
66301
66378
|
|
|
66302
66379
|
|
|
66380
|
+
|
|
66381
|
+
|
|
66303
66382
|
// 找出最大的连续数字的个数
|
|
66304
66383
|
function getMaxRowSpanLength(input) {
|
|
66305
66384
|
var map = new Map();
|
|
@@ -66438,8 +66517,8 @@ var useTableVirtual = function useTableVirtual(props) {
|
|
|
66438
66517
|
setHeight(getContentHeight(props.data.length - 1));
|
|
66439
66518
|
}
|
|
66440
66519
|
var preIndex = context.preIndex;
|
|
66441
|
-
// 解决: 从下往上滚
|
|
66442
|
-
if (preIndex && preIndex > startIndex && startIndex === index) {
|
|
66520
|
+
// 解决: 从下往上滚 由于高度变化会导致滚动条跳动(仅内部滚动需要)
|
|
66521
|
+
if (!props.virtualScrollContainer && preIndex && preIndex > startIndex && startIndex === index) {
|
|
66443
66522
|
// 发生在顶部
|
|
66444
66523
|
if (context.heightCallback) return;
|
|
66445
66524
|
var offset = height - (beforeHeight || props.rowHeight);
|
|
@@ -66689,6 +66768,20 @@ var useTableVirtual = function useTableVirtual(props) {
|
|
|
66689
66768
|
}
|
|
66690
66769
|
return "translate3d(0, ".concat(0 - t, "px, 0)");
|
|
66691
66770
|
}, [innerTop]);
|
|
66771
|
+
var isExternalScroll = !!props.virtualScrollContainer;
|
|
66772
|
+
var externalInfo = use_table_virtual_external({
|
|
66773
|
+
disabled: props.disabled || !isExternalScroll,
|
|
66774
|
+
dataLength: props.data.length,
|
|
66775
|
+
theadHeight: props.theadHeight,
|
|
66776
|
+
tfootHeight: props.tfootHeight,
|
|
66777
|
+
externalStickyHeader: props.externalStickyHeader,
|
|
66778
|
+
virtualScrollContainer: props.virtualScrollContainer || function () {
|
|
66779
|
+
return null;
|
|
66780
|
+
},
|
|
66781
|
+
tableRef: props.tableRef,
|
|
66782
|
+
getContentHeight: getContentHeight,
|
|
66783
|
+
updateIndexAndTopFromTop: updateIndexAndTopFromTop
|
|
66784
|
+
});
|
|
66692
66785
|
return {
|
|
66693
66786
|
scrollHeight: scrollHeight,
|
|
66694
66787
|
startIndex: startIndex,
|
|
@@ -66699,7 +66792,11 @@ var useTableVirtual = function useTableVirtual(props) {
|
|
|
66699
66792
|
scrollToIndex: scrollToIndex,
|
|
66700
66793
|
scrollColumnByLeft: scrollColumnByLeft,
|
|
66701
66794
|
scrollColumnIntoView: scrollColumnIntoView,
|
|
66702
|
-
rowSpanInfo: rowSpanInfo
|
|
66795
|
+
rowSpanInfo: rowSpanInfo,
|
|
66796
|
+
isExternalScroll: isExternalScroll,
|
|
66797
|
+
externalStickyRef: externalInfo.externalStickyRef,
|
|
66798
|
+
headerOffset: externalInfo.headerOffset,
|
|
66799
|
+
tableOffsetRef: externalInfo.tableOffsetRef
|
|
66703
66800
|
};
|
|
66704
66801
|
};
|
|
66705
66802
|
/* harmony default export */ var use_table_virtual = (useTableVirtual);
|
|
@@ -68571,7 +68668,7 @@ function Table(props) {
|
|
|
68571
68668
|
scrollingTimer: null
|
|
68572
68669
|
}),
|
|
68573
68670
|
context = _useRef.current;
|
|
68574
|
-
var virtual = !fakeVirtual && props.rowsInView !== 0 && (!!props.virtual || props.fixed === 'both' || props.fixed === 'y' || props.fixed === 'auto');
|
|
68671
|
+
var virtual = !fakeVirtual && props.rowsInView !== 0 && (!!props.virtual || !!props.virtualScrollContainer || props.fixed === 'both' || props.fixed === 'y' || props.fixed === 'auto');
|
|
68575
68672
|
(0,external_root_React_commonjs2_react_commonjs_react_amd_react_.useLayoutEffect)(function () {
|
|
68576
68673
|
if (!virtual) return;
|
|
68577
68674
|
if (!tableRef.current) return;
|
|
@@ -68589,7 +68686,7 @@ function Table(props) {
|
|
|
68589
68686
|
tbodyHeight = _useResize.height;
|
|
68590
68687
|
|
|
68591
68688
|
// default height
|
|
68592
|
-
var defaultHeight = virtual && !props.height ? '100%' : props.height;
|
|
68689
|
+
var defaultHeight = virtual && !props.height && !props.virtualScrollContainer ? '100%' : props.height;
|
|
68593
68690
|
var selection = use_table_select({
|
|
68594
68691
|
cellSelectable: props.cellSelectable
|
|
68595
68692
|
});
|
|
@@ -68765,7 +68862,10 @@ function Table(props) {
|
|
|
68765
68862
|
scrollLeft: props.scrollLeft,
|
|
68766
68863
|
isRtl: isRtl,
|
|
68767
68864
|
theadHeight: context.theadHeight,
|
|
68768
|
-
tfootHeight: context.tfootHeight
|
|
68865
|
+
tfootHeight: context.tfootHeight,
|
|
68866
|
+
virtualScrollContainer: props.virtualScrollContainer,
|
|
68867
|
+
tableRef: tableRef,
|
|
68868
|
+
externalStickyHeader: !!props.virtualScrollContainer && !!props.sticky
|
|
68769
68869
|
});
|
|
68770
68870
|
var syncHeaderScroll = usePersistFn(function (left) {
|
|
68771
68871
|
var _tableRef$current;
|
|
@@ -68946,7 +69046,7 @@ function Table(props) {
|
|
|
68946
69046
|
}
|
|
68947
69047
|
};
|
|
68948
69048
|
var isRenderVirtualTable = virtual || props.sticky || !((_props$data2 = props.data) !== null && _props$data2 !== void 0 && _props$data2.length);
|
|
68949
|
-
var headWrapperClass = classnames_default()(tableClasses === null || tableClasses === void 0 ? void 0 : tableClasses.headWrapper, !!$empty && tableClasses.emptyHeader, props.sticky && isScrollY && tableClasses.scrollY, props.sticky && isScrollY && browserScrollbarWidth === 0 && tableClasses.overlayScrollbar, props.sticky && !isScrollY && tableClasses.scrollX);
|
|
69049
|
+
var headWrapperClass = classnames_default()(tableClasses === null || tableClasses === void 0 ? void 0 : tableClasses.headWrapper, !!$empty && tableClasses.emptyHeader, props.sticky && isScrollY && tableClasses.scrollY, props.sticky && isScrollY && browserScrollbarWidth === 0 && tableClasses.overlayScrollbar, props.sticky && !isScrollY && !virtualInfo.isExternalScroll && tableClasses.scrollX);
|
|
68950
69050
|
var footWrapperClass = classnames_default()(tableClasses === null || tableClasses === void 0 ? void 0 : tableClasses.footWrapper);
|
|
68951
69051
|
var renderHeadMirrorScroller = function renderHeadMirrorScroller() {
|
|
68952
69052
|
var _scrollRef$current2, _scrollRef$current3, _scrollRef$current4;
|
|
@@ -69037,8 +69137,55 @@ function Table(props) {
|
|
|
69037
69137
|
})
|
|
69038
69138
|
}));
|
|
69039
69139
|
if (isRenderVirtualTable) {
|
|
69040
|
-
var _props$
|
|
69140
|
+
var _props$data4, _virtualInfo$rowSpanI2;
|
|
69041
69141
|
var showStickyHeader = !props.hideHeader && props.sticky;
|
|
69142
|
+
if (virtualInfo.isExternalScroll) {
|
|
69143
|
+
var _props$sticky$top, _props$virtualScrollC, _props$data3, _virtualInfo$rowSpanI;
|
|
69144
|
+
var tableOffset = virtualInfo.tableOffsetRef.current;
|
|
69145
|
+
var stickyTop = typeof_default()(props.sticky) === 'object' ? (_props$sticky$top = props.sticky.top) !== null && _props$sticky$top !== void 0 ? _props$sticky$top : 0 : 0;
|
|
69146
|
+
var stickyTopOffset = stickyTop - tableOffset;
|
|
69147
|
+
var externalContainer = (_props$virtualScrollC = props.virtualScrollContainer) === null || _props$virtualScrollC === void 0 ? void 0 : _props$virtualScrollC.call(props);
|
|
69148
|
+
var stickyDivHeight = externalContainer ? externalContainer.clientHeight - stickyTopOffset : undefined;
|
|
69149
|
+
return /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
69150
|
+
style: {
|
|
69151
|
+
position: 'relative',
|
|
69152
|
+
height: virtualInfo.scrollHeight
|
|
69153
|
+
},
|
|
69154
|
+
children: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
69155
|
+
ref: virtualInfo.externalStickyRef,
|
|
69156
|
+
style: {
|
|
69157
|
+
position: 'sticky',
|
|
69158
|
+
top: stickyTopOffset,
|
|
69159
|
+
height: stickyDivHeight,
|
|
69160
|
+
overflowX: 'auto',
|
|
69161
|
+
overflowY: 'hidden'
|
|
69162
|
+
},
|
|
69163
|
+
children: [!props.hideHeader && /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
69164
|
+
style: {
|
|
69165
|
+
position: 'relative',
|
|
69166
|
+
zIndex: 1,
|
|
69167
|
+
marginTop: props.sticky ? 0 : -virtualInfo.headerOffset
|
|
69168
|
+
},
|
|
69169
|
+
children: $headTable
|
|
69170
|
+
}), !!((_props$data3 = props.data) !== null && _props$data3 !== void 0 && _props$data3.length) && /*#__PURE__*/(0,jsx_runtime.jsxs)("table", {
|
|
69171
|
+
style: objectSpread2_default()(objectSpread2_default()({}, tableStyle), {}, {
|
|
69172
|
+
transform: virtualInfo.translateStyle,
|
|
69173
|
+
willChange: 'transform'
|
|
69174
|
+
}),
|
|
69175
|
+
ref: tbodyRef,
|
|
69176
|
+
children: [Group, /*#__PURE__*/(0,jsx_runtime.jsx)(tbody, objectSpread2_default()(objectSpread2_default()({}, bodyCommonProps), {}, {
|
|
69177
|
+
currentRowIndex: virtualInfo.startIndex,
|
|
69178
|
+
currentColIndex: currentColIndex,
|
|
69179
|
+
data: virtualInfo.data,
|
|
69180
|
+
originData: treeData,
|
|
69181
|
+
rowSpanIndexArray: (_virtualInfo$rowSpanI = virtualInfo.rowSpanInfo) === null || _virtualInfo$rowSpanI === void 0 ? void 0 : _virtualInfo$rowSpanI.rowSpanIndexArray,
|
|
69182
|
+
setRowHeight: virtualInfo.setRowHeight,
|
|
69183
|
+
scrolling: scrolling
|
|
69184
|
+
}))]
|
|
69185
|
+
}), $empty]
|
|
69186
|
+
})
|
|
69187
|
+
});
|
|
69188
|
+
}
|
|
69042
69189
|
return /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
|
|
69043
69190
|
children: [renderHeadMirrorScroller(), showStickyHeader && /*#__PURE__*/(0,jsx_runtime.jsx)(StickyWrapper, objectSpread2_default()(objectSpread2_default()({}, stickyProps), {}, {
|
|
69044
69191
|
children: $headTable
|
|
@@ -69059,7 +69206,7 @@ function Table(props) {
|
|
|
69059
69206
|
isEmpty: !!$empty,
|
|
69060
69207
|
tableRef: tableRef,
|
|
69061
69208
|
setFakeVirtual: scrollAble ? undefined : setFakeVirtual,
|
|
69062
|
-
children: [!props.hideHeader && !props.sticky && $headTable, !!((_props$
|
|
69209
|
+
children: [!props.hideHeader && !props.sticky && $headTable, !!((_props$data4 = props.data) !== null && _props$data4 !== void 0 && _props$data4.length) && /*#__PURE__*/(0,jsx_runtime.jsxs)("table", {
|
|
69063
69210
|
style: objectSpread2_default()(objectSpread2_default()({}, tableStyle), {}, {
|
|
69064
69211
|
transform: virtualInfo.translateStyle
|
|
69065
69212
|
}),
|
|
@@ -69069,7 +69216,7 @@ function Table(props) {
|
|
|
69069
69216
|
currentColIndex: currentColIndex,
|
|
69070
69217
|
data: virtualInfo.data,
|
|
69071
69218
|
originData: treeData,
|
|
69072
|
-
rowSpanIndexArray: (_virtualInfo$
|
|
69219
|
+
rowSpanIndexArray: (_virtualInfo$rowSpanI2 = virtualInfo.rowSpanInfo) === null || _virtualInfo$rowSpanI2 === void 0 ? void 0 : _virtualInfo$rowSpanI2.rowSpanIndexArray,
|
|
69073
69220
|
setRowHeight: virtualInfo.setRowHeight,
|
|
69074
69221
|
scrolling: scrolling
|
|
69075
69222
|
}))]
|
|
@@ -75770,7 +75917,7 @@ var upload_interface = __webpack_require__(8821);
|
|
|
75770
75917
|
|
|
75771
75918
|
|
|
75772
75919
|
/* harmony default export */ var src_0 = ({
|
|
75773
|
-
version: '3.9.
|
|
75920
|
+
version: '3.9.15-beta.2'
|
|
75774
75921
|
});
|
|
75775
75922
|
}();
|
|
75776
75923
|
/******/ return __webpack_exports__;
|