vxe-pc-ui 4.18.3 → 4.18.4

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 (76) hide show
  1. package/dist/all.esm.js +115 -23
  2. package/dist/style.css +1 -1
  3. package/dist/style.min.css +1 -1
  4. package/es/color-picker/src/color-picker.js +14 -3
  5. package/es/date-picker/src/date-picker.js +12 -1
  6. package/es/date-range-picker/src/date-range-picker.js +12 -1
  7. package/es/icon/style.css +1 -1
  8. package/es/icon-picker/src/icon-picker.js +17 -6
  9. package/es/input/src/input.js +12 -1
  10. package/es/number-input/src/number-input.js +12 -1
  11. package/es/password-input/src/password-input.js +12 -0
  12. package/es/select/src/select.js +19 -8
  13. package/es/space/src/space.js +8 -4
  14. package/es/style.css +1 -1
  15. package/es/style.min.css +1 -1
  16. package/es/ui/index.js +1 -1
  17. package/es/ui/src/log.js +1 -1
  18. package/lib/color-picker/src/color-picker.js +18 -5
  19. package/lib/color-picker/src/color-picker.min.js +1 -1
  20. package/lib/date-picker/src/date-picker.js +13 -0
  21. package/lib/date-picker/src/date-picker.min.js +1 -1
  22. package/lib/date-range-picker/src/date-range-picker.js +13 -0
  23. package/lib/date-range-picker/src/date-range-picker.min.js +1 -1
  24. package/lib/icon/style/style.css +1 -1
  25. package/lib/icon/style/style.min.css +1 -1
  26. package/lib/icon-picker/src/icon-picker.js +21 -8
  27. package/lib/icon-picker/src/icon-picker.min.js +1 -1
  28. package/lib/index.umd.js +137 -27
  29. package/lib/index.umd.min.js +1 -1
  30. package/lib/input/src/input.js +13 -0
  31. package/lib/input/src/input.min.js +1 -1
  32. package/lib/number-input/src/number-input.js +13 -0
  33. package/lib/number-input/src/number-input.min.js +1 -1
  34. package/lib/password-input/src/password-input.js +14 -0
  35. package/lib/password-input/src/password-input.min.js +1 -1
  36. package/lib/select/src/select.js +23 -10
  37. package/lib/select/src/select.min.js +1 -1
  38. package/lib/space/src/space.js +9 -4
  39. package/lib/space/src/space.min.js +1 -1
  40. package/lib/style.css +1 -1
  41. package/lib/style.min.css +1 -1
  42. package/lib/ui/index.js +1 -1
  43. package/lib/ui/index.min.js +1 -1
  44. package/lib/ui/src/log.js +1 -1
  45. package/lib/ui/src/log.min.js +1 -1
  46. package/package.json +1 -1
  47. package/packages/color-picker/src/color-picker.ts +16 -4
  48. package/packages/date-picker/src/date-picker.ts +14 -2
  49. package/packages/date-range-picker/src/date-range-picker.ts +14 -2
  50. package/packages/icon-picker/src/icon-picker.ts +18 -6
  51. package/packages/input/src/input.ts +13 -1
  52. package/packages/number-input/src/number-input.ts +14 -2
  53. package/packages/password-input/src/password-input.ts +14 -1
  54. package/packages/select/src/select.ts +20 -8
  55. package/packages/space/src/space.ts +8 -4
  56. package/types/components/color-picker.d.ts +2 -0
  57. package/types/components/date-picker.d.ts +2 -0
  58. package/types/components/date-range-picker.d.ts +2 -0
  59. package/types/components/icon-picker.d.ts +2 -0
  60. package/types/components/input.d.ts +5 -0
  61. package/types/components/number-input.d.ts +5 -0
  62. package/types/components/password-input.d.ts +5 -0
  63. package/types/components/select.d.ts +5 -0
  64. package/types/components/space.d.ts +5 -0
  65. /package/es/icon/{iconfont.1788745459463.ttf → iconfont.1788753701809.ttf} +0 -0
  66. /package/es/icon/{iconfont.1788745459463.woff → iconfont.1788753701809.woff} +0 -0
  67. /package/es/icon/{iconfont.1788745459463.woff2 → iconfont.1788753701809.woff2} +0 -0
  68. /package/es/{iconfont.1788745459463.ttf → iconfont.1788753701809.ttf} +0 -0
  69. /package/es/{iconfont.1788745459463.woff → iconfont.1788753701809.woff} +0 -0
  70. /package/es/{iconfont.1788745459463.woff2 → iconfont.1788753701809.woff2} +0 -0
  71. /package/lib/icon/style/{iconfont.1788745459463.ttf → iconfont.1788753701809.ttf} +0 -0
  72. /package/lib/icon/style/{iconfont.1788745459463.woff → iconfont.1788753701809.woff} +0 -0
  73. /package/lib/icon/style/{iconfont.1788745459463.woff2 → iconfont.1788753701809.woff2} +0 -0
  74. /package/lib/{iconfont.1788745459463.ttf → iconfont.1788753701809.ttf} +0 -0
  75. /package/lib/{iconfont.1788745459463.woff → iconfont.1788753701809.woff} +0 -0
  76. /package/lib/{iconfont.1788745459463.woff2 → iconfont.1788753701809.woff2} +0 -0
package/es/ui/index.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import { VxeUI, setConfig, setIcon } from '@vxe-ui/core';
2
2
  import { dynamicApp } from '../dynamics';
3
3
  import { warnLog } from './src/log';
4
- export const version = "4.18.3";
4
+ export const version = "4.18.4";
5
5
  VxeUI.uiVersion = version;
6
6
  VxeUI.dynamicApp = dynamicApp;
7
7
  export function config(options) {
package/es/ui/src/log.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import { VxeUI } from '@vxe-ui/core';
2
2
  const { log } = VxeUI;
3
- const uiVersion = `ui v${"4.18.3"}`;
3
+ const uiVersion = `ui v${"4.18.4"}`;
4
4
  export function createComponentLog(name) {
5
5
  const tableVersion = VxeUI.tableVersion ? `table v${VxeUI.tableVersion}` : '';
6
6
  const ganttVersion = VxeUI.ganttVersion ? `gantt v${VxeUI.ganttVersion}` : '';
@@ -28,6 +28,7 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
28
28
  type: String,
29
29
  default: () => (0, _ui.getConfig)().colorPicker.type
30
30
  },
31
+ width: [Number, String],
31
32
  size: {
32
33
  type: String,
33
34
  default: () => (0, _ui.getConfig)().colorPicker.size || (0, _ui.getConfig)().size
@@ -189,6 +190,16 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
189
190
  }
190
191
  return [];
191
192
  });
193
+ const computeCurrStyle = (0, _vue.computed)(() => {
194
+ const {
195
+ width
196
+ } = props;
197
+ const stys = {};
198
+ if (width) {
199
+ stys.width = (0, _dom.toCssUnit)(width);
200
+ }
201
+ return stys;
202
+ });
192
203
  const computePopupOpts = (0, _vue.computed)(() => {
193
204
  return Object.assign({}, (0, _ui.getConfig)().colorPicker.popupConfig, props.popupConfig);
194
205
  });
@@ -961,10 +972,6 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
961
972
  const isDisabled = computeIsDisabled.value;
962
973
  const btnTransfer = computeBtnTransfer.value;
963
974
  const formReadonly = computeFormReadonly.value;
964
- const popupOpts = computePopupOpts.value;
965
- const {
966
- appendTo
967
- } = popupOpts;
968
975
  if (formReadonly) {
969
976
  return (0, _vue.h)('div', {
970
977
  ref: refElem,
@@ -980,6 +987,11 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
980
987
  } : undefined
981
988
  })]);
982
989
  }
990
+ const currStyle = computeCurrStyle.value;
991
+ const popupOpts = computePopupOpts.value;
992
+ const {
993
+ appendTo
994
+ } = popupOpts;
983
995
  return (0, _vue.h)('div', {
984
996
  ref: refElem,
985
997
  class: ['vxe-color-picker', className ? _xeUtils.default.isFunction(className) ? className({
@@ -990,7 +1002,8 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
990
1002
  'is--visible': visiblePanel,
991
1003
  'is--disabled': isDisabled,
992
1004
  'is--active': isActivated
993
- }]
1005
+ }],
1006
+ style: currStyle
994
1007
  }, [(0, _vue.h)('input', {
995
1008
  ref: refInputTarget,
996
1009
  class: 'vxe-color-picker--input',
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_comp=require("../../ui/src/comp"),_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")),_input=_interopRequireDefault(require("../../input")),_numberInput=_interopRequireDefault(require("../../number-input"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var _default=exports.default=(0,_comp.defineVxeComponent)({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},defaultColor:{type:String,default:()=>(0,_ui.getConfig)().colorPicker.defaultColor},placement:String,transfer:{type:Boolean,default:null},popupConfig:Object},emits:["update:modelValue","change","clear","click"],setup(_,e){let t=e.emit,D=(0,_vue.inject)("$xeModal",null),O=(0,_vue.inject)("$xeDrawer",null),M=(0,_vue.inject)("$xeTable",null),S=(0,_vue.inject)("$xeCard",null),o=(0,_vue.inject)("$xeForm",null),a=(0,_vue.inject)("xeFormItemInfo",null),h="undefined"!=typeof window?window.EyeDropper:null;var l=_xeUtils.default.uniqueId();let L=(0,_ui.useSize)(_).computeSize,d=(0,_vue.ref)(),m=(0,_vue.ref)(),g=(0,_vue.ref)(),x=(0,_vue.ref)(),f=(0,_vue.ref)(),b=(0,_vue.ref)(),C=(0,_vue.ref)(),k=(0,_vue.ref)(),y=(0,_vue.ref)(),V=(0,_vue.reactive)({initialized:!1,selectTyle:"hex",selectColor:""+(_.modelValue||""),showTypePopup:!1,panelColor:"",hexValue:"",rValue:0,gValue:0,bValue:0,aValue:0,panelIndex:0,panelStyle:{},panelPlacement:null,visiblePanel:!1,isAniVisible:!1,isActivated:!1}),P=[{label:"HEX",value:"hex"},{label:"RGB",value:"rgb"}],i={},j=(0,_vue.computed)(()=>{var e=_.readonly;return null===e?!!o&&o.props.readonly:e}),w=(0,_vue.computed)(()=>{var e=_.disabled;return null===e?!!o&&o.props.disabled:e}),E=(0,_vue.computed)(()=>{var e=_.transfer;if(null===e){var l=(0,_ui.getConfig)().colorPicker.transfer;if(_xeUtils.default.isBoolean(l))return l;if(M||D||O||S||o)return!0}return e}),$=(0,_vue.computed)(()=>{var e=_.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}):[]}),T=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().colorPicker.popupConfig,_.popupConfig)),I=(0,_vue.computed)(()=>{var e=V.selectTyle;return"rgb"===e}),H=(0,_vue.computed)(()=>{let l=V.selectTyle;return P.find(e=>e.value===l)}),N={refElem:d},F={},R={xID:l,props:_,context:e,reactData:V,getRefMaps:()=>N,getComputeMaps:()=>F},W=e=>{t("update:modelValue",e)},u=()=>{var e=_.modelValue;V.selectColor=_xeUtils.default.toValueString(e),U()},r=()=>{var e=_.type;let l="rgb"!==e&&"rgba"!==e?"hex":"rgb";V.selectTyle=l,u()},U=()=>{var e=_.defaultColor,{selectColor:l,isAniVisible:o}=V,t=I.value,a=x.value,i=b.value,l=(0,_util.parseValColor)(l||e);V.hexValue="",V.rValue=0,V.gValue=0,V.bValue=0,V.aValue=1,l&&("hex"===l.type?V.hexValue=l.hex:(V.rValue=l.r,V.gValue=l.g,V.bValue=l.b,V.aValue=l.a),l.value)&&(t?"hex"===l.type&&(e=(0,_util.hexToRgb)(l.hex))&&(V.rValue=e.r,V.gValue=e.g,V.bValue=e.b,V.aValue=e.a):"hex"!==l.type&&(V.hexValue=(0,_util.rgbToHexVal)(l.r,l.g,l.b,l.a))),o&&(t=l?"hex"===l.type?(0,_util.hexToHsv)(l.hex):(0,_util.rgbToHsv)(l):null,e=k.value,t&&(e&&(o=e.clientHeight*(1-t.v),l=e.clientWidth*t.s,ce(l,o)),a)&&ae(_xeUtils.default.ceil((1-t.h/360)*a.clientWidth)-1),i)&&p(i.clientWidth*V.aValue)},Y=()=>{V.panelIndex<(0,_utils.getLastZIndex)()&&(V.panelIndex=(0,_utils.nextZIndex)())},n=()=>{let o=_.placement,t=V.panelIndex,a=d.value,i=g.value,u=E.value,r=T.value;var e=()=>{var e=(0,_dom.updatePanelPlacement)(a,i,{placement:r.placement||o,defaultPlacement:r.defaultPlacement,teleportTo:u}),l=Object.assign(e.style,{zIndex:t});V.panelStyle=l,V.panelPlacement=e.placement};return e(),(0,_vue.nextTick)().then(e)},c=()=>{var e=i.hpTimeout;w.value||(e&&(clearTimeout(e),i.hpTimeout=void 0),V.initialized||(V.initialized=!0),V.isActivated=!0,V.isAniVisible=!0,setTimeout(()=>{U(),V.visiblePanel=!0},10),Y(),n())},s=()=>{V.visiblePanel=!1,i.hpTimeout=setTimeout(()=>{V.isAniVisible=!1},350)},v=(e,l)=>{(V.selectColor=l)!==_.modelValue&&(W(l),q("change",{value:l},e),o)&&a&&o.triggerItemEvent(e,a.itemConfig.field,l)},X=(e,l)=>{v(e,l),q("clear",{value:l},e)},G=()=>{w.value||V.visiblePanel||c()},K=()=>{V.isActivated=!1},Q=e=>{X(e,null),s()},Z=e=>{var{selectTyle:l,selectColor:o,hexValue:t}=V,l="hex"===l?t:o;v(e,l),s()},J=e=>{e.preventDefault(),(V.visiblePanel?s:c)()},ee=e=>{J(e),q("click",{},e)},le=()=>{V.showTypePopup=!1},oe=e=>{e.stopPropagation(),V.showTypePopup=!V.showTypePopup},te=e=>{var l=V.selectTyle;e!==l&&(V.selectTyle=e,U()),V.showTypePopup=!1},ae=t=>{var a=x.value,i=f.value;if(a&&i){t<0&&(t=0);var a=_xeUtils.default.toInteger(a.clientWidth),u=255,a=_xeUtils.default.ceil(1530/a*t),r=a%u;let e=0,l=0,o=0;switch(Math.ceil(a/u)){case 1:e=u,o=r;break;case 2:e=u-r,o=u;break;case 3:l=r,o=u;break;case 4:l=u,o=u-r;break;case 5:e=r,l=u;break;case 6:e=u,l=u-r}V.panelColor=(0,_util.toValRgb)(e,l,o),i.style.left=(0,_dom.toCssUnit)(t)}},B=e=>{var l=x.value,o=f.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))),ae(l))},ie=e=>{e.preventDefault(),document.onmousemove=e=>{e.preventDefault(),B(e)},document.onmouseup=e=>{document.onmousemove=null,document.onmouseup=null,B(e)}},p=e=>{var l=V.selectColor,o=b.value,t=C.value;o&&t&&(o=o.getBoundingClientRect().width,o=_xeUtils.default.ceil(100/o*(e=o<(e=e<0?0:e)?o:e)/100,2),V.aValue=o,t.style.left=(0,_dom.toCssUnit)(e),V.selectColor=l?(0,_util.updateColorAlpha)(l,o):"")},z=e=>{var l=b.value,o=C.value;l&&o&&(l=(o=l.getBoundingClientRect()).width,l=Math.min(l,Math.max(0,e.clientX-o.x)),p(l),U())},ue=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}=V;V.selectColor=(0,_util.toValRgb)(e,l,o,t),U()},re=()=>{var e=V.aValue,l=b.value,o=C.value;l&&o&&(o=l.getBoundingClientRect().width*e,p(o))},ne=(e,l)=>{l=l.value;V.selectColor=l,U()},ce=(e,l)=>{var o=y.value;o&&(o.style.top=(0,_dom.toCssUnit)(l),o.style.left=(0,_dom.toCssUnit)(e))},se=()=>{if(h)try{(new h).open().then(e=>{e&&e.sRGBHex&&(V.selectColor=e.sRGBHex,U())}).catch(()=>{})}catch(e){}},ve=(e,l)=>{var o,t=_.showAlpha,{panelColor:a,aValue:i}=V,u=k.value,r=y.value;u&&r&&({clientWidth:r,clientHeight:o}=u,u=u.getBoundingClientRect(),l=Math.min(o,Math.max(0,l-u.y)),e=Math.min(r,Math.max(0,e-u.x)),(u=(0,_util.parseValColor)(a))&&(a="hex"===u.type?(0,_util.hexToHsv)(u.hex):(0,_util.rgbToHsv)(u))&&(u=(0,_util.hsvToRgb)(a.h,e/r,1-l/o),V.selectColor=(0,_util.toValRgb)(u.r,u.g,u.b,t?i:null),U()),ce(e,l))},pe=e=>{e.stopPropagation(),e.preventDefault(),ve(e.clientX,e.clientY),document.onmousemove=e=>{ve(e.clientX,e.clientY)},document.onmouseup=()=>{document.onmousemove=null,document.onmouseup=null}},de=()=>{var e=V.selectColor;e&&_ui.VxeUI.clipboard.copy(e)&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({content:(0,_ui.getI18n)("vxe.colorPicker.copySuccess",[e]),status:"success"})},_e=e=>{var l,o,t=V.visiblePanel;w.value||(l=d.value,o=g.value,V.isActivated=(0,_dom.getEventTargetNode)(e,l).flag||(0,_dom.getEventTargetNode)(e,o).flag,t&&!V.isActivated&&s())},he=()=>{var{visiblePanel:e,isActivated:l}=V;e&&s(),l&&(V.isActivated=!1),(e||l)&&(e=m.value)&&e.blur()},me=()=>{var e=V.visiblePanel;e&&n()},ge=()=>{var e=V.visiblePanel;e&&n()},q=(e,l,o)=>{t(e,(0,_ui.createEvent)(o,{$colorPicker:R},l))};l={dispatchEvent:q};Object.assign(R,l,{});return(0,_vue.watch)(()=>_.modelValue,()=>{u()}),(0,_vue.watch)(()=>_.type,()=>{r()}),(0,_vue.onMounted)(()=>{_ui.globalEvents.on(R,"mousedown",_e),_ui.globalEvents.on(R,"blur",he),_ui.globalEvents.on(R,"resize",me),_ui.globalEvents.on(R,"scroll",ge)}),(0,_vue.onUnmounted)(()=>{_ui.globalEvents.off(R,"mousedown"),_ui.globalEvents.off(R,"blur"),_ui.globalEvents.off(R,"resize"),_ui.globalEvents.off(R,"scroll")}),r(),(0,_vue.provide)("$xeColorPicker",R),R.renderVN=()=>{var{className:e,popupClassName:l,clearable:o,modelValue:t}=_,{initialized:a,isActivated:i,isAniVisible:u,visiblePanel:r}=V,n=L.value,c=w.value,s=E.value,v=j.value,p=T.value.appendTo;return v?(0,_vue.h)("div",{ref:d,class:["vxe-color-picker--readonly",e,{["size--"+n]:n}]},[(0,_vue.h)("div",{class:["vxe-color-picker--readonly-color",{"is--empty":!t}],style:t?{backgroundColor:t}:void 0})]):(0,_vue.h)("div",{ref:d,class:["vxe-color-picker",e?_xeUtils.default.isFunction(e)?e({$colorPicker:R}):e:"",{["size--"+n]:n,"is--selected":!!t,"is--visible":r,"is--disabled":c,"is--active":i}]},[(0,_vue.h)("input",{ref:m,class:"vxe-color-picker--input",onFocus:G,onBlur:K}),(0,_vue.h)("div",{class:"vxe-color-picker--inner",onClick:ee},[(0,_vue.h)("div",{class:"vxe-color-picker--inner-color",style:{backgroundColor:t}})]),(0,_vue.h)(_vue.Teleport,{to:(0,_dom.getPopupContainer)(p),disabled:!s||!a},[(0,_vue.h)("div",{ref:g,class:["vxe-table--ignore-clear vxe-color-picker--panel",l?_xeUtils.default.isFunction(l)?l({$colorPicker:R}):l:"",{["size--"+n]:n,"is--transfer":s,"ani--leave":u,"ani--enter":r}],placement:V.panelPlacement,style:V.panelStyle},[a&&(r||u)?(0,_vue.h)("div",{class:"vxe-color-picker--panel-wrapper",onClick:le},[(v=_.showColorExtractor,e=V.panelColor,v?(0,_vue.h)("div",{ref:k,class:"vxe-color-picker--color-wrapper",onMousedown:pe},[(0,_vue.h)("div",{class:"vxe-color-picker--color-bg",style:{backgroundColor:e}}),(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:y,class:"vxe-color-picker--color-active"})]):(0,_ui.renderEmptyElement)(R)),(()=>{var{showAlpha:e,clickToCopy:l,showEyeDropper:o}=_,{selectTyle:t,showTypePopup:a,hexValue:i,rValue:u,gValue:r,bValue:n,aValue:c,selectColor:s,panelColor:v}=V,p=I.value,d=H.value;return(0,_vue.h)("div",{class:"vxe-color-picker--bar-wrapper"},[(0,_vue.h)("div",{class:"vxe-color-picker--slider-wrapper"},[o&&h?(0,_vue.h)("div",{class:"vxe-color-picker--color-dropper"},[(0,_vue.h)("span",{class:"vxe-color-picker--color-dropper-btn",onClick:se},[(0,_vue.h)("i",{class:(0,_ui.getIcon)().COLOR_PICKER_EYE_DROPPER})])]):(0,_ui.renderEmptyElement)(R),(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:s}},l?[(0,_vue.h)("span",{class:"vxe-color-picker--preview-copy-btn",onClick:de},[(0,_vue.h)("i",{class:(0,_ui.getIcon)().COLOR_PICKER_COLOR_COPY})])]:[])])]),(0,_vue.h)("div",{class:"vxe-color-picker--slider-handle"},[(0,_vue.h)("div",{ref:x,class:"vxe-color-picker--bar-hue-slider",onClick:B},[(0,_vue.h)("div",{ref:f,class:"vxe-color-picker--bar-hue-btn",onMousedown:ie})]),e?(0,_vue.h)("div",{ref:b,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), ${v})`}}),(0,_vue.h)("div",{ref:C,class:"vxe-color-picker--bar-alpha-btn",onMousedown:ue})]):(0,_ui.renderEmptyElement)(R)])]),(0,_vue.h)("div",{class:"vxe-color-picker--custom-wrapper"},[(0,_vue.h)("div",{class:"vxe-color-picker--type-switch"},[(0,_vue.h)("div",{class:"vxe-color-picker--type-label",onClick:oe},[(0,_vue.h)("span",""+(d?d.label:t)),(0,_vue.h)("span",{class:"vxe-color-picker--type-icon"},[(0,_vue.h)("i",{class:a?(0,_ui.getIcon)().COLOR_PICKER_TPTY_OPEN:(0,_ui.getIcon)().COLOR_PICKER_TPTY_CLOSE})])]),(0,_vue.h)("div",{class:["vxe-color-picker--type-popup",{"is--visible":a}]},P.map(l=>(0,_vue.h)("div",{class:"vxe-color-picker--type-item",onClick(e){e.stopPropagation(),te(l.value)}},l.label)))]),(0,_vue.h)("div",{class:`vxe-color-picker--${t}-wrapper`},p?[(0,_vue.h)("div",{class:"vxe-color-picker--input-wrapper"},[(0,_vue.h)(_numberInput.default,{type:"integer",size:"mini",align:"center",min:0,max:255,maxLength:3,placeholder:"",modelValue:u,controlConfig:{showButton:!1},"onUpdate:modelValue"(e){V.rValue=e},onChange:A}),(0,_vue.h)(_numberInput.default,{type:"integer",size:"mini",align:"center",min:0,max:255,maxLength:3,placeholder:"",modelValue:r,controlConfig:{showButton:!1},"onUpdate:modelValue"(e){V.gValue=e},onChange:A}),(0,_vue.h)(_numberInput.default,{type:"integer",size:"mini",align:"center",min:0,max:255,maxLength:3,placeholder:"",modelValue:n,controlConfig:{showButton:!1},"onUpdate:modelValue"(e){V.bValue=e},onChange:A}),(0,_vue.h)(_numberInput.default,{type:"number",size:"mini",align:"center",min:0,max:1,step:.01,maxLength:4,placeholder:"",modelValue:c,controlConfig:{showButton:!1},"onUpdate:modelValue"(e){V.aValue=e},onChange:re})]),(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-wrapper"},[(0,_vue.h)(_input.default,{type:"text",size:"mini",align:"center",maxLength:9,placeholder:"",modelValue:i,"onUpdate:modelValue"(e){V.hexValue=e},onChange(){var e=(0,_util.parseValColor)(V.hexValue);e&&e.value&&(V.selectColor=e.value,U())}})]),(0,_vue.h)("div",{class:"vxe-color-picker--input-title"},(0,_ui.getI18n)("vxe.colorPicker.hex"))])])])})(),(c=_.showQuick,i=$.value,c&&i.length?(0,_vue.h)("div",{class:"vxe-color-picker--quick-wrapper"},i.map((l,e)=>(0,_vue.h)("div",{key:e,class:"vxe-color-picker--quick-item",title:l.label||"",style:{backgroundColor:l.value},onClick(e){ne(e,l)}}))):(0,_ui.renderEmptyElement)(R)),(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:Q}):(0,_ui.renderEmptyElement)(R),(0,_vue.h)(_button.default,{content:(0,_ui.getI18n)("vxe.colorPicker.confirm"),size:"mini",status:"primary",onClick:Z})])]):(0,_ui.renderEmptyElement)(R)])])])},R},render(){return this.renderVN()}});
1
+ Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_comp=require("../../ui/src/comp"),_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")),_input=_interopRequireDefault(require("../../input")),_numberInput=_interopRequireDefault(require("../../number-input"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var _default=exports.default=(0,_comp.defineVxeComponent)({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},width:[Number,String],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},defaultColor:{type:String,default:()=>(0,_ui.getConfig)().colorPicker.defaultColor},placement:String,transfer:{type:Boolean,default:null},popupConfig:Object},emits:["update:modelValue","change","clear","click"],setup(_,e){let t=e.emit,D=(0,_vue.inject)("$xeModal",null),O=(0,_vue.inject)("$xeDrawer",null),M=(0,_vue.inject)("$xeTable",null),S=(0,_vue.inject)("$xeCard",null),o=(0,_vue.inject)("$xeForm",null),a=(0,_vue.inject)("xeFormItemInfo",null),h="undefined"!=typeof window?window.EyeDropper:null;var l=_xeUtils.default.uniqueId();let L=(0,_ui.useSize)(_).computeSize,d=(0,_vue.ref)(),m=(0,_vue.ref)(),g=(0,_vue.ref)(),x=(0,_vue.ref)(),f=(0,_vue.ref)(),b=(0,_vue.ref)(),C=(0,_vue.ref)(),k=(0,_vue.ref)(),y=(0,_vue.ref)(),V=(0,_vue.reactive)({initialized:!1,selectTyle:"hex",selectColor:""+(_.modelValue||""),showTypePopup:!1,panelColor:"",hexValue:"",rValue:0,gValue:0,bValue:0,aValue:0,panelIndex:0,panelStyle:{},panelPlacement:null,visiblePanel:!1,isAniVisible:!1,isActivated:!1}),w=[{label:"HEX",value:"hex"},{label:"RGB",value:"rgb"}],i={},j=(0,_vue.computed)(()=>{var e=_.readonly;return null===e?!!o&&o.props.readonly:e}),P=(0,_vue.computed)(()=>{var e=_.disabled;return null===e?!!o&&o.props.disabled:e}),E=(0,_vue.computed)(()=>{var e=_.transfer;if(null===e){var l=(0,_ui.getConfig)().colorPicker.transfer;if(_xeUtils.default.isBoolean(l))return l;if(M||D||O||S||o)return!0}return e}),N=(0,_vue.computed)(()=>{var e=_.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}):[]}),$=(0,_vue.computed)(()=>{var e=_.width,l={};return e&&(l.width=(0,_dom.toCssUnit)(e)),l}),T=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().colorPicker.popupConfig,_.popupConfig)),I=(0,_vue.computed)(()=>{var e=V.selectTyle;return"rgb"===e}),H=(0,_vue.computed)(()=>{let l=V.selectTyle;return w.find(e=>e.value===l)}),F={refElem:d},W={},R={xID:l,props:_,context:e,reactData:V,getRefMaps:()=>F,getComputeMaps:()=>W},Y=e=>{t("update:modelValue",e)},u=()=>{var e=_.modelValue;V.selectColor=_xeUtils.default.toValueString(e),U()},r=()=>{var e=_.type;let l="rgb"!==e&&"rgba"!==e?"hex":"rgb";V.selectTyle=l,u()},U=()=>{var e=_.defaultColor,{selectColor:l,isAniVisible:o}=V,t=I.value,a=x.value,i=b.value,l=(0,_util.parseValColor)(l||e);V.hexValue="",V.rValue=0,V.gValue=0,V.bValue=0,V.aValue=1,l&&("hex"===l.type?V.hexValue=l.hex:(V.rValue=l.r,V.gValue=l.g,V.bValue=l.b,V.aValue=l.a),l.value)&&(t?"hex"===l.type&&(e=(0,_util.hexToRgb)(l.hex))&&(V.rValue=e.r,V.gValue=e.g,V.bValue=e.b,V.aValue=e.a):"hex"!==l.type&&(V.hexValue=(0,_util.rgbToHexVal)(l.r,l.g,l.b,l.a))),o&&(t=l?"hex"===l.type?(0,_util.hexToHsv)(l.hex):(0,_util.rgbToHsv)(l):null,e=k.value,t&&(e&&(o=e.clientHeight*(1-t.v),l=e.clientWidth*t.s,se(l,o)),a)&&ie(_xeUtils.default.ceil((1-t.h/360)*a.clientWidth)-1),i)&&p(i.clientWidth*V.aValue)},X=()=>{V.panelIndex<(0,_utils.getLastZIndex)()&&(V.panelIndex=(0,_utils.nextZIndex)())},n=()=>{let o=_.placement,t=V.panelIndex,a=d.value,i=g.value,u=E.value,r=T.value;var e=()=>{var e=(0,_dom.updatePanelPlacement)(a,i,{placement:r.placement||o,defaultPlacement:r.defaultPlacement,teleportTo:u}),l=Object.assign(e.style,{zIndex:t});V.panelStyle=l,V.panelPlacement=e.placement};return e(),(0,_vue.nextTick)().then(e)},c=()=>{var e=i.hpTimeout;P.value||(e&&(clearTimeout(e),i.hpTimeout=void 0),V.initialized||(V.initialized=!0),V.isActivated=!0,V.isAniVisible=!0,setTimeout(()=>{U(),V.visiblePanel=!0},10),X(),n())},s=()=>{V.visiblePanel=!1,i.hpTimeout=setTimeout(()=>{V.isAniVisible=!1},350)},v=(e,l)=>{(V.selectColor=l)!==_.modelValue&&(Y(l),q("change",{value:l},e),o)&&a&&o.triggerItemEvent(e,a.itemConfig.field,l)},G=(e,l)=>{v(e,l),q("clear",{value:l},e)},K=()=>{P.value||V.visiblePanel||c()},Q=()=>{V.isActivated=!1},Z=e=>{G(e,null),s()},J=e=>{var{selectTyle:l,selectColor:o,hexValue:t}=V,l="hex"===l?t:o;v(e,l),s()},ee=e=>{e.preventDefault(),(V.visiblePanel?s:c)()},le=e=>{ee(e),q("click",{},e)},oe=()=>{V.showTypePopup=!1},te=e=>{e.stopPropagation(),V.showTypePopup=!V.showTypePopup},ae=e=>{var l=V.selectTyle;e!==l&&(V.selectTyle=e,U()),V.showTypePopup=!1},ie=t=>{var a=x.value,i=f.value;if(a&&i){t<0&&(t=0);var a=_xeUtils.default.toInteger(a.clientWidth),u=255,a=_xeUtils.default.ceil(1530/a*t),r=a%u;let e=0,l=0,o=0;switch(Math.ceil(a/u)){case 1:e=u,o=r;break;case 2:e=u-r,o=u;break;case 3:l=r,o=u;break;case 4:l=u,o=u-r;break;case 5:e=r,l=u;break;case 6:e=u,l=u-r}V.panelColor=(0,_util.toValRgb)(e,l,o),i.style.left=(0,_dom.toCssUnit)(t)}},B=e=>{var l=x.value,o=f.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))),ie(l))},ue=e=>{e.preventDefault(),document.onmousemove=e=>{e.preventDefault(),B(e)},document.onmouseup=e=>{document.onmousemove=null,document.onmouseup=null,B(e)}},p=e=>{var l=V.selectColor,o=b.value,t=C.value;o&&t&&(o=o.getBoundingClientRect().width,o=_xeUtils.default.ceil(100/o*(e=o<(e=e<0?0:e)?o:e)/100,2),V.aValue=o,t.style.left=(0,_dom.toCssUnit)(e),V.selectColor=l?(0,_util.updateColorAlpha)(l,o):"")},z=e=>{var l=b.value,o=C.value;l&&o&&(l=(o=l.getBoundingClientRect()).width,l=Math.min(l,Math.max(0,e.clientX-o.x)),p(l),U())},re=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}=V;V.selectColor=(0,_util.toValRgb)(e,l,o,t),U()},ne=()=>{var e=V.aValue,l=b.value,o=C.value;l&&o&&(o=l.getBoundingClientRect().width*e,p(o))},ce=(e,l)=>{l=l.value;V.selectColor=l,U()},se=(e,l)=>{var o=y.value;o&&(o.style.top=(0,_dom.toCssUnit)(l),o.style.left=(0,_dom.toCssUnit)(e))},ve=()=>{if(h)try{(new h).open().then(e=>{e&&e.sRGBHex&&(V.selectColor=e.sRGBHex,U())}).catch(()=>{})}catch(e){}},pe=(e,l)=>{var o,t=_.showAlpha,{panelColor:a,aValue:i}=V,u=k.value,r=y.value;u&&r&&({clientWidth:r,clientHeight:o}=u,u=u.getBoundingClientRect(),l=Math.min(o,Math.max(0,l-u.y)),e=Math.min(r,Math.max(0,e-u.x)),(u=(0,_util.parseValColor)(a))&&(a="hex"===u.type?(0,_util.hexToHsv)(u.hex):(0,_util.rgbToHsv)(u))&&(u=(0,_util.hsvToRgb)(a.h,e/r,1-l/o),V.selectColor=(0,_util.toValRgb)(u.r,u.g,u.b,t?i:null),U()),se(e,l))},de=e=>{e.stopPropagation(),e.preventDefault(),pe(e.clientX,e.clientY),document.onmousemove=e=>{pe(e.clientX,e.clientY)},document.onmouseup=()=>{document.onmousemove=null,document.onmouseup=null}},_e=()=>{var e=V.selectColor;e&&_ui.VxeUI.clipboard.copy(e)&&_ui.VxeUI.modal&&_ui.VxeUI.modal.message({content:(0,_ui.getI18n)("vxe.colorPicker.copySuccess",[e]),status:"success"})},he=e=>{var l,o,t=V.visiblePanel;P.value||(l=d.value,o=g.value,V.isActivated=(0,_dom.getEventTargetNode)(e,l).flag||(0,_dom.getEventTargetNode)(e,o).flag,t&&!V.isActivated&&s())},me=()=>{var{visiblePanel:e,isActivated:l}=V;e&&s(),l&&(V.isActivated=!1),(e||l)&&(e=m.value)&&e.blur()},ge=()=>{var e=V.visiblePanel;e&&n()},xe=()=>{var e=V.visiblePanel;e&&n()},q=(e,l,o)=>{t(e,(0,_ui.createEvent)(o,{$colorPicker:R},l))};l={dispatchEvent:q};Object.assign(R,l,{});return(0,_vue.watch)(()=>_.modelValue,()=>{u()}),(0,_vue.watch)(()=>_.type,()=>{r()}),(0,_vue.onMounted)(()=>{_ui.globalEvents.on(R,"mousedown",he),_ui.globalEvents.on(R,"blur",me),_ui.globalEvents.on(R,"resize",ge),_ui.globalEvents.on(R,"scroll",xe)}),(0,_vue.onUnmounted)(()=>{_ui.globalEvents.off(R,"mousedown"),_ui.globalEvents.off(R,"blur"),_ui.globalEvents.off(R,"resize"),_ui.globalEvents.off(R,"scroll")}),r(),(0,_vue.provide)("$xeColorPicker",R),R.renderVN=()=>{var e,l,{className:o,popupClassName:t,clearable:a,modelValue:i}=_,{initialized:u,isActivated:r,isAniVisible:n,visiblePanel:c}=V,s=L.value,v=P.value,p=E.value;return j.value?(0,_vue.h)("div",{ref:d,class:["vxe-color-picker--readonly",o,{["size--"+s]:s}]},[(0,_vue.h)("div",{class:["vxe-color-picker--readonly-color",{"is--empty":!i}],style:i?{backgroundColor:i}:void 0})]):(l=$.value,e=T.value.appendTo,(0,_vue.h)("div",{ref:d,class:["vxe-color-picker",o?_xeUtils.default.isFunction(o)?o({$colorPicker:R}):o:"",{["size--"+s]:s,"is--selected":!!i,"is--visible":c,"is--disabled":v,"is--active":r}],style:l},[(0,_vue.h)("input",{ref:m,class:"vxe-color-picker--input",onFocus:K,onBlur:Q}),(0,_vue.h)("div",{class:"vxe-color-picker--inner",onClick:le},[(0,_vue.h)("div",{class:"vxe-color-picker--inner-color",style:{backgroundColor:i}})]),(0,_vue.h)(_vue.Teleport,{to:(0,_dom.getPopupContainer)(e),disabled:!p||!u},[(0,_vue.h)("div",{ref:g,class:["vxe-table--ignore-clear vxe-color-picker--panel",t?_xeUtils.default.isFunction(t)?t({$colorPicker:R}):t:"",{["size--"+s]:s,"is--transfer":p,"ani--leave":n,"ani--enter":c}],placement:V.panelPlacement,style:V.panelStyle},[u&&(c||n)?(0,_vue.h)("div",{class:"vxe-color-picker--panel-wrapper",onClick:oe},[(o=_.showColorExtractor,v=V.panelColor,o?(0,_vue.h)("div",{ref:k,class:"vxe-color-picker--color-wrapper",onMousedown:de},[(0,_vue.h)("div",{class:"vxe-color-picker--color-bg",style:{backgroundColor:v}}),(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:y,class:"vxe-color-picker--color-active"})]):(0,_ui.renderEmptyElement)(R)),(()=>{var{showAlpha:e,clickToCopy:l,showEyeDropper:o}=_,{selectTyle:t,showTypePopup:a,hexValue:i,rValue:u,gValue:r,bValue:n,aValue:c,selectColor:s,panelColor:v}=V,p=I.value,d=H.value;return(0,_vue.h)("div",{class:"vxe-color-picker--bar-wrapper"},[(0,_vue.h)("div",{class:"vxe-color-picker--slider-wrapper"},[o&&h?(0,_vue.h)("div",{class:"vxe-color-picker--color-dropper"},[(0,_vue.h)("span",{class:"vxe-color-picker--color-dropper-btn",onClick:ve},[(0,_vue.h)("i",{class:(0,_ui.getIcon)().COLOR_PICKER_EYE_DROPPER})])]):(0,_ui.renderEmptyElement)(R),(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:s}},l?[(0,_vue.h)("span",{class:"vxe-color-picker--preview-copy-btn",onClick:_e},[(0,_vue.h)("i",{class:(0,_ui.getIcon)().COLOR_PICKER_COLOR_COPY})])]:[])])]),(0,_vue.h)("div",{class:"vxe-color-picker--slider-handle"},[(0,_vue.h)("div",{ref:x,class:"vxe-color-picker--bar-hue-slider",onClick:B},[(0,_vue.h)("div",{ref:f,class:"vxe-color-picker--bar-hue-btn",onMousedown:ue})]),e?(0,_vue.h)("div",{ref:b,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), ${v})`}}),(0,_vue.h)("div",{ref:C,class:"vxe-color-picker--bar-alpha-btn",onMousedown:re})]):(0,_ui.renderEmptyElement)(R)])]),(0,_vue.h)("div",{class:"vxe-color-picker--custom-wrapper"},[(0,_vue.h)("div",{class:"vxe-color-picker--type-switch"},[(0,_vue.h)("div",{class:"vxe-color-picker--type-label",onClick:te},[(0,_vue.h)("span",""+(d?d.label:t)),(0,_vue.h)("span",{class:"vxe-color-picker--type-icon"},[(0,_vue.h)("i",{class:a?(0,_ui.getIcon)().COLOR_PICKER_TPTY_OPEN:(0,_ui.getIcon)().COLOR_PICKER_TPTY_CLOSE})])]),(0,_vue.h)("div",{class:["vxe-color-picker--type-popup",{"is--visible":a}]},w.map(l=>(0,_vue.h)("div",{class:"vxe-color-picker--type-item",onClick(e){e.stopPropagation(),ae(l.value)}},l.label)))]),(0,_vue.h)("div",{class:`vxe-color-picker--${t}-wrapper`},p?[(0,_vue.h)("div",{class:"vxe-color-picker--input-wrapper"},[(0,_vue.h)(_numberInput.default,{type:"integer",size:"mini",align:"center",min:0,max:255,maxLength:3,placeholder:"",modelValue:u,controlConfig:{showButton:!1},"onUpdate:modelValue"(e){V.rValue=e},onChange:A}),(0,_vue.h)(_numberInput.default,{type:"integer",size:"mini",align:"center",min:0,max:255,maxLength:3,placeholder:"",modelValue:r,controlConfig:{showButton:!1},"onUpdate:modelValue"(e){V.gValue=e},onChange:A}),(0,_vue.h)(_numberInput.default,{type:"integer",size:"mini",align:"center",min:0,max:255,maxLength:3,placeholder:"",modelValue:n,controlConfig:{showButton:!1},"onUpdate:modelValue"(e){V.bValue=e},onChange:A}),(0,_vue.h)(_numberInput.default,{type:"number",size:"mini",align:"center",min:0,max:1,step:.01,maxLength:4,placeholder:"",modelValue:c,controlConfig:{showButton:!1},"onUpdate:modelValue"(e){V.aValue=e},onChange:ne})]),(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-wrapper"},[(0,_vue.h)(_input.default,{type:"text",size:"mini",align:"center",maxLength:9,placeholder:"",modelValue:i,"onUpdate:modelValue"(e){V.hexValue=e},onChange(){var e=(0,_util.parseValColor)(V.hexValue);e&&e.value&&(V.selectColor=e.value,U())}})]),(0,_vue.h)("div",{class:"vxe-color-picker--input-title"},(0,_ui.getI18n)("vxe.colorPicker.hex"))])])])})(),(r=_.showQuick,l=N.value,r&&l.length?(0,_vue.h)("div",{class:"vxe-color-picker--quick-wrapper"},l.map((l,e)=>(0,_vue.h)("div",{key:e,class:"vxe-color-picker--quick-item",title:l.label||"",style:{backgroundColor:l.value},onClick(e){ce(e,l)}}))):(0,_ui.renderEmptyElement)(R)),(0,_vue.h)("div",{class:"vxe-color-picker--footer-wrapper"},[a?(0,_vue.h)(_button.default,{content:(0,_ui.getI18n)("vxe.colorPicker.clear"),size:"mini",onClick:Z}):(0,_ui.renderEmptyElement)(R),(0,_vue.h)(_button.default,{content:(0,_ui.getI18n)("vxe.colorPicker.confirm"),size:"mini",status:"primary",onClick:J})])]):(0,_ui.renderEmptyElement)(R)])])]))},R},render(){return this.renderVN()}});
@@ -62,6 +62,7 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
62
62
  type: String,
63
63
  default: 'date'
64
64
  },
65
+ width: [Number, String],
65
66
  clearable: {
66
67
  type: Boolean,
67
68
  default: () => (0, _ui.getConfig)().datePicker.clearable
@@ -281,6 +282,16 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
281
282
  }
282
283
  return [];
283
284
  });
285
+ const computeCurrStyle = (0, _vue.computed)(() => {
286
+ const {
287
+ width
288
+ } = props;
289
+ const stys = {};
290
+ if (width) {
291
+ stys.width = (0, _dom.toCssUnit)(width);
292
+ }
293
+ return stys;
294
+ });
284
295
  const computeDateStartDate = (0, _vue.computed)(() => {
285
296
  return props.startDate ? _xeUtils.default.toStringDate(props.startDate) : null;
286
297
  });
@@ -1668,6 +1679,7 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
1668
1679
  class: ['vxe-date-picker--readonly', `type--${type}`, className]
1669
1680
  }, panelLabel);
1670
1681
  }
1682
+ const currStyle = computeCurrStyle.value;
1671
1683
  const inputReadonly = computeInputReadonly.value;
1672
1684
  const inpPlaceholder = computeInpPlaceholder.value;
1673
1685
  const isClearable = computeIsClearable.value;
@@ -1684,6 +1696,7 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
1684
1696
  'is--active': isActivated,
1685
1697
  'show--clear': isClearable && !isDisabled && !(inputValue === '' || _xeUtils.default.eqNull(inputValue))
1686
1698
  }],
1699
+ style: currStyle,
1687
1700
  spellcheck: false
1688
1701
  }, [prefix || (0, _ui.renderEmptyElement)($xeDatePicker), (0, _vue.h)('div', {
1689
1702
  class: 'vxe-date-picker--wrapper'
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_comp=require("../../ui/src/comp"),_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}}let{warnLog,errLog}=(0,_log.createComponentLog)("date-picker"),defaultMaskPlaceholder="_",maskedTypes=["year","month","date","datetime","time"],inputMaskedKeys=["y","M","d","H","m","n","s"],parseInputKayMaps={};function createReactData(){return{initialized:!1,panelIndex:0,visiblePanel:!1,isAniVisible:!1,panelStyle:{},panelPlacement:"",isActivated:!1,inputValue:"",labelFlag:0}}function createInternalData(){return{inputLabel:"",laseFocusMasked:0}}inputMaskedKeys.forEach(e=>{parseInputKayMaps[e]=!0});var _default=exports.default=(0,_comp.defineVxeComponent)({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,inputClassName:{type:String,default:()=>(0,_ui.getConfig)().datePicker.inputClassName},zIndex:Number,size:{type:String,default:()=>(0,_ui.getConfig)().datePicker.size||(0,_ui.getConfig)().size},multiple:Boolean,limitCount:{type:[String,Number],default:()=>(0,_ui.getConfig)().datePicker.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],defaultTime:[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,timeFormat: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},maskedConfig:Object,prefixIcon:String,suffixIcon:String,placement:String,transfer:{type:Boolean,default:null},timeConfig:Object,popupConfig:Object,shortcutConfig:Object,startWeek:Number},emits:["update:modelValue","input","change","keydown","keyup","click","focus","blur","clear","confirm","prefix-click","suffix-click","date-prev","date-today","date-next","shortcut-click"],setup(w,e){let{slots:T,emit:l}=e,i=(0,_vue.inject)("$xeModal",null),u=(0,_vue.inject)("$xeDrawer",null),n=(0,_vue.inject)("$xeTable",null),d=(0,_vue.inject)("$xeCard",null),r=(0,_vue.inject)("$xeForm",null),o=(0,_vue.inject)("xeFormItemInfo",null);var t=_xeUtils.default.uniqueId();let P=(0,_ui.useSize)(w).computeSize,V=(0,_vue.reactive)(createReactData()),M=createInternalData(),U=(0,_vue.ref)(),R=(0,_vue.ref)(),W=(0,_vue.ref)(),H=(0,_vue.ref)(),N=(0,_vue.ref)(),x={refElem:U,refInput:R},I={xID:t,props:w,context:e,reactData:V,internalData:M,getRefMaps:()=>x},Z=(0,_vue.computed)(()=>{var e=w.transfer,t=L.value;if(_xeUtils.default.isBoolean(t.transfer))return t.transfer;if(null===e){t=(0,_ui.getConfig)().datePicker.transfer;if(_xeUtils.default.isBoolean(t))return t;if(n||i||u||d||r)return!0}return e}),K=(0,_vue.computed)(()=>{var e=w.readonly;return null===e?!!r&&r.props.readonly:e}),A=(0,_vue.computed)(()=>{var e=w.disabled;return null===e?!!r&&r.props.disabled:e}),y=(0,_vue.computed)(()=>{var e=w.type;return"time"===e}),F=(0,_vue.computed)(()=>{var e=w.type;return y.value||"datetime"===e}),b=(0,_vue.computed)(()=>F.value||-1<["date","week","month","quarter","year"].indexOf(w.type)),j=(0,_vue.computed)(()=>w.clearable),k=(0,_vue.computed)(()=>F.value||-1<["date","week","month","quarter","year"].indexOf(w.type)),E=(0,_vue.computed)(()=>{let{modelValue:e,type:t,multiple:a}=w;var l=k.value;let i=p.value;return a&&e&&l?_xeUtils.default.toValueString(e).split(",").map(e=>{e=(0,_util.parseDateValue)(e,t,{valueFormat:i});return _xeUtils.default.isValidDate(e),e}):[]}),J=(0,_vue.computed)(()=>w.startDate?_xeUtils.default.toStringDate(w.startDate):null),Q=(0,_vue.computed)(()=>w.endDate?_xeUtils.default.toStringDate(w.endDate):null),D=(0,_vue.computed)(()=>w.multiple?_xeUtils.default.toNumber(w.limitCount):0),C=(0,_vue.computed)(()=>{var e=E.value;let t=p.value;return e.map(e=>_xeUtils.default.toDateString(e,t))}),S=(0,_vue.computed)(()=>{var e=w.multiple,t=D.value,a=C.value;return!(!e||!t)&&a.length>=t}),X=(0,_vue.computed)(()=>{var{type:e,editable:t,multiple:a}=w;return K.value||a||!t||"week"===e||"quarter"===e}),ee=(0,_vue.computed)(()=>{var e=w.placeholder;return(e=e||(0,_ui.getConfig)().datePicker.placeholder)?(0,_utils.getFuncText)(e):(0,_ui.getI18n)("vxe.base.pleaseSelect")}),te=(0,_vue.computed)(()=>{var e=w.immediate;return e}),ae=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().datePicker.timeConfig,w.timeConfig)),L=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().datePicker.popupConfig,w.popupConfig)),O=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().datePicker.shortcutConfig,w.shortcutConfig)),le=(0,_vue.computed)(()=>{var e=O.value.options;return e?e.map((e,t)=>Object.assign({name:""+(e.name||e.code||t)},e)):[]}),g=(0,_vue.computed)(()=>{var e=w.labelFormat;return e||(0,_ui.getI18n)("vxe.input.date.labelFormat."+w.type)}),p=(0,_vue.computed)(()=>{var{type:e,valueFormat:t}=w;return(0,_util.handleValueFormat)(e,t)}),B=(0,_vue.computed)(()=>g.value),_=(0,_vue.computed)(()=>{var e=w.startDay;return _xeUtils.default.toNumber(e)}),q=(0,_vue.computed)(()=>{let{type:t,multiple:e}=w;var a=V.inputValue;let l=g.value,i=p.value,u=_.value;return(a?e?a.split(","):[a]:[]).map(e=>(0,_util.parseDateObj)(e,t,{valueFormat:i,labelFormat:l,firstDay:u}).label).join(", ")}),$=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().datePicker.maskedConfig,w.maskedConfig)),z=(0,_vue.computed)(()=>{var e=$.value.maskPlaceholder;return(e?(""+e)[0]:"")||defaultMaskPlaceholder}),ie=()=>{var e=w.modelValue;let t="";e&&(t=_xeUtils.default.isNumber(e)&&/^[0-9]{11,15}$/.test(""+e)?new Date(e):e),V.inputValue=t},G=(e,t)=>{M.inputLabel=e,t&&V.labelFlag++},v=e=>{var t=V.inputValue;h(e.type,{value:t},e)},c=(e,t)=>{var a,{type:l,modelValue:i,valueFormat:u}=w,n=p.value;V.inputValue=e,(0,_util.hasTimestampValueType)(u)?(a=(a=(0,_util.parseDateValue)(e,l,{valueFormat:n}))?a.getTime():null,s(a),i!==a&&(h("change",{value:a},t),r)&&o&&r.triggerItemEvent(t,o.itemConfig.field,a)):(0,_util.hasDateValueType)(u)?(a=(0,_util.parseDateValue)(e,l,{valueFormat:n}),s(a),(i&&a?_xeUtils.default.toStringDate(i).getTime()!==a.getTime():i!==a)&&(h("change",{value:a},t),r)&&o&&r.triggerItemEvent(t,o.itemConfig.field,a)):(s(e),_xeUtils.default.toValueString(i)!==e&&(h("change",{value:e},t),r)&&o&&r.triggerItemEvent(t,o.itemConfig.field,e))},ue=e=>{var t=e.target.value;G(t,!0),h("input",{value:t},e)},ne=e=>{te.value||v(e)},re=e=>{var t;A.value||(t=V.inputValue,h("prefix-click",{value:t},e))},f=()=>new Promise(e=>{V.visiblePanel=!1,M.hpTimeout=setTimeout(()=>{V.isAniVisible=!1,e()},350)}),oe=(a,e)=>{var{modelValue:t,multiple:l}=w,i=F.value;let u=p.value;var n=_.value;"week"===w.type&&(o=_xeUtils.default.toNumber(w.selectDay),a=_xeUtils.default.getWhatWeek(a,0,o,n));let r=_xeUtils.default.toDateString(a,u,{firstDay:n});if(l){var o=S.value;if(i){n=e?[]:[...E.value];let t=[];l=_xeUtils.default.findIndexOf(n,e=>_xeUtils.default.isDateSame(a,e,"yyyyMMdd"));if(-1===l){if(o)return;n.push(a)}else n.splice(l,1);n.forEach(e=>{e&&t.push(e)}),c(t.map(e=>_xeUtils.default.toDateString(e,u)).join(","),{type:"update"})}else{i=e?[]:C.value;i.some(e=>_xeUtils.default.isEqual(e,r))?c(i.filter(e=>!_xeUtils.default.isEqual(e,r)).join(","),{type:"update"}):o||c(i.concat([r]).join(","),{type:"update"})}}else _xeUtils.default.isEqual(t,r)||c(r,{type:"update"})},se=()=>{var e=q.value;G(e,!0)},m=i=>{var{type:a,editable:l,multiple:e,maskedConfig:u}=w,n=M.inputLabel;let r=g.value;var o=$.value,s=J.value,d=Q.value;if(i){l&&!e&&((0,_utils.isEnableConf)(u)||o.enabled)&&(l=r.match(new RegExp(`(${inputMaskedKeys.join("|")})+`,"g")))&&l.forEach(t=>{var a=r.indexOf(t);if(-1<a){var l=i.slice(a,a+t.length).replace(/\D/g,"");if(l){let e=_xeUtils.default.toNumber(l);!e&&["MM","dd"].includes(t)&&(e=1),i=i.slice(0,a)+_xeUtils.default.padStart((0,_util.checkDateInputFormat)(e,t),t.length,"0")+i.slice(a+t.length)}}});e=N.value;if(e)return e.checkValue(i);let t=(0,_util.parseDateValue)(i,a,{valueFormat:r});if(_xeUtils.default.isValidDate(t))if("time"===a)n!==(t=_xeUtils.default.toDateString(t,r))&&c(t,{type:"check"}),G(t,!0);else{d&&t>d&&(t=d),s&&t<s&&(t=s);let e=!1;u=_.value,l=("datetime"===a&&(o=V.inputValue,i===_xeUtils.default.toDateString(o,r))&&i===_xeUtils.default.toDateString(t,r)||(e=!0),_xeUtils.default.toDateString(t,r,{firstDay:u}));G(l,!0),e&&oe(t)}else se()}else c("",{type:"check"})},de=(e,t)=>{b.value&&f(),c("",e),h("clear",{value:t},e)},ve=e=>{var t;A.value||(t=V.inputValue,h("suffix-click",{value:t},e))},pe=(e,t,a)=>{var l=$.value.align,i=z.value,u=_xeUtils.default.toNumber(e);let n=(0,_util.checkDateInputFormat)(u,t),r=""+(n=a&&!n&&["MM","dd"].includes(t)?1:n);return e.length>r.length&&(r=r.padStart(e.length,"0")),a?_xeUtils.default.padStart(r,t.length,"0"):_xeUtils.default["right"===l?"padStart":"padEnd"](r,t.length,i)},ce=(e,a,l,i,u)=>{var{type:n,multiple:r}=w;if(!r){r=R.value;if(r){var o=r.value;if(o){var s=B.value,d=g.value,v=_.value,p=z.value,c=r.selectionStart||0;let t=s[c];parseInputKayMaps[t]||(t=s[c-1]);var f,m,c=s.match(new RegExp(t+"+"));c&&(a||l?(l=c[0]||"",f=(c=c.index||0)+l.length,m=o.slice(c,f),parseInputKayMaps[t]&&(m=((0,_util.isAllSameChar)(m,p)?(0,_util.getChunkDefaultNum)(t):_xeUtils.default.toNumber(m))+(a?1:-1),a=o.slice(0,c)+pe(""+m,l,!0)+o.slice(f),e.preventDefault(),-1===a.indexOf(p)?(m=(0,_util.parseDateValue)(a,n,{valueFormat:d}),_xeUtils.default.isValidDate(m)&&(l=_xeUtils.default.toDateString(m,d,{firstDay:v}),r.value=l,G(l,!1))):(r.value=a,G(a,!1))),r.setSelectionRange(c,f)):(i||u)&&-1<inputMaskedKeys.indexOf(t)&&(o=_xeUtils.default.map(s.match(new RegExp(`(${inputMaskedKeys.join("|")})+`,"g"))||[],e=>e[0]),p=_xeUtils.default.findIndexOf(o,e=>t===e[0]),m=(n=i?o[p-1]||o[0]:o[p+1]||o[o.length-1])?n[0]:"",d=s.match(new RegExp(m+"+")))&&(e.preventDefault(),l=(v=d.index||0)+d[0].length,r.setSelectionRange(v,l)),M.isTriggerMasked=!0)}}}},fe=n=>{var r=w.multiple;if(!r){var o=R.value;if(o){r=(0,_dom.hasControlKey)(n);if(!r){n.preventDefault();var r=n.key,s=_ui.globalEvents.hasKey(n,_ui.GLOBAL_EVENT_KEYS.DELETE),d=_ui.globalEvents.hasKey(n,_ui.GLOBAL_EVENT_KEYS.BACKSPACE),r="0"<=r&&r<="9",n=r?n.key:"";if(s||d||r){var v=M.isTriggerMasked,p=$.value.align,c=B.value,f=z.value;let i=o.value||c;var m=o.selectionStart||0,g=o.selectionEnd||0;let u=c[m];parseInputKayMaps[u]||(u=c[m-1]);var _=c.match(new RegExp(u+"+"));if(_){var h=_xeUtils.default.map(c.match(new RegExp(`(${inputMaskedKeys.join("|")})+`,"g"))||[],e=>e[0]),x=_[0]||"",y=_.index||0,b=y+x.length,k=h.indexOf(u),m=!m&&g===i.length&&1<h.length,g=i&&i.length!==c.length;(m||g)&&(i=c);let e=s?"":i.slice(y,b);g=e.match(/\d/g)||[],v=v&&!d?[]:g.slice(0);r?(v.push(n),e=pe(v.join(""),x,!1)):d&&(v.pop(),e=_xeUtils.default["right"===p?"padStart":"padEnd"](v.join(""),x.length,f));let t=i.slice(0,y)+e+i.slice(b);if(t=t.replace(new RegExp(`(${inputMaskedKeys.join("|")})`,"g"),f),o.value=t,G(t,!1),m){if(d||s){r=h[0],n=c.match(new RegExp(r+"+"));if(n)return x=n[0],o.setSelectionRange(0,x.length),void(M.isTriggerMasked=!0)}}else if(d&&!g.length){for(let e=k-1;0<=e;e--){var E=h[e],E=c.match(new RegExp(E+"+"));if(E){var D=E[0],E=E.index||0,C=E+D.length;let e=t.slice(E,C);var S=e.match(/\d/g)||[];if(S.length)return S.pop(),e=_xeUtils.default["right"===p?"padStart":"padEnd"](S.join(""),D.length,f),t=t.slice(0,E)+e+t.slice(C),o.value=t,G(t,!1),void o.setSelectionRange(E,C)}}y=h[0],b=c.match(new RegExp(y+"+"));return b?(m=b[0],t=c.replace(new RegExp(`(${inputMaskedKeys.join("|")})`,"g"),f),o.value=t,G(t,!1),o.setSelectionRange(0,m.length),void(M.isTriggerMasked=!0)):void 0}let a=_.index||0,l=a+_[0].length;v.length>=e.length?(s=h.slice(k+1),-1<k&&((r=s.length?c.match(new RegExp(`(${s.join("|")})+`)):null)&&(a=r.index||0,l=a+r[0].length),o.setSelectionRange(a,l)),M.isTriggerMasked=!0):(o.setSelectionRange(a,l),M.isTriggerMasked=!1)}}}}}},me=(t,i)=>{M.fsTimeout=void 0;var{type:u,multiple:n,modelValue:r}=w;if(!n&&maskedTypes.includes(u)){n=R.value;if(n){u=M.laseFocusMasked;if(!(u&&Date.now()-u<100)){u=B.value;let l=z.value;var a=n.selectionStart||0,o=n.selectionEnd||0,s=n.value,d=_xeUtils.default.map(u.match(new RegExp(`(${inputMaskedKeys.join("|")})+`,"g"))||[],e=>e[0]);if(!s){let e=u.replace(new RegExp(`(${inputMaskedKeys.join("|")})`,"g"),l);if(i&&r){let t=(""+_xeUtils.default.toNumber(r)).match(/\d/g)||[],a=0;e=u.replace(new RegExp(`(${inputMaskedKeys.join("|")})`,"g"),e=>t[a++]||e)}var i=d[0],r=u.match(new RegExp(i+"+"));if(r)return t.preventDefault(),i=r[0],n.value=e,G(e,!1),n.setSelectionRange(0,i.length),void(M.laseFocusMasked=Date.now())}r=!a&&o===s.length&&1<d.length,i=s&&s.length!==u.length;if(r||i){let a="";if(i&&s){let e=s.match(/\d/g)||[],t=0;a=u.replace(new RegExp(`(${inputMaskedKeys.join("|")})`,"g"),()=>e[t++]||l)}else u.replace(new RegExp(`(${inputMaskedKeys.join("|")})`,"g"),l);var o=d[0],r=u.match(new RegExp(o+"+"));if(r)return t.preventDefault(),i=r[0],n.value=a,G(a,!1),n.setSelectionRange(0,i.length),void(M.laseFocusMasked=Date.now())}let e=u[a];(e=parseInputKayMaps[e]?e:u[a-1])&&(t.stopPropagation(),s=u.match(new RegExp(e+"+")))&&(d=s[0]||"",r=(o=s.index||0)+d.length,n.setSelectionRange(o,r),M.isTriggerMasked=!0,M.laseFocusMasked=Date.now())}}}},ge=e=>{var t,a=V.inputValue;te.value||c(a,e),V.visiblePanel||(t=M.inputLabel,V.isActivated=!1,m(t)),h("blur",{value:a},e),r&&o&&r.triggerItemEvent(e,o.itemConfig.field,a)},_e=e=>{var{multiple:t,editable:a,maskedConfig:l}=w,i=M.fsTimeout,u=$.value,n=L.value.trigger;V.isActivated=!0,i&&clearTimeout(i),n&&"default"!==n?"icon"===n&&f():Ue(e),a&&!t&&((0,_utils.isEnableConf)(l)||u.enabled)&&(M.fsTimeout=setTimeout(()=>{me(e,!0)},20)),v(e)},he=e=>{var{multiple:t,editable:a,maskedConfig:l}=w,i=M.fsTimeout,u=$.value;i&&clearTimeout(i),a&&!t&&((0,_utils.isEnableConf)(l)||u.enabled)&&(M.fsTimeout=setTimeout(()=>{me(e)},10)),v(e)},xe=e=>{var{type:t,editable:a,maskedConfig:l}=w,i=V.visiblePanel,u=$.value,n=_ui.globalEvents.hasKey(e,_ui.GLOBAL_EVENT_KEYS.ARROW_UP),r=_ui.globalEvents.hasKey(e,_ui.GLOBAL_EVENT_KEYS.ARROW_DOWN),o=_ui.globalEvents.hasKey(e,_ui.GLOBAL_EVENT_KEYS.ARROW_LEFT),s=_ui.globalEvents.hasKey(e,_ui.GLOBAL_EVENT_KEYS.ARROW_RIGHT),d=_ui.globalEvents.hasKey(e,_ui.GLOBAL_EVENT_KEYS.ENTER);a&&(d?(a=M.inputLabel,i&&f(),m(a)):maskedTypes.includes(t)&&((0,_utils.isEnableConf)(l)||u.enabled)&&(u.isArrow&&(n||r||o||s)?ce(e,n,r,o,s):u.isMasked&&fe(e))),v(e)},ye=e=>{v(e)},be=e=>{var t=N.value;t&&t.confirmByEvent(e),f()},ke=e=>{var{multiple:t,autoClose:a}=w,{value:e,$event:l}=e,i=F.value;c(e,l),t||i||a&&f()},Ee=e=>{h("confirm",e,e.$event)},De=e=>{G(e.label,!0)},Ce=e=>{var{visiblePanel:t,isActivated:a}=V,l=U.value,i=H.value;!A.value&&a&&((l=(0,_dom.getEventTargetNode)(e,l).flag||(0,_dom.getEventTargetNode)(e,i).flag)!==a&&(V.isActivated=l),l||t&&(f(),e=M.inputLabel,m(e)))},Se=e=>{var t,{isActivated:a,visiblePanel:l}=V;A.value||(t=_ui.globalEvents.hasKey(e,_ui.GLOBAL_EVENT_KEYS.TAB),e=_ui.globalEvents.hasKey(e,_ui.GLOBAL_EVENT_KEYS.ESCAPE),t&&a&&(V.isActivated=!1),l&&(e||t)&&f())},we=()=>{var{isActivated:e,visiblePanel:t}=V;t&&f(),e&&(V.isActivated=!1),(t||e)&&(m(M.inputLabel),t=R.value)&&t.blur()},Te=()=>{var e=V.visiblePanel;e&&a()},Pe=()=>{var e=V.visiblePanel;e&&a()},Ve=()=>{var e=L.value.zIndex||w.zIndex;e?V.panelIndex=_xeUtils.default.toNumber(e):V.panelIndex<(0,_utils.getLastZIndex)()&&(V.panelIndex=(0,_utils.nextZIndex)())},a=()=>{let a=w.placement,l=V.panelIndex,i=R.value,u=W.value;if(!u)return(0,_vue.nextTick)();let n=Z.value,r=L.value;var e=()=>{var e=(0,_dom.updatePanelPlacement)(i,u,{placement:r.placement||a,defaultPlacement:r.defaultPlacement,teleportTo:n}),t=Object.assign(e.style,{zIndex:l});V.panelStyle=t,V.panelPlacement=e.placement};return e(),(0,_vue.nextTick)().then(e)},Me=()=>{var e=V.visiblePanel;return(A.value||e?(0,_vue.nextTick):(V.initialized||(V.initialized=!0),M.hpTimeout&&(clearTimeout(M.hpTimeout),M.hpTimeout=void 0),V.isActivated=!0,V.isAniVisible=!0,setTimeout(()=>{V.visiblePanel=!0,a()},10),Ve(),a))()},Ue=e=>{K.value||(e.preventDefault(),Me())},Re=e=>{var t=V.visiblePanel,a=L.value.trigger;a&&"default"!==a&&"icon"!==a||(t?f():Ue(e))},Ne=({option:e,$event:t})=>{var a=w.type,l=V.inputValue,i=O.value,u=i.autoClose,{code:n,clickMethod:r}=e,o=l,s={$datePicker:I,option:e,value:o,code:n};if(!r&&n){l=_ui.commands.get(n),e=l?l.datePickerCommandMethod:null;if(e)e(s);else{var d=p.value,v=_.value;switch(n){case"now":case"prev":case"next":case"minus":case"plus":o=(0,_util.getDateByCode)(n,o,a,{valueFormat:d,firstDay:v}).value;s.value=o,c(o,t);break;default:errLog("vxe.error.notCommands",[n])}}}else{l=r||i.clickMethod;l&&l(s)}u&&f(),h("shortcut-click",s,t)},h=(e,t,a)=>{l(e,(0,_ui.createEvent)(a,{$datePicker:I},t))},s=e=>{l("update:modelValue",e)};t={dispatchEvent:h,setModelValue(e){V.inputValue=e,s(e)},setModelValueByEvent(e,t){c(t||"",e)},focus(){var e=R.value;return V.isActivated=!0,e.focus(),(0,_vue.nextTick)()},blur(){return R.value.blur(),(V.isActivated=!1,_vue.nextTick)()},select(){return R.value.select(),(V.isActivated=!1,_vue.nextTick)()},showPanel:Me,hidePanel:f,updatePlacement:a};Object.assign(I,t);let Y=(e,t)=>{var a=O.value,{position:l,align:i,mode:u}=a,n=le.value;return(0,_utils.isEnableConf)(a)&&n.length&&(l||"left")===e?(0,_vue.h)("div",{class:`vxe-date-picker--layout-${e}-wrapper`},[(0,_vue.h)(_buttonGroup.default,{options:n,mode:u,align:i,vertical:t,onClick:Ne})]):(0,_ui.renderEmptyElement)(I)},Ie=()=>(0,_vue.h)("div",{class:"vxe-date-picker--control-icon",onClick:Re},[(0,_vue.h)("i",{class:["vxe-date-picker--date-picker-icon",(0,_ui.getIcon)().DATE_PICKER_DATE]})]);return(0,_vue.watch)(q,e=>{G(e,!0)}),(0,_vue.watch)(()=>w.modelValue,()=>{ie()}),ie(),(0,_vue.nextTick)(()=>{_ui.globalEvents.on(I,"mousedown",Ce),_ui.globalEvents.on(I,"keydown",Se),_ui.globalEvents.on(I,"blur",we),_ui.globalEvents.on(I,"resize",Te),_ui.globalEvents.on(I,"scroll",Pe)}),(0,_vue.onMounted)(()=>{var{type:e,multiple:t,maskedConfig:a}=w;(0,_utils.isEnableConf)(a)&&(t&&errLog("vxe.error.notSupportProp",["multiple","control-config.enabled=true","control-config.enabled=false"]),maskedTypes.includes(e)||warnLog("vxe.error.notSupportProp",["control-config.enabled=true","type="+e,"type="+maskedTypes.join("|")]))}),(0,_vue.onUnmounted)(()=>{_ui.globalEvents.off(I,"mousedown"),_ui.globalEvents.off(I,"keydown"),_ui.globalEvents.off(I,"blur"),_ui.globalEvents.off(I,"resize"),_ui.globalEvents.off(I,"scroll"),_xeUtils.default.assign(V,createReactData()),_xeUtils.default.assign(M,createInternalData())}),(0,_vue.provide)("$xeDatePicker",I),I.renderVN=()=>{var e,t,a,l,i,u,n,r,o,s,d,v,p,{className:c,inputClassName:f,type:m,name:g,autoComplete:_}=w,{inputValue:h,visiblePanel:x,isActivated:y,labelFlag:b}=V,k=M.inputLabel,E=P.value,D=A.value,C=K.value,S=q.value;return C?(0,_vue.h)("div",{ref:U,class:["vxe-date-picker--readonly","type--"+m,c]},S):(C=X.value,S=ee.value,a=j.value,t=w.prefixIcon,l=(l=T.prefix)||t?(0,_vue.h)("div",{class:"vxe-date-picker--prefix",onClick:re},[(0,_vue.h)("div",{class:"vxe-date-picker--prefix-icon"},l?(0,_vn.getSlotVNs)(l({})):[(0,_vue.h)("i",{class:t})])]):null,t=w.suffixIcon,p=V.inputValue,v=T.suffix,i=A.value,e=j.value,i=(0,_vue.h)("div",{class:["vxe-date-picker--suffix",{"is--clear":e&&!i&&!(""===p||_xeUtils.default.eqNull(p))}]},[e?(0,_vue.h)("div",{class:"vxe-date-picker--clear-icon",onClick:de},[(0,_vue.h)("i",{class:(0,_ui.getIcon)().INPUT_CLEAR})]):(0,_ui.renderEmptyElement)(I),Ie(),v||t?(0,_vue.h)("div",{class:"vxe-date-picker--suffix-icon",onClick:ve},v?(0,_vn.getSlotVNs)(v({})):[(0,_vue.h)("i",{class:t})]):(0,_ui.renderEmptyElement)(I)]),(0,_vue.h)("div",{ref:U,class:["vxe-date-picker","type--"+m,c,{["size--"+E]:E,"is--prefix":!!l,"is--suffix":!!i,"is--visible":x,"is--disabled":D,"is--active":y,"show--clear":a&&!D&&!(""===h||_xeUtils.default.eqNull(h))}],spellcheck:!1},[l||(0,_ui.renderEmptyElement)(I),(0,_vue.h)("div",{class:"vxe-date-picker--wrapper"},[(0,_vue.h)("input",{ref:R,class:"vxe-date-picker--inner"+(f?" "+f:""),value:b?k:"",name:g,type:"text",placeholder:S,readonly:C,disabled:D,autocomplete:_,onKeydown:xe,onKeyup:ye,onClick:he,onInput:ue,onChange:ne,onFocus:_e,onBlur:ge})]),i||(0,_ui.renderEmptyElement)(I),!1===(p=L.value).enabled?(0,_ui.renderEmptyElement)(I):({type:e,multiple:v,showClearButton:t,showConfirmButton:m}=w,{initialized:c,isAniVisible:E,visiblePanel:x,panelPlacement:y,panelStyle:a,inputValue:h}=V,l=P.value,f=Z.value,b=O.value,k=j.value,g=F.value,S=le.value,C=ae.value,D=J.value,_=Q.value,i=p.appendTo,b=b.position,u=T.header,n=T.footer,r=T.top,o=T.bottom,s=T.left,d=T.right,p=p.className,S=0<S.length,g=null===m?g||v:m,v=null===t?k&&g&&"time"!==e:t,(0,_vue.h)(_vue.Teleport,{to:(0,_dom.getPopupContainer)(i),disabled:!f||!c},[(0,_vue.h)("div",{ref:W,class:["vxe-table--ignore-clear vxe-date-picker--panel","type--"+e,p?_xeUtils.default.isFunction(p)?p({$datePicker:I}):p:"",{["size--"+l]:l,"is--transfer":f,"ani--leave":E,"ani--enter":x,"show--top":!!(r||u||S&&("top"===b||"header"===b)),"show--bottom":!!(o||n||S&&("bottom"===b||"footer"===b)),"show--left":!!(s||S&&"left"===b),"show--right":!!(d||S&&"right"===b)}],placement:y,style:a},c&&(x||E)?[(0,_vue.h)("div",{ref:H,class:["vxe-date-picker--layout-all-wrapper","type--"+e,{["size--"+l]:l}]},[r?(0,_vue.h)("div",{class:"vxe-date-picker--layout-top-wrapper"},r({})):Y("top"),(0,_vue.h)("div",{class:"vxe-date-picker--layout-body-layout-wrapper"},[s?(0,_vue.h)("div",{class:"vxe-date-picker--layout-left-wrapper"},s({})):Y("left",!0),(0,_vue.h)("div",{class:"vxe-date-picker--layout-body-content-wrapper"},[u?(0,_vue.h)("div",{class:"vxe-date-picker--layout-header-wrapper"},u({})):Y("header"),(0,_vue.h)("div",{class:"vxe-date-picker--layout-body-wrapper"},[(0,_vue.h)(_datePanel.default,{ref:N,modelValue:V.inputValue,type:w.type,className:w.className,multiple:w.multiple,limitCount:w.limitCount,startDate:D,endDate:_,defaultDate:w.defaultDate,defaultTime:w.defaultTime,minDate:w.minDate,maxDate:w.maxDate,startDay:w.startDay,labelFormat:w.labelFormat,valueFormat:w.valueFormat,timeFormat:w.timeFormat,timeConfig:C,festivalMethod:w.festivalMethod,disabledMethod:w.disabledMethod,selectDay:w.selectDay,onChange:ke,onConfirm:Ee,onRevert:De})]),(0,_vue.h)("div",{class:"vxe-date-picker--layout-footer-wrapper"},[(0,_vue.h)("div",{class:"vxe-date-picker--layout-footer-custom"},n?n({}):[Y("footer")]),v||g?(0,_vue.h)("div",{class:"vxe-date-picker--layout-footer-btns"},[v?(0,_vue.h)(_button.default,{size:"mini",disabled:""===h||_xeUtils.default.eqNull(h),content:(0,_ui.getI18n)("vxe.button.clear"),onClick:de}):(0,_ui.renderEmptyElement)(I),g?(0,_vue.h)(_button.default,{size:"mini",status:"primary",content:(0,_ui.getI18n)("vxe.button.confirm"),onClick:be}):(0,_ui.renderEmptyElement)(I)]):(0,_ui.renderEmptyElement)(I)])]),d?(0,_vue.h)("div",{class:"vxe-date-picker--layout-right-wrapper"},d({})):Y("right",!0)]),o?(0,_vue.h)("div",{class:"vxe-date-picker--layout-bottom-wrapper"},o({})):Y("bottom")])]:[])]))]))},I},render(){return this.renderVN()}});
1
+ Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_comp=require("../../ui/src/comp"),_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}}let{warnLog,errLog}=(0,_log.createComponentLog)("date-picker"),defaultMaskPlaceholder="_",maskedTypes=["year","month","date","datetime","time"],inputMaskedKeys=["y","M","d","H","m","n","s"],parseInputKayMaps={};function createReactData(){return{initialized:!1,panelIndex:0,visiblePanel:!1,isAniVisible:!1,panelStyle:{},panelPlacement:"",isActivated:!1,inputValue:"",labelFlag:0}}function createInternalData(){return{inputLabel:"",laseFocusMasked:0}}inputMaskedKeys.forEach(e=>{parseInputKayMaps[e]=!0});var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeDatePicker",props:{modelValue:[String,Number,Date],immediate:{type:Boolean,default:!0},name:String,type:{type:String,default:"date"},width:[Number,String],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,inputClassName:{type:String,default:()=>(0,_ui.getConfig)().datePicker.inputClassName},zIndex:Number,size:{type:String,default:()=>(0,_ui.getConfig)().datePicker.size||(0,_ui.getConfig)().size},multiple:Boolean,limitCount:{type:[String,Number],default:()=>(0,_ui.getConfig)().datePicker.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],defaultTime:[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,timeFormat: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},maskedConfig:Object,prefixIcon:String,suffixIcon:String,placement:String,transfer:{type:Boolean,default:null},timeConfig:Object,popupConfig:Object,shortcutConfig:Object,startWeek:Number},emits:["update:modelValue","input","change","keydown","keyup","click","focus","blur","clear","confirm","prefix-click","suffix-click","date-prev","date-today","date-next","shortcut-click"],setup(w,e){let{slots:T,emit:l}=e,i=(0,_vue.inject)("$xeModal",null),u=(0,_vue.inject)("$xeDrawer",null),n=(0,_vue.inject)("$xeTable",null),d=(0,_vue.inject)("$xeCard",null),r=(0,_vue.inject)("$xeForm",null),o=(0,_vue.inject)("xeFormItemInfo",null);var t=_xeUtils.default.uniqueId();let P=(0,_ui.useSize)(w).computeSize,V=(0,_vue.reactive)(createReactData()),M=createInternalData(),U=(0,_vue.ref)(),N=(0,_vue.ref)(),W=(0,_vue.ref)(),H=(0,_vue.ref)(),R=(0,_vue.ref)(),x={refElem:U,refInput:N},I={xID:t,props:w,context:e,reactData:V,internalData:M,getRefMaps:()=>x},Z=(0,_vue.computed)(()=>{var e=w.transfer,t=L.value;if(_xeUtils.default.isBoolean(t.transfer))return t.transfer;if(null===e){t=(0,_ui.getConfig)().datePicker.transfer;if(_xeUtils.default.isBoolean(t))return t;if(n||i||u||d||r)return!0}return e}),K=(0,_vue.computed)(()=>{var e=w.readonly;return null===e?!!r&&r.props.readonly:e}),A=(0,_vue.computed)(()=>{var e=w.disabled;return null===e?!!r&&r.props.disabled:e}),y=(0,_vue.computed)(()=>{var e=w.type;return"time"===e}),F=(0,_vue.computed)(()=>{var e=w.type;return y.value||"datetime"===e}),b=(0,_vue.computed)(()=>F.value||-1<["date","week","month","quarter","year"].indexOf(w.type)),j=(0,_vue.computed)(()=>w.clearable),k=(0,_vue.computed)(()=>F.value||-1<["date","week","month","quarter","year"].indexOf(w.type)),E=(0,_vue.computed)(()=>{let{modelValue:e,type:t,multiple:a}=w;var l=k.value;let i=p.value;return a&&e&&l?_xeUtils.default.toValueString(e).split(",").map(e=>{e=(0,_util.parseDateValue)(e,t,{valueFormat:i});return _xeUtils.default.isValidDate(e),e}):[]}),J=(0,_vue.computed)(()=>{var e=w.width,t={};return e&&(t.width=(0,_dom.toCssUnit)(e)),t}),Q=(0,_vue.computed)(()=>w.startDate?_xeUtils.default.toStringDate(w.startDate):null),X=(0,_vue.computed)(()=>w.endDate?_xeUtils.default.toStringDate(w.endDate):null),D=(0,_vue.computed)(()=>w.multiple?_xeUtils.default.toNumber(w.limitCount):0),C=(0,_vue.computed)(()=>{var e=E.value;let t=p.value;return e.map(e=>_xeUtils.default.toDateString(e,t))}),S=(0,_vue.computed)(()=>{var e=w.multiple,t=D.value,a=C.value;return!(!e||!t)&&a.length>=t}),ee=(0,_vue.computed)(()=>{var{type:e,editable:t,multiple:a}=w;return K.value||a||!t||"week"===e||"quarter"===e}),te=(0,_vue.computed)(()=>{var e=w.placeholder;return(e=e||(0,_ui.getConfig)().datePicker.placeholder)?(0,_utils.getFuncText)(e):(0,_ui.getI18n)("vxe.base.pleaseSelect")}),ae=(0,_vue.computed)(()=>{var e=w.immediate;return e}),le=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().datePicker.timeConfig,w.timeConfig)),L=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().datePicker.popupConfig,w.popupConfig)),O=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().datePicker.shortcutConfig,w.shortcutConfig)),ie=(0,_vue.computed)(()=>{var e=O.value.options;return e?e.map((e,t)=>Object.assign({name:""+(e.name||e.code||t)},e)):[]}),g=(0,_vue.computed)(()=>{var e=w.labelFormat;return e||(0,_ui.getI18n)("vxe.input.date.labelFormat."+w.type)}),p=(0,_vue.computed)(()=>{var{type:e,valueFormat:t}=w;return(0,_util.handleValueFormat)(e,t)}),B=(0,_vue.computed)(()=>g.value),_=(0,_vue.computed)(()=>{var e=w.startDay;return _xeUtils.default.toNumber(e)}),q=(0,_vue.computed)(()=>{let{type:t,multiple:e}=w;var a=V.inputValue;let l=g.value,i=p.value,u=_.value;return(a?e?a.split(","):[a]:[]).map(e=>(0,_util.parseDateObj)(e,t,{valueFormat:i,labelFormat:l,firstDay:u}).label).join(", ")}),$=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().datePicker.maskedConfig,w.maskedConfig)),z=(0,_vue.computed)(()=>{var e=$.value.maskPlaceholder;return(e?(""+e)[0]:"")||defaultMaskPlaceholder}),ue=()=>{var e=w.modelValue;let t="";e&&(t=_xeUtils.default.isNumber(e)&&/^[0-9]{11,15}$/.test(""+e)?new Date(e):e),V.inputValue=t},G=(e,t)=>{M.inputLabel=e,t&&V.labelFlag++},v=e=>{var t=V.inputValue;h(e.type,{value:t},e)},c=(e,t)=>{var a,{type:l,modelValue:i,valueFormat:u}=w,n=p.value;V.inputValue=e,(0,_util.hasTimestampValueType)(u)?(a=(a=(0,_util.parseDateValue)(e,l,{valueFormat:n}))?a.getTime():null,s(a),i!==a&&(h("change",{value:a},t),r)&&o&&r.triggerItemEvent(t,o.itemConfig.field,a)):(0,_util.hasDateValueType)(u)?(a=(0,_util.parseDateValue)(e,l,{valueFormat:n}),s(a),(i&&a?_xeUtils.default.toStringDate(i).getTime()!==a.getTime():i!==a)&&(h("change",{value:a},t),r)&&o&&r.triggerItemEvent(t,o.itemConfig.field,a)):(s(e),_xeUtils.default.toValueString(i)!==e&&(h("change",{value:e},t),r)&&o&&r.triggerItemEvent(t,o.itemConfig.field,e))},ne=e=>{var t=e.target.value;G(t,!0),h("input",{value:t},e)},re=e=>{ae.value||v(e)},oe=e=>{var t;A.value||(t=V.inputValue,h("prefix-click",{value:t},e))},f=()=>new Promise(e=>{V.visiblePanel=!1,M.hpTimeout=setTimeout(()=>{V.isAniVisible=!1,e()},350)}),se=(a,e)=>{var{modelValue:t,multiple:l}=w,i=F.value;let u=p.value;var n=_.value;"week"===w.type&&(o=_xeUtils.default.toNumber(w.selectDay),a=_xeUtils.default.getWhatWeek(a,0,o,n));let r=_xeUtils.default.toDateString(a,u,{firstDay:n});if(l){var o=S.value;if(i){n=e?[]:[...E.value];let t=[];l=_xeUtils.default.findIndexOf(n,e=>_xeUtils.default.isDateSame(a,e,"yyyyMMdd"));if(-1===l){if(o)return;n.push(a)}else n.splice(l,1);n.forEach(e=>{e&&t.push(e)}),c(t.map(e=>_xeUtils.default.toDateString(e,u)).join(","),{type:"update"})}else{i=e?[]:C.value;i.some(e=>_xeUtils.default.isEqual(e,r))?c(i.filter(e=>!_xeUtils.default.isEqual(e,r)).join(","),{type:"update"}):o||c(i.concat([r]).join(","),{type:"update"})}}else _xeUtils.default.isEqual(t,r)||c(r,{type:"update"})},de=()=>{var e=q.value;G(e,!0)},m=i=>{var{type:a,editable:l,multiple:e,maskedConfig:u}=w,n=M.inputLabel;let r=g.value;var o=$.value,s=Q.value,d=X.value;if(i){l&&!e&&((0,_utils.isEnableConf)(u)||o.enabled)&&(l=r.match(new RegExp(`(${inputMaskedKeys.join("|")})+`,"g")))&&l.forEach(t=>{var a=r.indexOf(t);if(-1<a){var l=i.slice(a,a+t.length).replace(/\D/g,"");if(l){let e=_xeUtils.default.toNumber(l);!e&&["MM","dd"].includes(t)&&(e=1),i=i.slice(0,a)+_xeUtils.default.padStart((0,_util.checkDateInputFormat)(e,t),t.length,"0")+i.slice(a+t.length)}}});e=R.value;if(e)return e.checkValue(i);let t=(0,_util.parseDateValue)(i,a,{valueFormat:r});if(_xeUtils.default.isValidDate(t))if("time"===a)n!==(t=_xeUtils.default.toDateString(t,r))&&c(t,{type:"check"}),G(t,!0);else{d&&t>d&&(t=d),s&&t<s&&(t=s);let e=!1;u=_.value,l=("datetime"===a&&(o=V.inputValue,i===_xeUtils.default.toDateString(o,r))&&i===_xeUtils.default.toDateString(t,r)||(e=!0),_xeUtils.default.toDateString(t,r,{firstDay:u}));G(l,!0),e&&se(t)}else de()}else c("",{type:"check"})},ve=(e,t)=>{b.value&&f(),c("",e),h("clear",{value:t},e)},pe=e=>{var t;A.value||(t=V.inputValue,h("suffix-click",{value:t},e))},ce=(e,t,a)=>{var l=$.value.align,i=z.value,u=_xeUtils.default.toNumber(e);let n=(0,_util.checkDateInputFormat)(u,t),r=""+(n=a&&!n&&["MM","dd"].includes(t)?1:n);return e.length>r.length&&(r=r.padStart(e.length,"0")),a?_xeUtils.default.padStart(r,t.length,"0"):_xeUtils.default["right"===l?"padStart":"padEnd"](r,t.length,i)},fe=(e,a,l,i,u)=>{var{type:n,multiple:r}=w;if(!r){r=N.value;if(r){var o=r.value;if(o){var s=B.value,d=g.value,v=_.value,p=z.value,c=r.selectionStart||0;let t=s[c];parseInputKayMaps[t]||(t=s[c-1]);var f,m,c=s.match(new RegExp(t+"+"));c&&(a||l?(l=c[0]||"",f=(c=c.index||0)+l.length,m=o.slice(c,f),parseInputKayMaps[t]&&(m=((0,_util.isAllSameChar)(m,p)?(0,_util.getChunkDefaultNum)(t):_xeUtils.default.toNumber(m))+(a?1:-1),a=o.slice(0,c)+ce(""+m,l,!0)+o.slice(f),e.preventDefault(),-1===a.indexOf(p)?(m=(0,_util.parseDateValue)(a,n,{valueFormat:d}),_xeUtils.default.isValidDate(m)&&(l=_xeUtils.default.toDateString(m,d,{firstDay:v}),r.value=l,G(l,!1))):(r.value=a,G(a,!1))),r.setSelectionRange(c,f)):(i||u)&&-1<inputMaskedKeys.indexOf(t)&&(o=_xeUtils.default.map(s.match(new RegExp(`(${inputMaskedKeys.join("|")})+`,"g"))||[],e=>e[0]),p=_xeUtils.default.findIndexOf(o,e=>t===e[0]),m=(n=i?o[p-1]||o[0]:o[p+1]||o[o.length-1])?n[0]:"",d=s.match(new RegExp(m+"+")))&&(e.preventDefault(),l=(v=d.index||0)+d[0].length,r.setSelectionRange(v,l)),M.isTriggerMasked=!0)}}}},me=n=>{var r=w.multiple;if(!r){var o=N.value;if(o){r=(0,_dom.hasControlKey)(n);if(!r){n.preventDefault();var r=n.key,s=_ui.globalEvents.hasKey(n,_ui.GLOBAL_EVENT_KEYS.DELETE),d=_ui.globalEvents.hasKey(n,_ui.GLOBAL_EVENT_KEYS.BACKSPACE),r="0"<=r&&r<="9",n=r?n.key:"";if(s||d||r){var v=M.isTriggerMasked,p=$.value.align,c=B.value,f=z.value;let i=o.value||c;var m=o.selectionStart||0,g=o.selectionEnd||0;let u=c[m];parseInputKayMaps[u]||(u=c[m-1]);var _=c.match(new RegExp(u+"+"));if(_){var h=_xeUtils.default.map(c.match(new RegExp(`(${inputMaskedKeys.join("|")})+`,"g"))||[],e=>e[0]),x=_[0]||"",y=_.index||0,b=y+x.length,k=h.indexOf(u),m=!m&&g===i.length&&1<h.length,g=i&&i.length!==c.length;(m||g)&&(i=c);let e=s?"":i.slice(y,b);g=e.match(/\d/g)||[],v=v&&!d?[]:g.slice(0);r?(v.push(n),e=ce(v.join(""),x,!1)):d&&(v.pop(),e=_xeUtils.default["right"===p?"padStart":"padEnd"](v.join(""),x.length,f));let t=i.slice(0,y)+e+i.slice(b);if(t=t.replace(new RegExp(`(${inputMaskedKeys.join("|")})`,"g"),f),o.value=t,G(t,!1),m){if(d||s){r=h[0],n=c.match(new RegExp(r+"+"));if(n)return x=n[0],o.setSelectionRange(0,x.length),void(M.isTriggerMasked=!0)}}else if(d&&!g.length){for(let e=k-1;0<=e;e--){var E=h[e],E=c.match(new RegExp(E+"+"));if(E){var D=E[0],E=E.index||0,C=E+D.length;let e=t.slice(E,C);var S=e.match(/\d/g)||[];if(S.length)return S.pop(),e=_xeUtils.default["right"===p?"padStart":"padEnd"](S.join(""),D.length,f),t=t.slice(0,E)+e+t.slice(C),o.value=t,G(t,!1),void o.setSelectionRange(E,C)}}y=h[0],b=c.match(new RegExp(y+"+"));return b?(m=b[0],t=c.replace(new RegExp(`(${inputMaskedKeys.join("|")})`,"g"),f),o.value=t,G(t,!1),o.setSelectionRange(0,m.length),void(M.isTriggerMasked=!0)):void 0}let a=_.index||0,l=a+_[0].length;v.length>=e.length?(s=h.slice(k+1),-1<k&&((r=s.length?c.match(new RegExp(`(${s.join("|")})+`)):null)&&(a=r.index||0,l=a+r[0].length),o.setSelectionRange(a,l)),M.isTriggerMasked=!0):(o.setSelectionRange(a,l),M.isTriggerMasked=!1)}}}}}},ge=(t,i)=>{M.fsTimeout=void 0;var{type:u,multiple:n,modelValue:r}=w;if(!n&&maskedTypes.includes(u)){n=N.value;if(n){u=M.laseFocusMasked;if(!(u&&Date.now()-u<100)){u=B.value;let l=z.value;var a=n.selectionStart||0,o=n.selectionEnd||0,s=n.value,d=_xeUtils.default.map(u.match(new RegExp(`(${inputMaskedKeys.join("|")})+`,"g"))||[],e=>e[0]);if(!s){let e=u.replace(new RegExp(`(${inputMaskedKeys.join("|")})`,"g"),l);if(i&&r){let t=(""+_xeUtils.default.toNumber(r)).match(/\d/g)||[],a=0;e=u.replace(new RegExp(`(${inputMaskedKeys.join("|")})`,"g"),e=>t[a++]||e)}var i=d[0],r=u.match(new RegExp(i+"+"));if(r)return t.preventDefault(),i=r[0],n.value=e,G(e,!1),n.setSelectionRange(0,i.length),void(M.laseFocusMasked=Date.now())}r=!a&&o===s.length&&1<d.length,i=s&&s.length!==u.length;if(r||i){let a="";if(i&&s){let e=s.match(/\d/g)||[],t=0;a=u.replace(new RegExp(`(${inputMaskedKeys.join("|")})`,"g"),()=>e[t++]||l)}else u.replace(new RegExp(`(${inputMaskedKeys.join("|")})`,"g"),l);var o=d[0],r=u.match(new RegExp(o+"+"));if(r)return t.preventDefault(),i=r[0],n.value=a,G(a,!1),n.setSelectionRange(0,i.length),void(M.laseFocusMasked=Date.now())}let e=u[a];(e=parseInputKayMaps[e]?e:u[a-1])&&(t.stopPropagation(),s=u.match(new RegExp(e+"+")))&&(d=s[0]||"",r=(o=s.index||0)+d.length,n.setSelectionRange(o,r),M.isTriggerMasked=!0,M.laseFocusMasked=Date.now())}}}},_e=e=>{var t,a=V.inputValue;ae.value||c(a,e),V.visiblePanel||(t=M.inputLabel,V.isActivated=!1,m(t)),h("blur",{value:a},e),r&&o&&r.triggerItemEvent(e,o.itemConfig.field,a)},he=e=>{var{multiple:t,editable:a,maskedConfig:l}=w,i=M.fsTimeout,u=$.value,n=L.value.trigger;V.isActivated=!0,i&&clearTimeout(i),n&&"default"!==n?"icon"===n&&f():Ne(e),a&&!t&&((0,_utils.isEnableConf)(l)||u.enabled)&&(M.fsTimeout=setTimeout(()=>{ge(e,!0)},20)),v(e)},xe=e=>{var{multiple:t,editable:a,maskedConfig:l}=w,i=M.fsTimeout,u=$.value;i&&clearTimeout(i),a&&!t&&((0,_utils.isEnableConf)(l)||u.enabled)&&(M.fsTimeout=setTimeout(()=>{ge(e)},10)),v(e)},ye=e=>{var{type:t,editable:a,maskedConfig:l}=w,i=V.visiblePanel,u=$.value,n=_ui.globalEvents.hasKey(e,_ui.GLOBAL_EVENT_KEYS.ARROW_UP),r=_ui.globalEvents.hasKey(e,_ui.GLOBAL_EVENT_KEYS.ARROW_DOWN),o=_ui.globalEvents.hasKey(e,_ui.GLOBAL_EVENT_KEYS.ARROW_LEFT),s=_ui.globalEvents.hasKey(e,_ui.GLOBAL_EVENT_KEYS.ARROW_RIGHT),d=_ui.globalEvents.hasKey(e,_ui.GLOBAL_EVENT_KEYS.ENTER);a&&(d?(a=M.inputLabel,i&&f(),m(a)):maskedTypes.includes(t)&&((0,_utils.isEnableConf)(l)||u.enabled)&&(u.isArrow&&(n||r||o||s)?fe(e,n,r,o,s):u.isMasked&&me(e))),v(e)},be=e=>{v(e)},ke=e=>{var t=R.value;t&&t.confirmByEvent(e),f()},Ee=e=>{var{multiple:t,autoClose:a}=w,{value:e,$event:l}=e,i=F.value;c(e,l),t||i||a&&f()},De=e=>{h("confirm",e,e.$event)},Ce=e=>{G(e.label,!0)},Se=e=>{var{visiblePanel:t,isActivated:a}=V,l=U.value,i=H.value;!A.value&&a&&((l=(0,_dom.getEventTargetNode)(e,l).flag||(0,_dom.getEventTargetNode)(e,i).flag)!==a&&(V.isActivated=l),l||t&&(f(),e=M.inputLabel,m(e)))},we=e=>{var t,{isActivated:a,visiblePanel:l}=V;A.value||(t=_ui.globalEvents.hasKey(e,_ui.GLOBAL_EVENT_KEYS.TAB),e=_ui.globalEvents.hasKey(e,_ui.GLOBAL_EVENT_KEYS.ESCAPE),t&&a&&(V.isActivated=!1),l&&(e||t)&&f())},Te=()=>{var{isActivated:e,visiblePanel:t}=V;t&&f(),e&&(V.isActivated=!1),(t||e)&&(m(M.inputLabel),t=N.value)&&t.blur()},Pe=()=>{var e=V.visiblePanel;e&&a()},Ve=()=>{var e=V.visiblePanel;e&&a()},Me=()=>{var e=L.value.zIndex||w.zIndex;e?V.panelIndex=_xeUtils.default.toNumber(e):V.panelIndex<(0,_utils.getLastZIndex)()&&(V.panelIndex=(0,_utils.nextZIndex)())},a=()=>{let a=w.placement,l=V.panelIndex,i=N.value,u=W.value;if(!u)return(0,_vue.nextTick)();let n=Z.value,r=L.value;var e=()=>{var e=(0,_dom.updatePanelPlacement)(i,u,{placement:r.placement||a,defaultPlacement:r.defaultPlacement,teleportTo:n}),t=Object.assign(e.style,{zIndex:l});V.panelStyle=t,V.panelPlacement=e.placement};return e(),(0,_vue.nextTick)().then(e)},Ue=()=>{var e=V.visiblePanel;return(A.value||e?(0,_vue.nextTick):(V.initialized||(V.initialized=!0),M.hpTimeout&&(clearTimeout(M.hpTimeout),M.hpTimeout=void 0),V.isActivated=!0,V.isAniVisible=!0,setTimeout(()=>{V.visiblePanel=!0,a()},10),Me(),a))()},Ne=e=>{K.value||(e.preventDefault(),Ue())},Re=e=>{var t=V.visiblePanel,a=L.value.trigger;a&&"default"!==a&&"icon"!==a||(t?f():Ne(e))},Ie=({option:e,$event:t})=>{var a=w.type,l=V.inputValue,i=O.value,u=i.autoClose,{code:n,clickMethod:r}=e,o=l,s={$datePicker:I,option:e,value:o,code:n};if(!r&&n){l=_ui.commands.get(n),e=l?l.datePickerCommandMethod:null;if(e)e(s);else{var d=p.value,v=_.value;switch(n){case"now":case"prev":case"next":case"minus":case"plus":o=(0,_util.getDateByCode)(n,o,a,{valueFormat:d,firstDay:v}).value;s.value=o,c(o,t);break;default:errLog("vxe.error.notCommands",[n])}}}else{l=r||i.clickMethod;l&&l(s)}u&&f(),h("shortcut-click",s,t)},h=(e,t,a)=>{l(e,(0,_ui.createEvent)(a,{$datePicker:I},t))},s=e=>{l("update:modelValue",e)};t={dispatchEvent:h,setModelValue(e){V.inputValue=e,s(e)},setModelValueByEvent(e,t){c(t||"",e)},focus(){var e=N.value;return V.isActivated=!0,e.focus(),(0,_vue.nextTick)()},blur(){return N.value.blur(),(V.isActivated=!1,_vue.nextTick)()},select(){return N.value.select(),(V.isActivated=!1,_vue.nextTick)()},showPanel:Ue,hidePanel:f,updatePlacement:a};Object.assign(I,t);let Y=(e,t)=>{var a=O.value,{position:l,align:i,mode:u}=a,n=ie.value;return(0,_utils.isEnableConf)(a)&&n.length&&(l||"left")===e?(0,_vue.h)("div",{class:`vxe-date-picker--layout-${e}-wrapper`},[(0,_vue.h)(_buttonGroup.default,{options:n,mode:u,align:i,vertical:t,onClick:Ie})]):(0,_ui.renderEmptyElement)(I)},Ke=()=>(0,_vue.h)("div",{class:"vxe-date-picker--control-icon",onClick:Re},[(0,_vue.h)("i",{class:["vxe-date-picker--date-picker-icon",(0,_ui.getIcon)().DATE_PICKER_DATE]})]);return(0,_vue.watch)(q,e=>{G(e,!0)}),(0,_vue.watch)(()=>w.modelValue,()=>{ue()}),ue(),(0,_vue.nextTick)(()=>{_ui.globalEvents.on(I,"mousedown",Se),_ui.globalEvents.on(I,"keydown",we),_ui.globalEvents.on(I,"blur",Te),_ui.globalEvents.on(I,"resize",Pe),_ui.globalEvents.on(I,"scroll",Ve)}),(0,_vue.onMounted)(()=>{var{type:e,multiple:t,maskedConfig:a}=w;(0,_utils.isEnableConf)(a)&&(t&&errLog("vxe.error.notSupportProp",["multiple","control-config.enabled=true","control-config.enabled=false"]),maskedTypes.includes(e)||warnLog("vxe.error.notSupportProp",["control-config.enabled=true","type="+e,"type="+maskedTypes.join("|")]))}),(0,_vue.onUnmounted)(()=>{_ui.globalEvents.off(I,"mousedown"),_ui.globalEvents.off(I,"keydown"),_ui.globalEvents.off(I,"blur"),_ui.globalEvents.off(I,"resize"),_ui.globalEvents.off(I,"scroll"),_xeUtils.default.assign(V,createReactData()),_xeUtils.default.assign(M,createInternalData())}),(0,_vue.provide)("$xeDatePicker",I),I.renderVN=()=>{var e,t,a,l,i,u,n,r,o,s,d,v,p,{className:c,inputClassName:f,type:m,name:g,autoComplete:_}=w,{inputValue:h,visiblePanel:x,isActivated:y,labelFlag:b}=V,k=M.inputLabel,E=P.value,D=A.value,C=K.value,S=q.value;return C?(0,_vue.h)("div",{ref:U,class:["vxe-date-picker--readonly","type--"+m,c]},S):(C=J.value,S=ee.value,i=te.value,a=j.value,t=w.prefixIcon,l=(l=T.prefix)||t?(0,_vue.h)("div",{class:"vxe-date-picker--prefix",onClick:oe},[(0,_vue.h)("div",{class:"vxe-date-picker--prefix-icon"},l?(0,_vn.getSlotVNs)(l({})):[(0,_vue.h)("i",{class:t})])]):null,t=w.suffixIcon,p=V.inputValue,v=T.suffix,u=A.value,e=j.value,u=(0,_vue.h)("div",{class:["vxe-date-picker--suffix",{"is--clear":e&&!u&&!(""===p||_xeUtils.default.eqNull(p))}]},[e?(0,_vue.h)("div",{class:"vxe-date-picker--clear-icon",onClick:ve},[(0,_vue.h)("i",{class:(0,_ui.getIcon)().INPUT_CLEAR})]):(0,_ui.renderEmptyElement)(I),Ke(),v||t?(0,_vue.h)("div",{class:"vxe-date-picker--suffix-icon",onClick:pe},v?(0,_vn.getSlotVNs)(v({})):[(0,_vue.h)("i",{class:t})]):(0,_ui.renderEmptyElement)(I)]),(0,_vue.h)("div",{ref:U,class:["vxe-date-picker","type--"+m,c,{["size--"+E]:E,"is--prefix":!!l,"is--suffix":!!u,"is--visible":x,"is--disabled":D,"is--active":y,"show--clear":a&&!D&&!(""===h||_xeUtils.default.eqNull(h))}],style:C,spellcheck:!1},[l||(0,_ui.renderEmptyElement)(I),(0,_vue.h)("div",{class:"vxe-date-picker--wrapper"},[(0,_vue.h)("input",{ref:N,class:"vxe-date-picker--inner"+(f?" "+f:""),value:b?k:"",name:g,type:"text",placeholder:i,readonly:S,disabled:D,autocomplete:_,onKeydown:ye,onKeyup:be,onClick:xe,onInput:ne,onChange:re,onFocus:he,onBlur:_e})]),u||(0,_ui.renderEmptyElement)(I),!1===(p=L.value).enabled?(0,_ui.renderEmptyElement)(I):({type:e,multiple:v,showClearButton:t,showConfirmButton:m}=w,{initialized:c,isAniVisible:E,visiblePanel:x,panelPlacement:y,panelStyle:a,inputValue:h}=V,C=P.value,l=Z.value,f=O.value,b=j.value,k=F.value,g=ie.value,i=le.value,S=Q.value,D=X.value,_=p.appendTo,f=f.position,u=T.header,n=T.footer,r=T.top,o=T.bottom,s=T.left,d=T.right,p=p.className,g=0<g.length,k=null===m?k||v:m,v=null===t?b&&k&&"time"!==e:t,(0,_vue.h)(_vue.Teleport,{to:(0,_dom.getPopupContainer)(_),disabled:!l||!c},[(0,_vue.h)("div",{ref:W,class:["vxe-table--ignore-clear vxe-date-picker--panel","type--"+e,p?_xeUtils.default.isFunction(p)?p({$datePicker:I}):p:"",{["size--"+C]:C,"is--transfer":l,"ani--leave":E,"ani--enter":x,"show--top":!!(r||u||g&&("top"===f||"header"===f)),"show--bottom":!!(o||n||g&&("bottom"===f||"footer"===f)),"show--left":!!(s||g&&"left"===f),"show--right":!!(d||g&&"right"===f)}],placement:y,style:a},c&&(x||E)?[(0,_vue.h)("div",{ref:H,class:["vxe-date-picker--layout-all-wrapper","type--"+e,{["size--"+C]:C}]},[r?(0,_vue.h)("div",{class:"vxe-date-picker--layout-top-wrapper"},r({})):Y("top"),(0,_vue.h)("div",{class:"vxe-date-picker--layout-body-layout-wrapper"},[s?(0,_vue.h)("div",{class:"vxe-date-picker--layout-left-wrapper"},s({})):Y("left",!0),(0,_vue.h)("div",{class:"vxe-date-picker--layout-body-content-wrapper"},[u?(0,_vue.h)("div",{class:"vxe-date-picker--layout-header-wrapper"},u({})):Y("header"),(0,_vue.h)("div",{class:"vxe-date-picker--layout-body-wrapper"},[(0,_vue.h)(_datePanel.default,{ref:R,modelValue:V.inputValue,type:w.type,className:w.className,multiple:w.multiple,limitCount:w.limitCount,startDate:S,endDate:D,defaultDate:w.defaultDate,defaultTime:w.defaultTime,minDate:w.minDate,maxDate:w.maxDate,startDay:w.startDay,labelFormat:w.labelFormat,valueFormat:w.valueFormat,timeFormat:w.timeFormat,timeConfig:i,festivalMethod:w.festivalMethod,disabledMethod:w.disabledMethod,selectDay:w.selectDay,onChange:Ee,onConfirm:De,onRevert:Ce})]),(0,_vue.h)("div",{class:"vxe-date-picker--layout-footer-wrapper"},[(0,_vue.h)("div",{class:"vxe-date-picker--layout-footer-custom"},n?n({}):[Y("footer")]),v||k?(0,_vue.h)("div",{class:"vxe-date-picker--layout-footer-btns"},[v?(0,_vue.h)(_button.default,{size:"mini",disabled:""===h||_xeUtils.default.eqNull(h),content:(0,_ui.getI18n)("vxe.button.clear"),onClick:ve}):(0,_ui.renderEmptyElement)(I),k?(0,_vue.h)(_button.default,{size:"mini",status:"primary",content:(0,_ui.getI18n)("vxe.button.confirm"),onClick:ke}):(0,_ui.renderEmptyElement)(I)]):(0,_ui.renderEmptyElement)(I)])]),d?(0,_vue.h)("div",{class:"vxe-date-picker--layout-right-wrapper"},d({})):Y("right",!0)]),o?(0,_vue.h)("div",{class:"vxe-date-picker--layout-bottom-wrapper"},o({})):Y("bottom")])]:[])]))]))},I},render(){return this.renderVN()}});
@@ -51,6 +51,7 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
51
51
  type: Boolean,
52
52
  default: true
53
53
  },
54
+ width: [Number, String],
54
55
  name: String,
55
56
  type: {
56
57
  type: String,
@@ -262,6 +263,16 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
262
263
  }
263
264
  return [];
264
265
  });
266
+ const computeCurrStyle = (0, _vue.computed)(() => {
267
+ const {
268
+ width
269
+ } = props;
270
+ const stys = {};
271
+ if (width) {
272
+ stys.width = (0, _dom.toCssUnit)(width);
273
+ }
274
+ return stys;
275
+ });
265
276
  const computeMVal = (0, _vue.computed)(() => {
266
277
  const {
267
278
  startValue,
@@ -1564,6 +1575,7 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
1564
1575
  class: ['vxe-date-range-picker--readonly', `type--${type}`, className]
1565
1576
  }, inputLabel);
1566
1577
  }
1578
+ const currStyle = computeCurrStyle.value;
1567
1579
  const inpPlaceholder = computeInpPlaceholder.value;
1568
1580
  const isClearable = computeIsClearable.value;
1569
1581
  const prefix = renderPrefixIcon();
@@ -1579,6 +1591,7 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
1579
1591
  'is--active': isActivated,
1580
1592
  'show--clear': isClearable && !isDisabled && (selectStValue || selectEdValue)
1581
1593
  }],
1594
+ style: currStyle,
1582
1595
  spellcheck: false
1583
1596
  }, [prefix || (0, _ui.renderEmptyElement)($xeDateRangePicker), (0, _vue.h)('div', {
1584
1597
  class: 'vxe-date-range-picker--wrapper'
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_comp=require("../../ui/src/comp"),_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")),_button=_interopRequireDefault(require("../../button")),_buttonGroup=_interopRequireDefault(require("../../button-group"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let errLog=(0,_log.createComponentLog)("date-range-picker").errLog;function createReactData(){return{initialized:!1,panelIndex:0,visiblePanel:!1,isAniVisible:!1,panelStyle:{},panelPlacement:"",isActivated:!1,selectStValue:"",selectEdValue:"",paneStartVal:[],paneEndVal:[]}}function createInternalData(){return{}}var _default=exports.default=(0,_comp.defineVxeComponent)({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},linkedPanels:{type:Boolean,default:()=>(0,_ui.getConfig)().dateRangePicker.linkedPanels},readonly:{type:Boolean,default:null},disabled:{type:Boolean,default:null},placeholder:String,autoComplete:{type:String,default:"off"},form:String,className:String,inputClassName:{type:String,default:()=>(0,_ui.getConfig)().dateRangePicker.inputClassName},zIndex:Number,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,Array],defaultTime:[String,Number,Date,Array],startDay:{type:[String,Number],default:()=>(0,_ui.getConfig)().dateRangePicker.startDay},labelFormat:String,valueFormat:String,timeFormat:String,valueType: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},timeConfig:Object,popupConfig:Object,shortcutConfig:Object},emits:["update:modelValue","update:startValue","update:endValue","input","change","keydown","keyup","click","focus","blur","clear","confirm","prefix-click","suffix-click","date-prev","date-today","date-next","shortcut-click"],setup(U,e){let{slots:B,emit:o}=e,i=(0,_vue.inject)("$xeModal",null),n=(0,_vue.inject)("$xeDrawer",null),p=(0,_vue.inject)("$xeTable",null),b=(0,_vue.inject)("$xeCard",null),d=(0,_vue.inject)("$xeForm",null),v=(0,_vue.inject)("xeFormItemInfo",null);var t=_xeUtils.default.uniqueId();let q=(0,_ui.useSize)(U).computeSize,j=(0,_vue.reactive)(createReactData()),s=createInternalData(),z=(0,_vue.ref)(),L=(0,_vue.ref)(),Y=(0,_vue.ref)(),O=(0,_vue.ref)(),$=(0,_vue.ref)(),K=(0,_vue.ref)(),h={refElem:z,refInput:L},G={xID:t,props:U,context:e,reactData:j,internalData:s,getRefMaps:()=>h};let Z=(0,_vue.computed)(()=>{var e=U.transfer,t=W.value;if(_xeUtils.default.isBoolean(t.transfer))return t.transfer;if(null===e){t=(0,_ui.getConfig)().dateRangePicker.transfer;if(_xeUtils.default.isBoolean(t))return t;if(p||i||n||b||d)return!0}return e}),le=(0,_vue.computed)(()=>{var e=U.readonly;return null===e?!!d&&d.props.readonly:e}),H=(0,_vue.computed)(()=>{var e=U.disabled;return null===e?!!d&&d.props.disabled:e}),ue=(0,_vue.computed)(()=>{var e=U.defaultDate;return e?_xeUtils.default.isArray(e)?e:-1<(""+e).indexOf(",")?(""+e).split(","):[e,e]:[]}),re=(0,_vue.computed)(()=>{var e=U.defaultTime;return e?_xeUtils.default.isArray(e)?e:-1<(""+e).indexOf(",")?(""+e).split(","):[e,e]:[]});t=(0,_vue.computed)(()=>{var{startValue:e,endValue:t}=U;return""+(e||"")+(t||"")});let J=(0,_vue.computed)(()=>{var e=U.type;return"time"===e}),ie=(0,_vue.computed)(()=>{var e=U.type;return J.value||"datetime"===e}),x=(0,_vue.computed)(()=>-1<["date","week","month","quarter","year"].indexOf(U.type)),Q=(0,_vue.computed)(()=>U.clearable),ne=(0,_vue.computed)(()=>{var e=U.placeholder;return(e=e||(0,_ui.getConfig)().dateRangePicker.placeholder)?(0,_utils.getFuncText)(e):(0,_ui.getI18n)("vxe.dateRangePicker.pleaseRange")}),V=(0,_vue.computed)(()=>{var e=U.immediate;return e}),se=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().dateRangePicker.timeConfig,U.timeConfig)),W=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().dateRangePicker.popupConfig,U.popupConfig)),X=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().dateRangePicker.shortcutConfig,U.shortcutConfig)),oe=(0,_vue.computed)(()=>{var e=X.value.options;return e?e.map((e,t)=>Object.assign({name:""+(e.name||e.code||t)},e)):[]}),k=(0,_vue.computed)(()=>{var e=U.labelFormat;return e||(0,_ui.getI18n)("vxe.input.date.labelFormat."+U.type)}),g=(0,_vue.computed)(()=>{var{type:e,valueFormat:t}=U;return(0,_util.handleValueFormat)(e,t)}),D=(0,_vue.computed)(()=>{var e=U.startDay;return _xeUtils.default.toNumber(e)}),de=(0,_vue.computed)(()=>{var{selectStValue:e,selectEdValue:t}=j,e=e||t?[e||"",t||""]:[];return P(e)}),ve=(0,_vue.computed)(()=>de.value.label),P=e=>{var{type:t,separator:a}=U,l=k.value,u=g.value,r=D.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}},m=(e,t)=>{var{modelValue:a,valueType:l,valueFormat:u}=U;let r="date"===u||_xeUtils.default.isArray(a);if(l)switch(l){case"array":r=!0;break;case"string":r=!1}return e||t?(u=[e||null,t||null],r?u:u.join(",")):r?[]:""},S=()=>{var e,{type:t,modelValue:a}=U,l=g.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}},C=()=>{var{type:e,startValue:t,endValue:a}=U,l=g.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,valueFormat:u}=U;let r={sValue:"",eValue:""},i=(r=(e?t?S:C:a||l?C:S)()).sValue,n=r.eValue;"timestamp"===u&&(_xeUtils.default.isString(i)&&/^\d+$/.test(i)&&(i=Number(i)),_xeUtils.default.isString(n))&&/^\d+$/.test(n)&&(n=Number(n)),j.selectStValue=i,j.selectEdValue=n,j.paneEndVal=[i,n],j.paneStartVal=[i,n]},l=e=>{var{selectStValue:t,selectEdValue:a}=j,l=m(t,a);y(e.type,{value:l,startValue:t,endValue:a},e)},_=(e,t,a)=>{var{type:l,modelValue:u,valueFormat:r}=U,i=g.value;let n=e,s=t;(0,_util.hasTimestampValueType)(r)?(n&&(e=(0,_util.parseDateValue)(n,l,{valueFormat:i}),n=e?e.getTime():null),s&&(t=(0,_util.parseDateValue)(s,l,{valueFormat:i}),s=t?t.getTime():null)):(0,_util.hasDateValueType)(r)&&(n=n&&(0,_util.parseDateValue)(n,l,{valueFormat:i}),s=s&&(0,_util.parseDateValue)(s,l,{valueFormat:i})),j.selectStValue=n,j.selectEdValue=s;e=m(n,s),t=n&&s||!n&&!s;Ee(e),o("update:startValue",n||""),o("update:endValue",s||""),_xeUtils.default.toValueString(u)!==e&&(y("change",{value:e,startValue:n,endValue:s,isFinish:t},a),d)&&v&&d.triggerItemEvent(a,v.itemConfig.field,e)},ce=e=>{V.value||l(e)},pe=e=>{var t=W.value.trigger;j.isActivated=!0,t&&"default"!==t?"icon"===t&&f():De(e),l(e)},ge=e=>{var t,a,l;H.value||({selectStValue:t,selectEdValue:a}=j,l=m(t,a),y("prefix-click",{value:l,startValue:t,endValue:a},e))},f=()=>new Promise(e=>{j.visiblePanel=!1,s.hpTimeout=setTimeout(()=>{j.isAniVisible=!1,e()},350)}),me=(e,t)=>{x.value&&f();_("","",e),y("clear",{value:t,startValue:"",endValue:""},e)},r=()=>{var e=$.value,t=K.value;e&&t&&(e=e.getModelValue(),t=t.getModelValue(),e&&t||_("","",{type:"check"}))},_e=({date:e})=>{var t=j.selectStValue,a=j.selectEdValue;if(t&&a){e=e.getTime(),t=_xeUtils.default.toStringDate(t).getTime(),a=_xeUtils.default.toStringDate(a).getTime();if(t<=e&&e<=a)return"is--range-selected"}return""},E=()=>{var e=U.autoClose,{selectStValue:t,selectEdValue:a}=j,l=s.selectStatus,u=x.value;e?l&&u&&t&&a&&f():t&&a&&(s.selectStatus=!1)},fe=e=>{var t,a,l;H.value||({selectStValue:t,selectEdValue:a}=j,l=m(t,a),y("suffix-click",{value:l,startValue:t,endValue:a},e))},ye=e=>{var{selectStValue:t,selectEdValue:a}=j;V.value||_(t,a,e),j.visiblePanel||(j.isActivated=!1,r()),y("blur",{value:"",startValue:t,endValue:a},e),d&&v&&d.triggerItemEvent(e,v.itemConfig.field,"")},be=e=>{l(e)},he=e=>{l(e)},xe=e=>{var t,a,l=J.value,u=$.value,r=K.value;u&&r&&(t=u.getModelValue(),a=r.getModelValue(),!l&&(t&&!a||!t&&a)?_("","",e):(u.confirmByEvent(e),r.confirmByEvent(e)),l=m(t,a),y("confirm",{value:l,startValue:t,endValue:a},e)),f()},Ve=e=>{var t=j.paneStartVal,a=s.selectStatus,{value:e,currValue:l,$event:u}=e,r=e?_xeUtils.default.isString(e)?e.split(","):[e]:[];let i="",n="";a?n=e||l!==t[0]?(i=r[0],r[1]||j.selectEdValue):i=l:i=l||_xeUtils.default.last(r),j.paneEndVal=[i,n],j.paneStartVal=[i,n],_(i,n,u),E(),a?i&&n&&(s.selectStatus=!1):s.selectStatus=!0,(0,_vue.nextTick)(()=>{c()})},ke=e=>{var t=j.paneEndVal,a=s.selectStatus,{value:e,currValue:l,$event:u}=e,r=e?_xeUtils.default.isString(e)?e.split(","):[e]:[];let i="",n="";a?e||l!==t[1]?(n=r[0],r[1]?(i=r[0],n=r[1]):i=j.selectStValue):(i=l,n=l):n=l||_xeUtils.default.last(r),j.paneEndVal=[i,n],j.paneStartVal=[i,n],_(i,n,u),E(),a?i&&n&&(s.selectStatus=!1):s.selectStatus=!0,(0,_vue.nextTick)(()=>{w()})},c=()=>{var e=$.value,a=K.value;if(e&&a){var l=e.getPanelDate();let t=a.getPanelDate();if(l&&t){var u=e.getViewType(),r=l.getFullYear(),i=l.getMonth(),n=t.getFullYear(),s=t.getMonth();switch(u){case"day":case"date":case"week":n<=r&&s<=i&&a.setPanelDate((0,_util.getNextMonth)(l));break;case"month":case"quarter":n<=r&&a.setPanelDate((0,_util.getNextYear)(l));break;case"year":var o=e.getComputeMaps().computeYearList,o=o.value;o.some(e=>_xeUtils.default.isDateSame(e.date,t,"yyyy"))&&a.setPanelDate((0,_util.getNextYear)(l,o.length))}}}},ee=()=>{var e=U.linkedPanels,t=$.value,a=K.value;if(t&&a){var l=t.getPanelDate(),u=a.getPanelDate();if(l&&u){u=t.getViewType();if(e)switch(u){case"day":case"date":case"week":a.setPanelDate((0,_util.getNextMonth)(l));break;case"month":case"quarter":a.setPanelDate((0,_util.getNextYear)(l));break;case"year":var r=t.getComputeMaps().computeYearList,r=r.value;a.setPanelDate((0,_util.getNextYear)(l,r.length))}else c()}}},w=()=>{var e=$.value,a=K.value;if(e&&a){let t=e.getPanelDate();var l=a.getPanelDate();if(t&&l){var u=a.getViewType(),r=t.getFullYear(),i=t.getMonth(),n=l.getFullYear(),s=l.getMonth();switch(u){case"day":case"date":case"week":n<=r&&s<=i&&e.setPanelDate((0,_util.getPrevMonth)(l));break;case"month":case"quarter":n<=r&&e.setPanelDate((0,_util.getPrevYear)(l));break;case"year":var o=a.getComputeMaps().computeYearList,o=o.value;o.some(e=>_xeUtils.default.isDateSame(e.date,t,"yyyy"))&&e.setPanelDate((0,_util.getPrevYear)(l,o.length))}}}},te=()=>{var e=U.linkedPanels,t=$.value,a=K.value;if(t&&a){var l=t.getPanelDate(),u=a.getPanelDate();if(l&&u){l=a.getViewType();if(e)switch(l){case"day":case"date":case"week":t.setPanelDate((0,_util.getPrevMonth)(u));break;case"month":case"quarter":t.setPanelDate((0,_util.getPrevYear)(u));break;case"year":var r=a.getComputeMaps().computeYearList,r=r.value;t.setPanelDate((0,_util.getPrevYear)(u,r.length))}else w()}}},T=e=>{var{visiblePanel:t,isActivated:a}=j,l=z.value,u=O.value;!H.value&&a&&(j.isActivated=(0,_dom.getEventTargetNode)(e,l).flag||(0,_dom.getEventTargetNode)(e,u).flag,j.isActivated||t&&(r(),f()))},F=e=>{var t,a=j.visiblePanel;H.value||(t=_ui.globalEvents.hasKey(e,_ui.GLOBAL_EVENT_KEYS.TAB),e=_ui.globalEvents.hasKey(e,_ui.GLOBAL_EVENT_KEYS.ESCAPE),t&&(j.isActivated=!1),a&&(e||t)&&(r(),f()))},N=()=>{var{visiblePanel:e,isActivated:t}=j;e&&(r(),f()),t&&(j.isActivated=!1),(e||t)&&(e=L.value)&&e.blur()},M=()=>{var e=j.visiblePanel;e&&u()},R=()=>{var e=j.visiblePanel;e&&u()},I=()=>{var e=W.value.zIndex||U.zIndex;e?j.panelIndex=_xeUtils.default.toNumber(e):j.panelIndex<(0,_utils.getLastZIndex)()&&(j.panelIndex=(0,_utils.nextZIndex)())},u=()=>{let a=U.placement,l=j.panelIndex,u=L.value,r=Y.value;if(!r)return(0,_vue.nextTick)();let i=Z.value,n=W.value;var e=()=>{var e=(0,_dom.updatePanelPlacement)(u,r,{placement:n.placement||a,defaultPlacement:n.defaultPlacement,teleportTo:i}),t=Object.assign(e.style,{zIndex:l});j.panelStyle=t,j.panelPlacement=e.placement};return e(),(0,_vue.nextTick)().then(e)},A=()=>{var e=j.visiblePanel;return(H.value||e?(0,_vue.nextTick):(j.initialized||(j.initialized=!0),s.hpTimeout&&(clearTimeout(s.hpTimeout),s.hpTimeout=void 0),s.selectStatus=!1,j.isActivated=!0,j.isAniVisible=!0,setTimeout(()=>{j.visiblePanel=!0,c(),u()},10),I(),u))()},De=e=>{le.value||(e.preventDefault(),A())},Pe=e=>{var t=j.visiblePanel,a=W.value.trigger;a&&"default"!==a&&"icon"!==a||(t?f():De(e))},Se=e=>{l(e)},Ce=({option:e,$event:t})=>{var a=U.type,l=X.value,u=l.autoClose,{code:r,clickMethod:i}=e,n=j.selectStValue,s=j.selectEdValue,o=m(n,s),d={$dateRangePicker:G,option:e,value:o,startValue:n,endValue:s,code:r};if(!i&&r){e=_ui.commands.get(r),e=e?e.dateRangePickerCommandMethod:null;if(e)e(d);else{var v=g.value,c=D.value;switch(r){case"last1":case"last3":case"last7":case"last30":case"last60":case"last90":case"last180":var p=(0,_util.getRangeDateByCode)(r,o,a,{valueFormat:v,firstDay:c}),n=p.startValue,s=p.endValue,o=m(n,s);d.value=o,d.startValue=n,d.endValue=s,_(n,s,t);break;default:errLog("vxe.error.notCommands",[r])}}}else{e=i||l.clickMethod;e&&e(d)}u&&f(),y("shortcut-click",d,t)},y=(e,t,a)=>{o(e,(0,_ui.createEvent)(a,{$dateRangePicker:G},t))},Ee=e=>{o("update:modelValue",e)},ae=(e={dispatchEvent:y,setModelValue(e,t){j.selectStValue=e||"",j.selectEdValue=t||"";e=m(e,t);Ee(e)},setModelValueByEvent(e,t,a){_(t||"",a||"",e)},focus(){var e=L.value;return j.isActivated=!0,e.focus(),(0,_vue.nextTick)()},blur(){return L.value.blur(),(j.isActivated=!1,_vue.nextTick)()},select(){return L.value.select(),(j.isActivated=!1,_vue.nextTick)()},showPanel:A,hidePanel:f,updatePlacement:u},Object.assign(G,e),(e,t)=>{var a=X.value,{position:l,align:u,mode:r}=a,i=oe.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)(G)}),we=()=>(0,_vue.h)("div",{class:"vxe-date-range-picker--control-icon",onClick:Pe},[(0,_vue.h)("i",{class:["vxe-date-range-picker--date-picker-icon",(0,_ui.getIcon)().DATE_PICKER_DATE]})]);return(0,_vue.watch)(()=>U.modelValue,()=>{a(!0)}),(0,_vue.watch)(t,()=>{a(!1)}),a(!0),(0,_vue.nextTick)(()=>{_ui.globalEvents.on(G,"mousedown",T),_ui.globalEvents.on(G,"keydown",F),_ui.globalEvents.on(G,"blur",N),_ui.globalEvents.on(G,"resize",M),_ui.globalEvents.on(G,"scroll",R)}),(0,_vue.onDeactivated)(()=>{r()}),(0,_vue.onBeforeUnmount)(()=>{r()}),(0,_vue.onUnmounted)(()=>{_ui.globalEvents.off(G,"mousedown"),_ui.globalEvents.off(G,"keydown"),_ui.globalEvents.off(G,"blur"),_ui.globalEvents.off(G,"resize"),_ui.globalEvents.off(G,"scroll"),_xeUtils.default.assign(j,createReactData()),_xeUtils.default.assign(s,createInternalData())}),(0,_vue.provide)("$xeDateRangePicker",G),G.renderVN=()=>{var e,t,a,l,u,r,i,n,s,o,d,v,c,p,g,m,_,f,y,b,h,A,x,V,{className:k,inputClassName:D,type:P,name:S,autoComplete:C}=U,{selectStValue:E,selectEdValue:w,visiblePanel:T,isActivated:F}=j,N=q.value,M=H.value,R=le.value,I=ve.value;return R?(0,_vue.h)("div",{ref:z,class:["vxe-date-range-picker--readonly","type--"+P,k]},I):(R=ne.value,e=Q.value,a=U.prefixIcon,t=(t=B.prefix)||a?(0,_vue.h)("div",{class:"vxe-date-range-picker--prefix",onClick:ge},[(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=U.suffixIcon,{selectStValue:t,selectEdValue:a}=j,l=B.suffix,u=H.value,r=Q.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:me},[(0,_vue.h)("i",{class:(0,_ui.getIcon)().INPUT_CLEAR})]):(0,_ui.renderEmptyElement)(G),we(),l||e?(0,_vue.h)("div",{class:"vxe-date-range-picker--suffix-icon",onClick:fe},l?(0,_vn.getSlotVNs)(l({})):[(0,_vue.h)("i",{class:e})]):(0,_ui.renderEmptyElement)(G)])})(),(0,_vue.h)("div",{ref:z,class:["vxe-date-range-picker","type--"+P,k,{["size--"+N]:N,"is--prefix":!!t,"is--suffix":!!a,"is--visible":T,"is--disabled":M,"is--active":F,"show--clear":e&&!M&&(E||w)}],spellcheck:!1},[t||(0,_ui.renderEmptyElement)(G),(0,_vue.h)("div",{class:"vxe-date-range-picker--wrapper"},[(0,_vue.h)("input",{ref:L,class:"vxe-date-range-picker--inner"+(D?" "+D:""),value:I,name:S,type:"text",placeholder:R,editable:!1,disabled:M,autocomplete:C,onKeydown:be,onKeyup:he,onClick:Se,onChange:ce,onFocus:pe,onBlur:ye})]),a||(0,_ui.renderEmptyElement)(G),!1===(P=W.value).enabled?(0,_ui.renderEmptyElement)(G):({type:k,separator:N,autoClose:T,valueFormat:F,showConfirmButton:e,showClearButton:E}=U,{initialized:w,isAniVisible:t,visiblePanel:D,panelPlacement:I,panelStyle:S,selectStValue:R,selectEdValue:M,paneStartVal:C,paneEndVal:a}=j,l=q.value,u=Z.value,v=X.value,r=Q.value,o=de.value,x=oe.value,i=J.value,V=ie.value,y=ue.value,h=re.value,n=se.value,s=P.appendTo,{startLabel:o,endLabel:d}=o,v=v.position,c=B.header,p=B.footer,g=B.top,m=B.bottom,_=B.left,f=B.right,P=P.className,[y,b]=y,[h,A]=h,x=0<x.length,V=null===e?V||!T:e,T=null===E?r:E,(0,_vue.h)(_vue.Teleport,{to:(0,_dom.getPopupContainer)(s),disabled:!u||!w},[(0,_vue.h)("div",{ref:Y,class:["vxe-table--ignore-clear vxe-date-range-picker--panel","type--"+k,P?_xeUtils.default.isFunction(P)?P({$dateRangePicker:G}):P:"",{["size--"+l]:l,"is--transfer":u,"ani--leave":t,"ani--enter":D,"show--top":!!(g||c||x&&("top"===v||"header"===v)),"show--bottom":!!(m||p||x&&("bottom"===v||"footer"===v)),"show--left":!!(_||x&&"left"===v),"show--right":!!(f||x&&"right"===v)}],placement:I,style:S},w&&(D||t)?[(0,_vue.h)("div",{ref:O,class:["vxe-date-range-picker--layout-all-wrapper","type--"+k,{["size--"+l]:l}]},[g?(0,_vue.h)("div",{class:"vxe-date-range-picker--layout-top-wrapper"},g({})):ae("top"),(0,_vue.h)("div",{class:"vxe-date-range-picker--layout-body-layout-wrapper"},[_?(0,_vue.h)("div",{class:"vxe-date-range-picker--layout-left-wrapper"},_({})):ae("left",!0),(0,_vue.h)("div",{class:"vxe-date-range-picker--layout-body-content-wrapper"},[c?(0,_vue.h)("div",{class:"vxe-date-range-picker--layout-header-wrapper"},c({})):ae("header"),(0,_vue.h)("div",{class:"vxe-date-range-picker--layout-body-wrapper"},[(0,_vue.h)(_datePanel.default,{ref:$,modelValue:C,multiple:!i,valueSort:!0,limitCount:3,defaultMode:"first",type:U.type,className:U.className,minDate:U.minDate,maxDate:U.maxDate,startDay:U.startDay,labelFormat:U.labelFormat,valueFormat:"date"===F||"timestamp"===F?"":F,timeFormat:U.timeFormat,defaultDate:y,defaultTime:h,timeConfig:n,festivalMethod:U.festivalMethod,disabledMethod:U.disabledMethod,selectDay:U.selectDay,cellClassName:_e,onChange:Ve,onDatePrev:ee,onDateToday:ee,onDateNext:ee}),(0,_vue.h)(_datePanel.default,{ref:K,modelValue:a,multiple:!i,valueSort:!0,limitCount:3,defaultMode:"last",type:U.type,className:U.className,minDate:U.minDate,maxDate:U.maxDate,startDay:U.startDay,labelFormat:U.labelFormat,valueFormat:"date"===F||"timestamp"===F?"":F,timeFormat:U.timeFormat,defaultDate:b,defaultTime:A,timeConfig:n,festivalMethod:U.festivalMethod,disabledMethod:U.disabledMethod,selectDay:U.selectDay,cellClassName:_e,onChange:ke,onDatePrev:te,onDateToday:te,onDateNext:te})]),(0,_vue.h)("div",{class:"vxe-date-range-picker--layout-footer-wrapper"},[(0,_vue.h)("div",{class:"vxe-date-range-picker--layout-footer-label"},o||d?[(0,_vue.h)("span",o),(0,_vue.h)("span",""+(N||"")),(0,_vue.h)("span",d)]:""+(N||"")),(0,_vue.h)("div",{class:"vxe-date-range-picker--layout-footer-custom"},p?p({}):[ae("footer")]),(0,_vue.h)("div",{class:"vxe-date-range-picker--layout-footer-btns"},[T?(0,_vue.h)(_button.default,{size:"mini",disabled:!(R||M),content:(0,_ui.getI18n)("vxe.button.clear"),onClick:me}):(0,_ui.renderEmptyElement)(G),V?(0,_vue.h)(_button.default,{size:"mini",status:"primary",content:(0,_ui.getI18n)("vxe.button.confirm"),onClick:xe}):(0,_ui.renderEmptyElement)(G)])])]),f?(0,_vue.h)("div",{class:"vxe-date-range-picker--layout-right-wrapper"},f({})):ae("right",!0)]),m?(0,_vue.h)("div",{class:"vxe-date-range-picker--layout-bottom-wrapper"},m({})):ae("bottom")])]:[])]))]))},G},render(){return this.renderVN()}});
1
+ Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_comp=require("../../ui/src/comp"),_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")),_button=_interopRequireDefault(require("../../button")),_buttonGroup=_interopRequireDefault(require("../../button-group"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let errLog=(0,_log.createComponentLog)("date-range-picker").errLog;function createReactData(){return{initialized:!1,panelIndex:0,visiblePanel:!1,isAniVisible:!1,panelStyle:{},panelPlacement:"",isActivated:!1,selectStValue:"",selectEdValue:"",paneStartVal:[],paneEndVal:[]}}function createInternalData(){return{}}var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeDateRangePicker",props:{modelValue:[String,Number,Date,Array],startValue:[String,Number,Date],endValue:[String,Number,Date],immediate:{type:Boolean,default:!0},width:[Number,String],name:String,type:{type:String,default:"date"},clearable:{type:Boolean,default:()=>(0,_ui.getConfig)().dateRangePicker.clearable},linkedPanels:{type:Boolean,default:()=>(0,_ui.getConfig)().dateRangePicker.linkedPanels},readonly:{type:Boolean,default:null},disabled:{type:Boolean,default:null},placeholder:String,autoComplete:{type:String,default:"off"},form:String,className:String,inputClassName:{type:String,default:()=>(0,_ui.getConfig)().dateRangePicker.inputClassName},zIndex:Number,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,Array],defaultTime:[String,Number,Date,Array],startDay:{type:[String,Number],default:()=>(0,_ui.getConfig)().dateRangePicker.startDay},labelFormat:String,valueFormat:String,timeFormat:String,valueType: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},timeConfig:Object,popupConfig:Object,shortcutConfig:Object},emits:["update:modelValue","update:startValue","update:endValue","input","change","keydown","keyup","click","focus","blur","clear","confirm","prefix-click","suffix-click","date-prev","date-today","date-next","shortcut-click"],setup(U,e){let{slots:B,emit:o}=e,i=(0,_vue.inject)("$xeModal",null),n=(0,_vue.inject)("$xeDrawer",null),p=(0,_vue.inject)("$xeTable",null),h=(0,_vue.inject)("$xeCard",null),d=(0,_vue.inject)("$xeForm",null),v=(0,_vue.inject)("xeFormItemInfo",null);var t=_xeUtils.default.uniqueId();let q=(0,_ui.useSize)(U).computeSize,j=(0,_vue.reactive)(createReactData()),s=createInternalData(),z=(0,_vue.ref)(),L=(0,_vue.ref)(),Y=(0,_vue.ref)(),O=(0,_vue.ref)(),$=(0,_vue.ref)(),K=(0,_vue.ref)(),b={refElem:z,refInput:L},G={xID:t,props:U,context:e,reactData:j,internalData:s,getRefMaps:()=>b};let Z=(0,_vue.computed)(()=>{var e=U.transfer,t=W.value;if(_xeUtils.default.isBoolean(t.transfer))return t.transfer;if(null===e){t=(0,_ui.getConfig)().dateRangePicker.transfer;if(_xeUtils.default.isBoolean(t))return t;if(p||i||n||h||d)return!0}return e}),le=(0,_vue.computed)(()=>{var e=U.readonly;return null===e?!!d&&d.props.readonly:e}),H=(0,_vue.computed)(()=>{var e=U.disabled;return null===e?!!d&&d.props.disabled:e}),ue=(0,_vue.computed)(()=>{var e=U.defaultDate;return e?_xeUtils.default.isArray(e)?e:-1<(""+e).indexOf(",")?(""+e).split(","):[e,e]:[]}),re=(0,_vue.computed)(()=>{var e=U.defaultTime;return e?_xeUtils.default.isArray(e)?e:-1<(""+e).indexOf(",")?(""+e).split(","):[e,e]:[]}),ie=(0,_vue.computed)(()=>{var e=U.width,t={};return e&&(t.width=(0,_dom.toCssUnit)(e)),t});t=(0,_vue.computed)(()=>{var{startValue:e,endValue:t}=U;return""+(e||"")+(t||"")});let J=(0,_vue.computed)(()=>{var e=U.type;return"time"===e}),ne=(0,_vue.computed)(()=>{var e=U.type;return J.value||"datetime"===e}),x=(0,_vue.computed)(()=>-1<["date","week","month","quarter","year"].indexOf(U.type)),Q=(0,_vue.computed)(()=>U.clearable),se=(0,_vue.computed)(()=>{var e=U.placeholder;return(e=e||(0,_ui.getConfig)().dateRangePicker.placeholder)?(0,_utils.getFuncText)(e):(0,_ui.getI18n)("vxe.dateRangePicker.pleaseRange")}),V=(0,_vue.computed)(()=>{var e=U.immediate;return e}),oe=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().dateRangePicker.timeConfig,U.timeConfig)),W=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().dateRangePicker.popupConfig,U.popupConfig)),X=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().dateRangePicker.shortcutConfig,U.shortcutConfig)),de=(0,_vue.computed)(()=>{var e=X.value.options;return e?e.map((e,t)=>Object.assign({name:""+(e.name||e.code||t)},e)):[]}),k=(0,_vue.computed)(()=>{var e=U.labelFormat;return e||(0,_ui.getI18n)("vxe.input.date.labelFormat."+U.type)}),g=(0,_vue.computed)(()=>{var{type:e,valueFormat:t}=U;return(0,_util.handleValueFormat)(e,t)}),D=(0,_vue.computed)(()=>{var e=U.startDay;return _xeUtils.default.toNumber(e)}),ve=(0,_vue.computed)(()=>{var{selectStValue:e,selectEdValue:t}=j,e=e||t?[e||"",t||""]:[];return P(e)}),ce=(0,_vue.computed)(()=>ve.value.label),P=e=>{var{type:t,separator:a}=U,l=k.value,u=g.value,r=D.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}},m=(e,t)=>{var{modelValue:a,valueType:l,valueFormat:u}=U;let r="date"===u||_xeUtils.default.isArray(a);if(l)switch(l){case"array":r=!0;break;case"string":r=!1}return e||t?(u=[e||null,t||null],r?u:u.join(",")):r?[]:""},S=()=>{var e,{type:t,modelValue:a}=U,l=g.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}},C=()=>{var{type:e,startValue:t,endValue:a}=U,l=g.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,valueFormat:u}=U;let r={sValue:"",eValue:""},i=(r=(e?t?S:C:a||l?C:S)()).sValue,n=r.eValue;"timestamp"===u&&(_xeUtils.default.isString(i)&&/^\d+$/.test(i)&&(i=Number(i)),_xeUtils.default.isString(n))&&/^\d+$/.test(n)&&(n=Number(n)),j.selectStValue=i,j.selectEdValue=n,j.paneEndVal=[i,n],j.paneStartVal=[i,n]},l=e=>{var{selectStValue:t,selectEdValue:a}=j,l=m(t,a);y(e.type,{value:l,startValue:t,endValue:a},e)},_=(e,t,a)=>{var{type:l,modelValue:u,valueFormat:r}=U,i=g.value;let n=e,s=t;(0,_util.hasTimestampValueType)(r)?(n&&(e=(0,_util.parseDateValue)(n,l,{valueFormat:i}),n=e?e.getTime():null),s&&(t=(0,_util.parseDateValue)(s,l,{valueFormat:i}),s=t?t.getTime():null)):(0,_util.hasDateValueType)(r)&&(n=n&&(0,_util.parseDateValue)(n,l,{valueFormat:i}),s=s&&(0,_util.parseDateValue)(s,l,{valueFormat:i})),j.selectStValue=n,j.selectEdValue=s;e=m(n,s),t=n&&s||!n&&!s;we(e),o("update:startValue",n||""),o("update:endValue",s||""),_xeUtils.default.toValueString(u)!==e&&(y("change",{value:e,startValue:n,endValue:s,isFinish:t},a),d)&&v&&d.triggerItemEvent(a,v.itemConfig.field,e)},pe=e=>{V.value||l(e)},ge=e=>{var t=W.value.trigger;j.isActivated=!0,t&&"default"!==t?"icon"===t&&f():Pe(e),l(e)},me=e=>{var t,a,l;H.value||({selectStValue:t,selectEdValue:a}=j,l=m(t,a),y("prefix-click",{value:l,startValue:t,endValue:a},e))},f=()=>new Promise(e=>{j.visiblePanel=!1,s.hpTimeout=setTimeout(()=>{j.isAniVisible=!1,e()},350)}),_e=(e,t)=>{x.value&&f();_("","",e),y("clear",{value:t,startValue:"",endValue:""},e)},r=()=>{var e=$.value,t=K.value;e&&t&&(e=e.getModelValue(),t=t.getModelValue(),e&&t||_("","",{type:"check"}))},fe=({date:e})=>{var t=j.selectStValue,a=j.selectEdValue;if(t&&a){e=e.getTime(),t=_xeUtils.default.toStringDate(t).getTime(),a=_xeUtils.default.toStringDate(a).getTime();if(t<=e&&e<=a)return"is--range-selected"}return""},E=()=>{var e=U.autoClose,{selectStValue:t,selectEdValue:a}=j,l=s.selectStatus,u=x.value;e?l&&u&&t&&a&&f():t&&a&&(s.selectStatus=!1)},ye=e=>{var t,a,l;H.value||({selectStValue:t,selectEdValue:a}=j,l=m(t,a),y("suffix-click",{value:l,startValue:t,endValue:a},e))},he=e=>{var{selectStValue:t,selectEdValue:a}=j;V.value||_(t,a,e),j.visiblePanel||(j.isActivated=!1,r()),y("blur",{value:"",startValue:t,endValue:a},e),d&&v&&d.triggerItemEvent(e,v.itemConfig.field,"")},be=e=>{l(e)},xe=e=>{l(e)},Ve=e=>{var t,a,l=J.value,u=$.value,r=K.value;u&&r&&(t=u.getModelValue(),a=r.getModelValue(),!l&&(t&&!a||!t&&a)?_("","",e):(u.confirmByEvent(e),r.confirmByEvent(e)),l=m(t,a),y("confirm",{value:l,startValue:t,endValue:a},e)),f()},ke=e=>{var t=j.paneStartVal,a=s.selectStatus,{value:e,currValue:l,$event:u}=e,r=e?_xeUtils.default.isString(e)?e.split(","):[e]:[];let i="",n="";a?n=e||l!==t[0]?(i=r[0],r[1]||j.selectEdValue):i=l:i=l||_xeUtils.default.last(r),j.paneEndVal=[i,n],j.paneStartVal=[i,n],_(i,n,u),E(),a?i&&n&&(s.selectStatus=!1):s.selectStatus=!0,(0,_vue.nextTick)(()=>{c()})},De=e=>{var t=j.paneEndVal,a=s.selectStatus,{value:e,currValue:l,$event:u}=e,r=e?_xeUtils.default.isString(e)?e.split(","):[e]:[];let i="",n="";a?e||l!==t[1]?(n=r[0],r[1]?(i=r[0],n=r[1]):i=j.selectStValue):(i=l,n=l):n=l||_xeUtils.default.last(r),j.paneEndVal=[i,n],j.paneStartVal=[i,n],_(i,n,u),E(),a?i&&n&&(s.selectStatus=!1):s.selectStatus=!0,(0,_vue.nextTick)(()=>{w()})},c=()=>{var e=$.value,a=K.value;if(e&&a){var l=e.getPanelDate();let t=a.getPanelDate();if(l&&t){var u=e.getViewType(),r=l.getFullYear(),i=l.getMonth(),n=t.getFullYear(),s=t.getMonth();switch(u){case"day":case"date":case"week":n<=r&&s<=i&&a.setPanelDate((0,_util.getNextMonth)(l));break;case"month":case"quarter":n<=r&&a.setPanelDate((0,_util.getNextYear)(l));break;case"year":var o=e.getComputeMaps().computeYearList,o=o.value;o.some(e=>_xeUtils.default.isDateSame(e.date,t,"yyyy"))&&a.setPanelDate((0,_util.getNextYear)(l,o.length))}}}},ee=()=>{var e=U.linkedPanels,t=$.value,a=K.value;if(t&&a){var l=t.getPanelDate(),u=a.getPanelDate();if(l&&u){u=t.getViewType();if(e)switch(u){case"day":case"date":case"week":a.setPanelDate((0,_util.getNextMonth)(l));break;case"month":case"quarter":a.setPanelDate((0,_util.getNextYear)(l));break;case"year":var r=t.getComputeMaps().computeYearList,r=r.value;a.setPanelDate((0,_util.getNextYear)(l,r.length))}else c()}}},w=()=>{var e=$.value,a=K.value;if(e&&a){let t=e.getPanelDate();var l=a.getPanelDate();if(t&&l){var u=a.getViewType(),r=t.getFullYear(),i=t.getMonth(),n=l.getFullYear(),s=l.getMonth();switch(u){case"day":case"date":case"week":n<=r&&s<=i&&e.setPanelDate((0,_util.getPrevMonth)(l));break;case"month":case"quarter":n<=r&&e.setPanelDate((0,_util.getPrevYear)(l));break;case"year":var o=a.getComputeMaps().computeYearList,o=o.value;o.some(e=>_xeUtils.default.isDateSame(e.date,t,"yyyy"))&&e.setPanelDate((0,_util.getPrevYear)(l,o.length))}}}},te=()=>{var e=U.linkedPanels,t=$.value,a=K.value;if(t&&a){var l=t.getPanelDate(),u=a.getPanelDate();if(l&&u){l=a.getViewType();if(e)switch(l){case"day":case"date":case"week":t.setPanelDate((0,_util.getPrevMonth)(u));break;case"month":case"quarter":t.setPanelDate((0,_util.getPrevYear)(u));break;case"year":var r=a.getComputeMaps().computeYearList,r=r.value;t.setPanelDate((0,_util.getPrevYear)(u,r.length))}else w()}}},T=e=>{var{visiblePanel:t,isActivated:a}=j,l=z.value,u=O.value;!H.value&&a&&(j.isActivated=(0,_dom.getEventTargetNode)(e,l).flag||(0,_dom.getEventTargetNode)(e,u).flag,j.isActivated||t&&(r(),f()))},F=e=>{var t,a=j.visiblePanel;H.value||(t=_ui.globalEvents.hasKey(e,_ui.GLOBAL_EVENT_KEYS.TAB),e=_ui.globalEvents.hasKey(e,_ui.GLOBAL_EVENT_KEYS.ESCAPE),t&&(j.isActivated=!1),a&&(e||t)&&(r(),f()))},N=()=>{var{visiblePanel:e,isActivated:t}=j;e&&(r(),f()),t&&(j.isActivated=!1),(e||t)&&(e=L.value)&&e.blur()},M=()=>{var e=j.visiblePanel;e&&u()},R=()=>{var e=j.visiblePanel;e&&u()},I=()=>{var e=W.value.zIndex||U.zIndex;e?j.panelIndex=_xeUtils.default.toNumber(e):j.panelIndex<(0,_utils.getLastZIndex)()&&(j.panelIndex=(0,_utils.nextZIndex)())},u=()=>{let a=U.placement,l=j.panelIndex,u=L.value,r=Y.value;if(!r)return(0,_vue.nextTick)();let i=Z.value,n=W.value;var e=()=>{var e=(0,_dom.updatePanelPlacement)(u,r,{placement:n.placement||a,defaultPlacement:n.defaultPlacement,teleportTo:i}),t=Object.assign(e.style,{zIndex:l});j.panelStyle=t,j.panelPlacement=e.placement};return e(),(0,_vue.nextTick)().then(e)},A=()=>{var e=j.visiblePanel;return(H.value||e?(0,_vue.nextTick):(j.initialized||(j.initialized=!0),s.hpTimeout&&(clearTimeout(s.hpTimeout),s.hpTimeout=void 0),s.selectStatus=!1,j.isActivated=!0,j.isAniVisible=!0,setTimeout(()=>{j.visiblePanel=!0,c(),u()},10),I(),u))()},Pe=e=>{le.value||(e.preventDefault(),A())},Se=e=>{var t=j.visiblePanel,a=W.value.trigger;a&&"default"!==a&&"icon"!==a||(t?f():Pe(e))},Ce=e=>{l(e)},Ee=({option:e,$event:t})=>{var a=U.type,l=X.value,u=l.autoClose,{code:r,clickMethod:i}=e,n=j.selectStValue,s=j.selectEdValue,o=m(n,s),d={$dateRangePicker:G,option:e,value:o,startValue:n,endValue:s,code:r};if(!i&&r){e=_ui.commands.get(r),e=e?e.dateRangePickerCommandMethod:null;if(e)e(d);else{var v=g.value,c=D.value;switch(r){case"last1":case"last3":case"last7":case"last30":case"last60":case"last90":case"last180":var p=(0,_util.getRangeDateByCode)(r,o,a,{valueFormat:v,firstDay:c}),n=p.startValue,s=p.endValue,o=m(n,s);d.value=o,d.startValue=n,d.endValue=s,_(n,s,t);break;default:errLog("vxe.error.notCommands",[r])}}}else{e=i||l.clickMethod;e&&e(d)}u&&f(),y("shortcut-click",d,t)},y=(e,t,a)=>{o(e,(0,_ui.createEvent)(a,{$dateRangePicker:G},t))},we=e=>{o("update:modelValue",e)},ae=(e={dispatchEvent:y,setModelValue(e,t){j.selectStValue=e||"",j.selectEdValue=t||"";e=m(e,t);we(e)},setModelValueByEvent(e,t,a){_(t||"",a||"",e)},focus(){var e=L.value;return j.isActivated=!0,e.focus(),(0,_vue.nextTick)()},blur(){return L.value.blur(),(j.isActivated=!1,_vue.nextTick)()},select(){return L.value.select(),(j.isActivated=!1,_vue.nextTick)()},showPanel:A,hidePanel:f,updatePlacement:u},Object.assign(G,e),(e,t)=>{var a=X.value,{position:l,align:u,mode:r}=a,i=de.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:Ee})]):(0,_ui.renderEmptyElement)(G)}),Te=()=>(0,_vue.h)("div",{class:"vxe-date-range-picker--control-icon",onClick:Se},[(0,_vue.h)("i",{class:["vxe-date-range-picker--date-picker-icon",(0,_ui.getIcon)().DATE_PICKER_DATE]})]);return(0,_vue.watch)(()=>U.modelValue,()=>{a(!0)}),(0,_vue.watch)(t,()=>{a(!1)}),a(!0),(0,_vue.nextTick)(()=>{_ui.globalEvents.on(G,"mousedown",T),_ui.globalEvents.on(G,"keydown",F),_ui.globalEvents.on(G,"blur",N),_ui.globalEvents.on(G,"resize",M),_ui.globalEvents.on(G,"scroll",R)}),(0,_vue.onDeactivated)(()=>{r()}),(0,_vue.onBeforeUnmount)(()=>{r()}),(0,_vue.onUnmounted)(()=>{_ui.globalEvents.off(G,"mousedown"),_ui.globalEvents.off(G,"keydown"),_ui.globalEvents.off(G,"blur"),_ui.globalEvents.off(G,"resize"),_ui.globalEvents.off(G,"scroll"),_xeUtils.default.assign(j,createReactData()),_xeUtils.default.assign(s,createInternalData())}),(0,_vue.provide)("$xeDateRangePicker",G),G.renderVN=()=>{var e,t,a,l,u,r,i,n,s,o,d,v,c,p,g,m,_,f,y,h,b,A,x,V,{className:k,inputClassName:D,type:P,name:S,autoComplete:C}=U,{selectStValue:E,selectEdValue:w,visiblePanel:T,isActivated:F}=j,N=q.value,M=H.value,R=le.value,I=ce.value;return R?(0,_vue.h)("div",{ref:z,class:["vxe-date-range-picker--readonly","type--"+P,k]},I):(R=ie.value,a=se.value,e=Q.value,l=U.prefixIcon,t=(t=B.prefix)||l?(0,_vue.h)("div",{class:"vxe-date-range-picker--prefix",onClick:me},[(0,_vue.h)("div",{class:"vxe-date-range-picker--prefix-icon"},t?(0,_vn.getSlotVNs)(t({})):[(0,_vue.h)("i",{class:l})])]):null,l=(()=>{var e=U.suffixIcon,{selectStValue:t,selectEdValue:a}=j,l=B.suffix,u=H.value,r=Q.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:_e},[(0,_vue.h)("i",{class:(0,_ui.getIcon)().INPUT_CLEAR})]):(0,_ui.renderEmptyElement)(G),Te(),l||e?(0,_vue.h)("div",{class:"vxe-date-range-picker--suffix-icon",onClick:ye},l?(0,_vn.getSlotVNs)(l({})):[(0,_vue.h)("i",{class:e})]):(0,_ui.renderEmptyElement)(G)])})(),(0,_vue.h)("div",{ref:z,class:["vxe-date-range-picker","type--"+P,k,{["size--"+N]:N,"is--prefix":!!t,"is--suffix":!!l,"is--visible":T,"is--disabled":M,"is--active":F,"show--clear":e&&!M&&(E||w)}],style:R,spellcheck:!1},[t||(0,_ui.renderEmptyElement)(G),(0,_vue.h)("div",{class:"vxe-date-range-picker--wrapper"},[(0,_vue.h)("input",{ref:L,class:"vxe-date-range-picker--inner"+(D?" "+D:""),value:I,name:S,type:"text",placeholder:a,editable:!1,disabled:M,autocomplete:C,onKeydown:be,onKeyup:xe,onClick:Ce,onChange:pe,onFocus:ge,onBlur:he})]),l||(0,_ui.renderEmptyElement)(G),!1===(P=W.value).enabled?(0,_ui.renderEmptyElement)(G):({type:k,separator:N,autoClose:T,valueFormat:F,showConfirmButton:e,showClearButton:E}=U,{initialized:w,isAniVisible:R,visiblePanel:t,panelPlacement:D,panelStyle:I,selectStValue:S,selectEdValue:a,paneStartVal:M,paneEndVal:C}=j,l=q.value,u=Z.value,v=X.value,r=Q.value,o=ve.value,x=de.value,i=J.value,V=ne.value,y=ue.value,b=re.value,n=oe.value,s=P.appendTo,{startLabel:o,endLabel:d}=o,v=v.position,c=B.header,p=B.footer,g=B.top,m=B.bottom,_=B.left,f=B.right,P=P.className,[y,h]=y,[b,A]=b,x=0<x.length,V=null===e?V||!T:e,T=null===E?r:E,(0,_vue.h)(_vue.Teleport,{to:(0,_dom.getPopupContainer)(s),disabled:!u||!w},[(0,_vue.h)("div",{ref:Y,class:["vxe-table--ignore-clear vxe-date-range-picker--panel","type--"+k,P?_xeUtils.default.isFunction(P)?P({$dateRangePicker:G}):P:"",{["size--"+l]:l,"is--transfer":u,"ani--leave":R,"ani--enter":t,"show--top":!!(g||c||x&&("top"===v||"header"===v)),"show--bottom":!!(m||p||x&&("bottom"===v||"footer"===v)),"show--left":!!(_||x&&"left"===v),"show--right":!!(f||x&&"right"===v)}],placement:D,style:I},w&&(t||R)?[(0,_vue.h)("div",{ref:O,class:["vxe-date-range-picker--layout-all-wrapper","type--"+k,{["size--"+l]:l}]},[g?(0,_vue.h)("div",{class:"vxe-date-range-picker--layout-top-wrapper"},g({})):ae("top"),(0,_vue.h)("div",{class:"vxe-date-range-picker--layout-body-layout-wrapper"},[_?(0,_vue.h)("div",{class:"vxe-date-range-picker--layout-left-wrapper"},_({})):ae("left",!0),(0,_vue.h)("div",{class:"vxe-date-range-picker--layout-body-content-wrapper"},[c?(0,_vue.h)("div",{class:"vxe-date-range-picker--layout-header-wrapper"},c({})):ae("header"),(0,_vue.h)("div",{class:"vxe-date-range-picker--layout-body-wrapper"},[(0,_vue.h)(_datePanel.default,{ref:$,modelValue:M,multiple:!i,valueSort:!0,limitCount:3,defaultMode:"first",type:U.type,className:U.className,minDate:U.minDate,maxDate:U.maxDate,startDay:U.startDay,labelFormat:U.labelFormat,valueFormat:"date"===F||"timestamp"===F?"":F,timeFormat:U.timeFormat,defaultDate:y,defaultTime:b,timeConfig:n,festivalMethod:U.festivalMethod,disabledMethod:U.disabledMethod,selectDay:U.selectDay,cellClassName:fe,onChange:ke,onDatePrev:ee,onDateToday:ee,onDateNext:ee}),(0,_vue.h)(_datePanel.default,{ref:K,modelValue:C,multiple:!i,valueSort:!0,limitCount:3,defaultMode:"last",type:U.type,className:U.className,minDate:U.minDate,maxDate:U.maxDate,startDay:U.startDay,labelFormat:U.labelFormat,valueFormat:"date"===F||"timestamp"===F?"":F,timeFormat:U.timeFormat,defaultDate:h,defaultTime:A,timeConfig:n,festivalMethod:U.festivalMethod,disabledMethod:U.disabledMethod,selectDay:U.selectDay,cellClassName:fe,onChange:De,onDatePrev:te,onDateToday:te,onDateNext:te})]),(0,_vue.h)("div",{class:"vxe-date-range-picker--layout-footer-wrapper"},[(0,_vue.h)("div",{class:"vxe-date-range-picker--layout-footer-label"},o||d?[(0,_vue.h)("span",o),(0,_vue.h)("span",""+(N||"")),(0,_vue.h)("span",d)]:""+(N||"")),(0,_vue.h)("div",{class:"vxe-date-range-picker--layout-footer-custom"},p?p({}):[ae("footer")]),(0,_vue.h)("div",{class:"vxe-date-range-picker--layout-footer-btns"},[T?(0,_vue.h)(_button.default,{size:"mini",disabled:!(S||a),content:(0,_ui.getI18n)("vxe.button.clear"),onClick:_e}):(0,_ui.renderEmptyElement)(G),V?(0,_vue.h)(_button.default,{size:"mini",status:"primary",content:(0,_ui.getI18n)("vxe.button.confirm"),onClick:Ve}):(0,_ui.renderEmptyElement)(G)])])]),f?(0,_vue.h)("div",{class:"vxe-date-range-picker--layout-right-wrapper"},f({})):ae("right",!0)]),m?(0,_vue.h)("div",{class:"vxe-date-range-picker--layout-bottom-wrapper"},m({})):ae("bottom")])]:[])]))]))},G},render(){return this.renderVN()}});