shineout 3.5.4-beta.3 → 3.5.4-beta.4
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 +33 -22
- 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
|
@@ -500,5 +500,5 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
|
|
|
500
500
|
// 此文件由脚本自动生成,请勿直接修改。
|
|
501
501
|
// This file was generated automatically by a script. Please do not modify it directly.
|
|
502
502
|
var _default = exports.default = {
|
|
503
|
-
version: '3.5.4-beta.
|
|
503
|
+
version: '3.5.4-beta.4'
|
|
504
504
|
};
|
package/dist/shineout.js
CHANGED
|
@@ -12030,7 +12030,7 @@ var handleStyle = function handleStyle(style) {
|
|
|
12030
12030
|
};
|
|
12031
12031
|
/* harmony default export */ var jss_style_handleStyle = (handleStyle);
|
|
12032
12032
|
;// CONCATENATED MODULE: ../shineout-style/src/version.ts
|
|
12033
|
-
/* harmony default export */ var version = ('3.5.4-beta.
|
|
12033
|
+
/* harmony default export */ var version = ('3.5.4-beta.4');
|
|
12034
12034
|
;// CONCATENATED MODULE: ../shineout-style/src/jss-style/index.tsx
|
|
12035
12035
|
|
|
12036
12036
|
|
|
@@ -58626,7 +58626,6 @@ function getMaxRowSpanLength(input) {
|
|
|
58626
58626
|
}
|
|
58627
58627
|
return Math.max.apply(Math, toConsumableArray_default()(Array.from(map.values())));
|
|
58628
58628
|
}
|
|
58629
|
-
var MAX_ROW_SPAN = 200;
|
|
58630
58629
|
var useTableVirtual = function useTableVirtual(props) {
|
|
58631
58630
|
var _useState = (0,external_root_React_commonjs2_react_commonjs_react_amd_react_.useState)(0),
|
|
58632
58631
|
_useState2 = slicedToArray_default()(_useState, 2),
|
|
@@ -58659,7 +58658,7 @@ var useTableVirtual = function useTableVirtual(props) {
|
|
|
58659
58658
|
var totalLength = props.data.length;
|
|
58660
58659
|
var _loop = function _loop(i) {
|
|
58661
58660
|
var startIndex = i;
|
|
58662
|
-
var
|
|
58661
|
+
var _rowSpanInfo = rowSpanColumns.map(function (col) {
|
|
58663
58662
|
var rowSpan = col.rowSpan;
|
|
58664
58663
|
function getRowSpanCount(index, _count) {
|
|
58665
58664
|
var count = _count;
|
|
@@ -58675,7 +58674,7 @@ var useTableVirtual = function useTableVirtual(props) {
|
|
|
58675
58674
|
var count = getRowSpanCount(i, 1);
|
|
58676
58675
|
return [startIndex, startIndex + count - 1];
|
|
58677
58676
|
});
|
|
58678
|
-
_rowSpanInfos.push(
|
|
58677
|
+
_rowSpanInfos.push(_rowSpanInfo);
|
|
58679
58678
|
};
|
|
58680
58679
|
for (var i = 0; i < totalLength; i++) {
|
|
58681
58680
|
_loop(i);
|
|
@@ -58701,10 +58700,12 @@ var useTableVirtual = function useTableVirtual(props) {
|
|
|
58701
58700
|
});
|
|
58702
58701
|
return Math.min.apply(Math, toConsumableArray_default()(startIndexs));
|
|
58703
58702
|
});
|
|
58704
|
-
|
|
58705
|
-
|
|
58703
|
+
|
|
58704
|
+
// 根据data计算出实际需要的最大合并行数
|
|
58705
|
+
var _maxRowSpan = getMaxRowSpanLength(resultArr);
|
|
58706
|
+
return _maxRowSpan > 1 ? {
|
|
58706
58707
|
rowSpanIndexArray: resultArr,
|
|
58707
|
-
maxRowSpan:
|
|
58708
|
+
maxRowSpan: _maxRowSpan
|
|
58708
58709
|
} : null;
|
|
58709
58710
|
}, [props.data, props.columns]);
|
|
58710
58711
|
var _useRef = (0,external_root_React_commonjs2_react_commonjs_react_amd_react_.useRef)({
|
|
@@ -58761,32 +58762,31 @@ var useTableVirtual = function useTableVirtual(props) {
|
|
|
58761
58762
|
}
|
|
58762
58763
|
});
|
|
58763
58764
|
var updateIndexAndTopFromTop = function updateIndexAndTopFromTop(scrollTop) {
|
|
58765
|
+
var _props$scrollRef$curr;
|
|
58764
58766
|
if (props.disabled) return;
|
|
58765
58767
|
var sum = 0;
|
|
58766
58768
|
var currentIndex = 0;
|
|
58767
58769
|
var top = 0;
|
|
58768
58770
|
var maxIndex = Math.max(props.data.length - rowsInView, 0);
|
|
58769
|
-
var
|
|
58770
|
-
if (rowSpanInfo) {
|
|
58771
|
-
maxRowSpanLenth = Math.min(rowSpanInfo.rowSpanIndexArray.length,
|
|
58772
|
-
// 根据data计算出实际需要的最大合并行数(rowSpanInfo.maxRowSpan),当rowSpanInfo.maxRowSpan大于外部传的rowsInView时,使用rowSpanInfo.maxRowSpan
|
|
58773
|
-
Math.max(rowSpanInfo.maxRowSpan, props.rowsInView > MAX_ROW_SPAN ? props.rowsInView : props.rowsInView || MAX_ROW_SPAN));
|
|
58774
|
-
}
|
|
58771
|
+
var scrollContainerHeight = Math.max(((_props$scrollRef$curr = props.scrollRef.current) === null || _props$scrollRef$curr === void 0 ? void 0 : _props$scrollRef$curr.clientHeight) || 0, 200);
|
|
58775
58772
|
for (var i = 0; i <= maxIndex; i++) {
|
|
58776
58773
|
context.rowSpanRows = 0;
|
|
58777
58774
|
sum += context.cachedHeight[i] || props.rowHeight;
|
|
58778
58775
|
var rowSpanHeight = 0;
|
|
58779
58776
|
if (rowSpanInfo) {
|
|
58780
58777
|
var siblingsIndexs = [];
|
|
58781
|
-
for (var k = i; k <
|
|
58778
|
+
for (var k = i; k < rowSpanInfo.maxRowSpan + i; k++) {
|
|
58782
58779
|
if (rowSpanInfo.rowSpanIndexArray[k] <= i && k > i) {
|
|
58783
58780
|
siblingsIndexs.push(k);
|
|
58784
58781
|
}
|
|
58785
58782
|
}
|
|
58786
58783
|
for (var j = 0; j < siblingsIndexs.length; j++) {
|
|
58787
|
-
|
|
58788
|
-
|
|
58789
|
-
|
|
58784
|
+
// 在当前滚动容器滚动一屏上方销毁tr,不在可见区域内销毁重建,避免引起可见的单元格(合并的)内容闪烁
|
|
58785
|
+
if (rowSpanHeight < scrollContainerHeight) {
|
|
58786
|
+
var index = siblingsIndexs[j];
|
|
58787
|
+
context.rowSpanRows += 1;
|
|
58788
|
+
rowSpanHeight += context.cachedHeight[index] || props.rowHeight;
|
|
58789
|
+
}
|
|
58790
58790
|
}
|
|
58791
58791
|
}
|
|
58792
58792
|
if (scrollTop < sum + rowSpanHeight || i === maxIndex) {
|
|
@@ -58960,6 +58960,10 @@ var useTableVirtual = function useTableVirtual(props) {
|
|
|
58960
58960
|
}, [scrollHeight]);
|
|
58961
58961
|
var finalRowsInView = rowsInView + context.rowSpanRows + context.autoAddRows;
|
|
58962
58962
|
var renderData = props.disabled ? props.data : toConsumableArray_default()(props.data).slice(startIndex, startIndex + finalRowsInView);
|
|
58963
|
+
console.log('======================');
|
|
58964
|
+
console.log('startIndex: >>', startIndex);
|
|
58965
|
+
console.log('finalRowsInView: >>', finalRowsInView);
|
|
58966
|
+
console.log('======================');
|
|
58963
58967
|
return {
|
|
58964
58968
|
scrollHeight: scrollHeight,
|
|
58965
58969
|
startIndex: startIndex,
|
|
@@ -59994,23 +59998,30 @@ var Tr = function Tr(props) {
|
|
|
59994
59998
|
var col = cols[i];
|
|
59995
59999
|
if (data[i]) {
|
|
59996
60000
|
var last = cols[i + (data[i].colSpan || 1) - 1] || {};
|
|
60001
|
+
var isRowSpanTd = data[i].rowSpan > 1;
|
|
60002
|
+
var $tdContent = renderContent(col, data[i].data);
|
|
59997
60003
|
var td = /*#__PURE__*/(0,jsx_runtime.jsx)("td", {
|
|
59998
60004
|
colSpan: data[i].colSpan,
|
|
59999
60005
|
rowSpan: data[i].rowSpan,
|
|
60000
|
-
onMouseEnter: props.hover && hasSiblingRowSpan ||
|
|
60006
|
+
onMouseEnter: props.hover && hasSiblingRowSpan || isRowSpanTd ? function () {
|
|
60001
60007
|
props.handleCellHover(props.rowIndex, data[i].rowSpan);
|
|
60002
60008
|
} : undefined,
|
|
60003
|
-
onMouseLeave: props.hover && hasSiblingRowSpan ||
|
|
60009
|
+
onMouseLeave: props.hover && hasSiblingRowSpan || isRowSpanTd ? function () {
|
|
60004
60010
|
props.handleCellHover(-1, 0);
|
|
60005
60011
|
} : undefined,
|
|
60006
|
-
className: classnames_default()(col.className, col.type === 'checkbox' && (tableClasses === null || tableClasses === void 0 ? void 0 : tableClasses.cellCheckbox), col.fixed === 'left' && (tableClasses === null || tableClasses === void 0 ? void 0 : tableClasses.cellFixedLeft), col.fixed === 'right' && (tableClasses === null || tableClasses === void 0 ? void 0 : tableClasses.cellFixedRight), col.align === 'center' && (tableClasses === null || tableClasses === void 0 ? void 0 : tableClasses.cellAlignCenter), col.align === 'right' && (tableClasses === null || tableClasses === void 0 ? void 0 : tableClasses.cellAlignRight), (col.lastFixed || col.firstFixed || last.lastFixed) && (tableClasses === null || tableClasses === void 0 ? void 0 : tableClasses.cellFixedLast), lastRowIndex === i && (tableClasses === null || tableClasses === void 0 ? void 0 : tableClasses.cellIgnoreBorder), props.hoverIndex.has(props.rowIndex) && (tableClasses === null || tableClasses === void 0 ? void 0 : tableClasses.cellHover),
|
|
60012
|
+
className: classnames_default()(col.className, col.type === 'checkbox' && (tableClasses === null || tableClasses === void 0 ? void 0 : tableClasses.cellCheckbox), col.fixed === 'left' && (tableClasses === null || tableClasses === void 0 ? void 0 : tableClasses.cellFixedLeft), col.fixed === 'right' && (tableClasses === null || tableClasses === void 0 ? void 0 : tableClasses.cellFixedRight), col.align === 'center' && (tableClasses === null || tableClasses === void 0 ? void 0 : tableClasses.cellAlignCenter), col.align === 'right' && (tableClasses === null || tableClasses === void 0 ? void 0 : tableClasses.cellAlignRight), (col.lastFixed || col.firstFixed || last.lastFixed) && (tableClasses === null || tableClasses === void 0 ? void 0 : tableClasses.cellFixedLast), lastRowIndex === i && (tableClasses === null || tableClasses === void 0 ? void 0 : tableClasses.cellIgnoreBorder), props.hoverIndex.has(props.rowIndex) && (tableClasses === null || tableClasses === void 0 ? void 0 : tableClasses.cellHover), isRowSpanTd && props.isCellHover(props.rowIndex, data[i].rowSpan) && (tableClasses === null || tableClasses === void 0 ? void 0 : tableClasses.cellHover)),
|
|
60007
60013
|
style: getTdStyle(col, data[i].colSpan),
|
|
60008
60014
|
dir: config.direction,
|
|
60009
60015
|
"data-role": col.type === 'checkbox' ? 'checkbox' : undefined,
|
|
60010
60016
|
onClick: props.onCellClick ? function () {
|
|
60011
60017
|
return handleCellClick(data[i].data, i);
|
|
60012
60018
|
} : undefined,
|
|
60013
|
-
children:
|
|
60019
|
+
children: isRowSpanTd ? /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
60020
|
+
style: {
|
|
60021
|
+
height: 0
|
|
60022
|
+
},
|
|
60023
|
+
children: $tdContent
|
|
60024
|
+
}) : $tdContent
|
|
60014
60025
|
}, col.key);
|
|
60015
60026
|
tds.push(td);
|
|
60016
60027
|
if (data[i].colSpan) skip = data[i].colSpan - 1;
|
|
@@ -66990,7 +67001,7 @@ var upload_interface = __webpack_require__(8821);
|
|
|
66990
67001
|
|
|
66991
67002
|
|
|
66992
67003
|
/* harmony default export */ var src_0 = ({
|
|
66993
|
-
version: '3.5.4-beta.
|
|
67004
|
+
version: '3.5.4-beta.4'
|
|
66994
67005
|
});
|
|
66995
67006
|
}();
|
|
66996
67007
|
/******/ return __webpack_exports__;
|