@visactor/vchart 1.13.9-alpha.2 → 1.13.9-alpha.4

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 (32) hide show
  1. package/build/es5/index.js +1 -1
  2. package/build/index.es.js +264 -264
  3. package/build/index.js +264 -264
  4. package/build/index.min.js +1 -1
  5. package/build/tsconfig.tsbuildinfo +1 -1
  6. package/cjs/component/marker/mark-area/base-mark-area.js +17 -27
  7. package/cjs/component/marker/mark-area/base-mark-area.js.map +1 -1
  8. package/cjs/component/marker/mark-area/interface/theme.d.ts +3 -4
  9. package/cjs/component/marker/mark-area/interface/theme.js.map +1 -1
  10. package/cjs/component/marker/mark-line/base-mark-line.js +20 -31
  11. package/cjs/component/marker/mark-line/base-mark-line.js.map +1 -1
  12. package/cjs/component/marker/mark-line/cartesian-mark-line.js +23 -29
  13. package/cjs/component/marker/mark-line/cartesian-mark-line.js.map +1 -1
  14. package/cjs/component/marker/mark-line/interface/theme.d.ts +3 -4
  15. package/cjs/component/marker/mark-line/interface/theme.js.map +1 -1
  16. package/cjs/core/index.d.ts +1 -1
  17. package/cjs/core/index.js +1 -1
  18. package/cjs/core/index.js.map +1 -1
  19. package/esm/component/marker/mark-area/base-mark-area.js +16 -27
  20. package/esm/component/marker/mark-area/base-mark-area.js.map +1 -1
  21. package/esm/component/marker/mark-area/interface/theme.d.ts +3 -4
  22. package/esm/component/marker/mark-area/interface/theme.js.map +1 -1
  23. package/esm/component/marker/mark-line/base-mark-line.js +19 -30
  24. package/esm/component/marker/mark-line/base-mark-line.js.map +1 -1
  25. package/esm/component/marker/mark-line/cartesian-mark-line.js +23 -28
  26. package/esm/component/marker/mark-line/cartesian-mark-line.js.map +1 -1
  27. package/esm/component/marker/mark-line/interface/theme.d.ts +3 -4
  28. package/esm/component/marker/mark-line/interface/theme.js.map +1 -1
  29. package/esm/core/index.d.ts +1 -1
  30. package/esm/core/index.js +1 -1
  31. package/esm/core/index.js.map +1 -1
  32. package/package.json +16 -16
package/build/index.es.js CHANGED
@@ -31425,6 +31425,10 @@ const SCROLLBAR_START_EVENT = "scrollDown";
31425
31425
  const SCROLLBAR_EVENT$1 = "scrollDrag";
31426
31426
  const SCROLLBAR_END_EVENT$1 = "scrollUp";
31427
31427
 
31428
+ function getEndTriggersOfDrag() {
31429
+ return "browser" === vglobal.env ? ["pointerup", "pointerleave", "pointercancel"] : ["pointerup", "pointerleave", "pointerupoutside"];
31430
+ }
31431
+
31428
31432
  const delayMap$3 = {
31429
31433
  debounce: debounce,
31430
31434
  throttle: throttle
@@ -31457,6 +31461,7 @@ let ScrollBar$1 = class ScrollBar extends AbstractComponent {
31457
31461
  }
31458
31462
  this.setScrollRange([currentScrollValue - (range[1] - range[0]) / 2, currentScrollValue + (range[1] - range[0]) / 2], !1), this.stage && !this.stage.autoRender && this.stage.renderNextFrame();
31459
31463
  }, this._onSliderPointerDown = e => {
31464
+ this._clearDragEvents();
31460
31465
  const {
31461
31466
  stopSliderDownPropagation = !0
31462
31467
  } = this.attribute;
@@ -31471,11 +31476,14 @@ let ScrollBar$1 = class ScrollBar extends AbstractComponent {
31471
31476
  this._prePos = "horizontal" === direction ? x : y, this._dispatchEvent(SCROLLBAR_START_EVENT, {
31472
31477
  pos: this._prePos,
31473
31478
  event: e
31474
- }), "browser" === vglobal.env ? (vglobal.addEventListener("pointermove", this._onSliderPointerMoveWithDelay, {
31475
- capture: !0
31476
- }), vglobal.addEventListener("pointerup", this._onSliderPointerUp)) : (this.stage.addEventListener("pointermove", this._onSliderPointerMoveWithDelay, {
31479
+ });
31480
+ const triggers = getEndTriggersOfDrag(),
31481
+ obj = "browser" === vglobal.env ? vglobal : this.stage;
31482
+ obj.addEventListener("pointermove", this._onSliderPointerMoveWithDelay, {
31477
31483
  capture: !0
31478
- }), this.stage.addEventListener("pointerup", this._onSliderPointerUp), this.stage.addEventListener("pointerupoutside", this._onSliderPointerUp));
31484
+ }), triggers.forEach(trigger => {
31485
+ obj.addEventListener(trigger, this._onSliderPointerUp);
31486
+ });
31479
31487
  }, this._computeScrollValue = e => {
31480
31488
  const {
31481
31489
  direction: direction
@@ -31512,11 +31520,7 @@ let ScrollBar$1 = class ScrollBar extends AbstractComponent {
31512
31520
  this._dispatchEvent(SCROLLBAR_END_EVENT$1, {
31513
31521
  pre: preRange,
31514
31522
  value: clampRange$1(range, limitRange[0], limitRange[1])
31515
- }), "browser" === vglobal.env ? (vglobal.removeEventListener("pointermove", this._onSliderPointerMoveWithDelay, {
31516
- capture: !0
31517
- }), vglobal.removeEventListener("pointerup", this._onSliderPointerUp)) : (this.stage.removeEventListener("pointermove", this._onSliderPointerMoveWithDelay, {
31518
- capture: !0
31519
- }), this.stage.removeEventListener("pointerup", this._onSliderPointerUp), this.stage.removeEventListener("pointerupoutside", this._onSliderPointerUp));
31523
+ }), this._clearDragEvents();
31520
31524
  };
31521
31525
  }
31522
31526
  setScrollRange(range) {
@@ -31665,6 +31669,15 @@ let ScrollBar$1 = class ScrollBar extends AbstractComponent {
31665
31669
  sliderSize = this._sliderSize;
31666
31670
  return "horizontal" === direction ? clampRange$1([x1 + min * width, x1 + max * width], x1, width - sliderSize) : clampRange$1([y1 + min * height, y1 + max * height], y1, height - sliderSize);
31667
31671
  }
31672
+ _clearDragEvents() {
31673
+ const triggers = getEndTriggersOfDrag(),
31674
+ obj = "browser" === vglobal.env ? vglobal : this.stage;
31675
+ obj.removeEventListener("pointermove", this._onSliderPointerMoveWithDelay, {
31676
+ capture: !0
31677
+ }), triggers.forEach(trigger => {
31678
+ obj.removeEventListener(trigger, this._onSliderPointerUp);
31679
+ });
31680
+ }
31668
31681
  _reset() {
31669
31682
  this._sliderRenderBounds = null, this._sliderLimitRange = null;
31670
31683
  }
@@ -39014,10 +39027,13 @@ let DataZoom$1 = class DataZoom extends AbstractComponent {
39014
39027
  start: 0,
39015
39028
  end: 1
39016
39029
  }, this._statePointToData = state => state, this._onHandlerPointerDown = (e, tag) => {
39017
- e.stopPropagation(), "start" === tag ? (this._activeTag = DataZoomActiveTag.startHandler, this._activeItem = this._startHandlerMask) : "end" === tag ? (this._activeTag = DataZoomActiveTag.endHandler, this._activeItem = this._endHandlerMask) : "middleRect" === tag ? (this._activeTag = DataZoomActiveTag.middleHandler, this._activeItem = this._middleHandlerRect) : "middleSymbol" === tag ? (this._activeTag = DataZoomActiveTag.middleHandler, this._activeItem = this._middleHandlerSymbol) : "background" === tag && (this._activeTag = DataZoomActiveTag.background, this._activeItem = this._background), this._activeState = !0, this._activeCache.startPos = this.eventPosToStagePos(e), this._activeCache.lastPos = this.eventPosToStagePos(e), "browser" === vglobal.env && (vglobal.addEventListener("pointermove", this._onHandlerPointerMove, {
39018
- capture: !0
39019
- }), vglobal.addEventListener("pointerup", this._onHandlerPointerUp)), this.addEventListener("pointermove", this._onHandlerPointerMove, {
39030
+ this._clearDragEvents(), e.stopPropagation(), "start" === tag ? (this._activeTag = DataZoomActiveTag.startHandler, this._activeItem = this._startHandlerMask) : "end" === tag ? (this._activeTag = DataZoomActiveTag.endHandler, this._activeItem = this._endHandlerMask) : "middleRect" === tag ? (this._activeTag = DataZoomActiveTag.middleHandler, this._activeItem = this._middleHandlerRect) : "middleSymbol" === tag ? (this._activeTag = DataZoomActiveTag.middleHandler, this._activeItem = this._middleHandlerSymbol) : "background" === tag && (this._activeTag = DataZoomActiveTag.background, this._activeItem = this._background), this._activeState = !0, this._activeCache.startPos = this.eventPosToStagePos(e), this._activeCache.lastPos = this.eventPosToStagePos(e);
39031
+ const evtTarget = "browser" === vglobal.env ? vglobal : this.stage,
39032
+ triggers = getEndTriggersOfDrag();
39033
+ evtTarget.addEventListener("pointermove", this._onHandlerPointerMove, {
39020
39034
  capture: !0
39035
+ }), triggers.forEach(trigger => {
39036
+ evtTarget.addEventListener(trigger, this._onHandlerPointerUp);
39021
39037
  });
39022
39038
  }, this._pointerMove = e => {
39023
39039
  e.stopPropagation();
@@ -39058,11 +39074,7 @@ let DataZoom$1 = class DataZoom extends AbstractComponent {
39058
39074
  start: this.state.start,
39059
39075
  end: this.state.end,
39060
39076
  tag: this._activeTag
39061
- }), "browser" === vglobal.env && (vglobal.removeEventListener("pointermove", this._onHandlerPointerMove, {
39062
- capture: !0
39063
- }), vglobal.removeEventListener("pointerup", this._onHandlerPointerUp)), this.removeEventListener("pointermove", this._onHandlerPointerMove, {
39064
- capture: !0
39065
- }), this.removeEventListener("pointerup", this._onHandlerPointerUp);
39077
+ }), this._clearDragEvents();
39066
39078
  };
39067
39079
  const {
39068
39080
  position: position,
@@ -39081,7 +39093,7 @@ let DataZoom$1 = class DataZoom extends AbstractComponent {
39081
39093
  } = this.attribute;
39082
39094
  this._startHandlerMask && this._startHandlerMask.addEventListener("pointerdown", e => this._onHandlerPointerDown(e, "start")), this._endHandlerMask && this._endHandlerMask.addEventListener("pointerdown", e => this._onHandlerPointerDown(e, "end")), this._middleHandlerSymbol && this._middleHandlerSymbol.addEventListener("pointerdown", e => this._onHandlerPointerDown(e, "middleSymbol")), this._middleHandlerRect && this._middleHandlerRect.addEventListener("pointerdown", e => this._onHandlerPointerDown(e, "middleRect"));
39083
39095
  const selectedTag = brushSelect ? "background" : "middleRect";
39084
- this._selectedBackground && this._selectedBackground.addEventListener("pointerdown", e => this._onHandlerPointerDown(e, selectedTag)), brushSelect && this._background && this._background.addEventListener("pointerdown", e => this._onHandlerPointerDown(e, "background")), brushSelect && this._previewGroup && this._previewGroup.addEventListener("pointerdown", e => this._onHandlerPointerDown(e, "background")), this._selectedPreviewGroup && this._selectedPreviewGroup.addEventListener("pointerdown", e => this._onHandlerPointerDown(e, selectedTag)), this.addEventListener("pointerup", this._onHandlerPointerUp), this.addEventListener("pointerupoutside", this._onHandlerPointerUp), "auto" === showDetail && (this.addEventListener("pointerenter", this._onHandlerPointerEnter), this.addEventListener("pointerleave", this._onHandlerPointerLeave));
39096
+ this._selectedBackground && this._selectedBackground.addEventListener("pointerdown", e => this._onHandlerPointerDown(e, selectedTag)), brushSelect && this._background && this._background.addEventListener("pointerdown", e => this._onHandlerPointerDown(e, "background")), brushSelect && this._previewGroup && this._previewGroup.addEventListener("pointerdown", e => this._onHandlerPointerDown(e, "background")), this._selectedPreviewGroup && this._selectedPreviewGroup.addEventListener("pointerdown", e => this._onHandlerPointerDown(e, selectedTag)), "auto" === showDetail && (this.addEventListener("pointerenter", this._onHandlerPointerEnter), this.addEventListener("pointerleave", this._onHandlerPointerLeave));
39085
39097
  }
39086
39098
  dragMaskSize() {
39087
39099
  const {
@@ -39112,6 +39124,15 @@ let DataZoom$1 = class DataZoom extends AbstractComponent {
39112
39124
  y: 0
39113
39125
  };
39114
39126
  }
39127
+ _clearDragEvents() {
39128
+ const evtTarget = "browser" === vglobal.env ? vglobal : this.stage,
39129
+ triggers = getEndTriggersOfDrag();
39130
+ evtTarget.removeEventListener("pointermove", this._onHandlerPointerMove, {
39131
+ capture: !0
39132
+ }), triggers.forEach(trigger => {
39133
+ evtTarget.removeEventListener(trigger, this._onHandlerPointerUp);
39134
+ });
39135
+ }
39115
39136
  _onHandlerPointerEnter(e) {
39116
39137
  e.stopPropagation(), this._showText = !0, this.renderText();
39117
39138
  }
@@ -39824,26 +39845,17 @@ function commonLineClipIn(line, label, duration, delay, easing) {
39824
39845
  l.animate().wait(delay + startSymbolDuration + index * stepDuration).to({
39825
39846
  clipRange: 1
39826
39847
  }, stepDuration, easing);
39827
- }), graphicFadeIn(line.endSymbol, delay + startSymbolDuration + lineDuration, endSymbolDuration, easing), array(label).forEach(labelNode => {
39828
- const delayTime = delay + startSymbolDuration + lineDuration + endSymbolDuration;
39829
- graphicFadeIn(labelNode.getTextShape(), delayTime, labelDuration, easing), graphicFadeIn(labelNode.getBgRect(), delayTime, labelDuration, easing);
39830
- });
39848
+ }), graphicFadeIn(line.endSymbol, delay + startSymbolDuration + lineDuration, endSymbolDuration, easing), graphicFadeIn(label.getTextShape(), delay + startSymbolDuration + lineDuration + endSymbolDuration, labelDuration, easing), graphicFadeIn(label.getBgRect(), delay + startSymbolDuration + lineDuration + endSymbolDuration, labelDuration, easing);
39831
39849
  }
39832
39850
 
39833
39851
  function commonLineFadeIn(line, label, duration, delay, easing) {
39834
- segmentFadeIn(line, delay, duration, easing), array(label).forEach(labelNode => {
39835
- tagFadeIn(labelNode, delay, duration, easing);
39836
- });
39852
+ segmentFadeIn(line, delay, duration, easing), tagFadeIn(label, delay, duration, easing);
39837
39853
  }
39838
39854
  function areaFadeIn(area, label, duration, delay, easing) {
39839
- graphicFadeIn(area, delay, duration, easing), array(label).forEach(labelNode => {
39840
- tagFadeIn(labelNode, delay, duration, easing);
39841
- });
39855
+ graphicFadeIn(area, delay, duration, easing), tagFadeIn(label, delay, duration, easing);
39842
39856
  }
39843
39857
  function arcAreaFadeIn(area, label, duration, delay, easing) {
39844
- graphicFadeIn(area, delay, duration, easing), array(label).forEach(labelNode => {
39845
- tagFadeIn(labelNode, delay, duration, easing);
39846
- });
39858
+ graphicFadeIn(area, delay, duration, easing), tagFadeIn(label, delay, duration, easing);
39847
39859
  }
39848
39860
  function pointFadeIn(itemLine, decorativeLine, item, duration, delay, easing) {
39849
39861
  var _a;
@@ -39851,19 +39863,13 @@ function pointFadeIn(itemLine, decorativeLine, item, duration, delay, easing) {
39851
39863
  }
39852
39864
 
39853
39865
  function commonLineFadeOut(line, label, duration, delay, easing) {
39854
- segmentFadeOut(line, delay, duration, easing), array(label).forEach(labelNode => {
39855
- tagFadeOut(labelNode, delay, duration, easing);
39856
- });
39866
+ segmentFadeOut(line, delay, duration, easing), tagFadeOut(label, delay, duration, easing);
39857
39867
  }
39858
39868
  function areaFadeOut(area, label, duration, delay, easing) {
39859
- graphicFadeOut(area, delay, duration, easing), array(label).forEach(labelNode => {
39860
- tagFadeOut(labelNode, delay, duration, easing);
39861
- });
39869
+ graphicFadeOut(area, delay, duration, easing), tagFadeOut(label, delay, duration, easing);
39862
39870
  }
39863
39871
  function arcAreaFadeOut(area, label, duration, delay, easing) {
39864
- graphicFadeOut(area, delay, duration, easing), array(label).forEach(labelNode => {
39865
- tagFadeOut(labelNode, delay, duration, easing);
39866
- });
39872
+ graphicFadeOut(area, delay, duration, easing), tagFadeOut(label, delay, duration, easing);
39867
39873
  }
39868
39874
  function pointFadeOut(itemLine, decorativeLine, item, duration, delay, easing) {
39869
39875
  var _a;
@@ -40035,57 +40041,6 @@ const DefaultExitMarkerAnimation = {
40035
40041
  delay: 0
40036
40042
  };
40037
40043
 
40038
- class MarkLabelMixin {
40039
- getLabel() {
40040
- return this._label;
40041
- }
40042
- _addMarkLabels(container, labelName, defaultLabelAttrs) {
40043
- const {
40044
- label: label,
40045
- state: state
40046
- } = this.attribute,
40047
- labelStates = array(null == state ? void 0 : state.label),
40048
- labelBackgroundStates = array(null == state ? void 0 : state.labelBackground),
40049
- labelShapes = array(label).map((labelAttrs, index) => {
40050
- var _a, _b;
40051
- const finalLabelAttrs = merge$1({}, defaultLabelAttrs, labelAttrs),
40052
- markLabel = new Tag(Object.assign(Object.assign({}, finalLabelAttrs), {
40053
- state: {
40054
- panel: merge$1({}, DEFAULT_STATES$2, null !== (_a = labelBackgroundStates[index]) && void 0 !== _a ? _a : last(labelBackgroundStates)),
40055
- text: merge$1({}, DEFAULT_STATES$2, null !== (_b = labelStates[index]) && void 0 !== _b ? _b : last(labelStates))
40056
- }
40057
- }));
40058
- return markLabel.name = labelName, container.add(markLabel), this.setLabelPos(markLabel, finalLabelAttrs), markLabel;
40059
- });
40060
- this._label = 1 === array(labelShapes).length ? labelShapes[0] : labelShapes;
40061
- }
40062
- _updateMarkLabels(defaultLabelAttrs) {
40063
- const {
40064
- label: label,
40065
- state: state
40066
- } = this.attribute,
40067
- labelShapes = array(this._label),
40068
- labelStates = array(null == state ? void 0 : state.label),
40069
- labelBackgroundStates = array(null == state ? void 0 : state.labelBackground);
40070
- if (labelShapes.length) {
40071
- const labels = array(label);
40072
- labelShapes.forEach((labelItem, index) => {
40073
- var _a, _b;
40074
- const finalLabelAttrs = merge$1({}, defaultLabelAttrs, labels[index]);
40075
- labelItem.setAttributes(Object.assign(Object.assign({
40076
- dx: 0,
40077
- dy: 0
40078
- }, finalLabelAttrs), {
40079
- state: {
40080
- panel: merge$1({}, DEFAULT_STATES$2, null !== (_a = labelBackgroundStates[index]) && void 0 !== _a ? _a : last(labelBackgroundStates)),
40081
- text: merge$1({}, DEFAULT_STATES$2, null !== (_b = labelStates[index]) && void 0 !== _b ? _b : last(labelStates))
40082
- }
40083
- })), this.setLabelPos(labelItem, finalLabelAttrs);
40084
- });
40085
- }
40086
- }
40087
- }
40088
-
40089
40044
  class MarkCommonLine extends Marker {
40090
40045
  constructor() {
40091
40046
  super(...arguments), this.name = "markCommonLine", this.defaultUpdateAnimation = DefaultUpdateMarkLineAnimation, this.defaultExitAnimation = DefaultExitMarkerAnimation;
@@ -40093,20 +40048,24 @@ class MarkCommonLine extends Marker {
40093
40048
  getLine() {
40094
40049
  return this._line;
40095
40050
  }
40096
- setLabelPos(labelNode, labelAttrs) {
40051
+ getLabel() {
40052
+ return this._label;
40053
+ }
40054
+ setLabelPos() {
40097
40055
  const {
40056
+ label = {},
40098
40057
  limitRect: limitRect
40099
40058
  } = this.attribute,
40100
40059
  {
40101
40060
  position: position,
40102
40061
  confine: confine,
40103
40062
  autoRotate: autoRotate
40104
- } = labelAttrs,
40105
- labelPoint = this.getPointAttrByPosition(position, labelAttrs),
40063
+ } = label,
40064
+ labelPoint = this.getPointAttrByPosition(position),
40106
40065
  labelAngle = position.toString().toLocaleLowerCase().includes("start") ? this._line.getStartAngle() || 0 : this._line.getEndAngle() || 0;
40107
- if (labelNode.setAttributes(Object.assign(Object.assign({}, labelPoint.position), {
40108
- angle: autoRotate ? this.getRotateByAngle(labelPoint.angle, labelAttrs) : 0,
40109
- textStyle: Object.assign(Object.assign({}, this.getTextStyle(position, labelAngle, autoRotate)), labelAttrs.textStyle)
40066
+ if (this._label.setAttributes(Object.assign(Object.assign({}, labelPoint.position), {
40067
+ angle: autoRotate ? this.getRotateByAngle(labelPoint.angle) : 0,
40068
+ textStyle: Object.assign(Object.assign({}, this.getTextStyle(position, labelAngle, autoRotate)), label.textStyle)
40110
40069
  })), limitRect && confine) {
40111
40070
  const {
40112
40071
  x: x,
@@ -40114,7 +40073,7 @@ class MarkCommonLine extends Marker {
40114
40073
  width: width,
40115
40074
  height: height
40116
40075
  } = limitRect;
40117
- limitShapeInBounds(labelNode, {
40076
+ limitShapeInBounds(this._label, {
40118
40077
  x1: x,
40119
40078
  y1: y,
40120
40079
  x2: x + width,
@@ -40123,14 +40082,36 @@ class MarkCommonLine extends Marker {
40123
40082
  }
40124
40083
  }
40125
40084
  initMarker(container) {
40126
- const line = this.createSegment();
40127
- line.name = "mark-common-line-line", this._line = line, container.add(line), this.addMarkLineLabels(container);
40085
+ const {
40086
+ label: label,
40087
+ state: state
40088
+ } = this.attribute,
40089
+ line = this.createSegment();
40090
+ line.name = "mark-common-line-line", this._line = line, container.add(line);
40091
+ const markLabel = new Tag(Object.assign(Object.assign({}, label), {
40092
+ state: {
40093
+ panel: merge$1({}, DEFAULT_STATES$2, null == state ? void 0 : state.labelBackground),
40094
+ text: merge$1({}, DEFAULT_STATES$2, null == state ? void 0 : state.label)
40095
+ }
40096
+ }));
40097
+ markLabel.name = "mark-common-line-label", this._label = markLabel, container.add(markLabel), this.setLabelPos();
40128
40098
  }
40129
40099
  updateMarker() {
40130
- this.setLineAttributes(), this.updateMarkLineLabels();
40100
+ const {
40101
+ label: label,
40102
+ state: state
40103
+ } = this.attribute;
40104
+ this.setLineAttributes(), this._label && (this._label.setAttributes(Object.assign(Object.assign({
40105
+ dx: 0,
40106
+ dy: 0
40107
+ }, label), {
40108
+ state: {
40109
+ panel: merge$1({}, DEFAULT_STATES$2, null == state ? void 0 : state.labelBackground),
40110
+ text: merge$1({}, DEFAULT_STATES$2, null == state ? void 0 : state.label)
40111
+ }
40112
+ })), this.setLabelPos());
40131
40113
  }
40132
40114
  }
40133
- mixin(MarkCommonLine, MarkLabelMixin);
40134
40115
 
40135
40116
  const FUZZY_EQUAL_DELTA = .001;
40136
40117
  const DEFAULT_MARK_LINE_THEME = {
@@ -40319,7 +40300,6 @@ const DEFAULT_MARK_ARC_LINE_THEME = {
40319
40300
  lineWidth: 0
40320
40301
  },
40321
40302
  label: {
40322
- autoRotate: !0,
40323
40303
  position: IMarkCommonArcLabelPosition.arcOuterMiddle,
40324
40304
  refX: 0,
40325
40305
  refY: 0,
@@ -40374,7 +40354,6 @@ const DEFAULT_MARK_AREA_THEME = {
40374
40354
  const DEFAULT_MARK_ARC_AREA_THEME = {
40375
40355
  interactive: !0,
40376
40356
  label: {
40377
- autoRotate: !0,
40378
40357
  position: IMarkCommonArcLabelPosition.arcOuterMiddle,
40379
40358
  textStyle: {
40380
40359
  fill: "#fff",
@@ -40630,12 +40609,15 @@ class MarkLine extends MarkCommonLine {
40630
40609
  constructor(attributes, options) {
40631
40610
  super((null == options ? void 0 : options.skipDefault) ? attributes : merge$1({}, MarkLine.defaultAttributes, attributes)), this.name = "markLine";
40632
40611
  }
40633
- getPointAttrByPosition(position, labelAttrs) {
40612
+ getPointAttrByPosition(position) {
40634
40613
  var _a;
40635
40614
  const {
40615
+ label = {}
40616
+ } = this.attribute,
40617
+ {
40636
40618
  refX = 0,
40637
40619
  refY = 0
40638
- } = labelAttrs,
40620
+ } = label,
40639
40621
  points = this._line.getMainSegmentPoints(),
40640
40622
  lineEndAngle = null !== (_a = this._line.getEndAngle()) && void 0 !== _a ? _a : 0,
40641
40623
  labelAngle = (lineEndAngle),
@@ -40661,9 +40643,9 @@ class MarkLine extends MarkCommonLine {
40661
40643
  angle: labelAngle
40662
40644
  };
40663
40645
  }
40664
- getRotateByAngle(angle, labelAttrs) {
40646
+ getRotateByAngle(angle) {
40665
40647
  var _a;
40666
- return (isPostiveXAxis(angle) ? angle : angle - Math.PI) + (null !== (_a = labelAttrs.refAngle) && void 0 !== _a ? _a : 0);
40648
+ return (isPostiveXAxis(angle) ? angle : angle - Math.PI) + (null !== (_a = this.attribute.label.refAngle) && void 0 !== _a ? _a : 0);
40667
40649
  }
40668
40650
  getTextStyle(position, labelAngle, autoRotate) {
40669
40651
  return fuzzyEqualNumber(Math.abs(labelAngle), Math.PI / 2, FUZZY_EQUAL_DELTA) || fuzzyEqualNumber(Math.abs(labelAngle), 3 * Math.PI / 2, FUZZY_EQUAL_DELTA) ? getTextAlignAttrOfVerticalDir(autoRotate, labelAngle, position) : isPostiveXAxis(labelAngle) ? DEFAULT_CARTESIAN_MARK_LINE_TEXT_STYLE_MAP.postiveXAxis[position] : DEFAULT_CARTESIAN_MARK_LINE_TEXT_STYLE_MAP.negativeXAxis[position];
@@ -40729,12 +40711,6 @@ class MarkLine extends MarkCommonLine {
40729
40711
  });else if (!isValidNumber$1(point.x) || !isValidNumber$1(point.y)) return void (validFlag = !1);
40730
40712
  }), validFlag;
40731
40713
  }
40732
- addMarkLineLabels(container) {
40733
- this._addMarkLabels(container, "mark-common-line-label", MarkLine.defaultAttributes.label);
40734
- }
40735
- updateMarkLineLabels() {
40736
- this._updateMarkLabels(MarkLine.defaultAttributes.label);
40737
- }
40738
40714
  }
40739
40715
  MarkLine.defaultAttributes = DEFAULT_MARK_LINE_THEME;
40740
40716
 
@@ -40749,6 +40725,9 @@ class MarkArea extends Marker {
40749
40725
  getArea() {
40750
40726
  return this._area;
40751
40727
  }
40728
+ getLabel() {
40729
+ return this._label;
40730
+ }
40752
40731
  constructor(attributes, options) {
40753
40732
  super((null == options ? void 0 : options.skipDefault) ? attributes : merge$1({}, MarkArea.defaultAttributes, attributes)), this.name = "markArea", this.defaultUpdateAnimation = DefaultUpdateMarkAreaAnimation, this.defaultExitAnimation = DefaultExitMarkerAnimation;
40754
40733
  }
@@ -40765,21 +40744,24 @@ class MarkArea extends Marker {
40765
40744
  };
40766
40745
  return (position.includes("left") || position.includes("Left")) && (result.x = x1), (position.includes("right") || position.includes("Right")) && (result.x = x2), (position.includes("top") || position.includes("Top")) && (result.y = y1), (position.includes("bottom") || position.includes("Bottom")) && (result.y = y2), result;
40767
40746
  }
40768
- setLabelPos(labelNode, labelAttrs) {
40747
+ setLabelPos() {
40769
40748
  var _a;
40770
- if (this._area) {
40771
- const labelPosition = null !== (_a = labelAttrs.position) && void 0 !== _a ? _a : "middle",
40749
+ if (this._label && this._area) {
40750
+ const {
40751
+ label = {}
40752
+ } = this.attribute,
40753
+ labelPosition = null !== (_a = label.position) && void 0 !== _a ? _a : "middle",
40772
40754
  labelPoint = this.getPointAttrByPosition(labelPosition);
40773
- if (labelNode.setAttributes(Object.assign(Object.assign({}, labelPoint), {
40774
- textStyle: Object.assign(Object.assign({}, DEFAULT_CARTESIAN_MARK_AREA_TEXT_STYLE_MAP[labelPosition]), labelAttrs.textStyle)
40775
- })), this.attribute.limitRect && labelAttrs.confine) {
40755
+ if (this._label.setAttributes(Object.assign(Object.assign({}, labelPoint), {
40756
+ textStyle: Object.assign(Object.assign({}, DEFAULT_CARTESIAN_MARK_AREA_TEXT_STYLE_MAP[labelPosition]), label.textStyle)
40757
+ })), this.attribute.limitRect && label.confine) {
40776
40758
  const {
40777
40759
  x: x,
40778
40760
  y: y,
40779
40761
  width: width,
40780
40762
  height: height
40781
40763
  } = this.attribute.limitRect;
40782
- limitShapeInBounds(labelNode, {
40764
+ limitShapeInBounds(this._label, {
40783
40765
  x1: x,
40784
40766
  y1: y,
40785
40767
  x2: x + width,
@@ -40791,23 +40773,40 @@ class MarkArea extends Marker {
40791
40773
  initMarker(container) {
40792
40774
  const {
40793
40775
  points: points,
40776
+ label: label,
40794
40777
  areaStyle: areaStyle,
40795
40778
  state: state
40796
40779
  } = this.attribute,
40797
40780
  area = graphicCreator.polygon(Object.assign({
40798
40781
  points: points
40799
40782
  }, areaStyle));
40800
- area.states = merge$1({}, DEFAULT_STATES$2, null == state ? void 0 : state.area), area.name = "mark-area-polygon", this._area = area, container.add(area), this._addMarkLabels(container, "mark-area-label", MarkArea.defaultAttributes.label);
40783
+ area.states = merge$1({}, DEFAULT_STATES$2, null == state ? void 0 : state.area), area.name = "mark-area-polygon", this._area = area, container.add(area);
40784
+ const markLabel = new Tag(Object.assign(Object.assign({}, label), {
40785
+ state: {
40786
+ panel: merge$1({}, DEFAULT_STATES$2, null == state ? void 0 : state.labelBackground),
40787
+ text: merge$1({}, DEFAULT_STATES$2, null == state ? void 0 : state.label)
40788
+ }
40789
+ }));
40790
+ markLabel.name = "mark-area-label", this._label = markLabel, container.add(markLabel), this.setLabelPos();
40801
40791
  }
40802
40792
  updateMarker() {
40803
40793
  const {
40804
40794
  points: points,
40795
+ label: label,
40805
40796
  areaStyle: areaStyle,
40806
40797
  state: state
40807
40798
  } = this.attribute;
40808
40799
  this._area && (this._area.setAttributes(Object.assign({
40809
40800
  points: points
40810
- }, areaStyle)), this._area.states = merge$1({}, DEFAULT_STATES$2, null == state ? void 0 : state.area)), this._updateMarkLabels(MarkArea.defaultAttributes.label);
40801
+ }, areaStyle)), this._area.states = merge$1({}, DEFAULT_STATES$2, null == state ? void 0 : state.area)), this._label && this._label.setAttributes(Object.assign(Object.assign({
40802
+ dx: 0,
40803
+ dy: 0
40804
+ }, label), {
40805
+ state: {
40806
+ panel: merge$1({}, DEFAULT_STATES$2, null == state ? void 0 : state.labelBackground),
40807
+ text: merge$1({}, DEFAULT_STATES$2, null == state ? void 0 : state.label)
40808
+ }
40809
+ })), this.setLabelPos();
40811
40810
  }
40812
40811
  isValidPoints() {
40813
40812
  const {
@@ -40820,7 +40819,7 @@ class MarkArea extends Marker {
40820
40819
  }), validFlag;
40821
40820
  }
40822
40821
  }
40823
- MarkArea.defaultAttributes = DEFAULT_MARK_AREA_THEME, mixin(MarkArea, MarkLabelMixin);
40822
+ MarkArea.defaultAttributes = DEFAULT_MARK_AREA_THEME;
40824
40823
 
40825
40824
  loadMarkArcLineComponent();
40826
40825
  function registerMarkArcLineAnimate() {
@@ -40831,19 +40830,24 @@ class MarkArcLine extends MarkCommonLine {
40831
40830
  MarkArcLine._animate && this._animationConfig && MarkArcLine._animate(this._line, this._label, this._animationConfig, state);
40832
40831
  }
40833
40832
  constructor(attributes, options) {
40834
- super((null == options ? void 0 : options.skipDefault) ? attributes : merge$1({}, MarkArcLine.defaultAttributes, attributes)), this.name = "markArcLine";
40833
+ super((null == options ? void 0 : options.skipDefault) ? attributes : merge$1({}, MarkArcLine.defaultAttributes, attributes, {
40834
+ label: {
40835
+ autoRotate: !0
40836
+ }
40837
+ })), this.name = "markArcLine";
40835
40838
  }
40836
- getPointAttrByPosition(direction, labelAttrs) {
40839
+ getPointAttrByPosition(direction) {
40837
40840
  const {
40838
40841
  center: center,
40839
40842
  radius: radius,
40840
40843
  startAngle: startAngle,
40841
- endAngle: endAngle
40844
+ endAngle: endAngle,
40845
+ label: label
40842
40846
  } = this.attribute,
40843
40847
  {
40844
40848
  refX = 0,
40845
40849
  refY = 0
40846
- } = labelAttrs;
40850
+ } = label;
40847
40851
  let angle;
40848
40852
  switch (direction) {
40849
40853
  case IMarkCommonArcLabelPosition.arcInnerStart:
@@ -40873,9 +40877,9 @@ class MarkArcLine extends MarkCommonLine {
40873
40877
  getTextStyle(position) {
40874
40878
  return DEFAULT_POLAR_MARKER_TEXT_STYLE_MAP[position];
40875
40879
  }
40876
- getRotateByAngle(angle, labelAttrs) {
40880
+ getRotateByAngle(angle) {
40877
40881
  var _a;
40878
- return angle - Math.PI / 2 + (null !== (_a = labelAttrs.refAngle) && void 0 !== _a ? _a : 0);
40882
+ return angle - Math.PI / 2 + (null !== (_a = this.attribute.label.refAngle) && void 0 !== _a ? _a : 0);
40879
40883
  }
40880
40884
  createSegment() {
40881
40885
  const {
@@ -40932,12 +40936,6 @@ class MarkArcLine extends MarkCommonLine {
40932
40936
  isValidPoints() {
40933
40937
  return !0;
40934
40938
  }
40935
- addMarkLineLabels(container) {
40936
- this._addMarkLabels(container, "mark-common-line-label", MarkArcLine.defaultAttributes.label);
40937
- }
40938
- updateMarkLineLabels() {
40939
- this._updateMarkLabels(MarkArcLine.defaultAttributes.label);
40940
- }
40941
40939
  }
40942
40940
  MarkArcLine.defaultAttributes = DEFAULT_MARK_ARC_LINE_THEME;
40943
40941
 
@@ -40952,21 +40950,29 @@ class MarkArcArea extends Marker {
40952
40950
  getArea() {
40953
40951
  return this._area;
40954
40952
  }
40953
+ getLabel() {
40954
+ return this._label;
40955
+ }
40955
40956
  constructor(attributes, options) {
40956
- super((null == options ? void 0 : options.skipDefault) ? attributes : merge$1({}, MarkArcArea.defaultAttributes, attributes)), this.name = "markArcArea", this.defaultUpdateAnimation = DefaultUpdateMarkAreaAnimation, this.defaultExitAnimation = DefaultExitMarkerAnimation;
40957
+ super((null == options ? void 0 : options.skipDefault) ? attributes : merge$1({}, MarkArcArea.defaultAttributes, attributes, {
40958
+ label: {
40959
+ autoRotate: !0
40960
+ }
40961
+ })), this.name = "markArcArea", this.defaultUpdateAnimation = DefaultUpdateMarkAreaAnimation, this.defaultExitAnimation = DefaultExitMarkerAnimation;
40957
40962
  }
40958
- getPointAttrByPosition(position, labelAttrs) {
40963
+ getPointAttrByPosition(position) {
40959
40964
  const {
40960
40965
  center: center,
40961
40966
  innerRadius: innerRadius,
40962
40967
  outerRadius: outerRadius,
40963
40968
  startAngle: startAngle,
40964
- endAngle: endAngle
40969
+ endAngle: endAngle,
40970
+ label: label
40965
40971
  } = this.attribute,
40966
40972
  {
40967
40973
  refX = 0,
40968
40974
  refY = 0
40969
- } = labelAttrs;
40975
+ } = label;
40970
40976
  let radius, angle;
40971
40977
  switch (position) {
40972
40978
  case IMarkCommonArcLabelPosition.center:
@@ -41001,25 +41007,28 @@ class MarkArcArea extends Marker {
41001
41007
  angle: angle
41002
41008
  };
41003
41009
  }
41004
- setLabelPos(labelNode, labelAttrs) {
41010
+ setLabelPos() {
41005
41011
  var _a;
41006
- if (this._area) {
41012
+ if (this._label && this._area) {
41007
41013
  const {
41014
+ label = {}
41015
+ } = this.attribute,
41016
+ {
41008
41017
  position: labelPosition = "arcInnerMiddle",
41009
41018
  autoRotate: autoRotate
41010
- } = labelAttrs,
41011
- labelAttr = this.getPointAttrByPosition(labelPosition, labelAttrs);
41012
- if (labelNode.setAttributes(Object.assign(Object.assign({}, labelAttr.position), {
41013
- angle: autoRotate ? labelAttr.angle - Math.PI / 2 + (null !== (_a = labelAttrs.refAngle) && void 0 !== _a ? _a : 0) : 0,
41014
- textStyle: Object.assign(Object.assign({}, DEFAULT_POLAR_MARKER_TEXT_STYLE_MAP[labelPosition]), labelAttrs.textStyle)
41015
- })), this.attribute.limitRect && labelAttrs.confine) {
41019
+ } = label,
41020
+ labelAttr = this.getPointAttrByPosition(labelPosition);
41021
+ if (this._label.setAttributes(Object.assign(Object.assign({}, labelAttr.position), {
41022
+ angle: autoRotate ? labelAttr.angle - Math.PI / 2 + (null !== (_a = label.refAngle) && void 0 !== _a ? _a : 0) : 0,
41023
+ textStyle: Object.assign(Object.assign({}, DEFAULT_POLAR_MARKER_TEXT_STYLE_MAP[labelPosition]), label.textStyle)
41024
+ })), this.attribute.limitRect && label.confine) {
41016
41025
  const {
41017
41026
  x: x,
41018
41027
  y: y,
41019
41028
  width: width,
41020
41029
  height: height
41021
41030
  } = this.attribute.limitRect;
41022
- limitShapeInBounds(labelNode, {
41031
+ limitShapeInBounds(this._label, {
41023
41032
  x1: x,
41024
41033
  y1: y,
41025
41034
  x2: x + width,
@@ -41036,6 +41045,7 @@ class MarkArcArea extends Marker {
41036
41045
  startAngle: startAngle,
41037
41046
  endAngle: endAngle,
41038
41047
  areaStyle: areaStyle,
41048
+ label: label,
41039
41049
  state: state
41040
41050
  } = this.attribute,
41041
41051
  area = graphicCreator.arc(Object.assign({
@@ -41046,7 +41056,14 @@ class MarkArcArea extends Marker {
41046
41056
  startAngle: startAngle,
41047
41057
  endAngle: endAngle
41048
41058
  }, areaStyle));
41049
- area.states = merge$1({}, DEFAULT_STATES$2, null == state ? void 0 : state.area), area.name = "polar-mark-area-area", this._area = area, container.add(area), this._addMarkLabels(container, "mark-area-label", MarkArcArea.defaultAttributes.label);
41059
+ area.states = merge$1({}, DEFAULT_STATES$2, null == state ? void 0 : state.area), area.name = "polar-mark-area-area", this._area = area, container.add(area);
41060
+ const markLabel = new Tag(Object.assign(Object.assign({}, label), {
41061
+ state: {
41062
+ panel: merge$1({}, DEFAULT_STATES$2, null == state ? void 0 : state.labelBackground),
41063
+ text: merge$1({}, DEFAULT_STATES$2, null == state ? void 0 : state.label)
41064
+ }
41065
+ }));
41066
+ markLabel.name = "mark-area-label", this._label = markLabel, container.add(markLabel), this.setLabelPos();
41050
41067
  }
41051
41068
  updateMarker() {
41052
41069
  const {
@@ -41066,13 +41083,21 @@ class MarkArcArea extends Marker {
41066
41083
  outerRadius: outerRadius,
41067
41084
  startAngle: startAngle,
41068
41085
  endAngle: endAngle
41069
- }, areaStyle)), this._area.states = merge$1({}, DEFAULT_STATES$2, null == state ? void 0 : state.area)), this._updateMarkLabels(MarkArcArea.defaultAttributes.label);
41086
+ }, areaStyle)), this._area.states = merge$1({}, DEFAULT_STATES$2, null == state ? void 0 : state.area)), this._label && (this._label.setAttributes(Object.assign(Object.assign({
41087
+ dx: 0,
41088
+ dy: 0
41089
+ }, label), {
41090
+ state: {
41091
+ panel: merge$1({}, DEFAULT_STATES$2, null == state ? void 0 : state.labelBackground),
41092
+ text: merge$1({}, DEFAULT_STATES$2, null == state ? void 0 : state.label)
41093
+ }
41094
+ })), this.setLabelPos());
41070
41095
  }
41071
41096
  isValidPoints() {
41072
41097
  return !0;
41073
41098
  }
41074
41099
  }
41075
- MarkArcArea.defaultAttributes = DEFAULT_MARK_ARC_AREA_THEME, mixin(MarkArcArea, MarkLabelMixin);
41100
+ MarkArcArea.defaultAttributes = DEFAULT_MARK_ARC_AREA_THEME;
41076
41101
 
41077
41102
  loadMarkPointComponent();
41078
41103
  function registerMarkPointAnimate() {
@@ -42592,16 +42617,19 @@ class Slider extends AbstractComponent {
42592
42617
  } = this.attribute;
42593
42618
  tooltip && tooltip.alwaysShow || (this._tooltipState = null, this._tooltipShape && this._tooltipShape.setAttribute("visible", !1), this._tooltipText && this._tooltipText.setAttribute("visible", !1), this._dispatchTooltipEvent("sliderTooltipHide"));
42594
42619
  }, this._onHandlerPointerdown = e => {
42595
- e.stopPropagation(), this._isChanging = !0;
42620
+ e.stopPropagation(), this._clearAllDragEvents(), this._isChanging = !0;
42596
42621
  const {
42597
42622
  x: x,
42598
42623
  y: y
42599
42624
  } = this.stage.eventPointTransform(e);
42600
- this._currentHandler = e.target, this._prePos = this._isHorizontal ? x : y, "browser" === vglobal.env ? (vglobal.addEventListener("pointermove", this._onHandlerPointerMove, {
42601
- capture: !0
42602
- }), vglobal.addEventListener("pointerup", this._onHandlerPointerUp)) : (this.stage.addEventListener("pointermove", this._onHandlerPointerMove, {
42625
+ this._currentHandler = e.target, this._prePos = this._isHorizontal ? x : y;
42626
+ const triggers = getEndTriggersOfDrag(),
42627
+ obj = "browser" === vglobal.env ? vglobal : this.stage;
42628
+ obj.addEventListener("pointermove", this._onHandlerPointerMove, {
42603
42629
  capture: !0
42604
- }), this.stage.addEventListener("pointerup", this._onHandlerPointerUp), this.stage.addEventListener("pointerupoutside", this._onHandlerPointerUp));
42630
+ }), triggers.forEach(trigger => {
42631
+ obj.addEventListener(trigger, this._onHandlerPointerUp);
42632
+ });
42605
42633
  }, this._onHandlerPointerMove = e => {
42606
42634
  var _a, _b;
42607
42635
  e.stopPropagation(), this._isChanging = !0;
@@ -42625,22 +42653,21 @@ class Slider extends AbstractComponent {
42625
42653
  currentValue = this.calculateValueByPos(newPos);
42626
42654
  "text" === this._currentHandler.type ? this._updateHandlerText(this._currentHandler, newPos, currentValue) : this._updateHandler(this._currentHandler, newPos, currentValue), this._updateTrack(), this._prePos = currentPos, this._dispatchChangeEvent();
42627
42655
  }, this._onHandlerPointerUp = e => {
42628
- e.preventDefault(), this._isChanging = !1, this._currentHandler = null, "browser" === vglobal.env ? (vglobal.removeEventListener("pointermove", this._onHandlerPointerMove, {
42629
- capture: !0
42630
- }), vglobal.removeEventListener("pointerup", this._onHandlerPointerUp)) : (this.stage.removeEventListener("pointermove", this._onHandlerPointerMove, {
42631
- capture: !0
42632
- }), this.stage.removeEventListener("pointerup", this._onHandlerPointerUp), this.stage.removeEventListener("pointerupoutside", this._onHandlerPointerUp));
42656
+ e.preventDefault(), this._isChanging = !1, this._currentHandler = null, this._clearAllDragEvents();
42633
42657
  }, this._onTrackPointerdown = e => {
42634
- e.stopPropagation(), this._isChanging = !0;
42658
+ e.stopPropagation(), this._clearAllDragEvents(), this._isChanging = !0;
42635
42659
  const {
42636
42660
  x: x,
42637
42661
  y: y
42638
42662
  } = this.stage.eventPointTransform(e);
42639
- this._prePos = this._isHorizontal ? x : y, "browser" === vglobal.env ? (vglobal.addEventListener("pointermove", this._onTrackPointerMove, {
42640
- capture: !0
42641
- }), vglobal.addEventListener("pointerup", this._onTrackPointerUp)) : (this.stage.addEventListener("pointermove", this._onTrackPointerMove, {
42663
+ this._prePos = this._isHorizontal ? x : y;
42664
+ const triggers = getEndTriggersOfDrag(),
42665
+ obj = "browser" === vglobal.env ? vglobal : this.stage;
42666
+ obj.addEventListener("pointermove", this._onTrackPointerMove, {
42642
42667
  capture: !0
42643
- }), this.stage.addEventListener("pointerup", this._onTrackPointerUp), this.stage.addEventListener("pointerupoutside", this._onTrackPointerUp));
42668
+ }), triggers.forEach(trigger => {
42669
+ obj.addEventListener(trigger, this._onTrackPointerUp);
42670
+ });
42644
42671
  }, this._onTrackPointerMove = e => {
42645
42672
  e.stopPropagation(), this._isChanging = !0;
42646
42673
  const {
@@ -42683,13 +42710,9 @@ class Slider extends AbstractComponent {
42683
42710
  }
42684
42711
  this._prePos = currentPos, this._dispatchChangeEvent();
42685
42712
  }, this._onTrackPointerUp = e => {
42686
- e.preventDefault(), this._isChanging = !1, "browser" === vglobal.env ? (vglobal.removeEventListener("pointermove", this._onTrackPointerMove, {
42687
- capture: !0
42688
- }), vglobal.removeEventListener("pointerup", this._onTrackPointerUp)) : (this.stage.removeEventListener("pointermove", this._onTrackPointerMove, {
42689
- capture: !0
42690
- }), this.stage.removeEventListener("pointerup", this._onTrackPointerUp), this.stage.removeEventListener("pointerupoutside", this._onTrackPointerUp));
42713
+ e.preventDefault(), this._isChanging = !1, this._clearAllDragEvents();
42691
42714
  }, this._onRailPointerDown = e => {
42692
- e.stopPropagation(), this._isChanging = !0;
42715
+ e.stopPropagation(), this._clearAllDragEvents(), this._isChanging = !0;
42693
42716
  const {
42694
42717
  railWidth: railWidth,
42695
42718
  railHeight: railHeight,
@@ -43015,6 +43038,19 @@ class Slider extends AbstractComponent {
43015
43038
  _bindTooltipEvents() {
43016
43039
  this.attribute.disableTriggerEvent || (this._mainContainer.addEventListener("pointerenter", this._onTooltipShow), this._mainContainer.addEventListener("pointermove", this._onTooltipUpdate), this._mainContainer.addEventListener("pointerleave", this._onTooltipHide));
43017
43040
  }
43041
+ _clearAllDragEvents() {
43042
+ const triggers = getEndTriggersOfDrag(),
43043
+ obj = "browser" === vglobal.env ? vglobal : this.stage;
43044
+ obj.removeEventListener("pointermove", this._onHandlerPointerMove, {
43045
+ capture: !0
43046
+ }), triggers.forEach(trigger => {
43047
+ obj.removeEventListener(trigger, this._onHandlerPointerUp);
43048
+ }), obj.removeEventListener("pointermove", this._onTrackPointerMove, {
43049
+ capture: !0
43050
+ }), triggers.forEach(trigger => {
43051
+ obj.removeEventListener(trigger, this._onTrackPointerUp);
43052
+ });
43053
+ }
43018
43054
  _updateTrack() {
43019
43055
  const {
43020
43056
  inverse: inverse,
@@ -63652,7 +63688,7 @@ const registerVChartCore = () => {
63652
63688
  };
63653
63689
  registerVChartCore();
63654
63690
 
63655
- const version = "1.13.9-alpha.2";
63691
+ const version = "1.13.9-alpha.4";
63656
63692
 
63657
63693
  const addVChartProperty = (data, op) => {
63658
63694
  const context = op.beforeCall();
@@ -98023,14 +98059,13 @@ class BaseMarkLine extends BaseMarker {
98023
98059
  return 'cartesian';
98024
98060
  }
98025
98061
  _createMarkerComponent() {
98026
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o;
98027
- const { startSymbol = {}, endSymbol = {} } = this._spec;
98028
- const label = array((_a = this._spec.label) !== null && _a !== void 0 ? _a : {});
98062
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u;
98063
+ const { label = {}, startSymbol = {}, endSymbol = {} } = this._spec;
98029
98064
  const markLineAttrs = {
98030
98065
  zIndex: this.layoutZIndex,
98031
- interactive: (_b = this._spec.interactive) !== null && _b !== void 0 ? _b : true,
98032
- hover: (_c = this._spec.interactive) !== null && _c !== void 0 ? _c : true,
98033
- select: (_d = this._spec.interactive) !== null && _d !== void 0 ? _d : true,
98066
+ interactive: (_a = this._spec.interactive) !== null && _a !== void 0 ? _a : true,
98067
+ hover: (_b = this._spec.interactive) !== null && _b !== void 0 ? _b : true,
98068
+ select: (_c = this._spec.interactive) !== null && _c !== void 0 ? _c : true,
98034
98069
  points: [
98035
98070
  { x: 0, y: 0 },
98036
98071
  { x: 0, y: 0 }
@@ -98042,25 +98077,17 @@ class BaseMarkLine extends BaseMarker {
98042
98077
  radius: 0,
98043
98078
  startAngle: 0,
98044
98079
  endAngle: 0,
98045
- lineStyle: transformStyle(transformToGraphic((_e = this._spec.line) === null || _e === void 0 ? void 0 : _e.style), this._markerData, this._markAttributeContext),
98046
- clipInRange: (_f = this._spec.clip) !== null && _f !== void 0 ? _f : false,
98047
- label: label.map(labelItem => {
98048
- return transformLabelAttributes(labelItem, this._markerData, this._markAttributeContext);
98049
- }),
98080
+ lineStyle: transformStyle(transformToGraphic((_d = this._spec.line) === null || _d === void 0 ? void 0 : _d.style), this._markerData, this._markAttributeContext),
98081
+ clipInRange: (_e = this._spec.clip) !== null && _e !== void 0 ? _e : false,
98082
+ label: transformLabelAttributes(label, this._markerData, this._markAttributeContext),
98050
98083
  state: {
98051
- line: transformState((_h = (_g = this._spec.line) === null || _g === void 0 ? void 0 : _g.state) !== null && _h !== void 0 ? _h : {}, this._markerData, this._markAttributeContext),
98052
- lineStartSymbol: transformState((_k = (_j = this._spec.startSymbol) === null || _j === void 0 ? void 0 : _j.state) !== null && _k !== void 0 ? _k : {}, this._markerData, this._markAttributeContext),
98053
- lineEndSymbol: transformState((_m = (_l = this._spec.endSymbol) === null || _l === void 0 ? void 0 : _l.state) !== null && _m !== void 0 ? _m : {}, this._markerData, this._markAttributeContext),
98054
- label: label.map(labelItem => {
98055
- var _a;
98056
- return transformState((_a = labelItem.state) !== null && _a !== void 0 ? _a : {}, this._markerData, this._markAttributeContext);
98057
- }),
98058
- labelBackground: label.map(labelItem => {
98059
- var _a, _b;
98060
- return transformState((_b = (_a = labelItem.labelBackground) === null || _a === void 0 ? void 0 : _a.state) !== null && _b !== void 0 ? _b : {}, this._markerData, this._markAttributeContext);
98061
- })
98084
+ line: transformState((_g = (_f = this._spec.line) === null || _f === void 0 ? void 0 : _f.state) !== null && _g !== void 0 ? _g : {}, this._markerData, this._markAttributeContext),
98085
+ lineStartSymbol: transformState((_j = (_h = this._spec.startSymbol) === null || _h === void 0 ? void 0 : _h.state) !== null && _j !== void 0 ? _j : {}, this._markerData, this._markAttributeContext),
98086
+ lineEndSymbol: transformState((_l = (_k = this._spec.endSymbol) === null || _k === void 0 ? void 0 : _k.state) !== null && _l !== void 0 ? _l : {}, this._markerData, this._markAttributeContext),
98087
+ label: transformState((_p = (_o = (_m = this._spec) === null || _m === void 0 ? void 0 : _m.label) === null || _o === void 0 ? void 0 : _o.state) !== null && _p !== void 0 ? _p : {}, this._markerData, this._markAttributeContext),
98088
+ labelBackground: transformState((_t = (_s = (_r = (_q = this._spec) === null || _q === void 0 ? void 0 : _q.label) === null || _r === void 0 ? void 0 : _r.labelBackground) === null || _s === void 0 ? void 0 : _s.state) !== null && _t !== void 0 ? _t : {}, this._markerData, this._markAttributeContext)
98062
98089
  },
98063
- animation: (_o = this._spec.animation) !== null && _o !== void 0 ? _o : false,
98090
+ animation: (_u = this._spec.animation) !== null && _u !== void 0 ? _u : false,
98064
98091
  animationEnter: this._spec.animationEnter,
98065
98092
  animationExit: this._spec.animationExit,
98066
98093
  animationUpdate: this._spec.animationUpdate
@@ -98085,7 +98112,7 @@ class BaseMarkLine extends BaseMarker {
98085
98112
  return markLine;
98086
98113
  }
98087
98114
  _getUpdateMarkerAttrs() {
98088
- var _a, _b;
98115
+ var _a, _b, _c, _d;
98089
98116
  const spec = this._spec;
98090
98117
  const data = this._markerData;
98091
98118
  const startRelativeSeries = this._startRelativeSeries;
@@ -98095,7 +98122,7 @@ class BaseMarkLine extends BaseMarker {
98095
98122
  const seriesData = relativeSeries.getViewData().latestData;
98096
98123
  const dataPoints = data.latestData[0] && data.latestData[0].latestData ? data.latestData[0].latestData : data.latestData;
98097
98124
  let limitRect;
98098
- if (spec.clip || array(spec.label).some(labelCfg => labelCfg === null || labelCfg === void 0 ? void 0 : labelCfg.confine)) {
98125
+ if (spec.clip || ((_a = spec.label) === null || _a === void 0 ? void 0 : _a.confine)) {
98099
98126
  const { minX, maxX, minY, maxY } = computeClipRange([
98100
98127
  startRelativeSeries.getRegion(),
98101
98128
  endRelativeSeries.getRegion(),
@@ -98108,13 +98135,10 @@ class BaseMarkLine extends BaseMarker {
98108
98135
  height: maxY - minY
98109
98136
  };
98110
98137
  }
98111
- const markerComponentAttr = (_b = (_a = this._markerComponent) === null || _a === void 0 ? void 0 : _a.attribute) !== null && _b !== void 0 ? _b : {};
98112
- const prevLabelAttrs = array(markerComponentAttr.label);
98113
- const specLabels = array(this._spec.label);
98114
- const labelAttrs = prevLabelAttrs.map((prevLabel, index) => {
98115
- const specLabel = specLabels[index] || {};
98116
- return Object.assign(Object.assign({}, prevLabel), { text: specLabel.formatMethod ? specLabel.formatMethod(dataPoints, seriesData) : prevLabel === null || prevLabel === void 0 ? void 0 : prevLabel.text });
98117
- });
98138
+ const markerComponentAttr = (_c = (_b = this._markerComponent) === null || _b === void 0 ? void 0 : _b.attribute) !== null && _c !== void 0 ? _c : {};
98139
+ const labelAttrs = Object.assign(Object.assign({}, markerComponentAttr.label), { text: this._spec.label.formatMethod
98140
+ ? this._spec.label.formatMethod(dataPoints, seriesData)
98141
+ : (_d = markerComponentAttr.label) === null || _d === void 0 ? void 0 : _d.text });
98118
98142
  return Object.assign(Object.assign({}, pointsAttr), { label: labelAttrs, limitRect, dx: this._layoutOffsetX, dy: this._layoutOffsetY });
98119
98143
  }
98120
98144
  _markerLayout() {
@@ -98216,7 +98240,7 @@ class CartesianMarkLine extends BaseMarkLine {
98216
98240
  return { points };
98217
98241
  }
98218
98242
  _markerLayout() {
98219
- var _a, _b, _c, _d;
98243
+ var _a, _b, _c, _d, _e, _f, _g, _h;
98220
98244
  const updateAttrs = this._getUpdateMarkerAttrs();
98221
98245
  if (this._spec.type === 'type-step') {
98222
98246
  const startRelativeSeries = this._startRelativeSeries;
@@ -98243,23 +98267,34 @@ class CartesianMarkLine extends BaseMarkLine {
98243
98267
  else {
98244
98268
  expandDistanceValue = expandDistance;
98245
98269
  }
98246
- const { points, limitRect } = updateAttrs;
98270
+ const { points, label, limitRect } = updateAttrs;
98247
98271
  const joinPoints = getInsertPoints(points[0], points[1], connectDirection, expandDistanceValue);
98248
98272
  let labelPositionAttrs;
98249
98273
  if (multiSegment && isValid$1(mainSegmentIndex)) {
98250
98274
  labelPositionAttrs = {
98251
98275
  position: 'middle',
98252
- autoRotate: false
98276
+ autoRotate: false,
98277
+ refX: 0,
98278
+ refY: 0
98253
98279
  };
98254
98280
  }
98255
98281
  else {
98256
- labelPositionAttrs = Object.assign({ position: 'start', autoRotate: false }, getTextOffset(points[0], points[1], connectDirection, expandDistanceValue));
98282
+ labelPositionAttrs = Object.assign(Object.assign({ position: 'start', autoRotate: false }, getTextOffset(points[0], points[1], connectDirection, expandDistanceValue)), { refX: 0, refY: 0 });
98283
+ }
98284
+ if (isValidNumber$1((_a = this._spec.label) === null || _a === void 0 ? void 0 : _a.refX)) {
98285
+ labelPositionAttrs.refX += this._spec.label.refX;
98286
+ }
98287
+ if (isValidNumber$1((_b = this._spec.label) === null || _b === void 0 ? void 0 : _b.refY)) {
98288
+ labelPositionAttrs.refY += this._spec.label.refY;
98289
+ }
98290
+ if (isValidNumber$1((_c = this._spec.label) === null || _c === void 0 ? void 0 : _c.dx)) {
98291
+ labelPositionAttrs.dx = (labelPositionAttrs.dx || 0) + this._spec.label.dx;
98292
+ }
98293
+ if (isValidNumber$1((_d = this._spec.label) === null || _d === void 0 ? void 0 : _d.dy)) {
98294
+ labelPositionAttrs.dy = (labelPositionAttrs.dy || 0) + this._spec.label.dy;
98257
98295
  }
98258
- const markerComponentAttr = (_b = (_a = this._markerComponent) === null || _a === void 0 ? void 0 : _a.attribute) !== null && _b !== void 0 ? _b : {};
98259
- const prevLabelAttrs = array(markerComponentAttr.label);
98260
- const updateLabels = array(updateAttrs.label);
98261
- const labelsInSpec = array(this._spec.label);
98262
- (_c = this._markerComponent) === null || _c === void 0 ? void 0 : _c.setAttributes({
98296
+ const markerComponentAttr = (_f = (_e = this._markerComponent) === null || _e === void 0 ? void 0 : _e.attribute) !== null && _f !== void 0 ? _f : {};
98297
+ (_g = this._markerComponent) === null || _g === void 0 ? void 0 : _g.setAttributes({
98263
98298
  points: multiSegment
98264
98299
  ? [
98265
98300
  [joinPoints[0], joinPoints[1]],
@@ -98267,30 +98302,7 @@ class CartesianMarkLine extends BaseMarkLine {
98267
98302
  [joinPoints[2], joinPoints[3]]
98268
98303
  ]
98269
98304
  : joinPoints,
98270
- label: updateLabels.map((labelItem, index) => {
98271
- var _a, _b, _c, _d;
98272
- let refX = 0;
98273
- let refY = 0;
98274
- let dx = (_a = labelPositionAttrs.dx) !== null && _a !== void 0 ? _a : 0;
98275
- let dy = (_b = labelPositionAttrs.dy) !== null && _b !== void 0 ? _b : 0;
98276
- const labelSpec = (_c = labelsInSpec[index]) !== null && _c !== void 0 ? _c : labelsInSpec[0];
98277
- if (isValidNumber$1(labelSpec === null || labelSpec === void 0 ? void 0 : labelSpec.refX)) {
98278
- refX += labelSpec.refX;
98279
- }
98280
- if (isValidNumber$1(labelSpec === null || labelSpec === void 0 ? void 0 : labelSpec.refY)) {
98281
- refY += labelSpec.refY;
98282
- }
98283
- if (isValidNumber$1(labelSpec === null || labelSpec === void 0 ? void 0 : labelSpec.dx)) {
98284
- dx += labelSpec.dx;
98285
- }
98286
- if (isValidNumber$1(labelSpec === null || labelSpec === void 0 ? void 0 : labelSpec.dy)) {
98287
- dy += labelSpec.dy;
98288
- }
98289
- return Object.assign(Object.assign(Object.assign({}, labelItem), labelPositionAttrs), { refX,
98290
- refY,
98291
- dx,
98292
- dy, textStyle: Object.assign(Object.assign({}, (_d = prevLabelAttrs[index]) === null || _d === void 0 ? void 0 : _d.textStyle), { textAlign: 'center', textBaseline: 'middle' }) });
98293
- }),
98305
+ label: Object.assign(Object.assign(Object.assign({}, label), labelPositionAttrs), { textStyle: Object.assign(Object.assign({}, markerComponentAttr.label.textStyle), { textAlign: 'center', textBaseline: 'middle' }) }),
98294
98306
  limitRect,
98295
98307
  multiSegment,
98296
98308
  mainSegmentIndex,
@@ -98299,7 +98311,7 @@ class CartesianMarkLine extends BaseMarkLine {
98299
98311
  });
98300
98312
  }
98301
98313
  else {
98302
- (_d = this._markerComponent) === null || _d === void 0 ? void 0 : _d.setAttributes(updateAttrs);
98314
+ (_h = this._markerComponent) === null || _h === void 0 ? void 0 : _h.setAttributes(updateAttrs);
98303
98315
  }
98304
98316
  }
98305
98317
  _computeOptions() {
@@ -98653,8 +98665,8 @@ class BaseMarkArea extends BaseMarker {
98653
98665
  return 'cartesian';
98654
98666
  }
98655
98667
  _createMarkerComponent() {
98656
- var _a, _b, _c, _d, _e, _f, _g, _h;
98657
- const label = array((_a = this._spec.label) !== null && _a !== void 0 ? _a : {});
98668
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
98669
+ const label = (_a = this._spec.label) !== null && _a !== void 0 ? _a : {};
98658
98670
  const markAreaAttrs = {
98659
98671
  zIndex: this.layoutZIndex,
98660
98672
  interactive: (_b = this._spec.interactive) !== null && _b !== void 0 ? _b : true,
@@ -98676,20 +98688,13 @@ class BaseMarkArea extends BaseMarker {
98676
98688
  endAngle: 0,
98677
98689
  areaStyle: transformStyle(transformToGraphic((_e = this._spec.area) === null || _e === void 0 ? void 0 : _e.style), this._markerData, this._markAttributeContext),
98678
98690
  clipInRange: (_f = this._spec.clip) !== null && _f !== void 0 ? _f : false,
98679
- label: label.map((labelItem) => {
98680
- return transformLabelAttributes(labelItem, this._markerData, this._markAttributeContext);
98681
- }),
98691
+ label: transformLabelAttributes(label, this._markerData, this._markAttributeContext),
98682
98692
  state: {
98683
98693
  area: transformState((_g = this._spec.area) === null || _g === void 0 ? void 0 : _g.state, this._markerData, this._markAttributeContext),
98684
- label: label.map((labelItem) => {
98685
- return transformState(labelItem.state, this._markerData, this._markAttributeContext);
98686
- }),
98687
- labelBackground: label.map((labelItem) => {
98688
- var _a;
98689
- return transformState((_a = labelItem.labelBackground) === null || _a === void 0 ? void 0 : _a.state, this._markerData, this._markAttributeContext);
98690
- })
98694
+ label: transformState((_h = this._spec.label) === null || _h === void 0 ? void 0 : _h.state, this._markerData, this._markAttributeContext),
98695
+ labelBackground: transformState((_l = (_k = (_j = this._spec) === null || _j === void 0 ? void 0 : _j.label) === null || _k === void 0 ? void 0 : _k.labelBackground) === null || _l === void 0 ? void 0 : _l.state, this._markerData, this._markAttributeContext)
98691
98696
  },
98692
- animation: (_h = this._spec.animation) !== null && _h !== void 0 ? _h : false,
98697
+ animation: (_m = this._spec.animation) !== null && _m !== void 0 ? _m : false,
98693
98698
  animationEnter: this._spec.animationEnter,
98694
98699
  animationExit: this._spec.animationExit,
98695
98700
  animationUpdate: this._spec.animationUpdate
@@ -98698,7 +98703,7 @@ class BaseMarkArea extends BaseMarker {
98698
98703
  return markArea;
98699
98704
  }
98700
98705
  _markerLayout() {
98701
- var _a;
98706
+ var _a, _b, _c, _d;
98702
98707
  const spec = this._spec;
98703
98708
  const data = this._markerData;
98704
98709
  const startRelativeSeries = this._startRelativeSeries;
@@ -98712,7 +98717,7 @@ class BaseMarkArea extends BaseMarker {
98712
98717
  : data.latestData
98713
98718
  : seriesData;
98714
98719
  let limitRect;
98715
- if (spec.clip || array(spec.label).some(labelCfg => labelCfg === null || labelCfg === void 0 ? void 0 : labelCfg.confine)) {
98720
+ if (spec.clip || ((_a = spec.label) === null || _a === void 0 ? void 0 : _a.confine)) {
98716
98721
  const { minX, maxX, minY, maxY } = computeClipRange([
98717
98722
  startRelativeSeries.getRegion(),
98718
98723
  endRelativeSeries.getRegion(),
@@ -98726,15 +98731,10 @@ class BaseMarkArea extends BaseMarker {
98726
98731
  };
98727
98732
  }
98728
98733
  if (this._markerComponent) {
98729
- const prevLabelAttrs = array((_a = this._markerComponent.attribute) === null || _a === void 0 ? void 0 : _a.label);
98730
- const specLabels = array(this._spec.label);
98731
- this._markerComponent.setAttributes(Object.assign(Object.assign({}, pointsAttr), { label: prevLabelAttrs.map((prevLabel, index) => {
98732
- const specLabel = specLabels[index] || {};
98733
- return Object.assign(Object.assign({}, prevLabel), { text: specLabel.formatMethod
98734
- ?
98735
- specLabel.formatMethod(dataPoints, seriesData)
98736
- : prevLabel === null || prevLabel === void 0 ? void 0 : prevLabel.text });
98737
- }), limitRect, dx: this._layoutOffsetX, dy: this._layoutOffsetY }));
98734
+ this._markerComponent.setAttributes(Object.assign(Object.assign({}, pointsAttr), { label: Object.assign(Object.assign({}, (_b = this._markerComponent.attribute) === null || _b === void 0 ? void 0 : _b.label), { text: this._spec.label.formatMethod
98735
+ ?
98736
+ this._spec.label.formatMethod(dataPoints, seriesData)
98737
+ : (_d = (_c = this._markerComponent.attribute) === null || _c === void 0 ? void 0 : _c.label) === null || _d === void 0 ? void 0 : _d.text }), limitRect, dx: this._layoutOffsetX, dy: this._layoutOffsetY }));
98738
98738
  }
98739
98739
  }
98740
98740
  _initDataView() {