vxe-pc-ui 3.20.0 → 3.20.2

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 (125) hide show
  1. package/es/card/src/card.js +20 -4
  2. package/es/drawer/src/drawer.js +75 -16
  3. package/es/drawer/style.css +13 -6
  4. package/es/drawer/style.min.css +1 -1
  5. package/es/icon/style.css +1 -1
  6. package/es/language/fr-FR.js +29 -29
  7. package/es/layout-aside/src/layout-aside.js +10 -6
  8. package/es/layout-body/src/layout-body.js +24 -12
  9. package/es/list/src/list.js +131 -49
  10. package/es/list/style.css +25 -8
  11. package/es/list/style.min.css +1 -1
  12. package/es/menu/src/menu.js +2 -2
  13. package/es/modal/src/modal.js +73 -14
  14. package/es/modal/style.css +4 -0
  15. package/es/modal/style.min.css +1 -1
  16. package/es/scrollbar/src/scrollbar.js +87 -19
  17. package/es/style.css +1 -1
  18. package/es/style.min.css +1 -1
  19. package/es/tabs/src/tabs.js +21 -5
  20. package/es/tree/src/tree.js +460 -54
  21. package/es/tree/style.css +43 -0
  22. package/es/tree/style.min.css +1 -1
  23. package/es/ui/index.js +1 -1
  24. package/es/ui/src/log.js +1 -1
  25. package/es/ui/src/utils.js +3 -0
  26. package/es/vxe-drawer/style.css +13 -6
  27. package/es/vxe-drawer/style.min.css +1 -1
  28. package/es/vxe-list/style.css +25 -8
  29. package/es/vxe-list/style.min.css +1 -1
  30. package/es/vxe-modal/style.css +4 -0
  31. package/es/vxe-modal/style.min.css +1 -1
  32. package/es/vxe-tree/style.css +43 -0
  33. package/es/vxe-tree/style.min.css +1 -1
  34. package/lib/card/src/card.js +20 -4
  35. package/lib/card/src/card.min.js +1 -1
  36. package/lib/drawer/src/drawer.js +76 -12
  37. package/lib/drawer/src/drawer.min.js +1 -1
  38. package/lib/drawer/style/style.css +13 -6
  39. package/lib/drawer/style/style.min.css +1 -1
  40. package/lib/icon/style/style.css +1 -1
  41. package/lib/icon/style/style.min.css +1 -1
  42. package/lib/index.umd.js +956 -185
  43. package/lib/index.umd.min.js +1 -1
  44. package/lib/language/fr-FR.js +29 -29
  45. package/lib/language/fr-FR.min.js +1 -1
  46. package/lib/language/fr-FR.umd.js +29 -29
  47. package/lib/layout-aside/src/layout-aside.js +10 -9
  48. package/lib/layout-aside/src/layout-aside.min.js +1 -1
  49. package/lib/layout-body/src/layout-body.js +28 -20
  50. package/lib/layout-body/src/layout-body.min.js +1 -1
  51. package/lib/list/src/list.js +119 -46
  52. package/lib/list/src/list.min.js +1 -1
  53. package/lib/list/style/style.css +25 -8
  54. package/lib/list/style/style.min.css +1 -1
  55. package/lib/menu/src/menu.js +1 -1
  56. package/lib/menu/src/menu.min.js +1 -1
  57. package/lib/modal/src/modal.js +74 -12
  58. package/lib/modal/src/modal.min.js +1 -1
  59. package/lib/modal/style/style.css +4 -0
  60. package/lib/modal/style/style.min.css +1 -1
  61. package/lib/scrollbar/src/scrollbar.js +92 -17
  62. package/lib/scrollbar/src/scrollbar.min.js +1 -1
  63. package/lib/style.css +1 -1
  64. package/lib/style.min.css +1 -1
  65. package/lib/tabs/src/tabs.js +21 -8
  66. package/lib/tabs/src/tabs.min.js +1 -1
  67. package/lib/tree/src/tree.js +438 -51
  68. package/lib/tree/src/tree.min.js +1 -1
  69. package/lib/tree/style/style.css +43 -0
  70. package/lib/tree/style/style.min.css +1 -1
  71. package/lib/ui/index.js +1 -1
  72. package/lib/ui/index.min.js +1 -1
  73. package/lib/ui/src/log.js +1 -1
  74. package/lib/ui/src/log.min.js +1 -1
  75. package/lib/ui/src/utils.js +4 -0
  76. package/lib/ui/src/utils.min.js +1 -1
  77. package/lib/vxe-drawer/style/style.css +13 -6
  78. package/lib/vxe-drawer/style/style.min.css +1 -1
  79. package/lib/vxe-list/style/style.css +25 -8
  80. package/lib/vxe-list/style/style.min.css +1 -1
  81. package/lib/vxe-modal/style/style.css +4 -0
  82. package/lib/vxe-modal/style/style.min.css +1 -1
  83. package/lib/vxe-tree/style/style.css +43 -0
  84. package/lib/vxe-tree/style/style.min.css +1 -1
  85. package/package.json +2 -2
  86. package/packages/card/src/card.ts +21 -4
  87. package/packages/drawer/src/drawer.ts +80 -16
  88. package/packages/language/fr-FR.ts +903 -903
  89. package/packages/layout-aside/src/layout-aside.ts +10 -6
  90. package/packages/layout-body/src/layout-body.ts +28 -15
  91. package/packages/list/src/list.ts +149 -55
  92. package/packages/menu/src/menu.ts +2 -2
  93. package/packages/modal/src/modal.ts +83 -19
  94. package/packages/scrollbar/src/scrollbar.ts +101 -19
  95. package/packages/tabs/src/tabs.ts +22 -9
  96. package/packages/tree/src/tree.ts +508 -65
  97. package/packages/ui/src/utils.ts +4 -0
  98. package/styles/components/drawer.scss +13 -6
  99. package/styles/components/list.scss +35 -10
  100. package/styles/components/modal.scss +4 -0
  101. package/styles/components/tree.scss +76 -0
  102. package/types/components/card.d.ts +10 -1
  103. package/types/components/drawer.d.ts +20 -0
  104. package/types/components/gantt-module/gantt-view.d.ts +24 -1
  105. package/types/components/gantt.d.ts +2 -0
  106. package/types/components/layout-aside.d.ts +10 -1
  107. package/types/components/layout-body.d.ts +10 -1
  108. package/types/components/list.d.ts +13 -2
  109. package/types/components/modal.d.ts +20 -0
  110. package/types/components/scrollbar.d.ts +16 -2
  111. package/types/components/table.d.ts +80 -6
  112. package/types/components/tabs.d.ts +10 -1
  113. package/types/components/tree.d.ts +35 -2
  114. /package/es/icon/{iconfont.1791880407207.ttf → iconfont.1792034961185.ttf} +0 -0
  115. /package/es/icon/{iconfont.1791880407207.woff → iconfont.1792034961185.woff} +0 -0
  116. /package/es/icon/{iconfont.1791880407207.woff2 → iconfont.1792034961185.woff2} +0 -0
  117. /package/es/{iconfont.1791880407207.ttf → iconfont.1792034961185.ttf} +0 -0
  118. /package/es/{iconfont.1791880407207.woff → iconfont.1792034961185.woff} +0 -0
  119. /package/es/{iconfont.1791880407207.woff2 → iconfont.1792034961185.woff2} +0 -0
  120. /package/lib/icon/style/{iconfont.1791880407207.ttf → iconfont.1792034961185.ttf} +0 -0
  121. /package/lib/icon/style/{iconfont.1791880407207.woff → iconfont.1792034961185.woff} +0 -0
  122. /package/lib/icon/style/{iconfont.1791880407207.woff2 → iconfont.1792034961185.woff2} +0 -0
  123. /package/lib/{iconfont.1791880407207.ttf → iconfont.1792034961185.ttf} +0 -0
  124. /package/lib/{iconfont.1791880407207.woff → iconfont.1792034961185.woff} +0 -0
  125. /package/lib/{iconfont.1791880407207.woff2 → iconfont.1792034961185.woff2} +0 -0
@@ -9,6 +9,7 @@ var _xeUtils = _interopRequireDefault(require("xe-utils"));
9
9
  var _ui = require("../../ui");
10
10
  var _dom = require("../../ui/src/dom");
11
11
  var _util = require("./util");
12
+ var _utils = require("../../ui/src/utils");
12
13
  var _loading = _interopRequireDefault(require("../../loading"));
13
14
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
14
15
  var getConfig = _ui.VxeUI.getConfig,
@@ -38,6 +39,7 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
38
39
  name: 'VxeScrollbar',
39
40
  props: {
40
41
  id: [String, Number],
42
+ viewId: [String, Number],
41
43
  width: [String, Number],
42
44
  height: [String, Number],
43
45
  minWidth: [String, Number],
@@ -57,6 +59,18 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
57
59
  return getConfig().scrollbar.padding;
58
60
  }
59
61
  },
62
+ autoHide: {
63
+ type: Boolean,
64
+ default: function _default() {
65
+ return getConfig().scrollbar.autoHide;
66
+ }
67
+ },
68
+ visible: {
69
+ type: Boolean,
70
+ default: function _default() {
71
+ return getConfig().scrollbar.visible;
72
+ }
73
+ },
60
74
  xConfig: Object,
61
75
  yConfig: Object,
62
76
  className: {
@@ -110,8 +124,8 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
110
124
  minHeight = props.minHeight,
111
125
  maxWidth = props.maxWidth,
112
126
  maxHeight = props.maxHeight;
113
- var xOpts = $xeScrollbar.computeXOpts;
114
- var yOpts = $xeScrollbar.computeYOpts;
127
+ var barWidth = $xeScrollbar.computeYWidth;
128
+ var barHeight = $xeScrollbar.computeXHeight;
115
129
  var stys = {};
116
130
  if (width) {
117
131
  stys.width = (0, _dom.toCssUnit)(width);
@@ -131,14 +145,50 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
131
145
  if (maxHeight) {
132
146
  stys.maxHeight = (0, _dom.toCssUnit)(maxHeight);
133
147
  }
134
- if (yOpts.width) {
135
- stys['--vxe-ui-scrollbar-y-width'] = (0, _dom.toCssUnit)(yOpts.width);
136
- }
137
- if (xOpts.height) {
138
- stys['--vxe-ui-scrollbar-x-height'] = (0, _dom.toCssUnit)(xOpts.height);
148
+ if (barWidth || barHeight) {
149
+ stys['--vxe-ui-scrollbar-y-width'] = (0, _dom.toCssUnit)(barWidth || barHeight);
150
+ stys['--vxe-ui-scrollbar-x-height'] = (0, _dom.toCssUnit)(barHeight || barWidth);
139
151
  }
140
152
  return stys;
141
153
  },
154
+ computeXHeight: function computeXHeight() {
155
+ var $xeScrollbar = this;
156
+ var xOpts = $xeScrollbar.computeXOpts;
157
+ return xOpts.height;
158
+ },
159
+ computeYWidth: function computeYWidth() {
160
+ var $xeScrollbar = this;
161
+ var yOpts = $xeScrollbar.computeYOpts;
162
+ return yOpts.width;
163
+ },
164
+ computeXVisible: function computeXVisible() {
165
+ var $xeScrollbar = this;
166
+ var props = $xeScrollbar;
167
+ var visible = props.visible;
168
+ var xOpts = $xeScrollbar.computeXOpts;
169
+ return (0, _utils.getDefaultConfig)(xOpts.visible, visible);
170
+ },
171
+ computeYVisible: function computeYVisible() {
172
+ var $xeScrollbar = this;
173
+ var props = $xeScrollbar;
174
+ var visible = props.visible;
175
+ var yOpts = $xeScrollbar.computeYOpts;
176
+ return (0, _utils.getDefaultConfig)(yOpts.visible, visible);
177
+ },
178
+ computeXAutoHide: function computeXAutoHide() {
179
+ var $xeScrollbar = this;
180
+ var props = $xeScrollbar;
181
+ var autoHide = props.autoHide;
182
+ var xOpts = $xeScrollbar.computeXOpts;
183
+ return (0, _utils.getDefaultConfig)(xOpts.autoHide, autoHide);
184
+ },
185
+ computeYAutoHide: function computeYAutoHide() {
186
+ var $xeScrollbar = this;
187
+ var props = $xeScrollbar;
188
+ var autoHide = props.autoHide;
189
+ var yOpts = $xeScrollbar.computeYOpts;
190
+ return (0, _utils.getDefaultConfig)(yOpts.autoHide, autoHide);
191
+ },
142
192
  computeWrapperClss: function computeWrapperClss() {
143
193
  var $xeScrollbar = this;
144
194
  var props = $xeScrollbar;
@@ -148,14 +198,16 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
148
198
  padding = props.padding;
149
199
  var yThumbHeight = reactData.yThumbHeight,
150
200
  xThumbWidth = reactData.xThumbWidth;
151
- var xOpts = $xeScrollbar.computeXOpts;
152
- var yOpts = $xeScrollbar.computeYOpts;
153
201
  var xToTop = $xeScrollbar.computeXToTop;
154
202
  var yToLeft = $xeScrollbar.computeYToLeft;
155
- return domUtils.buildClass(['vxe-scrollbar', "ov-x--".concat(xOpts.visible || 'visible'), "ov-y--".concat(yOpts.visible || 'visible'), "sx-pos--".concat(xToTop ? 'top' : 'bottom'), "sy-pos--".concat(yToLeft ? 'left' : 'right'), native ? 'is--native' : 'is--virtual', className], {
203
+ var xVisible = $xeScrollbar.computeXVisible;
204
+ var yVisible = $xeScrollbar.computeYVisible;
205
+ var xAutoHide = $xeScrollbar.computeXAutoHide;
206
+ var yAutoHide = $xeScrollbar.computeYAutoHide;
207
+ return domUtils.buildClass(['vxe-scrollbar', "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], {
156
208
  'is--padding': padding,
157
- 'ov-x--auto-hide': xOpts.autoHide,
158
- 'ov-y--auto-hide': yOpts.autoHide,
209
+ 'ov-x--auto-hide': xAutoHide,
210
+ 'ov-y--auto-hide': yAutoHide,
159
211
  'overflow-y': yThumbHeight,
160
212
  'overflow-x': xThumbWidth
161
213
  });
@@ -531,13 +583,14 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
531
583
  var id = props.id,
532
584
  native = props.native,
533
585
  loading = props.loading,
586
+ viewId = props.viewId,
534
587
  viewAttrs = props.viewAttrs;
535
588
  var wrapperStyle = $xeScrollbar.computeWrapperStyle;
536
589
  var wrapperClss = $xeScrollbar.computeWrapperClss;
537
590
  var viewClss = $xeScrollbar.computeViewClss;
538
591
  var viewInnerClss = $xeScrollbar.computeViewInnerClss;
539
- var xOpts = $xeScrollbar.computeXOpts;
540
- var yOpts = $xeScrollbar.computeYOpts;
592
+ var xVisible = $xeScrollbar.computeXVisible;
593
+ var yVisible = $xeScrollbar.computeYVisible;
541
594
  var defaultSlot = slots.default;
542
595
  return h('div', {
543
596
  ref: 'refElem',
@@ -549,7 +602,9 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
549
602
  }, [h('div', {
550
603
  ref: 'refViewElem',
551
604
  class: viewClss,
552
- attrs: viewAttrs,
605
+ attrs: Object.assign({
606
+ id: viewId || null
607
+ }, viewAttrs),
553
608
  on: {
554
609
  scroll: $xeScrollbar.scrollEvent
555
610
  }
@@ -557,7 +612,7 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
557
612
  key: 'vi',
558
613
  ref: 'refViewInnerElem',
559
614
  class: viewInnerClss
560
- }, defaultSlot ? defaultSlot({}) : [])]), native || xOpts.visible === 'hidden' ? renderEmptyElement($xeScrollbar) : h('div', {
615
+ }, defaultSlot ? defaultSlot({}) : [])]), native || xVisible === false ? renderEmptyElement($xeScrollbar) : h('div', {
561
616
  ref: 'refTrackXElem',
562
617
  class: 'vxe-scrollbar--track-x',
563
618
  on: {
@@ -573,7 +628,7 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
573
628
  pointercancel: $xeScrollbar.cleatPointerThumbEvent,
574
629
  lostpointercapture: $xeScrollbar.cleatPointerThumbEvent
575
630
  }
576
- })]), native || yOpts.visible === 'hidden' ? renderEmptyElement($xeScrollbar) : h('div', {
631
+ })]), native || yVisible === false ? renderEmptyElement($xeScrollbar) : h('div', {
577
632
  ref: 'refTrackYElem',
578
633
  class: 'vxe-scrollbar--track-y',
579
634
  on: {
@@ -630,6 +685,26 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
630
685
  var $xeScrollbar = this;
631
686
  $xeScrollbar.reFlag++;
632
687
  },
688
+ computeYWidth: function computeYWidth() {
689
+ var $xeScrollbar = this;
690
+ $xeScrollbar.reFlag++;
691
+ },
692
+ computeXHeight: function computeXHeight() {
693
+ var $xeScrollbar = this;
694
+ $xeScrollbar.reFlag++;
695
+ },
696
+ computeXVisible: function computeXVisible() {
697
+ var $xeScrollbar = this;
698
+ $xeScrollbar.$nextTick(function () {
699
+ $xeScrollbar.reFlag++;
700
+ });
701
+ },
702
+ computeYVisible: function computeYVisible() {
703
+ var $xeScrollbar = this;
704
+ $xeScrollbar.$nextTick(function () {
705
+ $xeScrollbar.reFlag++;
706
+ });
707
+ },
633
708
  reFlag: function reFlag() {
634
709
  var $xeScrollbar = this;
635
710
  $xeScrollbar.recalculate().then(function () {
@@ -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"),_util=require("./util"),_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",props:{id:[String,Number],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}},xConfig:Object,yConfig:Object,className:{type:String,default:function(){return getConfig().scrollbar.className}},viewAttrs:{type:Object,default:function(){return getConfig().scrollbar.viewAttrs}},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,a=e.computeXOpts,e=e.computeYOpts,s={};return t&&(s.width=(0,_dom.toCssUnit)(t)),i&&(s.height=(0,_dom.toCssUnit)(i)),r&&(s.minWidth=(0,_dom.toCssUnit)(r)),n&&(s.minHeight=(0,_dom.toCssUnit)(n)),l&&(s.maxWidth=(0,_dom.toCssUnit)(l)),o&&(s.maxHeight=(0,_dom.toCssUnit)(o)),e.width&&(s["--vxe-ui-scrollbar-y-width"]=(0,_dom.toCssUnit)(e.width)),a.height&&(s["--vxe-ui-scrollbar-x-height"]=(0,_dom.toCssUnit)(a.height)),s},computeWrapperClss:function(){var e=this,t=e.reactData,i=e.native,r=e.className,n=e.padding,l=t.yThumbHeight,t=t.xThumbWidth,o=e.computeXOpts,a=e.computeYOpts,s=e.computeXToTop,e=e.computeYToLeft;return domUtils.buildClass(["vxe-scrollbar","ov-x--".concat(o.visible||"visible"),"ov-y--".concat(a.visible||"visible"),"sx-pos--".concat(s?"top":"bottom"),"sy-pos--".concat(e?"left":"right"),i?"is--native":"is--virtual",r],{"is--padding":n,"ov-x--auto-hide":o.autoHide,"ov-y--auto-hide":a.autoHide,"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))},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)?(0,_util.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)?(0,_util.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?(0,_util.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?(0,_util.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,a=n.lastScrollLeft,s=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))),a!==h&&(o=_xeUtils.default.toNumber(s.threshold)||1,a<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:(0,_util.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:(0,_util.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=(0,_util.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=(0,_util.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=(0,_util.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=(0,_util.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.computeXOpts,a=t.computeYOpts,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,attrs:t.viewAttrs,on:{scroll:t.scrollEvent}},[e("div",{key:"vi",ref:"refViewInnerElem",class:t.computeViewInnerClss},i?i({}):[])]),n||"hidden"===o.visible?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||"hidden"===a.visible?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++},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"),_util=require("./util"),_utils=require("../../ui/src/utils"),_loading=_interopRequireDefault(require("../../loading"));function _interopRequireDefault(t){return t&&t.__esModule?t:{default:t}}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",props:{id:[String,Number],viewId:[String,Number],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}},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 t=_xeUtils.default.uniqueId(),e=createReactData();return Object.assign(Object.assign({},{}),{xID:t,reactData:e,reFlag:0})},computed:{computeWrapperStyle:function(){var t=this,e=t.width,i=t.height,r=t.minWidth,n=t.minHeight,l=t.maxWidth,o=t.maxHeight,s=t.computeYWidth,t=t.computeXHeight,a={};return e&&(a.width=(0,_dom.toCssUnit)(e)),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||t)&&(a["--vxe-ui-scrollbar-y-width"]=(0,_dom.toCssUnit)(s||t),a["--vxe-ui-scrollbar-x-height"]=(0,_dom.toCssUnit)(t||s)),a},computeXHeight:function(){return this.computeXOpts.height},computeYWidth:function(){return this.computeYOpts.width},computeXVisible:function(){var t=this.visible,e=this.computeXOpts;return(0,_utils.getDefaultConfig)(e.visible,t)},computeYVisible:function(){var t=this.visible,e=this.computeYOpts;return(0,_utils.getDefaultConfig)(e.visible,t)},computeXAutoHide:function(){var t=this.autoHide,e=this.computeXOpts;return(0,_utils.getDefaultConfig)(e.autoHide,t)},computeYAutoHide:function(){var t=this.autoHide,e=this.computeYOpts;return(0,_utils.getDefaultConfig)(e.autoHide,t)},computeWrapperClss:function(){var t=this,e=t.reactData,i=t.native,r=t.className,n=t.padding,l=e.yThumbHeight,e=e.xThumbWidth,o=t.computeXToTop,s=t.computeYToLeft,a=t.computeYVisible,c=t.computeXAutoHide,u=t.computeYAutoHide;return domUtils.buildClass(["vxe-scrollbar","ov-x--".concat(!1===t.computeXVisible?"hidden":"visible"),"ov-y--".concat(!1===a?"hidden":"visible"),"sx-pos--".concat(o?"top":"bottom"),"sy-pos--".concat(s?"left":"right"),i?"is--native":"is--virtual",r],{"is--padding":n,"ov-x--auto-hide":c,"ov-y--auto-hide":u,"overflow-y":l,"overflow-x":e})},computeViewClss:function(){var t=this.viewClassName;return domUtils.buildClass(["vxe-scrollbar--view",t])},computeViewInnerClss:function(){var t=this.viewInnerClassName;return domUtils.buildClass(["vxe-scrollbar--view-inner",t])},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(t,e,i){this.$emit(t,createEvent(i,{$scrollbar:this},e))},scrollTo:function(t,e){var i=this.$refs.refViewElem;i&&(_xeUtils.default.isNumber(t)?i.scrollTo(t,e||0):i.scrollTo(t))},scrollIntoView:function(){var t=this.$refs.refViewElem;t&&t.scrollIntoView()},setScrollTop:function(t){var e=this.$refs.refViewElem;e&&(e.scrollTop=t)},setScrollLeft:function(t){var e=this.$refs.refViewElem;e&&(e.scrollLeft=t)},getScrollTop:function(){var t=this.$refs.refViewElem;return t?t.scrollTop:0},getScrollLeft:function(){var t=this.$refs.refViewElem;return t?t.scrollLeft:0},clearScroll:function(){var t=this.$refs.refViewElem;t&&(t.scrollTop=0,t.scrollLeft=0)},recalculate:function(){return this.updateThumbSize(),this.updateThumbOffset(),this.$nextTick()},updateThumbSize:function(){var t,e,i=this,r=i.reactData,n=i.$refs.refViewElem;n&&n.clientHeight&&(e=(e=i.$refs.refTrackXElem)?(0,_util.getThumbSize)(n.clientWidth,n.scrollWidth,e.clientWidth):0,(t=i.$refs.refThumbXElem)&&(t.style.width=e+"px"),r.xThumbWidth=e,e=(t=i.$refs.refTrackYElem)?(0,_util.getThumbSize)(n.clientHeight,n.scrollHeight,t.clientHeight):0,(n=i.$refs.refThumbYElem)&&(n.style.height=e+"px"),r.yThumbHeight=e)},updateThumbOffset:function(){var t,e,i,r=this,n=r.reactData,l=r.internalData,o=r.$refs.refViewElem;o&&(t=n.xThumbWidth,n=n.yThumbHeight,i=r.$refs.refTrackXElem,e=r.$refs.refThumbXElem,i=i&&t?(0,_util.getThumbOffsetSize)(o.scrollLeft,o.clientWidth,o.scrollWidth,i.clientWidth,t):0,l.xThumbLeft=i,e&&t&&(e.style.width=t+"px",e.style.transform="translateX(".concat(i,"px)")),t=r.$refs.refTrackYElem,e=r.$refs.refThumbYElem,i=t&&n?(0,_util.getThumbOffsetSize)(o.scrollTop,o.clientHeight,o.scrollHeight,t.clientHeight,n):0,l.yThumbTop=i,e)&&n&&(e.style.height=n+"px",e.style.transform="translateY(".concat(i,"px)"))},scrollEvent:function(t){var e,i=this,r=i.reactData,n=i.internalData,l=r.xThumbWidth,r=r.yThumbHeight,o=n.lastScrollTop,s=n.lastScrollLeft,a=i.computeXOpts,c=t.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&&(e=_xeUtils.default.toNumber(i.computeYOpts.threshold)||1,o<u?(d="bottom",0<r&&g-e<=u+m&&(b=!0)):(d="top",0<r&&u<=e&&(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},t),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},t)},clickTrackXEvent:function(t){var e,i,r=this.reactData,n=t.currentTarget;n===t.target&&(e=this.$refs.refViewElem)&&(r=r.xThumbWidth,i=n.getBoundingClientRect(),e.scrollTo({left:(0,_util.getScrollFromClick)(t.clientX-i.left,e.clientWidth,e.scrollWidth,n.clientWidth,r),behavior:"auto"}))},clickTrackYEvent:function(t){var e,i,r=this.reactData,n=t.currentTarget;n===t.target&&(e=this.$refs.refViewElem)&&(r=r.yThumbHeight,i=n.getBoundingClientRect(),e.scrollTo({top:(0,_util.getScrollFromClick)(t.clientY-i.top,e.clientHeight,e.scrollHeight,n.clientHeight,r),behavior:"auto"}))},pointerdownThumbXEvent:function(t){var e,i=this.reactData,r=this.internalData,n=t.currentTarget,l=(r.isThumbDrag=!0,n.setPointerCapture(t.pointerId),this.$refs.refViewElem);l&&(i=i.xThumbWidth,e=(n=n.parentElement).getBoundingClientRect(),t=t.clientX-e.left,e=(0,_util.getThumbOffsetSize)(l.scrollLeft,l.clientWidth,l.scrollWidth,n.clientWidth,i),r.thumbDragOffset=t-e)},pointermoveThumbXEvent:function(t){var e,i,r=this.reactData,n=this.internalData,l=n.isThumbDrag,n=n.thumbDragOffset;l&&(l=this.$refs.refViewElem)&&(r=r.xThumbWidth,i=(e=t.currentTarget.parentElement).getBoundingClientRect(),l.scrollLeft=(0,_util.getScrollFromDrag)(t.clientX-i.left,n,l.clientWidth,l.scrollWidth,e.clientWidth,r))},cleatPointerThumbEvent:function(t){var e=this.internalData;t.currentTarget.releasePointerCapture(t.pointerId),e.isThumbDrag=!1},pointerdownThumbYEvent:function(t){var e,i=this.reactData,r=this.internalData,n=t.currentTarget,l=(r.isThumbDrag=!0,n.setPointerCapture(t.pointerId),this.$refs.refViewElem);l&&(i=i.yThumbHeight,e=(n=n.parentElement).getBoundingClientRect(),t=t.clientY-e.top,e=(0,_util.getThumbOffsetSize)(l.scrollTop,l.clientHeight,l.scrollHeight,n.clientHeight,i),r.thumbDragOffset=t-e)},pointermoveThumbYEvent:function(t){var e,i,r=this.reactData,n=this.internalData,l=n.isThumbDrag,n=n.thumbDragOffset;l&&(l=this.$refs.refViewElem)&&(r=r.yThumbHeight,i=(e=t.currentTarget.parentElement).getBoundingClientRect(),l.scrollTop=(0,_util.getScrollFromDrag)(t.clientY-i.top,n,l.clientHeight,l.scrollHeight,e.clientHeight,r))},renderVN:function(t){var e=this,i=e.$scopedSlots,r=e.id,n=e.native,l=e.loading,o=e.computeViewInnerClss,s=e.computeXVisible,a=e.computeYVisible,i=i.default;return t("div",{ref:"refElem",attrs:{id:r||null},class:e.computeWrapperClss,style:e.computeWrapperStyle},[t("div",{ref:"refViewElem",class:e.computeViewClss,attrs:Object.assign({id:e.viewId||null},e.viewAttrs),on:{scroll:e.scrollEvent}},[t("div",{key:"vi",ref:"refViewInnerElem",class:o},i?i({}):[])]),n||!1===s?renderEmptyElement(e):t("div",{ref:"refTrackXElem",class:"vxe-scrollbar--track-x",on:{click:e.clickTrackXEvent}},[t("div",{ref:"refThumbXElem",class:"vxe-scrollbar--thumb-x",on:{pointerdown:e.pointerdownThumbXEvent,pointermove:e.pointermoveThumbXEvent,pointerup:e.cleatPointerThumbEvent,pointercancel:e.cleatPointerThumbEvent,lostpointercapture:e.cleatPointerThumbEvent}})]),n||!1===a?renderEmptyElement(e):t("div",{ref:"refTrackYElem",class:"vxe-scrollbar--track-y",on:{click:e.clickTrackYEvent}},[t("div",{ref:"refThumbYElem",class:"vxe-scrollbar--thumb-y",on:{pointerdown:e.pointerdownThumbYEvent,pointermove:e.pointermoveThumbYEvent,pointerup:e.cleatPointerThumbEvent,pointercancel:e.cleatPointerThumbEvent,lostpointercapture:e.cleatPointerThumbEvent}})]),t(_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 t=this;t.$nextTick(function(){t.reFlag++})},computeYVisible:function(){var t=this;t.$nextTick(function(){t.reFlag++})},reFlag:function(){var t=this;t.recalculate().then(function(){t.recalculate()})}},created:function(){this.internalData=createInternalData()},mounted:function(){var t=this,e=t,i=t.internalData,r=e.autoResize,n=t.$refs.refViewElem,l=t.$refs.refViewInnerElem;r&&(r=globalResize.create(function(){e.autoResize&&t.reFlag++}),n&&r.observe(n),l&&r.observe(l),i.resizeObserver=r),t.reFlag++,globalEvents.on(t,"resize",function(){t.reFlag++})},beforeDestroy:function(){var t=this.internalData.resizeObserver;t&&t.disconnect(),globalEvents.off(this,"resize")},destroyed:function(){var t=this.reactData,e=this.internalData;_xeUtils.default.assign(t,createReactData()),_xeUtils.default.assign(e,createInternalData())},render:function(t){return this.renderVN(t)}});