vxe-pc-ui 3.20.8 → 3.20.10

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 (141) hide show
  1. package/es/card/src/card.js +2 -1
  2. package/es/date-panel/src/date-panel.js +70 -39
  3. package/es/date-panel/style.css +22 -20
  4. package/es/date-panel/style.min.css +1 -1
  5. package/es/drawer/src/drawer.js +1 -0
  6. package/es/icon/style.css +1 -1
  7. package/es/icon-picker/src/icon-picker.js +11 -3
  8. package/es/icon-picker/style.css +9 -3
  9. package/es/icon-picker/style.min.css +1 -1
  10. package/es/layout-aside/src/layout-aside.js +2 -1
  11. package/es/layout-body/src/layout-body.js +2 -1
  12. package/es/layout-container/src/layout-container.js +9 -2
  13. package/es/list/src/list.js +80 -223
  14. package/es/menu/src/menu.js +1 -0
  15. package/es/modal/src/modal.js +1 -0
  16. package/es/scrollbar/src/scrollbar.js +32 -188
  17. package/es/select/src/select.js +273 -8
  18. package/es/select/style.css +44 -0
  19. package/es/select/style.min.css +1 -1
  20. package/es/style.css +1 -1
  21. package/es/style.min.css +1 -1
  22. package/es/tabs/src/tabs.js +2 -1
  23. package/es/tooltip/src/tooltip.js +7 -6
  24. package/es/tooltip/style.css +2 -0
  25. package/es/tooltip/style.min.css +1 -1
  26. package/es/tree/src/tree.js +85 -228
  27. package/es/ui/index.js +1 -1
  28. package/es/ui/src/log.js +1 -1
  29. package/es/vxe-date-panel/style.css +22 -20
  30. package/es/vxe-date-panel/style.min.css +1 -1
  31. package/es/vxe-icon-picker/style.css +9 -3
  32. package/es/vxe-icon-picker/style.min.css +1 -1
  33. package/es/vxe-select/style.css +44 -0
  34. package/es/vxe-select/style.min.css +1 -1
  35. package/es/vxe-tooltip/style.css +2 -0
  36. package/es/vxe-tooltip/style.min.css +1 -1
  37. package/lib/card/src/card.js +1 -1
  38. package/lib/card/src/card.min.js +1 -1
  39. package/lib/date-panel/src/date-panel.js +74 -43
  40. package/lib/date-panel/src/date-panel.min.js +1 -1
  41. package/lib/date-panel/style/style.css +22 -20
  42. package/lib/date-panel/style/style.min.css +1 -1
  43. package/lib/drawer/src/drawer.js +1 -1
  44. package/lib/drawer/src/drawer.min.js +1 -1
  45. package/lib/icon/style/style.css +1 -1
  46. package/lib/icon/style/style.min.css +1 -1
  47. package/lib/icon-picker/src/icon-picker.js +56 -38
  48. package/lib/icon-picker/src/icon-picker.min.js +1 -1
  49. package/lib/icon-picker/style/style.css +9 -3
  50. package/lib/icon-picker/style/style.min.css +1 -1
  51. package/lib/index.umd.js +894 -816
  52. package/lib/index.umd.min.js +1 -1
  53. package/lib/layout-aside/src/layout-aside.js +1 -1
  54. package/lib/layout-aside/src/layout-aside.min.js +1 -1
  55. package/lib/layout-body/src/layout-body.js +1 -1
  56. package/lib/layout-body/src/layout-body.min.js +1 -1
  57. package/lib/layout-container/src/layout-container.js +13 -3
  58. package/lib/layout-container/src/layout-container.min.js +1 -1
  59. package/lib/list/src/list.js +72 -225
  60. package/lib/list/src/list.min.js +1 -1
  61. package/lib/menu/src/menu.js +1 -1
  62. package/lib/menu/src/menu.min.js +1 -1
  63. package/lib/modal/src/modal.js +1 -1
  64. package/lib/modal/src/modal.min.js +1 -1
  65. package/lib/scrollbar/src/scrollbar.js +29 -192
  66. package/lib/scrollbar/src/scrollbar.min.js +1 -1
  67. package/lib/select/src/select.js +322 -69
  68. package/lib/select/src/select.min.js +1 -1
  69. package/lib/select/style/style.css +44 -0
  70. package/lib/select/style/style.min.css +1 -1
  71. package/lib/style.css +1 -1
  72. package/lib/style.min.css +1 -1
  73. package/lib/tabs/src/tabs.js +1 -1
  74. package/lib/tabs/src/tabs.min.js +1 -1
  75. package/lib/tooltip/src/tooltip.js +5 -6
  76. package/lib/tooltip/src/tooltip.min.js +1 -1
  77. package/lib/tooltip/style/style.css +2 -0
  78. package/lib/tooltip/style/style.min.css +1 -1
  79. package/lib/tree/src/tree.js +77 -229
  80. package/lib/tree/src/tree.min.js +1 -1
  81. package/lib/ui/index.js +1 -1
  82. package/lib/ui/index.min.js +1 -1
  83. package/lib/ui/src/log.js +1 -1
  84. package/lib/ui/src/log.min.js +1 -1
  85. package/lib/vxe-date-panel/style/style.css +22 -20
  86. package/lib/vxe-date-panel/style/style.min.css +1 -1
  87. package/lib/vxe-icon-picker/style/style.css +9 -3
  88. package/lib/vxe-icon-picker/style/style.min.css +1 -1
  89. package/lib/vxe-select/style/style.css +44 -0
  90. package/lib/vxe-select/style/style.min.css +1 -1
  91. package/lib/vxe-tooltip/style/style.css +2 -0
  92. package/lib/vxe-tooltip/style/style.min.css +1 -1
  93. package/package.json +2 -2
  94. package/packages/card/src/card.ts +4 -2
  95. package/packages/date-panel/src/date-panel.ts +70 -39
  96. package/packages/drawer/src/drawer.ts +4 -2
  97. package/packages/icon-picker/src/icon-picker.ts +12 -3
  98. package/packages/layout-aside/src/layout-aside.ts +4 -2
  99. package/packages/layout-body/src/layout-body.ts +4 -2
  100. package/packages/layout-container/src/layout-container.ts +13 -3
  101. package/packages/list/src/list.ts +85 -241
  102. package/packages/menu/src/menu.ts +3 -1
  103. package/packages/modal/src/modal.ts +3 -1
  104. package/packages/scrollbar/src/scrollbar.ts +32 -199
  105. package/packages/select/src/select.ts +304 -11
  106. package/packages/tabs/src/tabs.ts +4 -4
  107. package/packages/tooltip/src/tooltip.ts +10 -8
  108. package/packages/tree/src/tree.ts +90 -247
  109. package/styles/components/date-panel.scss +31 -29
  110. package/styles/components/icon-picker.scss +9 -3
  111. package/styles/components/select.scss +77 -0
  112. package/styles/components/tooltip.scss +1 -0
  113. package/types/components/card.d.ts +2 -2
  114. package/types/components/drawer.d.ts +2 -2
  115. package/types/components/gantt-module/gantt-view.d.ts +8 -17
  116. package/types/components/grid.d.ts +3 -2
  117. package/types/components/icon-picker.d.ts +21 -1
  118. package/types/components/layout-aside.d.ts +2 -2
  119. package/types/components/layout-body.d.ts +2 -2
  120. package/types/components/layout-container.d.ts +3 -1
  121. package/types/components/list.d.ts +6 -2
  122. package/types/components/menu.d.ts +2 -2
  123. package/types/components/modal.d.ts +2 -2
  124. package/types/components/scrollbar.d.ts +17 -14
  125. package/types/components/select.d.ts +28 -3
  126. package/types/components/table.d.ts +26 -22
  127. package/types/components/tabs.d.ts +2 -2
  128. package/types/components/tooltip.d.ts +2 -2
  129. package/types/components/tree.d.ts +8 -17
  130. /package/es/icon/{iconfont.1792115554173.ttf → iconfont.1792219842866.ttf} +0 -0
  131. /package/es/icon/{iconfont.1792115554173.woff → iconfont.1792219842866.woff} +0 -0
  132. /package/es/icon/{iconfont.1792115554173.woff2 → iconfont.1792219842866.woff2} +0 -0
  133. /package/es/{iconfont.1792115554173.ttf → iconfont.1792219842866.ttf} +0 -0
  134. /package/es/{iconfont.1792115554173.woff → iconfont.1792219842866.woff} +0 -0
  135. /package/es/{iconfont.1792115554173.woff2 → iconfont.1792219842866.woff2} +0 -0
  136. /package/lib/icon/style/{iconfont.1792115554173.ttf → iconfont.1792219842866.ttf} +0 -0
  137. /package/lib/icon/style/{iconfont.1792115554173.woff → iconfont.1792219842866.woff} +0 -0
  138. /package/lib/icon/style/{iconfont.1792115554173.woff2 → iconfont.1792219842866.woff2} +0 -0
  139. /package/lib/{iconfont.1792115554173.ttf → iconfont.1792219842866.ttf} +0 -0
  140. /package/lib/{iconfont.1792115554173.woff → iconfont.1792219842866.woff} +0 -0
  141. /package/lib/{iconfont.1792115554173.woff2 → iconfont.1792219842866.woff2} +0 -0
@@ -14,14 +14,9 @@ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e
14
14
  var getConfig = _ui.VxeUI.getConfig,
15
15
  createEvent = _ui.VxeUI.createEvent,
16
16
  domUtils = _ui.VxeUI.domUtils,
17
- scrollbarUtils = _ui.VxeUI.scrollbarUtils,
18
17
  globalResize = _ui.VxeUI.globalResize,
19
18
  globalEvents = _ui.VxeUI.globalEvents,
20
19
  renderEmptyElement = _ui.VxeUI.renderEmptyElement;
21
- var getThumbOffsetSize = scrollbarUtils.getThumbOffsetSize,
22
- getThumbSize = scrollbarUtils.getThumbSize,
23
- getScrollFromClick = scrollbarUtils.getScrollFromClick,
24
- getScrollFromDrag = scrollbarUtils.getScrollFromDrag;
25
20
  function createReactData() {
26
21
  return {
27
22
  yThumbHeight: 0,
@@ -30,7 +25,7 @@ function createReactData() {
30
25
  }
31
26
  function createInternalData() {
32
27
  return {
33
- // resizeObserver: undefined,
28
+ // scrollObserver: undefined,
34
29
  // isThumbDrag: false,
35
30
  thumbDragOffset: 0,
36
31
  yThumbTop: 0,
@@ -41,6 +36,7 @@ function createInternalData() {
41
36
  }
42
37
  var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defineVxeComponent)({
43
38
  name: 'VxeScrollbar',
39
+ mixins: [_ui.globalMixins.sizeMixin, _ui.globalMixins.initVScrollbarMixin],
44
40
  props: {
45
41
  id: [String, Number],
46
42
  viewId: [String, Number],
@@ -113,12 +109,26 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
113
109
  return getConfig().scrollbar.viewInnerClassName;
114
110
  }
115
111
  },
112
+ size: {
113
+ type: String,
114
+ default: function _default() {
115
+ return getConfig().scrollbar.size || getConfig().size;
116
+ }
117
+ },
118
+ /**
119
+ * 已废弃
120
+ * @deprecated
121
+ */
116
122
  autoResize: {
117
123
  type: Boolean,
118
124
  default: function _default() {
119
125
  return getConfig().scrollbar.autoResize;
120
126
  }
121
127
  },
128
+ /**
129
+ * 已废弃
130
+ * @deprecated
131
+ */
122
132
  syncResize: [Boolean, String, Number]
123
133
  },
124
134
  data: function data() {
@@ -130,7 +140,7 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
130
140
  reFlag: 0
131
141
  });
132
142
  },
133
- computed: {
143
+ computed: Object.assign(Object.assign({}, {}), {
134
144
  computeWrapperStyle: function computeWrapperStyle() {
135
145
  var $xeScrollbar = this;
136
146
  var props = $xeScrollbar;
@@ -215,13 +225,14 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
215
225
  padding = props.padding;
216
226
  var yThumbHeight = reactData.yThumbHeight,
217
227
  xThumbWidth = reactData.xThumbWidth;
228
+ var vSize = $xeScrollbar.computeSize;
218
229
  var xToTop = $xeScrollbar.computeXToTop;
219
230
  var yToLeft = $xeScrollbar.computeYToLeft;
220
231
  var xVisible = $xeScrollbar.computeXVisible;
221
232
  var yVisible = $xeScrollbar.computeYVisible;
222
233
  var xAutoHide = $xeScrollbar.computeXAutoHide;
223
234
  var yAutoHide = $xeScrollbar.computeYAutoHide;
224
- return domUtils.buildClass(['vxe-scrollbar', theme ? "theme--".concat(theme) : '', "ov-x--".concat(xVisible === false ? 'hidden' : 'visible'), "ov-y--".concat(yVisible === false ? 'hidden' : 'visible'), "sx-pos--".concat(xToTop ? 'top' : 'bottom'), "sy-pos--".concat(yToLeft ? 'left' : 'right'), native ? 'is--native' : 'is--virtual', className], {
235
+ return domUtils.buildClass(['vxe-scrollbar', vSize ? "size--".concat(vSize) : '', theme ? "theme--".concat(theme) : '', "ov-x--".concat(xVisible === false ? 'hidden' : 'visible'), "ov-y--".concat(yVisible === false ? 'hidden' : 'visible'), "sx-pos--".concat(xToTop ? 'top' : 'bottom'), "sy-pos--".concat(yToLeft ? 'left' : 'right'), native ? 'is--native' : 'is--virtual', className], {
225
236
  'is--padding': padding,
226
237
  'ov-x--auto-hide': xAutoHide,
227
238
  'ov-y--auto-hide': yAutoHide,
@@ -261,7 +272,7 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
261
272
  var yOpts = $xeScrollbar.computeYOpts;
262
273
  return yOpts.position === 'left';
263
274
  }
264
- },
275
+ }),
265
276
  methods: {
266
277
  //
267
278
  // Method
@@ -272,12 +283,12 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
272
283
  $scrollbar: $xeScrollbar
273
284
  }, params));
274
285
  },
275
- getViewElem: function getViewElem() {
286
+ getScrollViewElem: function getScrollViewElem() {
276
287
  var $xeScrollbar = this;
277
288
  var viewEl = $xeScrollbar.$refs.refViewElem;
278
289
  return viewEl || null;
279
290
  },
280
- getViewInnerElem: function getViewInnerElem() {
291
+ getScrollViewInnerElem: function getScrollViewInnerElem() {
281
292
  var $xeScrollbar = this;
282
293
  var viewInnerEl = $xeScrollbar.$refs.refViewInnerElem;
283
294
  return viewInnerEl || null;
@@ -344,61 +355,6 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
344
355
  $xeScrollbar.updateThumbOffset();
345
356
  return $xeScrollbar.$nextTick();
346
357
  },
347
- updateThumbSize: function updateThumbSize() {
348
- var $xeScrollbar = this;
349
- var reactData = $xeScrollbar.reactData;
350
- var viewEl = $xeScrollbar.$refs.refViewElem;
351
- if (!viewEl) {
352
- return;
353
- }
354
- if (!viewEl.clientHeight || !viewEl.clientHeight) {
355
- return;
356
- }
357
- var trackXEl = $xeScrollbar.$refs.refTrackXElem;
358
- var xThumbWidth = trackXEl ? getThumbSize(viewEl.clientWidth, viewEl.scrollWidth, trackXEl.clientWidth) : 0;
359
- var thumbXElem = $xeScrollbar.$refs.refThumbXElem;
360
- if (thumbXElem) {
361
- thumbXElem.style.width = xThumbWidth + 'px';
362
- }
363
- reactData.xThumbWidth = xThumbWidth;
364
- var trackYEl = $xeScrollbar.$refs.refTrackYElem;
365
- var yThumbHeight = trackYEl ? getThumbSize(viewEl.clientHeight, viewEl.scrollHeight, trackYEl.clientHeight) : 0;
366
- var thumbYElem = $xeScrollbar.$refs.refThumbYElem;
367
- if (thumbYElem) {
368
- thumbYElem.style.height = yThumbHeight + 'px';
369
- }
370
- reactData.yThumbHeight = yThumbHeight;
371
- },
372
- updateThumbOffset: function updateThumbOffset() {
373
- var $xeScrollbar = this;
374
- var reactData = $xeScrollbar.reactData;
375
- var internalData = $xeScrollbar.internalData;
376
- var viewEl = $xeScrollbar.$refs.refViewElem;
377
- if (!viewEl) {
378
- return;
379
- if (!viewEl.clientHeight || !viewEl.clientHeight) {
380
- return;
381
- }
382
- }
383
- var xThumbWidth = reactData.xThumbWidth,
384
- yThumbHeight = reactData.yThumbHeight;
385
- var trackXEl = $xeScrollbar.$refs.refTrackXElem;
386
- var thumbXElem = $xeScrollbar.$refs.refThumbXElem;
387
- var xThumbLeft = trackXEl && xThumbWidth ? getThumbOffsetSize(viewEl.scrollLeft, viewEl.clientWidth, viewEl.scrollWidth, trackXEl.clientWidth, xThumbWidth) : 0;
388
- internalData.xThumbLeft = xThumbLeft;
389
- if (thumbXElem && xThumbWidth) {
390
- thumbXElem.style.width = xThumbWidth + 'px';
391
- thumbXElem.style.transform = "translateX(".concat(xThumbLeft, "px)");
392
- }
393
- var trackYEl = $xeScrollbar.$refs.refTrackYElem;
394
- var thumbYElem = $xeScrollbar.$refs.refThumbYElem;
395
- var yThumbTop = trackYEl && yThumbHeight ? getThumbOffsetSize(viewEl.scrollTop, viewEl.clientHeight, viewEl.scrollHeight, trackYEl.clientHeight, yThumbHeight) : 0;
396
- internalData.yThumbTop = yThumbTop;
397
- if (thumbYElem && yThumbHeight) {
398
- thumbYElem.style.height = yThumbHeight + 'px';
399
- thumbYElem.style.transform = "translateY(".concat(yThumbTop, "px)");
400
- }
401
- },
402
358
  scrollEvent: function scrollEvent(evnt) {
403
359
  var $xeScrollbar = this;
404
360
  var reactData = $xeScrollbar.reactData;
@@ -481,125 +437,6 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
481
437
  scrollWidth: scrollWidth
482
438
  }, evnt);
483
439
  },
484
- clickTrackXEvent: function clickTrackXEvent(evnt) {
485
- var $xeScrollbar = this;
486
- var reactData = $xeScrollbar.reactData;
487
- var trackEl = evnt.currentTarget;
488
- if (trackEl !== evnt.target) {
489
- return;
490
- }
491
- var viewEl = $xeScrollbar.$refs.refViewElem;
492
- if (!viewEl) {
493
- return;
494
- }
495
- var xThumbWidth = reactData.xThumbWidth;
496
- var trackRect = trackEl.getBoundingClientRect();
497
- viewEl.scrollTo({
498
- left: getScrollFromClick(evnt.clientX - trackRect.left, viewEl.clientWidth, viewEl.scrollWidth, trackEl.clientWidth, xThumbWidth),
499
- behavior: 'auto'
500
- });
501
- },
502
- clickTrackYEvent: function clickTrackYEvent(evnt) {
503
- var $xeScrollbar = this;
504
- var reactData = $xeScrollbar.reactData;
505
- var trackEl = evnt.currentTarget;
506
- if (trackEl !== evnt.target) {
507
- return;
508
- }
509
- var viewEl = $xeScrollbar.$refs.refViewElem;
510
- if (!viewEl) {
511
- return;
512
- }
513
- var yThumbHeight = reactData.yThumbHeight;
514
- var trackRect = trackEl.getBoundingClientRect();
515
- viewEl.scrollTo({
516
- top: getScrollFromClick(evnt.clientY - trackRect.top, viewEl.clientHeight, viewEl.scrollHeight, trackEl.clientHeight, yThumbHeight),
517
- behavior: 'auto'
518
- });
519
- },
520
- pointerdownThumbXEvent: function pointerdownThumbXEvent(evnt) {
521
- var $xeScrollbar = this;
522
- var reactData = $xeScrollbar.reactData;
523
- var internalData = $xeScrollbar.internalData;
524
- var thumbEl = evnt.currentTarget;
525
- internalData.isThumbDrag = true;
526
- thumbEl.setPointerCapture(evnt.pointerId);
527
- var viewEl = $xeScrollbar.$refs.refViewElem;
528
- if (!viewEl) {
529
- return;
530
- }
531
- var xThumbWidth = reactData.xThumbWidth;
532
- var trackEl = thumbEl.parentElement;
533
- var trackRect = trackEl.getBoundingClientRect();
534
- var pointerPosition = evnt.clientX - trackRect.left;
535
- // 记录 thumb 的偏移
536
- var thumbOffset = getThumbOffsetSize(viewEl.scrollLeft, viewEl.clientWidth, viewEl.scrollWidth, trackEl.clientWidth, xThumbWidth);
537
- internalData.thumbDragOffset = pointerPosition - thumbOffset;
538
- },
539
- pointermoveThumbXEvent: function pointermoveThumbXEvent(evnt) {
540
- var $xeScrollbar = this;
541
- var reactData = $xeScrollbar.reactData;
542
- var internalData = $xeScrollbar.internalData;
543
- var isThumbDrag = internalData.isThumbDrag,
544
- thumbDragOffset = internalData.thumbDragOffset;
545
- if (isThumbDrag) {
546
- var viewEl = $xeScrollbar.$refs.refViewElem;
547
- if (!viewEl) {
548
- return;
549
- }
550
- var xThumbWidth = reactData.xThumbWidth;
551
- var thumbEl = evnt.currentTarget;
552
- var trackEl = thumbEl.parentElement;
553
- var trackRect = trackEl.getBoundingClientRect();
554
- // 更新偏移
555
- viewEl.scrollLeft = getScrollFromDrag(evnt.clientX - trackRect.left, thumbDragOffset, viewEl.clientWidth, viewEl.scrollWidth, trackEl.clientWidth, xThumbWidth);
556
- }
557
- },
558
- cleatPointerThumbEvent: function cleatPointerThumbEvent(evnt) {
559
- var $xeScrollbar = this;
560
- var internalData = $xeScrollbar.internalData;
561
- var thumbEl = evnt.currentTarget;
562
- thumbEl.releasePointerCapture(evnt.pointerId);
563
- internalData.isThumbDrag = false;
564
- },
565
- pointerdownThumbYEvent: function pointerdownThumbYEvent(evnt) {
566
- var $xeScrollbar = this;
567
- var reactData = $xeScrollbar.reactData;
568
- var internalData = $xeScrollbar.internalData;
569
- var thumbEl = evnt.currentTarget;
570
- internalData.isThumbDrag = true;
571
- thumbEl.setPointerCapture(evnt.pointerId);
572
- var viewEl = $xeScrollbar.$refs.refViewElem;
573
- if (!viewEl) {
574
- return;
575
- }
576
- var yThumbHeight = reactData.yThumbHeight;
577
- var trackEl = thumbEl.parentElement;
578
- var trackRect = trackEl.getBoundingClientRect();
579
- var pointerPosition = evnt.clientY - trackRect.top;
580
- // 记录 thumb 的偏移
581
- var thumbOffset = getThumbOffsetSize(viewEl.scrollTop, viewEl.clientHeight, viewEl.scrollHeight, trackEl.clientHeight, yThumbHeight);
582
- internalData.thumbDragOffset = pointerPosition - thumbOffset;
583
- },
584
- pointermoveThumbYEvent: function pointermoveThumbYEvent(evnt) {
585
- var $xeScrollbar = this;
586
- var reactData = $xeScrollbar.reactData;
587
- var internalData = $xeScrollbar.internalData;
588
- var isThumbDrag = internalData.isThumbDrag,
589
- thumbDragOffset = internalData.thumbDragOffset;
590
- if (isThumbDrag) {
591
- var viewEl = $xeScrollbar.$refs.refViewElem;
592
- if (!viewEl) {
593
- return;
594
- }
595
- var yThumbHeight = reactData.yThumbHeight;
596
- var thumbEl = evnt.currentTarget;
597
- var trackEl = thumbEl.parentElement;
598
- var trackRect = trackEl.getBoundingClientRect();
599
- // 更新偏移
600
- viewEl.scrollTop = getScrollFromDrag(evnt.clientY - trackRect.top, thumbDragOffset, viewEl.clientHeight, viewEl.scrollHeight, trackEl.clientHeight, yThumbHeight);
601
- }
602
- },
603
440
  //
604
441
  // Render
605
442
  //
@@ -753,18 +590,18 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
753
590
  var viewEl = $xeScrollbar.$refs.refViewElem;
754
591
  var viewInnerEl = $xeScrollbar.$refs.refViewInnerElem;
755
592
  if (autoResize) {
756
- var resizeObserver = globalResize.create(function () {
593
+ var scrollObserver = globalResize.create(function () {
757
594
  if (props.autoResize) {
758
595
  $xeScrollbar.reFlag++;
759
596
  }
760
597
  });
761
598
  if (viewEl) {
762
- resizeObserver.observe(viewEl);
599
+ scrollObserver.observe(viewEl);
763
600
  }
764
601
  if (viewInnerEl) {
765
- resizeObserver.observe(viewInnerEl);
602
+ scrollObserver.observe(viewInnerEl);
766
603
  }
767
- internalData.resizeObserver = resizeObserver;
604
+ internalData.scrollObserver = scrollObserver;
768
605
  }
769
606
  $xeScrollbar.reFlag++;
770
607
  globalEvents.on($xeScrollbar, 'resize', function () {
@@ -774,9 +611,9 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
774
611
  beforeDestroy: function beforeDestroy() {
775
612
  var $xeScrollbar = this;
776
613
  var internalData = $xeScrollbar.internalData;
777
- var resizeObserver = internalData.resizeObserver;
778
- if (resizeObserver) {
779
- resizeObserver.disconnect();
614
+ var scrollObserver = internalData.scrollObserver;
615
+ if (scrollObserver) {
616
+ scrollObserver.disconnect();
780
617
  }
781
618
  globalEvents.off($xeScrollbar, 'resize');
782
619
  },
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _comp=require("../../ui/src/comp"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_dom=require("../../ui/src/dom"),_utils=require("../../ui/src/utils"),_loading=_interopRequireDefault(require("../../loading"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var getConfig=_ui.VxeUI.getConfig,createEvent=_ui.VxeUI.createEvent,domUtils=_ui.VxeUI.domUtils,scrollbarUtils=_ui.VxeUI.scrollbarUtils,globalResize=_ui.VxeUI.globalResize,globalEvents=_ui.VxeUI.globalEvents,renderEmptyElement=_ui.VxeUI.renderEmptyElement,getThumbOffsetSize=scrollbarUtils.getThumbOffsetSize,getThumbSize=scrollbarUtils.getThumbSize,getScrollFromClick=scrollbarUtils.getScrollFromClick,getScrollFromDrag=scrollbarUtils.getScrollFromDrag;function createReactData(){return{yThumbHeight:0,xThumbWidth:0}}function createInternalData(){return{thumbDragOffset:0,yThumbTop:0,xThumbLeft:0,lastScrollTop:0,lastScrollLeft:0}}var _default2=exports.default=(0,_comp.defineVxeComponent)({name:"VxeScrollbar",props:{id:[String,Number],viewId:[String,Number],theme:{type:String,default:function(){return getConfig().scrollbar.theme}},width:[String,Number],height:[String,Number],minWidth:[String,Number],minHeight:[String,Number],maxWidth:[String,Number],maxHeight:[String,Number],loading:Boolean,native:{type:Boolean,default:function(){return getConfig().scrollbar.native}},padding:{type:Boolean,default:function(){return getConfig().scrollbar.padding}},autoHide:{type:Boolean,default:function(){return getConfig().scrollbar.autoHide}},visible:{type:Boolean,default:function(){return getConfig().scrollbar.visible}},xConfig:Object,yConfig:Object,className:{type:String,default:function(){return getConfig().scrollbar.className}},viewAttrs:{type:Object,default:function(){return getConfig().scrollbar.viewAttrs}},viewStyle:{type:Object,default:function(){return getConfig().scrollbar.viewStyle}},viewClassName:{type:String,default:function(){return getConfig().scrollbar.viewClassName}},viewInnerClassName:{type:String,default:function(){return getConfig().scrollbar.viewInnerClassName}},autoResize:{type:Boolean,default:function(){return getConfig().scrollbar.autoResize}},syncResize:[Boolean,String,Number]},data:function(){var e=_xeUtils.default.uniqueId(),t=createReactData();return Object.assign(Object.assign({},{}),{xID:e,reactData:t,reFlag:0})},computed:{computeWrapperStyle:function(){var e=this,t=e.width,i=e.height,r=e.minWidth,n=e.minHeight,l=e.maxWidth,o=e.maxHeight,s=e.computeYWidth,e=e.computeXHeight,a={};return t&&(a.width=(0,_dom.toCssUnit)(t)),i&&(a.height=(0,_dom.toCssUnit)(i)),r&&(a.minWidth=(0,_dom.toCssUnit)(r)),n&&(a.minHeight=(0,_dom.toCssUnit)(n)),l&&(a.maxWidth=(0,_dom.toCssUnit)(l)),o&&(a.maxHeight=(0,_dom.toCssUnit)(o)),(s||e)&&(a["--vxe-ui-scrollbar-y-width"]=(0,_dom.toCssUnit)(s||e),a["--vxe-ui-scrollbar-x-height"]=(0,_dom.toCssUnit)(e||s)),a},computeXHeight:function(){return this.computeXOpts.height},computeYWidth:function(){return this.computeYOpts.width},computeXVisible:function(){var e=this.visible,t=this.computeXOpts;return(0,_utils.getDefaultConfig)(t.visible,e)},computeYVisible:function(){var e=this.visible,t=this.computeYOpts;return(0,_utils.getDefaultConfig)(t.visible,e)},computeXAutoHide:function(){var e=this.autoHide,t=this.computeXOpts;return(0,_utils.getDefaultConfig)(t.autoHide,e)},computeYAutoHide:function(){var e=this.autoHide,t=this.computeYOpts;return(0,_utils.getDefaultConfig)(t.autoHide,e)},computeWrapperClss:function(){var e=this,t=e.reactData,i=e.native,r=e.theme,n=e.className,l=e.padding,o=t.yThumbHeight,t=t.xThumbWidth,s=e.computeXToTop,a=e.computeYToLeft,c=e.computeXVisible,u=e.computeYVisible,h=e.computeXAutoHide,e=e.computeYAutoHide;return domUtils.buildClass(["vxe-scrollbar",r?"theme--".concat(r):"","ov-x--".concat(!1===c?"hidden":"visible"),"ov-y--".concat(!1===u?"hidden":"visible"),"sx-pos--".concat(s?"top":"bottom"),"sy-pos--".concat(a?"left":"right"),i?"is--native":"is--virtual",n],{"is--padding":l,"ov-x--auto-hide":h,"ov-y--auto-hide":e,"overflow-y":o,"overflow-x":t})},computeViewClss:function(){var e=this.viewClassName;return domUtils.buildClass(["vxe-scrollbar--view",e])},computeViewInnerClss:function(){var e=this.viewInnerClassName;return domUtils.buildClass(["vxe-scrollbar--view-inner",e])},computeXOpts:function(){return Object.assign({},getConfig().scrollbar.xConfig,this.xConfig)},computeYOpts:function(){return Object.assign({},getConfig().scrollbar.yConfig,this.yConfig)},computeXToTop:function(){return"top"===this.computeXOpts.position},computeYToLeft:function(){return"left"===this.computeYOpts.position}},methods:{dispatchEvent:function(e,t,i){this.$emit(e,createEvent(i,{$scrollbar:this},t))},getViewElem:function(){return this.$refs.refViewElem||null},getViewInnerElem:function(){return this.$refs.refViewInnerElem||null},scrollTo:function(e,t){var i=this.$refs.refViewElem;i&&(_xeUtils.default.isNumber(e)?i.scrollTo(e,t||0):i.scrollTo(e))},scrollIntoView:function(){var e=this.$refs.refViewElem;e&&e.scrollIntoView()},setScrollTop:function(e){var t=this.$refs.refViewElem;t&&(t.scrollTop=e)},setScrollLeft:function(e){var t=this.$refs.refViewElem;t&&(t.scrollLeft=e)},getScrollTop:function(){var e=this.$refs.refViewElem;return e?e.scrollTop:0},getScrollLeft:function(){var e=this.$refs.refViewElem;return e?e.scrollLeft:0},clearScroll:function(){var e=this.$refs.refViewElem;e&&(e.scrollTop=0,e.scrollLeft=0)},recalculate:function(){return this.updateThumbSize(),this.updateThumbOffset(),this.$nextTick()},updateThumbSize:function(){var e,t,i=this,r=i.reactData,n=i.$refs.refViewElem;n&&n.clientHeight&&(t=(t=i.$refs.refTrackXElem)?getThumbSize(n.clientWidth,n.scrollWidth,t.clientWidth):0,(e=i.$refs.refThumbXElem)&&(e.style.width=t+"px"),r.xThumbWidth=t,t=(e=i.$refs.refTrackYElem)?getThumbSize(n.clientHeight,n.scrollHeight,e.clientHeight):0,(n=i.$refs.refThumbYElem)&&(n.style.height=t+"px"),r.yThumbHeight=t)},updateThumbOffset:function(){var e,t,i,r=this,n=r.reactData,l=r.internalData,o=r.$refs.refViewElem;o&&(e=n.xThumbWidth,n=n.yThumbHeight,i=r.$refs.refTrackXElem,t=r.$refs.refThumbXElem,i=i&&e?getThumbOffsetSize(o.scrollLeft,o.clientWidth,o.scrollWidth,i.clientWidth,e):0,l.xThumbLeft=i,t&&e&&(t.style.width=e+"px",t.style.transform="translateX(".concat(i,"px)")),e=r.$refs.refTrackYElem,t=r.$refs.refThumbYElem,i=e&&n?getThumbOffsetSize(o.scrollTop,o.clientHeight,o.scrollHeight,e.clientHeight,n):0,l.yThumbTop=i,t)&&n&&(t.style.height=n+"px",t.style.transform="translateY(".concat(i,"px)"))},scrollEvent:function(e){var t,i=this,r=i.reactData,n=i.internalData,l=r.xThumbWidth,r=r.yThumbHeight,o=n.lastScrollTop,s=n.lastScrollLeft,a=i.computeXOpts,c=e.currentTarget,u=c.scrollTop,h=c.scrollLeft,f=c.clientWidth,m=c.clientHeight,g=c.scrollHeight,c=c.scrollWidth,d="",p=!1,b=!1,v=!1,T=!1;o!==u&&(t=_xeUtils.default.toNumber(i.computeYOpts.threshold)||1,o<u?(d="bottom",0<r&&g-t<=u+m&&(b=!0)):(d="top",0<r&&u<=t&&(p=!0))),s!==h&&(o=_xeUtils.default.toNumber(a.threshold)||1,s<h?(d="right",0<l&&c-o<=h+f&&(T=!0)):(d="left",0<l&&h<=o&&(v=!0))),i.updateThumbOffset(),n.lastScrollTop=u,n.lastScrollLeft=h,(b||p||T||v)&&i.dispatchEvent("scroll-boundary",{direction:d,isTop:p,isBottom:b,isLeft:v,isRight:T,scrollTop:u,scrollLeft:h,clientWidth:f,clientHeight:m,scrollHeight:g,scrollWidth:c},e),i.dispatchEvent("scroll",{direction:d,isTop:0<r&&u<=0,isBottom:0<r&&g<=u+m,isLeft:0<l&&h<=0,isRight:0<l&&c<=h+f,scrollTop:u,scrollLeft:h,clientWidth:f,clientHeight:m,scrollHeight:g,scrollWidth:c},e)},clickTrackXEvent:function(e){var t,i,r=this.reactData,n=e.currentTarget;n===e.target&&(t=this.$refs.refViewElem)&&(r=r.xThumbWidth,i=n.getBoundingClientRect(),t.scrollTo({left:getScrollFromClick(e.clientX-i.left,t.clientWidth,t.scrollWidth,n.clientWidth,r),behavior:"auto"}))},clickTrackYEvent:function(e){var t,i,r=this.reactData,n=e.currentTarget;n===e.target&&(t=this.$refs.refViewElem)&&(r=r.yThumbHeight,i=n.getBoundingClientRect(),t.scrollTo({top:getScrollFromClick(e.clientY-i.top,t.clientHeight,t.scrollHeight,n.clientHeight,r),behavior:"auto"}))},pointerdownThumbXEvent:function(e){var t,i=this.reactData,r=this.internalData,n=e.currentTarget,l=(r.isThumbDrag=!0,n.setPointerCapture(e.pointerId),this.$refs.refViewElem);l&&(i=i.xThumbWidth,t=(n=n.parentElement).getBoundingClientRect(),e=e.clientX-t.left,t=getThumbOffsetSize(l.scrollLeft,l.clientWidth,l.scrollWidth,n.clientWidth,i),r.thumbDragOffset=e-t)},pointermoveThumbXEvent:function(e){var t,i,r=this.reactData,n=this.internalData,l=n.isThumbDrag,n=n.thumbDragOffset;l&&(l=this.$refs.refViewElem)&&(r=r.xThumbWidth,i=(t=e.currentTarget.parentElement).getBoundingClientRect(),l.scrollLeft=getScrollFromDrag(e.clientX-i.left,n,l.clientWidth,l.scrollWidth,t.clientWidth,r))},cleatPointerThumbEvent:function(e){var t=this.internalData;e.currentTarget.releasePointerCapture(e.pointerId),t.isThumbDrag=!1},pointerdownThumbYEvent:function(e){var t,i=this.reactData,r=this.internalData,n=e.currentTarget,l=(r.isThumbDrag=!0,n.setPointerCapture(e.pointerId),this.$refs.refViewElem);l&&(i=i.yThumbHeight,t=(n=n.parentElement).getBoundingClientRect(),e=e.clientY-t.top,t=getThumbOffsetSize(l.scrollTop,l.clientHeight,l.scrollHeight,n.clientHeight,i),r.thumbDragOffset=e-t)},pointermoveThumbYEvent:function(e){var t,i,r=this.reactData,n=this.internalData,l=n.isThumbDrag,n=n.thumbDragOffset;l&&(l=this.$refs.refViewElem)&&(r=r.yThumbHeight,i=(t=e.currentTarget.parentElement).getBoundingClientRect(),l.scrollTop=getScrollFromDrag(e.clientY-i.top,n,l.clientHeight,l.scrollHeight,t.clientHeight,r))},renderVN:function(e){var t=this,i=t.$scopedSlots,r=t.id,n=t.native,l=t.loading,o=t.computeViewInnerClss,s=t.computeXVisible,a=t.computeYVisible,i=i.default;return e("div",{ref:"refElem",attrs:{id:r||null},class:t.computeWrapperClss,style:t.computeWrapperStyle},[e("div",{ref:"refViewElem",class:t.computeViewClss,style:t.viewStyle,attrs:Object.assign({id:t.viewId||null},t.viewAttrs),on:{scroll:t.scrollEvent}},[e("div",{key:"vi",ref:"refViewInnerElem",class:o},i?i({}):[])]),n||!1===s?renderEmptyElement(t):e("div",{ref:"refTrackXElem",class:"vxe-scrollbar--track-x",on:{click:t.clickTrackXEvent}},[e("div",{ref:"refThumbXElem",class:"vxe-scrollbar--thumb-x",on:{pointerdown:t.pointerdownThumbXEvent,pointermove:t.pointermoveThumbXEvent,pointerup:t.cleatPointerThumbEvent,pointercancel:t.cleatPointerThumbEvent,lostpointercapture:t.cleatPointerThumbEvent}})]),n||!1===a?renderEmptyElement(t):e("div",{ref:"refTrackYElem",class:"vxe-scrollbar--track-y",on:{click:t.clickTrackYEvent}},[e("div",{ref:"refThumbYElem",class:"vxe-scrollbar--thumb-y",on:{pointerdown:t.pointerdownThumbYEvent,pointermove:t.pointermoveThumbYEvent,pointerup:t.cleatPointerThumbEvent,pointercancel:t.cleatPointerThumbEvent,lostpointercapture:t.cleatPointerThumbEvent}})]),e(_loading.default,{class:"vxe-scrollbar--loading",props:{value:l}})])}},watch:{height:function(){this.reFlag++},width:function(){this.reFlag++},minHeight:function(){this.reFlag++},minWidth:function(){this.reFlag++},maxHeight:function(){this.reFlag++},maxWidth:function(){this.reFlag++},native:function(){this.reFlag++},syncResize:function(){this.reFlag++},computeYWidth:function(){this.reFlag++},computeXHeight:function(){this.reFlag++},computeXVisible:function(){var e=this;e.$nextTick(function(){e.reFlag++})},computeYVisible:function(){var e=this;e.$nextTick(function(){e.reFlag++})},reFlag:function(){var e=this;e.recalculate().then(function(){e.recalculate()})}},created:function(){this.internalData=createInternalData()},mounted:function(){var e=this,t=e,i=e.internalData,r=t.autoResize,n=e.$refs.refViewElem,l=e.$refs.refViewInnerElem;r&&(r=globalResize.create(function(){t.autoResize&&e.reFlag++}),n&&r.observe(n),l&&r.observe(l),i.resizeObserver=r),e.reFlag++,globalEvents.on(e,"resize",function(){e.reFlag++})},beforeDestroy:function(){var e=this.internalData.resizeObserver;e&&e.disconnect(),globalEvents.off(this,"resize")},destroyed:function(){var e=this.reactData,t=this.internalData;_xeUtils.default.assign(e,createReactData()),_xeUtils.default.assign(t,createInternalData())},render:function(e){return this.renderVN(e)}});
1
+ Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _comp=require("../../ui/src/comp"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_dom=require("../../ui/src/dom"),_utils=require("../../ui/src/utils"),_loading=_interopRequireDefault(require("../../loading"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var getConfig=_ui.VxeUI.getConfig,createEvent=_ui.VxeUI.createEvent,domUtils=_ui.VxeUI.domUtils,globalResize=_ui.VxeUI.globalResize,globalEvents=_ui.VxeUI.globalEvents,renderEmptyElement=_ui.VxeUI.renderEmptyElement;function createReactData(){return{yThumbHeight:0,xThumbWidth:0}}function createInternalData(){return{thumbDragOffset:0,yThumbTop:0,xThumbLeft:0,lastScrollTop:0,lastScrollLeft:0}}var _default2=exports.default=(0,_comp.defineVxeComponent)({name:"VxeScrollbar",mixins:[_ui.globalMixins.sizeMixin,_ui.globalMixins.initVScrollbarMixin],props:{id:[String,Number],viewId:[String,Number],theme:{type:String,default:function(){return getConfig().scrollbar.theme}},width:[String,Number],height:[String,Number],minWidth:[String,Number],minHeight:[String,Number],maxWidth:[String,Number],maxHeight:[String,Number],loading:Boolean,native:{type:Boolean,default:function(){return getConfig().scrollbar.native}},padding:{type:Boolean,default:function(){return getConfig().scrollbar.padding}},autoHide:{type:Boolean,default:function(){return getConfig().scrollbar.autoHide}},visible:{type:Boolean,default:function(){return getConfig().scrollbar.visible}},xConfig:Object,yConfig:Object,className:{type:String,default:function(){return getConfig().scrollbar.className}},viewAttrs:{type:Object,default:function(){return getConfig().scrollbar.viewAttrs}},viewStyle:{type:Object,default:function(){return getConfig().scrollbar.viewStyle}},viewClassName:{type:String,default:function(){return getConfig().scrollbar.viewClassName}},viewInnerClassName:{type:String,default:function(){return getConfig().scrollbar.viewInnerClassName}},size:{type:String,default:function(){return getConfig().scrollbar.size||getConfig().size}},autoResize:{type:Boolean,default:function(){return getConfig().scrollbar.autoResize}},syncResize:[Boolean,String,Number]},data:function(){var e=_xeUtils.default.uniqueId(),t=createReactData();return Object.assign(Object.assign({},{}),{xID:e,reactData:t,reFlag:0})},computed:Object.assign(Object.assign({},{}),{computeWrapperStyle:function(){var e=this,t=e.width,i=e.height,r=e.minWidth,n=e.minHeight,o=e.maxWidth,l=e.maxHeight,s=e.computeYWidth,e=e.computeXHeight,a={};return t&&(a.width=(0,_dom.toCssUnit)(t)),i&&(a.height=(0,_dom.toCssUnit)(i)),r&&(a.minWidth=(0,_dom.toCssUnit)(r)),n&&(a.minHeight=(0,_dom.toCssUnit)(n)),o&&(a.maxWidth=(0,_dom.toCssUnit)(o)),l&&(a.maxHeight=(0,_dom.toCssUnit)(l)),(s||e)&&(a["--vxe-ui-scrollbar-y-width"]=(0,_dom.toCssUnit)(s||e),a["--vxe-ui-scrollbar-x-height"]=(0,_dom.toCssUnit)(e||s)),a},computeXHeight:function(){return this.computeXOpts.height},computeYWidth:function(){return this.computeYOpts.width},computeXVisible:function(){var e=this.visible,t=this.computeXOpts;return(0,_utils.getDefaultConfig)(t.visible,e)},computeYVisible:function(){var e=this.visible,t=this.computeYOpts;return(0,_utils.getDefaultConfig)(t.visible,e)},computeXAutoHide:function(){var e=this.autoHide,t=this.computeXOpts;return(0,_utils.getDefaultConfig)(t.autoHide,e)},computeYAutoHide:function(){var e=this.autoHide,t=this.computeYOpts;return(0,_utils.getDefaultConfig)(t.autoHide,e)},computeWrapperClss:function(){var e=this,t=e.reactData,i=e.native,r=e.theme,n=e.className,o=e.padding,l=t.yThumbHeight,t=t.xThumbWidth,s=e.computeSize,a=e.computeXToTop,c=e.computeYToLeft,u=e.computeXVisible,f=e.computeYVisible,m=e.computeXAutoHide,e=e.computeYAutoHide;return domUtils.buildClass(["vxe-scrollbar",s?"size--".concat(s):"",r?"theme--".concat(r):"","ov-x--".concat(!1===u?"hidden":"visible"),"ov-y--".concat(!1===f?"hidden":"visible"),"sx-pos--".concat(a?"top":"bottom"),"sy-pos--".concat(c?"left":"right"),i?"is--native":"is--virtual",n],{"is--padding":o,"ov-x--auto-hide":m,"ov-y--auto-hide":e,"overflow-y":l,"overflow-x":t})},computeViewClss:function(){var e=this.viewClassName;return domUtils.buildClass(["vxe-scrollbar--view",e])},computeViewInnerClss:function(){var e=this.viewInnerClassName;return domUtils.buildClass(["vxe-scrollbar--view-inner",e])},computeXOpts:function(){return Object.assign({},getConfig().scrollbar.xConfig,this.xConfig)},computeYOpts:function(){return Object.assign({},getConfig().scrollbar.yConfig,this.yConfig)},computeXToTop:function(){return"top"===this.computeXOpts.position},computeYToLeft:function(){return"left"===this.computeYOpts.position}}),methods:{dispatchEvent:function(e,t,i){this.$emit(e,createEvent(i,{$scrollbar:this},t))},getScrollViewElem:function(){return this.$refs.refViewElem||null},getScrollViewInnerElem:function(){return this.$refs.refViewInnerElem||null},scrollTo:function(e,t){var i=this.$refs.refViewElem;i&&(_xeUtils.default.isNumber(e)?i.scrollTo(e,t||0):i.scrollTo(e))},scrollIntoView:function(){var e=this.$refs.refViewElem;e&&e.scrollIntoView()},setScrollTop:function(e){var t=this.$refs.refViewElem;t&&(t.scrollTop=e)},setScrollLeft:function(e){var t=this.$refs.refViewElem;t&&(t.scrollLeft=e)},getScrollTop:function(){var e=this.$refs.refViewElem;return e?e.scrollTop:0},getScrollLeft:function(){var e=this.$refs.refViewElem;return e?e.scrollLeft:0},clearScroll:function(){var e=this.$refs.refViewElem;e&&(e.scrollTop=0,e.scrollLeft=0)},recalculate:function(){return this.updateThumbSize(),this.updateThumbOffset(),this.$nextTick()},scrollEvent:function(e){var t,i=this,r=i.reactData,n=i.internalData,o=r.xThumbWidth,r=r.yThumbHeight,l=n.lastScrollTop,s=n.lastScrollLeft,a=i.computeXOpts,c=e.currentTarget,u=c.scrollTop,f=c.scrollLeft,m=c.clientWidth,h=c.clientHeight,d=c.scrollHeight,c=c.scrollWidth,p="",g=!1,v=!1,b=!1,x=!1;l!==u&&(t=_xeUtils.default.toNumber(i.computeYOpts.threshold)||1,l<u?(p="bottom",0<r&&d-t<=u+h&&(v=!0)):(p="top",0<r&&u<=t&&(g=!0))),s!==f&&(l=_xeUtils.default.toNumber(a.threshold)||1,s<f?(p="right",0<o&&c-l<=f+m&&(x=!0)):(p="left",0<o&&f<=l&&(b=!0))),i.updateThumbOffset(),n.lastScrollTop=u,n.lastScrollLeft=f,(v||g||x||b)&&i.dispatchEvent("scroll-boundary",{direction:p,isTop:g,isBottom:v,isLeft:b,isRight:x,scrollTop:u,scrollLeft:f,clientWidth:m,clientHeight:h,scrollHeight:d,scrollWidth:c},e),i.dispatchEvent("scroll",{direction:p,isTop:0<r&&u<=0,isBottom:0<r&&d<=u+h,isLeft:0<o&&f<=0,isRight:0<o&&c<=f+m,scrollTop:u,scrollLeft:f,clientWidth:m,clientHeight:h,scrollHeight:d,scrollWidth:c},e)},renderVN:function(e){var t=this,i=t.$scopedSlots,r=t.id,n=t.native,o=t.loading,l=t.computeViewInnerClss,s=t.computeXVisible,a=t.computeYVisible,i=i.default;return e("div",{ref:"refElem",attrs:{id:r||null},class:t.computeWrapperClss,style:t.computeWrapperStyle},[e("div",{ref:"refViewElem",class:t.computeViewClss,style:t.viewStyle,attrs:Object.assign({id:t.viewId||null},t.viewAttrs),on:{scroll:t.scrollEvent}},[e("div",{key:"vi",ref:"refViewInnerElem",class:l},i?i({}):[])]),n||!1===s?renderEmptyElement(t):e("div",{ref:"refTrackXElem",class:"vxe-scrollbar--track-x",on:{click:t.clickTrackXEvent}},[e("div",{ref:"refThumbXElem",class:"vxe-scrollbar--thumb-x",on:{pointerdown:t.pointerdownThumbXEvent,pointermove:t.pointermoveThumbXEvent,pointerup:t.cleatPointerThumbEvent,pointercancel:t.cleatPointerThumbEvent,lostpointercapture:t.cleatPointerThumbEvent}})]),n||!1===a?renderEmptyElement(t):e("div",{ref:"refTrackYElem",class:"vxe-scrollbar--track-y",on:{click:t.clickTrackYEvent}},[e("div",{ref:"refThumbYElem",class:"vxe-scrollbar--thumb-y",on:{pointerdown:t.pointerdownThumbYEvent,pointermove:t.pointermoveThumbYEvent,pointerup:t.cleatPointerThumbEvent,pointercancel:t.cleatPointerThumbEvent,lostpointercapture:t.cleatPointerThumbEvent}})]),e(_loading.default,{class:"vxe-scrollbar--loading",props:{value:o}})])}},watch:{height:function(){this.reFlag++},width:function(){this.reFlag++},minHeight:function(){this.reFlag++},minWidth:function(){this.reFlag++},maxHeight:function(){this.reFlag++},maxWidth:function(){this.reFlag++},native:function(){this.reFlag++},syncResize:function(){this.reFlag++},computeYWidth:function(){this.reFlag++},computeXHeight:function(){this.reFlag++},computeXVisible:function(){var e=this;e.$nextTick(function(){e.reFlag++})},computeYVisible:function(){var e=this;e.$nextTick(function(){e.reFlag++})},reFlag:function(){var e=this;e.recalculate().then(function(){e.recalculate()})}},created:function(){this.internalData=createInternalData()},mounted:function(){var e=this,t=e,i=e.internalData,r=t.autoResize,n=e.$refs.refViewElem,o=e.$refs.refViewInnerElem;r&&(r=globalResize.create(function(){t.autoResize&&e.reFlag++}),n&&r.observe(n),o&&r.observe(o),i.scrollObserver=r),e.reFlag++,globalEvents.on(e,"resize",function(){e.reFlag++})},beforeDestroy:function(){var e=this.internalData.scrollObserver;e&&e.disconnect(),globalEvents.off(this,"resize")},destroyed:function(){var e=this.reactData,t=this.internalData;_xeUtils.default.assign(e,createReactData()),_xeUtils.default.assign(t,createInternalData())},render:function(e){return this.renderVN(e)}});