@visactor/vchart 2.0.1 → 2.0.3-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (214) hide show
  1. package/build/es5/index.js +1 -1
  2. package/build/index.es.js +384 -427
  3. package/build/index.js +383 -427
  4. package/build/index.min.js +2 -2
  5. package/build/tsconfig.tsbuildinfo +1 -1
  6. package/cjs/animation/animate-manager.d.ts +1 -0
  7. package/cjs/animation/animate-manager.js +2 -0
  8. package/cjs/animation/animate-manager.js.map +1 -0
  9. package/cjs/animation/index.js +1 -2
  10. package/cjs/animation/interface.js +2 -1
  11. package/cjs/chart/base/base-chart.d.ts +0 -1
  12. package/cjs/chart/base/base-chart.js +8 -5
  13. package/cjs/chart/base/base-chart.js.map +1 -1
  14. package/cjs/chart/interface/chart.d.ts +0 -1
  15. package/cjs/chart/interface/chart.js.map +1 -1
  16. package/cjs/chart/util.js +1 -2
  17. package/cjs/compile/compiler.d.ts +0 -1
  18. package/cjs/compile/compiler.js +2 -10
  19. package/cjs/compile/compiler.js.map +1 -1
  20. package/cjs/compile/interface/compilable-item.d.ts +0 -1
  21. package/cjs/compile/interface/compilable-item.js.map +1 -1
  22. package/cjs/compile/interface/compiler.d.ts +0 -1
  23. package/cjs/compile/interface/compiler.js.map +1 -1
  24. package/cjs/component/axis/base-axis.js.map +1 -1
  25. package/cjs/component/axis/cartesian/band-axis.d.ts +0 -8
  26. package/cjs/component/axis/cartesian/band-axis.js +0 -9
  27. package/cjs/component/axis/cartesian/band-axis.js.map +1 -1
  28. package/cjs/component/axis/interface/common.js.map +1 -1
  29. package/cjs/component/axis/mixin/band-axis-mixin.d.ts +0 -2
  30. package/cjs/component/axis/mixin/band-axis-mixin.js +1 -15
  31. package/cjs/component/axis/mixin/band-axis-mixin.js.map +1 -1
  32. package/cjs/component/brush/brush.js +6 -6
  33. package/cjs/component/brush/brush.js.map +1 -1
  34. package/cjs/component/brush/interface.d.ts +0 -1
  35. package/cjs/component/brush/interface.js.map +1 -1
  36. package/cjs/component/crosshair/base.d.ts +1 -1
  37. package/cjs/component/crosshair/base.js +1 -1
  38. package/cjs/component/crosshair/base.js.map +1 -1
  39. package/cjs/component/crosshair/utils/cartesian.js +2 -2
  40. package/cjs/component/crosshair/utils/cartesian.js.map +1 -1
  41. package/cjs/component/data-zoom/data-filter-base-component.d.ts +1 -0
  42. package/cjs/component/data-zoom/data-filter-base-component.js +19 -13
  43. package/cjs/component/data-zoom/data-filter-base-component.js.map +1 -1
  44. package/cjs/component/data-zoom/interface.d.ts +3 -0
  45. package/cjs/component/data-zoom/interface.js.map +1 -1
  46. package/cjs/component/data-zoom/util.d.ts +1 -0
  47. package/cjs/component/data-zoom/util.js +4 -3
  48. package/cjs/component/data-zoom/util.js.map +1 -1
  49. package/cjs/component/player/player.js +1 -2
  50. package/cjs/component/player/player.js.map +1 -1
  51. package/cjs/component/tooltip/tooltip.js +3 -8
  52. package/cjs/component/tooltip/tooltip.js.map +1 -1
  53. package/cjs/constant/attribute.js +2 -1
  54. package/cjs/constant/sunburst.js +1 -2
  55. package/cjs/constant/waterfall.js +2 -1
  56. package/cjs/core/index.d.ts +1 -1
  57. package/cjs/core/index.js +1 -1
  58. package/cjs/core/index.js.map +1 -1
  59. package/cjs/core/util.js +1 -1
  60. package/cjs/core/vchart.d.ts +0 -1
  61. package/cjs/core/vchart.js +17 -36
  62. package/cjs/core/vchart.js.map +1 -1
  63. package/cjs/data/transforms/obj-flat.js +4 -1
  64. package/cjs/data/transforms/obj-flat.js.map +1 -1
  65. package/cjs/mark/base/base-mark.d.ts +2 -6
  66. package/cjs/mark/base/base-mark.js +51 -69
  67. package/cjs/mark/base/base-mark.js.map +1 -1
  68. package/cjs/mark/group.d.ts +2 -3
  69. package/cjs/mark/group.js +13 -15
  70. package/cjs/mark/group.js.map +1 -1
  71. package/cjs/mark/interface/common.d.ts +2 -5
  72. package/cjs/mark/interface/common.js.map +1 -1
  73. package/cjs/model/base-model.d.ts +1 -5
  74. package/cjs/model/base-model.js +0 -7
  75. package/cjs/model/base-model.js.map +1 -1
  76. package/cjs/model/interface.d.ts +1 -4
  77. package/cjs/model/interface.js.map +1 -1
  78. package/cjs/plugin/components/tooltip-handler/utils/style.js +4 -4
  79. package/cjs/plugin/components/tooltip-handler/utils/style.js.map +1 -1
  80. package/cjs/region/region.js.map +1 -1
  81. package/cjs/series/base/base-series.js +3 -2
  82. package/cjs/series/base/base-series.js.map +1 -1
  83. package/cjs/series/dot/dot.d.ts +1 -0
  84. package/cjs/series/dot/dot.js +29 -6
  85. package/cjs/series/dot/dot.js.map +1 -1
  86. package/cjs/series/dot/interface.d.ts +1 -0
  87. package/cjs/series/dot/interface.js.map +1 -1
  88. package/cjs/series/dot/tooltip-helper.js +3 -2
  89. package/cjs/series/dot/tooltip-helper.js.map +1 -1
  90. package/cjs/series/funnel/funnel.js +2 -0
  91. package/cjs/series/funnel/funnel.js.map +1 -1
  92. package/cjs/series/interface/type.d.ts +3 -0
  93. package/cjs/series/interface/type.js +5 -3
  94. package/cjs/series/interface/type.js.map +1 -1
  95. package/cjs/series/link/constant.js +8 -0
  96. package/cjs/series/link/constant.js.map +1 -1
  97. package/cjs/series/link/interface.d.ts +10 -1
  98. package/cjs/series/link/interface.js +5 -1
  99. package/cjs/series/link/interface.js.map +1 -1
  100. package/cjs/series/link/link.d.ts +3 -1
  101. package/cjs/series/link/link.js +46 -16
  102. package/cjs/series/link/link.js.map +1 -1
  103. package/cjs/series/map/map.js +2 -1
  104. package/cjs/series/map/map.js.map +1 -1
  105. package/cjs/series/pie/pie.js +1 -0
  106. package/cjs/series/pie/pie.js.map +1 -1
  107. package/cjs/util/mark.d.ts +0 -1
  108. package/cjs/util/mark.js +1 -10
  109. package/cjs/util/mark.js.map +1 -1
  110. package/esm/animation/animate-manager.d.ts +1 -0
  111. package/esm/animation/animate-manager.js +2 -0
  112. package/esm/animation/animate-manager.js.map +1 -0
  113. package/esm/animation/index.js +1 -2
  114. package/esm/animation/interface.js +2 -1
  115. package/esm/chart/base/base-chart.d.ts +0 -1
  116. package/esm/chart/base/base-chart.js +8 -5
  117. package/esm/chart/base/base-chart.js.map +1 -1
  118. package/esm/chart/interface/chart.d.ts +0 -1
  119. package/esm/chart/interface/chart.js.map +1 -1
  120. package/esm/chart/util.js +1 -2
  121. package/esm/compile/compiler.d.ts +0 -1
  122. package/esm/compile/compiler.js +4 -11
  123. package/esm/compile/compiler.js.map +1 -1
  124. package/esm/compile/interface/compilable-item.d.ts +0 -1
  125. package/esm/compile/interface/compilable-item.js.map +1 -1
  126. package/esm/compile/interface/compiler.d.ts +0 -1
  127. package/esm/compile/interface/compiler.js.map +1 -1
  128. package/esm/component/axis/base-axis.js.map +1 -1
  129. package/esm/component/axis/cartesian/band-axis.d.ts +0 -8
  130. package/esm/component/axis/cartesian/band-axis.js +1 -9
  131. package/esm/component/axis/cartesian/band-axis.js.map +1 -1
  132. package/esm/component/axis/interface/common.js.map +1 -1
  133. package/esm/component/axis/mixin/band-axis-mixin.d.ts +0 -2
  134. package/esm/component/axis/mixin/band-axis-mixin.js +1 -15
  135. package/esm/component/axis/mixin/band-axis-mixin.js.map +1 -1
  136. package/esm/component/brush/brush.js +6 -6
  137. package/esm/component/brush/brush.js.map +1 -1
  138. package/esm/component/brush/interface.d.ts +0 -1
  139. package/esm/component/brush/interface.js.map +1 -1
  140. package/esm/component/crosshair/base.d.ts +1 -1
  141. package/esm/component/crosshair/base.js +1 -1
  142. package/esm/component/crosshair/base.js.map +1 -1
  143. package/esm/component/crosshair/utils/cartesian.js +2 -2
  144. package/esm/component/crosshair/utils/cartesian.js.map +1 -1
  145. package/esm/component/data-zoom/data-filter-base-component.d.ts +1 -0
  146. package/esm/component/data-zoom/data-filter-base-component.js +18 -13
  147. package/esm/component/data-zoom/data-filter-base-component.js.map +1 -1
  148. package/esm/component/data-zoom/interface.d.ts +3 -0
  149. package/esm/component/data-zoom/interface.js.map +1 -1
  150. package/esm/component/data-zoom/util.d.ts +1 -0
  151. package/esm/component/data-zoom/util.js +5 -2
  152. package/esm/component/data-zoom/util.js.map +1 -1
  153. package/esm/component/player/player.js +1 -2
  154. package/esm/component/player/player.js.map +1 -1
  155. package/esm/component/tooltip/tooltip.js +3 -8
  156. package/esm/component/tooltip/tooltip.js.map +1 -1
  157. package/esm/constant/attribute.js +2 -1
  158. package/esm/constant/sunburst.js +1 -2
  159. package/esm/constant/waterfall.js +2 -1
  160. package/esm/core/index.d.ts +1 -1
  161. package/esm/core/index.js +1 -1
  162. package/esm/core/index.js.map +1 -1
  163. package/esm/core/util.js +1 -1
  164. package/esm/core/vchart.d.ts +0 -1
  165. package/esm/core/vchart.js +16 -35
  166. package/esm/core/vchart.js.map +1 -1
  167. package/esm/data/transforms/obj-flat.js +4 -1
  168. package/esm/data/transforms/obj-flat.js.map +1 -1
  169. package/esm/mark/base/base-mark.d.ts +2 -6
  170. package/esm/mark/base/base-mark.js +50 -69
  171. package/esm/mark/base/base-mark.js.map +1 -1
  172. package/esm/mark/group.d.ts +2 -3
  173. package/esm/mark/group.js +12 -18
  174. package/esm/mark/group.js.map +1 -1
  175. package/esm/mark/interface/common.d.ts +2 -5
  176. package/esm/mark/interface/common.js.map +1 -1
  177. package/esm/model/base-model.d.ts +1 -5
  178. package/esm/model/base-model.js +0 -7
  179. package/esm/model/base-model.js.map +1 -1
  180. package/esm/model/interface.d.ts +1 -4
  181. package/esm/model/interface.js.map +1 -1
  182. package/esm/plugin/components/tooltip-handler/utils/style.js +4 -5
  183. package/esm/plugin/components/tooltip-handler/utils/style.js.map +1 -1
  184. package/esm/region/region.js.map +1 -1
  185. package/esm/series/base/base-series.js +3 -2
  186. package/esm/series/base/base-series.js.map +1 -1
  187. package/esm/series/dot/dot.d.ts +1 -0
  188. package/esm/series/dot/dot.js +29 -6
  189. package/esm/series/dot/dot.js.map +1 -1
  190. package/esm/series/dot/interface.d.ts +1 -0
  191. package/esm/series/dot/interface.js.map +1 -1
  192. package/esm/series/dot/tooltip-helper.js +3 -2
  193. package/esm/series/dot/tooltip-helper.js.map +1 -1
  194. package/esm/series/funnel/funnel.js +2 -0
  195. package/esm/series/funnel/funnel.js.map +1 -1
  196. package/esm/series/interface/type.d.ts +3 -0
  197. package/esm/series/interface/type.js +5 -3
  198. package/esm/series/interface/type.js.map +1 -1
  199. package/esm/series/link/constant.js +8 -0
  200. package/esm/series/link/constant.js.map +1 -1
  201. package/esm/series/link/interface.d.ts +10 -1
  202. package/esm/series/link/interface.js +5 -1
  203. package/esm/series/link/interface.js.map +1 -1
  204. package/esm/series/link/link.d.ts +3 -1
  205. package/esm/series/link/link.js +48 -16
  206. package/esm/series/link/link.js.map +1 -1
  207. package/esm/series/map/map.js +2 -1
  208. package/esm/series/map/map.js.map +1 -1
  209. package/esm/series/pie/pie.js +1 -0
  210. package/esm/series/pie/pie.js.map +1 -1
  211. package/esm/util/mark.d.ts +0 -1
  212. package/esm/util/mark.js +0 -7
  213. package/esm/util/mark.js.map +1 -1
  214. package/package.json +8 -8
package/build/index.es.js CHANGED
@@ -14167,9 +14167,9 @@ class Graphic extends Node {
14167
14167
  setWidthHeightWithoutTransform(aabbBounds) {
14168
14168
  this.widthWithoutTransform = aabbBounds.x2 - aabbBounds.x1, this.heightWithoutTransform = aabbBounds.y2 - aabbBounds.y1;
14169
14169
  }
14170
- setAttributesAndPreventAnimate(params, forceUpdateTag = !1, context, ignorePriority) {
14170
+ setAttributesAndPreventAnimate(params, forceUpdateTag = !1, context) {
14171
14171
  this.setAttributes(params, forceUpdateTag, context), this.animates && this.animates.forEach(animate => {
14172
- (animate.priority !== 1 / 0 || ignorePriority) && Object.keys(params).forEach(key => {
14172
+ Object.keys(params).forEach(key => {
14173
14173
  animate.preventAttr(key);
14174
14174
  });
14175
14175
  });
@@ -14340,7 +14340,7 @@ class Graphic extends Node {
14340
14340
  });
14341
14341
  } else this.stopStateAnimates(), this.setAttributesAndPreventAnimate(attrs, !1, {
14342
14342
  type: AttributeUpdateType.STATE
14343
- }), this.finalAttribute && Object.assign(this.finalAttribute, attrs);
14343
+ });
14344
14344
  this._emitCustomEvent("afterStateUpdate", {
14345
14345
  type: AttributeUpdateType.STATE
14346
14346
  });
@@ -14733,7 +14733,7 @@ let Group$1 = class Group extends Graphic {
14733
14733
  }
14734
14734
  removeChild(child) {
14735
14735
  const data = super.removeChild(child);
14736
- return this.getGraphicService().onRemove(child), child.stage = null, this.addUpdateBoundTag(), data;
14736
+ return child.stage = null, this.getGraphicService().onRemove(child), this.addUpdateBoundTag(), data;
14737
14737
  }
14738
14738
  removeAllChild(deep = !1) {
14739
14739
  this.forEachChildren(child => {
@@ -17747,10 +17747,9 @@ class Polygon extends Graphic {
17747
17747
  return super.needUpdateTag(key, POLYGON_UPDATE_TAG_KEY);
17748
17748
  }
17749
17749
  toCustomPath() {
17750
- let path = super.toCustomPath();
17751
- if (path) return path;
17752
- const points = this.attribute.points;
17753
- return path = new CustomPath2D(), points.forEach((point, index) => {
17750
+ const points = this.attribute.points,
17751
+ path = new CustomPath2D();
17752
+ return points.forEach((point, index) => {
17754
17753
  0 === index ? path.moveTo(point.x, point.y) : path.lineTo(point.x, point.y);
17755
17754
  }), path.closePath(), path;
17756
17755
  }
@@ -21015,7 +21014,6 @@ let DefaultDrawContribution = class {
21015
21014
  drawContext.updateBounds ? this.useDirtyBounds = !0 : this.useDirtyBounds = !drawContext.stage.params.optimize.disableCheckGraphicWidthOutRange;
21016
21015
  }
21017
21016
  draw(renderService, drawContext) {
21018
- var _a;
21019
21017
  this.prepareForDraw(renderService, drawContext), drawContext.drawContribution = this, this.currentRenderMap = this.styleRenderMap.get(drawContext.renderStyle) || this.defaultRenderMap, this.currentRenderService = renderService;
21020
21018
  const {
21021
21019
  context: context,
@@ -21030,7 +21028,7 @@ let DefaultDrawContribution = class {
21030
21028
  dirtyBounds.x1 = Math.floor(b.x1), dirtyBounds.y1 = Math.floor(b.y1), dirtyBounds.x2 = Math.ceil(b.x2), dirtyBounds.y2 = Math.ceil(b.y2);
21031
21029
  }
21032
21030
  const d = context.dpr % 1;
21033
- (d || .5 !== d) && (dirtyBounds.x1 = Math.floor(dirtyBounds.x1 * context.dpr) / context.dpr, dirtyBounds.y1 = Math.floor(dirtyBounds.y1 * context.dpr) / context.dpr, dirtyBounds.x2 = Math.ceil(dirtyBounds.x2 * context.dpr) / context.dpr, dirtyBounds.y2 = Math.ceil(dirtyBounds.y2 * context.dpr) / context.dpr), this.backupDirtyBounds.copy(dirtyBounds), context.reset(!1), context.save(), context.setClearMatrix(transMatrix.a, transMatrix.b, transMatrix.c, transMatrix.d, transMatrix.e, transMatrix.f), context.clearMatrix(!1), context.translate(viewBox.x1, viewBox.y1, !0), context.beginPath(), context.rect(dirtyBounds.x1, dirtyBounds.y1, dirtyBounds.width(), dirtyBounds.height()), context.clip(), stage.camera && (this.dirtyBounds.setValue(-1 / 0, -1 / 0, 1 / 0, 1 / 0), this.backupDirtyBounds.setValue(-1 / 0, -1 / 0, 1 / 0, 1 / 0)), this.clearScreen(renderService, context, drawContext), (null === (_a = renderService.drawParams) || void 0 === _a ? void 0 : _a.stage) && renderService.drawParams.stage.hooks.afterClearScreen.call(renderService.drawParams), renderService.renderTreeRoots.sort((a, b) => {
21031
+ (d || .5 !== d) && (dirtyBounds.x1 = Math.floor(dirtyBounds.x1 * context.dpr) / context.dpr, dirtyBounds.y1 = Math.floor(dirtyBounds.y1 * context.dpr) / context.dpr, dirtyBounds.x2 = Math.ceil(dirtyBounds.x2 * context.dpr) / context.dpr, dirtyBounds.y2 = Math.ceil(dirtyBounds.y2 * context.dpr) / context.dpr), this.backupDirtyBounds.copy(dirtyBounds), context.reset(!1), context.save(), context.setClearMatrix(transMatrix.a, transMatrix.b, transMatrix.c, transMatrix.d, transMatrix.e, transMatrix.f), context.clearMatrix(!1), context.translate(viewBox.x1, viewBox.y1, !0), context.beginPath(), context.rect(dirtyBounds.x1, dirtyBounds.y1, dirtyBounds.width(), dirtyBounds.height()), context.clip(), stage.camera && (this.dirtyBounds.setValue(-1 / 0, -1 / 0, 1 / 0, 1 / 0), this.backupDirtyBounds.setValue(-1 / 0, -1 / 0, 1 / 0, 1 / 0)), this.clearScreen(renderService, context, drawContext), renderService.renderTreeRoots.sort((a, b) => {
21034
21032
  var _a, _b;
21035
21033
  return (null !== (_a = a.attribute.zIndex) && void 0 !== _a ? _a : DefaultAttribute.zIndex) - (null !== (_b = b.attribute.zIndex) && void 0 !== _b ? _b : DefaultAttribute.zIndex);
21036
21034
  }).forEach(group => {
@@ -21704,16 +21702,13 @@ class Stage extends Group$1 {
21704
21702
  } else this._skipRender = 1;
21705
21703
  }, this.beforeRender = stage => {
21706
21704
  this._beforeRender && this._beforeRender(stage);
21707
- }, this.afterClearScreen = drawParams => {
21708
- this._afterClearScreen && this._afterClearScreen(drawParams);
21709
21705
  }, this.afterRender = stage => {
21710
21706
  this.renderCount++, this._afterRender && this._afterRender(stage), this._afterNextRenderCbs && this._afterNextRenderCbs.forEach(cb => cb(stage)), this._afterNextRenderCbs = null, this.tickedBeforeRender = !1;
21711
21707
  }, this.afterTickCb = () => {
21712
21708
  this.tickedBeforeRender = !0, "rendering" !== this.state && this.renderNextFrame();
21713
21709
  }, this.params = params, this.theme = new Theme(), this.hooks = {
21714
21710
  beforeRender: new SyncHook(["stage"]),
21715
- afterRender: new SyncHook(["stage"]),
21716
- afterClearScreen: new SyncHook(["stage"])
21711
+ afterRender: new SyncHook(["stage"])
21717
21712
  }, this.global = application.global, !this.global.env && isBrowserEnv() && this.global.setEnv("browser"), this.window = container.get(VWindow), this.renderService = container.get(RenderService), this.pluginService = container.get(PluginService), this.layerService = container.get(LayerService), this.graphicService = container.get(GraphicService), this.pluginService.active(this, params), this.window.create({
21718
21713
  width: params.width,
21719
21714
  height: params.height,
@@ -21725,7 +21720,7 @@ class Stage extends Group$1 {
21725
21720
  canvas: params.canvas
21726
21721
  }), this.state = "normal", this.renderCount = 0, this.tryInitEventSystem(), this._background = null !== (_a = params.background) && void 0 !== _a ? _a : DefaultConfig.BACKGROUND, this.appendChild(this.layerService.createLayer(this, {
21727
21722
  main: !0
21728
- })), this.nextFrameRenderLayerSet = new Set(), this.willNextFrameRender = !1, this.stage = this, this.renderStyle = params.renderStyle, params.autoRender && this.enableAutoRender(), params.autoRefresh && this.enableAutoRefresh(), !1 === params.disableDirtyBounds && this.enableDirtyBounds(), params.enableHtmlAttribute && this.enableHtmlAttribute(params.enableHtmlAttribute), params.ReactDOM && this.enableReactAttribute(params.ReactDOM), params.enableLayout && this.enableLayout(), this.hooks.beforeRender.tap("constructor", this.beforeRender), this.hooks.afterRender.tap("constructor", this.afterRender), this.hooks.afterClearScreen.tap("constructor", this.afterClearScreen), this._beforeRender = params.beforeRender, this._afterRender = params.afterRender, this._afterClearScreen = params.afterClearScreen, this.supportInteractiveLayer = !1 !== params.interactiveLayer, params.optimize || (params.optimize = {
21723
+ })), this.nextFrameRenderLayerSet = new Set(), this.willNextFrameRender = !1, this.stage = this, this.renderStyle = params.renderStyle, params.autoRender && this.enableAutoRender(), params.autoRefresh && this.enableAutoRefresh(), !1 === params.disableDirtyBounds && this.enableDirtyBounds(), params.enableHtmlAttribute && this.enableHtmlAttribute(params.enableHtmlAttribute), params.ReactDOM && this.enableReactAttribute(params.ReactDOM), params.enableLayout && this.enableLayout(), this.hooks.beforeRender.tap("constructor", this.beforeRender), this.hooks.afterRender.tap("constructor", this.afterRender), this._beforeRender = params.beforeRender, this._afterRender = params.afterRender, this.supportInteractiveLayer = !1 !== params.interactiveLayer, params.optimize || (params.optimize = {
21729
21724
  tickRenderMode: "effect"
21730
21725
  }), this.optmize(params.optimize), params.background && isString$1(this._background) && this._background.includes("/") && this.setAttributes({
21731
21726
  background: this._background
@@ -22120,7 +22115,7 @@ class Stage extends Group$1 {
22120
22115
  return this._cursor;
22121
22116
  }
22122
22117
  eventPointTransform(e) {
22123
- const point = this.global.mapToCanvasPoint(e, this.window);
22118
+ const point = this.global.mapToCanvasPoint(e, this.window.getContext().canvas.nativeCanvas);
22124
22119
  return this.stage.window.pointTransform(point.x, point.y);
22125
22120
  }
22126
22121
  pauseTriggerEvent() {
@@ -31733,7 +31728,7 @@ class DefaultTimeline extends EventEmitter {
31733
31728
  return this._animateCount;
31734
31729
  }
31735
31730
  constructor() {
31736
- super(), this.head = null, this.tail = null, this.animateMap = new Map(), this._animateCount = 0, this._playSpeed = 1, this._totalDuration = 0, this._startTime = 0, this._currentTime = 0, this._animationEndFlag = !0, this.id = Generator.GenAutoIncrementId(), this.paused = !1;
31731
+ super(), this.head = null, this.tail = null, this.animateMap = new Map(), this._animateCount = 0, this._playSpeed = 1, this._totalDuration = 0, this._startTime = 0, this._currentTime = 0, this.id = Generator.GenAutoIncrementId(), this.paused = !1;
31737
31732
  }
31738
31733
  isRunning() {
31739
31734
  return !this.paused && this._animateCount > 0;
@@ -31762,11 +31757,10 @@ class DefaultTimeline extends EventEmitter {
31762
31757
  }
31763
31758
  tick(delta) {
31764
31759
  if (this.paused) return;
31765
- this._animationEndFlag && (this._animationEndFlag = !1, this.emit("animationStart"));
31766
31760
  const scaledDelta = delta * this._playSpeed;
31767
31761
  this._currentTime += scaledDelta, this.forEachAccessAnimate((animate, i) => {
31768
31762
  animate.status === AnimateStatus.END ? this.removeAnimate(animate, !0) : animate.status !== AnimateStatus.RUNNING && animate.status !== AnimateStatus.INITIAL || animate.advance(scaledDelta);
31769
- }), 0 === this._animateCount && (this._animationEndFlag = !0, this.emit("animationEnd"));
31763
+ }), 0 === this._animateCount && this.emit("animationEnd");
31770
31764
  }
31771
31765
  clear() {
31772
31766
  this.forEachAccessAnimate(animate => {
@@ -31830,9 +31824,7 @@ class Animate {
31830
31824
  return this._timeline;
31831
31825
  }
31832
31826
  bind(target) {
31833
- return this.target = target, this.target.animates || (this.target.animates = new Map()), this.target.animates.set(this.id, this), this.onRemove(() => {
31834
- this.stop(), this.target.animates.delete(this.id);
31835
- }), this.target.onAnimateBind && !this.slience && this.target.onAnimateBind(this), this.target.animationAttribute || (this.target.animationAttribute = {}), this;
31827
+ return this.target = target, this.target.onAnimateBind && !this.slience && this.target.onAnimateBind(this), this.target.animationAttribute || (this.target.animationAttribute = {}), this;
31836
31828
  }
31837
31829
  to(props, duration = 300, easing = "linear") {
31838
31830
  const step = new Step(AnimateStepType.to, props, duration, easing);
@@ -32046,8 +32038,8 @@ class DefaultTicker extends EventEmitter {
32046
32038
  }
32047
32039
  init() {
32048
32040
  this.interval = 16, this.status = STATUS$1.INITIAL, application.global.hooks.onSetEnv.tap("graph-ticker", () => {
32049
- this.initHandler(!1);
32050
- }), application.global.env && this.initHandler(!1);
32041
+ this.initHandler();
32042
+ }), application.global.env && this.initHandler();
32051
32043
  }
32052
32044
  addTimeline(timeline) {
32053
32045
  this.timelines.push(timeline);
@@ -32058,11 +32050,10 @@ class DefaultTicker extends EventEmitter {
32058
32050
  getTimelines() {
32059
32051
  return this.timelines;
32060
32052
  }
32061
- initHandler(force = !1) {
32062
- this.setupTickHandler(force);
32053
+ initHandler() {
32054
+ this.setupTickHandler();
32063
32055
  }
32064
- setupTickHandler(force = !1) {
32065
- if (!force && this.tickerHandler) return !0;
32056
+ setupTickHandler() {
32066
32057
  const handler = new RAFTickHandler();
32067
32058
  return this.tickerHandler && this.tickerHandler.release(), this.tickerHandler = handler, !0;
32068
32059
  }
@@ -32113,7 +32104,7 @@ class DefaultTicker extends EventEmitter {
32113
32104
  return this.status = STATUS$1.RUNNING, this.tickerHandler.tick(0, this.handleTick), !0;
32114
32105
  }
32115
32106
  stop() {
32116
- this.status = STATUS$1.INITIAL, this.setupTickHandler(!0), this.lastFrameTime = -1;
32107
+ this.status = STATUS$1.INITIAL, this.setupTickHandler(), this.lastFrameTime = -1;
32117
32108
  }
32118
32109
  trySyncTickStatus() {
32119
32110
  this.status === STATUS$1.INITIAL && this.timelines.some(timeline => timeline.isRunning()) ? this.start() : this.status === STATUS$1.RUNNING && this.timelines.every(timeline => !timeline.isRunning()) && this.stop();
@@ -32123,8 +32114,7 @@ class DefaultTicker extends EventEmitter {
32123
32114
  this.stop(), this.timelines = [], null === (_a = this.tickerHandler) || void 0 === _a || _a.release(), this.tickerHandler = null, this.lastFrameTime = -1;
32124
32115
  }
32125
32116
  checkSkip(delta) {
32126
- var _a, _b, _c;
32127
- if ("performance" === (null === (_c = null === (_b = null === (_a = this.stage) || void 0 === _a ? void 0 : _a.params) || void 0 === _b ? void 0 : _b.optimize) || void 0 === _c ? void 0 : _c.tickRenderMode)) return !1;
32117
+ if ("performance" === this.stage.params.optimize.tickRenderMode) return !1;
32128
32118
  return delta < this.interval + 2 * (Math.random() - .5) * this._jitter;
32129
32119
  }
32130
32120
  }
@@ -32422,11 +32412,10 @@ class AnimateExecutor {
32422
32412
  _handleRunAnimate(animate, custom, customType, from, props, duration, easing, customParameters, controlOptions, options, type, graphic) {
32423
32413
  var _a, _b, _c, _d;
32424
32414
  if (custom && customType) {
32425
- const customParams = Object.assign({
32415
+ const customParams = this.resolveValue(customParameters, graphic, {
32426
32416
  width: graphic.stage.width,
32427
- height: graphic.stage.height,
32428
- group: this._target.parent
32429
- }, this.resolveValue(customParameters, graphic)),
32417
+ height: graphic.stage.height
32418
+ }),
32430
32419
  objOptions = isFunction$1(options) ? options.call(null, null !== (_b = customParams && (null === (_a = customParams.data) || void 0 === _a ? void 0 : _a[0])) && void 0 !== _b ? _b : null === (_d = null === (_c = graphic.context) || void 0 === _c ? void 0 : _c.data) || void 0 === _d ? void 0 : _d[0], graphic, customParams) : options;
32431
32420
  customParams.options = objOptions, customParams.controlOptions = controlOptions, 1 === customType ? this.createCustomAnimation(animate, custom, from, props, duration, easing, customParams) : 2 === customType && this.createCustomInterpolatorAnimation(animate, custom, props, duration, easing, customParams);
32432
32421
  } else "to" === type ? animate.to(props, duration, easing) : "from" === type && animate.from(props, duration, easing);
@@ -32644,14 +32633,6 @@ class AnimationStateManager {
32644
32633
  state.executor.stop();
32645
32634
  }), this.stateList = null;
32646
32635
  }
32647
- reApplyState(state) {
32648
- var _a;
32649
- const stateInfo = null === (_a = this.stateList) || void 0 === _a ? void 0 : _a.find(stateInfo => stateInfo.state === state);
32650
- if (stateInfo) {
32651
- const stateList = this.stateList.slice();
32652
- stateInfo.executor.stop(), this.stateList = stateList, stateInfo.executor.execute(stateInfo.animationConfig);
32653
- }
32654
- }
32655
32636
  }
32656
32637
 
32657
32638
  class GraphicStateExtension {
@@ -32682,20 +32663,11 @@ class GraphicStateExtension {
32682
32663
  applyUnhighlightState(animationConfig, callback) {
32683
32664
  return this._getAnimationStateManager(this).applyUnhighlightState(animationConfig, callback), this;
32684
32665
  }
32685
- stopAnimationState(state, type, deep = !1) {
32686
- return this._getAnimationStateManager(this).stopState(state, type), deep && this.isContainer && this.forEachChildren(child => {
32687
- child.stopAnimationState(state, type, deep);
32688
- }), this;
32666
+ stopAnimationState(state, type) {
32667
+ return this._getAnimationStateManager(this).stopState(state, type), this;
32689
32668
  }
32690
32669
  clearAnimationStates() {
32691
- const stateManager = this._animationStateManager;
32692
- return stateManager && stateManager.clearState(), this;
32693
- }
32694
- reApplyAnimationState(state, deep = !1) {
32695
- const stateManager = this._animationStateManager;
32696
- return stateManager && stateManager.reApplyState(state), deep && this.isContainer && this.forEachChildren(child => {
32697
- child.reApplyAnimationState(state, deep);
32698
- }), this;
32670
+ return this._getAnimationStateManager(this).clearState(), this;
32699
32671
  }
32700
32672
  static extend(graphic) {
32701
32673
  return new GraphicStateExtension()._getAnimationStateManager(graphic), graphic;
@@ -32708,6 +32680,7 @@ class AnimateExtension {
32708
32680
  }
32709
32681
  animate(params) {
32710
32682
  var _a, _b, _c;
32683
+ this.animates || (this.animates = new Map());
32711
32684
  const animate = new Animate(null == params ? void 0 : params.id, null !== (_b = null !== (_a = null == params ? void 0 : params.timeline) && void 0 !== _a ? _a : this.stage && this.stage.getTimeline()) && void 0 !== _b ? _b : defaultTimeline, null == params ? void 0 : params.slience);
32712
32685
  if (animate.bind(this), params) {
32713
32686
  const {
@@ -32717,7 +32690,9 @@ class AnimateExtension {
32717
32690
  } = params;
32718
32691
  null != onStart && animate.onStart(onStart), null != onEnd && animate.onEnd(onEnd), null != onRemove && animate.onRemove(onRemove);
32719
32692
  }
32720
- return null === (_c = this.stage) || void 0 === _c || _c.ticker.start(), animate;
32693
+ return this.animates.set(animate.id, animate), animate.onRemove(() => {
32694
+ animate.stop(), this.animates.delete(animate.id);
32695
+ }), null === (_c = this.stage) || void 0 === _c || _c.ticker.start(), animate;
32721
32696
  }
32722
32697
  createTimeline() {
32723
32698
  return new DefaultTimeline();
@@ -32748,21 +32723,6 @@ class AnimateExtension {
32748
32723
  getGraphicAttribute(key, prev = !1) {
32749
32724
  return !prev && this.finalAttribute ? this.finalAttribute[key] : this.attribute[key];
32750
32725
  }
32751
- pauseAnimation(deep = !1) {
32752
- this.animates && this.animates.forEach(animate => animate.pause()), deep && this.isContainer && this.forEachChildren(child => {
32753
- child.pauseAnimation(deep);
32754
- });
32755
- }
32756
- resumeAnimation(deep = !1) {
32757
- this.animates && this.animates.forEach(animate => animate.resume()), deep && this.isContainer && this.forEachChildren(child => {
32758
- child.resumeAnimation(deep);
32759
- });
32760
- }
32761
- stopAnimation(deep = !1) {
32762
- this.animates && this.animates.forEach(animate => animate.stop()), deep && this.isContainer && this.forEachChildren(child => {
32763
- child.stopAnimation(deep);
32764
- });
32765
- }
32766
32726
  }
32767
32727
 
32768
32728
  function registerAnimate$1() {
@@ -32771,7 +32731,7 @@ function registerAnimate$1() {
32771
32731
 
32772
32732
  class ACustomAnimate extends Step {
32773
32733
  constructor(customFrom, customTo, duration, easing, params) {
32774
- super("customAnimate", customTo, duration, easing), this.type = "customAnimate", this.customFrom = customFrom, this.params = params, this.from = customFrom, this.to = customTo;
32734
+ super("customAnimate", customTo, duration, easing), this.type = "customAnimate", this.customFrom = customFrom, this.params = params;
32775
32735
  }
32776
32736
  update(end, ratio, out) {
32777
32737
  if (this.onStart(), !this.props || !this.propKeys) return;
@@ -33843,7 +33803,7 @@ class GrowCenterIn extends ACustomAnimate {
33843
33803
  super(from, to, duration, easing, params);
33844
33804
  }
33845
33805
  onBind() {
33846
- var _a, _b, _c;
33806
+ var _a, _b;
33847
33807
  super.onBind();
33848
33808
  const {
33849
33809
  from: from,
@@ -33852,7 +33812,7 @@ class GrowCenterIn extends ACustomAnimate {
33852
33812
  fromAttrs = null !== (_b = null === (_a = this.target.context) || void 0 === _a ? void 0 : _a.lastAttrs) && void 0 !== _b ? _b : from;
33853
33813
  this.props = to, this.propKeys = Object.keys(to).filter(key => null != to[key]), this.from = fromAttrs, this.to = to;
33854
33814
  const finalAttribute = this.target.getFinalAttribute();
33855
- finalAttribute && this.target.setAttributes(finalAttribute), !1 !== (null === (_c = this.params.controlOptions) || void 0 === _c ? void 0 : _c.immediatelyApply) && this.target.setAttributes(fromAttrs);
33815
+ finalAttribute && this.target.setAttributes(finalAttribute), this.target.setAttributes(fromAttrs);
33856
33816
  }
33857
33817
  onEnd(cb) {
33858
33818
  super.onEnd(cb);
@@ -33950,7 +33910,7 @@ class GrowHeightIn extends ACustomAnimate {
33950
33910
  super(from, to, duration, easing, params);
33951
33911
  }
33952
33912
  onBind() {
33953
- var _a, _b, _c;
33913
+ var _a, _b;
33954
33914
  super.onBind();
33955
33915
  const {
33956
33916
  from: from,
@@ -33959,7 +33919,7 @@ class GrowHeightIn extends ACustomAnimate {
33959
33919
  fromAttrs = null !== (_b = null === (_a = this.target.context) || void 0 === _a ? void 0 : _a.lastAttrs) && void 0 !== _b ? _b : from;
33960
33920
  this.props = to, this.propKeys = Object.keys(to).filter(key => null != to[key]), this.from = fromAttrs, this.to = to;
33961
33921
  const finalAttribute = this.target.getFinalAttribute();
33962
- finalAttribute && this.target.setAttributes(finalAttribute), !1 !== (null === (_c = this.params.controlOptions) || void 0 === _c ? void 0 : _c.immediatelyApply) && this.target.setAttributes(fromAttrs);
33922
+ finalAttribute && this.target.setAttributes(finalAttribute), this.target.setAttributes(fromAttrs);
33963
33923
  }
33964
33924
  onEnd(cb) {
33965
33925
  super.onEnd(cb);
@@ -35810,15 +35770,16 @@ const moveIn = (graphic, options, animationParameters) => {
35810
35770
  changedY = 0;
35811
35771
  "negative" === orient && (changedX = null !== (_a = layoutRect.width) && void 0 !== _a ? _a : graphic.stage.viewWidth, changedY = null !== (_b = layoutRect.height) && void 0 !== _b ? _b : graphic.stage.viewHeight), changedX += offset, changedY += offset;
35812
35772
  const point = isFunction$1(pointOpt) ? pointOpt.call(null, null === (_d = null === (_c = graphic.context) || void 0 === _c ? void 0 : _c.data) || void 0 === _d ? void 0 : _d[0], graphic, animationParameters) : pointOpt,
35813
- finalAttrsX = graphic.getGraphicAttribute("x"),
35814
- finalAttrsY = graphic.getGraphicAttribute("y"),
35815
- fromX = excludeChannels.includes("x") ? finalAttrsX : point && isValidNumber$1(point.x) ? point.x : changedX,
35816
- fromY = excludeChannels.includes("y") ? finalAttrsY : point && isValidNumber$1(point.y) ? point.y : changedY;
35773
+ fromX = point && isValidNumber$1(point.x) ? point.x : changedX,
35774
+ fromY = point && isValidNumber$1(point.y) ? point.y : changedY,
35775
+ finalAttrs = graphic.getFinalAttribute(),
35776
+ finalAttrsX = excludeChannels.includes("x") ? graphic.attribute.x : finalAttrs.x,
35777
+ finalAttrsY = excludeChannels.includes("y") ? graphic.attribute.y : finalAttrs.y;
35817
35778
  switch (direction) {
35818
35779
  case "x":
35819
35780
  return {
35820
35781
  from: {
35821
- x: excludeChannels.includes("x") ? finalAttrsX : fromX
35782
+ x: fromX
35822
35783
  },
35823
35784
  to: {
35824
35785
  x: finalAttrsX
@@ -35847,26 +35808,25 @@ const moveIn = (graphic, options, animationParameters) => {
35847
35808
  }
35848
35809
  };
35849
35810
  const moveOut = (graphic, options, animationParameters) => {
35850
- var _a, _b, _c, _d;
35811
+ var _a, _b, _c, _d, _e, _f;
35851
35812
  const {
35852
35813
  offset = 0,
35853
35814
  orient: orient,
35854
35815
  direction: direction,
35855
35816
  point: pointOpt
35856
35817
  } = null != options ? options : {},
35857
- groupBounds = animationParameters.group ? animationParameters.group.AABBBounds : null,
35858
- groupWidth = null !== (_a = groupBounds.width()) && void 0 !== _a ? _a : animationParameters.width,
35859
- groupHeight = null !== (_b = groupBounds.height()) && void 0 !== _b ? _b : animationParameters.height,
35818
+ groupWidth = null !== (_b = null === (_a = options.layoutRect) || void 0 === _a ? void 0 : _a.width) && void 0 !== _b ? _b : graphic.stage.viewWidth,
35819
+ groupHeight = null !== (_d = null === (_c = options.layoutRect) || void 0 === _c ? void 0 : _c.height) && void 0 !== _d ? _d : graphic.stage.viewHeight,
35860
35820
  changedX = ("negative" === orient ? groupWidth : 0) + offset,
35861
35821
  changedY = ("negative" === orient ? groupHeight : 0) + offset,
35862
- point = isFunction$1(pointOpt) ? pointOpt.call(null, null === (_d = null === (_c = graphic.context) || void 0 === _c ? void 0 : _c.data) || void 0 === _d ? void 0 : _d[0], graphic, animationParameters) : pointOpt,
35822
+ point = isFunction$1(pointOpt) ? pointOpt.call(null, null === (_f = null === (_e = graphic.context) || void 0 === _e ? void 0 : _e.data) || void 0 === _f ? void 0 : _f[0], graphic, animationParameters) : pointOpt,
35863
35823
  fromX = point && isValidNumber$1(point.x) ? point.x : changedX,
35864
35824
  fromY = point && isValidNumber$1(point.y) ? point.y : changedY;
35865
35825
  switch (direction) {
35866
35826
  case "x":
35867
35827
  return {
35868
35828
  from: {
35869
- x: graphic.getGraphicAttribute("x")
35829
+ x: graphic.attribute.x
35870
35830
  },
35871
35831
  to: {
35872
35832
  x: fromX
@@ -35875,7 +35835,7 @@ const moveOut = (graphic, options, animationParameters) => {
35875
35835
  case "y":
35876
35836
  return {
35877
35837
  from: {
35878
- y: graphic.getGraphicAttribute("y")
35838
+ y: graphic.attribute.y
35879
35839
  },
35880
35840
  to: {
35881
35841
  y: fromY
@@ -35884,8 +35844,8 @@ const moveOut = (graphic, options, animationParameters) => {
35884
35844
  default:
35885
35845
  return {
35886
35846
  from: {
35887
- x: graphic.getGraphicAttribute("x"),
35888
- y: graphic.getGraphicAttribute("y")
35847
+ x: graphic.attribute.x,
35848
+ y: graphic.attribute.y
35889
35849
  },
35890
35850
  to: {
35891
35851
  x: fromX,
@@ -36032,9 +35992,6 @@ class FromTo extends ACustomAnimate {
36032
35992
  this.from[key] = null !== (_a = this.from[key]) && void 0 !== _a ? _a : startProps[key];
36033
35993
  }), this.target.setAttributes(this.from);
36034
35994
  }
36035
- deleteSelfAttr(key) {
36036
- super.deleteSelfAttr(key), delete this.from[key];
36037
- }
36038
35995
  update(end, ratio, out) {
36039
35996
  if (this.onStart(), !this.props || !this.propKeys) return;
36040
35997
  const easedRatio = this.easing(ratio);
@@ -36103,8 +36060,9 @@ class StreamLight extends ACustomAnimate {
36103
36060
  w = Math.min(Math.min(currentX + maxLength, maxLength), streamLength - currentX),
36104
36061
  width = w + x > parentWidth ? Math.max(parentWidth - x, 0) : w;
36105
36062
  this.rect.setAttributes({
36106
- x: x + Math.min(parentAttr.x1 - parentAttr.x, 0),
36107
- width: width
36063
+ x: x,
36064
+ width: width,
36065
+ dx: Math.min(parentAttr.x1 - parentAttr.x, 0)
36108
36066
  }, !1, {
36109
36067
  type: AttributeUpdateType.ANIMATE_PLAY,
36110
36068
  animationState: {
@@ -36121,8 +36079,9 @@ class StreamLight extends ACustomAnimate {
36121
36079
  const h = Math.min(parentHeight - currentY, maxLength);
36122
36080
  let height;
36123
36081
  y <= 0 ? (height = Math.max(y + h, 0), y = 0) : height = h, this.rect.setAttributes({
36124
- y: y + Math.min(parentAttr.y1 - parentAttr.y, 0),
36125
- height: height
36082
+ y: y,
36083
+ height: height,
36084
+ dy: Math.min(parentAttr.y1 - parentAttr.y, 0)
36126
36085
  }, !1, {
36127
36086
  type: AttributeUpdateType.ANIMATE_PLAY,
36128
36087
  animationState: {
@@ -38814,8 +38773,7 @@ class LabelUpdate extends AComponentAnimate {
38814
38773
  prevText: prevText,
38815
38774
  curText: curText,
38816
38775
  prevLabelLine: prevLabelLine,
38817
- curLabelLine: curLabelLine,
38818
- increaseEffect = !0
38776
+ curLabelLine: curLabelLine
38819
38777
  } = this.params,
38820
38778
  diff = {};
38821
38779
  for (const key in curText.attribute) prevText.attribute[key] !== curText.attribute[key] && (diff[key] = curText.attribute[key]);
@@ -38825,7 +38783,7 @@ class LabelUpdate extends AComponentAnimate {
38825
38783
  to: rest,
38826
38784
  duration: duration,
38827
38785
  easing: easing
38828
- }), !1 !== increaseEffect && animator.animate(prevText, {
38786
+ }), animator.animate(prevText, {
38829
38787
  type: "increaseCount",
38830
38788
  to: {
38831
38789
  text: curText.attribute.text
@@ -39519,15 +39477,16 @@ class LabelBase extends AnimateComponent {
39519
39477
  } = currentLabel;
39520
39478
  prevText.applyAnimationState(["update"], [{
39521
39479
  name: "update",
39522
- animation: {
39523
- type: "labelUpdate",
39524
- customParameters: Object.assign(Object.assign({}, this._animationConfig.update), {
39480
+ animation: Object.assign(Object.assign({
39481
+ type: "labelUpdate"
39482
+ }, this._animationConfig.update), {
39483
+ customParameters: {
39525
39484
  prevText: prevText,
39526
39485
  curText: curText,
39527
39486
  prevLabelLine: prevLabelLine,
39528
39487
  curLabelLine: curLabelLine
39529
- })
39530
- }
39488
+ }
39489
+ })
39531
39490
  }]);
39532
39491
  }
39533
39492
  _syncStateWithRelatedGraphic(relatedGraphic) {
@@ -47326,6 +47285,7 @@ var SeriesTypeEnum;
47326
47285
  SeriesTypeEnum["dot"] = "dot";
47327
47286
  SeriesTypeEnum["geo"] = "geo";
47328
47287
  SeriesTypeEnum["link"] = "link";
47288
+ SeriesTypeEnum["curveLink"] = "curveLink";
47329
47289
  SeriesTypeEnum["map"] = "map";
47330
47290
  SeriesTypeEnum["pie"] = "pie";
47331
47291
  SeriesTypeEnum["radar"] = "radar";
@@ -47380,6 +47340,8 @@ var SeriesMarkNameEnum;
47380
47340
  SeriesMarkNameEnum["cell"] = "cell";
47381
47341
  SeriesMarkNameEnum["cellBackground"] = "cellBackground";
47382
47342
  SeriesMarkNameEnum["link"] = "link";
47343
+ SeriesMarkNameEnum["curveLink"] = "curveLink";
47344
+ SeriesMarkNameEnum["imageLabel"] = "imageLabel";
47383
47345
  SeriesMarkNameEnum["arrow"] = "arrow";
47384
47346
  SeriesMarkNameEnum["pie"] = "pie";
47385
47347
  SeriesMarkNameEnum["labelLine"] = "labelLine";
@@ -49145,16 +49107,6 @@ const findMarkGraphic = (rootGroup, target) => {
49145
49107
  }
49146
49108
  return null;
49147
49109
  };
49148
- const getDiffAttributesOfGraphic = (g, newAttrs) => {
49149
- const prevAttrs = g.getAttributes(true);
49150
- const diffAttrs = {};
49151
- Object.keys(newAttrs).forEach(key => {
49152
- if (prevAttrs[key] !== newAttrs[key]) {
49153
- diffAttrs[key] = newAttrs[key];
49154
- }
49155
- });
49156
- return diffAttrs;
49157
- };
49158
49110
 
49159
49111
  let Event$1 = class Event {
49160
49112
  getComposedEventMap() {
@@ -50056,28 +50008,6 @@ const runEncoder = (styles, datum, attrs = {}) => {
50056
50008
  return attrs;
50057
50009
  };
50058
50010
 
50059
- function toRenderMode(mode) {
50060
- switch (mode) {
50061
- case RenderModeEnum['desktop-browser']:
50062
- case RenderModeEnum['mobile-browser']:
50063
- return 'browser';
50064
- case RenderModeEnum.node:
50065
- case RenderModeEnum.worker:
50066
- return 'node';
50067
- case RenderModeEnum.miniApp:
50068
- case RenderModeEnum['desktop-miniApp']:
50069
- return 'feishu';
50070
- case RenderModeEnum.lynx:
50071
- return 'lynx';
50072
- case RenderModeEnum.wx:
50073
- return 'wx';
50074
- case RenderModeEnum.tt:
50075
- return 'tt';
50076
- case RenderModeEnum.harmony:
50077
- return 'harmony';
50078
- }
50079
- return 'browser';
50080
- }
50081
50011
  function traverseGroupMark(group, apply, filter, leafFirst, stop) {
50082
50012
  const traverse = (mark) => {
50083
50013
  if (!leafFirst) {
@@ -50251,9 +50181,6 @@ class Compiler {
50251
50181
  this._container = container;
50252
50182
  this._option = option;
50253
50183
  }
50254
- getChart() {
50255
- return this._compileChart;
50256
- }
50257
50184
  getCanvas() {
50258
50185
  var _a;
50259
50186
  return (_a = this._stage) === null || _a === void 0 ? void 0 : _a.window.getNativeHandler().nativeCanvas;
@@ -50270,8 +50197,7 @@ class Compiler {
50270
50197
  if (this._stage) {
50271
50198
  return;
50272
50199
  }
50273
- const { autoRefreshDpr, dpr, mode, modeParams, gestureConfig, interactive, clickInterval, autoPreventDefault, background } = this._option;
50274
- vglobal.setEnv(toRenderMode(mode), modeParams !== null && modeParams !== void 0 ? modeParams : {});
50200
+ const { autoRefreshDpr, dpr, mode, gestureConfig, interactive, clickInterval, autoPreventDefault, background } = this._option;
50275
50201
  this._stage =
50276
50202
  (_a = this._option.stage) !== null && _a !== void 0 ? _a : new Stage({
50277
50203
  background,
@@ -50282,13 +50208,8 @@ class Compiler {
50282
50208
  dpr,
50283
50209
  viewBox: this._option.viewBox,
50284
50210
  canvasControled: this._option.canvasControled,
50285
- beforeRender: (stage) => {
50286
- var _a, _b, _c;
50287
- (_a = this._compileChart) === null || _a === void 0 ? void 0 : _a.onBeforeRender();
50288
- (_c = (_b = this._option).beforeRender) === null || _c === void 0 ? void 0 : _c.call(_b, stage);
50289
- },
50211
+ beforeRender: this._option.beforeRender,
50290
50212
  afterRender: this._option.afterRender,
50291
- afterClearScreen: this._option.afterClearScreen,
50292
50213
  disableDirtyBounds: true,
50293
50214
  autoRender: true,
50294
50215
  ticker: this._option.ticker,
@@ -51134,8 +51055,6 @@ class BaseModel extends CompilableBase {
51134
51055
  }
51135
51056
  onEvaluateEnd(ctx) {
51136
51057
  }
51137
- onBeforeRender() {
51138
- }
51139
51058
  onDataUpdate() {
51140
51059
  }
51141
51060
  beforeRelease() {
@@ -51263,12 +51182,6 @@ class BaseModel extends CompilableBase {
51263
51182
  }
51264
51183
  return index;
51265
51184
  }
51266
- updateAnimateStateCallback(callback) {
51267
- this._aniamtionStateCallback = callback;
51268
- }
51269
- getAnimationStateCallback() {
51270
- return this._aniamtionStateCallback;
51271
- }
51272
51185
  }
51273
51186
 
51274
51187
  class LayoutItem {
@@ -53292,39 +53205,26 @@ class BaseMark extends GrammarItem {
53292
53205
  }
53293
53206
  setAnimationConfig(config) {
53294
53207
  const defaultPrams = this.type === 'group' ? { selfOnly: true } : {};
53295
- const formatAnimationCfg = (cfg) => {
53296
- var _a;
53297
- const options = (_a = cfg.options) !== null && _a !== void 0 ? _a : {};
53298
- return Object.assign(Object.assign(Object.assign({}, defaultPrams), cfg), { options: (datum, graphic, customParams) => {
53299
- var _a, _b;
53300
- const _options = typeof options === 'function' ? options(datum, graphic, customParams) : options;
53301
- if (graphic && graphic.context && graphic.context.compiler && isValid$1(graphic.context.modelId)) {
53302
- const model = (_a = graphic.context.compiler.getChart()) === null || _a === void 0 ? void 0 : _a.getModelById(graphic.context.modelId);
53303
- return Object.assign(Object.assign({}, _options), { layoutRect: (_b = model === null || model === void 0 ? void 0 : model.getLayoutRect) === null || _b === void 0 ? void 0 : _b.call(model) });
53304
- }
53305
- return Object.assign({}, _options);
53306
- } });
53307
- };
53308
53208
  const animationConfig = {};
53309
53209
  Object.keys(config).forEach(key => {
53310
53210
  const value = config[key];
53311
53211
  if (isArray$1(value)) {
53312
- animationConfig[key] = value.map(formatAnimationCfg);
53212
+ animationConfig[key] = value.map(item => {
53213
+ var _a;
53214
+ const options = (_a = item.options) !== null && _a !== void 0 ? _a : {};
53215
+ return Object.assign(Object.assign(Object.assign({}, defaultPrams), item), { options: (...args) => {
53216
+ var _a, _b;
53217
+ const _options = typeof options === 'function' ? options(...args) : options;
53218
+ return Object.assign(Object.assign({}, _options), { layoutRect: (_b = (_a = this.model).getLayoutRect) === null || _b === void 0 ? void 0 : _b.call(_a) });
53219
+ } });
53220
+ });
53313
53221
  }
53314
- else if (isValid$1(value)) {
53315
- animationConfig[key] = formatAnimationCfg(value);
53222
+ else {
53223
+ animationConfig[key] = Object.assign(Object.assign({}, defaultPrams), config[key]);
53316
53224
  }
53317
53225
  });
53318
53226
  this._animationConfig = animationConfig;
53319
53227
  }
53320
- disableAnimationByState(state) {
53321
- const states = array(state);
53322
- this._disabledAnimationStates = [...new Set([...this._disabledAnimationStates, ...states])];
53323
- }
53324
- enableAnimationByState(state) {
53325
- const states = array(state);
53326
- this._disabledAnimationStates = this._disabledAnimationStates.filter(s => !states.includes(s));
53327
- }
53328
53228
  setSkipBeforeLayouted(skip) {
53329
53229
  this._skipBeforeLayouted = skip;
53330
53230
  }
@@ -53459,7 +53359,6 @@ class BaseMark extends GrammarItem {
53459
53359
  this._visible = true;
53460
53360
  this.stateStyle = {};
53461
53361
  this._unCompileChannel = {};
53462
- this._disabledAnimationStates = [];
53463
53362
  this._skipBeforeLayouted = false;
53464
53363
  this._extensionChannel = {};
53465
53364
  this._computeExChannel = {};
@@ -53877,7 +53776,6 @@ class BaseMark extends GrammarItem {
53877
53776
  }
53878
53777
  _getCommonContext() {
53879
53778
  return {
53880
- compiler: this.getCompiler(),
53881
53779
  markType: this.type,
53882
53780
  markId: this.id,
53883
53781
  modelId: this.model.id,
@@ -53951,19 +53849,17 @@ class BaseMark extends GrammarItem {
53951
53849
  this._dataByGroup = groupData(data, this._groupKeyGetter);
53952
53850
  }
53953
53851
  createAnimationStateList(type, animationConfig) {
53954
- var _a;
53955
53852
  let config = animationConfig[type];
53956
53853
  if (config && Array.isArray(config)) {
53957
53854
  config = config.length === 1 ? config[0] : config;
53958
53855
  }
53959
53856
  if (Array.isArray(config)) {
53960
- return config.map((item, index) => {
53857
+ config = config.map((item, index) => {
53961
53858
  var _a;
53962
53859
  return (Object.assign(Object.assign({}, item), { priority: (_a = item.priority) !== null && _a !== void 0 ? _a : Infinity }));
53963
53860
  });
53964
53861
  }
53965
- return config
53966
- ? Object.assign(Object.assign({}, config), { priority: type === 'normal' ? (_a = config.priority) !== null && _a !== void 0 ? _a : Infinity : config.priority }) : config;
53862
+ return config;
53967
53863
  }
53968
53864
  tryRunMorphing(graphics) {
53969
53865
  if (this._lastMark) {
@@ -54047,34 +53943,13 @@ class BaseMark extends GrammarItem {
54047
53943
  this._product.applyAnimationState(['normal'], [normalConfig]);
54048
53944
  }
54049
53945
  }
54050
- _setAnimationState(g) {
54051
- var _a, _b, _c;
54052
- const callback = (this.type === "component"
54053
- ? this.model.getAnimationStateCallback()
54054
- : (_c = (_b = (_a = this.model).getRegion) === null || _b === void 0 ? void 0 : _b.call(_a)) === null || _c === void 0 ? void 0 : _c.getAnimationStateCallback()) ||
54055
- ((g) => {
54056
- var _a;
54057
- const diffState = (_a = g.context) === null || _a === void 0 ? void 0 : _a.diffState;
54058
- return diffState === AnimationStateEnum.exit
54059
- ? AnimationStateEnum.exit
54060
- : diffState === AnimationStateEnum.update
54061
- ? AnimationStateEnum.update
54062
- : AnimationStateEnum.appear;
54063
- });
54064
- const customizedState = callback(g);
54065
- g.context.animationState = customizedState !== null && customizedState !== void 0 ? customizedState : g.context.diffState;
54066
- if (g.context.animationState === DiffState.exit) {
54067
- g.context.reusing = true;
54068
- g.animates && g.animates.forEach((a) => a.stop());
54069
- }
54070
- }
54071
53946
  _runJoin(data) {
54072
53947
  const newGroupedData = this._getDataByKey(data);
54073
53948
  const prevGroupedData = this._prevDataByKey;
54074
- const allGraphics = [];
53949
+ const newGraphics = [];
54075
53950
  const enterGraphics = new Set(this._graphics.filter(g => g.context.diffState === DiffState.enter));
54076
53951
  const callback = (key, newData, prevData) => {
54077
- var _a, _b, _c, _d, _e, _f, _g, _h, _j;
53952
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
54078
53953
  let g;
54079
53954
  let diffState;
54080
53955
  if (isNil$1(newData)) {
@@ -54092,20 +53967,23 @@ class BaseMark extends GrammarItem {
54092
53967
  }
54093
53968
  diffState = DiffState.enter;
54094
53969
  g.isExiting = false;
53970
+ if (((_a = g.context) === null || _a === void 0 ? void 0 : _a.diffState) === DiffState.exit) {
53971
+ g.context.reusing = true;
53972
+ g.animates && g.animates.forEach((a) => a.stop());
53973
+ }
54095
53974
  this._graphicMap.set(key, g);
54096
- allGraphics.push(g);
53975
+ newGraphics.push(g);
54097
53976
  }
54098
53977
  else {
54099
53978
  g = this._graphicMap.get(key);
54100
53979
  if (g) {
54101
53980
  diffState = DiffState.update;
54102
- allGraphics.push(g);
53981
+ newGraphics.push(g);
54103
53982
  }
54104
53983
  }
54105
53984
  if (g) {
53985
+ g.context = Object.assign(Object.assign({}, this._getCommonContext()), { diffState, reusing: (_b = g.context) === null || _b === void 0 ? void 0 : _b.reusing, originalFieldX: (_c = g.context) === null || _c === void 0 ? void 0 : _c.originalFieldX, originalFieldY: (_d = g.context) === null || _d === void 0 ? void 0 : _d.originalFieldY, fieldX: (_e = g.context) === null || _e === void 0 ? void 0 : _e.fieldX, fieldY: (_f = g.context) === null || _f === void 0 ? void 0 : _f.fieldY, animationState: diffState, data: newData !== null && newData !== void 0 ? newData : (_g = g.context) === null || _g === void 0 ? void 0 : _g.data, uniqueKey: key, key: newData ? this._keyGetter(newData[0]) : (_h = g.context) === null || _h === void 0 ? void 0 : _h.key, groupKey: newData ? this._groupKeyGetter(newData[0]) : (_j = g.context) === null || _j === void 0 ? void 0 : _j.groupKey, indexKey: '__VCHART_DEFAULT_DATA_INDEX', stateAnimateConfig: (_k = this.getAnimationConfig()) === null || _k === void 0 ? void 0 : _k.state });
54106
53986
  enterGraphics.delete(g);
54107
- g.context = Object.assign(Object.assign({}, this._getCommonContext()), { diffState, reusing: (_a = g.context) === null || _a === void 0 ? void 0 : _a.reusing, originalFieldX: (_b = g.context) === null || _b === void 0 ? void 0 : _b.originalFieldX, originalFieldY: (_c = g.context) === null || _c === void 0 ? void 0 : _c.originalFieldY, fieldX: (_d = g.context) === null || _d === void 0 ? void 0 : _d.fieldX, fieldY: (_e = g.context) === null || _e === void 0 ? void 0 : _e.fieldY, data: newData !== null && newData !== void 0 ? newData : (_f = g.context) === null || _f === void 0 ? void 0 : _f.data, uniqueKey: key, key: newData ? this._keyGetter(newData[0]) : (_g = g.context) === null || _g === void 0 ? void 0 : _g.key, groupKey: newData ? this._groupKeyGetter(newData[0]) : (_h = g.context) === null || _h === void 0 ? void 0 : _h.groupKey, indexKey: '__VCHART_DEFAULT_DATA_INDEX', stateAnimateConfig: (_j = this.getAnimationConfig()) === null || _j === void 0 ? void 0 : _j.state });
54108
- this._setAnimationState(g);
54109
53987
  }
54110
53988
  return g;
54111
53989
  };
@@ -54143,13 +54021,13 @@ class BaseMark extends GrammarItem {
54143
54021
  }
54144
54022
  g.release();
54145
54023
  });
54146
- const graphicCount = allGraphics.length;
54147
- allGraphics.forEach((g, index) => {
54024
+ const graphicCount = newGraphics.length;
54025
+ newGraphics.forEach((g, index) => {
54148
54026
  g.context.graphicCount = graphicCount;
54149
54027
  g.context.graphicIndex = index;
54150
54028
  });
54151
54029
  this._dataByKey = newGroupedData;
54152
- this._graphics = allGraphics;
54030
+ this._graphics = newGraphics;
54153
54031
  this.needClear = true;
54154
54032
  }
54155
54033
  _runEncoderOfGraphic(styles, g, attrs = {}) {
@@ -54232,7 +54110,13 @@ class BaseMark extends GrammarItem {
54232
54110
  }
54233
54111
  }
54234
54112
  else {
54235
- const diffAttrs = getDiffAttributesOfGraphic(g, finalAttrs);
54113
+ const prevAttrs = g.getAttributes(true);
54114
+ const diffAttrs = {};
54115
+ Object.keys(finalAttrs).forEach(key => {
54116
+ if (prevAttrs[key] !== finalAttrs[key]) {
54117
+ diffAttrs[key] = finalAttrs[key];
54118
+ }
54119
+ });
54236
54120
  g.context.diffAttrs = diffAttrs;
54237
54121
  if (g.context.reusing) {
54238
54122
  g.context.lastAttrs = g.attribute;
@@ -54401,24 +54285,23 @@ class BaseMark extends GrammarItem {
54401
54285
  }
54402
54286
  };
54403
54287
  this._graphicMap.forEach((g, key) => {
54404
- if (g.context.diffState !== DiffState.exit || g.isExiting) {
54405
- return;
54406
- }
54407
- if (g.context.animationState === DiffState.exit && this.hasAnimationByState('exit')) {
54408
- g.isExiting = true;
54409
- const animationConfig = this.getAnimationConfig();
54410
- if (animationConfig.exit && animationConfig.exit.length) {
54411
- const exitConfigList = animationConfig.exit.map((item, index) => ({
54412
- name: `exit_${index}`,
54413
- animation: Object.assign(Object.assign({}, item), { customParameters: g.context })
54414
- }));
54415
- g.applyAnimationState(['exit'], [exitConfigList.length === 1 ? exitConfigList[0] : exitConfigList], () => {
54416
- doRemove(g, key);
54417
- });
54288
+ if (g.context.diffState === DiffState.exit && !g.isExiting) {
54289
+ if (this.hasAnimationByState('exit')) {
54290
+ g.isExiting = true;
54291
+ const animationConfig = this.getAnimationConfig();
54292
+ if (animationConfig.exit && animationConfig.exit.length) {
54293
+ const exitConfigList = animationConfig.exit.map((item, index) => ({
54294
+ name: `exit_${index}`,
54295
+ animation: Object.assign(Object.assign({}, item), { customParameters: g.context })
54296
+ }));
54297
+ g.applyAnimationState(['exit'], [exitConfigList.length === 1 ? exitConfigList[0] : exitConfigList], () => {
54298
+ doRemove(g, key);
54299
+ });
54300
+ }
54301
+ }
54302
+ else {
54303
+ doRemove(g, key);
54418
54304
  }
54419
- }
54420
- else {
54421
- doRemove(g, key);
54422
54305
  }
54423
54306
  });
54424
54307
  }
@@ -54564,11 +54447,15 @@ class BaseMark extends GrammarItem {
54564
54447
  this._runProgressiveStep();
54565
54448
  }
54566
54449
  }
54450
+ updateAnimationState(callback) {
54451
+ if (this._graphics && this._graphics.length) {
54452
+ this._graphics.forEach(g => {
54453
+ g.context.animationState = callback(g);
54454
+ });
54455
+ }
54456
+ }
54567
54457
  hasAnimationByState(state) {
54568
- if (!state ||
54569
- !this._animationConfig ||
54570
- !this._animationConfig[state] ||
54571
- this._disabledAnimationStates.includes(state)) {
54458
+ if (!state || !this._animationConfig || !this._animationConfig[state]) {
54572
54459
  return false;
54573
54460
  }
54574
54461
  const stateAnimationConfig = this._animationConfig[state];
@@ -54585,36 +54472,11 @@ class BaseMark extends GrammarItem {
54585
54472
  }
54586
54473
  }
54587
54474
 
54588
- var MarkTypeEnum;
54589
- (function (MarkTypeEnum) {
54590
- MarkTypeEnum["group"] = "group";
54591
- MarkTypeEnum["symbol"] = "symbol";
54592
- MarkTypeEnum["rule"] = "rule";
54593
- MarkTypeEnum["line"] = "line";
54594
- MarkTypeEnum["text"] = "text";
54595
- MarkTypeEnum["rect"] = "rect";
54596
- MarkTypeEnum["image"] = "image";
54597
- MarkTypeEnum["path"] = "path";
54598
- MarkTypeEnum["area"] = "area";
54599
- MarkTypeEnum["arc"] = "arc";
54600
- MarkTypeEnum["polygon"] = "polygon";
54601
- MarkTypeEnum["boxPlot"] = "boxPlot";
54602
- MarkTypeEnum["linkPath"] = "linkPath";
54603
- MarkTypeEnum["cell"] = "cell";
54604
- MarkTypeEnum["ripple"] = "ripple";
54605
- MarkTypeEnum["liquid"] = "liquid";
54606
- MarkTypeEnum["component"] = "component";
54607
- MarkTypeEnum["dataLabel"] = "dataLabel";
54608
- MarkTypeEnum["label"] = "label";
54609
- MarkTypeEnum["pictogram"] = "pictogram";
54610
- })(MarkTypeEnum || (MarkTypeEnum = {}));
54611
-
54612
54475
  class GroupMark extends BaseMark {
54613
54476
  constructor() {
54614
54477
  super(...arguments);
54615
54478
  this.type = GroupMark.type;
54616
54479
  this._marks = [];
54617
- this._diffState = DiffState.enter;
54618
54480
  }
54619
54481
  getMarks() {
54620
54482
  return this._marks;
@@ -54677,28 +54539,10 @@ class GroupMark extends BaseMark {
54677
54539
  return;
54678
54540
  }
54679
54541
  const style = (_a = this._simpleStyle) !== null && _a !== void 0 ? _a : this.getAttributesOfState({});
54680
- this._product.context = Object.assign(Object.assign(Object.assign({}, this._product.context), this._getCommonContext()), { diffState: this._diffState });
54681
- this._setAnimationState(this._product);
54682
- const newAttrs = this._getAttrsFromConfig(style);
54683
- if (this._product.context.diffState === DiffState.update) {
54684
- const hasAnimation = this.hasAnimation();
54685
- const diffAttrs = getDiffAttributesOfGraphic(this._product, newAttrs);
54686
- this._product.context.diffAttrs = diffAttrs;
54687
- if (!this.hasAnimationByState(this._product.context.animationState)) {
54688
- hasAnimation ? this._product.setAttributesAndPreventAnimate(diffAttrs) : this._product.setAttributes(diffAttrs);
54689
- }
54690
- if (hasAnimation) {
54691
- this._product.setFinalAttributes(newAttrs);
54692
- }
54693
- }
54694
- else {
54695
- this._product.setAttributes(newAttrs);
54696
- }
54542
+ this._product.context = Object.assign(Object.assign({}, this._product.context), this._getCommonContext());
54543
+ this._product.setAttributes(this._getAttrsFromConfig(style));
54697
54544
  this.needClear = true;
54698
54545
  }
54699
- clearExitGraphics() {
54700
- this._diffState = DiffState.update;
54701
- }
54702
54546
  render() {
54703
54547
  if (this._isCommited) {
54704
54548
  log(`render mark: ${this.getProductId()}, type is ${this.type}`);
@@ -54709,6 +54553,16 @@ class GroupMark extends BaseMark {
54709
54553
  mark.render();
54710
54554
  });
54711
54555
  }
54556
+ updateAnimationState(callback) {
54557
+ this.getGraphics().forEach(g => {
54558
+ if (g) {
54559
+ g.context = Object.assign(Object.assign({}, g.context), { animationState: callback(g) });
54560
+ }
54561
+ });
54562
+ this.getMarks().forEach(mark => {
54563
+ mark.updateAnimationState(callback);
54564
+ });
54565
+ }
54712
54566
  release() {
54713
54567
  super.release();
54714
54568
  this.removeProduct();
@@ -55606,6 +55460,7 @@ class VChart {
55606
55460
  if (!this._beforeRender(option)) {
55607
55461
  return self;
55608
55462
  }
55463
+ this._updateAnimateState(true);
55609
55464
  (_a = this._compiler) === null || _a === void 0 ? void 0 : _a.render(option.morphConfig);
55610
55465
  this._updateAnimateState(false);
55611
55466
  this._afterRender();
@@ -55902,7 +55757,7 @@ class VChart {
55902
55757
  return this._beforeRender(option);
55903
55758
  }
55904
55759
  _reCompile(updateResult, morphConfig) {
55905
- var _a, _b, _c, _d, _e, _f, _g;
55760
+ var _a, _b, _c, _d, _e;
55906
55761
  if (updateResult.reMake) {
55907
55762
  this._releaseData();
55908
55763
  this._initDataSet();
@@ -55922,16 +55777,20 @@ class VChart {
55922
55777
  if (updateResult.reMake) {
55923
55778
  (_c = this._compiler) === null || _c === void 0 ? void 0 : _c.releaseGrammar();
55924
55779
  this._userEvents.forEach(e => { var _a; return (_a = this._event) === null || _a === void 0 ? void 0 : _a.on(e.eType, e.query, e.handler); });
55780
+ if (updateResult.reSize) {
55781
+ this._doResize();
55782
+ }
55925
55783
  }
55926
- else if (updateResult.reCompile) {
55927
- (_d = this._compiler) === null || _d === void 0 ? void 0 : _d.clear({ chart: this._chart, vChart: this });
55928
- (_e = this._compiler) === null || _e === void 0 ? void 0 : _e.compile({ chart: this._chart, vChart: this });
55929
- }
55930
- if (updateResult.reSize) {
55931
- const { width, height } = this.getCurrentSize();
55932
- this._currentSize = { width, height };
55933
- (_f = this._chart) === null || _f === void 0 ? void 0 : _f.onResize(width, height, false);
55934
- (_g = this._compiler) === null || _g === void 0 ? void 0 : _g.resize(width, height, false);
55784
+ else {
55785
+ if (updateResult.reCompile) {
55786
+ (_d = this._compiler) === null || _d === void 0 ? void 0 : _d.clear({ chart: this._chart, vChart: this });
55787
+ (_e = this._compiler) === null || _e === void 0 ? void 0 : _e.compile({ chart: this._chart, vChart: this });
55788
+ }
55789
+ if (updateResult.reSize) {
55790
+ const { width, height } = this.getCurrentSize();
55791
+ this._chart.onResize(width, height, false);
55792
+ this._compiler.resize(width, height, false);
55793
+ }
55935
55794
  }
55936
55795
  }
55937
55796
  _beforeRender(option = {}) {
@@ -55990,21 +55849,17 @@ class VChart {
55990
55849
  });
55991
55850
  }
55992
55851
  _updateAnimateState(initial) {
55993
- var _a, _b;
55994
55852
  if (this._option.animation) {
55995
55853
  const updateGraphicAnimationState = (graphic) => {
55996
55854
  var _a;
55997
55855
  const diffState = (_a = graphic.context) === null || _a === void 0 ? void 0 : _a.diffState;
55998
55856
  if (initial) {
55999
- return diffState === 'exit' ? AnimationStateEnum.none : AnimationStateEnum.appear;
55857
+ return diffState === 'exit' ? undefined : AnimationStateEnum.appear;
56000
55858
  }
56001
55859
  return diffState;
56002
55860
  };
56003
- (_a = this._chart) === null || _a === void 0 ? void 0 : _a.getAllRegions().forEach(region => {
56004
- region.updateAnimateStateCallback(updateGraphicAnimationState);
56005
- });
56006
- (_b = this._chart) === null || _b === void 0 ? void 0 : _b.getAllComponents().forEach(component => {
56007
- component.updateAnimateStateCallback(updateGraphicAnimationState);
55861
+ this._compiler.getRootMarks().forEach(mark => {
55862
+ mark.updateAnimationState(updateGraphicAnimationState);
56008
55863
  });
56009
55864
  }
56010
55865
  }
@@ -56088,11 +55943,11 @@ class VChart {
56088
55943
  }
56089
55944
  if (this._chart) {
56090
55945
  this._chart.updateData(id, data, true, parserOptions);
55946
+ this._compiler.render();
56091
55947
  if (userUpdateOptions === null || userUpdateOptions === void 0 ? void 0 : userUpdateOptions.reAnimate) {
56092
55948
  this.stopAnimation();
56093
55949
  this._updateAnimateState(true);
56094
55950
  }
56095
- this._compiler.render();
56096
55951
  return this;
56097
55952
  }
56098
55953
  this._spec.data = array(this._spec.data);
@@ -56103,11 +55958,11 @@ class VChart {
56103
55958
  if (this._chart) {
56104
55959
  this._chart.updateFullData(data);
56105
55960
  if (reRender) {
55961
+ this._compiler.render();
56106
55962
  if (userUpdateOptions === null || userUpdateOptions === void 0 ? void 0 : userUpdateOptions.reAnimate) {
56107
55963
  this.stopAnimation();
56108
55964
  this._updateAnimateState(true);
56109
55965
  }
56110
- this._compiler.render();
56111
55966
  }
56112
55967
  return this;
56113
55968
  }
@@ -56627,20 +56482,10 @@ class VChart {
56627
56482
  return (_a = this._chart) === null || _a === void 0 ? void 0 : _a.setDimensionIndex(value, opt);
56628
56483
  }
56629
56484
  stopAnimation() {
56630
- var _a;
56631
- (_a = this.getStage()) === null || _a === void 0 ? void 0 : _a.stopAnimation(true);
56632
- }
56633
- reRunNormalAnimation() {
56634
- var _a;
56635
- (_a = this.getStage()) === null || _a === void 0 ? void 0 : _a.reApplyAnimationState('normal', true);
56636
56485
  }
56637
56486
  pauseAnimation() {
56638
- var _a;
56639
- (_a = this.getStage()) === null || _a === void 0 ? void 0 : _a.pauseAnimation(true);
56640
56487
  }
56641
56488
  resumeAnimation() {
56642
- var _a;
56643
- (_a = this.getStage()) === null || _a === void 0 ? void 0 : _a.resumeAnimation(true);
56644
56489
  }
56645
56490
  convertDatumToPosition(datum, dataLinkInfo = {}, isRelativeToCanvas = false, checkInViewData) {
56646
56491
  var _a;
@@ -56924,7 +56769,7 @@ const lookup = (data, opt) => {
56924
56769
  });
56925
56770
  };
56926
56771
 
56927
- const version = "2.0.1";
56772
+ const version = "2.0.3-alpha.0";
56928
56773
 
56929
56774
  const addVChartProperty = (data, op) => {
56930
56775
  const context = op.beforeCall();
@@ -58737,11 +58582,14 @@ class BaseSeries extends BaseModel {
58737
58582
  }
58738
58583
  if (isNil$1(dataView)) {
58739
58584
  m.setData(this._data);
58585
+ m.setSkipBeforeLayouted(true);
58740
58586
  }
58741
58587
  else if (dataView !== false) {
58742
58588
  m.setDataView(dataView);
58743
58589
  }
58744
- m.setSkipBeforeLayouted(skipBeforeLayouted !== false);
58590
+ if (isBoolean$1(skipBeforeLayouted)) {
58591
+ m.setSkipBeforeLayouted(skipBeforeLayouted);
58592
+ }
58745
58593
  if (!isNil$1(groupKey)) {
58746
58594
  m.setGroupKey(groupKey);
58747
58595
  }
@@ -59966,6 +59814,30 @@ class LineLikeSeriesMixin {
59966
59814
 
59967
59815
  const lineSeriesMark = Object.assign(Object.assign({}, baseSeriesMark), lineLikeSeriesMark);
59968
59816
 
59817
+ var MarkTypeEnum;
59818
+ (function (MarkTypeEnum) {
59819
+ MarkTypeEnum["group"] = "group";
59820
+ MarkTypeEnum["symbol"] = "symbol";
59821
+ MarkTypeEnum["rule"] = "rule";
59822
+ MarkTypeEnum["line"] = "line";
59823
+ MarkTypeEnum["text"] = "text";
59824
+ MarkTypeEnum["rect"] = "rect";
59825
+ MarkTypeEnum["image"] = "image";
59826
+ MarkTypeEnum["path"] = "path";
59827
+ MarkTypeEnum["area"] = "area";
59828
+ MarkTypeEnum["arc"] = "arc";
59829
+ MarkTypeEnum["polygon"] = "polygon";
59830
+ MarkTypeEnum["boxPlot"] = "boxPlot";
59831
+ MarkTypeEnum["linkPath"] = "linkPath";
59832
+ MarkTypeEnum["cell"] = "cell";
59833
+ MarkTypeEnum["ripple"] = "ripple";
59834
+ MarkTypeEnum["liquid"] = "liquid";
59835
+ MarkTypeEnum["component"] = "component";
59836
+ MarkTypeEnum["dataLabel"] = "dataLabel";
59837
+ MarkTypeEnum["label"] = "label";
59838
+ MarkTypeEnum["pictogram"] = "pictogram";
59839
+ })(MarkTypeEnum || (MarkTypeEnum = {}));
59840
+
59969
59841
  const isStopsEqual = (prev, next) => {
59970
59842
  var _a, _b;
59971
59843
  if (prev === next) {
@@ -63132,24 +63004,6 @@ class BandAxisMixin {
63132
63004
  };
63133
63005
  }
63134
63006
  }
63135
- _updateData() {
63136
- var _a, _b, _c;
63137
- const tickTransformType = this.registerTicksTransform();
63138
- if (this._spec.showAllGroupLayers && this._scales.length > 1) {
63139
- const layers = (_a = this._spec.layers) !== null && _a !== void 0 ? _a : [];
63140
- Object.keys(this._tickDataMap).forEach(layer => {
63141
- const layerConfig = layers[this._scales.length - 1 - +layer] || {};
63142
- const tickData = this._tickDataMap[layer];
63143
- const tickTransform = tickData === null || tickData === void 0 ? void 0 : tickData.getDataView().transformsArr.find((t) => t.type === tickTransformType);
63144
- tickTransform &&
63145
- (tickTransform.options = Object.assign(Object.assign({}, this._tickTransformOption()), layerConfig));
63146
- });
63147
- }
63148
- else {
63149
- const tickTransform = (_c = (_b = this._tickData) === null || _b === void 0 ? void 0 : _b[0]) === null || _c === void 0 ? void 0 : _c.getDataView().transformsArr.find(t => t.type === tickTransformType);
63150
- tickTransform && (tickTransform.options = this._tickTransformOption());
63151
- }
63152
- }
63153
63007
  dataToPosition(values, cfg = {}) {
63154
63008
  var _a, _b;
63155
63009
  if (values.length === 0 || this._scales.length === 0) {
@@ -63242,7 +63096,7 @@ class BandAxisMixin {
63242
63096
  getLabelItems(length) {
63243
63097
  const labelItems = [];
63244
63098
  let preData = [];
63245
- (this._spec.showAllGroupLayers ? this._scales : [this._scales[0]]).forEach((scale, index) => {
63099
+ this._scales.forEach((scale, index) => {
63246
63100
  var _a;
63247
63101
  const tickData = this._tickDataMap[index];
63248
63102
  const isTickDataHaveData = (_a = tickData === null || tickData === void 0 ? void 0 : tickData.getLatestData()) === null || _a === void 0 ? void 0 : _a.length;
@@ -63424,20 +63278,6 @@ class CartesianBandAxis extends CartesianAxis {
63424
63278
  minBandSize
63425
63279
  };
63426
63280
  }
63427
- _compareSpec(spec, prevSpec) {
63428
- const result = super._compareSpec(spec, prevSpec);
63429
- if (result.reMake) {
63430
- return result;
63431
- }
63432
- if ((prevSpec === null || prevSpec === void 0 ? void 0 : prevSpec.showAllGroupLayers) !== (spec === null || spec === void 0 ? void 0 : spec.showAllGroupLayers) || !isEqual(prevSpec === null || prevSpec === void 0 ? void 0 : prevSpec.layers, spec === null || spec === void 0 ? void 0 : spec.layers)) {
63433
- result.reMake = true;
63434
- }
63435
- return result;
63436
- }
63437
- reInit(spec) {
63438
- super.reInit();
63439
- this === null || this === void 0 ? void 0 : this._updateData();
63440
- }
63441
63281
  }
63442
63282
  CartesianBandAxis.type = ComponentTypeEnum.cartesianBandAxis;
63443
63283
  CartesianBandAxis.specKey = 'axes';
@@ -65080,10 +64920,6 @@ class BaseChart extends CompilableBase {
65080
64920
  const elements = [...this._components, ...this._regions, ...this._series];
65081
64921
  elements.forEach(element => element.onEvaluateEnd(option));
65082
64922
  }
65083
- onBeforeRender() {
65084
- const elements = [...this._components, ...this._regions, ...this._series];
65085
- elements.forEach(element => element.onBeforeRender());
65086
- }
65087
64923
  getLayoutElements() {
65088
64924
  return this.getAllModels()
65089
64925
  .map(i => i.layout)
@@ -65549,11 +65385,17 @@ class BaseChart extends CompilableBase {
65549
65385
  }
65550
65386
  _enableMarkAnimation(states) {
65551
65387
  const marks = this.getAllMarks();
65552
- marks.forEach(mark => mark.enableAnimationByState(states));
65388
+ marks.forEach(mark => {
65389
+ const product = mark.getProduct();
65390
+ if (product && product.animate) ;
65391
+ });
65553
65392
  }
65554
65393
  _disableMarkAnimation(states) {
65555
65394
  const marks = this.getAllMarks();
65556
- marks.forEach(mark => mark.disableAnimationByState(states));
65395
+ marks.forEach(mark => {
65396
+ const product = mark.getProduct();
65397
+ if (product && product.animate) ;
65398
+ });
65557
65399
  }
65558
65400
  filterGraphicsByDatum(datum, opt = {}) {
65559
65401
  var _a;
@@ -66436,7 +66278,7 @@ const layoutByValue$1 = (stateByField, series, layoutStartPoint, enableRemain =
66436
66278
  layoutStartPoint = { x: 0, y: 0 };
66437
66279
  }
66438
66280
  Object.keys(stateByField).forEach(field => {
66439
- var _a, _b, _c, _d, _e, _f;
66281
+ var _a, _b, _c, _d, _e;
66440
66282
  const { currentValue, cacheInfo, labelsComp, attributes, coordKey } = stateByField[field];
66441
66283
  let axis = null;
66442
66284
  let coord = 0;
@@ -66448,8 +66290,8 @@ const layoutByValue$1 = (stateByField, series, layoutStartPoint, enableRemain =
66448
66290
  item.axis.getLayoutStartPoint()[coordKey] -
66449
66291
  layoutStartPoint[coordKey];
66450
66292
  axis = item.axis;
66451
- axisLabel = (_f = (_e = (_d = (_c = (_b = (_a = axis
66452
- .getVRenderComponents()[0]) === null || _a === void 0 ? void 0 : _a.children[0]) === null || _b === void 0 ? void 0 : _b.children[0]) === null || _c === void 0 ? void 0 : _c.children[0]) === null || _d === void 0 ? void 0 : _d.getChildByName('axis-label-container')) === null || _e === void 0 ? void 0 : _e.getChildByName('axis-label-container-layer-0')) === null || _f === void 0 ? void 0 : _f.children[0];
66293
+ axisLabel = (_e = (_d = (_c = (_b = (_a = axis
66294
+ .getVRenderComponents()[0]) === null || _a === void 0 ? void 0 : _a.children[0]) === null || _b === void 0 ? void 0 : _b.children[0]) === null || _c === void 0 ? void 0 : _c.getChildByName('axis-label-container')) === null || _d === void 0 ? void 0 : _d.getChildByName('axis-label-container-layer-0')) === null || _e === void 0 ? void 0 : _e.children[0];
66453
66295
  }
66454
66296
  const isVisible = !!currentValue.size && Number.isFinite(coord) && !Number.isNaN(coord);
66455
66297
  const useCache = enableRemain && !isVisible && isValid$1(cacheInfo);
@@ -69827,7 +69669,8 @@ class MapSeries extends GeoSeries {
69827
69669
  initMark() {
69828
69670
  this._pathMark = this._createMark(MapSeries.mark.area, {
69829
69671
  groupKey: this.getDimensionField()[0],
69830
- isSeriesMark: true
69672
+ isSeriesMark: true,
69673
+ skipBeforeLayouted: true
69831
69674
  }, {
69832
69675
  morph: shouldMarkDoMorph(this._spec, MapSeries.mark.area.name),
69833
69676
  morphElementKey: this.getDimensionField()[0]
@@ -73313,6 +73156,7 @@ class BasePieSeries extends PolarSeries {
73313
73156
  this._pieMark = this._createMark(Object.assign(Object.assign({}, BasePieSeries.mark.pie), { name: this._pieMarkName, type: this._pieMarkType }), {
73314
73157
  key: DEFAULT_DATA_KEY,
73315
73158
  groupKey: this._seriesField,
73159
+ skipBeforeLayouted: true,
73316
73160
  isSeriesMark: true
73317
73161
  }, {
73318
73162
  morph: shouldMarkDoMorph(this._spec, this._pieMarkName),
@@ -74777,16 +74621,17 @@ class DotSeriesTooltipHelper extends BaseSeriesTooltipHelper {
74777
74621
  const userUpdateContent = (_c = (_b = (_a = this.spec) === null || _a === void 0 ? void 0 : _a[activeType]) === null || _b === void 0 ? void 0 : _b.updateContent) !== null && _c !== void 0 ? _c : (_d = chartTooltipSpec === null || chartTooltipSpec === void 0 ? void 0 : chartTooltipSpec[activeType]) === null || _d === void 0 ? void 0 : _d.updateContent;
74778
74622
  if (res && !userUpdateContent) {
74779
74623
  res.updateContent = (prev, datum, params) => {
74624
+ var _a, _b;
74780
74625
  const childrenContent = [];
74781
74626
  const childrenPrev = prev.filter((p) => p.key === 'children');
74782
74627
  childrenPrev.length > 0 &&
74783
- childrenPrev[0].value.forEach((element) => {
74628
+ ((_b = (_a = childrenPrev === null || childrenPrev === void 0 ? void 0 : childrenPrev[0]) === null || _a === void 0 ? void 0 : _a.value) === null || _b === void 0 ? void 0 : _b.forEach((element) => {
74784
74629
  let flag = true;
74785
74630
  for (const key in element) {
74786
74631
  childrenContent.push(Object.assign(Object.assign({}, childrenPrev[0]), { shapeType: 'circle', hasShape: flag, key: key, value: element[key] + '' }));
74787
74632
  flag = false;
74788
74633
  }
74789
- });
74634
+ }));
74790
74635
  return prev.concat(childrenContent);
74791
74636
  };
74792
74637
  }
@@ -74809,13 +74654,21 @@ const objFlat = (data, op) => {
74809
74654
  }
74810
74655
  }
74811
74656
  const dataOp = datum[op];
74812
- dataOp === null || dataOp === void 0 ? void 0 : dataOp.forEach((d, i) => {
74813
- result.push(Object.assign({}, dataKeyObj, d, {
74657
+ if (dataOp && dataOp.length > 0) {
74658
+ dataOp === null || dataOp === void 0 ? void 0 : dataOp.forEach((d, i) => {
74659
+ result.push(Object.assign({}, dataKeyObj, d, {
74660
+ [DEFAULT_DATA_INDEX]: index,
74661
+ [DEFAULT_DATA_KEY]: `${dataKey}_${i}`
74662
+ }));
74663
+ index++;
74664
+ });
74665
+ }
74666
+ else {
74667
+ result.push(Object.assign({}, dataKeyObj, {
74814
74668
  [DEFAULT_DATA_INDEX]: index,
74815
- [DEFAULT_DATA_KEY]: `${dataKey}_${i}`
74669
+ [DEFAULT_DATA_KEY]: dataKey
74816
74670
  }));
74817
- index++;
74818
- });
74671
+ }
74819
74672
  });
74820
74673
  return result;
74821
74674
  };
@@ -74908,7 +74761,7 @@ class DotSeries extends CartesianSeries {
74908
74761
  }
74909
74762
  }
74910
74763
  initData() {
74911
- var _a;
74764
+ var _a, _b;
74912
74765
  super.initData();
74913
74766
  this._xDimensionStatisticsDomain = this.getRawData().latestData.map((d) => d[this._fieldY[0]]);
74914
74767
  registerDataSetInstanceTransform(this._option.dataSet, 'objFlat', objFlat);
@@ -74919,9 +74772,31 @@ class DotSeries extends CartesianSeries {
74919
74772
  options: 'dots',
74920
74773
  level: TransformLevel.dotObjFlat
74921
74774
  }, false);
74775
+ (_b = this.getRawData()) === null || _b === void 0 ? void 0 : _b.transform({
74776
+ type: 'objFlat',
74777
+ options: 'dots',
74778
+ level: TransformLevel.dotObjFlat
74779
+ }, false);
74780
+ }
74781
+ _statisticViewData() {
74782
+ var _a;
74783
+ super._statisticViewData();
74784
+ (_a = this._viewDataStatistics) === null || _a === void 0 ? void 0 : _a.transform({
74785
+ type: 'objFlat',
74786
+ options: 'dots',
74787
+ level: TransformLevel.dotObjFlat
74788
+ }, false);
74922
74789
  }
74923
74790
  getStatisticFields() {
74924
- return [{ key: this._fieldY[0], operations: ['values'], customize: this._xDimensionStatisticsDomain }];
74791
+ const result = [{ key: this._fieldY[0], operations: ['values'], customize: this._xDimensionStatisticsDomain }];
74792
+ const { linearMode = true } = this._spec;
74793
+ if (linearMode) {
74794
+ result.push({ key: this._fieldX[0], operations: ['min', 'max'] });
74795
+ }
74796
+ else {
74797
+ result.push({ key: this._fieldX[0], operations: ['values'] });
74798
+ }
74799
+ return result;
74925
74800
  }
74926
74801
  setAttrFromSpec() {
74927
74802
  var _a;
@@ -74966,20 +74841,21 @@ class DotSeries extends CartesianSeries {
74966
74841
  });
74967
74842
  }
74968
74843
  initMarkStyle() {
74844
+ var _a, _b;
74969
74845
  const clipMark = this._clipMark;
74970
74846
  if (clipMark) {
74971
74847
  this.setMarkStyle(clipMark, {
74972
- x: -this._spec.leftAppendPadding,
74848
+ x: -((_a = this._spec.leftAppendPadding) !== null && _a !== void 0 ? _a : 0),
74973
74849
  y: 0,
74974
74850
  width: 10000,
74975
- height: this._spec.clipHeight
74851
+ height: () => { var _a; return (_a = this._spec.clipHeight) !== null && _a !== void 0 ? _a : this._region.getLayoutRect().height; }
74976
74852
  }, 'normal', AttributeLevel.Series);
74977
74853
  clipMark.setMarkConfig({ interactive: false, clip: true });
74978
74854
  }
74979
74855
  const containerMark = this._containerMark;
74980
74856
  if (containerMark) {
74981
74857
  this.setMarkStyle(containerMark, {
74982
- x: this._spec.leftAppendPadding
74858
+ x: (_b = this._spec.leftAppendPadding) !== null && _b !== void 0 ? _b : 0
74983
74859
  }, 'normal', AttributeLevel.Series);
74984
74860
  containerMark.setMarkConfig({ interactive: false });
74985
74861
  }
@@ -75204,7 +75080,13 @@ class LinkSeriesTooltipHelper extends BaseSeriesTooltipHelper {
75204
75080
  }
75205
75081
  }
75206
75082
 
75207
- const linkSeriesMark = Object.assign(Object.assign({}, baseSeriesMark), { ["group"]: { name: "group", type: "group" }, ["link"]: { name: "link", type: "rule" }, ["arrow"]: { name: "arrow", type: "symbol" } });
75083
+ var LinkType;
75084
+ (function (LinkType) {
75085
+ LinkType["line"] = "line";
75086
+ LinkType["curve"] = "curve";
75087
+ })(LinkType || (LinkType = {}));
75088
+
75089
+ const linkSeriesMark = Object.assign(Object.assign({}, baseSeriesMark), { ["group"]: { name: "group", type: "group" }, ["link"]: { name: "link", type: "rule" }, ["curveLink"]: { name: "curveLink", type: "path" }, ["arrow"]: { name: "arrow", type: "symbol" }, ["imageLabel"]: { name: "imageLabel", type: "image" } });
75208
75090
 
75209
75091
  const linkDotInfo = (data, op) => {
75210
75092
  const { infoKey, fields, linkData, dotData } = op;
@@ -75246,6 +75128,7 @@ class LinkSeries extends CartesianSeries {
75246
75128
  constructor() {
75247
75129
  super(...arguments);
75248
75130
  this.type = SeriesTypeEnum.link;
75131
+ this._curveLinkCountMap = {};
75249
75132
  }
75250
75133
  getFromField() {
75251
75134
  return this._fromField;
@@ -75316,11 +75199,12 @@ class LinkSeries extends CartesianSeries {
75316
75199
  this.setDotSeriesSpec(this._spec.dotSeriesSpec);
75317
75200
  }
75318
75201
  initMark() {
75202
+ const { linkType = LinkType.line, imageLabelField } = this._spec;
75319
75203
  this._clipMark = this._createMark(LinkSeries.mark.group);
75320
75204
  this._containerMark = this._createMark(LinkSeries.mark.group, {
75321
75205
  parent: this._clipMark
75322
75206
  });
75323
- this._linkMark = this._createMark(LinkSeries.mark.link, {
75207
+ this._linkMark = this._createMark(linkType === LinkType.curve ? LinkSeries.mark.curveLink : LinkSeries.mark.link, {
75324
75208
  skipBeforeLayouted: false,
75325
75209
  parent: this._containerMark
75326
75210
  });
@@ -75329,16 +75213,23 @@ class LinkSeries extends CartesianSeries {
75329
75213
  isSeriesMark: true,
75330
75214
  parent: this._containerMark
75331
75215
  });
75216
+ if (imageLabelField) {
75217
+ this._imageLabelMark = this._createMark(LinkSeries.mark.imageLabel, {
75218
+ skipBeforeLayouted: false,
75219
+ isSeriesMark: true,
75220
+ parent: this._containerMark
75221
+ });
75222
+ }
75332
75223
  }
75333
75224
  initMarkStyle() {
75334
- var _a, _b, _c, _d;
75225
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
75335
75226
  const clipMark = this._clipMark;
75336
75227
  if (clipMark) {
75337
75228
  this.setMarkStyle(clipMark, {
75338
- x: -this._spec.leftAppendPadding,
75229
+ x: -((_a = this._spec.leftAppendPadding) !== null && _a !== void 0 ? _a : 0),
75339
75230
  y: 0,
75340
75231
  width: 10000,
75341
- height: this._spec.clipHeight
75232
+ height: () => { var _a; return (_a = this._spec.clipHeight) !== null && _a !== void 0 ? _a : this._region.getLayoutRect().height; }
75342
75233
  }, 'normal', AttributeLevel.Series);
75343
75234
  clipMark.setMarkConfig({ interactive: false, clip: true });
75344
75235
  }
@@ -75351,19 +75242,43 @@ class LinkSeries extends CartesianSeries {
75351
75242
  containerMark.setMarkConfig({ interactive: false });
75352
75243
  }
75353
75244
  const linkMark = this._linkMark;
75245
+ const { linkType = LinkType.line } = this._spec;
75354
75246
  if (linkMark) {
75355
- this.setMarkStyle(linkMark, {
75356
- stroke: this.getColorAttribute(),
75357
- strokeOpacity: this.dataToOpacity.bind(this),
75358
- x: this.dataToPositionXFrom.bind(this),
75359
- y: this.dataToPositionYFrom.bind(this),
75360
- x1: this.dataToPositionXTo.bind(this),
75361
- y1: this.dataToPositionYTo.bind(this)
75362
- }, 'normal', AttributeLevel.Series);
75247
+ if (linkType === LinkType.curve) {
75248
+ this.setMarkStyle(linkMark, {
75249
+ stroke: (_d = (_c = (_b = this._spec.link) === null || _b === void 0 ? void 0 : _b.style) === null || _c === void 0 ? void 0 : _c.stroke) !== null && _d !== void 0 ? _d : this.getColorAttribute(),
75250
+ strokeOpacity: this.dataToOpacity.bind(this),
75251
+ path: (datum) => {
75252
+ const fromX = this.dataToPositionXFrom(datum);
75253
+ const fromY = this.dataToPositionYFrom(datum);
75254
+ const toX = this.dataToPositionXTo(datum);
75255
+ const toY = this.dataToPositionYTo(datum);
75256
+ const curveLinkCount = this._curveLinkCountMap[`${fromX}-${fromY}-${toX}-${toY}`] || 1;
75257
+ this._curveLinkCountMap[`${fromX}-${fromY}-${toX}-${toY}`] = curveLinkCount + 1;
75258
+ const curveRatio = 0.5 + curveLinkCount * 0.1;
75259
+ const controlX1 = fromX + (toX - fromX) * 0.7;
75260
+ const controlY1 = fromY;
75261
+ const controlX2 = toX - (toX - fromX) * curveRatio;
75262
+ const controlY2 = toY;
75263
+ return `M ${fromX} ${fromY} C ${controlX1} ${controlY1}, ${controlX2} ${controlY2}, ${toX} ${toY}`;
75264
+ },
75265
+ lineWidth: (_f = (_e = this._spec.link.style) === null || _e === void 0 ? void 0 : _e.lineWidth) !== null && _f !== void 0 ? _f : 1
75266
+ }, 'normal', AttributeLevel.Series);
75267
+ }
75268
+ else {
75269
+ this.setMarkStyle(linkMark, {
75270
+ stroke: this.getColorAttribute(),
75271
+ strokeOpacity: this.dataToOpacity.bind(this),
75272
+ x: this.dataToPositionXFrom.bind(this),
75273
+ y: this.dataToPositionYFrom.bind(this),
75274
+ x1: this.dataToPositionXTo.bind(this),
75275
+ y1: this.dataToPositionYTo.bind(this)
75276
+ }, 'normal', AttributeLevel.Series);
75277
+ }
75363
75278
  }
75364
75279
  const arrowMark = this._arrowMark;
75365
75280
  if (arrowMark) {
75366
- const arrowSize = (_d = (_c = (_b = (_a = this._theme) === null || _a === void 0 ? void 0 : _a.arrow) === null || _b === void 0 ? void 0 : _b.style) === null || _c === void 0 ? void 0 : _c.size) !== null && _d !== void 0 ? _d : 10;
75281
+ const arrowSize = (_k = (_j = (_h = (_g = this._theme) === null || _g === void 0 ? void 0 : _g.arrow) === null || _h === void 0 ? void 0 : _h.style) === null || _j === void 0 ? void 0 : _j.size) !== null && _k !== void 0 ? _k : 10;
75367
75282
  this.setMarkStyle(arrowMark, {
75368
75283
  x: this.dataToPositionXTo.bind(this),
75369
75284
  y: (datum) => this.dataToPositionArrowYTo(datum, arrowSize),
@@ -75375,18 +75290,44 @@ class LinkSeries extends CartesianSeries {
75375
75290
  }
75376
75291
  }, 'normal', AttributeLevel.Series);
75377
75292
  }
75293
+ const imageLabelMark = this._imageLabelMark;
75294
+ if (imageLabelMark) {
75295
+ const { style = {} } = this._spec.imageLabel;
75296
+ const { width = 40, height = 40 } = style;
75297
+ this.setMarkStyle(imageLabelMark, {
75298
+ x: datum => {
75299
+ return (this.dataToPositionXFrom(datum) + this.dataToPositionXTo(datum)) / 2 - width / 2;
75300
+ },
75301
+ y: datum => {
75302
+ return (this.dataToPositionYFrom(datum) + this.dataToPositionYTo(datum)) / 2 - height / 2;
75303
+ },
75304
+ width,
75305
+ height,
75306
+ image: datum => {
75307
+ return datum[this._spec.imageLabelField];
75308
+ }
75309
+ }, 'normal', AttributeLevel.Series);
75310
+ }
75378
75311
  }
75379
75312
  afterInitMark() {
75380
75313
  super.afterInitMark();
75381
75314
  }
75382
75315
  dataToPositionXFrom(datum) {
75316
+ var _a, _b, _c, _d;
75383
75317
  if (!this._xAxisHelper) {
75384
75318
  return Number.NaN;
75385
75319
  }
75386
75320
  const { dataToPosition } = this._xAxisHelper;
75387
- return dataToPosition(this.getDatumPositionValues(datum, this._fromField + '_xField'), {
75321
+ const allowExtend = this._spec.allowExtend;
75322
+ const bandSize = (_c = (_b = (_a = this._xAxisHelper) === null || _a === void 0 ? void 0 : _a.getBandwidth) === null || _b === void 0 ? void 0 : _b.call(_a, 0)) !== null && _c !== void 0 ? _c : 0;
75323
+ const { style = {} } = (_d = this._dotSeriesSpec.symbol) !== null && _d !== void 0 ? _d : {};
75324
+ const { size: dotSize = 10 } = style;
75325
+ return (dataToPosition(this.getDatumPositionValues(datum, this._fromField + '_xField'), {
75388
75326
  bandPosition: this._bandPosition
75389
- });
75327
+ }) +
75328
+ (allowExtend && (!datum.isExtend || datum.isExtend === 'left')
75329
+ ? -(array(bandSize)[0] + dotSize) / 2
75330
+ : 0));
75390
75331
  }
75391
75332
  dataToPositionYFrom(datum) {
75392
75333
  if (!this._yAxisHelper) {
@@ -75396,13 +75337,21 @@ class LinkSeries extends CartesianSeries {
75396
75337
  return dataToPosition(this.getDatumPositionValues(datum, this._fromField + '_yField'));
75397
75338
  }
75398
75339
  dataToPositionXTo(datum) {
75340
+ var _a, _b, _c, _d;
75399
75341
  if (!this._xAxisHelper) {
75400
75342
  return Number.NaN;
75401
75343
  }
75402
75344
  const { dataToPosition } = this._xAxisHelper;
75403
- return dataToPosition(this.getDatumPositionValues(datum, this._toField + '_xField'), {
75345
+ const allowExtend = this._spec.allowExtend;
75346
+ const bandSize = (_c = (_b = (_a = this._xAxisHelper) === null || _a === void 0 ? void 0 : _a.getBandwidth) === null || _b === void 0 ? void 0 : _b.call(_a, 0)) !== null && _c !== void 0 ? _c : 0;
75347
+ const { style = {} } = (_d = this._dotSeriesSpec.symbol) !== null && _d !== void 0 ? _d : {};
75348
+ const { size: dotSize = 10 } = style;
75349
+ return (dataToPosition(this.getDatumPositionValues(datum, this._toField + '_xField'), {
75404
75350
  bandPosition: this._bandPosition
75405
- });
75351
+ }) +
75352
+ (allowExtend && (!datum.isExtend || datum.isExtend === 'right')
75353
+ ? (array(bandSize)[0] + dotSize) / 2
75354
+ : 0));
75406
75355
  }
75407
75356
  dataToPositionYTo(datum) {
75408
75357
  if (!this._yAxisHelper) {
@@ -75424,9 +75373,10 @@ class LinkSeries extends CartesianSeries {
75424
75373
  }) + offset);
75425
75374
  }
75426
75375
  dataToOpacity(datum) {
75427
- if (this.isPositionXOuterRange(datum, this._fromField + '_xField') ||
75428
- this.isPositionXOuterRange(datum, this._toField + '_xField') ||
75429
- datum[this._fromField] === datum[this._toField]) {
75376
+ if (!this._spec.allowExtend &&
75377
+ (this.isPositionXOuterRange(datum, this._fromField + '_xField') ||
75378
+ this.isPositionXOuterRange(datum, this._toField + '_xField') ||
75379
+ datum[this._fromField] === datum[this._toField])) {
75430
75380
  return 0;
75431
75381
  }
75432
75382
  return 1;
@@ -80971,6 +80921,7 @@ class FunnelSeries extends BaseSeries {
80971
80921
  if (this._spec.isTransform) {
80972
80922
  this._funnelTransformMark = this._createMark(Object.assign(Object.assign({}, FunnelSeries.mark.transform), { name: this._transformMarkName, type: this._transformMarkType }), {
80973
80923
  themeSpec: (_b = this._theme) === null || _b === void 0 ? void 0 : _b.transform,
80924
+ skipBeforeLayouted: true,
80974
80925
  noSeparateStyle: true
80975
80926
  });
80976
80927
  if (this._funnelTransformMark) {
@@ -80983,6 +80934,7 @@ class FunnelSeries extends BaseSeries {
80983
80934
  this._funnelOuterLabelMark.label = this._createMark(FunnelSeries.mark.outerLabel, {
80984
80935
  themeSpec: (_h = this._theme) === null || _h === void 0 ? void 0 : _h.outerLabel,
80985
80936
  markSpec: this._spec.outerLabel,
80937
+ skipBeforeLayouted: true,
80986
80938
  noSeparateStyle: true,
80987
80939
  parent: false
80988
80940
  });
@@ -89723,15 +89675,11 @@ class Tooltip extends BaseComponent {
89723
89675
  });
89724
89676
  };
89725
89677
  this._handleClickToLock = (params) => {
89726
- var _a, _b;
89727
89678
  if (this._clickLock) {
89728
89679
  this._handleChartMouseOut(params);
89729
89680
  this._clickLock = false;
89730
89681
  }
89731
89682
  else {
89732
- if (!this._isTooltipShown && !((_b = (_a = this.tooltipHandler) === null || _a === void 0 ? void 0 : _a.isTooltipShown) === null || _b === void 0 ? void 0 : _b.call(_a))) {
89733
- return;
89734
- }
89735
89683
  this._clickLock = true;
89736
89684
  }
89737
89685
  };
@@ -90030,9 +89978,6 @@ class Tooltip extends BaseComponent {
90030
89978
  return;
90031
89979
  }
90032
89980
  this._isEnterTooltip = false;
90033
- if (this._spec.triggerOff === 'none') {
90034
- return;
90035
- }
90036
89981
  if (this._cacheEnterableRect) {
90037
89982
  const newRect = (_a = container.getBoundingClientRect) === null || _a === void 0 ? void 0 : _a.call(container);
90038
89983
  if (newRect &&
@@ -90049,10 +89994,7 @@ class Tooltip extends BaseComponent {
90049
89994
  const activeType = this._spec.activeType;
90050
89995
  this.processor = {};
90051
89996
  activeType.forEach(type => {
90052
- const instance = Factory.createTooltipProcessor(type, this);
90053
- if (instance) {
90054
- this.processor[type] = instance;
90055
- }
89997
+ this.processor[type] = Factory.createTooltipProcessor(type, this);
90056
89998
  });
90057
89999
  }
90058
90000
  _initEvent() {
@@ -90480,7 +90422,7 @@ class BaseCrossHair extends BaseComponent {
90480
90422
  this.event.off(eventName, handler);
90481
90423
  }
90482
90424
  }
90483
- onBeforeRender() {
90425
+ updateLayoutAttribute() {
90484
90426
  this._limitBounds = null;
90485
90427
  this._showDefaultCrosshair();
90486
90428
  }
@@ -91364,7 +91306,7 @@ const dataFilterWithNewDomain = (data, op) => {
91364
91306
  return data.filter(filter);
91365
91307
  };
91366
91308
  const dataFilterComputeDomain = (data, op) => {
91367
- const { stateFields, valueFields, dataCollection, isCategoryState } = op.input;
91309
+ const { stateFields, valueFields, dataCollection, isCategoryState, seriesTypes } = op.input;
91368
91310
  const { stateField, valueField } = op.output;
91369
91311
  const resultObj = {};
91370
91312
  const resultData = [];
@@ -91385,7 +91327,8 @@ const dataFilterComputeDomain = (data, op) => {
91385
91327
  }
91386
91328
  });
91387
91329
  }
91388
- dv.latestData.forEach((d) => {
91330
+ const data = seriesTypes[i] === 'dot' ? objFlat(dv.latestData, 'dots') : dv.latestData;
91331
+ data.forEach((d) => {
91389
91332
  array(stateFields[i]).forEach(state => {
91390
91333
  if (!isNil$1(d[state])) {
91391
91334
  if (isNil$1(resultObj[d[state]])) {
@@ -91470,30 +91413,39 @@ class DataFilterBaseComponent extends BaseComponent {
91470
91413
  const axisScale = axis.getScale();
91471
91414
  const reverse = this._isReverse();
91472
91415
  const newRangeFactor = reverse ? [1 - this._end, 1 - this._start] : [this._start, this._end];
91416
+ const linkedAxis = this._linkedAxisComponent;
91473
91417
  if (reverse) {
91474
91418
  switch (tag) {
91475
91419
  case 'startHandler':
91476
91420
  axis.scaleRangeFactorEnd(newRangeFactor[1]);
91421
+ linkedAxis === null || linkedAxis === void 0 ? void 0 : linkedAxis.scaleRangeFactorEnd(newRangeFactor[1]);
91477
91422
  break;
91478
91423
  case 'endHandler':
91479
91424
  axis.scaleRangeFactorStart(newRangeFactor[0]);
91425
+ linkedAxis === null || linkedAxis === void 0 ? void 0 : linkedAxis.scaleRangeFactorStart(newRangeFactor[0]);
91480
91426
  break;
91481
91427
  default:
91482
91428
  axis.scaleRangeFactorStart(newRangeFactor[0], true);
91483
91429
  axis.scaleRangeFactorEnd(newRangeFactor[1]);
91430
+ linkedAxis === null || linkedAxis === void 0 ? void 0 : linkedAxis.scaleRangeFactorStart(newRangeFactor[0], true);
91431
+ linkedAxis === null || linkedAxis === void 0 ? void 0 : linkedAxis.scaleRangeFactorEnd(newRangeFactor[1]);
91484
91432
  }
91485
91433
  }
91486
91434
  else {
91487
91435
  switch (tag) {
91488
91436
  case 'startHandler':
91489
91437
  axis.scaleRangeFactorStart(newRangeFactor[0]);
91438
+ linkedAxis === null || linkedAxis === void 0 ? void 0 : linkedAxis.scaleRangeFactorStart(newRangeFactor[0]);
91490
91439
  break;
91491
91440
  case 'endHandler':
91492
91441
  axis.scaleRangeFactorEnd(newRangeFactor[1]);
91442
+ linkedAxis === null || linkedAxis === void 0 ? void 0 : linkedAxis.scaleRangeFactorEnd(newRangeFactor[1]);
91493
91443
  break;
91494
91444
  default:
91495
91445
  axis.scaleRangeFactorEnd(newRangeFactor[1], true);
91446
+ linkedAxis === null || linkedAxis === void 0 ? void 0 : linkedAxis.scaleRangeFactorEnd(newRangeFactor[1], true);
91496
91447
  axis.scaleRangeFactorStart(newRangeFactor[0]);
91448
+ linkedAxis === null || linkedAxis === void 0 ? void 0 : linkedAxis.scaleRangeFactorStart(newRangeFactor[0]);
91497
91449
  }
91498
91450
  }
91499
91451
  const newFactor = axisScale.rangeFactor();
@@ -91675,6 +91627,12 @@ class DataFilterBaseComponent extends BaseComponent {
91675
91627
  else if (isValid$1(this._spec.axisIndex)) {
91676
91628
  this._relatedAxisComponent = this._option.getComponentByIndex('axes', this._spec.axisIndex);
91677
91629
  }
91630
+ if (isValid$1(this._spec.linkedAxisId)) {
91631
+ this._linkedAxisComponent = this._option.getComponentByUserId(this._spec.linkedAxisId);
91632
+ }
91633
+ else if (isValid$1(this._spec.linkedAxisIndex)) {
91634
+ this._linkedAxisComponent = this._option.getComponentByIndex('axes', this._spec.linkedAxisIndex);
91635
+ }
91678
91636
  if (isNil$1(this._spec.field) && !this._relatedAxisComponent) {
91679
91637
  const axes = this._option.getComponentsByKey('axes');
91680
91638
  const sameOrientAxis = axes.find((cm) => cm._orient === this._orient);
@@ -91757,11 +91715,15 @@ class DataFilterBaseComponent extends BaseComponent {
91757
91715
  const dataCollection = [];
91758
91716
  const stateFields = [];
91759
91717
  const valueFields = [];
91718
+ const seriesTypes = [];
91760
91719
  let isCategoryState;
91761
91720
  if (this._relatedAxisComponent) {
91762
91721
  const originalStateFields = {};
91763
91722
  eachSeries(this._regions, s => {
91764
91723
  var _a, _b;
91724
+ if (s.type === 'link') {
91725
+ return;
91726
+ }
91765
91727
  const xAxisHelper = s.coordinate === 'cartesian'
91766
91728
  ? s.getXAxisHelper()
91767
91729
  : s.coordinate === 'polar'
@@ -91784,6 +91746,7 @@ class DataFilterBaseComponent extends BaseComponent {
91784
91746
  : yAxisHelper;
91785
91747
  const valueAxisHelper = stateAxisHelper === xAxisHelper ? yAxisHelper : xAxisHelper;
91786
91748
  dataCollection.push(s.getRawData());
91749
+ seriesTypes.push(s.type);
91787
91750
  const seriesSpec = s.getSpec();
91788
91751
  const xField = s.coordinate === 'cartesian'
91789
91752
  ? array(seriesSpec.xField)
@@ -91802,7 +91765,7 @@ class DataFilterBaseComponent extends BaseComponent {
91802
91765
  }
91803
91766
  if (this._valueField) {
91804
91767
  const valueField = s.type === 'link' ? ['from_yField'] : valueAxisHelper === xAxisHelper ? xField : yField;
91805
- if (isContinuous(valueAxisHelper.getScale(0).type)) {
91768
+ if (isContinuous(valueAxisHelper.getScale(0).type) || s.type === 'dot') {
91806
91769
  valueFields.push(...valueField);
91807
91770
  }
91808
91771
  }
@@ -91835,7 +91798,8 @@ class DataFilterBaseComponent extends BaseComponent {
91835
91798
  dataCollection: dataCollection,
91836
91799
  stateFields,
91837
91800
  valueFields,
91838
- isCategoryState
91801
+ isCategoryState,
91802
+ seriesTypes
91839
91803
  },
91840
91804
  output: {
91841
91805
  stateField: this._stateField,
@@ -91843,9 +91807,9 @@ class DataFilterBaseComponent extends BaseComponent {
91843
91807
  }
91844
91808
  }
91845
91809
  }, false);
91846
- this._data = new CompilableData(this._option, data);
91847
91810
  data.reRunAllTransform();
91848
91811
  dataSet.multipleDataViewAddListener(dataCollection, 'change', this._handleDataCollectionChange.bind(this));
91812
+ this._data = new CompilableData(this._option, data);
91849
91813
  }
91850
91814
  setAttrFromSpec() {
91851
91815
  var _a;
@@ -92043,7 +92007,7 @@ class DataFilterBaseComponent extends BaseComponent {
92043
92007
  _initCommonEvent() {
92044
92008
  var _a, _b, _c, _d, _e, _f, _g;
92045
92009
  const delayType = (_b = (_a = this._spec) === null || _a === void 0 ? void 0 : _a.delayType) !== null && _b !== void 0 ? _b : 'throttle';
92046
- const delayTime = isValid$1((_c = this._spec) === null || _c === void 0 ? void 0 : _c.delayType) ? (_e = (_d = this._spec) === null || _d === void 0 ? void 0 : _d.delayTime) !== null && _e !== void 0 ? _e : 30 : 0;
92010
+ const delayTime = isValid$1((_c = this._spec) === null || _c === void 0 ? void 0 : _c.delayType) ? ((_e = (_d = this._spec) === null || _d === void 0 ? void 0 : _d.delayTime) !== null && _e !== void 0 ? _e : 30) : 0;
92047
92011
  const realTime = (_g = (_f = this._spec) === null || _f === void 0 ? void 0 : _f.realTime) !== null && _g !== void 0 ? _g : true;
92048
92012
  const option = { delayType, delayTime, realTime, allowComponentZoom: true };
92049
92013
  if (this._zoomAttr.enable) {
@@ -95191,7 +95155,6 @@ class Player extends BaseComponent {
95191
95155
  this._option.globalInstance.on(ChartEvent.rendered, () => {
95192
95156
  var _a;
95193
95157
  if ((_a = this._spec) === null || _a === void 0 ? void 0 : _a.auto) {
95194
- this._playerComponent.pause();
95195
95158
  this._playerComponent.play();
95196
95159
  }
95197
95160
  });
@@ -96583,7 +96546,6 @@ class Brush extends BaseComponent {
96583
96546
  var _a;
96584
96547
  this._setRegionMarkPickable(region, true);
96585
96548
  const { operateMask } = e.detail;
96586
- const { updateElementsState = true } = this._spec;
96587
96549
  if ((_a = this._spec) === null || _a === void 0 ? void 0 : _a.onBrushEnd) {
96588
96550
  if (this._spec.onBrushEnd(e) === true) {
96589
96551
  this.clearGraphic();
@@ -96597,7 +96559,7 @@ class Brush extends BaseComponent {
96597
96559
  }
96598
96560
  else {
96599
96561
  const inBrushData = this._extendDataInBrush(this._inBrushElementsMap);
96600
- if ((!this._spec.zoomWhenEmpty && inBrushData.length > 0) || !updateElementsState) {
96562
+ if (!this._spec.zoomWhenEmpty && inBrushData.length > 0) {
96601
96563
  this._setAxisAndDataZoom(operateMask, region);
96602
96564
  }
96603
96565
  this._emitEvent(ChartEvent.brushEnd, region);
@@ -96606,9 +96568,8 @@ class Brush extends BaseComponent {
96606
96568
  brush.addEventListener(IOperateType.moveEnd, (e) => {
96607
96569
  this._setRegionMarkPickable(region, true);
96608
96570
  const { operateMask } = e.detail;
96609
- const { updateElementsState = true } = this._spec;
96610
96571
  const inBrushData = this._extendDataInBrush(this._inBrushElementsMap);
96611
- if ((!this._spec.zoomWhenEmpty && inBrushData.length > 0) || updateElementsState) {
96572
+ if (!this._spec.zoomWhenEmpty && inBrushData.length > 0) {
96612
96573
  this._setAxisAndDataZoom(operateMask, region);
96613
96574
  }
96614
96575
  this._emitEvent(ChartEvent.brushEnd, region);
@@ -96650,11 +96611,8 @@ class Brush extends BaseComponent {
96650
96611
  }
96651
96612
  _handleBrushChange(region, e) {
96652
96613
  const { operateMask } = e.detail;
96653
- const { updateElementsState = true } = this._spec;
96654
- if (updateElementsState) {
96655
- this._reconfigItem(operateMask, region);
96656
- this._reconfigLinkedItem(operateMask, region);
96657
- }
96614
+ this._reconfigItem(operateMask, region);
96615
+ this._reconfigLinkedItem(operateMask, region);
96658
96616
  }
96659
96617
  _extendDataInBrush(elementsMap) {
96660
96618
  var _a, _b;
@@ -97905,15 +97863,14 @@ const getDomStyle = (spec = {}) => {
97905
97863
  const marginKey = align === 'right' ? 'marginLeft' : 'marginRight';
97906
97864
  if (align === 'right') {
97907
97865
  panelStyle.direction = 'rtl';
97866
+ titleStyle.textAlign = 'right';
97867
+ keyStyle.textAlign = 'right';
97868
+ valueStyle.textAlign = 'left';
97908
97869
  }
97909
- if (isNil$1(titleStyle.textAlign)) {
97910
- titleStyle.textAlign = align === 'right' ? 'right' : 'left';
97911
- }
97912
- if (isNil$1(keyStyle.textAlign)) {
97913
- keyStyle.textAlign = align === 'right' ? 'right' : 'left';
97914
- }
97915
- if (isNil$1(valueStyle.textAlign)) {
97916
- valueStyle.textAlign = align === 'right' ? 'left' : 'right';
97870
+ else {
97871
+ titleStyle.textAlign = 'left';
97872
+ keyStyle.textAlign = 'left';
97873
+ valueStyle.textAlign = 'right';
97917
97874
  }
97918
97875
  shapeStyle[marginKey] = getPixelPropertyStr((_b = shape.spacing) !== null && _b !== void 0 ? _b : DEFAULT_SHAPE_SPACING);
97919
97876
  keyStyle[marginKey] = getPixelPropertyStr((_c = keyLabel.spacing) !== null && _c !== void 0 ? _c : DEFAULT_KEY_SPACING);
@@ -100230,4 +100187,4 @@ function registerSequentialAnimate() {
100230
100187
  mixin(BaseMark, SequentialAnimate);
100231
100188
  }
100232
100189
 
100233
- export { ArcMark, AreaChart, AreaMark, AreaSeries, AttributeLevel, AxisSyncPlugin, BandAxisMixin, BarChart, BarChartSpecTransformer, BarSeries, BarSeriesSpecTransformer, BaseArcMark, BaseChart, BaseChartSpecTransformer, BaseComponent, BaseComponentSpecTransformer, BaseHistogramChart, BaseMark, BasePieChart, BasePieChartSpecTransformer, BasePieSeries, BasePlugin, BasePolygonMark, BaseSeries, BaseSeriesSpecTransformer, BaseSeriesTooltipHelper, BaseWordCloudChart, BaseWordCloudChartSpecTransformer, BaseWordCloudSeries, BoxPlotChart, BoxPlotSeries, Brush, CanvasTooltipHandler, CartesianAxis, CartesianBandAxis, CartesianChartSpecTransformer, CartesianCrossHair, CartesianLinearAxis, CartesianLogAxis, CartesianMarkArea, CartesianMarkLine, CartesianMarkPoint, CartesianSeries, CartesianSymlogAxis, CartesianTimeAxis, ChartEvent, CirclePackingChart, CirclePackingSeries, CircularProgressChart, CircularProgressSeries, CommonChart, CommonChartSpecTransformer, CompilableData, ComponentMark, ContinuousLegend, CorrelationChart, CorrelationSeries, CustomMark, DEFAULT_ANIMATION_CONFIG, DEFAULT_CHART_HEIGHT, DEFAULT_CHART_WIDTH, DEFAULT_CLOSE_STROKE_JOIN, DEFAULT_DATA_INDEX, DEFAULT_DATA_KEY, DEFAULT_DATA_SERIES_FIELD, DEFAULT_KEY, DEFAULT_LAYOUT_RECT_LEVEL, DEFAULT_LAYOUT_RECT_LEVEL_MIN, DEFAULT_LINEAR_INTERPOLATE, DEFAULT_MEASURE_CANVAS_ID, DEFAULT_SERIES_STYLE_NAME, DEFAULT_SMOOTH_INTERPOLATE, DataZoom, DimensionClickEvent, DimensionEventEnum, DimensionHoverEvent, Direction, DiscreteLegend, DomTooltipHandler, DotSeries, ElementHighlight, ElementSelect, Event$1 as Event, Factory, FormatterPlugin, FunnelChart, FunnelChartSpecTransformer, FunnelSeries, FunnelSeriesSpecTransformer, GaugeChart, GaugePointerSeries, GaugeSeries, GeoCoordinate, GeoMarkPoint, GeoSeries, GridLayout, GroupMark, HeatmapChart, HeatmapSeries, HistogramChart, HistogramChartSpecTransformer, ImageMark, Indicator, Label, Layout$1 as Layout, LayoutLevel, LayoutZIndex, LineChart, LineMark, LineSeries, LinearAxisMixin, LinearProgressChart, LinearProgressSeries, LinkSeries, LiquidChart, LiquidSeries, MOSAIC_CAT_END_PERCENT, MOSAIC_CAT_START_PERCENT, MOSAIC_VALUE_END_PERCENT, MOSAIC_VALUE_START_PERCENT, ManualTicker, MapChart, MapSeries, MarkTypeEnum, MediaQuery, MosaicChart, MosaicSeries, PREFIX, PathMark, PieChart, PieSeries, PieSeriesSpecTransformer, Player, PolarAxis, PolarBandAxis, PolarCrossHair, PolarLinearAxis, PolarMarkArea, PolarMarkLine, PolarMarkPoint, PolarSeries, PolygonMark, PositionEnum, ProgressLikeSeries, RadarChart, RadarSeries, RangeAreaChart, RangeAreaSeries, RangeColumnChart, RangeColumnSeries, RangeColumnSeriesSpecTransformer, RectMark, RenderModeEnum, RippleMark, RoseChart, RoseLikeSeries, RoseSeries, RuleMark, SEGMENT_FIELD_END, SEGMENT_FIELD_START, STACK_FIELD_END, STACK_FIELD_END_OffsetSilhouette, STACK_FIELD_END_PERCENT, STACK_FIELD_KEY, STACK_FIELD_START, STACK_FIELD_START_OffsetSilhouette, STACK_FIELD_START_PERCENT, STACK_FIELD_TOTAL, STACK_FIELD_TOTAL_BOTTOM, STACK_FIELD_TOTAL_PERCENT, STACK_FIELD_TOTAL_TOP, STATE_VALUE_ENUM, SankeyChart, SankeySeries, ScatterChart, ScatterSeries, ScrollBar, SequenceChart, SeriesMarkNameEnum, SeriesTypeEnum, SeriesTypeForThemeEnum, StreamLight, SunburstChart, SunburstSeries, SymbolMark, TextMark, ThemeManager, Title, Tooltip, TooltipResult, TotalLabel, TransformLevel, TreemapChart, TreemapSeries, USER_LAYOUT_RECT_LEVEL, VChart, VennChart, VennSeries, WaterfallChart, WaterfallSeries, WordCloudChart, WordCloudSeries, alternatingWave, animationConfig, barGrowIn, barGrowOut, barPresetAnimation, baseSeriesMark, boundsInRect, builtinThemes, calcLayoutNumber, calcPadding, centerToCorner, columnCenterToEdge, columnEdgeToCenter, columnLeftToRight, columnRightToLeft, computeActualDataScheme, convertPoint, cornerToCenter, createArc, createArea, createGroup, createLine, createRect, createRichText, createSymbol, createText, darkTheme, dataScheme, VChart as default, defaultThemeName, diagonalCenterToEdge, diagonalTopLeftToBottomRight, findMarkGraphic, functionTransform, getActualColor, getActualNumValue, getCartesianCrosshairRect, getCartesianDimensionInfo, getColorSchemeBySeries, getCombinedSizeOfRegions, getDataScheme, getDatumOfGraphic, getDiffAttributesOfGraphic, getDimensionInfoByValue, getFieldAlias, getFunnelTheme, getMergedTheme, getPolarDimensionInfo, getRegionStackGroup, getSpecInfo, getTheme, hasThemeMerged, isCollectionMark, isColorKey, isPercent, isPercentOffset, isProgressiveDataColorScheme, isTokenKey, isValidOrient, isXAxis, isYAxis, isZAxis, lightTheme, lookup, measureText, mergeFields, normalizeLayoutPaddingSpec, particleEffect, pieDisappear, pieEnter, pieExit, piePresetAnimation, pulseWave, queryColorFromColorScheme, queryToken, randomOpacity, registerAllEnv, registerAllMarks, registerAnimate, registerArcAnimation, registerArcMark, registerAreaChart, registerAreaMark, registerAreaSeries, registerBarChart, registerBarSeries, registerBoxplotChart, registerBoxplotSeries, registerBrowserEnv, registerBrush, registerCanvasTooltipHandler, registerCartesianBandAxis, registerCartesianCrossHair, registerCartesianLinearAxis, registerCartesianLogAxis, registerCartesianSymlogAxis, registerCartesianTimeAxis, registerChartPlugin, registerCirclePackingChart, registerCirclePackingSeries, registerCircularProgressChart, registerCircularProgressSeries, registerCommonChart, registerComponentMark, registerContinuousLegend, registerCorrelationChart, registerCustomAnimate, registerCustomMark, registerDataSetInstanceParser, registerDataSetInstanceTransform, registerDataZoom, registerDimensionEvents, registerDimensionHover, registerDimensionTooltipProcessor, registerDiscreteLegend, registerDomTooltipHandler, registerDotSeries, registerDragPlugin, registerElementActive, registerElementActiveByLegend, registerElementHighlight, registerElementHighlightByGroup, registerElementHighlightByKey, registerElementHighlightByLegend, registerElementHighlightByName, registerElementSelect, registerFormatPlugin, registerFunnelChart, registerFunnelSeries, registerGaugeChart, registerGaugePointerSeries, registerGaugeSeries, registerGeoCoordinate, registerGeoMarkPoint, registerGesturePlugin, registerGridLayout, registerGroupMark, registerGroupTooltipProcessor, registerHarmonyEnv, registerHeatmapChart, registerHeatmapSeries, registerHistogramChart, registerHtmlAttributePlugin, registerImageMark, registerIndicator, registerLabel, registerLarkEnv, registerLineChart, registerLineMark, registerLineSeries, registerLinearProgressChart, registerLinearProgressSeries, registerLinkSeries, registerLiquidChart, registerLiquidSeries, registerLynxEnv, registerMapChart, registerMapSeries, registerMarkArea, registerMarkFilterTransform, registerMarkLine, registerMarkMapTransform, registerMarkPoint, registerMarkTooltipProcessor, registerMediaQuery, registerMosaicChart, registerMosaicSeries, registerNodeEnv, registerPathMark, registerPieChart, registerPieSeries, registerPlayer, registerPolarBandAxis, registerPolarCrossHair, registerPolarLinearAxis, registerPolarMarkArea, registerPolarMarkLine, registerPolarMarkPoint, registerPolygonAnimation, registerPolygonMark, registerPoptip, registerRadarChart, registerRadarSeries, registerRangeAreaChart, registerRangeAreaSeries, registerRangeColumnChart, registerRangeColumnSeries, registerReactAttributePlugin, registerRectAnimation, registerRectMark, registerRippleMark, registerRoseChart, registerRoseSeries, registerRuleMark, registerSankeyChart, registerSankeySeries, registerScatterChart, registerScatterSeries, registerScrollBar, registerSequenceChart, registerSequentialAnimate, registerStateTransition, registerSunBurstSeries, registerSunburstChart, registerSymbolMark, registerTTEnv, registerTaroEnv, registerTextMark, registerTheme, registerTitle, registerTooltip, registerTotalLabel, registerTreemapChart, registerTreemapSeries, registerAnimate$1 as registerVRenderAnimate, registerVennChart, registerVennSeries, registerWXEnv, registerWaterfallChart, registerWaterfallSeries, registerWordCloudChart, registerWordCloudSeries, registerWordCloudShapeChart, removeTheme, rippleEffect, rotationScan, rowBottomToTop, rowCenterToEdge, rowEdgeToCenter, rowTopToBottom, shouldMarkDoMorph, snakeWave, sortStackValueGroup, specTransform, spiralEffect, stack, stackGroup, stackMosaic, stackMosaicTotal, stackOffsetSilhouette, stackTotal, themeExist, themes, token, transformColorSchemeToStandardStruct, transformToGraphic, userAnimationConfig, version, vglobal, warn };
100190
+ export { ArcMark, AreaChart, AreaMark, AreaSeries, AttributeLevel, AxisSyncPlugin, BandAxisMixin, BarChart, BarChartSpecTransformer, BarSeries, BarSeriesSpecTransformer, BaseArcMark, BaseChart, BaseChartSpecTransformer, BaseComponent, BaseComponentSpecTransformer, BaseHistogramChart, BaseMark, BasePieChart, BasePieChartSpecTransformer, BasePieSeries, BasePlugin, BasePolygonMark, BaseSeries, BaseSeriesSpecTransformer, BaseSeriesTooltipHelper, BaseWordCloudChart, BaseWordCloudChartSpecTransformer, BaseWordCloudSeries, BoxPlotChart, BoxPlotSeries, Brush, CanvasTooltipHandler, CartesianAxis, CartesianBandAxis, CartesianChartSpecTransformer, CartesianCrossHair, CartesianLinearAxis, CartesianLogAxis, CartesianMarkArea, CartesianMarkLine, CartesianMarkPoint, CartesianSeries, CartesianSymlogAxis, CartesianTimeAxis, ChartEvent, CirclePackingChart, CirclePackingSeries, CircularProgressChart, CircularProgressSeries, CommonChart, CommonChartSpecTransformer, CompilableData, ComponentMark, ContinuousLegend, CorrelationChart, CorrelationSeries, CustomMark, DEFAULT_ANIMATION_CONFIG, DEFAULT_CHART_HEIGHT, DEFAULT_CHART_WIDTH, DEFAULT_CLOSE_STROKE_JOIN, DEFAULT_DATA_INDEX, DEFAULT_DATA_KEY, DEFAULT_DATA_SERIES_FIELD, DEFAULT_KEY, DEFAULT_LAYOUT_RECT_LEVEL, DEFAULT_LAYOUT_RECT_LEVEL_MIN, DEFAULT_LINEAR_INTERPOLATE, DEFAULT_MEASURE_CANVAS_ID, DEFAULT_SERIES_STYLE_NAME, DEFAULT_SMOOTH_INTERPOLATE, DataZoom, DimensionClickEvent, DimensionEventEnum, DimensionHoverEvent, Direction, DiscreteLegend, DomTooltipHandler, DotSeries, ElementHighlight, ElementSelect, Event$1 as Event, Factory, FormatterPlugin, FunnelChart, FunnelChartSpecTransformer, FunnelSeries, FunnelSeriesSpecTransformer, GaugeChart, GaugePointerSeries, GaugeSeries, GeoCoordinate, GeoMarkPoint, GeoSeries, GridLayout, GroupMark, HeatmapChart, HeatmapSeries, HistogramChart, HistogramChartSpecTransformer, ImageMark, Indicator, Label, Layout$1 as Layout, LayoutLevel, LayoutZIndex, LineChart, LineMark, LineSeries, LinearAxisMixin, LinearProgressChart, LinearProgressSeries, LinkSeries, LiquidChart, LiquidSeries, MOSAIC_CAT_END_PERCENT, MOSAIC_CAT_START_PERCENT, MOSAIC_VALUE_END_PERCENT, MOSAIC_VALUE_START_PERCENT, ManualTicker, MapChart, MapSeries, MarkTypeEnum, MediaQuery, MosaicChart, MosaicSeries, PREFIX, PathMark, PieChart, PieSeries, PieSeriesSpecTransformer, Player, PolarAxis, PolarBandAxis, PolarCrossHair, PolarLinearAxis, PolarMarkArea, PolarMarkLine, PolarMarkPoint, PolarSeries, PolygonMark, PositionEnum, ProgressLikeSeries, RadarChart, RadarSeries, RangeAreaChart, RangeAreaSeries, RangeColumnChart, RangeColumnSeries, RangeColumnSeriesSpecTransformer, RectMark, RenderModeEnum, RippleMark, RoseChart, RoseLikeSeries, RoseSeries, RuleMark, SEGMENT_FIELD_END, SEGMENT_FIELD_START, STACK_FIELD_END, STACK_FIELD_END_OffsetSilhouette, STACK_FIELD_END_PERCENT, STACK_FIELD_KEY, STACK_FIELD_START, STACK_FIELD_START_OffsetSilhouette, STACK_FIELD_START_PERCENT, STACK_FIELD_TOTAL, STACK_FIELD_TOTAL_BOTTOM, STACK_FIELD_TOTAL_PERCENT, STACK_FIELD_TOTAL_TOP, STATE_VALUE_ENUM, SankeyChart, SankeySeries, ScatterChart, ScatterSeries, ScrollBar, SequenceChart, SeriesMarkNameEnum, SeriesTypeEnum, SeriesTypeForThemeEnum, StreamLight, SunburstChart, SunburstSeries, SymbolMark, TextMark, ThemeManager, Title, Tooltip, TooltipResult, TotalLabel, TransformLevel, TreemapChart, TreemapSeries, USER_LAYOUT_RECT_LEVEL, VChart, VennChart, VennSeries, WaterfallChart, WaterfallSeries, WordCloudChart, WordCloudSeries, alternatingWave, animationConfig, barGrowIn, barGrowOut, barPresetAnimation, baseSeriesMark, boundsInRect, builtinThemes, calcLayoutNumber, calcPadding, centerToCorner, columnCenterToEdge, columnEdgeToCenter, columnLeftToRight, columnRightToLeft, computeActualDataScheme, convertPoint, cornerToCenter, createArc, createArea, createGroup, createLine, createRect, createRichText, createSymbol, createText, darkTheme, dataScheme, VChart as default, defaultThemeName, diagonalCenterToEdge, diagonalTopLeftToBottomRight, findMarkGraphic, functionTransform, getActualColor, getActualNumValue, getCartesianCrosshairRect, getCartesianDimensionInfo, getColorSchemeBySeries, getCombinedSizeOfRegions, getDataScheme, getDatumOfGraphic, getDimensionInfoByValue, getFieldAlias, getFunnelTheme, getMergedTheme, getPolarDimensionInfo, getRegionStackGroup, getSpecInfo, getTheme, hasThemeMerged, isCollectionMark, isColorKey, isPercent, isPercentOffset, isProgressiveDataColorScheme, isTokenKey, isValidOrient, isXAxis, isYAxis, isZAxis, lightTheme, lookup, measureText, mergeFields, normalizeLayoutPaddingSpec, particleEffect, pieDisappear, pieEnter, pieExit, piePresetAnimation, pulseWave, queryColorFromColorScheme, queryToken, randomOpacity, registerAllEnv, registerAllMarks, registerAnimate, registerArcAnimation, registerArcMark, registerAreaChart, registerAreaMark, registerAreaSeries, registerBarChart, registerBarSeries, registerBoxplotChart, registerBoxplotSeries, registerBrowserEnv, registerBrush, registerCanvasTooltipHandler, registerCartesianBandAxis, registerCartesianCrossHair, registerCartesianLinearAxis, registerCartesianLogAxis, registerCartesianSymlogAxis, registerCartesianTimeAxis, registerChartPlugin, registerCirclePackingChart, registerCirclePackingSeries, registerCircularProgressChart, registerCircularProgressSeries, registerCommonChart, registerComponentMark, registerContinuousLegend, registerCorrelationChart, registerCustomAnimate, registerCustomMark, registerDataSetInstanceParser, registerDataSetInstanceTransform, registerDataZoom, registerDimensionEvents, registerDimensionHover, registerDimensionTooltipProcessor, registerDiscreteLegend, registerDomTooltipHandler, registerDotSeries, registerDragPlugin, registerElementActive, registerElementActiveByLegend, registerElementHighlight, registerElementHighlightByGroup, registerElementHighlightByKey, registerElementHighlightByLegend, registerElementHighlightByName, registerElementSelect, registerFormatPlugin, registerFunnelChart, registerFunnelSeries, registerGaugeChart, registerGaugePointerSeries, registerGaugeSeries, registerGeoCoordinate, registerGeoMarkPoint, registerGesturePlugin, registerGridLayout, registerGroupMark, registerGroupTooltipProcessor, registerHarmonyEnv, registerHeatmapChart, registerHeatmapSeries, registerHistogramChart, registerHtmlAttributePlugin, registerImageMark, registerIndicator, registerLabel, registerLarkEnv, registerLineChart, registerLineMark, registerLineSeries, registerLinearProgressChart, registerLinearProgressSeries, registerLinkSeries, registerLiquidChart, registerLiquidSeries, registerLynxEnv, registerMapChart, registerMapSeries, registerMarkArea, registerMarkFilterTransform, registerMarkLine, registerMarkMapTransform, registerMarkPoint, registerMarkTooltipProcessor, registerMediaQuery, registerMosaicChart, registerMosaicSeries, registerNodeEnv, registerPathMark, registerPieChart, registerPieSeries, registerPlayer, registerPolarBandAxis, registerPolarCrossHair, registerPolarLinearAxis, registerPolarMarkArea, registerPolarMarkLine, registerPolarMarkPoint, registerPolygonAnimation, registerPolygonMark, registerPoptip, registerRadarChart, registerRadarSeries, registerRangeAreaChart, registerRangeAreaSeries, registerRangeColumnChart, registerRangeColumnSeries, registerReactAttributePlugin, registerRectAnimation, registerRectMark, registerRippleMark, registerRoseChart, registerRoseSeries, registerRuleMark, registerSankeyChart, registerSankeySeries, registerScatterChart, registerScatterSeries, registerScrollBar, registerSequenceChart, registerSequentialAnimate, registerStateTransition, registerSunBurstSeries, registerSunburstChart, registerSymbolMark, registerTTEnv, registerTaroEnv, registerTextMark, registerTheme, registerTitle, registerTooltip, registerTotalLabel, registerTreemapChart, registerTreemapSeries, registerAnimate$1 as registerVRenderAnimate, registerVennChart, registerVennSeries, registerWXEnv, registerWaterfallChart, registerWaterfallSeries, registerWordCloudChart, registerWordCloudSeries, registerWordCloudShapeChart, removeTheme, rippleEffect, rotationScan, rowBottomToTop, rowCenterToEdge, rowEdgeToCenter, rowTopToBottom, shouldMarkDoMorph, snakeWave, sortStackValueGroup, specTransform, spiralEffect, stack, stackGroup, stackMosaic, stackMosaicTotal, stackOffsetSilhouette, stackTotal, themeExist, themes, token, transformColorSchemeToStandardStruct, transformToGraphic, userAnimationConfig, version, vglobal, warn };