@visactor/vchart 1.1.0 → 1.1.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.
Files changed (53) hide show
  1. package/build/index.js +145 -68
  2. package/build/index.min.js +1 -1
  3. package/cjs/chart/map/map.js +2 -1
  4. package/cjs/chart/map/map.js.map +1 -1
  5. package/cjs/compile/compiler.js +2 -1
  6. package/cjs/compile/compiler.js.map +1 -1
  7. package/cjs/component/indicator/indicator.d.ts +1 -0
  8. package/cjs/component/indicator/indicator.js +7 -3
  9. package/cjs/component/indicator/indicator.js.map +1 -1
  10. package/cjs/core/index.d.ts +1 -1
  11. package/cjs/core/index.js +1 -1
  12. package/cjs/core/index.js.map +1 -1
  13. package/cjs/core/vchart.d.ts +2 -1
  14. package/cjs/core/vchart.js +3 -0
  15. package/cjs/core/vchart.js.map +1 -1
  16. package/cjs/data/transforms/map.js +2 -2
  17. package/cjs/data/transforms/map.js.map +1 -1
  18. package/cjs/mark/base/base-mark.d.ts +1 -0
  19. package/cjs/mark/base/base-mark.js +8 -2
  20. package/cjs/mark/base/base-mark.js.map +1 -1
  21. package/cjs/mark/interface/common.d.ts +2 -0
  22. package/cjs/mark/interface/common.js.map +1 -1
  23. package/cjs/series/map/interface.d.ts +2 -2
  24. package/cjs/series/map/interface.js.map +1 -1
  25. package/cjs/series/map/map.d.ts +2 -2
  26. package/cjs/series/map/map.js +12 -17
  27. package/cjs/series/map/map.js.map +1 -1
  28. package/esm/chart/map/map.js +2 -1
  29. package/esm/chart/map/map.js.map +1 -1
  30. package/esm/compile/compiler.js +3 -2
  31. package/esm/compile/compiler.js.map +1 -1
  32. package/esm/component/indicator/indicator.d.ts +1 -0
  33. package/esm/component/indicator/indicator.js +7 -3
  34. package/esm/component/indicator/indicator.js.map +1 -1
  35. package/esm/core/index.d.ts +1 -1
  36. package/esm/core/index.js +1 -1
  37. package/esm/core/index.js.map +1 -1
  38. package/esm/core/vchart.d.ts +2 -1
  39. package/esm/core/vchart.js +4 -1
  40. package/esm/core/vchart.js.map +1 -1
  41. package/esm/data/transforms/map.js +4 -2
  42. package/esm/data/transforms/map.js.map +1 -1
  43. package/esm/mark/base/base-mark.d.ts +1 -0
  44. package/esm/mark/base/base-mark.js +8 -2
  45. package/esm/mark/base/base-mark.js.map +1 -1
  46. package/esm/mark/interface/common.d.ts +2 -0
  47. package/esm/mark/interface/common.js.map +1 -1
  48. package/esm/series/map/interface.d.ts +2 -2
  49. package/esm/series/map/interface.js.map +1 -1
  50. package/esm/series/map/map.d.ts +2 -2
  51. package/esm/series/map/map.js +13 -18
  52. package/esm/series/map/map.js.map +1 -1
  53. package/package.json +10 -10
package/build/index.js CHANGED
@@ -8617,9 +8617,9 @@
8617
8617
  return new OrdinalScale().domain(this._domain).range(this._ordinalRange).unknown(this._unknown);
8618
8618
  }
8619
8619
  scale(d) {
8620
- const special = this._getSpecifiedValue(d);
8621
- if (!isNil(special)) return special;
8622
- const key = `${d}`;
8620
+ const key = `${d}`,
8621
+ special = this._getSpecifiedValue(key);
8622
+ if (void 0 !== special) return special;
8623
8623
  let i = this._index.get(key);
8624
8624
  if (!i) {
8625
8625
  if (this._unknown !== implicit) return this._unknown;
@@ -9078,12 +9078,33 @@
9078
9078
  } else z = ticks$1(i, j, Math.min(j - i, count)).map(this._pows);
9079
9079
  return r ? z.reverse() : z;
9080
9080
  }
9081
+ forceTicks() {
9082
+ let count = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 10;
9083
+ const d = this.calculateVisibleDomain(this._range);
9084
+ return forceTicks(d[0], d[d.length - 1], count);
9085
+ }
9086
+ stepTicks(step) {
9087
+ const d = this.calculateVisibleDomain(this._range);
9088
+ return stepTicks(d[0], d[d.length - 1], step);
9089
+ }
9081
9090
  nice() {
9082
9091
  return this.domain(nice(this.domain(), {
9083
9092
  floor: x => this._pows(Math.floor(this._logs(x))),
9084
9093
  ceil: x => this._pows(Math.ceil(this._logs(x)))
9085
9094
  }));
9086
9095
  }
9096
+ niceMin() {
9097
+ const maxD = this._domain[this._domain.length - 1];
9098
+ this.nice();
9099
+ const niceDomain = cloneDeep(this._domain);
9100
+ return this._domain && (niceDomain[niceDomain.length - 1] = maxD, this.domain(niceDomain)), this;
9101
+ }
9102
+ niceMax() {
9103
+ const minD = this._domain[0];
9104
+ this.nice();
9105
+ const niceDomain = cloneDeep(this._domain);
9106
+ return this._domain && (niceDomain[0] = minD, this.domain(niceDomain)), this;
9107
+ }
9087
9108
  }
9088
9109
 
9089
9110
  class PointScale extends BandScale {
@@ -25603,7 +25624,18 @@
25603
25624
  Array.isArray(text) ? graphic.updateMultilineAABBBounds(text) : graphic.updateSingallineAABBBounds(text);
25604
25625
  const tb1 = this.tempAABBBounds1,
25605
25626
  tb2 = this.tempAABBBounds2;
25606
- return tb1.setValue(aabbBounds.x1, aabbBounds.y1, aabbBounds.x2, aabbBounds.y2), tb2.setValue(aabbBounds.x1, aabbBounds.y1, aabbBounds.x2, aabbBounds.y2), transformBoundsWithMatrix(aabbBounds, aabbBounds, graphic.transMatrix), aabbBounds;
25627
+ tb1.setValue(aabbBounds.x1, aabbBounds.y1, aabbBounds.x2, aabbBounds.y2), tb2.setValue(aabbBounds.x1, aabbBounds.y1, aabbBounds.x2, aabbBounds.y2);
25628
+ const {
25629
+ scaleX = textTheme.scaleX,
25630
+ scaleY = textTheme.scaleY,
25631
+ shadowBlur = textTheme.shadowBlur,
25632
+ strokeBoundsBuffer = textTheme.strokeBoundsBuffer
25633
+ } = attribute;
25634
+ if (shadowBlur) {
25635
+ const shadowBlurHalfWidth = shadowBlur / Math.abs(scaleX + scaleY);
25636
+ boundStroke(tb1, shadowBlurHalfWidth, !0, strokeBoundsBuffer), aabbBounds.union(tb1);
25637
+ }
25638
+ return this.combindShadowAABBBounds(aabbBounds, graphic), transformBoundsWithMatrix(aabbBounds, aabbBounds, graphic.transMatrix), aabbBounds;
25607
25639
  }
25608
25640
  updatePathAABBBounds(attribute, pathTheme, aabbBounds, graphic) {
25609
25641
  this.updatePathProxyAABBBounds(aabbBounds, graphic) || this.updatePathAABBBoundsImprecise(attribute, pathTheme, aabbBounds, graphic);
@@ -26587,21 +26619,21 @@
26587
26619
  x: originX = 0,
26588
26620
  x: originY = 0
26589
26621
  } = attribute;
26590
- if (!1 !== fill && (fillCb ? fillCb(context, attribute, defaultAttribute) : fillOpacity && (context.setCommonStyle(area, attribute, originX - offsetX, originY - offsetY, defaultAttribute), context.fill())), !1 !== stroke) if (strokeCb) strokeCb(context, attribute, defaultAttribute);else {
26622
+ if (!1 !== fill && (fillCb ? fillCb(context, attribute, defaultAttribute) : fillOpacity && (context.setCommonStyle(area, attribute, originX - offsetX, originY - offsetY, defaultAttribute), context.fill())), this._areaRenderContribitions || (this._areaRenderContribitions = this.areaRenderContribitions.getContributions() || []), this._areaRenderContribitions.forEach(c => {
26623
+ c.time === BaseRenderContributionTime.afterFillStroke && c.drawShape(area, context, offsetX, offsetY, !!fillOpacity, !1, fill, !1, defaultAttribute, drawContext, fillCb, null, {
26624
+ attribute: attribute
26625
+ });
26626
+ }), !1 !== stroke) if (strokeCb) strokeCb(context, attribute, defaultAttribute);else {
26591
26627
  const {
26592
26628
  stroke: stroke
26593
26629
  } = attribute;
26594
- isArray$3(stroke) && stroke[0] && !1 === stroke[1] && (context.beginPath(), drawSegments(context.camera ? context : context.nativeContext, cache.top, clipRange, "auto", {
26630
+ isArray$3(stroke) && (stroke[0] || stroke[2]) && !1 === stroke[1] && (context.beginPath(), drawSegments(context.camera ? context : context.nativeContext, stroke[0] ? cache.top : cache.bottom, clipRange, "auto", {
26595
26631
  offsetX: offsetX,
26596
26632
  offsetY: offsetY,
26597
26633
  offsetZ: offsetZ
26598
26634
  })), context.setStrokeStyle(area, attribute, originX - offsetX, originY - offsetY, defaultAttribute), context.stroke();
26599
26635
  }
26600
- return this._areaRenderContribitions || (this._areaRenderContribitions = this.areaRenderContribitions.getContributions() || []), this._areaRenderContribitions.forEach(c => {
26601
- c.time === BaseRenderContributionTime.afterFillStroke && c.drawShape(area, context, offsetX, offsetY, !!fillOpacity, !1, fill, !1, defaultAttribute, drawContext, fillCb, null, {
26602
- attribute: attribute
26603
- });
26604
- }), !1;
26636
+ return !1;
26605
26637
  }
26606
26638
  };
26607
26639
  DefaultCanvasAreaRender = __decorate$1t([injectable(), __param$L(0, inject(ContributionProvider)), __param$L(0, named(AreaRenderContribution)), __metadata$_("design:paramtypes", [Object])], DefaultCanvasAreaRender);
@@ -34661,7 +34693,7 @@
34661
34693
  return this.viewBox.height();
34662
34694
  }
34663
34695
  }
34664
- })), params.autoRender && this.enableAutoRender(), !1 === params.disableDirtyBounds && this.enableDirtyBounds(), this.hooks.beforeRender.tap("constructor", this.beforeRender), this.hooks.afterRender.tap("constructor", this.afterRender), this._beforeRender = params.beforeRender, this._afterRender = params.afterRender, this.ticker = params.ticker || defaultTicker, !1 !== params.interactiveLayer && this.initInteractiveLayer();
34696
+ })), params.autoRender && this.enableAutoRender(), !1 === params.disableDirtyBounds && this.enableDirtyBounds(), this.hooks.beforeRender.tap("constructor", this.beforeRender), this.hooks.afterRender.tap("constructor", this.afterRender), this._beforeRender = params.beforeRender, this._afterRender = params.afterRender, this.ticker = params.ticker || defaultTicker, this.supportInteractiveLayer = !1 !== params.interactiveLayer;
34665
34697
  }
34666
34698
  get3dOptions(options) {
34667
34699
  const {
@@ -34797,8 +34829,8 @@
34797
34829
  removeLayer(ILayerId) {
34798
34830
  return this.removeChild(this.findChildByUid(ILayerId));
34799
34831
  }
34800
- initInteractiveLayer() {
34801
- this.interactiveLayer = this.createLayer(), this.interactiveLayer.name = "_builtin_interactive";
34832
+ tryInitInteractiveLayer() {
34833
+ this.supportInteractiveLayer && !this.interactiveLayer && (this.interactiveLayer = this.createLayer(), this.interactiveLayer.name = "_builtin_interactive");
34802
34834
  }
34803
34835
  clearViewBox(color) {
34804
34836
  this.window.clearViewBox(this._viewBox, color);
@@ -36050,7 +36082,7 @@
36050
36082
  }(LayoutState || (LayoutState = {}));
36051
36083
  var HOOK_EVENT;
36052
36084
  !function (HOOK_EVENT) {
36053
- HOOK_EVENT.BEFORE_PARSE_VIEW = "beforeParseView", HOOK_EVENT.AFTER_PARSE_VIEW = "afterParseView", HOOK_EVENT.BEFORE_TRANSFORM = "beforeTransform", HOOK_EVENT.AFTER_TRANSFORM = "afterTransform", HOOK_EVENT.BEFORE_CREATE_VRENDER_STAGE = "beforeCreateVRenderStage", HOOK_EVENT.AFTER_CREATE_VRENDER_STAGE = "afterCreateVRenderStage", HOOK_EVENT.BEFORE_CREATE_VRENDER_LAYER = "beforeCreateVRenderLayer", HOOK_EVENT.AFTER_CREATE_VRENDER_LAYER = "afterCreateVRenderLayer", HOOK_EVENT.BEFORE_VRENDER_DRAW = "beforeVRenderDraw", HOOK_EVENT.AFTER_VRENDER_DRAW = "afterVRenderDraw", HOOK_EVENT.BEFORE_MARK_JOIN = "beforeMarkJoin", HOOK_EVENT.AFTER_MARK_JOIN = "afterMarkJoin", HOOK_EVENT.BEFORE_MARK_UPDATE = "beforeMarkUpdate", HOOK_EVENT.AFTER_MARK_UPDATE = "afterMarkUpdate", HOOK_EVENT.BEFORE_MARK_STATE = "beforeMarkState", HOOK_EVENT.AFTER_MARK_STATE = "afterMarkState", HOOK_EVENT.BEFORE_MARK_ENCODE = "beforeMarkEncode", HOOK_EVENT.AFTER_MARK_ENCODE = "afterMarkEncode", HOOK_EVENT.BEFORE_DO_LAYOUT = "beforeDoLayout", HOOK_EVENT.AFTER_DO_LAYOUT = "afterDoLayout", HOOK_EVENT.BEFORE_MARK_LAYOUT_END = "beforeMarkLayoutEnd", HOOK_EVENT.AFTER_MARK_LAYOUT_END = "afterMarkLayoutEnd", HOOK_EVENT.BEFORE_DO_RENDER = "beforeDoRender", HOOK_EVENT.AFTER_DO_RENDER = "afterDoRender", HOOK_EVENT.BEFORE_MARK_RENDER_END = "beforeMarkRenderEnd", HOOK_EVENT.AFTER_MARK_RENDER_END = "afterMarkRenderEnd", HOOK_EVENT.BEFORE_CREATE_VRENDER_MARK = "beforeCreateVRenderMark", HOOK_EVENT.AFTER_CREATE_VRENDER_MARK = "afterCreateVRenderMark", HOOK_EVENT.BEFORE_ADD_VRENDER_MARK = "beforeAddVRenderMark", HOOK_EVENT.AFTER_ADD_VRENDER_MARK = "afterAddVRenderMark", HOOK_EVENT.AFTER_VRENDER_NEXT_RENDER = "afterVRenderNextRender", HOOK_EVENT.BEFORE_ELEMENT_UPDATE_DATA = "beforeElementUpdateData", HOOK_EVENT.AFTER_ELEMENT_UPDATE_DATA = "afterElementUpdateData", HOOK_EVENT.BEFORE_ELEMENT_STATE = "beforeElementState", HOOK_EVENT.AFTER_ELEMENT_STATE = "afterElementState", HOOK_EVENT.BEFORE_ELEMENT_ENCODE = "beforeElementEncode", HOOK_EVENT.AFTER_ELEMENT_ENCODE = "afterElementEncode", HOOK_EVENT.ANIMATION_START = "animationStart", HOOK_EVENT.ANIMATION_END = "animationEnd", HOOK_EVENT.ELEMENT_ANIMATION_START = "elementAnimationStart", HOOK_EVENT.ELEMENT_ANIMATION_END = "elementAnimationEnd";
36085
+ HOOK_EVENT.BEFORE_PARSE_VIEW = "beforeParseView", HOOK_EVENT.AFTER_PARSE_VIEW = "afterParseView", HOOK_EVENT.BEFORE_TRANSFORM = "beforeTransform", HOOK_EVENT.AFTER_TRANSFORM = "afterTransform", HOOK_EVENT.BEFORE_CREATE_VRENDER_STAGE = "beforeCreateVRenderStage", HOOK_EVENT.AFTER_CREATE_VRENDER_STAGE = "afterCreateVRenderStage", HOOK_EVENT.BEFORE_CREATE_VRENDER_LAYER = "beforeCreateVRenderLayer", HOOK_EVENT.AFTER_CREATE_VRENDER_LAYER = "afterCreateVRenderLayer", HOOK_EVENT.BEFORE_VRENDER_DRAW = "beforeVRenderDraw", HOOK_EVENT.AFTER_VRENDER_DRAW = "afterVRenderDraw", HOOK_EVENT.BEFORE_MARK_JOIN = "beforeMarkJoin", HOOK_EVENT.AFTER_MARK_JOIN = "afterMarkJoin", HOOK_EVENT.BEFORE_MARK_UPDATE = "beforeMarkUpdate", HOOK_EVENT.AFTER_MARK_UPDATE = "afterMarkUpdate", HOOK_EVENT.BEFORE_MARK_STATE = "beforeMarkState", HOOK_EVENT.AFTER_MARK_STATE = "afterMarkState", HOOK_EVENT.BEFORE_MARK_ENCODE = "beforeMarkEncode", HOOK_EVENT.AFTER_MARK_ENCODE = "afterMarkEncode", HOOK_EVENT.BEFORE_DO_LAYOUT = "beforeDoLayout", HOOK_EVENT.AFTER_DO_LAYOUT = "afterDoLayout", HOOK_EVENT.BEFORE_MARK_LAYOUT_END = "beforeMarkLayoutEnd", HOOK_EVENT.AFTER_MARK_LAYOUT_END = "afterMarkLayoutEnd", HOOK_EVENT.BEFORE_DO_RENDER = "beforeDoRender", HOOK_EVENT.AFTER_DO_RENDER = "afterDoRender", HOOK_EVENT.BEFORE_MARK_RENDER_END = "beforeMarkRenderEnd", HOOK_EVENT.AFTER_MARK_RENDER_END = "afterMarkRenderEnd", HOOK_EVENT.BEFORE_CREATE_VRENDER_MARK = "beforeCreateVRenderMark", HOOK_EVENT.AFTER_CREATE_VRENDER_MARK = "afterCreateVRenderMark", HOOK_EVENT.BEFORE_ADD_VRENDER_MARK = "beforeAddVRenderMark", HOOK_EVENT.AFTER_ADD_VRENDER_MARK = "afterAddVRenderMark", HOOK_EVENT.AFTER_VRENDER_NEXT_RENDER = "afterVRenderNextRender", HOOK_EVENT.BEFORE_ELEMENT_UPDATE_DATA = "beforeElementUpdateData", HOOK_EVENT.AFTER_ELEMENT_UPDATE_DATA = "afterElementUpdateData", HOOK_EVENT.BEFORE_ELEMENT_STATE = "beforeElementState", HOOK_EVENT.AFTER_ELEMENT_STATE = "afterElementState", HOOK_EVENT.BEFORE_ELEMENT_ENCODE = "beforeElementEncode", HOOK_EVENT.AFTER_ELEMENT_ENCODE = "afterElementEncode", HOOK_EVENT.ANIMATION_START = "animationStart", HOOK_EVENT.ANIMATION_END = "animationEnd", HOOK_EVENT.ELEMENT_ANIMATION_START = "elementAnimationStart", HOOK_EVENT.ELEMENT_ANIMATION_END = "elementAnimationEnd", HOOK_EVENT.ALL_ANIMATION_START = "allAnimationStart", HOOK_EVENT.ALL_ANIMATION_END = "allAnimationEnd";
36054
36086
  }(HOOK_EVENT || (HOOK_EVENT = {}));
36055
36087
  var GrammarTypeEnum;
36056
36088
  !function (GrammarTypeEnum) {
@@ -38886,6 +38918,12 @@
38886
38918
  recordEnd() {
38887
38919
  return this;
38888
38920
  }
38921
+ isAnimating() {
38922
+ let isAnimating = !1;
38923
+ return this.animators.forEach(animators => {
38924
+ isAnimating = isAnimating || animators.some(animator => animator.isAnimating);
38925
+ }), isAnimating;
38926
+ }
38889
38927
  isElementAnimating(element) {
38890
38928
  var _a;
38891
38929
  const stateAnimationCounts = null === (_a = this.elementRecorder.get(element)) || void 0 === _a ? void 0 : _a.count;
@@ -38943,7 +38981,7 @@
38943
38981
  },
38944
38982
  mergedParameters = Object.assign({
38945
38983
  [DefaultAnimationParameters]: animationParameters
38946
- }, animationParameters),
38984
+ }, parameters),
38947
38985
  animationUnit = this.getAnimationUnit(config.timeline, element, index, animatedElements.length, parameters);
38948
38986
  animators.push(this.animateElement(config, animationUnit, element, animationParameters, mergedParameters));
38949
38987
  })), animators;
@@ -39655,7 +39693,7 @@
39655
39693
  if (this.renderContext = this.parseRenderContext(data, parameters), this.init(stage, parameters), this.renderContext.progressive) this.differ.reset(), this.elementMap.clear(), this.evaluateProgressive();else {
39656
39694
  const transformData = this.evaluateTransformSync(this._getTransformsBeforeJoin(), null != data ? data : DefaultMarkData, parameters);
39657
39695
  let inputData = transformData;
39658
- transformData.progressive && (this.renderContext.parameters = parameters, this.renderContext.beforeTransformProgressive = transformData.progressive, inputData = transformData.progressive.output()), this.emit(HOOK_EVENT.BEFORE_MARK_JOIN), this.evaluateJoin(inputData), this.emit(HOOK_EVENT.AFTER_MARK_JOIN), this.emit(HOOK_EVENT.BEFORE_MARK_STATE), this.evaluateState(this.elements, this.spec.state, parameters), this.emit(HOOK_EVENT.AFTER_MARK_STATE), this.emit(HOOK_EVENT.BEFORE_MARK_ENCODE), this.evaluateEncode(this.elements, this._getEncoders(), parameters), this.emit(HOOK_EVENT.AFTER_MARK_ENCODE);
39696
+ (null == transformData ? void 0 : transformData.progressive) && (this.renderContext.parameters = parameters, this.renderContext.beforeTransformProgressive = transformData.progressive, inputData = transformData.progressive.output()), this.emit(HOOK_EVENT.BEFORE_MARK_JOIN), this.evaluateJoin(inputData), this.emit(HOOK_EVENT.AFTER_MARK_JOIN), this.emit(HOOK_EVENT.BEFORE_MARK_STATE), this.evaluateState(this.elements, this.spec.state, parameters), this.emit(HOOK_EVENT.AFTER_MARK_STATE), this.emit(HOOK_EVENT.BEFORE_MARK_ENCODE), this.evaluateEncode(this.elements, this._getEncoders(), parameters), this.emit(HOOK_EVENT.AFTER_MARK_ENCODE);
39659
39697
  }
39660
39698
  return this.emit(HOOK_EVENT.BEFORE_MARK_UPDATE), this.update(this.spec), this.emit(HOOK_EVENT.AFTER_MARK_UPDATE), this;
39661
39699
  }
@@ -40870,7 +40908,7 @@
40870
40908
  }, poptip), {
40871
40909
  x: matrix.e,
40872
40910
  y: matrix.f
40873
- }));
40911
+ })), drawContext.stage.tryInitInteractiveLayer();
40874
40912
  const interactiveLayer = drawContext.stage.getLayer("_builtin_interactive");
40875
40913
  interactiveLayer && interactiveLayer.add(this.poptipComponent);
40876
40914
  } else 2 === graphic._showPoptip && (graphic._showPoptip = 0, this.poptipComponent && this.poptipComponent.setAttributes({
@@ -50541,56 +50579,68 @@
50541
50579
 
50542
50580
  class ViewAnimate {
50543
50581
  constructor(view) {
50544
- this.view = view;
50582
+ this._animations = [], this._onAnimationStart = event => {
50583
+ 0 === this._animations.length && this._view.emit(HOOK_EVENT.ALL_ANIMATION_START, {}), this._animations = this._animations.concat({
50584
+ config: event.animationConfig,
50585
+ mark: event.mark
50586
+ });
50587
+ }, this._onAnimationEnd = event => {
50588
+ this._animations = this._animations.filter(animation => animation.config !== event.animationConfig || animation.mark !== event.mark), 0 === this._animations.length && this._view.emit(HOOK_EVENT.ALL_ANIMATION_END, {});
50589
+ }, this._view = view, this._view.addEventListener(HOOK_EVENT.ANIMATION_START, this._onAnimationStart), this._view.addEventListener(HOOK_EVENT.ANIMATION_END, this._onAnimationEnd);
50545
50590
  }
50546
50591
  stop() {
50547
- return this.view.traverseMarkTree(mark => {
50548
- var _a;
50549
- null === (_a = mark.animate) || void 0 === _a || _a.stop();
50592
+ return this._view.traverseMarkTree(mark => {
50593
+ var _a, _b;
50594
+ null === (_b = null === (_a = mark.animate) || void 0 === _a ? void 0 : _a.stop) || void 0 === _b || _b.call(_a);
50550
50595
  }), this;
50551
50596
  }
50552
50597
  pause() {
50553
- return this.view.traverseMarkTree(mark => {
50554
- var _a;
50555
- null === (_a = mark.animate) || void 0 === _a || _a.pause();
50598
+ return this._view.traverseMarkTree(mark => {
50599
+ var _a, _b;
50600
+ null === (_b = null === (_a = mark.animate) || void 0 === _a ? void 0 : _a.pause) || void 0 === _b || _b.call(_a);
50556
50601
  }), this;
50557
50602
  }
50558
50603
  resume() {
50559
- return this.view.traverseMarkTree(mark => {
50560
- var _a;
50561
- null === (_a = mark.animate) || void 0 === _a || _a.resume();
50604
+ return this._view.traverseMarkTree(mark => {
50605
+ var _a, _b;
50606
+ null === (_b = null === (_a = mark.animate) || void 0 === _a ? void 0 : _a.resume) || void 0 === _b || _b.call(_a);
50562
50607
  }), this;
50563
50608
  }
50564
50609
  enable() {
50565
- return this.view.traverseMarkTree(mark => {
50566
- var _a;
50567
- null === (_a = mark.animate) || void 0 === _a || _a.enable();
50610
+ return this._view.traverseMarkTree(mark => {
50611
+ var _a, _b;
50612
+ null === (_b = null === (_a = mark.animate) || void 0 === _a ? void 0 : _a.enable) || void 0 === _b || _b.call(_a);
50568
50613
  }), this;
50569
50614
  }
50570
50615
  disable() {
50571
- return this.view.traverseMarkTree(mark => {
50572
- var _a;
50573
- null === (_a = mark.animate) || void 0 === _a || _a.disable();
50616
+ return this._view.traverseMarkTree(mark => {
50617
+ var _a, _b;
50618
+ null === (_b = null === (_a = mark.animate) || void 0 === _a ? void 0 : _a.disable) || void 0 === _b || _b.call(_a);
50574
50619
  }), this;
50575
50620
  }
50576
50621
  enableAnimationState(state) {
50577
- return this.view.traverseMarkTree(mark => {
50578
- var _a;
50579
- null === (_a = mark.animate) || void 0 === _a || _a.enableAnimationState(state);
50622
+ return this._view.traverseMarkTree(mark => {
50623
+ var _a, _b;
50624
+ null === (_b = null === (_a = mark.animate) || void 0 === _a ? void 0 : _a.enableAnimationState) || void 0 === _b || _b.call(_a, state);
50580
50625
  }), this;
50581
50626
  }
50582
50627
  disableAnimationState(state) {
50583
- return this.view.traverseMarkTree(mark => {
50584
- var _a;
50585
- null === (_a = mark.animate) || void 0 === _a || _a.disableAnimationState(state);
50628
+ return this._view.traverseMarkTree(mark => {
50629
+ var _a, _b;
50630
+ null === (_b = null === (_a = mark.animate) || void 0 === _a ? void 0 : _a.disableAnimationState) || void 0 === _b || _b.call(_a, state);
50586
50631
  }), this;
50587
50632
  }
50633
+ isAnimating() {
50634
+ return 0 !== this._animations.length;
50635
+ }
50588
50636
  animate() {
50589
- return this.view.traverseMarkTree(mark => {
50637
+ return this._view.traverseMarkTree(mark => {
50590
50638
  mark.isUpdated && mark.animate && mark.animate.animate(), mark.cleanExitElements(), mark.isUpdated = !1;
50591
50639
  }, null, !0), this;
50592
50640
  }
50593
- release() {}
50641
+ release() {
50642
+ this._view.removeEventListener(HOOK_EVENT.ALL_ANIMATION_START, this._onAnimationStart), this._view.removeEventListener(HOOK_EVENT.ALL_ANIMATION_END, this._onAnimationEnd);
50643
+ }
50594
50644
  }
50595
50645
 
50596
50646
  class Interval extends Mark {
@@ -54255,7 +54305,8 @@
54255
54305
  },
54256
54306
  doLayout: () => {
54257
54307
  this._compileChart?.onLayout(this._view);
54258
- }
54308
+ },
54309
+ logLevel: Logger.getInstance().level()
54259
54310
  });
54260
54311
  this._setCanvasStyle();
54261
54312
  const interactive = this._option.interactive;
@@ -54556,6 +54607,9 @@
54556
54607
  static hideTooltip(excludeId = []) {
54557
54608
  InstanceManager.forEach(instance => instance?.hideTooltip?.(), excludeId);
54558
54609
  }
54610
+ static getLogger() {
54611
+ return Logger.getInstance();
54612
+ }
54559
54613
  static InstanceManager = InstanceManager;
54560
54614
  static ThemeManager = ThemeManager;
54561
54615
  static globalConfig = {
@@ -57694,6 +57748,11 @@
57694
57748
  });
57695
57749
  });
57696
57750
  }
57751
+ setPostProcess(key, postProcessFunc, state = 'normal') {
57752
+ if (this.stateStyle[state]?.[key]) {
57753
+ this.stateStyle[state][key].postProcess = postProcessFunc;
57754
+ }
57755
+ }
57697
57756
  getAttribute(key, datum, state = 'normal', opt) {
57698
57757
  return this._computeAttribute(key, datum, state, opt);
57699
57758
  }
@@ -57749,12 +57808,16 @@
57749
57808
  return style;
57750
57809
  }
57751
57810
  _computeAttribute(key, datum, state, opt) {
57752
- let baseValue;
57811
+ let stateStyle;
57753
57812
  if (!this.stateStyle[state]?.[key]) {
57754
- baseValue = this._computeStateAttribute(this.stateStyle.normal[key], key, datum, state, opt);
57813
+ stateStyle = this.stateStyle.normal[key];
57755
57814
  }
57756
57815
  else {
57757
- baseValue = this._computeStateAttribute(this.stateStyle[state][key], key, datum, state, opt);
57816
+ stateStyle = this.stateStyle[state][key];
57817
+ }
57818
+ let baseValue = this._computeStateAttribute(stateStyle, key, datum, state, opt);
57819
+ if (isFunction(stateStyle?.postProcess)) {
57820
+ baseValue = stateStyle.postProcess(baseValue, datum, this._attributeContext, opt, this.getDataView());
57758
57821
  }
57759
57822
  if (key in this._computeExChannel) {
57760
57823
  return this._computeExChannel[key](key, datum, state, opt, baseValue);
@@ -57970,7 +58033,7 @@
57970
58033
  VChart.useMark([ComponentMark, GroupMark, ImageMark]);
57971
58034
  Factory.registerRegion('region', Region);
57972
58035
  Factory.registerLayout('base', Layout);
57973
- const version = "1.1.0";
58036
+ const version = "1.1.1";
57974
58037
  Logger.getInstance(LoggerLevel.Error);
57975
58038
 
57976
58039
  var SeriesMarkNameEnum;
@@ -65011,7 +65074,8 @@
65011
65074
 
65012
65075
  const map = (data, opt) => {
65013
65076
  if (data.features) {
65014
- data.features.forEach((f) => {
65077
+ data.features.forEach((f, index) => {
65078
+ f[DEFAULT_DATA_INDEX] = index;
65015
65079
  if (opt.nameMap) {
65016
65080
  f.name = opt.nameMap[f.properties?.[opt.nameProperty]];
65017
65081
  }
@@ -65125,6 +65189,7 @@
65125
65189
  });
65126
65190
  if (this._spec.label?.visible) {
65127
65191
  this._labelMark = this._createMark(MapSeries.mark.label, {
65192
+ parent: this.getRegion().getGroupMark(),
65128
65193
  skipBeforeLayouted: true,
65129
65194
  dataView: this._mapViewData.getDataView(),
65130
65195
  dataProductId: this._mapViewData.getProductId()
@@ -65139,10 +65204,16 @@
65139
65204
  if (isValid(datum[this._seriesField ?? DEFAULT_DATA_SERIES_FIELD])) {
65140
65205
  return (this._option.globalScale.getScale('color') ?? this.getDefaultColorScale()).scale(datum[this._seriesField ?? DEFAULT_DATA_SERIES_FIELD]);
65141
65206
  }
65142
- return this._theme?.defaultFillColor;
65207
+ return this._spec?.defaultFillColor;
65143
65208
  },
65144
65209
  path: this.getPath.bind(this)
65145
65210
  }, 'normal', AttributeLevel.Series);
65211
+ pathMark.setPostProcess('fill', result => {
65212
+ if (!isValid(result)) {
65213
+ return this._spec.defaultFillColor;
65214
+ }
65215
+ return result;
65216
+ });
65146
65217
  this.setMarkStyle(pathMark, {
65147
65218
  smoothScale: true
65148
65219
  }, 'normal', AttributeLevel.Built_In);
@@ -65155,9 +65226,7 @@
65155
65226
  text: (datum) => {
65156
65227
  return this._getDatumName(datum);
65157
65228
  },
65158
- x: (datum) => {
65159
- return this.dataToPosition(datum)?.x;
65160
- },
65229
+ x: (datum) => this.dataToPosition(datum)?.x,
65161
65230
  y: (datum) => this.dataToPosition(datum)?.y
65162
65231
  });
65163
65232
  }
@@ -65172,12 +65241,12 @@
65172
65241
  this._tooltipHelper = new MapSeriesTooltipHelper(this);
65173
65242
  }
65174
65243
  getPath(datum) {
65175
- const area = this._areaCache.get(datum?.properties?.[this._nameProperty]);
65244
+ const area = this._areaCache.get(datum[DEFAULT_DATA_INDEX]);
65176
65245
  if (area) {
65177
65246
  return area.shape;
65178
65247
  }
65179
65248
  const shape = this._coordinateHelper?.shape(datum);
65180
- this._areaCache.set(datum?.properties?.[this._nameProperty], {
65249
+ this._areaCache.set(datum[DEFAULT_DATA_INDEX], {
65181
65250
  shape
65182
65251
  });
65183
65252
  return shape;
@@ -65221,10 +65290,7 @@
65221
65290
  }
65222
65291
  const elements = vGrammarMark.elements;
65223
65292
  if (mark.type === MarkTypeEnum.path) {
65224
- elements.forEach((el) => {
65225
- const graphicItem = el.getGraphicItem();
65226
- graphicItem.scale(scale, scale, scaleCenter);
65227
- });
65293
+ vGrammarMark.group.getGroupGraphicItem().scale(scale, scale, scaleCenter);
65228
65294
  }
65229
65295
  else {
65230
65296
  elements.forEach((el) => {
@@ -65250,10 +65316,7 @@
65250
65316
  }
65251
65317
  const elements = vGrammarMark.elements;
65252
65318
  if (mark.type === MarkTypeEnum.path) {
65253
- elements.forEach((el) => {
65254
- const graphicItem = el.getGraphicItem();
65255
- graphicItem.translate(delta[0], delta[1]);
65256
- });
65319
+ vGrammarMark.group.getGroupGraphicItem().translate(delta[0], delta[1]);
65257
65320
  }
65258
65321
  else {
65259
65322
  elements.forEach((el, i) => {
@@ -65280,7 +65343,16 @@
65280
65343
  return [Number.NaN, Number.NaN];
65281
65344
  }
65282
65345
  _getDatumName(datum) {
65283
- return datum[this.nameField] ?? datum.properties?.[this.nameField] ?? '';
65346
+ if (datum[this.nameField]) {
65347
+ return datum[this.nameField];
65348
+ }
65349
+ if (datum.properties?.[this._nameProperty]) {
65350
+ if (this._spec.nameMap) {
65351
+ return this._spec.nameMap[datum.properties[this._nameProperty]] ?? '';
65352
+ }
65353
+ return datum.properties[this._nameProperty] ?? '';
65354
+ }
65355
+ return '';
65284
65356
  }
65285
65357
  dataToPositionX(data) {
65286
65358
  throw new Error('Method not implemented.');
@@ -65294,7 +65366,7 @@
65294
65366
  this._mapViewData?.updateData();
65295
65367
  }
65296
65368
  _getDataIdKey() {
65297
- return (datum) => datum?.properties?.[this._nameProperty];
65369
+ return DEFAULT_DATA_INDEX;
65298
65370
  }
65299
65371
  }
65300
65372
 
@@ -76251,7 +76323,8 @@
76251
76323
  map: spec.map,
76252
76324
  nameProperty: spec.nameProperty,
76253
76325
  nameMap: spec.nameMap,
76254
- area: spec.area
76326
+ area: spec.area,
76327
+ defaultFillColor: spec.defaultFillColor
76255
76328
  };
76256
76329
  return series;
76257
76330
  }
@@ -82562,6 +82635,7 @@
82562
82635
  };
82563
82636
 
82564
82637
  class Indicator extends BaseComponent {
82638
+ static speckey = 'indicator';
82565
82639
  static type = ComponentTypeEnum.indicator;
82566
82640
  type = ComponentTypeEnum.indicator;
82567
82641
  name = ComponentTypeEnum.indicator;
@@ -82582,7 +82656,7 @@
82582
82656
  const indicatorSpec = spec.indicator || options.defaultSpec;
82583
82657
  const indicators = array(indicatorSpec)
82584
82658
  .filter(s => s && s.visible !== false)
82585
- .map(s => new Indicator(s, options));
82659
+ .map((s, index) => new Indicator(s, { ...options, specIndex: index, specKey: Indicator.speckey }));
82586
82660
  return indicators;
82587
82661
  }
82588
82662
  created() {
@@ -82732,9 +82806,12 @@
82732
82806
  return eachSeries(this._regions, s => model === s) || this._regions.includes(model);
82733
82807
  }
82734
82808
  clear() {
82735
- super.clear();
82736
- this._indicatorComponent = null;
82809
+ if (this._indicatorComponent) {
82810
+ this._container.removeChild(this._indicatorComponent);
82811
+ this._indicatorComponent = null;
82812
+ }
82737
82813
  this._cacheAttrs = null;
82814
+ super.clear();
82738
82815
  }
82739
82816
  }
82740
82817