@visactor/vchart 1.13.11 → 1.13.12

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 (46) hide show
  1. package/build/es5/index.js +1 -1
  2. package/build/index.es.js +299 -162
  3. package/build/index.js +299 -162
  4. package/build/index.min.js +1 -1
  5. package/build/tsconfig.tsbuildinfo +1 -1
  6. package/cjs/component/brush/brush.d.ts +1 -1
  7. package/cjs/component/brush/brush.js +18 -15
  8. package/cjs/component/brush/brush.js.map +1 -1
  9. package/cjs/component/crosshair/base.js +4 -3
  10. package/cjs/component/crosshair/base.js.map +1 -1
  11. package/cjs/component/crosshair/cartesian.js +3 -2
  12. package/cjs/component/crosshair/cartesian.js.map +1 -1
  13. package/cjs/component/crosshair/interface/common.d.ts +3 -1
  14. package/cjs/component/crosshair/interface/common.js.map +1 -1
  15. package/cjs/component/crosshair/interface/spec.d.ts +1 -0
  16. package/cjs/component/crosshair/interface/spec.js.map +1 -1
  17. package/cjs/component/crosshair/utils/cartesian.js +15 -13
  18. package/cjs/component/crosshair/utils/cartesian.js.map +1 -1
  19. package/cjs/component/marker/utils.js +14 -9
  20. package/cjs/component/marker/utils.js.map +1 -1
  21. package/cjs/core/expression-function.js +1 -2
  22. package/cjs/core/index.d.ts +1 -1
  23. package/cjs/core/index.js +1 -1
  24. package/cjs/core/index.js.map +1 -1
  25. package/cjs/core/interface.js +2 -1
  26. package/esm/component/brush/brush.d.ts +1 -1
  27. package/esm/component/brush/brush.js +18 -15
  28. package/esm/component/brush/brush.js.map +1 -1
  29. package/esm/component/crosshair/base.js +4 -3
  30. package/esm/component/crosshair/base.js.map +1 -1
  31. package/esm/component/crosshair/cartesian.js +3 -2
  32. package/esm/component/crosshair/cartesian.js.map +1 -1
  33. package/esm/component/crosshair/interface/common.d.ts +3 -1
  34. package/esm/component/crosshair/interface/common.js.map +1 -1
  35. package/esm/component/crosshair/interface/spec.d.ts +1 -0
  36. package/esm/component/crosshair/interface/spec.js.map +1 -1
  37. package/esm/component/crosshair/utils/cartesian.js +15 -13
  38. package/esm/component/crosshair/utils/cartesian.js.map +1 -1
  39. package/esm/component/marker/utils.js +15 -8
  40. package/esm/component/marker/utils.js.map +1 -1
  41. package/esm/core/expression-function.js +1 -2
  42. package/esm/core/index.d.ts +1 -1
  43. package/esm/core/index.js +1 -1
  44. package/esm/core/index.js.map +1 -1
  45. package/esm/core/interface.js +2 -1
  46. package/package.json +15 -15
package/build/index.js CHANGED
@@ -7846,11 +7846,14 @@
7846
7846
  const ContributionProvider = Symbol("ContributionProvider");
7847
7847
  class ContributionProviderCache {
7848
7848
  constructor(serviceIdentifier, container) {
7849
- this.serviceIdentifier = serviceIdentifier, this.container = container;
7849
+ this.serviceIdentifier = serviceIdentifier, this.container = container, ContributionStore.setStore(this.serviceIdentifier, this);
7850
7850
  }
7851
7851
  getContributions() {
7852
7852
  return this.caches || (this.caches = [], this.container && this.container.isBound(this.serviceIdentifier) && this.caches.push(...this.container.getAll(this.serviceIdentifier))), this.caches;
7853
7853
  }
7854
+ refresh() {
7855
+ this.caches && (this.caches.length = 0, this.container && this.container.isBound(this.serviceIdentifier) && this.caches.push(...this.container.getAll(this.serviceIdentifier)));
7856
+ }
7854
7857
  }
7855
7858
  function bindContributionProvider(bind, id) {
7856
7859
  bind(ContributionProvider).toDynamicValue(_ref => {
@@ -7868,6 +7871,20 @@
7868
7871
  return new ContributionProviderCache(id, container);
7869
7872
  }).whenTargetNamed(id);
7870
7873
  }
7874
+ class ContributionStore {
7875
+ static getStore(id) {
7876
+ return this.store.get(id);
7877
+ }
7878
+ static setStore(id, cache) {
7879
+ this.store.set(id, cache);
7880
+ }
7881
+ static refreshAllContributions() {
7882
+ this.store.forEach(cache => {
7883
+ cache.refresh();
7884
+ });
7885
+ }
7886
+ }
7887
+ ContributionStore.store = new Map();
7871
7888
 
7872
7889
  class Hook {
7873
7890
  constructor(args, name) {
@@ -7934,6 +7951,48 @@
7934
7951
  const VGlobal = Symbol.for("VGlobal");
7935
7952
  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";
7936
7953
 
7954
+ class EventListenerManager {
7955
+ constructor() {
7956
+ this._listenerMap = new Map(), this._eventListenerTransformer = event => event;
7957
+ }
7958
+ setEventListenerTransformer(transformer) {
7959
+ this._eventListenerTransformer = transformer || (event => event);
7960
+ }
7961
+ addEventListener(type, listener, options) {
7962
+ if (!listener) return;
7963
+ const wrappedListener = event => {
7964
+ const transformedEvent = this._eventListenerTransformer(event);
7965
+ "function" == typeof listener ? listener(transformedEvent) : listener.handleEvent && listener.handleEvent(transformedEvent);
7966
+ };
7967
+ this._listenerMap.has(type) || this._listenerMap.set(type, new Map()), this._listenerMap.get(type).set(listener, wrappedListener), this._nativeAddEventListener(type, wrappedListener, options);
7968
+ }
7969
+ removeEventListener(type, listener, options) {
7970
+ var _a;
7971
+ if (!listener) return;
7972
+ const wrappedListener = null === (_a = this._listenerMap.get(type)) || void 0 === _a ? void 0 : _a.get(listener);
7973
+ wrappedListener && (this._nativeRemoveEventListener(type, wrappedListener, options), this._listenerMap.get(type).delete(listener), 0 === this._listenerMap.get(type).size && this._listenerMap.delete(type));
7974
+ }
7975
+ dispatchEvent(event) {
7976
+ return this._nativeDispatchEvent(event);
7977
+ }
7978
+ clearAllEventListeners() {
7979
+ this._listenerMap.forEach((listenersMap, type) => {
7980
+ listenersMap.forEach((wrappedListener, originalListener) => {
7981
+ this._nativeRemoveEventListener(type, wrappedListener, void 0);
7982
+ });
7983
+ }), this._listenerMap.clear();
7984
+ }
7985
+ _nativeAddEventListener(type, listener, options) {
7986
+ throw new Error("_nativeAddEventListener must be implemented by derived classes");
7987
+ }
7988
+ _nativeRemoveEventListener(type, listener, options) {
7989
+ throw new Error("_nativeRemoveEventListener must be implemented by derived classes");
7990
+ }
7991
+ _nativeDispatchEvent(event) {
7992
+ throw new Error("_nativeDispatchEvent must be implemented by derived classes");
7993
+ }
7994
+ }
7995
+
7937
7996
  var __decorate$1B = undefined && undefined.__decorate || function (decorators, target, key, desc) {
7938
7997
  var d,
7939
7998
  c = arguments.length,
@@ -7974,7 +8033,7 @@
7974
8033
  step((generator = generator.apply(thisArg, _arguments || [])).next());
7975
8034
  });
7976
8035
  };
7977
- let DefaultGlobal = class {
8036
+ let DefaultGlobal = class extends EventListenerManager {
7978
8037
  get env() {
7979
8038
  return this._env;
7980
8039
  }
@@ -8018,10 +8077,19 @@
8018
8077
  this._env || this.setEnv("browser"), this.envContribution.applyStyles = support;
8019
8078
  }
8020
8079
  constructor(contributions) {
8021
- this.contributions = contributions, this._isImageAnonymous = !0, this.id = Generator.GenAutoIncrementId(), this.hooks = {
8080
+ super(), this.contributions = contributions, this._isImageAnonymous = !0, this.eventListenerTransformer = event => event, this.id = Generator.GenAutoIncrementId(), this.hooks = {
8022
8081
  onSetEnv: new SyncHook(["lastEnv", "env", "global"])
8023
8082
  }, this.measureTextMethod = "native", this.optimizeVisible = !1;
8024
8083
  }
8084
+ _nativeAddEventListener(type, listener, options) {
8085
+ return this._env || this.setEnv("browser"), this.envContribution.addEventListener(type, listener, options);
8086
+ }
8087
+ _nativeRemoveEventListener(type, listener, options) {
8088
+ return this._env || this.setEnv("browser"), this.envContribution.removeEventListener(type, listener, options);
8089
+ }
8090
+ _nativeDispatchEvent(event) {
8091
+ return this._env || this.setEnv("browser"), this.envContribution.dispatchEvent(event);
8092
+ }
8025
8093
  bindContribution(params) {
8026
8094
  const promiseArr = [];
8027
8095
  if (this.contributions.getContributions().forEach(contribution => {
@@ -8062,15 +8130,6 @@
8062
8130
  releaseCanvas(canvas) {
8063
8131
  return this._env || this.setEnv("browser"), this.envContribution.releaseCanvas(canvas);
8064
8132
  }
8065
- addEventListener(type, listener, options) {
8066
- return this._env || this.setEnv("browser"), this.envContribution.addEventListener(type, listener, options);
8067
- }
8068
- removeEventListener(type, listener, options) {
8069
- return this._env || this.setEnv("browser"), this.envContribution.removeEventListener(type, listener, options);
8070
- }
8071
- dispatchEvent(event) {
8072
- return this._env || this.setEnv("browser"), this.envContribution.dispatchEvent(event);
8073
- }
8074
8133
  getRequestAnimationFrame() {
8075
8134
  return this._env || this.setEnv("browser"), this.envContribution.getRequestAnimationFrame();
8076
8135
  }
@@ -11099,7 +11158,7 @@
11099
11158
  };
11100
11159
  const VWindow = Symbol.for("VWindow");
11101
11160
  const WindowHandlerContribution = Symbol.for("WindowHandlerContribution");
11102
- let DefaultWindow = class {
11161
+ let DefaultWindow = class extends EventListenerManager {
11103
11162
  get width() {
11104
11163
  if (this._handler) {
11105
11164
  const wh = this._handler.getWH();
@@ -11118,7 +11177,7 @@
11118
11177
  return this._handler.getDpr();
11119
11178
  }
11120
11179
  constructor() {
11121
- this.hooks = {
11180
+ super(), this.hooks = {
11122
11181
  onChange: new SyncHook(["x", "y", "width", "height"])
11123
11182
  }, this.active = () => {
11124
11183
  const global = this.global;
@@ -11126,6 +11185,15 @@
11126
11185
  container.getNamed(WindowHandlerContribution, global.env).configure(this, global), this.actived = !0;
11127
11186
  }, this._uid = Generator.GenAutoIncrementId(), this.global = application.global, this.postInit();
11128
11187
  }
11188
+ _nativeAddEventListener(type, listener, options) {
11189
+ return this._handler.addEventListener(type, listener, options);
11190
+ }
11191
+ _nativeRemoveEventListener(type, listener, options) {
11192
+ return this._handler.removeEventListener(type, listener, options);
11193
+ }
11194
+ _nativeDispatchEvent(event) {
11195
+ return this._handler.dispatchEvent(event);
11196
+ }
11129
11197
  postInit() {
11130
11198
  this.global.hooks.onSetEnv.tap("window", this.active), this.active();
11131
11199
  }
@@ -11165,7 +11233,7 @@
11165
11233
  throw new Error("暂不支持");
11166
11234
  }
11167
11235
  release() {
11168
- return this.global.hooks.onSetEnv.unTap("window", this.active), this._handler.releaseWindow();
11236
+ return this.global.hooks.onSetEnv.unTap("window", this.active), this.clearAllEventListeners(), this._handler.releaseWindow();
11169
11237
  }
11170
11238
  getContext() {
11171
11239
  return this._handler.getContext();
@@ -11176,15 +11244,6 @@
11176
11244
  getImageBuffer(type) {
11177
11245
  return this._handler.getImageBuffer ? this._handler.getImageBuffer(type) : null;
11178
11246
  }
11179
- addEventListener(type, listener, options) {
11180
- return this._handler.addEventListener(type, listener, options);
11181
- }
11182
- removeEventListener(type, listener, options) {
11183
- return this._handler.removeEventListener(type, listener, options);
11184
- }
11185
- dispatchEvent(event) {
11186
- return this._handler.dispatchEvent(event);
11187
- }
11188
11247
  getBoundingClientRect() {
11189
11248
  return this._handler.getBoundingClientRect();
11190
11249
  }
@@ -12393,19 +12452,17 @@
12393
12452
  globalObj: globalObj,
12394
12453
  domElement: domElement
12395
12454
  } = this;
12396
- this.supportsPointerEvents ? (globalObj.getDocument() ? (globalObj.getDocument().addEventListener("pointermove", this.onPointerMove, !0), globalObj.getDocument().addEventListener("pointerup", this.onPointerUp, !0)) : (domElement.addEventListener("pointermove", this.onPointerMove, !0), domElement.addEventListener("pointerup", this.onPointerUp, !0)), domElement.addEventListener("pointerdown", this.onPointerDown, !0), domElement.addEventListener("pointerleave", this.onPointerOverOut, !0), domElement.addEventListener("pointerover", this.onPointerOverOut, !0)) : (globalObj.getDocument() ? (globalObj.getDocument().addEventListener("mousemove", this.onPointerMove, !0), globalObj.getDocument().addEventListener("mouseup", this.onPointerUp, !0)) : (domElement.addEventListener("mousemove", this.onPointerMove, !0), domElement.addEventListener("mouseup", this.onPointerUp, !0)), domElement.addEventListener("mousedown", this.onPointerDown, !0), domElement.addEventListener("mouseout", this.onPointerOverOut, !0), domElement.addEventListener("mouseover", this.onPointerOverOut, !0)), this.supportsTouchEvents && (domElement.addEventListener("touchstart", this.onPointerDown, !0), domElement.addEventListener("touchend", this.onPointerUp, !0), domElement.addEventListener("touchmove", this.onPointerMove, !0)), domElement.addEventListener("wheel", this.onWheel, {
12455
+ this.supportsPointerEvents ? (globalObj.getDocument() ? (globalObj.addEventListener("pointermove", this.onPointerMove, !0), globalObj.addEventListener("pointerup", this.onPointerUp, !0)) : (domElement.addEventListener("pointermove", this.onPointerMove, !0), domElement.addEventListener("pointerup", this.onPointerUp, !0)), domElement.addEventListener("pointerdown", this.onPointerDown, !0), domElement.addEventListener("pointerleave", this.onPointerOverOut, !0), domElement.addEventListener("pointerover", this.onPointerOverOut, !0)) : (globalObj.getDocument() ? (globalObj.addEventListener("mousemove", this.onPointerMove, !0), globalObj.addEventListener("mouseup", this.onPointerUp, !0)) : (domElement.addEventListener("mousemove", this.onPointerMove, !0), domElement.addEventListener("mouseup", this.onPointerUp, !0)), domElement.addEventListener("mousedown", this.onPointerDown, !0), domElement.addEventListener("mouseout", this.onPointerOverOut, !0), domElement.addEventListener("mouseover", this.onPointerOverOut, !0)), this.supportsTouchEvents && (domElement.addEventListener("touchstart", this.onPointerDown, !0), domElement.addEventListener("touchend", this.onPointerUp, !0), domElement.addEventListener("touchmove", this.onPointerMove, !0)), domElement.addEventListener("wheel", this.onWheel, {
12397
12456
  capture: !0
12398
12457
  }), this.eventsAdded = !0;
12399
12458
  }
12400
12459
  removeEvents() {
12401
- var _a;
12402
12460
  if (!this.eventsAdded || !this.domElement) return;
12403
12461
  const {
12404
- globalObj: globalObj,
12405
- domElement: domElement
12406
- } = this,
12407
- globalDocument = null !== (_a = globalObj.getDocument()) && void 0 !== _a ? _a : domElement;
12408
- this.supportsPointerEvents ? (globalDocument.removeEventListener("pointermove", this.onPointerMove, !0), globalDocument.removeEventListener("pointerup", this.onPointerUp, !0), domElement.removeEventListener("pointerdown", this.onPointerDown, !0), domElement.removeEventListener("pointerleave", this.onPointerOverOut, !0), domElement.removeEventListener("pointerover", this.onPointerOverOut, !0)) : (globalDocument.removeEventListener("mousemove", this.onPointerMove, !0), globalDocument.removeEventListener("mouseup", this.onPointerUp, !0), domElement.removeEventListener("mousedown", this.onPointerDown, !0), domElement.removeEventListener("mouseout", this.onPointerOverOut, !0), domElement.removeEventListener("mouseover", this.onPointerOverOut, !0)), this.supportsTouchEvents && (domElement.removeEventListener("touchstart", this.onPointerDown, !0), domElement.removeEventListener("touchend", this.onPointerUp, !0), domElement.removeEventListener("touchmove", this.onPointerMove, !0)), domElement.removeEventListener("wheel", this.onWheel, !0), this.domElement = null, this.eventsAdded = !1;
12462
+ globalObj: globalObj,
12463
+ domElement: domElement
12464
+ } = this;
12465
+ this.supportsPointerEvents ? (globalObj.getDocument() ? (globalObj.removeEventListener("pointermove", this.onPointerMove, !0), globalObj.removeEventListener("pointerup", this.onPointerUp, !0)) : (domElement.removeEventListener("pointermove", this.onPointerMove, !0), domElement.removeEventListener("pointerup", this.onPointerUp, !0)), domElement.removeEventListener("pointerdown", this.onPointerDown, !0), domElement.removeEventListener("pointerleave", this.onPointerOverOut, !0), domElement.removeEventListener("pointerover", this.onPointerOverOut, !0)) : (globalObj.getDocument() ? (globalObj.removeEventListener("mousemove", this.onPointerMove, !0), globalObj.removeEventListener("mouseup", this.onPointerUp, !0)) : (domElement.removeEventListener("mousemove", this.onPointerMove, !0), domElement.removeEventListener("mouseup", this.onPointerUp, !0)), domElement.removeEventListener("mousedown", this.onPointerDown, !0), domElement.removeEventListener("mouseout", this.onPointerOverOut, !0), domElement.removeEventListener("mouseover", this.onPointerOverOut, !0)), this.supportsTouchEvents && (domElement.removeEventListener("touchstart", this.onPointerDown, !0), domElement.removeEventListener("touchend", this.onPointerUp, !0), domElement.removeEventListener("touchmove", this.onPointerMove, !0)), domElement.removeEventListener("wheel", this.onWheel, !0), this.domElement = null, this.eventsAdded = !1;
12409
12466
  }
12410
12467
  mapToViewportPoint(event) {
12411
12468
  return this.domElement.pointTransform ? this.domElement.pointTransform(event.x, event.y) : event;
@@ -13659,23 +13716,27 @@
13659
13716
  isValidNumber$1(lastClipRange * this.clipRange) && (this.clipRange *= lastClipRange);
13660
13717
  }
13661
13718
  onUpdate(end, ratio, out) {
13662
- if (this.points = this.points.map((point, index) => {
13663
- const newPoint = pointInterpolation(this.interpolatePoints[index][0], this.interpolatePoints[index][1], ratio);
13664
- return newPoint.context = point.context, newPoint;
13665
- }), this.clipRange) {
13666
- if (this.shrinkClipRange) return void (end ? (out.points = this.toPoints, out.clipRange = 1) : (out.points = this.fromPoints, out.clipRange = this.clipRange - (this.clipRange - this.shrinkClipRange) * ratio));
13667
- out.clipRange = this.clipRange + (1 - this.clipRange) * ratio;
13668
- }
13669
- if (this.segmentsCache && this.to.segments) {
13670
- let start = 0;
13671
- out.segments = this.to.segments.map((segment, index) => {
13672
- const end = start + this.segmentsCache[index],
13673
- points = this.points.slice(start, end);
13674
- return start = end, Object.assign(Object.assign({}, segment), {
13675
- points: points
13719
+ if (end) Object.keys(this.to).forEach(k => {
13720
+ out[k] = this.to[k];
13721
+ });else {
13722
+ if (this.points = this.points.map((point, index) => {
13723
+ const newPoint = pointInterpolation(this.interpolatePoints[index][0], this.interpolatePoints[index][1], ratio);
13724
+ return newPoint.context = point.context, newPoint;
13725
+ }), this.clipRange) {
13726
+ if (this.shrinkClipRange) return void (end ? (out.points = this.toPoints, out.clipRange = 1) : (out.points = this.fromPoints, out.clipRange = this.clipRange - (this.clipRange - this.shrinkClipRange) * ratio));
13727
+ out.clipRange = this.clipRange + (1 - this.clipRange) * ratio;
13728
+ }
13729
+ if (this.segmentsCache && this.to.segments) {
13730
+ let start = 0;
13731
+ out.segments = this.to.segments.map((segment, index) => {
13732
+ const end = start + this.segmentsCache[index],
13733
+ points = this.points.slice(start, end);
13734
+ return start = end, Object.assign(Object.assign({}, segment), {
13735
+ points: points
13736
+ });
13676
13737
  });
13677
- });
13678
- } else out.points = this.points;
13738
+ } else out.points = this.points;
13739
+ }
13679
13740
  }
13680
13741
  }
13681
13742
  class ClipGraphicAnimate extends ACustomAnimate {
@@ -21080,6 +21141,9 @@
21080
21141
  init(contributions) {
21081
21142
  contributions && (this._renderContribitions = contributions.getContributions()), this._renderContribitions || (this._renderContribitions = []), this.builtinContributions || (this.builtinContributions = []), this.builtinContributions.push(defaultBaseClipRenderBeforeContribution), this.builtinContributions.push(defaultBaseClipRenderAfterContribution), this.builtinContributions.forEach(item => this._renderContribitions.push(item)), this._renderContribitions.length && (this._renderContribitions.sort((a, b) => b.order - a.order), this._beforeRenderContribitions = this._renderContribitions.filter(c => c.time === BaseRenderContributionTime.beforeFillStroke), this._afterRenderContribitions = this._renderContribitions.filter(c => c.time === BaseRenderContributionTime.afterFillStroke));
21082
21143
  }
21144
+ reInit() {
21145
+ this.init(this.graphicRenderContributions);
21146
+ }
21083
21147
  beforeRenderStep(graphic, context, x, y, doFill, doStroke, fVisible, sVisible, graphicAttribute, drawContext, fillCb, strokeCb, params) {
21084
21148
  this._beforeRenderContribitions && this._beforeRenderContribitions.forEach(c => {
21085
21149
  if (c.supportedAppName && graphic.stage && graphic.stage.params && graphic.stage.params.context && graphic.stage.params.context.appName) {
@@ -21249,8 +21313,8 @@
21249
21313
  };
21250
21314
  };
21251
21315
  let DefaultCanvasArcRender = class extends BaseRender {
21252
- constructor(arcRenderContribitions) {
21253
- super(), this.arcRenderContribitions = arcRenderContribitions, this.numberType = ARC_NUMBER_TYPE, this.builtinContributions = [defaultArcRenderContribution, defaultArcBackgroundRenderContribution, defaultArcTextureRenderContribution], this.init(arcRenderContribitions);
21316
+ constructor(graphicRenderContributions) {
21317
+ super(), this.graphicRenderContributions = graphicRenderContributions, this.numberType = ARC_NUMBER_TYPE, this.builtinContributions = [defaultArcRenderContribution, defaultArcBackgroundRenderContribution, defaultArcTextureRenderContribution], this.init(graphicRenderContributions);
21254
21318
  }
21255
21319
  drawArcTailCapPath(arc, context, cx, cy, outerRadius, innerRadius, _sa, _ea) {
21256
21320
  const capAngle = _ea - _sa,
@@ -21425,8 +21489,8 @@
21425
21489
  };
21426
21490
  };
21427
21491
  let DefaultCanvasCircleRender = class extends BaseRender {
21428
- constructor(circleRenderContribitions) {
21429
- super(), this.circleRenderContribitions = circleRenderContribitions, this.numberType = CIRCLE_NUMBER_TYPE, this.builtinContributions = [defaultCircleRenderContribution, defaultCircleBackgroundRenderContribution, defaultCircleTextureRenderContribution], this.init(circleRenderContribitions);
21492
+ constructor(graphicRenderContributions) {
21493
+ super(), this.graphicRenderContributions = graphicRenderContributions, this.numberType = CIRCLE_NUMBER_TYPE, this.builtinContributions = [defaultCircleRenderContribution, defaultCircleBackgroundRenderContribution, defaultCircleTextureRenderContribution], this.init(graphicRenderContributions);
21430
21494
  }
21431
21495
  drawShape(circle, context, x, y, drawContext, params, fillCb, strokeCb) {
21432
21496
  const circleAttribute = getTheme$1(circle, null == params ? void 0 : params.theme).circle,
@@ -21812,8 +21876,8 @@
21812
21876
  };
21813
21877
  };
21814
21878
  let DefaultCanvasAreaRender = class extends BaseRender {
21815
- constructor(areaRenderContribitions) {
21816
- super(), this.areaRenderContribitions = areaRenderContribitions, this.numberType = AREA_NUMBER_TYPE, this.builtinContributions = [defaultAreaTextureRenderContribution, defaultAreaBackgroundRenderContribution], this.init(areaRenderContribitions);
21879
+ constructor(graphicRenderContributions) {
21880
+ super(), this.graphicRenderContributions = graphicRenderContributions, this.numberType = AREA_NUMBER_TYPE, this.builtinContributions = [defaultAreaTextureRenderContribution, defaultAreaBackgroundRenderContribution], this.init(graphicRenderContributions);
21817
21881
  }
21818
21882
  drawLinearAreaHighPerformance(area, context, fill, stroke, fillOpacity, strokeOpacity, offsetX, offsetY, areaAttribute, drawContext, params, fillCb, strokeCb) {
21819
21883
  var _a, _b, _c;
@@ -22056,8 +22120,8 @@
22056
22120
  };
22057
22121
  };
22058
22122
  let DefaultCanvasPathRender = class extends BaseRender {
22059
- constructor(pathRenderContribitions) {
22060
- super(), this.pathRenderContribitions = pathRenderContribitions, this.numberType = PATH_NUMBER_TYPE, this.builtinContributions = [defaultPathBackgroundRenderContribution, defaultPathTextureRenderContribution], this.init(pathRenderContribitions);
22123
+ constructor(graphicRenderContributions) {
22124
+ super(), this.graphicRenderContributions = graphicRenderContributions, this.numberType = PATH_NUMBER_TYPE, this.builtinContributions = [defaultPathBackgroundRenderContribution, defaultPathTextureRenderContribution], this.init(graphicRenderContributions);
22061
22125
  }
22062
22126
  drawShape(path, context, x, y, drawContext, params, fillCb, strokeCb) {
22063
22127
  var _a, _b, _c;
@@ -22112,8 +22176,8 @@
22112
22176
  };
22113
22177
  };
22114
22178
  let DefaultCanvasRectRender = class extends BaseRender {
22115
- constructor(rectRenderContribitions) {
22116
- super(), this.rectRenderContribitions = rectRenderContribitions, this.type = "rect", this.numberType = RECT_NUMBER_TYPE, this.builtinContributions = [defaultRectRenderContribution, defaultRectBackgroundRenderContribution, defaultRectTextureRenderContribution], this.init(rectRenderContribitions);
22179
+ constructor(graphicRenderContributions) {
22180
+ super(), this.graphicRenderContributions = graphicRenderContributions, this.type = "rect", this.numberType = RECT_NUMBER_TYPE, this.builtinContributions = [defaultRectRenderContribution, defaultRectBackgroundRenderContribution, defaultRectTextureRenderContribution], this.init(graphicRenderContributions);
22117
22181
  }
22118
22182
  drawShape(rect, context, x, y, drawContext, params, fillCb, strokeCb) {
22119
22183
  var _a;
@@ -22184,8 +22248,8 @@
22184
22248
  };
22185
22249
  };
22186
22250
  let DefaultCanvasSymbolRender = class extends BaseRender {
22187
- constructor(symbolRenderContribitions) {
22188
- super(), this.symbolRenderContribitions = symbolRenderContribitions, this.numberType = SYMBOL_NUMBER_TYPE, this.builtinContributions = [defaultSymbolRenderContribution, defaultSymbolBackgroundRenderContribution, defaultSymbolTextureRenderContribution, defaultSymbolClipRangeStrokeRenderContribution], this.init(symbolRenderContribitions);
22251
+ constructor(graphicRenderContributions) {
22252
+ super(), this.graphicRenderContributions = graphicRenderContributions, this.numberType = SYMBOL_NUMBER_TYPE, this.builtinContributions = [defaultSymbolRenderContribution, defaultSymbolBackgroundRenderContribution, defaultSymbolTextureRenderContribution, defaultSymbolClipRangeStrokeRenderContribution], this.init(graphicRenderContributions);
22189
22253
  }
22190
22254
  drawShape(symbol, context, x, y, drawContext, params, fillCb, strokeCb) {
22191
22255
  var _a;
@@ -22356,8 +22420,8 @@
22356
22420
  };
22357
22421
  };
22358
22422
  let DefaultCanvasTextRender = class extends BaseRender {
22359
- constructor(textRenderContribitions) {
22360
- super(), this.textRenderContribitions = textRenderContribitions, this.numberType = TEXT_NUMBER_TYPE, this.builtinContributions = [defaultTextBackgroundRenderContribution], this.init(textRenderContribitions);
22423
+ constructor(graphicRenderContributions) {
22424
+ super(), this.graphicRenderContributions = graphicRenderContributions, this.numberType = TEXT_NUMBER_TYPE, this.builtinContributions = [defaultTextBackgroundRenderContribution], this.init(graphicRenderContributions);
22361
22425
  }
22362
22426
  drawShape(text, context, x, y, drawContext, params, fillCb, strokeCb) {
22363
22427
  var _a, _b, _c;
@@ -22561,8 +22625,8 @@
22561
22625
  };
22562
22626
  };
22563
22627
  let DefaultCanvasPolygonRender = class extends BaseRender {
22564
- constructor(polygonRenderContribitions) {
22565
- super(), this.polygonRenderContribitions = polygonRenderContribitions, this.numberType = POLYGON_NUMBER_TYPE, this.builtinContributions = [defaultPolygonBackgroundRenderContribution, defaultPolygonTextureRenderContribution], this.init(polygonRenderContribitions);
22628
+ constructor(graphicRenderContributions) {
22629
+ super(), this.graphicRenderContributions = graphicRenderContributions, this.numberType = POLYGON_NUMBER_TYPE, this.builtinContributions = [defaultPolygonBackgroundRenderContribution, defaultPolygonTextureRenderContribution], this.init(graphicRenderContributions);
22566
22630
  }
22567
22631
  drawShape(polygon, context, x, y, drawContext, params, fillCb, strokeCb) {
22568
22632
  const polygonAttribute = getTheme$1(polygon, null == params ? void 0 : params.theme).polygon,
@@ -22617,6 +22681,9 @@
22617
22681
  constructor(groupRenderContribitions) {
22618
22682
  this.groupRenderContribitions = groupRenderContribitions, this.numberType = GROUP_NUMBER_TYPE;
22619
22683
  }
22684
+ reInit() {
22685
+ this._groupRenderContribitions = this.groupRenderContribitions.getContributions() || [], this._groupRenderContribitions.push(defaultGroupBackgroundRenderContribution);
22686
+ }
22620
22687
  drawShape(group, context, x, y, drawContext, params, fillCb, strokeCb) {
22621
22688
  const groupAttribute = getTheme$1(group, null == params ? void 0 : params.theme).group,
22622
22689
  {
@@ -22747,8 +22814,8 @@
22747
22814
  };
22748
22815
  const repeatStr = ["", "repeat-x", "repeat-y", "repeat"];
22749
22816
  let DefaultCanvasImageRender = class extends BaseRender {
22750
- constructor(imageRenderContribitions) {
22751
- super(), this.imageRenderContribitions = imageRenderContribitions, this.numberType = IMAGE_NUMBER_TYPE, this.builtinContributions = [defaultImageRenderContribution, defaultImageBackgroundRenderContribution], this.init(imageRenderContribitions);
22817
+ constructor(graphicRenderContributions) {
22818
+ super(), this.graphicRenderContributions = graphicRenderContributions, this.numberType = IMAGE_NUMBER_TYPE, this.builtinContributions = [defaultImageRenderContribution, defaultImageBackgroundRenderContribution], this.init(graphicRenderContributions);
22752
22819
  }
22753
22820
  drawShape(image, context, x, y, drawContext, params, fillCb, strokeCb) {
22754
22821
  const imageAttribute = getTheme$1(image).image,
@@ -23075,6 +23142,9 @@
23075
23142
  afterDraw(params) {
23076
23143
  this.drawContribution.afterDraw && this.drawContribution.afterDraw(this, Object.assign({}, this.drawParams));
23077
23144
  }
23145
+ reInit() {
23146
+ this.drawContribution.reInit();
23147
+ }
23078
23148
  render(groups, params) {
23079
23149
  this.renderTreeRoots = groups, this.drawParams = params;
23080
23150
  const updateBounds = params.updateBounds;
@@ -23476,6 +23546,11 @@
23476
23546
  constructor(contributions, drawItemInterceptorContributions) {
23477
23547
  this.contributions = contributions, this.drawItemInterceptorContributions = drawItemInterceptorContributions, this.currentRenderMap = new Map(), this.defaultRenderMap = new Map(), this.styleRenderMap = new Map(), this.dirtyBounds = new Bounds(), this.backupDirtyBounds = new Bounds(), this.global = application.global, this.layerService = application.layerService, isArray$1(this.contributions) || (this.contributions = [this.contributions]), this.init();
23478
23548
  }
23549
+ reInit() {
23550
+ this.init(), this.contributions.forEach(item => {
23551
+ item.reInit();
23552
+ });
23553
+ }
23479
23554
  init() {
23480
23555
  this.contributions.forEach(item => {
23481
23556
  if (item.style) {
@@ -24595,6 +24670,9 @@
24595
24670
  getPickerService() {
24596
24671
  return this.pickerService || (this.pickerService = container.get(PickerService)), this.pickerService;
24597
24672
  }
24673
+ reInit() {
24674
+ this.renderService.reInit(), this.pickerService.reInit();
24675
+ }
24598
24676
  }
24599
24677
 
24600
24678
  function createStage(params) {
@@ -25192,6 +25270,9 @@
25192
25270
  constructor(pickItemInterceptorContributions, pickServiceInterceptorContributions) {
25193
25271
  this.pickItemInterceptorContributions = pickItemInterceptorContributions, this.pickServiceInterceptorContributions = pickServiceInterceptorContributions, this.type = "default", this.global = application.global;
25194
25272
  }
25273
+ reInit() {
25274
+ this._init();
25275
+ }
25195
25276
  _init() {
25196
25277
  this.InterceptorContributions = this.pickItemInterceptorContributions.getContributions().sort((a, b) => a.order - b.order), this.pickerServiceInterceptorContributions = this.pickServiceInterceptorContributions.getContributions().sort((a, b) => a.order - b.order);
25197
25278
  }
@@ -25360,6 +25441,7 @@
25360
25441
  constructor() {
25361
25442
  this.numberType = GLYPH_NUMBER_TYPE;
25362
25443
  }
25444
+ reInit() {}
25363
25445
  drawShape(glyph, context, x, y, drawContext, params, fillCb, strokeCb) {
25364
25446
  drawContext.drawContribution && glyph.getSubGraphic().forEach(item => {
25365
25447
  const renderer = drawContext.drawContribution.getRenderContribution(item);
@@ -26584,6 +26666,18 @@
26584
26666
  const changeEvent = new CustomEvent(eventName, details);
26585
26667
  changeEvent.manager = null === (_a = this.stage) || void 0 === _a ? void 0 : _a.eventSystem.manager, this.dispatchEvent(changeEvent);
26586
26668
  }
26669
+ eventPosToStagePos(e) {
26670
+ var _a, _b;
26671
+ const result = {
26672
+ x: 0,
26673
+ y: 0
26674
+ },
26675
+ stagePoints = null !== (_b = null === (_a = this.stage) || void 0 === _a ? void 0 : _a.eventPointTransform(e)) && void 0 !== _b ? _b : {
26676
+ x: 0,
26677
+ y: 0
26678
+ };
26679
+ return this.globalTransMatrix.transformPoint(stagePoints, result), result;
26680
+ }
26587
26681
  }
26588
26682
 
26589
26683
  const MathPickerContribution = Symbol.for("MathPickerContribution");
@@ -35348,7 +35442,7 @@
35348
35442
  const MIN_TICK_GAP = 12;
35349
35443
  const calculateFlushPos = (basePosition, size, rangePosition, otherEnd) => rangePosition < basePosition ? Math.max(basePosition - size / 2, rangePosition) : rangePosition > basePosition ? Math.min(basePosition - size / 2, rangePosition - size) : rangePosition < otherEnd ? rangePosition : rangePosition - size;
35350
35444
  const getCartesianLabelBounds = (scale, domain, op) => {
35351
- var _a;
35445
+ var _a, _b, _c;
35352
35446
  const {
35353
35447
  labelStyle: labelStyle,
35354
35448
  axisOrientType: axisOrientType,
@@ -35364,27 +35458,32 @@
35364
35458
  scaleY = 0;
35365
35459
  isHorizontal || (isVertical ? (scaleX = 0, scaleY = 1) : startAngle && (scaleX = Math.cos(startAngle), scaleY = -Math.sin(startAngle)));
35366
35460
  const textMeasure = initTextMeasure$1(labelStyle),
35367
- range = scale.range(),
35368
- labelBoundsList = domain.map((v, i) => {
35369
- var _a, _b;
35370
- const str = labelFormatter ? labelFormatter(v) : `${v}`,
35371
- {
35372
- width: width,
35373
- height: height
35374
- } = textMeasure.quickMeasure(str),
35375
- textWidth = Math.max(width, 12),
35376
- textHeight = Math.max(height, 12),
35377
- pos = scale.scale(v),
35378
- baseTextX = scaleX * pos,
35379
- baseTextY = scaleY * pos;
35380
- let align,
35381
- baseline,
35382
- textX = baseTextX,
35383
- textY = baseTextY;
35384
- labelFlush && isHorizontal && 0 === i ? textX = calculateFlushPos(baseTextX, textWidth, range[0], range[range.length - 1]) : labelFlush && isHorizontal && i === domain.length - 1 ? textX = calculateFlushPos(baseTextX, textWidth, range[range.length - 1], range[0]) : align = null !== (_a = labelStyle.textAlign) && void 0 !== _a ? _a : "center", "right" === align ? textX -= textWidth : "center" === align && (textX -= textWidth / 2), labelFlush && isVertical && 0 === i ? textY = calculateFlushPos(baseTextY, textHeight, range[0], range[range.length - 1]) : labelFlush && isVertical && i === domain.length - 1 ? textY = calculateFlushPos(baseTextY, textHeight, range[range.length - 1], range[0]) : baseline = null !== (_b = labelStyle.textBaseline) && void 0 !== _b ? _b : "middle", "bottom" === baseline ? textY -= textHeight : "middle" === baseline && (textY -= textHeight / 2);
35385
- const bounds = new AABBBounds().set(textX, textY, textX + textWidth, textY + textHeight);
35386
- return labelAngle && bounds.rotate(labelAngle, baseTextX, baseTextY), bounds;
35387
- });
35461
+ range = scale.range();
35462
+ let labelBoundsList = [];
35463
+ for (let i = 0; i < domain.length; i++) {
35464
+ const v = domain[i],
35465
+ str = labelFormatter ? labelFormatter(v) : `${v}`;
35466
+ if (isPlainObject$1(str)) {
35467
+ labelBoundsList = void 0;
35468
+ break;
35469
+ }
35470
+ const {
35471
+ width: width,
35472
+ height: height
35473
+ } = textMeasure.quickMeasure(str),
35474
+ textWidth = Math.max(width, 12),
35475
+ textHeight = Math.max(height, 12),
35476
+ pos = scale.scale(v),
35477
+ baseTextX = scaleX * pos,
35478
+ baseTextY = scaleY * pos;
35479
+ let align,
35480
+ baseline,
35481
+ textX = baseTextX,
35482
+ textY = baseTextY;
35483
+ labelFlush && isHorizontal && 0 === i ? textX = calculateFlushPos(baseTextX, textWidth, range[0], range[range.length - 1]) : labelFlush && isHorizontal && i === domain.length - 1 ? textX = calculateFlushPos(baseTextX, textWidth, range[range.length - 1], range[0]) : align = null !== (_b = labelStyle.textAlign) && void 0 !== _b ? _b : "center", "right" === align ? textX -= textWidth : "center" === align && (textX -= textWidth / 2), labelFlush && isVertical && 0 === i ? textY = calculateFlushPos(baseTextY, textHeight, range[0], range[range.length - 1]) : labelFlush && isVertical && i === domain.length - 1 ? textY = calculateFlushPos(baseTextY, textHeight, range[range.length - 1], range[0]) : baseline = null !== (_c = labelStyle.textBaseline) && void 0 !== _c ? _c : "middle", "bottom" === baseline ? textY -= textHeight : "middle" === baseline && (textY -= textHeight / 2);
35484
+ const bounds = new AABBBounds().set(textX, textY, textX + textWidth, textY + textHeight);
35485
+ labelAngle && bounds.rotate(labelAngle, baseTextX, baseTextY), labelBoundsList.push(bounds);
35486
+ }
35388
35487
  return labelBoundsList;
35389
35488
  };
35390
35489
  const isAxisHorizontal = axisOrientType => ["bottom", "top", "z"].includes(axisOrientType);
@@ -36433,7 +36532,7 @@
36433
36532
  }
36434
36533
  }
36435
36534
  const continuousTicks = (scale, op) => {
36436
- var _a, _b;
36535
+ var _a, _b, _c, _d;
36437
36536
  if (!isContinuous(scale.type)) return convertDomainToTickData(scale.domain());
36438
36537
  const range = scale.range(),
36439
36538
  rangeSize = Math.abs(range[range.length - 1] - range[0]);
@@ -36485,23 +36584,25 @@
36485
36584
  step = Math.floor(scaleTicks.length * MIN_FONT_SIZE / rangeSize);
36486
36585
  scaleTicks.forEach((tick, index) => {
36487
36586
  index % step != 0 && index !== scaleTicks.length - 1 || samplingScaleTicks.push(tick);
36488
- }), items = getCartesianLabelBounds(scale, samplingScaleTicks, op).map((bounds, i) => ({
36587
+ }), items = null === (_c = getCartesianLabelBounds(scale, samplingScaleTicks, op)) || void 0 === _c ? void 0 : _c.map((bounds, i) => ({
36489
36588
  AABBBounds: bounds,
36490
36589
  value: samplingScaleTicks[i]
36491
36590
  }));
36492
- } else items = getCartesianLabelBounds(scale, scaleTicks, op).map((bounds, i) => ({
36591
+ } else items = null === (_d = getCartesianLabelBounds(scale, scaleTicks, op)) || void 0 === _d ? void 0 : _d.map((bounds, i) => ({
36493
36592
  AABBBounds: bounds,
36494
36593
  value: scaleTicks[i]
36495
36594
  }));
36496
- const firstSourceItem = items[0],
36497
- lastSourceItem = last(items),
36498
- samplingMethod = breakData && breakData() ? methods$1.greedy : methods$1.parity;
36499
- for (; items.length >= 3 && hasOverlap$1(items, labelGap);) items = samplingMethod(items, labelGap);
36500
- const checkFirst = op.labelFirstVisible;
36501
- let checkLast = op.labelLastVisible;
36502
- textIntersect(firstSourceItem, lastSourceItem, labelGap) && items.includes(lastSourceItem) && items.length > 1 && checkFirst && checkLast && (items.splice(items.indexOf(lastSourceItem), 1), checkLast = !1), forceItemVisible(firstSourceItem, items, checkFirst, item => textIntersect(item, firstSourceItem, labelGap)), forceItemVisible(lastSourceItem, items, checkLast, item => textIntersect(item, lastSourceItem, labelGap) || !(!checkFirst || item === firstSourceItem) && textIntersect(item, firstSourceItem, labelGap), !0);
36503
- const ticks = items.map(item => item.value);
36504
- ticks.length < 3 && labelFlush && (ticks.length > 1 && ticks.pop(), last(ticks) !== last(scaleTicks) && ticks.push(last(scaleTicks))), scaleTicks = ticks;
36595
+ if (items) {
36596
+ const firstSourceItem = items[0],
36597
+ lastSourceItem = last(items),
36598
+ samplingMethod = breakData && breakData() ? methods$1.greedy : methods$1.parity;
36599
+ for (; items.length >= 3 && hasOverlap$1(items, labelGap);) items = samplingMethod(items, labelGap);
36600
+ const checkFirst = op.labelFirstVisible;
36601
+ let checkLast = op.labelLastVisible;
36602
+ textIntersect(firstSourceItem, lastSourceItem, labelGap) && items.includes(lastSourceItem) && items.length > 1 && checkFirst && checkLast && (items.splice(items.indexOf(lastSourceItem), 1), checkLast = !1), forceItemVisible(firstSourceItem, items, checkFirst, item => textIntersect(item, firstSourceItem, labelGap)), forceItemVisible(lastSourceItem, items, checkLast, item => textIntersect(item, lastSourceItem, labelGap) || !(!checkFirst || item === firstSourceItem) && textIntersect(item, firstSourceItem, labelGap), !0);
36603
+ const ticks = items.map(item => item.value);
36604
+ ticks.length < 3 && labelFlush && (ticks.length > 1 && ticks.pop(), last(ticks) !== last(scaleTicks) && ticks.push(last(scaleTicks))), scaleTicks = ticks;
36605
+ }
36505
36606
  }
36506
36607
  return convertDomainToTickData(scaleTicks);
36507
36608
  };
@@ -36515,7 +36616,10 @@
36515
36616
  }
36516
36617
  };
36517
36618
 
36518
- const getOneDimensionalLabelBounds = (scale, domain, op, isHorizontal) => getCartesianLabelBounds(scale, domain, op).map(bounds => isHorizontal ? [bounds.x1, bounds.x2, bounds.width()] : [bounds.y1, bounds.y2, bounds.height()]),
36619
+ const getOneDimensionalLabelBounds = (scale, domain, op, isHorizontal) => {
36620
+ const labelBoundsList = getCartesianLabelBounds(scale, domain, op);
36621
+ return labelBoundsList && labelBoundsList.map(bounds => isHorizontal ? [bounds.x1, bounds.x2, bounds.width()] : [bounds.y1, bounds.y2, bounds.height()]);
36622
+ },
36519
36623
  boundsOverlap = function (prevBounds, nextBounds) {
36520
36624
  let gap = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 0;
36521
36625
  return Math.max(prevBounds[0], nextBounds[0]) - gap / 2 <= Math.min(prevBounds[1], nextBounds[1]) + gap / 2;
@@ -36549,23 +36653,27 @@
36549
36653
  rangeStart = minInArray(range),
36550
36654
  rangeEnd = maxInArray(range);
36551
36655
  if (domain.length <= rangeSize / fontSize) {
36552
- const incrementUnit = (rangeEnd - rangeStart) / domain.length,
36553
- labelBoundsList = getOneDimensionalLabelBounds(scale, domain, op, isHorizontal),
36554
- minBoundsLength = Math.min(...labelBoundsList.map(bounds => bounds[2])),
36555
- stepResult = getStep$1(domain, labelBoundsList, labelGap, op.labelLastVisible, Math.floor(minBoundsLength / incrementUnit), !1);
36556
- scaleTicks = scale.stepTicks(stepResult.step), op.labelLastVisible && (stepResult.delCount && (scaleTicks = scaleTicks.slice(0, scaleTicks.length - stepResult.delCount)), scaleTicks.push(domain[domain.length - 1]));
36656
+ const labelBoundsList = getOneDimensionalLabelBounds(scale, domain, op, isHorizontal);
36657
+ if (labelBoundsList) {
36658
+ const minBoundsLength = Math.min(...labelBoundsList.map(bounds => bounds[2])),
36659
+ incrementUnit = (rangeEnd - rangeStart) / domain.length,
36660
+ stepResult = getStep$1(domain, labelBoundsList, labelGap, op.labelLastVisible, Math.floor(minBoundsLength / incrementUnit), !1);
36661
+ scaleTicks = scale.stepTicks(stepResult.step), op.labelLastVisible && (stepResult.delCount && (scaleTicks = scaleTicks.slice(0, scaleTicks.length - stepResult.delCount)), scaleTicks.push(domain[domain.length - 1]));
36662
+ }
36557
36663
  } else {
36558
36664
  const tempDomain = [domain[0], domain[Math.floor(domain.length / 2)], domain[domain.length - 1]],
36559
36665
  tempList = getOneDimensionalLabelBounds(scale, tempDomain, op, isHorizontal);
36560
- let maxBounds = null;
36561
- tempList.forEach(current => {
36562
- maxBounds ? maxBounds[2] < current[2] && (maxBounds = current) : maxBounds = current;
36563
- });
36564
- const step = rangeEnd - rangeStart - labelGap > 0 ? Math.ceil(domain.length * (labelGap + maxBounds[2]) / (rangeEnd - rangeStart - labelGap)) : domain.length - 1;
36565
- scaleTicks = scale.stepTicks(step), !op.labelLastVisible || scaleTicks.length && scaleTicks[scaleTicks.length - 1] === domain[domain.length - 1] || (scaleTicks.length && Math.abs(scale.scale(scaleTicks[scaleTicks.length - 1]) - scale.scale(domain[domain.length - 1])) < maxBounds[2] && (scaleTicks = scaleTicks.slice(0, -1)), scaleTicks.push(domain[domain.length - 1]));
36666
+ if (tempList) {
36667
+ let maxBounds = null;
36668
+ tempList.forEach(current => {
36669
+ maxBounds ? maxBounds[2] < current[2] && (maxBounds = current) : maxBounds = current;
36670
+ });
36671
+ const step = rangeEnd - rangeStart - labelGap > 0 ? Math.ceil(domain.length * (labelGap + maxBounds[2]) / (rangeEnd - rangeStart - labelGap)) : domain.length - 1;
36672
+ scaleTicks = scale.stepTicks(step), !op.labelLastVisible || scaleTicks.length && scaleTicks[scaleTicks.length - 1] === domain[domain.length - 1] || (scaleTicks.length && Math.abs(scale.scale(scaleTicks[scaleTicks.length - 1]) - scale.scale(domain[domain.length - 1])) < maxBounds[2] && (scaleTicks = scaleTicks.slice(0, -1)), scaleTicks.push(domain[domain.length - 1]));
36673
+ }
36566
36674
  }
36567
- } else scaleTicks = scale.domain();
36568
- return convertDomainToTickData(scaleTicks);
36675
+ }
36676
+ return isNil$1(scaleTicks) && (scaleTicks = scale.domain()), convertDomainToTickData(scaleTicks);
36569
36677
  };
36570
36678
  const getStep$1 = (domain, labelBoundsList, labelGap, labelLastVisible, defaultStep, areAllBoundsSame) => {
36571
36679
  let resultDelCount = 0,
@@ -39531,13 +39639,6 @@
39531
39639
  end: end
39532
39640
  }));
39533
39641
  }
39534
- eventPosToStagePos(e) {
39535
- var _a, _b;
39536
- return null !== (_b = null === (_a = this.stage) || void 0 === _a ? void 0 : _a.eventPointTransform(e)) && void 0 !== _b ? _b : {
39537
- x: 0,
39538
- y: 0
39539
- };
39540
- }
39541
39642
  _clearDragEvents() {
39542
39643
  const evtTarget = "browser" === vglobal.env ? vglobal : this.stage,
39543
39644
  triggers = getEndTriggersOfDrag();
@@ -39696,7 +39797,13 @@
39696
39797
  } = this.attribute.startTextStyle;
39697
39798
  if (new Bounds().set(x1, y1, x2, y2).intersects(endTextBounds)) {
39698
39799
  const direction = "bottom" === this.attribute.orient || "right" === this.attribute.orient ? -1 : 1;
39699
- this._isHorizontal ? this._startText.setAttribute("dy", startTextDy + direction * Math.abs(endTextBounds.y1 - endTextBounds.y2)) : this._startText.setAttribute("dx", startTextDx + direction * Math.abs(endTextBounds.x1 - endTextBounds.x2));
39800
+ if (this._isHorizontal) {
39801
+ const boundsYDiff = Math.abs(endTextBounds.y1 - endTextBounds.y2);
39802
+ this._startText.setAttribute("dy", startTextDy + direction * (Number.isFinite(boundsYDiff) ? boundsYDiff : 0));
39803
+ } else {
39804
+ const boundsXDiff = Math.abs(endTextBounds.x1 - endTextBounds.x2);
39805
+ this._startText.setAttribute("dx", startTextDx + direction * (Number.isFinite(boundsXDiff) ? boundsXDiff : 0));
39806
+ }
39700
39807
  } else this._isHorizontal ? this._startText.setAttribute("dy", startTextDy) : this._startText.setAttribute("dx", startTextDx);
39701
39808
  }
39702
39809
  getLayoutAttrFromConfig() {
@@ -44891,8 +44998,7 @@
44891
44998
  loadBrushComponent();
44892
44999
  let Brush$1 = class Brush extends AbstractComponent {
44893
45000
  constructor(attributes, options) {
44894
- super((null == options ? void 0 : options.skipDefault) ? attributes : merge$1({}, Brush.defaultAttributes, attributes)), this.name = "brush", this._activeDrawState = !1, this._cacheDrawPoints = [], this._activeMoveState = !1, this._operatingMaskMoveDx = 0, this._operatingMaskMoveDy = 0, this._operatingMaskMoveRangeX = [-1 / 0, 1 / 0], this._operatingMaskMoveRangeY = [-1 / 0, 1 / 0], this._brushMaskAABBBoundsDict = {}, this._firstUpdate = !0, this._onBrushStart = e => {
44895
- if (this._outOfInteractiveRange(e)) return void (this._isEmptyMask() || (this._clearMask(), this._dispatchBrushEvent(IOperateType.brushClear, e)));
45001
+ super((null == options ? void 0 : options.skipDefault) ? attributes : merge$1({}, Brush.defaultAttributes, attributes)), this.name = "brush", this._activeBrushState = !1, this._activeDrawState = !1, this._cacheDrawPoints = [], this._activeMoveState = !1, this._operatingMaskMoveDx = 0, this._operatingMaskMoveDy = 0, this._operatingMaskMoveRangeX = [-1 / 0, 1 / 0], this._operatingMaskMoveRangeY = [-1 / 0, 1 / 0], this._brushMaskAABBBoundsDict = {}, this._firstUpdate = !0, this._onBrushStart = e => {
44896
45002
  const {
44897
45003
  updateTrigger = DEFAULT_BRUSH_ATTRIBUTES.updateTrigger,
44898
45004
  endTrigger = DEFAULT_BRUSH_ATTRIBUTES.endTrigger,
@@ -44920,7 +45026,7 @@
44920
45026
  brushMode: brushMode
44921
45027
  } = this.attribute,
44922
45028
  pos = this.eventPosToStagePos(e);
44923
- this._cacheDrawPoints.push(pos), "single" === brushMode && this._clearMask(), this._addBrushMask(), this._dispatchBrushEvent(IOperateType.drawStart, e), 1 === Object.keys(this._brushMaskAABBBoundsDict).length && this._dispatchBrushEvent(IOperateType.brushActive, e);
45029
+ this._cacheDrawPoints.push(pos), "single" === brushMode && this._clearMask(), this._addBrushMask(), this._dispatchBrushEvent(IOperateType.drawStart, e), this._activeBrushState = !1;
44924
45030
  }
44925
45031
  _initMove(e) {
44926
45032
  var _a, _b;
@@ -44950,7 +45056,8 @@
44950
45056
  var _a;
44951
45057
  const pos = this.eventPosToStagePos(e),
44952
45058
  {
44953
- brushType: brushType
45059
+ brushType: brushType,
45060
+ sizeThreshold = DEFAULT_SIZE_THRESHOLD
44954
45061
  } = this.attribute,
44955
45062
  cacheLength = this._cacheDrawPoints.length;
44956
45063
  if (cacheLength > 0) {
@@ -44959,7 +45066,16 @@
44959
45066
  }
44960
45067
  "polygon" === brushType || cacheLength <= 1 ? this._cacheDrawPoints.push(pos) : this._cacheDrawPoints[cacheLength - 1] = pos;
44961
45068
  const maskPoints = this._computeMaskPoints();
44962
- this._operatingMask.setAttribute("points", maskPoints), this._dispatchBrushEvent(IOperateType.drawing, e);
45069
+ this._operatingMask.setAttribute("points", maskPoints);
45070
+ const {
45071
+ x: x1,
45072
+ y: y1
45073
+ } = this._startPos,
45074
+ {
45075
+ x: x2,
45076
+ y: y2
45077
+ } = this.eventPosToStagePos(e);
45078
+ (Math.abs(x2 - x1) > sizeThreshold || Math.abs(y1 - y2) > sizeThreshold) && (1 !== Object.keys(this._brushMaskAABBBoundsDict).length || this._activeBrushState ? this._dispatchBrushEvent(IOperateType.drawing, e) : (this._activeBrushState = !0, this._dispatchBrushEvent(IOperateType.brushActive, e)));
44963
45079
  }
44964
45080
  _moving(e) {
44965
45081
  const startPos = this._cacheMovePoint,
@@ -45099,9 +45215,6 @@
45099
45215
  pos = this.eventPosToStagePos(e);
45100
45216
  return pos.x > maxX || pos.x < minX || pos.y > maxY || pos.y < minY;
45101
45217
  }
45102
- eventPosToStagePos(e) {
45103
- return this.stage.eventPointTransform(e);
45104
- }
45105
45218
  _dispatchBrushEvent(operateType, e) {
45106
45219
  this._dispatchEvent(operateType, {
45107
45220
  operateMask: this._operatingMask,
@@ -45110,7 +45223,7 @@
45110
45223
  });
45111
45224
  }
45112
45225
  _clearMask() {
45113
- this._brushMaskAABBBoundsDict = {}, this._container.incrementalClearChild(), this._operatingMask = null;
45226
+ this._brushMaskAABBBoundsDict = {}, this._container.removeAllChild(), this._operatingMask = null;
45114
45227
  }
45115
45228
  _isEmptyMask() {
45116
45229
  return isEmpty(this._brushMaskAABBBoundsDict) || Object.keys(this._brushMaskAABBBoundsDict).every(key => this._brushMaskAABBBoundsDict[key].empty());
@@ -64123,7 +64236,7 @@ C0.3-1.4,0.3-1.4,0.3-1.4z;`;
64123
64236
  };
64124
64237
  registerVChartCore();
64125
64238
 
64126
- const version = "1.13.11";
64239
+ const version = "1.13.12";
64127
64240
 
64128
64241
  const addVChartProperty = (data, op) => {
64129
64242
  const context = op.beforeCall();
@@ -95176,7 +95289,7 @@ C0.3-1.4,0.3-1.4,0.3-1.4z;`;
95176
95289
  }
95177
95290
  }
95178
95291
  _parseField(field, fieldName) {
95179
- var _a, _b;
95292
+ var _a, _b, _c;
95180
95293
  const hair = {};
95181
95294
  const { line = {}, label = {}, visible } = field;
95182
95295
  hair.visible = visible;
@@ -95187,7 +95300,7 @@ C0.3-1.4,0.3-1.4,0.3-1.4z;`;
95187
95300
  else {
95188
95301
  const style = line.style || {};
95189
95302
  const { stroke, fill, lineWidth } = style;
95190
- const _c = style, { strokeOpacity, fillOpacity, opacity } = _c, restStyle = __rest$e(_c, ["strokeOpacity", "fillOpacity", "opacity"]);
95303
+ const _d = style, { strokeOpacity, fillOpacity, opacity } = _d, restStyle = __rest$e(_d, ["strokeOpacity", "fillOpacity", "opacity"]);
95191
95304
  const isLineType = hair.type === 'line';
95192
95305
  let finalOpacity = isLineType ? strokeOpacity : fillOpacity;
95193
95306
  if (isNumber$1(opacity)) {
@@ -95215,8 +95328,9 @@ C0.3-1.4,0.3-1.4,0.3-1.4z;`;
95215
95328
  }
95216
95329
  if (!!label.visible) {
95217
95330
  const labelBackground = label.labelBackground || {};
95331
+ const syncAxisLabelAngle = (_c = label.syncAxisLabelAngle) !== null && _c !== void 0 ? _c : false;
95218
95332
  const labelStyle = label.style || {};
95219
- const _d = labelBackground.style || {}, { fill: rectFill = 'rgba(47, 59, 82, 0.9)', stroke: rectStroke, outerBorder } = _d, rectStyle = __rest$e(_d, ["fill", "stroke", "outerBorder"]);
95333
+ const _e = labelBackground.style || {}, { fill: rectFill = 'rgba(47, 59, 82, 0.9)', stroke: rectStroke, outerBorder } = _e, rectStyle = __rest$e(_e, ["fill", "stroke", "outerBorder"]);
95220
95334
  hair.label = {
95221
95335
  visible: true,
95222
95336
  formatMethod: label.formatMethod,
@@ -95224,6 +95338,7 @@ C0.3-1.4,0.3-1.4,0.3-1.4z;`;
95224
95338
  minWidth: labelBackground.minWidth,
95225
95339
  maxWidth: labelBackground.maxWidth,
95226
95340
  padding: labelBackground.padding,
95341
+ syncAxisLabelAngle,
95227
95342
  textStyle: Object.assign(Object.assign({ fontSize: 14, pickable: false }, labelStyle), { fill: labelStyle.fill || '#fff', stroke: get$1(labelStyle, 'stroke') }),
95228
95343
  panel: (isBoolean$1(labelBackground.visible) ? labelBackground.visible : !!labelBackground)
95229
95344
  ? Object.assign({ visible: true, pickable: false, fill: rectFill, stroke: rectStroke, outerBorder: Object.assign({ stroke: rectFill, distance: 0, lineWidth: 3 }, outerBorder) }, rectStyle) : { visible: false },
@@ -95316,9 +95431,11 @@ C0.3-1.4,0.3-1.4,0.3-1.4z;`;
95316
95431
  layoutStartPoint = { x: 0, y: 0 };
95317
95432
  }
95318
95433
  Object.keys(stateByField).forEach(field => {
95434
+ var _a, _b, _c, _d, _e;
95319
95435
  const { currentValue, cacheInfo, labelsComp, attributes, coordKey } = stateByField[field];
95320
95436
  let axis = null;
95321
95437
  let coord = 0;
95438
+ let axisLabel = null;
95322
95439
  if (currentValue.size) {
95323
95440
  const item = Array.from(currentValue.values())[0];
95324
95441
  coord =
@@ -95326,6 +95443,8 @@ C0.3-1.4,0.3-1.4,0.3-1.4z;`;
95326
95443
  item.axis.getLayoutStartPoint()[coordKey] -
95327
95444
  layoutStartPoint[coordKey];
95328
95445
  axis = item.axis;
95446
+ axisLabel = (_e = (_d = (_c = (_b = (_a = axis
95447
+ .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];
95329
95448
  }
95330
95449
  const isVisible = !!currentValue.size && Number.isFinite(coord) && !Number.isNaN(coord);
95331
95450
  const useCache = enableRemain && !isVisible && isValid$1(cacheInfo);
@@ -95343,7 +95462,8 @@ C0.3-1.4,0.3-1.4,0.3-1.4z;`;
95343
95462
  }, {})
95344
95463
  : null,
95345
95464
  visible: isVisible,
95346
- axis
95465
+ axis,
95466
+ axisLabel: axisLabel
95347
95467
  };
95348
95468
  if (newCacheInfo) {
95349
95469
  newCacheInfo._isCache = useCache;
@@ -95352,7 +95472,7 @@ C0.3-1.4,0.3-1.4,0.3-1.4z;`;
95352
95472
  let offsetSize = 0;
95353
95473
  if (attributes) {
95354
95474
  currentValue.forEach(({ axis, datum: value = '' }) => {
95355
- var _a;
95475
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
95356
95476
  let niceLabelFormatter = null;
95357
95477
  const scale = axis.getScale();
95358
95478
  if (isDiscrete(scale.type)) {
@@ -95381,36 +95501,37 @@ C0.3-1.4,0.3-1.4,0.3-1.4z;`;
95381
95501
  if (newCacheInfo && ((_a = attributes.label) === null || _a === void 0 ? void 0 : _a.visible) && !useCache) {
95382
95502
  const labelOffset = getAxisLabelOffset(axis.getSpec());
95383
95503
  const axisOrient = axis.getOrient();
95504
+ const syncAxisLabelAngle = (_b = attributes.label) === null || _b === void 0 ? void 0 : _b.syncAxisLabelAngle;
95384
95505
  if (newCacheInfo.labels[axisOrient]) {
95385
95506
  newCacheInfo.labels[axisOrient].visible = true;
95386
95507
  newCacheInfo.labels[axisOrient].text = value;
95387
95508
  if (axisOrient === 'left') {
95388
95509
  newCacheInfo.labels[axisOrient].dx = -labelOffset;
95389
95510
  newCacheInfo.labelsTextStyle[axisOrient] = {
95390
- textAlign: 'right',
95391
- textBaseline: 'middle'
95511
+ textAlign: syncAxisLabelAngle && axisLabel ? ((_c = axisLabel.attribute.textAlign) !== null && _c !== void 0 ? _c : 'right') : 'right',
95512
+ textBaseline: syncAxisLabelAngle && axisLabel ? ((_d = axisLabel.attribute.textBaseline) !== null && _d !== void 0 ? _d : 'middle') : 'middle'
95392
95513
  };
95393
95514
  }
95394
95515
  else if (axisOrient === 'right') {
95395
95516
  newCacheInfo.labels[axisOrient].dx = labelOffset;
95396
95517
  newCacheInfo.labelsTextStyle[axisOrient] = {
95397
- textAlign: 'left',
95398
- textBaseline: 'middle'
95518
+ textAlign: syncAxisLabelAngle && axisLabel ? ((_e = axisLabel.attribute.textAlign) !== null && _e !== void 0 ? _e : 'left') : 'left',
95519
+ textBaseline: syncAxisLabelAngle && axisLabel ? ((_f = axisLabel.attribute.textBaseline) !== null && _f !== void 0 ? _f : 'middle') : 'middle'
95399
95520
  };
95400
95521
  }
95401
95522
  else if (axisOrient === 'top') {
95402
95523
  newCacheInfo.labels[axisOrient].y = 0;
95403
95524
  newCacheInfo.labels[axisOrient].dy = -labelOffset;
95404
95525
  newCacheInfo.labelsTextStyle[axisOrient] = {
95405
- textAlign: 'center',
95406
- textBaseline: 'bottom'
95526
+ textAlign: syncAxisLabelAngle && axisLabel ? ((_g = axisLabel.attribute.textAlign) !== null && _g !== void 0 ? _g : 'center') : 'center',
95527
+ textBaseline: syncAxisLabelAngle && axisLabel ? ((_h = axisLabel.attribute.textBaseline) !== null && _h !== void 0 ? _h : 'bottom') : 'bottom'
95407
95528
  };
95408
95529
  }
95409
95530
  else if (axisOrient === 'bottom') {
95410
95531
  newCacheInfo.labels[axisOrient].dy = labelOffset;
95411
95532
  newCacheInfo.labelsTextStyle[axisOrient] = {
95412
- textAlign: 'center',
95413
- textBaseline: 'top'
95533
+ textAlign: syncAxisLabelAngle && axisLabel ? ((_j = axisLabel.attribute.textAlign) !== null && _j !== void 0 ? _j : 'center') : 'center',
95534
+ textBaseline: syncAxisLabelAngle && axisLabel ? ((_k = axisLabel.attribute.textBaseline) !== null && _k !== void 0 ? _k : 'top') : 'top'
95414
95535
  };
95415
95536
  }
95416
95537
  newCacheInfo.labels[axisOrient].defaultFormatter = niceLabelFormatter;
@@ -95654,9 +95775,9 @@ C0.3-1.4,0.3-1.4,0.3-1.4z;`;
95654
95775
  const positionAttribute = layoutCrosshair$1(this._stateByField[field]);
95655
95776
  this._updateCrosshairByField(field, positionAttribute);
95656
95777
  Object.keys(labels).forEach(labelKey => {
95657
- var _a;
95778
+ var _a, _b, _c;
95658
95779
  if (labels[labelKey].visible) {
95659
- const updateAttrs = Object.assign(Object.assign(Object.assign({ [coordKey]: coord + bandSize / 2 }, labels[labelKey]), attributes.label), { textStyle: Object.assign(Object.assign({}, (_a = attributes.label) === null || _a === void 0 ? void 0 : _a.textStyle), labelsTextStyle[labelKey]), zIndex: this.labelZIndex, visible: true });
95780
+ const updateAttrs = Object.assign(Object.assign(Object.assign({ [coordKey]: coord + bandSize / 2 }, labels[labelKey]), attributes.label), { angle: attributes.label.syncAxisLabelAngle ? ((_b = (_a = cacheInfo.axisLabel) === null || _a === void 0 ? void 0 : _a.attribute.angle) !== null && _b !== void 0 ? _b : 0) : 0, textStyle: Object.assign(Object.assign({}, (_c = attributes.label) === null || _c === void 0 ? void 0 : _c.textStyle), labelsTextStyle[labelKey]), zIndex: this.labelZIndex, visible: true });
95660
95781
  this._updateCrosshairLabel(labelsComp[labelKey], updateAttrs, label => {
95661
95782
  label.name = `crosshair-${field.replace('Field', '')}-${labelKey}-label`;
95662
95783
  labelsComp[labelKey] = label;
@@ -97662,7 +97783,9 @@ C0.3-1.4,0.3-1.4,0.3-1.4z;`;
97662
97783
  x = convertPercentToValue(datum.x, regionWidth) + regionStartLayoutStartPoint.x;
97663
97784
  }
97664
97785
  else {
97665
- x = relativeSeries.getXAxisHelper().dataToPosition([datum.x]) + regionStartLayoutStartPoint.x;
97786
+ x =
97787
+ convertDatumToValue(relativeSeries.getXAxisHelper(), [datum.x]) +
97788
+ regionStartLayoutStartPoint.x;
97666
97789
  }
97667
97790
  return x;
97668
97791
  }
@@ -97677,7 +97800,9 @@ C0.3-1.4,0.3-1.4,0.3-1.4z;`;
97677
97800
  y = convertPercentToValue(datum.y, regionHeight) + regionStartLayoutStartPoint.y;
97678
97801
  }
97679
97802
  else {
97680
- y = relativeSeries.getYAxisHelper().dataToPosition([datum.y]) + regionStartLayoutStartPoint.y;
97803
+ y =
97804
+ convertDatumToValue(relativeSeries.getYAxisHelper(), [datum.y]) +
97805
+ regionStartLayoutStartPoint.y;
97681
97806
  }
97682
97807
  return y;
97683
97808
  }
@@ -97687,7 +97812,7 @@ C0.3-1.4,0.3-1.4,0.3-1.4z;`;
97687
97812
  isNumber$1(datum.angle) &&
97688
97813
  isNeedExtendDomain(angleDomain, datum.angle, autoRange) &&
97689
97814
  ((_b = (_a = relativeSeries.angleAxisHelper) === null || _a === void 0 ? void 0 : _a.setExtendDomain) === null || _b === void 0 ? void 0 : _b.call(_a, 'marker_angleAxis_extend', datum.angle));
97690
- return relativeSeries.angleAxisHelper.dataToPosition([datum.angle]);
97815
+ return convertDatumToValue(relativeSeries.angleAxisHelper, [datum.angle]);
97691
97816
  }
97692
97817
  function getRadiusValue(datum, radiusDomain, autoRange, refSeries) {
97693
97818
  var _a, _b;
@@ -97695,11 +97820,18 @@ C0.3-1.4,0.3-1.4,0.3-1.4z;`;
97695
97820
  isNumber$1(datum.radius) &&
97696
97821
  isNeedExtendDomain(radiusDomain, datum.radius, autoRange) &&
97697
97822
  ((_b = (_a = relativeSeries.radiusAxisHelper) === null || _a === void 0 ? void 0 : _a.setExtendDomain) === null || _b === void 0 ? void 0 : _b.call(_a, 'marker_radiusAxis_extend', datum.radius));
97698
- return relativeSeries.radiusAxisHelper.dataToPosition([datum.radius]);
97823
+ return convertDatumToValue(relativeSeries.radiusAxisHelper, [datum.radius]);
97699
97824
  }
97700
97825
  function convertPercentToValue(percent, relativeLength) {
97701
97826
  return (Number(percent.substring(0, percent.length - 1)) * relativeLength) / 100;
97702
97827
  }
97828
+ function convertDatumToValue(axisHelper, datum) {
97829
+ const scale = axisHelper.getScale(0);
97830
+ if (isContinuous(scale.type) && scale.domain()[0] === scale.domain()[1] && datum[0] !== scale.domain()[0]) {
97831
+ return NaN;
97832
+ }
97833
+ return axisHelper.dataToPosition(datum);
97834
+ }
97703
97835
  function isAggrSpec(spec) {
97704
97836
  return AGGR_TYPE.includes(spec);
97705
97837
  }
@@ -97864,8 +97996,8 @@ C0.3-1.4,0.3-1.4,0.3-1.4z;`;
97864
97996
  isNeedExtendDomain(yDomain, yValue[0], autoRange) &&
97865
97997
  ((_d = (_c = refRelativeSeries.getYAxisHelper()) === null || _c === void 0 ? void 0 : _c.setExtendDomain) === null || _d === void 0 ? void 0 : _d.call(_c, 'marker_yAxis_extend', yValue[0]));
97866
97998
  points.push({
97867
- x: refRelativeSeries.getXAxisHelper().dataToPosition(xValue) + regionStartLayoutStartPoint.x + offsetX,
97868
- y: refRelativeSeries.getYAxisHelper().dataToPosition(yValue) + regionStartLayoutStartPoint.y + offsetY
97999
+ x: convertDatumToValue(refRelativeSeries.getXAxisHelper(), xValue) + regionStartLayoutStartPoint.x + offsetX,
98000
+ y: convertDatumToValue(refRelativeSeries.getYAxisHelper(), yValue) + regionStartLayoutStartPoint.y + offsetY
97869
98001
  });
97870
98002
  });
97871
98003
  return points;
@@ -97889,8 +98021,8 @@ C0.3-1.4,0.3-1.4,0.3-1.4z;`;
97889
98021
  isNeedExtendDomain(radiusDomain, radiusValue[0], autoRange) &&
97890
98022
  ((_d = (_c = refRelativeSeries.radiusAxisHelper) === null || _c === void 0 ? void 0 : _c.setExtendDomain) === null || _d === void 0 ? void 0 : _d.call(_c, 'marker_yAxis_extend', radiusValue[0]));
97891
98023
  points.push({
97892
- angle: refRelativeSeries.angleAxisHelper.dataToPosition(angleValue),
97893
- radius: refRelativeSeries.radiusAxisHelper.dataToPosition(radiusValue)
98024
+ angle: convertDatumToValue(refRelativeSeries.angleAxisHelper, angleValue),
98025
+ radius: convertDatumToValue(refRelativeSeries.radiusAxisHelper, radiusValue)
97894
98026
  });
97895
98027
  });
97896
98028
  return points;
@@ -100644,7 +100776,6 @@ C0.3-1.4,0.3-1.4,0.3-1.4z;`;
100644
100776
  this._linkedInBrushElementsMap = {};
100645
100777
  this._linkedOutOfBrushElementsMap = {};
100646
100778
  this._cacheInteractiveRangeAttrs = [];
100647
- this._needDisablePickable = false;
100648
100779
  this._releatedAxes = [];
100649
100780
  this._regionAxisMap = {};
100650
100781
  this._axisDataZoomMap = {};
@@ -100800,34 +100931,36 @@ C0.3-1.4,0.3-1.4,0.3-1.4z;`;
100800
100931
  this._emitEvent(ChartEvent.brushActive, region);
100801
100932
  });
100802
100933
  brush.addEventListener(IOperateType.drawStart, (e) => {
100934
+ this._setRegionMarkPickable(region, true);
100803
100935
  this._emitEvent(ChartEvent.brushStart, region);
100804
100936
  });
100805
100937
  brush.addEventListener(IOperateType.moveStart, (e) => {
100938
+ this._setRegionMarkPickable(region, true);
100806
100939
  this._emitEvent(ChartEvent.brushStart, region);
100807
100940
  });
100808
100941
  brush.addEventListener(IOperateType.drawing, (e) => {
100809
- this._needDisablePickable = true;
100942
+ this._setRegionMarkPickable(region, false);
100810
100943
  this._handleBrushChange(region, e);
100811
100944
  this._emitEvent(ChartEvent.brushChange, region);
100812
100945
  });
100813
100946
  brush.addEventListener(IOperateType.moving, (e) => {
100947
+ this._setRegionMarkPickable(region, false);
100814
100948
  this._handleBrushChange(region, e);
100815
100949
  this._emitEvent(ChartEvent.brushChange, region);
100816
100950
  });
100817
100951
  brush.addEventListener(IOperateType.brushClear, (e) => {
100952
+ this._setRegionMarkPickable(region, true);
100818
100953
  this._initMarkBrushState(componentIndex, '');
100819
- this._needDisablePickable = false;
100820
100954
  this._emitEvent(ChartEvent.brushClear, region);
100821
100955
  });
100822
100956
  brush.addEventListener(IOperateType.drawEnd, (e) => {
100823
100957
  var _a;
100824
- this._needDisablePickable = false;
100958
+ this._setRegionMarkPickable(region, true);
100825
100959
  const { operateMask } = e.detail;
100826
100960
  if ((_a = this._spec) === null || _a === void 0 ? void 0 : _a.onBrushEnd) {
100827
100961
  if (this._spec.onBrushEnd(e) === true) {
100828
100962
  this.clearGraphic();
100829
100963
  this._initMarkBrushState(componentIndex, '');
100830
- this._needDisablePickable = false;
100831
100964
  this._emitEvent(ChartEvent.brushClear, region);
100832
100965
  }
100833
100966
  else {
@@ -100844,6 +100977,7 @@ C0.3-1.4,0.3-1.4,0.3-1.4z;`;
100844
100977
  }
100845
100978
  });
100846
100979
  brush.addEventListener(IOperateType.moveEnd, (e) => {
100980
+ this._setRegionMarkPickable(region, true);
100847
100981
  const { operateMask } = e.detail;
100848
100982
  const inBrushData = this._extendDataInBrush(this._inBrushElementsMap);
100849
100983
  if (!this._spec.zoomWhenEmpty && inBrushData.length > 0) {
@@ -100971,7 +101105,6 @@ C0.3-1.4,0.3-1.4,0.3-1.4z;`;
100971
101105
  this._outOfBrushElementsMap[elementKey] = el;
100972
101106
  delete this._inBrushElementsMap[operateMask.name][elementKey];
100973
101107
  }
100974
- graphicItem.setAttribute('pickable', !this._needDisablePickable);
100975
101108
  });
100976
101109
  });
100977
101110
  }
@@ -101030,7 +101163,6 @@ C0.3-1.4,0.3-1.4,0.3-1.4z;`;
101030
101163
  el.addState(OUT_BRUSH_STATE);
101031
101164
  this._linkedOutOfBrushElementsMap[elementKey] = el;
101032
101165
  }
101033
- graphicItem.setAttribute('pickable', !this._needDisablePickable);
101034
101166
  });
101035
101167
  });
101036
101168
  }
@@ -101112,6 +101244,12 @@ C0.3-1.4,0.3-1.4,0.3-1.4z;`;
101112
101244
  });
101113
101245
  });
101114
101246
  }
101247
+ _setRegionMarkPickable(region, pickable) {
101248
+ region
101249
+ .getGroupMark()
101250
+ .getProduct()
101251
+ .elements.forEach(el => el.getGraphicItem().setAttribute('childrenPickable', pickable));
101252
+ }
101115
101253
  _stateClamp(state) {
101116
101254
  return Math.min(Math.max(0, state), 1);
101117
101255
  }
@@ -101191,7 +101329,6 @@ C0.3-1.4,0.3-1.4,0.3-1.4z;`;
101191
101329
  const container = this.getContainer();
101192
101330
  this._brushComponents.forEach((brush, index) => {
101193
101331
  this._initMarkBrushState(index, '');
101194
- this._needDisablePickable = false;
101195
101332
  brush.removeAllChild();
101196
101333
  brush.releaseBrushEvents();
101197
101334
  if (container) {