@visactor/vtable 0.22.0 → 0.22.2-alpha.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/cjs/ListTable.js.map +1 -1
- package/cjs/body-helper/style/Style.d.ts +3 -0
- package/cjs/body-helper/style/Style.js +22 -15
- package/cjs/body-helper/style/Style.js.map +1 -1
- package/cjs/core/BaseTable.d.ts +1 -1
- package/cjs/core/BaseTable.js +23 -8
- package/cjs/core/BaseTable.js.map +1 -1
- package/cjs/data/DataSource.js +5 -1
- package/cjs/data/DataSource.js.map +1 -1
- package/cjs/event/event.js +2 -1
- package/cjs/event/event.js.map +1 -1
- package/cjs/header-helper/style/Style.d.ts +3 -0
- package/cjs/header-helper/style/Style.js +26 -19
- package/cjs/header-helper/style/Style.js.map +1 -1
- package/cjs/index.d.ts +1 -1
- package/cjs/index.js +1 -1
- package/cjs/index.js.map +1 -1
- package/cjs/layout/pivot-header-layout.js +1 -1
- package/cjs/layout/pivot-header-layout.js.map +1 -1
- package/cjs/scenegraph/component/custom.js +1 -1
- package/cjs/scenegraph/component/custom.js.map +1 -1
- package/cjs/scenegraph/group-creater/cell-helper.d.ts +1 -0
- package/cjs/scenegraph/group-creater/cell-helper.js +19 -27
- package/cjs/scenegraph/group-creater/cell-helper.js.map +1 -1
- package/cjs/scenegraph/group-creater/cell-type/progress-bar-cell.js +5 -4
- package/cjs/scenegraph/group-creater/cell-type/progress-bar-cell.js.map +1 -1
- package/cjs/scenegraph/group-creater/column-helper.js +3 -2
- package/cjs/scenegraph/group-creater/column-helper.js.map +1 -1
- package/cjs/scenegraph/group-creater/progress/create-group-for-first-screen.js +1 -1
- package/cjs/scenegraph/group-creater/progress/create-group-for-first-screen.js.map +1 -1
- package/cjs/scenegraph/group-creater/progress/proxy.js +1 -1
- package/cjs/scenegraph/group-creater/progress/proxy.js.map +1 -1
- package/cjs/scenegraph/layout/compute-col-width.js +7 -4
- package/cjs/scenegraph/layout/compute-col-width.js.map +1 -1
- package/cjs/scenegraph/layout/compute-row-height.js +70 -71
- package/cjs/scenegraph/layout/compute-row-height.js.map +1 -1
- package/cjs/scenegraph/layout/update-height.js +18 -11
- package/cjs/scenegraph/layout/update-height.js.map +1 -1
- package/cjs/scenegraph/layout/update-width.js +19 -13
- package/cjs/scenegraph/layout/update-width.js.map +1 -1
- package/cjs/scenegraph/select/update-select-border.d.ts +2 -0
- package/cjs/scenegraph/select/update-select-border.js +19 -2
- package/cjs/scenegraph/select/update-select-border.js.map +1 -1
- package/cjs/scenegraph/utils/text-icon-layout.js +1 -1
- package/cjs/scenegraph/utils/text-icon-layout.js.map +1 -1
- package/cjs/scenegraph/utils/text-measure.js +6 -6
- package/cjs/scenegraph/utils/text-measure.js.map +1 -1
- package/cjs/ts-types/new-data-set.d.ts +2 -1
- package/cjs/ts-types/new-data-set.js.map +1 -1
- package/cjs/vrender.js.map +1 -1
- package/dist/vtable.js +245 -172
- package/dist/vtable.min.js +2 -2
- package/es/ListTable.js.map +1 -1
- package/es/body-helper/style/Style.d.ts +3 -0
- package/es/body-helper/style/Style.js +22 -15
- package/es/body-helper/style/Style.js.map +1 -1
- package/es/core/BaseTable.d.ts +1 -1
- package/es/core/BaseTable.js +22 -8
- package/es/core/BaseTable.js.map +1 -1
- package/es/data/DataSource.js +5 -1
- package/es/data/DataSource.js.map +1 -1
- package/es/event/event.js +2 -1
- package/es/event/event.js.map +1 -1
- package/es/header-helper/style/Style.d.ts +3 -0
- package/es/header-helper/style/Style.js +26 -19
- package/es/header-helper/style/Style.js.map +1 -1
- package/es/index.d.ts +1 -1
- package/es/index.js +1 -1
- package/es/index.js.map +1 -1
- package/es/layout/pivot-header-layout.js +1 -1
- package/es/layout/pivot-header-layout.js.map +1 -1
- package/es/scenegraph/component/custom.js +1 -1
- package/es/scenegraph/component/custom.js.map +1 -1
- package/es/scenegraph/group-creater/cell-helper.d.ts +1 -0
- package/es/scenegraph/group-creater/cell-helper.js +14 -25
- package/es/scenegraph/group-creater/cell-helper.js.map +1 -1
- package/es/scenegraph/group-creater/cell-type/progress-bar-cell.js +6 -3
- package/es/scenegraph/group-creater/cell-type/progress-bar-cell.js.map +1 -1
- package/es/scenegraph/group-creater/column-helper.js +5 -4
- package/es/scenegraph/group-creater/column-helper.js.map +1 -1
- package/es/scenegraph/group-creater/progress/create-group-for-first-screen.js +1 -1
- package/es/scenegraph/group-creater/progress/create-group-for-first-screen.js.map +1 -1
- package/es/scenegraph/group-creater/progress/proxy.js +1 -1
- package/es/scenegraph/group-creater/progress/proxy.js.map +1 -1
- package/es/scenegraph/layout/compute-col-width.js +6 -4
- package/es/scenegraph/layout/compute-col-width.js.map +1 -1
- package/es/scenegraph/layout/compute-row-height.js +69 -70
- package/es/scenegraph/layout/compute-row-height.js.map +1 -1
- package/es/scenegraph/layout/update-height.js +16 -9
- package/es/scenegraph/layout/update-height.js.map +1 -1
- package/es/scenegraph/layout/update-width.js +19 -10
- package/es/scenegraph/layout/update-width.js.map +1 -1
- package/es/scenegraph/select/update-select-border.d.ts +2 -0
- package/es/scenegraph/select/update-select-border.js +16 -0
- package/es/scenegraph/select/update-select-border.js.map +1 -1
- package/es/scenegraph/utils/text-icon-layout.js +1 -1
- package/es/scenegraph/utils/text-icon-layout.js.map +1 -1
- package/es/scenegraph/utils/text-measure.js +6 -6
- package/es/scenegraph/utils/text-measure.js.map +1 -1
- package/es/ts-types/new-data-set.d.ts +2 -1
- package/es/ts-types/new-data-set.js.map +1 -1
- package/es/vrender.js.map +1 -1
- package/package.json +5 -5
package/dist/vtable.js
CHANGED
|
@@ -21687,6 +21687,7 @@
|
|
|
21687
21687
|
_padding;
|
|
21688
21688
|
_defaultPadding = [10, 16, 10, 16];
|
|
21689
21689
|
_textStick;
|
|
21690
|
+
_textStickBaseOnAlign;
|
|
21690
21691
|
_textOverflow;
|
|
21691
21692
|
_textAlign;
|
|
21692
21693
|
_textBaseline;
|
|
@@ -21725,6 +21726,7 @@
|
|
|
21725
21726
|
this._borderColor = style?.borderColor ?? bodyStyle?.borderColor;
|
|
21726
21727
|
this._textOverflow = style?.textOverflow ?? bodyStyle?.textOverflow;
|
|
21727
21728
|
this._textStick = style.textStick ?? bodyStyle?.textStick ?? false;
|
|
21729
|
+
this._textStickBaseOnAlign = style.textStickBaseOnAlign ?? bodyStyle?.textStickBaseOnAlign ?? false;
|
|
21728
21730
|
this._bgColor = style?.bgColor ?? bodyStyle?.bgColor;
|
|
21729
21731
|
this._lineHeight = style?.lineHeight ?? bodyStyle?.lineHeight;
|
|
21730
21732
|
this._underline = style?.underline ?? bodyStyle?.underline;
|
|
@@ -21806,6 +21808,12 @@
|
|
|
21806
21808
|
set textStick(textStick) {
|
|
21807
21809
|
this._textStick = textStick;
|
|
21808
21810
|
}
|
|
21811
|
+
get textStickBaseOnAlign() {
|
|
21812
|
+
return this._textStickBaseOnAlign;
|
|
21813
|
+
}
|
|
21814
|
+
set textStickBaseOnAlign(textStickBaseOnAlign) {
|
|
21815
|
+
this._textStickBaseOnAlign = textStickBaseOnAlign;
|
|
21816
|
+
}
|
|
21809
21817
|
get textAlign() {
|
|
21810
21818
|
return this._textAlign;
|
|
21811
21819
|
}
|
|
@@ -22089,6 +22097,7 @@
|
|
|
22089
22097
|
_padding;
|
|
22090
22098
|
_defaultPadding = [10, 16, 10, 16];
|
|
22091
22099
|
_textStick;
|
|
22100
|
+
_textStickBaseOnAlign;
|
|
22092
22101
|
_marked;
|
|
22093
22102
|
_textAlign;
|
|
22094
22103
|
_textBaseline;
|
|
@@ -22122,6 +22131,7 @@
|
|
|
22122
22131
|
this._fontStyle = style.fontStyle ?? headerStyle?.fontStyle;
|
|
22123
22132
|
this._textOverflow = (style.textOverflow ?? headerStyle?.textOverflow) || 'ellipsis';
|
|
22124
22133
|
this._textStick = style.textStick ?? headerStyle?.textStick ?? false;
|
|
22134
|
+
this._textStickBaseOnAlign = style.textStickBaseOnAlign ?? headerStyle?.textStickBaseOnAlign ?? false;
|
|
22125
22135
|
this._marked = style.marked ?? headerStyle?.marked ?? false;
|
|
22126
22136
|
this._textAlign = (style.textAlign ?? headerStyle?.textAlign) || 'left';
|
|
22127
22137
|
this._textBaseline = (style.textBaseline ?? headerStyle?.textBaseline) || 'middle';
|
|
@@ -22207,6 +22217,12 @@
|
|
|
22207
22217
|
set textStick(textStick) {
|
|
22208
22218
|
this._textStick = textStick;
|
|
22209
22219
|
}
|
|
22220
|
+
get textStickBaseOnAlign() {
|
|
22221
|
+
return this._textStickBaseOnAlign;
|
|
22222
|
+
}
|
|
22223
|
+
set textStickBaseOnAlign(textStickBaseOnAlign) {
|
|
22224
|
+
this._textStickBaseOnAlign = textStickBaseOnAlign;
|
|
22225
|
+
}
|
|
22210
22226
|
get marked() {
|
|
22211
22227
|
return this._marked;
|
|
22212
22228
|
}
|
|
@@ -33851,11 +33867,20 @@
|
|
|
33851
33867
|
if (typeof field === 'string' || typeof field === 'number') {
|
|
33852
33868
|
const beforeChangedValue = this.beforeChangedRecordsMap[dataIndex][field];
|
|
33853
33869
|
const record = this.getOriginalRecord(dataIndex);
|
|
33870
|
+
let formatValue = value;
|
|
33854
33871
|
if (typeof beforeChangedValue === 'number' && isAllDigits(value)) {
|
|
33855
|
-
|
|
33872
|
+
formatValue = parseFloat(value);
|
|
33873
|
+
}
|
|
33874
|
+
if (isPromise(record)) {
|
|
33875
|
+
record
|
|
33876
|
+
.then(record => {
|
|
33877
|
+
record[field] = formatValue;
|
|
33878
|
+
})
|
|
33879
|
+
.catch((err) => {
|
|
33880
|
+
});
|
|
33856
33881
|
}
|
|
33857
33882
|
else {
|
|
33858
|
-
record[field] =
|
|
33883
|
+
record[field] = formatValue;
|
|
33859
33884
|
}
|
|
33860
33885
|
}
|
|
33861
33886
|
}
|
|
@@ -35475,7 +35500,9 @@
|
|
|
35475
35500
|
});
|
|
35476
35501
|
}
|
|
35477
35502
|
function decodeReactDom(dom) {
|
|
35478
|
-
if (!dom ||
|
|
35503
|
+
if (!dom ||
|
|
35504
|
+
(!isValid$3(dom.$$typeof) &&
|
|
35505
|
+
!isValid$3(dom.vtype))) {
|
|
35479
35506
|
return dom;
|
|
35480
35507
|
}
|
|
35481
35508
|
const type = dom.type;
|
|
@@ -36448,9 +36475,13 @@
|
|
|
36448
36475
|
const height = table.getRowHeight(row);
|
|
36449
36476
|
let contentWidth = width;
|
|
36450
36477
|
let contentHeight = height;
|
|
36478
|
+
let _contentOffset = 0;
|
|
36479
|
+
if (isNumber$4(table.theme._contentOffset)) {
|
|
36480
|
+
_contentOffset = table.theme._contentOffset;
|
|
36481
|
+
}
|
|
36451
36482
|
const percentCompleteBarGroup = new Group$1({
|
|
36452
|
-
x:
|
|
36453
|
-
y:
|
|
36483
|
+
x: -_contentOffset,
|
|
36484
|
+
y: -_contentOffset,
|
|
36454
36485
|
width: contentWidth,
|
|
36455
36486
|
height: contentHeight
|
|
36456
36487
|
});
|
|
@@ -37779,7 +37810,7 @@
|
|
|
37779
37810
|
}
|
|
37780
37811
|
iconAttribute.marginLeft = (icon.marginLeft ?? 0) + hierarchyOffset;
|
|
37781
37812
|
iconAttribute.marginRight = icon.marginRight ?? 0;
|
|
37782
|
-
if (icon.interactive) {
|
|
37813
|
+
if (icon.interactive === false) {
|
|
37783
37814
|
iconAttribute.pickable = false;
|
|
37784
37815
|
}
|
|
37785
37816
|
if (icon.hover) {
|
|
@@ -38347,16 +38378,6 @@
|
|
|
38347
38378
|
if (isPromise(value)) {
|
|
38348
38379
|
value = table.getCellValue(col, row);
|
|
38349
38380
|
}
|
|
38350
|
-
let bgColorFunc;
|
|
38351
|
-
if (table.internalProps?.dataConfig?.mappingRules && !table.isHeader(col, row)) {
|
|
38352
|
-
table.internalProps?.dataConfig?.mappingRules?.forEach((mappingRule, i) => {
|
|
38353
|
-
if (mappingRule.bgColor &&
|
|
38354
|
-
table.internalProps.layoutMap.getIndicatorKey(col, row) ===
|
|
38355
|
-
mappingRule.bgColor.indicatorKey) {
|
|
38356
|
-
bgColorFunc = mappingRule.bgColor.mapping;
|
|
38357
|
-
}
|
|
38358
|
-
});
|
|
38359
|
-
}
|
|
38360
38381
|
let cellGroup;
|
|
38361
38382
|
if (type === 'text' || type === 'link') {
|
|
38362
38383
|
if (type === 'link') {
|
|
@@ -38382,22 +38403,6 @@
|
|
|
38382
38403
|
}
|
|
38383
38404
|
}
|
|
38384
38405
|
}
|
|
38385
|
-
if (bgColorFunc) {
|
|
38386
|
-
const cellValue = table.getCellOriginValue(col, row);
|
|
38387
|
-
const bgColor = bgColorFunc(table, cellValue);
|
|
38388
|
-
if (bgColor) {
|
|
38389
|
-
if (cellTheme) {
|
|
38390
|
-
cellTheme.group.fill = bgColor;
|
|
38391
|
-
}
|
|
38392
|
-
else {
|
|
38393
|
-
cellTheme = {
|
|
38394
|
-
group: {
|
|
38395
|
-
fill: bgColor
|
|
38396
|
-
}
|
|
38397
|
-
};
|
|
38398
|
-
}
|
|
38399
|
-
}
|
|
38400
|
-
}
|
|
38401
38406
|
let customElementsGroup;
|
|
38402
38407
|
let renderDefault = true;
|
|
38403
38408
|
if (customResult) {
|
|
@@ -38601,16 +38606,6 @@
|
|
|
38601
38606
|
const textAlign = cellTheme.text.textAlign;
|
|
38602
38607
|
const textBaseline = cellTheme.text.textBaseline;
|
|
38603
38608
|
let newCellGroup;
|
|
38604
|
-
let bgColorFunc;
|
|
38605
|
-
if (table.internalProps?.dataConfig?.mappingRules && !table.isHeader(col, row)) {
|
|
38606
|
-
table.internalProps?.dataConfig?.mappingRules?.forEach((mappingRule, i) => {
|
|
38607
|
-
if (mappingRule.bgColor &&
|
|
38608
|
-
table.internalProps.layoutMap.getIndicatorKey(col, row) ===
|
|
38609
|
-
mappingRule.bgColor.indicatorKey) {
|
|
38610
|
-
bgColorFunc = mappingRule.bgColor.mapping;
|
|
38611
|
-
}
|
|
38612
|
-
});
|
|
38613
|
-
}
|
|
38614
38609
|
let cellWidth;
|
|
38615
38610
|
let cellHeight;
|
|
38616
38611
|
if (range) {
|
|
@@ -38623,10 +38618,10 @@
|
|
|
38623
38618
|
}
|
|
38624
38619
|
if (isPromise(value)) {
|
|
38625
38620
|
oldCellGroup.removeAllChild();
|
|
38626
|
-
dealPromiseData(value, table, updateCellContent.bind(null, type, value, define, table, col, row,
|
|
38621
|
+
dealPromiseData(value, table, updateCellContent.bind(null, type, value, define, table, col, row, cellWidth, cellHeight, oldCellGroup, padding, textAlign, textBaseline, mayHaveIcon, addNew, cellTheme, range, customResult));
|
|
38627
38622
|
}
|
|
38628
38623
|
else {
|
|
38629
|
-
newCellGroup = updateCellContent(type, value, define, table, col, row,
|
|
38624
|
+
newCellGroup = updateCellContent(type, value, define, table, col, row, cellWidth, cellHeight, oldCellGroup, padding, textAlign, textBaseline, mayHaveIcon, addNew, cellTheme, range, customResult);
|
|
38630
38625
|
}
|
|
38631
38626
|
if (isMerge) {
|
|
38632
38627
|
const { width: contentWidth } = newCellGroup.attribute;
|
|
@@ -38637,7 +38632,7 @@
|
|
|
38637
38632
|
}
|
|
38638
38633
|
return newCellGroup;
|
|
38639
38634
|
}
|
|
38640
|
-
function updateCellContent(type, value, define, table, col, row,
|
|
38635
|
+
function updateCellContent(type, value, define, table, col, row, cellWidth, cellHeight, oldCellGroup, padding, textAlign, textBaseline, mayHaveIcon, addNew, cellTheme, range, customResult) {
|
|
38641
38636
|
if (isPromise(value)) {
|
|
38642
38637
|
value = table.getCellValue(col, row);
|
|
38643
38638
|
}
|
|
@@ -38676,10 +38671,10 @@
|
|
|
38676
38671
|
for (let col = range.start.col; col <= range.end.col; col++) {
|
|
38677
38672
|
for (let row = range.start.row; row <= range.end.row; row++) {
|
|
38678
38673
|
const cellGroup = table.scenegraph.getCell(col, row, true);
|
|
38679
|
-
if (range.start.row !== range.end.row) {
|
|
38674
|
+
if (cellGroup.role === 'cell' && range.start.row !== range.end.row && cellGroup.contentWidth !== cellWidth) {
|
|
38680
38675
|
updateCellContentHeight(cellGroup, cellHeight, cellHeight, table.heightMode === 'autoHeight', padding, textAlign, textBaseline);
|
|
38681
38676
|
}
|
|
38682
|
-
if (range.start.col !== range.end.col) {
|
|
38677
|
+
if (cellGroup.role === 'cell' && range.start.col !== range.end.col && cellGroup.contentHeight !== cellHeight) {
|
|
38683
38678
|
updateCellContentWidth(cellGroup, cellWidth, cellHeight, 0, table.heightMode === 'autoHeight', padding, textAlign, textBaseline, table.scenegraph);
|
|
38684
38679
|
}
|
|
38685
38680
|
cellGroup.contentWidth = cellWidth;
|
|
@@ -38718,7 +38713,7 @@
|
|
|
38718
38713
|
});
|
|
38719
38714
|
}
|
|
38720
38715
|
});
|
|
38721
|
-
const lineWidth = cellGroup.attribute.lineWidth;
|
|
38716
|
+
const lineWidth = cellGroup.attribute.strokeArrayWidth ?? cellGroup.attribute.lineWidth;
|
|
38722
38717
|
const isLineWidthArray = isArray$3(lineWidth);
|
|
38723
38718
|
const newLineWidth = [0, 0, 0, 0];
|
|
38724
38719
|
if (col === range.start.col) {
|
|
@@ -39937,7 +39932,7 @@
|
|
|
39937
39932
|
}
|
|
39938
39933
|
}
|
|
39939
39934
|
function computeRowHeight(row, startCol, endCol, table) {
|
|
39940
|
-
let maxHeight
|
|
39935
|
+
let maxHeight;
|
|
39941
39936
|
if (table.isPivotChart() &&
|
|
39942
39937
|
row >= table.columnHeaderLevelCount &&
|
|
39943
39938
|
row < table.rowCount - table.bottomFrozenRowCount) {
|
|
@@ -39957,7 +39952,7 @@
|
|
|
39957
39952
|
for (let col = startCol; col <= endCol; col++) {
|
|
39958
39953
|
const customHeight = computeCustomRenderHeight(col, row, table);
|
|
39959
39954
|
if (customHeight) {
|
|
39960
|
-
maxHeight = Math.max(customHeight.height, maxHeight);
|
|
39955
|
+
maxHeight = isValid$3(maxHeight) ? Math.max(customHeight.height, maxHeight) : customHeight.height;
|
|
39961
39956
|
if (!customHeight.renderDefault) {
|
|
39962
39957
|
continue;
|
|
39963
39958
|
}
|
|
@@ -39968,7 +39963,7 @@
|
|
|
39968
39963
|
if (axisConfig) {
|
|
39969
39964
|
const axisWidth = computeAxisComponentHeight(axisConfig, table);
|
|
39970
39965
|
if (typeof axisWidth === 'number') {
|
|
39971
|
-
maxHeight = Math.max(axisWidth, maxHeight);
|
|
39966
|
+
maxHeight = isValid$3(maxHeight) ? Math.max(axisWidth, maxHeight) : axisWidth;
|
|
39972
39967
|
continue;
|
|
39973
39968
|
}
|
|
39974
39969
|
}
|
|
@@ -39981,19 +39976,14 @@
|
|
|
39981
39976
|
const cellType = table.isHeader(col, row)
|
|
39982
39977
|
? table._getHeaderLayoutMap(col, row)?.headerType
|
|
39983
39978
|
: table.getBodyColumnType(col, row);
|
|
39984
|
-
if (isValid$3(cellType) &&
|
|
39985
|
-
cellType !== 'text' &&
|
|
39986
|
-
cellType !== 'link' &&
|
|
39987
|
-
cellType !== 'progressbar' &&
|
|
39988
|
-
cellType !== 'checkbox') {
|
|
39989
|
-
const defaultHeight = table.getDefaultRowHeight(row);
|
|
39990
|
-
maxHeight = Math.max(maxHeight, isNumber$4(defaultHeight) ? defaultHeight : table.defaultRowHeight);
|
|
39991
|
-
continue;
|
|
39992
|
-
}
|
|
39993
39979
|
const textHeight = computeTextHeight(col, row, cellType, table);
|
|
39994
|
-
maxHeight = Math.max(textHeight, maxHeight);
|
|
39980
|
+
maxHeight = isValid$3(maxHeight) ? Math.max(textHeight, maxHeight) : textHeight;
|
|
39981
|
+
}
|
|
39982
|
+
if (isValid$3(maxHeight)) {
|
|
39983
|
+
return maxHeight;
|
|
39995
39984
|
}
|
|
39996
|
-
|
|
39985
|
+
const defaultHeight = table.getDefaultRowHeight(row);
|
|
39986
|
+
return isNumber$4(defaultHeight) ? defaultHeight : table.defaultRowHeight;
|
|
39997
39987
|
}
|
|
39998
39988
|
function checkFixedStyleAndNoWrap(table) {
|
|
39999
39989
|
const { layoutMap } = table.internalProps;
|
|
@@ -40189,87 +40179,92 @@
|
|
|
40189
40179
|
const fontFamily = getProp('fontFamily', actStyle, col, row, table);
|
|
40190
40180
|
const autoWrapText = getProp('autoWrapText', actStyle, col, row, table);
|
|
40191
40181
|
let text;
|
|
40192
|
-
if (cellType
|
|
40193
|
-
|
|
40182
|
+
if (cellType !== 'text' && cellType !== 'link' && cellType !== 'progressbar' && cellType !== 'checkbox') {
|
|
40183
|
+
maxHeight = lineHeight;
|
|
40194
40184
|
}
|
|
40195
40185
|
else {
|
|
40196
|
-
|
|
40197
|
-
|
|
40198
|
-
|
|
40199
|
-
|
|
40200
|
-
|
|
40201
|
-
|
|
40202
|
-
|
|
40203
|
-
|
|
40204
|
-
|
|
40205
|
-
|
|
40206
|
-
|
|
40207
|
-
|
|
40208
|
-
|
|
40209
|
-
|
|
40210
|
-
|
|
40211
|
-
|
|
40212
|
-
|
|
40213
|
-
|
|
40214
|
-
|
|
40215
|
-
|
|
40216
|
-
|
|
40217
|
-
|
|
40218
|
-
|
|
40219
|
-
|
|
40220
|
-
|
|
40221
|
-
|
|
40222
|
-
|
|
40223
|
-
|
|
40224
|
-
|
|
40186
|
+
if (cellType === 'checkbox') {
|
|
40187
|
+
text = isObject$4(cellValue) ? cellValue.text : cellValue;
|
|
40188
|
+
}
|
|
40189
|
+
else {
|
|
40190
|
+
text = cellValue;
|
|
40191
|
+
}
|
|
40192
|
+
const lines = validToString(text).split('\n') || [];
|
|
40193
|
+
const cellWidth = table.getColsWidth(col, endCol);
|
|
40194
|
+
if (cellType === 'checkbox') {
|
|
40195
|
+
const size = getProp('size', actStyle, col, row, table);
|
|
40196
|
+
if (autoWrapText) {
|
|
40197
|
+
const spaceBetweenTextAndIcon = getProp('spaceBetweenTextAndIcon', actStyle, col, row, table);
|
|
40198
|
+
const maxLineWidth = cellWidth - (padding[1] + padding[3]) - iconWidth - size - spaceBetweenTextAndIcon;
|
|
40199
|
+
utilCheckBoxMark.setAttributes({
|
|
40200
|
+
text: {
|
|
40201
|
+
maxLineWidth,
|
|
40202
|
+
text: lines,
|
|
40203
|
+
fontSize,
|
|
40204
|
+
fontStyle,
|
|
40205
|
+
fontWeight,
|
|
40206
|
+
fontFamily,
|
|
40207
|
+
lineHeight,
|
|
40208
|
+
wordBreak: 'break-word'
|
|
40209
|
+
},
|
|
40210
|
+
icon: {
|
|
40211
|
+
width: Math.floor(size / 1.4),
|
|
40212
|
+
height: Math.floor(size / 1.4)
|
|
40213
|
+
},
|
|
40214
|
+
box: {
|
|
40215
|
+
width: size,
|
|
40216
|
+
height: size
|
|
40217
|
+
},
|
|
40218
|
+
spaceBetweenTextAndIcon
|
|
40219
|
+
});
|
|
40220
|
+
utilCheckBoxMark.render();
|
|
40221
|
+
maxHeight = utilTextMark.AABBBounds.height();
|
|
40222
|
+
}
|
|
40223
|
+
else {
|
|
40224
|
+
maxHeight = Math.max(size, lines.length * lineHeight);
|
|
40225
|
+
}
|
|
40226
|
+
}
|
|
40227
|
+
else if (iconInlineFront.length || iconInlineEnd.length) {
|
|
40228
|
+
const textOption = Object.assign({
|
|
40229
|
+
text: cellValue?.toString(),
|
|
40230
|
+
fontFamily,
|
|
40231
|
+
fontSize,
|
|
40232
|
+
fontStyle,
|
|
40233
|
+
fontWeight,
|
|
40234
|
+
lineHeight
|
|
40225
40235
|
});
|
|
40226
|
-
|
|
40227
|
-
|
|
40236
|
+
textOption.textBaseline = 'middle';
|
|
40237
|
+
const textConfig = [
|
|
40238
|
+
...iconInlineFront.map(icon => dealWithRichTextIcon(icon)),
|
|
40239
|
+
textOption,
|
|
40240
|
+
...iconInlineEnd.map(icon => dealWithRichTextIcon(icon))
|
|
40241
|
+
];
|
|
40242
|
+
utilRichTextMark.setAttributes({
|
|
40243
|
+
width: cellWidth - (padding[1] + padding[3]) - iconWidth,
|
|
40244
|
+
height: 0,
|
|
40245
|
+
textConfig
|
|
40246
|
+
});
|
|
40247
|
+
maxHeight = utilRichTextMark.AABBBounds.height();
|
|
40248
|
+
}
|
|
40249
|
+
else if (autoWrapText) {
|
|
40250
|
+
const maxLineWidth = cellWidth - (padding[1] + padding[3]) - iconWidth;
|
|
40251
|
+
utilTextMark.setAttributes({
|
|
40252
|
+
maxLineWidth,
|
|
40253
|
+
text: lines,
|
|
40254
|
+
fontSize,
|
|
40255
|
+
fontStyle,
|
|
40256
|
+
fontWeight,
|
|
40257
|
+
fontFamily,
|
|
40258
|
+
lineHeight,
|
|
40259
|
+
wordBreak: 'break-word',
|
|
40260
|
+
whiteSpace: lines.length === 1 && !autoWrapText ? 'no-wrap' : 'normal'
|
|
40261
|
+
});
|
|
40262
|
+
maxHeight = utilTextMark.AABBBounds.height() || (typeof lineHeight === 'number' ? lineHeight : fontSize);
|
|
40228
40263
|
}
|
|
40229
40264
|
else {
|
|
40230
|
-
maxHeight =
|
|
40265
|
+
maxHeight = lines.length * lineHeight;
|
|
40231
40266
|
}
|
|
40232
40267
|
}
|
|
40233
|
-
else if (iconInlineFront.length || iconInlineEnd.length) {
|
|
40234
|
-
const textOption = Object.assign({
|
|
40235
|
-
text: cellValue?.toString(),
|
|
40236
|
-
fontFamily,
|
|
40237
|
-
fontSize,
|
|
40238
|
-
fontStyle,
|
|
40239
|
-
fontWeight,
|
|
40240
|
-
lineHeight
|
|
40241
|
-
});
|
|
40242
|
-
textOption.textBaseline = 'middle';
|
|
40243
|
-
const textConfig = [
|
|
40244
|
-
...iconInlineFront.map(icon => dealWithRichTextIcon(icon)),
|
|
40245
|
-
textOption,
|
|
40246
|
-
...iconInlineEnd.map(icon => dealWithRichTextIcon(icon))
|
|
40247
|
-
];
|
|
40248
|
-
utilRichTextMark.setAttributes({
|
|
40249
|
-
width: cellWidth - (padding[1] + padding[3]) - iconWidth,
|
|
40250
|
-
height: 0,
|
|
40251
|
-
textConfig
|
|
40252
|
-
});
|
|
40253
|
-
maxHeight = utilRichTextMark.AABBBounds.height();
|
|
40254
|
-
}
|
|
40255
|
-
else if (autoWrapText) {
|
|
40256
|
-
const maxLineWidth = cellWidth - (padding[1] + padding[3]) - iconWidth;
|
|
40257
|
-
utilTextMark.setAttributes({
|
|
40258
|
-
maxLineWidth,
|
|
40259
|
-
text: lines,
|
|
40260
|
-
fontSize,
|
|
40261
|
-
fontStyle,
|
|
40262
|
-
fontWeight,
|
|
40263
|
-
fontFamily,
|
|
40264
|
-
lineHeight,
|
|
40265
|
-
wordBreak: 'break-word',
|
|
40266
|
-
whiteSpace: lines.length === 1 && !autoWrapText ? 'no-wrap' : 'normal'
|
|
40267
|
-
});
|
|
40268
|
-
maxHeight = utilTextMark.AABBBounds.height() || (typeof lineHeight === 'number' ? lineHeight : fontSize);
|
|
40269
|
-
}
|
|
40270
|
-
else {
|
|
40271
|
-
maxHeight = lines.length * lineHeight;
|
|
40272
|
-
}
|
|
40273
40268
|
return (Math.max(maxHeight, iconHeight) + padding[0] + padding[2]) / spanRow;
|
|
40274
40269
|
}
|
|
40275
40270
|
function getCellRect$1(col, row, table) {
|
|
@@ -40420,7 +40415,13 @@
|
|
|
40420
40415
|
if (customLayout || customRender) {
|
|
40421
40416
|
const style = scene.table._getCellStyle(col, row);
|
|
40422
40417
|
const padding = getQuadProps(getProp('padding', style, col, row, scene.table));
|
|
40423
|
-
|
|
40418
|
+
let width = cell.attribute.width;
|
|
40419
|
+
let height = cell.attribute.height;
|
|
40420
|
+
if (isMergeCellGroup(cell)) {
|
|
40421
|
+
width = scene.table.getColsWidth(cell.mergeStartCol, cell.mergeEndCol);
|
|
40422
|
+
height = scene.table.getRowsHeight(cell.mergeStartRow, cell.mergeEndRow);
|
|
40423
|
+
}
|
|
40424
|
+
const customResult = dealWithCustom(customLayout, customRender, col, row, width, height, false, scene.table.heightMode === 'autoHeight', padding, scene.table);
|
|
40424
40425
|
customElementsGroup = customResult.elementsGroup;
|
|
40425
40426
|
renderDefault = customResult.renderDefault;
|
|
40426
40427
|
}
|
|
@@ -40432,13 +40433,10 @@
|
|
|
40432
40433
|
}
|
|
40433
40434
|
}
|
|
40434
40435
|
}
|
|
40435
|
-
|
|
40436
|
-
const style = scene.table._getCellStyle(col, row);
|
|
40437
|
-
updateMergeCellContentHeight(cell, distHeight, detaY, scene.table.heightMode === 'autoHeight', getQuadProps(style.padding), style.textAlign, style.textBaseline, scene.table);
|
|
40438
|
-
}
|
|
40436
|
+
updateMergeCellContentHeight(cell, distHeight, detaY, scene.table.heightMode === 'autoHeight', renderDefault, scene.table);
|
|
40439
40437
|
}
|
|
40440
40438
|
}
|
|
40441
|
-
function updateMergeCellContentHeight(cellGroup, distHeight, detaY, autoRowHeight,
|
|
40439
|
+
function updateMergeCellContentHeight(cellGroup, distHeight, detaY, autoRowHeight, renderDefault, table) {
|
|
40442
40440
|
if (isMergeCellGroup(cellGroup)) {
|
|
40443
40441
|
distHeight = 0;
|
|
40444
40442
|
for (let row = cellGroup.mergeStartRow; row <= cellGroup.mergeEndRow; row++) {
|
|
@@ -40454,7 +40452,10 @@
|
|
|
40454
40452
|
dy: 0
|
|
40455
40453
|
});
|
|
40456
40454
|
});
|
|
40457
|
-
|
|
40455
|
+
if (renderDefault) {
|
|
40456
|
+
const style = table._getCellStyle(col, row);
|
|
40457
|
+
updateCellContentHeight(singleCellGroup, distHeight, detaY, autoRowHeight, getQuadProps(style.padding), style.textAlign, style.textBaseline);
|
|
40458
|
+
}
|
|
40458
40459
|
const rangeHeight = table.getRowHeight(row);
|
|
40459
40460
|
const rangeWidth = table.getColWidth(col);
|
|
40460
40461
|
singleCellGroup.contentHeight = distHeight;
|
|
@@ -40475,7 +40476,8 @@
|
|
|
40475
40476
|
}
|
|
40476
40477
|
}
|
|
40477
40478
|
else {
|
|
40478
|
-
|
|
40479
|
+
const style = table._getCellStyle(cellGroup.col, cellGroup.row);
|
|
40480
|
+
updateCellContentHeight(cellGroup, distHeight, detaY, autoRowHeight, getQuadProps(style.padding), style.textAlign, style.textBaseline);
|
|
40479
40481
|
}
|
|
40480
40482
|
}
|
|
40481
40483
|
|
|
@@ -40720,7 +40722,13 @@
|
|
|
40720
40722
|
if (customLayout || customRender) {
|
|
40721
40723
|
const style = scene.table._getCellStyle(col, row);
|
|
40722
40724
|
const padding = getQuadProps(getProp('padding', style, col, row, scene.table));
|
|
40723
|
-
|
|
40725
|
+
let width = cellGroup.attribute.width;
|
|
40726
|
+
let height = cellGroup.attribute.height;
|
|
40727
|
+
if (isMergeCellGroup(cellGroup)) {
|
|
40728
|
+
width = scene.table.getColsWidth(cellGroup.mergeStartCol, cellGroup.mergeEndCol);
|
|
40729
|
+
height = scene.table.getRowsHeight(cellGroup.mergeStartRow, cellGroup.mergeEndRow);
|
|
40730
|
+
}
|
|
40731
|
+
const customResult = dealWithCustom(customLayout, customRender, col, row, width, height, false, scene.table.heightMode === 'autoHeight', padding, scene.table);
|
|
40724
40732
|
customElementsGroup = customResult.elementsGroup;
|
|
40725
40733
|
renderDefault = customResult.renderDefault;
|
|
40726
40734
|
isHeightChange = true;
|
|
@@ -40733,14 +40741,12 @@
|
|
|
40733
40741
|
}
|
|
40734
40742
|
}
|
|
40735
40743
|
}
|
|
40736
|
-
|
|
40737
|
-
|
|
40738
|
-
isHeightChange = updateMergeCellContentWidth(cellGroup, distWidth, detaX, autoRowHeight, getQuadProps(style.padding), style.textAlign, style.textBaseline, scene.table);
|
|
40739
|
-
}
|
|
40744
|
+
const cellChange = updateMergeCellContentWidth(cellGroup, distWidth, detaX, autoRowHeight, renderDefault, scene.table);
|
|
40745
|
+
isHeightChange = isHeightChange || cellChange;
|
|
40740
40746
|
}
|
|
40741
40747
|
return autoRowHeight && autoWrapText ? isHeightChange : false;
|
|
40742
40748
|
}
|
|
40743
|
-
function updateMergeCellContentWidth(cellGroup, distWidth, detaX, autoRowHeight,
|
|
40749
|
+
function updateMergeCellContentWidth(cellGroup, distWidth, detaX, autoRowHeight, renderDefault, table) {
|
|
40744
40750
|
if (isMergeCellGroup(cellGroup)) {
|
|
40745
40751
|
distWidth = 0;
|
|
40746
40752
|
let isHeightChange = false;
|
|
@@ -40754,6 +40760,9 @@
|
|
|
40754
40760
|
const { colStart, colEnd, rowStart, rowEnd } = getCellMergeRange(cellGroup, table.scenegraph);
|
|
40755
40761
|
for (let col = colStart; col <= colEnd; col++) {
|
|
40756
40762
|
for (let row = rowStart; row <= rowEnd; row++) {
|
|
40763
|
+
if (col === cellGroup.col && row !== cellGroup.row) {
|
|
40764
|
+
continue;
|
|
40765
|
+
}
|
|
40757
40766
|
const singleCellGroup = table.scenegraph.getCell(col, row);
|
|
40758
40767
|
singleCellGroup.forEachChildren((child) => {
|
|
40759
40768
|
child.setAttributes({
|
|
@@ -40761,13 +40770,20 @@
|
|
|
40761
40770
|
dy: 0
|
|
40762
40771
|
});
|
|
40763
40772
|
});
|
|
40764
|
-
|
|
40765
|
-
|
|
40766
|
-
|
|
40767
|
-
const
|
|
40768
|
-
const
|
|
40769
|
-
|
|
40770
|
-
|
|
40773
|
+
let changed = false;
|
|
40774
|
+
if (renderDefault) {
|
|
40775
|
+
const style = table._getCellStyle(col, row);
|
|
40776
|
+
const padding = getQuadProps(style.padding);
|
|
40777
|
+
const textAlign = style.textAlign;
|
|
40778
|
+
const textBaseline = style.textBaseline;
|
|
40779
|
+
changed = updateCellContentWidth(singleCellGroup, distWidth, cellHeight, detaX, autoRowHeight, padding, textAlign, textBaseline, table.scenegraph);
|
|
40780
|
+
const hierarchyOffset = getHierarchyOffset(singleCellGroup.col, singleCellGroup.row, table);
|
|
40781
|
+
if (hierarchyOffset) {
|
|
40782
|
+
const text = singleCellGroup.getChildByName('text');
|
|
40783
|
+
const icon = singleCellGroup.getChildByName('expand') || singleCellGroup.getChildByName('collapse');
|
|
40784
|
+
if (icon?.role !== 'icon-left' && text) {
|
|
40785
|
+
text.setAttribute('dx', hierarchyOffset);
|
|
40786
|
+
}
|
|
40771
40787
|
}
|
|
40772
40788
|
}
|
|
40773
40789
|
const rangeHeight = table.getRowHeight(row);
|
|
@@ -40791,6 +40807,10 @@
|
|
|
40791
40807
|
}
|
|
40792
40808
|
return isHeightChange;
|
|
40793
40809
|
}
|
|
40810
|
+
const style = table._getCellStyle(cellGroup.col, cellGroup.row);
|
|
40811
|
+
const padding = getQuadProps(style.padding);
|
|
40812
|
+
const textAlign = style.textAlign;
|
|
40813
|
+
const textBaseline = style.textBaseline;
|
|
40794
40814
|
return updateCellContentWidth(cellGroup, distWidth, table.getRowHeight(cellGroup.row), detaX, autoRowHeight, padding, textAlign, textBaseline, table.scenegraph);
|
|
40795
40815
|
}
|
|
40796
40816
|
function resetRowHeight(scene, row) {
|
|
@@ -43057,6 +43077,7 @@
|
|
|
43057
43077
|
}
|
|
43058
43078
|
|
|
43059
43079
|
let customAlphabetCharSet = '';
|
|
43080
|
+
let textMeasureMode = 'quick';
|
|
43060
43081
|
const textMeasureModule = new ContainerModule((bind, unbind, isBound, rebind) => {
|
|
43061
43082
|
if (isBound(TextMeasureContribution)) {
|
|
43062
43083
|
rebind(TextMeasureContribution).to(FastTextMeasureContribution).inSingletonScope();
|
|
@@ -43104,13 +43125,13 @@
|
|
|
43104
43125
|
measureTextWidth(text, options) {
|
|
43105
43126
|
const { fontSize, fontFamily = 'Arial,sans-serif', fontWeight = 'normal', fontStyle = 'normal' } = options;
|
|
43106
43127
|
const fastTextMeasure = getFastTextMeasure(fontSize, fontWeight, fontFamily, fontStyle);
|
|
43107
|
-
const textMeasure = fastTextMeasure.measure(text);
|
|
43128
|
+
const textMeasure = fastTextMeasure.measure(text, textMeasureMode);
|
|
43108
43129
|
return textMeasure.width;
|
|
43109
43130
|
}
|
|
43110
43131
|
measureText(text, options) {
|
|
43111
43132
|
const { fontSize, fontFamily = 'Arial,sans-serif', fontWeight = 'normal', fontStyle = 'normal' } = options;
|
|
43112
43133
|
const fastTextMeasure = getFastTextMeasure(fontSize, fontWeight, fontFamily, fontStyle);
|
|
43113
|
-
const textMeasure = fastTextMeasure.measure(text);
|
|
43134
|
+
const textMeasure = fastTextMeasure.measure(text, textMeasureMode);
|
|
43114
43135
|
return textMeasure;
|
|
43115
43136
|
}
|
|
43116
43137
|
}
|
|
@@ -43118,13 +43139,13 @@
|
|
|
43118
43139
|
measureText(text, options) {
|
|
43119
43140
|
const { fontSize, fontFamily = 'Arial,sans-serif', fontWeight = 'normal', fontStyle = 'normal' } = options;
|
|
43120
43141
|
const fastTextMeasure = getFastTextMeasure(fontSize, fontWeight, fontFamily, fontStyle);
|
|
43121
|
-
const textMeasure = fastTextMeasure.measure(text);
|
|
43142
|
+
const textMeasure = fastTextMeasure.measure(text, textMeasureMode);
|
|
43122
43143
|
return textMeasure;
|
|
43123
43144
|
}
|
|
43124
43145
|
measureTextWidth(text, options) {
|
|
43125
43146
|
const { fontSize, fontFamily = 'Arial,sans-serif', fontWeight = 'normal', fontStyle = 'normal' } = options;
|
|
43126
43147
|
const fastTextMeasure = getFastTextMeasure(fontSize, fontWeight, fontFamily, fontStyle);
|
|
43127
|
-
const textMeasure = fastTextMeasure.measure(text);
|
|
43148
|
+
const textMeasure = fastTextMeasure.measure(text, textMeasureMode);
|
|
43128
43149
|
return textMeasure.width;
|
|
43129
43150
|
}
|
|
43130
43151
|
clipText(text, options, width) {
|
|
@@ -43198,6 +43219,7 @@
|
|
|
43198
43219
|
fastTextMeasureCache.clear();
|
|
43199
43220
|
}
|
|
43200
43221
|
function restoreMeasureText() {
|
|
43222
|
+
textMeasureMode = 'canvas';
|
|
43201
43223
|
container.load(restoreTextMeasureModule);
|
|
43202
43224
|
}
|
|
43203
43225
|
|
|
@@ -43582,8 +43604,9 @@
|
|
|
43582
43604
|
if (customLayoutObj.rootContainer instanceof Group$2) {
|
|
43583
43605
|
customLayoutObj.rootContainer = decodeReactDom(customLayoutObj.rootContainer);
|
|
43584
43606
|
dealPercentCalc(customLayoutObj.rootContainer, 0, table.getRowHeight(row));
|
|
43607
|
+
const setedWidth = customLayoutObj.rootContainer.attribute.width;
|
|
43585
43608
|
customLayoutObj.rootContainer.setStage(table.scenegraph.stage);
|
|
43586
|
-
width = customLayoutObj.rootContainer.AABBBounds.width() ?? 0;
|
|
43609
|
+
width = setedWidth > 0 ? setedWidth : customLayoutObj.rootContainer.AABBBounds.width() ?? 0;
|
|
43587
43610
|
renderDefault = customLayoutObj.renderDefault;
|
|
43588
43611
|
enableCellPadding = customLayoutObj.enableCellPadding;
|
|
43589
43612
|
}
|
|
@@ -43836,12 +43859,12 @@
|
|
|
43836
43859
|
columnGroup.updateColumnRowNumber(row);
|
|
43837
43860
|
if (isMerge) {
|
|
43838
43861
|
const rangeHeight = table.getRowHeight(row);
|
|
43839
|
-
|
|
43862
|
+
table.getColWidth(col);
|
|
43840
43863
|
const { width: contentWidth } = cellGroup.attribute;
|
|
43841
43864
|
const { height: contentHeight } = cellGroup.attribute;
|
|
43842
43865
|
cellGroup.contentWidth = contentWidth;
|
|
43843
43866
|
cellGroup.contentHeight = contentHeight;
|
|
43844
|
-
|
|
43867
|
+
dealWithMergeCellSize(range, contentWidth, contentHeight, padding, textAlign, textBaseline, table);
|
|
43845
43868
|
columnGroup.updateColumnHeight(rangeHeight);
|
|
43846
43869
|
y += rangeHeight;
|
|
43847
43870
|
}
|
|
@@ -43922,7 +43945,8 @@
|
|
|
43922
43945
|
proxy.setParamsForColumn();
|
|
43923
43946
|
let distCol;
|
|
43924
43947
|
let distRow;
|
|
43925
|
-
if (table.widthMode === 'adaptive'
|
|
43948
|
+
if (table.widthMode === 'adaptive' ||
|
|
43949
|
+
(table.options.autoWrapText && (table.heightMode === 'adaptive' || table.heightMode === 'autoHeight'))) {
|
|
43926
43950
|
distCol = table.colCount - 1;
|
|
43927
43951
|
}
|
|
43928
43952
|
else {
|
|
@@ -44877,7 +44901,7 @@
|
|
|
44877
44901
|
computeColsWidth(this.table, this.currentCol + 1, endCol);
|
|
44878
44902
|
for (let row = 0; row < this.table.rowCount; row++) {
|
|
44879
44903
|
const cellGroup = this.highPerformanceGetCell(this.currentCol, row);
|
|
44880
|
-
if (isNumber$4(cellGroup.mergeStartCol) && cellGroup.mergeStartCol > this.currentCol) {
|
|
44904
|
+
if (cellGroup.role === 'cell' && isNumber$4(cellGroup.mergeStartCol) && cellGroup.mergeStartCol > this.currentCol) {
|
|
44881
44905
|
this.table.scenegraph.updateCellContent(cellGroup.col, cellGroup.row);
|
|
44882
44906
|
}
|
|
44883
44907
|
}
|
|
@@ -45615,6 +45639,22 @@
|
|
|
45615
45639
|
scene.createCellSelectBorder(columnHeaderStartCol, columnHeaderStartRow, columnHeaderEndCol, columnHeaderEndRow, 'body', `${startCol}${startRow}${endCol}${endRow}`, strokeArray);
|
|
45616
45640
|
}
|
|
45617
45641
|
}
|
|
45642
|
+
function hideCellSelectBorder(scene) {
|
|
45643
|
+
scene.selectingRangeComponents.forEach((selectComp, key) => {
|
|
45644
|
+
selectComp.rect.setAttribute('visible', false);
|
|
45645
|
+
});
|
|
45646
|
+
scene.selectedRangeComponents.forEach((selectComp, key) => {
|
|
45647
|
+
selectComp.rect.setAttribute('visible', false);
|
|
45648
|
+
});
|
|
45649
|
+
}
|
|
45650
|
+
function restoreCellSelectBorder(scene) {
|
|
45651
|
+
scene.selectingRangeComponents.forEach((selectComp, key) => {
|
|
45652
|
+
selectComp.rect.setAttribute('visible', false);
|
|
45653
|
+
});
|
|
45654
|
+
scene.selectedRangeComponents.forEach((selectComp, key) => {
|
|
45655
|
+
selectComp.rect.setAttribute('visible', false);
|
|
45656
|
+
});
|
|
45657
|
+
}
|
|
45618
45658
|
|
|
45619
45659
|
function createCellSelectBorder(scene, start_Col, start_Row, end_Col, end_Row, selectRangeType, selectId, strokes) {
|
|
45620
45660
|
const startCol = Math.min(start_Col, end_Col);
|
|
@@ -52121,6 +52161,7 @@
|
|
|
52121
52161
|
const resizeCol = this.table.scenegraph.getResizeColAt(eventArgsSet.abstractPos.x, eventArgsSet.abstractPos.y, eventArgsSet.eventArgs?.targetCell);
|
|
52122
52162
|
if (this.table._canResizeColumn(resizeCol.col, resizeCol.row) && resizeCol.col >= 0) {
|
|
52123
52163
|
this.table.scenegraph.updateAutoColWidth(resizeCol.col);
|
|
52164
|
+
this.table.internalProps._widthResizedColMap.add(resizeCol.col);
|
|
52124
52165
|
this.table.scenegraph.updateChartSize(resizeCol.col);
|
|
52125
52166
|
const state = this.table.stateManager;
|
|
52126
52167
|
if (state.columnResize.col < state.table.frozenColCount &&
|
|
@@ -55504,7 +55545,7 @@
|
|
|
55504
55545
|
return TABLE_EVENT_TYPE;
|
|
55505
55546
|
}
|
|
55506
55547
|
options;
|
|
55507
|
-
version = "0.22.0";
|
|
55548
|
+
version = "0.22.2-alpha.0";
|
|
55508
55549
|
pagination;
|
|
55509
55550
|
id = `VTable${Date.now()}`;
|
|
55510
55551
|
headerStyleCache;
|
|
@@ -57281,6 +57322,16 @@
|
|
|
57281
57322
|
}
|
|
57282
57323
|
return cacheStyle;
|
|
57283
57324
|
}
|
|
57325
|
+
let bgColorFunc;
|
|
57326
|
+
if (this.internalProps?.dataConfig?.mappingRules && !this.isHeader(col, row)) {
|
|
57327
|
+
this.internalProps?.dataConfig?.mappingRules?.forEach((mappingRule, i) => {
|
|
57328
|
+
if (mappingRule.bgColor &&
|
|
57329
|
+
this.internalProps.layoutMap.getIndicatorKey(col, row) ===
|
|
57330
|
+
mappingRule.bgColor.indicatorKey) {
|
|
57331
|
+
bgColorFunc = mappingRule.bgColor.mapping;
|
|
57332
|
+
}
|
|
57333
|
+
});
|
|
57334
|
+
}
|
|
57284
57335
|
let cacheKey;
|
|
57285
57336
|
const cellType = this.getCellType(col, row);
|
|
57286
57337
|
if (this.isSeriesNumberInBody(col, row)) {
|
|
@@ -57321,6 +57372,9 @@
|
|
|
57321
57372
|
dataValue: this.getCellOriginValue(col, row),
|
|
57322
57373
|
cellHeaderPaths: this.getCellHeaderPaths(col, row)
|
|
57323
57374
|
}, styleClass, this.options.autoWrapText, this.theme);
|
|
57375
|
+
if (bgColorFunc) {
|
|
57376
|
+
cacheStyle = mergeStyle(cacheStyle, { bgColor: bgColorFunc });
|
|
57377
|
+
}
|
|
57324
57378
|
if (!isFunction$3(style)) {
|
|
57325
57379
|
if (layoutMap.isBottomFrozenRow(row)) {
|
|
57326
57380
|
this.bodyBottomStyleCache.set(cacheKey, cacheStyle);
|
|
@@ -57625,7 +57679,7 @@
|
|
|
57625
57679
|
const copyCellValue = getCopyCellValue(c, r, range);
|
|
57626
57680
|
if (typeof Promise !== 'undefined' && copyCellValue instanceof Promise) ;
|
|
57627
57681
|
else {
|
|
57628
|
-
const strCellValue = `${copyCellValue}
|
|
57682
|
+
const strCellValue = isValid$3(copyCellValue) ? `${copyCellValue}` : '';
|
|
57629
57683
|
if (/^\[object .*\]$/.exec(strCellValue)) ;
|
|
57630
57684
|
else {
|
|
57631
57685
|
copyValue += strCellValue;
|
|
@@ -57750,13 +57804,23 @@
|
|
|
57750
57804
|
return customLayout;
|
|
57751
57805
|
}
|
|
57752
57806
|
hasAutoImageColumn() {
|
|
57753
|
-
|
|
57754
|
-
if ((column.cellType === 'image' || typeof column.cellType === 'function') &&
|
|
57807
|
+
const bodyColumn = this.internalProps.layoutMap.columnObjects.find((column) => {
|
|
57808
|
+
if ((column.cellType === 'image' || column.cellType === 'video' || typeof column.cellType === 'function') &&
|
|
57755
57809
|
column.define.imageAutoSizing) {
|
|
57756
57810
|
return true;
|
|
57757
57811
|
}
|
|
57758
57812
|
return false;
|
|
57759
57813
|
});
|
|
57814
|
+
const headerObj = this.internalProps.layoutMap.headerObjects.find((column) => {
|
|
57815
|
+
if (column) {
|
|
57816
|
+
if ((column.headerType === 'image' || column.headerType === 'video' || typeof column.headerType === 'function') &&
|
|
57817
|
+
column.define.imageAutoSizing) {
|
|
57818
|
+
return true;
|
|
57819
|
+
}
|
|
57820
|
+
}
|
|
57821
|
+
return false;
|
|
57822
|
+
});
|
|
57823
|
+
return bodyColumn || headerObj;
|
|
57760
57824
|
}
|
|
57761
57825
|
_getActiveChartInstance() {
|
|
57762
57826
|
const cellGroup = this.scenegraph.getCell(this.stateManager.hover?.cellPos?.col, this.stateManager.hover?.cellPos?.row);
|
|
@@ -57799,11 +57863,20 @@
|
|
|
57799
57863
|
this.scrollToCell({ col, row });
|
|
57800
57864
|
}
|
|
57801
57865
|
const cellRect = this.getCellRelativeRect(col, row);
|
|
57866
|
+
if (this.stateManager.select?.ranges?.length > 0) {
|
|
57867
|
+
hideCellSelectBorder(this.scenegraph);
|
|
57868
|
+
}
|
|
57869
|
+
const { col: hoverCol, row: hoverRow } = this.stateManager.hover.cellPos;
|
|
57870
|
+
this.stateManager.updateHoverPos(-1, -1);
|
|
57802
57871
|
const c = this.scenegraph.stage.toCanvas(false, new AABBBounds$1().set(cellRect.left + this.tableX + 1, cellRect.top + this.tableY + 1, cellRect.right + this.tableX, cellRect.bottom + this.tableY));
|
|
57803
57872
|
if (!isInView) {
|
|
57804
57873
|
this.setScrollTop(scrollTop);
|
|
57805
57874
|
this.setScrollLeft(scrollLeft);
|
|
57806
57875
|
}
|
|
57876
|
+
if (this.stateManager.select?.ranges?.length > 0) {
|
|
57877
|
+
restoreCellSelectBorder(this.scenegraph);
|
|
57878
|
+
}
|
|
57879
|
+
this.stateManager.updateHoverPos(hoverCol, hoverRow);
|
|
57807
57880
|
return c.toDataURL();
|
|
57808
57881
|
}
|
|
57809
57882
|
exportCellRangeImg(cellRange) {
|
|
@@ -63362,7 +63435,7 @@
|
|
|
63362
63435
|
dimension.indicatorKey === rowDimension.indicatorKey &&
|
|
63363
63436
|
(!rowDimension.value || dimension.value === rowDimension.value))) {
|
|
63364
63437
|
rowArr = dimension.children;
|
|
63365
|
-
if (needLowestLevel && !rowArr) {
|
|
63438
|
+
if (needLowestLevel && (!rowArr || rowArr.some(row => row.dimensionKey === 'axis'))) {
|
|
63366
63439
|
rowDimensionFinded = dimension;
|
|
63367
63440
|
}
|
|
63368
63441
|
else if (!needLowestLevel) {
|
|
@@ -67563,7 +67636,7 @@
|
|
|
67563
67636
|
}
|
|
67564
67637
|
|
|
67565
67638
|
registerForVrender();
|
|
67566
|
-
const version = "0.22.0";
|
|
67639
|
+
const version = "0.22.2-alpha.0";
|
|
67567
67640
|
function getIcons() {
|
|
67568
67641
|
return get$2();
|
|
67569
67642
|
}
|