@visactor/vchart 2.0.5-alpha.5 → 2.0.6

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 (80) hide show
  1. package/build/es5/index.js +1 -1
  2. package/build/index.es.js +195 -65
  3. package/build/index.js +196 -64
  4. package/build/index.min.js +2 -2
  5. package/build/tsconfig.tsbuildinfo +1 -1
  6. package/cjs/animation/utils.js +1 -1
  7. package/cjs/animation/utils.js.map +1 -1
  8. package/cjs/chart/waterfall/waterfall-transformer.js +1 -1
  9. package/cjs/chart/waterfall/waterfall-transformer.js.map +1 -1
  10. package/cjs/component/geo/geo-coordinate.js +12 -7
  11. package/cjs/component/geo/geo-coordinate.js.map +1 -1
  12. package/cjs/component/marker/interface.d.ts +1 -0
  13. package/cjs/component/marker/interface.js.map +1 -1
  14. package/cjs/component/marker/mark-area/cartesian-mark-area.js +4 -4
  15. package/cjs/component/marker/mark-area/cartesian-mark-area.js.map +1 -1
  16. package/cjs/component/marker/mark-line/cartesian-mark-line.js +7 -5
  17. package/cjs/component/marker/mark-line/cartesian-mark-line.js.map +1 -1
  18. package/cjs/component/marker/utils.d.ts +1 -1
  19. package/cjs/component/marker/utils.js +45 -14
  20. package/cjs/component/marker/utils.js.map +1 -1
  21. package/cjs/core/index.d.ts +1 -1
  22. package/cjs/core/index.js +1 -1
  23. package/cjs/core/index.js.map +1 -1
  24. package/cjs/data/transforms/waterfall.d.ts +2 -0
  25. package/cjs/data/transforms/waterfall.js +5 -3
  26. package/cjs/data/transforms/waterfall.js.map +1 -1
  27. package/cjs/index.d.ts +1 -0
  28. package/cjs/index.js +11 -11
  29. package/cjs/index.js.map +1 -1
  30. package/cjs/layout/grid-layout/grid-layout.js +2 -0
  31. package/cjs/layout/grid-layout/grid-layout.js.map +1 -1
  32. package/cjs/plugin/chart/formatter/formatter.d.ts +3 -0
  33. package/cjs/plugin/chart/formatter/formatter.js +23 -1
  34. package/cjs/plugin/chart/formatter/formatter.js.map +1 -1
  35. package/cjs/plugin/components/tooltip-handler/utils/svg.js +8 -5
  36. package/cjs/plugin/components/tooltip-handler/utils/svg.js.map +1 -1
  37. package/cjs/region/interface.d.ts +2 -0
  38. package/cjs/region/interface.js.map +1 -1
  39. package/cjs/series/waterfall/interface.d.ts +1 -0
  40. package/cjs/series/waterfall/interface.js.map +1 -1
  41. package/cjs/series/waterfall/waterfall.js +10 -6
  42. package/cjs/series/waterfall/waterfall.js.map +1 -1
  43. package/esm/animation/utils.js +1 -1
  44. package/esm/animation/utils.js.map +1 -1
  45. package/esm/chart/waterfall/waterfall-transformer.js +1 -1
  46. package/esm/chart/waterfall/waterfall-transformer.js.map +1 -1
  47. package/esm/component/geo/geo-coordinate.js +12 -7
  48. package/esm/component/geo/geo-coordinate.js.map +1 -1
  49. package/esm/component/marker/interface.d.ts +1 -0
  50. package/esm/component/marker/interface.js.map +1 -1
  51. package/esm/component/marker/mark-area/cartesian-mark-area.js +4 -4
  52. package/esm/component/marker/mark-area/cartesian-mark-area.js.map +1 -1
  53. package/esm/component/marker/mark-line/cartesian-mark-line.js +7 -5
  54. package/esm/component/marker/mark-line/cartesian-mark-line.js.map +1 -1
  55. package/esm/component/marker/utils.d.ts +1 -1
  56. package/esm/component/marker/utils.js +45 -14
  57. package/esm/component/marker/utils.js.map +1 -1
  58. package/esm/core/index.d.ts +1 -1
  59. package/esm/core/index.js +1 -1
  60. package/esm/core/index.js.map +1 -1
  61. package/esm/data/transforms/waterfall.d.ts +2 -0
  62. package/esm/data/transforms/waterfall.js +5 -3
  63. package/esm/data/transforms/waterfall.js.map +1 -1
  64. package/esm/index.d.ts +1 -0
  65. package/esm/index.js +2 -0
  66. package/esm/index.js.map +1 -1
  67. package/esm/layout/grid-layout/grid-layout.js +2 -0
  68. package/esm/layout/grid-layout/grid-layout.js.map +1 -1
  69. package/esm/plugin/chart/formatter/formatter.d.ts +3 -0
  70. package/esm/plugin/chart/formatter/formatter.js +23 -1
  71. package/esm/plugin/chart/formatter/formatter.js.map +1 -1
  72. package/esm/plugin/components/tooltip-handler/utils/svg.js +8 -6
  73. package/esm/plugin/components/tooltip-handler/utils/svg.js.map +1 -1
  74. package/esm/region/interface.d.ts +2 -0
  75. package/esm/region/interface.js.map +1 -1
  76. package/esm/series/waterfall/interface.d.ts +1 -0
  77. package/esm/series/waterfall/interface.js.map +1 -1
  78. package/esm/series/waterfall/waterfall.js +10 -6
  79. package/esm/series/waterfall/waterfall.js.map +1 -1
  80. package/package.json +8 -8
package/build/index.es.js CHANGED
@@ -7587,7 +7587,15 @@ const EnvContribution = Symbol.for("EnvContribution");
7587
7587
  const VGlobal = Symbol.for("VGlobal");
7588
7588
  const DEFAULT_TEXT_FONT_FAMILY$1 = "PingFang SC,Helvetica Neue,Microsoft Yahei,system-ui,-apple-system,segoe ui,Roboto,Helvetica,Arial,sans-serif,apple color emoji,segoe ui emoji,segoe ui symbol";
7589
7589
 
7590
- class Application {}
7590
+ const container = new Container();
7591
+
7592
+ const RenderService = Symbol.for("RenderService");
7593
+
7594
+ class Application {
7595
+ get renderService() {
7596
+ return this._renderService || (this._renderService = container.get(RenderService)), this._renderService;
7597
+ }
7598
+ }
7591
7599
  const application = new Application();
7592
7600
 
7593
7601
  let idx = 0;
@@ -10005,6 +10013,9 @@ var __decorate$1u = undefined && undefined.__decorate || function (decorators, t
10005
10013
  return c > 3 && r && Object.defineProperty(target, key, r), r;
10006
10014
  };
10007
10015
  let ATextMeasure = class {
10016
+ constructor() {
10017
+ this.id = "ATextMeasure";
10018
+ }
10008
10019
  configure(service, env) {
10009
10020
  this.canvas = service.canvas, this.context = service.context, service.bindTextMeasure(this);
10010
10021
  }
@@ -10397,11 +10408,13 @@ var __decorate$1t = undefined && undefined.__decorate || function (decorators, t
10397
10408
  return c > 3 && r && Object.defineProperty(target, key, r), r;
10398
10409
  };
10399
10410
  const TextMeasureContribution = Symbol.for("TextMeasureContribution");
10400
- let DefaultTextMeasureContribution = class extends ATextMeasure {};
10411
+ let DefaultTextMeasureContribution = class extends ATextMeasure {
10412
+ constructor() {
10413
+ super(...arguments), this.id = "DefaultTextMeasureContribution";
10414
+ }
10415
+ };
10401
10416
  DefaultTextMeasureContribution = __decorate$1t([injectable()], DefaultTextMeasureContribution);
10402
10417
 
10403
- const container = new Container();
10404
-
10405
10418
  const CanvasFactory = Symbol.for("CanvasFactory");
10406
10419
  const Context2dFactory = Symbol.for("Context2dFactory");
10407
10420
 
@@ -10978,13 +10991,17 @@ let DefaultGraphicUtil = class {
10978
10991
  return this.tryInitCanvas(), this._context;
10979
10992
  }
10980
10993
  constructor(contributions) {
10981
- this.contributions = contributions, this.configured = !1, this.global = application.global, this.global.hooks.onSetEnv.tap("graphic-util", (lastEnv, env, global) => {
10994
+ this.contributions = contributions, this.configured = !1, this.global = application.global, this._textMeasureMap = new Map(), this.global.hooks.onSetEnv.tap("graphic-util", (lastEnv, env, global) => {
10982
10995
  this.configured = !1, this.configure(global, env);
10983
10996
  });
10984
10997
  }
10985
10998
  get textMeasure() {
10986
10999
  return this._textMeasure || this.configure(this.global, this.global.env), this._textMeasure;
10987
11000
  }
11001
+ getTextMeasureInstance(textMeasureId) {
11002
+ if (!textMeasureId) return this.textMeasure;
11003
+ return this._textMeasureMap.get(textMeasureId) || this.textMeasure;
11004
+ }
10988
11005
  configure(global, env) {
10989
11006
  this.configured || (this.contributions.getContributions().forEach(contribution => {
10990
11007
  contribution.configure(this, env);
@@ -10997,7 +11014,7 @@ let DefaultGraphicUtil = class {
10997
11014
  }
10998
11015
  }
10999
11016
  bindTextMeasure(tm) {
11000
- this._textMeasure = tm;
11017
+ this._textMeasure && "DefaultTextMeasureContribution" !== tm.id || (this._textMeasure = tm), this._textMeasureMap.has(tm.id) || this._textMeasureMap.set(tm.id, tm);
11001
11018
  }
11002
11019
  measureText(text, tc, method = "native") {
11003
11020
  var _a;
@@ -15623,7 +15640,7 @@ class Text extends Graphic {
15623
15640
  this.cache.layoutData.lines.forEach(item => {
15624
15641
  mergedText += item.str;
15625
15642
  });
15626
- return (Array.isArray(text) ? text.join("") : text) !== mergedText;
15643
+ return (Array.isArray(text) ? text.join("") : text).toString() !== mergedText;
15627
15644
  }
15628
15645
  return "vertical" === attribute.direction && this.cache.verticalList && this.cache.verticalList[0] ? this.cache.verticalList[0].map(item => item.text).join("") !== attribute.text.toString() : null != this.clipedText && this.clipedText !== attribute.text.toString();
15629
15646
  }
@@ -15722,7 +15739,7 @@ class Text extends Graphic {
15722
15739
  return fontSize ? .1 * fontSize : 0;
15723
15740
  }
15724
15741
  updateHorizontalMultilineAABBBounds(text) {
15725
- var _a;
15742
+ var _a, _b;
15726
15743
  const textTheme = this.getGraphicTheme(),
15727
15744
  attribute = this.attribute,
15728
15745
  {
@@ -15749,7 +15766,7 @@ class Text extends Graphic {
15749
15766
  const bbox = this.cache.layoutData.bbox;
15750
15767
  return this._AABBBounds.set(bbox.xOffset, bbox.yOffset, bbox.xOffset + bbox.width, bbox.yOffset + bbox.height), stroke && this._AABBBounds.expand(lineWidth / 2), this._AABBBounds;
15751
15768
  }
15752
- const textMeasure = application.graphicUtil.textMeasure,
15769
+ const textMeasure = application.graphicUtil.getTextMeasureInstance(this.textMeasureId || (null === (_b = this.stage) || void 0 === _b ? void 0 : _b.textMeasureId)),
15753
15770
  layoutData = new CanvasTextLayout(fontFamily, {
15754
15771
  fontSize: fontSize,
15755
15772
  fontWeight: fontWeight,
@@ -15767,7 +15784,7 @@ class Text extends Graphic {
15767
15784
  return this.cache.layoutData = layoutData, this.clearUpdateShapeTag(), this._AABBBounds.set(bbox.xOffset, bbox.yOffset, bbox.xOffset + bbox.width, bbox.yOffset + bbox.height), stroke && this._AABBBounds.expand(lineWidth / 2), this._AABBBounds;
15768
15785
  }
15769
15786
  updateWrapAABBBounds(text) {
15770
- var _a, _b, _c;
15787
+ var _a, _b, _c, _d;
15771
15788
  const textTheme = this.getGraphicTheme(),
15772
15789
  {
15773
15790
  fontFamily = textTheme.fontFamily,
@@ -15793,7 +15810,7 @@ class Text extends Graphic {
15793
15810
  const bbox = this.cache.layoutData.bbox;
15794
15811
  return this._AABBBounds.set(bbox.xOffset, bbox.yOffset, bbox.xOffset + bbox.width, bbox.yOffset + bbox.height), stroke && this._AABBBounds.expand(lineWidth / 2), this._AABBBounds;
15795
15812
  }
15796
- const textMeasure = application.graphicUtil.textMeasure,
15813
+ const textMeasure = application.graphicUtil.getTextMeasureInstance(this.textMeasureId || (null === (_b = this.stage) || void 0 === _b ? void 0 : _b.textMeasureId)),
15797
15814
  textOptions = {
15798
15815
  fontSize: fontSize,
15799
15816
  fontWeight: fontWeight,
@@ -15825,7 +15842,7 @@ class Text extends Graphic {
15825
15842
  if ("" !== str && "" === clip.str || clip.wordBreaked) {
15826
15843
  if (ellipsis) {
15827
15844
  const clipEllipsis = textMeasure.clipTextWithSuffix(str, textOptions, maxLineWidth, ellipsis, !1, suffixPosition);
15828
- clip.str = null !== (_b = clipEllipsis.str) && void 0 !== _b ? _b : "", clip.width = null !== (_c = clipEllipsis.width) && void 0 !== _c ? _c : 0;
15845
+ clip.str = null !== (_c = clipEllipsis.str) && void 0 !== _c ? _c : "", clip.width = null !== (_d = clipEllipsis.width) && void 0 !== _d ? _d : 0;
15829
15846
  } else clip.str = "", clip.width = 0;
15830
15847
  needCut = !1;
15831
15848
  }
@@ -15888,9 +15905,9 @@ class Text extends Graphic {
15888
15905
  return this.cache.layoutData = layoutData, this.clearUpdateShapeTag(), this._AABBBounds.set(bbox.xOffset, bbox.yOffset, bbox.xOffset + bbox.width, bbox.yOffset + bbox.height), stroke && this._AABBBounds.expand(lineWidth / 2), this._AABBBounds;
15889
15906
  }
15890
15907
  updateVerticalMultilineAABBBounds(text) {
15891
- var _a, _b;
15908
+ var _a, _b, _c;
15892
15909
  const textTheme = this.getGraphicTheme(),
15893
- textMeasure = application.graphicUtil.textMeasure;
15910
+ textMeasure = application.graphicUtil.getTextMeasureInstance(this.textMeasureId || (null === (_a = this.stage) || void 0 === _a ? void 0 : _a.textMeasureId));
15894
15911
  let width;
15895
15912
  const attribute = this.attribute,
15896
15913
  {
@@ -15911,7 +15928,7 @@ class Text extends Graphic {
15911
15928
  } = attribute;
15912
15929
  if (!verticalMode) {
15913
15930
  const t = textAlign;
15914
- textAlign = null !== (_a = Text.baselineMapAlign[textBaseline]) && void 0 !== _a ? _a : "left", textBaseline = null !== (_b = Text.alignMapBaseline[t]) && void 0 !== _b ? _b : "top";
15931
+ textAlign = null !== (_b = Text.baselineMapAlign[textBaseline]) && void 0 !== _b ? _b : "left", textBaseline = null !== (_c = Text.alignMapBaseline[t]) && void 0 !== _c ? _c : "top";
15915
15932
  }
15916
15933
  if (width = 0, !this.shouldUpdateShape() && this.cache) {
15917
15934
  this.cache.verticalList.forEach(item => {
@@ -18922,7 +18939,7 @@ let DefaultCanvasArcRender = class extends BaseRender {
18922
18939
  doFill && (fillCb ? fillCb(context, arc.attribute, arcAttribute) : fVisible && (context.setCommonStyle(arc, arc.attribute, originX - x, originY - y, arcAttribute), context.fill()));
18923
18940
  }
18924
18941
  _runStroke(arc, context, x, y, arcAttribute, doStroke, isFullStroke, sVisible, strokeCb) {
18925
- doStroke && isFullStroke && (strokeCb || sVisible && (context.setStrokeStyle(arc, arc.attribute, x, y, arcAttribute), context.stroke()));
18942
+ doStroke && isFullStroke && (strokeCb ? strokeCb(context, arc.attribute, arcAttribute) : sVisible && (context.setStrokeStyle(arc, arc.attribute, x, y, arcAttribute), context.stroke()));
18926
18943
  }
18927
18944
  draw(arc, renderService, drawContext, params) {
18928
18945
  const arcAttribute = getTheme$1(arc, null == params ? void 0 : params.theme).arc;
@@ -20583,7 +20600,6 @@ var __decorate$19 = undefined && undefined.__decorate || function (decorators, t
20583
20600
  decorator(target, key, paramIndex);
20584
20601
  };
20585
20602
  };
20586
- const RenderService = Symbol.for("RenderService");
20587
20603
  let DefaultRenderService = class {
20588
20604
  constructor(drawContribution) {
20589
20605
  this.drawContribution = drawContribution;
@@ -21472,8 +21488,6 @@ const transformUtil = container.get(TransformUtil);
21472
21488
  application.transformUtil = transformUtil;
21473
21489
  const graphicService = container.get(GraphicService);
21474
21490
  application.graphicService = graphicService;
21475
- const renderService = container.get(RenderService);
21476
- application.renderService = renderService;
21477
21491
  const layerService = container.get(LayerService);
21478
21492
  application.layerService = layerService;
21479
21493
 
@@ -32560,12 +32574,12 @@ class AnimateExecutor {
32560
32574
  const parsedParams = this.parseParams(params, isTimeline);
32561
32575
  return animate = isTimeline ? this.executeTimelineItem(parsedParams, graphic, index, count) : this.executeTypeConfigItem(parsedParams, graphic, index, count), animate && this._trackAnimation(animate), animate;
32562
32576
  }
32563
- stop(type) {
32577
+ stop(type, callEnd = !0) {
32564
32578
  for (; this._animates.length > 0;) {
32565
32579
  const animate = this._animates.pop();
32566
- null == animate || animate.stop(type);
32580
+ !1 === callEnd && (animate.status = AnimateStatus.END), null == animate || animate.stop(type);
32567
32581
  }
32568
- this._animates = [], this._activeCount = 0, this._started && (this._started = !1, this.onEnd());
32582
+ this._animates = [], this._activeCount = 0, this._started && (this._started = !1, callEnd && this.onEnd());
32569
32583
  }
32570
32584
  }
32571
32585
  AnimateExecutor.builtInAnimateMap = {};
@@ -32625,7 +32639,7 @@ class AnimationStateManager {
32625
32639
  executor: new AnimateExecutor(this.graphic)
32626
32640
  });
32627
32641
  }), shouldStopState.forEach(state => {
32628
- state.executor.stop();
32642
+ state.executor.stop(null, !1);
32629
32643
  }), shouldApplyState.length) {
32630
32644
  shouldApplyState[0].executor.execute(shouldApplyState[0].animationConfig);
32631
32645
  for (let i = 0; i < shouldApplyState.length; i++) {
@@ -32676,7 +32690,7 @@ class AnimationStateManager {
32676
32690
  clearState() {
32677
32691
  var _a;
32678
32692
  null === (_a = this.stateList) || void 0 === _a || _a.forEach(state => {
32679
- state.executor.stop();
32693
+ state.executor.stop(null, !1);
32680
32694
  }), this.stateList = null;
32681
32695
  }
32682
32696
  reApplyState(state) {
@@ -40634,7 +40648,7 @@ class LabelBase extends AnimateComponent {
40634
40648
  const text = result[i],
40635
40649
  bounds = text.AABBBounds,
40636
40650
  range = boundToRange(bmpTool, bounds, !0);
40637
- if (canPlace(bmpTool, bitmap, bounds, clampForce, overlapPadding)) bitmap.setRange(range);else {
40651
+ if (canPlace(bmpTool, bitmap, bounds, clampForce || hideOnOverflow, overlapPadding)) bitmap.setRange(range);else {
40638
40652
  if (hideOnOverflow) {
40639
40653
  if (this._processHideOnOverflow(text, bmpTool)) continue;
40640
40654
  } else if (clampForce && this._processClampForce(text, bmpTool, bitmap, overlapPadding)) continue;
@@ -40697,7 +40711,7 @@ class LabelBase extends AnimateComponent {
40697
40711
  const text = labels[i],
40698
40712
  baseMark = this.getRelatedGraphic(text.attribute);
40699
40713
  if (text.update(), !this.isMarkInsideRect(baseMark, bmpTool)) continue;
40700
- if (canPlace(bmpTool, bitmap, text.AABBBounds, clampForce, overlapPadding)) {
40714
+ if (canPlace(bmpTool, bitmap, text.AABBBounds, clampForce || hideOnOverflow, overlapPadding)) {
40701
40715
  if (!checkBounds) {
40702
40716
  bitmap.setRange(boundToRange(bmpTool, text.AABBBounds, !0)), result.push(text);
40703
40717
  continue;
@@ -45605,7 +45619,7 @@ let DiscreteLegend$1 = class DiscreteLegend extends LegendBase {
45605
45619
  width: width,
45606
45620
  height: height
45607
45621
  } = item.attribute;
45608
- contentWidth < startX + width && (startX = 0, startY += height + spaceRow, pages += 1), index > 0 && item.setAttributes({
45622
+ contentWidth < startX + width && index > 0 && (startX = 0, startY += height + spaceRow, pages += 1), index > 0 && item.setAttributes({
45609
45623
  x: startX,
45610
45624
  y: startY
45611
45625
  }), startX += spaceCol + width;
@@ -45616,9 +45630,10 @@ let DiscreteLegend$1 = class DiscreteLegend extends LegendBase {
45616
45630
  if (compWidth = this._itemMaxWidth * maxCol + (maxCol - 1) * spaceCol, compHeight = maxHeight, contentWidth = compWidth, comp = this._createPager(compStyle), this._pagerComponent = comp, this._innerView.add(comp), contentHeight = maxHeight - comp.AABBBounds.height() - pagerSpace - renderStartY, contentHeight <= 0) return this._innerView.removeChild(comp), !1;
45617
45631
  itemsContainer.getChildren().forEach((item, index) => {
45618
45632
  const {
45633
+ width: width,
45619
45634
  height: height
45620
45635
  } = item.attribute;
45621
- contentHeight < startY + height && (startY = 0, startX += this._itemMaxWidth + spaceCol, pages += 1), index > 0 && item.setAttributes({
45636
+ contentHeight < startY + height && index > 0 && (startY = 0, startX += this._itemMaxWidth + spaceCol, pages += 1), index > 0 && item.setAttributes({
45622
45637
  x: startX,
45623
45638
  y: startY
45624
45639
  }), startY += spaceRow + height;
@@ -58310,7 +58325,7 @@ const lookup = (data, opt) => {
58310
58325
  });
58311
58326
  };
58312
58327
 
58313
- const version = "2.0.5-alpha.5";
58328
+ const version = "2.0.6";
58314
58329
 
58315
58330
  const addVChartProperty = (data, op) => {
58316
58331
  const context = op.beforeCall();
@@ -59059,7 +59074,7 @@ function traverseSpec(spec, transform, excludeKeys = []) {
59059
59074
  traverseSpec(spec[index], transform, excludeKeys);
59060
59075
  });
59061
59076
  }
59062
- else if (isObject$2(spec)) {
59077
+ else if (isObject$2(spec) && typeof spec !== 'function') {
59063
59078
  for (const key in spec) {
59064
59079
  if (!excludeKeys.includes(key)) {
59065
59080
  spec[key] = transform(spec[key], key);
@@ -70903,11 +70918,20 @@ class GeoCoordinate extends BaseComponent {
70903
70918
  }
70904
70919
  }
70905
70920
  initEvent() {
70921
+ var _a, _b, _c;
70906
70922
  this.event.on(ChartEvent.scaleUpdate, { filter: ({ model }) => (model === null || model === void 0 ? void 0 : model.id) === this.id }, this.effect.scaleUpdate.bind(this));
70907
70923
  const { roam } = this._spec;
70908
70924
  if (roam) {
70909
- this.initZoomEventOfRegions(this._regions, null, this._handleChartZoom);
70910
- this.initDragEventOfRegions(this._regions, roam.blank ? null : () => true, this.pan);
70925
+ let zoom = true;
70926
+ let drag = true;
70927
+ let blank = false;
70928
+ if (roam !== true) {
70929
+ zoom = (_a = roam.zoom) !== null && _a !== void 0 ? _a : true;
70930
+ drag = (_b = roam.drag) !== null && _b !== void 0 ? _b : true;
70931
+ blank = (_c = roam.blank) !== null && _c !== void 0 ? _c : false;
70932
+ }
70933
+ zoom && this.initZoomEventOfRegions(this._regions, null, this._handleChartZoom);
70934
+ drag && this.initDragEventOfRegions(this._regions, blank ? null : () => true, this.pan);
70911
70935
  this._regions.forEach(r => {
70912
70936
  r.getSeries().forEach(s => {
70913
70937
  s.event.on('zoom', e => {
@@ -71409,10 +71433,13 @@ const waterfall$1 = (lastData, op) => {
71409
71433
  if (!lastData || lastData.length === 0) {
71410
71434
  return lastData;
71411
71435
  }
71412
- const { indexField, total: totalSpec, groupData } = op;
71436
+ const { indexField, total: totalSpec, groupData, calculationMode } = op;
71413
71437
  const totalData = [];
71414
71438
  const { dimensionValues, dimensionData } = groupData().latestData;
71415
- const indexValues = Array.from(dimensionValues[indexField]);
71439
+ let indexValues = Array.from(dimensionValues[indexField]);
71440
+ if (calculationMode === 'decrease') {
71441
+ indexValues = indexValues.reverse();
71442
+ }
71416
71443
  let temp = {
71417
71444
  start: 0,
71418
71445
  end: 0,
@@ -71619,7 +71646,7 @@ const waterfallFillTotal = (data, op) => {
71619
71646
  if (!data) {
71620
71647
  return data;
71621
71648
  }
71622
- const { indexField, valueField, total, seriesField } = op;
71649
+ const { indexField, valueField, total, seriesField, calculationMode } = op;
71623
71650
  const totalData = {
71624
71651
  [indexField]: (total === null || total === void 0 ? void 0 : total.text) || 'total',
71625
71652
  [valueField]: data.reduce((pre, cur) => precisionAdd(pre, +cur[valueField]), 0)
@@ -71627,7 +71654,12 @@ const waterfallFillTotal = (data, op) => {
71627
71654
  if (seriesField) {
71628
71655
  totalData[seriesField] = 'total';
71629
71656
  }
71630
- data.push(totalData);
71657
+ if (calculationMode === 'decrease') {
71658
+ data.unshift(totalData);
71659
+ }
71660
+ else {
71661
+ data.push(totalData);
71662
+ }
71631
71663
  return data;
71632
71664
  };
71633
71665
 
@@ -72238,7 +72270,7 @@ class WaterfallSeries extends BarSeries {
72238
72270
  return super.getSeriesKeys();
72239
72271
  }
72240
72272
  initData() {
72241
- var _a;
72273
+ var _a, _b, _c;
72242
72274
  super.initData();
72243
72275
  registerDataSetInstanceTransform(this._dataSet, 'waterfallFillTotal', waterfallFillTotal);
72244
72276
  registerDataSetInstanceTransform(this._dataSet, 'waterfall', waterfall$1);
@@ -72251,6 +72283,7 @@ class WaterfallSeries extends BarSeries {
72251
72283
  seriesField: this.getSeriesField(),
72252
72284
  seriesFieldName: this._theme.seriesFieldName,
72253
72285
  total: this._spec.total,
72286
+ calculationMode: (_b = this._spec.calculationMode) !== null && _b !== void 0 ? _b : 'increase',
72254
72287
  stackInverse: this.getRegion().getStackInverse()
72255
72288
  }
72256
72289
  }, false);
@@ -72270,6 +72303,7 @@ class WaterfallSeries extends BarSeries {
72270
72303
  startAs: STACK_FIELD_START,
72271
72304
  endAs: STACK_FIELD_END,
72272
72305
  total: this._spec.total,
72306
+ calculationMode: (_c = this._spec.calculationMode) !== null && _c !== void 0 ? _c : 'increase',
72273
72307
  groupData: () => this.getGroups().groupData,
72274
72308
  stackInverse: this.getRegion().getStackInverse()
72275
72309
  }
@@ -72394,6 +72428,7 @@ class WaterfallSeries extends BarSeries {
72394
72428
  }
72395
72429
  initMarkStyle() {
72396
72430
  super.initMarkStyle();
72431
+ const isDecrease = this._spec.calculationMode === 'decrease';
72397
72432
  if (this._leaderLineMark) {
72398
72433
  if (this._direction === "horizontal") {
72399
72434
  this.setMarkStyle(this._leaderLineMark, {
@@ -72404,9 +72439,9 @@ class WaterfallSeries extends BarSeries {
72404
72439
  if (!datum.lastIndex) {
72405
72440
  return 0;
72406
72441
  }
72407
- return this.totalPositionY(datum, 'lastIndex', 1);
72442
+ return this.totalPositionY(datum, 'lastIndex', isDecrease ? 0 : 1);
72408
72443
  },
72409
- y1: (datum) => this.totalPositionY(datum, 'index', 0)
72444
+ y1: (datum) => this.totalPositionY(datum, 'index', isDecrease ? 1 : 0)
72410
72445
  }, 'normal', AttributeLevel.Series);
72411
72446
  }
72412
72447
  else {
@@ -72416,9 +72451,9 @@ class WaterfallSeries extends BarSeries {
72416
72451
  if (!datum.lastIndex) {
72417
72452
  return 0;
72418
72453
  }
72419
- return this.totalPositionX(datum, 'lastIndex', 1);
72454
+ return this.totalPositionX(datum, 'lastIndex', isDecrease ? 0 : 1);
72420
72455
  },
72421
- x1: (datum) => this.totalPositionX(datum, 'index', 0),
72456
+ x1: (datum) => this.totalPositionX(datum, 'index', isDecrease ? 1 : 0),
72422
72457
  y: (datum) => this.totalPositionY(datum, 'lastEnd', 0),
72423
72458
  y1: (datum) => this.totalPositionY(datum, datum.isTotal ? 'end' : 'start', 0)
72424
72459
  }, 'normal', AttributeLevel.Series);
@@ -89386,6 +89421,7 @@ class WaterfallChartSpecTransformer extends BarChartSpecTransformer {
89386
89421
  series.stackLabel = spec.stackLabel;
89387
89422
  series.leaderLine = spec.leaderLine;
89388
89423
  series.total = spec.total;
89424
+ series.calculationMode = spec.calculationMode;
89389
89425
  return series;
89390
89426
  }
89391
89427
  }
@@ -94556,7 +94592,7 @@ function convertDatumToValue(axisHelper, datum) {
94556
94592
  function isAggrSpec(spec) {
94557
94593
  return AGGR_TYPE.includes(spec);
94558
94594
  }
94559
- function xyLayout(data, startRelativeSeries, endRelativeSeries, relativeSeries, autoRange) {
94595
+ function xyLayout(data, startRelativeSeries, endRelativeSeries, relativeSeries, autoRange, includeFullBand = false) {
94560
94596
  const regionStart = startRelativeSeries.getRegion();
94561
94597
  const regionStartLayoutStartPoint = regionStart.getLayoutStartPoint();
94562
94598
  const regionEnd = endRelativeSeries.getRegion();
@@ -94572,20 +94608,31 @@ function xyLayout(data, startRelativeSeries, endRelativeSeries, relativeSeries,
94572
94608
  };
94573
94609
  const lines = [];
94574
94610
  const dataPoints = data.latestData[0] && data.latestData[0].latestData ? data.latestData[0].latestData : data.latestData;
94575
- const xDomain = relativeSeries.getXAxisHelper().getScale(0).domain();
94576
- const yDomain = relativeSeries.getYAxisHelper().getScale(0).domain();
94611
+ const xAxisHelper = relativeSeries.getXAxisHelper();
94612
+ const yAxisHelper = relativeSeries.getXAxisHelper();
94613
+ const xDomain = xAxisHelper.getScale(0).domain();
94614
+ const yDomain = yAxisHelper.getScale(0).domain();
94615
+ const isXExpand = includeFullBand && !xAxisHelper.isContinuous && !!xAxisHelper.getBandwidth;
94616
+ const isyExpand = includeFullBand && !yAxisHelper.isContinuous && !!yAxisHelper.getBandwidth;
94617
+ const xTemp = { min: null, max: null };
94618
+ const yTemp = { min: null, max: null };
94577
94619
  dataPoints.forEach((datum) => {
94578
94620
  const isValidX = isValid$1(datum.x);
94579
94621
  const isValidY = isValid$1(datum.y);
94622
+ let x;
94623
+ let y;
94580
94624
  if (isValidX && isValidY) {
94581
- const x = getXValue(datum, xDomain, autoRange, refSeries, regionWidth, regionStartLayoutStartPoint);
94582
- const y = getYValue(datum, yDomain, autoRange, refSeries, regionHeight, regionStartLayoutStartPoint);
94625
+ x = getXValue(datum, xDomain, autoRange, refSeries, regionWidth, regionStartLayoutStartPoint);
94626
+ y = getYValue(datum, yDomain, autoRange, refSeries, regionHeight, regionStartLayoutStartPoint);
94627
+ setTempWithValid(x, isXExpand, xTemp, lines.length);
94628
+ setTempWithValid(y, isyExpand, yTemp, lines.length);
94583
94629
  lines.push([{ x, y }]);
94584
94630
  }
94585
94631
  else if (isValidX) {
94586
- const x = getXValue(datum, xDomain, autoRange, refSeries, regionWidth, regionStartLayoutStartPoint);
94587
- const y = Math.max(regionStartLayoutStartPoint.y + regionStart.getLayoutRect().height, regionEndLayoutStartPoint.y + regionEnd.getLayoutRect().height);
94632
+ x = getXValue(datum, xDomain, autoRange, refSeries, regionWidth, regionStartLayoutStartPoint);
94633
+ y = Math.max(regionStartLayoutStartPoint.y + regionStart.getLayoutRect().height, regionEndLayoutStartPoint.y + regionEnd.getLayoutRect().height);
94588
94634
  const y1 = Math.min(regionStartLayoutStartPoint.y, regionEndLayoutStartPoint.y);
94635
+ setTempWithValid(x, isXExpand, xTemp, lines.length);
94589
94636
  lines.push([
94590
94637
  {
94591
94638
  x: x,
@@ -94598,9 +94645,10 @@ function xyLayout(data, startRelativeSeries, endRelativeSeries, relativeSeries,
94598
94645
  ]);
94599
94646
  }
94600
94647
  else if (isValidY) {
94601
- const x = Math.min(regionStartLayoutStartPoint.x, regionEndLayoutStartPoint.x);
94602
- const y = getYValue(datum, yDomain, autoRange, refSeries, regionHeight, regionStartLayoutStartPoint);
94648
+ x = Math.min(regionStartLayoutStartPoint.x, regionEndLayoutStartPoint.x);
94649
+ y = getYValue(datum, yDomain, autoRange, refSeries, regionHeight, regionStartLayoutStartPoint);
94603
94650
  const x1 = Math.max(regionStartLayoutStartPoint.x + regionStart.getLayoutRect().width, regionEndLayoutStartPoint.x + regionEnd.getLayoutRect().width);
94651
+ setTempWithValid(y, isyExpand, yTemp, lines.length);
94604
94652
  lines.push([
94605
94653
  {
94606
94654
  x: x,
@@ -94613,8 +94661,46 @@ function xyLayout(data, startRelativeSeries, endRelativeSeries, relativeSeries,
94613
94661
  ]);
94614
94662
  }
94615
94663
  });
94664
+ setTempToLines(lines, xAxisHelper, yAxisHelper, xTemp, yTemp);
94616
94665
  return lines;
94617
94666
  }
94667
+ function setTempToLines(lines, xAxisHelper, yAxisHelper, xTemp, yTemp) {
94668
+ if (xTemp.min || xTemp.max) {
94669
+ const xBandSize = xAxisHelper.getBandwidth(0) * (1 + xAxisHelper.getScale(0).paddingInner());
94670
+ if (xTemp.min) {
94671
+ lines[xTemp.min.index].forEach(p => (p.x -= xBandSize / 2));
94672
+ }
94673
+ if (xTemp.max) {
94674
+ lines[xTemp.max.index].forEach(p => (p.x += xBandSize / 2));
94675
+ }
94676
+ }
94677
+ if (yTemp.min || yTemp.max) {
94678
+ const yBandSize = yAxisHelper.getBandwidth(0) * (1 + yAxisHelper.getScale(0).paddingInner());
94679
+ if (yTemp.min) {
94680
+ lines[yTemp.min.index].forEach(p => (p.y -= yBandSize / 2));
94681
+ }
94682
+ if (yTemp.max) {
94683
+ lines[yTemp.max.index].forEach(p => (p.y += yBandSize / 2));
94684
+ }
94685
+ }
94686
+ }
94687
+ function setTempWithValid(v, isExpand, temp, index) {
94688
+ if (isExpand) {
94689
+ if (temp.min === null || temp.min.value > v) {
94690
+ temp.min = {
94691
+ value: v,
94692
+ index
94693
+ };
94694
+ }
94695
+ if (temp.max === null || temp.max.value < v) {
94696
+ temp.max = {
94697
+ value: v,
94698
+ index
94699
+ };
94700
+ }
94701
+ }
94702
+ return v;
94703
+ }
94618
94704
  function polarLayout(data, startRelativeSeries, endRelativeSeries, relativeSeries, autoRange) {
94619
94705
  const refSeries = {
94620
94706
  relativeSeries,
@@ -95669,7 +95755,7 @@ class CartesianMarkLine extends BaseMarkLine {
95669
95755
  return { points };
95670
95756
  }
95671
95757
  _markerLayout() {
95672
- var _a, _b, _c, _d;
95758
+ var _a, _b, _c, _d, _e;
95673
95759
  const updateAttrs = this._getUpdateMarkerAttrs();
95674
95760
  if (this._spec.type === 'type-step') {
95675
95761
  const startRelativeSeries = this._startRelativeSeries;
@@ -95697,6 +95783,10 @@ class CartesianMarkLine extends BaseMarkLine {
95697
95783
  expandDistanceValue = expandDistance;
95698
95784
  }
95699
95785
  const { points, limitRect } = updateAttrs;
95786
+ if (!points || points.length < 2) {
95787
+ (_a = this._markerComponent) === null || _a === void 0 ? void 0 : _a.setAttributes(updateAttrs);
95788
+ return;
95789
+ }
95700
95790
  const joinPoints = getInsertPoints(points[0], points[1], connectDirection, expandDistanceValue);
95701
95791
  let labelPositionAttrs;
95702
95792
  if (multiSegment && isValid$1(mainSegmentIndex)) {
@@ -95708,11 +95798,11 @@ class CartesianMarkLine extends BaseMarkLine {
95708
95798
  else {
95709
95799
  labelPositionAttrs = Object.assign({ position: 'start', autoRotate: false }, getTextOffset(points[0], points[1], connectDirection, expandDistanceValue));
95710
95800
  }
95711
- const markerComponentAttr = (_b = (_a = this._markerComponent) === null || _a === void 0 ? void 0 : _a.attribute) !== null && _b !== void 0 ? _b : {};
95801
+ const markerComponentAttr = (_c = (_b = this._markerComponent) === null || _b === void 0 ? void 0 : _b.attribute) !== null && _c !== void 0 ? _c : {};
95712
95802
  const prevLabelAttrs = array(markerComponentAttr.label);
95713
95803
  const updateLabels = array(updateAttrs.label);
95714
95804
  const labelsInSpec = array(this._spec.label);
95715
- (_c = this._markerComponent) === null || _c === void 0 ? void 0 : _c.setAttributes({
95805
+ (_d = this._markerComponent) === null || _d === void 0 ? void 0 : _d.setAttributes({
95716
95806
  points: multiSegment
95717
95807
  ? [
95718
95808
  [joinPoints[0], joinPoints[1]],
@@ -95752,7 +95842,7 @@ class CartesianMarkLine extends BaseMarkLine {
95752
95842
  });
95753
95843
  }
95754
95844
  else {
95755
- (_d = this._markerComponent) === null || _d === void 0 ? void 0 : _d.setAttributes(updateAttrs);
95845
+ (_e = this._markerComponent) === null || _e === void 0 ? void 0 : _e.setAttributes(updateAttrs);
95756
95846
  }
95757
95847
  }
95758
95848
  _computeOptions() {
@@ -96245,7 +96335,7 @@ class CartesianMarkArea extends BaseMarkArea {
96245
96335
  return new MarkArea(attr);
96246
96336
  }
96247
96337
  _computePointsAttr() {
96248
- var _a;
96338
+ var _a, _b;
96249
96339
  const spec = this._spec;
96250
96340
  const data = this._markerData;
96251
96341
  const startRelativeSeries = this._startRelativeSeries;
@@ -96254,10 +96344,11 @@ class CartesianMarkArea extends BaseMarkArea {
96254
96344
  const { doXProcess, doYProcess, doXYProcess, doCoordinatesProcess } = getMarkAreaProcessInfo(spec);
96255
96345
  const isPositionLayout = isValid$1(spec.positions);
96256
96346
  const autoRange = (_a = spec.autoRange) !== null && _a !== void 0 ? _a : false;
96347
+ const includeFullBand = (_b = spec.includeFullBand) !== null && _b !== void 0 ? _b : false;
96257
96348
  let points = [];
96258
96349
  let lines = [];
96259
96350
  if (doXYProcess) {
96260
- lines = xyLayout(data, startRelativeSeries, endRelativeSeries, relativeSeries, autoRange);
96351
+ lines = xyLayout(data, startRelativeSeries, endRelativeSeries, relativeSeries, autoRange, includeFullBand);
96261
96352
  const [start, end] = lines;
96262
96353
  if (start && start.length && end && end.length) {
96263
96354
  points = [
@@ -96275,7 +96366,7 @@ class CartesianMarkArea extends BaseMarkArea {
96275
96366
  }
96276
96367
  }
96277
96368
  else if (doXProcess || doYProcess) {
96278
- lines = xyLayout(data, startRelativeSeries, endRelativeSeries, relativeSeries, autoRange);
96369
+ lines = xyLayout(data, startRelativeSeries, endRelativeSeries, relativeSeries, autoRange, includeFullBand);
96279
96370
  const [start, end] = lines;
96280
96371
  if (start && start.length && end && end.length) {
96281
96372
  points = [...start, end[1], end[0]];
@@ -98618,6 +98709,10 @@ class GridLayout {
98618
98709
  });
98619
98710
  }
98620
98711
  clearLayoutSize() {
98712
+ this._gridInfo.colWidth &&
98713
+ this.setSizeFromUserSetting(this._gridInfo.colWidth, this._colSize, this._col, this._chartLayoutRect.width);
98714
+ this._gridInfo.rowHeight &&
98715
+ this.setSizeFromUserSetting(this._gridInfo.rowHeight, this._rowSize, this._row, this._chartLayoutRect.height);
98621
98716
  this._colSize.forEach(c => {
98622
98717
  c.isLayoutSetting = false;
98623
98718
  if (!c.isUserSetting) {
@@ -99392,7 +99487,7 @@ function getSvgHtml(option, gradientId) {
99392
99487
  return '';
99393
99488
  }
99394
99489
  const styleString = `style="display:inline-block;vertical-align:middle;"`;
99395
- const { shapeType, shapeFill, shapeStroke, shapeHollow = false } = option;
99490
+ const { shapeType, shapeStroke, shapeHollow = false, shapeFill } = option;
99396
99491
  const size = (_a = option.shapeSize) !== null && _a !== void 0 ? _a : 8;
99397
99492
  const lineWidth = option.shapeLineWidth ? escapeHTML(option.shapeLineWidth) + 'px' : '0px';
99398
99493
  let fillString = 'currentColor';
@@ -99421,7 +99516,8 @@ function getSvgHtml(option, gradientId) {
99421
99516
  const lw = Number(lineWidth.slice(0, -2));
99422
99517
  viewBox = `${x - lw / 2} ${y - lw / 2} ${w + lw} ${h + lw}`;
99423
99518
  }
99424
- if (!shapeFill || isString$1(shapeFill) || shapeHollow) {
99519
+ const isFillGradientStr = GradientParser.IsGradientStr(shapeFill);
99520
+ if (!shapeFill || (isString$1(shapeFill) && !isFillGradientStr) || shapeHollow) {
99425
99521
  fillString = shapeHollow ? 'none' : shapeFill ? escapeHTML(shapeFill) : 'currentColor';
99426
99522
  return `
99427
99523
  <svg ${styleString} width="${size}" height="${size}" viewBox="${viewBox}">
@@ -99432,19 +99528,20 @@ function getSvgHtml(option, gradientId) {
99432
99528
  </path>
99433
99529
  </svg>`;
99434
99530
  }
99435
- if (isObject$2(shapeFill)) {
99531
+ const shapeFillObject = isFillGradientStr ? GradientParser.Parse(shapeFill) : isObject$2(shapeFill) ? shapeFill : null;
99532
+ if (shapeFillObject) {
99436
99533
  fillString = 'gradientColor' + (gradientId !== null && gradientId !== void 0 ? gradientId : '');
99437
99534
  let gradient = '';
99438
- const stops = ((_b = shapeFill.stops) !== null && _b !== void 0 ? _b : [])
99535
+ const stops = ((_b = shapeFillObject.stops) !== null && _b !== void 0 ? _b : [])
99439
99536
  .map(s => `<stop offset="${escapeHTML(s.offset.toString())}" stop-color="${escapeHTML(s.color)}"/>`)
99440
99537
  .join('');
99441
- if (shapeFill.gradient === 'radial') {
99538
+ if (shapeFillObject.gradient === 'radial') {
99442
99539
  gradient = `<radialGradient id="${fillString}" cx="50%" cy="50%" r="50%" fx="0%" fy="0%">
99443
99540
  ${stops}
99444
99541
  </radialGradient>`;
99445
99542
  }
99446
- else if (shapeFill.gradient === 'linear') {
99447
- gradient = `<linearGradient id="${fillString}" x1="${((_c = shapeFill.x0) !== null && _c !== void 0 ? _c : 0) * 100}%" y1="${((_d = shapeFill.y0) !== null && _d !== void 0 ? _d : 0) * 100}%" x2="${((_e = shapeFill.x1) !== null && _e !== void 0 ? _e : 0) * 100}%" y2="${((_f = shapeFill.y1) !== null && _f !== void 0 ? _f : 0) * 100}%">
99543
+ else if (shapeFillObject.gradient === 'linear') {
99544
+ gradient = `<linearGradient id="${fillString}" x1="${((_c = shapeFillObject.x0) !== null && _c !== void 0 ? _c : 0) * 100}%" y1="${((_d = shapeFillObject.y0) !== null && _d !== void 0 ? _d : 0) * 100}%" x2="${((_e = shapeFillObject.x1) !== null && _e !== void 0 ? _e : 0) * 100}%" y2="${((_f = shapeFillObject.y1) !== null && _f !== void 0 ? _f : 0) * 100}%">
99448
99545
  ${stops}
99449
99546
  </linearGradient>`;
99450
99547
  }
@@ -100198,8 +100295,41 @@ class FormatterPlugin extends BasePlugin {
100198
100295
  else if (formatter.includes('%') && this._timeFormatter) {
100199
100296
  return this._timeFormatter(formatter, text);
100200
100297
  }
100298
+ else if (formatter.startsWith('calc(')) {
100299
+ return this._calcFormatter(formatter, text);
100300
+ }
100201
100301
  return text;
100202
100302
  }
100303
+ _calcFormatter(formatter, text) {
100304
+ try {
100305
+ const expression = formatter.slice(5, -1).replace(/v/g, String(text));
100306
+ return this._calculateMathExpression(expression, text);
100307
+ }
100308
+ catch (e) {
100309
+ return text;
100310
+ }
100311
+ }
100312
+ _calculateMathExpression(expression, text) {
100313
+ const cleanExpression = expression.replace(/\s+/g, '');
100314
+ if (!this._isValidMathExpression(cleanExpression)) {
100315
+ return text;
100316
+ }
100317
+ try {
100318
+ const safeFunction = new Function('return (' + cleanExpression + ')');
100319
+ const result = safeFunction();
100320
+ if (typeof result !== 'number' || isNaN(result) || !isFinite(result)) {
100321
+ throw new Error('Invalid calculation result');
100322
+ }
100323
+ return result;
100324
+ }
100325
+ catch (error) {
100326
+ return text;
100327
+ }
100328
+ }
100329
+ _isValidMathExpression(expression) {
100330
+ const validPattern = /^[0-9+\-*/().]+$/;
100331
+ return validPattern.test(expression);
100332
+ }
100203
100333
  release() {
100204
100334
  super.release();
100205
100335
  this._format = null;
@@ -101651,4 +101781,4 @@ function registerSequentialAnimate() {
101651
101781
  mixin(BaseMark, SequentialAnimate);
101652
101782
  }
101653
101783
 
101654
- 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, GlyphMark, 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, createScale, createScaleWithSpec, createSymbol, createText, darkTheme, dataScheme, VChart as default, defaultThemeName, diagonalCenterToEdge, diagonalTopLeftToBottomRight, findMarkGraphic, functionTransform, getActualColor, getActualNumValue, getCartesianCrosshairRect, getCartesianDimensionInfo, getColorSchemeBySeries, getCombinedSizeOfRegions, getDataScheme, getDatumOfGraphic, getDiffAttributesOfGraphic, getDimensionInfoByValue, getFieldAlias, getFunnelTheme, getGroupAnimationParams, getMergedTheme, getPolarDimensionInfo, getRegionStackGroup, getSpecInfo, getTheme, hasThemeMerged, isCollectionMark, isColorKey, isPercent, isPercentOffset, isPolarAxisSeries, isProgressiveDataColorScheme, isSpecValueWithScale, isTokenKey, isValidOrient, isValueInScaleDomain, 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, registerGlyphMark, 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, registerScaleInOutAnimation, 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, setDefaultCrosshairForCartesianChart, shouldMarkDoMorph, snakeWave, sortDataInAxisHelper, sortStackValueGroup, specTransform, spiralEffect, stack, stackGroup, stackMosaic, stackMosaicTotal, stackOffsetSilhouette, stackTotal, themeExist, themes, token, transformColorSchemeToStandardStruct, transformToGraphic, userAnimationConfig, valueInScaleRange, version, vglobal, warn };
101784
+ 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, GlyphMark, 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, Stack, StackChartMixin, 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, createScale, createScaleWithSpec, createSymbol, createText, darkTheme, dataScheme, VChart as default, defaultThemeName, diagonalCenterToEdge, diagonalTopLeftToBottomRight, findMarkGraphic, functionTransform, getActualColor, getActualNumValue, getCartesianCrosshairRect, getCartesianDimensionInfo, getColorSchemeBySeries, getCombinedSizeOfRegions, getDataScheme, getDatumOfGraphic, getDiffAttributesOfGraphic, getDimensionInfoByValue, getFieldAlias, getFunnelTheme, getGroupAnimationParams, getMergedTheme, getPolarDimensionInfo, getRegionStackGroup, getSpecInfo, getTheme, hasThemeMerged, isCollectionMark, isColorKey, isPercent, isPercentOffset, isPolarAxisSeries, isProgressiveDataColorScheme, isSpecValueWithScale, isTokenKey, isValidOrient, isValueInScaleDomain, 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, registerGlyphMark, 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, registerScaleInOutAnimation, 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, setDefaultCrosshairForCartesianChart, shouldMarkDoMorph, snakeWave, sortDataInAxisHelper, sortStackValueGroup, specTransform, spiralEffect, stack, stackGroup, stackMosaic, stackMosaicTotal, stackOffsetSilhouette, stackTotal, themeExist, themes, token, transformColorSchemeToStandardStruct, transformToGraphic, userAnimationConfig, valueInScaleRange, version, vglobal, warn };