@visactor/vtable 0.24.1 → 0.24.2-alpha.1
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/PivotTable.js +52 -16
- package/cjs/PivotTable.js.map +1 -1
- package/cjs/core/BaseTable.js +1 -1
- package/cjs/core/BaseTable.js.map +1 -1
- package/cjs/dataset/flatDataToObject.d.ts +8 -3
- package/cjs/dataset/flatDataToObject.js +35 -8
- package/cjs/dataset/flatDataToObject.js.map +1 -1
- package/cjs/edit/edit-manager.js +0 -1
- package/cjs/edit/edit-manager.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.d.ts +1 -0
- package/cjs/layout/pivot-header-layout.js +16 -4
- package/cjs/layout/pivot-header-layout.js.map +1 -1
- package/cjs/state/state.js +1 -1
- package/cjs/themes/component.js +1 -1
- package/cjs/ts-types/pivot-table/dimension/basic-dimension.d.ts +6 -1
- package/cjs/ts-types/pivot-table/dimension/basic-dimension.js.map +1 -1
- package/cjs/ts-types/pivot-table/indicator/basic-indicator.d.ts +3 -0
- package/cjs/ts-types/pivot-table/indicator/basic-indicator.js.map +1 -1
- package/cjs/ts-types/table-engine.d.ts +3 -0
- package/cjs/ts-types/table-engine.js.map +1 -1
- package/cjs/vrender.js.map +1 -1
- package/dist/vtable.js +159 -32
- package/dist/vtable.min.js +1 -1
- package/es/PivotTable.js +52 -16
- package/es/PivotTable.js.map +1 -1
- package/es/core/BaseTable.js +1 -1
- package/es/core/BaseTable.js.map +1 -1
- package/es/dataset/flatDataToObject.d.ts +8 -3
- package/es/dataset/flatDataToObject.js +34 -8
- package/es/dataset/flatDataToObject.js.map +1 -1
- package/es/edit/edit-manager.js +0 -1
- package/es/edit/edit-manager.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.d.ts +1 -0
- package/es/layout/pivot-header-layout.js +12 -2
- package/es/layout/pivot-header-layout.js.map +1 -1
- package/es/state/state.js +1 -1
- package/es/themes/component.js +1 -1
- package/es/ts-types/pivot-table/dimension/basic-dimension.d.ts +6 -1
- package/es/ts-types/pivot-table/dimension/basic-dimension.js.map +1 -1
- package/es/ts-types/pivot-table/indicator/basic-indicator.d.ts +3 -0
- package/es/ts-types/pivot-table/indicator/basic-indicator.js.map +1 -1
- package/es/ts-types/table-engine.d.ts +3 -0
- package/es/ts-types/table-engine.js.map +1 -1
- package/es/vrender.js.map +1 -1
- package/package.json +5 -5
package/cjs/PivotTable.js
CHANGED
|
@@ -348,14 +348,37 @@ class PivotTable extends BaseTable_1.BaseTable {
|
|
|
348
348
|
})), rowKeys = cellDimensionPath.rowHeaderPaths.map((rowPath => {
|
|
349
349
|
var _a;
|
|
350
350
|
return null !== (_a = rowPath.indicatorKey) && void 0 !== _a ? _a : rowPath.value;
|
|
351
|
-
})), treeNode = this.flatDataToObjects.getTreeNode(rowKeys, colKeys, this.internalProps.layoutMap.getBody(col, row).indicatorKey
|
|
351
|
+
})), treeNode = this.flatDataToObjects.getTreeNode(rowKeys, colKeys, this.internalProps.layoutMap.getBody(col, row).indicatorKey);
|
|
352
352
|
return null == treeNode ? void 0 : treeNode.record;
|
|
353
353
|
}
|
|
354
354
|
const rowIndex = this.getBodyIndexByRow(row), colIndex = this.getBodyIndexByCol(col);
|
|
355
355
|
return null === (_a = this.records[rowIndex]) || void 0 === _a ? void 0 : _a[colIndex];
|
|
356
356
|
}
|
|
357
357
|
getCellRawRecord(col, row) {
|
|
358
|
-
|
|
358
|
+
var _a;
|
|
359
|
+
if (this.internalProps.layoutMap.isHeader(col, row)) return;
|
|
360
|
+
if (this.dataset) {
|
|
361
|
+
const cellDimensionPath = this.internalProps.layoutMap.getCellHeaderPaths(col, row), colKeys = cellDimensionPath.colHeaderPaths.map((colPath => {
|
|
362
|
+
var _a;
|
|
363
|
+
return null !== (_a = colPath.indicatorKey) && void 0 !== _a ? _a : colPath.value;
|
|
364
|
+
})), rowKeys = cellDimensionPath.rowHeaderPaths.map((rowPath => {
|
|
365
|
+
var _a;
|
|
366
|
+
return null !== (_a = rowPath.indicatorKey) && void 0 !== _a ? _a : rowPath.value;
|
|
367
|
+
}));
|
|
368
|
+
return this.dataset.getAggregator(this.internalProps.layoutMap.indicatorsAsCol ? rowKeys : rowKeys.slice(0, -1), this.internalProps.layoutMap.indicatorsAsCol ? colKeys.slice(0, -1) : colKeys, this.internalProps.layoutMap.getIndicatorKey(col, row)).records;
|
|
369
|
+
}
|
|
370
|
+
if (this.flatDataToObjects) {
|
|
371
|
+
const cellDimensionPath = this.internalProps.layoutMap.getCellHeaderPaths(col, row), colKeys = cellDimensionPath.colHeaderPaths.map((colPath => {
|
|
372
|
+
var _a;
|
|
373
|
+
return null !== (_a = colPath.indicatorKey) && void 0 !== _a ? _a : colPath.value;
|
|
374
|
+
})), rowKeys = cellDimensionPath.rowHeaderPaths.map((rowPath => {
|
|
375
|
+
var _a;
|
|
376
|
+
return null !== (_a = rowPath.indicatorKey) && void 0 !== _a ? _a : rowPath.value;
|
|
377
|
+
})), treeNode = this.flatDataToObjects.getTreeNode(rowKeys, colKeys, this.internalProps.layoutMap.getBody(col, row).indicatorKey, !1);
|
|
378
|
+
return null == treeNode ? void 0 : treeNode.record;
|
|
379
|
+
}
|
|
380
|
+
const rowIndex = this.getBodyIndexByRow(row), colIndex = this.getBodyIndexByCol(col);
|
|
381
|
+
return null === (_a = this.records[rowIndex]) || void 0 === _a ? void 0 : _a[colIndex];
|
|
359
382
|
}
|
|
360
383
|
updateSortRules(sortRules) {
|
|
361
384
|
this.internalProps.dataConfig.sortRules = sortRules, this.dataset.updateSortRules(sortRules),
|
|
@@ -509,9 +532,15 @@ class PivotTable extends BaseTable_1.BaseTable {
|
|
|
509
532
|
this.editorManager.completeEdit();
|
|
510
533
|
}
|
|
511
534
|
getEditor(col, row) {
|
|
512
|
-
var _a;
|
|
513
|
-
|
|
514
|
-
|
|
535
|
+
var _a, _b;
|
|
536
|
+
let editorDefine;
|
|
537
|
+
if (this.isHeader(col, row) && !this.isCornerHeader(col, row)) {
|
|
538
|
+
const define = this.getHeaderDefine(col, row);
|
|
539
|
+
editorDefine = null !== (_a = null == define ? void 0 : define.headerEditor) && void 0 !== _a ? _a : this.options.headerEditor;
|
|
540
|
+
} else {
|
|
541
|
+
const define = this.getBodyColumnDefine(col, row);
|
|
542
|
+
editorDefine = null !== (_b = null == define ? void 0 : define.editor) && void 0 !== _b ? _b : this.options.editor;
|
|
543
|
+
}
|
|
515
544
|
if ("function" == typeof editorDefine) {
|
|
516
545
|
editorDefine = editorDefine({
|
|
517
546
|
col: col,
|
|
@@ -541,9 +570,11 @@ class PivotTable extends BaseTable_1.BaseTable {
|
|
|
541
570
|
changeCellValue(col, row, value, workOnEditableCell = !1) {
|
|
542
571
|
if (workOnEditableCell && this.isHasEditorDefine(col, row) || !1 === workOnEditableCell) {
|
|
543
572
|
let newValue = value;
|
|
544
|
-
|
|
545
|
-
this._changeCellValueToDataSet(col, row, newValue)
|
|
546
|
-
|
|
573
|
+
"number" == typeof this.getCellRawValue(col, row) && (0, util_1.isAllDigits)(value) && (newValue = parseFloat(value)),
|
|
574
|
+
this._changeCellValueToDataSet(col, row, newValue);
|
|
575
|
+
const range = this.getCellRange(col, row);
|
|
576
|
+
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);
|
|
577
|
+
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)) {
|
|
547
578
|
const oldWidth = this.getColWidth(col), newWidth = (0, compute_col_width_1.computeColWidth)(col, 0, this.rowCount - 1, this, !1);
|
|
548
579
|
newWidth !== oldWidth && this.scenegraph.updateColWidth(col, newWidth - oldWidth);
|
|
549
580
|
}
|
|
@@ -597,6 +628,7 @@ class PivotTable extends BaseTable_1.BaseTable {
|
|
|
597
628
|
this.scenegraph.updateNextFrame();
|
|
598
629
|
}
|
|
599
630
|
_changeCellValueToDataSet(col, row, newValue) {
|
|
631
|
+
var _a, _b, _c;
|
|
600
632
|
if (this.dataset) {
|
|
601
633
|
const cellDimensionPath = this.internalProps.layoutMap.getCellHeaderPaths(col, row), colKeys = cellDimensionPath.colHeaderPaths.map((colPath => {
|
|
602
634
|
var _a;
|
|
@@ -607,14 +639,18 @@ class PivotTable extends BaseTable_1.BaseTable {
|
|
|
607
639
|
}));
|
|
608
640
|
this.dataset.changeTreeNodeValue(this.internalProps.layoutMap.indicatorsAsCol ? rowKeys : rowKeys.slice(0, -1), this.internalProps.layoutMap.indicatorsAsCol ? colKeys.slice(0, -1) : colKeys, this.internalProps.layoutMap.getIndicatorKey(col, row), newValue);
|
|
609
641
|
} else if (this.flatDataToObjects) {
|
|
610
|
-
const cellDimensionPath = this.internalProps.layoutMap.getCellHeaderPaths(col, row)
|
|
611
|
-
|
|
612
|
-
|
|
613
|
-
|
|
614
|
-
|
|
615
|
-
|
|
616
|
-
|
|
617
|
-
|
|
642
|
+
const cellDimensionPath = this.internalProps.layoutMap.getCellHeaderPaths(col, row);
|
|
643
|
+
if (this.isHeader(col, row)) this.internalProps.layoutMap.changeTreeNodeTitle(col, row, newValue),
|
|
644
|
+
this.flatDataToObjects.changeRecordFieldValue((null === (_a = cellDimensionPath.colHeaderPaths) || void 0 === _a ? void 0 : _a.length) ? null !== (_b = cellDimensionPath.colHeaderPaths[cellDimensionPath.colHeaderPaths.length - 1].indicatorKey) && void 0 !== _b ? _b : cellDimensionPath.colHeaderPaths[cellDimensionPath.colHeaderPaths.length - 1].dimensionKey : null !== (_c = cellDimensionPath.rowHeaderPaths[cellDimensionPath.rowHeaderPaths.length - 1].indicatorKey) && void 0 !== _c ? _c : cellDimensionPath.rowHeaderPaths[cellDimensionPath.rowHeaderPaths.length - 1].dimensionKey, newValue); else {
|
|
645
|
+
const colKeys = cellDimensionPath.colHeaderPaths.map((colPath => {
|
|
646
|
+
var _a;
|
|
647
|
+
return null !== (_a = colPath.indicatorKey) && void 0 !== _a ? _a : colPath.value;
|
|
648
|
+
})), rowKeys = cellDimensionPath.rowHeaderPaths.map((rowPath => {
|
|
649
|
+
var _a;
|
|
650
|
+
return null !== (_a = rowPath.indicatorKey) && void 0 !== _a ? _a : rowPath.value;
|
|
651
|
+
}));
|
|
652
|
+
this.flatDataToObjects.changeTreeNodeValue(rowKeys, colKeys, this.internalProps.layoutMap.getBody(col, row).indicatorKey, newValue);
|
|
653
|
+
}
|
|
618
654
|
} else {
|
|
619
655
|
const rowIndex = this.getBodyIndexByRow(row), colIndex = this.getBodyIndexByCol(col);
|
|
620
656
|
this.records[rowIndex][colIndex] = newValue;
|