tvcharts 0.7.52 → 0.7.54

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.
package/dist/echarts.js CHANGED
@@ -2197,7 +2197,7 @@ var Handler = class extends Eventful_default {
2197
2197
  }
2198
2198
  }
2199
2199
  findHover(x, y, exclude) {
2200
- const list = this.storage.getDisplayList();
2200
+ const list = this.storage.getEventDisplayList();
2201
2201
  const out2 = new HoveredResult(x, y);
2202
2202
  setHoverTarget(list, out2, x, y, exclude);
2203
2203
  if (this._pointerSize && !out2.target) {
@@ -2854,10 +2854,29 @@ function shapeCompareFunc(a, b) {
2854
2854
  }
2855
2855
  return a.zlevel - b.zlevel;
2856
2856
  }
2857
+ function eventCompareFunc(a, b) {
2858
+ return a.zevent - b.zevent;
2859
+ }
2860
+ function getEventDisplayList(list) {
2861
+ const zEventList = [];
2862
+ const restList = [];
2863
+ for (let i = 0; i < list.length; i++) {
2864
+ const el = list[i];
2865
+ if (el.zevent) {
2866
+ zEventList.push(el);
2867
+ } else {
2868
+ restList.push(el);
2869
+ }
2870
+ }
2871
+ sort(zEventList, eventCompareFunc);
2872
+ Array.prototype.push.apply(restList, zEventList);
2873
+ return restList;
2874
+ }
2857
2875
  var Storage = class {
2858
2876
  constructor() {
2859
2877
  this._roots = [];
2860
2878
  this._displayList = [];
2879
+ this._eventDisplayList = [];
2861
2880
  this._displayListLen = 0;
2862
2881
  this.displayableSortFunc = shapeCompareFunc;
2863
2882
  }
@@ -2883,6 +2902,10 @@ var Storage = class {
2883
2902
  }
2884
2903
  displayList.length = this._displayListLen;
2885
2904
  sort(displayList, shapeCompareFunc);
2905
+ this._eventDisplayList = getEventDisplayList(displayList);
2906
+ }
2907
+ getEventDisplayList() {
2908
+ return this._eventDisplayList;
2886
2909
  }
2887
2910
  _updateAndAddDisplayable(el, clipPaths, includeIgnore) {
2888
2911
  if (el.ignore && !includeIgnore) {
@@ -7215,7 +7238,7 @@ function getElementSSRData(el) {
7215
7238
  function registerSSRDataGetter(getter) {
7216
7239
  ssrDataGetter = getter;
7217
7240
  }
7218
- var version = "5.6.74";
7241
+ var version = "5.6.75";
7219
7242
 
7220
7243
  // src/util/number.ts
7221
7244
  var RADIAN_EPSILON = 1e-4;
@@ -11912,6 +11935,10 @@ function handleGlobalMouseOverForHighDown(dispatcher, e2, api2) {
11912
11935
  const ecData = getECData(dispatcher);
11913
11936
  const groupId = ecData.groupId;
11914
11937
  if (groupId) {
11938
+ const highlightDisabled = api2.getHighlightDisabled();
11939
+ if (highlightDisabled) {
11940
+ return;
11941
+ }
11915
11942
  const dispatchers2 = findGroupHighDownDispatchers(groupId, api2);
11916
11943
  each(dispatchers2, (dispatcher2) => enterEmphasisWhenMouseOver(dispatcher2, e2));
11917
11944
  api2.setMousemoveComponentGroupId(groupId);
@@ -11951,6 +11978,27 @@ function handleGlobalMouseOutForHighDown(dispatcher, e2, api2) {
11951
11978
  leaveEmphasisWhenMouseOut(dispatcher, e2);
11952
11979
  }
11953
11980
  }
11981
+ function handleGlobalMouseDownForHighDown(dispatcher, e2, api2) {
11982
+ const oldSelectedComponentGroupId = api2.getSelectedComponentGroupId();
11983
+ const groupId = dispatcher ? getECData(dispatcher).groupId : "";
11984
+ if (groupId) {
11985
+ if (oldSelectedComponentGroupId === groupId) {
11986
+ return false;
11987
+ }
11988
+ const highlightDisabled = api2.getHighlightDisabled();
11989
+ if (highlightDisabled) {
11990
+ return;
11991
+ }
11992
+ e2.event.stopPropagation();
11993
+ api2.setSelectedComponentGroupId(groupId);
11994
+ return true;
11995
+ } else if (oldSelectedComponentGroupId) {
11996
+ e2.event.stopPropagation();
11997
+ api2.setSelectedComponentGroupId("");
11998
+ return true;
11999
+ }
12000
+ return false;
12001
+ }
11954
12002
  function toggleSelectionFromPayload(seriesModel, payload, api2) {
11955
12003
  if (!isSelectChangePayload(payload)) {
11956
12004
  return;
@@ -23923,6 +23971,7 @@ var CONNECT_LAYOUT_STATUS_KEY = "__connectLayoutUpdateStatus";
23923
23971
  var CONNECT_STATUS_PENDING = 0;
23924
23972
  var CONNECT_STATUS_UPDATING = 1;
23925
23973
  var CONNECT_STATUS_UPDATED = 2;
23974
+ var SELECT_Z_LEVEL = 1;
23926
23975
  function createRegisterEventWithLowercaseECharts(method) {
23927
23976
  return function(...args) {
23928
23977
  if (this.isDisposed()) {
@@ -24623,7 +24672,8 @@ var ECharts = class extends Eventful_default {
24623
24672
  "visiblechanged",
24624
24673
  "dataappend",
24625
24674
  "alarmchanged",
24626
- "alarmdelete"
24675
+ "alarmdelete",
24676
+ "selectidchanged"
24627
24677
  ], (eventType) => {
24628
24678
  this._messageCenter.on(eventType, function(event) {
24629
24679
  this.trigger(eventType, event);
@@ -24729,6 +24779,9 @@ var ECharts = class extends Eventful_default {
24729
24779
  this._loadingFX = el;
24730
24780
  zr.add(el);
24731
24781
  }
24782
+ getApi() {
24783
+ return this._api;
24784
+ }
24732
24785
  hideLoading() {
24733
24786
  if (this._disposed) {
24734
24787
  disposedWarning(this.id);
@@ -25468,6 +25521,10 @@ ECharts.internalField = function() {
25468
25521
  handleGlobalMouseOutForHighDown(dispatcher, e2, ecIns._api);
25469
25522
  markStatusToUpdate(ecIns);
25470
25523
  }
25524
+ }).on("mousedown", function(e2) {
25525
+ const el = e2.target;
25526
+ const dispatcher = findEventDispatcher(el, isHighDownDispatcher);
25527
+ handleGlobalMouseDownForHighDown(dispatcher, e2, ecIns._api);
25471
25528
  }).on("click", function(e2) {
25472
25529
  const el = e2.target;
25473
25530
  const dispatcher = findEventDispatcher(el, (target) => getECData(target).dataIndex != null, true);
@@ -25556,11 +25613,12 @@ ECharts.internalField = function() {
25556
25613
  });
25557
25614
  };
25558
25615
  renderComponents = (ecIns, ecModel, api2, payload, updateParams, dirtyList) => {
25616
+ const selectedComponentGroupId = ecIns.selectedComponentGroupId;
25559
25617
  each(dirtyList || ecIns._componentsViews, function(componentView) {
25560
25618
  const componentModel = componentView.__model;
25561
25619
  clearStates(componentModel, componentView);
25562
25620
  componentView.render(componentModel, ecModel, api2, payload, ecIns);
25563
- updateZ3(componentModel, componentView);
25621
+ updateZ3(componentModel, componentView, selectedComponentGroupId);
25564
25622
  updateStates(componentModel, componentView);
25565
25623
  });
25566
25624
  };
@@ -25594,9 +25652,10 @@ ECharts.internalField = function() {
25594
25652
  scheduler.unfinished = unfinished || scheduler.unfinished;
25595
25653
  lifecycle_default.trigger("series:layoutlabels", ecModel, api2, updateParams);
25596
25654
  lifecycle_default.trigger("series:transition", ecModel, api2, updateParams);
25655
+ const selectedComponentGroupId = ecIns.selectedComponentGroupId;
25597
25656
  ecModel.eachSeries(function(seriesModel) {
25598
25657
  const chartView = ecIns._chartsMap[seriesModel.__viewId];
25599
- updateZ3(seriesModel, chartView);
25658
+ updateZ3(seriesModel, chartView, selectedComponentGroupId);
25600
25659
  updateStates(seriesModel, chartView);
25601
25660
  });
25602
25661
  if (ecIns.mousemoveComponentGroupId && payload?.type !== "dataZoom") {
@@ -25681,12 +25740,14 @@ ECharts.internalField = function() {
25681
25740
  });
25682
25741
  }
25683
25742
  ;
25684
- function updateZ3(model, view) {
25743
+ function updateZ3(model, view, selectedComponentGroupId) {
25685
25744
  if (model.preventAutoZ) {
25686
25745
  return;
25687
25746
  }
25747
+ const groupId = model.get("groupId");
25748
+ const isSelected = selectedComponentGroupId && selectedComponentGroupId === groupId;
25688
25749
  const z = model.get("z") || 0;
25689
- const zlevel = model.get("zlevel") || 0;
25750
+ const zlevel = isSelected ? SELECT_Z_LEVEL : model.get("zlevel") || 0;
25690
25751
  const z2 = model.get("z2") || 0;
25691
25752
  view.eachRendered((el) => {
25692
25753
  doUpdateZ(el, z, zlevel, -Infinity, z2);
@@ -25840,7 +25901,23 @@ ECharts.internalField = function() {
25840
25901
  ecIns.mousemoveComponentGroupId = id;
25841
25902
  }
25842
25903
  setSelectedComponentGroupId(id) {
25904
+ const oldSelectedComponentGroupId = ecIns.selectedComponentGroupId;
25905
+ if (oldSelectedComponentGroupId === id) {
25906
+ return;
25907
+ }
25843
25908
  ecIns.selectedComponentGroupId = id;
25909
+ ecIns.trigger("selectidchanged", id);
25910
+ updateMethods.update.call(ecIns);
25911
+ console.log("\u56FE\u5F62\u66F4\u65B0");
25912
+ }
25913
+ getSelectedComponentGroupId() {
25914
+ return ecIns.selectedComponentGroupId;
25915
+ }
25916
+ setHighlightDisabled(disabled) {
25917
+ ecIns.highlightDisabled = disabled;
25918
+ }
25919
+ getHighlightDisabled() {
25920
+ return ecIns.highlightDisabled;
25844
25921
  }
25845
25922
  }(ecIns);
25846
25923
  };
@@ -34308,7 +34385,10 @@ LineSeriesModel.defaultOption = {
34308
34385
  type: "solid"
34309
34386
  },
34310
34387
  emphasis: {
34311
- scale: true
34388
+ scale: true,
34389
+ emphasisState: {
34390
+ zlevel: 1
34391
+ }
34312
34392
  },
34313
34393
  step: false,
34314
34394
  smooth: false,
@@ -35814,18 +35894,23 @@ var LineView = class extends Chart_default {
35814
35894
  const focus = emphasisModel.get("focus");
35815
35895
  const blurScope = emphasisModel.get("blurScope");
35816
35896
  const emphasisDisabled = emphasisModel.get("disabled");
35897
+ const groupId = seriesModel.get("groupId");
35817
35898
  polyline.useStyle(defaults(lineStyleModel.getLineStyle(), {
35818
35899
  fill: "none",
35819
35900
  stroke: visualColor,
35820
35901
  lineJoin: "bevel"
35821
35902
  }));
35822
- setStatesStylesFromModel(polyline, seriesModel, "lineStyle");
35823
- if (polyline.style.lineWidth > 0 && seriesModel.get(["emphasis", "lineStyle", "width"]) === "bolder") {
35824
- const emphasisLineStyle = polyline.getState("emphasis").style;
35825
- emphasisLineStyle.lineWidth = +polyline.style.lineWidth + 1;
35903
+ if (groupId) {
35904
+ polyline.states.emphasis = emphasisModel.get("emphasisState");
35905
+ } else {
35906
+ setStatesStylesFromModel(polyline, seriesModel, "lineStyle");
35907
+ if (polyline.style.lineWidth > 0 && seriesModel.get(["emphasis", "lineStyle", "width"]) === "bolder") {
35908
+ const emphasisLineStyle = polyline.getState("emphasis").style;
35909
+ emphasisLineStyle.lineWidth = +polyline.style.lineWidth + 1;
35910
+ }
35911
+ getECData(polyline).seriesIndex = seriesModel.seriesIndex;
35912
+ toggleHoverEmphasis(polyline, focus, blurScope, emphasisDisabled);
35826
35913
  }
35827
- getECData(polyline).seriesIndex = seriesModel.seriesIndex;
35828
- toggleHoverEmphasis(polyline, focus, blurScope, emphasisDisabled);
35829
35914
  const smooth = getSmooth(seriesModel.get("smooth"));
35830
35915
  const smoothMonotone = seriesModel.get("smoothMonotone");
35831
35916
  polyline.setShape({
@@ -35851,9 +35936,13 @@ var LineView = class extends Chart_default {
35851
35936
  smoothMonotone,
35852
35937
  connectNulls
35853
35938
  });
35854
- setStatesStylesFromModel(polygon, seriesModel, "areaStyle");
35855
- getECData(polygon).seriesIndex = seriesModel.seriesIndex;
35856
- toggleHoverEmphasis(polygon, focus, blurScope, emphasisDisabled);
35939
+ if (groupId) {
35940
+ polygon.states.emphasis = emphasisModel.get("emphasisState");
35941
+ } else {
35942
+ setStatesStylesFromModel(polygon, seriesModel, "areaStyle");
35943
+ getECData(polygon).seriesIndex = seriesModel.seriesIndex;
35944
+ toggleHoverEmphasis(polygon, focus, blurScope, emphasisDisabled);
35945
+ }
35857
35946
  }
35858
35947
  const changePolyState = (toState) => {
35859
35948
  this._changePolyState(toState);
@@ -35861,7 +35950,12 @@ var LineView = class extends Chart_default {
35861
35950
  data.eachItemGraphicEl(function(el) {
35862
35951
  el && (el.onHoverStateChange = changePolyState);
35863
35952
  });
35864
- this._polyline.onHoverStateChange = changePolyState;
35953
+ if (!groupId) {
35954
+ this._polyline.onHoverStateChange = changePolyState;
35955
+ } else {
35956
+ getECData(group).groupId = groupId;
35957
+ toggleHoverEmphasis(group, null, null, emphasisDisabled);
35958
+ }
35865
35959
  this._data = data;
35866
35960
  this._coordSys = coordSys;
35867
35961
  this._stackedOnPoints = stackedOnPoints;
@@ -57493,9 +57587,6 @@ var LineFillsView2 = class extends Chart_default {
57493
57587
  } else {
57494
57588
  this.group.removeClipPath();
57495
57589
  }
57496
- toggleHoverEmphasis(this.group, null, null, false);
57497
- const groupId = seriesModel.get("groupId");
57498
- getECData(this.group).groupId = groupId;
57499
57590
  }
57500
57591
  _getClipShape(seriesModel) {
57501
57592
  if (!seriesModel.get("clip", true)) {
@@ -57505,7 +57596,6 @@ var LineFillsView2 = class extends Chart_default {
57505
57596
  return coordSys && coordSys.getArea && coordSys.getArea(0.1);
57506
57597
  }
57507
57598
  _renderLines(data, seriesModel, api2) {
57508
- const emphasisState = seriesModel.get("emphasis").emphasisState;
57509
57599
  if (!this._linesGroup) {
57510
57600
  this._linesGroup = new Group_default();
57511
57601
  this.group.add(this._linesGroup);
@@ -57527,7 +57617,6 @@ var LineFillsView2 = class extends Chart_default {
57527
57617
  },
57528
57618
  z2
57529
57619
  });
57530
- el.states.emphasis = emphasisState;
57531
57620
  linesGroup.add(el);
57532
57621
  });
57533
57622
  }
@@ -59321,7 +59410,8 @@ var LabelsView2 = class extends Chart_default {
59321
59410
  },
59322
59411
  style: {
59323
59412
  fill: "#000000",
59324
- lineWidth: isLine ? 3 : void 0
59413
+ stroke: isLine ? "#000000" : "none",
59414
+ lineWidth: isLine ? 2 : void 0
59325
59415
  }
59326
59416
  });
59327
59417
  el.symbolProxy = createSymbol(key, 0, 0, 0, 0);
@@ -60018,8 +60108,6 @@ var FillsView2 = class extends Chart_default {
60018
60108
  const z2 = seriesModel.get("z2");
60019
60109
  const polygonGroup = this._polygonGroup;
60020
60110
  const coordSys = seriesModel.coordinateSystem;
60021
- const emphasisState = seriesModel.get("emphasis").emphasisState;
60022
- const groupId = seriesModel.get("groupId");
60023
60111
  each(pointsByColor, function(points4, key) {
60024
60112
  const colors = key.split(":");
60025
60113
  let fill = key;
@@ -60053,7 +60141,6 @@ var FillsView2 = class extends Chart_default {
60053
60141
  },
60054
60142
  z2: isDefaultFill ? -1 : z2
60055
60143
  });
60056
- el.states.emphasis = emphasisState;
60057
60144
  polygonGroup.add(el);
60058
60145
  });
60059
60146
  const clipPath = seriesModel.get("clip", true) && createClipPath(seriesModel.coordinateSystem, false, seriesModel);
@@ -60062,8 +60149,6 @@ var FillsView2 = class extends Chart_default {
60062
60149
  } else {
60063
60150
  this.group.removeClipPath();
60064
60151
  }
60065
- toggleHoverEmphasis(this.group, null, null, false);
60066
- getECData(this.group).groupId = groupId;
60067
60152
  }
60068
60153
  eachRendered(cb) {
60069
60154
  traverseElements(this._polygonGroup, cb);
@@ -60316,8 +60401,6 @@ var BgColorView2 = class extends Chart_default {
60316
60401
  } else {
60317
60402
  this._bgColorGroup.removeAll();
60318
60403
  }
60319
- const emphasisState = seriesModel.get("emphasis").emphasisState;
60320
- const groupId = seriesModel.get("groupId");
60321
60404
  const bgColorGroup = this._bgColorGroup;
60322
60405
  const barWidth = Math.ceil(seriesModel.coordinateSystem.getBaseAxis().scale.barSpace) || 5;
60323
60406
  const isLine = barWidth <= 4;
@@ -60334,7 +60417,6 @@ var BgColorView2 = class extends Chart_default {
60334
60417
  lineWidth: isLine ? +barWidth : void 0
60335
60418
  }
60336
60419
  });
60337
- el.states.emphasis = emphasisState;
60338
60420
  bgColorGroup.add(el);
60339
60421
  });
60340
60422
  const clipPath = seriesModel.get("clip", true) && createClipPath(seriesModel.coordinateSystem, false, seriesModel);
@@ -60343,8 +60425,6 @@ var BgColorView2 = class extends Chart_default {
60343
60425
  } else {
60344
60426
  this.group.removeClipPath();
60345
60427
  }
60346
- toggleHoverEmphasis(this.group, null, null, false);
60347
- getECData(this.group).groupId = groupId;
60348
60428
  }
60349
60429
  eachRendered(cb) {
60350
60430
  traverseElements(this._bgColorGroup, cb);
@@ -67705,7 +67785,8 @@ function updateCommonAttrs(el, elOption, defaultZ, defaultZlevel) {
67705
67785
  ["cursor", Displayable_default.prototype.cursor],
67706
67786
  ["zlevel", defaultZlevel || 0],
67707
67787
  ["z", defaultZ || 0],
67708
- ["z2", 0]
67788
+ ["z2", 0],
67789
+ ["zevent", 1]
67709
67790
  ], (item) => {
67710
67791
  const prop = item[0];
67711
67792
  if (hasOwn(elOption, prop)) {