@visactor/vchart 2.1.0-alpha.3 → 2.1.0-alpha.5
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/build/es5/index.js +1 -1
- package/build/index.es.js +123 -17
- package/build/index.js +123 -17
- package/build/index.min.js +2 -2
- package/build/tsconfig.tsbuildinfo +1 -1
- package/cjs/chart/base/base-chart.d.ts +7 -0
- package/cjs/chart/base/base-chart.js +65 -8
- package/cjs/chart/base/base-chart.js.map +1 -1
- package/cjs/compile/compiler.js +9 -7
- package/cjs/compile/compiler.js.map +1 -1
- package/cjs/component/axis/base-axis.js +3 -5
- package/cjs/component/axis/base-axis.js.map +1 -1
- package/cjs/core/expression-function.js +1 -1
- package/cjs/core/factory.js +1 -1
- package/cjs/core/index.js +1 -1
- package/cjs/data/data-view-utils.js +1 -1
- package/cjs/data/initialize.js +1 -1
- package/cjs/data/register.js +1 -1
- package/esm/chart/base/base-chart.d.ts +7 -0
- package/esm/chart/base/base-chart.js +63 -7
- package/esm/chart/base/base-chart.js.map +1 -1
- package/esm/compile/compiler.js +9 -7
- package/esm/compile/compiler.js.map +1 -1
- package/esm/component/axis/base-axis.js +3 -5
- package/esm/component/axis/base-axis.js.map +1 -1
- package/esm/core/expression-function.js +1 -1
- package/esm/core/factory.js +1 -1
- package/esm/core/index.js +1 -1
- package/esm/data/data-view-utils.js +1 -1
- package/esm/data/initialize.js +1 -1
- package/esm/data/register.js +1 -1
- package/package.json +5 -5
package/build/index.es.js
CHANGED
|
@@ -60786,29 +60786,38 @@ class Compiler {
|
|
|
60786
60786
|
}
|
|
60787
60787
|
renderMarks() {
|
|
60788
60788
|
var _a;
|
|
60789
|
-
|
|
60789
|
+
let hasCommitedMark = this._hasCommitedMark();
|
|
60790
|
+
const needsLayout = this._layoutState === LayoutState.before;
|
|
60791
|
+
if (!hasCommitedMark && !needsLayout) {
|
|
60790
60792
|
return;
|
|
60791
60793
|
}
|
|
60792
60794
|
log(`--- start of renderMarks(${this._count}) ---`);
|
|
60793
60795
|
this.clearProgressive();
|
|
60794
|
-
|
|
60795
|
-
|
|
60796
|
-
|
|
60797
|
-
|
|
60796
|
+
if (hasCommitedMark) {
|
|
60797
|
+
this._rootMarks.forEach(mark => {
|
|
60798
|
+
mark.render();
|
|
60799
|
+
});
|
|
60800
|
+
}
|
|
60801
|
+
if (needsLayout) {
|
|
60798
60802
|
this._layoutState = LayoutState.layouting;
|
|
60799
60803
|
(_a = this._compileChart) === null || _a === void 0 ? void 0 : _a.onLayout();
|
|
60800
60804
|
this._layoutState = LayoutState.reevaluate;
|
|
60801
|
-
|
|
60805
|
+
hasCommitedMark = this._hasCommitedMark();
|
|
60806
|
+
if (hasCommitedMark) {
|
|
60802
60807
|
this._rootMarks.forEach(mark => {
|
|
60803
60808
|
mark.render();
|
|
60804
60809
|
});
|
|
60805
60810
|
}
|
|
60806
60811
|
this.handleLayoutEnd();
|
|
60807
60812
|
}
|
|
60808
|
-
|
|
60809
|
-
|
|
60813
|
+
if (hasCommitedMark) {
|
|
60814
|
+
this.findProgressiveMarks();
|
|
60815
|
+
this.updateStateAnimation();
|
|
60816
|
+
}
|
|
60810
60817
|
this._doRender(true);
|
|
60811
|
-
|
|
60818
|
+
if (hasCommitedMark) {
|
|
60819
|
+
this.doPreProgressive();
|
|
60820
|
+
}
|
|
60812
60821
|
log(`--- start of renderMarks(${this._count}) ---`);
|
|
60813
60822
|
this._count++;
|
|
60814
60823
|
}
|
|
@@ -72657,6 +72666,7 @@ class AxisComponent extends BaseComponent {
|
|
|
72657
72666
|
}
|
|
72658
72667
|
}
|
|
72659
72668
|
_compareSpec(spec, prevSpec) {
|
|
72669
|
+
var _a, _b;
|
|
72660
72670
|
const result = super._compareSpec(spec, prevSpec);
|
|
72661
72671
|
if (result.reMake) {
|
|
72662
72672
|
return result;
|
|
@@ -72667,10 +72677,10 @@ class AxisComponent extends BaseComponent {
|
|
|
72667
72677
|
result.reMake = true;
|
|
72668
72678
|
return result;
|
|
72669
72679
|
}
|
|
72670
|
-
|
|
72671
|
-
|
|
72672
|
-
return
|
|
72673
|
-
}
|
|
72680
|
+
if (((_a = spec === null || spec === void 0 ? void 0 : spec.grid) === null || _a === void 0 ? void 0 : _a.visible) === true && ((_b = prevSpec === null || prevSpec === void 0 ? void 0 : prevSpec.grid) === null || _b === void 0 ? void 0 : _b.visible) !== true && !this._gridMark) {
|
|
72681
|
+
result.reMake = true;
|
|
72682
|
+
return result;
|
|
72683
|
+
}
|
|
72674
72684
|
if (specChanged && !result.reMake && this._isComponentOnlySpecChange(spec, prevSpec)) {
|
|
72675
72685
|
result.effects = Object.assign(Object.assign({}, result.effects), { component: true, layout: true, render: true });
|
|
72676
72686
|
}
|
|
@@ -75957,6 +75967,21 @@ const MARKER_COMPONENT_SPEC_KEYS = {
|
|
|
75957
75967
|
[ComponentTypeEnum.markLine]: true,
|
|
75958
75968
|
[ComponentTypeEnum.markArea]: true
|
|
75959
75969
|
};
|
|
75970
|
+
const MARKER_ADDITION_REMAKE_SPEC_KEYS = {
|
|
75971
|
+
autoRange: true,
|
|
75972
|
+
regionId: true,
|
|
75973
|
+
regionIndex: true,
|
|
75974
|
+
seriesId: true,
|
|
75975
|
+
seriesIndex: true,
|
|
75976
|
+
relativeSeriesId: true,
|
|
75977
|
+
relativeSeriesIndex: true,
|
|
75978
|
+
startRelativeSeriesId: true,
|
|
75979
|
+
startRelativeSeriesIndex: true,
|
|
75980
|
+
endRelativeSeriesId: true,
|
|
75981
|
+
endRelativeSeriesIndex: true,
|
|
75982
|
+
specifiedDataSeriesId: true,
|
|
75983
|
+
specifiedDataSeriesIndex: true
|
|
75984
|
+
};
|
|
75960
75985
|
class BaseChart extends CompilableBase {
|
|
75961
75986
|
getSpec() {
|
|
75962
75987
|
return this._spec;
|
|
@@ -76131,6 +76156,12 @@ class BaseChart extends CompilableBase {
|
|
|
76131
76156
|
this.getComponentsByType = (type) => {
|
|
76132
76157
|
return this._components.filter(c => c.type === type);
|
|
76133
76158
|
};
|
|
76159
|
+
this._isMarkerAdditionSpecSafeWithoutRemake = (spec) => {
|
|
76160
|
+
if (!spec || typeof spec !== 'object' || spec.visible === false) {
|
|
76161
|
+
return false;
|
|
76162
|
+
}
|
|
76163
|
+
return !Object.keys(MARKER_ADDITION_REMAKE_SPEC_KEYS).some(key => !isNil$1(spec[key]));
|
|
76164
|
+
};
|
|
76134
76165
|
this._paddingSpec = normalizeLayoutPaddingSpec((_a = spec.padding) !== null && _a !== void 0 ? _a : option.getTheme('padding'));
|
|
76135
76166
|
this._event = new Event$1(option.eventDispatcher, option.mode);
|
|
76136
76167
|
this._dataSet = option.dataSet;
|
|
@@ -76530,7 +76561,7 @@ class BaseChart extends CompilableBase {
|
|
|
76530
76561
|
.sort();
|
|
76531
76562
|
}
|
|
76532
76563
|
updateSpec(spec) {
|
|
76533
|
-
var _a;
|
|
76564
|
+
var _a, _b;
|
|
76534
76565
|
const result = {
|
|
76535
76566
|
change: false,
|
|
76536
76567
|
reMake: false,
|
|
@@ -76556,7 +76587,7 @@ class BaseChart extends CompilableBase {
|
|
|
76556
76587
|
const nextSpec = spec[key];
|
|
76557
76588
|
if (isArray$1(currentSpec) &&
|
|
76558
76589
|
currentSpec.length !== array(nextSpec).length &&
|
|
76559
|
-
!this.
|
|
76590
|
+
!this._canChangeMarkerComponentsWithoutRemake(key, currentSpec, nextSpec)) {
|
|
76560
76591
|
result.reMake = true;
|
|
76561
76592
|
this.setLayoutTag(true, null, false);
|
|
76562
76593
|
return result;
|
|
@@ -76591,6 +76622,9 @@ class BaseChart extends CompilableBase {
|
|
|
76591
76622
|
this.setLayoutTag(true, null, false);
|
|
76592
76623
|
return result;
|
|
76593
76624
|
}
|
|
76625
|
+
if (!onlyComponentSpecsChanged && ((_a = result.effects) === null || _a === void 0 ? void 0 : _a.localOnly)) {
|
|
76626
|
+
delete result.effects.localOnly;
|
|
76627
|
+
}
|
|
76594
76628
|
if (isUpdateSpecResultLocalOnly(result)) {
|
|
76595
76629
|
return result;
|
|
76596
76630
|
}
|
|
@@ -76600,7 +76634,7 @@ class BaseChart extends CompilableBase {
|
|
|
76600
76634
|
componentUpdateResult.componentOnlyUpdatedComponents.forEach(component => {
|
|
76601
76635
|
component.reInit(component.getSpec());
|
|
76602
76636
|
});
|
|
76603
|
-
if ((
|
|
76637
|
+
if ((_b = result.effects) === null || _b === void 0 ? void 0 : _b.layout) {
|
|
76604
76638
|
this.setLayoutTag(true, null, false);
|
|
76605
76639
|
}
|
|
76606
76640
|
return result;
|
|
@@ -76613,7 +76647,9 @@ class BaseChart extends CompilableBase {
|
|
|
76613
76647
|
this.reInit();
|
|
76614
76648
|
if (!onlySeriesSpecsChanged || !this._canSkipChartDataStages(result)) {
|
|
76615
76649
|
this.updateDataSpec();
|
|
76616
|
-
this.
|
|
76650
|
+
this.reDataFlow();
|
|
76651
|
+
this._reRunStackDataFlow();
|
|
76652
|
+
this.getAllModels().forEach(model => model.onDataUpdate());
|
|
76617
76653
|
}
|
|
76618
76654
|
return result;
|
|
76619
76655
|
}
|
|
@@ -76696,6 +76732,9 @@ class BaseChart extends CompilableBase {
|
|
|
76696
76732
|
mergeUpdateResult(result, componentResult);
|
|
76697
76733
|
}
|
|
76698
76734
|
});
|
|
76735
|
+
if (!result.reMake) {
|
|
76736
|
+
this._createMissingMarkerComponentsForSpecs(result, componentCache);
|
|
76737
|
+
}
|
|
76699
76738
|
for (const key in componentCache) {
|
|
76700
76739
|
if (Object.prototype.hasOwnProperty.call(componentCache, key)) {
|
|
76701
76740
|
const element = componentCache[key];
|
|
@@ -76726,6 +76765,19 @@ class BaseChart extends CompilableBase {
|
|
|
76726
76765
|
hasNonComponentOnlyUpdate
|
|
76727
76766
|
};
|
|
76728
76767
|
}
|
|
76768
|
+
_canChangeMarkerComponentsWithoutRemake(key, currentSpec, nextSpec) {
|
|
76769
|
+
return (this._canRemoveMarkerComponentsWithoutRemake(key, currentSpec, nextSpec) ||
|
|
76770
|
+
this._canAddMarkerComponentsWithoutRemake(key, currentSpec, nextSpec));
|
|
76771
|
+
}
|
|
76772
|
+
_canAddMarkerComponentsWithoutRemake(key, currentSpec, nextSpec) {
|
|
76773
|
+
if (!MARKER_COMPONENT_SPEC_KEYS[key] || !isArray$1(currentSpec) || !isArray$1(nextSpec)) {
|
|
76774
|
+
return false;
|
|
76775
|
+
}
|
|
76776
|
+
if (nextSpec.length <= currentSpec.length) {
|
|
76777
|
+
return false;
|
|
76778
|
+
}
|
|
76779
|
+
return nextSpec.slice(currentSpec.length).every(this._isMarkerAdditionSpecSafeWithoutRemake);
|
|
76780
|
+
}
|
|
76729
76781
|
_canRemoveMarkerComponentsWithoutRemake(key, currentSpec, nextSpec) {
|
|
76730
76782
|
return (MARKER_COMPONENT_SPEC_KEYS[key] &&
|
|
76731
76783
|
isArray$1(currentSpec) &&
|
|
@@ -76745,6 +76797,9 @@ class BaseChart extends CompilableBase {
|
|
|
76745
76797
|
return hasMarkerRemoval && onlyMarkerRemoval;
|
|
76746
76798
|
}
|
|
76747
76799
|
_isComponentSpecKey(key) {
|
|
76800
|
+
if (MARKER_COMPONENT_SPEC_KEYS[key]) {
|
|
76801
|
+
return true;
|
|
76802
|
+
}
|
|
76748
76803
|
return this._components.some(component => {
|
|
76749
76804
|
return (component.specKey || component.type) === key;
|
|
76750
76805
|
});
|
|
@@ -76804,6 +76859,57 @@ class BaseChart extends CompilableBase {
|
|
|
76804
76859
|
!result.changeTheme &&
|
|
76805
76860
|
!result.changeBackground);
|
|
76806
76861
|
}
|
|
76862
|
+
_reRunStackDataFlow() {
|
|
76863
|
+
var _a, _b;
|
|
76864
|
+
if (!this._series.some(series => { var _a; return (_a = series.getStack) === null || _a === void 0 ? void 0 : _a.call(series); })) {
|
|
76865
|
+
return;
|
|
76866
|
+
}
|
|
76867
|
+
(_b = (_a = this._stack) === null || _a === void 0 ? void 0 : _a.stackAll) === null || _b === void 0 ? void 0 : _b.call(_a);
|
|
76868
|
+
this._series.forEach(series => {
|
|
76869
|
+
if (series.getViewDataFilter()) {
|
|
76870
|
+
series.reTransformViewData();
|
|
76871
|
+
}
|
|
76872
|
+
});
|
|
76873
|
+
}
|
|
76874
|
+
_getModelSpecIndex(specInfo) {
|
|
76875
|
+
var _a;
|
|
76876
|
+
const specPath = (_a = specInfo.specPath) !== null && _a !== void 0 ? _a : [];
|
|
76877
|
+
const specIndex = specPath[specPath.length - 1];
|
|
76878
|
+
return typeof specIndex === 'number' ? specIndex : 0;
|
|
76879
|
+
}
|
|
76880
|
+
_hasComponentForSpecInfo(key, specInfo) {
|
|
76881
|
+
const specIndex = this._getModelSpecIndex(specInfo);
|
|
76882
|
+
return this._components.some(component => {
|
|
76883
|
+
return (component.specKey || component.type) === key && component.getSpecIndex() === specIndex;
|
|
76884
|
+
});
|
|
76885
|
+
}
|
|
76886
|
+
_createMissingMarkerComponentsForSpecs(result, componentCache) {
|
|
76887
|
+
var _a;
|
|
76888
|
+
let createdCount = 0;
|
|
76889
|
+
(_a = this._specTransformer) === null || _a === void 0 ? void 0 : _a.forEachComponentInSpec(this._spec, (constructor, specInfo) => {
|
|
76890
|
+
if (result.reMake) {
|
|
76891
|
+
return;
|
|
76892
|
+
}
|
|
76893
|
+
const compSpecKey = constructor.specKey || constructor.type;
|
|
76894
|
+
if (!MARKER_COMPONENT_SPEC_KEYS[compSpecKey] || this._hasComponentForSpecInfo(compSpecKey, specInfo)) {
|
|
76895
|
+
return;
|
|
76896
|
+
}
|
|
76897
|
+
if (!this._isMarkerAdditionSpecSafeWithoutRemake(specInfo.spec)) {
|
|
76898
|
+
result.reMake = true;
|
|
76899
|
+
return;
|
|
76900
|
+
}
|
|
76901
|
+
this._createComponent(constructor, specInfo);
|
|
76902
|
+
if (componentCache[compSpecKey]) {
|
|
76903
|
+
componentCache[compSpecKey].componentCount++;
|
|
76904
|
+
}
|
|
76905
|
+
createdCount++;
|
|
76906
|
+
}, this._option.getSpecInfo());
|
|
76907
|
+
if (!createdCount) {
|
|
76908
|
+
return;
|
|
76909
|
+
}
|
|
76910
|
+
result.change = true;
|
|
76911
|
+
result.effects = Object.assign(Object.assign({}, result.effects), { component: true, layout: true, render: true });
|
|
76912
|
+
}
|
|
76807
76913
|
_removeMarkerComponentsForEmptySpecs(result) {
|
|
76808
76914
|
const removedComponents = this._components.filter(component => {
|
|
76809
76915
|
var _a;
|
package/build/index.js
CHANGED
|
@@ -60792,29 +60792,38 @@
|
|
|
60792
60792
|
}
|
|
60793
60793
|
renderMarks() {
|
|
60794
60794
|
var _a;
|
|
60795
|
-
|
|
60795
|
+
let hasCommitedMark = this._hasCommitedMark();
|
|
60796
|
+
const needsLayout = this._layoutState === LayoutState.before;
|
|
60797
|
+
if (!hasCommitedMark && !needsLayout) {
|
|
60796
60798
|
return;
|
|
60797
60799
|
}
|
|
60798
60800
|
log(`--- start of renderMarks(${this._count}) ---`);
|
|
60799
60801
|
this.clearProgressive();
|
|
60800
|
-
|
|
60801
|
-
|
|
60802
|
-
|
|
60803
|
-
|
|
60802
|
+
if (hasCommitedMark) {
|
|
60803
|
+
this._rootMarks.forEach(mark => {
|
|
60804
|
+
mark.render();
|
|
60805
|
+
});
|
|
60806
|
+
}
|
|
60807
|
+
if (needsLayout) {
|
|
60804
60808
|
this._layoutState = LayoutState.layouting;
|
|
60805
60809
|
(_a = this._compileChart) === null || _a === void 0 ? void 0 : _a.onLayout();
|
|
60806
60810
|
this._layoutState = LayoutState.reevaluate;
|
|
60807
|
-
|
|
60811
|
+
hasCommitedMark = this._hasCommitedMark();
|
|
60812
|
+
if (hasCommitedMark) {
|
|
60808
60813
|
this._rootMarks.forEach(mark => {
|
|
60809
60814
|
mark.render();
|
|
60810
60815
|
});
|
|
60811
60816
|
}
|
|
60812
60817
|
this.handleLayoutEnd();
|
|
60813
60818
|
}
|
|
60814
|
-
|
|
60815
|
-
|
|
60819
|
+
if (hasCommitedMark) {
|
|
60820
|
+
this.findProgressiveMarks();
|
|
60821
|
+
this.updateStateAnimation();
|
|
60822
|
+
}
|
|
60816
60823
|
this._doRender(true);
|
|
60817
|
-
|
|
60824
|
+
if (hasCommitedMark) {
|
|
60825
|
+
this.doPreProgressive();
|
|
60826
|
+
}
|
|
60818
60827
|
log(`--- start of renderMarks(${this._count}) ---`);
|
|
60819
60828
|
this._count++;
|
|
60820
60829
|
}
|
|
@@ -72663,6 +72672,7 @@
|
|
|
72663
72672
|
}
|
|
72664
72673
|
}
|
|
72665
72674
|
_compareSpec(spec, prevSpec) {
|
|
72675
|
+
var _a, _b;
|
|
72666
72676
|
const result = super._compareSpec(spec, prevSpec);
|
|
72667
72677
|
if (result.reMake) {
|
|
72668
72678
|
return result;
|
|
@@ -72673,10 +72683,10 @@
|
|
|
72673
72683
|
result.reMake = true;
|
|
72674
72684
|
return result;
|
|
72675
72685
|
}
|
|
72676
|
-
|
|
72677
|
-
|
|
72678
|
-
return
|
|
72679
|
-
}
|
|
72686
|
+
if (((_a = spec === null || spec === void 0 ? void 0 : spec.grid) === null || _a === void 0 ? void 0 : _a.visible) === true && ((_b = prevSpec === null || prevSpec === void 0 ? void 0 : prevSpec.grid) === null || _b === void 0 ? void 0 : _b.visible) !== true && !this._gridMark) {
|
|
72687
|
+
result.reMake = true;
|
|
72688
|
+
return result;
|
|
72689
|
+
}
|
|
72680
72690
|
if (specChanged && !result.reMake && this._isComponentOnlySpecChange(spec, prevSpec)) {
|
|
72681
72691
|
result.effects = Object.assign(Object.assign({}, result.effects), { component: true, layout: true, render: true });
|
|
72682
72692
|
}
|
|
@@ -75963,6 +75973,21 @@
|
|
|
75963
75973
|
[ComponentTypeEnum.markLine]: true,
|
|
75964
75974
|
[ComponentTypeEnum.markArea]: true
|
|
75965
75975
|
};
|
|
75976
|
+
const MARKER_ADDITION_REMAKE_SPEC_KEYS = {
|
|
75977
|
+
autoRange: true,
|
|
75978
|
+
regionId: true,
|
|
75979
|
+
regionIndex: true,
|
|
75980
|
+
seriesId: true,
|
|
75981
|
+
seriesIndex: true,
|
|
75982
|
+
relativeSeriesId: true,
|
|
75983
|
+
relativeSeriesIndex: true,
|
|
75984
|
+
startRelativeSeriesId: true,
|
|
75985
|
+
startRelativeSeriesIndex: true,
|
|
75986
|
+
endRelativeSeriesId: true,
|
|
75987
|
+
endRelativeSeriesIndex: true,
|
|
75988
|
+
specifiedDataSeriesId: true,
|
|
75989
|
+
specifiedDataSeriesIndex: true
|
|
75990
|
+
};
|
|
75966
75991
|
class BaseChart extends CompilableBase {
|
|
75967
75992
|
getSpec() {
|
|
75968
75993
|
return this._spec;
|
|
@@ -76137,6 +76162,12 @@
|
|
|
76137
76162
|
this.getComponentsByType = (type) => {
|
|
76138
76163
|
return this._components.filter(c => c.type === type);
|
|
76139
76164
|
};
|
|
76165
|
+
this._isMarkerAdditionSpecSafeWithoutRemake = (spec) => {
|
|
76166
|
+
if (!spec || typeof spec !== 'object' || spec.visible === false) {
|
|
76167
|
+
return false;
|
|
76168
|
+
}
|
|
76169
|
+
return !Object.keys(MARKER_ADDITION_REMAKE_SPEC_KEYS).some(key => !isNil$1(spec[key]));
|
|
76170
|
+
};
|
|
76140
76171
|
this._paddingSpec = normalizeLayoutPaddingSpec((_a = spec.padding) !== null && _a !== void 0 ? _a : option.getTheme('padding'));
|
|
76141
76172
|
this._event = new Event$1(option.eventDispatcher, option.mode);
|
|
76142
76173
|
this._dataSet = option.dataSet;
|
|
@@ -76536,7 +76567,7 @@
|
|
|
76536
76567
|
.sort();
|
|
76537
76568
|
}
|
|
76538
76569
|
updateSpec(spec) {
|
|
76539
|
-
var _a;
|
|
76570
|
+
var _a, _b;
|
|
76540
76571
|
const result = {
|
|
76541
76572
|
change: false,
|
|
76542
76573
|
reMake: false,
|
|
@@ -76562,7 +76593,7 @@
|
|
|
76562
76593
|
const nextSpec = spec[key];
|
|
76563
76594
|
if (isArray$1(currentSpec) &&
|
|
76564
76595
|
currentSpec.length !== array(nextSpec).length &&
|
|
76565
|
-
!this.
|
|
76596
|
+
!this._canChangeMarkerComponentsWithoutRemake(key, currentSpec, nextSpec)) {
|
|
76566
76597
|
result.reMake = true;
|
|
76567
76598
|
this.setLayoutTag(true, null, false);
|
|
76568
76599
|
return result;
|
|
@@ -76597,6 +76628,9 @@
|
|
|
76597
76628
|
this.setLayoutTag(true, null, false);
|
|
76598
76629
|
return result;
|
|
76599
76630
|
}
|
|
76631
|
+
if (!onlyComponentSpecsChanged && ((_a = result.effects) === null || _a === void 0 ? void 0 : _a.localOnly)) {
|
|
76632
|
+
delete result.effects.localOnly;
|
|
76633
|
+
}
|
|
76600
76634
|
if (isUpdateSpecResultLocalOnly(result)) {
|
|
76601
76635
|
return result;
|
|
76602
76636
|
}
|
|
@@ -76606,7 +76640,7 @@
|
|
|
76606
76640
|
componentUpdateResult.componentOnlyUpdatedComponents.forEach(component => {
|
|
76607
76641
|
component.reInit(component.getSpec());
|
|
76608
76642
|
});
|
|
76609
|
-
if ((
|
|
76643
|
+
if ((_b = result.effects) === null || _b === void 0 ? void 0 : _b.layout) {
|
|
76610
76644
|
this.setLayoutTag(true, null, false);
|
|
76611
76645
|
}
|
|
76612
76646
|
return result;
|
|
@@ -76619,7 +76653,9 @@
|
|
|
76619
76653
|
this.reInit();
|
|
76620
76654
|
if (!onlySeriesSpecsChanged || !this._canSkipChartDataStages(result)) {
|
|
76621
76655
|
this.updateDataSpec();
|
|
76622
|
-
this.
|
|
76656
|
+
this.reDataFlow();
|
|
76657
|
+
this._reRunStackDataFlow();
|
|
76658
|
+
this.getAllModels().forEach(model => model.onDataUpdate());
|
|
76623
76659
|
}
|
|
76624
76660
|
return result;
|
|
76625
76661
|
}
|
|
@@ -76702,6 +76738,9 @@
|
|
|
76702
76738
|
mergeUpdateResult(result, componentResult);
|
|
76703
76739
|
}
|
|
76704
76740
|
});
|
|
76741
|
+
if (!result.reMake) {
|
|
76742
|
+
this._createMissingMarkerComponentsForSpecs(result, componentCache);
|
|
76743
|
+
}
|
|
76705
76744
|
for (const key in componentCache) {
|
|
76706
76745
|
if (Object.prototype.hasOwnProperty.call(componentCache, key)) {
|
|
76707
76746
|
const element = componentCache[key];
|
|
@@ -76732,6 +76771,19 @@
|
|
|
76732
76771
|
hasNonComponentOnlyUpdate
|
|
76733
76772
|
};
|
|
76734
76773
|
}
|
|
76774
|
+
_canChangeMarkerComponentsWithoutRemake(key, currentSpec, nextSpec) {
|
|
76775
|
+
return (this._canRemoveMarkerComponentsWithoutRemake(key, currentSpec, nextSpec) ||
|
|
76776
|
+
this._canAddMarkerComponentsWithoutRemake(key, currentSpec, nextSpec));
|
|
76777
|
+
}
|
|
76778
|
+
_canAddMarkerComponentsWithoutRemake(key, currentSpec, nextSpec) {
|
|
76779
|
+
if (!MARKER_COMPONENT_SPEC_KEYS[key] || !isArray$1(currentSpec) || !isArray$1(nextSpec)) {
|
|
76780
|
+
return false;
|
|
76781
|
+
}
|
|
76782
|
+
if (nextSpec.length <= currentSpec.length) {
|
|
76783
|
+
return false;
|
|
76784
|
+
}
|
|
76785
|
+
return nextSpec.slice(currentSpec.length).every(this._isMarkerAdditionSpecSafeWithoutRemake);
|
|
76786
|
+
}
|
|
76735
76787
|
_canRemoveMarkerComponentsWithoutRemake(key, currentSpec, nextSpec) {
|
|
76736
76788
|
return (MARKER_COMPONENT_SPEC_KEYS[key] &&
|
|
76737
76789
|
isArray$1(currentSpec) &&
|
|
@@ -76751,6 +76803,9 @@
|
|
|
76751
76803
|
return hasMarkerRemoval && onlyMarkerRemoval;
|
|
76752
76804
|
}
|
|
76753
76805
|
_isComponentSpecKey(key) {
|
|
76806
|
+
if (MARKER_COMPONENT_SPEC_KEYS[key]) {
|
|
76807
|
+
return true;
|
|
76808
|
+
}
|
|
76754
76809
|
return this._components.some(component => {
|
|
76755
76810
|
return (component.specKey || component.type) === key;
|
|
76756
76811
|
});
|
|
@@ -76810,6 +76865,57 @@
|
|
|
76810
76865
|
!result.changeTheme &&
|
|
76811
76866
|
!result.changeBackground);
|
|
76812
76867
|
}
|
|
76868
|
+
_reRunStackDataFlow() {
|
|
76869
|
+
var _a, _b;
|
|
76870
|
+
if (!this._series.some(series => { var _a; return (_a = series.getStack) === null || _a === void 0 ? void 0 : _a.call(series); })) {
|
|
76871
|
+
return;
|
|
76872
|
+
}
|
|
76873
|
+
(_b = (_a = this._stack) === null || _a === void 0 ? void 0 : _a.stackAll) === null || _b === void 0 ? void 0 : _b.call(_a);
|
|
76874
|
+
this._series.forEach(series => {
|
|
76875
|
+
if (series.getViewDataFilter()) {
|
|
76876
|
+
series.reTransformViewData();
|
|
76877
|
+
}
|
|
76878
|
+
});
|
|
76879
|
+
}
|
|
76880
|
+
_getModelSpecIndex(specInfo) {
|
|
76881
|
+
var _a;
|
|
76882
|
+
const specPath = (_a = specInfo.specPath) !== null && _a !== void 0 ? _a : [];
|
|
76883
|
+
const specIndex = specPath[specPath.length - 1];
|
|
76884
|
+
return typeof specIndex === 'number' ? specIndex : 0;
|
|
76885
|
+
}
|
|
76886
|
+
_hasComponentForSpecInfo(key, specInfo) {
|
|
76887
|
+
const specIndex = this._getModelSpecIndex(specInfo);
|
|
76888
|
+
return this._components.some(component => {
|
|
76889
|
+
return (component.specKey || component.type) === key && component.getSpecIndex() === specIndex;
|
|
76890
|
+
});
|
|
76891
|
+
}
|
|
76892
|
+
_createMissingMarkerComponentsForSpecs(result, componentCache) {
|
|
76893
|
+
var _a;
|
|
76894
|
+
let createdCount = 0;
|
|
76895
|
+
(_a = this._specTransformer) === null || _a === void 0 ? void 0 : _a.forEachComponentInSpec(this._spec, (constructor, specInfo) => {
|
|
76896
|
+
if (result.reMake) {
|
|
76897
|
+
return;
|
|
76898
|
+
}
|
|
76899
|
+
const compSpecKey = constructor.specKey || constructor.type;
|
|
76900
|
+
if (!MARKER_COMPONENT_SPEC_KEYS[compSpecKey] || this._hasComponentForSpecInfo(compSpecKey, specInfo)) {
|
|
76901
|
+
return;
|
|
76902
|
+
}
|
|
76903
|
+
if (!this._isMarkerAdditionSpecSafeWithoutRemake(specInfo.spec)) {
|
|
76904
|
+
result.reMake = true;
|
|
76905
|
+
return;
|
|
76906
|
+
}
|
|
76907
|
+
this._createComponent(constructor, specInfo);
|
|
76908
|
+
if (componentCache[compSpecKey]) {
|
|
76909
|
+
componentCache[compSpecKey].componentCount++;
|
|
76910
|
+
}
|
|
76911
|
+
createdCount++;
|
|
76912
|
+
}, this._option.getSpecInfo());
|
|
76913
|
+
if (!createdCount) {
|
|
76914
|
+
return;
|
|
76915
|
+
}
|
|
76916
|
+
result.change = true;
|
|
76917
|
+
result.effects = Object.assign(Object.assign({}, result.effects), { component: true, layout: true, render: true });
|
|
76918
|
+
}
|
|
76813
76919
|
_removeMarkerComponentsForEmptySpecs(result) {
|
|
76814
76920
|
const removedComponents = this._components.filter(component => {
|
|
76815
76921
|
var _a;
|