@visactor/vtable 1.25.1-alpha.1 → 1.26.1-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 +2 -1
- package/cjs/ListTable.js.map +1 -1
- package/cjs/PivotChart.js +3 -2
- package/cjs/PivotChart.js.map +1 -1
- package/cjs/PivotTable.js +85 -13
- package/cjs/PivotTable.js.map +1 -1
- package/cjs/core/BaseTable.js +8 -5
- package/cjs/core/BaseTable.js.map +1 -1
- package/cjs/core/FouseInput.js +2 -1
- package/cjs/data/DataSource.js +2 -1
- package/cjs/edit/edit-manager.js +0 -1
- package/cjs/event/listener/container-dom.js +5 -2
- package/cjs/event/listener/container-dom.js.map +1 -1
- package/cjs/event/listener/table-group.js +24 -3
- package/cjs/event/listener/table-group.js.map +1 -1
- package/cjs/header-helper/header-helper.js +1 -0
- package/cjs/header-helper/header-helper.js.map +1 -1
- package/cjs/header-helper/style.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/index.js +1 -1
- package/cjs/layout/layout-helper.js +2 -1
- package/cjs/layout/pivot-header-layout.js +1 -1
- package/cjs/layout/row-height-map.js +1 -1
- package/cjs/layout/simple-header-layout.js +1 -1
- package/cjs/layout/tree-helper.js +1 -1
- package/cjs/plugins/index.js +1 -1
- package/cjs/plugins/interface.js +1 -1
- package/cjs/plugins/invert-highlight.js +1 -1
- package/cjs/plugins/list-tree-stick-cell.js +1 -1
- package/cjs/plugins/plugin-manager.js +1 -1
- package/cjs/scenegraph/group-creater/cell-helper.js +6 -3
- package/cjs/scenegraph/group-creater/cell-helper.js.map +1 -1
- package/cjs/scenegraph/scenegraph.js +1 -1
- package/cjs/state/select/update-position.js +2 -1
- package/cjs/state/select/update-position.js.map +1 -1
- package/cjs/state/state.d.ts +1 -0
- package/cjs/state/state.js +7 -1
- package/cjs/state/state.js.map +1 -1
- package/cjs/ts-types/dataset/aggregation.js +94 -39
- package/cjs/ts-types/dataset/aggregation.js.map +1 -1
- package/cjs/ts-types/icon.d.ts +2 -2
- package/cjs/ts-types/icon.js.map +1 -1
- package/cjs/vrender.js.map +1 -1
- package/dist/vtable.js +293 -87
- package/dist/vtable.min.js +1 -1
- package/es/ListTable.js +1 -1
- package/es/ListTable.js.map +1 -1
- package/es/PivotChart.js +2 -2
- package/es/PivotChart.js.map +1 -1
- package/es/PivotTable.js +85 -13
- package/es/PivotTable.js.map +1 -1
- package/es/core/BaseTable.js +8 -5
- package/es/core/BaseTable.js.map +1 -1
- package/es/core/FouseInput.js +2 -1
- package/es/data/DataSource.js +2 -1
- package/es/edit/edit-manager.js +1 -2
- package/es/event/listener/container-dom.js +4 -1
- package/es/event/listener/container-dom.js.map +1 -1
- package/es/event/listener/table-group.js +24 -3
- package/es/event/listener/table-group.js.map +1 -1
- package/es/header-helper/header-helper.js +1 -0
- package/es/header-helper/header-helper.js.map +1 -1
- package/es/header-helper/style.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/index.js +1 -1
- package/es/layout/layout-helper.js +2 -1
- package/es/layout/pivot-header-layout.js +1 -1
- package/es/layout/row-height-map.js +1 -1
- package/es/layout/simple-header-layout.js +1 -1
- package/es/layout/tree-helper.js +1 -1
- package/es/plugins/index.js +1 -1
- package/es/plugins/interface.js +1 -1
- package/es/plugins/invert-highlight.js +1 -1
- package/es/plugins/list-tree-stick-cell.js +1 -1
- package/es/plugins/plugin-manager.js +1 -1
- package/es/scenegraph/group-creater/cell-helper.js +6 -3
- package/es/scenegraph/group-creater/cell-helper.js.map +1 -1
- package/es/scenegraph/scenegraph.js +1 -1
- package/es/state/select/update-position.js +3 -0
- package/es/state/select/update-position.js.map +1 -1
- package/es/state/state.d.ts +1 -0
- package/es/state/state.js +6 -1
- package/es/state/state.js.map +1 -1
- package/es/ts-types/dataset/aggregation.js +68 -38
- package/es/ts-types/dataset/aggregation.js.map +1 -1
- package/es/ts-types/icon.d.ts +2 -2
- package/es/ts-types/icon.js.map +1 -1
- package/es/vrender.js.map +1 -1
- package/package.json +6 -5
package/cjs/PivotTable.js
CHANGED
|
@@ -517,7 +517,7 @@ class PivotTable extends BaseTable_1.BaseTable {
|
|
|
517
517
|
this.pivotSortState = [];
|
|
518
518
|
const sortRules = null !== (_b = null === (_a = this.internalProps.dataConfig) || void 0 === _a ? void 0 : _a.sortRules) && void 0 !== _b ? _b : [];
|
|
519
519
|
for (let i = 0; i < sortRules.length; i++) {
|
|
520
|
-
const sortRule = sortRules[i], dimensions = [];
|
|
520
|
+
const sortRule = sortRules[i], dimensions = [], sortType = sortRule.sortType ? sortRule.sortType.toUpperCase() : "ASC";
|
|
521
521
|
if (sortRule.sortByIndicator && sortRule.sortField === (this.dataset.indicatorsAsCol ? this.dataset.rows[this.dataset.rows.length - 1] : this.dataset.columns[this.dataset.columns.length - 1])) {
|
|
522
522
|
for (let j = 0; j < sortRule.query.length; j++) dimensions.push({
|
|
523
523
|
dimensionKey: this.dataset.indicatorsAsCol ? this.dataset.columns[j] : this.dataset.rows[j],
|
|
@@ -526,17 +526,46 @@ class PivotTable extends BaseTable_1.BaseTable {
|
|
|
526
526
|
dimensions.push({
|
|
527
527
|
indicatorKey: sortRule.sortByIndicator,
|
|
528
528
|
value: null !== (_d = null === (_c = this.internalProps.layoutMap.getIndicatorInfo(sortRule.sortByIndicator)) || void 0 === _c ? void 0 : _c.title) && void 0 !== _d ? _d : sortRule.sortByIndicator
|
|
529
|
+
}), this.pivotSortState.push({
|
|
530
|
+
dimensions: dimensions,
|
|
531
|
+
order: ts_types_1.SortType[sortType]
|
|
529
532
|
});
|
|
530
|
-
} else
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
|
|
535
|
-
|
|
536
|
-
|
|
537
|
-
|
|
538
|
-
|
|
539
|
-
|
|
533
|
+
} else {
|
|
534
|
+
const sortField = sortRule.sortField, rowIndex = this.dataset.rows.indexOf(sortField), colIndex = this.dataset.columns.indexOf(sortField);
|
|
535
|
+
let pushed = !1;
|
|
536
|
+
if (rowIndex >= 0) {
|
|
537
|
+
const rowDimensions = [];
|
|
538
|
+
for (let k = 0; k <= rowIndex; k++) rowDimensions.push({
|
|
539
|
+
dimensionKey: this.dataset.rows[k],
|
|
540
|
+
isPivotCorner: !0,
|
|
541
|
+
value: this.dataset.rows[k]
|
|
542
|
+
});
|
|
543
|
+
this.pivotSortState.push({
|
|
544
|
+
dimensions: rowDimensions,
|
|
545
|
+
order: ts_types_1.SortType[sortType]
|
|
546
|
+
}), pushed = !0;
|
|
547
|
+
}
|
|
548
|
+
if (colIndex >= 0) {
|
|
549
|
+
const colDimensions = [];
|
|
550
|
+
for (let k = 0; k <= colIndex; k++) colDimensions.push({
|
|
551
|
+
dimensionKey: this.dataset.columns[k],
|
|
552
|
+
isPivotCorner: !0,
|
|
553
|
+
value: this.dataset.columns[k]
|
|
554
|
+
});
|
|
555
|
+
this.pivotSortState.push({
|
|
556
|
+
dimensions: colDimensions,
|
|
557
|
+
order: ts_types_1.SortType[sortType]
|
|
558
|
+
}), pushed = !0;
|
|
559
|
+
}
|
|
560
|
+
pushed || (dimensions.push({
|
|
561
|
+
dimensionKey: sortField,
|
|
562
|
+
isPivotCorner: !0,
|
|
563
|
+
value: sortField
|
|
564
|
+
}), this.pivotSortState.push({
|
|
565
|
+
dimensions: dimensions,
|
|
566
|
+
order: ts_types_1.SortType[sortType]
|
|
567
|
+
}));
|
|
568
|
+
}
|
|
540
569
|
}
|
|
541
570
|
}
|
|
542
571
|
_filterHideIndicatorNode() {
|
|
@@ -599,10 +628,53 @@ class PivotTable extends BaseTable_1.BaseTable {
|
|
|
599
628
|
}
|
|
600
629
|
}
|
|
601
630
|
getPivotSortState(col, row) {
|
|
631
|
+
var _a;
|
|
602
632
|
if (!this.pivotSortState) return;
|
|
603
633
|
const cellRange = this.getCellRange(col, row);
|
|
604
634
|
for (let i = 0; i < this.pivotSortState.length; i++) {
|
|
605
|
-
const pivotState = this.pivotSortState[i], dimensions = pivotState.dimensions
|
|
635
|
+
const pivotState = this.pivotSortState[i], dimensions = pivotState.dimensions;
|
|
636
|
+
if (this.isCornerHeader(col, row)) {
|
|
637
|
+
const layoutMap = this.internalProps.layoutMap, header = layoutMap.getHeader(col, row);
|
|
638
|
+
if (header && header.pivotInfo && dimensions && dimensions.length > 0) {
|
|
639
|
+
let cellPathKeys = [];
|
|
640
|
+
const leftSnCount = null !== (_a = layoutMap.leftRowSeriesNumberColumnCount) && void 0 !== _a ? _a : 0;
|
|
641
|
+
if ("row" === layoutMap.cornerSetting.titleOnDimension) {
|
|
642
|
+
const dimIndex = col - leftSnCount;
|
|
643
|
+
cellPathKeys = layoutMap.rowDimensionKeys.slice(0, dimIndex + 1);
|
|
644
|
+
} else if ("column" === layoutMap.cornerSetting.titleOnDimension) {
|
|
645
|
+
const dimIndex = row;
|
|
646
|
+
cellPathKeys = layoutMap.colDimensionKeys.slice(0, dimIndex + 1);
|
|
647
|
+
} else if ("all" === layoutMap.cornerSetting.titleOnDimension) if (layoutMap.indicatorsAsCol) {
|
|
648
|
+
let indicatorAtIndex = layoutMap.colDimensionKeys.indexOf(layoutMap.indicatorDimensionKey);
|
|
649
|
+
if (-1 === indicatorAtIndex && (indicatorAtIndex = layoutMap.columnHeaderLevelCount - 1),
|
|
650
|
+
row === indicatorAtIndex) {
|
|
651
|
+
const dimIndex = col - leftSnCount;
|
|
652
|
+
cellPathKeys = layoutMap.rowDimensionKeys.slice(0, dimIndex + 1);
|
|
653
|
+
} else {
|
|
654
|
+
const dimIndex = row;
|
|
655
|
+
cellPathKeys = layoutMap.colDimensionKeys.slice(0, dimIndex + 1);
|
|
656
|
+
}
|
|
657
|
+
} else {
|
|
658
|
+
let indicatorAtIndex = layoutMap.rowDimensionKeys.indexOf(layoutMap.indicatorDimensionKey);
|
|
659
|
+
if (-1 === indicatorAtIndex && (indicatorAtIndex = layoutMap.rowHeaderLevelCount - 1),
|
|
660
|
+
col - leftSnCount === indicatorAtIndex) {
|
|
661
|
+
const dimIndex = row;
|
|
662
|
+
cellPathKeys = layoutMap.colDimensionKeys.slice(0, dimIndex + 1);
|
|
663
|
+
} else {
|
|
664
|
+
const dimIndex = col - leftSnCount;
|
|
665
|
+
cellPathKeys = layoutMap.rowDimensionKeys.slice(0, dimIndex + 1);
|
|
666
|
+
}
|
|
667
|
+
}
|
|
668
|
+
if (cellPathKeys.length > 0 && dimensions.length === cellPathKeys.length) {
|
|
669
|
+
if (dimensions.every(((dim, idx) => {
|
|
670
|
+
const isCorner = dim.isPivotCorner || !(0, vutils_1.isValid)(dim.isPivotCorner) && dim.dimensionKey && !dim.value, keyMatch = dim.dimensionKey === cellPathKeys[idx] || dim.value === cellPathKeys[idx];
|
|
671
|
+
return isCorner && keyMatch;
|
|
672
|
+
}))) return pivotState.order;
|
|
673
|
+
}
|
|
674
|
+
}
|
|
675
|
+
continue;
|
|
676
|
+
}
|
|
677
|
+
const cell = this.getCellAddressByHeaderPaths(dimensions), order = pivotState.order;
|
|
606
678
|
if (cell && (0, helper_1.cellInRange)(cellRange, cell.col, cell.row)) return order;
|
|
607
679
|
}
|
|
608
680
|
}
|
|
@@ -710,7 +782,7 @@ class PivotTable extends BaseTable_1.BaseTable {
|
|
|
710
782
|
}
|
|
711
783
|
setRecords(records) {
|
|
712
784
|
var _a, _b, _c, _d, _e, _f, _g, _h, _j;
|
|
713
|
-
(0, chart_render_helper_1.clearChartRenderQueue)();
|
|
785
|
+
this.stateManager.endResizeIfResizing(), (0, chart_render_helper_1.clearChartRenderQueue)();
|
|
714
786
|
const oldHoverState = {
|
|
715
787
|
col: this.stateManager.hover.cellPos.col,
|
|
716
788
|
row: this.stateManager.hover.cellPos.row
|