vxe-pc-ui 4.6.4 → 4.6.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (130) hide show
  1. package/es/button/src/button.js +20 -73
  2. package/es/button/style.css +24 -2
  3. package/es/button/style.min.css +1 -1
  4. package/es/color-picker/src/color-picker.js +19 -72
  5. package/es/color-picker/style.css +15 -0
  6. package/es/color-picker/style.min.css +1 -1
  7. package/es/date-picker/src/date-picker.js +19 -74
  8. package/es/date-picker/style.css +3 -2
  9. package/es/date-picker/style.min.css +1 -1
  10. package/es/date-range-picker/src/date-range-picker.js +24 -79
  11. package/es/date-range-picker/style.css +3 -2
  12. package/es/date-range-picker/style.min.css +1 -1
  13. package/es/icon/style.css +1 -1
  14. package/es/pulldown/src/pulldown.js +19 -74
  15. package/es/pulldown/style.css +0 -4
  16. package/es/pulldown/style.min.css +1 -1
  17. package/es/select/src/select.js +19 -72
  18. package/es/style.css +1 -1
  19. package/es/style.min.css +1 -1
  20. package/es/table-select/src/table-select.js +19 -72
  21. package/es/table-select/style.css +0 -1
  22. package/es/table-select/style.min.css +1 -1
  23. package/es/tree-select/src/tree-select.js +19 -72
  24. package/es/tree-select/style.css +0 -1
  25. package/es/tree-select/style.min.css +1 -1
  26. package/es/ui/index.js +1 -1
  27. package/es/ui/src/dom.js +92 -0
  28. package/es/ui/src/log.js +1 -1
  29. package/es/vxe-button/style.css +24 -2
  30. package/es/vxe-button/style.min.css +1 -1
  31. package/es/vxe-color-picker/style.css +15 -0
  32. package/es/vxe-color-picker/style.min.css +1 -1
  33. package/es/vxe-date-picker/style.css +3 -2
  34. package/es/vxe-date-picker/style.min.css +1 -1
  35. package/es/vxe-date-range-picker/style.css +3 -2
  36. package/es/vxe-date-range-picker/style.min.css +1 -1
  37. package/es/vxe-pulldown/style.css +0 -4
  38. package/es/vxe-pulldown/style.min.css +1 -1
  39. package/es/vxe-table-select/style.css +0 -1
  40. package/es/vxe-table-select/style.min.css +1 -1
  41. package/es/vxe-tree-select/style.css +0 -1
  42. package/es/vxe-tree-select/style.min.css +1 -1
  43. package/lib/button/src/button.js +23 -79
  44. package/lib/button/src/button.min.js +1 -1
  45. package/lib/button/style/style.css +24 -2
  46. package/lib/button/style/style.min.css +1 -1
  47. package/lib/color-picker/src/color-picker.js +22 -77
  48. package/lib/color-picker/src/color-picker.min.js +1 -1
  49. package/lib/color-picker/style/style.css +15 -0
  50. package/lib/color-picker/style/style.min.css +1 -1
  51. package/lib/date-picker/src/date-picker.js +22 -79
  52. package/lib/date-picker/src/date-picker.min.js +1 -1
  53. package/lib/date-picker/style/style.css +3 -2
  54. package/lib/date-picker/style/style.min.css +1 -1
  55. package/lib/date-range-picker/src/date-range-picker.js +26 -83
  56. package/lib/date-range-picker/src/date-range-picker.min.js +1 -1
  57. package/lib/date-range-picker/style/style.css +3 -2
  58. package/lib/date-range-picker/style/style.min.css +1 -1
  59. package/lib/icon/style/style.css +1 -1
  60. package/lib/icon/style/style.min.css +1 -1
  61. package/lib/index.umd.js +279 -631
  62. package/lib/index.umd.min.js +1 -1
  63. package/lib/pulldown/src/pulldown.js +22 -80
  64. package/lib/pulldown/src/pulldown.min.js +1 -1
  65. package/lib/pulldown/style/style.css +0 -4
  66. package/lib/pulldown/style/style.min.css +1 -1
  67. package/lib/select/src/select.js +22 -77
  68. package/lib/select/src/select.min.js +1 -1
  69. package/lib/style.css +1 -1
  70. package/lib/style.min.css +1 -1
  71. package/lib/table-select/src/table-select.js +22 -77
  72. package/lib/table-select/src/table-select.min.js +1 -1
  73. package/lib/table-select/style/style.css +0 -1
  74. package/lib/table-select/style/style.min.css +1 -1
  75. package/lib/tree-select/src/tree-select.js +22 -77
  76. package/lib/tree-select/src/tree-select.min.js +1 -1
  77. package/lib/tree-select/style/style.css +0 -1
  78. package/lib/tree-select/style/style.min.css +1 -1
  79. package/lib/ui/index.js +1 -1
  80. package/lib/ui/index.min.js +1 -1
  81. package/lib/ui/src/dom.js +97 -0
  82. package/lib/ui/src/dom.min.js +1 -1
  83. package/lib/ui/src/log.js +1 -1
  84. package/lib/ui/src/log.min.js +1 -1
  85. package/lib/vxe-button/style/style.css +24 -2
  86. package/lib/vxe-button/style/style.min.css +1 -1
  87. package/lib/vxe-color-picker/style/style.css +15 -0
  88. package/lib/vxe-color-picker/style/style.min.css +1 -1
  89. package/lib/vxe-date-picker/style/style.css +3 -2
  90. package/lib/vxe-date-picker/style/style.min.css +1 -1
  91. package/lib/vxe-date-range-picker/style/style.css +3 -2
  92. package/lib/vxe-date-range-picker/style/style.min.css +1 -1
  93. package/lib/vxe-pulldown/style/style.css +0 -4
  94. package/lib/vxe-pulldown/style/style.min.css +1 -1
  95. package/lib/vxe-table-select/style/style.css +0 -1
  96. package/lib/vxe-table-select/style/style.min.css +1 -1
  97. package/lib/vxe-tree-select/style/style.css +0 -1
  98. package/lib/vxe-tree-select/style/style.min.css +1 -1
  99. package/package.json +1 -1
  100. package/packages/button/src/button.ts +20 -70
  101. package/packages/color-picker/src/color-picker.ts +19 -69
  102. package/packages/date-picker/src/date-picker.ts +20 -72
  103. package/packages/date-range-picker/src/date-range-picker.ts +24 -76
  104. package/packages/pulldown/src/pulldown.ts +20 -72
  105. package/packages/select/src/select.ts +19 -69
  106. package/packages/table-select/src/table-select.ts +19 -69
  107. package/packages/tree-select/src/tree-select.ts +19 -69
  108. package/packages/ui/src/dom.ts +95 -0
  109. package/styles/components/button.scss +3 -20
  110. package/styles/components/color-picker.scss +2 -27
  111. package/styles/components/date-picker.scss +2 -34
  112. package/styles/components/date-range-picker.scss +2 -34
  113. package/styles/components/pulldown.scss +2 -41
  114. package/styles/components/select.scss +2 -35
  115. package/styles/components/table-select.scss +2 -36
  116. package/styles/components/tree-select.scss +2 -36
  117. package/styles/helpers/placement.scss +39 -0
  118. package/types/components/table.d.ts +51 -0
  119. /package/es/icon/{iconfont.1747024965925.ttf → iconfont.1747094595378.ttf} +0 -0
  120. /package/es/icon/{iconfont.1747024965925.woff → iconfont.1747094595378.woff} +0 -0
  121. /package/es/icon/{iconfont.1747024965925.woff2 → iconfont.1747094595378.woff2} +0 -0
  122. /package/es/{iconfont.1747024965925.ttf → iconfont.1747094595378.ttf} +0 -0
  123. /package/es/{iconfont.1747024965925.woff → iconfont.1747094595378.woff} +0 -0
  124. /package/es/{iconfont.1747024965925.woff2 → iconfont.1747094595378.woff2} +0 -0
  125. /package/lib/icon/style/{iconfont.1747024965925.ttf → iconfont.1747094595378.ttf} +0 -0
  126. /package/lib/icon/style/{iconfont.1747024965925.woff → iconfont.1747094595378.woff} +0 -0
  127. /package/lib/icon/style/{iconfont.1747024965925.woff2 → iconfont.1747094595378.woff2} +0 -0
  128. /package/lib/{iconfont.1747024965925.ttf → iconfont.1747094595378.ttf} +0 -0
  129. /package/lib/{iconfont.1747024965925.woff → iconfont.1747094595378.woff} +0 -0
  130. /package/lib/{iconfont.1747024965925.woff2 → iconfont.1747094595378.woff2} +0 -0
@@ -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"),_util=require("./util"),_button=_interopRequireDefault(require("../../button/src/button")),_input=_interopRequireDefault(require("../../input/src/input"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var _default=exports.default=(0,_vue.defineComponent)({name:"VxeColorPicker",props:{modelValue:String,placeholder:String,clearable:{type:Boolean,default:()=>(0,_ui.getConfig)().colorPicker.clearable},type:{type:String,default:()=>(0,_ui.getConfig)().colorPicker.type},size:{type:String,default:()=>(0,_ui.getConfig)().colorPicker.size||(0,_ui.getConfig)().size},className:[String,Function],popupClassName:[String,Function],colors:{type:Array,default:()=>_xeUtils.default.clone((0,_ui.getConfig)().colorPicker.colors,!0)||[]},showAlpha:{type:Boolean,default:()=>(0,_ui.getConfig)().colorPicker.showAlpha},showEyeDropper:{type:Boolean,default:()=>(0,_ui.getConfig)().colorPicker.showEyeDropper},showColorExtractor:{type:Boolean,default:()=>(0,_ui.getConfig)().colorPicker.showColorExtractor},showQuick:{type:Boolean,default:()=>(0,_ui.getConfig)().colorPicker.showQuick},readonly:{type:Boolean,default:null},disabled:{type:Boolean,default:null},clickToCopy:{type:Boolean,default:()=>(0,_ui.getConfig)().colorPicker.clickToCopy},placement:String,transfer:{type:Boolean,default:null}},emits:["update:modelValue","change","clear","click"],setup(d,e){const t=e["emit"],o=(0,_vue.inject)("$xeModal",null),q=(0,_vue.inject)("$xeDrawer",null),S=(0,_vue.inject)("$xeTable",null),i=(0,_vue.inject)("$xeForm",null),a=(0,_vue.inject)("xeFormItemInfo",null),p="undefined"!=typeof window?window.EyeDropper:null;var l=_xeUtils.default.uniqueId();const M=(0,_ui.useSize)(d)["computeSize"],_=(0,_vue.ref)(),H=(0,_vue.ref)(),h=(0,_vue.ref)(),m=(0,_vue.ref)(),g=(0,_vue.ref)(),x=(0,_vue.ref)(),f=(0,_vue.ref)(),v=(0,_vue.ref)(),b=(0,_vue.ref)(),k=(0,_vue.reactive)({initialized:!1,selectColor:""+(d.modelValue||""),panelColor:"",hexValue:"",rValue:0,gValue:0,bValue:0,aValue:0,panelIndex:0,panelStyle:{},panelPlacement:null,visiblePanel:!1,isAniVisible:!1,isActivated:!1}),r={},N=(0,_vue.computed)(()=>{var e=d["readonly"];return null===e?!!i&&i.props.readonly:e}),C=(0,_vue.computed)(()=>{var e=d["disabled"];return null===e?!!i&&i.props.disabled:e}),y=(0,_vue.computed)(()=>{var e=d["transfer"];if(null===e){var l=(0,_ui.getConfig)().colorPicker.transfer;if(_xeUtils.default.isBoolean(l))return l;if(S||o||q||i)return!0}return e}),W=(0,_vue.computed)(()=>{var e=d["colors"];return e?e.map(e=>_xeUtils.default.isString(e)?{label:e,value:e}:{label:_xeUtils.default.eqNull(e.label)?e.value:e.label,value:e.value}):[]}),V=(0,_vue.computed)(()=>{var e=d["type"];return"rgb"===e||"rgba"===e?"rgb":"hex"}),w=(0,_vue.computed)(()=>{return"rgb"===V.value}),$={refElem:_},j={},E={xID:l,props:d,context:e,reactData:k,getRefMaps:()=>$,getComputeMaps:()=>j},u=()=>{var e=d["modelValue"];k.selectColor=_xeUtils.default.toValueString(e),P()},P=()=>{var e,{selectColor:l,isAniVisible:o}=k,t=w.value,i=m.value,a=x.value,l=(0,_util.parseColor)(l);k.hexValue=l.hex,k.rValue=l.r,k.gValue=l.g,k.bValue=l.b,k.aValue=l.a,l.value&&(t?"hex"===l.type&&(t=(0,_util.hexToRgb)(l.hex))&&(k.rValue=t.r,k.gValue=t.g,k.bValue=t.b,k.aValue=t.a):"hex"!==l.type&&(k.hexValue=(0,_util.rgbToHex)(l))),o&&(t="hex"===l.type?(0,_util.hexToHsv)(l.hex):(0,_util.rgbToHsv)(l),o=v.value,t&&(o&&(e=o.clientHeight*(1-t.v),o=o.clientWidth*t.s,B(o,e)),i)&&T(_xeUtils.default.ceil((1-t.h/360)*i.clientWidth)),a)&&R(a.clientWidth*l.a)},n=()=>(0,_vue.nextTick)().then(()=>{var t=d["placement"],i=k["panelIndex"],a=_.value,r=h.value,e=y.value;if(r&&a){var u=a.offsetHeight,n=a.offsetWidth,c=r.offsetHeight,r=r.offsetWidth,i={zIndex:i},{boundingTop:a,boundingLeft:s,visibleHeight:v,visibleWidth:p}=(0,_dom.getAbsolutePos)(a);let o="bottom";if(e){let e=s,l=a+u;"top"===t?(o="top",l=a-c):t||(l+c+5>v&&(o="top",l=a-c),l<5&&(o="bottom",l=a+u)),e+r+5>p&&(e-=e+r+5-p),e<5&&(e=5),Object.assign(i,{left:e+"px",top:l+"px",minWidth:n+"px"})}else"top"===t?(o="top",i.bottom=u+"px"):t||v<a+u+c&&5<a-u-c&&(o="top",i.bottom=u+"px");return k.panelStyle=i,k.panelPlacement=o,(0,_vue.nextTick)()}}),c=()=>{var e=r["hpTimeout"];C.value||(e&&(clearTimeout(e),r.hpTimeout=void 0),k.initialized||(k.initialized=!0),k.isActivated=!0,k.isAniVisible=!0,setTimeout(()=>{P(),k.visiblePanel=!0},10),k.panelIndex<(0,_utils.getLastZIndex)()&&(k.panelIndex=(0,_utils.nextZIndex)()),n())},s=()=>{k.visiblePanel=!1,r.hpTimeout=setTimeout(()=>{k.isAniVisible=!1},350)},U=(e,l)=>{var o;(k.selectColor=l)!==d.modelValue&&(o=l,t("update:modelValue",o),D("change",{value:l},e),i)&&a&&i.triggerItemEvent(e,a.itemConfig.field,l)},L=(e,l)=>{U(e,l),D("clear",{value:l},e)},F=()=>{C.value||k.visiblePanel||c()},O=()=>{k.isActivated=!1},X=e=>{L(e,null),s()},G=e=>{var l=k["selectColor"];U(e,l),s()},Q=e=>{e.preventDefault(),(k.visiblePanel?s:c)()},Y=e=>{Q(e),D("click",{},e)},T=t=>{var i=m.value,a=g.value;if(i&&a){t<0&&(t=0);var i=_xeUtils.default.toInteger(i.clientWidth),r=255,i=_xeUtils.default.ceil(1530/i*t),u=i%r;let e=0,l=0,o=0;switch(Math.ceil(i/r)){case 1:e=r,o=u;break;case 2:e=r-u,o=r;break;case 3:l=u,o=r;break;case 4:l=r,o=r-u;break;case 5:e=u,l=r;break;case 6:e=r,l=r-u}k.panelColor=(0,_util.toRgb)(e,l,o),a.style.left=(0,_dom.toCssUnit)(t)}},I=e=>{var l=m.value,o=g.value;l&&o&&(o=l.getBoundingClientRect(),l=_xeUtils.default.toInteger(l.clientWidth),l=_xeUtils.default.ceil(Math.min(l-1,Math.max(1,e.clientX-o.x))),T(l))},Z=e=>{e.preventDefault(),document.onmousemove=e=>{e.preventDefault(),I(e)},document.onmouseup=e=>{document.onmousemove=null,document.onmouseup=null,I(e)}},R=e=>{var l=k["selectColor"],o=x.value,t=f.value;o&&t&&(o=o.getBoundingClientRect().width,o=_xeUtils.default.ceil(100/o*(e=o<(e=e<0?0:e)?o:e)/100,2),k.aValue=o,t.style.left=(0,_dom.toCssUnit)(e),k.selectColor=(0,_util.updateColorAlpha)(l,o))},z=e=>{var l=x.value,o=f.value;l&&o&&(l=(o=l.getBoundingClientRect()).width,l=Math.min(l,Math.max(0,e.clientX-o.x)),R(l),P())},J=e=>{e.preventDefault(),document.onmousemove=e=>{e.preventDefault(),z(e)},document.onmouseup=e=>{document.onmousemove=null,document.onmouseup=null,z(e)}},A=()=>{var{rValue:e,gValue:l,bValue:o,aValue:t}=k;k.selectColor=(0,_util.toRgb)(e,l,o,t),P()},K=()=>{var e=k["aValue"],l=x.value,o=f.value;l&&o&&(o=l.getBoundingClientRect().width*e,R(o))},ee=(e,l)=>{l=l.value;k.selectColor=l,P()},B=(e,l)=>{var o=b.value;o&&(o.style.top=(0,_dom.toCssUnit)(l),o.style.left=(0,_dom.toCssUnit)(e))},le=()=>{if(p)try{(new p).open().then(e=>{e&&e.sRGBHex&&(k.selectColor=e.sRGBHex,P())}).catch(()=>{})}catch(e){}},oe=e=>{var l,o=d["showAlpha"],{panelColor:t,aValue:i}=k,a=v.value,r=b.value;a&&r&&(r=a.getBoundingClientRect(),l=e.clientY-r.y,e=e.clientX-r.x,r=(0,_util.parseColor)(t))&&(t="hex"===r.type?(0,_util.hexToHsv)(r.hex):(0,_util.rgbToHsv)(r))&&(r=(0,_util.hsvToRgb)(t.h,e/a.clientWidth,1-l/a.clientHeight),k.selectColor=(0,_util.toRgb)(r.r,r.g,r.b,o?i:null),B(e,l),P())},te=()=>{var e=k["selectColor"];e&&_ui.VxeUI.clipboard.copy(e)&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({content:(0,_ui.getI18n)("vxe.colorPicker.copySuccess",[e]),status:"success"})},ie=e=>{var l=k["visiblePanel"];C.value||l&&(l=h.value,((0,_dom.getEventTargetNode)(e,l).flag?n:s)())},ae=e=>{var l,o,t=k["visiblePanel"];C.value||(l=_.value,o=h.value,k.isActivated=(0,_dom.getEventTargetNode)(e,l).flag||(0,_dom.getEventTargetNode)(e,o).flag,t&&!k.isActivated&&s())},re=()=>{s()},D=(e,l,o)=>{t(e,(0,_ui.createEvent)(o,{$colorPicker:E},l))};l={dispatchEvent:D};Object.assign(E,l,{});return(0,_vue.watch)(()=>d.modelValue,()=>{u()}),(0,_vue.onMounted)(()=>{_ui.globalEvents.on(E,"mousewheel",ie),_ui.globalEvents.on(E,"mousedown",ae),_ui.globalEvents.on(E,"blur",re)}),(0,_vue.onUnmounted)(()=>{_ui.globalEvents.off(E,"mousewheel"),_ui.globalEvents.off(E,"mousedown"),_ui.globalEvents.off(E,"blur")}),u(),(0,_vue.provide)("$xeColorPicker",E),E.renderVN=()=>{var{className:e,popupClassName:l,clearable:o,modelValue:t}=d,{initialized:i,isActivated:a,isAniVisible:r,visiblePanel:u}=k,n=M.value,c=C.value,s=y.value;return N.value?(0,_vue.h)("div",{ref:_,class:["vxe-color-picker--readonly",e]},[(0,_vue.h)("div",{class:"vxe-color-picker--readonly-color",style:{backgroundColor:t}})]):(0,_vue.h)("div",{ref:_,class:["vxe-color-picker",e?_xeUtils.default.isFunction(e)?e({$colorPicker:E}):e:"",{["size--"+n]:n,"is--selected":!!t,"is--visible":u,"is--disabled":c,"is--active":a}]},[(0,_vue.h)("input",{ref:H,class:"vxe-color-picker--input",onFocus:F,onBlur:O}),(0,_vue.h)("div",{class:"vxe-color-picker--inner",onClick:Y},[(0,_vue.h)("div",{class:"vxe-color-picker--inner-color",style:{backgroundColor:t}})]),(0,_vue.h)(_vue.Teleport,{to:"body",disabled:!s||!i},[(0,_vue.h)("div",{ref:h,class:["vxe-table--ignore-clear vxe-color-picker--panel",l?_xeUtils.default.isFunction(l)?l({$colorPicker:E}):l:"",{["size--"+n]:n,"is--transfer":s,"ani--leave":r,"ani--enter":u}],placement:k.panelPlacement,style:k.panelStyle},[i&&(u||r)?(0,_vue.h)("div",{class:"vxe-color-picker--panel-wrapper"},[(e=d.showColorExtractor,c=k.panelColor,e?(0,_vue.h)("div",{ref:v,class:"vxe-color-picker--color-wrapper",onMousedown:oe},[(0,_vue.h)("div",{class:"vxe-color-picker--color-bg",style:{backgroundColor:c}}),(0,_vue.h)("div",{class:"vxe-color-picker--white-bg"}),(0,_vue.h)("div",{class:"vxe-color-picker--black-bg"}),(0,_vue.h)("div",{ref:b,class:"vxe-color-picker--color-active"})]):(0,_ui.renderEmptyElement)(E)),(()=>{var{showAlpha:e,clickToCopy:l,showEyeDropper:o}=d,{hexValue:t,rValue:i,gValue:a,bValue:r,aValue:u,selectColor:n,panelColor:c}=k,s=V.value,v=w.value;return(0,_vue.h)("div",{class:"vxe-color-picker--bar-wrapper"},[(0,_vue.h)("div",{class:"vxe-color-picker--slider-wrapper"},[o&&p?(0,_vue.h)("div",{class:"vxe-color-picker--color-dropper"},[(0,_vue.h)("span",{class:"vxe-color-picker--color-dropper-btn",onClick:le},[(0,_vue.h)("i",{class:(0,_ui.getIcon)().EYE_DROPPER})])]):(0,_ui.renderEmptyElement)(E),(0,_vue.h)("div",{class:"vxe-color-picker--slider-preview"},[(0,_vue.h)("div",{class:"vxe-color-picker--preview-btn"},[(0,_vue.h)("div",{class:"vxe-color-picker--preview-color",style:{backgroundColor:n}},l?[(0,_vue.h)("span",{class:"vxe-color-picker--preview-copy-btn",onClick:te},[(0,_vue.h)("i",{class:(0,_ui.getIcon)().COLOR_COPY})])]:[])])]),(0,_vue.h)("div",{class:"vxe-color-picker--slider-handle"},[(0,_vue.h)("div",{ref:m,class:"vxe-color-picker--bar-hue-slider",onClick:I},[(0,_vue.h)("div",{ref:g,class:"vxe-color-picker--bar-hue-btn",onMousedown:Z})]),e?(0,_vue.h)("div",{ref:x,class:"vxe-color-picker--bar-alpha-slider",onClick:z},[(0,_vue.h)("div",{class:"vxe-color-picker--bar-alpha-bg",style:{background:`linear-gradient(to right, rgba(0, 0, 0, 0), ${c})`}}),(0,_vue.h)("div",{ref:f,class:"vxe-color-picker--bar-alpha-btn",onMousedown:J})]):(0,_ui.renderEmptyElement)(E)])]),(0,_vue.h)("div",{class:`vxe-color-picker--${s}-wrapper`},v?[(0,_vue.h)("div",{class:"vxe-color-picker--input-wrapper"},[(0,_vue.h)(_input.default,{type:"integer",size:"mini",align:"center",min:0,max:255,maxLength:3,placeholder:"",modelValue:i,"onUpdate:modelValue"(e){k.rValue=e},onChange:A}),(0,_vue.h)(_input.default,{type:"integer",size:"mini",align:"center",min:0,max:255,maxLength:3,placeholder:"",modelValue:a,"onUpdate:modelValue"(e){k.gValue=e},onChange:A}),(0,_vue.h)(_input.default,{type:"integer",size:"mini",align:"center",min:0,max:255,maxLength:3,placeholder:"",modelValue:r,"onUpdate:modelValue"(e){k.bValue=e},onChange:A}),(0,_vue.h)(_input.default,{type:"number",size:"mini",align:"center",min:0,max:1,step:.01,maxLength:4,placeholder:"",modelValue:u,"onUpdate:modelValue"(e){k.aValue=e},onChange:K})]),(0,_vue.h)("div",{class:"vxe-color-picker--input-title"},[(0,_vue.h)("span","R"),(0,_vue.h)("span","G"),(0,_vue.h)("span","B"),(0,_vue.h)("span","A")])]:[(0,_vue.h)("div",{class:"vxe-color-picker--input-title"},"HEX"),(0,_vue.h)("div",{class:"vxe-color-picker--input-wrapper"},[(0,_vue.h)(_input.default,{type:"text",size:"mini",align:"center",maxLength:9,placeholder:"",modelValue:t,"onUpdate:modelValue"(e){k.hexValue=e},onChange(){var e=(0,_util.parseColor)(k.hexValue);e&&e.value&&(k.selectColor=e.value,P())}})])])])})(),(a=d.showQuick,t=W.value,a&&t.length?(0,_vue.h)("div",{class:"vxe-color-picker--quick-wrapper"},t.map((l,e)=>(0,_vue.h)("div",{key:e,class:"vxe-color-picker--quick-item",title:l.label||"",style:{backgroundColor:l.value},onClick(e){ee(e,l)}}))):(0,_ui.renderEmptyElement)(E)),(0,_vue.h)("div",{class:"vxe-color-picker--footer-wrapper"},[o?(0,_vue.h)(_button.default,{content:(0,_ui.getI18n)("vxe.colorPicker.clear"),size:"mini",onClick:X}):(0,_ui.renderEmptyElement)(E),(0,_vue.h)(_button.default,{content:(0,_ui.getI18n)("vxe.colorPicker.confirm"),size:"mini",status:"primary",onClick:G})])]):(0,_ui.renderEmptyElement)(E)])])])},E},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"),_util=require("./util"),_button=_interopRequireDefault(require("../../button/src/button")),_input=_interopRequireDefault(require("../../input/src/input"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var _default=exports.default=(0,_vue.defineComponent)({name:"VxeColorPicker",props:{modelValue:String,placeholder:String,clearable:{type:Boolean,default:()=>(0,_ui.getConfig)().colorPicker.clearable},type:{type:String,default:()=>(0,_ui.getConfig)().colorPicker.type},size:{type:String,default:()=>(0,_ui.getConfig)().colorPicker.size||(0,_ui.getConfig)().size},className:[String,Function],popupClassName:[String,Function],colors:{type:Array,default:()=>_xeUtils.default.clone((0,_ui.getConfig)().colorPicker.colors,!0)||[]},showAlpha:{type:Boolean,default:()=>(0,_ui.getConfig)().colorPicker.showAlpha},showEyeDropper:{type:Boolean,default:()=>(0,_ui.getConfig)().colorPicker.showEyeDropper},showColorExtractor:{type:Boolean,default:()=>(0,_ui.getConfig)().colorPicker.showColorExtractor},showQuick:{type:Boolean,default:()=>(0,_ui.getConfig)().colorPicker.showQuick},readonly:{type:Boolean,default:null},disabled:{type:Boolean,default:null},clickToCopy:{type:Boolean,default:()=>(0,_ui.getConfig)().colorPicker.clickToCopy},placement:String,transfer:{type:Boolean,default:null}},emits:["update:modelValue","change","clear","click"],setup(p,e){const t=e["emit"],o=(0,_vue.inject)("$xeModal",null),q=(0,_vue.inject)("$xeDrawer",null),S=(0,_vue.inject)("$xeTable",null),a=(0,_vue.inject)("$xeForm",null),i=(0,_vue.inject)("xeFormItemInfo",null),d="undefined"!=typeof window?window.EyeDropper:null;var l=_xeUtils.default.uniqueId();const M=(0,_ui.useSize)(p)["computeSize"],v=(0,_vue.ref)(),H=(0,_vue.ref)(),_=(0,_vue.ref)(),h=(0,_vue.ref)(),m=(0,_vue.ref)(),g=(0,_vue.ref)(),x=(0,_vue.ref)(),f=(0,_vue.ref)(),b=(0,_vue.ref)(),k=(0,_vue.reactive)({initialized:!1,selectColor:""+(p.modelValue||""),panelColor:"",hexValue:"",rValue:0,gValue:0,bValue:0,aValue:0,panelIndex:0,panelStyle:{},panelPlacement:null,visiblePanel:!1,isAniVisible:!1,isActivated:!1}),r={},N=(0,_vue.computed)(()=>{var e=p["readonly"];return null===e?!!a&&a.props.readonly:e}),C=(0,_vue.computed)(()=>{var e=p["disabled"];return null===e?!!a&&a.props.disabled:e}),y=(0,_vue.computed)(()=>{var e=p["transfer"];if(null===e){var l=(0,_ui.getConfig)().colorPicker.transfer;if(_xeUtils.default.isBoolean(l))return l;if(S||o||q||a)return!0}return e}),$=(0,_vue.computed)(()=>{var e=p["colors"];return e?e.map(e=>_xeUtils.default.isString(e)?{label:e,value:e}:{label:_xeUtils.default.eqNull(e.label)?e.value:e.label,value:e.value}):[]}),V=(0,_vue.computed)(()=>{var e=p["type"];return"rgb"===e||"rgba"===e?"rgb":"hex"}),w=(0,_vue.computed)(()=>{return"rgb"===V.value}),j={refElem:v},F={},E={xID:l,props:p,context:e,reactData:k,getRefMaps:()=>j,getComputeMaps:()=>F},u=()=>{var e=p["modelValue"];k.selectColor=_xeUtils.default.toValueString(e),P()},P=()=>{var e,{selectColor:l,isAniVisible:o}=k,t=w.value,a=h.value,i=g.value,l=(0,_util.parseColor)(l);k.hexValue=l.hex,k.rValue=l.r,k.gValue=l.g,k.bValue=l.b,k.aValue=l.a,l.value&&(t?"hex"===l.type&&(t=(0,_util.hexToRgb)(l.hex))&&(k.rValue=t.r,k.gValue=t.g,k.bValue=t.b,k.aValue=t.a):"hex"!==l.type&&(k.hexValue=(0,_util.rgbToHex)(l))),o&&(t="hex"===l.type?(0,_util.hexToHsv)(l.hex):(0,_util.rgbToHsv)(l),o=f.value,t&&(o&&(e=o.clientHeight*(1-t.v),o=o.clientWidth*t.s,A(o,e)),a)&&T(_xeUtils.default.ceil((1-t.h/360)*a.clientWidth)),i)&&R(i.clientWidth*l.a)},n=()=>{const o=p["placement"],t=k["panelIndex"],a=v.value,i=_.value,r=y.value;var e=()=>{var e=(0,_dom.updatePanelPlacement)(a,i,{placement:o,teleportTo:r}),l=Object.assign(e.style,{zIndex:t});k.panelStyle=l,k.panelPlacement=e.placement};return e(),(0,_vue.nextTick)().then(e)},c=()=>{var e=r["hpTimeout"];C.value||(e&&(clearTimeout(e),r.hpTimeout=void 0),k.initialized||(k.initialized=!0),k.isActivated=!0,k.isAniVisible=!0,setTimeout(()=>{P(),k.visiblePanel=!0},10),k.panelIndex<(0,_utils.getLastZIndex)()&&(k.panelIndex=(0,_utils.nextZIndex)()),n())},s=()=>{k.visiblePanel=!1,r.hpTimeout=setTimeout(()=>{k.isAniVisible=!1},350)},U=(e,l)=>{var o;(k.selectColor=l)!==p.modelValue&&(o=l,t("update:modelValue",o),D("change",{value:l},e),a)&&i&&a.triggerItemEvent(e,i.itemConfig.field,l)},L=(e,l)=>{U(e,l),D("clear",{value:l},e)},O=()=>{C.value||k.visiblePanel||c()},W=()=>{k.isActivated=!1},X=e=>{L(e,null),s()},G=e=>{var l=k["selectColor"];U(e,l),s()},Q=e=>{e.preventDefault(),(k.visiblePanel?s:c)()},Y=e=>{Q(e),D("click",{},e)},T=t=>{var a=h.value,i=m.value;if(a&&i){t<0&&(t=0);var a=_xeUtils.default.toInteger(a.clientWidth),r=255,a=_xeUtils.default.ceil(1530/a*t),u=a%r;let e=0,l=0,o=0;switch(Math.ceil(a/r)){case 1:e=r,o=u;break;case 2:e=r-u,o=r;break;case 3:l=u,o=r;break;case 4:l=r,o=r-u;break;case 5:e=u,l=r;break;case 6:e=r,l=r-u}k.panelColor=(0,_util.toRgb)(e,l,o),i.style.left=(0,_dom.toCssUnit)(t)}},I=e=>{var l=h.value,o=m.value;l&&o&&(o=l.getBoundingClientRect(),l=_xeUtils.default.toInteger(l.clientWidth),l=_xeUtils.default.ceil(Math.min(l-1,Math.max(1,e.clientX-o.x))),T(l))},Z=e=>{e.preventDefault(),document.onmousemove=e=>{e.preventDefault(),I(e)},document.onmouseup=e=>{document.onmousemove=null,document.onmouseup=null,I(e)}},R=e=>{var l=k["selectColor"],o=g.value,t=x.value;o&&t&&(o=o.getBoundingClientRect().width,o=_xeUtils.default.ceil(100/o*(e=o<(e=e<0?0:e)?o:e)/100,2),k.aValue=o,t.style.left=(0,_dom.toCssUnit)(e),k.selectColor=(0,_util.updateColorAlpha)(l,o))},z=e=>{var l=g.value,o=x.value;l&&o&&(l=(o=l.getBoundingClientRect()).width,l=Math.min(l,Math.max(0,e.clientX-o.x)),R(l),P())},J=e=>{e.preventDefault(),document.onmousemove=e=>{e.preventDefault(),z(e)},document.onmouseup=e=>{document.onmousemove=null,document.onmouseup=null,z(e)}},B=()=>{var{rValue:e,gValue:l,bValue:o,aValue:t}=k;k.selectColor=(0,_util.toRgb)(e,l,o,t),P()},K=()=>{var e=k["aValue"],l=g.value,o=x.value;l&&o&&(o=l.getBoundingClientRect().width*e,R(o))},ee=(e,l)=>{l=l.value;k.selectColor=l,P()},A=(e,l)=>{var o=b.value;o&&(o.style.top=(0,_dom.toCssUnit)(l),o.style.left=(0,_dom.toCssUnit)(e))},le=()=>{if(d)try{(new d).open().then(e=>{e&&e.sRGBHex&&(k.selectColor=e.sRGBHex,P())}).catch(()=>{})}catch(e){}},oe=e=>{var l,o=p["showAlpha"],{panelColor:t,aValue:a}=k,i=f.value,r=b.value;i&&r&&(r=i.getBoundingClientRect(),l=e.clientY-r.y,e=e.clientX-r.x,r=(0,_util.parseColor)(t))&&(t="hex"===r.type?(0,_util.hexToHsv)(r.hex):(0,_util.rgbToHsv)(r))&&(r=(0,_util.hsvToRgb)(t.h,e/i.clientWidth,1-l/i.clientHeight),k.selectColor=(0,_util.toRgb)(r.r,r.g,r.b,o?a:null),A(e,l),P())},te=()=>{var e=k["selectColor"];e&&_ui.VxeUI.clipboard.copy(e)&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({content:(0,_ui.getI18n)("vxe.colorPicker.copySuccess",[e]),status:"success"})},ae=e=>{var l=k["visiblePanel"];C.value||l&&(l=_.value,((0,_dom.getEventTargetNode)(e,l).flag?n:s)())},ie=e=>{var l,o,t=k["visiblePanel"];C.value||(l=v.value,o=_.value,k.isActivated=(0,_dom.getEventTargetNode)(e,l).flag||(0,_dom.getEventTargetNode)(e,o).flag,t&&!k.isActivated&&s())},re=()=>{s()},D=(e,l,o)=>{t(e,(0,_ui.createEvent)(o,{$colorPicker:E},l))};l={dispatchEvent:D};Object.assign(E,l,{});return(0,_vue.watch)(()=>p.modelValue,()=>{u()}),(0,_vue.onMounted)(()=>{_ui.globalEvents.on(E,"mousewheel",ae),_ui.globalEvents.on(E,"mousedown",ie),_ui.globalEvents.on(E,"blur",re)}),(0,_vue.onUnmounted)(()=>{_ui.globalEvents.off(E,"mousewheel"),_ui.globalEvents.off(E,"mousedown"),_ui.globalEvents.off(E,"blur")}),u(),(0,_vue.provide)("$xeColorPicker",E),E.renderVN=()=>{var{className:e,popupClassName:l,clearable:o,modelValue:t}=p,{initialized:a,isActivated:i,isAniVisible:r,visiblePanel:u}=k,n=M.value,c=C.value,s=y.value;return N.value?(0,_vue.h)("div",{ref:v,class:["vxe-color-picker--readonly",e]},[(0,_vue.h)("div",{class:"vxe-color-picker--readonly-color",style:{backgroundColor:t}})]):(0,_vue.h)("div",{ref:v,class:["vxe-color-picker",e?_xeUtils.default.isFunction(e)?e({$colorPicker:E}):e:"",{["size--"+n]:n,"is--selected":!!t,"is--visible":u,"is--disabled":c,"is--active":i}]},[(0,_vue.h)("input",{ref:H,class:"vxe-color-picker--input",onFocus:O,onBlur:W}),(0,_vue.h)("div",{class:"vxe-color-picker--inner",onClick:Y},[(0,_vue.h)("div",{class:"vxe-color-picker--inner-color",style:{backgroundColor:t}})]),(0,_vue.h)(_vue.Teleport,{to:"body",disabled:!s||!a},[(0,_vue.h)("div",{ref:_,class:["vxe-table--ignore-clear vxe-color-picker--panel",l?_xeUtils.default.isFunction(l)?l({$colorPicker:E}):l:"",{["size--"+n]:n,"is--transfer":s,"ani--leave":r,"ani--enter":u}],placement:k.panelPlacement,style:k.panelStyle},[a&&(u||r)?(0,_vue.h)("div",{class:"vxe-color-picker--panel-wrapper"},[(e=p.showColorExtractor,c=k.panelColor,e?(0,_vue.h)("div",{ref:f,class:"vxe-color-picker--color-wrapper",onMousedown:oe},[(0,_vue.h)("div",{class:"vxe-color-picker--color-bg",style:{backgroundColor:c}}),(0,_vue.h)("div",{class:"vxe-color-picker--white-bg"}),(0,_vue.h)("div",{class:"vxe-color-picker--black-bg"}),(0,_vue.h)("div",{ref:b,class:"vxe-color-picker--color-active"})]):(0,_ui.renderEmptyElement)(E)),(()=>{var{showAlpha:e,clickToCopy:l,showEyeDropper:o}=p,{hexValue:t,rValue:a,gValue:i,bValue:r,aValue:u,selectColor:n,panelColor:c}=k,s=V.value,v=w.value;return(0,_vue.h)("div",{class:"vxe-color-picker--bar-wrapper"},[(0,_vue.h)("div",{class:"vxe-color-picker--slider-wrapper"},[o&&d?(0,_vue.h)("div",{class:"vxe-color-picker--color-dropper"},[(0,_vue.h)("span",{class:"vxe-color-picker--color-dropper-btn",onClick:le},[(0,_vue.h)("i",{class:(0,_ui.getIcon)().EYE_DROPPER})])]):(0,_ui.renderEmptyElement)(E),(0,_vue.h)("div",{class:"vxe-color-picker--slider-preview"},[(0,_vue.h)("div",{class:"vxe-color-picker--preview-btn"},[(0,_vue.h)("div",{class:"vxe-color-picker--preview-color",style:{backgroundColor:n}},l?[(0,_vue.h)("span",{class:"vxe-color-picker--preview-copy-btn",onClick:te},[(0,_vue.h)("i",{class:(0,_ui.getIcon)().COLOR_COPY})])]:[])])]),(0,_vue.h)("div",{class:"vxe-color-picker--slider-handle"},[(0,_vue.h)("div",{ref:h,class:"vxe-color-picker--bar-hue-slider",onClick:I},[(0,_vue.h)("div",{ref:m,class:"vxe-color-picker--bar-hue-btn",onMousedown:Z})]),e?(0,_vue.h)("div",{ref:g,class:"vxe-color-picker--bar-alpha-slider",onClick:z},[(0,_vue.h)("div",{class:"vxe-color-picker--bar-alpha-bg",style:{background:`linear-gradient(to right, rgba(0, 0, 0, 0), ${c})`}}),(0,_vue.h)("div",{ref:x,class:"vxe-color-picker--bar-alpha-btn",onMousedown:J})]):(0,_ui.renderEmptyElement)(E)])]),(0,_vue.h)("div",{class:`vxe-color-picker--${s}-wrapper`},v?[(0,_vue.h)("div",{class:"vxe-color-picker--input-wrapper"},[(0,_vue.h)(_input.default,{type:"integer",size:"mini",align:"center",min:0,max:255,maxLength:3,placeholder:"",modelValue:a,"onUpdate:modelValue"(e){k.rValue=e},onChange:B}),(0,_vue.h)(_input.default,{type:"integer",size:"mini",align:"center",min:0,max:255,maxLength:3,placeholder:"",modelValue:i,"onUpdate:modelValue"(e){k.gValue=e},onChange:B}),(0,_vue.h)(_input.default,{type:"integer",size:"mini",align:"center",min:0,max:255,maxLength:3,placeholder:"",modelValue:r,"onUpdate:modelValue"(e){k.bValue=e},onChange:B}),(0,_vue.h)(_input.default,{type:"number",size:"mini",align:"center",min:0,max:1,step:.01,maxLength:4,placeholder:"",modelValue:u,"onUpdate:modelValue"(e){k.aValue=e},onChange:K})]),(0,_vue.h)("div",{class:"vxe-color-picker--input-title"},[(0,_vue.h)("span","R"),(0,_vue.h)("span","G"),(0,_vue.h)("span","B"),(0,_vue.h)("span","A")])]:[(0,_vue.h)("div",{class:"vxe-color-picker--input-title"},"HEX"),(0,_vue.h)("div",{class:"vxe-color-picker--input-wrapper"},[(0,_vue.h)(_input.default,{type:"text",size:"mini",align:"center",maxLength:9,placeholder:"",modelValue:t,"onUpdate:modelValue"(e){k.hexValue=e},onChange(){var e=(0,_util.parseColor)(k.hexValue);e&&e.value&&(k.selectColor=e.value,P())}})])])])})(),(i=p.showQuick,t=$.value,i&&t.length?(0,_vue.h)("div",{class:"vxe-color-picker--quick-wrapper"},t.map((l,e)=>(0,_vue.h)("div",{key:e,class:"vxe-color-picker--quick-item",title:l.label||"",style:{backgroundColor:l.value},onClick(e){ee(e,l)}}))):(0,_ui.renderEmptyElement)(E)),(0,_vue.h)("div",{class:"vxe-color-picker--footer-wrapper"},[o?(0,_vue.h)(_button.default,{content:(0,_ui.getI18n)("vxe.colorPicker.clear"),size:"mini",onClick:X}):(0,_ui.renderEmptyElement)(E),(0,_vue.h)(_button.default,{content:(0,_ui.getI18n)("vxe.colorPicker.confirm"),size:"mini",status:"primary",onClick:G})])]):(0,_ui.renderEmptyElement)(E)])])])},E},render(){return this.renderVN()}});
@@ -96,6 +96,21 @@
96
96
  opacity: 1;
97
97
  transform: scaleY(1);
98
98
  }
99
+ .vxe-color-picker--panel.ani--enter > div::after {
100
+ display: none;
101
+ }
102
+ .vxe-color-picker--panel > div::after {
103
+ content: "";
104
+ position: absolute;
105
+ top: 0;
106
+ left: 0;
107
+ width: 100%;
108
+ height: 100%;
109
+ z-index: 1;
110
+ -webkit-user-select: none;
111
+ -moz-user-select: none;
112
+ user-select: none;
113
+ }
99
114
 
100
115
  .vxe-color-picker--color-wrapper {
101
116
  position: relative;
@@ -1 +1 @@
1
- .vxe-color-picker.is--selected .vxe-color-picker--inner-color{color:#fff}.vxe-color-picker.is--active{border-color:var(--vxe-ui-font-primary-color)}.vxe-color-picker,.vxe-color-picker--readonly{position:relative;display:inline-block;width:2.4em;padding:.25em;border:1px solid var(--vxe-ui-input-border-color);border-radius:var(--vxe-ui-base-border-radius);background-color:var(--vxe-ui-layout-background-color)}.vxe-color-picker--bar-alpha-slider,.vxe-color-picker--inner,.vxe-color-picker--preview-btn{background:#fff url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAYAAAA7MK6iAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAWElEQVRIiWM8fubkfwYygKWJOSM5+mCAhRLNoxaPWjxq8ajFoxbTyeL/DAfJ0Xjs3Cl7Siwmu4Yht1aDgZEYx6MWj1o8avGoxaMWD3qLya5X//4nqx6HAQC7RBGFzolqTAAAAABJRU5ErkJggg==)}.vxe-color-picker--inner,.vxe-color-picker--readonly-color{width:100%;height:100%;background-size:1em 1em;border-radius:var(--vxe-ui-base-border-radius)}.vxe-color-picker--readonly-color{border:1px solid var(--vxe-ui-input-border-color)}.vxe-color-picker--inner{cursor:pointer}.vxe-color-picker--input{position:absolute;z-index:-1;width:1px;height:1px;outline:0;border:0}.vxe-color-picker--inner-color{width:100%;height:100%;display:flex;flex-direction:row;align-items:center;justify-content:center;border:1px solid var(--vxe-ui-input-border-color);border-radius:var(--vxe-ui-base-border-radius)}.vxe-color-picker--panel-wrapper{position:relative;width:23.4em;border-radius:var(--vxe-ui-base-border-radius);border:1px solid var(--vxe-ui-base-popup-border-color);box-shadow:var(--vxe-ui-base-popup-box-shadow);background-color:var(--vxe-ui-layout-background-color)}.vxe-color-picker--panel{display:none;position:absolute;left:0;padding:4px 0;color:var(--vxe-ui-font-color);text-align:left}.vxe-color-picker--panel:not(.is--transfer){min-width:100%}.vxe-color-picker--panel.is--transfer{position:fixed}.vxe-color-picker--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}.vxe-color-picker--panel.ani--leave[placement=top]{transform-origin:center bottom}.vxe-color-picker--panel.ani--enter{opacity:1;transform:scaleY(1)}.vxe-color-picker--color-wrapper{position:relative;height:160px;overflow:hidden}.vxe-color-picker--black-bg,.vxe-color-picker--color-bg,.vxe-color-picker--white-bg{position:absolute;top:0;left:0;width:100%;height:100%}.vxe-color-picker--white-bg{background:linear-gradient(to right,#fff,rgba(255,255,255,0))}.vxe-color-picker--black-bg{background:linear-gradient(to top,#000,rgba(255,255,255,0))}.vxe-color-picker--color-active{position:absolute;left:0;top:0;width:.8em;height:.8em;border-radius:50%;border:1px solid #fff;background-color:transparent;box-shadow:0 0 4px 1px rgba(0,0,0,.3);transform:translate(-.4em,-.4em)}.vxe-color-picker--quick-wrapper{display:flex;flex-direction:row;flex-wrap:wrap;align-content:flex-start;overflow-x:hidden;overflow-y:auto;max-height:9.2em}.vxe-color-picker--quick-item{width:1.5em;height:1.5em;margin:.4em;border:1px solid var(--vxe-ui-base-popup-border-color);border-radius:var(--vxe-ui-base-border-radius);cursor:pointer;transition:transform .1s ease-in-out}.vxe-color-picker--quick-item:hover{transform:scale(1.2);border-color:var(--vxe-ui-font-primary-lighten-color)}.vxe-color-picker--quick-item:active{transform:scale(.8)}.vxe-color-picker--bar-wrapper{margin-top:.4em}.vxe-color-picker--slider-wrapper{display:flex;flex-direction:row}.vxe-color-picker--color-dropper,.vxe-color-picker--slider-preview{padding-left:.8em}.vxe-color-picker--color-dropper{display:flex;flex-direction:row;justify-content:center;align-items:center;padding-left:.8em;font-size:1.2em;cursor:pointer;transition:transform .1s ease-in-out}.vxe-color-picker--color-dropper:hover{color:var(--vxe-ui-font-primary-color)}.vxe-color-picker--color-dropper:active{transform:scale(.8)}.vxe-color-picker--slider-preview{display:flex;flex-direction:row;flex-shrink:0;align-items:center;justify-content:center}.vxe-color-picker--preview-btn,.vxe-color-picker--preview-color{width:2.2em;height:2.2em;border-radius:50%}.vxe-color-picker--preview-btn{background-size:.8em .8em}.vxe-color-picker--preview-color{position:relative;display:flex;flex-direction:row;align-items:center;justify-content:center;border:1px solid var(--vxe-ui-base-popup-border-color)}.vxe-color-picker--preview-color:hover::before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;border-radius:50%;background-color:rgba(0,0,0,.3);z-index:0}.vxe-color-picker--preview-color:hover .vxe-color-picker--preview-copy-btn{display:block;z-index:1}.vxe-color-picker--preview-color:active .vxe-color-picker--preview-copy-btn{font-size:.8em}.vxe-color-picker--preview-copy-btn{display:none;color:#fff;cursor:pointer}.vxe-color-picker--slider-handle{display:flex;flex-direction:column;justify-content:center;flex-grow:1;padding:0 .8em}.vxe-color-picker--bar-alpha-slider,.vxe-color-picker--bar-hue-slider{position:relative;height:1em;width:100%;margin:.4em 0;cursor:pointer}.vxe-color-picker--bar-alpha-bg,.vxe-color-picker--bar-alpha-slider,.vxe-color-picker--bar-hue-slider{border-radius:var(--vxe-ui-base-border-radius)}.vxe-color-picker--bar-hue-slider{background:linear-gradient(to left,red,#ff0 17%,#0f0 33%,#0ff,#00f 67%,#f0f 83%,red)}.vxe-color-picker--bar-alpha-btn,.vxe-color-picker--bar-hue-btn{position:absolute;left:0;top:-4px;width:.6em;height:calc(100% + 8px);border-radius:.2em;background-color:#fff;border:1px solid var(--vxe-ui-base-popup-border-color);transform:translateX(-.3em);cursor:grab;box-shadow:0 0 8px 0 rgba(0,0,0,.3);transition:transform .1s ease-in-out}.vxe-color-picker--bar-alpha-btn:hover,.vxe-color-picker--bar-hue-btn:hover{transform:translateX(-.3em) scale(1.1)}.vxe-color-picker--bar-alpha-btn:active,.vxe-color-picker--bar-hue-btn:active{transform:translateX(-.3em) scale(1.2);cursor:grabbing}.vxe-color-picker--bar-alpha-slider{background-size:1em 1em}.vxe-color-picker--bar-alpha-slider .vxe-color-picker--bar-alpha-bg{position:absolute;top:0;left:0;width:100%;height:100%}.vxe-color-picker--hex-wrapper,.vxe-color-picker--rgb-wrapper{text-align:center;margin-top:.4em}.vxe-color-picker--hex-wrapper{display:flex;flex-direction:row;padding:0 1.8em}.vxe-color-picker--hex-wrapper .vxe-color-picker--input-wrapper>.vxe-input{width:12em}.vxe-color-picker--hex-wrapper .vxe-color-picker--input-title{padding:0 .6em}.vxe-color-picker--input-title{color:var(--vxe-ui-input-placeholder-color)}.vxe-color-picker--rgb-wrapper .vxe-color-picker--input-wrapper{display:flex;flex-direction:row;align-items:center;justify-content:center}.vxe-color-picker--rgb-wrapper .vxe-color-picker--input-wrapper>.vxe-input{width:5.4em;margin:0 .4em}.vxe-color-picker--rgb-wrapper .vxe-color-picker--input-title{display:flex;flex-direction:row;align-items:center;justify-content:center;line-height:1.4em}.vxe-color-picker--rgb-wrapper .vxe-color-picker--input-title>span{display:block;width:50px;margin:0 .4em}.vxe-color-picker--footer-wrapper{text-align:right;margin-top:.4em;padding:0 .4em .4em .4em}.vxe-color-picker,.vxe-color-picker--readonly{height:var(--vxe-ui-input-height-default);line-height:var(--vxe-ui-input-height-default)}.vxe-color-picker--readonly.size--medium,.vxe-color-picker.size--medium{height:var(--vxe-ui-input-height-medium);line-height:var(--vxe-ui-input-height-medium)}.vxe-color-picker--readonly.size--small,.vxe-color-picker.size--small{height:var(--vxe-ui-input-height-small);line-height:var(--vxe-ui-input-height-small)}.vxe-color-picker--readonly.size--mini,.vxe-color-picker.size--mini{height:var(--vxe-ui-input-height-mini);line-height:var(--vxe-ui-input-height-mini)}.vxe-color-picker,.vxe-color-picker--panel,.vxe-color-picker--readonly{font-size:var(--vxe-ui-font-size-default)}.vxe-color-picker--panel.size--medium,.vxe-color-picker--readonly.size--medium,.vxe-color-picker.size--medium{font-size:var(--vxe-ui-font-size-medium)}.vxe-color-picker--panel.size--small,.vxe-color-picker--readonly.size--small,.vxe-color-picker.size--small{font-size:var(--vxe-ui-font-size-small)}.vxe-color-picker--panel.size--mini,.vxe-color-picker--readonly.size--mini,.vxe-color-picker.size--mini{font-size:var(--vxe-ui-font-size-mini)}
1
+ .vxe-color-picker.is--selected .vxe-color-picker--inner-color{color:#fff}.vxe-color-picker.is--active{border-color:var(--vxe-ui-font-primary-color)}.vxe-color-picker,.vxe-color-picker--readonly{position:relative;display:inline-block;width:2.4em;padding:.25em;border:1px solid var(--vxe-ui-input-border-color);border-radius:var(--vxe-ui-base-border-radius);background-color:var(--vxe-ui-layout-background-color)}.vxe-color-picker--bar-alpha-slider,.vxe-color-picker--inner,.vxe-color-picker--preview-btn{background:#fff url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAYAAAA7MK6iAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAWElEQVRIiWM8fubkfwYygKWJOSM5+mCAhRLNoxaPWjxq8ajFoxbTyeL/DAfJ0Xjs3Cl7Siwmu4Yht1aDgZEYx6MWj1o8avGoxaMWD3qLya5X//4nqx6HAQC7RBGFzolqTAAAAABJRU5ErkJggg==)}.vxe-color-picker--inner,.vxe-color-picker--readonly-color{width:100%;height:100%;background-size:1em 1em;border-radius:var(--vxe-ui-base-border-radius)}.vxe-color-picker--readonly-color{border:1px solid var(--vxe-ui-input-border-color)}.vxe-color-picker--inner{cursor:pointer}.vxe-color-picker--input{position:absolute;z-index:-1;width:1px;height:1px;outline:0;border:0}.vxe-color-picker--inner-color{width:100%;height:100%;display:flex;flex-direction:row;align-items:center;justify-content:center;border:1px solid var(--vxe-ui-input-border-color);border-radius:var(--vxe-ui-base-border-radius)}.vxe-color-picker--panel-wrapper{position:relative;width:23.4em;border-radius:var(--vxe-ui-base-border-radius);border:1px solid var(--vxe-ui-base-popup-border-color);box-shadow:var(--vxe-ui-base-popup-box-shadow);background-color:var(--vxe-ui-layout-background-color)}.vxe-color-picker--panel{display:none;position:absolute;left:0;padding:4px 0;color:var(--vxe-ui-font-color);text-align:left}.vxe-color-picker--panel:not(.is--transfer){min-width:100%}.vxe-color-picker--panel.is--transfer{position:fixed}.vxe-color-picker--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}.vxe-color-picker--panel.ani--leave[placement=top]{transform-origin:center bottom}.vxe-color-picker--panel.ani--enter{opacity:1;transform:scaleY(1)}.vxe-color-picker--panel.ani--enter>div::after{display:none}.vxe-color-picker--panel>div::after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;z-index:1;-webkit-user-select:none;-moz-user-select:none;user-select:none}.vxe-color-picker--color-wrapper{position:relative;height:160px;overflow:hidden}.vxe-color-picker--black-bg,.vxe-color-picker--color-bg,.vxe-color-picker--white-bg{position:absolute;top:0;left:0;width:100%;height:100%}.vxe-color-picker--white-bg{background:linear-gradient(to right,#fff,rgba(255,255,255,0))}.vxe-color-picker--black-bg{background:linear-gradient(to top,#000,rgba(255,255,255,0))}.vxe-color-picker--color-active{position:absolute;left:0;top:0;width:.8em;height:.8em;border-radius:50%;border:1px solid #fff;background-color:transparent;box-shadow:0 0 4px 1px rgba(0,0,0,.3);transform:translate(-.4em,-.4em)}.vxe-color-picker--quick-wrapper{display:flex;flex-direction:row;flex-wrap:wrap;align-content:flex-start;overflow-x:hidden;overflow-y:auto;max-height:9.2em}.vxe-color-picker--quick-item{width:1.5em;height:1.5em;margin:.4em;border:1px solid var(--vxe-ui-base-popup-border-color);border-radius:var(--vxe-ui-base-border-radius);cursor:pointer;transition:transform .1s ease-in-out}.vxe-color-picker--quick-item:hover{transform:scale(1.2);border-color:var(--vxe-ui-font-primary-lighten-color)}.vxe-color-picker--quick-item:active{transform:scale(.8)}.vxe-color-picker--bar-wrapper{margin-top:.4em}.vxe-color-picker--slider-wrapper{display:flex;flex-direction:row}.vxe-color-picker--color-dropper,.vxe-color-picker--slider-preview{padding-left:.8em}.vxe-color-picker--color-dropper{display:flex;flex-direction:row;justify-content:center;align-items:center;padding-left:.8em;font-size:1.2em;cursor:pointer;transition:transform .1s ease-in-out}.vxe-color-picker--color-dropper:hover{color:var(--vxe-ui-font-primary-color)}.vxe-color-picker--color-dropper:active{transform:scale(.8)}.vxe-color-picker--slider-preview{display:flex;flex-direction:row;flex-shrink:0;align-items:center;justify-content:center}.vxe-color-picker--preview-btn,.vxe-color-picker--preview-color{width:2.2em;height:2.2em;border-radius:50%}.vxe-color-picker--preview-btn{background-size:.8em .8em}.vxe-color-picker--preview-color{position:relative;display:flex;flex-direction:row;align-items:center;justify-content:center;border:1px solid var(--vxe-ui-base-popup-border-color)}.vxe-color-picker--preview-color:hover::before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;border-radius:50%;background-color:rgba(0,0,0,.3);z-index:0}.vxe-color-picker--preview-color:hover .vxe-color-picker--preview-copy-btn{display:block;z-index:1}.vxe-color-picker--preview-color:active .vxe-color-picker--preview-copy-btn{font-size:.8em}.vxe-color-picker--preview-copy-btn{display:none;color:#fff;cursor:pointer}.vxe-color-picker--slider-handle{display:flex;flex-direction:column;justify-content:center;flex-grow:1;padding:0 .8em}.vxe-color-picker--bar-alpha-slider,.vxe-color-picker--bar-hue-slider{position:relative;height:1em;width:100%;margin:.4em 0;cursor:pointer}.vxe-color-picker--bar-alpha-bg,.vxe-color-picker--bar-alpha-slider,.vxe-color-picker--bar-hue-slider{border-radius:var(--vxe-ui-base-border-radius)}.vxe-color-picker--bar-hue-slider{background:linear-gradient(to left,red,#ff0 17%,#0f0 33%,#0ff,#00f 67%,#f0f 83%,red)}.vxe-color-picker--bar-alpha-btn,.vxe-color-picker--bar-hue-btn{position:absolute;left:0;top:-4px;width:.6em;height:calc(100% + 8px);border-radius:.2em;background-color:#fff;border:1px solid var(--vxe-ui-base-popup-border-color);transform:translateX(-.3em);cursor:grab;box-shadow:0 0 8px 0 rgba(0,0,0,.3);transition:transform .1s ease-in-out}.vxe-color-picker--bar-alpha-btn:hover,.vxe-color-picker--bar-hue-btn:hover{transform:translateX(-.3em) scale(1.1)}.vxe-color-picker--bar-alpha-btn:active,.vxe-color-picker--bar-hue-btn:active{transform:translateX(-.3em) scale(1.2);cursor:grabbing}.vxe-color-picker--bar-alpha-slider{background-size:1em 1em}.vxe-color-picker--bar-alpha-slider .vxe-color-picker--bar-alpha-bg{position:absolute;top:0;left:0;width:100%;height:100%}.vxe-color-picker--hex-wrapper,.vxe-color-picker--rgb-wrapper{text-align:center;margin-top:.4em}.vxe-color-picker--hex-wrapper{display:flex;flex-direction:row;padding:0 1.8em}.vxe-color-picker--hex-wrapper .vxe-color-picker--input-wrapper>.vxe-input{width:12em}.vxe-color-picker--hex-wrapper .vxe-color-picker--input-title{padding:0 .6em}.vxe-color-picker--input-title{color:var(--vxe-ui-input-placeholder-color)}.vxe-color-picker--rgb-wrapper .vxe-color-picker--input-wrapper{display:flex;flex-direction:row;align-items:center;justify-content:center}.vxe-color-picker--rgb-wrapper .vxe-color-picker--input-wrapper>.vxe-input{width:5.4em;margin:0 .4em}.vxe-color-picker--rgb-wrapper .vxe-color-picker--input-title{display:flex;flex-direction:row;align-items:center;justify-content:center;line-height:1.4em}.vxe-color-picker--rgb-wrapper .vxe-color-picker--input-title>span{display:block;width:50px;margin:0 .4em}.vxe-color-picker--footer-wrapper{text-align:right;margin-top:.4em;padding:0 .4em .4em .4em}.vxe-color-picker,.vxe-color-picker--readonly{height:var(--vxe-ui-input-height-default);line-height:var(--vxe-ui-input-height-default)}.vxe-color-picker--readonly.size--medium,.vxe-color-picker.size--medium{height:var(--vxe-ui-input-height-medium);line-height:var(--vxe-ui-input-height-medium)}.vxe-color-picker--readonly.size--small,.vxe-color-picker.size--small{height:var(--vxe-ui-input-height-small);line-height:var(--vxe-ui-input-height-small)}.vxe-color-picker--readonly.size--mini,.vxe-color-picker.size--mini{height:var(--vxe-ui-input-height-mini);line-height:var(--vxe-ui-input-height-mini)}.vxe-color-picker,.vxe-color-picker--panel,.vxe-color-picker--readonly{font-size:var(--vxe-ui-font-size-default)}.vxe-color-picker--panel.size--medium,.vxe-color-picker--readonly.size--medium,.vxe-color-picker.size--medium{font-size:var(--vxe-ui-font-size-medium)}.vxe-color-picker--panel.size--small,.vxe-color-picker--readonly.size--small,.vxe-color-picker.size--small{font-size:var(--vxe-ui-font-size-small)}.vxe-color-picker--panel.size--mini,.vxe-color-picker--readonly.size--mini,.vxe-color-picker.size--mini{font-size:var(--vxe-ui-font-size-mini)}
@@ -524,85 +524,28 @@ var _default = exports.default = (0, _vue.defineComponent)({
524
524
  }
525
525
  };
526
526
  const updatePlacement = () => {
527
- return (0, _vue.nextTick)().then(() => {
528
- const {
529
- placement
530
- } = props;
531
- const {
532
- panelIndex
533
- } = reactData;
534
- const targetElem = refInputTarget.value;
535
- const panelElem = refInputPanel.value;
536
- const btnTransfer = computeBtnTransfer.value;
537
- if (targetElem && panelElem) {
538
- const targetHeight = targetElem.offsetHeight;
539
- const targetWidth = targetElem.offsetWidth;
540
- const panelHeight = panelElem.offsetHeight;
541
- const panelWidth = panelElem.offsetWidth;
542
- const marginSize = 5;
543
- const panelStyle = {
544
- zIndex: panelIndex
545
- };
546
- const {
547
- boundingTop,
548
- boundingLeft,
549
- visibleHeight,
550
- visibleWidth
551
- } = (0, _dom.getAbsolutePos)(targetElem);
552
- let panelPlacement = 'bottom';
553
- if (btnTransfer) {
554
- let left = boundingLeft;
555
- let top = boundingTop + targetHeight;
556
- if (placement === 'top') {
557
- panelPlacement = 'top';
558
- top = boundingTop - panelHeight;
559
- } else if (!placement) {
560
- // 如果下面不够放,则向上
561
- if (top + panelHeight + marginSize > visibleHeight) {
562
- panelPlacement = 'top';
563
- top = boundingTop - panelHeight;
564
- }
565
- // 如果上面不够放,则向下(优先)
566
- if (top < marginSize) {
567
- panelPlacement = 'bottom';
568
- top = boundingTop + targetHeight;
569
- }
570
- }
571
- // 如果溢出右边
572
- if (left + panelWidth + marginSize > visibleWidth) {
573
- left -= left + panelWidth + marginSize - visibleWidth;
574
- }
575
- // 如果溢出左边
576
- if (left < marginSize) {
577
- left = marginSize;
578
- }
579
- Object.assign(panelStyle, {
580
- left: `${left}px`,
581
- top: `${top}px`,
582
- minWidth: `${targetWidth}px`
583
- });
584
- } else {
585
- if (placement === 'top') {
586
- panelPlacement = 'top';
587
- panelStyle.bottom = `${targetHeight}px`;
588
- } else if (!placement) {
589
- // 如果下面不够放,则向上
590
- panelStyle.top = `${targetHeight}px`;
591
- if (boundingTop + targetHeight + panelHeight > visibleHeight) {
592
- // 如果上面不够放,则向下(优先)
593
- if (boundingTop - targetHeight - panelHeight > marginSize) {
594
- panelPlacement = 'top';
595
- panelStyle.top = '';
596
- panelStyle.bottom = `${targetHeight}px`;
597
- }
598
- }
599
- }
600
- }
601
- reactData.panelStyle = panelStyle;
602
- reactData.panelPlacement = panelPlacement;
603
- return (0, _vue.nextTick)();
604
- }
605
- });
527
+ const {
528
+ placement
529
+ } = props;
530
+ const {
531
+ panelIndex
532
+ } = reactData;
533
+ const targetElem = refInputTarget.value;
534
+ const panelElem = refInputPanel.value;
535
+ const btnTransfer = computeBtnTransfer.value;
536
+ const handleStyle = () => {
537
+ const ppObj = (0, _dom.updatePanelPlacement)(targetElem, panelElem, {
538
+ placement,
539
+ teleportTo: btnTransfer
540
+ });
541
+ const panelStyle = Object.assign(ppObj.style, {
542
+ zIndex: panelIndex
543
+ });
544
+ reactData.panelStyle = panelStyle;
545
+ reactData.panelPlacement = ppObj.placement;
546
+ };
547
+ handleStyle();
548
+ return (0, _vue.nextTick)().then(handleStyle);
606
549
  };
607
550
  const showPanel = () => {
608
551
  const {
@@ -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"),_utils=require("../../ui/src/utils"),_dom=require("../../ui/src/dom"),_vn=require("../../ui/src/vn"),_util=require("../../date-panel/src/util"),_log=require("../../ui/src/log"),_datePanel=_interopRequireDefault(require("../../date-panel/src/date-panel")),_button=_interopRequireDefault(require("../../button/src/button")),_buttonGroup=_interopRequireDefault(require("../../button/src/button-group"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var _default=exports.default=(0,_vue.defineComponent)({name:"VxeDatePicker",props:{modelValue:[String,Number,Date],immediate:{type:Boolean,default:!0},name:String,type:{type:String,default:"date"},clearable:{type:Boolean,default:()=>(0,_ui.getConfig)().datePicker.clearable},readonly:{type:Boolean,default:null},disabled:{type:Boolean,default:null},placeholder:String,autoComplete:{type:String,default:"off"},form:String,className:String,size:{type:String,default:()=>(0,_ui.getConfig)().datePicker.size||(0,_ui.getConfig)().size},multiple:Boolean,limitCount:{type:[String,Number],default:()=>(0,_ui.getConfig)().upload.limitCount},startDate:{type:[String,Number,Date],default:()=>(0,_ui.getConfig)().datePicker.startDate},endDate:{type:[String,Number,Date],default:()=>(0,_ui.getConfig)().datePicker.endDate},defaultDate:[String,Number,Date],minDate:[String,Number,Date],maxDate:[String,Number,Date],startDay:{type:[String,Number],default:()=>(0,_ui.getConfig)().datePicker.startDay},labelFormat:String,valueFormat:String,editable:{type:Boolean,default:!0},festivalMethod:{type:Function,default:()=>(0,_ui.getConfig)().datePicker.festivalMethod},disabledMethod:{type:Function,default:()=>(0,_ui.getConfig)().datePicker.disabledMethod},selectDay:{type:[String,Number],default:()=>(0,_ui.getConfig)().datePicker.selectDay},showClearButton:{type:Boolean,default:()=>(0,_ui.getConfig)().datePicker.showClearButton},showConfirmButton:{type:Boolean,default:()=>(0,_ui.getConfig)().datePicker.showConfirmButton},autoClose:{type:Boolean,default:()=>(0,_ui.getConfig)().datePicker.autoClose},prefixIcon:String,suffixIcon:String,placement:String,transfer:{type:Boolean,default:null},shortcutConfig:Object,startWeek:Number},emits:["update:modelValue","input","change","keydown","keyup","click","focus","blur","clear","prefix-click","suffix-click","date-prev","date-today","date-next","shortcut-click"],setup(k,e){const{slots:C,emit:l}=e,d=(0,_vue.inject)("$xeModal",null),g=(0,_vue.inject)("$xeDrawer",null),b=(0,_vue.inject)("$xeTable",null),i=(0,_vue.inject)("$xeForm",null),u=(0,_vue.inject)("xeFormItemInfo",null);var t=_xeUtils.default.uniqueId();const D=(0,_ui.useSize)(k)["computeSize"],P=(0,_vue.reactive)({initialized:!1,panelIndex:0,visiblePanel:!1,isAniVisible:!1,panelStyle:{},panelPlacement:"",isActivated:!1,inputValue:"",inputLabel:""}),a={hpTimeout:void 0},h=(0,_vue.ref)(),y=(0,_vue.ref)(),w=(0,_vue.ref)(),V=(0,_vue.ref)(),E=(0,_vue.ref)(),j={refElem:h,refInput:y},S={xID:t,props:k,context:e,reactData:P,internalData:a,getRefMaps:()=>j},I=(0,_vue.computed)(()=>{var e=k["transfer"];if(null===e){var t=(0,_ui.getConfig)().datePicker.transfer;if(_xeUtils.default.isBoolean(t))return t;if(b||d||g||i)return!0}return e}),x=(0,_vue.computed)(()=>{var e=k["readonly"];return null===e?!!i&&i.props.readonly:e}),N=(0,_vue.computed)(()=>{var e=k["disabled"];return null===e?!!i&&i.props.disabled:e}),T=(0,_vue.computed)(()=>{var e=k["type"];return"time"===e||"datetime"===e}),r=(0,_vue.computed)(()=>{return T.value||-1<["date","week","month","quarter","year"].indexOf(k.type)}),q=(0,_vue.computed)(()=>k.clearable),L=(0,_vue.computed)(()=>{var{type:e,editable:t,multiple:a}=k;return x.value||a||!t||"week"===e||"quarter"===e}),U=(0,_vue.computed)(()=>{var e=k["placeholder"];return(e=e||(0,_ui.getConfig)().datePicker.placeholder)?(0,_utils.getFuncText)(e):(0,_ui.getI18n)("vxe.base.pleaseSelect")}),n=(0,_vue.computed)(()=>{var e=k["immediate"];return e}),B=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().datePicker.shortcutConfig,k.shortcutConfig)),M=(0,_vue.computed)(()=>{var e=B.value["options"];return e?e.map((e,t)=>Object.assign({name:""+(e.name||e.code||t)},e)):[]}),$=(0,_vue.computed)(()=>{var e=k["labelFormat"];return e||(0,_ui.getI18n)("vxe.input.date.labelFormat."+k.type)}),c=(0,_vue.computed)(()=>{var{type:e,valueFormat:t}=k;return t||("time"===e?"HH:mm:ss":"datetime"===e?"yyyy-MM-dd HH:mm:ss":"yyyy-MM-dd")}),p=(0,_vue.computed)(()=>{var e=k["startDay"];return _xeUtils.default.toNumber(e)}),A=(0,_vue.computed)(()=>{const{type:t,multiple:e}=k;var a=P["inputValue"];const l=$.value,i=c.value,u=p.value;return(a?e?a.split(","):[a]:[]).map(e=>{return(0,_util.parseDateObj)(e,t,{valueFormat:i,labelFormat:l,firstDay:u}).label}).join(", ")}),o=()=>{var e=k["modelValue"];let t="";e&&(t=_xeUtils.default.isNumber(e)&&/^[0-9]{11,15}$/.test(""+e)?new Date(e):e),P.inputValue=t},s=e=>{var t=P["inputValue"];_(e.type,{value:t},e)},m=(e,t)=>{var a=k["modelValue"];P.inputValue=e,l("update:modelValue",e),_xeUtils.default.toValueString(a)!==e&&(_("change",{value:e},t),i)&&u&&i.triggerItemEvent(t,u.itemConfig.field,e)},O=e=>{var t=e.target.value;P.inputLabel=t,_("input",{value:t},e)},R=e=>{n.value||s(e)},H=e=>{P.isActivated=!0,r.value&&le(e),s(e)},W=e=>{var t;N.value||(t=P["inputValue"],_("prefix-click",{value:t},e))},f=()=>new Promise(e=>{P.visiblePanel=!1,a.hpTimeout=setTimeout(()=>{P.isAniVisible=!1,e()},350)}),F=(e,t)=>{r.value&&f(),m("",e),_("clear",{value:t},e)},K=e=>{var t;N.value||(t=P["inputValue"],_("suffix-click",{value:t},e))},G=e=>{var t=E.value,a=P["inputValue"];n.value||m(a,e),P.visiblePanel||(P.isActivated=!1),t&&t.checkValue(P.inputLabel),_("blur",{value:a},e),i&&u&&i.triggerItemEvent(e,u.itemConfig.field,a)},Z=e=>{s(e)},J=e=>{s(e)},Q=e=>{var t=E.value;t&&t.confirmByEvent(e),f()},X=e=>{var{multiple:t,autoClose:a}=k,{value:e,$event:l}=e,i=T.value;m(e,l),t||i||a&&f()},Y=e=>{var t=E.value,{visiblePanel:a,isActivated:l}=P,i=h.value,u=V.value;!N.value&&l&&(P.isActivated=(0,_dom.getEventTargetNode)(e,i).flag||(0,_dom.getEventTargetNode)(e,u).flag,P.isActivated||a&&(f(),t)&&t.checkValue(P.inputLabel))},ee=e=>{var t=P["visiblePanel"];N.value||t&&(t=V.value,((0,_dom.getEventTargetNode)(e,t).flag?v:f)())},te=()=>{var e=E.value,{isActivated:t,visiblePanel:a}=P;a?(f(),e&&e.checkValue(P.inputLabel)):t&&e&&e.checkValue(P.inputLabel)},v=()=>(0,_vue.nextTick)().then(()=>{var l=k["placement"],i=P["panelIndex"],u=y.value,r=w.value,e=I.value;if(u&&r){var n=u.offsetHeight,o=u.offsetWidth,s=r.offsetHeight,r=r.offsetWidth,i={zIndex:i},{boundingTop:u,boundingLeft:v,visibleHeight:d,visibleWidth:c}=(0,_dom.getAbsolutePos)(u);let a="bottom";if(e){let e=v,t=u+n;"top"===l?(a="top",t=u-s):l||(t+s+5>d&&(a="top",t=u-s),t<5&&(a="bottom",t=u+n)),e+r+5>c&&(e-=e+r+5-c),e<5&&(e=5),Object.assign(i,{left:e+"px",top:t+"px",minWidth:o+"px"})}else"top"===l?(a="top",i.bottom=n+"px"):l||(i.top=n+"px",d<u+n+s&&5<u-n-s&&(a="top",i.top="",i.bottom=n+"px"));return P.panelStyle=i,P.panelPlacement=a,(0,_vue.nextTick)()}}),ae=()=>{var e=P["visiblePanel"];return(N.value||e?(0,_vue.nextTick):(P.initialized||(P.initialized=!0),a.hpTimeout&&(clearTimeout(a.hpTimeout),a.hpTimeout=void 0),P.isActivated=!0,P.isAniVisible=!0,setTimeout(()=>{P.visiblePanel=!0},10),P.panelIndex<(0,_utils.getLastZIndex)()&&(P.panelIndex=(0,_utils.nextZIndex)()),v))()},le=e=>{x.value||(e.preventDefault(),ae())},ie=e=>{s(e)},ue=({option:e,$event:t})=>{var a=k["type"],l=P["inputValue"],i=B.value,u=i["autoClose"],{code:r,clickMethod:n}=e,o=l,s={$datePicker:S,option:e,value:o,code:r};if(!n&&r){l=_ui.commands.get(r),e=l?l.datePickerCommandMethod:null;if(e)e(s);else{var v=c.value,d=p.value;switch(r){case"now":case"prev":case"next":case"minus":case"plus":o=(0,_util.getDateByCode)(r,o,a,{valueFormat:v,firstDay:d}).value;s.value=o,m(o,t);break;default:(0,_log.errLog)("vxe.error.notCommands",[r])}}}else{l=n||i.clickMethod;l&&l(s)}u&&f(),_("shortcut-click",s,t)},_=(e,t,a)=>{l(e,(0,_ui.createEvent)(a,{$datePicker:S},t))};t={dispatchEvent:_,setModelValue(e){P.inputValue=e,l("update:modelValue",e)},setModelValueByEvent(e,t){m(t||"",e)},focus(){var e=y.value;return P.isActivated=!0,e.focus(),(0,_vue.nextTick)()},blur(){return y.value.blur(),(P.isActivated=!1,_vue.nextTick)()},select(){return y.value.select(),(P.isActivated=!1,_vue.nextTick)()},showPanel:ae,hidePanel:f,updatePlacement:v};Object.assign(S,t);const z=(e,t)=>{var a=B.value,{position:l,align:i,mode:u}=a,r=M.value;return(0,_utils.isEnableConf)(a)&&r.length&&(l||"left")===e?(0,_vue.h)("div",{class:`vxe-date-picker--layout-${e}-wrapper`},[(0,_vue.h)(_buttonGroup.default,{options:r,mode:u,align:i,vertical:t,onClick:ue})]):(0,_ui.renderEmptyElement)(S)},re=()=>(0,_vue.h)("div",{class:"vxe-date-picker--control-icon",onClick:le},[(0,_vue.h)("i",{class:["vxe-date-picker--date-picker-icon",(0,_ui.getIcon)().DATE_PICKER_DATE]})]);return(0,_vue.watch)(A,e=>{P.inputLabel=e}),(0,_vue.watch)(()=>k.modelValue,()=>{o()}),(0,_vue.nextTick)(()=>{_ui.globalEvents.on(S,"mousewheel",ee),_ui.globalEvents.on(S,"mousedown",Y),_ui.globalEvents.on(S,"blur",te)}),(0,_vue.onUnmounted)(()=>{_ui.globalEvents.off(S,"mousewheel"),_ui.globalEvents.off(S,"mousedown"),_ui.globalEvents.off(S,"blur")}),o(),(0,_vue.provide)("$xeDatePicker",S),S.renderVN=()=>{var e,t,a,l,i,u,r,{className:n,type:o,name:s,autoComplete:v}=k,{inputValue:d,inputLabel:c,visiblePanel:p,isActivated:m}=P,f=D.value,_=N.value,g=x.value,b=A.value;return g?(0,_vue.h)("div",{ref:h,class:["vxe-date-picker--readonly","type--"+o,n]},b):(g=L.value,b=U.value,e=q.value,a=k.prefixIcon,t=(t=C.prefix)||a?(0,_vue.h)("div",{class:"vxe-date-picker--prefix",onClick:W},[(0,_vue.h)("div",{class:"vxe-date-picker--prefix-icon"},t?(0,_vn.getSlotVNs)(t({})):[(0,_vue.h)("i",{class:a})])]):null,a=k.suffixIcon,l=P.inputValue,i=C.suffix,u=N.value,r=q.value,u=(0,_vue.h)("div",{class:["vxe-date-picker--suffix",{"is--clear":r&&!u&&!(""===l||_xeUtils.default.eqNull(l))}]},[r?(0,_vue.h)("div",{class:"vxe-date-picker--clear-icon",onClick:F},[(0,_vue.h)("i",{class:(0,_ui.getIcon)().INPUT_CLEAR})]):(0,_ui.renderEmptyElement)(S),re(),i||a?(0,_vue.h)("div",{class:"vxe-date-picker--suffix-icon",onClick:K},i?(0,_vn.getSlotVNs)(i({})):[(0,_vue.h)("i",{class:a})]):(0,_ui.renderEmptyElement)(S)]),(0,_vue.h)("div",{ref:h,class:["vxe-date-picker","type--"+o,n,{["size--"+f]:f,"is--prefix":!!t,"is--suffix":!!u,"is--visible":p,"is--disabled":_,"is--active":m,"show--clear":e&&!_&&!(""===d||_xeUtils.default.eqNull(d))}],spellcheck:!1},[t||(0,_ui.renderEmptyElement)(S),(0,_vue.h)("div",{class:"vxe-date-picker--wrapper"},[(0,_vue.h)("input",{ref:y,class:"vxe-date-picker--inner",value:c,name:s,type:"text",placeholder:b,readonly:g,disabled:_,autocomplete:v,onKeydown:Z,onKeyup:J,onClick:ie,onInput:O,onChange:R,onFocus:H,onBlur:G})]),u||(0,_ui.renderEmptyElement)(S),(()=>{var{type:e,multiple:t,showClearButton:a,showConfirmButton:l}=k,{initialized:i,isAniVisible:u,visiblePanel:r,panelPlacement:n,panelStyle:o,inputValue:s}=P,v=D.value,d=I.value,c=B.value,p=q.value,m=T.value,f=M.value,c=c["position"],_=C.header,g=C.footer,b=C.top,h=C.bottom,y=C.left,x=C.right,f=0<f.length,m=null===l?m||t:l,t=null===a?p&&m&&"time"!==e:a;return(0,_vue.h)(_vue.Teleport,{to:"body",disabled:!d||!i},[(0,_vue.h)("div",{ref:w,class:["vxe-table--ignore-clear vxe-date-picker--panel","type--"+e,{["size--"+v]:v,"is--transfer":d,"ani--leave":u,"ani--enter":r,"show--top":!!(b||_||f&&("top"===c||"header"===c)),"show--bottom":!!(h||g||f&&("bottom"===c||"footer"===c)),"show--left":!!(y||f&&"left"===c),"show--right":!!(x||f&&"right"===c)}],placement:n,style:o},i&&(r||u)?[(0,_vue.h)("div",{ref:V,class:["vxe-date-picker--layout-all-wrapper","type--"+e,{["size--"+v]:v}]},[b?(0,_vue.h)("div",{class:"vxe-date-picker--layout-top-wrapper"},b({})):z("top"),(0,_vue.h)("div",{class:"vxe-date-picker--layout-body-layout-wrapper"},[y?(0,_vue.h)("div",{class:"vxe-date-picker--layout-left-wrapper"},y({})):z("left",!0),(0,_vue.h)("div",{class:"vxe-date-picker--layout-body-content-wrapper"},[_?(0,_vue.h)("div",{class:"vxe-date-picker--layout-header-wrapper"},_({})):z("header"),(0,_vue.h)("div",{class:"vxe-date-picker--layout-body-wrapper"},[(0,_vue.h)(_datePanel.default,{ref:E,modelValue:P.inputValue,type:k.type,className:k.className,multiple:k.multiple,limitCount:k.limitCount,startDate:k.startDate,endDate:k.endDate,minDate:k.minDate,defaultDate:k.defaultDate,maxDate:k.maxDate,startDay:k.startDay,labelFormat:k.labelFormat,valueFormat:k.valueFormat,festivalMethod:k.festivalMethod,disabledMethod:k.disabledMethod,selectDay:k.selectDay,onChange:X})]),(0,_vue.h)("div",{class:"vxe-date-picker--layout-footer-wrapper"},[(0,_vue.h)("div",{class:"vxe-date-picker--layout-footer-custom"},g?g({}):[z("footer")]),t||m?(0,_vue.h)("div",{class:"vxe-date-picker--layout-footer-btns"},[t?(0,_vue.h)(_button.default,{size:"mini",disabled:""===s||_xeUtils.default.eqNull(s),content:(0,_ui.getI18n)("vxe.button.clear"),onClick:F}):(0,_ui.renderEmptyElement)(S),m?(0,_vue.h)(_button.default,{size:"mini",status:"primary",content:(0,_ui.getI18n)("vxe.button.confirm"),onClick:Q}):(0,_ui.renderEmptyElement)(S)]):(0,_ui.renderEmptyElement)(S)])]),x?(0,_vue.h)("div",{class:"vxe-date-picker--layout-right-wrapper"},x({})):z("right",!0)]),h?(0,_vue.h)("div",{class:"vxe-date-picker--layout-bottom-wrapper"},h({})):z("bottom")])]:[])])})()]))},S},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"),_utils=require("../../ui/src/utils"),_dom=require("../../ui/src/dom"),_vn=require("../../ui/src/vn"),_util=require("../../date-panel/src/util"),_log=require("../../ui/src/log"),_datePanel=_interopRequireDefault(require("../../date-panel/src/date-panel")),_button=_interopRequireDefault(require("../../button/src/button")),_buttonGroup=_interopRequireDefault(require("../../button/src/button-group"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var _default=exports.default=(0,_vue.defineComponent)({name:"VxeDatePicker",props:{modelValue:[String,Number,Date],immediate:{type:Boolean,default:!0},name:String,type:{type:String,default:"date"},clearable:{type:Boolean,default:()=>(0,_ui.getConfig)().datePicker.clearable},readonly:{type:Boolean,default:null},disabled:{type:Boolean,default:null},placeholder:String,autoComplete:{type:String,default:"off"},form:String,className:String,size:{type:String,default:()=>(0,_ui.getConfig)().datePicker.size||(0,_ui.getConfig)().size},multiple:Boolean,limitCount:{type:[String,Number],default:()=>(0,_ui.getConfig)().upload.limitCount},startDate:{type:[String,Number,Date],default:()=>(0,_ui.getConfig)().datePicker.startDate},endDate:{type:[String,Number,Date],default:()=>(0,_ui.getConfig)().datePicker.endDate},defaultDate:[String,Number,Date],minDate:[String,Number,Date],maxDate:[String,Number,Date],startDay:{type:[String,Number],default:()=>(0,_ui.getConfig)().datePicker.startDay},labelFormat:String,valueFormat:String,editable:{type:Boolean,default:!0},festivalMethod:{type:Function,default:()=>(0,_ui.getConfig)().datePicker.festivalMethod},disabledMethod:{type:Function,default:()=>(0,_ui.getConfig)().datePicker.disabledMethod},selectDay:{type:[String,Number],default:()=>(0,_ui.getConfig)().datePicker.selectDay},showClearButton:{type:Boolean,default:()=>(0,_ui.getConfig)().datePicker.showClearButton},showConfirmButton:{type:Boolean,default:()=>(0,_ui.getConfig)().datePicker.showConfirmButton},autoClose:{type:Boolean,default:()=>(0,_ui.getConfig)().datePicker.autoClose},prefixIcon:String,suffixIcon:String,placement:String,transfer:{type:Boolean,default:null},shortcutConfig:Object,startWeek:Number},emits:["update:modelValue","input","change","keydown","keyup","click","focus","blur","clear","prefix-click","suffix-click","date-prev","date-today","date-next","shortcut-click"],setup(k,e){const{slots:C,emit:l}=e,d=(0,_vue.inject)("$xeModal",null),g=(0,_vue.inject)("$xeDrawer",null),b=(0,_vue.inject)("$xeTable",null),u=(0,_vue.inject)("$xeForm",null),i=(0,_vue.inject)("xeFormItemInfo",null);var t=_xeUtils.default.uniqueId();const D=(0,_ui.useSize)(k)["computeSize"],P=(0,_vue.reactive)({initialized:!1,panelIndex:0,visiblePanel:!1,isAniVisible:!1,panelStyle:{},panelPlacement:"",isActivated:!1,inputValue:"",inputLabel:""}),a={hpTimeout:void 0},y=(0,_vue.ref)(),h=(0,_vue.ref)(),w=(0,_vue.ref)(),V=(0,_vue.ref)(),E=(0,_vue.ref)(),j={refElem:y,refInput:h},S={xID:t,props:k,context:e,reactData:P,internalData:a,getRefMaps:()=>j},I=(0,_vue.computed)(()=>{var e=k["transfer"];if(null===e){var t=(0,_ui.getConfig)().datePicker.transfer;if(_xeUtils.default.isBoolean(t))return t;if(b||d||g||u)return!0}return e}),x=(0,_vue.computed)(()=>{var e=k["readonly"];return null===e?!!u&&u.props.readonly:e}),N=(0,_vue.computed)(()=>{var e=k["disabled"];return null===e?!!u&&u.props.disabled:e}),T=(0,_vue.computed)(()=>{var e=k["type"];return"time"===e||"datetime"===e}),r=(0,_vue.computed)(()=>{return T.value||-1<["date","week","month","quarter","year"].indexOf(k.type)}),q=(0,_vue.computed)(()=>k.clearable),L=(0,_vue.computed)(()=>{var{type:e,editable:t,multiple:a}=k;return x.value||a||!t||"week"===e||"quarter"===e}),U=(0,_vue.computed)(()=>{var e=k["placeholder"];return(e=e||(0,_ui.getConfig)().datePicker.placeholder)?(0,_utils.getFuncText)(e):(0,_ui.getI18n)("vxe.base.pleaseSelect")}),n=(0,_vue.computed)(()=>{var e=k["immediate"];return e}),B=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().datePicker.shortcutConfig,k.shortcutConfig)),M=(0,_vue.computed)(()=>{var e=B.value["options"];return e?e.map((e,t)=>Object.assign({name:""+(e.name||e.code||t)},e)):[]}),$=(0,_vue.computed)(()=>{var e=k["labelFormat"];return e||(0,_ui.getI18n)("vxe.input.date.labelFormat."+k.type)}),c=(0,_vue.computed)(()=>{var{type:e,valueFormat:t}=k;return t||("time"===e?"HH:mm:ss":"datetime"===e?"yyyy-MM-dd HH:mm:ss":"yyyy-MM-dd")}),p=(0,_vue.computed)(()=>{var e=k["startDay"];return _xeUtils.default.toNumber(e)}),A=(0,_vue.computed)(()=>{const{type:t,multiple:e}=k;var a=P["inputValue"];const l=$.value,u=c.value,i=p.value;return(a?e?a.split(","):[a]:[]).map(e=>{return(0,_util.parseDateObj)(e,t,{valueFormat:u,labelFormat:l,firstDay:i}).label}).join(", ")}),o=()=>{var e=k["modelValue"];let t="";e&&(t=_xeUtils.default.isNumber(e)&&/^[0-9]{11,15}$/.test(""+e)?new Date(e):e),P.inputValue=t},v=e=>{var t=P["inputValue"];_(e.type,{value:t},e)},m=(e,t)=>{var a=k["modelValue"];P.inputValue=e,l("update:modelValue",e),_xeUtils.default.toValueString(a)!==e&&(_("change",{value:e},t),u)&&i&&u.triggerItemEvent(t,i.itemConfig.field,e)},O=e=>{var t=e.target.value;P.inputLabel=t,_("input",{value:t},e)},R=e=>{n.value||v(e)},H=e=>{P.isActivated=!0,r.value&&le(e),v(e)},K=e=>{var t;N.value||(t=P["inputValue"],_("prefix-click",{value:t},e))},f=()=>new Promise(e=>{P.visiblePanel=!1,a.hpTimeout=setTimeout(()=>{P.isAniVisible=!1,e()},350)}),F=(e,t)=>{r.value&&f(),m("",e),_("clear",{value:t},e)},G=e=>{var t;N.value||(t=P["inputValue"],_("suffix-click",{value:t},e))},Z=e=>{var t=E.value,a=P["inputValue"];n.value||m(a,e),P.visiblePanel||(P.isActivated=!1),t&&t.checkValue(P.inputLabel),_("blur",{value:a},e),u&&i&&u.triggerItemEvent(e,i.itemConfig.field,a)},W=e=>{v(e)},J=e=>{v(e)},Q=e=>{var t=E.value;t&&t.confirmByEvent(e),f()},X=e=>{var{multiple:t,autoClose:a}=k,{value:e,$event:l}=e,u=T.value;m(e,l),t||u||a&&f()},Y=e=>{var t=E.value,{visiblePanel:a,isActivated:l}=P,u=y.value,i=V.value;!N.value&&l&&(P.isActivated=(0,_dom.getEventTargetNode)(e,u).flag||(0,_dom.getEventTargetNode)(e,i).flag,P.isActivated||a&&(f(),t)&&t.checkValue(P.inputLabel))},ee=e=>{var t=P["visiblePanel"];N.value||t&&(t=V.value,((0,_dom.getEventTargetNode)(e,t).flag?s:f)())},te=()=>{var e=E.value,{isActivated:t,visiblePanel:a}=P;a?(f(),e&&e.checkValue(P.inputLabel)):t&&e&&e.checkValue(P.inputLabel)},s=()=>{const a=k["placement"],l=P["panelIndex"],u=h.value,i=w.value,r=I.value;var e=()=>{var e=(0,_dom.updatePanelPlacement)(u,i,{placement:a,teleportTo:r}),t=Object.assign(e.style,{zIndex:l});P.panelStyle=t,P.panelPlacement=e.placement};return e(),(0,_vue.nextTick)().then(e)},ae=()=>{var e=P["visiblePanel"];return(N.value||e?(0,_vue.nextTick):(P.initialized||(P.initialized=!0),a.hpTimeout&&(clearTimeout(a.hpTimeout),a.hpTimeout=void 0),P.isActivated=!0,P.isAniVisible=!0,setTimeout(()=>{P.visiblePanel=!0},10),P.panelIndex<(0,_utils.getLastZIndex)()&&(P.panelIndex=(0,_utils.nextZIndex)()),s))()},le=e=>{x.value||(e.preventDefault(),ae())},ue=e=>{v(e)},ie=({option:e,$event:t})=>{var a=k["type"],l=P["inputValue"],u=B.value,i=u["autoClose"],{code:r,clickMethod:n}=e,o=l,v={$datePicker:S,option:e,value:o,code:r};if(!n&&r){l=_ui.commands.get(r),e=l?l.datePickerCommandMethod:null;if(e)e(v);else{var s=c.value,d=p.value;switch(r){case"now":case"prev":case"next":case"minus":case"plus":o=(0,_util.getDateByCode)(r,o,a,{valueFormat:s,firstDay:d}).value;v.value=o,m(o,t);break;default:(0,_log.errLog)("vxe.error.notCommands",[r])}}}else{l=n||u.clickMethod;l&&l(v)}i&&f(),_("shortcut-click",v,t)},_=(e,t,a)=>{l(e,(0,_ui.createEvent)(a,{$datePicker:S},t))};t={dispatchEvent:_,setModelValue(e){P.inputValue=e,l("update:modelValue",e)},setModelValueByEvent(e,t){m(t||"",e)},focus(){var e=h.value;return P.isActivated=!0,e.focus(),(0,_vue.nextTick)()},blur(){return h.value.blur(),(P.isActivated=!1,_vue.nextTick)()},select(){return h.value.select(),(P.isActivated=!1,_vue.nextTick)()},showPanel:ae,hidePanel:f,updatePlacement:s};Object.assign(S,t);const z=(e,t)=>{var a=B.value,{position:l,align:u,mode:i}=a,r=M.value;return(0,_utils.isEnableConf)(a)&&r.length&&(l||"left")===e?(0,_vue.h)("div",{class:`vxe-date-picker--layout-${e}-wrapper`},[(0,_vue.h)(_buttonGroup.default,{options:r,mode:i,align:u,vertical:t,onClick:ie})]):(0,_ui.renderEmptyElement)(S)},re=()=>(0,_vue.h)("div",{class:"vxe-date-picker--control-icon",onClick:le},[(0,_vue.h)("i",{class:["vxe-date-picker--date-picker-icon",(0,_ui.getIcon)().DATE_PICKER_DATE]})]);return(0,_vue.watch)(A,e=>{P.inputLabel=e}),(0,_vue.watch)(()=>k.modelValue,()=>{o()}),(0,_vue.nextTick)(()=>{_ui.globalEvents.on(S,"mousewheel",ee),_ui.globalEvents.on(S,"mousedown",Y),_ui.globalEvents.on(S,"blur",te)}),(0,_vue.onUnmounted)(()=>{_ui.globalEvents.off(S,"mousewheel"),_ui.globalEvents.off(S,"mousedown"),_ui.globalEvents.off(S,"blur")}),o(),(0,_vue.provide)("$xeDatePicker",S),S.renderVN=()=>{var e,t,a,l,u,i,r,{className:n,type:o,name:v,autoComplete:s}=k,{inputValue:d,inputLabel:c,visiblePanel:p,isActivated:m}=P,f=D.value,_=N.value,g=x.value,b=A.value;return g?(0,_vue.h)("div",{ref:y,class:["vxe-date-picker--readonly","type--"+o,n]},b):(g=L.value,b=U.value,e=q.value,a=k.prefixIcon,t=(t=C.prefix)||a?(0,_vue.h)("div",{class:"vxe-date-picker--prefix",onClick:K},[(0,_vue.h)("div",{class:"vxe-date-picker--prefix-icon"},t?(0,_vn.getSlotVNs)(t({})):[(0,_vue.h)("i",{class:a})])]):null,a=k.suffixIcon,l=P.inputValue,u=C.suffix,i=N.value,r=q.value,i=(0,_vue.h)("div",{class:["vxe-date-picker--suffix",{"is--clear":r&&!i&&!(""===l||_xeUtils.default.eqNull(l))}]},[r?(0,_vue.h)("div",{class:"vxe-date-picker--clear-icon",onClick:F},[(0,_vue.h)("i",{class:(0,_ui.getIcon)().INPUT_CLEAR})]):(0,_ui.renderEmptyElement)(S),re(),u||a?(0,_vue.h)("div",{class:"vxe-date-picker--suffix-icon",onClick:G},u?(0,_vn.getSlotVNs)(u({})):[(0,_vue.h)("i",{class:a})]):(0,_ui.renderEmptyElement)(S)]),(0,_vue.h)("div",{ref:y,class:["vxe-date-picker","type--"+o,n,{["size--"+f]:f,"is--prefix":!!t,"is--suffix":!!i,"is--visible":p,"is--disabled":_,"is--active":m,"show--clear":e&&!_&&!(""===d||_xeUtils.default.eqNull(d))}],spellcheck:!1},[t||(0,_ui.renderEmptyElement)(S),(0,_vue.h)("div",{class:"vxe-date-picker--wrapper"},[(0,_vue.h)("input",{ref:h,class:"vxe-date-picker--inner",value:c,name:v,type:"text",placeholder:b,readonly:g,disabled:_,autocomplete:s,onKeydown:W,onKeyup:J,onClick:ue,onInput:O,onChange:R,onFocus:H,onBlur:Z})]),i||(0,_ui.renderEmptyElement)(S),(()=>{var{type:e,multiple:t,showClearButton:a,showConfirmButton:l}=k,{initialized:u,isAniVisible:i,visiblePanel:r,panelPlacement:n,panelStyle:o,inputValue:v}=P,s=D.value,d=I.value,c=B.value,p=q.value,m=T.value,f=M.value,c=c["position"],_=C.header,g=C.footer,b=C.top,y=C.bottom,h=C.left,x=C.right,f=0<f.length,m=null===l?m||t:l,t=null===a?p&&m&&"time"!==e:a;return(0,_vue.h)(_vue.Teleport,{to:"body",disabled:!d||!u},[(0,_vue.h)("div",{ref:w,class:["vxe-table--ignore-clear vxe-date-picker--panel","type--"+e,{["size--"+s]:s,"is--transfer":d,"ani--leave":i,"ani--enter":r,"show--top":!!(b||_||f&&("top"===c||"header"===c)),"show--bottom":!!(y||g||f&&("bottom"===c||"footer"===c)),"show--left":!!(h||f&&"left"===c),"show--right":!!(x||f&&"right"===c)}],placement:n,style:o},u&&(r||i)?[(0,_vue.h)("div",{ref:V,class:["vxe-date-picker--layout-all-wrapper","type--"+e,{["size--"+s]:s}]},[b?(0,_vue.h)("div",{class:"vxe-date-picker--layout-top-wrapper"},b({})):z("top"),(0,_vue.h)("div",{class:"vxe-date-picker--layout-body-layout-wrapper"},[h?(0,_vue.h)("div",{class:"vxe-date-picker--layout-left-wrapper"},h({})):z("left",!0),(0,_vue.h)("div",{class:"vxe-date-picker--layout-body-content-wrapper"},[_?(0,_vue.h)("div",{class:"vxe-date-picker--layout-header-wrapper"},_({})):z("header"),(0,_vue.h)("div",{class:"vxe-date-picker--layout-body-wrapper"},[(0,_vue.h)(_datePanel.default,{ref:E,modelValue:P.inputValue,type:k.type,className:k.className,multiple:k.multiple,limitCount:k.limitCount,startDate:k.startDate,endDate:k.endDate,minDate:k.minDate,defaultDate:k.defaultDate,maxDate:k.maxDate,startDay:k.startDay,labelFormat:k.labelFormat,valueFormat:k.valueFormat,festivalMethod:k.festivalMethod,disabledMethod:k.disabledMethod,selectDay:k.selectDay,onChange:X})]),(0,_vue.h)("div",{class:"vxe-date-picker--layout-footer-wrapper"},[(0,_vue.h)("div",{class:"vxe-date-picker--layout-footer-custom"},g?g({}):[z("footer")]),t||m?(0,_vue.h)("div",{class:"vxe-date-picker--layout-footer-btns"},[t?(0,_vue.h)(_button.default,{size:"mini",disabled:""===v||_xeUtils.default.eqNull(v),content:(0,_ui.getI18n)("vxe.button.clear"),onClick:F}):(0,_ui.renderEmptyElement)(S),m?(0,_vue.h)(_button.default,{size:"mini",status:"primary",content:(0,_ui.getI18n)("vxe.button.confirm"),onClick:Q}):(0,_ui.renderEmptyElement)(S)]):(0,_ui.renderEmptyElement)(S)])]),x?(0,_vue.h)("div",{class:"vxe-date-picker--layout-right-wrapper"},x({})):z("right",!0)]),y?(0,_vue.h)("div",{class:"vxe-date-picker--layout-bottom-wrapper"},y({})):z("bottom")])]:[])])})()]))},S},render(){return this.renderVN()}});
@@ -110,9 +110,11 @@
110
110
  left: 0;
111
111
  padding: 4px 0;
112
112
  color: var(--vxe-ui-font-color);
113
- font-size: var(--vxe-ui-font-size-default);
114
113
  text-align: left;
115
114
  }
115
+ .vxe-date-picker--panel:not(.is--transfer) {
116
+ min-width: 100%;
117
+ }
116
118
  .vxe-date-picker--panel.is--transfer {
117
119
  position: fixed;
118
120
  }
@@ -123,7 +125,6 @@
123
125
  transition: transform 0.3s cubic-bezier(0.23, 1, 0.32, 1), opacity 0.3s cubic-bezier(0.23, 1, 0.32, 1);
124
126
  transform-origin: center top;
125
127
  backface-visibility: hidden;
126
- transform-style: preserve-3d;
127
128
  }
128
129
  .vxe-date-picker--panel.ani--leave[placement=top] {
129
130
  transform-origin: center bottom;
@@ -1 +1 @@
1
- .vxe-date-picker--readonly{color:var(--vxe-ui-font-color);display:inline-flex}.vxe-date-picker--wrapper{flex-grow:1;overflow:hidden}.vxe-date-picker--inner{display:block;width:100%;height:100%;outline:0;margin:0;font-size:inherit;font-family:inherit;line-height:inherit;padding:0 .5em;color:var(--vxe-ui-font-color);border:0;border-radius:var(--vxe-ui-base-border-radius);background-color:var(--vxe-ui-layout-background-color);box-shadow:none}.vxe-date-picker--inner::-moz-placeholder{color:var(--vxe-ui-input-placeholder-color)}.vxe-date-picker--inner::placeholder{color:var(--vxe-ui-input-placeholder-color)}.vxe-date-picker--inner::-webkit-autofill{background-color:var(--vxe-ui-layout-background-color)}.vxe-date-picker--inner[disabled]{cursor:not-allowed;color:var(--vxe-ui-font-disabled-color);background-color:var(--vxe-ui-input-disabled-background-color)}.vxe-date-picker.is--disabled{background-color:var(--vxe-ui-input-disabled-background-color)}.vxe-date-picker.is--disabled .vxe-date-picker--clear-icon,.vxe-date-picker.is--disabled .vxe-date-picker--control-icon,.vxe-date-picker.is--disabled .vxe-date-picker--prefix,.vxe-date-picker.is--disabled .vxe-date-picker--suffix{cursor:not-allowed}.vxe-date-picker.is--disabled .vxe-date-picker--prefix,.vxe-date-picker.is--disabled .vxe-date-picker--suffix{background-color:var(--vxe-ui-input-disabled-background-color)}.vxe-date-picker{display:inline-flex;flex-direction:row;position:relative;border-radius:var(--vxe-ui-base-border-radius);width:180px;border:1px solid var(--vxe-ui-input-border-color)}.vxe-date-picker.is--active{border:1px solid var(--vxe-ui-font-primary-color)}.vxe-date-picker.show--clear:hover .vxe-date-picker--clear-icon{display:block}.vxe-date-picker--prefix,.vxe-date-picker--suffix{display:flex;flex-direction:row;align-items:center;flex-shrink:0;background-color:var(--vxe-ui-layout-background-color)}.vxe-date-picker--prefix-icon{padding-left:.5em}.vxe-date-picker--clear-icon,.vxe-date-picker--control-icon,.vxe-date-picker--suffix-icon{padding-right:.5em}.vxe-date-picker--clear-icon,.vxe-date-picker--control-icon{height:100%;color:var(--vxe-ui-input-placeholder-color);cursor:pointer}.vxe-date-picker--clear-icon{display:none}.vxe-date-picker--clear-icon:hover{color:var(--vxe-ui-font-color)}.vxe-date-picker--clear-icon:active{color:var(--vxe-ui-font-primary-color)}.vxe-date-picker--panel{display:none;position:absolute;left:0;padding:4px 0;color:var(--vxe-ui-font-color);font-size:var(--vxe-ui-font-size-default);text-align:left}.vxe-date-picker--panel.is--transfer{position:fixed}.vxe-date-picker--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-date-picker--panel.ani--leave[placement=top]{transform-origin:center bottom}.vxe-date-picker--panel.ani--enter{opacity:1;transform:scaleY(1)}.vxe-date-picker--panel.ani--enter>div::after{display:none}.vxe-date-picker--panel>div::after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;z-index:1;-webkit-user-select:none;-moz-user-select:none;user-select:none}.vxe-date-picker--panel{pointer-events:none}.vxe-date-picker--panel.show--right .vxe-date-picker--layout-datetime-layout-wrapper,.vxe-date-picker--panel.show--right .vxe-date-picker--layout-wrapper,.vxe-date-picker--panel.show--top .vxe-date-picker--layout-datetime-layout-wrapper,.vxe-date-picker--panel.show--top .vxe-date-picker--layout-wrapper{border-top-right-radius:0}.vxe-date-picker--panel.show--bottom .vxe-date-picker--layout-datetime-layout-wrapper,.vxe-date-picker--panel.show--bottom .vxe-date-picker--layout-wrapper,.vxe-date-picker--panel.show--right .vxe-date-picker--layout-datetime-layout-wrapper,.vxe-date-picker--panel.show--right .vxe-date-picker--layout-wrapper{border-bottom-right-radius:0}.vxe-date-picker--panel.show--bottom .vxe-date-picker--layout-datetime-layout-wrapper,.vxe-date-picker--panel.show--bottom .vxe-date-picker--layout-wrapper,.vxe-date-picker--panel.show--left .vxe-date-picker--layout-datetime-layout-wrapper,.vxe-date-picker--panel.show--left .vxe-date-picker--layout-wrapper{border-bottom-left-radius:0}.vxe-date-picker--panel.show--left .vxe-date-picker--layout-datetime-layout-wrapper,.vxe-date-picker--panel.show--left .vxe-date-picker--layout-wrapper,.vxe-date-picker--panel.show--top .vxe-date-picker--layout-datetime-layout-wrapper,.vxe-date-picker--panel.show--top .vxe-date-picker--layout-wrapper{border-top-left-radius:0}.vxe-date-picker--panel.show--top .vxe-date-picker--layout-datetime-layout-wrapper,.vxe-date-picker--panel.show--top .vxe-date-picker--layout-wrapper{border-top-width:1px}.vxe-date-picker--panel.show--bottom .vxe-date-picker--layout-datetime-layout-wrapper,.vxe-date-picker--panel.show--bottom .vxe-date-picker--layout-wrapper{border-bottom-width:1px}.vxe-date-picker--panel.show--left .vxe-date-picker--layout-datetime-layout-wrapper,.vxe-date-picker--panel.show--left .vxe-date-picker--layout-wrapper{border-left-width:1px}.vxe-date-picker--panel.show--right .vxe-date-picker--layout-datetime-layout-wrapper,.vxe-date-picker--panel.show--right .vxe-date-picker--layout-wrapper{border-right-width:1px}.vxe-date-picker--layout-all-wrapper{display:inline-flex;flex-direction:column;pointer-events:auto;background-color:var(--vxe-ui-layout-background-color);border:1px solid var(--vxe-ui-base-popup-border-color);box-shadow:0 0 6px 2px rgba(0,0,0,.1);border-radius:var(--vxe-ui-base-border-radius)}.vxe-date-picker--layout-body-layout-wrapper{display:flex;flex-direction:row;white-space:nowrap}.vxe-date-picker--layout-body-content-wrapper,.vxe-date-picker--layout-body-layout-wrapper,.vxe-date-picker--layout-body-wrapper{flex-grow:1}.vxe-date-picker--layout-body-wrapper{display:flex;flex-direction:row}.vxe-date-picker--layout-bottom-wrapper,.vxe-date-picker--layout-footer-wrapper,.vxe-date-picker--layout-header-wrapper,.vxe-date-picker--layout-left-wrapper,.vxe-date-picker--layout-right-wrapper,.vxe-date-picker--layout-top-wrapper{flex-shrink:0}.vxe-date-picker--layout-top-wrapper{border-bottom:1px solid var(--vxe-ui-base-popup-border-color)}.vxe-date-picker--layout-bottom-wrapper{border-top:1px solid var(--vxe-ui-base-popup-border-color)}.vxe-date-picker--layout-left-wrapper{border-right:1px solid var(--vxe-ui-base-popup-border-color)}.vxe-date-picker--layout-right-wrapper{border-left:1px solid var(--vxe-ui-base-popup-border-color)}.vxe-date-picker--layout-footer-wrapper{display:flex;flex-direction:row}.vxe-date-picker--layout-footer-custom{flex-grow:1}.vxe-date-picker--layout-footer-btns{flex-shrink:0;padding:0 .8em .8em .8em;display:flex;align-items:center}.vxe-date-picker{font-size:var(--vxe-ui-font-size-default);height:var(--vxe-ui-input-height-default);line-height:var(--vxe-ui-input-height-default)}.vxe-date-picker.size--medium{font-size:var(--vxe-ui-font-size-medium);height:var(--vxe-ui-input-height-medium);line-height:var(--vxe-ui-input-height-medium)}.vxe-date-picker.size--small{font-size:var(--vxe-ui-font-size-small);height:var(--vxe-ui-input-height-small);line-height:var(--vxe-ui-input-height-small)}.vxe-date-picker.size--mini{font-size:var(--vxe-ui-font-size-mini);height:var(--vxe-ui-input-height-mini);line-height:var(--vxe-ui-input-height-mini)}
1
+ .vxe-date-picker--readonly{color:var(--vxe-ui-font-color);display:inline-flex}.vxe-date-picker--wrapper{flex-grow:1;overflow:hidden}.vxe-date-picker--inner{display:block;width:100%;height:100%;outline:0;margin:0;font-size:inherit;font-family:inherit;line-height:inherit;padding:0 .5em;color:var(--vxe-ui-font-color);border:0;border-radius:var(--vxe-ui-base-border-radius);background-color:var(--vxe-ui-layout-background-color);box-shadow:none}.vxe-date-picker--inner::-moz-placeholder{color:var(--vxe-ui-input-placeholder-color)}.vxe-date-picker--inner::placeholder{color:var(--vxe-ui-input-placeholder-color)}.vxe-date-picker--inner::-webkit-autofill{background-color:var(--vxe-ui-layout-background-color)}.vxe-date-picker--inner[disabled]{cursor:not-allowed;color:var(--vxe-ui-font-disabled-color);background-color:var(--vxe-ui-input-disabled-background-color)}.vxe-date-picker.is--disabled{background-color:var(--vxe-ui-input-disabled-background-color)}.vxe-date-picker.is--disabled .vxe-date-picker--clear-icon,.vxe-date-picker.is--disabled .vxe-date-picker--control-icon,.vxe-date-picker.is--disabled .vxe-date-picker--prefix,.vxe-date-picker.is--disabled .vxe-date-picker--suffix{cursor:not-allowed}.vxe-date-picker.is--disabled .vxe-date-picker--prefix,.vxe-date-picker.is--disabled .vxe-date-picker--suffix{background-color:var(--vxe-ui-input-disabled-background-color)}.vxe-date-picker{display:inline-flex;flex-direction:row;position:relative;border-radius:var(--vxe-ui-base-border-radius);width:180px;border:1px solid var(--vxe-ui-input-border-color)}.vxe-date-picker.is--active{border:1px solid var(--vxe-ui-font-primary-color)}.vxe-date-picker.show--clear:hover .vxe-date-picker--clear-icon{display:block}.vxe-date-picker--prefix,.vxe-date-picker--suffix{display:flex;flex-direction:row;align-items:center;flex-shrink:0;background-color:var(--vxe-ui-layout-background-color)}.vxe-date-picker--prefix-icon{padding-left:.5em}.vxe-date-picker--clear-icon,.vxe-date-picker--control-icon,.vxe-date-picker--suffix-icon{padding-right:.5em}.vxe-date-picker--clear-icon,.vxe-date-picker--control-icon{height:100%;color:var(--vxe-ui-input-placeholder-color);cursor:pointer}.vxe-date-picker--clear-icon{display:none}.vxe-date-picker--clear-icon:hover{color:var(--vxe-ui-font-color)}.vxe-date-picker--clear-icon:active{color:var(--vxe-ui-font-primary-color)}.vxe-date-picker--panel{display:none;position:absolute;left:0;padding:4px 0;color:var(--vxe-ui-font-color);text-align:left}.vxe-date-picker--panel:not(.is--transfer){min-width:100%}.vxe-date-picker--panel.is--transfer{position:fixed}.vxe-date-picker--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}.vxe-date-picker--panel.ani--leave[placement=top]{transform-origin:center bottom}.vxe-date-picker--panel.ani--enter{opacity:1;transform:scaleY(1)}.vxe-date-picker--panel.ani--enter>div::after{display:none}.vxe-date-picker--panel>div::after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;z-index:1;-webkit-user-select:none;-moz-user-select:none;user-select:none}.vxe-date-picker--panel{pointer-events:none}.vxe-date-picker--panel.show--right .vxe-date-picker--layout-datetime-layout-wrapper,.vxe-date-picker--panel.show--right .vxe-date-picker--layout-wrapper,.vxe-date-picker--panel.show--top .vxe-date-picker--layout-datetime-layout-wrapper,.vxe-date-picker--panel.show--top .vxe-date-picker--layout-wrapper{border-top-right-radius:0}.vxe-date-picker--panel.show--bottom .vxe-date-picker--layout-datetime-layout-wrapper,.vxe-date-picker--panel.show--bottom .vxe-date-picker--layout-wrapper,.vxe-date-picker--panel.show--right .vxe-date-picker--layout-datetime-layout-wrapper,.vxe-date-picker--panel.show--right .vxe-date-picker--layout-wrapper{border-bottom-right-radius:0}.vxe-date-picker--panel.show--bottom .vxe-date-picker--layout-datetime-layout-wrapper,.vxe-date-picker--panel.show--bottom .vxe-date-picker--layout-wrapper,.vxe-date-picker--panel.show--left .vxe-date-picker--layout-datetime-layout-wrapper,.vxe-date-picker--panel.show--left .vxe-date-picker--layout-wrapper{border-bottom-left-radius:0}.vxe-date-picker--panel.show--left .vxe-date-picker--layout-datetime-layout-wrapper,.vxe-date-picker--panel.show--left .vxe-date-picker--layout-wrapper,.vxe-date-picker--panel.show--top .vxe-date-picker--layout-datetime-layout-wrapper,.vxe-date-picker--panel.show--top .vxe-date-picker--layout-wrapper{border-top-left-radius:0}.vxe-date-picker--panel.show--top .vxe-date-picker--layout-datetime-layout-wrapper,.vxe-date-picker--panel.show--top .vxe-date-picker--layout-wrapper{border-top-width:1px}.vxe-date-picker--panel.show--bottom .vxe-date-picker--layout-datetime-layout-wrapper,.vxe-date-picker--panel.show--bottom .vxe-date-picker--layout-wrapper{border-bottom-width:1px}.vxe-date-picker--panel.show--left .vxe-date-picker--layout-datetime-layout-wrapper,.vxe-date-picker--panel.show--left .vxe-date-picker--layout-wrapper{border-left-width:1px}.vxe-date-picker--panel.show--right .vxe-date-picker--layout-datetime-layout-wrapper,.vxe-date-picker--panel.show--right .vxe-date-picker--layout-wrapper{border-right-width:1px}.vxe-date-picker--layout-all-wrapper{display:inline-flex;flex-direction:column;pointer-events:auto;background-color:var(--vxe-ui-layout-background-color);border:1px solid var(--vxe-ui-base-popup-border-color);box-shadow:0 0 6px 2px rgba(0,0,0,.1);border-radius:var(--vxe-ui-base-border-radius)}.vxe-date-picker--layout-body-layout-wrapper{display:flex;flex-direction:row;white-space:nowrap}.vxe-date-picker--layout-body-content-wrapper,.vxe-date-picker--layout-body-layout-wrapper,.vxe-date-picker--layout-body-wrapper{flex-grow:1}.vxe-date-picker--layout-body-wrapper{display:flex;flex-direction:row}.vxe-date-picker--layout-bottom-wrapper,.vxe-date-picker--layout-footer-wrapper,.vxe-date-picker--layout-header-wrapper,.vxe-date-picker--layout-left-wrapper,.vxe-date-picker--layout-right-wrapper,.vxe-date-picker--layout-top-wrapper{flex-shrink:0}.vxe-date-picker--layout-top-wrapper{border-bottom:1px solid var(--vxe-ui-base-popup-border-color)}.vxe-date-picker--layout-bottom-wrapper{border-top:1px solid var(--vxe-ui-base-popup-border-color)}.vxe-date-picker--layout-left-wrapper{border-right:1px solid var(--vxe-ui-base-popup-border-color)}.vxe-date-picker--layout-right-wrapper{border-left:1px solid var(--vxe-ui-base-popup-border-color)}.vxe-date-picker--layout-footer-wrapper{display:flex;flex-direction:row}.vxe-date-picker--layout-footer-custom{flex-grow:1}.vxe-date-picker--layout-footer-btns{flex-shrink:0;padding:0 .8em .8em .8em;display:flex;align-items:center}.vxe-date-picker{font-size:var(--vxe-ui-font-size-default);height:var(--vxe-ui-input-height-default);line-height:var(--vxe-ui-input-height-default)}.vxe-date-picker.size--medium{font-size:var(--vxe-ui-font-size-medium);height:var(--vxe-ui-input-height-medium);line-height:var(--vxe-ui-input-height-medium)}.vxe-date-picker.size--small{font-size:var(--vxe-ui-font-size-small);height:var(--vxe-ui-input-height-small);line-height:var(--vxe-ui-input-height-small)}.vxe-date-picker.size--mini{font-size:var(--vxe-ui-font-size-mini);height:var(--vxe-ui-input-height-mini);line-height:var(--vxe-ui-input-height-mini)}
@@ -223,7 +223,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
223
223
  if (globalPlaceholder) {
224
224
  return (0, _utils.getFuncText)(globalPlaceholder);
225
225
  }
226
- return (0, _ui.getI18n)('vxe.base.pleaseSelect');
226
+ return (0, _ui.getI18n)('vxe.dateRangePicker.pleaseRange');
227
227
  });
228
228
  const computeInpImmediate = (0, _vue.computed)(() => {
229
229
  const {
@@ -569,11 +569,11 @@ var _default = exports.default = (0, _vue.defineComponent)({
569
569
  if ($startDatePanel && $endDatePanel) {
570
570
  const startValue = $startDatePanel.getModelValue();
571
571
  const endValue = $endDatePanel.getModelValue();
572
- if (startValue && endValue) {
572
+ if (startValue && !endValue || !startValue && endValue) {
573
+ handleChange('', '', evnt);
574
+ } else {
573
575
  $startDatePanel.confirmByEvent(evnt);
574
576
  $endDatePanel.confirmByEvent(evnt);
575
- } else {
576
- handleChange('', '', evnt);
577
577
  }
578
578
  }
579
579
  hidePanel();
@@ -678,85 +678,28 @@ var _default = exports.default = (0, _vue.defineComponent)({
678
678
  }
679
679
  };
680
680
  const updatePlacement = () => {
681
- return (0, _vue.nextTick)().then(() => {
682
- const {
683
- placement
684
- } = props;
685
- const {
686
- panelIndex
687
- } = reactData;
688
- const targetElem = refInputTarget.value;
689
- const panelElem = refInputPanel.value;
690
- const btnTransfer = computeBtnTransfer.value;
691
- if (targetElem && panelElem) {
692
- const targetHeight = targetElem.offsetHeight;
693
- const targetWidth = targetElem.offsetWidth;
694
- const panelHeight = panelElem.offsetHeight;
695
- const panelWidth = panelElem.offsetWidth;
696
- const marginSize = 5;
697
- const panelStyle = {
698
- zIndex: panelIndex
699
- };
700
- const {
701
- boundingTop,
702
- boundingLeft,
703
- visibleHeight,
704
- visibleWidth
705
- } = (0, _dom.getAbsolutePos)(targetElem);
706
- let panelPlacement = 'bottom';
707
- if (btnTransfer) {
708
- let left = boundingLeft;
709
- let top = boundingTop + targetHeight;
710
- if (placement === 'top') {
711
- panelPlacement = 'top';
712
- top = boundingTop - panelHeight;
713
- } else if (!placement) {
714
- // 如果下面不够放,则向上
715
- if (top + panelHeight + marginSize > visibleHeight) {
716
- panelPlacement = 'top';
717
- top = boundingTop - panelHeight;
718
- }
719
- // 如果上面不够放,则向下(优先)
720
- if (top < marginSize) {
721
- panelPlacement = 'bottom';
722
- top = boundingTop + targetHeight;
723
- }
724
- }
725
- // 如果溢出右边
726
- if (left + panelWidth + marginSize > visibleWidth) {
727
- left -= left + panelWidth + marginSize - visibleWidth;
728
- }
729
- // 如果溢出左边
730
- if (left < marginSize) {
731
- left = marginSize;
732
- }
733
- Object.assign(panelStyle, {
734
- left: `${left}px`,
735
- top: `${top}px`,
736
- minWidth: `${targetWidth}px`
737
- });
738
- } else {
739
- if (placement === 'top') {
740
- panelPlacement = 'top';
741
- panelStyle.bottom = `${targetHeight}px`;
742
- } else if (!placement) {
743
- // 如果下面不够放,则向上
744
- panelStyle.top = `${targetHeight}px`;
745
- if (boundingTop + targetHeight + panelHeight > visibleHeight) {
746
- // 如果上面不够放,则向下(优先)
747
- if (boundingTop - targetHeight - panelHeight > marginSize) {
748
- panelPlacement = 'top';
749
- panelStyle.top = '';
750
- panelStyle.bottom = `${targetHeight}px`;
751
- }
752
- }
753
- }
754
- }
755
- reactData.panelStyle = panelStyle;
756
- reactData.panelPlacement = panelPlacement;
757
- return (0, _vue.nextTick)();
758
- }
759
- });
681
+ const {
682
+ placement
683
+ } = props;
684
+ const {
685
+ panelIndex
686
+ } = reactData;
687
+ const targetElem = refInputTarget.value;
688
+ const panelElem = refInputPanel.value;
689
+ const btnTransfer = computeBtnTransfer.value;
690
+ const handleStyle = () => {
691
+ const ppObj = (0, _dom.updatePanelPlacement)(targetElem, panelElem, {
692
+ placement,
693
+ teleportTo: btnTransfer
694
+ });
695
+ const panelStyle = Object.assign(ppObj.style, {
696
+ zIndex: panelIndex
697
+ });
698
+ reactData.panelStyle = panelStyle;
699
+ reactData.panelPlacement = ppObj.placement;
700
+ };
701
+ handleStyle();
702
+ return (0, _vue.nextTick)().then(handleStyle);
760
703
  };
761
704
  const showPanel = () => {
762
705
  const {
@@ -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"),_utils=require("../../ui/src/utils"),_dom=require("../../ui/src/dom"),_util=require("../../date-panel/src/util"),_vn=require("../../ui/src/vn"),_log=require("../../ui/src/log"),_datePanel=_interopRequireDefault(require("../../date-panel/src/date-panel")),_button=_interopRequireDefault(require("../../button/src/button")),_buttonGroup=_interopRequireDefault(require("../../button/src/button-group"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var _default=exports.default=(0,_vue.defineComponent)({name:"VxeDateRangePicker",props:{modelValue:[String,Number,Date,Array],startValue:[String,Number,Date],endValue:[String,Number,Date],immediate:{type:Boolean,default:!0},name:String,type:{type:String,default:"date"},clearable:{type:Boolean,default:()=>(0,_ui.getConfig)().dateRangePicker.clearable},readonly:{type:Boolean,default:null},disabled:{type:Boolean,default:null},placeholder:String,autoComplete:{type:String,default:"off"},form:String,className:String,size:{type:String,default:()=>(0,_ui.getConfig)().dateRangePicker.size||(0,_ui.getConfig)().size},minDate:[String,Number,Date],maxDate:[String,Number,Date],defaultDate:[String,Number,Date],startDay:{type:[String,Number],default:()=>(0,_ui.getConfig)().dateRangePicker.startDay},labelFormat:String,valueFormat:String,editable:{type:Boolean,default:!0},festivalMethod:{type:Function,default:()=>(0,_ui.getConfig)().dateRangePicker.festivalMethod},disabledMethod:{type:Function,default:()=>(0,_ui.getConfig)().dateRangePicker.disabledMethod},separator:{type:[String,Number],default:()=>(0,_ui.getConfig)().dateRangePicker.separator},selectDay:{type:[String,Number],default:()=>(0,_ui.getConfig)().dateRangePicker.selectDay},showClearButton:{type:Boolean,default:()=>(0,_ui.getConfig)().dateRangePicker.showClearButton},showConfirmButton:{type:Boolean,default:()=>(0,_ui.getConfig)().dateRangePicker.showConfirmButton},autoClose:{type:Boolean,default:()=>(0,_ui.getConfig)().dateRangePicker.autoClose},prefixIcon:String,suffixIcon:String,placement:String,transfer:{type:Boolean,default:null},shortcutConfig:Object},emits:["update:modelValue","update:startValue","update:endValue","input","change","keydown","keyup","click","focus","blur","clear","prefix-click","suffix-click","date-prev","date-today","date-next","shortcut-click"],setup(P,e){const{slots:S,emit:r}=e,c=(0,_vue.inject)("$xeModal",null),p=(0,_vue.inject)("$xeDrawer",null),D=(0,_vue.inject)("$xeTable",null),i=(0,_vue.inject)("$xeForm",null),n=(0,_vue.inject)("xeFormItemInfo",null);var t=_xeUtils.default.uniqueId();const w=(0,_ui.useSize)(P)["computeSize"],E=(0,_vue.reactive)({initialized:!1,panelIndex:0,visiblePanel:!1,isAniVisible:!1,panelStyle:{},panelPlacement:"",isActivated:!1,startValue:"",endValue:""}),o={},f=(0,_vue.ref)(),g=(0,_vue.ref)(),M=(0,_vue.ref)(),F=(0,_vue.ref)(),R=(0,_vue.ref)(),I=(0,_vue.ref)(),C={refElem:f,refInput:g},T={xID:t,props:P,context:e,reactData:E,internalData:o,getRefMaps:()=>C};const N=(0,_vue.computed)(()=>{var e=P["transfer"];if(null===e){var t=(0,_ui.getConfig)().dateRangePicker.transfer;if(_xeUtils.default.isBoolean(t))return t;if(D||c||p||i)return!0}return e}),_=(0,_vue.computed)(()=>{var e=P["readonly"];return null===e?!!i&&i.props.readonly:e}),b=(0,_vue.computed)(()=>{var e=P["disabled"];return null===e?!!i&&i.props.disabled:e});t=(0,_vue.computed)(()=>{var{startValue:e,endValue:t}=P;return""+(e||"")+(t||"")});const z=(0,_vue.computed)(()=>{var e=P["type"];return"time"===e||"datetime"===e}),s=(0,_vue.computed)(()=>-1<["date","week","month","quarter","year"].indexOf(P.type)),A=(0,_vue.computed)(()=>P.clearable),U=(0,_vue.computed)(()=>{var e=P["placeholder"];return(e=e||(0,_ui.getConfig)().dateRangePicker.placeholder)?(0,_utils.getFuncText)(e):(0,_ui.getI18n)("vxe.base.pleaseSelect")}),l=(0,_vue.computed)(()=>{var e=P["immediate"];return e}),B=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().dateRangePicker.shortcutConfig,P.shortcutConfig)),q=(0,_vue.computed)(()=>{var e=B.value["options"];return e?e.map((e,t)=>Object.assign({name:""+(e.name||e.code||t)},e)):[]}),$=(0,_vue.computed)(()=>{var e=P["labelFormat"];return e||(0,_ui.getI18n)("vxe.input.date.labelFormat."+P.type)}),m=(0,_vue.computed)(()=>{var{type:e,valueFormat:t}=P;return t||("time"===e?"HH:mm:ss":"datetime"===e?"yyyy-MM-dd HH:mm:ss":"yyyy-MM-dd")}),h=(0,_vue.computed)(()=>{var e=P["startDay"];return _xeUtils.default.toNumber(e)}),O=(0,_vue.computed)(()=>{var{startValue:e,endValue:t}=E,e=e||t?[e||"",t||""]:[];return H(e)}),L=(0,_vue.computed)(()=>{return O.value.label}),H=e=>{var{type:t,separator:a}=P,l=$.value,u=m.value,r=h.value,i=e[0]?(0,_util.parseDateObj)(e[0],t,{valueFormat:u,labelFormat:l,firstDay:r}):null,e=e[1]?(0,_util.parseDateObj)(e[1],t,{valueFormat:u,labelFormat:l,firstDay:r}):null,t=i?i.label:"",u=e?e.label:"";return{label:(t||u?[t,u]:[]).join(""+(a||" ~ ")),startLabel:t,endLabel:u}},y=(e,t)=>{var a=P["modelValue"],a=_xeUtils.default.isArray(a);return e||t?(e=[e||"",t||""],a?e:e.join(",")):a?[]:""},W=()=>{var e,{type:t,modelValue:a}=P,l=m.value;let u="",r="";return _xeUtils.default.isArray(a)?(e=(0,_util.parseDateString)(a[0],t,{valueFormat:l}),t=(0,_util.parseDateString)(a[1],t,{valueFormat:l}),(e||t)&&(u=e||"",r=t||"")):_xeUtils.default.isString(a)&&((l=a.split(","))[0]||l[1])&&(u=l[0]||"",r=l[1]||""),{sValue:u,eValue:r}},K=()=>{var{type:e,startValue:t,endValue:a}=P,l=m.value;return{sValue:(0,_util.parseDateString)(t,e,{valueFormat:l}),eValue:(0,_util.parseDateString)(a,e,{valueFormat:l})}},a=e=>{var{modelValue:t,startValue:a,endValue:l}=P;let u={sValue:"",eValue:""};u=(e?t?W:K:a||l?K:W)(),E.startValue=u.sValue,E.endValue=u.eValue},u=e=>{var{startValue:t,endValue:a}=E,l=y(t,a);k(e.type,{value:l,startValue:t,endValue:a},e)},x=(e,t,a)=>{var l=P["modelValue"],u=(E.startValue=e,E.endValue=t,y(e,t));r("update:modelValue",u),r("update:startValue",e||""),r("update:endValue",t||""),_xeUtils.default.toValueString(l)!==u&&(k("change",{value:u},a),i)&&n&&i.triggerItemEvent(a,n.itemConfig.field,u)},G=e=>{l.value||u(e)},Z=e=>{E.isActivated=!0,de(e),u(e)},J=e=>{var t,a,l;b.value||({startValue:t,endValue:a}=E,l=y(t,a),k("prefix-click",{value:l,startValue:t,endValue:a},e))},V=()=>new Promise(e=>{E.visiblePanel=!1,o.hpTimeout=setTimeout(()=>{E.isAniVisible=!1,e()},350)}),Q=(e,t)=>{s.value&&V(),x("","",e),k("clear",{value:t},e)},d=()=>{var e=R.value,t=I.value;e&&t&&(e=e.getModelValue(),t=t.getModelValue(),e&&t||x("","",{type:"check"}))},X=()=>{var e=P["autoClose"],{startValue:t,endValue:a}=E,l=o["selectStatus"],u=s.value;e?l&&u&&t&&a&&V():t&&a&&(o.selectStatus=!1)},Y=e=>{var t,a,l;b.value||({startValue:t,endValue:a}=E,l=y(t,a),k("suffix-click",{value:l,startValue:t,endValue:a},e))},ee=e=>{var{startValue:t,endValue:a}=E;l.value||x(t,a,e),E.visiblePanel||(E.isActivated=!1),k("blur",{value:"",startValue:t,endValue:a},e),i&&n&&i.triggerItemEvent(e,n.itemConfig.field,"")},te=e=>{u(e)},ae=e=>{u(e)},le=e=>{var t,a,l=R.value,u=I.value;l&&u&&(t=l.getModelValue(),a=u.getModelValue(),t&&a?(l.confirmByEvent(e),u.confirmByEvent(e)):x("","",e)),V()},ue=e=>{var t=o["selectStatus"],{value:e,$event:a}=e;const l=t?E.endValue:"";x(e,l,a),X(),t||(o.selectStatus=!0),(0,_vue.nextTick)(()=>{var e=R.value,t=I.value;e&&t&&(e=e.getModelValue(),!l)&&e&&t.setPanelDate(_xeUtils.default.toStringDate(e))})},re=e=>{var t=o["selectStatus"],{value:e,$event:a}=e;const l=t?E.startValue:"";x(l,e,a),X(),t||(o.selectStatus=!0),(0,_vue.nextTick)(()=>{var e=R.value,t=I.value;e&&t&&(t=t.getModelValue(),!l)&&t&&e.setPanelDate(_xeUtils.default.toStringDate(t))})},ie=e=>{var{visiblePanel:t,isActivated:a}=E,l=f.value,u=F.value;!b.value&&a&&(E.isActivated=(0,_dom.getEventTargetNode)(e,l).flag||(0,_dom.getEventTargetNode)(e,u).flag,E.isActivated||t&&(d(),V()))},ne=e=>{var t=E["visiblePanel"];b.value||t&&(t=F.value,((0,_dom.getEventTargetNode)(e,t).flag?v:V)())},oe=()=>{var e=E["visiblePanel"];e&&V()},v=()=>(0,_vue.nextTick)().then(()=>{var l=P["placement"],u=E["panelIndex"],r=g.value,i=M.value,e=N.value;if(r&&i){var n=r.offsetHeight,o=r.offsetWidth,s=i.offsetHeight,i=i.offsetWidth,u={zIndex:u},{boundingTop:r,boundingLeft:d,visibleHeight:v,visibleWidth:c}=(0,_dom.getAbsolutePos)(r);let a="bottom";if(e){let e=d,t=r+n;"top"===l?(a="top",t=r-s):l||(t+s+5>v&&(a="top",t=r-s),t<5&&(a="bottom",t=r+n)),e+i+5>c&&(e-=e+i+5-c),e<5&&(e=5),Object.assign(u,{left:e+"px",top:t+"px",minWidth:o+"px"})}else"top"===l?(a="top",u.bottom=n+"px"):l||(u.top=n+"px",v<r+n+s&&5<r-n-s&&(a="top",u.top="",u.bottom=n+"px"));return E.panelStyle=u,E.panelPlacement=a,(0,_vue.nextTick)()}}),se=()=>{var e=E["visiblePanel"];return(b.value||e?(0,_vue.nextTick):(E.initialized||(E.initialized=!0),o.hpTimeout&&(clearTimeout(o.hpTimeout),o.hpTimeout=void 0),o.selectStatus=!1,E.isActivated=!0,E.isAniVisible=!0,setTimeout(()=>{E.visiblePanel=!0},10),E.panelIndex<(0,_utils.getLastZIndex)()&&(E.panelIndex=(0,_utils.nextZIndex)()),v))()},de=e=>{_.value||(e.preventDefault(),se())},ve=e=>{u(e)},ce=({option:e,$event:t})=>{var a=P["type"],l=B.value,u=l["autoClose"],{code:r,clickMethod:i}=e,n=E.startValue,o=E.endValue,s=y(n,o),d={$dateRangePicker:T,option:e,value:s,startValue:n,endValue:o,code:r};if(!i&&r){e=_ui.commands.get(r),e=e?e.dateRangePickerCommandMethod:null;if(e)e(d);else{var v=m.value,c=h.value;switch(r){case"last1":case"last3":case"last7":case"last30":case"last60":case"last90":case"last180":var p=(0,_util.getRangeDateByCode)(r,s,a,{valueFormat:v,firstDay:c}),n=p.startValue,o=p.endValue,s=y(n,o);d.value=s,d.startValue=n,d.endValue=o,x(n,o,t);break;default:(0,_log.errLog)("vxe.error.notCommands",[r])}}}else{e=i||l.clickMethod;e&&e(d)}u&&V(),k("shortcut-click",d,t)},k=(e,t,a)=>{r(e,(0,_ui.createEvent)(a,{$dateRangePicker:T},t))},j=(e={dispatchEvent:k,setModelValue(e,t){E.startValue=e||"",E.endValue=t||"";e=y(e,t);r("update:modelValue",e)},setModelValueByEvent(e,t,a){x(t||"",a||"",e)},focus(){var e=g.value;return E.isActivated=!0,e.focus(),(0,_vue.nextTick)()},blur(){return g.value.blur(),(E.isActivated=!1,_vue.nextTick)()},select(){return g.value.select(),(E.isActivated=!1,_vue.nextTick)()},showPanel:se,hidePanel:V,updatePlacement:v},Object.assign(T,e),(e,t)=>{var a=B.value,{position:l,align:u,mode:r}=a,i=q.value;return(0,_utils.isEnableConf)(a)&&i.length&&(l||"left")===e?(0,_vue.h)("div",{class:`vxe-date-range-picker--layout-${e}-wrapper`},[(0,_vue.h)(_buttonGroup.default,{options:i,mode:r,align:u,vertical:t,onClick:ce})]):(0,_ui.renderEmptyElement)(T)}),pe=()=>(0,_vue.h)("div",{class:"vxe-date-range-picker--control-icon",onClick:de},[(0,_vue.h)("i",{class:["vxe-date-range-picker--date-picker-icon",(0,_ui.getIcon)().DATE_PICKER_DATE]})]);return(0,_vue.watch)(()=>P.modelValue,()=>{a(!0)}),(0,_vue.watch)(t,()=>{a(!1)}),a(!0),(0,_vue.nextTick)(()=>{_ui.globalEvents.on(T,"mousewheel",ne),_ui.globalEvents.on(T,"mousedown",ie),_ui.globalEvents.on(T,"blur",oe)}),(0,_vue.onDeactivated)(()=>{d()}),(0,_vue.onUnmounted)(()=>{_ui.globalEvents.off(T,"mousewheel"),_ui.globalEvents.off(T,"mousedown"),_ui.globalEvents.off(T,"blur")}),(0,_vue.onBeforeUnmount)(()=>{d()}),(0,_vue.provide)("$xeDateRangePicker",T),T.renderVN=()=>{var e,t,a,{className:l,type:u,name:r,autoComplete:i}=P,{startValue:n,endValue:o,visiblePanel:s,isActivated:d}=E,v=w.value,c=b.value,p=_.value,m=L.value;return p?(0,_vue.h)("div",{ref:f,class:["vxe-date-range-picker--readonly","type--"+u,l]},m):(p=U.value,e=A.value,a=P.prefixIcon,t=(t=S.prefix)||a?(0,_vue.h)("div",{class:"vxe-date-range-picker--prefix",onClick:J},[(0,_vue.h)("div",{class:"vxe-date-range-picker--prefix-icon"},t?(0,_vn.getSlotVNs)(t({})):[(0,_vue.h)("i",{class:a})])]):null,a=(()=>{var e=P["suffixIcon"],{startValue:t,endValue:a}=E,l=S.suffix,u=b.value,r=A.value;return(0,_vue.h)("div",{class:["vxe-date-range-picker--suffix",{"is--clear":r&&!u&&(t||a)}]},[r?(0,_vue.h)("div",{class:"vxe-date-range-picker--clear-icon",onClick:Q},[(0,_vue.h)("i",{class:(0,_ui.getIcon)().INPUT_CLEAR})]):(0,_ui.renderEmptyElement)(T),pe(),l||e?(0,_vue.h)("div",{class:"vxe-date-range-picker--suffix-icon",onClick:Y},l?(0,_vn.getSlotVNs)(l({})):[(0,_vue.h)("i",{class:e})]):(0,_ui.renderEmptyElement)(T)])})(),(0,_vue.h)("div",{ref:f,class:["vxe-date-range-picker","type--"+u,l,{["size--"+v]:v,"is--prefix":!!t,"is--suffix":!!a,"is--visible":s,"is--disabled":c,"is--active":d,"show--clear":e&&!c&&(n||o)}],spellcheck:!1},[t||(0,_ui.renderEmptyElement)(T),(0,_vue.h)("div",{class:"vxe-date-range-picker--wrapper"},[(0,_vue.h)("input",{ref:g,class:"vxe-date-range-picker--inner",value:m,name:r,type:"text",placeholder:p,readonly:!0,disabled:c,autocomplete:i,onKeydown:te,onKeyup:ae,onClick:ve,onChange:G,onFocus:Z,onBlur:ee})]),a||(0,_ui.renderEmptyElement)(T),(()=>{var{type:e,separator:t,autoClose:a,showConfirmButton:l,showClearButton:u}=P,{initialized:r,isAniVisible:i,visiblePanel:n,panelPlacement:o,panelStyle:s,startValue:d,endValue:v}=E,c=w.value,p=N.value,m=B.value,f=A.value,g=O.value,_=q.value,b=z.value,{startLabel:g,endLabel:h}=g,m=m["position"],y=S.header,x=S.footer,V=S.top,k=S.bottom,D=S.left,C=S.right,_=0<_.length,b=null===l?b||!a:l,a=null===u?f:u;return(0,_vue.h)(_vue.Teleport,{to:"body",disabled:!p||!r},[(0,_vue.h)("div",{ref:M,class:["vxe-table--ignore-clear vxe-date-range-picker--panel","type--"+e,{["size--"+c]:c,"is--transfer":p,"ani--leave":i,"ani--enter":n,"show--top":!!(V||y||_&&("top"===m||"header"===m)),"show--bottom":!!(k||x||_&&("bottom"===m||"footer"===m)),"show--left":!!(D||_&&"left"===m),"show--right":!!(C||_&&"right"===m)}],placement:o,style:s},r&&(n||i)?[(0,_vue.h)("div",{ref:F,class:["vxe-date-range-picker--layout-all-wrapper","type--"+e,{["size--"+c]:c}]},[V?(0,_vue.h)("div",{class:"vxe-date-range-picker--layout-top-wrapper"},V({})):j("top"),(0,_vue.h)("div",{class:"vxe-date-range-picker--layout-body-layout-wrapper"},[D?(0,_vue.h)("div",{class:"vxe-date-range-picker--layout-left-wrapper"},D({})):j("left",!0),(0,_vue.h)("div",{class:"vxe-date-range-picker--layout-body-content-wrapper"},[y?(0,_vue.h)("div",{class:"vxe-date-range-picker--layout-header-wrapper"},y({})):j("header"),(0,_vue.h)("div",{class:"vxe-date-range-picker--layout-body-wrapper"},[(0,_vue.h)(_datePanel.default,{ref:R,modelValue:d,type:P.type,className:P.className,minDate:P.minDate,maxDate:P.maxDate,startDay:P.startDay,endDate:v,labelFormat:P.labelFormat,valueFormat:P.valueFormat,festivalMethod:P.festivalMethod,disabledMethod:P.disabledMethod,selectDay:P.selectDay,onChange:ue}),(0,_vue.h)(_datePanel.default,{ref:I,modelValue:v,type:P.type,className:P.className,minDate:P.minDate,maxDate:P.maxDate,startDay:P.startDay,startDate:d,labelFormat:P.labelFormat,valueFormat:P.valueFormat,festivalMethod:P.festivalMethod,disabledMethod:P.disabledMethod,selectDay:P.selectDay,onChange:re})]),(0,_vue.h)("div",{class:"vxe-date-range-picker--layout-footer-wrapper"},[(0,_vue.h)("div",{class:"vxe-date-range-picker--layout-footer-label"},g||h?[(0,_vue.h)("span",g),(0,_vue.h)("span",""+(t||"")),(0,_vue.h)("span",h)]:[]),(0,_vue.h)("div",{class:"vxe-date-range-picker--layout-footer-custom"},x?x({}):[j("footer")]),(0,_vue.h)("div",{class:"vxe-date-range-picker--layout-footer-btns"},[a?(0,_vue.h)(_button.default,{size:"mini",disabled:!(d||v),content:(0,_ui.getI18n)("vxe.button.clear"),onClick:Q}):(0,_ui.renderEmptyElement)(T),b?(0,_vue.h)(_button.default,{size:"mini",status:"primary",content:(0,_ui.getI18n)("vxe.button.confirm"),onClick:le}):(0,_ui.renderEmptyElement)(T)])])]),C?(0,_vue.h)("div",{class:"vxe-date-range-picker--layout-right-wrapper"},C({})):j("right",!0)]),k?(0,_vue.h)("div",{class:"vxe-date-range-picker--layout-bottom-wrapper"},k({})):j("bottom")])]:[])])})()]))},T},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"),_utils=require("../../ui/src/utils"),_dom=require("../../ui/src/dom"),_util=require("../../date-panel/src/util"),_vn=require("../../ui/src/vn"),_log=require("../../ui/src/log"),_datePanel=_interopRequireDefault(require("../../date-panel/src/date-panel")),_button=_interopRequireDefault(require("../../button/src/button")),_buttonGroup=_interopRequireDefault(require("../../button/src/button-group"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var _default=exports.default=(0,_vue.defineComponent)({name:"VxeDateRangePicker",props:{modelValue:[String,Number,Date,Array],startValue:[String,Number,Date],endValue:[String,Number,Date],immediate:{type:Boolean,default:!0},name:String,type:{type:String,default:"date"},clearable:{type:Boolean,default:()=>(0,_ui.getConfig)().dateRangePicker.clearable},readonly:{type:Boolean,default:null},disabled:{type:Boolean,default:null},placeholder:String,autoComplete:{type:String,default:"off"},form:String,className:String,size:{type:String,default:()=>(0,_ui.getConfig)().dateRangePicker.size||(0,_ui.getConfig)().size},minDate:[String,Number,Date],maxDate:[String,Number,Date],defaultDate:[String,Number,Date],startDay:{type:[String,Number],default:()=>(0,_ui.getConfig)().dateRangePicker.startDay},labelFormat:String,valueFormat:String,editable:{type:Boolean,default:!0},festivalMethod:{type:Function,default:()=>(0,_ui.getConfig)().dateRangePicker.festivalMethod},disabledMethod:{type:Function,default:()=>(0,_ui.getConfig)().dateRangePicker.disabledMethod},separator:{type:[String,Number],default:()=>(0,_ui.getConfig)().dateRangePicker.separator},selectDay:{type:[String,Number],default:()=>(0,_ui.getConfig)().dateRangePicker.selectDay},showClearButton:{type:Boolean,default:()=>(0,_ui.getConfig)().dateRangePicker.showClearButton},showConfirmButton:{type:Boolean,default:()=>(0,_ui.getConfig)().dateRangePicker.showConfirmButton},autoClose:{type:Boolean,default:()=>(0,_ui.getConfig)().dateRangePicker.autoClose},prefixIcon:String,suffixIcon:String,placement:String,transfer:{type:Boolean,default:null},shortcutConfig:Object},emits:["update:modelValue","update:startValue","update:endValue","input","change","keydown","keyup","click","focus","blur","clear","prefix-click","suffix-click","date-prev","date-today","date-next","shortcut-click"],setup(P,e){const{slots:S,emit:r}=e,c=(0,_vue.inject)("$xeModal",null),p=(0,_vue.inject)("$xeDrawer",null),D=(0,_vue.inject)("$xeTable",null),i=(0,_vue.inject)("$xeForm",null),n=(0,_vue.inject)("xeFormItemInfo",null);var t=_xeUtils.default.uniqueId();const w=(0,_ui.useSize)(P)["computeSize"],E=(0,_vue.reactive)({initialized:!1,panelIndex:0,visiblePanel:!1,isAniVisible:!1,panelStyle:{},panelPlacement:"",isActivated:!1,startValue:"",endValue:""}),o={},_=(0,_vue.ref)(),g=(0,_vue.ref)(),M=(0,_vue.ref)(),R=(0,_vue.ref)(),F=(0,_vue.ref)(),I=(0,_vue.ref)(),C={refElem:_,refInput:g},T={xID:t,props:P,context:e,reactData:E,internalData:o,getRefMaps:()=>C};const N=(0,_vue.computed)(()=>{var e=P["transfer"];if(null===e){var t=(0,_ui.getConfig)().dateRangePicker.transfer;if(_xeUtils.default.isBoolean(t))return t;if(D||c||p||i)return!0}return e}),f=(0,_vue.computed)(()=>{var e=P["readonly"];return null===e?!!i&&i.props.readonly:e}),y=(0,_vue.computed)(()=>{var e=P["disabled"];return null===e?!!i&&i.props.disabled:e});t=(0,_vue.computed)(()=>{var{startValue:e,endValue:t}=P;return""+(e||"")+(t||"")});const z=(0,_vue.computed)(()=>{var e=P["type"];return"time"===e||"datetime"===e}),s=(0,_vue.computed)(()=>-1<["date","week","month","quarter","year"].indexOf(P.type)),B=(0,_vue.computed)(()=>P.clearable),U=(0,_vue.computed)(()=>{var e=P["placeholder"];return(e=e||(0,_ui.getConfig)().dateRangePicker.placeholder)?(0,_utils.getFuncText)(e):(0,_ui.getI18n)("vxe.dateRangePicker.pleaseRange")}),l=(0,_vue.computed)(()=>{var e=P["immediate"];return e}),A=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().dateRangePicker.shortcutConfig,P.shortcutConfig)),q=(0,_vue.computed)(()=>{var e=A.value["options"];return e?e.map((e,t)=>Object.assign({name:""+(e.name||e.code||t)},e)):[]}),$=(0,_vue.computed)(()=>{var e=P["labelFormat"];return e||(0,_ui.getI18n)("vxe.input.date.labelFormat."+P.type)}),m=(0,_vue.computed)(()=>{var{type:e,valueFormat:t}=P;return t||("time"===e?"HH:mm:ss":"datetime"===e?"yyyy-MM-dd HH:mm:ss":"yyyy-MM-dd")}),h=(0,_vue.computed)(()=>{var e=P["startDay"];return _xeUtils.default.toNumber(e)}),O=(0,_vue.computed)(()=>{var{startValue:e,endValue:t}=E,e=e||t?[e||"",t||""]:[];return H(e)}),L=(0,_vue.computed)(()=>{return O.value.label}),H=e=>{var{type:t,separator:a}=P,l=$.value,u=m.value,r=h.value,i=e[0]?(0,_util.parseDateObj)(e[0],t,{valueFormat:u,labelFormat:l,firstDay:r}):null,e=e[1]?(0,_util.parseDateObj)(e[1],t,{valueFormat:u,labelFormat:l,firstDay:r}):null,t=i?i.label:"",u=e?e.label:"";return{label:(t||u?[t,u]:[]).join(""+(a||" ~ ")),startLabel:t,endLabel:u}},b=(e,t)=>{var a=P["modelValue"],a=_xeUtils.default.isArray(a);return e||t?(e=[e||"",t||""],a?e:e.join(",")):a?[]:""},K=()=>{var e,{type:t,modelValue:a}=P,l=m.value;let u="",r="";return _xeUtils.default.isArray(a)?(e=(0,_util.parseDateString)(a[0],t,{valueFormat:l}),t=(0,_util.parseDateString)(a[1],t,{valueFormat:l}),(e||t)&&(u=e||"",r=t||"")):_xeUtils.default.isString(a)&&((l=a.split(","))[0]||l[1])&&(u=l[0]||"",r=l[1]||""),{sValue:u,eValue:r}},G=()=>{var{type:e,startValue:t,endValue:a}=P,l=m.value;return{sValue:(0,_util.parseDateString)(t,e,{valueFormat:l}),eValue:(0,_util.parseDateString)(a,e,{valueFormat:l})}},a=e=>{var{modelValue:t,startValue:a,endValue:l}=P;let u={sValue:"",eValue:""};u=(e?t?K:G:a||l?G:K)(),E.startValue=u.sValue,E.endValue=u.eValue},u=e=>{var{startValue:t,endValue:a}=E,l=b(t,a);k(e.type,{value:l,startValue:t,endValue:a},e)},x=(e,t,a)=>{var l=P["modelValue"],u=(E.startValue=e,E.endValue=t,b(e,t));r("update:modelValue",u),r("update:startValue",e||""),r("update:endValue",t||""),_xeUtils.default.toValueString(l)!==u&&(k("change",{value:u},a),i)&&n&&i.triggerItemEvent(a,n.itemConfig.field,u)},Z=e=>{l.value||u(e)},J=e=>{E.isActivated=!0,de(e),u(e)},Q=e=>{var t,a,l;y.value||({startValue:t,endValue:a}=E,l=b(t,a),k("prefix-click",{value:l,startValue:t,endValue:a},e))},V=()=>new Promise(e=>{E.visiblePanel=!1,o.hpTimeout=setTimeout(()=>{E.isAniVisible=!1,e()},350)}),W=(e,t)=>{s.value&&V(),x("","",e),k("clear",{value:t},e)},d=()=>{var e=F.value,t=I.value;e&&t&&(e=e.getModelValue(),t=t.getModelValue(),e&&t||x("","",{type:"check"}))},X=()=>{var e=P["autoClose"],{startValue:t,endValue:a}=E,l=o["selectStatus"],u=s.value;e?l&&u&&t&&a&&V():t&&a&&(o.selectStatus=!1)},Y=e=>{var t,a,l;y.value||({startValue:t,endValue:a}=E,l=b(t,a),k("suffix-click",{value:l,startValue:t,endValue:a},e))},ee=e=>{var{startValue:t,endValue:a}=E;l.value||x(t,a,e),E.visiblePanel||(E.isActivated=!1),k("blur",{value:"",startValue:t,endValue:a},e),i&&n&&i.triggerItemEvent(e,n.itemConfig.field,"")},te=e=>{u(e)},ae=e=>{u(e)},le=e=>{var t,a,l=F.value,u=I.value;l&&u&&(t=l.getModelValue(),a=u.getModelValue(),t&&!a||!t&&a?x("","",e):(l.confirmByEvent(e),u.confirmByEvent(e))),V()},ue=e=>{var t=o["selectStatus"],{value:e,$event:a}=e;const l=t?E.endValue:"";x(e,l,a),X(),t||(o.selectStatus=!0),(0,_vue.nextTick)(()=>{var e=F.value,t=I.value;e&&t&&(e=e.getModelValue(),!l)&&e&&t.setPanelDate(_xeUtils.default.toStringDate(e))})},re=e=>{var t=o["selectStatus"],{value:e,$event:a}=e;const l=t?E.startValue:"";x(l,e,a),X(),t||(o.selectStatus=!0),(0,_vue.nextTick)(()=>{var e=F.value,t=I.value;e&&t&&(t=t.getModelValue(),!l)&&t&&e.setPanelDate(_xeUtils.default.toStringDate(t))})},ie=e=>{var{visiblePanel:t,isActivated:a}=E,l=_.value,u=R.value;!y.value&&a&&(E.isActivated=(0,_dom.getEventTargetNode)(e,l).flag||(0,_dom.getEventTargetNode)(e,u).flag,E.isActivated||t&&(d(),V()))},ne=e=>{var t=E["visiblePanel"];y.value||t&&(t=R.value,((0,_dom.getEventTargetNode)(e,t).flag?v:V)())},oe=()=>{var e=E["visiblePanel"];e&&V()},v=()=>{const a=P["placement"],l=E["panelIndex"],u=g.value,r=M.value,i=N.value;var e=()=>{var e=(0,_dom.updatePanelPlacement)(u,r,{placement:a,teleportTo:i}),t=Object.assign(e.style,{zIndex:l});E.panelStyle=t,E.panelPlacement=e.placement};return e(),(0,_vue.nextTick)().then(e)},se=()=>{var e=E["visiblePanel"];return(y.value||e?(0,_vue.nextTick):(E.initialized||(E.initialized=!0),o.hpTimeout&&(clearTimeout(o.hpTimeout),o.hpTimeout=void 0),o.selectStatus=!1,E.isActivated=!0,E.isAniVisible=!0,setTimeout(()=>{E.visiblePanel=!0},10),E.panelIndex<(0,_utils.getLastZIndex)()&&(E.panelIndex=(0,_utils.nextZIndex)()),v))()},de=e=>{f.value||(e.preventDefault(),se())},ve=e=>{u(e)},ce=({option:e,$event:t})=>{var a=P["type"],l=A.value,u=l["autoClose"],{code:r,clickMethod:i}=e,n=E.startValue,o=E.endValue,s=b(n,o),d={$dateRangePicker:T,option:e,value:s,startValue:n,endValue:o,code:r};if(!i&&r){e=_ui.commands.get(r),e=e?e.dateRangePickerCommandMethod:null;if(e)e(d);else{var v=m.value,c=h.value;switch(r){case"last1":case"last3":case"last7":case"last30":case"last60":case"last90":case"last180":var p=(0,_util.getRangeDateByCode)(r,s,a,{valueFormat:v,firstDay:c}),n=p.startValue,o=p.endValue,s=b(n,o);d.value=s,d.startValue=n,d.endValue=o,x(n,o,t);break;default:(0,_log.errLog)("vxe.error.notCommands",[r])}}}else{e=i||l.clickMethod;e&&e(d)}u&&V(),k("shortcut-click",d,t)},k=(e,t,a)=>{r(e,(0,_ui.createEvent)(a,{$dateRangePicker:T},t))},j=(e={dispatchEvent:k,setModelValue(e,t){E.startValue=e||"",E.endValue=t||"";e=b(e,t);r("update:modelValue",e)},setModelValueByEvent(e,t,a){x(t||"",a||"",e)},focus(){var e=g.value;return E.isActivated=!0,e.focus(),(0,_vue.nextTick)()},blur(){return g.value.blur(),(E.isActivated=!1,_vue.nextTick)()},select(){return g.value.select(),(E.isActivated=!1,_vue.nextTick)()},showPanel:se,hidePanel:V,updatePlacement:v},Object.assign(T,e),(e,t)=>{var a=A.value,{position:l,align:u,mode:r}=a,i=q.value;return(0,_utils.isEnableConf)(a)&&i.length&&(l||"left")===e?(0,_vue.h)("div",{class:`vxe-date-range-picker--layout-${e}-wrapper`},[(0,_vue.h)(_buttonGroup.default,{options:i,mode:r,align:u,vertical:t,onClick:ce})]):(0,_ui.renderEmptyElement)(T)}),pe=()=>(0,_vue.h)("div",{class:"vxe-date-range-picker--control-icon",onClick:de},[(0,_vue.h)("i",{class:["vxe-date-range-picker--date-picker-icon",(0,_ui.getIcon)().DATE_PICKER_DATE]})]);return(0,_vue.watch)(()=>P.modelValue,()=>{a(!0)}),(0,_vue.watch)(t,()=>{a(!1)}),a(!0),(0,_vue.nextTick)(()=>{_ui.globalEvents.on(T,"mousewheel",ne),_ui.globalEvents.on(T,"mousedown",ie),_ui.globalEvents.on(T,"blur",oe)}),(0,_vue.onDeactivated)(()=>{d()}),(0,_vue.onUnmounted)(()=>{_ui.globalEvents.off(T,"mousewheel"),_ui.globalEvents.off(T,"mousedown"),_ui.globalEvents.off(T,"blur")}),(0,_vue.onBeforeUnmount)(()=>{d()}),(0,_vue.provide)("$xeDateRangePicker",T),T.renderVN=()=>{var e,t,a,{className:l,type:u,name:r,autoComplete:i}=P,{startValue:n,endValue:o,visiblePanel:s,isActivated:d}=E,v=w.value,c=y.value,p=f.value,m=L.value;return p?(0,_vue.h)("div",{ref:_,class:["vxe-date-range-picker--readonly","type--"+u,l]},m):(p=U.value,e=B.value,a=P.prefixIcon,t=(t=S.prefix)||a?(0,_vue.h)("div",{class:"vxe-date-range-picker--prefix",onClick:Q},[(0,_vue.h)("div",{class:"vxe-date-range-picker--prefix-icon"},t?(0,_vn.getSlotVNs)(t({})):[(0,_vue.h)("i",{class:a})])]):null,a=(()=>{var e=P["suffixIcon"],{startValue:t,endValue:a}=E,l=S.suffix,u=y.value,r=B.value;return(0,_vue.h)("div",{class:["vxe-date-range-picker--suffix",{"is--clear":r&&!u&&(t||a)}]},[r?(0,_vue.h)("div",{class:"vxe-date-range-picker--clear-icon",onClick:W},[(0,_vue.h)("i",{class:(0,_ui.getIcon)().INPUT_CLEAR})]):(0,_ui.renderEmptyElement)(T),pe(),l||e?(0,_vue.h)("div",{class:"vxe-date-range-picker--suffix-icon",onClick:Y},l?(0,_vn.getSlotVNs)(l({})):[(0,_vue.h)("i",{class:e})]):(0,_ui.renderEmptyElement)(T)])})(),(0,_vue.h)("div",{ref:_,class:["vxe-date-range-picker","type--"+u,l,{["size--"+v]:v,"is--prefix":!!t,"is--suffix":!!a,"is--visible":s,"is--disabled":c,"is--active":d,"show--clear":e&&!c&&(n||o)}],spellcheck:!1},[t||(0,_ui.renderEmptyElement)(T),(0,_vue.h)("div",{class:"vxe-date-range-picker--wrapper"},[(0,_vue.h)("input",{ref:g,class:"vxe-date-range-picker--inner",value:m,name:r,type:"text",placeholder:p,readonly:!0,disabled:c,autocomplete:i,onKeydown:te,onKeyup:ae,onClick:ve,onChange:Z,onFocus:J,onBlur:ee})]),a||(0,_ui.renderEmptyElement)(T),(()=>{var{type:e,separator:t,autoClose:a,showConfirmButton:l,showClearButton:u}=P,{initialized:r,isAniVisible:i,visiblePanel:n,panelPlacement:o,panelStyle:s,startValue:d,endValue:v}=E,c=w.value,p=N.value,m=A.value,_=B.value,g=O.value,f=q.value,y=z.value,{startLabel:g,endLabel:h}=g,m=m["position"],b=S.header,x=S.footer,V=S.top,k=S.bottom,D=S.left,C=S.right,f=0<f.length,y=null===l?y||!a:l,a=null===u?_:u;return(0,_vue.h)(_vue.Teleport,{to:"body",disabled:!p||!r},[(0,_vue.h)("div",{ref:M,class:["vxe-table--ignore-clear vxe-date-range-picker--panel","type--"+e,{["size--"+c]:c,"is--transfer":p,"ani--leave":i,"ani--enter":n,"show--top":!!(V||b||f&&("top"===m||"header"===m)),"show--bottom":!!(k||x||f&&("bottom"===m||"footer"===m)),"show--left":!!(D||f&&"left"===m),"show--right":!!(C||f&&"right"===m)}],placement:o,style:s},r&&(n||i)?[(0,_vue.h)("div",{ref:R,class:["vxe-date-range-picker--layout-all-wrapper","type--"+e,{["size--"+c]:c}]},[V?(0,_vue.h)("div",{class:"vxe-date-range-picker--layout-top-wrapper"},V({})):j("top"),(0,_vue.h)("div",{class:"vxe-date-range-picker--layout-body-layout-wrapper"},[D?(0,_vue.h)("div",{class:"vxe-date-range-picker--layout-left-wrapper"},D({})):j("left",!0),(0,_vue.h)("div",{class:"vxe-date-range-picker--layout-body-content-wrapper"},[b?(0,_vue.h)("div",{class:"vxe-date-range-picker--layout-header-wrapper"},b({})):j("header"),(0,_vue.h)("div",{class:"vxe-date-range-picker--layout-body-wrapper"},[(0,_vue.h)(_datePanel.default,{ref:F,modelValue:d,type:P.type,className:P.className,minDate:P.minDate,maxDate:P.maxDate,startDay:P.startDay,endDate:v,labelFormat:P.labelFormat,valueFormat:P.valueFormat,festivalMethod:P.festivalMethod,disabledMethod:P.disabledMethod,selectDay:P.selectDay,onChange:ue}),(0,_vue.h)(_datePanel.default,{ref:I,modelValue:v,type:P.type,className:P.className,minDate:P.minDate,maxDate:P.maxDate,startDay:P.startDay,startDate:d,labelFormat:P.labelFormat,valueFormat:P.valueFormat,festivalMethod:P.festivalMethod,disabledMethod:P.disabledMethod,selectDay:P.selectDay,onChange:re})]),(0,_vue.h)("div",{class:"vxe-date-range-picker--layout-footer-wrapper"},[(0,_vue.h)("div",{class:"vxe-date-range-picker--layout-footer-label"},g||h?[(0,_vue.h)("span",g),(0,_vue.h)("span",""+(t||"")),(0,_vue.h)("span",h)]:[]),(0,_vue.h)("div",{class:"vxe-date-range-picker--layout-footer-custom"},x?x({}):[j("footer")]),(0,_vue.h)("div",{class:"vxe-date-range-picker--layout-footer-btns"},[a?(0,_vue.h)(_button.default,{size:"mini",disabled:!(d||v),content:(0,_ui.getI18n)("vxe.button.clear"),onClick:W}):(0,_ui.renderEmptyElement)(T),y?(0,_vue.h)(_button.default,{size:"mini",status:"primary",content:(0,_ui.getI18n)("vxe.button.confirm"),onClick:le}):(0,_ui.renderEmptyElement)(T)])])]),C?(0,_vue.h)("div",{class:"vxe-date-range-picker--layout-right-wrapper"},C({})):j("right",!0)]),k?(0,_vue.h)("div",{class:"vxe-date-range-picker--layout-bottom-wrapper"},k({})):j("bottom")])]:[])])})()]))},T},render(){return this.renderVN()}});
@@ -110,9 +110,11 @@
110
110
  left: 0;
111
111
  padding: 4px 0;
112
112
  color: var(--vxe-ui-font-color);
113
- font-size: var(--vxe-ui-font-size-default);
114
113
  text-align: left;
115
114
  }
115
+ .vxe-date-range-picker--panel:not(.is--transfer) {
116
+ min-width: 100%;
117
+ }
116
118
  .vxe-date-range-picker--panel.is--transfer {
117
119
  position: fixed;
118
120
  }
@@ -123,7 +125,6 @@
123
125
  transition: transform 0.3s cubic-bezier(0.23, 1, 0.32, 1), opacity 0.3s cubic-bezier(0.23, 1, 0.32, 1);
124
126
  transform-origin: center top;
125
127
  backface-visibility: hidden;
126
- transform-style: preserve-3d;
127
128
  }
128
129
  .vxe-date-range-picker--panel.ani--leave[placement=top] {
129
130
  transform-origin: center bottom;