evui 3.4.154 → 3.4.155

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/evui.umd.js CHANGED
@@ -11244,7 +11244,7 @@ $({ target: 'Number', stat: true }, {
11244
11244
  /***/ "9224":
11245
11245
  /***/ (function(module) {
11246
11246
 
11247
- module.exports = JSON.parse("{\"a\":\"3.4.154\"}");
11247
+ module.exports = JSON.parse("{\"a\":\"3.4.155\"}");
11248
11248
 
11249
11249
  /***/ }),
11250
11250
 
@@ -43047,17 +43047,16 @@ var element_bar_Bar = /*#__PURE__*/function () {
43047
43047
  this.borderRadius = param.borderRadius;
43048
43048
  this.filteredCount = totalCount;
43049
43049
  var startIndex = truthyNumber(minIndex) ? minIndex : 0;
43050
- var endIndex = truthyNumber(maxIndex) ? maxIndex : this.data.length - 1; // 스크롤 범위 내에서만 루프 돌림
43050
+ var endIndex = truthyNumber(maxIndex) ? maxIndex : this.data.length - 1;
43051
+ this.visibleStartIndex = startIndex;
43051
43052
 
43052
43053
  for (var i = startIndex; i <= endIndex; i++) {
43053
- var screenIndex = i - startIndex; // 현재 화면상의 위치 인덱스
43054
-
43055
- var item = this.data[i]; // 실제 데이터 인덱스에 해당하는 항목
43054
+ var screenIndex = i - startIndex;
43055
+ var item = this.data[i];
43056
43056
 
43057
43057
  if (item) {
43058
43058
  var _param$selectLabel, _param$selectItem, _param$selectLabel$se, _param$selectLabel2, _param$selectLabel2$s, _param$selectItem$sel, _param$selectItem2;
43059
43059
 
43060
- // 스크롤 offset(minIndex)만큼 보정해서 그리기
43061
43060
  var categoryPoint = isHorizontal ? ysp - cArea * screenIndex - cPad : xsp + cArea * screenIndex + cPad;
43062
43061
 
43063
43062
  if (isHorizontal) {
@@ -43156,11 +43155,7 @@ var element_bar_Bar = /*#__PURE__*/function () {
43156
43155
 
43157
43156
  item.h = isHorizontal ? -h : h; // eslint-disable-line
43158
43157
 
43159
- item.index = i; // 실제 데이터 인덱스 (스크롤 offset 포함)
43160
- // 검색(hitInfo) 로직은 this.data[0..filteredCount-1] 범위만 검사하므로,
43161
- // 현재 화면에 그린 항목을 배열 앞쪽으로 매핑해준다.
43162
-
43163
- this.data[screenIndex] = item;
43158
+ item.index = i;
43164
43159
  }
43165
43160
  }
43166
43161
  }
@@ -43246,17 +43241,23 @@ var element_bar_Bar = /*#__PURE__*/function () {
43246
43241
  key: "findGraphData",
43247
43242
  value: function findGraphData(offset, isHorizontal, dataIndex, useIndicatorOnLabel) {
43248
43243
  if (typeof dataIndex === 'number' && this.show && useIndicatorOnLabel) {
43249
- var gdata = this.data;
43244
+ var _this$visibleStartInd, _this$filteredCount;
43245
+
43246
+ var barData = this.data;
43250
43247
  var item = {
43251
43248
  data: null,
43252
43249
  hit: false,
43253
43250
  color: this.color
43254
- };
43251
+ }; // dataIndex를 현재 화면에 보이는 범위로 clamp하여 stale xp/yp 참조 방지
43255
43252
 
43256
- if (gdata[dataIndex]) {
43257
- item.data = gdata[dataIndex];
43258
- item.index = dataIndex;
43259
- item.hit = this.isPointInBar(offset, gdata[dataIndex]);
43253
+ var visStart = (_this$visibleStartInd = this.visibleStartIndex) !== null && _this$visibleStartInd !== void 0 ? _this$visibleStartInd : 0;
43254
+ var visEnd = visStart + ((_this$filteredCount = this.filteredCount) !== null && _this$filteredCount !== void 0 ? _this$filteredCount : barData.length) - 1;
43255
+ var clampedIndex = Math.max(visStart, Math.min(dataIndex, visEnd));
43256
+
43257
+ if (barData[clampedIndex]) {
43258
+ item.data = barData[clampedIndex];
43259
+ item.index = clampedIndex;
43260
+ item.hit = this.isPointInBar(offset, barData[clampedIndex]);
43260
43261
  }
43261
43262
 
43262
43263
  return item;
@@ -43282,7 +43283,7 @@ var element_bar_Bar = /*#__PURE__*/function () {
43282
43283
  }, {
43283
43284
  key: "binarySearchBar",
43284
43285
  value: function binarySearchBar(offset, isHorizontal) {
43285
- var _this$filteredCount;
43286
+ var _this$visibleStartInd2, _this$filteredCount2;
43286
43287
 
43287
43288
  var _offset = _slicedToArray(offset, 2),
43288
43289
  xp = _offset[0],
@@ -43294,9 +43295,10 @@ var element_bar_Bar = /*#__PURE__*/function () {
43294
43295
  color: this.color
43295
43296
  };
43296
43297
  var gdata = this.data;
43297
- var totalCount = (_this$filteredCount = this.filteredCount) !== null && _this$filteredCount !== void 0 ? _this$filteredCount : gdata.length;
43298
- var s = 0;
43299
- var e = totalCount - 1;
43298
+ var startIdx = (_this$visibleStartInd2 = this.visibleStartIndex) !== null && _this$visibleStartInd2 !== void 0 ? _this$visibleStartInd2 : 0;
43299
+ var totalCount = (_this$filteredCount2 = this.filteredCount) !== null && _this$filteredCount2 !== void 0 ? _this$filteredCount2 : gdata.length;
43300
+ var s = startIdx;
43301
+ var e = startIdx + totalCount - 1;
43300
43302
 
43301
43303
  while (s <= e) {
43302
43304
  var m = Math.floor((s + e) / 2);
@@ -50203,13 +50205,20 @@ var plugins_scrollbar_module = {
50203
50205
  Object.keys(merged).forEach(function (key) {
50204
50206
  scrollbarOpt[key] = merged[key];
50205
50207
  });
50206
- delete scrollbarOpt.savedPosition;
50208
+
50209
+ if (scrollbarOpt.resetPosition) {
50210
+ var _axisOpt$2, _axisOpt$2$range, _axisOpt$3;
50211
+
50212
+ scrollbarOpt.range = axisOpt !== null && axisOpt !== void 0 && (_axisOpt$2 = axisOpt[0]) !== null && _axisOpt$2 !== void 0 && (_axisOpt$2$range = _axisOpt$2.range) !== null && _axisOpt$2$range !== void 0 && _axisOpt$2$range.length ? _toConsumableArray(axisOpt === null || axisOpt === void 0 ? void 0 : (_axisOpt$3 = axisOpt[0]) === null || _axisOpt$3 === void 0 ? void 0 : _axisOpt$3.range) : null;
50213
+ this.resetScrollbarSavedPositions(dir);
50214
+ }
50207
50215
 
50208
50216
  if (!scrollbarOpt.isInit) {
50209
- var _axisOpt$2, _axisOpt$3, _axisOpt$3$range, _axisOpt$4;
50217
+ var _axisOpt$4, _axisOpt$5, _axisOpt$5$range, _axisOpt$6;
50210
50218
 
50211
- scrollbarOpt.type = axisOpt === null || axisOpt === void 0 ? void 0 : (_axisOpt$2 = axisOpt[0]) === null || _axisOpt$2 === void 0 ? void 0 : _axisOpt$2.type;
50212
- scrollbarOpt.range = axisOpt !== null && axisOpt !== void 0 && (_axisOpt$3 = axisOpt[0]) !== null && _axisOpt$3 !== void 0 && (_axisOpt$3$range = _axisOpt$3.range) !== null && _axisOpt$3$range !== void 0 && _axisOpt$3$range.length ? _toConsumableArray(axisOpt === null || axisOpt === void 0 ? void 0 : (_axisOpt$4 = axisOpt[0]) === null || _axisOpt$4 === void 0 ? void 0 : _axisOpt$4.range) : null;
50219
+ scrollbarOpt.type = axisOpt === null || axisOpt === void 0 ? void 0 : (_axisOpt$4 = axisOpt[0]) === null || _axisOpt$4 === void 0 ? void 0 : _axisOpt$4.type;
50220
+ scrollbarOpt.range = axisOpt !== null && axisOpt !== void 0 && (_axisOpt$5 = axisOpt[0]) !== null && _axisOpt$5 !== void 0 && (_axisOpt$5$range = _axisOpt$5.range) !== null && _axisOpt$5$range !== void 0 && _axisOpt$5$range.length ? _toConsumableArray(axisOpt === null || axisOpt === void 0 ? void 0 : (_axisOpt$6 = axisOpt[0]) === null || _axisOpt$6 === void 0 ? void 0 : _axisOpt$6.range) : null;
50221
+ this.resetScrollbarSavedPositions(dir);
50213
50222
  this.initScrollbarRange(dir);
50214
50223
  this.createScrollbarLayout(dir);
50215
50224
  this.createScrollbar(dir);
@@ -50272,7 +50281,7 @@ var plugins_scrollbar_module = {
50272
50281
  * @param updateData is update data
50273
50282
  */
50274
50283
  updateScrollbarInfo: function updateScrollbarInfo(dir, updateData) {
50275
- var _newOpt$, _newOpt$$scrollbar, _newOpt$2, _newOpt$0$scrollbar, _newOpt$3, _newOpt$4, _axisOpt$5, _newOpt$0$scrollbar2;
50284
+ var _newOpt$, _newOpt$$scrollbar, _newOpt$2, _newOpt$0$scrollbar, _newOpt$3, _newOpt$4, _axisOpt$7, _newOpt$0$scrollbar2;
50276
50285
 
50277
50286
  var _this$options = this.options,
50278
50287
  axesX = _this$options.axesX,
@@ -50288,23 +50297,21 @@ var plugins_scrollbar_module = {
50288
50297
  }
50289
50298
 
50290
50299
  var axisOpt = dir === 'x' ? this.axesX : this.axesY;
50291
- var isUpdateAxesRange = !lodash_es_isEqual(newOpt === null || newOpt === void 0 ? void 0 : (_newOpt$4 = newOpt[0]) === null || _newOpt$4 === void 0 ? void 0 : _newOpt$4.range, axisOpt === null || axisOpt === void 0 ? void 0 : (_axisOpt$5 = axisOpt[0]) === null || _axisOpt$5 === void 0 ? void 0 : _axisOpt$5.range);
50300
+ var isUpdateAxesRange = !lodash_es_isEqual(newOpt === null || newOpt === void 0 ? void 0 : (_newOpt$4 = newOpt[0]) === null || _newOpt$4 === void 0 ? void 0 : _newOpt$4.range, axisOpt === null || axisOpt === void 0 ? void 0 : (_axisOpt$7 = axisOpt[0]) === null || _axisOpt$7 === void 0 ? void 0 : _axisOpt$7.range);
50292
50301
 
50293
50302
  if (isUpdateAxesRange || updateData) {
50294
50303
  var _this$options$axesX2, _this$options$axesX2$, _this$options$axesX2$2, _this$options$axesY2, _this$options$axesY2$, _this$options$axesY2$2;
50295
50304
 
50296
50305
  var isResetPosition = dir === 'x' ? (_this$options$axesX2 = this.options.axesX) === null || _this$options$axesX2 === void 0 ? void 0 : (_this$options$axesX2$ = _this$options$axesX2[0]) === null || _this$options$axesX2$ === void 0 ? void 0 : (_this$options$axesX2$2 = _this$options$axesX2$.scrollbar) === null || _this$options$axesX2$2 === void 0 ? void 0 : _this$options$axesX2$2.resetPosition : (_this$options$axesY2 = this.options.axesY) === null || _this$options$axesY2 === void 0 ? void 0 : (_this$options$axesY2$ = _this$options$axesY2[0]) === null || _this$options$axesY2$ === void 0 ? void 0 : (_this$options$axesY2$2 = _this$options$axesY2$.scrollbar) === null || _this$options$axesY2$2 === void 0 ? void 0 : _this$options$axesY2$2.resetPosition;
50297
50306
 
50298
- if (isUpdateAxesRange || isResetPosition) {
50307
+ if (isUpdateAxesRange) {
50299
50308
  var _newOpt$5, _newOpt$5$range, _newOpt$6;
50300
50309
 
50301
- this.scrollbar[dir].range = newOpt !== null && newOpt !== void 0 && (_newOpt$5 = newOpt[0]) !== null && _newOpt$5 !== void 0 && (_newOpt$5$range = _newOpt$5.range) !== null && _newOpt$5$range !== void 0 && _newOpt$5$range.length ? _toConsumableArray(newOpt === null || newOpt === void 0 ? void 0 : (_newOpt$6 = newOpt[0]) === null || _newOpt$6 === void 0 ? void 0 : _newOpt$6.range) : null; // range가 업데이트되면 저장된 스크롤 위치를 초기화
50310
+ this.scrollbar[dir].range = newOpt !== null && newOpt !== void 0 && (_newOpt$5 = newOpt[0]) !== null && _newOpt$5 !== void 0 && (_newOpt$5$range = _newOpt$5.range) !== null && _newOpt$5$range !== void 0 && _newOpt$5$range.length ? _toConsumableArray(newOpt === null || newOpt === void 0 ? void 0 : (_newOpt$6 = newOpt[0]) === null || _newOpt$6 === void 0 ? void 0 : _newOpt$6.range) : null;
50311
+ }
50302
50312
 
50303
- delete this.scrollbar[dir].savedPosition;
50304
- } else if (updateData) {
50305
- // 데이터가 업데이트되면 저장된 픽셀 위치는 더 이상 유효하지 않으므로 삭제하여
50306
- // 논리적 범위에 따라 다시 계산하도록 합니다.
50307
- delete this.scrollbar[dir].savedPosition;
50313
+ if (isResetPosition || updateData) {
50314
+ this.resetScrollbarSavedPositions(dir);
50308
50315
  }
50309
50316
 
50310
50317
  this.initScrollbarRange(dir);
@@ -50442,17 +50449,32 @@ var plugins_scrollbar_module = {
50442
50449
  var scrollHeight = isXScroll ? scrollbarOpt.height : scrollbarOpt.width;
50443
50450
  var fullSize = isXScroll ? aPos.x2 - aPos.x1 : aPos.y2 - aPos.y1;
50444
50451
  var buttonSize = scrollbarOpt.showButton ? scrollHeight : 0;
50445
- var trackSize = fullSize - buttonSize * 2; // 현재 위치를 보존해야 하는 경우 기존 위치를 저장
50452
+ var trackSize = fullSize - buttonSize * 2;
50453
+ var thumbSize = this.getScrollbarThumbSize(dir, trackSize); // 비율로 저장된 위치가 있으면 새 track 크기에 맞게 복원
50446
50454
 
50447
- var savedThumbPosition = null;
50455
+ if (preservePosition && scrollbarOpt.savedPositionRatio !== undefined) {
50456
+ var maxPosition = Math.max(0, trackSize - thumbSize.size);
50457
+
50458
+ if (scrollbarOpt.savedAtStart) {
50459
+ thumbSize.position = 0;
50460
+ } else if (scrollbarOpt.savedAtEnd) {
50461
+ thumbSize.position = maxPosition;
50462
+ } else {
50463
+ thumbSize.position = Math.min(scrollbarOpt.savedPositionRatio * trackSize, maxPosition);
50464
+ }
50465
+ } // 위치를 비율 및 처음/끝 고정 여부로 저장
50466
+ // currentMaxPosition === 0 (thumbSize >= trackSize) 인 경우 저장하지 않음
50467
+ // → trackSize가 다시 커졌을 때 이전 savedAtEnd/savedAtStart/savedPositionRatio 상태를 유지
50448
50468
 
50449
- if (preservePosition && scrollbarOpt.savedPosition !== undefined) {
50450
- savedThumbPosition = scrollbarOpt.savedPosition;
50451
- }
50452
50469
 
50453
- var thumbSize = this.getScrollbarThumbSize(dir, trackSize, savedThumbPosition); // 새로 계산된 위치를 저장
50470
+ var currentMaxPosition = Math.max(0, trackSize - thumbSize.size);
50471
+
50472
+ if (currentMaxPosition > 0) {
50473
+ scrollbarOpt.savedPositionRatio = thumbSize.position / trackSize;
50474
+ scrollbarOpt.savedAtStart = thumbSize.position <= 0;
50475
+ scrollbarOpt.savedAtEnd = thumbSize.position >= currentMaxPosition;
50476
+ }
50454
50477
 
50455
- scrollbarOpt.savedPosition = thumbSize.position;
50456
50478
  var scrollbarStyle = 'display: block;';
50457
50479
  var scrollbarTrackStyle;
50458
50480
  var scrollbarThumbStyle;
@@ -50519,9 +50541,8 @@ var plugins_scrollbar_module = {
50519
50541
  * get scrollbar thumb size
50520
50542
  * @param dir axis direction ('x' | 'y')
50521
50543
  * @param trackSize scrollbar track size
50522
- * @param savedThumbPosition 기존 위치를 보존해야 하는 경우 저장된 위치
50523
50544
  */
50524
- getScrollbarThumbSize: function getScrollbarThumbSize(dir, trackSize, savedThumbPosition) {
50545
+ getScrollbarThumbSize: function getScrollbarThumbSize(dir, trackSize) {
50525
50546
  var scrollbarOpt = this.scrollbar[dir];
50526
50547
 
50527
50548
  var _scrollbarOpt$range3 = _slicedToArray(scrollbarOpt.range, 2),
@@ -50552,9 +50573,9 @@ var plugins_scrollbar_module = {
50552
50573
  var _range = +max - +min;
50553
50574
 
50554
50575
  if (axesType === 'time') {
50555
- var _axisOpt$6, _this$labelRange$dir, _this$labelRange$dir$;
50576
+ var _axisOpt$8, _this$labelRange$dir, _this$labelRange$dir$;
50556
50577
 
50557
- interval = axisOpt === null || axisOpt === void 0 ? void 0 : (_axisOpt$6 = axisOpt[0]) === null || _axisOpt$6 === void 0 ? void 0 : _axisOpt$6.getInterval({
50578
+ interval = axisOpt === null || axisOpt === void 0 ? void 0 : (_axisOpt$8 = axisOpt[0]) === null || _axisOpt$8 === void 0 ? void 0 : _axisOpt$8.getInterval({
50558
50579
  minValue: minMax.min,
50559
50580
  maxValue: minMax.max,
50560
50581
  maxSteps: (_this$labelRange$dir = this.labelRange[dir]) === null || _this$labelRange$dir === void 0 ? void 0 : (_this$labelRange$dir$ = _this$labelRange$dir[0]) === null || _this$labelRange$dir$ === void 0 ? void 0 : _this$labelRange$dir$.max
@@ -50574,12 +50595,7 @@ var plugins_scrollbar_module = {
50574
50595
 
50575
50596
  scrollbarOpt.startValue = startValue;
50576
50597
  scrollbarOpt.steps = steps;
50577
- scrollbarOpt.interval = interval; // 기존 위치를 보존해야 하는 경우 저장된 위치를 사용
50578
-
50579
- if (savedThumbPosition !== null) {
50580
- thumbPosition = savedThumbPosition;
50581
- }
50582
-
50598
+ scrollbarOpt.interval = interval;
50583
50599
  return {
50584
50600
  size: thumbSize,
50585
50601
  position: thumbPosition
@@ -50646,18 +50662,35 @@ var plugins_scrollbar_module = {
50646
50662
  if (!isOutOfRange) {
50647
50663
  scrollbarOpt.range = [minValue, maxValue]; // 사용자가 스크롤할 때는 저장된 위치를 초기화
50648
50664
 
50649
- delete scrollbarOpt.savedPosition;
50665
+ this.resetScrollbarSavedPositions(dir);
50650
50666
  this.update({
50651
50667
  updateSeries: false,
50652
50668
  updateSelTip: {
50653
50669
  update: false,
50654
50670
  keepDomain: false
50655
50671
  },
50656
- lightUpdate: minValue > 1
50672
+ lightUpdate: minValue > 1,
50673
+ updateByScrollbar: true
50657
50674
  });
50658
50675
  }
50659
50676
  },
50660
50677
 
50678
+ /**
50679
+ * reset scrollbar saved positions
50680
+ * @param dir axis direction ('x' | 'y')
50681
+ */
50682
+ resetScrollbarSavedPositions: function resetScrollbarSavedPositions(dir) {
50683
+ var scrollbarOpt = this.scrollbar[dir];
50684
+
50685
+ if (!scrollbarOpt) {
50686
+ return;
50687
+ }
50688
+
50689
+ delete scrollbarOpt.savedPositionRatio;
50690
+ delete scrollbarOpt.savedAtStart;
50691
+ delete scrollbarOpt.savedAtEnd;
50692
+ },
50693
+
50661
50694
  /**
50662
50695
  * create scroll event
50663
50696
  */
@@ -50912,13 +50945,15 @@ var plugins_scrollbar_module = {
50912
50945
 
50913
50946
  this.scrollbar[dir].range = [movedMin, movedMax]; // 사용자가 드래그로 스크롤할 때는 저장된 위치를 초기화
50914
50947
 
50915
- delete this.scrollbar[dir].savedPosition;
50948
+ this.resetScrollbarSavedPositions(dir);
50916
50949
  this.update({
50917
50950
  updateSeries: false,
50918
50951
  updateSelTip: {
50919
50952
  update: false,
50920
50953
  keepDomain: false
50921
- }
50954
+ },
50955
+ lightUpdate: movedMin > 1,
50956
+ updateByScrollbar: true
50922
50957
  });
50923
50958
  },
50924
50959
 
@@ -55138,9 +55173,10 @@ var element_tip_modules = {
55138
55173
  interval = scrollbarOpt.interval,
55139
55174
  type = scrollbarOpt.type;
55140
55175
 
55141
- var _range = _slicedToArray(range, 2),
55142
- min = _range[0],
55143
- max = _range[1];
55176
+ var _ref3 = range !== null && range !== void 0 ? range : [],
55177
+ _ref4 = _slicedToArray(_ref3, 2),
55178
+ min = _ref4[0],
55179
+ max = _ref4[1];
55144
55180
 
55145
55181
  if (truthyNumber(min) && truthyNumber(max)) {
55146
55182
  labelCount = Math.floor((+max - +min) / interval) + 1;
@@ -55809,15 +55845,15 @@ var chart_core_EvChart = /*#__PURE__*/function () {
55809
55845
  this.axesRange = this.getAxesRange();
55810
55846
  this.labelOffset = this.getLabelOffset();
55811
55847
  this.labelRange = this.getAxesLabelRange();
55812
- this.axesSteps = this.calculateSteps();
55813
- this.adjustXAndYAxisWidth();
55814
- this.drawAxis(hitInfo);
55815
- this.drawSeries(hitInfo);
55816
55848
 
55817
55849
  if ((_this$scrollbar = this.scrollbar) !== null && _this$scrollbar !== void 0 && (_this$scrollbar$x = _this$scrollbar.x) !== null && _this$scrollbar$x !== void 0 && _this$scrollbar$x.use || (_this$scrollbar2 = this.scrollbar) !== null && _this$scrollbar2 !== void 0 && (_this$scrollbar2$y = _this$scrollbar2.y) !== null && _this$scrollbar2$y !== void 0 && _this$scrollbar2$y.use) {
55818
55850
  this.updateScrollbarPosition();
55819
55851
  }
55820
55852
 
55853
+ this.axesSteps = this.calculateSteps();
55854
+ this.adjustXAndYAxisWidth();
55855
+ this.drawAxis(hitInfo);
55856
+ this.drawSeries(hitInfo);
55821
55857
  this.drawTip();
55822
55858
 
55823
55859
  if (this.bufferCanvas && ((_this$bufferCanvas = this.bufferCanvas) === null || _this$bufferCanvas === void 0 ? void 0 : _this$bufferCanvas.width) > 1 && ((_this$bufferCanvas2 = this.bufferCanvas) === null || _this$bufferCanvas2 === void 0 ? void 0 : _this$bufferCanvas2.height) > 1) {
@@ -56476,14 +56512,20 @@ var chart_core_EvChart = /*#__PURE__*/function () {
56476
56512
 
56477
56513
  }, {
56478
56514
  key: "updateScrollbar",
56479
- value: function updateScrollbar(updateData) {
56480
- var _this$scrollbar3, _this$scrollbar3$x, _this$options$axesX2, _this$options$axesX2$, _this$options$axesX2$2, _this$scrollbar4, _this$scrollbar4$y, _this$options$axesY2, _this$options$axesY2$, _this$options$axesY2$2;
56515
+ value: function updateScrollbar(updateData, updateByScrollbar) {
56516
+ var _this$options$axesX$2, _this$options$axesX2, _this$options$axesX2$, _this$options$axesX2$2, _this$options$axesY$2, _this$options$axesY2, _this$options$axesY2$, _this$options$axesY2$2, _this$scrollbar$x$use, _this$scrollbar3, _this$scrollbar3$x, _this$scrollbar$y$use, _this$scrollbar4, _this$scrollbar4$y;
56517
+
56518
+ var isForceUpdate = updateByScrollbar || updateData;
56519
+ var xUse = (_this$options$axesX$2 = (_this$options$axesX2 = this.options.axesX) === null || _this$options$axesX2 === void 0 ? void 0 : (_this$options$axesX2$ = _this$options$axesX2[0]) === null || _this$options$axesX2$ === void 0 ? void 0 : (_this$options$axesX2$2 = _this$options$axesX2$.scrollbar) === null || _this$options$axesX2$2 === void 0 ? void 0 : _this$options$axesX2$2.use) !== null && _this$options$axesX$2 !== void 0 ? _this$options$axesX$2 : false;
56520
+ var yUse = (_this$options$axesY$2 = (_this$options$axesY2 = this.options.axesY) === null || _this$options$axesY2 === void 0 ? void 0 : (_this$options$axesY2$ = _this$options$axesY2[0]) === null || _this$options$axesY2$ === void 0 ? void 0 : (_this$options$axesY2$2 = _this$options$axesY2$.scrollbar) === null || _this$options$axesY2$2 === void 0 ? void 0 : _this$options$axesY2$2.use) !== null && _this$options$axesY$2 !== void 0 ? _this$options$axesY$2 : false;
56521
+ var prevXUse = (_this$scrollbar$x$use = (_this$scrollbar3 = this.scrollbar) === null || _this$scrollbar3 === void 0 ? void 0 : (_this$scrollbar3$x = _this$scrollbar3.x) === null || _this$scrollbar3$x === void 0 ? void 0 : _this$scrollbar3$x.use) !== null && _this$scrollbar$x$use !== void 0 ? _this$scrollbar$x$use : false;
56522
+ var prevYUse = (_this$scrollbar$y$use = (_this$scrollbar4 = this.scrollbar) === null || _this$scrollbar4 === void 0 ? void 0 : (_this$scrollbar4$y = _this$scrollbar4.y) === null || _this$scrollbar4$y === void 0 ? void 0 : _this$scrollbar4$y.use) !== null && _this$scrollbar$y$use !== void 0 ? _this$scrollbar$y$use : false;
56481
56523
 
56482
- if ((_this$scrollbar3 = this.scrollbar) !== null && _this$scrollbar3 !== void 0 && (_this$scrollbar3$x = _this$scrollbar3.x) !== null && _this$scrollbar3$x !== void 0 && _this$scrollbar3$x.isInit || (_this$options$axesX2 = this.options.axesX) !== null && _this$options$axesX2 !== void 0 && (_this$options$axesX2$ = _this$options$axesX2[0]) !== null && _this$options$axesX2$ !== void 0 && (_this$options$axesX2$2 = _this$options$axesX2$.scrollbar) !== null && _this$options$axesX2$2 !== void 0 && _this$options$axesX2$2.use) {
56524
+ if (xUse !== prevXUse || xUse || isForceUpdate && xUse) {
56483
56525
  this.updateScrollbarInfo('x', updateData);
56484
56526
  }
56485
56527
 
56486
- if ((_this$scrollbar4 = this.scrollbar) !== null && _this$scrollbar4 !== void 0 && (_this$scrollbar4$y = _this$scrollbar4.y) !== null && _this$scrollbar4$y !== void 0 && _this$scrollbar4$y.isInit || (_this$options$axesY2 = this.options.axesY) !== null && _this$options$axesY2 !== void 0 && (_this$options$axesY2$ = _this$options$axesY2[0]) !== null && _this$options$axesY2$ !== void 0 && (_this$options$axesY2$2 = _this$options$axesY2$.scrollbar) !== null && _this$options$axesY2$2 !== void 0 && _this$options$axesY2$2.use) {
56528
+ if (yUse !== prevYUse || yUse || isForceUpdate && yUse) {
56487
56529
  this.updateScrollbarInfo('y', updateData);
56488
56530
  }
56489
56531
  }
@@ -56509,13 +56551,14 @@ var chart_core_EvChart = /*#__PURE__*/function () {
56509
56551
  updateLegend = updateInfo.updateLegend,
56510
56552
  updateData = updateInfo.updateData,
56511
56553
  updateTooltip = updateInfo.updateTooltip,
56512
- lightUpdate = updateInfo.lightUpdate;
56554
+ lightUpdate = updateInfo.lightUpdate,
56555
+ updateByScrollbar = updateInfo.updateByScrollbar;
56513
56556
 
56514
56557
  if (!this.isInit) {
56515
56558
  return;
56516
56559
  }
56517
56560
 
56518
- this.updateScrollbar(updateData);
56561
+ this.updateScrollbar(updateData, updateByScrollbar);
56519
56562
  this.resetProps();
56520
56563
  this.updateSeries = updateSeries;
56521
56564