vxe-pc-ui 3.19.4 → 3.19.5

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 (42) hide show
  1. package/es/icon/style.css +1 -1
  2. package/es/scrollbar/src/scrollbar.js +20 -1
  3. package/es/scrollbar/style.css +42 -3
  4. package/es/scrollbar/style.min.css +1 -1
  5. package/es/style.css +1 -1
  6. package/es/style.min.css +1 -1
  7. package/es/ui/index.js +1 -1
  8. package/es/ui/src/log.js +1 -1
  9. package/es/vxe-scrollbar/style.css +42 -3
  10. package/es/vxe-scrollbar/style.min.css +1 -1
  11. package/lib/icon/style/style.css +1 -1
  12. package/lib/icon/style/style.min.css +1 -1
  13. package/lib/index.umd.js +24 -4
  14. package/lib/index.umd.min.js +1 -1
  15. package/lib/scrollbar/src/scrollbar.js +22 -2
  16. package/lib/scrollbar/src/scrollbar.min.js +1 -1
  17. package/lib/scrollbar/style/style.css +42 -3
  18. package/lib/scrollbar/style/style.min.css +1 -1
  19. package/lib/style.css +1 -1
  20. package/lib/style.min.css +1 -1
  21. package/lib/ui/index.js +1 -1
  22. package/lib/ui/index.min.js +1 -1
  23. package/lib/ui/src/log.js +1 -1
  24. package/lib/ui/src/log.min.js +1 -1
  25. package/lib/vxe-scrollbar/style/style.css +42 -3
  26. package/lib/vxe-scrollbar/style/style.min.css +1 -1
  27. package/package.json +1 -1
  28. package/packages/scrollbar/src/scrollbar.ts +22 -1
  29. package/styles/components/scrollbar.scss +70 -4
  30. package/types/components/scrollbar.d.ts +13 -0
  31. /package/es/icon/{iconfont.1791616159757.ttf → iconfont.1791695426253.ttf} +0 -0
  32. /package/es/icon/{iconfont.1791616159757.woff → iconfont.1791695426253.woff} +0 -0
  33. /package/es/icon/{iconfont.1791616159757.woff2 → iconfont.1791695426253.woff2} +0 -0
  34. /package/es/{iconfont.1791616159757.ttf → iconfont.1791695426253.ttf} +0 -0
  35. /package/es/{iconfont.1791616159757.woff → iconfont.1791695426253.woff} +0 -0
  36. /package/es/{iconfont.1791616159757.woff2 → iconfont.1791695426253.woff2} +0 -0
  37. /package/lib/icon/style/{iconfont.1791616159757.ttf → iconfont.1791695426253.ttf} +0 -0
  38. /package/lib/icon/style/{iconfont.1791616159757.woff → iconfont.1791695426253.woff} +0 -0
  39. /package/lib/icon/style/{iconfont.1791616159757.woff2 → iconfont.1791695426253.woff2} +0 -0
  40. /package/lib/{iconfont.1791616159757.ttf → iconfont.1791695426253.ttf} +0 -0
  41. /package/lib/{iconfont.1791616159757.woff → iconfont.1791695426253.woff} +0 -0
  42. /package/lib/{iconfont.1791616159757.woff2 → iconfont.1791695426253.woff2} +0 -0
@@ -50,6 +50,12 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
50
50
  return getConfig().scrollbar.native;
51
51
  }
52
52
  },
53
+ padding: {
54
+ type: Boolean,
55
+ default: function _default() {
56
+ return getConfig().scrollbar.padding;
57
+ }
58
+ },
53
59
  xConfig: Object,
54
60
  yConfig: Object,
55
61
  className: {
@@ -137,12 +143,16 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
137
143
  var props = $xeScrollbar;
138
144
  var reactData = $xeScrollbar.reactData;
139
145
  var native = props.native,
140
- className = props.className;
146
+ className = props.className,
147
+ padding = props.padding;
141
148
  var yThumbHeight = reactData.yThumbHeight,
142
149
  xThumbWidth = reactData.xThumbWidth;
143
150
  var xOpts = $xeScrollbar.computeXOpts;
144
151
  var yOpts = $xeScrollbar.computeYOpts;
145
- return domUtils.buildClass(['vxe-scrollbar', "ov-x--".concat(xOpts.visible || 'visible'), "ov-y--".concat(yOpts.visible || 'visible'), native ? 'is--native' : 'is--virtual', className], {
152
+ var xToTop = $xeScrollbar.computeXToTop;
153
+ var yToLeft = $xeScrollbar.computeYToLeft;
154
+ 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], {
155
+ 'is--padding': padding,
146
156
  'ov-x--auto-hide': xOpts.autoHide,
147
157
  'ov-y--auto-hide': yOpts.autoHide,
148
158
  'overflow-y': yThumbHeight,
@@ -170,6 +180,16 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
170
180
  var $xeScrollbar = this;
171
181
  var props = $xeScrollbar;
172
182
  return Object.assign({}, getConfig().scrollbar.yConfig, props.yConfig);
183
+ },
184
+ computeXToTop: function computeXToTop() {
185
+ var $xeScrollbar = this;
186
+ var xOpts = $xeScrollbar.computeXOpts;
187
+ return xOpts.position === 'top';
188
+ },
189
+ computeYToLeft: function computeYToLeft() {
190
+ var $xeScrollbar = this;
191
+ var yOpts = $xeScrollbar.computeYOpts;
192
+ return yOpts.position === 'left';
173
193
  }
174
194
  },
175
195
  methods: {
@@ -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,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}},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,l=e.minHeight,n=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)),l&&(s.minHeight=(0,_dom.toCssUnit)(l)),n&&(s.maxWidth=(0,_dom.toCssUnit)(n)),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,l=t.yThumbHeight,t=t.xThumbWidth,n=e.computeXOpts,e=e.computeYOpts;return domUtils.buildClass(["vxe-scrollbar","ov-x--".concat(n.visible||"visible"),"ov-y--".concat(e.visible||"visible"),i?"is--native":"is--virtual",r],{"ov-x--auto-hide":n.autoHide,"ov-y--auto-hide":e.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)}},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,l=i.$refs.refViewElem;l&&(t=(t=i.$refs.refTrackXElem)?(0,_util.getThumbSize)(l.clientWidth,l.scrollWidth,t.clientWidth):0,(e=i.$refs.refThumbXElem)&&(e.style.width=t+"px"),r.xThumbWidth=t,t=(e=i.$refs.refTrackYElem)?(0,_util.getThumbSize)(l.clientHeight,l.scrollHeight,e.clientHeight):0,(l=i.$refs.refThumbYElem)&&(l.style.height=t+"px"),r.yThumbHeight=t)},updateThumbOffset:function(){var e,t,i,r=this,l=r.reactData,n=r.internalData,o=r.$refs.refViewElem;o&&(e=l.xThumbWidth,l=l.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,n.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&&l?(0,_util.getThumbOffsetSize)(o.scrollTop,o.clientHeight,o.scrollHeight,e.clientHeight,l):0,n.yThumbTop=i,t)&&l&&(t.style.height=l+"px",t.style.transform="translateY(".concat(i,"px)"))},scrollEvent:function(e){var t,i=this,r=i.reactData,l=i.internalData,n=r.xThumbWidth,r=r.yThumbHeight,o=l.lastScrollTop,a=l.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<n&&c-o<=h+f&&(T=!0)):(d="left",0<n&&h<=o&&(v=!0))),i.updateThumbOffset(),l.lastScrollTop=u,l.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<n&&h<=0,isRight:0<n&&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,l=e.currentTarget;l===e.target&&(t=this.$refs.refViewElem)&&(r=r.xThumbWidth,i=l.getBoundingClientRect(),t.scrollTo({left:(0,_util.getScrollFromClick)(e.clientX-i.left,t.clientWidth,t.scrollWidth,l.clientWidth,r),behavior:"auto"}))},clickTrackYEvent:function(e){var t,i,r=this.reactData,l=e.currentTarget;l===e.target&&(t=this.$refs.refViewElem)&&(r=r.yThumbHeight,i=l.getBoundingClientRect(),t.scrollTo({top:(0,_util.getScrollFromClick)(e.clientY-i.top,t.clientHeight,t.scrollHeight,l.clientHeight,r),behavior:"auto"}))},pointerdownThumbXEvent:function(e){var t,i=this.reactData,r=this.internalData,l=e.currentTarget,n=(r.isThumbDrag=!0,l.setPointerCapture(e.pointerId),this.$refs.refViewElem);n&&(i=i.xThumbWidth,t=(l=l.parentElement).getBoundingClientRect(),e=e.clientX-t.left,t=(0,_util.getThumbOffsetSize)(n.scrollLeft,n.clientWidth,n.scrollWidth,l.clientWidth,i),r.thumbDragOffset=e-t)},pointermoveThumbXEvent:function(e){var t,i,r=this.reactData,l=this.internalData,n=l.isThumbDrag,l=l.thumbDragOffset;n&&(n=this.$refs.refViewElem)&&(r=r.xThumbWidth,i=(t=e.currentTarget.parentElement).getBoundingClientRect(),n.scrollLeft=(0,_util.getScrollFromDrag)(e.clientX-i.left,l,n.clientWidth,n.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,l=e.currentTarget,n=(r.isThumbDrag=!0,l.setPointerCapture(e.pointerId),this.$refs.refViewElem);n&&(i=i.yThumbHeight,t=(l=l.parentElement).getBoundingClientRect(),e=e.clientY-t.top,t=(0,_util.getThumbOffsetSize)(n.scrollTop,n.clientHeight,n.scrollHeight,l.clientHeight,i),r.thumbDragOffset=e-t)},pointermoveThumbYEvent:function(e){var t,i,r=this.reactData,l=this.internalData,n=l.isThumbDrag,l=l.thumbDragOffset;n&&(n=this.$refs.refViewElem)&&(r=r.yThumbHeight,i=(t=e.currentTarget.parentElement).getBoundingClientRect(),n.scrollTop=(0,_util.getScrollFromDrag)(e.clientY-i.top,l,n.clientHeight,n.scrollHeight,t.clientHeight,r))},renderVN:function(e){var t=this,i=t.$scopedSlots,r=t.id,l=t.native,n=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({}):[])]),l||"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}})]),l||"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:n}})])}},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,l=e.$refs.refViewElem,n=e.$refs.refViewInnerElem;r&&(r=globalResize.create(function(){t.autoResize&&e.reFlag++}),l&&r.observe(l),n&&r.observe(n),i.resizeObserver=r),e.reFlag++},beforeDestroy:function(){var e=this.internalData.resizeObserver;e&&e.disconnect()},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"),_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,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&&(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++},beforeDestroy:function(){var e=this.internalData.resizeObserver;e&&e.disconnect()},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)}});
@@ -62,13 +62,15 @@
62
62
  user-select: none;
63
63
  }
64
64
 
65
- .vxe-scrollbar.overflow-y > .vxe-scrollbar--track-x, .vxe-scrollbar.overflow-y > .vxe-scrollbar--track-y {
65
+ .vxe-scrollbar.overflow-x > .vxe-scrollbar--track-x {
66
+ display: block;
67
+ }
68
+ .vxe-scrollbar.overflow-y > .vxe-scrollbar--track-y {
66
69
  display: block;
67
70
  }
68
71
 
69
72
  .vxe-scrollbar--track-x {
70
73
  width: 100%;
71
- bottom: 0;
72
74
  left: 0;
73
75
  height: var(--vxe-ui-scrollbar-x-height);
74
76
  padding: var(--vxe-ui-scrollbar-track-padding) 0;
@@ -76,12 +78,49 @@
76
78
 
77
79
  .vxe-scrollbar--track-y {
78
80
  height: 100%;
79
- right: 0;
80
81
  top: 0;
81
82
  width: var(--vxe-ui-scrollbar-y-width);
82
83
  padding: 0 var(--vxe-ui-scrollbar-track-padding);
83
84
  }
84
85
 
86
+ .vxe-scrollbar.sx-pos--top > .vxe-scrollbar--track-x {
87
+ top: 0;
88
+ }
89
+ .vxe-scrollbar.sx-pos--bottom > .vxe-scrollbar--track-x {
90
+ bottom: 0;
91
+ }
92
+ .vxe-scrollbar.sy-pos--left > .vxe-scrollbar--track-y {
93
+ left: 0;
94
+ }
95
+ .vxe-scrollbar.sy-pos--right > .vxe-scrollbar--track-y {
96
+ right: 0;
97
+ }
98
+ .vxe-scrollbar.overflow-x.overflow-y > .vxe-scrollbar--track-x {
99
+ width: calc(100% - var(--vxe-ui-scrollbar-x-height));
100
+ }
101
+ .vxe-scrollbar.overflow-x.overflow-y > .vxe-scrollbar--track-y {
102
+ height: calc(100% - var(--vxe-ui-scrollbar-y-width));
103
+ }
104
+ .vxe-scrollbar.overflow-x.overflow-y.sx-pos--top.sy-pos--left > .vxe-scrollbar--track-y, .vxe-scrollbar.overflow-x.overflow-y.sx-pos--top.sy-pos--right > .vxe-scrollbar--track-y {
105
+ top: var(--vxe-ui-scrollbar-x-height);
106
+ }
107
+ .vxe-scrollbar.overflow-x.overflow-y.sy-pos--left.sx-pos--top > .vxe-scrollbar--track-x, .vxe-scrollbar.overflow-x.overflow-y.sy-pos--left.sx-pos--bottom > .vxe-scrollbar--track-x {
108
+ left: var(--vxe-ui-scrollbar-y-width);
109
+ }
110
+
111
+ .vxe-scrollbar.is--padding.sx-pos--top {
112
+ padding-top: var(--vxe-ui-scrollbar-x-height);
113
+ }
114
+ .vxe-scrollbar.is--padding.sx-pos--bottom {
115
+ padding-bottom: var(--vxe-ui-scrollbar-x-height);
116
+ }
117
+ .vxe-scrollbar.is--padding.sy-pos--left {
118
+ padding-left: var(--vxe-ui-scrollbar-y-width);
119
+ }
120
+ .vxe-scrollbar.is--padding.sy-pos--right {
121
+ padding-right: var(--vxe-ui-scrollbar-y-width);
122
+ }
123
+
85
124
  .vxe-scrollbar--thumb-y {
86
125
  width: 100%;
87
126
  }
@@ -1 +1 @@
1
- .vxe-scrollbar{width:100%;position:relative}.vxe-scrollbar.is--virtual>.vxe-scrollbar--view{scrollbar-width:none;-ms-overflow-style:none}.vxe-scrollbar.is--virtual>.vxe-scrollbar--view::-webkit-scrollbar{display:none}.vxe-scrollbar.is--virtual.ov-x--auto-hide:hover>.vxe-scrollbar--track-x{opacity:1}.vxe-scrollbar.is--virtual.ov-x--auto-hide>.vxe-scrollbar--track-x{opacity:0;transition:opacity .8s ease-in-out}.vxe-scrollbar.is--virtual.ov-y--auto-hide:hover>.vxe-scrollbar--track-y{opacity:1}.vxe-scrollbar.is--virtual.ov-y--auto-hide>.vxe-scrollbar--track-y{opacity:0;transition:opacity .8s ease-in-out}.vxe-scrollbar.is--native>.vxe-scrollbar--view::-webkit-scrollbar{width:var(--vxe-ui-scrollbar-y-width);height:var(--vxe-ui-scrollbar-x-height)}.vxe-scrollbar.is--native>.vxe-scrollbar--view::-webkit-scrollbar-thumb{border-radius:var(--vxe-ui-base-border-radius);background-color:var(--vxe-ui-scrollbar-thumb-background-color)}.vxe-scrollbar.is--native>.vxe-scrollbar--view::-webkit-scrollbar-thumb:hover{background-color:var(--vxe-ui-scrollbar-thumb-hover-background-color)}.vxe-scrollbar.is--native>.vxe-scrollbar--view::-webkit-scrollbar-thumb:active{background-color:var(--vxe-ui-scrollbar-thumb-active-background-color)}.vxe-scrollbar.ov-x--hidden>.vxe-scrollbar--view{overflow-x:hidden}.vxe-scrollbar.ov-y--hidden>.vxe-scrollbar--view{overflow-y:hidden}.vxe-scrollbar--view{height:100%;width:100%;overflow-x:auto;overflow-y:auto}.vxe-scrollbar--track-x,.vxe-scrollbar--track-y{display:none;position:absolute;background-color:var(--vxe-ui-scrollbar-track-background-color);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.vxe-scrollbar.overflow-y>.vxe-scrollbar--track-x,.vxe-scrollbar.overflow-y>.vxe-scrollbar--track-y{display:block}.vxe-scrollbar--track-x{width:100%;bottom:0;left:0;height:var(--vxe-ui-scrollbar-x-height);padding:var(--vxe-ui-scrollbar-track-padding) 0}.vxe-scrollbar--track-y{height:100%;right:0;top:0;width:var(--vxe-ui-scrollbar-y-width);padding:0 var(--vxe-ui-scrollbar-track-padding)}.vxe-scrollbar--thumb-y{width:100%}.vxe-scrollbar--thumb-x{height:100%}.vxe-scrollbar--thumb-x,.vxe-scrollbar--thumb-y{border-radius:var(--vxe-ui-scrollbar-thumb-border-radius);background-color:var(--vxe-ui-scrollbar-thumb-background-color)}.vxe-scrollbar--thumb-x:hover,.vxe-scrollbar--thumb-y:hover{background-color:var(--vxe-ui-scrollbar-thumb-hover-background-color)}.vxe-scrollbar--thumb-x:active,.vxe-scrollbar--thumb-y:active{background-color:var(--vxe-ui-scrollbar-thumb-active-background-color)}
1
+ .vxe-scrollbar{width:100%;position:relative}.vxe-scrollbar.is--virtual>.vxe-scrollbar--view{scrollbar-width:none;-ms-overflow-style:none}.vxe-scrollbar.is--virtual>.vxe-scrollbar--view::-webkit-scrollbar{display:none}.vxe-scrollbar.is--virtual.ov-x--auto-hide:hover>.vxe-scrollbar--track-x{opacity:1}.vxe-scrollbar.is--virtual.ov-x--auto-hide>.vxe-scrollbar--track-x{opacity:0;transition:opacity .8s ease-in-out}.vxe-scrollbar.is--virtual.ov-y--auto-hide:hover>.vxe-scrollbar--track-y{opacity:1}.vxe-scrollbar.is--virtual.ov-y--auto-hide>.vxe-scrollbar--track-y{opacity:0;transition:opacity .8s ease-in-out}.vxe-scrollbar.is--native>.vxe-scrollbar--view::-webkit-scrollbar{width:var(--vxe-ui-scrollbar-y-width);height:var(--vxe-ui-scrollbar-x-height)}.vxe-scrollbar.is--native>.vxe-scrollbar--view::-webkit-scrollbar-thumb{border-radius:var(--vxe-ui-base-border-radius);background-color:var(--vxe-ui-scrollbar-thumb-background-color)}.vxe-scrollbar.is--native>.vxe-scrollbar--view::-webkit-scrollbar-thumb:hover{background-color:var(--vxe-ui-scrollbar-thumb-hover-background-color)}.vxe-scrollbar.is--native>.vxe-scrollbar--view::-webkit-scrollbar-thumb:active{background-color:var(--vxe-ui-scrollbar-thumb-active-background-color)}.vxe-scrollbar.ov-x--hidden>.vxe-scrollbar--view{overflow-x:hidden}.vxe-scrollbar.ov-y--hidden>.vxe-scrollbar--view{overflow-y:hidden}.vxe-scrollbar--view{height:100%;width:100%;overflow-x:auto;overflow-y:auto}.vxe-scrollbar--track-x,.vxe-scrollbar--track-y{display:none;position:absolute;background-color:var(--vxe-ui-scrollbar-track-background-color);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.vxe-scrollbar.overflow-x>.vxe-scrollbar--track-x{display:block}.vxe-scrollbar.overflow-y>.vxe-scrollbar--track-y{display:block}.vxe-scrollbar--track-x{width:100%;left:0;height:var(--vxe-ui-scrollbar-x-height);padding:var(--vxe-ui-scrollbar-track-padding) 0}.vxe-scrollbar--track-y{height:100%;top:0;width:var(--vxe-ui-scrollbar-y-width);padding:0 var(--vxe-ui-scrollbar-track-padding)}.vxe-scrollbar.sx-pos--top>.vxe-scrollbar--track-x{top:0}.vxe-scrollbar.sx-pos--bottom>.vxe-scrollbar--track-x{bottom:0}.vxe-scrollbar.sy-pos--left>.vxe-scrollbar--track-y{left:0}.vxe-scrollbar.sy-pos--right>.vxe-scrollbar--track-y{right:0}.vxe-scrollbar.overflow-x.overflow-y>.vxe-scrollbar--track-x{width:calc(100% - var(--vxe-ui-scrollbar-x-height))}.vxe-scrollbar.overflow-x.overflow-y>.vxe-scrollbar--track-y{height:calc(100% - var(--vxe-ui-scrollbar-y-width))}.vxe-scrollbar.overflow-x.overflow-y.sx-pos--top.sy-pos--left>.vxe-scrollbar--track-y,.vxe-scrollbar.overflow-x.overflow-y.sx-pos--top.sy-pos--right>.vxe-scrollbar--track-y{top:var(--vxe-ui-scrollbar-x-height)}.vxe-scrollbar.overflow-x.overflow-y.sy-pos--left.sx-pos--bottom>.vxe-scrollbar--track-x,.vxe-scrollbar.overflow-x.overflow-y.sy-pos--left.sx-pos--top>.vxe-scrollbar--track-x{left:var(--vxe-ui-scrollbar-y-width)}.vxe-scrollbar.is--padding.sx-pos--top{padding-top:var(--vxe-ui-scrollbar-x-height)}.vxe-scrollbar.is--padding.sx-pos--bottom{padding-bottom:var(--vxe-ui-scrollbar-x-height)}.vxe-scrollbar.is--padding.sy-pos--left{padding-left:var(--vxe-ui-scrollbar-y-width)}.vxe-scrollbar.is--padding.sy-pos--right{padding-right:var(--vxe-ui-scrollbar-y-width)}.vxe-scrollbar--thumb-y{width:100%}.vxe-scrollbar--thumb-x{height:100%}.vxe-scrollbar--thumb-x,.vxe-scrollbar--thumb-y{border-radius:var(--vxe-ui-scrollbar-thumb-border-radius);background-color:var(--vxe-ui-scrollbar-thumb-background-color)}.vxe-scrollbar--thumb-x:hover,.vxe-scrollbar--thumb-y:hover{background-color:var(--vxe-ui-scrollbar-thumb-hover-background-color)}.vxe-scrollbar--thumb-x:active,.vxe-scrollbar--thumb-y:active{background-color:var(--vxe-ui-scrollbar-thumb-active-background-color)}