@visactor/vchart 1.13.8-alpha.6 → 1.13.8-alpha.8

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 (78) hide show
  1. package/build/es5/index.js +2 -2
  2. package/build/index.es.js +69 -113
  3. package/build/index.js +69 -113
  4. package/build/index.min.js +1 -1
  5. package/build/tsconfig.tsbuildinfo +1 -1
  6. package/cjs/animation/utils.d.ts +2 -2
  7. package/cjs/chart/base/base-chart.d.ts +3 -3
  8. package/cjs/chart/base/base-chart.js.map +1 -1
  9. package/cjs/chart/interface/chart.d.ts +2 -2
  10. package/cjs/chart/interface/chart.js.map +1 -1
  11. package/cjs/chart/stack.js +2 -2
  12. package/cjs/chart/stack.js.map +1 -1
  13. package/cjs/compile/mark/compilable-mark.d.ts +2 -2
  14. package/cjs/compile/mark/compilable-mark.js.map +1 -1
  15. package/cjs/component/label/interface.d.ts +0 -1
  16. package/cjs/component/label/interface.js.map +1 -1
  17. package/cjs/component/legend/continuous/util.js +2 -3
  18. package/cjs/component/legend/continuous/util.js.map +1 -1
  19. package/cjs/component/legend/discrete/util.js +2 -3
  20. package/cjs/component/legend/discrete/util.js.map +1 -1
  21. package/cjs/constant/event.d.ts +0 -1
  22. package/cjs/constant/event.js +2 -3
  23. package/cjs/constant/event.js.map +1 -1
  24. package/cjs/core/index.d.ts +1 -1
  25. package/cjs/core/index.js +2 -3
  26. package/cjs/core/index.js.map +1 -1
  27. package/cjs/core/interface.js +2 -1
  28. package/cjs/core/vchart.js.map +1 -1
  29. package/cjs/data/transforms/dimension-statistics.js +1 -1
  30. package/cjs/data/transforms/dimension-statistics.js.map +1 -1
  31. package/cjs/event/event-dispatcher.d.ts +1 -4
  32. package/cjs/event/event-dispatcher.js +3 -2
  33. package/cjs/event/event-dispatcher.js.map +1 -1
  34. package/cjs/event/event.d.ts +1 -4
  35. package/cjs/event/event.js.map +1 -1
  36. package/cjs/event/interface.d.ts +2 -8
  37. package/cjs/event/interface.js.map +1 -1
  38. package/cjs/interaction/zoom/zoomable.js +1 -6
  39. package/cjs/interaction/zoom/zoomable.js.map +1 -1
  40. package/cjs/typings/spec/common.d.ts +1 -1
  41. package/cjs/typings/spec/common.js.map +1 -1
  42. package/esm/animation/utils.d.ts +2 -2
  43. package/esm/chart/base/base-chart.d.ts +3 -3
  44. package/esm/chart/base/base-chart.js.map +1 -1
  45. package/esm/chart/interface/chart.d.ts +2 -2
  46. package/esm/chart/interface/chart.js.map +1 -1
  47. package/esm/chart/stack.js +2 -2
  48. package/esm/chart/stack.js.map +1 -1
  49. package/esm/compile/mark/compilable-mark.d.ts +2 -2
  50. package/esm/compile/mark/compilable-mark.js.map +1 -1
  51. package/esm/component/label/interface.d.ts +0 -1
  52. package/esm/component/label/interface.js.map +1 -1
  53. package/esm/component/legend/continuous/util.js +2 -3
  54. package/esm/component/legend/continuous/util.js.map +1 -1
  55. package/esm/component/legend/discrete/util.js +3 -5
  56. package/esm/component/legend/discrete/util.js.map +1 -1
  57. package/esm/constant/event.d.ts +0 -1
  58. package/esm/constant/event.js +0 -2
  59. package/esm/constant/event.js.map +1 -1
  60. package/esm/core/index.d.ts +1 -1
  61. package/esm/core/index.js +2 -3
  62. package/esm/core/index.js.map +1 -1
  63. package/esm/core/interface.js +2 -1
  64. package/esm/core/vchart.js.map +1 -1
  65. package/esm/data/transforms/dimension-statistics.js +1 -1
  66. package/esm/data/transforms/dimension-statistics.js.map +1 -1
  67. package/esm/event/event-dispatcher.d.ts +1 -4
  68. package/esm/event/event-dispatcher.js +3 -2
  69. package/esm/event/event-dispatcher.js.map +1 -1
  70. package/esm/event/event.d.ts +1 -4
  71. package/esm/event/event.js.map +1 -1
  72. package/esm/event/interface.d.ts +2 -8
  73. package/esm/event/interface.js.map +1 -1
  74. package/esm/interaction/zoom/zoomable.js +1 -6
  75. package/esm/interaction/zoom/zoomable.js.map +1 -1
  76. package/esm/typings/spec/common.d.ts +1 -1
  77. package/esm/typings/spec/common.js.map +1 -1
  78. package/package.json +16 -16
package/build/index.es.js CHANGED
@@ -44398,7 +44398,7 @@ var IOperateType;
44398
44398
  const DEFAULT_BRUSH_ATTRIBUTES = {
44399
44399
  trigger: "pointerdown",
44400
44400
  updateTrigger: "pointermove",
44401
- endTrigger: "pointerup",
44401
+ endTrigger: ["pointerup", "pointerleave"],
44402
44402
  resetTrigger: "pointerupoutside",
44403
44403
  hasMask: !0,
44404
44404
  brushMode: "single",
@@ -44436,41 +44436,22 @@ let Brush$1 = class Brush extends AbstractComponent {
44436
44436
  super((null == options ? void 0 : options.skipDefault) ? attributes : merge$1({}, Brush.defaultAttributes, attributes)), this.name = "brush", this._activeDrawState = !1, this._cacheDrawPoints = [], this._isDrawedBeforeEnd = !1, this._isDownBeforeUpOutside = !1, this._activeMoveState = !1, this._operatingMaskMoveDx = 0, this._operatingMaskMoveDy = 0, this._operatingMaskMoveRangeX = [-1 / 0, 1 / 0], this._operatingMaskMoveRangeY = [-1 / 0, 1 / 0], this._brushMaskAABBBoundsDict = {}, this._onBrushStart = e => {
44437
44437
  var _a;
44438
44438
  if (this._outOfInteractiveRange(e)) return void (this._isDownBeforeUpOutside = !0);
44439
- e.stopPropagation();
44439
+ this._isDownBeforeUpOutside = !1, e.stopPropagation();
44440
44440
  const brushMoved = null === (_a = this.attribute.brushMoved) || void 0 === _a || _a;
44441
44441
  this._activeMoveState = brushMoved && this._isPosInBrushMask(e), this._activeDrawState = !this._activeMoveState, this._activeDrawState && this._initDraw(e), this._activeMoveState && this._initMove(e);
44442
44442
  }, this._onBrushing = e => {
44443
44443
  this._outOfInteractiveRange(e) || ((this._activeDrawState || this._activeMoveState) && e.stopPropagation(), this._activeDrawState && this._drawing(e), this._activeMoveState && this._moving(e));
44444
44444
  }, this._onBrushingWithDelay = 0 === this.attribute.delayTime ? this._onBrushing : delayMap$1[this.attribute.delayType](this._onBrushing, this.attribute.delayTime), this._onBrushEnd = e => {
44445
44445
  var _a;
44446
+ if (this._isDownBeforeUpOutside) return this._isEmptyMask() || (this._clearMask(), this._dispatchBrushEvent(IOperateType.brushClear, e)), void (this._isDownBeforeUpOutside = !1);
44446
44447
  if (!this._activeDrawState && !this._activeMoveState) return;
44447
44448
  e.preventDefault();
44448
44449
  const {
44449
44450
  removeOnClick = !0
44450
44451
  } = this.attribute;
44451
- this._activeDrawState && !this._isDrawedBeforeEnd && removeOnClick ? ((null === (_a = this._operatingMask) || void 0 === _a ? void 0 : _a._AABBBounds.empty()) && this._dispatchEvent(IOperateType.brushClear, {
44452
- operateMask: this._operatingMask,
44453
- operatedMaskAABBBounds: this._brushMaskAABBBoundsDict,
44454
- event: e
44455
- }), this._container.incrementalClearChild(), this._brushMaskAABBBoundsDict = {}) : (this._activeDrawState && this._dispatchEvent(IOperateType.drawEnd, {
44456
- operateMask: this._operatingMask,
44457
- operatedMaskAABBBounds: this._brushMaskAABBBoundsDict,
44458
- event: e
44459
- }), this._activeMoveState && this._dispatchEvent(IOperateType.moveEnd, {
44460
- operateMask: this._operatingMask,
44461
- operatedMaskAABBBounds: this._brushMaskAABBBoundsDict,
44462
- event: e
44463
- })), this._activeDrawState = !1, this._activeMoveState = !1, this._isDrawedBeforeEnd = !1, this._operatingMask && this._operatingMask.setAttribute("pickable", !1);
44452
+ this._activeDrawState && !this._isDrawedBeforeEnd && removeOnClick ? (null === (_a = this._operatingMask) || void 0 === _a ? void 0 : _a._AABBBounds.empty()) ? this._isEmptyMask() || (this._clearMask(), this._dispatchBrushEvent(IOperateType.brushClear, e)) : (delete this._brushMaskAABBBoundsDict[this._operatingMask.name], this._container.setAttributes({}), this._container.removeChild(this._operatingMask), this._isEmptyMask() ? this._dispatchBrushEvent(IOperateType.drawEnd, e) : this._dispatchBrushEvent(IOperateType.brushClear, e)) : (this._activeDrawState && this._dispatchBrushEvent(IOperateType.drawEnd, e), this._activeMoveState && this._dispatchBrushEvent(IOperateType.moveEnd, e)), this._activeDrawState = !1, this._activeMoveState = !1, this._isDrawedBeforeEnd = !1, this._operatingMask && this._operatingMask.setAttribute("pickable", !1);
44464
44453
  }, this._onBrushClear = e => {
44465
- e.preventDefault();
44466
- const {
44467
- removeOnClick = !0
44468
- } = this.attribute;
44469
- this._isDownBeforeUpOutside && removeOnClick && (this._dispatchEvent(IOperateType.brushClear, {
44470
- operateMask: this._operatingMask,
44471
- operatedMaskAABBBounds: this._brushMaskAABBBoundsDict,
44472
- event: e
44473
- }), this._container.incrementalClearChild(), this._brushMaskAABBBoundsDict = {}), this._activeDrawState = !1, this._activeMoveState = !1, this._isDrawedBeforeEnd = !1, this._isDownBeforeUpOutside = !1, this._operatingMask && this._operatingMask.setAttribute("pickable", !1);
44454
+ e.preventDefault(), this._isEmptyMask() || (this._clearMask(), this._dispatchBrushEvent(IOperateType.brushClear, e)), this._activeDrawState = !1, this._activeMoveState = !1, this._isDrawedBeforeEnd = !1, this._isDownBeforeUpOutside = !1;
44474
44455
  };
44475
44456
  }
44476
44457
  _bindBrushEvents() {
@@ -44481,35 +44462,14 @@ let Brush$1 = class Brush extends AbstractComponent {
44481
44462
  endTrigger = DEFAULT_BRUSH_ATTRIBUTES.endTrigger,
44482
44463
  resetTrigger = DEFAULT_BRUSH_ATTRIBUTES.resetTrigger
44483
44464
  } = this.attribute;
44484
- array(trigger).forEach(t => vglobal.addEventListener(t, this._onBrushStart)), array(updateTrigger).forEach(t => this.stage.addEventListener(t, this._onBrushingWithDelay)), array(endTrigger).forEach(t => this.stage.addEventListener(t, this._onBrushEnd)), array(resetTrigger).forEach(t => this.stage.addEventListener(t, this._onBrushClear));
44485
- }
44486
- _isPosInBrushMask(e) {
44487
- const pos = this.eventPosToStagePos(e),
44488
- brushMasks = this._container.getChildren();
44489
- for (let i = 0; i < brushMasks.length; i++) {
44490
- const {
44491
- points = [],
44492
- dx = 0,
44493
- dy = 0
44494
- } = brushMasks[i].attribute,
44495
- pointsConsiderOffset = points.map(point => ({
44496
- x: point.x + dx,
44497
- y: point.y + dy
44498
- }));
44499
- if (polygonContainPoint(pointsConsiderOffset, pos.x, pos.y)) return this._operatingMask = brushMasks[i], !0;
44500
- }
44501
- return !1;
44465
+ array(trigger).forEach(t => this.stage.addEventListener(t, this._onBrushStart)), array(updateTrigger).forEach(t => this.stage.addEventListener(t, this._onBrushingWithDelay)), array(endTrigger).forEach(t => this.stage.addEventListener(t, this._onBrushEnd)), array(resetTrigger).forEach(t => this.stage.addEventListener(t, this._onBrushClear));
44502
44466
  }
44503
44467
  _initDraw(e) {
44504
44468
  const {
44505
44469
  brushMode: brushMode
44506
44470
  } = this.attribute,
44507
44471
  pos = this.eventPosToStagePos(e);
44508
- this._cacheDrawPoints = [pos], this._isDrawedBeforeEnd = !1, "single" === brushMode && (this._brushMaskAABBBoundsDict = {}, this._container.incrementalClearChild()), this._addBrushMask(), this._dispatchEvent(IOperateType.drawStart, {
44509
- operateMask: this._operatingMask,
44510
- operatedMaskAABBBounds: this._brushMaskAABBBoundsDict,
44511
- event: e
44512
- });
44472
+ this._cacheDrawPoints = [pos], this._isDrawedBeforeEnd = !1, "single" === brushMode && this._clearMask(), this._addBrushMask(), this._dispatchBrushEvent(IOperateType.drawStart, e);
44513
44473
  }
44514
44474
  _initMove(e) {
44515
44475
  var _a, _b;
@@ -44533,11 +44493,7 @@ let Brush$1 = class Brush extends AbstractComponent {
44533
44493
  maxMoveStepX = maxX - x2,
44534
44494
  minMoveStepY = minY - y1,
44535
44495
  maxMoveStepY = maxY - y2;
44536
- this._operatingMaskMoveRangeX = [minMoveStepX, maxMoveStepX], this._operatingMaskMoveRangeY = [minMoveStepY, maxMoveStepY], this._operatingMask.setAttribute("pickable", !0), this._dispatchEvent(IOperateType.moveStart, {
44537
- operateMask: this._operatingMask,
44538
- operatedMaskAABBBounds: this._brushMaskAABBBoundsDict,
44539
- event: e
44540
- });
44496
+ this._operatingMaskMoveRangeX = [minMoveStepX, maxMoveStepX], this._operatingMaskMoveRangeY = [minMoveStepY, maxMoveStepY], this._operatingMask.setAttribute("pickable", !0), this._dispatchBrushEvent(IOperateType.moveStart, e);
44541
44497
  }
44542
44498
  _drawing(e) {
44543
44499
  var _a, _b;
@@ -44560,11 +44516,7 @@ let Brush$1 = class Brush extends AbstractComponent {
44560
44516
  y1 = 0,
44561
44517
  y2 = 0
44562
44518
  } = null === (_b = this._operatingMask) || void 0 === _b ? void 0 : _b._AABBBounds;
44563
- this._isDrawedBeforeEnd = !this._operatingMask._AABBBounds.empty() && !!(Math.abs(x2 - x1) > sizeThreshold || Math.abs(y1 - y2) > sizeThreshold), this._isDrawedBeforeEnd && (this._brushMaskAABBBoundsDict[this._operatingMask.name] = this._operatingMask.AABBBounds, this._dispatchEvent(IOperateType.drawing, {
44564
- operateMask: this._operatingMask,
44565
- operatedMaskAABBBounds: this._brushMaskAABBBoundsDict,
44566
- event: e
44567
- }));
44519
+ this._isDrawedBeforeEnd = !this._operatingMask._AABBBounds.empty() && !!(Math.abs(x2 - x1) > sizeThreshold || Math.abs(y1 - y2) > sizeThreshold), this._isDrawedBeforeEnd && (this._brushMaskAABBBoundsDict[this._operatingMask.name] = this._operatingMask.AABBBounds), this._dispatchBrushEvent(IOperateType.drawing, e);
44568
44520
  }
44569
44521
  _moving(e) {
44570
44522
  const startPos = this._cacheMovePoint,
@@ -44577,11 +44529,21 @@ let Brush$1 = class Brush extends AbstractComponent {
44577
44529
  this._operatingMask.setAttributes({
44578
44530
  dx: moveX,
44579
44531
  dy: moveY
44580
- }), this._brushMaskAABBBoundsDict[this._operatingMask.name] = this._operatingMask.AABBBounds, this._dispatchEvent(IOperateType.moving, {
44581
- operateMask: this._operatingMask,
44582
- operatedMaskAABBBounds: this._brushMaskAABBBoundsDict,
44583
- event: e
44584
- });
44532
+ }), this._brushMaskAABBBoundsDict[this._operatingMask.name] = this._operatingMask.AABBBounds, this._dispatchBrushEvent(IOperateType.moving, e);
44533
+ }
44534
+ render() {
44535
+ this.releaseBrushEvents(), this._bindBrushEvents();
44536
+ const group = this.createOrUpdateChild("brush-container", {}, "group");
44537
+ this._container = group;
44538
+ }
44539
+ releaseBrushEvents() {
44540
+ const {
44541
+ trigger = DEFAULT_BRUSH_ATTRIBUTES.trigger,
44542
+ updateTrigger = DEFAULT_BRUSH_ATTRIBUTES.updateTrigger,
44543
+ endTrigger = DEFAULT_BRUSH_ATTRIBUTES.endTrigger,
44544
+ resetTrigger = DEFAULT_BRUSH_ATTRIBUTES.resetTrigger
44545
+ } = this.attribute;
44546
+ array(trigger).forEach(t => this.stage.removeEventListener(t, this._onBrushStart)), array(updateTrigger).forEach(t => this.stage.removeEventListener(t, this._onBrushingWithDelay)), array(endTrigger).forEach(t => this.stage.removeEventListener(t, this._onBrushEnd)), array(resetTrigger).forEach(t => this.stage.removeEventListener(t, this._onBrushClear));
44585
44547
  }
44586
44548
  _computeMaskPoints() {
44587
44549
  const {
@@ -44639,6 +44601,23 @@ let Brush$1 = class Brush extends AbstractComponent {
44639
44601
  }));
44640
44602
  brushMask.name = `brush-${Date.now()}`, this._operatingMask = brushMask, this._container.add(brushMask), this._brushMaskAABBBoundsDict[brushMask.name] = brushMask.AABBBounds;
44641
44603
  }
44604
+ _isPosInBrushMask(e) {
44605
+ const pos = this.eventPosToStagePos(e),
44606
+ brushMasks = this._container.getChildren();
44607
+ for (let i = 0; i < brushMasks.length; i++) {
44608
+ const {
44609
+ points = [],
44610
+ dx = 0,
44611
+ dy = 0
44612
+ } = brushMasks[i].attribute,
44613
+ pointsConsiderOffset = points.map(point => ({
44614
+ x: point.x + dx,
44615
+ y: point.y + dy
44616
+ }));
44617
+ if (polygonContainPoint(pointsConsiderOffset, pos.x, pos.y)) return this._operatingMask = brushMasks[i], !0;
44618
+ }
44619
+ return !1;
44620
+ }
44642
44621
  _outOfInteractiveRange(e) {
44643
44622
  const {
44644
44623
  interactiveRange: interactiveRange
@@ -44655,21 +44634,18 @@ let Brush$1 = class Brush extends AbstractComponent {
44655
44634
  eventPosToStagePos(e) {
44656
44635
  return this.stage.eventPointTransform(e);
44657
44636
  }
44658
- render() {
44659
- this._bindBrushEvents();
44660
- const group = this.createOrUpdateChild("brush-container", {}, "group");
44661
- this._container = group;
44637
+ _dispatchBrushEvent(operateType, e) {
44638
+ this._dispatchEvent(operateType, {
44639
+ operateMask: this._operatingMask,
44640
+ operatedMaskAABBBounds: this._brushMaskAABBBoundsDict,
44641
+ event: e
44642
+ });
44662
44643
  }
44663
- releaseBrushEvents() {
44664
- const {
44665
- delayType = "throttle",
44666
- delayTime = 0,
44667
- trigger = DEFAULT_BRUSH_ATTRIBUTES.trigger,
44668
- updateTrigger = DEFAULT_BRUSH_ATTRIBUTES.updateTrigger,
44669
- endTrigger = DEFAULT_BRUSH_ATTRIBUTES.endTrigger,
44670
- resetTrigger = DEFAULT_BRUSH_ATTRIBUTES.resetTrigger
44671
- } = this.attribute;
44672
- array(trigger).forEach(t => vglobal.removeEventListener(t, this._onBrushStart)), array(updateTrigger).forEach(t => this.stage.removeEventListener(t, this._onBrushingWithDelay)), array(endTrigger).forEach(t => this.stage.removeEventListener(t, this._onBrushEnd)), array(resetTrigger).forEach(t => this.stage.removeEventListener(t, this._onBrushClear));
44644
+ _clearMask() {
44645
+ this._brushMaskAABBBoundsDict = {}, this._container.incrementalClearChild(), this._operatingMask = null;
44646
+ }
44647
+ _isEmptyMask() {
44648
+ return isEmpty(this._brushMaskAABBBoundsDict) || Object.keys(this._brushMaskAABBBoundsDict).every(key => this._brushMaskAABBBoundsDict[key].empty());
44673
44649
  }
44674
44650
  };
44675
44651
  Brush$1.defaultAttributes = DEFAULT_BRUSH_ATTRIBUTES;
@@ -56553,7 +56529,7 @@ class Animate {
56553
56529
  var _a;
56554
56530
  element.isReserved && element.diffState !== DiffState.exit && (element.isReserved = !1);
56555
56531
  const prevElementState = null === (_a = this.elementRecorder.get(element)) || void 0 === _a ? void 0 : _a.prevState;
56556
- (this.configs.some(config => prevElementState !== element.diffState && config.state === prevElementState && config.timeline.controlOptions.stopWhenStateChange) || element.diffState === DiffState.exit && prevElementState !== element.diffState) && this.clearElementAnimation(element, !1);
56532
+ (this.configs.some(config => prevElementState !== element.diffState && config.state === prevElementState && config.timeline.controlOptions.stopWhenStateChange) || element.diffState === DiffState.exit) && this.clearElementAnimation(element, !1);
56557
56533
  }), this.configs.forEach(config => {
56558
56534
  this.animateByTimeline(config, elements, parameters);
56559
56535
  }), this.mark.cleanExitElements(), this;
@@ -56929,12 +56905,6 @@ var Event_Bubble_Level;
56929
56905
  Event_Bubble_Level["model"] = "model";
56930
56906
  Event_Bubble_Level["mark"] = "mark";
56931
56907
  })(Event_Bubble_Level || (Event_Bubble_Level = {}));
56932
- const EventBubbleLevels = [
56933
- Event_Bubble_Level.mark,
56934
- Event_Bubble_Level.model,
56935
- Event_Bubble_Level.chart,
56936
- Event_Bubble_Level.vchart
56937
- ];
56938
56908
 
56939
56909
  const isInBound = (pos, min, max) => pos.x >= min.x && pos.x <= max.x && pos.y >= min.y && pos.y <= max.y;
56940
56910
  const isInRegionBound = (chart, axis, pos) => {
@@ -57769,29 +57739,29 @@ class EventDispatcher {
57769
57739
  stopBubble = this._invoke(handlers, eType, params);
57770
57740
  }
57771
57741
  else {
57742
+ const levels = [
57743
+ Event_Bubble_Level.mark,
57744
+ Event_Bubble_Level.model,
57745
+ Event_Bubble_Level.chart,
57746
+ Event_Bubble_Level.vchart
57747
+ ];
57772
57748
  let i = 0;
57773
- while (!stopBubble && i < EventBubbleLevels.length) {
57774
- stopBubble = this._invoke(bubble.getHandlers(EventBubbleLevels[i]), eType, params);
57749
+ while (!stopBubble && i < levels.length) {
57750
+ stopBubble = this._invoke(bubble.getHandlers(levels[i]), eType, params);
57775
57751
  i++;
57776
57752
  }
57777
57753
  }
57778
57754
  return this;
57779
57755
  }
57780
57756
  prevent(eType, except) {
57781
- const eventSourceTypes = ['canvas', 'chart', 'window'];
57782
- eventSourceTypes.forEach(type => {
57757
+ const eventTypes = ['canvas', 'chart', 'window'];
57758
+ eventTypes.forEach(type => {
57783
57759
  const bubble = this.getEventBubble(type).get(eType);
57784
57760
  if (bubble) {
57785
57761
  bubble.getAllHandlers().forEach(handler => {
57786
- if (!except) {
57762
+ if (!except || handler.callback !== except) {
57787
57763
  bubble.preventHandler(handler);
57788
57764
  }
57789
- else if (EventBubbleLevels.indexOf(handler.filter.level) <
57790
- EventBubbleLevels.indexOf(except.level)) {
57791
- if (handler.callback !== except.handler) {
57792
- bubble.preventHandler(handler);
57793
- }
57794
- }
57795
57765
  });
57796
57766
  }
57797
57767
  });
@@ -63656,7 +63626,7 @@ const registerVChartCore = () => {
63656
63626
  };
63657
63627
  registerVChartCore();
63658
63628
 
63659
- const version = "1.13.8-alpha.6";
63629
+ const version = "1.13.8-alpha.8";
63660
63630
 
63661
63631
  const addVChartProperty = (data, op) => {
63662
63632
  const context = op.beforeCall();
@@ -64151,7 +64121,7 @@ const dimensionStatisticsOfSimpleData = (latestData, fields, dataFields) => {
64151
64121
  result[key][op] = f.customize;
64152
64122
  }
64153
64123
  else {
64154
- if (dataFieldInKey && dataFieldInKey.lockStatisticsByDomain === true && !isNil$1(dataFieldInKey.domain)) {
64124
+ if (dataFieldInKey && dataFieldInKey.lockStatisticsByDomain && !isNil$1(dataFieldInKey.domain)) {
64155
64125
  if (op === 'values') {
64156
64126
  result[key][op] = dataFieldInKey.domain.slice();
64157
64127
  return;
@@ -71667,11 +71637,8 @@ class Stack {
71667
71637
  return;
71668
71638
  }
71669
71639
  const hasTotalLabel = series.some(s => {
71670
- var _a, _b, _c, _d;
71671
- if ((_b = (_a = s.getSpec()) === null || _a === void 0 ? void 0 : _a.totalLabel) === null || _b === void 0 ? void 0 : _b.alwayCalculateTotal) {
71672
- return true;
71673
- }
71674
- return (_d = (_c = s.getSpec()) === null || _c === void 0 ? void 0 : _c.totalLabel) === null || _d === void 0 ? void 0 : _d.visible;
71640
+ var _a, _b;
71641
+ return (_b = (_a = s.getSpec()) === null || _a === void 0 ? void 0 : _a.totalLabel) === null || _b === void 0 ? void 0 : _b.visible;
71675
71642
  });
71676
71643
  const hasPercent = hasTotalLabel || series.some(s => s.getPercent());
71677
71644
  const hasOffsetSilhouette = series.some(s => s.getStackOffsetSilhouette());
@@ -74120,12 +74087,7 @@ class Zoomable {
74120
74087
  return;
74121
74088
  }
74122
74089
  this._clickEnable = false;
74123
- end.forEach(endEventType => {
74124
- this._eventObj.prevent(endEventType, {
74125
- handler: this._handleDragMouseUp,
74126
- level: Event_Bubble_Level.chart
74127
- });
74128
- });
74090
+ end.forEach(endEventType => this._eventObj.prevent(endEventType, this._handleDragMouseUp));
74129
74091
  const event = params.event;
74130
74092
  const dx = event.canvasX - moveX;
74131
74093
  const dy = event.canvasY - moveY;
@@ -92158,9 +92120,6 @@ function getLegendAttributes(spec, rect) {
92158
92120
  if (title.visible) {
92159
92121
  attrs.title = transformLegendTitleAttributes(title);
92160
92122
  }
92161
- else {
92162
- attrs.title = { visible: false };
92163
- }
92164
92123
  if (!isEmpty(item.focusIconStyle)) {
92165
92124
  transformToGraphic(item.focusIconStyle);
92166
92125
  }
@@ -92756,9 +92715,6 @@ function getContinuousLegendAttributes(spec) {
92756
92715
  if (title.visible) {
92757
92716
  attrs.title = transformLegendTitleAttributes(title);
92758
92717
  }
92759
- else {
92760
- attrs.title = { visible: false };
92761
- }
92762
92718
  attrs.showHandler = handler.visible !== false;
92763
92719
  if (!isEmpty(handler.style)) {
92764
92720
  attrs.handlerStyle = transformToGraphic(handler.style);