k-vtable 1.0.34 → 1.0.35
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 -0
- package/cjs/ListTable.js +184 -25
- package/cjs/ListTable.js.map +1 -1
- package/cjs/PivotChart.js +3 -2
- package/cjs/PivotChart.js.map +1 -1
- package/cjs/PivotTable.d.ts +1 -0
- package/cjs/PivotTable.js +95 -15
- package/cjs/PivotTable.js.map +1 -1
- package/cjs/core/BaseTable.d.ts +14 -0
- package/cjs/core/BaseTable.js +149 -41
- package/cjs/core/BaseTable.js.map +1 -1
- package/cjs/core/TABLE_EVENT_TYPE.d.ts +2 -0
- package/cjs/core/TABLE_EVENT_TYPE.js +2 -0
- package/cjs/core/TABLE_EVENT_TYPE.js.map +1 -1
- package/cjs/core/record-helper.js +83 -13
- package/cjs/core/record-helper.js.map +1 -1
- package/cjs/core/tableHelper.js +5 -3
- package/cjs/core/tableHelper.js.map +1 -1
- package/cjs/core/utils/get-cell-position.js +23 -12
- package/cjs/core/utils/get-cell-position.js.map +1 -1
- package/cjs/data/DataSource.js +3 -2
- package/cjs/data/DataSource.js.map +1 -1
- package/cjs/dataset/dataset.js +5 -1
- package/cjs/dataset/dataset.js.map +1 -1
- package/cjs/edit/edit-manager.js +24 -16
- package/cjs/edit/edit-manager.js.map +1 -1
- package/cjs/event/EventTarget.js +3 -1
- package/cjs/event/EventTarget.js.map +1 -1
- package/cjs/event/helper.js +1 -1
- package/cjs/event/listener/container-dom.js +11 -6
- package/cjs/event/listener/container-dom.js.map +1 -1
- package/cjs/event/listener/scroll-bar.js +77 -6
- package/cjs/event/listener/scroll-bar.js.map +1 -1
- package/cjs/event/listener/table-group.js +53 -23
- package/cjs/event/listener/table-group.js.map +1 -1
- package/cjs/event/media-click.js +1 -1
- package/cjs/event/scroll.js +35 -12
- package/cjs/event/scroll.js.map +1 -1
- package/cjs/event/sparkline-event.js +1 -1
- package/cjs/event/util.d.ts +2 -0
- package/cjs/event/util.js +29 -4
- package/cjs/event/util.js.map +1 -1
- package/cjs/header-helper/header-helper.js +2 -2
- package/cjs/header-helper/header-helper.js.map +1 -1
- package/cjs/header-helper/style.js +2 -1
- package/cjs/index.d.ts +3 -3
- package/cjs/index.js +51 -12
- package/cjs/index.js.map +1 -1
- package/cjs/layout/cell-range/simple-cell-range.js +14 -5
- package/cjs/layout/cell-range/simple-cell-range.js.map +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/component/table-component.d.ts +6 -1
- package/cjs/scenegraph/component/table-component.js +143 -17
- package/cjs/scenegraph/component/table-component.js.map +1 -1
- package/cjs/scenegraph/component/util.js +5 -2
- package/cjs/scenegraph/component/util.js.map +1 -1
- package/cjs/scenegraph/graphic/contributions/group-contribution-render.js +29 -10
- package/cjs/scenegraph/graphic/contributions/group-contribution-render.js.map +1 -1
- package/cjs/scenegraph/group-creater/cell-helper.js +7 -4
- package/cjs/scenegraph/group-creater/cell-helper.js.map +1 -1
- package/cjs/scenegraph/group-creater/init-scenegraph.js +37 -7
- package/cjs/scenegraph/group-creater/init-scenegraph.js.map +1 -1
- package/cjs/scenegraph/group-creater/progress/proxy.js +4 -2
- package/cjs/scenegraph/group-creater/progress/proxy.js.map +1 -1
- package/cjs/scenegraph/scenegraph.d.ts +13 -0
- package/cjs/scenegraph/scenegraph.js +194 -23
- package/cjs/scenegraph/scenegraph.js.map +1 -1
- package/cjs/scenegraph/select/create-select-border.js +9 -10
- package/cjs/scenegraph/select/create-select-border.js.map +1 -1
- package/cjs/scenegraph/select/delete-select-border.js.map +1 -1
- package/cjs/scenegraph/select/move-select-border.js.map +1 -1
- package/cjs/scenegraph/select/update-custom-select-border.js +9 -9
- package/cjs/scenegraph/select/update-custom-select-border.js.map +1 -1
- package/cjs/scenegraph/select/update-select-border.js +27 -122
- package/cjs/scenegraph/select/update-select-border.js.map +1 -1
- package/cjs/scenegraph/select/update-select-style.js.map +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 +8 -1
- package/cjs/state/state.js +82 -40
- package/cjs/state/state.js.map +1 -1
- package/cjs/ts-types/base-table.d.ts +15 -0
- package/cjs/ts-types/base-table.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/events.d.ts +16 -0
- package/cjs/ts-types/events.js.map +1 -1
- package/cjs/ts-types/table-engine.js.map +1 -1
- package/cjs/vrender.js.map +1 -1
- package/dist/vtable.js +2381 -733
- package/dist/vtable.min.js +1 -15
- package/es/ListTable.d.ts +1 -0
- package/es/ListTable.js +178 -25
- package/es/ListTable.js.map +1 -1
- package/es/PivotChart.js +2 -2
- package/es/PivotChart.js.map +1 -1
- package/es/PivotTable.d.ts +1 -0
- package/es/PivotTable.js +93 -15
- package/es/PivotTable.js.map +1 -1
- package/es/core/BaseTable.d.ts +14 -0
- package/es/core/BaseTable.js +148 -40
- package/es/core/BaseTable.js.map +1 -1
- package/es/core/TABLE_EVENT_TYPE.d.ts +2 -0
- package/es/core/TABLE_EVENT_TYPE.js +2 -0
- package/es/core/TABLE_EVENT_TYPE.js.map +1 -1
- package/es/core/record-helper.js +83 -12
- package/es/core/record-helper.js.map +1 -1
- package/es/core/tableHelper.js +5 -3
- package/es/core/tableHelper.js.map +1 -1
- package/es/core/utils/get-cell-position.js +23 -12
- package/es/core/utils/get-cell-position.js.map +1 -1
- package/es/data/DataSource.js +3 -2
- package/es/data/DataSource.js.map +1 -1
- package/es/dataset/dataset.js +5 -1
- package/es/dataset/dataset.js.map +1 -1
- package/es/edit/edit-manager.js +22 -16
- package/es/edit/edit-manager.js.map +1 -1
- package/es/event/EventTarget.js +3 -1
- package/es/event/EventTarget.js.map +1 -1
- package/es/event/helper.js +1 -1
- package/es/event/listener/container-dom.js +10 -5
- package/es/event/listener/container-dom.js.map +1 -1
- package/es/event/listener/scroll-bar.js +75 -6
- package/es/event/listener/scroll-bar.js.map +1 -1
- package/es/event/listener/table-group.js +53 -24
- package/es/event/listener/table-group.js.map +1 -1
- package/es/event/media-click.js +1 -1
- package/es/event/scroll.js +35 -12
- package/es/event/scroll.js.map +1 -1
- package/es/event/sparkline-event.js +1 -1
- package/es/event/util.d.ts +2 -0
- package/es/event/util.js +25 -1
- package/es/event/util.js.map +1 -1
- package/es/header-helper/header-helper.js +2 -2
- package/es/header-helper/header-helper.js.map +1 -1
- package/es/header-helper/style.js +2 -1
- package/es/index.d.ts +3 -3
- package/es/index.js +5 -3
- package/es/index.js.map +1 -1
- package/es/layout/cell-range/simple-cell-range.js +14 -5
- package/es/layout/cell-range/simple-cell-range.js.map +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/component/table-component.d.ts +6 -1
- package/es/scenegraph/component/table-component.js +141 -17
- package/es/scenegraph/component/table-component.js.map +1 -1
- package/es/scenegraph/component/util.js +5 -2
- package/es/scenegraph/component/util.js.map +1 -1
- package/es/scenegraph/graphic/contributions/group-contribution-render.js +29 -10
- package/es/scenegraph/graphic/contributions/group-contribution-render.js.map +1 -1
- package/es/scenegraph/group-creater/cell-helper.js +7 -4
- package/es/scenegraph/group-creater/cell-helper.js.map +1 -1
- package/es/scenegraph/group-creater/init-scenegraph.js +37 -7
- package/es/scenegraph/group-creater/init-scenegraph.js.map +1 -1
- package/es/scenegraph/group-creater/progress/proxy.js +4 -2
- package/es/scenegraph/group-creater/progress/proxy.js.map +1 -1
- package/es/scenegraph/scenegraph.d.ts +13 -0
- package/es/scenegraph/scenegraph.js +185 -18
- package/es/scenegraph/scenegraph.js.map +1 -1
- package/es/scenegraph/select/create-select-border.js +9 -10
- package/es/scenegraph/select/create-select-border.js.map +1 -1
- package/es/scenegraph/select/delete-select-border.js.map +1 -1
- package/es/scenegraph/select/move-select-border.js.map +1 -1
- package/es/scenegraph/select/update-custom-select-border.js +9 -9
- package/es/scenegraph/select/update-custom-select-border.js.map +1 -1
- package/es/scenegraph/select/update-select-border.js +25 -118
- package/es/scenegraph/select/update-select-border.js.map +1 -1
- package/es/scenegraph/select/update-select-style.js.map +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 +8 -1
- package/es/state/state.js +81 -40
- package/es/state/state.js.map +1 -1
- package/es/ts-types/base-table.d.ts +15 -0
- package/es/ts-types/base-table.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/events.d.ts +16 -0
- package/es/ts-types/events.js.map +1 -1
- package/es/ts-types/table-engine.js.map +1 -1
- package/es/vrender.js.map +1 -1
- package/package.json +12 -11
package/cjs/PivotTable.d.ts
CHANGED
|
@@ -52,6 +52,7 @@ export declare class PivotTable extends BaseTable implements PivotTableAPI {
|
|
|
52
52
|
getCellRawRecord(col: number, row: number): any;
|
|
53
53
|
updateSortRules(sortRules: SortRules, col?: number, row?: number): void;
|
|
54
54
|
_changePivotSortStateBySortRules(): void;
|
|
55
|
+
_filterHideIndicatorNode(): void;
|
|
55
56
|
updatePivotSortState(pivotSortStateConfig: {
|
|
56
57
|
dimensions: IDimensionInfo[];
|
|
57
58
|
order: SortOrder;
|
package/cjs/PivotTable.js
CHANGED
|
@@ -502,7 +502,8 @@ class PivotTable extends BaseTable_1.BaseTable {
|
|
|
502
502
|
updateSortRules(sortRules, col, row) {
|
|
503
503
|
this.internalProps.dataConfig ? this.internalProps.dataConfig.sortRules = sortRules : this.internalProps.dataConfig = {
|
|
504
504
|
sortRules: sortRules
|
|
505
|
-
}, this.dataset.updateSortRules(sortRules), this._changePivotSortStateBySortRules()
|
|
505
|
+
}, this.dataset.updateSortRules(sortRules), this._changePivotSortStateBySortRules(),
|
|
506
|
+
this._filterHideIndicatorNode();
|
|
506
507
|
const {layoutMap: layoutMap} = this.internalProps;
|
|
507
508
|
layoutMap.resetHeaderTree(), this.scenegraph.clearCells(), (0, vutils_1.isNumber)(col) && (0,
|
|
508
509
|
vutils_1.isNumber)(row) ? (this.isRowHeader(col, row) ? (this.setMinMaxLimitWidth(!0),
|
|
@@ -516,7 +517,7 @@ class PivotTable extends BaseTable_1.BaseTable {
|
|
|
516
517
|
this.pivotSortState = [];
|
|
517
518
|
const sortRules = null !== (_b = null === (_a = this.internalProps.dataConfig) || void 0 === _a ? void 0 : _a.sortRules) && void 0 !== _b ? _b : [];
|
|
518
519
|
for (let i = 0; i < sortRules.length; i++) {
|
|
519
|
-
const sortRule = sortRules[i], dimensions = [];
|
|
520
|
+
const sortRule = sortRules[i], dimensions = [], sortType = sortRule.sortType ? sortRule.sortType.toUpperCase() : "ASC";
|
|
520
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])) {
|
|
521
522
|
for (let j = 0; j < sortRule.query.length; j++) dimensions.push({
|
|
522
523
|
dimensionKey: this.dataset.indicatorsAsCol ? this.dataset.columns[j] : this.dataset.rows[j],
|
|
@@ -525,19 +526,55 @@ class PivotTable extends BaseTable_1.BaseTable {
|
|
|
525
526
|
dimensions.push({
|
|
526
527
|
indicatorKey: sortRule.sortByIndicator,
|
|
527
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]
|
|
528
532
|
});
|
|
529
|
-
} else
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
|
|
535
|
-
|
|
536
|
-
|
|
537
|
-
|
|
538
|
-
|
|
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
|
+
}
|
|
539
569
|
}
|
|
540
570
|
}
|
|
571
|
+
_filterHideIndicatorNode() {
|
|
572
|
+
const options = this.options;
|
|
573
|
+
!1 !== options.indicatorsAsCol && options.indicators && this.dataset.colHeaderTree && (0,
|
|
574
|
+
layout_helper_1.deleteHideIndicatorNode)(this.dataset.colHeaderTree, options.indicators, !1, this),
|
|
575
|
+
!1 === options.indicatorsAsCol && this.dataset.rowHeaderTree && options.indicators && (0,
|
|
576
|
+
layout_helper_1.deleteHideIndicatorNode)(this.dataset.rowHeaderTree, options.indicators, !1, this);
|
|
577
|
+
}
|
|
541
578
|
updatePivotSortState(pivotSortStateConfig) {
|
|
542
579
|
this.pivotSortState = pivotSortStateConfig;
|
|
543
580
|
}
|
|
@@ -591,10 +628,53 @@ class PivotTable extends BaseTable_1.BaseTable {
|
|
|
591
628
|
}
|
|
592
629
|
}
|
|
593
630
|
getPivotSortState(col, row) {
|
|
631
|
+
var _a;
|
|
594
632
|
if (!this.pivotSortState) return;
|
|
595
633
|
const cellRange = this.getCellRange(col, row);
|
|
596
634
|
for (let i = 0; i < this.pivotSortState.length; i++) {
|
|
597
|
-
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;
|
|
598
678
|
if (cell && (0, helper_1.cellInRange)(cellRange, cell.col, cell.row)) return order;
|
|
599
679
|
}
|
|
600
680
|
}
|
|
@@ -702,7 +782,7 @@ class PivotTable extends BaseTable_1.BaseTable {
|
|
|
702
782
|
}
|
|
703
783
|
setRecords(records) {
|
|
704
784
|
var _a, _b, _c, _d, _e, _f, _g, _h, _j;
|
|
705
|
-
(0, chart_render_helper_1.clearChartRenderQueue)();
|
|
785
|
+
this.stateManager.endResizeIfResizing(), (0, chart_render_helper_1.clearChartRenderQueue)();
|
|
706
786
|
const oldHoverState = {
|
|
707
787
|
col: this.stateManager.hover.cellPos.col,
|
|
708
788
|
row: this.stateManager.hover.cellPos.row
|
|
@@ -962,7 +1042,7 @@ class PivotTable extends BaseTable_1.BaseTable {
|
|
|
962
1042
|
}
|
|
963
1043
|
updateFilterRules(filterRules, isResetTree = !1) {
|
|
964
1044
|
this.internalProps.dataConfig.filterRules = filterRules, isResetTree ? (this.dataset.updateFilterRules(filterRules, !0),
|
|
965
|
-
this.internalProps.layoutMap.resetHeaderTree()) : this.dataset.updateFilterRules(filterRules),
|
|
1045
|
+
this._filterHideIndicatorNode(), this.internalProps.layoutMap.resetHeaderTree()) : this.dataset.updateFilterRules(filterRules),
|
|
966
1046
|
this.renderWithRecreateCells();
|
|
967
1047
|
}
|
|
968
1048
|
getFilteredRecords() {
|