vxe-pc-ui 4.3.63 → 4.3.65

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 (158) hide show
  1. package/es/button/src/button-group.js +1 -0
  2. package/es/button/src/button.js +16 -5
  3. package/es/button/style.css +4 -3
  4. package/es/button/style.min.css +1 -1
  5. package/es/button-group/style.css +8 -2
  6. package/es/button-group/style.min.css +1 -1
  7. package/es/date-picker/src/date-picker.js +104 -32
  8. package/es/date-picker/style.css +37 -12
  9. package/es/date-picker/style.min.css +1 -1
  10. package/es/icon/style.css +1 -1
  11. package/es/language/ar-EG.js +1 -0
  12. package/es/language/de-DE.js +1 -0
  13. package/es/language/en-US.js +1 -0
  14. package/es/language/es-ES.js +1 -0
  15. package/es/language/fr-FR.js +1 -0
  16. package/es/language/hu-HU.js +1 -0
  17. package/es/language/hy-AM.js +1 -0
  18. package/es/language/it-IT.js +1 -0
  19. package/es/language/ja-JP.js +1 -0
  20. package/es/language/ko-KR.js +1 -0
  21. package/es/language/nb-NO.js +1 -0
  22. package/es/language/pt-BR.js +1 -0
  23. package/es/language/ru-RU.js +1 -0
  24. package/es/language/th-TH.js +1 -0
  25. package/es/language/ug-CN.js +1 -0
  26. package/es/language/uk-UA.js +1 -0
  27. package/es/language/vi-VN.js +1 -0
  28. package/es/language/zh-CHT.js +1 -0
  29. package/es/language/zh-CN.js +1 -0
  30. package/es/style.css +1 -1
  31. package/es/style.min.css +1 -1
  32. package/es/ui/index.js +8 -2
  33. package/es/ui/src/log.js +1 -1
  34. package/es/vxe-button/style.css +4 -3
  35. package/es/vxe-button/style.min.css +1 -1
  36. package/es/vxe-button-group/style.css +8 -2
  37. package/es/vxe-button-group/style.min.css +1 -1
  38. package/es/vxe-date-picker/style.css +37 -12
  39. package/es/vxe-date-picker/style.min.css +1 -1
  40. package/helper/vetur/attributes.json +1 -1
  41. package/helper/vetur/tags.json +1 -1
  42. package/lib/button/src/button-group.js +1 -0
  43. package/lib/button/src/button-group.min.js +1 -1
  44. package/lib/button/src/button.js +17 -5
  45. package/lib/button/src/button.min.js +1 -1
  46. package/lib/button/style/style.css +4 -3
  47. package/lib/button/style/style.min.css +1 -1
  48. package/lib/button-group/style/style.css +8 -2
  49. package/lib/button-group/style/style.min.css +1 -1
  50. package/lib/date-picker/src/date-picker.js +114 -31
  51. package/lib/date-picker/src/date-picker.min.js +1 -1
  52. package/lib/date-picker/style/style.css +37 -12
  53. package/lib/date-picker/style/style.min.css +1 -1
  54. package/lib/icon/style/style.css +1 -1
  55. package/lib/icon/style/style.min.css +1 -1
  56. package/lib/index.umd.js +142 -39
  57. package/lib/index.umd.min.js +1 -1
  58. package/lib/language/ar-EG.js +1 -0
  59. package/lib/language/ar-EG.min.js +1 -1
  60. package/lib/language/de-DE.js +1 -0
  61. package/lib/language/de-DE.min.js +1 -1
  62. package/lib/language/en-US.js +1 -0
  63. package/lib/language/en-US.min.js +1 -1
  64. package/lib/language/en-US.umd.js +1 -0
  65. package/lib/language/es-ES.js +1 -0
  66. package/lib/language/es-ES.min.js +1 -1
  67. package/lib/language/es-ES.umd.js +1 -0
  68. package/lib/language/fr-FR.js +1 -0
  69. package/lib/language/fr-FR.min.js +1 -1
  70. package/lib/language/hu-HU.js +1 -0
  71. package/lib/language/hu-HU.min.js +1 -1
  72. package/lib/language/hu-HU.umd.js +1 -0
  73. package/lib/language/hy-AM.js +1 -0
  74. package/lib/language/hy-AM.min.js +1 -1
  75. package/lib/language/it-IT.js +1 -0
  76. package/lib/language/it-IT.min.js +1 -1
  77. package/lib/language/ja-JP.js +1 -0
  78. package/lib/language/ja-JP.min.js +1 -1
  79. package/lib/language/ja-JP.umd.js +1 -0
  80. package/lib/language/ko-KR.js +1 -0
  81. package/lib/language/ko-KR.min.js +1 -1
  82. package/lib/language/ko-KR.umd.js +1 -0
  83. package/lib/language/nb-NO.js +1 -0
  84. package/lib/language/nb-NO.min.js +1 -1
  85. package/lib/language/pt-BR.js +1 -0
  86. package/lib/language/pt-BR.min.js +1 -1
  87. package/lib/language/pt-BR.umd.js +1 -0
  88. package/lib/language/ru-RU.js +1 -0
  89. package/lib/language/ru-RU.min.js +1 -1
  90. package/lib/language/ru-RU.umd.js +1 -0
  91. package/lib/language/th-TH.js +1 -0
  92. package/lib/language/th-TH.min.js +1 -1
  93. package/lib/language/ug-CN.js +1 -0
  94. package/lib/language/ug-CN.min.js +1 -1
  95. package/lib/language/uk-UA.js +1 -0
  96. package/lib/language/uk-UA.min.js +1 -1
  97. package/lib/language/uk-UA.umd.js +1 -0
  98. package/lib/language/vi-VN.js +1 -0
  99. package/lib/language/vi-VN.min.js +1 -1
  100. package/lib/language/zh-CHT.js +1 -0
  101. package/lib/language/zh-CHT.min.js +1 -1
  102. package/lib/language/zh-CN.js +1 -0
  103. package/lib/language/zh-CN.min.js +1 -1
  104. package/lib/language/zh-CN.umd.js +1 -0
  105. package/lib/style.css +1 -1
  106. package/lib/style.min.css +1 -1
  107. package/lib/ui/index.js +8 -2
  108. package/lib/ui/index.min.js +1 -1
  109. package/lib/ui/src/log.js +1 -1
  110. package/lib/ui/src/log.min.js +1 -1
  111. package/lib/vxe-button/style/style.css +4 -3
  112. package/lib/vxe-button/style/style.min.css +1 -1
  113. package/lib/vxe-button-group/style/style.css +8 -2
  114. package/lib/vxe-button-group/style/style.min.css +1 -1
  115. package/lib/vxe-date-picker/style/style.css +37 -12
  116. package/lib/vxe-date-picker/style/style.min.css +1 -1
  117. package/package.json +1 -1
  118. package/packages/button/src/button-group.ts +1 -0
  119. package/packages/button/src/button.ts +17 -5
  120. package/packages/date-picker/src/date-picker.ts +106 -33
  121. package/packages/language/ar-EG.ts +1 -0
  122. package/packages/language/de-DE.ts +1 -0
  123. package/packages/language/en-US.ts +1 -0
  124. package/packages/language/es-ES.ts +1 -0
  125. package/packages/language/fr-FR.ts +1 -0
  126. package/packages/language/hu-HU.ts +1 -0
  127. package/packages/language/hy-AM.ts +1 -0
  128. package/packages/language/it-IT.ts +1 -0
  129. package/packages/language/ja-JP.ts +1 -0
  130. package/packages/language/ko-KR.ts +1 -0
  131. package/packages/language/nb-NO.ts +1 -0
  132. package/packages/language/pt-BR.ts +1 -0
  133. package/packages/language/ru-RU.ts +1 -0
  134. package/packages/language/th-TH.ts +1 -0
  135. package/packages/language/ug-CN.ts +1 -0
  136. package/packages/language/uk-UA.ts +1 -0
  137. package/packages/language/vi-VN.ts +1 -0
  138. package/packages/language/zh-CHT.ts +1 -0
  139. package/packages/language/zh-CN.ts +1 -0
  140. package/packages/ui/index.ts +7 -1
  141. package/styles/components/button-group.scss +14 -2
  142. package/styles/components/button.scss +7 -5
  143. package/styles/components/date-picker.scss +33 -11
  144. package/types/components/button-group.d.ts +3 -1
  145. package/types/components/button.d.ts +2 -2
  146. package/types/components/date-picker.d.ts +32 -1
  147. /package/es/icon/{iconfont.1736058631411.ttf → iconfont.1736122977610.ttf} +0 -0
  148. /package/es/icon/{iconfont.1736058631411.woff → iconfont.1736122977610.woff} +0 -0
  149. /package/es/icon/{iconfont.1736058631411.woff2 → iconfont.1736122977610.woff2} +0 -0
  150. /package/es/{iconfont.1736058631411.ttf → iconfont.1736122977610.ttf} +0 -0
  151. /package/es/{iconfont.1736058631411.woff → iconfont.1736122977610.woff} +0 -0
  152. /package/es/{iconfont.1736058631411.woff2 → iconfont.1736122977610.woff2} +0 -0
  153. /package/lib/icon/style/{iconfont.1736058631411.ttf → iconfont.1736122977610.ttf} +0 -0
  154. /package/lib/icon/style/{iconfont.1736058631411.woff → iconfont.1736122977610.woff} +0 -0
  155. /package/lib/icon/style/{iconfont.1736058631411.woff2 → iconfont.1736122977610.woff2} +0 -0
  156. /package/lib/{iconfont.1736058631411.ttf → iconfont.1736122977610.ttf} +0 -0
  157. /package/lib/{iconfont.1736058631411.woff → iconfont.1736122977610.woff} +0 -0
  158. /package/lib/{iconfont.1736058631411.woff2 → iconfont.1736122977610.woff2} +0 -0
@@ -195,6 +195,18 @@ var _default = exports.default = (0, _vue.defineComponent)({
195
195
  }
196
196
  return '';
197
197
  });
198
+ const computeBtnAlign = (0, _vue.computed)(() => {
199
+ const {
200
+ align
201
+ } = props;
202
+ if (align) {
203
+ return align;
204
+ }
205
+ if ($xeButtonGroup) {
206
+ return $xeButtonGroup.props.align;
207
+ }
208
+ return false;
209
+ });
198
210
  const computeBtnRound = (0, _vue.computed)(() => {
199
211
  const {
200
212
  round
@@ -556,7 +568,6 @@ var _default = exports.default = (0, _vue.defineComponent)({
556
568
  const {
557
569
  className,
558
570
  popupClassName,
559
- align,
560
571
  trigger,
561
572
  title,
562
573
  routerLink,
@@ -574,6 +585,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
574
585
  const btnMode = computeBtnMode.value;
575
586
  const btnStatus = computeBtnStatus.value;
576
587
  const btnRound = computeBtnRound.value;
588
+ const btnAlign = computeBtnAlign.value;
577
589
  const btnCircle = computeBtnCircle.value;
578
590
  const btnTransfer = computeBtnTransfer.value;
579
591
  const btnDisabled = computeBtnDisabled.value;
@@ -603,7 +615,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
603
615
  }]
604
616
  }, [routerLink ? (0, _vue.h)((0, _vue.resolveComponent)('router-link'), Object.assign({
605
617
  ref: refButton,
606
- class: ['vxe-button', 'vxe-button--link', `type--${btnMode}`, align ? `align--${align}` : '', className ? _xeUtils.default.isFunction(className) ? className({
618
+ class: ['vxe-button', 'vxe-button--link', `type--${btnMode}`, btnAlign ? `align--${btnAlign}` : '', className ? _xeUtils.default.isFunction(className) ? className({
607
619
  $button: $xeButton
608
620
  }) : className : '', {
609
621
  [`size--${vSize}`]: vSize,
@@ -627,7 +639,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
627
639
  }
628
640
  }) : (0, _vue.h)('button', Object.assign({
629
641
  ref: refButton,
630
- class: ['vxe-button', `type--${btnMode}`, align ? `align--${align}` : '', className ? _xeUtils.default.isFunction(className) ? className({
642
+ class: ['vxe-button', `type--${btnMode}`, btnAlign ? `align--${btnAlign}` : '', className ? _xeUtils.default.isFunction(className) ? className({
631
643
  $button: $xeButton
632
644
  }) : className : '', {
633
645
  [`size--${vSize}`]: vSize,
@@ -667,7 +679,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
667
679
  if (routerLink) {
668
680
  return (0, _vue.h)((0, _vue.resolveComponent)('router-link'), {
669
681
  ref: refButton,
670
- class: ['vxe-button', 'vxe-button--link', `type--${btnMode}`, align ? `align--${align}` : '', className ? _xeUtils.default.isFunction(className) ? className({
682
+ class: ['vxe-button', 'vxe-button--link', `type--${btnMode}`, btnAlign ? `align--${btnAlign}` : '', className ? _xeUtils.default.isFunction(className) ? className({
671
683
  $button: $xeButton
672
684
  }) : className : '', {
673
685
  [`size--${vSize}`]: vSize,
@@ -693,7 +705,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
693
705
  }
694
706
  return (0, _vue.h)('button', {
695
707
  ref: refButton,
696
- class: ['vxe-button', `type--${btnMode}`, align ? `align--${align}` : '', className ? _xeUtils.default.isFunction(className) ? className({
708
+ class: ['vxe-button', `type--${btnMode}`, btnAlign ? `align--${btnAlign}` : '', className ? _xeUtils.default.isFunction(className) ? className({
697
709
  $button: $xeButton
698
710
  }) : className : '', {
699
711
  [`size--${vSize}`]: vSize,
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_dom=require("../../ui/src/dom"),_utils=require("../../ui/src/utils"),_log=require("../../ui/src/log"),_tooltip=_interopRequireDefault(require("../../tooltip/src/tooltip"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var _default=exports.default=(0,_vue.defineComponent)({name:"VxeButton",props:{type:String,mode:String,className:[String,Function],popupClassName:[String,Function],size:{type:String,default:()=>(0,_ui.getConfig)().button.size||(0,_ui.getConfig)().size},name:[String,Number],routerLink:Object,permissionCode:[String,Number],content:String,placement:String,status:String,title:String,icon:String,round:Boolean,circle:Boolean,disabled:Boolean,loading:Boolean,trigger:{type:String,default:()=>(0,_ui.getConfig)().button.trigger},align:String,prefixTooltip:Object,suffixTooltip:Object,destroyOnClose:{type:Boolean,default:()=>(0,_ui.getConfig)().button.destroyOnClose},transfer:{type:Boolean,default:null}},emits:["click","mouseenter","mouseleave","dropdown-click"],setup(N,e){const{slots:k,emit:n}=e,i=(0,_vue.inject)("$xeModal",null),o=(0,_vue.inject)("$xeDrawer",null),u=(0,_vue.inject)("$xeTable",null),l=(0,_vue.inject)("$xeForm",null),a=(0,_vue.inject)("$xeButtonGroup",null);var t=_xeUtils.default.uniqueId();const P=(0,_ui.useSize)(N)["computeSize"],C=(0,_ui.usePermission)(N)["computePermissionInfo"],w=(0,_vue.reactive)({initialized:!1,visiblePanel:!1,isAniVisible:!1,isActivated:!1,panelIndex:0,panelStyle:{},panelPlacement:""}),s={showTime:void 0,tooltipTimeout:void 0},S=(0,_vue.ref)(),I=(0,_vue.ref)(),j=(0,_vue.ref)(),r={refElem:S},z={xID:t,props:N,context:e,reactData:w,internalData:s,getRefMaps:()=>r};const M=(0,_vue.computed)(()=>{var e=N["transfer"];if(null===e){var t=(0,_ui.getConfig)().button.transfer;if(_xeUtils.default.isBoolean(t))return t;if(u||i||o||l)return!0}return e}),$=(0,_vue.computed)(()=>{var e=N["disabled"],t=C.value;return e||t.disabled}),E=(0,_vue.computed)(()=>{var e=N["type"];return!!e&&-1<["submit","reset","button"].indexOf(e)}),U=(0,_vue.computed)(()=>{var{type:e,mode:t}=N;return"text"===t||"text"===e||a&&"text"===a.props.mode?"text":"button"}),A=(0,_vue.computed)(()=>{var e=N["status"];return e||(a?a.props.status:"")}),B=(0,_vue.computed)(()=>{var e=N["round"];return e||!!a&&a.props.round}),R=(0,_vue.computed)(()=>{var e=N["circle"];return e||!!a&&a.props.circle}),b=(0,_vue.computed)(()=>Object.assign({},N.prefixTooltip)),g=(0,_vue.computed)(()=>Object.assign({},N.suffixTooltip)),m=()=>{w.panelIndex<(0,_utils.getLastZIndex)()&&(w.panelIndex=(0,_utils.nextZIndex)())},v=()=>(0,_vue.nextTick)().then(()=>{var n=N["placement"],o=w["panelIndex"],u=I.value,l=j.value,e=M.value;if(l&&u){var a=u.offsetHeight,s=u.offsetWidth,r=l.offsetHeight,l=l.offsetWidth,o={zIndex:o},{top:u,left:v,boundingTop:d,visibleHeight:c,visibleWidth:p}=(0,_dom.getAbsolutePos)(u);let i="bottom";if(e){let e=v+s-l,t=u+a;"top"===n?(i="top",t=u-r):n||(c<d+a+r+5&&(i="top",t=u-r),t<5&&(i="bottom",t=u+a)),e+l+5>p&&(e-=e+l+5-p),e<5&&(e=5),Object.assign(o,{left:e+"px",right:"auto",top:t+"px",minWidth:s+"px"})}else"top"===n?(i="top",o.bottom=a+"px"):n||c<d+a+r&&5<d-a-r&&(i="top",o.bottom=a+"px");return w.panelStyle=o,w.panelPlacement=i,(0,_vue.nextTick)()}}),D=e=>{a&&a.handleClick({name:N.name},e),_("click",{$event:e},e)},W=e=>{0===e.button&&e.stopPropagation()},H=e=>{var t=e.currentTarget;const i=j.value;var{flag:t,targetElem:n}=(0,_dom.getEventTargetNode)(e,t,"vxe-button");t&&(i&&(i.dataset.active="N"),w.visiblePanel=!1,setTimeout(()=>{i&&"Y"===i.dataset.active||(w.isAniVisible=!1)},350),_("dropdown-click",{name:n.getAttribute("name"),$event:e},e))},V=()=>{const e=j.value;e&&(e.dataset.active="Y",w.isAniVisible=!0,setTimeout(()=>{"Y"===e.dataset.active&&(w.visiblePanel=!0,m(),v(),setTimeout(()=>{w.visiblePanel&&v()},50))},20))},G=e=>{var t=N["loading"];$.value||t||(d(),q(e))},Z=e=>{c(),F(e)},q=e=>{_("mouseenter",{},e)},F=e=>{_("mouseleave",{},e)},L=e=>{var{loading:t,trigger:i}=N;$.value||t||("click"===i&&(w.visiblePanel?c:d)(),D(e))},d=()=>{var e=N["trigger"];const t=j.value;return t&&(t.dataset.active="Y",w.initialized||(w.initialized=!0),s.showTime=setTimeout(()=>{"Y"===t.dataset.active?V():w.isAniVisible=!1},"click"===e?50:250)),(0,_vue.nextTick)()},c=()=>{const e=j.value;return clearTimeout(s.showTime),e?(e.dataset.active="N",setTimeout(()=>{"Y"!==e.dataset.active&&(w.visiblePanel=!1,setTimeout(()=>{"Y"!==e.dataset.active&&(w.isAniVisible=!1)},350))},100)):(w.isAniVisible=!1,w.visiblePanel=!1),(0,_vue.nextTick)()},J=()=>{c()},p=(e,t)=>(0,_vue.h)(_tooltip.default,{useHTML:e.useHTML,content:e.content,enterable:e.enterable,theme:e.theme},{default(){return(0,_vue.h)("i",{class:[`vxe-button--tooltip-${t}-icon`,e.icon||(0,_ui.getIcon)().BUTTON_TOOLTIP_ICON]})}}),Y=()=>{var{content:e,icon:t,loading:i,prefixTooltip:n,suffixTooltip:o}=N,u=b.value,l=g.value,a=k.icon,s=k.default,r=[];return n&&r.push(p(u,"prefix")),i?r.push((0,_vue.h)("i",{class:["vxe-button--loading-icon",(0,_ui.getIcon)().BUTTON_LOADING]})):a?r.push((0,_vue.h)("span",{class:"vxe-button--custom-icon"},a({}))):t&&r.push((0,_vue.h)("i",{class:["vxe-button--icon",t]})),s?r.push((0,_vue.h)("span",{class:"vxe-button--content"},s({}))):e&&r.push((0,_vue.h)("span",{class:"vxe-button--content"},(0,_utils.getFuncText)(e))),o&&r.push(p(l,"suffix")),r},_=(e,t,i)=>{n(e,(0,_ui.createEvent)(i,{$button:z},t))},f=(t={dispatchEvent:_,openPanel:d,closePanel:c,focus(){var e=I.value;return e&&e.focus(),(0,_vue.nextTick)()},blur(){var e=I.value;return e&&e.blur(),(0,_vue.nextTick)()}},e=>{var t=j.value;w.visiblePanel&&!(0,_dom.getEventTargetNode)(e,t).flag&&c()}),x=e=>{var t,i=$.value,n=w["visiblePanel"];i||(i=S.value,t=j.value,w.isActivated=(0,_dom.getEventTargetNode)(e,i).flag||(0,_dom.getEventTargetNode)(e,t).flag,n&&!w.isActivated&&c())};Object.assign(z,t);return z.renderVN=()=>{var e,{className:t,popupClassName:i,align:n,trigger:o,title:u,routerLink:l,type:a,destroyOnClose:s,name:r,loading:v}=N,{initialized:d,isAniVisible:c,visiblePanel:p}=w,_=E.value,b=U.value,g=A.value,m=B.value,f=R.value,x=M.value,h=$.value,T=C.value,O=P.value,y=k.dropdowns;return T.visible?y?(T={},e={},"hover"===o&&(T.onMouseenter=G,T.onMouseleave=Z,e.onMouseenter=V,e.onMouseleave=J),(0,_vue.h)("div",{ref:S,class:["vxe-button--dropdown",t?_xeUtils.default.isFunction(t)?t({$button:z}):t:"",{["size--"+O]:O,"is--active":p}]},[l?(0,_vue.h)((0,_vue.resolveComponent)("router-link"),Object.assign({ref:I,class:["vxe-button","vxe-button--link","type--"+b,n?"align--"+n:"",t?_xeUtils.default.isFunction(t)?t({$button:z}):t:"",{["size--"+O]:O,["theme--"+g]:g,"is--round":m,"is--circle":f,"is--disabled":h||v,"is--loading":v}],title:u,name:r,type:_?a:"button",disabled:h||v,to:l,onClick:L},T),{default(){return Y().concat([(0,_vue.h)("i",{class:"vxe-button--dropdown-arrow "+(0,_ui.getIcon)().BUTTON_DROPDOWN})])}}):(0,_vue.h)("button",Object.assign({ref:I,class:["vxe-button","type--"+b,n?"align--"+n:"",t?_xeUtils.default.isFunction(t)?t({$button:z}):t:"",{["size--"+O]:O,["theme--"+g]:g,"is--round":m,"is--circle":f,"is--disabled":h||v,"is--loading":v}],title:u,name:r,type:_?a:"button",disabled:h||v,onClick:L},T),Y().concat([(0,_vue.h)("i",{class:"vxe-button--dropdown-arrow "+(0,_ui.getIcon)().BUTTON_DROPDOWN})])),(0,_vue.h)(_vue.Teleport,{to:"body",disabled:!x||!d},[(0,_vue.h)("div",Object.assign({ref:j,class:["vxe-button--dropdown-panel",i?_xeUtils.default.isFunction(i)?i({$button:z}):i:"",{["size--"+O]:O,"ani--leave":c,"ani--enter":p}],placement:w.panelPlacement,style:w.panelStyle},e),d&&(p||c)?[(0,_vue.h)("div",{class:"vxe-button--dropdown-wrapper",onMousedown:W,onClick:H},s&&!p?[]:y({}))]:[])])])):l?(0,_vue.h)((0,_vue.resolveComponent)("router-link"),{ref:I,class:["vxe-button","vxe-button--link","type--"+b,n?"align--"+n:"",t?_xeUtils.default.isFunction(t)?t({$button:z}):t:"",{["size--"+O]:O,["theme--"+g]:g,"is--round":m,"is--circle":f,"is--disabled":h||v,"is--loading":v}],title:u,name:r,type:_?a:"button",disabled:h||v,to:l,onClick:D,onMouseenter:q,onMouseleave:F},{default(){return Y()}}):(0,_vue.h)("button",{ref:I,class:["vxe-button","type--"+b,n?"align--"+n:"",t?_xeUtils.default.isFunction(t)?t({$button:z}):t:"",{["size--"+O]:O,["theme--"+g]:g,"is--round":m,"is--circle":f,"is--disabled":h||v,"is--loading":v}],title:u,name:r,type:_?a:"button",disabled:h||v,onClick:D,onMouseenter:q,onMouseleave:F},Y()):(0,_vue.createCommentVNode)()},(0,_vue.onMounted)(()=>{"development"===process.env.NODE_ENV&&"text"===N.type&&(0,_log.warnLog)("vxe.error.delProp",["type=text","mode=text"]),_ui.globalEvents.on(z,"mousewheel",f),_ui.globalEvents.on(z,"mousedown",x)}),(0,_vue.onUnmounted)(()=>{_ui.globalEvents.off(z,"mousewheel"),_ui.globalEvents.off(z,"mousedown")}),z},render(){return this.renderVN()}});
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_dom=require("../../ui/src/dom"),_utils=require("../../ui/src/utils"),_log=require("../../ui/src/log"),_tooltip=_interopRequireDefault(require("../../tooltip/src/tooltip"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var _default=exports.default=(0,_vue.defineComponent)({name:"VxeButton",props:{type:String,mode:String,className:[String,Function],popupClassName:[String,Function],size:{type:String,default:()=>(0,_ui.getConfig)().button.size||(0,_ui.getConfig)().size},name:[String,Number],routerLink:Object,permissionCode:[String,Number],content:String,placement:String,status:String,title:String,icon:String,round:Boolean,circle:Boolean,disabled:Boolean,loading:Boolean,trigger:{type:String,default:()=>(0,_ui.getConfig)().button.trigger},align:String,prefixTooltip:Object,suffixTooltip:Object,destroyOnClose:{type:Boolean,default:()=>(0,_ui.getConfig)().button.destroyOnClose},transfer:{type:Boolean,default:null}},emits:["click","mouseenter","mouseleave","dropdown-click"],setup(N,e){const{slots:k,emit:n}=e,i=(0,_vue.inject)("$xeModal",null),o=(0,_vue.inject)("$xeDrawer",null),u=(0,_vue.inject)("$xeTable",null),l=(0,_vue.inject)("$xeForm",null),a=(0,_vue.inject)("$xeButtonGroup",null);var t=_xeUtils.default.uniqueId();const P=(0,_ui.useSize)(N)["computeSize"],C=(0,_ui.usePermission)(N)["computePermissionInfo"],w=(0,_vue.reactive)({initialized:!1,visiblePanel:!1,isAniVisible:!1,isActivated:!1,panelIndex:0,panelStyle:{},panelPlacement:""}),s={showTime:void 0,tooltipTimeout:void 0},S=(0,_vue.ref)(),I=(0,_vue.ref)(),j=(0,_vue.ref)(),r={refElem:S},z={xID:t,props:N,context:e,reactData:w,internalData:s,getRefMaps:()=>r};const M=(0,_vue.computed)(()=>{var e=N["transfer"];if(null===e){var t=(0,_ui.getConfig)().button.transfer;if(_xeUtils.default.isBoolean(t))return t;if(u||i||o||l)return!0}return e}),$=(0,_vue.computed)(()=>{var e=N["disabled"],t=C.value;return e||t.disabled}),E=(0,_vue.computed)(()=>{var e=N["type"];return!!e&&-1<["submit","reset","button"].indexOf(e)}),U=(0,_vue.computed)(()=>{var{type:e,mode:t}=N;return"text"===t||"text"===e||a&&"text"===a.props.mode?"text":"button"}),A=(0,_vue.computed)(()=>{var e=N["status"];return e||(a?a.props.status:"")}),B=(0,_vue.computed)(()=>{var e=N["align"];return e||!!a&&a.props.align}),R=(0,_vue.computed)(()=>{var e=N["round"];return e||!!a&&a.props.round}),W=(0,_vue.computed)(()=>{var e=N["circle"];return e||!!a&&a.props.circle}),b=(0,_vue.computed)(()=>Object.assign({},N.prefixTooltip)),g=(0,_vue.computed)(()=>Object.assign({},N.suffixTooltip)),m=()=>{w.panelIndex<(0,_utils.getLastZIndex)()&&(w.panelIndex=(0,_utils.nextZIndex)())},v=()=>(0,_vue.nextTick)().then(()=>{var n=N["placement"],o=w["panelIndex"],u=I.value,l=j.value,e=M.value;if(l&&u){var a=u.offsetHeight,s=u.offsetWidth,r=l.offsetHeight,l=l.offsetWidth,o={zIndex:o},{top:u,left:v,boundingTop:d,visibleHeight:c,visibleWidth:p}=(0,_dom.getAbsolutePos)(u);let i="bottom";if(e){let e=v+s-l,t=u+a;"top"===n?(i="top",t=u-r):n||(c<d+a+r+5&&(i="top",t=u-r),t<5&&(i="bottom",t=u+a)),e+l+5>p&&(e-=e+l+5-p),e<5&&(e=5),Object.assign(o,{left:e+"px",right:"auto",top:t+"px",minWidth:s+"px"})}else"top"===n?(i="top",o.bottom=a+"px"):n||c<d+a+r&&5<d-a-r&&(i="top",o.bottom=a+"px");return w.panelStyle=o,w.panelPlacement=i,(0,_vue.nextTick)()}}),D=e=>{a&&a.handleClick({name:N.name},e),_("click",{$event:e},e)},H=e=>{0===e.button&&e.stopPropagation()},G=e=>{var t=e.currentTarget;const i=j.value;var{flag:t,targetElem:n}=(0,_dom.getEventTargetNode)(e,t,"vxe-button");t&&(i&&(i.dataset.active="N"),w.visiblePanel=!1,setTimeout(()=>{i&&"Y"===i.dataset.active||(w.isAniVisible=!1)},350),_("dropdown-click",{name:n.getAttribute("name"),$event:e},e))},V=()=>{const e=j.value;e&&(e.dataset.active="Y",w.isAniVisible=!0,setTimeout(()=>{"Y"===e.dataset.active&&(w.visiblePanel=!0,m(),v(),setTimeout(()=>{w.visiblePanel&&v()},50))},20))},Z=e=>{var t=N["loading"];$.value||t||(d(),q(e))},J=e=>{c(),F(e)},q=e=>{_("mouseenter",{},e)},F=e=>{_("mouseleave",{},e)},L=e=>{var{loading:t,trigger:i}=N;$.value||t||("click"===i&&(w.visiblePanel?c:d)(),D(e))},d=()=>{var e=N["trigger"];const t=j.value;return t&&(t.dataset.active="Y",w.initialized||(w.initialized=!0),s.showTime=setTimeout(()=>{"Y"===t.dataset.active?V():w.isAniVisible=!1},"click"===e?50:250)),(0,_vue.nextTick)()},c=()=>{const e=j.value;return clearTimeout(s.showTime),e?(e.dataset.active="N",setTimeout(()=>{"Y"!==e.dataset.active&&(w.visiblePanel=!1,setTimeout(()=>{"Y"!==e.dataset.active&&(w.isAniVisible=!1)},350))},100)):(w.isAniVisible=!1,w.visiblePanel=!1),(0,_vue.nextTick)()},K=()=>{c()},p=(e,t)=>(0,_vue.h)(_tooltip.default,{useHTML:e.useHTML,content:e.content,enterable:e.enterable,theme:e.theme},{default(){return(0,_vue.h)("i",{class:[`vxe-button--tooltip-${t}-icon`,e.icon||(0,_ui.getIcon)().BUTTON_TOOLTIP_ICON]})}}),Y=()=>{var{content:e,icon:t,loading:i,prefixTooltip:n,suffixTooltip:o}=N,u=b.value,l=g.value,a=k.icon,s=k.default,r=[];return n&&r.push(p(u,"prefix")),i?r.push((0,_vue.h)("i",{class:["vxe-button--loading-icon",(0,_ui.getIcon)().BUTTON_LOADING]})):a?r.push((0,_vue.h)("span",{class:"vxe-button--custom-icon"},a({}))):t&&r.push((0,_vue.h)("i",{class:["vxe-button--icon",t]})),s?r.push((0,_vue.h)("span",{class:"vxe-button--content"},s({}))):e&&r.push((0,_vue.h)("span",{class:"vxe-button--content"},(0,_utils.getFuncText)(e))),o&&r.push(p(l,"suffix")),r},_=(e,t,i)=>{n(e,(0,_ui.createEvent)(i,{$button:z},t))},f=(t={dispatchEvent:_,openPanel:d,closePanel:c,focus(){var e=I.value;return e&&e.focus(),(0,_vue.nextTick)()},blur(){var e=I.value;return e&&e.blur(),(0,_vue.nextTick)()}},e=>{var t=j.value;w.visiblePanel&&!(0,_dom.getEventTargetNode)(e,t).flag&&c()}),x=e=>{var t,i=$.value,n=w["visiblePanel"];i||(i=S.value,t=j.value,w.isActivated=(0,_dom.getEventTargetNode)(e,i).flag||(0,_dom.getEventTargetNode)(e,t).flag,n&&!w.isActivated&&c())};Object.assign(z,t);return z.renderVN=()=>{var e,{className:t,popupClassName:i,trigger:n,title:o,routerLink:u,type:l,destroyOnClose:a,name:s,loading:r}=N,{initialized:v,isAniVisible:d,visiblePanel:c}=w,p=E.value,_=U.value,b=A.value,g=R.value,m=B.value,f=W.value,x=M.value,h=$.value,T=C.value,O=P.value,y=k.dropdowns;return T.visible?y?(T={},e={},"hover"===n&&(T.onMouseenter=Z,T.onMouseleave=J,e.onMouseenter=V,e.onMouseleave=K),(0,_vue.h)("div",{ref:S,class:["vxe-button--dropdown",t?_xeUtils.default.isFunction(t)?t({$button:z}):t:"",{["size--"+O]:O,"is--active":c}]},[u?(0,_vue.h)((0,_vue.resolveComponent)("router-link"),Object.assign({ref:I,class:["vxe-button","vxe-button--link","type--"+_,m?"align--"+m:"",t?_xeUtils.default.isFunction(t)?t({$button:z}):t:"",{["size--"+O]:O,["theme--"+b]:b,"is--round":g,"is--circle":f,"is--disabled":h||r,"is--loading":r}],title:o,name:s,type:p?l:"button",disabled:h||r,to:u,onClick:L},T),{default(){return Y().concat([(0,_vue.h)("i",{class:"vxe-button--dropdown-arrow "+(0,_ui.getIcon)().BUTTON_DROPDOWN})])}}):(0,_vue.h)("button",Object.assign({ref:I,class:["vxe-button","type--"+_,m?"align--"+m:"",t?_xeUtils.default.isFunction(t)?t({$button:z}):t:"",{["size--"+O]:O,["theme--"+b]:b,"is--round":g,"is--circle":f,"is--disabled":h||r,"is--loading":r}],title:o,name:s,type:p?l:"button",disabled:h||r,onClick:L},T),Y().concat([(0,_vue.h)("i",{class:"vxe-button--dropdown-arrow "+(0,_ui.getIcon)().BUTTON_DROPDOWN})])),(0,_vue.h)(_vue.Teleport,{to:"body",disabled:!x||!v},[(0,_vue.h)("div",Object.assign({ref:j,class:["vxe-button--dropdown-panel",i?_xeUtils.default.isFunction(i)?i({$button:z}):i:"",{["size--"+O]:O,"ani--leave":d,"ani--enter":c}],placement:w.panelPlacement,style:w.panelStyle},e),v&&(c||d)?[(0,_vue.h)("div",{class:"vxe-button--dropdown-wrapper",onMousedown:H,onClick:G},a&&!c?[]:y({}))]:[])])])):u?(0,_vue.h)((0,_vue.resolveComponent)("router-link"),{ref:I,class:["vxe-button","vxe-button--link","type--"+_,m?"align--"+m:"",t?_xeUtils.default.isFunction(t)?t({$button:z}):t:"",{["size--"+O]:O,["theme--"+b]:b,"is--round":g,"is--circle":f,"is--disabled":h||r,"is--loading":r}],title:o,name:s,type:p?l:"button",disabled:h||r,to:u,onClick:D,onMouseenter:q,onMouseleave:F},{default(){return Y()}}):(0,_vue.h)("button",{ref:I,class:["vxe-button","type--"+_,m?"align--"+m:"",t?_xeUtils.default.isFunction(t)?t({$button:z}):t:"",{["size--"+O]:O,["theme--"+b]:b,"is--round":g,"is--circle":f,"is--disabled":h||r,"is--loading":r}],title:o,name:s,type:p?l:"button",disabled:h||r,onClick:D,onMouseenter:q,onMouseleave:F},Y()):(0,_vue.createCommentVNode)()},(0,_vue.onMounted)(()=>{"development"===process.env.NODE_ENV&&"text"===N.type&&(0,_log.warnLog)("vxe.error.delProp",["type=text","mode=text"]),_ui.globalEvents.on(z,"mousewheel",f),_ui.globalEvents.on(z,"mousedown",x)}),(0,_vue.onUnmounted)(()=>{_ui.globalEvents.off(z,"mousewheel"),_ui.globalEvents.off(z,"mousedown")}),z},render(){return this.renderVN()}});
@@ -443,6 +443,10 @@
443
443
  margin-left: 0.72em;
444
444
  }
445
445
 
446
+ .vxe-button--dropdown + .vxe-button-wrapper, .vxe-button--dropdown + .vxe-button.type--button, .vxe-button--dropdown + .vxe-button--dropdown {
447
+ margin-left: 0.72em;
448
+ }
449
+
446
450
  .vxe-button--loading-icon,
447
451
  .vxe-button--icon {
448
452
  min-width: var(--vxe-ui-font-size-default);
@@ -469,9 +473,6 @@
469
473
  position: relative;
470
474
  outline: 0;
471
475
  }
472
- .vxe-button--dropdown + .vxe-button-wrapper, .vxe-button--dropdown + .vxe-button.type--button, .vxe-button--dropdown + .vxe-button--dropdown {
473
- margin-left: 12px;
474
- }
475
476
  .vxe-button--dropdown > .vxe-button.type--button.theme--primary {
476
477
  color: #fff;
477
478
  }
@@ -1 +1 @@
1
- .vxe-button{display:inline-flex;flex-direction:row;align-items:center;justify-content:center;vertical-align:middle;position:relative;background-color:var(--vxe-ui-layout-background-color);outline:0;font-size:var(--vxe-ui-font-size-default);max-width:var(--vxe-ui-button-max-width);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;transition:border .2s ease-in-out}.vxe-button.align--left{justify-content:left}.vxe-button.align--center{justify-content:center}.vxe-button.align--right{justify-content:right}.vxe-button:not(.is--disabled){color:var(--vxe-ui-font-color);cursor:pointer}.vxe-button.is--loading{cursor:progress}.vxe-button.is--loading:before{content:"";position:absolute;left:-1px;top:-1px;right:-1px;bottom:-1px;border-radius:inherit;background-color:hsla(0,0%,100%,.35);pointer-events:none}.vxe-button.is--disabled{color:var(--vxe-ui-font-disabled-color)}.vxe-button.is--disabled:not(.is--loading){cursor:no-drop}.vxe-button.type--text{text-decoration:none;border:0;padding:.1em .5em;background-color:transparent;text-decoration:none}.vxe-button.type--text:not(.is--disabled):focus{color:var(--vxe-ui-font-darken-color)}.vxe-button.type--text:not(.is--disabled):hover{color:var(--vxe-ui-font-primary-lighten-color)}.vxe-button.type--text:not(.is--disabled):active{color:var(--vxe-ui-font-primary-darken-color)}.vxe-button.type--text.theme--primary{color:var(--vxe-ui-font-primary-color)}.vxe-button.type--text.theme--primary:not(.is--disabled):focus{color:var(--vxe-ui-font-primary-darken-color)}.vxe-button.type--text.theme--primary:not(.is--disabled):hover{color:var(--vxe-ui-font-primary-lighten-color)}.vxe-button.type--text.theme--primary:not(.is--disabled):active{color:var(--vxe-ui-font-primary-darken-color)}.vxe-button.type--text.theme--primary.is--disabled{color:var(--vxe-ui-font-primary-disabled-color)}.vxe-button.type--text.theme--success{color:var(--vxe-ui-status-success-color)}.vxe-button.type--text.theme--success:not(.is--disabled):focus{color:var(--vxe-ui-status-success-darken-color)}.vxe-button.type--text.theme--success:not(.is--disabled):hover{color:var(--vxe-ui-status-success-lighten-color)}.vxe-button.type--text.theme--success:not(.is--disabled):active{color:var(--vxe-ui-status-success-darken-color)}.vxe-button.type--text.theme--success.is--disabled{color:var(--vxe-ui-status-success-disabled-color)}.vxe-button.type--text.theme--info{color:var(--vxe-ui-status-info-color)}.vxe-button.type--text.theme--info:not(.is--disabled):focus{color:var(--vxe-ui-status-info-darken-color)}.vxe-button.type--text.theme--info:not(.is--disabled):hover{color:var(--vxe-ui-status-info-lighten-color)}.vxe-button.type--text.theme--info:not(.is--disabled):active{color:var(--vxe-ui-status-info-darken-color)}.vxe-button.type--text.theme--info.is--disabled{color:var(--vxe-ui-status-info-disabled-color)}.vxe-button.type--text.theme--warning{color:var(--vxe-ui-status-warning-color)}.vxe-button.type--text.theme--warning:not(.is--disabled):focus{color:var(--vxe-ui-status-warning-darken-color)}.vxe-button.type--text.theme--warning:not(.is--disabled):hover{color:var(--vxe-ui-status-warning-lighten-color)}.vxe-button.type--text.theme--warning:not(.is--disabled):active{color:var(--vxe-ui-status-warning-darken-color)}.vxe-button.type--text.theme--warning.is--disabled{color:var(--vxe-ui-status-warning-disabled-color)}.vxe-button.type--text.theme--danger{color:var(--vxe-ui-status-danger-color)}.vxe-button.type--text.theme--danger:not(.is--disabled):focus{color:var(--vxe-ui-status-danger-darken-color)}.vxe-button.type--text.theme--danger:not(.is--disabled):hover{color:var(--vxe-ui-status-danger-lighten-color)}.vxe-button.type--text.theme--danger:not(.is--disabled):active{color:var(--vxe-ui-status-danger-darken-color)}.vxe-button.type--text.theme--danger.is--disabled{color:var(--vxe-ui-status-danger-disabled-color)}.vxe-button.type--text.theme--error{color:var(--vxe-ui-status-error-color)}.vxe-button.type--text.theme--error:not(.is--disabled):focus{color:var(--vxe-ui-status-error-darken-color)}.vxe-button.type--text.theme--error:not(.is--disabled):hover{color:var(--vxe-ui-status-error-lighten-color)}.vxe-button.type--text.theme--error:not(.is--disabled):active{color:var(--vxe-ui-status-error-darken-color)}.vxe-button.type--text.theme--error.is--disabled{color:var(--vxe-ui-status-error-disabled-color)}.vxe-button.type--text.theme--perfect{color:var(--vxe-ui-table-header-background-color)}.vxe-button.type--text.theme--perfect:not(.is--disabled):focus{color:var(--vxe-ui-table-header-background-color)}.vxe-button.type--text.theme--perfect:not(.is--disabled):hover{color:var(--vxe-ui-table-header-background-color)}.vxe-button.type--text.theme--perfect:not(.is--disabled):active{color:var(--vxe-ui-table-header-background-color)}.vxe-button.type--text.theme--perfect.is--disabled{color:var(--vxe-ui-table-header-background-color)}.vxe-button.type--button{font-family:inherit;height:var(--vxe-ui-button-height-default);line-height:1;border:1px solid var(--vxe-ui-input-border-color);text-decoration:none}.vxe-button.type--button.is--round{border-radius:var(--vxe-ui-button-round-border-radius-default)}.vxe-button.type--button:not(.is--round){border-radius:var(--vxe-ui-base-border-radius)}.vxe-button.type--button.is--circle{padding:0 .5em;text-align:center;justify-content:center;min-width:var(--vxe-ui-button-height-default);border-radius:50%}.vxe-button.type--button:not(.is--circle){padding:0 1em}.vxe-button.type--button:not(.is--disabled):hover{color:var(--vxe-ui-font-primary-lighten-color)}.vxe-button.type--button:not(.is--disabled):focus{border-color:var(--vxe-ui-font-primary-color)}.vxe-button.type--button:not(.is--disabled):active{color:var(--vxe-ui-font-primary-darken-color);border-color:var(--vxe-ui-font-primary-darken-color);background-color:var(--vxe-ui-layout-background-color)}.vxe-button.type--button.theme--primary{color:#fff}.vxe-button.type--button.theme--primary:not(.is--disabled){border-color:var(--vxe-ui-font-primary-color);background-color:var(--vxe-ui-font-primary-color)}.vxe-button.type--button.theme--primary:not(.is--disabled):hover{color:#fff;background-color:var(--vxe-ui-font-primary-lighten-color);border-color:var(--vxe-ui-font-primary-lighten-color)}.vxe-button.type--button.theme--primary:not(.is--disabled):active{color:#fff;background-color:var(--vxe-ui-font-primary-darken-color);border-color:var(--vxe-ui-font-primary-darken-color)}.vxe-button.type--button.theme--primary.is--disabled{border-color:var(--vxe-ui-font-primary-disabled-color);background-color:var(--vxe-ui-font-primary-disabled-color)}.vxe-button.type--button.theme--primary.is--loading{border-color:var(--vxe-ui-font-primary-color);background-color:var(--vxe-ui-font-primary-color)}.vxe-button.type--button.theme--success{color:#fff}.vxe-button.type--button.theme--success:not(.is--disabled){border-color:var(--vxe-ui-status-success-color);background-color:var(--vxe-ui-status-success-color)}.vxe-button.type--button.theme--success:not(.is--disabled):hover{color:#fff;background-color:var(--vxe-ui-status-success-lighten-color);border-color:var(--vxe-ui-status-success-lighten-color)}.vxe-button.type--button.theme--success:not(.is--disabled):active{color:#fff;background-color:var(--vxe-ui-status-success-darken-color);border-color:var(--vxe-ui-status-success-darken-color)}.vxe-button.type--button.theme--success.is--disabled{border-color:var(--vxe-ui-status-success-disabled-color);background-color:var(--vxe-ui-status-success-disabled-color)}.vxe-button.type--button.theme--success.is--loading{border-color:var(--vxe-ui-status-success-color);background-color:var(--vxe-ui-status-success-color)}.vxe-button.type--button.theme--info{color:#fff}.vxe-button.type--button.theme--info:not(.is--disabled){border-color:var(--vxe-ui-status-info-color);background-color:var(--vxe-ui-status-info-color)}.vxe-button.type--button.theme--info:not(.is--disabled):hover{color:#fff;background-color:var(--vxe-ui-status-info-lighten-color);border-color:var(--vxe-ui-status-info-lighten-color)}.vxe-button.type--button.theme--info:not(.is--disabled):active{color:#fff;background-color:var(--vxe-ui-status-info-darken-color);border-color:var(--vxe-ui-status-info-darken-color)}.vxe-button.type--button.theme--info.is--disabled{border-color:var(--vxe-ui-status-info-disabled-color);background-color:var(--vxe-ui-status-info-disabled-color)}.vxe-button.type--button.theme--info.is--loading{border-color:var(--vxe-ui-status-info-color);background-color:var(--vxe-ui-status-info-color)}.vxe-button.type--button.theme--warning{color:#fff}.vxe-button.type--button.theme--warning:not(.is--disabled){border-color:var(--vxe-ui-status-warning-color);background-color:var(--vxe-ui-status-warning-color)}.vxe-button.type--button.theme--warning:not(.is--disabled):hover{color:#fff;background-color:var(--vxe-ui-status-warning-lighten-color);border-color:var(--vxe-ui-status-warning-lighten-color)}.vxe-button.type--button.theme--warning:not(.is--disabled):active{color:#fff;background-color:var(--vxe-ui-status-warning-darken-color);border-color:var(--vxe-ui-status-warning-darken-color)}.vxe-button.type--button.theme--warning.is--disabled{border-color:var(--vxe-ui-status-warning-disabled-color);background-color:var(--vxe-ui-status-warning-disabled-color)}.vxe-button.type--button.theme--warning.is--loading{border-color:var(--vxe-ui-status-warning-color);background-color:var(--vxe-ui-status-warning-color)}.vxe-button.type--button.theme--danger{color:#fff}.vxe-button.type--button.theme--danger:not(.is--disabled){border-color:var(--vxe-ui-status-danger-color);background-color:var(--vxe-ui-status-danger-color)}.vxe-button.type--button.theme--danger:not(.is--disabled):hover{color:#fff;background-color:var(--vxe-ui-status-danger-lighten-color);border-color:var(--vxe-ui-status-danger-lighten-color)}.vxe-button.type--button.theme--danger:not(.is--disabled):active{color:#fff;background-color:var(--vxe-ui-status-danger-darken-color);border-color:var(--vxe-ui-status-danger-darken-color)}.vxe-button.type--button.theme--danger.is--disabled{border-color:var(--vxe-ui-status-danger-disabled-color);background-color:var(--vxe-ui-status-danger-disabled-color)}.vxe-button.type--button.theme--danger.is--loading{border-color:var(--vxe-ui-status-danger-color);background-color:var(--vxe-ui-status-danger-color)}.vxe-button.type--button.theme--error{color:#fff}.vxe-button.type--button.theme--error:not(.is--disabled){border-color:var(--vxe-ui-status-error-color);background-color:var(--vxe-ui-status-error-color)}.vxe-button.type--button.theme--error:not(.is--disabled):hover{color:#fff;background-color:var(--vxe-ui-status-error-lighten-color);border-color:var(--vxe-ui-status-error-lighten-color)}.vxe-button.type--button.theme--error:not(.is--disabled):active{color:#fff;background-color:var(--vxe-ui-status-error-darken-color);border-color:var(--vxe-ui-status-error-darken-color)}.vxe-button.type--button.theme--error.is--disabled{border-color:var(--vxe-ui-status-error-disabled-color);background-color:var(--vxe-ui-status-error-disabled-color)}.vxe-button.type--button.theme--error.is--loading{border-color:var(--vxe-ui-status-error-color);background-color:var(--vxe-ui-status-error-color)}.vxe-button.type--button.theme--perfect{color:var(--vxe-ui-font-color)}.vxe-button.type--button.theme--perfect:not(.is--disabled){border-color:var(--vxe-ui-table-header-background-color);background-color:var(--vxe-ui-table-header-background-color)}.vxe-button.type--button.theme--perfect:not(.is--disabled):hover{color:var(--vxe-ui-font-color);background-color:var(--vxe-ui-table-header-background-color);border-color:var(--vxe-ui-table-header-background-color)}.vxe-button.type--button.theme--perfect:not(.is--disabled):active{color:var(--vxe-ui-font-color);background-color:var(--vxe-ui-table-header-background-color);border-color:var(--vxe-ui-table-header-background-color)}.vxe-button.type--button.theme--perfect.is--disabled{border-color:var(--vxe-ui-table-header-background-color);background-color:var(--vxe-ui-table-header-background-color)}.vxe-button.type--button.theme--perfect.is--loading{border-color:var(--vxe-ui-table-header-background-color);background-color:var(--vxe-ui-table-header-background-color)}.vxe-button.size--medium{font-size:var(--vxe-ui-font-size-medium)}.vxe-button.size--medium.type--button{height:var(--vxe-ui-button-height-medium)}.vxe-button.size--medium.type--button.is--circle{min-width:var(--vxe-ui-button-height-medium)}.vxe-button.size--medium.type--button.is--round{border-radius:var(--vxe-ui-button-round-border-radius-medium)}.vxe-button.size--medium .vxe-button--icon,.vxe-button.size--medium .vxe-button--loading-icon{min-width:var(--vxe-ui-font-size-medium)}.vxe-button.size--small{font-size:var(--vxe-ui-font-size-small)}.vxe-button.size--small.type--button{height:var(--vxe-ui-button-height-small)}.vxe-button.size--small.type--button.is--circle{min-width:var(--vxe-ui-button-height-small)}.vxe-button.size--small.type--button.is--round{border-radius:var(--vxe-ui-button-round-border-radius-small)}.vxe-button.size--small .vxe-button--icon,.vxe-button.size--small .vxe-button--loading-icon{min-width:var(--vxe-ui-font-size-small)}.vxe-button.size--mini{font-size:var(--vxe-ui-font-size-mini)}.vxe-button.size--mini.type--button{height:var(--vxe-ui-button-height-mini)}.vxe-button.size--mini.type--button.is--circle{min-width:var(--vxe-ui-button-height-mini)}.vxe-button.size--mini.type--button.is--round{border-radius:var(--vxe-ui-button-round-border-radius-mini)}.vxe-button.size--mini .vxe-button--icon,.vxe-button.size--mini .vxe-button--loading-icon{min-width:var(--vxe-ui-font-size-mini)}.vxe-button+.vxe-button--dropdown,.vxe-button+.vxe-button-wrapper,.vxe-button+.vxe-button.type--button,.vxe-button-wrapper+.vxe-button--dropdown,.vxe-button-wrapper+.vxe-button-wrapper,.vxe-button-wrapper+.vxe-button.type--button,.vxe-input+.vxe-button--dropdown,.vxe-input+.vxe-button-wrapper,.vxe-input+.vxe-button.type--button{margin-left:.72em}.vxe-button--icon,.vxe-button--loading-icon{min-width:var(--vxe-ui-font-size-default)}.vxe-button--icon+.vxe-button--content,.vxe-button--loading-icon+.vxe-button--content{margin-left:.25em}.vxe-button--tooltip-prefix-icon+.vxe-button--content,.vxe-button--tooltip-prefix-icon+.vxe-button--icon,.vxe-button--tooltip-prefix-icon+.vxe-button--loading-icon{padding-left:.25em}.vxe-button--content+.vxe-button--tooltip-suffix-icon{margin-left:.25em}.vxe-button--dropdown,.vxe-button--wrapper{display:inline-block}.vxe-button--dropdown{position:relative;outline:0}.vxe-button--dropdown+.vxe-button--dropdown,.vxe-button--dropdown+.vxe-button-wrapper,.vxe-button--dropdown+.vxe-button.type--button{margin-left:12px}.vxe-button--dropdown>.vxe-button.type--button.theme--primary{color:#fff}.vxe-button--dropdown>.vxe-button.type--button.theme--success{color:#fff}.vxe-button--dropdown>.vxe-button.type--button.theme--info{color:#fff}.vxe-button--dropdown>.vxe-button.type--button.theme--warning{color:#fff}.vxe-button--dropdown>.vxe-button.type--button.theme--danger{color:#fff}.vxe-button--dropdown>.vxe-button.type--button.theme--error{color:#fff}.vxe-button--dropdown>.vxe-button.type--button.theme--perfect{color:var(--vxe-ui-font-color)}.vxe-button--dropdown.is--active>.vxe-button:not(.is--disabled){color:var(--vxe-ui-font-primary-lighten-color)}.vxe-button--dropdown.is--active>.vxe-button.type--text.theme--primary{color:var(--vxe-ui-font-primary-lighten-color)}.vxe-button--dropdown.is--active>.vxe-button.type--text.theme--success{color:var(--vxe-ui-status-success-lighten-color)}.vxe-button--dropdown.is--active>.vxe-button.type--text.theme--info{color:var(--vxe-ui-status-info-lighten-color)}.vxe-button--dropdown.is--active>.vxe-button.type--text.theme--warning{color:var(--vxe-ui-status-warning-lighten-color)}.vxe-button--dropdown.is--active>.vxe-button.type--text.theme--danger{color:var(--vxe-ui-status-danger-lighten-color)}.vxe-button--dropdown.is--active>.vxe-button.type--text.theme--error{color:var(--vxe-ui-status-error-lighten-color)}.vxe-button--dropdown.is--active>.vxe-button.type--text.theme--perfect{color:var(--vxe-ui-table-header-background-color)}.vxe-button--dropdown.is--active>.vxe-button.type--button.theme--primary{color:#fff;background-color:var(--vxe-ui-font-primary-lighten-color);border-color:var(--vxe-ui-font-primary-lighten-color)}.vxe-button--dropdown.is--active>.vxe-button.type--button.theme--success{color:#fff;background-color:var(--vxe-ui-status-success-lighten-color);border-color:var(--vxe-ui-status-success-lighten-color)}.vxe-button--dropdown.is--active>.vxe-button.type--button.theme--info{color:#fff;background-color:var(--vxe-ui-status-info-lighten-color);border-color:var(--vxe-ui-status-info-lighten-color)}.vxe-button--dropdown.is--active>.vxe-button.type--button.theme--warning{color:#fff;background-color:var(--vxe-ui-status-warning-lighten-color);border-color:var(--vxe-ui-status-warning-lighten-color)}.vxe-button--dropdown.is--active>.vxe-button.type--button.theme--danger{color:#fff;background-color:var(--vxe-ui-status-danger-lighten-color);border-color:var(--vxe-ui-status-danger-lighten-color)}.vxe-button--dropdown.is--active>.vxe-button.type--button.theme--error{color:#fff;background-color:var(--vxe-ui-status-error-lighten-color);border-color:var(--vxe-ui-status-error-lighten-color)}.vxe-button--dropdown.is--active>.vxe-button.type--button.theme--perfect{color:var(--vxe-ui-font-color);background-color:var(--vxe-ui-table-header-background-color);border-color:var(--vxe-ui-table-header-background-color)}.vxe-button--dropdown.is--active .vxe-button--dropdown-arrow{transform:rotate(180deg)}.vxe-button--dropdown-arrow{display:inline-block;font-size:12px;margin-left:4px;transition:transform .2s ease-in-out}.vxe-button--dropdown-panel{display:none;position:absolute;right:0;padding:4px 0}.vxe-button--dropdown-panel.ani--leave{display:block;opacity:0;transform:scaleY(.5);transition:transform .3s cubic-bezier(.23,1,.32,1),opacity .3s cubic-bezier(.23,1,.32,1);transform-origin:center top;backface-visibility:hidden;transform-style:preserve-3d}.vxe-button--dropdown-panel.ani--leave[placement=top]{transform-origin:center bottom}.vxe-button--dropdown-panel.ani--enter{opacity:1;transform:scaleY(1)}.vxe-button--dropdown-wrapper{padding:5px;background-color:var(--vxe-ui-layout-background-color);border-radius:var(--vxe-ui-base-border-radius);border:1px solid var(--vxe-ui-input-border-color);box-shadow:0 1px 6px rgba(0,0,0,.2)}.vxe-button--dropdown-wrapper>.vxe-button.type--button,.vxe-button--dropdown-wrapper>.vxe-button.type--text{display:block;width:100%;border:0;margin:.4em 0 0 0}.vxe-button--dropdown-wrapper>.vxe-button.type--text{padding:2px 8px}.vxe-button--dropdown-wrapper>.vxe-button:first-child{margin-top:0}.vxe-button--dropdown-wrapper>.vxe-button:last-child{margin-bottom:0}
1
+ .vxe-button{display:inline-flex;flex-direction:row;align-items:center;justify-content:center;vertical-align:middle;position:relative;background-color:var(--vxe-ui-layout-background-color);outline:0;font-size:var(--vxe-ui-font-size-default);max-width:var(--vxe-ui-button-max-width);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;transition:border .2s ease-in-out}.vxe-button.align--left{justify-content:left}.vxe-button.align--center{justify-content:center}.vxe-button.align--right{justify-content:right}.vxe-button:not(.is--disabled){color:var(--vxe-ui-font-color);cursor:pointer}.vxe-button.is--loading{cursor:progress}.vxe-button.is--loading:before{content:"";position:absolute;left:-1px;top:-1px;right:-1px;bottom:-1px;border-radius:inherit;background-color:hsla(0,0%,100%,.35);pointer-events:none}.vxe-button.is--disabled{color:var(--vxe-ui-font-disabled-color)}.vxe-button.is--disabled:not(.is--loading){cursor:no-drop}.vxe-button.type--text{text-decoration:none;border:0;padding:.1em .5em;background-color:transparent;text-decoration:none}.vxe-button.type--text:not(.is--disabled):focus{color:var(--vxe-ui-font-darken-color)}.vxe-button.type--text:not(.is--disabled):hover{color:var(--vxe-ui-font-primary-lighten-color)}.vxe-button.type--text:not(.is--disabled):active{color:var(--vxe-ui-font-primary-darken-color)}.vxe-button.type--text.theme--primary{color:var(--vxe-ui-font-primary-color)}.vxe-button.type--text.theme--primary:not(.is--disabled):focus{color:var(--vxe-ui-font-primary-darken-color)}.vxe-button.type--text.theme--primary:not(.is--disabled):hover{color:var(--vxe-ui-font-primary-lighten-color)}.vxe-button.type--text.theme--primary:not(.is--disabled):active{color:var(--vxe-ui-font-primary-darken-color)}.vxe-button.type--text.theme--primary.is--disabled{color:var(--vxe-ui-font-primary-disabled-color)}.vxe-button.type--text.theme--success{color:var(--vxe-ui-status-success-color)}.vxe-button.type--text.theme--success:not(.is--disabled):focus{color:var(--vxe-ui-status-success-darken-color)}.vxe-button.type--text.theme--success:not(.is--disabled):hover{color:var(--vxe-ui-status-success-lighten-color)}.vxe-button.type--text.theme--success:not(.is--disabled):active{color:var(--vxe-ui-status-success-darken-color)}.vxe-button.type--text.theme--success.is--disabled{color:var(--vxe-ui-status-success-disabled-color)}.vxe-button.type--text.theme--info{color:var(--vxe-ui-status-info-color)}.vxe-button.type--text.theme--info:not(.is--disabled):focus{color:var(--vxe-ui-status-info-darken-color)}.vxe-button.type--text.theme--info:not(.is--disabled):hover{color:var(--vxe-ui-status-info-lighten-color)}.vxe-button.type--text.theme--info:not(.is--disabled):active{color:var(--vxe-ui-status-info-darken-color)}.vxe-button.type--text.theme--info.is--disabled{color:var(--vxe-ui-status-info-disabled-color)}.vxe-button.type--text.theme--warning{color:var(--vxe-ui-status-warning-color)}.vxe-button.type--text.theme--warning:not(.is--disabled):focus{color:var(--vxe-ui-status-warning-darken-color)}.vxe-button.type--text.theme--warning:not(.is--disabled):hover{color:var(--vxe-ui-status-warning-lighten-color)}.vxe-button.type--text.theme--warning:not(.is--disabled):active{color:var(--vxe-ui-status-warning-darken-color)}.vxe-button.type--text.theme--warning.is--disabled{color:var(--vxe-ui-status-warning-disabled-color)}.vxe-button.type--text.theme--danger{color:var(--vxe-ui-status-danger-color)}.vxe-button.type--text.theme--danger:not(.is--disabled):focus{color:var(--vxe-ui-status-danger-darken-color)}.vxe-button.type--text.theme--danger:not(.is--disabled):hover{color:var(--vxe-ui-status-danger-lighten-color)}.vxe-button.type--text.theme--danger:not(.is--disabled):active{color:var(--vxe-ui-status-danger-darken-color)}.vxe-button.type--text.theme--danger.is--disabled{color:var(--vxe-ui-status-danger-disabled-color)}.vxe-button.type--text.theme--error{color:var(--vxe-ui-status-error-color)}.vxe-button.type--text.theme--error:not(.is--disabled):focus{color:var(--vxe-ui-status-error-darken-color)}.vxe-button.type--text.theme--error:not(.is--disabled):hover{color:var(--vxe-ui-status-error-lighten-color)}.vxe-button.type--text.theme--error:not(.is--disabled):active{color:var(--vxe-ui-status-error-darken-color)}.vxe-button.type--text.theme--error.is--disabled{color:var(--vxe-ui-status-error-disabled-color)}.vxe-button.type--text.theme--perfect{color:var(--vxe-ui-table-header-background-color)}.vxe-button.type--text.theme--perfect:not(.is--disabled):focus{color:var(--vxe-ui-table-header-background-color)}.vxe-button.type--text.theme--perfect:not(.is--disabled):hover{color:var(--vxe-ui-table-header-background-color)}.vxe-button.type--text.theme--perfect:not(.is--disabled):active{color:var(--vxe-ui-table-header-background-color)}.vxe-button.type--text.theme--perfect.is--disabled{color:var(--vxe-ui-table-header-background-color)}.vxe-button.type--button{font-family:inherit;height:var(--vxe-ui-button-height-default);line-height:1;border:1px solid var(--vxe-ui-input-border-color);text-decoration:none}.vxe-button.type--button.is--round{border-radius:var(--vxe-ui-button-round-border-radius-default)}.vxe-button.type--button:not(.is--round){border-radius:var(--vxe-ui-base-border-radius)}.vxe-button.type--button.is--circle{padding:0 .5em;text-align:center;justify-content:center;min-width:var(--vxe-ui-button-height-default);border-radius:50%}.vxe-button.type--button:not(.is--circle){padding:0 1em}.vxe-button.type--button:not(.is--disabled):hover{color:var(--vxe-ui-font-primary-lighten-color)}.vxe-button.type--button:not(.is--disabled):focus{border-color:var(--vxe-ui-font-primary-color)}.vxe-button.type--button:not(.is--disabled):active{color:var(--vxe-ui-font-primary-darken-color);border-color:var(--vxe-ui-font-primary-darken-color);background-color:var(--vxe-ui-layout-background-color)}.vxe-button.type--button.theme--primary{color:#fff}.vxe-button.type--button.theme--primary:not(.is--disabled){border-color:var(--vxe-ui-font-primary-color);background-color:var(--vxe-ui-font-primary-color)}.vxe-button.type--button.theme--primary:not(.is--disabled):hover{color:#fff;background-color:var(--vxe-ui-font-primary-lighten-color);border-color:var(--vxe-ui-font-primary-lighten-color)}.vxe-button.type--button.theme--primary:not(.is--disabled):active{color:#fff;background-color:var(--vxe-ui-font-primary-darken-color);border-color:var(--vxe-ui-font-primary-darken-color)}.vxe-button.type--button.theme--primary.is--disabled{border-color:var(--vxe-ui-font-primary-disabled-color);background-color:var(--vxe-ui-font-primary-disabled-color)}.vxe-button.type--button.theme--primary.is--loading{border-color:var(--vxe-ui-font-primary-color);background-color:var(--vxe-ui-font-primary-color)}.vxe-button.type--button.theme--success{color:#fff}.vxe-button.type--button.theme--success:not(.is--disabled){border-color:var(--vxe-ui-status-success-color);background-color:var(--vxe-ui-status-success-color)}.vxe-button.type--button.theme--success:not(.is--disabled):hover{color:#fff;background-color:var(--vxe-ui-status-success-lighten-color);border-color:var(--vxe-ui-status-success-lighten-color)}.vxe-button.type--button.theme--success:not(.is--disabled):active{color:#fff;background-color:var(--vxe-ui-status-success-darken-color);border-color:var(--vxe-ui-status-success-darken-color)}.vxe-button.type--button.theme--success.is--disabled{border-color:var(--vxe-ui-status-success-disabled-color);background-color:var(--vxe-ui-status-success-disabled-color)}.vxe-button.type--button.theme--success.is--loading{border-color:var(--vxe-ui-status-success-color);background-color:var(--vxe-ui-status-success-color)}.vxe-button.type--button.theme--info{color:#fff}.vxe-button.type--button.theme--info:not(.is--disabled){border-color:var(--vxe-ui-status-info-color);background-color:var(--vxe-ui-status-info-color)}.vxe-button.type--button.theme--info:not(.is--disabled):hover{color:#fff;background-color:var(--vxe-ui-status-info-lighten-color);border-color:var(--vxe-ui-status-info-lighten-color)}.vxe-button.type--button.theme--info:not(.is--disabled):active{color:#fff;background-color:var(--vxe-ui-status-info-darken-color);border-color:var(--vxe-ui-status-info-darken-color)}.vxe-button.type--button.theme--info.is--disabled{border-color:var(--vxe-ui-status-info-disabled-color);background-color:var(--vxe-ui-status-info-disabled-color)}.vxe-button.type--button.theme--info.is--loading{border-color:var(--vxe-ui-status-info-color);background-color:var(--vxe-ui-status-info-color)}.vxe-button.type--button.theme--warning{color:#fff}.vxe-button.type--button.theme--warning:not(.is--disabled){border-color:var(--vxe-ui-status-warning-color);background-color:var(--vxe-ui-status-warning-color)}.vxe-button.type--button.theme--warning:not(.is--disabled):hover{color:#fff;background-color:var(--vxe-ui-status-warning-lighten-color);border-color:var(--vxe-ui-status-warning-lighten-color)}.vxe-button.type--button.theme--warning:not(.is--disabled):active{color:#fff;background-color:var(--vxe-ui-status-warning-darken-color);border-color:var(--vxe-ui-status-warning-darken-color)}.vxe-button.type--button.theme--warning.is--disabled{border-color:var(--vxe-ui-status-warning-disabled-color);background-color:var(--vxe-ui-status-warning-disabled-color)}.vxe-button.type--button.theme--warning.is--loading{border-color:var(--vxe-ui-status-warning-color);background-color:var(--vxe-ui-status-warning-color)}.vxe-button.type--button.theme--danger{color:#fff}.vxe-button.type--button.theme--danger:not(.is--disabled){border-color:var(--vxe-ui-status-danger-color);background-color:var(--vxe-ui-status-danger-color)}.vxe-button.type--button.theme--danger:not(.is--disabled):hover{color:#fff;background-color:var(--vxe-ui-status-danger-lighten-color);border-color:var(--vxe-ui-status-danger-lighten-color)}.vxe-button.type--button.theme--danger:not(.is--disabled):active{color:#fff;background-color:var(--vxe-ui-status-danger-darken-color);border-color:var(--vxe-ui-status-danger-darken-color)}.vxe-button.type--button.theme--danger.is--disabled{border-color:var(--vxe-ui-status-danger-disabled-color);background-color:var(--vxe-ui-status-danger-disabled-color)}.vxe-button.type--button.theme--danger.is--loading{border-color:var(--vxe-ui-status-danger-color);background-color:var(--vxe-ui-status-danger-color)}.vxe-button.type--button.theme--error{color:#fff}.vxe-button.type--button.theme--error:not(.is--disabled){border-color:var(--vxe-ui-status-error-color);background-color:var(--vxe-ui-status-error-color)}.vxe-button.type--button.theme--error:not(.is--disabled):hover{color:#fff;background-color:var(--vxe-ui-status-error-lighten-color);border-color:var(--vxe-ui-status-error-lighten-color)}.vxe-button.type--button.theme--error:not(.is--disabled):active{color:#fff;background-color:var(--vxe-ui-status-error-darken-color);border-color:var(--vxe-ui-status-error-darken-color)}.vxe-button.type--button.theme--error.is--disabled{border-color:var(--vxe-ui-status-error-disabled-color);background-color:var(--vxe-ui-status-error-disabled-color)}.vxe-button.type--button.theme--error.is--loading{border-color:var(--vxe-ui-status-error-color);background-color:var(--vxe-ui-status-error-color)}.vxe-button.type--button.theme--perfect{color:var(--vxe-ui-font-color)}.vxe-button.type--button.theme--perfect:not(.is--disabled){border-color:var(--vxe-ui-table-header-background-color);background-color:var(--vxe-ui-table-header-background-color)}.vxe-button.type--button.theme--perfect:not(.is--disabled):hover{color:var(--vxe-ui-font-color);background-color:var(--vxe-ui-table-header-background-color);border-color:var(--vxe-ui-table-header-background-color)}.vxe-button.type--button.theme--perfect:not(.is--disabled):active{color:var(--vxe-ui-font-color);background-color:var(--vxe-ui-table-header-background-color);border-color:var(--vxe-ui-table-header-background-color)}.vxe-button.type--button.theme--perfect.is--disabled{border-color:var(--vxe-ui-table-header-background-color);background-color:var(--vxe-ui-table-header-background-color)}.vxe-button.type--button.theme--perfect.is--loading{border-color:var(--vxe-ui-table-header-background-color);background-color:var(--vxe-ui-table-header-background-color)}.vxe-button.size--medium{font-size:var(--vxe-ui-font-size-medium)}.vxe-button.size--medium.type--button{height:var(--vxe-ui-button-height-medium)}.vxe-button.size--medium.type--button.is--circle{min-width:var(--vxe-ui-button-height-medium)}.vxe-button.size--medium.type--button.is--round{border-radius:var(--vxe-ui-button-round-border-radius-medium)}.vxe-button.size--medium .vxe-button--icon,.vxe-button.size--medium .vxe-button--loading-icon{min-width:var(--vxe-ui-font-size-medium)}.vxe-button.size--small{font-size:var(--vxe-ui-font-size-small)}.vxe-button.size--small.type--button{height:var(--vxe-ui-button-height-small)}.vxe-button.size--small.type--button.is--circle{min-width:var(--vxe-ui-button-height-small)}.vxe-button.size--small.type--button.is--round{border-radius:var(--vxe-ui-button-round-border-radius-small)}.vxe-button.size--small .vxe-button--icon,.vxe-button.size--small .vxe-button--loading-icon{min-width:var(--vxe-ui-font-size-small)}.vxe-button.size--mini{font-size:var(--vxe-ui-font-size-mini)}.vxe-button.size--mini.type--button{height:var(--vxe-ui-button-height-mini)}.vxe-button.size--mini.type--button.is--circle{min-width:var(--vxe-ui-button-height-mini)}.vxe-button.size--mini.type--button.is--round{border-radius:var(--vxe-ui-button-round-border-radius-mini)}.vxe-button.size--mini .vxe-button--icon,.vxe-button.size--mini .vxe-button--loading-icon{min-width:var(--vxe-ui-font-size-mini)}.vxe-button+.vxe-button--dropdown,.vxe-button+.vxe-button-wrapper,.vxe-button+.vxe-button.type--button,.vxe-button-wrapper+.vxe-button--dropdown,.vxe-button-wrapper+.vxe-button-wrapper,.vxe-button-wrapper+.vxe-button.type--button,.vxe-input+.vxe-button--dropdown,.vxe-input+.vxe-button-wrapper,.vxe-input+.vxe-button.type--button{margin-left:.72em}.vxe-button--dropdown+.vxe-button--dropdown,.vxe-button--dropdown+.vxe-button-wrapper,.vxe-button--dropdown+.vxe-button.type--button{margin-left:.72em}.vxe-button--icon,.vxe-button--loading-icon{min-width:var(--vxe-ui-font-size-default)}.vxe-button--icon+.vxe-button--content,.vxe-button--loading-icon+.vxe-button--content{margin-left:.25em}.vxe-button--tooltip-prefix-icon+.vxe-button--content,.vxe-button--tooltip-prefix-icon+.vxe-button--icon,.vxe-button--tooltip-prefix-icon+.vxe-button--loading-icon{padding-left:.25em}.vxe-button--content+.vxe-button--tooltip-suffix-icon{margin-left:.25em}.vxe-button--dropdown,.vxe-button--wrapper{display:inline-block}.vxe-button--dropdown{position:relative;outline:0}.vxe-button--dropdown>.vxe-button.type--button.theme--primary{color:#fff}.vxe-button--dropdown>.vxe-button.type--button.theme--success{color:#fff}.vxe-button--dropdown>.vxe-button.type--button.theme--info{color:#fff}.vxe-button--dropdown>.vxe-button.type--button.theme--warning{color:#fff}.vxe-button--dropdown>.vxe-button.type--button.theme--danger{color:#fff}.vxe-button--dropdown>.vxe-button.type--button.theme--error{color:#fff}.vxe-button--dropdown>.vxe-button.type--button.theme--perfect{color:var(--vxe-ui-font-color)}.vxe-button--dropdown.is--active>.vxe-button:not(.is--disabled){color:var(--vxe-ui-font-primary-lighten-color)}.vxe-button--dropdown.is--active>.vxe-button.type--text.theme--primary{color:var(--vxe-ui-font-primary-lighten-color)}.vxe-button--dropdown.is--active>.vxe-button.type--text.theme--success{color:var(--vxe-ui-status-success-lighten-color)}.vxe-button--dropdown.is--active>.vxe-button.type--text.theme--info{color:var(--vxe-ui-status-info-lighten-color)}.vxe-button--dropdown.is--active>.vxe-button.type--text.theme--warning{color:var(--vxe-ui-status-warning-lighten-color)}.vxe-button--dropdown.is--active>.vxe-button.type--text.theme--danger{color:var(--vxe-ui-status-danger-lighten-color)}.vxe-button--dropdown.is--active>.vxe-button.type--text.theme--error{color:var(--vxe-ui-status-error-lighten-color)}.vxe-button--dropdown.is--active>.vxe-button.type--text.theme--perfect{color:var(--vxe-ui-table-header-background-color)}.vxe-button--dropdown.is--active>.vxe-button.type--button.theme--primary{color:#fff;background-color:var(--vxe-ui-font-primary-lighten-color);border-color:var(--vxe-ui-font-primary-lighten-color)}.vxe-button--dropdown.is--active>.vxe-button.type--button.theme--success{color:#fff;background-color:var(--vxe-ui-status-success-lighten-color);border-color:var(--vxe-ui-status-success-lighten-color)}.vxe-button--dropdown.is--active>.vxe-button.type--button.theme--info{color:#fff;background-color:var(--vxe-ui-status-info-lighten-color);border-color:var(--vxe-ui-status-info-lighten-color)}.vxe-button--dropdown.is--active>.vxe-button.type--button.theme--warning{color:#fff;background-color:var(--vxe-ui-status-warning-lighten-color);border-color:var(--vxe-ui-status-warning-lighten-color)}.vxe-button--dropdown.is--active>.vxe-button.type--button.theme--danger{color:#fff;background-color:var(--vxe-ui-status-danger-lighten-color);border-color:var(--vxe-ui-status-danger-lighten-color)}.vxe-button--dropdown.is--active>.vxe-button.type--button.theme--error{color:#fff;background-color:var(--vxe-ui-status-error-lighten-color);border-color:var(--vxe-ui-status-error-lighten-color)}.vxe-button--dropdown.is--active>.vxe-button.type--button.theme--perfect{color:var(--vxe-ui-font-color);background-color:var(--vxe-ui-table-header-background-color);border-color:var(--vxe-ui-table-header-background-color)}.vxe-button--dropdown.is--active .vxe-button--dropdown-arrow{transform:rotate(180deg)}.vxe-button--dropdown-arrow{display:inline-block;font-size:12px;margin-left:4px;transition:transform .2s ease-in-out}.vxe-button--dropdown-panel{display:none;position:absolute;right:0;padding:4px 0}.vxe-button--dropdown-panel.ani--leave{display:block;opacity:0;transform:scaleY(.5);transition:transform .3s cubic-bezier(.23,1,.32,1),opacity .3s cubic-bezier(.23,1,.32,1);transform-origin:center top;backface-visibility:hidden;transform-style:preserve-3d}.vxe-button--dropdown-panel.ani--leave[placement=top]{transform-origin:center bottom}.vxe-button--dropdown-panel.ani--enter{opacity:1;transform:scaleY(1)}.vxe-button--dropdown-wrapper{padding:5px;background-color:var(--vxe-ui-layout-background-color);border-radius:var(--vxe-ui-base-border-radius);border:1px solid var(--vxe-ui-input-border-color);box-shadow:0 1px 6px rgba(0,0,0,.2)}.vxe-button--dropdown-wrapper>.vxe-button.type--button,.vxe-button--dropdown-wrapper>.vxe-button.type--text{display:block;width:100%;border:0;margin:.4em 0 0 0}.vxe-button--dropdown-wrapper>.vxe-button.type--text{padding:2px 8px}.vxe-button--dropdown-wrapper>.vxe-button:first-child{margin-top:0}.vxe-button--dropdown-wrapper>.vxe-button:last-child{margin-bottom:0}
@@ -4,6 +4,12 @@
4
4
  .vxe-button-group.is--vertical {
5
5
  flex-direction: column;
6
6
  }
7
- .vxe-button-group.is--vertical .vxe-button {
8
- margin: 0;
7
+ .vxe-button-group.is--vertical .vxe-button + .vxe-button-wrapper, .vxe-button-group.is--vertical .vxe-button + .vxe-button, .vxe-button-group.is--vertical .vxe-button + .vxe-button--dropdown,
8
+ .vxe-button-group.is--vertical .vxe-button-wrapper + .vxe-button-wrapper,
9
+ .vxe-button-group.is--vertical .vxe-button-wrapper + .vxe-button,
10
+ .vxe-button-group.is--vertical .vxe-button-wrapper + .vxe-button--dropdown {
11
+ margin-top: 0.5em;
12
+ }
13
+ .vxe-button-group.is--vertical .vxe-button--dropdown + .vxe-button-wrapper, .vxe-button-group.is--vertical .vxe-button--dropdown + .vxe-button, .vxe-button-group.is--vertical .vxe-button--dropdown + .vxe-button--dropdown {
14
+ margin-top: 0.5em;
9
15
  }
@@ -1 +1 @@
1
- .vxe-button-group{display:inline-flex}.vxe-button-group.is--vertical{flex-direction:column}.vxe-button-group.is--vertical .vxe-button{margin:0}
1
+ .vxe-button-group{display:inline-flex}.vxe-button-group.is--vertical{flex-direction:column}.vxe-button-group.is--vertical .vxe-button+.vxe-button,.vxe-button-group.is--vertical .vxe-button+.vxe-button--dropdown,.vxe-button-group.is--vertical .vxe-button+.vxe-button-wrapper,.vxe-button-group.is--vertical .vxe-button-wrapper+.vxe-button,.vxe-button-group.is--vertical .vxe-button-wrapper+.vxe-button--dropdown,.vxe-button-group.is--vertical .vxe-button-wrapper+.vxe-button-wrapper{margin-top:.5em}.vxe-button-group.is--vertical .vxe-button--dropdown+.vxe-button,.vxe-button-group.is--vertical .vxe-button--dropdown+.vxe-button--dropdown,.vxe-button-group.is--vertical .vxe-button--dropdown+.vxe-button-wrapper{margin-top:.5em}
@@ -11,6 +11,7 @@ var _utils = require("../../ui/src/utils");
11
11
  var _dom = require("../../ui/src/dom");
12
12
  var _util = require("./util");
13
13
  var _vn = require("../..//ui/src/vn");
14
+ var _buttonGroup = _interopRequireDefault(require("../../button/src/button-group"));
14
15
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
15
16
  var _default = exports.default = (0, _vue.defineComponent)({
16
17
  name: 'VxeDatePicker',
@@ -92,6 +93,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
92
93
  type: Boolean,
93
94
  default: null
94
95
  },
96
+ shortcutConfig: Object,
95
97
  // 已废弃 startWeek,被 startDay 替换
96
98
  startWeek: Number,
97
99
  // 已废弃
@@ -99,7 +101,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
99
101
  // 已废弃
100
102
  autocomplete: String
101
103
  },
102
- emits: ['update:modelValue', 'input', 'change', 'keydown', 'keyup', 'wheel', 'click', 'focus', 'blur', 'clear', 'prefix-click', 'suffix-click', 'date-prev', 'date-today', 'date-next'],
104
+ emits: ['update:modelValue', 'input', 'change', 'keydown', 'keyup', 'wheel', 'click', 'focus', 'blur', 'clear', 'prefix-click', 'suffix-click', 'date-prev', 'date-today', 'date-next', 'shortcut-click'],
103
105
  setup(props, context) {
104
106
  const {
105
107
  slots,
@@ -617,6 +619,9 @@ var _default = exports.default = (0, _vue.defineComponent)({
617
619
  } = props;
618
620
  return immediate;
619
621
  });
622
+ const computeShortcutOpts = (0, _vue.computed)(() => {
623
+ return Object.assign({}, (0, _ui.getConfig)().datePicker.shortcutConfig, props.shortcutConfig);
624
+ });
620
625
  const updateModelValue = modelValue => {
621
626
  const {
622
627
  isActivated,
@@ -637,18 +642,25 @@ var _default = exports.default = (0, _vue.defineComponent)({
637
642
  };
638
643
  const parseDate = (value, format) => {
639
644
  const {
640
- type
645
+ type,
646
+ multiple
641
647
  } = props;
642
648
  if (type === 'time') {
643
649
  return (0, _util.toStringTimeDate)(value);
644
650
  }
651
+ if (_xeUtils.default.isArray(value)) {
652
+ return _xeUtils.default.toStringDate(value[0], format);
653
+ }
654
+ if (_xeUtils.default.isString(value)) {
655
+ return _xeUtils.default.toStringDate(multiple ? _xeUtils.default.last(value.split(',')) : value, format);
656
+ }
645
657
  return _xeUtils.default.toStringDate(value, format);
646
658
  };
647
659
  const triggerEvent = evnt => {
648
660
  const {
649
661
  inputValue
650
662
  } = reactData;
651
- datePickerMethods.dispatchEvent(evnt.type, {
663
+ dispatchEvent(evnt.type, {
652
664
  value: inputValue
653
665
  }, evnt);
654
666
  };
@@ -656,7 +668,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
656
668
  reactData.inputValue = value;
657
669
  emit('update:modelValue', value);
658
670
  if (_xeUtils.default.toValueString(props.modelValue) !== value) {
659
- datePickerMethods.dispatchEvent('change', {
671
+ dispatchEvent('change', {
660
672
  value
661
673
  }, evnt);
662
674
  // 自动更新校验状态
@@ -675,7 +687,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
675
687
  if (inpImmediate) {
676
688
  handleChange(value, evnt);
677
689
  } else {
678
- datePickerMethods.dispatchEvent('input', {
690
+ dispatchEvent('input', {
679
691
  value
680
692
  }, evnt);
681
693
  }
@@ -701,7 +713,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
701
713
  const {
702
714
  inputValue
703
715
  } = reactData;
704
- datePickerMethods.dispatchEvent('prefix-click', {
716
+ dispatchEvent('prefix-click', {
705
717
  value: inputValue
706
718
  }, evnt);
707
719
  }
@@ -721,7 +733,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
721
733
  hidePanel();
722
734
  }
723
735
  handleChange('', evnt);
724
- datePickerMethods.dispatchEvent('clear', {
736
+ dispatchEvent('clear', {
725
737
  value
726
738
  }, evnt);
727
739
  };
@@ -731,7 +743,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
731
743
  const {
732
744
  inputValue
733
745
  } = reactData;
734
- datePickerMethods.dispatchEvent('suffix-click', {
746
+ dispatchEvent('suffix-click', {
735
747
  value: inputValue
736
748
  }, evnt);
737
749
  }
@@ -810,7 +822,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
810
822
  reactData.selectMonth = month;
811
823
  }
812
824
  };
813
- const dateChange = date => {
825
+ const dateChange = (date, isReload) => {
814
826
  const {
815
827
  modelValue,
816
828
  multiple
@@ -837,10 +849,9 @@ var _default = exports.default = (0, _vue.defineComponent)({
837
849
  dateCheckMonth(date);
838
850
  if (multiple) {
839
851
  // 如果为多选
840
- const dateMultipleValue = computeDateMultipleValue.value;
841
852
  if (isDateTimeType) {
842
853
  // 如果是datetime特殊类型
843
- const dateListValue = [...computeDateListValue.value];
854
+ const dateListValue = isReload ? [] : [...computeDateListValue.value];
844
855
  const datetimeRest = [];
845
856
  const eqIndex = _xeUtils.default.findIndexOf(dateListValue, val => _xeUtils.default.isDateSame(date, val, 'yyyyMMdd'));
846
857
  if (eqIndex === -1) {
@@ -862,6 +873,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
862
873
  type: 'update'
863
874
  });
864
875
  } else {
876
+ const dateMultipleValue = isReload ? [] : computeDateMultipleValue.value;
865
877
  // 如果是日期类型
866
878
  if (dateMultipleValue.some(val => _xeUtils.default.isEqual(val, inpVal))) {
867
879
  handleChange(dateMultipleValue.filter(val => !_xeUtils.default.isEqual(val, inpVal)).join(','), {
@@ -950,7 +962,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
950
962
  if (!reactData.visiblePanel) {
951
963
  reactData.isActivated = false;
952
964
  }
953
- datePickerMethods.dispatchEvent('blur', {
965
+ dispatchEvent('blur', {
954
966
  value
955
967
  }, evnt);
956
968
  // 自动更新校验状态
@@ -976,7 +988,23 @@ var _default = exports.default = (0, _vue.defineComponent)({
976
988
  reactData.selectMonth = month;
977
989
  };
978
990
  const dateNowHandle = () => {
979
- const currentDate = _xeUtils.default.getWhatDay(Date.now(), 0, 'first');
991
+ const {
992
+ type
993
+ } = props;
994
+ const firstDayOfWeek = computeFirstDayOfWeek.value;
995
+ let currentDate = new Date();
996
+ switch (type) {
997
+ case 'week':
998
+ currentDate = _xeUtils.default.getWhatWeek(currentDate, 0, firstDayOfWeek);
999
+ break;
1000
+ case 'datetime':
1001
+ currentDate = new Date();
1002
+ reactData.datetimePanelValue = new Date();
1003
+ break;
1004
+ default:
1005
+ currentDate = _xeUtils.default.getWhatDay(Date.now(), 0, 'first');
1006
+ break;
1007
+ }
980
1008
  reactData.currentDate = currentDate;
981
1009
  dateMonthHandle(currentDate, 0);
982
1010
  };
@@ -1025,7 +1053,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
1025
1053
  }
1026
1054
  }
1027
1055
  reactData.selectMonth = viewDate;
1028
- datePickerMethods.dispatchEvent('date-prev', {
1056
+ dispatchEvent('date-prev', {
1029
1057
  viewType: datePanelType,
1030
1058
  viewDate,
1031
1059
  value,
@@ -1035,11 +1063,11 @@ var _default = exports.default = (0, _vue.defineComponent)({
1035
1063
  };
1036
1064
  const dateTodayMonthEvent = evnt => {
1037
1065
  dateNowHandle();
1066
+ dateChange(reactData.currentDate, true);
1038
1067
  if (!props.multiple) {
1039
- dateChange(reactData.currentDate);
1040
1068
  hidePanel();
1041
1069
  }
1042
- datePickerMethods.dispatchEvent('date-today', {
1070
+ dispatchEvent('date-today', {
1043
1071
  type: props.type
1044
1072
  }, evnt);
1045
1073
  };
@@ -1077,7 +1105,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
1077
1105
  }
1078
1106
  }
1079
1107
  reactData.selectMonth = viewDate;
1080
- datePickerMethods.dispatchEvent('date-next', {
1108
+ dispatchEvent('date-next', {
1081
1109
  viewType: datePanelType,
1082
1110
  value,
1083
1111
  type
@@ -1361,17 +1389,25 @@ var _default = exports.default = (0, _vue.defineComponent)({
1361
1389
  offsetMonth = _xeUtils.default.getWhatMonth(offsetMonth, 4);
1362
1390
  }
1363
1391
  dateMoveMonth(offsetMonth);
1364
- } else {
1392
+ } else if (datePanelType === 'week') {
1365
1393
  let offsetDay = datePanelValue || _xeUtils.default.getWhatDay(Date.now(), 0, 'first');
1366
1394
  const firstDayOfWeek = computeFirstDayOfWeek.value;
1395
+ if (isUpArrow) {
1396
+ offsetDay = _xeUtils.default.getWhatWeek(offsetDay, -1, firstDayOfWeek);
1397
+ } else if (isDwArrow) {
1398
+ offsetDay = _xeUtils.default.getWhatWeek(offsetDay, 1, firstDayOfWeek);
1399
+ }
1400
+ dateMoveDay(offsetDay);
1401
+ } else {
1402
+ let offsetDay = datePanelValue || _xeUtils.default.getWhatDay(Date.now(), 0, 'first');
1367
1403
  if (isLeftArrow) {
1368
1404
  offsetDay = _xeUtils.default.getWhatDay(offsetDay, -1);
1369
1405
  } else if (isUpArrow) {
1370
- offsetDay = _xeUtils.default.getWhatWeek(offsetDay, -1, firstDayOfWeek);
1406
+ offsetDay = _xeUtils.default.getWhatWeek(offsetDay, -1, offsetDay.getDay());
1371
1407
  } else if (isRightArrow) {
1372
1408
  offsetDay = _xeUtils.default.getWhatDay(offsetDay, 1);
1373
1409
  } else if (isDwArrow) {
1374
- offsetDay = _xeUtils.default.getWhatWeek(offsetDay, 1, firstDayOfWeek);
1410
+ offsetDay = _xeUtils.default.getWhatWeek(offsetDay, 1, offsetDay.getDay());
1375
1411
  }
1376
1412
  dateMoveDay(offsetDay);
1377
1413
  }
@@ -1544,7 +1580,27 @@ var _default = exports.default = (0, _vue.defineComponent)({
1544
1580
  const clickEvent = evnt => {
1545
1581
  triggerEvent(evnt);
1546
1582
  };
1547
- // 弹出面板
1583
+ const handleShortcutEvent = ({
1584
+ option,
1585
+ $event
1586
+ }) => {
1587
+ const shortcutOpts = computeShortcutOpts.value;
1588
+ const {
1589
+ autoClose
1590
+ } = shortcutOpts;
1591
+ const clickMethod = option.clickMethod || shortcutOpts.clickMethod;
1592
+ const shortcutParams = {
1593
+ $datePicker: $xeDatePicker,
1594
+ option: option
1595
+ };
1596
+ if (clickMethod) {
1597
+ clickMethod(shortcutParams);
1598
+ }
1599
+ if (autoClose) {
1600
+ hidePanel();
1601
+ }
1602
+ dispatchEvent('shortcut-click', shortcutParams, $event);
1603
+ };
1548
1604
  // 全局事件
1549
1605
  const handleGlobalMousedownEvent = evnt => {
1550
1606
  const {
@@ -2047,6 +2103,27 @@ var _default = exports.default = (0, _vue.defineComponent)({
2047
2103
  }, item.label);
2048
2104
  })) : (0, _vue.createCommentVNode)()])];
2049
2105
  };
2106
+ const renderShortcutBtn = (pos, isVertical) => {
2107
+ const shortcutOpts = computeShortcutOpts.value;
2108
+ const {
2109
+ options,
2110
+ position,
2111
+ align,
2112
+ mode
2113
+ } = shortcutOpts;
2114
+ if ((0, _utils.isEnableConf)(shortcutOpts) && options && options.length && (position || 'left') === pos) {
2115
+ return (0, _vue.h)('div', {
2116
+ class: `vxe-date-picker--panel-${pos}-wrapper`
2117
+ }, [(0, _vue.h)(_buttonGroup.default, {
2118
+ options,
2119
+ mode,
2120
+ align,
2121
+ vertical: isVertical,
2122
+ onClick: handleShortcutEvent
2123
+ })]);
2124
+ }
2125
+ return (0, _ui.renderEmptyElement)($xeDatePicker);
2126
+ };
2050
2127
  const renderPanel = () => {
2051
2128
  const {
2052
2129
  type
@@ -2060,12 +2137,18 @@ var _default = exports.default = (0, _vue.defineComponent)({
2060
2137
  } = reactData;
2061
2138
  const vSize = computeSize.value;
2062
2139
  const btnTransfer = computeBtnTransfer.value;
2140
+ const shortcutOpts = computeShortcutOpts.value;
2141
+ const {
2142
+ options,
2143
+ position
2144
+ } = shortcutOpts;
2063
2145
  const headerSlot = slots.header;
2064
2146
  const footerSlot = slots.footer;
2065
2147
  const topSlot = slots.top;
2066
2148
  const bottomSlot = slots.bottom;
2067
2149
  const leftSlot = slots.left;
2068
2150
  const rightSlot = slots.right;
2151
+ const hasShortcutBtn = options && options.length;
2069
2152
  const renders = [];
2070
2153
  if (type === 'datetime') {
2071
2154
  renders.push((0, _vue.h)('div', {
@@ -2100,10 +2183,10 @@ var _default = exports.default = (0, _vue.defineComponent)({
2100
2183
  'is--transfer': btnTransfer,
2101
2184
  'ani--leave': isAniVisible,
2102
2185
  'ani--enter': visiblePanel,
2103
- 'show--top': !!(topSlot || headerSlot),
2104
- 'show--bottom': !!(bottomSlot || footerSlot),
2105
- 'show--left': !!leftSlot,
2106
- 'show--right': !!rightSlot
2186
+ 'show--top': !!(topSlot || headerSlot || hasShortcutBtn && (position === 'top' || position === 'header')),
2187
+ 'show--bottom': !!(bottomSlot || footerSlot || hasShortcutBtn && (position === 'bottom' || position === 'footer')),
2188
+ 'show--left': !!(leftSlot || hasShortcutBtn && position === 'left'),
2189
+ 'show--right': !!(rightSlot || hasShortcutBtn && position === 'right')
2107
2190
  }],
2108
2191
  placement: panelPlacement,
2109
2192
  style: panelStyle
@@ -2111,23 +2194,23 @@ var _default = exports.default = (0, _vue.defineComponent)({
2111
2194
  class: 'vxe-date-picker--panel-layout-wrapper'
2112
2195
  }, [topSlot ? (0, _vue.h)('div', {
2113
2196
  class: 'vxe-date-picker--panel-top-wrapper'
2114
- }, topSlot({})) : (0, _ui.renderEmptyElement)($xeDatePicker), (0, _vue.h)('div', {
2197
+ }, topSlot({})) : renderShortcutBtn('top'), (0, _vue.h)('div', {
2115
2198
  class: 'vxe-date-picker--panel-body-layout-wrapper'
2116
2199
  }, [leftSlot ? (0, _vue.h)('div', {
2117
2200
  class: 'vxe-date-picker--panel-left-wrapper'
2118
- }, leftSlot({})) : (0, _ui.renderEmptyElement)($xeDatePicker), (0, _vue.h)('div', {
2201
+ }, leftSlot({})) : renderShortcutBtn('left', true), (0, _vue.h)('div', {
2119
2202
  class: 'vxe-date-picker--panel-body-content-wrapper'
2120
2203
  }, [headerSlot ? (0, _vue.h)('div', {
2121
2204
  class: 'vxe-date-picker--panel-header-wrapper'
2122
- }, headerSlot({})) : (0, _ui.renderEmptyElement)($xeDatePicker), (0, _vue.h)('div', {
2205
+ }, headerSlot({})) : renderShortcutBtn('header'), (0, _vue.h)('div', {
2123
2206
  class: 'vxe-date-picker--panel-body-wrapper'
2124
2207
  }, renders), footerSlot ? (0, _vue.h)('div', {
2125
2208
  class: 'vxe-date-picker--panel-footer-wrapper'
2126
- }, footerSlot({})) : (0, _ui.renderEmptyElement)($xeDatePicker)]), rightSlot ? (0, _vue.h)('div', {
2209
+ }, footerSlot({})) : renderShortcutBtn('footer')]), rightSlot ? (0, _vue.h)('div', {
2127
2210
  class: 'vxe-date-picker--panel-right-wrapper'
2128
- }, rightSlot({})) : (0, _ui.renderEmptyElement)($xeDatePicker)]), bottomSlot ? (0, _vue.h)('div', {
2211
+ }, rightSlot({})) : renderShortcutBtn('right', true)]), bottomSlot ? (0, _vue.h)('div', {
2129
2212
  class: 'vxe-date-picker--panel-bottom-wrapper'
2130
- }, bottomSlot({})) : (0, _ui.renderEmptyElement)($xeDatePicker)])] : [])]);
2213
+ }, bottomSlot({})) : renderShortcutBtn('bottom')])] : [])]);
2131
2214
  };
2132
2215
  const renderPrefixIcon = () => {
2133
2216
  const {