@visactor/vtable 1.26.7 → 1.26.8
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 -1
- package/cjs/ListTable.js +21 -13
- package/cjs/ListTable.js.map +1 -1
- package/cjs/PivotChart.js +16 -16
- package/cjs/PivotChart.js.map +1 -1
- package/cjs/PivotTable.d.ts +1 -1
- package/cjs/PivotTable.js +65 -63
- package/cjs/PivotTable.js.map +1 -1
- package/cjs/body-helper/body-helper.js +2 -1
- package/cjs/components/index.js +1 -2
- package/cjs/core/BaseTable.js +2 -2
- package/cjs/core/BaseTable.js.map +1 -1
- package/cjs/core/record-helper.d.ts +1 -1
- package/cjs/core/record-helper.js +60 -12
- package/cjs/core/record-helper.js.map +1 -1
- package/cjs/core/tableHelper.js +2 -1
- package/cjs/data/DataSource.d.ts +3 -1
- package/cjs/data/DataSource.js +71 -23
- package/cjs/data/DataSource.js.map +1 -1
- package/cjs/dataset/dataset.d.ts +9 -1
- package/cjs/dataset/dataset.js +344 -187
- package/cjs/dataset/dataset.js.map +1 -1
- package/cjs/event/event.d.ts +94 -8
- package/cjs/event/event.js +698 -191
- package/cjs/event/event.js.map +1 -1
- package/cjs/event/helper.js +1 -1
- package/cjs/event/media-click.js +4 -1
- package/cjs/event/media-click.js.map +1 -1
- package/cjs/event/scroll.js +1 -1
- package/cjs/event/sparkline-event.js +1 -2
- package/cjs/event/util.js +2 -2
- package/cjs/event/util.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.js +33 -17
- package/cjs/layout/pivot-header-layout.js.map +1 -1
- package/cjs/plugins/custom-cell-style.js +1 -1
- package/cjs/plugins/index.js +2 -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 +27 -10
- package/cjs/scenegraph/group-creater/cell-helper.js.map +1 -1
- package/cjs/scenegraph/group-creater/cell-type/text-cell.d.ts +1 -1
- package/cjs/scenegraph/group-creater/cell-type/text-cell.js +14 -10
- package/cjs/scenegraph/group-creater/cell-type/text-cell.js.map +1 -1
- package/cjs/scenegraph/group-creater/progress/create-group-for-first-screen.js +17 -4
- package/cjs/scenegraph/group-creater/progress/create-group-for-first-screen.js.map +1 -1
- package/cjs/scenegraph/layout/compute-col-width.js +6 -1
- package/cjs/scenegraph/layout/compute-col-width.js.map +1 -1
- package/cjs/scenegraph/layout/compute-row-height.js +11 -3
- package/cjs/scenegraph/layout/compute-row-height.js.map +1 -1
- package/cjs/scenegraph/layout/update-height.d.ts +4 -3
- package/cjs/scenegraph/layout/update-height.js +43 -29
- package/cjs/scenegraph/layout/update-height.js.map +1 -1
- package/cjs/scenegraph/layout/update-width.d.ts +2 -1
- package/cjs/scenegraph/layout/update-width.js +49 -37
- package/cjs/scenegraph/layout/update-width.js.map +1 -1
- package/cjs/scenegraph/scenegraph.d.ts +2 -2
- package/cjs/scenegraph/scenegraph.js +6 -5
- package/cjs/scenegraph/scenegraph.js.map +1 -1
- package/cjs/scenegraph/utils/corner-custom-merge.d.ts +10 -0
- package/cjs/scenegraph/utils/corner-custom-merge.js +68 -0
- package/cjs/scenegraph/utils/corner-custom-merge.js.map +1 -0
- package/cjs/state/resize/update-resize-column.js +25 -13
- package/cjs/state/resize/update-resize-column.js.map +1 -1
- package/cjs/state/resize/update-resize-row.js +24 -12
- package/cjs/state/resize/update-resize-row.js.map +1 -1
- package/cjs/themes.d.ts +4 -2
- package/cjs/themes.js +12 -4
- package/cjs/themes.js.map +1 -1
- package/cjs/tools/get-data-path/create-dataset.js +4 -4
- package/cjs/tools/get-data-path/create-dataset.js.map +1 -1
- package/cjs/tools/get-data-path/index.js +4 -4
- package/cjs/tools/get-data-path/index.js.map +1 -1
- package/cjs/tools/style.d.ts +3 -1
- package/cjs/tools/style.js +2 -2
- package/cjs/tools/style.js.map +1 -1
- package/cjs/ts-types/common.d.ts +1 -0
- package/cjs/ts-types/common.js.map +1 -1
- package/cjs/ts-types/dataset/aggregation.d.ts +1 -0
- package/cjs/ts-types/dataset/aggregation.js +21 -3
- package/cjs/ts-types/dataset/aggregation.js.map +1 -1
- package/cjs/ts-types/new-data-set.d.ts +1 -0
- package/cjs/ts-types/new-data-set.js.map +1 -1
- package/cjs/ts-types/table-engine.d.ts +3 -2
- package/cjs/ts-types/table-engine.js.map +1 -1
- package/cjs/vrender.js.map +1 -1
- package/dist/vtable.js +2224 -779
- package/dist/vtable.min.js +1 -1
- package/es/ListTable.d.ts +1 -1
- package/es/ListTable.js +21 -15
- package/es/ListTable.js.map +1 -1
- package/es/PivotChart.js +16 -16
- package/es/PivotChart.js.map +1 -1
- package/es/PivotTable.d.ts +1 -1
- package/es/PivotTable.js +65 -63
- package/es/PivotTable.js.map +1 -1
- package/es/body-helper/body-helper.js +2 -1
- package/es/components/index.js +1 -2
- package/es/core/BaseTable.js +2 -2
- package/es/core/BaseTable.js.map +1 -1
- package/es/core/record-helper.d.ts +1 -1
- package/es/core/record-helper.js +60 -12
- package/es/core/record-helper.js.map +1 -1
- package/es/core/tableHelper.js +2 -1
- package/es/data/DataSource.d.ts +3 -1
- package/es/data/DataSource.js +70 -23
- package/es/data/DataSource.js.map +1 -1
- package/es/dataset/dataset.d.ts +9 -1
- package/es/dataset/dataset.js +341 -187
- package/es/dataset/dataset.js.map +1 -1
- package/es/event/event.d.ts +94 -8
- package/es/event/event.js +696 -191
- package/es/event/event.js.map +1 -1
- package/es/event/helper.js +1 -1
- package/es/event/media-click.js +4 -1
- package/es/event/media-click.js.map +1 -1
- package/es/event/scroll.js +1 -1
- package/es/event/sparkline-event.js +1 -2
- package/es/event/util.js +2 -2
- package/es/event/util.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.js +29 -17
- package/es/layout/pivot-header-layout.js.map +1 -1
- package/es/plugins/custom-cell-style.js +1 -1
- package/es/plugins/index.js +2 -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 +23 -9
- package/es/scenegraph/group-creater/cell-helper.js.map +1 -1
- package/es/scenegraph/group-creater/cell-type/text-cell.d.ts +1 -1
- package/es/scenegraph/group-creater/cell-type/text-cell.js +13 -8
- package/es/scenegraph/group-creater/cell-type/text-cell.js.map +1 -1
- package/es/scenegraph/group-creater/progress/create-group-for-first-screen.js +17 -5
- package/es/scenegraph/group-creater/progress/create-group-for-first-screen.js.map +1 -1
- package/es/scenegraph/layout/compute-col-width.js +6 -1
- package/es/scenegraph/layout/compute-col-width.js.map +1 -1
- package/es/scenegraph/layout/compute-row-height.js +11 -3
- package/es/scenegraph/layout/compute-row-height.js.map +1 -1
- package/es/scenegraph/layout/update-height.d.ts +4 -3
- package/es/scenegraph/layout/update-height.js +40 -26
- package/es/scenegraph/layout/update-height.js.map +1 -1
- package/es/scenegraph/layout/update-width.d.ts +2 -1
- package/es/scenegraph/layout/update-width.js +46 -34
- package/es/scenegraph/layout/update-width.js.map +1 -1
- package/es/scenegraph/scenegraph.d.ts +2 -2
- package/es/scenegraph/scenegraph.js +7 -5
- package/es/scenegraph/scenegraph.js.map +1 -1
- package/es/scenegraph/utils/corner-custom-merge.d.ts +10 -0
- package/es/scenegraph/utils/corner-custom-merge.js +59 -0
- package/es/scenegraph/utils/corner-custom-merge.js.map +1 -0
- package/es/state/resize/update-resize-column.js +19 -10
- package/es/state/resize/update-resize-column.js.map +1 -1
- package/es/state/resize/update-resize-row.js +19 -9
- package/es/state/resize/update-resize-row.js.map +1 -1
- package/es/themes.d.ts +4 -2
- package/es/themes.js +11 -3
- package/es/themes.js.map +1 -1
- package/es/tools/get-data-path/create-dataset.js +4 -4
- package/es/tools/get-data-path/create-dataset.js.map +1 -1
- package/es/tools/get-data-path/index.js +4 -4
- package/es/tools/get-data-path/index.js.map +1 -1
- package/es/tools/style.d.ts +3 -1
- package/es/tools/style.js +2 -2
- package/es/tools/style.js.map +1 -1
- package/es/ts-types/common.d.ts +1 -0
- package/es/ts-types/common.js.map +1 -1
- package/es/ts-types/dataset/aggregation.d.ts +1 -0
- package/es/ts-types/dataset/aggregation.js +21 -3
- package/es/ts-types/dataset/aggregation.js.map +1 -1
- package/es/ts-types/new-data-set.d.ts +1 -0
- package/es/ts-types/new-data-set.js.map +1 -1
- package/es/ts-types/table-engine.d.ts +3 -2
- package/es/ts-types/table-engine.js.map +1 -1
- package/es/vrender.js.map +1 -1
- package/package.json +9 -9
package/cjs/data/DataSource.js
CHANGED
|
@@ -27,7 +27,7 @@ var __createBinding = this && this.__createBinding || (Object.create ? function(
|
|
|
27
27
|
|
|
28
28
|
Object.defineProperty(exports, "__esModule", {
|
|
29
29
|
value: !0
|
|
30
|
-
}), exports.sortRecordIndexs = exports.getValueFromDeepArray = exports.DataSource = exports.getField = exports.getValue = void 0;
|
|
30
|
+
}), exports.sortRecordIndexs = exports.getValueFromDeepArray = exports.DataSource = exports.setRecordFieldValue = exports.getRecordFieldValue = exports.getField = exports.getValue = void 0;
|
|
31
31
|
|
|
32
32
|
const sort = __importStar(require("../tools/sort")), ts_types_1 = require("../ts-types"), helper_1 = require("../tools/helper"), EventTarget_1 = require("../event/EventTarget"), util_1 = require("../tools/util"), vutils_1 = require("@visactor/vutils"), aggregation_1 = require("../ts-types/dataset/aggregation");
|
|
33
33
|
|
|
@@ -60,15 +60,15 @@ function getField(record, field, col, row, table, promiseCallBack) {
|
|
|
60
60
|
if ((void 0 === fieldGet || "" === fieldGet) && Array.isArray(record)) {
|
|
61
61
|
return record[col - table.leftRowSeriesNumberCount];
|
|
62
62
|
}
|
|
63
|
-
if (
|
|
63
|
+
if (Array.isArray(fieldGet)) {
|
|
64
|
+
return getValue(getRecordFieldValue(record, fieldGet), promiseCallBack);
|
|
65
|
+
}
|
|
66
|
+
if (isRecordContainer(record) && fieldGet in record) {
|
|
64
67
|
return getValue(record[fieldGet], promiseCallBack);
|
|
65
68
|
}
|
|
66
69
|
if ("function" == typeof fieldGet) {
|
|
67
70
|
return getValue(fieldGet(record, col, row, table), promiseCallBack);
|
|
68
71
|
}
|
|
69
|
-
if (Array.isArray(fieldGet)) {
|
|
70
|
-
return getValue((0, util_1.getValueByPath)(record, [ ...fieldGet ]), promiseCallBack);
|
|
71
|
-
}
|
|
72
72
|
const fieldArray = `${fieldGet}`.split(".");
|
|
73
73
|
if (fieldArray.length <= 1) {
|
|
74
74
|
return getValue(record[fieldGet], promiseCallBack);
|
|
@@ -76,13 +76,64 @@ function getField(record, field, col, row, table, promiseCallBack) {
|
|
|
76
76
|
return getValue((0, helper_1.applyChainSafe)(record, ((val, name) => getField(val, name, col, row, table, helper_1.emptyFn)), ...fieldArray), promiseCallBack);
|
|
77
77
|
}
|
|
78
78
|
|
|
79
|
+
function isRecordContainer(value) {
|
|
80
|
+
return null !== value && "object" == typeof value;
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
function getRecordFieldPath(field) {
|
|
84
|
+
return Array.isArray(field) ? field : "string" == typeof field && field.includes(".") ? field.split(".") : void 0;
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
function hasRecordField(record, field) {
|
|
88
|
+
if (!isRecordContainer(record)) return !1;
|
|
89
|
+
const path = getRecordFieldPath(field);
|
|
90
|
+
if (!Array.isArray(field) && field in record) return !0;
|
|
91
|
+
if (!path) return !1;
|
|
92
|
+
let target = record;
|
|
93
|
+
for (const key of path) {
|
|
94
|
+
if (!isRecordContainer(target) || !(key in target)) return !1;
|
|
95
|
+
target = target[key];
|
|
96
|
+
}
|
|
97
|
+
return !0;
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
function getRecordFieldValue(record, field) {
|
|
101
|
+
if (null == record) return;
|
|
102
|
+
const path = getRecordFieldPath(field);
|
|
103
|
+
return !Array.isArray(field) && isRecordContainer(record) && field in record ? record[field] : path ? path.reduce(((current, key) => null == current ? void 0 : current[key]), record) : record[field];
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
function setRecordProperty(record, key, value) {
|
|
107
|
+
"__proto__" !== key && "constructor" !== key && "prototype" !== key ? record[key] = value : Object.defineProperty(record, key, {
|
|
108
|
+
configurable: !0,
|
|
109
|
+
enumerable: !0,
|
|
110
|
+
value: value,
|
|
111
|
+
writable: !0
|
|
112
|
+
});
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
function setRecordFieldValue(record, field, value) {
|
|
116
|
+
if (null == record) return;
|
|
117
|
+
const path = getRecordFieldPath(field);
|
|
118
|
+
if (!path || !Array.isArray(field) && isRecordContainer(record) && field in record) return void setRecordProperty(record, field, value);
|
|
119
|
+
if (0 === path.length) return;
|
|
120
|
+
let target = record;
|
|
121
|
+
for (let i = 0; i < path.length - 1; i++) {
|
|
122
|
+
const key = path[i];
|
|
123
|
+
Object.prototype.hasOwnProperty.call(target, key) && null !== target[key] && "object" == typeof target[key] || setRecordProperty(target, key, {}),
|
|
124
|
+
target = target[key];
|
|
125
|
+
}
|
|
126
|
+
setRecordProperty(target, path[path.length - 1], value);
|
|
127
|
+
}
|
|
128
|
+
|
|
79
129
|
function _getIndex(sortedIndexMap, index) {
|
|
80
130
|
if (!sortedIndexMap) return index;
|
|
81
131
|
const mapIndex = sortedIndexMap[index];
|
|
82
132
|
return (0, vutils_1.isValid)(mapIndex) ? mapIndex : index;
|
|
83
133
|
}
|
|
84
134
|
|
|
85
|
-
exports.getValue = getValue, exports.getField = getField
|
|
135
|
+
exports.getValue = getValue, exports.getField = getField, exports.getRecordFieldValue = getRecordFieldValue,
|
|
136
|
+
exports.setRecordFieldValue = setRecordFieldValue;
|
|
86
137
|
|
|
87
138
|
class DataSource extends EventTarget_1.EventTarget {
|
|
88
139
|
static get EVENT_TYPE() {
|
|
@@ -334,23 +385,22 @@ class DataSource extends EventTarget_1.EventTarget {
|
|
|
334
385
|
return childrenLength;
|
|
335
386
|
}
|
|
336
387
|
changeFieldValue(value, index, field, col, row, table) {
|
|
337
|
-
var _a;
|
|
338
388
|
if (null !== field && index >= 0) {
|
|
339
389
|
const dataIndex = this.getIndexKey(index);
|
|
340
390
|
if (this.cacheBeforeChangedRecord(dataIndex, table), void 0 !== field && "" !== field || (field = col - table.leftRowSeriesNumberCount),
|
|
341
|
-
"string" == typeof field || "number" == typeof field) {
|
|
342
|
-
const beforeChangedValue =
|
|
391
|
+
"string" == typeof field || "number" == typeof field || Array.isArray(field)) {
|
|
392
|
+
const beforeChangedValue = getRecordFieldValue(this.beforeChangedRecordsMap.get(dataIndex.toString()), field), record = this.getOriginalRecord(dataIndex);
|
|
343
393
|
let formatValue = value;
|
|
344
|
-
"number" == typeof beforeChangedValue && (0, util_1.isAllDigits)(value) && (formatValue = parseFloat(value)),
|
|
345
|
-
(0, helper_1.isPromise)(record)
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
this.records[dataIndex]
|
|
394
|
+
if ("number" == typeof beforeChangedValue && (0, util_1.isAllDigits)(value) && (formatValue = parseFloat(value)),
|
|
395
|
+
(0, helper_1.isPromise)(record)) return record.then((record => (setRecordFieldValue(record, field, formatValue),
|
|
396
|
+
formatValue))).catch((err => {}));
|
|
397
|
+
record ? setRecordFieldValue(record, field, formatValue) : (this.records[dataIndex] = "Array" === this.addRecordRule ? [] : {},
|
|
398
|
+
setRecordFieldValue(this.records[dataIndex], field, formatValue));
|
|
349
399
|
}
|
|
350
400
|
}
|
|
351
401
|
}
|
|
352
402
|
changeFieldValueByRecordIndex(value, recordIndex, field, table) {
|
|
353
|
-
var _a, _b, _c
|
|
403
|
+
var _a, _b, _c;
|
|
354
404
|
if (null === field) return;
|
|
355
405
|
if (null == recordIndex) return;
|
|
356
406
|
const rawKey = recordIndex.toString();
|
|
@@ -358,12 +408,12 @@ class DataSource extends EventTarget_1.EventTarget {
|
|
|
358
408
|
const rawRecords = Array.isArray(null === (_a = this.dataSourceObj) || void 0 === _a ? void 0 : _a.records) ? this.dataSourceObj.records : null, originRecord = rawRecords ? Array.isArray(recordIndex) ? getValueFromDeepArray(rawRecords, recordIndex) : rawRecords[recordIndex] : void 0;
|
|
359
409
|
this.beforeChangedRecordsMap.set(rawKey, null !== (_b = (0, vutils_1.cloneDeep)(originRecord, void 0, [ "vtable_gantt_linkedFrom", "vtable_gantt_linkedTo" ])) && void 0 !== _b ? _b : {});
|
|
360
410
|
}
|
|
361
|
-
if ("string" == typeof field || "number" == typeof field) {
|
|
362
|
-
const beforeChangedValue =
|
|
411
|
+
if ("string" == typeof field || "number" == typeof field || Array.isArray(field)) {
|
|
412
|
+
const beforeChangedValue = getRecordFieldValue(this.beforeChangedRecordsMap.get(rawKey), field), rawRecords = Array.isArray(null === (_c = this.dataSourceObj) || void 0 === _c ? void 0 : _c.records) ? this.dataSourceObj.records : null, record = rawRecords ? Array.isArray(recordIndex) ? getValueFromDeepArray(rawRecords, recordIndex) : rawRecords[recordIndex] : void 0;
|
|
363
413
|
let formatValue = value;
|
|
364
414
|
"number" == typeof beforeChangedValue && (0, util_1.isAllDigits)(value) && (formatValue = parseFloat(value)),
|
|
365
|
-
record ? record
|
|
366
|
-
rawRecords[recordIndex]
|
|
415
|
+
record ? setRecordFieldValue(record, field, formatValue) : rawRecords && "number" == typeof recordIndex && (rawRecords[recordIndex] = "Array" === this.addRecordRule ? [] : {},
|
|
416
|
+
setRecordFieldValue(rawRecords[recordIndex], field, formatValue));
|
|
367
417
|
}
|
|
368
418
|
}
|
|
369
419
|
cacheBeforeChangedRecord(dataIndex, table) {
|
|
@@ -756,8 +806,7 @@ class DataSource extends EventTarget_1.EventTarget {
|
|
|
756
806
|
hasOriginalField(index, field) {
|
|
757
807
|
if (null === field) return !1;
|
|
758
808
|
if ("function" == typeof field) return !0;
|
|
759
|
-
|
|
760
|
-
return Boolean(record && field in record);
|
|
809
|
+
return hasRecordField(this.getOriginalRecord(index), field);
|
|
761
810
|
}
|
|
762
811
|
fieldPromiseCallBack(_index, _field, _value) {}
|
|
763
812
|
recordPromiseCallBack(_index, _record) {}
|
|
@@ -900,5 +949,4 @@ function sortRecordIndexs(recordIndexs, sort) {
|
|
|
900
949
|
exports.DataSource = DataSource, DataSource.EMPTY = new DataSource({
|
|
901
950
|
get() {},
|
|
902
951
|
length: 0
|
|
903
|
-
}), exports.getValueFromDeepArray = getValueFromDeepArray, exports.sortRecordIndexs = sortRecordIndexs;
|
|
904
|
-
//# sourceMappingURL=DataSource.js.map
|
|
952
|
+
}), exports.getValueFromDeepArray = getValueFromDeepArray, exports.sortRecordIndexs = sortRecordIndexs;
|