@visactor/vtable 1.5.3-alpha.1 → 1.5.4-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.d.ts +1 -2
- package/cjs/ListTable.js +194 -26
- package/cjs/ListTable.js.map +1 -1
- package/cjs/PivotTable.d.ts +1 -1
- package/cjs/PivotTable.js +3 -3
- package/cjs/PivotTable.js.map +1 -1
- package/cjs/core/BaseTable.d.ts +3 -5
- package/cjs/core/BaseTable.js +79 -8
- package/cjs/core/BaseTable.js.map +1 -1
- package/cjs/core/tableHelper.d.ts +2 -0
- package/cjs/core/tableHelper.js +18 -9
- package/cjs/core/tableHelper.js.map +1 -1
- package/cjs/data/CachedDataSource.d.ts +1 -10
- package/cjs/data/CachedDataSource.js +3 -78
- package/cjs/data/CachedDataSource.js.map +1 -1
- package/cjs/dataset/statistics-helper.js +1 -0
- package/cjs/edit/edit-manager.d.ts +1 -1
- package/cjs/edit/edit-manager.js +4 -5
- package/cjs/edit/edit-manager.js.map +1 -1
- package/cjs/event/listener/container-dom.js +6 -5
- package/cjs/event/listener/container-dom.js.map +1 -1
- package/cjs/event/listener/table-group.js.map +1 -1
- package/cjs/event/scroll.js +6 -4
- package/cjs/event/scroll.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/layout-helper.js +2 -2
- package/cjs/layout/layout-helper.js.map +1 -1
- package/cjs/layout/pivot-header-layout.js +5 -5
- package/cjs/layout/pivot-header-layout.js.map +1 -1
- package/cjs/layout/row-height-map.js +0 -1
- package/cjs/layout/simple-header-layout.d.ts +2 -1
- package/cjs/layout/simple-header-layout.js +88 -2
- package/cjs/layout/simple-header-layout.js.map +1 -1
- package/cjs/plugins/icons.js +1 -1
- package/cjs/plugins/themes.js +1 -1
- package/cjs/scenegraph/group-creater/cell-helper.js +6 -11
- package/cjs/scenegraph/group-creater/cell-helper.js.map +1 -1
- package/cjs/scenegraph/group-creater/column-helper.js +2 -7
- package/cjs/scenegraph/group-creater/column-helper.js.map +1 -1
- package/cjs/scenegraph/scenegraph.js +1 -1
- package/cjs/scenegraph/utils/get-cell-merge.js +1 -1
- package/cjs/scenegraph/utils/get-cell-merge.js.map +1 -1
- package/cjs/scenegraph/utils/get-hierarchy-offset.js +8 -6
- package/cjs/scenegraph/utils/get-hierarchy-offset.js.map +1 -1
- package/cjs/state/select/is-cell-select-highlight.d.ts +1 -0
- package/cjs/state/select/is-cell-select-highlight.js +8 -2
- package/cjs/state/select/is-cell-select-highlight.js.map +1 -1
- package/cjs/themes/theme.d.ts +0 -2
- package/cjs/themes/theme.js +4 -12
- package/cjs/themes/theme.js.map +1 -1
- package/cjs/tools/helper.js.map +1 -1
- package/cjs/ts-types/base-table.d.ts +0 -9
- package/cjs/ts-types/base-table.js.map +1 -1
- package/cjs/ts-types/new-data-set.d.ts +0 -1
- package/cjs/ts-types/new-data-set.js.map +1 -1
- package/cjs/ts-types/table-engine.d.ts +1 -9
- package/cjs/ts-types/table-engine.js.map +1 -1
- package/cjs/ts-types/theme.d.ts +0 -1
- package/cjs/ts-types/theme.js.map +1 -1
- package/cjs/vrender.js.map +1 -1
- package/dist/vtable.js +2903 -3151
- package/dist/vtable.min.js +2 -2
- package/es/ListTable.d.ts +1 -2
- package/es/ListTable.js +192 -30
- package/es/ListTable.js.map +1 -1
- package/es/PivotTable.d.ts +1 -1
- package/es/PivotTable.js +3 -3
- package/es/PivotTable.js.map +1 -1
- package/es/core/BaseTable.d.ts +3 -5
- package/es/core/BaseTable.js +83 -11
- package/es/core/BaseTable.js.map +1 -1
- package/es/core/tableHelper.d.ts +2 -0
- package/es/core/tableHelper.js +16 -6
- package/es/core/tableHelper.js.map +1 -1
- package/es/data/CachedDataSource.d.ts +1 -10
- package/es/data/CachedDataSource.js +0 -79
- package/es/data/CachedDataSource.js.map +1 -1
- package/es/dataset/statistics-helper.js +2 -1
- package/es/edit/edit-manager.d.ts +1 -1
- package/es/edit/edit-manager.js +5 -4
- package/es/edit/edit-manager.js.map +1 -1
- package/es/event/listener/container-dom.js +7 -4
- package/es/event/listener/container-dom.js.map +1 -1
- package/es/event/listener/table-group.js.map +1 -1
- package/es/event/scroll.js +6 -4
- package/es/event/scroll.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/layout-helper.js +2 -2
- package/es/layout/layout-helper.js.map +1 -1
- package/es/layout/pivot-header-layout.js +5 -5
- package/es/layout/pivot-header-layout.js.map +1 -1
- package/es/layout/row-height-map.js +1 -2
- package/es/layout/simple-header-layout.d.ts +2 -1
- package/es/layout/simple-header-layout.js +87 -3
- package/es/layout/simple-header-layout.js.map +1 -1
- package/es/plugins/icons.js +1 -1
- package/es/plugins/themes.js +1 -1
- package/es/scenegraph/group-creater/cell-helper.js +6 -11
- package/es/scenegraph/group-creater/cell-helper.js.map +1 -1
- package/es/scenegraph/group-creater/column-helper.js +2 -7
- package/es/scenegraph/group-creater/column-helper.js.map +1 -1
- package/es/scenegraph/scenegraph.js +1 -1
- package/es/scenegraph/utils/get-cell-merge.js +1 -1
- package/es/scenegraph/utils/get-cell-merge.js.map +1 -1
- package/es/scenegraph/utils/get-hierarchy-offset.js +9 -7
- package/es/scenegraph/utils/get-hierarchy-offset.js.map +1 -1
- package/es/state/select/is-cell-select-highlight.d.ts +1 -0
- package/es/state/select/is-cell-select-highlight.js +5 -0
- package/es/state/select/is-cell-select-highlight.js.map +1 -1
- package/es/themes/theme.d.ts +0 -2
- package/es/themes/theme.js +4 -11
- package/es/themes/theme.js.map +1 -1
- package/es/tools/helper.js.map +1 -1
- package/es/ts-types/base-table.d.ts +0 -9
- package/es/ts-types/base-table.js.map +1 -1
- package/es/ts-types/new-data-set.d.ts +0 -1
- package/es/ts-types/new-data-set.js.map +1 -1
- package/es/ts-types/table-engine.d.ts +1 -9
- package/es/ts-types/table-engine.js.map +1 -1
- package/es/ts-types/theme.d.ts +0 -1
- package/es/ts-types/theme.js.map +1 -1
- package/es/vrender.js.map +1 -1
- package/package.json +4 -4
- package/cjs/core/group-helper.d.ts +0 -6
- package/cjs/core/group-helper.js +0 -22
- package/cjs/core/group-helper.js.map +0 -1
- package/cjs/core/record-helper.d.ts +0 -6
- package/cjs/core/record-helper.js +0 -230
- package/cjs/core/record-helper.js.map +0 -1
- package/cjs/core/style-helper.d.ts +0 -3
- package/cjs/core/style-helper.js +0 -110
- package/cjs/core/style-helper.js.map +0 -1
- package/cjs/layout/cell-range/simple-cell-range.d.ts +0 -4
- package/cjs/layout/cell-range/simple-cell-range.js +0 -106
- package/cjs/layout/cell-range/simple-cell-range.js.map +0 -1
- package/es/core/group-helper.d.ts +0 -6
- package/es/core/group-helper.js +0 -14
- package/es/core/group-helper.js.map +0 -1
- package/es/core/record-helper.d.ts +0 -6
- package/es/core/record-helper.js +0 -220
- package/es/core/record-helper.js.map +0 -1
- package/es/core/style-helper.d.ts +0 -3
- package/es/core/style-helper.js +0 -86
- package/es/core/style-helper.js.map +0 -1
- package/es/layout/cell-range/simple-cell-range.d.ts +0 -4
- package/es/layout/cell-range/simple-cell-range.js +0 -99
- package/es/layout/cell-range/simple-cell-range.js.map +0 -1
|
@@ -29,7 +29,7 @@ export declare class SimpleHeaderLayoutMap implements LayoutMapAPI {
|
|
|
29
29
|
_hasAggregationOnTopCount: number;
|
|
30
30
|
_hasAggregationOnBottomCount: number;
|
|
31
31
|
rowHierarchyType?: 'grid' | 'tree';
|
|
32
|
-
_cellRangeMap
|
|
32
|
+
private _cellRangeMap;
|
|
33
33
|
constructor(table: ListTable, columns: ColumnsDefine, showHeader: boolean, hierarchyIndent: number);
|
|
34
34
|
handleRowSeriesNumber(rowSeriesNumber: IRowSeriesNumber): void;
|
|
35
35
|
get transpose(): boolean;
|
|
@@ -97,6 +97,7 @@ export declare class SimpleHeaderLayoutMap implements LayoutMapAPI {
|
|
|
97
97
|
getBody(col: number, _row: number): ColumnData | SeriesNumberColumnData;
|
|
98
98
|
getBodyLayoutRangeById(id: LayoutObjectId): CellRange;
|
|
99
99
|
getCellRange(col: number, row: number): CellRange;
|
|
100
|
+
private getCellRangeTranspose;
|
|
100
101
|
isCellRangeEqual(col: number, row: number, targetCol: number, targetRow: number): boolean;
|
|
101
102
|
getRecordShowIndexByCell(col: number, row: number): number;
|
|
102
103
|
getRecordStartRowByRecordIndex(index: number): number;
|
|
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: !0
|
|
5
5
|
}), exports.SimpleHeaderLayoutMap = void 0;
|
|
6
6
|
|
|
7
|
-
const vutils_1 = require("@visactor/vutils"), global_1 = require("../tools/global"), get_chart_spec_1 = require("./chart-helper/get-chart-spec"), layout_helper_1 = require("./layout-helper"), tree_helper_1 = require("./tree-helper")
|
|
7
|
+
const vutils_1 = require("@visactor/vutils"), global_1 = require("../tools/global"), get_chart_spec_1 = require("./chart-helper/get-chart-spec"), layout_helper_1 = require("./layout-helper"), tree_helper_1 = require("./tree-helper");
|
|
8
8
|
|
|
9
9
|
class SimpleHeaderLayoutMap {
|
|
10
10
|
constructor(table, columns, showHeader, hierarchyIndent) {
|
|
@@ -480,7 +480,93 @@ class SimpleHeaderLayoutMap {
|
|
|
480
480
|
throw new Error(`can not found body layout @id=${id}`);
|
|
481
481
|
}
|
|
482
482
|
getCellRange(col, row) {
|
|
483
|
-
|
|
483
|
+
var _a, _b, _c;
|
|
484
|
+
if (-1 === col || -1 === row) return {
|
|
485
|
+
start: {
|
|
486
|
+
col: col,
|
|
487
|
+
row: row
|
|
488
|
+
},
|
|
489
|
+
end: {
|
|
490
|
+
col: col,
|
|
491
|
+
row: row
|
|
492
|
+
}
|
|
493
|
+
};
|
|
494
|
+
if (this._cellRangeMap.has(`$${col}$${row}`)) return this._cellRangeMap.get(`$${col}$${row}`);
|
|
495
|
+
let cellRange = {
|
|
496
|
+
start: {
|
|
497
|
+
col: col,
|
|
498
|
+
row: row
|
|
499
|
+
},
|
|
500
|
+
end: {
|
|
501
|
+
col: col,
|
|
502
|
+
row: row
|
|
503
|
+
}
|
|
504
|
+
};
|
|
505
|
+
if (this.transpose) cellRange = this.getCellRangeTranspose(col, row); else if (this.headerLevelCount <= row) {
|
|
506
|
+
if (this.headerLevelCount <= row && (null === (_b = null === (_a = this.columnObjects[col - this.leftRowSeriesNumberColumnCount]) || void 0 === _a ? void 0 : _a.define) || void 0 === _b ? void 0 : _b.mergeCell)) {
|
|
507
|
+
const value = this._table.getCellValue(col, row);
|
|
508
|
+
for (let r = row - 1; r >= this.headerLevelCount; r--) {
|
|
509
|
+
const last_Value = this._table.getCellValue(col, r);
|
|
510
|
+
if ("boolean" == typeof this.columnObjects[col - this.leftRowSeriesNumberColumnCount].define.mergeCell) {
|
|
511
|
+
if (value !== last_Value) break;
|
|
512
|
+
} else if (!this.columnObjects[col - this.leftRowSeriesNumberColumnCount].define.mergeCell(value, last_Value)) break;
|
|
513
|
+
cellRange.start.row = r;
|
|
514
|
+
}
|
|
515
|
+
for (let r = row + 1; r < this.rowCount; r++) {
|
|
516
|
+
const next_Value = this._table.getCellValue(col, r);
|
|
517
|
+
if ("boolean" == typeof this.columnObjects[col - this.leftRowSeriesNumberColumnCount].define.mergeCell) {
|
|
518
|
+
if (value !== next_Value) break;
|
|
519
|
+
} else if (!this.columnObjects[col - this.leftRowSeriesNumberColumnCount].define.mergeCell(value, next_Value)) break;
|
|
520
|
+
cellRange.end.row = r;
|
|
521
|
+
}
|
|
522
|
+
}
|
|
523
|
+
} else {
|
|
524
|
+
const id = this.getCellId(col, row);
|
|
525
|
+
for (let c = col - 1; c >= 0 && id === this.getCellId(c, row); c--) cellRange.start.col = c;
|
|
526
|
+
for (let c = col + 1; c < (null !== (_c = this.colCount) && void 0 !== _c ? _c : 0) && id === this.getCellId(c, row); c++) cellRange.end.col = c;
|
|
527
|
+
for (let r = row - 1; r >= 0 && id === this.getCellId(col, r); r--) cellRange.start.row = r;
|
|
528
|
+
for (let r = row + 1; r < this.headerLevelCount && id === this.getCellId(col, r); r++) cellRange.end.row = r;
|
|
529
|
+
}
|
|
530
|
+
return this._cellRangeMap.set(`$${col}$${row}`, cellRange), cellRange;
|
|
531
|
+
}
|
|
532
|
+
getCellRangeTranspose(col, row) {
|
|
533
|
+
var _a, _b, _c, _d;
|
|
534
|
+
const result = {
|
|
535
|
+
start: {
|
|
536
|
+
col: col,
|
|
537
|
+
row: row
|
|
538
|
+
},
|
|
539
|
+
end: {
|
|
540
|
+
col: col,
|
|
541
|
+
row: row
|
|
542
|
+
}
|
|
543
|
+
};
|
|
544
|
+
if (this.headerLevelCount + this.leftRowSeriesNumberColumnCount <= col || -1 === col && -1 === row) {
|
|
545
|
+
if (this.headerLevelCount + this.leftRowSeriesNumberColumnCount <= col && (null === (_b = null === (_a = this.columnObjects[row]) || void 0 === _a ? void 0 : _a.define) || void 0 === _b ? void 0 : _b.mergeCell)) {
|
|
546
|
+
const value = this._table.getCellValue(col, row);
|
|
547
|
+
for (let c = col - 1; c >= this.headerLevelCount + this.leftRowSeriesNumberColumnCount; c--) {
|
|
548
|
+
const last_Value = this._table.getCellValue(c, row);
|
|
549
|
+
if ("boolean" == typeof this.columnObjects[row].define.mergeCell) {
|
|
550
|
+
if (value !== last_Value) break;
|
|
551
|
+
} else if (!this.columnObjects[row].define.mergeCell(value, last_Value)) break;
|
|
552
|
+
result.start.col = c;
|
|
553
|
+
}
|
|
554
|
+
for (let c = col + 1; c < (null !== (_c = this.colCount) && void 0 !== _c ? _c : 0); c++) {
|
|
555
|
+
const next_Value = this._table.getCellValue(c, row);
|
|
556
|
+
if ("boolean" == typeof this.columnObjects[row].define.mergeCell) {
|
|
557
|
+
if (value !== next_Value) break;
|
|
558
|
+
} else if (!this.columnObjects[row].define.mergeCell(value, next_Value)) break;
|
|
559
|
+
result.end.col = c;
|
|
560
|
+
}
|
|
561
|
+
}
|
|
562
|
+
return result;
|
|
563
|
+
}
|
|
564
|
+
const id = this.getCellId(col, row);
|
|
565
|
+
for (let r = row - 1; r >= 0 && id === this.getCellId(col, r); r--) result.start.row = r;
|
|
566
|
+
for (let r = row + 1; r < (null !== (_d = this.rowCount) && void 0 !== _d ? _d : 0) && id === this.getCellId(col, r); r++) result.end.row = r;
|
|
567
|
+
for (let c = col - 1; c >= 0 && id === this.getCellId(c, row); c--) result.start.col = c;
|
|
568
|
+
for (let c = col + 1; c < this.headerLevelCount + this.leftRowSeriesNumberColumnCount && id === this.getCellId(c, row); c++) result.end.col = c;
|
|
569
|
+
return result;
|
|
484
570
|
}
|
|
485
571
|
isCellRangeEqual(col, row, targetCol, targetRow) {
|
|
486
572
|
const range1 = this.getCellRange(col, row), range2 = this.getCellRange(targetCol, targetRow);
|