vxe-pc-ui 4.6.36 → 4.6.37

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 (46) hide show
  1. package/es/icon/style.css +1 -1
  2. package/es/notice-bar/src/notice-bar.js +9 -2
  3. package/es/style.css +1 -1
  4. package/es/style.min.css +1 -1
  5. package/es/tabs/src/tabs.js +50 -34
  6. package/es/tabs/style.css +20 -17
  7. package/es/tabs/style.min.css +1 -1
  8. package/es/ui/index.js +1 -1
  9. package/es/ui/src/log.js +1 -1
  10. package/es/vxe-tabs/style.css +20 -17
  11. package/es/vxe-tabs/style.min.css +1 -1
  12. package/lib/icon/style/style.css +1 -1
  13. package/lib/icon/style/style.min.css +1 -1
  14. package/lib/index.umd.js +63 -37
  15. package/lib/index.umd.min.js +1 -1
  16. package/lib/notice-bar/src/notice-bar.js +8 -1
  17. package/lib/notice-bar/src/notice-bar.min.js +1 -1
  18. package/lib/style.css +1 -1
  19. package/lib/style.min.css +1 -1
  20. package/lib/tabs/src/tabs.js +53 -34
  21. package/lib/tabs/src/tabs.min.js +1 -1
  22. package/lib/tabs/style/style.css +20 -17
  23. package/lib/tabs/style/style.min.css +1 -1
  24. package/lib/ui/index.js +1 -1
  25. package/lib/ui/index.min.js +1 -1
  26. package/lib/ui/src/log.js +1 -1
  27. package/lib/ui/src/log.min.js +1 -1
  28. package/lib/vxe-tabs/style/style.css +20 -17
  29. package/lib/vxe-tabs/style/style.min.css +1 -1
  30. package/package.json +1 -1
  31. package/packages/notice-bar/src/notice-bar.ts +13 -3
  32. package/packages/tabs/src/tabs.ts +52 -34
  33. package/styles/components/tabs.scss +16 -11
  34. package/types/components/tabs.d.ts +7 -3
  35. /package/es/icon/{iconfont.1751108492990.ttf → iconfont.1751116737472.ttf} +0 -0
  36. /package/es/icon/{iconfont.1751108492990.woff → iconfont.1751116737472.woff} +0 -0
  37. /package/es/icon/{iconfont.1751108492990.woff2 → iconfont.1751116737472.woff2} +0 -0
  38. /package/es/{iconfont.1751108492990.ttf → iconfont.1751116737472.ttf} +0 -0
  39. /package/es/{iconfont.1751108492990.woff → iconfont.1751116737472.woff} +0 -0
  40. /package/es/{iconfont.1751108492990.woff2 → iconfont.1751116737472.woff2} +0 -0
  41. /package/lib/icon/style/{iconfont.1751108492990.ttf → iconfont.1751116737472.ttf} +0 -0
  42. /package/lib/icon/style/{iconfont.1751108492990.woff → iconfont.1751116737472.woff} +0 -0
  43. /package/lib/icon/style/{iconfont.1751108492990.woff2 → iconfont.1751116737472.woff2} +0 -0
  44. /package/lib/{iconfont.1751108492990.ttf → iconfont.1751116737472.ttf} +0 -0
  45. /package/lib/{iconfont.1751108492990.woff → iconfont.1751116737472.woff} +0 -0
  46. /package/lib/{iconfont.1751108492990.woff2 → iconfont.1751116737472.woff2} +0 -0
@@ -1 +1 @@
1
- .vxe-tabs{display:flex;color:var(--vxe-ui-font-color);font-family:var(--vxe-ui-font-family)}.vxe-tabs.pos--bottom,.vxe-tabs.pos--top{flex-direction:column}.vxe-tabs.pos--left,.vxe-tabs.pos--right{flex-direction:row}.vxe-tabs.trigger--default .vxe-tabs-header--item{cursor:pointer}.vxe-tabs.trigger--default .vxe-tabs-header--item:hover .vxe-tabs-header--item-name{color:var(--vxe-ui-font-primary-color)}.vxe-tabs-header--bar{position:relative;display:flex;flex-direction:row;align-items:center;justify-content:center;flex-shrink:0;cursor:pointer}.vxe-tabs-header--bar::after{content:"";position:absolute;background-color:var(--vxe-ui-input-border-color);z-index:3}.vxe-tabs-header--bar:focus{color:var(--vxe-ui-font-darken-color)}.vxe-tabs-header--bar:hover{color:var(--vxe-ui-font-primary-lighten-color)}.vxe-tabs-header--bar:active{color:var(--vxe-ui-font-primary-darken-color)}.vxe-tabs-header--bar.type--border-card,.vxe-tabs-header--bar.type--card,.vxe-tabs-header--bar.type--default,.vxe-tabs-header--bar.type--round-card{border:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-header--bar.type--round-card{background-color:rgba(0,0,0,.02)}.vxe-tabs-header--bar.pos--bottom,.vxe-tabs-header--bar.pos--top{width:1.6em}.vxe-tabs-header--bar.pos--bottom::after,.vxe-tabs-header--bar.pos--top::after{top:0;width:1px;height:100%}.vxe-tabs-header--bar.pos--left,.vxe-tabs-header--bar.pos--right{width:100%;height:1.6em}.vxe-tabs-header--bar.pos--left::after,.vxe-tabs-header--bar.pos--right::after{left:0;width:100%;height:1px}.vxe-tabs-header--prev-bar.type--default.pos--bottom,.vxe-tabs-header--prev-bar.type--default.pos--top{border-right:0}.vxe-tabs-header--prev-bar.type--default.pos--left,.vxe-tabs-header--prev-bar.type--default.pos--right{border-bottom:0}.vxe-tabs-header--prev-bar.type--card.pos--top{border-bottom:0;border-right:0}.vxe-tabs-header--prev-bar.type--card.pos--bottom{border-top:0;border-right:0}.vxe-tabs-header--prev-bar.type--card.pos--left{border-left:0;border-bottom:0}.vxe-tabs-header--prev-bar.type--card.pos--right{border-right:0;border-bottom:0}.vxe-tabs-header--prev-bar.type--border-card.pos--top{border-top:0;border-right:0}.vxe-tabs-header--prev-bar.type--border-card.pos--bottom{border-right:0;border-bottom:0}.vxe-tabs-header--prev-bar.type--border-card.pos--left{border-left:0;border-bottom:0}.vxe-tabs-header--prev-bar.type--border-card.pos--right{border-right:0;border-bottom:0}.vxe-tabs-header--prev-bar.type--round-card.pos--top{border-right:0}.vxe-tabs-header--prev-bar.type--round-card.pos--bottom{border-right:0}.vxe-tabs-header--prev-bar.type--round-card.pos--left{border-bottom:0}.vxe-tabs-header--prev-bar.type--round-card.pos--right{border-bottom:0}.vxe-tabs-header--prev-bar.pos--bottom::after,.vxe-tabs-header--prev-bar.pos--top::after{right:0}.vxe-tabs-header--prev-bar.pos--left::after,.vxe-tabs-header--prev-bar.pos--right::after{bottom:0}.vxe-tabs-header--prev-bar.scrolling--middle.pos--bottom,.vxe-tabs-header--prev-bar.scrolling--middle.pos--top{box-shadow:4px 0 6px 0 var(--vxe-ui-tabs-bar-scrolling-box-shadow-color)}.vxe-tabs-header--prev-bar.scrolling--middle.pos--left,.vxe-tabs-header--prev-bar.scrolling--middle.pos--right{box-shadow:0 4px 6px 0 var(--vxe-ui-tabs-bar-scrolling-box-shadow-color)}.vxe-tabs-header--next-bar.type--default.pos--bottom,.vxe-tabs-header--next-bar.type--default.pos--top{border-left:0}.vxe-tabs-header--next-bar.type--default.pos--left,.vxe-tabs-header--next-bar.type--default.pos--right{border-top:0}.vxe-tabs-header--next-bar.type--card.pos--top{border-top:0;border-left:0}.vxe-tabs-header--next-bar.type--card.pos--bottom{border-bottom:0;border-left:0}.vxe-tabs-header--next-bar.type--card.pos--left{border-top:0;border-right:0}.vxe-tabs-header--next-bar.type--card.pos--right{border-top:0;border-left:0}.vxe-tabs-header--next-bar.type--border-card.pos--top{border-left:0;border-top:0}.vxe-tabs-header--next-bar.type--border-card.pos--bottom{border-left:0;border-bottom:0}.vxe-tabs-header--next-bar.type--border-card.pos--left{border-left:0;border-top:0}.vxe-tabs-header--next-bar.type--border-card.pos--right{border-right:0;border-top:0}.vxe-tabs-header--next-bar.type--round-card.pos--top{border-left:0}.vxe-tabs-header--next-bar.type--round-card.pos--bottom{border-left:0;border-bottom:0}.vxe-tabs-header--next-bar.type--round-card.pos--left{border-top:0}.vxe-tabs-header--next-bar.type--round-card.pos--right{border-top:0}.vxe-tabs-header--next-bar.pos--bottom::after,.vxe-tabs-header--next-bar.pos--top::after{left:0}.vxe-tabs-header--next-bar.pos--left::after,.vxe-tabs-header--next-bar.pos--right::after{top:0}.vxe-tabs-header--next-bar.scrolling--middle.pos--bottom,.vxe-tabs-header--next-bar.scrolling--middle.pos--top{box-shadow:-4px 0 6px 0 var(--vxe-ui-tabs-bar-scrolling-box-shadow-color)}.vxe-tabs-header--next-bar.scrolling--middle.pos--left,.vxe-tabs-header--next-bar.scrolling--middle.pos--right{box-shadow:0 -4px 6px 0 var(--vxe-ui-tabs-bar-scrolling-box-shadow-color)}.vxe-tabs-header--prefix,.vxe-tabs-header--suffix{display:flex;flex-direction:row;align-items:center;justify-content:center;flex-shrink:0}.vxe-tabs-header--prefix.type--border-card.pos--top,.vxe-tabs-header--prefix.type--default.pos--top,.vxe-tabs-header--prefix.type--round-card.pos--top,.vxe-tabs-header--suffix.type--border-card.pos--top,.vxe-tabs-header--suffix.type--default.pos--top,.vxe-tabs-header--suffix.type--round-card.pos--top{border-bottom:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-header--prefix.type--border-card.pos--bottom,.vxe-tabs-header--prefix.type--default.pos--bottom,.vxe-tabs-header--prefix.type--round-card.pos--bottom,.vxe-tabs-header--suffix.type--border-card.pos--bottom,.vxe-tabs-header--suffix.type--default.pos--bottom,.vxe-tabs-header--suffix.type--round-card.pos--bottom{border-top:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-header--prefix.type--border-card.pos--left,.vxe-tabs-header--prefix.type--default.pos--left,.vxe-tabs-header--prefix.type--round-card.pos--left,.vxe-tabs-header--suffix.type--border-card.pos--left,.vxe-tabs-header--suffix.type--default.pos--left,.vxe-tabs-header--suffix.type--round-card.pos--left{border-right:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-header--prefix.type--border-card.pos--right,.vxe-tabs-header--prefix.type--default.pos--right,.vxe-tabs-header--prefix.type--round-card.pos--right,.vxe-tabs-header--suffix.type--border-card.pos--right,.vxe-tabs-header--suffix.type--default.pos--right,.vxe-tabs-header--suffix.type--round-card.pos--right{border-left:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-header--item-wrapper{position:relative;display:flex;outline:0}.vxe-tabs-header--item{position:relative;flex-shrink:0;padding:0 .5em}.vxe-tabs-header--item.is--active .vxe-tabs-header--item-content{color:var(--vxe-ui-font-primary-color)}.vxe-tabs-header--item.align--left{text-align:left}.vxe-tabs-header--item.align--center{text-align:center}.vxe-tabs-header--item.align--right{text-align:right}.vxe-tabs-header--item.type--card.pos--top{border-top:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-header--item.type--card.pos--bottom{border-bottom:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-header--item.type--card.pos--bottom,.vxe-tabs-header--item.type--card.pos--top{border-right:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-header--item.type--card.pos--bottom:first-child,.vxe-tabs-header--item.type--card.pos--top:first-child{border-left:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-header--item.type--card.pos--left{border-left:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-header--item.type--card.pos--right{border-right:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-header--item.type--card.pos--left,.vxe-tabs-header--item.type--card.pos--right{border-bottom:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-header--item.type--card.pos--left:first-child,.vxe-tabs-header--item.type--card.pos--right:first-child{border-top:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-header--item.type--border-card.is--active{background-color:var(--vxe-ui-layout-background-color)}.vxe-tabs-header--item.type--round-card{z-index:2;border:1px solid var(--vxe-ui-input-border-color);background-color:rgba(0,0,0,.02);transition:color .3s ease-in-out}.vxe-tabs-header--item.type--round-card.is--active{background-color:var(--vxe-ui-layout-background-color)}.vxe-tabs-header--item.type--round-card.pos--top{border-bottom:0;border-radius:var(--vxe-ui-base-border-radius) var(--vxe-ui-base-border-radius) 0 0}.vxe-tabs-header--item.type--round-card.pos--bottom{border-top:0;border-radius:0 0 var(--vxe-ui-base-border-radius) var(--vxe-ui-base-border-radius)}.vxe-tabs-header--item.type--round-card.pos--bottom,.vxe-tabs-header--item.type--round-card.pos--top{margin:0 2px}.vxe-tabs-header--item.type--round-card.pos--bottom:first-child,.vxe-tabs-header--item.type--round-card.pos--top:first-child{margin-left:0}.vxe-tabs-header--item.type--round-card.pos--bottom:last-child,.vxe-tabs-header--item.type--round-card.pos--top:last-child{margin-right:0}.vxe-tabs-header--item.type--round-card.pos--left{border-right:0;border-radius:var(--vxe-ui-base-border-radius) 0 0 var(--vxe-ui-base-border-radius)}.vxe-tabs-header--item.type--round-card.pos--right{border-left:0;border-radius:0 var(--vxe-ui-base-border-radius) var(--vxe-ui-base-border-radius) 0}.vxe-tabs-header--item.type--round-card.pos--left,.vxe-tabs-header--item.type--round-card.pos--right{margin:2px 0}.vxe-tabs-header--item.type--round-card.pos--left:first-child,.vxe-tabs-header--item.type--round-card.pos--right:first-child{margin-top:0}.vxe-tabs-header--item.type--round-card.pos--left:last-child,.vxe-tabs-header--item.type--round-card.pos--right:last-child{margin-bottom:0}.vxe-tabs-header--item-inner{display:flex;flex-direction:row;align-items:center}.vxe-tabs-header--item-content{flex-grow:1;max-width:30em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vxe-tabs-header--item-icon{padding:0 .6em}.vxe-tabs-header--item-icon+.vxe-tabs-header--item-name{padding-left:0}.vxe-tabs-header--item-name{padding:0 .6em}.vxe-tabs-header--close-btn,.vxe-tabs-header--refresh-btn{font-size:.8em;border-radius:50%;width:1.5em;height:1.5em;margin:0 .2em;line-height:1.5em;text-align:center}.vxe-tabs-header--close-btn:hover,.vxe-tabs-header--refresh-btn:hover{color:var(--vxe-ui-font-color);background:var(--vxe-ui-tabs-close-hover-background-color)}.vxe-tabs-header--close-btn:active,.vxe-tabs-header--refresh-btn:active{color:var(--vxe-ui-font-primary-color)}.vxe-tabs-header--close-btn>i,.vxe-tabs-header--refresh-btn>i{font-size:1em}.vxe-tabs-header--refresh-btn{visibility:hidden}.vxe-tabs-header--refresh-btn.is--active{visibility:visible}.vxe-tabs-header--item-inner{transition:color .1s ease-in-out}.vxe-tabs-pane--wrapper{display:flex;flex-direction:column;flex-grow:1;overflow:hidden}.vxe-tabs-pane--body{flex-grow:1;overflow:hidden}.vxe-tabs-pane--body.is--padding{padding:var(--vxe-ui-layout-padding-default)}.vxe-tabs-pane--body.type--border-card,.vxe-tabs-pane--body.type--round-card{border:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-pane--body.type--border-card.pos--top,.vxe-tabs-pane--body.type--round-card.pos--top{border-top:0}.vxe-tabs-pane--body.type--border-card.pos--bottom,.vxe-tabs-pane--body.type--round-card.pos--bottom{border-bottom:0}.vxe-tabs-pane--body.type--border-card.pos--left,.vxe-tabs-pane--body.type--round-card.pos--left{border-left:0}.vxe-tabs-pane--body.type--border-card.pos--right,.vxe-tabs-pane--body.type--round-card.pos--right{border-right:0}.vxe-tabs-pane--footer,.vxe-tabs-pane--top{flex-shrink:0;overflow:auto}.vxe-tabs-pane--item{display:none;height:100%;overflow:auto;outline:0}.vxe-tabs-pane--item.is--visible{display:block}.vxe-tabs-header{display:flex}.vxe-tabs-header.pos--bottom,.vxe-tabs-header.pos--top{flex-direction:row}.vxe-tabs-header.pos--left,.vxe-tabs-header.pos--right{flex-direction:column}.vxe-tabs-header.type--card.pos--top{border-bottom:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-header.type--card.pos--bottom{border-top:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-header.type--card.pos--left{border-right:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-header.type--card.pos--right{border-left:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-header.type--border-card{background-color:var(--vxe-ui-tabs-card-header-background-color);border:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-header.type--border-card.pos--top{border-bottom:0}.vxe-tabs-header.type--border-card.pos--bottom{border-top:0}.vxe-tabs-header.type--border-card.pos--left{border-right:0}.vxe-tabs-header.type--border-card.pos--right{border-left:0}.vxe-tabs-header--wrapper{position:relative;flex-grow:1;overflow:hidden}.vxe-tabs-header--wrapper.type--border-card,.vxe-tabs-header--wrapper.type--default,.vxe-tabs-header--wrapper.type--round-card{position:relative}.vxe-tabs-header--wrapper.type--border-card::after,.vxe-tabs-header--wrapper.type--default::after,.vxe-tabs-header--wrapper.type--round-card::after{content:"";position:absolute;background-color:var(--vxe-ui-input-border-color);z-index:0}.vxe-tabs-header--wrapper.type--border-card.pos--top::after,.vxe-tabs-header--wrapper.type--default.pos--top::after,.vxe-tabs-header--wrapper.type--round-card.pos--top::after{bottom:0}.vxe-tabs-header--wrapper.type--border-card.pos--bottom::after,.vxe-tabs-header--wrapper.type--default.pos--bottom::after,.vxe-tabs-header--wrapper.type--round-card.pos--bottom::after{top:0}.vxe-tabs-header--wrapper.type--border-card.pos--bottom::after,.vxe-tabs-header--wrapper.type--border-card.pos--top::after,.vxe-tabs-header--wrapper.type--default.pos--bottom::after,.vxe-tabs-header--wrapper.type--default.pos--top::after,.vxe-tabs-header--wrapper.type--round-card.pos--bottom::after,.vxe-tabs-header--wrapper.type--round-card.pos--top::after{left:0;width:100%;height:1px}.vxe-tabs-header--wrapper.type--border-card.pos--left::after,.vxe-tabs-header--wrapper.type--default.pos--left::after,.vxe-tabs-header--wrapper.type--round-card.pos--left::after{right:0}.vxe-tabs-header--wrapper.type--border-card.pos--right::after,.vxe-tabs-header--wrapper.type--default.pos--right::after,.vxe-tabs-header--wrapper.type--round-card.pos--right::after{left:0}.vxe-tabs-header--wrapper.type--border-card.pos--left::after,.vxe-tabs-header--wrapper.type--border-card.pos--right::after,.vxe-tabs-header--wrapper.type--default.pos--left::after,.vxe-tabs-header--wrapper.type--default.pos--right::after,.vxe-tabs-header--wrapper.type--round-card.pos--left::after,.vxe-tabs-header--wrapper.type--round-card.pos--right::after{top:0;width:1px;height:100%}.vxe-tabs-header--wrapper.type--border-card.pos--top{border-radius:var(--vxe-ui-base-border-radius) var(--vxe-ui-base-border-radius) 0 0}.vxe-tabs-header--wrapper.type--border-card.pos--bottom{border-radius:0 0 var(--vxe-ui-base-border-radius) var(--vxe-ui-base-border-radius)}.vxe-tabs-header--wrapper.type--border-card>.vxe-tabs-header--item-wrapper,.vxe-tabs-header--wrapper.type--round-card>.vxe-tabs-header--item-wrapper{z-index:2}.vxe-tabs-header--wrapper.pos--bottom,.vxe-tabs-header--wrapper.pos--top{height:var(--vxe-ui-tabs-header-height-default)}.vxe-tabs-header--wrapper.pos--bottom .vxe-tabs-header--item-wrapper,.vxe-tabs-header--wrapper.pos--top .vxe-tabs-header--item-wrapper{flex-direction:row;width:100%;overflow-y:hidden;overflow-x:auto}.vxe-tabs-header--wrapper.pos--left .vxe-tabs-header--item-wrapper,.vxe-tabs-header--wrapper.pos--right .vxe-tabs-header--item-wrapper{flex-direction:column;height:100%;overflow-y:auto;overflow-x:hidden}.vxe-tabs-header--active-line{display:none}.vxe-tabs-header--active-line.type--default{display:block;position:absolute;background-color:var(--vxe-ui-font-primary-color);z-index:2;transition:all .3s ease-in-out}.vxe-tabs-header--active-line.type--default.pos--top{bottom:0}.vxe-tabs-header--active-line.type--default.pos--bottom{top:0}.vxe-tabs-header--active-line.type--default.pos--bottom,.vxe-tabs-header--active-line.type--default.pos--top{left:0;height:2px;width:4px}.vxe-tabs-header--active-line.type--default.pos--left{right:0}.vxe-tabs-header--active-line.type--default.pos--right{left:0}.vxe-tabs-header--active-line.type--default.pos--left,.vxe-tabs-header--active-line.type--default.pos--right{top:0;height:4px;width:2px}.vxe-tabs-header--active-line.type--card{display:block;position:absolute;top:0;left:0;border:1px solid var(--vxe-ui-font-primary-color);pointer-events:none;z-index:1;box-shadow:0 0 8px rgba(0,0,0,.1)}.vxe-tabs-header--active-line.type--card.pos--bottom,.vxe-tabs-header--active-line.type--card.pos--top{width:4px;transition:color,left .3s ease-in-out}.vxe-tabs-header--active-line.type--card.pos--left,.vxe-tabs-header--active-line.type--card.pos--right{width:100%;transition:color,top .3s ease-in-out}.vxe-tabs-header--active-line.type--border-card{display:block;position:absolute;top:0;left:0;pointer-events:none;z-index:1}.vxe-tabs-header--active-line.type--border-card.pos--bottom,.vxe-tabs-header--active-line.type--border-card.pos--top{width:4px;border-left:1px solid var(--vxe-ui-input-border-color);border-right:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-header--active-line.type--border-card.pos--left,.vxe-tabs-header--active-line.type--border-card.pos--right{width:100%;border-top:1px solid var(--vxe-ui-input-border-color);border-bottom:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs .vxe-tabs-header--item-inner{height:var(--vxe-ui-tabs-header-height-default)}.vxe-tabs .vxe-tabs-header--active-line.type--card{height:var(--vxe-ui-tabs-header-height-default)}.vxe-tabs .vxe-tabs-header--active-line.type--border-card{height:calc(var(--vxe-ui-tabs-header-height-default) + 1px);line-height:calc(var(--vxe-ui-tabs-header-height-default) + 1px)}.vxe-tabs--border-card,.vxe-tabs--card,.vxe-tabs--default,.vxe-tabs--round-card{border-radius:var(--vxe-ui-base-border-radius) var(--vxe-ui-base-border-radius) 0 0;background-color:var(--vxe-ui-layout-background-color)}.vxe-tabs--default .vxe-tabs-header--item-inner{border-bottom:2px solid transparent}.vxe-tabs--card .vxe-tabs-header--item-inner,.vxe-tabs--round-card .vxe-tabs-header--item-inner{height:calc(var(--vxe-ui-tabs-header-height-default) - 1px)}
1
+ .vxe-tabs{display:flex;color:var(--vxe-ui-font-color);font-family:var(--vxe-ui-font-family)}.vxe-tabs.pos--bottom,.vxe-tabs.pos--top{flex-direction:column}.vxe-tabs.pos--left,.vxe-tabs.pos--right{flex-direction:row}.vxe-tabs.trigger--default .vxe-tabs-header--item{cursor:pointer}.vxe-tabs.trigger--default .vxe-tabs-header--item:hover .vxe-tabs-header--item-name{color:var(--vxe-ui-font-primary-color)}.vxe-tabs-header--bar{position:relative;display:flex;flex-direction:row;align-items:center;justify-content:center;flex-shrink:0;cursor:pointer}.vxe-tabs-header--bar::after{content:"";position:absolute;background-color:var(--vxe-ui-input-border-color);z-index:3}.vxe-tabs-header--bar:focus{color:var(--vxe-ui-font-darken-color)}.vxe-tabs-header--bar:hover{color:var(--vxe-ui-font-primary-lighten-color)}.vxe-tabs-header--bar:active{color:var(--vxe-ui-font-primary-darken-color)}.vxe-tabs-header--bar.type--border-card,.vxe-tabs-header--bar.type--card,.vxe-tabs-header--bar.type--default,.vxe-tabs-header--bar.type--round-card{border:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-header--bar.type--round-card{background-color:rgba(0,0,0,.02)}.vxe-tabs-header--bar.pos--bottom,.vxe-tabs-header--bar.pos--top{width:1.6em}.vxe-tabs-header--bar.pos--bottom::after,.vxe-tabs-header--bar.pos--top::after{top:0;width:1px;height:100%}.vxe-tabs-header--bar.pos--left,.vxe-tabs-header--bar.pos--right{width:100%;height:1.6em}.vxe-tabs-header--bar.pos--left::after,.vxe-tabs-header--bar.pos--right::after{left:0;width:100%;height:1px}.vxe-tabs-header--prev-bar.type--default.pos--bottom,.vxe-tabs-header--prev-bar.type--default.pos--top{border-right:0}.vxe-tabs-header--prev-bar.type--default.pos--left,.vxe-tabs-header--prev-bar.type--default.pos--right{border-bottom:0}.vxe-tabs-header--prev-bar.type--card.pos--top{border-bottom:0;border-right:0}.vxe-tabs-header--prev-bar.type--card.pos--bottom{border-top:0;border-right:0}.vxe-tabs-header--prev-bar.type--card.pos--left{border-left:0;border-bottom:0}.vxe-tabs-header--prev-bar.type--card.pos--right{border-right:0;border-bottom:0}.vxe-tabs-header--prev-bar.type--border-card.pos--top{border-top:0;border-right:0}.vxe-tabs-header--prev-bar.type--border-card.pos--bottom{border-right:0;border-bottom:0}.vxe-tabs-header--prev-bar.type--border-card.pos--left{border-left:0;border-bottom:0}.vxe-tabs-header--prev-bar.type--border-card.pos--right{border-right:0;border-bottom:0}.vxe-tabs-header--prev-bar.type--round-card.pos--top{border-right:0}.vxe-tabs-header--prev-bar.type--round-card.pos--bottom{border-right:0}.vxe-tabs-header--prev-bar.type--round-card.pos--left{border-bottom:0}.vxe-tabs-header--prev-bar.type--round-card.pos--right{border-bottom:0}.vxe-tabs-header--prev-bar.pos--bottom::after,.vxe-tabs-header--prev-bar.pos--top::after{right:0}.vxe-tabs-header--prev-bar.pos--left::after,.vxe-tabs-header--prev-bar.pos--right::after{bottom:0}.vxe-tabs-header--prev-bar.scrolling--middle.pos--bottom,.vxe-tabs-header--prev-bar.scrolling--middle.pos--top{box-shadow:4px 0 6px 0 var(--vxe-ui-tabs-bar-scrolling-box-shadow-color)}.vxe-tabs-header--prev-bar.scrolling--middle.pos--left,.vxe-tabs-header--prev-bar.scrolling--middle.pos--right{box-shadow:0 4px 6px 0 var(--vxe-ui-tabs-bar-scrolling-box-shadow-color)}.vxe-tabs-header--next-bar.type--default.pos--bottom,.vxe-tabs-header--next-bar.type--default.pos--top{border-left:0}.vxe-tabs-header--next-bar.type--default.pos--left,.vxe-tabs-header--next-bar.type--default.pos--right{border-top:0}.vxe-tabs-header--next-bar.type--card.pos--top{border-top:0;border-left:0}.vxe-tabs-header--next-bar.type--card.pos--bottom{border-bottom:0;border-left:0}.vxe-tabs-header--next-bar.type--card.pos--left{border-top:0;border-right:0}.vxe-tabs-header--next-bar.type--card.pos--right{border-top:0;border-left:0}.vxe-tabs-header--next-bar.type--border-card.pos--top{border-left:0;border-top:0}.vxe-tabs-header--next-bar.type--border-card.pos--bottom{border-left:0;border-bottom:0}.vxe-tabs-header--next-bar.type--border-card.pos--left{border-left:0;border-top:0}.vxe-tabs-header--next-bar.type--border-card.pos--right{border-right:0;border-top:0}.vxe-tabs-header--next-bar.type--round-card.pos--top{border-left:0}.vxe-tabs-header--next-bar.type--round-card.pos--bottom{border-left:0;border-bottom:0}.vxe-tabs-header--next-bar.type--round-card.pos--left{border-top:0}.vxe-tabs-header--next-bar.type--round-card.pos--right{border-top:0}.vxe-tabs-header--next-bar.pos--bottom::after,.vxe-tabs-header--next-bar.pos--top::after{left:0}.vxe-tabs-header--next-bar.pos--left::after,.vxe-tabs-header--next-bar.pos--right::after{top:0}.vxe-tabs-header--next-bar.scrolling--middle.pos--bottom,.vxe-tabs-header--next-bar.scrolling--middle.pos--top{box-shadow:-4px 0 6px 0 var(--vxe-ui-tabs-bar-scrolling-box-shadow-color)}.vxe-tabs-header--next-bar.scrolling--middle.pos--left,.vxe-tabs-header--next-bar.scrolling--middle.pos--right{box-shadow:0 -4px 6px 0 var(--vxe-ui-tabs-bar-scrolling-box-shadow-color)}.vxe-tabs-header--prefix,.vxe-tabs-header--suffix{display:flex;flex-direction:row;align-items:center;justify-content:center;flex-shrink:0}.vxe-tabs-header--prefix.type--border-card.pos--top,.vxe-tabs-header--prefix.type--default.pos--top,.vxe-tabs-header--prefix.type--round-card.pos--top,.vxe-tabs-header--suffix.type--border-card.pos--top,.vxe-tabs-header--suffix.type--default.pos--top,.vxe-tabs-header--suffix.type--round-card.pos--top{border-bottom:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-header--prefix.type--border-card.pos--bottom,.vxe-tabs-header--prefix.type--default.pos--bottom,.vxe-tabs-header--prefix.type--round-card.pos--bottom,.vxe-tabs-header--suffix.type--border-card.pos--bottom,.vxe-tabs-header--suffix.type--default.pos--bottom,.vxe-tabs-header--suffix.type--round-card.pos--bottom{border-top:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-header--prefix.type--border-card.pos--left,.vxe-tabs-header--prefix.type--default.pos--left,.vxe-tabs-header--prefix.type--round-card.pos--left,.vxe-tabs-header--suffix.type--border-card.pos--left,.vxe-tabs-header--suffix.type--default.pos--left,.vxe-tabs-header--suffix.type--round-card.pos--left{border-right:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-header--prefix.type--border-card.pos--right,.vxe-tabs-header--prefix.type--default.pos--right,.vxe-tabs-header--prefix.type--round-card.pos--right,.vxe-tabs-header--suffix.type--border-card.pos--right,.vxe-tabs-header--suffix.type--default.pos--right,.vxe-tabs-header--suffix.type--round-card.pos--right{border-left:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-header--item-wrapper{position:relative;display:flex;outline:0}.vxe-tabs-header--item{position:relative;flex-shrink:0;padding:0 .5em}.vxe-tabs-header--item.is--active .vxe-tabs-header--item-content{color:var(--vxe-ui-font-primary-color)}.vxe-tabs-header--item.align--left{text-align:left}.vxe-tabs-header--item.align--center{text-align:center}.vxe-tabs-header--item.align--right{text-align:right}.vxe-tabs-header--item.type--card.pos--top{border-top:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-header--item.type--card.pos--bottom{border-bottom:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-header--item.type--card.pos--bottom,.vxe-tabs-header--item.type--card.pos--top{border-right:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-header--item.type--card.pos--bottom:first-child,.vxe-tabs-header--item.type--card.pos--top:first-child{border-left:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-header--item.type--card.pos--left{border-left:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-header--item.type--card.pos--right{border-right:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-header--item.type--card.pos--left,.vxe-tabs-header--item.type--card.pos--right{border-bottom:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-header--item.type--card.pos--left:first-child,.vxe-tabs-header--item.type--card.pos--right:first-child{border-top:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-header--item.type--border-card.is--active{background-color:var(--vxe-ui-layout-background-color)}.vxe-tabs-header--item.type--round-card{z-index:2;border:1px solid var(--vxe-ui-input-border-color);background-color:rgba(0,0,0,.02);transition:color .3s ease-in-out}.vxe-tabs-header--item.type--round-card.is--active{background-color:var(--vxe-ui-layout-background-color)}.vxe-tabs-header--item.type--round-card.pos--top{border-bottom:0;border-radius:var(--vxe-ui-base-border-radius) var(--vxe-ui-base-border-radius) 0 0}.vxe-tabs-header--item.type--round-card.pos--bottom{border-top:0;border-radius:0 0 var(--vxe-ui-base-border-radius) var(--vxe-ui-base-border-radius)}.vxe-tabs-header--item.type--round-card.pos--bottom,.vxe-tabs-header--item.type--round-card.pos--top{margin:0 2px}.vxe-tabs-header--item.type--round-card.pos--bottom:first-child,.vxe-tabs-header--item.type--round-card.pos--top:first-child{margin-left:0}.vxe-tabs-header--item.type--round-card.pos--bottom:last-child,.vxe-tabs-header--item.type--round-card.pos--top:last-child{margin-right:0}.vxe-tabs-header--item.type--round-card.pos--left{border-right:0;border-radius:var(--vxe-ui-base-border-radius) 0 0 var(--vxe-ui-base-border-radius)}.vxe-tabs-header--item.type--round-card.pos--right{border-left:0;border-radius:0 var(--vxe-ui-base-border-radius) var(--vxe-ui-base-border-radius) 0}.vxe-tabs-header--item.type--round-card.pos--left,.vxe-tabs-header--item.type--round-card.pos--right{margin:2px 0}.vxe-tabs-header--item.type--round-card.pos--left:first-child,.vxe-tabs-header--item.type--round-card.pos--right:first-child{margin-top:0}.vxe-tabs-header--item.type--round-card.pos--left:last-child,.vxe-tabs-header--item.type--round-card.pos--right:last-child{margin-bottom:0}.vxe-tabs-header--item-inner{display:flex;flex-direction:row;align-items:center}.vxe-tabs-header--item-content{flex-grow:1;max-width:30em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vxe-tabs-header--item-icon{padding:0 .6em}.vxe-tabs-header--item-icon+.vxe-tabs-header--item-name{padding-left:0}.vxe-tabs-header--item-name{padding:0 .6em}.vxe-tabs-header--close-btn,.vxe-tabs-header--refresh-btn{font-size:.8em;border-radius:50%;width:1.5em;height:1.5em;margin:0 .2em;line-height:1.5em;text-align:center}.vxe-tabs-header--close-btn:hover,.vxe-tabs-header--refresh-btn:hover{color:var(--vxe-ui-font-color);background:var(--vxe-ui-tabs-close-hover-background-color)}.vxe-tabs-header--close-btn:active,.vxe-tabs-header--refresh-btn:active{color:var(--vxe-ui-font-primary-color)}.vxe-tabs-header--close-btn>i,.vxe-tabs-header--refresh-btn>i{font-size:1em}.vxe-tabs-header--refresh-btn{visibility:hidden}.vxe-tabs-header--refresh-btn.is--active{visibility:visible}.vxe-tabs-header--item-inner{transition:color .1s ease-in-out}.vxe-tabs-pane--wrapper{display:none;flex-direction:column;flex-grow:1;overflow:hidden}.vxe-tabs-pane--wrapper.is--content{display:flex}.vxe-tabs-pane--wrapper.type--border-card,.vxe-tabs-pane--wrapper.type--round-card{border:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-pane--wrapper.type--border-card.pos--top,.vxe-tabs-pane--wrapper.type--round-card.pos--top{border-top:0}.vxe-tabs-pane--wrapper.type--border-card.pos--bottom,.vxe-tabs-pane--wrapper.type--round-card.pos--bottom{border-bottom:0}.vxe-tabs-pane--wrapper.type--border-card.pos--left,.vxe-tabs-pane--wrapper.type--round-card.pos--left{border-left:0}.vxe-tabs-pane--wrapper.type--border-card.pos--right,.vxe-tabs-pane--wrapper.type--round-card.pos--right{border-right:0}.vxe-tabs-pane--body{flex-grow:1;overflow:hidden}.vxe-tabs-pane--body.is--padding{padding:var(--vxe-ui-layout-padding-default)}.vxe-tabs-pane--footer,.vxe-tabs-pane--header{flex-shrink:0;overflow:auto}.vxe-tabs-pane--item{display:none;height:100%;overflow:auto;outline:0}.vxe-tabs-pane--item.is--visible{display:block}.vxe-tabs-header{display:flex}.vxe-tabs-header.pos--bottom,.vxe-tabs-header.pos--top{flex-direction:row}.vxe-tabs-header.pos--left,.vxe-tabs-header.pos--right{flex-direction:column}.vxe-tabs-header.type--card.pos--top{border-bottom:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-header.type--card.pos--bottom{border-top:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-header.type--card.pos--left{border-right:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-header.type--card.pos--right{border-left:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-header.type--border-card{background-color:var(--vxe-ui-tabs-card-header-background-color);border:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-header.type--border-card.pos--top{border-bottom:0}.vxe-tabs-header.type--border-card.pos--bottom{border-top:0}.vxe-tabs-header.type--border-card.pos--left{border-right:0}.vxe-tabs-header.type--border-card.pos--right{border-left:0}.vxe-tabs-header--wrapper{position:relative;flex-grow:1;overflow:hidden}.vxe-tabs-header--wrapper.type--border-card,.vxe-tabs-header--wrapper.type--default,.vxe-tabs-header--wrapper.type--round-card{position:relative}.vxe-tabs-header--wrapper.type--border-card::after,.vxe-tabs-header--wrapper.type--default::after,.vxe-tabs-header--wrapper.type--round-card::after{content:"";position:absolute;background-color:var(--vxe-ui-input-border-color);z-index:0}.vxe-tabs-header--wrapper.type--border-card.pos--top::after,.vxe-tabs-header--wrapper.type--default.pos--top::after,.vxe-tabs-header--wrapper.type--round-card.pos--top::after{bottom:0}.vxe-tabs-header--wrapper.type--border-card.pos--bottom::after,.vxe-tabs-header--wrapper.type--default.pos--bottom::after,.vxe-tabs-header--wrapper.type--round-card.pos--bottom::after{top:0}.vxe-tabs-header--wrapper.type--border-card.pos--bottom::after,.vxe-tabs-header--wrapper.type--border-card.pos--top::after,.vxe-tabs-header--wrapper.type--default.pos--bottom::after,.vxe-tabs-header--wrapper.type--default.pos--top::after,.vxe-tabs-header--wrapper.type--round-card.pos--bottom::after,.vxe-tabs-header--wrapper.type--round-card.pos--top::after{left:0;width:100%;height:1px}.vxe-tabs-header--wrapper.type--border-card.pos--left::after,.vxe-tabs-header--wrapper.type--default.pos--left::after,.vxe-tabs-header--wrapper.type--round-card.pos--left::after{right:0}.vxe-tabs-header--wrapper.type--border-card.pos--right::after,.vxe-tabs-header--wrapper.type--default.pos--right::after,.vxe-tabs-header--wrapper.type--round-card.pos--right::after{left:0}.vxe-tabs-header--wrapper.type--border-card.pos--left::after,.vxe-tabs-header--wrapper.type--border-card.pos--right::after,.vxe-tabs-header--wrapper.type--default.pos--left::after,.vxe-tabs-header--wrapper.type--default.pos--right::after,.vxe-tabs-header--wrapper.type--round-card.pos--left::after,.vxe-tabs-header--wrapper.type--round-card.pos--right::after{top:0;width:1px;height:100%}.vxe-tabs-header--wrapper.type--border-card.pos--top{border-radius:var(--vxe-ui-base-border-radius) var(--vxe-ui-base-border-radius) 0 0}.vxe-tabs-header--wrapper.type--border-card.pos--bottom{border-radius:0 0 var(--vxe-ui-base-border-radius) var(--vxe-ui-base-border-radius)}.vxe-tabs-header--wrapper.type--border-card>.vxe-tabs-header--item-wrapper,.vxe-tabs-header--wrapper.type--round-card>.vxe-tabs-header--item-wrapper{z-index:2}.vxe-tabs-header--wrapper.pos--bottom,.vxe-tabs-header--wrapper.pos--top{height:var(--vxe-ui-tabs-header-height-default)}.vxe-tabs-header--wrapper.pos--bottom .vxe-tabs-header--item-wrapper,.vxe-tabs-header--wrapper.pos--top .vxe-tabs-header--item-wrapper{flex-direction:row;width:100%;overflow-y:hidden;overflow-x:auto}.vxe-tabs-header--wrapper.pos--left .vxe-tabs-header--item-wrapper,.vxe-tabs-header--wrapper.pos--right .vxe-tabs-header--item-wrapper{flex-direction:column;height:100%;overflow-y:auto;overflow-x:hidden}.vxe-tabs-header--active-line{display:none}.vxe-tabs-header--active-line.type--default{display:block;position:absolute;background-color:var(--vxe-ui-font-primary-color);z-index:2;transition:all .3s ease-in-out}.vxe-tabs-header--active-line.type--default.pos--top{bottom:20px}.vxe-tabs-header--active-line.type--default.pos--bottom{top:0}.vxe-tabs-header--active-line.type--default.pos--bottom,.vxe-tabs-header--active-line.type--default.pos--top{left:0;height:2px;width:4px}.vxe-tabs-header--active-line.type--default.pos--left{right:20px}.vxe-tabs-header--active-line.type--default.pos--right{left:0}.vxe-tabs-header--active-line.type--default.pos--left,.vxe-tabs-header--active-line.type--default.pos--right{top:0;height:4px;width:2px}.vxe-tabs-header--active-line.type--card{display:block;position:absolute;top:0;left:0;border:1px solid var(--vxe-ui-font-primary-color);pointer-events:none;z-index:1;box-shadow:0 0 8px rgba(0,0,0,.1)}.vxe-tabs-header--active-line.type--card.pos--bottom,.vxe-tabs-header--active-line.type--card.pos--top{width:4px;transition:color,left .3s ease-in-out}.vxe-tabs-header--active-line.type--card.pos--left,.vxe-tabs-header--active-line.type--card.pos--right{width:calc(100% - 20px);transition:color,top .3s ease-in-out}.vxe-tabs-header--active-line.type--border-card{display:block;position:absolute;top:0;left:0;pointer-events:none;z-index:1}.vxe-tabs-header--active-line.type--border-card.pos--bottom,.vxe-tabs-header--active-line.type--border-card.pos--top{width:4px;border-left:1px solid var(--vxe-ui-input-border-color);border-right:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs-header--active-line.type--border-card.pos--left,.vxe-tabs-header--active-line.type--border-card.pos--right{width:100%;border-top:1px solid var(--vxe-ui-input-border-color);border-bottom:1px solid var(--vxe-ui-input-border-color)}.vxe-tabs .vxe-tabs-header--item-inner{height:var(--vxe-ui-tabs-header-height-default)}.vxe-tabs .vxe-tabs-header--active-line.type--card{height:var(--vxe-ui-tabs-header-height-default)}.vxe-tabs .vxe-tabs-header--active-line.type--border-card{height:calc(var(--vxe-ui-tabs-header-height-default) + 1px);line-height:calc(var(--vxe-ui-tabs-header-height-default) + 1px)}.vxe-tabs--border-card,.vxe-tabs--card,.vxe-tabs--default,.vxe-tabs--round-card{border-radius:var(--vxe-ui-base-border-radius) var(--vxe-ui-base-border-radius) 0 0;background-color:var(--vxe-ui-layout-background-color)}.vxe-tabs--default .vxe-tabs-header--item-inner{border-bottom:2px solid transparent}.vxe-tabs--card .vxe-tabs-header--item-inner,.vxe-tabs--round-card .vxe-tabs-header--item-inner{height:calc(var(--vxe-ui-tabs-header-height-default) - 1px)}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vxe-pc-ui",
3
- "version": "4.6.36",
3
+ "version": "4.6.37",
4
4
  "description": "A vue based PC component library",
5
5
  "scripts": {
6
6
  "update": "npm install --legacy-peer-deps",
@@ -1,10 +1,10 @@
1
- import { ref, h, reactive, PropType, computed, onMounted, onBeforeUnmount } from 'vue'
1
+ import { ref, h, reactive, PropType, computed, onMounted, watch, onBeforeUnmount, inject } from 'vue'
2
2
  import { defineVxeComponent } from '../../ui/src/comp'
3
3
  import XEUtils from 'xe-utils'
4
4
  import { getConfig, useSize, createEvent, globalEvents, renderEmptyElement } from '../../ui'
5
5
  import { toCssUnit } from '../../ui/src/dom'
6
6
 
7
- import type { VxeNoticeBarPropTypes, NoticeBarReactData, NoticeBarPrivateRef, NoticeBarMethods, NoticeBarPrivateMethods, VxeNoticeBarEmits, VxeNoticeBarPrivateComputed, VxeNoticeBarConstructor, VxeNoticeBarPrivateMethods, ValueOf } from '../../../types'
7
+ import type { VxeNoticeBarPropTypes, NoticeBarReactData, NoticeBarPrivateRef, NoticeBarMethods, NoticeBarPrivateMethods, VxeNoticeBarEmits, VxeNoticeBarPrivateComputed, VxeNoticeBarConstructor, VxeNoticeBarPrivateMethods, ValueOf, VxeTabsConstructor, VxeTabsPrivateMethods } from '../../../types'
8
8
 
9
9
  export default defineVxeComponent({
10
10
  name: 'VxeNoticeBar',
@@ -33,6 +33,8 @@ export default defineVxeComponent({
33
33
  setup (props, context) {
34
34
  const { slots, emit } = context
35
35
 
36
+ const $xeTabs = inject<(VxeTabsConstructor & VxeTabsPrivateMethods) | null>('$xeTabs', null)
37
+
36
38
  const xID = XEUtils.uniqueId()
37
39
 
38
40
  const { computeSize } = useSize(props)
@@ -53,6 +55,10 @@ export default defineVxeComponent({
53
55
  return `${content || ''}`
54
56
  })
55
57
 
58
+ const computeTabsResizeFlag = computed(() => {
59
+ return $xeTabs ? $xeTabs.reactData.resizeFlag : null
60
+ })
61
+
56
62
  const computeMaps: VxeNoticeBarPrivateComputed = {
57
63
  }
58
64
 
@@ -136,7 +142,9 @@ export default defineVxeComponent({
136
142
  ])
137
143
  }
138
144
 
139
- $xeNoticeBar.renderVN = renderVN
145
+ watch(computeTabsResizeFlag, () => {
146
+ updateAnimationStyle()
147
+ })
140
148
 
141
149
  onMounted(() => {
142
150
  globalEvents.on($xeNoticeBar, 'resize', updateAnimationStyle)
@@ -147,6 +155,8 @@ export default defineVxeComponent({
147
155
  globalEvents.off($xeNoticeBar, 'resize')
148
156
  })
149
157
 
158
+ $xeNoticeBar.renderVN = renderVN
159
+
150
160
  return $xeNoticeBar
151
161
  },
152
162
  render () {
@@ -9,6 +9,8 @@ import XEUtils from 'xe-utils'
9
9
 
10
10
  import type { VxeTabsPropTypes, VxeTabPaneProps, VxeTabsEmits, TabsInternalData, TabsReactData, TabsPrivateRef, VxeTabsPrivateComputed, VxeTabsConstructor, VxeTabsPrivateMethods, VxeTabPaneDefines, ValueOf, TabsMethods, TabsPrivateMethods, VxeComponentStyleType } from '../../../types'
11
11
 
12
+ const scrollbarOffsetSize = 20
13
+
12
14
  export default defineVxeComponent({
13
15
  name: 'VxeTabs',
14
16
  props: {
@@ -28,6 +30,10 @@ export default defineVxeComponent({
28
30
  default: () => getConfig().tabs.position
29
31
  },
30
32
  showClose: Boolean as PropType<VxeTabsPropTypes.ShowClose>,
33
+ showBody: {
34
+ type: Boolean as PropType<VxeTabsPropTypes.ShowBody>,
35
+ default: true
36
+ },
31
37
  padding: {
32
38
  type: Boolean as PropType<VxeTabsPropTypes.Padding>,
33
39
  default: () => getConfig().tabs.padding
@@ -70,6 +76,7 @@ export default defineVxeComponent({
70
76
  lintWidth: 0,
71
77
  lintHeight: 0,
72
78
  scrollbarWidth: 0,
79
+ scrollbarHeight: 0,
73
80
  isTabOver: false,
74
81
  resizeFlag: 1,
75
82
  cacheTabMaps: {}
@@ -142,6 +149,10 @@ export default defineVxeComponent({
142
149
  return staticTabs.filter((item) => handleFilterTab(item))
143
150
  })
144
151
 
152
+ const computeParentTabsResizeFlag = computed(() => {
153
+ return $xeParentTabs ? $xeParentTabs.reactData.resizeFlag : null
154
+ })
155
+
145
156
  const computeMaps: VxeTabsPrivateComputed = {
146
157
  }
147
158
 
@@ -213,12 +224,14 @@ export default defineVxeComponent({
213
224
  let lintHeight = 0
214
225
  let lintLeft = 0
215
226
  let lintTop = 0
216
- let scrollbarWidth = 0
227
+ let sBarWidth = 0
228
+ let sBarHeight = 0
217
229
  let isOver = false
218
230
  if (headerWrapperEl) {
219
231
  const index = XEUtils.findIndexOf(tabStaticOptions.length ? tabStaticOptions : tabOptions, item => item.name === activeName)
220
- const { children, offsetWidth, scrollWidth, scrollHeight, clientWidth, clientHeight } = headerWrapperEl
221
- scrollbarWidth = offsetWidth - clientWidth
232
+ const { children, offsetWidth, scrollWidth, offsetHeight, scrollHeight, clientWidth, clientHeight } = headerWrapperEl
233
+ sBarWidth = offsetWidth - clientWidth
234
+ sBarHeight = offsetHeight - clientHeight
222
235
  if (lrPosition) {
223
236
  isOver = scrollHeight !== clientHeight
224
237
  if (index > -1) {
@@ -247,7 +260,7 @@ export default defineVxeComponent({
247
260
  if (tabEl) {
248
261
  const tabWidth = tabEl.clientWidth
249
262
  if (tabType === 'card') {
250
- lintWidth = tabWidth
263
+ lintWidth = tabWidth + 1
251
264
  lintLeft = tabEl.offsetLeft
252
265
  } else if (tabType === 'border-card') {
253
266
  lintWidth = tabWidth
@@ -260,7 +273,8 @@ export default defineVxeComponent({
260
273
  }
261
274
  }
262
275
  }
263
- reactData.scrollbarWidth = scrollbarWidth
276
+ reactData.scrollbarWidth = sBarWidth
277
+ reactData.scrollbarHeight = sBarHeight
264
278
  reactData.lintLeft = lintLeft
265
279
  reactData.lintTop = lintTop
266
280
  reactData.lintWidth = lintWidth
@@ -565,7 +579,7 @@ export default defineVxeComponent({
565
579
 
566
580
  const renderTabHeader = (tabList: VxeTabsPropTypes.Options | VxeTabPaneDefines.TabConfig[]) => {
567
581
  const { titleWidth: allTitleWidth, titleAlign: allTitleAlign, showClose, closeConfig, refreshConfig } = props
568
- const { activeName, scrollbarWidth, isTabOver, cacheTabMaps } = reactData
582
+ const { activeName, scrollbarWidth, scrollbarHeight, isTabOver, cacheTabMaps } = reactData
569
583
  const tabType = computeTabType.value
570
584
  const tabPosition = computeTabPosition.value
571
585
  const lrPosition = computeLrPosition.value
@@ -603,11 +617,15 @@ export default defineVxeComponent({
603
617
  h('div', {
604
618
  ref: refHeadWrapperElem,
605
619
  class: 'vxe-tabs-header--item-wrapper',
606
- style: lrPosition && scrollbarWidth
620
+ style: lrPosition
607
621
  ? {
608
- marginRight: `-${scrollbarWidth}px`
622
+ marginRight: `-${scrollbarWidth + scrollbarOffsetSize}px`,
623
+ paddingRight: `${scrollbarOffsetSize}px`
609
624
  }
610
- : undefined,
625
+ : {
626
+ marginBottom: `-${scrollbarHeight + scrollbarOffsetSize}px`,
627
+ paddingBottom: `${scrollbarOffsetSize}px`
628
+ },
611
629
  onScroll: checkScrolling
612
630
  }, tabList.map((item, index) => {
613
631
  const { title, titleWidth, titleAlign, icon, name, slots } = item
@@ -716,46 +734,51 @@ export default defineVxeComponent({
716
734
  ? h('div', {
717
735
  key: `${name}`,
718
736
  class: ['vxe-tabs-pane--item', {
719
- 'is--visible': activeName === name,
720
- 'has--content': !!defaultSlot
737
+ 'is--visible': activeName === name
721
738
  }]
722
739
  }, defaultSlot ? callSlot(defaultSlot, { name }) : [])
723
740
  : renderEmptyElement($xeTabs)
724
741
  }
725
742
 
726
- const renderTabContent = (tabList: VxeTabsPropTypes.Options | VxeTabPaneDefines.TabConfig[]) => {
743
+ const renderTabContent = (tabList: VxeTabsPropTypes.Options | VxeTabPaneDefines.TabConfig[], activeTab: VxeTabPaneProps | undefined) => {
727
744
  const { destroyOnClose } = props
728
- const { activeName } = reactData
729
- const activeDefaultTab = tabList.find(item => item.name === activeName)
730
745
  if (destroyOnClose) {
731
- return [activeDefaultTab ? renderTabPane(activeDefaultTab) : renderEmptyElement($xeTabs)]
746
+ return [activeTab ? renderTabPane(activeTab) : renderEmptyElement($xeTabs)]
732
747
  }
733
748
  return tabList.map((item) => renderTabPane(item))
734
749
  }
735
750
 
736
751
  const rendetTabBody = (tabList: VxeTabsPropTypes.Options | VxeTabPaneDefines.TabConfig[]) => {
737
- const { height, padding } = props
752
+ const { height, padding, showBody } = props
738
753
  const { activeName } = reactData
739
754
  const tabType = computeTabType.value
740
755
  const tabPosition = computeTabPosition.value
741
- const topSlot = slots.top
756
+ const headerpSlot = slots.header
742
757
  const footerSlot = slots.footer
743
758
  const defParams = { name: activeName }
759
+ const activeDefaultTab = tabList.find(item => item.name === activeName)
760
+ let hasContent = false
761
+ if (activeDefaultTab) {
762
+ const { slots } = activeDefaultTab
763
+ hasContent = !!(slots && slots.default)
764
+ }
744
765
  return h('div', {
745
766
  key: 'tb',
746
- class: ['vxe-tabs-pane--wrapper', `type--${tabType}`, `pos--${tabPosition}`]
767
+ class: ['vxe-tabs-pane--wrapper', `type--${tabType}`, `pos--${tabPosition}`, {
768
+ 'is--content': showBody === false ? showBody : hasContent
769
+ }]
747
770
  }, [
748
- topSlot
771
+ headerpSlot
749
772
  ? h('div', {
750
- class: 'vxe-tabs-pane--top'
751
- }, callSlot(topSlot, defParams))
773
+ class: 'vxe-tabs-pane--header'
774
+ }, callSlot(headerpSlot, defParams))
752
775
  : renderEmptyElement($xeTabs),
753
776
  h('div', {
754
777
  class: ['vxe-tabs-pane--body', `type--${tabType}`, `pos--${tabPosition}`, {
755
778
  'is--padding': padding,
756
779
  'is--height': height
757
780
  }]
758
- }, renderTabContent(tabList)),
781
+ }, renderTabContent(tabList, activeDefaultTab)),
759
782
  footerSlot
760
783
  ? h('div', {
761
784
  class: 'vxe-tabs-pane--footer'
@@ -805,7 +828,7 @@ export default defineVxeComponent({
805
828
  }
806
829
 
807
830
  watch(() => props.position, () => {
808
- updateTabStyle()
831
+ reactData.resizeFlag++
809
832
  })
810
833
 
811
834
  watch(() => props.modelValue, (val) => {
@@ -815,9 +838,6 @@ export default defineVxeComponent({
815
838
 
816
839
  watch(() => reactData.activeName, (val) => {
817
840
  scrollToTab(val)
818
- nextTick(() => {
819
- reactData.resizeFlag++
820
- })
821
841
  })
822
842
 
823
843
  const optsFlag = ref(0)
@@ -829,7 +849,7 @@ export default defineVxeComponent({
829
849
  })
830
850
  watch(optsFlag, () => {
831
851
  initDefaultName(props.options)
832
- updateTabStyle()
852
+ reactData.resizeFlag++
833
853
  })
834
854
 
835
855
  const stFlag = ref(0)
@@ -841,14 +861,12 @@ export default defineVxeComponent({
841
861
  })
842
862
  watch(stFlag, () => {
843
863
  initDefaultName(reactData.staticTabs)
844
- updateTabStyle()
864
+ reactData.resizeFlag++
845
865
  })
846
866
 
847
- if ($xeParentTabs) {
848
- watch(() => $xeParentTabs ? $xeParentTabs.reactData.resizeFlag : null, () => {
849
- reactData.resizeFlag++
850
- })
851
- }
867
+ watch(computeParentTabsResizeFlag, () => {
868
+ reactData.resizeFlag++
869
+ })
852
870
 
853
871
  watch(() => reactData.resizeFlag, () => {
854
872
  nextTick(() => {
@@ -857,8 +875,8 @@ export default defineVxeComponent({
857
875
  })
858
876
 
859
877
  onMounted(() => {
860
- globalEvents.on($xeTabs, 'resize', updateTabStyle)
861
878
  updateTabStyle()
879
+ globalEvents.on($xeTabs, 'resize', updateTabStyle)
862
880
  })
863
881
 
864
882
  onUnmounted(() => {
@@ -1,5 +1,7 @@
1
1
  @use '../helpers/baseMixin.scss';
2
2
 
3
+ $scrollbarOffsetSize: 20px;
4
+
3
5
  .vxe-tabs {
4
6
  display: flex;
5
7
  color: var(--vxe-ui-font-color);
@@ -430,16 +432,12 @@
430
432
  }
431
433
 
432
434
  .vxe-tabs-pane--wrapper {
433
- display: flex;
435
+ display: none;
434
436
  flex-direction: column;
435
437
  flex-grow: 1;
436
438
  overflow: hidden;
437
- }
438
- .vxe-tabs-pane--body {
439
- flex-grow: 1;
440
- overflow: hidden;
441
- &.is--padding {
442
- padding: var(--vxe-ui-layout-padding-default);
439
+ &.is--content {
440
+ display: flex;
443
441
  }
444
442
  &.type--border-card,
445
443
  &.type--round-card {
@@ -458,7 +456,14 @@
458
456
  }
459
457
  }
460
458
  }
461
- .vxe-tabs-pane--top,
459
+ .vxe-tabs-pane--body {
460
+ flex-grow: 1;
461
+ overflow: hidden;
462
+ &.is--padding {
463
+ padding: var(--vxe-ui-layout-padding-default);
464
+ }
465
+ }
466
+ .vxe-tabs-pane--header,
462
467
  .vxe-tabs-pane--footer {
463
468
  flex-shrink: 0;
464
469
  overflow: auto;
@@ -612,7 +617,7 @@
612
617
  z-index: 2;
613
618
  @include baseMixin.createAnimationTransition(all, .3s);
614
619
  &.pos--top {
615
- bottom: 0;
620
+ bottom: $scrollbarOffsetSize;
616
621
  }
617
622
  &.pos--bottom {
618
623
  top: 0;
@@ -624,7 +629,7 @@
624
629
  width: 4px;
625
630
  }
626
631
  &.pos--left {
627
- right: 0;
632
+ right: $scrollbarOffsetSize;
628
633
  }
629
634
  &.pos--right {
630
635
  left: 0;
@@ -652,7 +657,7 @@
652
657
  }
653
658
  &.pos--left,
654
659
  &.pos--right {
655
- width: 100%;
660
+ width: calc(100% - 20px);
656
661
  transition: color,top 0.3s ease-in-out;
657
662
  }
658
663
  }
@@ -34,6 +34,7 @@ export namespace VxeTabsPropTypes {
34
34
  export type Type = null | '' | 'default' | 'card' | 'border-card' | 'round-card'
35
35
  export type Position = null | '' | 'top' | 'bottom' | 'left' | 'right'
36
36
  export type ShowClose = boolean
37
+ export type ShowBody = boolean
37
38
  export type Padding = boolean
38
39
  export type Trigger = '' | 'default' | 'click' | 'manual'
39
40
  export type BeforeChangeMethod = (params: {
@@ -119,6 +120,7 @@ export type VxeTabsProps = {
119
120
  type?: VxeTabsPropTypes.Type
120
121
  position?: VxeTabsPropTypes.Position
121
122
  showClose?: VxeTabsPropTypes.ShowClose
123
+ showBody?: VxeTabsPropTypes.ShowBody
122
124
  padding?: VxeTabsPropTypes.Padding
123
125
  trigger?: VxeTabsPropTypes.Trigger
124
126
  beforeChangeMethod?: VxeTabsPropTypes.BeforeChangeMethod
@@ -151,6 +153,7 @@ export interface TabsReactData {
151
153
  lintWidth: number
152
154
  lintHeight: number
153
155
  scrollbarWidth: number
156
+ scrollbarHeight: number
154
157
  isTabOver: boolean
155
158
  resizeFlag: number
156
159
  cacheTabMaps: Record<string, {
@@ -296,16 +299,17 @@ export interface VxeTabsSlots {
296
299
  prefix?: (params: VxeTabsSlotTypes.PrefixSlotParams) => any
297
300
  suffix?: (params: VxeTabsSlotTypes.SuffixSlotParams) => any
298
301
  /**
299
- * 自定义页签顶部模板
302
+ * 自定义面板头部模板
300
303
  */
301
- top?(params: VxeTabsSlotTypes.TopSlotParams): any
304
+ header?(params: VxeTabsSlotTypes.TopSlotParams): any
302
305
  /**
303
- * 自定义页签底部模板
306
+ * 自定义面板底部模板
304
307
  */
305
308
  footer?(params: VxeTabsSlotTypes.FooterSlotParams): any
306
309
 
307
310
  /**
308
311
  * 已废弃,请使用 suffix
312
+ * @deprecated
309
313
  */
310
314
  extra?: (params: VxeTabsSlotTypes.SuffixSlotParams) => any
311
315
  }