@visactor/vtable 0.22.4-alpha.0 → 0.23.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 +3 -3
- package/cjs/ListTable.js +40 -31
- package/cjs/ListTable.js.map +1 -1
- package/cjs/PivotTable.d.ts +1 -1
- package/cjs/PivotTable.js +19 -17
- package/cjs/PivotTable.js.map +1 -1
- package/cjs/core/BaseTable.d.ts +1 -0
- package/cjs/core/BaseTable.js +5 -1
- package/cjs/core/BaseTable.js.map +1 -1
- package/cjs/core/TABLE_EVENT_TYPE.d.ts +5 -0
- package/cjs/core/TABLE_EVENT_TYPE.js +6 -1
- package/cjs/core/TABLE_EVENT_TYPE.js.map +1 -1
- package/cjs/core/tableHelper.js +1 -2
- package/cjs/core/tableHelper.js.map +1 -1
- package/cjs/data/CachedDataSource.d.ts +1 -0
- package/cjs/data/CachedDataSource.js +10 -6
- package/cjs/data/CachedDataSource.js.map +1 -1
- package/cjs/data/DataSource.d.ts +10 -3
- package/cjs/data/DataSource.js +159 -95
- package/cjs/data/DataSource.js.map +1 -1
- package/cjs/event/event.d.ts +2 -0
- package/cjs/event/event.js +29 -1
- package/cjs/event/event.js.map +1 -1
- package/cjs/event/listener/container-dom.js +78 -39
- package/cjs/event/listener/container-dom.js.map +1 -1
- package/cjs/event/listener/table-group.js +6 -5
- package/cjs/event/listener/table-group.js.map +1 -1
- package/cjs/event/media-click.js +2 -1
- package/cjs/event/sparkline-event.js +1 -2
- package/cjs/index.d.ts +1 -1
- package/cjs/index.js +1 -1
- package/cjs/index.js.map +1 -1
- package/cjs/layout/simple-header-layout.d.ts +7 -3
- package/cjs/layout/simple-header-layout.js +47 -35
- package/cjs/layout/simple-header-layout.js.map +1 -1
- package/cjs/scenegraph/component/table-component.js +12 -7
- package/cjs/scenegraph/component/table-component.js.map +1 -1
- package/cjs/scenegraph/layout/frozen.js +2 -2
- package/cjs/scenegraph/layout/frozen.js.map +1 -1
- package/cjs/scenegraph/scenegraph.d.ts +3 -0
- package/cjs/scenegraph/scenegraph.js +6 -3
- package/cjs/scenegraph/scenegraph.js.map +1 -1
- package/cjs/scenegraph/select/create-select-border.d.ts +1 -1
- package/cjs/scenegraph/select/create-select-border.js +24 -5
- package/cjs/scenegraph/select/create-select-border.js.map +1 -1
- package/cjs/scenegraph/select/delete-select-border.d.ts +1 -0
- package/cjs/scenegraph/select/delete-select-border.js +15 -4
- package/cjs/scenegraph/select/delete-select-border.js.map +1 -1
- package/cjs/scenegraph/select/move-select-border.js +3 -1
- package/cjs/scenegraph/select/move-select-border.js.map +1 -1
- package/cjs/scenegraph/select/update-select-border.js +9 -2
- package/cjs/scenegraph/select/update-select-border.js.map +1 -1
- package/cjs/state/cell-move/index.js +1 -1
- package/cjs/state/cell-move/index.js.map +1 -1
- package/cjs/state/resize/update-resize-column.js +1 -1
- package/cjs/state/resize/update-resize-column.js.map +1 -1
- package/cjs/state/select/update-position.js +39 -8
- package/cjs/state/select/update-position.js.map +1 -1
- package/cjs/state/state.d.ts +16 -0
- package/cjs/state/state.js +63 -14
- package/cjs/state/state.js.map +1 -1
- package/cjs/themes/component.js +1 -1
- package/cjs/themes/theme.js +4 -0
- package/cjs/themes/theme.js.map +1 -1
- package/cjs/tools/util.d.ts +0 -1
- package/cjs/tools/util.js +3 -13
- package/cjs/tools/util.js.map +1 -1
- package/cjs/ts-types/base-table.d.ts +4 -0
- package/cjs/ts-types/base-table.js.map +1 -1
- package/cjs/ts-types/events.d.ts +26 -0
- package/cjs/ts-types/events.js.map +1 -1
- package/cjs/ts-types/table-engine.d.ts +4 -4
- package/cjs/ts-types/table-engine.js.map +1 -1
- package/cjs/ts-types/theme.d.ts +1 -0
- package/cjs/ts-types/theme.js.map +1 -1
- package/cjs/vrender.js.map +1 -1
- package/dist/vtable.js +936 -357
- package/dist/vtable.min.js +2 -2
- package/es/ListTable.d.ts +3 -3
- package/es/ListTable.js +41 -32
- package/es/ListTable.js.map +1 -1
- package/es/PivotTable.d.ts +1 -1
- package/es/PivotTable.js +19 -17
- package/es/PivotTable.js.map +1 -1
- package/es/core/BaseTable.d.ts +1 -0
- package/es/core/BaseTable.js +6 -2
- package/es/core/BaseTable.js.map +1 -1
- package/es/core/TABLE_EVENT_TYPE.d.ts +5 -0
- package/es/core/TABLE_EVENT_TYPE.js +6 -1
- package/es/core/TABLE_EVENT_TYPE.js.map +1 -1
- package/es/core/tableHelper.js +1 -2
- package/es/core/tableHelper.js.map +1 -1
- package/es/data/CachedDataSource.d.ts +1 -0
- package/es/data/CachedDataSource.js +9 -7
- package/es/data/CachedDataSource.js.map +1 -1
- package/es/data/DataSource.d.ts +10 -3
- package/es/data/DataSource.js +159 -95
- package/es/data/DataSource.js.map +1 -1
- package/es/event/event.d.ts +2 -0
- package/es/event/event.js +29 -1
- package/es/event/event.js.map +1 -1
- package/es/event/listener/container-dom.js +78 -39
- package/es/event/listener/container-dom.js.map +1 -1
- package/es/event/listener/table-group.js +6 -5
- package/es/event/listener/table-group.js.map +1 -1
- package/es/event/media-click.js +2 -1
- package/es/event/sparkline-event.js +1 -2
- package/es/index.d.ts +1 -1
- package/es/index.js +1 -1
- package/es/index.js.map +1 -1
- package/es/layout/simple-header-layout.d.ts +7 -3
- package/es/layout/simple-header-layout.js +47 -35
- package/es/layout/simple-header-layout.js.map +1 -1
- package/es/scenegraph/component/table-component.js +12 -7
- package/es/scenegraph/component/table-component.js.map +1 -1
- package/es/scenegraph/layout/frozen.js +2 -2
- package/es/scenegraph/layout/frozen.js.map +1 -1
- package/es/scenegraph/scenegraph.d.ts +3 -0
- package/es/scenegraph/scenegraph.js +7 -4
- package/es/scenegraph/scenegraph.js.map +1 -1
- package/es/scenegraph/select/create-select-border.d.ts +1 -1
- package/es/scenegraph/select/create-select-border.js +24 -5
- package/es/scenegraph/select/create-select-border.js.map +1 -1
- package/es/scenegraph/select/delete-select-border.d.ts +1 -0
- package/es/scenegraph/select/delete-select-border.js +12 -2
- package/es/scenegraph/select/delete-select-border.js.map +1 -1
- package/es/scenegraph/select/move-select-border.js +3 -1
- package/es/scenegraph/select/move-select-border.js.map +1 -1
- package/es/scenegraph/select/update-select-border.js +9 -2
- package/es/scenegraph/select/update-select-border.js.map +1 -1
- package/es/state/cell-move/index.js +1 -1
- package/es/state/cell-move/index.js.map +1 -1
- package/es/state/resize/update-resize-column.js +1 -1
- package/es/state/resize/update-resize-column.js.map +1 -1
- package/es/state/select/update-position.js +39 -8
- package/es/state/select/update-position.js.map +1 -1
- package/es/state/state.d.ts +16 -0
- package/es/state/state.js +63 -14
- package/es/state/state.js.map +1 -1
- package/es/themes/component.js +1 -1
- package/es/themes/theme.js +4 -0
- package/es/themes/theme.js.map +1 -1
- package/es/tools/util.d.ts +0 -1
- package/es/tools/util.js +0 -10
- package/es/tools/util.js.map +1 -1
- package/es/ts-types/base-table.d.ts +4 -0
- package/es/ts-types/base-table.js.map +1 -1
- package/es/ts-types/events.d.ts +26 -0
- package/es/ts-types/events.js.map +1 -1
- package/es/ts-types/table-engine.d.ts +4 -4
- package/es/ts-types/table-engine.js.map +1 -1
- package/es/ts-types/theme.d.ts +1 -0
- package/es/ts-types/theme.js.map +1 -1
- package/es/vrender.js.map +1 -1
- package/package.json +3 -3
package/cjs/ListTable.d.ts
CHANGED
|
@@ -15,8 +15,8 @@ export declare class ListTable extends BaseTable implements ListTableAPI {
|
|
|
15
15
|
isPivotTable(): false;
|
|
16
16
|
isPivotChart(): false;
|
|
17
17
|
get sortState(): SortState | SortState[];
|
|
18
|
-
get records(): any;
|
|
19
|
-
get recordsCount():
|
|
18
|
+
get records(): any[];
|
|
19
|
+
get recordsCount(): number;
|
|
20
20
|
updateColumns(columns: ColumnsDefine): void;
|
|
21
21
|
get columns(): ColumnsDefine;
|
|
22
22
|
get header(): ColumnsDefine;
|
|
@@ -68,7 +68,7 @@ export declare class ListTable extends BaseTable implements ListTableAPI {
|
|
|
68
68
|
completeEditCell(): void;
|
|
69
69
|
getEditor(col: number, row: number): IEditor<any>;
|
|
70
70
|
isHasEditorDefine(col: number, row: number): boolean;
|
|
71
|
-
changeCellValue(col: number, row: number, value: string | number | null): void;
|
|
71
|
+
changeCellValue(col: number, row: number, value: string | number | null, workOnEditableCell?: boolean): void;
|
|
72
72
|
changeCellValues(startCol: number, startRow: number, values: (string | number)[][], workOnEditableCell?: boolean): void;
|
|
73
73
|
addRecord(record: any, recordIndex?: number): void;
|
|
74
74
|
addRecords(records: any[], recordIndex?: number): void;
|
package/cjs/ListTable.js
CHANGED
|
@@ -66,10 +66,10 @@ class ListTable extends core_1.BaseTable {
|
|
|
66
66
|
}
|
|
67
67
|
get records() {
|
|
68
68
|
var _a;
|
|
69
|
-
return null === (_a = this.dataSource) || void 0 === _a ? void 0 : _a.
|
|
69
|
+
return null === (_a = this.dataSource) || void 0 === _a ? void 0 : _a.records;
|
|
70
70
|
}
|
|
71
71
|
get recordsCount() {
|
|
72
|
-
return this.dataSource.
|
|
72
|
+
return this.dataSource.records.length;
|
|
73
73
|
}
|
|
74
74
|
updateColumns(columns) {
|
|
75
75
|
const oldHoverState = {
|
|
@@ -417,8 +417,8 @@ class ListTable extends core_1.BaseTable {
|
|
|
417
417
|
this.stateManager.updateSortState(sortState);
|
|
418
418
|
}
|
|
419
419
|
updateFilterRules(filterRules) {
|
|
420
|
-
this.scenegraph.clearCells(), this.
|
|
421
|
-
|
|
420
|
+
this.scenegraph.clearCells(), this.sortState ? (this.dataSource.updateFilterRulesForSorted(filterRules),
|
|
421
|
+
(0, tableHelper_1.sortRecords)(this)) : this.dataSource.updateFilterRules(filterRules),
|
|
422
422
|
this.refreshRowColCount(), this.scenegraph.createSceneGraph();
|
|
423
423
|
}
|
|
424
424
|
getCheckboxState(field) {
|
|
@@ -506,34 +506,35 @@ class ListTable extends core_1.BaseTable {
|
|
|
506
506
|
}
|
|
507
507
|
return (0, vutils_1.isValid)(editorDefine);
|
|
508
508
|
}
|
|
509
|
-
changeCellValue(col, row, value) {
|
|
510
|
-
|
|
511
|
-
|
|
512
|
-
|
|
513
|
-
|
|
514
|
-
if (
|
|
515
|
-
|
|
516
|
-
|
|
517
|
-
|
|
518
|
-
|
|
509
|
+
changeCellValue(col, row, value, workOnEditableCell = !1) {
|
|
510
|
+
if (workOnEditableCell && this.isHasEditorDefine(col, row) || !1 === workOnEditableCell) {
|
|
511
|
+
const recordIndex = this.getRecordShowIndexByCell(col, row), {field: field} = this.internalProps.layoutMap.getBody(col, row), beforeChangeValue = this.getCellRawValue(col, row);
|
|
512
|
+
this.isHeader(col, row) ? this.internalProps.layoutMap.updateColumnTitle(col, row, value) : this.dataSource.changeFieldValue(value, recordIndex, field, col, row, this);
|
|
513
|
+
const range = this.getCellRange(col, row), aggregators = this.internalProps.layoutMap.getAggregatorsByCell(col, row);
|
|
514
|
+
if (aggregators) {
|
|
515
|
+
if (Array.isArray(aggregators)) for (let i = 0; i < (null == aggregators ? void 0 : aggregators.length); i++) aggregators[i].recalculate(); else aggregators.recalculate();
|
|
516
|
+
const aggregatorCells = this.internalProps.layoutMap.getAggregatorCellAddress(range.start.col, range.start.row, range.end.col, range.end.row);
|
|
517
|
+
for (let i = 0; i < aggregatorCells.length; i++) {
|
|
518
|
+
const range = this.getCellRange(aggregatorCells[i].col, aggregatorCells[i].row);
|
|
519
|
+
for (let sCol = range.start.col; sCol <= range.end.col; sCol++) for (let sRow = range.start.row; sRow <= range.end.row; sRow++) this.scenegraph.updateCellContent(sCol, sRow);
|
|
520
|
+
}
|
|
519
521
|
}
|
|
522
|
+
for (let sCol = range.start.col; sCol <= range.end.col; sCol++) for (let sRow = range.start.row; sRow <= range.end.row; sRow++) this.scenegraph.updateCellContent(sCol, sRow);
|
|
523
|
+
if ("adaptive" === this.widthMode || this.autoFillWidth && this.getAllColsWidth() <= this.tableNoFrameWidth) 0 === this.internalProps._widthResizedColMap.size && this.scenegraph.recalculateColWidths(); else if (!this.internalProps._widthResizedColMap.has(col)) {
|
|
524
|
+
const oldWidth = this.getColWidth(col), newWidth = (0, compute_col_width_1.computeColWidth)(col, 0, this.rowCount - 1, this, !1);
|
|
525
|
+
newWidth !== oldWidth && this.scenegraph.updateColWidth(col, newWidth - oldWidth);
|
|
526
|
+
}
|
|
527
|
+
if ("adaptive" === this.heightMode || this.autoFillHeight && this.getAllRowsHeight() <= this.tableNoFrameHeight) this.scenegraph.recalculateRowHeights(); else if ("autoHeight" === this.heightMode) {
|
|
528
|
+
const oldHeight = this.getRowHeight(row), newHeight = (0, compute_row_height_1.computeRowHeight)(row, 0, this.colCount - 1, this);
|
|
529
|
+
this.scenegraph.updateRowHeight(row, newHeight - oldHeight);
|
|
530
|
+
}
|
|
531
|
+
this.fireListeners(TABLE_EVENT_TYPE_1.TABLE_EVENT_TYPE.CHANGE_CELL_VALUE, {
|
|
532
|
+
col: col,
|
|
533
|
+
row: row,
|
|
534
|
+
rawValue: beforeChangeValue,
|
|
535
|
+
changedValue: this.getCellOriginValue(col, row)
|
|
536
|
+
}), this.scenegraph.updateNextFrame();
|
|
520
537
|
}
|
|
521
|
-
const range = this.getCellRange(col, row);
|
|
522
|
-
for (let sCol = range.start.col; sCol <= range.end.col; sCol++) for (let sRow = range.start.row; sRow <= range.end.row; sRow++) this.scenegraph.updateCellContent(sCol, sRow);
|
|
523
|
-
if ("adaptive" === this.widthMode || this.autoFillWidth && this.getAllColsWidth() <= this.tableNoFrameWidth) 0 === this.internalProps._widthResizedColMap.size && this.scenegraph.recalculateColWidths(); else if (!this.internalProps._widthResizedColMap.has(col)) {
|
|
524
|
-
const oldWidth = this.getColWidth(col), newWidth = (0, compute_col_width_1.computeColWidth)(col, 0, this.rowCount - 1, this, !1);
|
|
525
|
-
newWidth !== oldWidth && this.scenegraph.updateColWidth(col, newWidth - oldWidth);
|
|
526
|
-
}
|
|
527
|
-
if ("adaptive" === this.heightMode || this.autoFillHeight && this.getAllRowsHeight() <= this.tableNoFrameHeight) this.scenegraph.recalculateRowHeights(); else if ("autoHeight" === this.heightMode) {
|
|
528
|
-
const oldHeight = this.getRowHeight(row), newHeight = (0, compute_row_height_1.computeRowHeight)(row, 0, this.colCount - 1, this);
|
|
529
|
-
this.scenegraph.updateRowHeight(row, newHeight - oldHeight);
|
|
530
|
-
}
|
|
531
|
-
this.fireListeners(TABLE_EVENT_TYPE_1.TABLE_EVENT_TYPE.CHANGE_CELL_VALUE, {
|
|
532
|
-
col: col,
|
|
533
|
-
row: row,
|
|
534
|
-
rawValue: beforeChangeValue,
|
|
535
|
-
changedValue: this.getCellOriginValue(col, row)
|
|
536
|
-
}), this.scenegraph.updateNextFrame();
|
|
537
538
|
}
|
|
538
539
|
changeCellValues(startCol, startRow, values, workOnEditableCell = !1) {
|
|
539
540
|
let pasteColEnd = startCol, pasteRowEnd = startRow;
|
|
@@ -554,7 +555,15 @@ class ListTable extends core_1.BaseTable {
|
|
|
554
555
|
}
|
|
555
556
|
pasteColEnd = Math.max(pasteColEnd, thisRowPasteColEnd);
|
|
556
557
|
}
|
|
557
|
-
const startRange = this.getCellRange(startCol, startRow), range = this.getCellRange(pasteColEnd, pasteRowEnd);
|
|
558
|
+
const startRange = this.getCellRange(startCol, startRow), range = this.getCellRange(pasteColEnd, pasteRowEnd), aggregators = this.internalProps.layoutMap.getAggregatorsByCellRange(startRange.start.col, startRange.start.row, range.end.col, range.end.row);
|
|
559
|
+
if (aggregators) {
|
|
560
|
+
for (let i = 0; i < (null == aggregators ? void 0 : aggregators.length); i++) aggregators[i].recalculate();
|
|
561
|
+
const aggregatorCells = this.internalProps.layoutMap.getAggregatorCellAddress(startRange.start.col, startRange.start.row, range.end.col, range.end.row);
|
|
562
|
+
for (let i = 0; i < aggregatorCells.length; i++) {
|
|
563
|
+
const range = this.getCellRange(aggregatorCells[i].col, aggregatorCells[i].row);
|
|
564
|
+
for (let sCol = range.start.col; sCol <= range.end.col; sCol++) for (let sRow = range.start.row; sRow <= range.end.row; sRow++) this.scenegraph.updateCellContent(sCol, sRow);
|
|
565
|
+
}
|
|
566
|
+
}
|
|
558
567
|
for (let sCol = startRange.start.col; sCol <= range.end.col; sCol++) for (let sRow = startRange.start.row; sRow <= range.end.row; sRow++) this.scenegraph.updateCellContent(sCol, sRow);
|
|
559
568
|
if ("adaptive" === this.widthMode || this.autoFillWidth && this.getAllColsWidth() <= this.tableNoFrameWidth) 0 === this.internalProps._widthResizedColMap.size && this.scenegraph.recalculateColWidths(); else for (let sCol = startCol; sCol <= range.end.col; sCol++) if (!this.internalProps._widthResizedColMap.has(sCol)) {
|
|
560
569
|
const oldWidth = this.getColWidth(sCol), newWidth = (0, compute_col_width_1.computeColWidth)(sCol, 0, this.rowCount - 1, this, !1);
|