vxe-pc-ui 4.14.23 → 4.14.24

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 (39) hide show
  1. package/dist/all.esm.js +48 -24
  2. package/es/date-panel/src/date-panel.js +5 -2
  3. package/es/date-picker/src/date-picker.js +5 -1
  4. package/es/tree/src/tree.js +17 -13
  5. package/es/tree-select/src/tree-select.js +19 -6
  6. package/es/ui/index.js +1 -1
  7. package/es/ui/src/log.js +1 -1
  8. package/lib/date-panel/src/date-panel.js +6 -2
  9. package/lib/date-panel/src/date-panel.min.js +1 -1
  10. package/lib/date-picker/src/date-picker.js +5 -1
  11. package/lib/date-picker/src/date-picker.min.js +1 -1
  12. package/lib/index.umd.js +60 -29
  13. package/lib/index.umd.min.js +1 -1
  14. package/lib/tree/src/tree.js +26 -17
  15. package/lib/tree/src/tree.min.js +1 -1
  16. package/lib/tree-select/src/tree-select.js +21 -6
  17. package/lib/tree-select/src/tree-select.min.js +1 -1
  18. package/lib/ui/index.js +1 -1
  19. package/lib/ui/index.min.js +1 -1
  20. package/lib/ui/src/log.js +1 -1
  21. package/lib/ui/src/log.min.js +1 -1
  22. package/package.json +1 -1
  23. package/packages/date-panel/src/date-panel.ts +5 -2
  24. package/packages/date-picker/src/date-picker.ts +8 -3
  25. package/packages/tree/src/tree.ts +17 -13
  26. package/packages/tree-select/src/tree-select.ts +19 -6
  27. package/types/components/date-panel.d.ts +13 -1
  28. /package/es/icon/{iconfont.1779801338819.ttf → iconfont.1779854999562.ttf} +0 -0
  29. /package/es/icon/{iconfont.1779801338819.woff → iconfont.1779854999562.woff} +0 -0
  30. /package/es/icon/{iconfont.1779801338819.woff2 → iconfont.1779854999562.woff2} +0 -0
  31. /package/es/{iconfont.1779801338819.ttf → iconfont.1779854999562.ttf} +0 -0
  32. /package/es/{iconfont.1779801338819.woff → iconfont.1779854999562.woff} +0 -0
  33. /package/es/{iconfont.1779801338819.woff2 → iconfont.1779854999562.woff2} +0 -0
  34. /package/lib/icon/style/{iconfont.1779801338819.ttf → iconfont.1779854999562.ttf} +0 -0
  35. /package/lib/icon/style/{iconfont.1779801338819.woff → iconfont.1779854999562.woff} +0 -0
  36. /package/lib/icon/style/{iconfont.1779801338819.woff2 → iconfont.1779854999562.woff2} +0 -0
  37. /package/lib/{iconfont.1779801338819.ttf → iconfont.1779854999562.ttf} +0 -0
  38. /package/lib/{iconfont.1779801338819.woff → iconfont.1779854999562.woff} +0 -0
  39. /package/lib/{iconfont.1779801338819.woff2 → iconfont.1779854999562.woff2} +0 -0
package/dist/all.esm.js CHANGED
@@ -80,11 +80,11 @@ function checkDynamic() {
80
80
  }
81
81
  }
82
82
 
83
- const version$1 = `ui v${"4.14.23"}`;
83
+ const version$1 = `ui v${"4.14.24"}`;
84
84
  const warnLog = log.create('warn', version$1);
85
85
  const errLog = log.create('error', version$1);
86
86
 
87
- const version = "4.14.23";
87
+ const version = "4.14.24";
88
88
  VxeUI.uiVersion = version;
89
89
  VxeUI.dynamicApp = dynamicApp;
90
90
  function config(options) {
@@ -14475,7 +14475,8 @@ var VxeDatePanelComponent = defineVxeComponent({
14475
14475
  'date-prev',
14476
14476
  'date-today',
14477
14477
  'date-next',
14478
- 'confirm'
14478
+ 'confirm',
14479
+ 'revert'
14479
14480
  ],
14480
14481
  setup(props, context) {
14481
14482
  const { emit } = context;
@@ -14983,7 +14984,9 @@ var VxeDatePanelComponent = defineVxeComponent({
14983
14984
  return XEUtils.toStringDate(value, format);
14984
14985
  };
14985
14986
  const dateRevert = () => {
14986
- reactData.inputLabel = props.multiple ? computeDateMultipleLabel.value : reactData.datePanelLabel;
14987
+ const label = props.multiple ? computeDateMultipleLabel.value : reactData.datePanelLabel;
14988
+ reactData.inputLabel = label;
14989
+ dispatchEvent('revert', { label }, null);
14987
14990
  };
14988
14991
  const afterCheckValue = (inpVal) => {
14989
14992
  const { type } = props;
@@ -16598,6 +16601,9 @@ var VxeDatePickerComponent = defineVxeComponent({
16598
16601
  const panelConfirmEvent = (params) => {
16599
16602
  dispatchEvent('confirm', params, params.$event);
16600
16603
  };
16604
+ const panelRevertEvent = (params) => {
16605
+ reactData.inputLabel = params.label;
16606
+ };
16601
16607
  // 全局事件
16602
16608
  const handleGlobalMousedownEvent = (evnt) => {
16603
16609
  const $datePanel = refDatePanel.value;
@@ -16947,7 +16953,8 @@ var VxeDatePickerComponent = defineVxeComponent({
16947
16953
  disabledMethod: props.disabledMethod,
16948
16954
  selectDay: props.selectDay,
16949
16955
  onChange: panelChangeEvent,
16950
- onConfirm: panelConfirmEvent
16956
+ onConfirm: panelConfirmEvent,
16957
+ onRevert: panelRevertEvent
16951
16958
  })
16952
16959
  ]),
16953
16960
  h('div', {
@@ -37057,19 +37064,20 @@ var VxeTreeComponent = defineVxeComponent({
37057
37064
  evnt.preventDefault();
37058
37065
  evnt.stopPropagation();
37059
37066
  const { transform } = props;
37060
- const { selectCheckboxMaps } = internalData;
37067
+ const { selectCheckboxMaps, nodeMaps } = internalData;
37061
37068
  const childrenField = computeChildrenField.value;
37062
37069
  const mapChildrenField = computeMapChildrenField.value;
37063
37070
  const checkboxOpts = computeCheckboxOpts.value;
37064
- const { checkStrictly, checkMethod } = checkboxOpts;
37065
- let isDisabled = !!checkMethod;
37066
- if (checkMethod) {
37067
- isDisabled = !checkMethod({ $tree: $xeTree, node });
37068
- }
37071
+ const { checkStrictly, checkMode, checkMethod } = checkboxOpts;
37072
+ const nodeid = getNodeId(node);
37073
+ const childList = XEUtils.get(node, childrenField);
37074
+ const isExistChild = childList && childList.length > 0;
37075
+ const nodeItem = nodeMaps[nodeid] || {};
37076
+ const nLevel = nodeItem.level;
37077
+ const isDisabled = checkMethod ? !checkMethod({ $tree: $xeTree, node }) : !handleVisibleOrCheckMode(checkMode, isExistChild, nLevel);
37069
37078
  if (isDisabled) {
37070
37079
  return;
37071
37080
  }
37072
- const nodeid = getNodeId(node);
37073
37081
  let isChecked = false;
37074
37082
  if (selectCheckboxMaps[nodeid]) {
37075
37083
  delete selectCheckboxMaps[nodeid];
@@ -37131,17 +37139,20 @@ var VxeTreeComponent = defineVxeComponent({
37131
37139
  const changeRadioEvent = (evnt, node) => {
37132
37140
  evnt.preventDefault();
37133
37141
  evnt.stopPropagation();
37142
+ const { nodeMaps } = internalData;
37134
37143
  const radioOpts = computeRadioOpts.value;
37135
- const { checkMethod } = radioOpts;
37136
- let isDisabled = !!checkMethod;
37137
- if (checkMethod) {
37138
- isDisabled = !checkMethod({ $tree: $xeTree, node });
37139
- }
37144
+ const childrenField = computeChildrenField.value;
37145
+ const { checkMode, checkMethod } = radioOpts;
37146
+ const nodeid = getNodeId(node);
37147
+ const childList = XEUtils.get(node, childrenField);
37148
+ const isExistChild = childList && childList.length > 0;
37149
+ const nodeItem = nodeMaps[nodeid] || {};
37150
+ const nLevel = nodeItem.level;
37151
+ const isDisabled = checkMethod ? !checkMethod({ $tree: $xeTree, node }) : !handleVisibleOrCheckMode(checkMode, isExistChild, nLevel);
37140
37152
  if (isDisabled) {
37141
37153
  return;
37142
37154
  }
37143
37155
  const isChecked = true;
37144
- const nodeid = getNodeId(node);
37145
37156
  const value = deNodeValue(nodeid);
37146
37157
  reactData.selectRadioKey = nodeid;
37147
37158
  emitRadioMode(value);
@@ -38780,9 +38791,10 @@ var VxeTreeSelectComponent = defineVxeComponent({
38780
38791
  const propsOpts = computePropsOpts.value;
38781
38792
  return propsOpts.children || 'children';
38782
38793
  });
38783
- const computeParentField = computed(() => {
38794
+ const computeNodeParentField = computed(() => {
38784
38795
  const propsOpts = computePropsOpts.value;
38785
- return propsOpts.parent || 'parentField';
38796
+ const treeOpts = computeTreeOpts.value;
38797
+ return propsOpts.parent || treeOpts.parentField || 'parentId';
38786
38798
  });
38787
38799
  const computeHasChildField = computed(() => {
38788
38800
  const propsOpts = computePropsOpts.value;
@@ -38870,6 +38882,7 @@ var VxeTreeSelectComponent = defineVxeComponent({
38870
38882
  const { separator } = props;
38871
38883
  const treeOpts = computeTreeOpts.value;
38872
38884
  const nodeKeyField = computeNodeKeyField.value;
38885
+ const nodeParentField = computeNodeParentField.value;
38873
38886
  const childrenField = computeChildrenField.value;
38874
38887
  const valueField = computeValueField.value;
38875
38888
  const labelField = computeLabelField.value;
@@ -38900,9 +38913,20 @@ var VxeTreeSelectComponent = defineVxeComponent({
38900
38913
  };
38901
38914
  if (optList) {
38902
38915
  if (transform) {
38903
- optList.forEach((item, index, items) => {
38904
- handleOptNode(item, index, items, [], null, []);
38916
+ // if (showFullLabel) {
38917
+ const treeList = XEUtils.toArrayTree(optList, {
38918
+ key: nodeKeyField,
38919
+ parentKey: nodeParentField,
38920
+ mapChildren: childrenField,
38921
+ rootParentValue: treeOpts.rootParentValue,
38922
+ rootValues: treeOpts.rootValues
38905
38923
  });
38924
+ XEUtils.eachTree(treeList, handleOptNode, { children: childrenField });
38925
+ // } else {
38926
+ // optList.forEach((item, index, items) => {
38927
+ // handleOptNode(item, index, items, [], null, [])
38928
+ // })
38929
+ // }
38906
38930
  }
38907
38931
  else {
38908
38932
  XEUtils.eachTree(optList, handleOptNode, { children: childrenField });
@@ -39219,7 +39243,7 @@ var VxeTreeSelectComponent = defineVxeComponent({
39219
39243
  const labelField = computeLabelField.value;
39220
39244
  const valueField = computeValueField.value;
39221
39245
  const childrenField = computeChildrenField.value;
39222
- const parentField = computeParentField.value;
39246
+ const nodeParentField = computeNodeParentField.value;
39223
39247
  const hasChildField = computeHasChildField.value;
39224
39248
  const virtualYOpts = computeVirtualYOpts.value;
39225
39249
  const filterOpts = computeFilterOpts.value;
@@ -39385,7 +39409,7 @@ var VxeTreeSelectComponent = defineVxeComponent({
39385
39409
  valueField: valueField,
39386
39410
  keyField: nodeKeyField,
39387
39411
  childrenField: treeOpts.childrenField || childrenField,
39388
- parentField: treeOpts.parentField || parentField,
39412
+ parentField: nodeParentField,
39389
39413
  hasChildField: treeOpts.hasChildField || hasChildField,
39390
39414
  accordion: treeOpts.accordion,
39391
39415
  expandAll: treeOpts.expandAll,
@@ -64,7 +64,8 @@ export default defineVxeComponent({
64
64
  'date-prev',
65
65
  'date-today',
66
66
  'date-next',
67
- 'confirm'
67
+ 'confirm',
68
+ 'revert'
68
69
  ],
69
70
  setup(props, context) {
70
71
  const { emit } = context;
@@ -572,7 +573,9 @@ export default defineVxeComponent({
572
573
  return XEUtils.toStringDate(value, format);
573
574
  };
574
575
  const dateRevert = () => {
575
- reactData.inputLabel = props.multiple ? computeDateMultipleLabel.value : reactData.datePanelLabel;
576
+ const label = props.multiple ? computeDateMultipleLabel.value : reactData.datePanelLabel;
577
+ reactData.inputLabel = label;
578
+ dispatchEvent('revert', { label }, null);
576
579
  };
577
580
  const afterCheckValue = (inpVal) => {
578
581
  const { type } = props;
@@ -444,6 +444,9 @@ export default defineVxeComponent({
444
444
  const panelConfirmEvent = (params) => {
445
445
  dispatchEvent('confirm', params, params.$event);
446
446
  };
447
+ const panelRevertEvent = (params) => {
448
+ reactData.inputLabel = params.label;
449
+ };
447
450
  // 全局事件
448
451
  const handleGlobalMousedownEvent = (evnt) => {
449
452
  const $datePanel = refDatePanel.value;
@@ -793,7 +796,8 @@ export default defineVxeComponent({
793
796
  disabledMethod: props.disabledMethod,
794
797
  selectDay: props.selectDay,
795
798
  onChange: panelChangeEvent,
796
- onConfirm: panelConfirmEvent
799
+ onConfirm: panelConfirmEvent,
800
+ onRevert: panelRevertEvent
797
801
  })
798
802
  ]),
799
803
  h('div', {
@@ -1232,19 +1232,20 @@ export default defineVxeComponent({
1232
1232
  evnt.preventDefault();
1233
1233
  evnt.stopPropagation();
1234
1234
  const { transform } = props;
1235
- const { selectCheckboxMaps } = internalData;
1235
+ const { selectCheckboxMaps, nodeMaps } = internalData;
1236
1236
  const childrenField = computeChildrenField.value;
1237
1237
  const mapChildrenField = computeMapChildrenField.value;
1238
1238
  const checkboxOpts = computeCheckboxOpts.value;
1239
- const { checkStrictly, checkMethod } = checkboxOpts;
1240
- let isDisabled = !!checkMethod;
1241
- if (checkMethod) {
1242
- isDisabled = !checkMethod({ $tree: $xeTree, node });
1243
- }
1239
+ const { checkStrictly, checkMode, checkMethod } = checkboxOpts;
1240
+ const nodeid = getNodeId(node);
1241
+ const childList = XEUtils.get(node, childrenField);
1242
+ const isExistChild = childList && childList.length > 0;
1243
+ const nodeItem = nodeMaps[nodeid] || {};
1244
+ const nLevel = nodeItem.level;
1245
+ const isDisabled = checkMethod ? !checkMethod({ $tree: $xeTree, node }) : !handleVisibleOrCheckMode(checkMode, isExistChild, nLevel);
1244
1246
  if (isDisabled) {
1245
1247
  return;
1246
1248
  }
1247
- const nodeid = getNodeId(node);
1248
1249
  let isChecked = false;
1249
1250
  if (selectCheckboxMaps[nodeid]) {
1250
1251
  delete selectCheckboxMaps[nodeid];
@@ -1306,17 +1307,20 @@ export default defineVxeComponent({
1306
1307
  const changeRadioEvent = (evnt, node) => {
1307
1308
  evnt.preventDefault();
1308
1309
  evnt.stopPropagation();
1310
+ const { nodeMaps } = internalData;
1309
1311
  const radioOpts = computeRadioOpts.value;
1310
- const { checkMethod } = radioOpts;
1311
- let isDisabled = !!checkMethod;
1312
- if (checkMethod) {
1313
- isDisabled = !checkMethod({ $tree: $xeTree, node });
1314
- }
1312
+ const childrenField = computeChildrenField.value;
1313
+ const { checkMode, checkMethod } = radioOpts;
1314
+ const nodeid = getNodeId(node);
1315
+ const childList = XEUtils.get(node, childrenField);
1316
+ const isExistChild = childList && childList.length > 0;
1317
+ const nodeItem = nodeMaps[nodeid] || {};
1318
+ const nLevel = nodeItem.level;
1319
+ const isDisabled = checkMethod ? !checkMethod({ $tree: $xeTree, node }) : !handleVisibleOrCheckMode(checkMode, isExistChild, nLevel);
1315
1320
  if (isDisabled) {
1316
1321
  return;
1317
1322
  }
1318
1323
  const isChecked = true;
1319
- const nodeid = getNodeId(node);
1320
1324
  const value = deNodeValue(nodeid);
1321
1325
  reactData.selectRadioKey = nodeid;
1322
1326
  emitRadioMode(value);
@@ -254,9 +254,10 @@ export default defineVxeComponent({
254
254
  const propsOpts = computePropsOpts.value;
255
255
  return propsOpts.children || 'children';
256
256
  });
257
- const computeParentField = computed(() => {
257
+ const computeNodeParentField = computed(() => {
258
258
  const propsOpts = computePropsOpts.value;
259
- return propsOpts.parent || 'parentField';
259
+ const treeOpts = computeTreeOpts.value;
260
+ return propsOpts.parent || treeOpts.parentField || 'parentId';
260
261
  });
261
262
  const computeHasChildField = computed(() => {
262
263
  const propsOpts = computePropsOpts.value;
@@ -344,6 +345,7 @@ export default defineVxeComponent({
344
345
  const { separator } = props;
345
346
  const treeOpts = computeTreeOpts.value;
346
347
  const nodeKeyField = computeNodeKeyField.value;
348
+ const nodeParentField = computeNodeParentField.value;
347
349
  const childrenField = computeChildrenField.value;
348
350
  const valueField = computeValueField.value;
349
351
  const labelField = computeLabelField.value;
@@ -374,9 +376,20 @@ export default defineVxeComponent({
374
376
  };
375
377
  if (optList) {
376
378
  if (transform) {
377
- optList.forEach((item, index, items) => {
378
- handleOptNode(item, index, items, [], null, []);
379
+ // if (showFullLabel) {
380
+ const treeList = XEUtils.toArrayTree(optList, {
381
+ key: nodeKeyField,
382
+ parentKey: nodeParentField,
383
+ mapChildren: childrenField,
384
+ rootParentValue: treeOpts.rootParentValue,
385
+ rootValues: treeOpts.rootValues
379
386
  });
387
+ XEUtils.eachTree(treeList, handleOptNode, { children: childrenField });
388
+ // } else {
389
+ // optList.forEach((item, index, items) => {
390
+ // handleOptNode(item, index, items, [], null, [])
391
+ // })
392
+ // }
380
393
  }
381
394
  else {
382
395
  XEUtils.eachTree(optList, handleOptNode, { children: childrenField });
@@ -693,7 +706,7 @@ export default defineVxeComponent({
693
706
  const labelField = computeLabelField.value;
694
707
  const valueField = computeValueField.value;
695
708
  const childrenField = computeChildrenField.value;
696
- const parentField = computeParentField.value;
709
+ const nodeParentField = computeNodeParentField.value;
697
710
  const hasChildField = computeHasChildField.value;
698
711
  const virtualYOpts = computeVirtualYOpts.value;
699
712
  const filterOpts = computeFilterOpts.value;
@@ -859,7 +872,7 @@ export default defineVxeComponent({
859
872
  valueField: valueField,
860
873
  keyField: nodeKeyField,
861
874
  childrenField: treeOpts.childrenField || childrenField,
862
- parentField: treeOpts.parentField || parentField,
875
+ parentField: nodeParentField,
863
876
  hasChildField: treeOpts.hasChildField || hasChildField,
864
877
  accordion: treeOpts.accordion,
865
878
  expandAll: treeOpts.expandAll,
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.14.23";
4
+ export const version = "4.14.24";
5
5
  VxeUI.uiVersion = version;
6
6
  VxeUI.dynamicApp = dynamicApp;
7
7
  export function config(options) {
package/es/ui/src/log.js CHANGED
@@ -1,4 +1,4 @@
1
1
  import { log } from '@vxe-ui/core';
2
- const version = `ui v${"4.14.23"}`;
2
+ const version = `ui v${"4.14.24"}`;
3
3
  export const warnLog = log.create('warn', version);
4
4
  export const errLog = log.create('error', version);
@@ -63,7 +63,7 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
63
63
  default: () => (0, _ui.getConfig)().datePanel.selectDay
64
64
  }
65
65
  },
66
- emits: ['update:modelValue', 'change', 'click', 'clear', 'date-prev', 'date-today', 'date-next', 'confirm'],
66
+ emits: ['update:modelValue', 'change', 'click', 'clear', 'date-prev', 'date-today', 'date-next', 'confirm', 'revert'],
67
67
  setup(props, context) {
68
68
  const {
69
69
  emit
@@ -648,7 +648,11 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
648
648
  return _xeUtils.default.toStringDate(value, format);
649
649
  };
650
650
  const dateRevert = () => {
651
- reactData.inputLabel = props.multiple ? computeDateMultipleLabel.value : reactData.datePanelLabel;
651
+ const label = props.multiple ? computeDateMultipleLabel.value : reactData.datePanelLabel;
652
+ reactData.inputLabel = label;
653
+ dispatchEvent('revert', {
654
+ label
655
+ }, null);
652
656
  };
653
657
  const afterCheckValue = inpVal => {
654
658
  const {
@@ -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"),_util=require("./util");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeDatePanel",props:{modelValue:[String,Number,Date],type:{type:String,default:"date"},className:String,size:{type:String,default:()=>(0,_ui.getConfig)().datePanel.size||(0,_ui.getConfig)().size},multiple:Boolean,limitCount:{type:[String,Number],default:()=>(0,_ui.getConfig)().datePanel.limitCount},startDate:{type:[String,Number,Date],default:()=>(0,_ui.getConfig)().datePanel.startDate},endDate:{type:[String,Number,Date],default:()=>(0,_ui.getConfig)().datePanel.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)().datePanel.startDay},labelFormat:String,valueFormat:String,timeFormat:String,festivalMethod:{type:Function,default:()=>(0,_ui.getConfig)().datePanel.festivalMethod},disabledMethod:{type:Function,default:()=>(0,_ui.getConfig)().datePanel.disabledMethod},timeConfig:Object,selectDay:{type:[String,Number],default:()=>(0,_ui.getConfig)().datePanel.selectDay}},emits:["update:modelValue","change","click","clear","date-prev","date-today","date-next","confirm"],setup(p,e){let Y=e.emit;var H=_xeUtils.default.uniqueId();let E=(0,_ui.useSize)(p).computeSize,h=(0,_vue.reactive)({visiblePanel:!1,isAniVisible:!1,isActivated:!1,inputValue:"",inputLabel:"",datetimePanelValue:null,datePanelValue:null,datePanelLabel:"",datePanelType:"day",selectMonth:null,currentDate:null}),o={yearSize:12,monthSize:20,quarterSize:8,hpTimeout:void 0};var t=(0,_vue.ref)();let a=(0,_vue.ref)(),L=(0,_vue.ref)(),z={refElem:t},d={xID:H,props:p,context:e,reactData:h,internalData:o,getRefMaps:()=>z},v=(0,_vue.computed)(()=>{var e=p.type;return"time"===e||"datetime"===e}),r=(0,_vue.computed)(()=>v.value||-1<["date","week","month","quarter","year"].indexOf(p.type)),j=(0,_vue.computed)(()=>p.startDate?_xeUtils.default.toStringDate(p.startDate):null),I=(0,_vue.computed)(()=>p.endDate?_xeUtils.default.toStringDate(p.endDate):null),m=(0,_vue.computed)(()=>{var{modelValue:e,multiple:t}=p,a=r.value;let l=f.value;return t&&e&&a?_xeUtils.default.toValueString(e).split(",").map(e=>{e=D(e,l);return _xeUtils.default.isValidDate(e),e}):[]}),c=(0,_vue.computed)(()=>{var e=m.value;let t=f.value;return e.map(e=>_xeUtils.default.toDateString(e,t))}),n=(0,_vue.computed)(()=>{var e=m.value;let t=y.value;return e.map(e=>_xeUtils.default.toDateString(e,t)).join(", ")}),O=(0,_vue.computed)(()=>p.multiple?_xeUtils.default.toNumber(p.limitCount):0),_=(0,_vue.computed)(()=>{var e=p.multiple,t=O.value,a=c.value;return!(!e||!t)&&a.length>=t}),i=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().datePanel.timeConfig,p.timeConfig)),f=(0,_vue.computed)(()=>{var{type:e,valueFormat:t}=p;return(0,_util.handleValueFormat)(e,t)}),x=(0,_vue.computed)(()=>{var e=p.modelValue,t=r.value,a=f.value;let l=null;return l=e&&t&&(t=D(e,a),_xeUtils.default.isValidDate(t))?t:l}),A=(0,_vue.computed)(()=>{var e=j.value,t=h.selectMonth;return!(!t||!e)&&t<=e}),B=(0,_vue.computed)(()=>{var e=I.value,t=h.selectMonth;return!(!t||!e)&&_xeUtils.default.getWhatMonth(t,0,"last")>=e}),$=(0,_vue.computed)(()=>{var e=h.datetimePanelValue,t=ne.value,a=de.value;return e?_xeUtils.default.toDateString(e,a&&t?"HH:mm:ss":a?"HH:mm":"HH"):""}),Q=(0,_vue.computed)(()=>{var e=x.value,t=v.value;return e&&t?1e3*(3600*e.getHours()+60*e.getMinutes()+e.getSeconds()):0}),y=(0,_vue.computed)(()=>{var e=p.labelFormat;return r.value?e||(0,_ui.getI18n)("vxe.input.date.labelFormat."+p.type):""}),g=(0,_vue.computed)(()=>{var t=o.yearSize,{selectMonth:e,currentDate:a}=h,l=[];if(e&&a){var i=a.getFullYear(),a=e.getFullYear(),u=new Date(a-a%t,0,1);for(let e=-4;e<t+4;e++){var s=_xeUtils.default.getWhatYear(u,e,"first"),r=s.getFullYear();l.push({date:s,isCurrent:!0,isPrev:e<0,isNow:i===r,isNext:e>=t,year:r})}}return l}),R=(0,_vue.computed)(()=>{let a="",l="";if(r.value){var{datePanelType:i,selectMonth:u}=h,s=g.value;let e="",t;u&&(e=u.getFullYear(),t=u.getMonth()+1),"quarter"===i||"month"===i?a=(0,_ui.getI18n)("vxe.datePicker.yearTitle",[e]):"year"===i?a=s.length?s[0].year+" - "+s[s.length-1].year:"":(a=(0,_ui.getI18n)("vxe.datePicker.yearTitle",[e]),l=t?(0,_ui.getI18n)("vxe.input.date.m"+t):"-")}return{y:a,m:l}}),b=(0,_vue.computed)(()=>{var e=p.startDay;return _xeUtils.default.toNumber(e)}),G=(0,_vue.computed)(()=>{var a=[];if(r.value){let t=b.value;a.push(t);for(let e=0;e<6;e++)6<=t?t=0:t++,a.push(t)}return a}),J=(0,_vue.computed)(()=>r.value?G.value.map(e=>({value:e,label:(0,_ui.getI18n)("vxe.input.date.weeks.w"+e)})):[]),K=(0,_vue.computed)(()=>{var e;return r.value?(e=J.value,[{label:(0,_ui.getI18n)("vxe.input.date.weeks.w")}].concat(e)):[]}),X=(0,_vue.computed)(()=>{var e=g.value;return _xeUtils.default.chunk(e,4)}),Z=(0,_vue.computed)(()=>{var t=o.quarterSize,{selectMonth:e,currentDate:a}=h,l=[];if(e&&a){var i=a.getFullYear(),u=(0,_util.getDateQuarter)(a),s=_xeUtils.default.getWhatYear(e,0,"first"),r=s.getFullYear();for(let e=-2;e<t-2;e++){var d=_xeUtils.default.getWhatQuarter(s,e),n=d.getFullYear(),v=(0,_util.getDateQuarter)(d),p=n<r;l.push({date:d,isPrev:p,isCurrent:n===r,isNow:n===i&&v===u,isNext:!p&&r<n,quarter:v})}}return l}),ee=(0,_vue.computed)(()=>{var e=Z.value;return _xeUtils.default.chunk(e,2)}),te=(0,_vue.computed)(()=>{var t=o.monthSize,{selectMonth:a,currentDate:e}=h,l=[];if(a&&e){var i=e.getFullYear(),u=e.getMonth(),s=_xeUtils.default.getWhatYear(a,0,"first").getFullYear();for(let e=-4;e<t-4;e++){var r=_xeUtils.default.getWhatYear(a,0,e),d=r.getFullYear(),n=r.getMonth(),v=d<s;l.push({date:r,isPrev:v,isCurrent:d===s,isNow:d===i&&n===u,isNext:!v&&s<d,month:n})}}return l}),ae=(0,_vue.computed)(()=>{var e=te.value;return _xeUtils.default.chunk(e,4)}),le=(0,_vue.computed)(()=>{var{selectMonth:t,currentDate:e}=h,a=[];if(t&&e){var l=Q.value,i=G.value,u=e.getFullYear(),s=e.getMonth(),r=e.getDate(),d=t.getFullYear(),n=t.getMonth(),e=t.getDay(),i=-i.indexOf(e),v=new Date(_xeUtils.default.getWhatDay(t,i).getTime()+l);for(let e=0;e<42;e++){var p=_xeUtils.default.getWhatDay(v,e),o=p.getFullYear(),m=p.getMonth(),c=p.getDate(),_=p<t;a.push({date:p,isPrev:_,isCurrent:o===d&&m===n,isNow:o===u&&m===s&&c===r,isNext:!_&&n!==m,label:c})}}return a}),ie=(0,_vue.computed)(()=>{var e=le.value;return _xeUtils.default.chunk(e,7)}),ue=(0,_vue.computed)(()=>{var e=ie.value;let a=b.value;return e.map(e=>{var t=e[0];return[{date:t.date,isWeekNumber:!0,isPrev:!1,isCurrent:!1,isNow:!1,isNext:!1,label:_xeUtils.default.getYearWeek(t.date,a)}].concat(e)})}),se=(0,_vue.computed)(()=>{let{hours:e,hourDisabledMethod:a}=i.value,l=[];if(v.value)if(e&&e.length)e.forEach(e=>{var t;_xeUtils.default.isNumber(e)||_xeUtils.default.isString(e)?(t=_xeUtils.default.toNumber(e),l.push({value:t,label:(""+t).padStart(2,"0"),disabled:!(!a||!a({hour:t}))})):e&&(t=_xeUtils.default.toNumber(e.value),l.push({value:t,label:(""+(e.label||t)).padStart(2,"0"),disabled:_xeUtils.default.isBoolean(e.disabled)?e.disabled:!(!a||!a({hour:t}))}))});else for(let e=0;e<24;e++){var t=e;l.push({value:t,label:(""+t).padStart(2,"0"),disabled:!(!a||!a({hour:t}))})}return l}),re=(0,_vue.computed)(()=>{let{minutes:e,minuteDisabledMethod:a}=i.value,l=[];if(v.value)if(e&&e.length)e.forEach(e=>{var t;_xeUtils.default.isNumber(e)||_xeUtils.default.isString(e)?(t=_xeUtils.default.toNumber(e),l.push({value:t,label:(""+t).padStart(2,"0"),disabled:!(!a||!a({minute:t}))})):e&&(t=_xeUtils.default.toNumber(e.value),l.push({value:t,label:(""+(e.label||t)).padStart(2,"0"),disabled:_xeUtils.default.isBoolean(e.disabled)?e.disabled:!(!a||!a({minute:t}))}))});else for(let e=0;e<60;e++){var t=e;l.push({value:t,label:(""+t).padStart(2,"0"),disabled:!(!a||!a({minute:t}))})}return l}),de=(0,_vue.computed)(()=>{var e=p.timeFormat,t=f.value;return!/HH/.test(e||t)||/mm/.test(e||t)}),ne=(0,_vue.computed)(()=>{var e=p.timeFormat,t=f.value;return!/HH/.test(e||t)||/ss/.test(e||t)}),ve=(0,_vue.computed)(()=>{let{seconds:e,secondDisabledMethod:a}=i.value,l=[];if(v.value)if(e&&e.length)e.forEach(e=>{var t;_xeUtils.default.isNumber(e)||_xeUtils.default.isString(e)?(t=_xeUtils.default.toNumber(e),l.push({value:t,label:(""+t).padStart(2,"0"),disabled:!(!a||!a({second:t}))})):e&&(t=_xeUtils.default.toNumber(e.value),l.push({value:t,label:(""+(e.label||t)).padStart(2,"0"),disabled:_xeUtils.default.isBoolean(e.disabled)?e.disabled:!(!a||!a({second:t}))}))});else for(let e=0;e<60;e++){var t=e;l.push({value:t,label:(""+t).padStart(2,"0"),disabled:!(!a||!a({second:t}))})}return l}),pe=e=>{var t=p.type,a=f.value,e=(0,_util.parseDateValue)(e,t,{valueFormat:a});h.inputValue=e,h.inputLabel=e,Te()},D=(e,t)=>{var{type:a,multiple:l}=p;return"time"===a?(0,_util.toStringTimeDate)(e):_xeUtils.default.isArray(e)?_xeUtils.default.toStringDate(e[0],t):_xeUtils.default.isString(e)?_xeUtils.default.toStringDate(l?_xeUtils.default.last(e.split(",")):e,t):_xeUtils.default.toStringDate(e,t)},oe=a=>{var l=p.type,{inputLabel:i,datetimePanelValue:u}=h,s=y.value;if(a){let t=D(a,s);if(_xeUtils.default.isValidDate(t))if("time"===l)i!==(t=_xeUtils.default.toDateString(t,s))&&w(t,{type:"check"}),h.inputLabel=t;else{let e=!1;i=b.value;"datetime"===l?(l=x.value,a===_xeUtils.default.toDateString(l,s)&&a===_xeUtils.default.toDateString(t,s)||(e=!0,u&&(u.setHours(t.getHours()),u.setMinutes(t.getMinutes()),u.setSeconds(t.getSeconds())))):e=!0,h.inputLabel=_xeUtils.default.toDateString(t,s,{firstDay:i}),e&&P(t)}else h.inputLabel=p.multiple?n.value:h.datePanelLabel}else w("",{type:"check"})},U=e=>{h.inputValue=e,Y("update:modelValue",e)},w=(e,t)=>{var a,{type:l,modelValue:i,valueFormat:u}=p,s=f.value;h.inputLabel=e,(0,_util.hasTimestampValueType)(u)?(a=(a=(0,_util.parseDateValue)(e,l,{valueFormat:s}))?a.getTime():null,U(a),i!==a&&q("change",{value:a},t)):(0,_util.hasDateValueType)(u)?(a=(0,_util.parseDateValue)(e,l,{valueFormat:s}),U(a),(i&&a?_xeUtils.default.toStringDate(i).getTime()!==a.getTime():i!==a)&&q("change",{value:a},t)):(U(e),_xeUtils.default.toValueString(i)!==e&&q("change",{value:e},t))},s=()=>new Promise(e=>{h.visiblePanel=!1,o.hpTimeout=setTimeout(()=>{h.isAniVisible=!1,e()},350)}),u=e=>{var t=p.type,a=y.value,l=f.value,i=b.value,e=(0,_util.parseDateObj)(e,t,{valueFormat:l,labelFormat:a,firstDay:i});h.datePanelValue=e.value,h.datePanelLabel=e.label},me=()=>{var e=r.value,t=h.inputLabel;e&&(u(t),h.inputLabel=p.multiple?n.value:h.datePanelLabel)},ce=()=>{var e=p.modelValue,t=r.value;pe(e),t&&me()},S=e=>{var t=b.value,a=_xeUtils.default.getYearWeek(e,t),t=_xeUtils.default.getWhatWeek(e,0,t,t),a=_xeUtils.default.getWhatMonth(1===a?_xeUtils.default.getWhatDay(t,6):e,0,"first");_xeUtils.default.isEqual(a,h.selectMonth)||(h.selectMonth=a)},P=(a,e)=>{var{modelValue:t,multiple:l}=p;let i=h.datetimePanelValue;var u=v.value;let s=f.value;var r=b.value;"week"===p.type?(n=_xeUtils.default.toNumber(p.selectDay),a=_xeUtils.default.getWhatWeek(a,0,n,r)):u&&i&&(a.setHours(i.getHours()),a.setMinutes(i.getMinutes()),a.setSeconds(i.getSeconds()));let d=_xeUtils.default.toDateString(a,s,{firstDay:r});if(S(a),l){var n=_.value;if(u){r=e?[]:[...m.value];let t=[];l=_xeUtils.default.findIndexOf(r,e=>_xeUtils.default.isDateSame(a,e,"yyyyMMdd"));if(-1===l){if(n)return;r.push(a)}else r.splice(l,1);r.forEach(e=>{e&&(i&&(e.setHours(i.getHours()),e.setMinutes(i.getMinutes()),e.setSeconds(i.getSeconds())),t.push(e))}),w(t.map(e=>_xeUtils.default.toDateString(e,s)).join(","),{type:"update"})}else{u=e?[]:c.value;u.some(e=>_xeUtils.default.isEqual(e,d))?w(u.filter(e=>!_xeUtils.default.isEqual(e,d)).join(","),{type:"update"}):n||w(u.concat([d]).join(","),{type:"update"})}}else _xeUtils.default.isEqual(t,d)||w(d,{type:"update"})},M=(e,t)=>{var a=b.value,l=_xeUtils.default.getYearWeek(e,a),a=_xeUtils.default.getWhatWeek(e,0,a,a),l=_xeUtils.default.getWhatMonth(1===l?_xeUtils.default.getWhatDay(a,6):e,t,"first");h.selectMonth=l},_e=()=>{var e=p.type,t=b.value;let a=new Date;switch(e){case"week":a=_xeUtils.default.getWhatWeek(a,0,t);break;case"datetime":a=new Date,h.datetimePanelValue=new Date;break;default:a=_xeUtils.default.getWhatDay(Date.now(),0,"first")}h.currentDate=a,M(a,0)},he=()=>{h.datePanelType="year"},fe=()=>{let e=h.datePanelType;e="month"===e||"quarter"===e?"year":"month",h.datePanelType=e},xe=t=>{var a=p.type,{datePanelType:l,selectMonth:i,inputLabel:u}=h,s=o.yearSize;if(!A.value){let e;e="year"===a?_xeUtils.default.getWhatYear(i,-s,"first"):"month"===a||"quarter"===a?"year"===l?_xeUtils.default.getWhatYear(i,-s,"first"):_xeUtils.default.getWhatYear(i,-1,"first"):"year"===l?_xeUtils.default.getWhatYear(i,-s,"first"):"month"===l?_xeUtils.default.getWhatYear(i,-1,"first"):_xeUtils.default.getWhatMonth(i,-1,"first"),h.selectMonth=e,q("date-prev",{viewType:l,viewDate:e,value:u,type:a},t)}},ye=e=>{_e(),P(h.currentDate,!0),p.multiple||s(),q("date-today",{type:p.type},e)},ge=t=>{var a=p.type,{datePanelType:l,selectMonth:i,inputLabel:u}=h,s=o.yearSize;if(!B.value){let e;e="year"===a?_xeUtils.default.getWhatYear(i,s,"first"):"month"===a||"quarter"===a?"year"===l?_xeUtils.default.getWhatYear(i,s,"first"):_xeUtils.default.getWhatYear(i,1,"first"):"year"===l?_xeUtils.default.getWhatYear(i,s,"first"):"month"===l?_xeUtils.default.getWhatYear(i,1,"first"):_xeUtils.default.getWhatMonth(i,1,"first"),h.selectMonth=e,q("date-next",{viewType:l,value:u,type:a},t)}},k=e=>{var t=j.value,a=I.value,e=e.date;return!!(t&&t.getTime()>e.getTime())||!!(a&&a.getTime()<e.getTime())},V=e=>{var t=p.disabledMethod,a=h.datePanelType,e=e.date;return!!t&&t({type:a,viewType:a,date:e,$datePanel:d})},l=e=>k(e)||V(e),be=e=>{var{type:t,multiple:a}=p,l=h.datePanelType;"month"===t?"year"===l?(h.datePanelType="month",S(e)):(P(e),a||s()):"year"===t?(P(e),a||s()):"quarter"===t?"year"===l?(h.datePanelType="quarter",S(e)):(P(e),a||s()):"month"===l?(h.datePanelType="week"===t?t:"day",S(e)):"year"===l?(h.datePanelType="month",S(e)):(P(e),"datetime"===t||a||s())},T=e=>{l(e)||be(e.date)},De=t=>{l({date:t})||(le.value.some(e=>_xeUtils.default.isDateSame(e.date,t,"yyyyMMdd"))||S(t),u(t))},Ue=t=>{l({date:t})||(g.value.some(e=>_xeUtils.default.isDateSame(e.date,t,"yyyy"))||S(t),u(t))},we=t=>{l({date:t})||(Z.value.some(e=>_xeUtils.default.isDateSame(e.date,t,"yyyyq"))||S(t),u(t))},Se=t=>{l({date:t})||(te.value.some(e=>_xeUtils.default.isDateSame(e.date,t,"yyyyMM"))||S(t),u(t))},N=e=>{var t;l(e)||(t=h.datePanelType,("month"===t?Se:"quarter"===t?we:"year"===t?Ue:De)(e.date))},C=()=>{h.datePanelValue=null},Pe=e=>{var t;e&&(t=e.offsetHeight,e.parentNode.scrollTop=e.offsetTop-4*t)},W=e=>{var t=h.datetimePanelValue;h.datetimePanelValue=t?new Date(t.getTime()):new Date,Pe(e.currentTarget)},Me=(e,t)=>{var a=h.datetimePanelValue;t.disabled||(a&&a.setHours(t.value),W(e))},ke=(e,t)=>{var a=h.datetimePanelValue;t.disabled||(a&&a.setMinutes(t.value),W(e))},Ve=(e,t)=>{var a=h.datetimePanelValue;t.disabled||(a&&a.setSeconds(t.value),W(e))},Te=()=>{var{type:e,defaultDate:t,defaultTime:a}=p,l=v.value,i=x.value;if(-1<["year","quarter","month","week"].indexOf(e)?h.datePanelType=e:h.datePanelType="day",h.currentDate=_xeUtils.default.getWhatDay(Date.now(),0,"first"),i?(M(i,0),u(i)):t&&(e=D(t,"yyyy-MM-dd"),_xeUtils.default.isValidDate(e))?M(e,0):_e(),l){let e=h.datePanelValue;e||(e=_xeUtils.default.getWhatDay(Date.now(),0,"first"),a&&(i=(0,_util.toStringTimeDate)(a),_xeUtils.default.isValidDate(i))&&(e.setHours(i.getHours()),e.setMinutes(i.getMinutes()),e.setSeconds(i.getSeconds()))),h.datetimePanelValue=e,(0,_vue.nextTick)(()=>{var e=L.value;_xeUtils.default.arrayEach(e.querySelectorAll("li.is--selected"),e=>{Pe(e)})})}},q=(e,t,a)=>{Y(e,(0,_ui.createEvent)(a,{$datePanel:d},t))};t={dispatchEvent:q,getModelValue(){return h.inputValue},setPanelDate(e){e&&S(e)},getPanelDate(){return h.selectMonth},checkValue(e){oe(e)},confirmByEvent(e){(e=>{var t=p.multiple;let l=h.datetimePanelValue;var i=x.value,u=v.value;if(u){let a=f.value;if(t){t=c.value;if(u){u=[...m.value];let t=[];u.forEach(e=>{e&&(l&&(e.setHours(l.getHours()),e.setMinutes(l.getMinutes()),e.setSeconds(l.getSeconds())),t.push(e))}),w(t.map(e=>_xeUtils.default.toDateString(e,a)).join(","),{type:"update"})}else w(t.join(","),{type:"update"})}else P(i||h.currentDate)}s(),q("confirm",{},e)})(e)}};Object.assign(d,t);let F=(e,t)=>{var a,l=p.festivalMethod,i=[];return l&&(a=h.datePanelType,e=(a=(l=l({type:a,viewType:a,date:e.date,$datePanel:d}))?_xeUtils.default.isString(l)?{label:l}:l:{}).extra?_xeUtils.default.isString(a.extra)?{label:a.extra}:a.extra:null,i.push((0,_vue.h)("div",{class:["vxe-date-panel--label",{"is-notice":a.notice}]},e&&e.label?[(0,_vue.h)("div",{class:"vxe-date-panel--label--number"},""+t),(0,_vue.h)("div",{class:["vxe-date-panel--label--extra",e.important?"is-important":"",e.className],style:e.style},_xeUtils.default.toValueString(e.label))]:""+t)),l=a.label)&&(e=_xeUtils.default.toValueString(l).split(","),i.push((0,_vue.h)("div",{class:["vxe-date-panel--festival",a.important?"is-important":"",a.className],style:a.style},[1<e.length?(0,_vue.h)("div",{class:["vxe-date-panel--festival--overlap","overlap--"+e.length]},e.map(e=>(0,_vue.h)("div",e.substring(0,3)))):(0,_vue.h)("div",{class:"vxe-date-panel--festival--label"},e[0].substring(0,3))]))),i},Ne=()=>{let l=p.multiple,{datePanelType:e,datePanelValue:i}=h,u=x.value,t=J.value,s=ie.value,r=m.value,d=_.value,n="yyyyMMdd";return[(0,_vue.h)("div",{class:["vxe-date-panel--view-wrapper","type--"+e]},[(0,_vue.h)("div",{class:"vxe-date-panel--view-header"},[(0,_vue.h)("div",{class:"vxe-date-panel--view-row"},t.map(e=>(0,_vue.h)("div",{class:"vxe-date-panel--view-item",style:{width:100/t.length+"%"}},[(0,_vue.h)("div",{class:"vxe-date-panel--view-item-inner"},[(0,_vue.h)("div",{class:"vxe-date-panel--view-item-label"},e.label)])])))]),(0,_vue.h)("div",{class:"vxe-date-panel--view-body"},s.map(a=>(0,_vue.h)("div",{class:"vxe-date-panel--view-row",style:{height:100/s.length+"%"}},a.map(t=>{var e=l?r.some(e=>_xeUtils.default.isDateSame(e,t.date,n)):_xeUtils.default.isDateSame(u,t.date,n);return(0,_vue.h)("div",{class:["vxe-date-panel--view-item",{"is--prev":t.isPrev,"is--current":t.isCurrent,"is--now":t.isNow,"is--next":t.isNext,"is--range-disabled":k(t),"is--disabled":V(t),"is--selected":e,"is--over":d&&!e,"is--hover":!d&&_xeUtils.default.isDateSame(i,t.date,n)}],style:{width:100/a.length+"%"},onClick:()=>T(t),onMouseenter:()=>N(t),onMouseleave:C},[(0,_vue.h)("div",{class:"vxe-date-panel--view-item-inner"},F(t,t.label))])}))))])]},Ce=()=>{let t=p.multiple,{datePanelType:e,datePanelValue:u}=h,s=x.value;var a=K.value;let r=ue.value,d=m.value,n=_.value,v="yyyyMMdd";return[(0,_vue.h)("div",{class:["vxe-date-panel--view-wrapper","type--"+e]},[(0,_vue.h)("div",{class:"vxe-date-panel--view-header"},[(0,_vue.h)("div",{class:"vxe-date-panel--view-row"},a.map((e,t)=>(0,_vue.h)("div",{class:"vxe-date-panel--view-item",style:{width:`${t?13:9}%`}},[(0,_vue.h)("div",{class:"vxe-date-panel--view-item-inner"},[(0,_vue.h)("div",{class:"vxe-date-panel--view-item-label"},e.label)])])))]),(0,_vue.h)("div",{class:"vxe-date-panel--view-body"},r.map(e=>{let a=t?e.some(t=>d.some(e=>_xeUtils.default.isDateSame(e,t.date,v))):e.some(e=>_xeUtils.default.isDateSame(s,e.date,v)),l=e.some(e=>_xeUtils.default.isDateSame(u,e.date,v)),i=e.some(e=>e.isNow);return(0,_vue.h)("div",{class:"vxe-date-panel--view-row",style:{height:100/r.length+"%"}},e.map((e,t)=>(0,_vue.h)("div",{class:["vxe-date-panel--view-item",{"is--prev":e.isPrev,"is--current":e.isCurrent,"is--now":t?e.isNow:i,"is--next":e.isNext,"is--range-disabled":k(e),"is--disabled":V(e),"is--selected":a,"is--over":n&&!a,"is--hover":!n&&l}],style:{width:`${t?13:9}%`},onClick:()=>T(e),onMouseenter:()=>N(e),onMouseleave:C},[(0,_vue.h)("div",{class:"vxe-date-panel--view-item-inner"},F(e,e.label))])))}))])]},We=()=>{let l=p.multiple,{datePanelType:e,datePanelValue:i}=h,u=x.value,t=ae.value,s=m.value,r=_.value,d="yyyyMM";return[(0,_vue.h)("div",{class:["vxe-date-panel--view-wrapper","type--"+e]},[(0,_vue.h)("div",{class:"vxe-date-panel--view-body"},t.map(a=>(0,_vue.h)("div",{class:"vxe-date-panel--view-row",style:{height:100/t.length+"%"}},a.map(t=>{var e=l?s.some(e=>_xeUtils.default.isDateSame(e,t.date,d)):_xeUtils.default.isDateSame(u,t.date,d);return(0,_vue.h)("div",{class:["vxe-date-panel--view-item",{"is--prev":t.isPrev,"is--current":t.isCurrent,"is--now":t.isNow,"is--next":t.isNext,"is--range-disabled":k(t),"is--disabled":V(t),"is--selected":e,"is--over":r&&!e,"is--hover":!r&&_xeUtils.default.isDateSame(i,t.date,d)}],style:{width:100/a.length+"%"},onClick:()=>T(t),onMouseenter:()=>N(t),onMouseleave:C},[(0,_vue.h)("div",{class:"vxe-date-panel--view-item-inner"},F(t,(0,_ui.getI18n)("vxe.input.date.months.m"+t.month)))])}))))])]},qe=()=>{let l=p.multiple,{datePanelType:e,datePanelValue:i}=h,u=x.value,t=ee.value,s=m.value,r=_.value,d="yyyyq";return[(0,_vue.h)("div",{class:["vxe-date-panel--view-wrapper","type--"+e]},[(0,_vue.h)("div",{class:"vxe-date-panel--view-body"},t.map(a=>(0,_vue.h)("div",{class:"vxe-date-panel--view-row",style:{height:100/t.length+"%"}},a.map(t=>{var e=l?s.some(e=>_xeUtils.default.isDateSame(e,t.date,d)):_xeUtils.default.isDateSame(u,t.date,d);return(0,_vue.h)("div",{class:["vxe-date-panel--view-item",{"is--prev":t.isPrev,"is--current":t.isCurrent,"is--now":t.isNow,"is--next":t.isNext,"is--range-disabled":k(t),"is--disabled":V(t),"is--selected":e,"is--over":r&&!e,"is--hover":!r&&_xeUtils.default.isDateSame(i,t.date,d)}],style:{width:100/a.length+"%"},onClick:()=>T(t),onMouseenter:()=>N(t),onMouseleave:C},[(0,_vue.h)("div",{class:"vxe-date-panel--view-item-inner"},F(t,(0,_ui.getI18n)("vxe.input.date.quarters.q"+t.quarter)))])}))))])]},Fe=()=>{let l=p.multiple,{datePanelType:e,datePanelValue:i}=h,u=x.value,t=X.value,s=m.value,r=_.value,d="yyyy";return[(0,_vue.h)("div",{class:["vxe-date-panel--view-wrapper","type--"+e]},[(0,_vue.h)("div",{class:"vxe-date-panel--view-body"},t.map(a=>(0,_vue.h)("div",{class:"vxe-date-panel--view-row",style:{height:100/t.length+"%"}},a.map(t=>{var e=l?s.some(e=>_xeUtils.default.isDateSame(e,t.date,d)):_xeUtils.default.isDateSame(u,t.date,d);return(0,_vue.h)("div",{class:["vxe-date-panel--view-item",{"is--prev":t.isPrev,"is--current":t.isCurrent,"is--now":t.isNow,"is--next":t.isNext,"is--range-disabled":k(t),"is--disabled":V(t),"is--selected":e,"is--over":r&&!e,"is--hover":!r&&_xeUtils.default.isDateSame(i,t.date,d)}],style:{width:100/a.length+"%"},onClick:()=>T(t),onMouseenter:()=>N(t),onMouseleave:C},[(0,_vue.h)("div",{class:"vxe-date-panel--view-item-inner"},F(t,t.year))])}))))])]},Ye=()=>{var e=h.datePanelType;switch(e){case"week":return Ce();case"month":return We();case"quarter":return qe();case"year":return Fe()}return Ne()},He=()=>{var e=h.datePanelType,t=A.value,a=B.value,l=R.value;return[(0,_vue.h)("div",{class:"vxe-date-panel--picker-header"},[(0,_vue.h)("div",{class:"vxe-date-panel--picker-type-wrapper"},["year"===e?(0,_vue.h)("span",{class:"vxe-date-panel--picker-label"},l.y):(0,_vue.h)("span",{class:"vxe-date-panel--picker-btns"},[(0,_vue.h)("span",{class:"vxe-date-panel--picker-btn",onClick:he},l.y),l.m?(0,_vue.h)("span",{class:"vxe-date-panel--picker-btn",onClick:fe},l.m):(0,_ui.renderEmptyElement)(d)])]),(0,_vue.h)("div",{class:"vxe-date-panel--picker-btn-wrapper"},[(0,_vue.h)("span",{class:["vxe-date-panel--picker-btn vxe-date-panel--picker-prev-btn",{"is--disabled":t}],onClick:xe},[(0,_vue.h)("i",{class:"vxe-icon-caret-left"})]),(0,_vue.h)("span",{class:"vxe-date-panel--picker-btn vxe-date-panel--picker-current-btn",onClick:ye},[(0,_vue.h)("i",{class:"vxe-icon-dot"})]),(0,_vue.h)("span",{class:["vxe-date-panel--picker-btn vxe-date-panel--picker-next-btn",{"is--disabled":a}],onClick:ge},[(0,_vue.h)("i",{class:"vxe-icon-caret-right"})])])]),(0,_vue.h)("div",{class:"vxe-date-panel--picker-body"},Ye())]},Ee=()=>{var e=p.type;let a=h.datetimePanelValue;var t=$.value,l=se.value,i=de.value,u=re.value,s=ne.value,r=ve.value;return["time"===e?(0,_ui.renderEmptyElement)(d):(0,_vue.h)("div",{class:"vxe-date-panel--time-header"},[(0,_vue.h)("div",{class:"vxe-date-panel--time-title"},t)]),(0,_vue.h)("div",{ref:L,class:"vxe-date-panel--time-body"},[(0,_vue.h)("ul",{class:"vxe-date-panel--time-hour-list"},l.map((t,e)=>(0,_vue.h)("li",{key:e,class:{"is--disabled":t.disabled,"is--selected":a&&a.getHours()===t.value},onClick:e=>Me(e,t)},t.label))),i?(0,_vue.h)("ul",{class:"vxe-date-panel--time-minute-list"},u.map((t,e)=>(0,_vue.h)("li",{key:e,class:{"is--disabled":t.disabled,"is--selected":a&&a.getMinutes()===t.value},onClick:e=>ke(e,t)},t.label))):(0,_ui.renderEmptyElement)(d),i&&s?(0,_vue.h)("ul",{class:"vxe-date-panel--time-second-list"},r.map((t,e)=>(0,_vue.h)("li",{key:e,class:{"is--disabled":t.disabled,"is--selected":a&&a.getSeconds()===t.value},onClick:e=>Ve(e,t)},t.label))):(0,_ui.renderEmptyElement)(d)])]};return(0,_vue.watch)(()=>p.modelValue,e=>{pe(e),me()}),(0,_vue.watch)(()=>p.type,()=>{Object.assign(h,{inputLabel:"",datetimePanelValue:null,datePanelValue:null,datePanelLabel:"",datePanelType:"day",selectMonth:null,currentDate:null}),ce()}),(0,_vue.watch)(y,()=>{r.value&&(u(h.datePanelValue),h.inputLabel=p.multiple?n.value:h.datePanelLabel)}),ce(),Te(),d.renderVN=()=>{var e=p.type,t=E.value;return(0,_vue.h)("div",{class:["vxe-date-panel","type--"+e,{["size--"+t]:t}]},["datetime"===(e=p.type)?(0,_vue.h)("div",{key:e,ref:a,class:"vxe-date-panel--time-layout-wrapper"},[(0,_vue.h)("div",{class:"vxe-date-panel--time-left-wrapper"},He()),(0,_vue.h)("div",{class:"vxe-date-panel--time-right-wrapper"},Ee())]):"time"===e?(0,_vue.h)("div",{key:e,ref:a,class:"vxe-date-panel--wrapper"},Ee()):(0,_vue.h)("div",{key:e||"default",ref:a,class:"vxe-date-panel--wrapper"},He())])},d},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"),_util=require("./util");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeDatePanel",props:{modelValue:[String,Number,Date],type:{type:String,default:"date"},className:String,size:{type:String,default:()=>(0,_ui.getConfig)().datePanel.size||(0,_ui.getConfig)().size},multiple:Boolean,limitCount:{type:[String,Number],default:()=>(0,_ui.getConfig)().datePanel.limitCount},startDate:{type:[String,Number,Date],default:()=>(0,_ui.getConfig)().datePanel.startDate},endDate:{type:[String,Number,Date],default:()=>(0,_ui.getConfig)().datePanel.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)().datePanel.startDay},labelFormat:String,valueFormat:String,timeFormat:String,festivalMethod:{type:Function,default:()=>(0,_ui.getConfig)().datePanel.festivalMethod},disabledMethod:{type:Function,default:()=>(0,_ui.getConfig)().datePanel.disabledMethod},timeConfig:Object,selectDay:{type:[String,Number],default:()=>(0,_ui.getConfig)().datePanel.selectDay}},emits:["update:modelValue","change","click","clear","date-prev","date-today","date-next","confirm","revert"],setup(p,e){let Y=e.emit;var H=_xeUtils.default.uniqueId();let E=(0,_ui.useSize)(p).computeSize,h=(0,_vue.reactive)({visiblePanel:!1,isAniVisible:!1,isActivated:!1,inputValue:"",inputLabel:"",datetimePanelValue:null,datePanelValue:null,datePanelLabel:"",datePanelType:"day",selectMonth:null,currentDate:null}),o={yearSize:12,monthSize:20,quarterSize:8,hpTimeout:void 0};var t=(0,_vue.ref)();let a=(0,_vue.ref)(),L=(0,_vue.ref)(),z={refElem:t},d={xID:H,props:p,context:e,reactData:h,internalData:o,getRefMaps:()=>z},v=(0,_vue.computed)(()=>{var e=p.type;return"time"===e||"datetime"===e}),r=(0,_vue.computed)(()=>v.value||-1<["date","week","month","quarter","year"].indexOf(p.type)),j=(0,_vue.computed)(()=>p.startDate?_xeUtils.default.toStringDate(p.startDate):null),I=(0,_vue.computed)(()=>p.endDate?_xeUtils.default.toStringDate(p.endDate):null),m=(0,_vue.computed)(()=>{var{modelValue:e,multiple:t}=p,a=r.value;let l=f.value;return t&&e&&a?_xeUtils.default.toValueString(e).split(",").map(e=>{e=D(e,l);return _xeUtils.default.isValidDate(e),e}):[]}),c=(0,_vue.computed)(()=>{var e=m.value;let t=f.value;return e.map(e=>_xeUtils.default.toDateString(e,t))}),n=(0,_vue.computed)(()=>{var e=m.value;let t=y.value;return e.map(e=>_xeUtils.default.toDateString(e,t)).join(", ")}),O=(0,_vue.computed)(()=>p.multiple?_xeUtils.default.toNumber(p.limitCount):0),_=(0,_vue.computed)(()=>{var e=p.multiple,t=O.value,a=c.value;return!(!e||!t)&&a.length>=t}),i=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().datePanel.timeConfig,p.timeConfig)),f=(0,_vue.computed)(()=>{var{type:e,valueFormat:t}=p;return(0,_util.handleValueFormat)(e,t)}),x=(0,_vue.computed)(()=>{var e=p.modelValue,t=r.value,a=f.value;let l=null;return l=e&&t&&(t=D(e,a),_xeUtils.default.isValidDate(t))?t:l}),A=(0,_vue.computed)(()=>{var e=j.value,t=h.selectMonth;return!(!t||!e)&&t<=e}),B=(0,_vue.computed)(()=>{var e=I.value,t=h.selectMonth;return!(!t||!e)&&_xeUtils.default.getWhatMonth(t,0,"last")>=e}),$=(0,_vue.computed)(()=>{var e=h.datetimePanelValue,t=ne.value,a=de.value;return e?_xeUtils.default.toDateString(e,a&&t?"HH:mm:ss":a?"HH:mm":"HH"):""}),Q=(0,_vue.computed)(()=>{var e=x.value,t=v.value;return e&&t?1e3*(3600*e.getHours()+60*e.getMinutes()+e.getSeconds()):0}),y=(0,_vue.computed)(()=>{var e=p.labelFormat;return r.value?e||(0,_ui.getI18n)("vxe.input.date.labelFormat."+p.type):""}),g=(0,_vue.computed)(()=>{var t=o.yearSize,{selectMonth:e,currentDate:a}=h,l=[];if(e&&a){var i=a.getFullYear(),a=e.getFullYear(),u=new Date(a-a%t,0,1);for(let e=-4;e<t+4;e++){var s=_xeUtils.default.getWhatYear(u,e,"first"),r=s.getFullYear();l.push({date:s,isCurrent:!0,isPrev:e<0,isNow:i===r,isNext:e>=t,year:r})}}return l}),R=(0,_vue.computed)(()=>{let a="",l="";if(r.value){var{datePanelType:i,selectMonth:u}=h,s=g.value;let e="",t;u&&(e=u.getFullYear(),t=u.getMonth()+1),"quarter"===i||"month"===i?a=(0,_ui.getI18n)("vxe.datePicker.yearTitle",[e]):"year"===i?a=s.length?s[0].year+" - "+s[s.length-1].year:"":(a=(0,_ui.getI18n)("vxe.datePicker.yearTitle",[e]),l=t?(0,_ui.getI18n)("vxe.input.date.m"+t):"-")}return{y:a,m:l}}),b=(0,_vue.computed)(()=>{var e=p.startDay;return _xeUtils.default.toNumber(e)}),G=(0,_vue.computed)(()=>{var a=[];if(r.value){let t=b.value;a.push(t);for(let e=0;e<6;e++)6<=t?t=0:t++,a.push(t)}return a}),J=(0,_vue.computed)(()=>r.value?G.value.map(e=>({value:e,label:(0,_ui.getI18n)("vxe.input.date.weeks.w"+e)})):[]),K=(0,_vue.computed)(()=>{var e;return r.value?(e=J.value,[{label:(0,_ui.getI18n)("vxe.input.date.weeks.w")}].concat(e)):[]}),X=(0,_vue.computed)(()=>{var e=g.value;return _xeUtils.default.chunk(e,4)}),Z=(0,_vue.computed)(()=>{var t=o.quarterSize,{selectMonth:e,currentDate:a}=h,l=[];if(e&&a){var i=a.getFullYear(),u=(0,_util.getDateQuarter)(a),s=_xeUtils.default.getWhatYear(e,0,"first"),r=s.getFullYear();for(let e=-2;e<t-2;e++){var d=_xeUtils.default.getWhatQuarter(s,e),n=d.getFullYear(),v=(0,_util.getDateQuarter)(d),p=n<r;l.push({date:d,isPrev:p,isCurrent:n===r,isNow:n===i&&v===u,isNext:!p&&r<n,quarter:v})}}return l}),ee=(0,_vue.computed)(()=>{var e=Z.value;return _xeUtils.default.chunk(e,2)}),te=(0,_vue.computed)(()=>{var t=o.monthSize,{selectMonth:a,currentDate:e}=h,l=[];if(a&&e){var i=e.getFullYear(),u=e.getMonth(),s=_xeUtils.default.getWhatYear(a,0,"first").getFullYear();for(let e=-4;e<t-4;e++){var r=_xeUtils.default.getWhatYear(a,0,e),d=r.getFullYear(),n=r.getMonth(),v=d<s;l.push({date:r,isPrev:v,isCurrent:d===s,isNow:d===i&&n===u,isNext:!v&&s<d,month:n})}}return l}),ae=(0,_vue.computed)(()=>{var e=te.value;return _xeUtils.default.chunk(e,4)}),le=(0,_vue.computed)(()=>{var{selectMonth:t,currentDate:e}=h,a=[];if(t&&e){var l=Q.value,i=G.value,u=e.getFullYear(),s=e.getMonth(),r=e.getDate(),d=t.getFullYear(),n=t.getMonth(),e=t.getDay(),i=-i.indexOf(e),v=new Date(_xeUtils.default.getWhatDay(t,i).getTime()+l);for(let e=0;e<42;e++){var p=_xeUtils.default.getWhatDay(v,e),o=p.getFullYear(),m=p.getMonth(),c=p.getDate(),_=p<t;a.push({date:p,isPrev:_,isCurrent:o===d&&m===n,isNow:o===u&&m===s&&c===r,isNext:!_&&n!==m,label:c})}}return a}),ie=(0,_vue.computed)(()=>{var e=le.value;return _xeUtils.default.chunk(e,7)}),ue=(0,_vue.computed)(()=>{var e=ie.value;let a=b.value;return e.map(e=>{var t=e[0];return[{date:t.date,isWeekNumber:!0,isPrev:!1,isCurrent:!1,isNow:!1,isNext:!1,label:_xeUtils.default.getYearWeek(t.date,a)}].concat(e)})}),se=(0,_vue.computed)(()=>{let{hours:e,hourDisabledMethod:a}=i.value,l=[];if(v.value)if(e&&e.length)e.forEach(e=>{var t;_xeUtils.default.isNumber(e)||_xeUtils.default.isString(e)?(t=_xeUtils.default.toNumber(e),l.push({value:t,label:(""+t).padStart(2,"0"),disabled:!(!a||!a({hour:t}))})):e&&(t=_xeUtils.default.toNumber(e.value),l.push({value:t,label:(""+(e.label||t)).padStart(2,"0"),disabled:_xeUtils.default.isBoolean(e.disabled)?e.disabled:!(!a||!a({hour:t}))}))});else for(let e=0;e<24;e++){var t=e;l.push({value:t,label:(""+t).padStart(2,"0"),disabled:!(!a||!a({hour:t}))})}return l}),re=(0,_vue.computed)(()=>{let{minutes:e,minuteDisabledMethod:a}=i.value,l=[];if(v.value)if(e&&e.length)e.forEach(e=>{var t;_xeUtils.default.isNumber(e)||_xeUtils.default.isString(e)?(t=_xeUtils.default.toNumber(e),l.push({value:t,label:(""+t).padStart(2,"0"),disabled:!(!a||!a({minute:t}))})):e&&(t=_xeUtils.default.toNumber(e.value),l.push({value:t,label:(""+(e.label||t)).padStart(2,"0"),disabled:_xeUtils.default.isBoolean(e.disabled)?e.disabled:!(!a||!a({minute:t}))}))});else for(let e=0;e<60;e++){var t=e;l.push({value:t,label:(""+t).padStart(2,"0"),disabled:!(!a||!a({minute:t}))})}return l}),de=(0,_vue.computed)(()=>{var e=p.timeFormat,t=f.value;return!/HH/.test(e||t)||/mm/.test(e||t)}),ne=(0,_vue.computed)(()=>{var e=p.timeFormat,t=f.value;return!/HH/.test(e||t)||/ss/.test(e||t)}),ve=(0,_vue.computed)(()=>{let{seconds:e,secondDisabledMethod:a}=i.value,l=[];if(v.value)if(e&&e.length)e.forEach(e=>{var t;_xeUtils.default.isNumber(e)||_xeUtils.default.isString(e)?(t=_xeUtils.default.toNumber(e),l.push({value:t,label:(""+t).padStart(2,"0"),disabled:!(!a||!a({second:t}))})):e&&(t=_xeUtils.default.toNumber(e.value),l.push({value:t,label:(""+(e.label||t)).padStart(2,"0"),disabled:_xeUtils.default.isBoolean(e.disabled)?e.disabled:!(!a||!a({second:t}))}))});else for(let e=0;e<60;e++){var t=e;l.push({value:t,label:(""+t).padStart(2,"0"),disabled:!(!a||!a({second:t}))})}return l}),pe=e=>{var t=p.type,a=f.value,e=(0,_util.parseDateValue)(e,t,{valueFormat:a});h.inputValue=e,h.inputLabel=e,Te()},D=(e,t)=>{var{type:a,multiple:l}=p;return"time"===a?(0,_util.toStringTimeDate)(e):_xeUtils.default.isArray(e)?_xeUtils.default.toStringDate(e[0],t):_xeUtils.default.isString(e)?_xeUtils.default.toStringDate(l?_xeUtils.default.last(e.split(",")):e,t):_xeUtils.default.toStringDate(e,t)},oe=a=>{var l=p.type,{inputLabel:i,datetimePanelValue:u}=h,s=y.value;if(a){let t=D(a,s);if(_xeUtils.default.isValidDate(t))if("time"===l)i!==(t=_xeUtils.default.toDateString(t,s))&&w(t,{type:"check"}),h.inputLabel=t;else{let e=!1;i=b.value;"datetime"===l?(l=x.value,a===_xeUtils.default.toDateString(l,s)&&a===_xeUtils.default.toDateString(t,s)||(e=!0,u&&(u.setHours(t.getHours()),u.setMinutes(t.getMinutes()),u.setSeconds(t.getSeconds())))):e=!0,h.inputLabel=_xeUtils.default.toDateString(t,s,{firstDay:i}),e&&P(t)}else l=p.multiple?n.value:h.datePanelLabel,h.inputLabel=l,q("revert",{label:l},null)}else w("",{type:"check"})},U=e=>{h.inputValue=e,Y("update:modelValue",e)},w=(e,t)=>{var a,{type:l,modelValue:i,valueFormat:u}=p,s=f.value;h.inputLabel=e,(0,_util.hasTimestampValueType)(u)?(a=(a=(0,_util.parseDateValue)(e,l,{valueFormat:s}))?a.getTime():null,U(a),i!==a&&q("change",{value:a},t)):(0,_util.hasDateValueType)(u)?(a=(0,_util.parseDateValue)(e,l,{valueFormat:s}),U(a),(i&&a?_xeUtils.default.toStringDate(i).getTime()!==a.getTime():i!==a)&&q("change",{value:a},t)):(U(e),_xeUtils.default.toValueString(i)!==e&&q("change",{value:e},t))},s=()=>new Promise(e=>{h.visiblePanel=!1,o.hpTimeout=setTimeout(()=>{h.isAniVisible=!1,e()},350)}),u=e=>{var t=p.type,a=y.value,l=f.value,i=b.value,e=(0,_util.parseDateObj)(e,t,{valueFormat:l,labelFormat:a,firstDay:i});h.datePanelValue=e.value,h.datePanelLabel=e.label},me=()=>{var e=r.value,t=h.inputLabel;e&&(u(t),h.inputLabel=p.multiple?n.value:h.datePanelLabel)},ce=()=>{var e=p.modelValue,t=r.value;pe(e),t&&me()},S=e=>{var t=b.value,a=_xeUtils.default.getYearWeek(e,t),t=_xeUtils.default.getWhatWeek(e,0,t,t),a=_xeUtils.default.getWhatMonth(1===a?_xeUtils.default.getWhatDay(t,6):e,0,"first");_xeUtils.default.isEqual(a,h.selectMonth)||(h.selectMonth=a)},P=(a,e)=>{var{modelValue:t,multiple:l}=p;let i=h.datetimePanelValue;var u=v.value;let s=f.value;var r=b.value;"week"===p.type?(n=_xeUtils.default.toNumber(p.selectDay),a=_xeUtils.default.getWhatWeek(a,0,n,r)):u&&i&&(a.setHours(i.getHours()),a.setMinutes(i.getMinutes()),a.setSeconds(i.getSeconds()));let d=_xeUtils.default.toDateString(a,s,{firstDay:r});if(S(a),l){var n=_.value;if(u){r=e?[]:[...m.value];let t=[];l=_xeUtils.default.findIndexOf(r,e=>_xeUtils.default.isDateSame(a,e,"yyyyMMdd"));if(-1===l){if(n)return;r.push(a)}else r.splice(l,1);r.forEach(e=>{e&&(i&&(e.setHours(i.getHours()),e.setMinutes(i.getMinutes()),e.setSeconds(i.getSeconds())),t.push(e))}),w(t.map(e=>_xeUtils.default.toDateString(e,s)).join(","),{type:"update"})}else{u=e?[]:c.value;u.some(e=>_xeUtils.default.isEqual(e,d))?w(u.filter(e=>!_xeUtils.default.isEqual(e,d)).join(","),{type:"update"}):n||w(u.concat([d]).join(","),{type:"update"})}}else _xeUtils.default.isEqual(t,d)||w(d,{type:"update"})},M=(e,t)=>{var a=b.value,l=_xeUtils.default.getYearWeek(e,a),a=_xeUtils.default.getWhatWeek(e,0,a,a),l=_xeUtils.default.getWhatMonth(1===l?_xeUtils.default.getWhatDay(a,6):e,t,"first");h.selectMonth=l},_e=()=>{var e=p.type,t=b.value;let a=new Date;switch(e){case"week":a=_xeUtils.default.getWhatWeek(a,0,t);break;case"datetime":a=new Date,h.datetimePanelValue=new Date;break;default:a=_xeUtils.default.getWhatDay(Date.now(),0,"first")}h.currentDate=a,M(a,0)},he=()=>{h.datePanelType="year"},fe=()=>{let e=h.datePanelType;e="month"===e||"quarter"===e?"year":"month",h.datePanelType=e},xe=t=>{var a=p.type,{datePanelType:l,selectMonth:i,inputLabel:u}=h,s=o.yearSize;if(!A.value){let e;e="year"===a?_xeUtils.default.getWhatYear(i,-s,"first"):"month"===a||"quarter"===a?"year"===l?_xeUtils.default.getWhatYear(i,-s,"first"):_xeUtils.default.getWhatYear(i,-1,"first"):"year"===l?_xeUtils.default.getWhatYear(i,-s,"first"):"month"===l?_xeUtils.default.getWhatYear(i,-1,"first"):_xeUtils.default.getWhatMonth(i,-1,"first"),h.selectMonth=e,q("date-prev",{viewType:l,viewDate:e,value:u,type:a},t)}},ye=e=>{_e(),P(h.currentDate,!0),p.multiple||s(),q("date-today",{type:p.type},e)},ge=t=>{var a=p.type,{datePanelType:l,selectMonth:i,inputLabel:u}=h,s=o.yearSize;if(!B.value){let e;e="year"===a?_xeUtils.default.getWhatYear(i,s,"first"):"month"===a||"quarter"===a?"year"===l?_xeUtils.default.getWhatYear(i,s,"first"):_xeUtils.default.getWhatYear(i,1,"first"):"year"===l?_xeUtils.default.getWhatYear(i,s,"first"):"month"===l?_xeUtils.default.getWhatYear(i,1,"first"):_xeUtils.default.getWhatMonth(i,1,"first"),h.selectMonth=e,q("date-next",{viewType:l,value:u,type:a},t)}},k=e=>{var t=j.value,a=I.value,e=e.date;return!!(t&&t.getTime()>e.getTime())||!!(a&&a.getTime()<e.getTime())},V=e=>{var t=p.disabledMethod,a=h.datePanelType,e=e.date;return!!t&&t({type:a,viewType:a,date:e,$datePanel:d})},l=e=>k(e)||V(e),be=e=>{var{type:t,multiple:a}=p,l=h.datePanelType;"month"===t?"year"===l?(h.datePanelType="month",S(e)):(P(e),a||s()):"year"===t?(P(e),a||s()):"quarter"===t?"year"===l?(h.datePanelType="quarter",S(e)):(P(e),a||s()):"month"===l?(h.datePanelType="week"===t?t:"day",S(e)):"year"===l?(h.datePanelType="month",S(e)):(P(e),"datetime"===t||a||s())},T=e=>{l(e)||be(e.date)},De=t=>{l({date:t})||(le.value.some(e=>_xeUtils.default.isDateSame(e.date,t,"yyyyMMdd"))||S(t),u(t))},Ue=t=>{l({date:t})||(g.value.some(e=>_xeUtils.default.isDateSame(e.date,t,"yyyy"))||S(t),u(t))},we=t=>{l({date:t})||(Z.value.some(e=>_xeUtils.default.isDateSame(e.date,t,"yyyyq"))||S(t),u(t))},Se=t=>{l({date:t})||(te.value.some(e=>_xeUtils.default.isDateSame(e.date,t,"yyyyMM"))||S(t),u(t))},N=e=>{var t;l(e)||(t=h.datePanelType,("month"===t?Se:"quarter"===t?we:"year"===t?Ue:De)(e.date))},C=()=>{h.datePanelValue=null},Pe=e=>{var t;e&&(t=e.offsetHeight,e.parentNode.scrollTop=e.offsetTop-4*t)},W=e=>{var t=h.datetimePanelValue;h.datetimePanelValue=t?new Date(t.getTime()):new Date,Pe(e.currentTarget)},Me=(e,t)=>{var a=h.datetimePanelValue;t.disabled||(a&&a.setHours(t.value),W(e))},ke=(e,t)=>{var a=h.datetimePanelValue;t.disabled||(a&&a.setMinutes(t.value),W(e))},Ve=(e,t)=>{var a=h.datetimePanelValue;t.disabled||(a&&a.setSeconds(t.value),W(e))},Te=()=>{var{type:e,defaultDate:t,defaultTime:a}=p,l=v.value,i=x.value;if(-1<["year","quarter","month","week"].indexOf(e)?h.datePanelType=e:h.datePanelType="day",h.currentDate=_xeUtils.default.getWhatDay(Date.now(),0,"first"),i?(M(i,0),u(i)):t&&(e=D(t,"yyyy-MM-dd"),_xeUtils.default.isValidDate(e))?M(e,0):_e(),l){let e=h.datePanelValue;e||(e=_xeUtils.default.getWhatDay(Date.now(),0,"first"),a&&(i=(0,_util.toStringTimeDate)(a),_xeUtils.default.isValidDate(i))&&(e.setHours(i.getHours()),e.setMinutes(i.getMinutes()),e.setSeconds(i.getSeconds()))),h.datetimePanelValue=e,(0,_vue.nextTick)(()=>{var e=L.value;_xeUtils.default.arrayEach(e.querySelectorAll("li.is--selected"),e=>{Pe(e)})})}},q=(e,t,a)=>{Y(e,(0,_ui.createEvent)(a,{$datePanel:d},t))};t={dispatchEvent:q,getModelValue(){return h.inputValue},setPanelDate(e){e&&S(e)},getPanelDate(){return h.selectMonth},checkValue(e){oe(e)},confirmByEvent(e){(e=>{var t=p.multiple;let l=h.datetimePanelValue;var i=x.value,u=v.value;if(u){let a=f.value;if(t){t=c.value;if(u){u=[...m.value];let t=[];u.forEach(e=>{e&&(l&&(e.setHours(l.getHours()),e.setMinutes(l.getMinutes()),e.setSeconds(l.getSeconds())),t.push(e))}),w(t.map(e=>_xeUtils.default.toDateString(e,a)).join(","),{type:"update"})}else w(t.join(","),{type:"update"})}else P(i||h.currentDate)}s(),q("confirm",{},e)})(e)}};Object.assign(d,t);let F=(e,t)=>{var a,l=p.festivalMethod,i=[];return l&&(a=h.datePanelType,e=(a=(l=l({type:a,viewType:a,date:e.date,$datePanel:d}))?_xeUtils.default.isString(l)?{label:l}:l:{}).extra?_xeUtils.default.isString(a.extra)?{label:a.extra}:a.extra:null,i.push((0,_vue.h)("div",{class:["vxe-date-panel--label",{"is-notice":a.notice}]},e&&e.label?[(0,_vue.h)("div",{class:"vxe-date-panel--label--number"},""+t),(0,_vue.h)("div",{class:["vxe-date-panel--label--extra",e.important?"is-important":"",e.className],style:e.style},_xeUtils.default.toValueString(e.label))]:""+t)),l=a.label)&&(e=_xeUtils.default.toValueString(l).split(","),i.push((0,_vue.h)("div",{class:["vxe-date-panel--festival",a.important?"is-important":"",a.className],style:a.style},[1<e.length?(0,_vue.h)("div",{class:["vxe-date-panel--festival--overlap","overlap--"+e.length]},e.map(e=>(0,_vue.h)("div",e.substring(0,3)))):(0,_vue.h)("div",{class:"vxe-date-panel--festival--label"},e[0].substring(0,3))]))),i},Ne=()=>{let l=p.multiple,{datePanelType:e,datePanelValue:i}=h,u=x.value,t=J.value,s=ie.value,r=m.value,d=_.value,n="yyyyMMdd";return[(0,_vue.h)("div",{class:["vxe-date-panel--view-wrapper","type--"+e]},[(0,_vue.h)("div",{class:"vxe-date-panel--view-header"},[(0,_vue.h)("div",{class:"vxe-date-panel--view-row"},t.map(e=>(0,_vue.h)("div",{class:"vxe-date-panel--view-item",style:{width:100/t.length+"%"}},[(0,_vue.h)("div",{class:"vxe-date-panel--view-item-inner"},[(0,_vue.h)("div",{class:"vxe-date-panel--view-item-label"},e.label)])])))]),(0,_vue.h)("div",{class:"vxe-date-panel--view-body"},s.map(a=>(0,_vue.h)("div",{class:"vxe-date-panel--view-row",style:{height:100/s.length+"%"}},a.map(t=>{var e=l?r.some(e=>_xeUtils.default.isDateSame(e,t.date,n)):_xeUtils.default.isDateSame(u,t.date,n);return(0,_vue.h)("div",{class:["vxe-date-panel--view-item",{"is--prev":t.isPrev,"is--current":t.isCurrent,"is--now":t.isNow,"is--next":t.isNext,"is--range-disabled":k(t),"is--disabled":V(t),"is--selected":e,"is--over":d&&!e,"is--hover":!d&&_xeUtils.default.isDateSame(i,t.date,n)}],style:{width:100/a.length+"%"},onClick:()=>T(t),onMouseenter:()=>N(t),onMouseleave:C},[(0,_vue.h)("div",{class:"vxe-date-panel--view-item-inner"},F(t,t.label))])}))))])]},Ce=()=>{let t=p.multiple,{datePanelType:e,datePanelValue:u}=h,s=x.value;var a=K.value;let r=ue.value,d=m.value,n=_.value,v="yyyyMMdd";return[(0,_vue.h)("div",{class:["vxe-date-panel--view-wrapper","type--"+e]},[(0,_vue.h)("div",{class:"vxe-date-panel--view-header"},[(0,_vue.h)("div",{class:"vxe-date-panel--view-row"},a.map((e,t)=>(0,_vue.h)("div",{class:"vxe-date-panel--view-item",style:{width:`${t?13:9}%`}},[(0,_vue.h)("div",{class:"vxe-date-panel--view-item-inner"},[(0,_vue.h)("div",{class:"vxe-date-panel--view-item-label"},e.label)])])))]),(0,_vue.h)("div",{class:"vxe-date-panel--view-body"},r.map(e=>{let a=t?e.some(t=>d.some(e=>_xeUtils.default.isDateSame(e,t.date,v))):e.some(e=>_xeUtils.default.isDateSame(s,e.date,v)),l=e.some(e=>_xeUtils.default.isDateSame(u,e.date,v)),i=e.some(e=>e.isNow);return(0,_vue.h)("div",{class:"vxe-date-panel--view-row",style:{height:100/r.length+"%"}},e.map((e,t)=>(0,_vue.h)("div",{class:["vxe-date-panel--view-item",{"is--prev":e.isPrev,"is--current":e.isCurrent,"is--now":t?e.isNow:i,"is--next":e.isNext,"is--range-disabled":k(e),"is--disabled":V(e),"is--selected":a,"is--over":n&&!a,"is--hover":!n&&l}],style:{width:`${t?13:9}%`},onClick:()=>T(e),onMouseenter:()=>N(e),onMouseleave:C},[(0,_vue.h)("div",{class:"vxe-date-panel--view-item-inner"},F(e,e.label))])))}))])]},We=()=>{let l=p.multiple,{datePanelType:e,datePanelValue:i}=h,u=x.value,t=ae.value,s=m.value,r=_.value,d="yyyyMM";return[(0,_vue.h)("div",{class:["vxe-date-panel--view-wrapper","type--"+e]},[(0,_vue.h)("div",{class:"vxe-date-panel--view-body"},t.map(a=>(0,_vue.h)("div",{class:"vxe-date-panel--view-row",style:{height:100/t.length+"%"}},a.map(t=>{var e=l?s.some(e=>_xeUtils.default.isDateSame(e,t.date,d)):_xeUtils.default.isDateSame(u,t.date,d);return(0,_vue.h)("div",{class:["vxe-date-panel--view-item",{"is--prev":t.isPrev,"is--current":t.isCurrent,"is--now":t.isNow,"is--next":t.isNext,"is--range-disabled":k(t),"is--disabled":V(t),"is--selected":e,"is--over":r&&!e,"is--hover":!r&&_xeUtils.default.isDateSame(i,t.date,d)}],style:{width:100/a.length+"%"},onClick:()=>T(t),onMouseenter:()=>N(t),onMouseleave:C},[(0,_vue.h)("div",{class:"vxe-date-panel--view-item-inner"},F(t,(0,_ui.getI18n)("vxe.input.date.months.m"+t.month)))])}))))])]},qe=()=>{let l=p.multiple,{datePanelType:e,datePanelValue:i}=h,u=x.value,t=ee.value,s=m.value,r=_.value,d="yyyyq";return[(0,_vue.h)("div",{class:["vxe-date-panel--view-wrapper","type--"+e]},[(0,_vue.h)("div",{class:"vxe-date-panel--view-body"},t.map(a=>(0,_vue.h)("div",{class:"vxe-date-panel--view-row",style:{height:100/t.length+"%"}},a.map(t=>{var e=l?s.some(e=>_xeUtils.default.isDateSame(e,t.date,d)):_xeUtils.default.isDateSame(u,t.date,d);return(0,_vue.h)("div",{class:["vxe-date-panel--view-item",{"is--prev":t.isPrev,"is--current":t.isCurrent,"is--now":t.isNow,"is--next":t.isNext,"is--range-disabled":k(t),"is--disabled":V(t),"is--selected":e,"is--over":r&&!e,"is--hover":!r&&_xeUtils.default.isDateSame(i,t.date,d)}],style:{width:100/a.length+"%"},onClick:()=>T(t),onMouseenter:()=>N(t),onMouseleave:C},[(0,_vue.h)("div",{class:"vxe-date-panel--view-item-inner"},F(t,(0,_ui.getI18n)("vxe.input.date.quarters.q"+t.quarter)))])}))))])]},Fe=()=>{let l=p.multiple,{datePanelType:e,datePanelValue:i}=h,u=x.value,t=X.value,s=m.value,r=_.value,d="yyyy";return[(0,_vue.h)("div",{class:["vxe-date-panel--view-wrapper","type--"+e]},[(0,_vue.h)("div",{class:"vxe-date-panel--view-body"},t.map(a=>(0,_vue.h)("div",{class:"vxe-date-panel--view-row",style:{height:100/t.length+"%"}},a.map(t=>{var e=l?s.some(e=>_xeUtils.default.isDateSame(e,t.date,d)):_xeUtils.default.isDateSame(u,t.date,d);return(0,_vue.h)("div",{class:["vxe-date-panel--view-item",{"is--prev":t.isPrev,"is--current":t.isCurrent,"is--now":t.isNow,"is--next":t.isNext,"is--range-disabled":k(t),"is--disabled":V(t),"is--selected":e,"is--over":r&&!e,"is--hover":!r&&_xeUtils.default.isDateSame(i,t.date,d)}],style:{width:100/a.length+"%"},onClick:()=>T(t),onMouseenter:()=>N(t),onMouseleave:C},[(0,_vue.h)("div",{class:"vxe-date-panel--view-item-inner"},F(t,t.year))])}))))])]},Ye=()=>{var e=h.datePanelType;switch(e){case"week":return Ce();case"month":return We();case"quarter":return qe();case"year":return Fe()}return Ne()},He=()=>{var e=h.datePanelType,t=A.value,a=B.value,l=R.value;return[(0,_vue.h)("div",{class:"vxe-date-panel--picker-header"},[(0,_vue.h)("div",{class:"vxe-date-panel--picker-type-wrapper"},["year"===e?(0,_vue.h)("span",{class:"vxe-date-panel--picker-label"},l.y):(0,_vue.h)("span",{class:"vxe-date-panel--picker-btns"},[(0,_vue.h)("span",{class:"vxe-date-panel--picker-btn",onClick:he},l.y),l.m?(0,_vue.h)("span",{class:"vxe-date-panel--picker-btn",onClick:fe},l.m):(0,_ui.renderEmptyElement)(d)])]),(0,_vue.h)("div",{class:"vxe-date-panel--picker-btn-wrapper"},[(0,_vue.h)("span",{class:["vxe-date-panel--picker-btn vxe-date-panel--picker-prev-btn",{"is--disabled":t}],onClick:xe},[(0,_vue.h)("i",{class:"vxe-icon-caret-left"})]),(0,_vue.h)("span",{class:"vxe-date-panel--picker-btn vxe-date-panel--picker-current-btn",onClick:ye},[(0,_vue.h)("i",{class:"vxe-icon-dot"})]),(0,_vue.h)("span",{class:["vxe-date-panel--picker-btn vxe-date-panel--picker-next-btn",{"is--disabled":a}],onClick:ge},[(0,_vue.h)("i",{class:"vxe-icon-caret-right"})])])]),(0,_vue.h)("div",{class:"vxe-date-panel--picker-body"},Ye())]},Ee=()=>{var e=p.type;let a=h.datetimePanelValue;var t=$.value,l=se.value,i=de.value,u=re.value,s=ne.value,r=ve.value;return["time"===e?(0,_ui.renderEmptyElement)(d):(0,_vue.h)("div",{class:"vxe-date-panel--time-header"},[(0,_vue.h)("div",{class:"vxe-date-panel--time-title"},t)]),(0,_vue.h)("div",{ref:L,class:"vxe-date-panel--time-body"},[(0,_vue.h)("ul",{class:"vxe-date-panel--time-hour-list"},l.map((t,e)=>(0,_vue.h)("li",{key:e,class:{"is--disabled":t.disabled,"is--selected":a&&a.getHours()===t.value},onClick:e=>Me(e,t)},t.label))),i?(0,_vue.h)("ul",{class:"vxe-date-panel--time-minute-list"},u.map((t,e)=>(0,_vue.h)("li",{key:e,class:{"is--disabled":t.disabled,"is--selected":a&&a.getMinutes()===t.value},onClick:e=>ke(e,t)},t.label))):(0,_ui.renderEmptyElement)(d),i&&s?(0,_vue.h)("ul",{class:"vxe-date-panel--time-second-list"},r.map((t,e)=>(0,_vue.h)("li",{key:e,class:{"is--disabled":t.disabled,"is--selected":a&&a.getSeconds()===t.value},onClick:e=>Ve(e,t)},t.label))):(0,_ui.renderEmptyElement)(d)])]};return(0,_vue.watch)(()=>p.modelValue,e=>{pe(e),me()}),(0,_vue.watch)(()=>p.type,()=>{Object.assign(h,{inputLabel:"",datetimePanelValue:null,datePanelValue:null,datePanelLabel:"",datePanelType:"day",selectMonth:null,currentDate:null}),ce()}),(0,_vue.watch)(y,()=>{r.value&&(u(h.datePanelValue),h.inputLabel=p.multiple?n.value:h.datePanelLabel)}),ce(),Te(),d.renderVN=()=>{var e=p.type,t=E.value;return(0,_vue.h)("div",{class:["vxe-date-panel","type--"+e,{["size--"+t]:t}]},["datetime"===(e=p.type)?(0,_vue.h)("div",{key:e,ref:a,class:"vxe-date-panel--time-layout-wrapper"},[(0,_vue.h)("div",{class:"vxe-date-panel--time-left-wrapper"},He()),(0,_vue.h)("div",{class:"vxe-date-panel--time-right-wrapper"},Ee())]):"time"===e?(0,_vue.h)("div",{key:e,ref:a,class:"vxe-date-panel--wrapper"},Ee()):(0,_vue.h)("div",{key:e||"default",ref:a,class:"vxe-date-panel--wrapper"},He())])},d},render(){return this.renderVN()}});
@@ -510,6 +510,9 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
510
510
  const panelConfirmEvent = params => {
511
511
  dispatchEvent('confirm', params, params.$event);
512
512
  };
513
+ const panelRevertEvent = params => {
514
+ reactData.inputLabel = params.label;
515
+ };
513
516
  // 全局事件
514
517
  const handleGlobalMousedownEvent = evnt => {
515
518
  const $datePanel = refDatePanel.value;
@@ -892,7 +895,8 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
892
895
  disabledMethod: props.disabledMethod,
893
896
  selectDay: props.selectDay,
894
897
  onChange: panelChangeEvent,
895
- onConfirm: panelConfirmEvent
898
+ onConfirm: panelConfirmEvent,
899
+ onRevert: panelRevertEvent
896
900
  })]), (0, _vue.h)('div', {
897
901
  class: 'vxe-date-picker--layout-footer-wrapper'
898
902
  }, [(0, _vue.h)('div', {
@@ -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}}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,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},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(D,e){let{slots:E,emit:n}=e,s=(0,_vue.inject)("$xeModal",null),d=(0,_vue.inject)("$xeDrawer",null),g=(0,_vue.inject)("$xeTable",null),o=(0,_vue.inject)("$xeForm",null),v=(0,_vue.inject)("xeFormItemInfo",null);var t=_xeUtils.default.uniqueId();let P=(0,_ui.useSize)(D).computeSize,V=(0,_vue.reactive)({initialized:!1,panelIndex:0,visiblePanel:!1,isAniVisible:!1,panelStyle:{},panelPlacement:"",isActivated:!1,inputValue:"",inputLabel:""}),a={hpTimeout:void 0},h=(0,_vue.ref)(),y=(0,_vue.ref)(),w=(0,_vue.ref)(),S=(0,_vue.ref)(),T=(0,_vue.ref)(),b={refElem:h,refInput:y},I={xID:t,props:D,context:e,reactData:V,internalData:a,getRefMaps:()=>b},N=(0,_vue.computed)(()=>{var e=D.transfer,t=B.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(g||s||d||o)return!0}return e}),x=(0,_vue.computed)(()=>{var e=D.readonly;return null===e?!!o&&o.props.readonly:e}),k=(0,_vue.computed)(()=>{var e=D.disabled;return null===e?!!o&&o.props.disabled:e}),F=(0,_vue.computed)(()=>{var e=D.type;return"time"===e||"datetime"===e}),U=(0,_vue.computed)(()=>F.value||-1<["date","week","month","quarter","year"].indexOf(D.type)),A=(0,_vue.computed)(()=>D.clearable),L=(0,_vue.computed)(()=>{var{type:e,editable:t,multiple:a}=D;return x.value||a||!t||"week"===e||"quarter"===e}),O=(0,_vue.computed)(()=>{var e=D.placeholder;return(e=e||(0,_ui.getConfig)().datePicker.placeholder)?(0,_utils.getFuncText)(e):(0,_ui.getI18n)("vxe.base.pleaseSelect")}),l=(0,_vue.computed)(()=>{var e=D.immediate;return e}),$=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().datePicker.timeConfig,D.timeConfig)),B=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().datePicker.popupConfig,D.popupConfig)),q=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().datePicker.shortcutConfig,D.shortcutConfig)),z=(0,_vue.computed)(()=>{var e=q.value.options;return e?e.map((e,t)=>Object.assign({name:""+(e.name||e.code||t)},e)):[]}),R=(0,_vue.computed)(()=>{var e=D.labelFormat;return e||(0,_ui.getI18n)("vxe.input.date.labelFormat."+D.type)}),c=(0,_vue.computed)(()=>{var{type:e,valueFormat:t}=D;return(0,_util.handleValueFormat)(e,t)}),p=(0,_vue.computed)(()=>{var e=D.startDay;return _xeUtils.default.toNumber(e)}),C=(0,_vue.computed)(()=>{let{type:t,multiple:e}=D;var a=V.inputValue;let l=R.value,i=c.value,u=p.value;return(a?e?a.split(","):[a]:[]).map(e=>(0,_util.parseDateObj)(e,t,{valueFormat:i,labelFormat:l,firstDay:u}).label).join(", ")}),i=()=>{var e=D.modelValue;let t="";e&&(t=_xeUtils.default.isNumber(e)&&/^[0-9]{11,15}$/.test(""+e)?new Date(e):e),V.inputValue=t},u=e=>{var t=V.inputValue;_(e.type,{value:t},e)},m=(e,t)=>{var a,{type:l,modelValue:i,valueFormat:u}=D,r=c.value;V.inputValue=e,(0,_util.hasTimestampValueType)(u)?(a=(a=(0,_util.parseDateValue)(e,l,{valueFormat:r}))?a.getTime():null,n("update:modelValue",a),i!==a&&(_("change",{value:a},t),o)&&v&&o.triggerItemEvent(t,v.itemConfig.field,a)):(0,_util.hasDateValueType)(u)?(a=(0,_util.parseDateValue)(e,l,{valueFormat:r}),n("update:modelValue",a),(i&&a?_xeUtils.default.toStringDate(i).getTime()!==a.getTime():i!==a)&&(_("change",{value:a},t),o)&&v&&o.triggerItemEvent(t,v.itemConfig.field,a)):(n("update:modelValue",e),_xeUtils.default.toValueString(i)!==e&&(_("change",{value:e},t),o)&&v&&o.triggerItemEvent(t,v.itemConfig.field,e))},K=e=>{var t=e.target.value;V.inputLabel=t,_("input",{value:t},e)},G=e=>{l.value||u(e)},Y=e=>{var t=B.value.trigger;V.isActivated=!0,t&&"default"!==t||ve(e),u(e)},Z=e=>{var t;k.value||(t=V.inputValue,_("prefix-click",{value:t},e))},f=()=>new Promise(e=>{V.visiblePanel=!1,a.hpTimeout=setTimeout(()=>{V.isAniVisible=!1,e()},350)}),j=(e,t)=>{U.value&&f(),m("",e),_("clear",{value:t},e)},W=e=>{var t;k.value||(t=V.inputValue,_("suffix-click",{value:t},e))},H=e=>{var t=T.value,a=V.inputValue;l.value||m(a,e),V.visiblePanel||(V.isActivated=!1,t&&t.checkValue(V.inputLabel)),_("blur",{value:a},e),o&&v&&o.triggerItemEvent(e,v.itemConfig.field,a)},J=e=>{u(e)},Q=e=>{u(e)},X=e=>{var t=T.value;t&&t.confirmByEvent(e),f()},ee=e=>{var{multiple:t,autoClose:a}=D,{value:e,$event:l}=e,i=F.value;m(e,l),t||i||a&&f()},te=e=>{_("confirm",e,e.$event)},ae=e=>{var t=T.value,{visiblePanel:a,isActivated:l}=V,i=h.value,u=S.value;!k.value&&l&&(V.isActivated=(0,_dom.getEventTargetNode)(e,i).flag||(0,_dom.getEventTargetNode)(e,u).flag,V.isActivated||a&&(f(),t)&&t.checkValue(V.inputLabel))},le=e=>{var t,a=V.visiblePanel;k.value||(t=_ui.globalEvents.hasKey(e,_ui.GLOBAL_EVENT_KEYS.TAB),e=_ui.globalEvents.hasKey(e,_ui.GLOBAL_EVENT_KEYS.ESCAPE),t&&(V.isActivated=!1),a&&(e||t)&&f())},ie=e=>{var t=V.visiblePanel;k.value||t&&(t=S.value,((0,_dom.getEventTargetNode)(e,t).flag?r:f)())},ue=()=>{var e=T.value,{isActivated:t,visiblePanel:a}=V;a&&f(),t&&(V.isActivated=!1),(a||t)&&(e&&e.checkValue(V.inputLabel),a=y.value)&&a.blur()},re=()=>{var e=V.visiblePanel;e&&r()},ne=()=>{var e=B.value.zIndex||D.zIndex;e?V.panelIndex=_xeUtils.default.toNumber(e):V.panelIndex<(0,_utils.getLastZIndex)()&&(V.panelIndex=(0,_utils.nextZIndex)())},r=()=>{let a=D.placement,l=V.panelIndex,i=y.value,u=w.value,r=N.value,n=B.value;var e=()=>{var e=(0,_dom.updatePanelPlacement)(i,u,{placement:n.placement||a,defaultPlacement:n.defaultPlacement,teleportTo:r}),t=Object.assign(e.style,{zIndex:l});V.panelStyle=t,V.panelPlacement=e.placement};return e(),(0,_vue.nextTick)().then(e)},oe=()=>{var e=V.visiblePanel;return(k.value||e?(0,_vue.nextTick):(V.initialized||(V.initialized=!0),a.hpTimeout&&(clearTimeout(a.hpTimeout),a.hpTimeout=void 0),V.isActivated=!0,V.isAniVisible=!0,setTimeout(()=>{V.visiblePanel=!0,r()},10),ne(),r))()},ve=e=>{x.value||(e.preventDefault(),oe())},se=e=>{var t=B.value.trigger;t&&"default"!==t&&"icon"!==t||ve(e)},de=e=>{u(e)},ce=({option:e,$event:t})=>{var a=D.type,l=V.inputValue,i=q.value,u=i.autoClose,{code:r,clickMethod:n}=e,o=l,v={$datePicker:I,option:e,value:o,code:r};if(!n&&r){l=_ui.commands.get(r),e=l?l.datePickerCommandMethod:null;if(e)e(v);else{var s=c.value,d=p.value;switch(r){case"now":case"prev":case"next":case"minus":case"plus":o=(0,_util.getDateByCode)(r,o,a,{valueFormat:s,firstDay:d}).value;v.value=o,m(o,t);break;default:(0,_log.errLog)("vxe.error.notCommands",["[date-picker] "+r])}}}else{l=n||i.clickMethod;l&&l(v)}u&&f(),_("shortcut-click",v,t)},_=(e,t,a)=>{n(e,(0,_ui.createEvent)(a,{$datePicker:I},t))};t={dispatchEvent:_,setModelValue(e){V.inputValue=e,n("update:modelValue",e)},setModelValueByEvent(e,t){m(t||"",e)},focus(){var e=y.value;return V.isActivated=!0,e.focus(),(0,_vue.nextTick)()},blur(){return y.value.blur(),(V.isActivated=!1,_vue.nextTick)()},select(){return y.value.select(),(V.isActivated=!1,_vue.nextTick)()},showPanel:oe,hidePanel:f,updatePlacement:r};Object.assign(I,t);let M=(e,t)=>{var a=q.value,{position:l,align:i,mode:u}=a,r=z.value;return(0,_utils.isEnableConf)(a)&&r.length&&(l||"left")===e?(0,_vue.h)("div",{class:`vxe-date-picker--layout-${e}-wrapper`},[(0,_vue.h)(_buttonGroup.default,{options:r,mode:u,align:i,vertical:t,onClick:ce})]):(0,_ui.renderEmptyElement)(I)},pe=()=>(0,_vue.h)("div",{class:"vxe-date-picker--control-icon",onClick:se},[(0,_vue.h)("i",{class:["vxe-date-picker--date-picker-icon",(0,_ui.getIcon)().DATE_PICKER_DATE]})]);return(0,_vue.watch)(C,e=>{V.inputLabel=e}),(0,_vue.watch)(()=>D.modelValue,()=>{i()}),(0,_vue.nextTick)(()=>{_ui.globalEvents.on(I,"mousewheel",ie),_ui.globalEvents.on(I,"mousedown",ae),_ui.globalEvents.on(I,"keydown",le),_ui.globalEvents.on(I,"blur",ue),_ui.globalEvents.on(I,"resize",re)}),(0,_vue.onUnmounted)(()=>{_ui.globalEvents.off(I,"mousewheel"),_ui.globalEvents.off(I,"mousedown"),_ui.globalEvents.off(I,"blur"),_ui.globalEvents.off(I,"resize")}),i(),(0,_vue.provide)("$xeDatePicker",I),I.renderVN=()=>{var e,t,a,l,i,u,r,{className:n,type:o,name:v,autoComplete:s}=D,{inputValue:d,inputLabel:c,visiblePanel:p,isActivated:m}=V,f=P.value,_=k.value,g=x.value,b=C.value;return g?(0,_vue.h)("div",{ref:h,class:["vxe-date-picker--readonly","type--"+o,n]},b):(g=L.value,b=O.value,e=A.value,a=D.prefixIcon,t=(t=E.prefix)||a?(0,_vue.h)("div",{class:"vxe-date-picker--prefix",onClick:Z},[(0,_vue.h)("div",{class:"vxe-date-picker--prefix-icon"},t?(0,_vn.getSlotVNs)(t({})):[(0,_vue.h)("i",{class:a})])]):null,a=D.suffixIcon,l=V.inputValue,i=E.suffix,u=k.value,r=A.value,u=(0,_vue.h)("div",{class:["vxe-date-picker--suffix",{"is--clear":r&&!u&&!(""===l||_xeUtils.default.eqNull(l))}]},[r?(0,_vue.h)("div",{class:"vxe-date-picker--clear-icon",onClick:j},[(0,_vue.h)("i",{class:(0,_ui.getIcon)().INPUT_CLEAR})]):(0,_ui.renderEmptyElement)(I),pe(),i||a?(0,_vue.h)("div",{class:"vxe-date-picker--suffix-icon",onClick:W},i?(0,_vn.getSlotVNs)(i({})):[(0,_vue.h)("i",{class:a})]):(0,_ui.renderEmptyElement)(I)]),(0,_vue.h)("div",{ref:h,class:["vxe-date-picker","type--"+o,n,{["size--"+f]:f,"is--prefix":!!t,"is--suffix":!!u,"is--visible":p,"is--disabled":_,"is--active":m,"show--clear":e&&!_&&!(""===d||_xeUtils.default.eqNull(d))}],spellcheck:!1},[t||(0,_ui.renderEmptyElement)(I),(0,_vue.h)("div",{class:"vxe-date-picker--wrapper"},[(0,_vue.h)("input",{ref:y,class:"vxe-date-picker--inner",value:c,name:v,type:"text",placeholder:b,readonly:g,disabled:_,autocomplete:s,onKeydown:J,onKeyup:Q,onClick:de,onInput:K,onChange:G,onFocus:Y,onBlur:H})]),u||(0,_ui.renderEmptyElement)(I),(()=>{var{type:e,multiple:t,showClearButton:a,showConfirmButton:l}=D,{initialized:i,isAniVisible:u,visiblePanel:r,panelPlacement:n,panelStyle:o,inputValue:v}=V,s=P.value,d=N.value,c=q.value,p=A.value,m=F.value,f=z.value,_=$.value,g=B.value,c=c.position,b=E.header,h=E.footer,y=E.top,x=E.bottom,k=E.left,C=E.right,g=g.className,f=0<f.length,m=null===l?m||t:l,t=null===a?p&&m&&"time"!==e:a;return(0,_vue.h)(_vue.Teleport,{to:"body",disabled:!d||!i},[(0,_vue.h)("div",{ref:w,class:["vxe-table--ignore-clear vxe-date-picker--panel","type--"+e,g?_xeUtils.default.isFunction(g)?g({$datePicker:I}):g:"",{["size--"+s]:s,"is--transfer":d,"ani--leave":u,"ani--enter":r,"show--top":!!(y||b||f&&("top"===c||"header"===c)),"show--bottom":!!(x||h||f&&("bottom"===c||"footer"===c)),"show--left":!!(k||f&&"left"===c),"show--right":!!(C||f&&"right"===c)}],placement:n,style:o},i&&(r||u)?[(0,_vue.h)("div",{ref:S,class:["vxe-date-picker--layout-all-wrapper","type--"+e,{["size--"+s]:s}]},[y?(0,_vue.h)("div",{class:"vxe-date-picker--layout-top-wrapper"},y({})):M("top"),(0,_vue.h)("div",{class:"vxe-date-picker--layout-body-layout-wrapper"},[k?(0,_vue.h)("div",{class:"vxe-date-picker--layout-left-wrapper"},k({})):M("left",!0),(0,_vue.h)("div",{class:"vxe-date-picker--layout-body-content-wrapper"},[b?(0,_vue.h)("div",{class:"vxe-date-picker--layout-header-wrapper"},b({})):M("header"),(0,_vue.h)("div",{class:"vxe-date-picker--layout-body-wrapper"},[(0,_vue.h)(_datePanel.default,{ref:T,modelValue:V.inputValue,type:D.type,className:D.className,multiple:D.multiple,limitCount:D.limitCount,startDate:D.startDate,endDate:D.endDate,defaultDate:D.defaultDate,defaultTime:D.defaultTime,minDate:D.minDate,maxDate:D.maxDate,startDay:D.startDay,labelFormat:D.labelFormat,valueFormat:D.valueFormat,timeFormat:D.timeFormat,timeConfig:_,festivalMethod:D.festivalMethod,disabledMethod:D.disabledMethod,selectDay:D.selectDay,onChange:ee,onConfirm:te})]),(0,_vue.h)("div",{class:"vxe-date-picker--layout-footer-wrapper"},[(0,_vue.h)("div",{class:"vxe-date-picker--layout-footer-custom"},h?h({}):[M("footer")]),t||m?(0,_vue.h)("div",{class:"vxe-date-picker--layout-footer-btns"},[t?(0,_vue.h)(_button.default,{size:"mini",disabled:""===v||_xeUtils.default.eqNull(v),content:(0,_ui.getI18n)("vxe.button.clear"),onClick:j}):(0,_ui.renderEmptyElement)(I),m?(0,_vue.h)(_button.default,{size:"mini",status:"primary",content:(0,_ui.getI18n)("vxe.button.confirm"),onClick:X}):(0,_ui.renderEmptyElement)(I)]):(0,_ui.renderEmptyElement)(I)])]),C?(0,_vue.h)("div",{class:"vxe-date-picker--layout-right-wrapper"},C({})):M("right",!0)]),x?(0,_vue.h)("div",{class:"vxe-date-picker--layout-bottom-wrapper"},x({})):M("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}}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,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},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(D,e){let{slots:E,emit:n}=e,s=(0,_vue.inject)("$xeModal",null),d=(0,_vue.inject)("$xeDrawer",null),g=(0,_vue.inject)("$xeTable",null),o=(0,_vue.inject)("$xeForm",null),v=(0,_vue.inject)("xeFormItemInfo",null);var t=_xeUtils.default.uniqueId();let P=(0,_ui.useSize)(D).computeSize,V=(0,_vue.reactive)({initialized:!1,panelIndex:0,visiblePanel:!1,isAniVisible:!1,panelStyle:{},panelPlacement:"",isActivated:!1,inputValue:"",inputLabel:""}),a={hpTimeout:void 0},h=(0,_vue.ref)(),y=(0,_vue.ref)(),w=(0,_vue.ref)(),S=(0,_vue.ref)(),T=(0,_vue.ref)(),b={refElem:h,refInput:y},I={xID:t,props:D,context:e,reactData:V,internalData:a,getRefMaps:()=>b},N=(0,_vue.computed)(()=>{var e=D.transfer,t=B.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(g||s||d||o)return!0}return e}),x=(0,_vue.computed)(()=>{var e=D.readonly;return null===e?!!o&&o.props.readonly:e}),k=(0,_vue.computed)(()=>{var e=D.disabled;return null===e?!!o&&o.props.disabled:e}),F=(0,_vue.computed)(()=>{var e=D.type;return"time"===e||"datetime"===e}),L=(0,_vue.computed)(()=>F.value||-1<["date","week","month","quarter","year"].indexOf(D.type)),A=(0,_vue.computed)(()=>D.clearable),U=(0,_vue.computed)(()=>{var{type:e,editable:t,multiple:a}=D;return x.value||a||!t||"week"===e||"quarter"===e}),O=(0,_vue.computed)(()=>{var e=D.placeholder;return(e=e||(0,_ui.getConfig)().datePicker.placeholder)?(0,_utils.getFuncText)(e):(0,_ui.getI18n)("vxe.base.pleaseSelect")}),l=(0,_vue.computed)(()=>{var e=D.immediate;return e}),$=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().datePicker.timeConfig,D.timeConfig)),B=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().datePicker.popupConfig,D.popupConfig)),q=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().datePicker.shortcutConfig,D.shortcutConfig)),z=(0,_vue.computed)(()=>{var e=q.value.options;return e?e.map((e,t)=>Object.assign({name:""+(e.name||e.code||t)},e)):[]}),R=(0,_vue.computed)(()=>{var e=D.labelFormat;return e||(0,_ui.getI18n)("vxe.input.date.labelFormat."+D.type)}),c=(0,_vue.computed)(()=>{var{type:e,valueFormat:t}=D;return(0,_util.handleValueFormat)(e,t)}),p=(0,_vue.computed)(()=>{var e=D.startDay;return _xeUtils.default.toNumber(e)}),C=(0,_vue.computed)(()=>{let{type:t,multiple:e}=D;var a=V.inputValue;let l=R.value,i=c.value,u=p.value;return(a?e?a.split(","):[a]:[]).map(e=>(0,_util.parseDateObj)(e,t,{valueFormat:i,labelFormat:l,firstDay:u}).label).join(", ")}),i=()=>{var e=D.modelValue;let t="";e&&(t=_xeUtils.default.isNumber(e)&&/^[0-9]{11,15}$/.test(""+e)?new Date(e):e),V.inputValue=t},u=e=>{var t=V.inputValue;_(e.type,{value:t},e)},m=(e,t)=>{var a,{type:l,modelValue:i,valueFormat:u}=D,r=c.value;V.inputValue=e,(0,_util.hasTimestampValueType)(u)?(a=(a=(0,_util.parseDateValue)(e,l,{valueFormat:r}))?a.getTime():null,n("update:modelValue",a),i!==a&&(_("change",{value:a},t),o)&&v&&o.triggerItemEvent(t,v.itemConfig.field,a)):(0,_util.hasDateValueType)(u)?(a=(0,_util.parseDateValue)(e,l,{valueFormat:r}),n("update:modelValue",a),(i&&a?_xeUtils.default.toStringDate(i).getTime()!==a.getTime():i!==a)&&(_("change",{value:a},t),o)&&v&&o.triggerItemEvent(t,v.itemConfig.field,a)):(n("update:modelValue",e),_xeUtils.default.toValueString(i)!==e&&(_("change",{value:e},t),o)&&v&&o.triggerItemEvent(t,v.itemConfig.field,e))},K=e=>{var t=e.target.value;V.inputLabel=t,_("input",{value:t},e)},G=e=>{l.value||u(e)},Y=e=>{var t=B.value.trigger;V.isActivated=!0,t&&"default"!==t||se(e),u(e)},Z=e=>{var t;k.value||(t=V.inputValue,_("prefix-click",{value:t},e))},f=()=>new Promise(e=>{V.visiblePanel=!1,a.hpTimeout=setTimeout(()=>{V.isAniVisible=!1,e()},350)}),j=(e,t)=>{L.value&&f(),m("",e),_("clear",{value:t},e)},W=e=>{var t;k.value||(t=V.inputValue,_("suffix-click",{value:t},e))},H=e=>{var t=T.value,a=V.inputValue;l.value||m(a,e),V.visiblePanel||(V.isActivated=!1,t&&t.checkValue(V.inputLabel)),_("blur",{value:a},e),o&&v&&o.triggerItemEvent(e,v.itemConfig.field,a)},J=e=>{u(e)},Q=e=>{u(e)},X=e=>{var t=T.value;t&&t.confirmByEvent(e),f()},ee=e=>{var{multiple:t,autoClose:a}=D,{value:e,$event:l}=e,i=F.value;m(e,l),t||i||a&&f()},te=e=>{_("confirm",e,e.$event)},ae=e=>{V.inputLabel=e.label},le=e=>{var t=T.value,{visiblePanel:a,isActivated:l}=V,i=h.value,u=S.value;!k.value&&l&&(V.isActivated=(0,_dom.getEventTargetNode)(e,i).flag||(0,_dom.getEventTargetNode)(e,u).flag,V.isActivated||a&&(f(),t)&&t.checkValue(V.inputLabel))},ie=e=>{var t,a=V.visiblePanel;k.value||(t=_ui.globalEvents.hasKey(e,_ui.GLOBAL_EVENT_KEYS.TAB),e=_ui.globalEvents.hasKey(e,_ui.GLOBAL_EVENT_KEYS.ESCAPE),t&&(V.isActivated=!1),a&&(e||t)&&f())},ue=e=>{var t=V.visiblePanel;k.value||t&&(t=S.value,((0,_dom.getEventTargetNode)(e,t).flag?r:f)())},re=()=>{var e=T.value,{isActivated:t,visiblePanel:a}=V;a&&f(),t&&(V.isActivated=!1),(a||t)&&(e&&e.checkValue(V.inputLabel),a=y.value)&&a.blur()},ne=()=>{var e=V.visiblePanel;e&&r()},oe=()=>{var e=B.value.zIndex||D.zIndex;e?V.panelIndex=_xeUtils.default.toNumber(e):V.panelIndex<(0,_utils.getLastZIndex)()&&(V.panelIndex=(0,_utils.nextZIndex)())},r=()=>{let a=D.placement,l=V.panelIndex,i=y.value,u=w.value,r=N.value,n=B.value;var e=()=>{var e=(0,_dom.updatePanelPlacement)(i,u,{placement:n.placement||a,defaultPlacement:n.defaultPlacement,teleportTo:r}),t=Object.assign(e.style,{zIndex:l});V.panelStyle=t,V.panelPlacement=e.placement};return e(),(0,_vue.nextTick)().then(e)},ve=()=>{var e=V.visiblePanel;return(k.value||e?(0,_vue.nextTick):(V.initialized||(V.initialized=!0),a.hpTimeout&&(clearTimeout(a.hpTimeout),a.hpTimeout=void 0),V.isActivated=!0,V.isAniVisible=!0,setTimeout(()=>{V.visiblePanel=!0,r()},10),oe(),r))()},se=e=>{x.value||(e.preventDefault(),ve())},de=e=>{var t=B.value.trigger;t&&"default"!==t&&"icon"!==t||se(e)},ce=e=>{u(e)},pe=({option:e,$event:t})=>{var a=D.type,l=V.inputValue,i=q.value,u=i.autoClose,{code:r,clickMethod:n}=e,o=l,v={$datePicker:I,option:e,value:o,code:r};if(!n&&r){l=_ui.commands.get(r),e=l?l.datePickerCommandMethod:null;if(e)e(v);else{var s=c.value,d=p.value;switch(r){case"now":case"prev":case"next":case"minus":case"plus":o=(0,_util.getDateByCode)(r,o,a,{valueFormat:s,firstDay:d}).value;v.value=o,m(o,t);break;default:(0,_log.errLog)("vxe.error.notCommands",["[date-picker] "+r])}}}else{l=n||i.clickMethod;l&&l(v)}u&&f(),_("shortcut-click",v,t)},_=(e,t,a)=>{n(e,(0,_ui.createEvent)(a,{$datePicker:I},t))};t={dispatchEvent:_,setModelValue(e){V.inputValue=e,n("update:modelValue",e)},setModelValueByEvent(e,t){m(t||"",e)},focus(){var e=y.value;return V.isActivated=!0,e.focus(),(0,_vue.nextTick)()},blur(){return y.value.blur(),(V.isActivated=!1,_vue.nextTick)()},select(){return y.value.select(),(V.isActivated=!1,_vue.nextTick)()},showPanel:ve,hidePanel:f,updatePlacement:r};Object.assign(I,t);let M=(e,t)=>{var a=q.value,{position:l,align:i,mode:u}=a,r=z.value;return(0,_utils.isEnableConf)(a)&&r.length&&(l||"left")===e?(0,_vue.h)("div",{class:`vxe-date-picker--layout-${e}-wrapper`},[(0,_vue.h)(_buttonGroup.default,{options:r,mode:u,align:i,vertical:t,onClick:pe})]):(0,_ui.renderEmptyElement)(I)},me=()=>(0,_vue.h)("div",{class:"vxe-date-picker--control-icon",onClick:de},[(0,_vue.h)("i",{class:["vxe-date-picker--date-picker-icon",(0,_ui.getIcon)().DATE_PICKER_DATE]})]);return(0,_vue.watch)(C,e=>{V.inputLabel=e}),(0,_vue.watch)(()=>D.modelValue,()=>{i()}),(0,_vue.nextTick)(()=>{_ui.globalEvents.on(I,"mousewheel",ue),_ui.globalEvents.on(I,"mousedown",le),_ui.globalEvents.on(I,"keydown",ie),_ui.globalEvents.on(I,"blur",re),_ui.globalEvents.on(I,"resize",ne)}),(0,_vue.onUnmounted)(()=>{_ui.globalEvents.off(I,"mousewheel"),_ui.globalEvents.off(I,"mousedown"),_ui.globalEvents.off(I,"blur"),_ui.globalEvents.off(I,"resize")}),i(),(0,_vue.provide)("$xeDatePicker",I),I.renderVN=()=>{var e,t,a,l,i,u,r,{className:n,type:o,name:v,autoComplete:s}=D,{inputValue:d,inputLabel:c,visiblePanel:p,isActivated:m}=V,f=P.value,_=k.value,g=x.value,b=C.value;return g?(0,_vue.h)("div",{ref:h,class:["vxe-date-picker--readonly","type--"+o,n]},b):(g=U.value,b=O.value,e=A.value,a=D.prefixIcon,t=(t=E.prefix)||a?(0,_vue.h)("div",{class:"vxe-date-picker--prefix",onClick:Z},[(0,_vue.h)("div",{class:"vxe-date-picker--prefix-icon"},t?(0,_vn.getSlotVNs)(t({})):[(0,_vue.h)("i",{class:a})])]):null,a=D.suffixIcon,l=V.inputValue,i=E.suffix,u=k.value,r=A.value,u=(0,_vue.h)("div",{class:["vxe-date-picker--suffix",{"is--clear":r&&!u&&!(""===l||_xeUtils.default.eqNull(l))}]},[r?(0,_vue.h)("div",{class:"vxe-date-picker--clear-icon",onClick:j},[(0,_vue.h)("i",{class:(0,_ui.getIcon)().INPUT_CLEAR})]):(0,_ui.renderEmptyElement)(I),me(),i||a?(0,_vue.h)("div",{class:"vxe-date-picker--suffix-icon",onClick:W},i?(0,_vn.getSlotVNs)(i({})):[(0,_vue.h)("i",{class:a})]):(0,_ui.renderEmptyElement)(I)]),(0,_vue.h)("div",{ref:h,class:["vxe-date-picker","type--"+o,n,{["size--"+f]:f,"is--prefix":!!t,"is--suffix":!!u,"is--visible":p,"is--disabled":_,"is--active":m,"show--clear":e&&!_&&!(""===d||_xeUtils.default.eqNull(d))}],spellcheck:!1},[t||(0,_ui.renderEmptyElement)(I),(0,_vue.h)("div",{class:"vxe-date-picker--wrapper"},[(0,_vue.h)("input",{ref:y,class:"vxe-date-picker--inner",value:c,name:v,type:"text",placeholder:b,readonly:g,disabled:_,autocomplete:s,onKeydown:J,onKeyup:Q,onClick:ce,onInput:K,onChange:G,onFocus:Y,onBlur:H})]),u||(0,_ui.renderEmptyElement)(I),(()=>{var{type:e,multiple:t,showClearButton:a,showConfirmButton:l}=D,{initialized:i,isAniVisible:u,visiblePanel:r,panelPlacement:n,panelStyle:o,inputValue:v}=V,s=P.value,d=N.value,c=q.value,p=A.value,m=F.value,f=z.value,_=$.value,g=B.value,c=c.position,b=E.header,h=E.footer,y=E.top,x=E.bottom,k=E.left,C=E.right,g=g.className,f=0<f.length,m=null===l?m||t:l,t=null===a?p&&m&&"time"!==e:a;return(0,_vue.h)(_vue.Teleport,{to:"body",disabled:!d||!i},[(0,_vue.h)("div",{ref:w,class:["vxe-table--ignore-clear vxe-date-picker--panel","type--"+e,g?_xeUtils.default.isFunction(g)?g({$datePicker:I}):g:"",{["size--"+s]:s,"is--transfer":d,"ani--leave":u,"ani--enter":r,"show--top":!!(y||b||f&&("top"===c||"header"===c)),"show--bottom":!!(x||h||f&&("bottom"===c||"footer"===c)),"show--left":!!(k||f&&"left"===c),"show--right":!!(C||f&&"right"===c)}],placement:n,style:o},i&&(r||u)?[(0,_vue.h)("div",{ref:S,class:["vxe-date-picker--layout-all-wrapper","type--"+e,{["size--"+s]:s}]},[y?(0,_vue.h)("div",{class:"vxe-date-picker--layout-top-wrapper"},y({})):M("top"),(0,_vue.h)("div",{class:"vxe-date-picker--layout-body-layout-wrapper"},[k?(0,_vue.h)("div",{class:"vxe-date-picker--layout-left-wrapper"},k({})):M("left",!0),(0,_vue.h)("div",{class:"vxe-date-picker--layout-body-content-wrapper"},[b?(0,_vue.h)("div",{class:"vxe-date-picker--layout-header-wrapper"},b({})):M("header"),(0,_vue.h)("div",{class:"vxe-date-picker--layout-body-wrapper"},[(0,_vue.h)(_datePanel.default,{ref:T,modelValue:V.inputValue,type:D.type,className:D.className,multiple:D.multiple,limitCount:D.limitCount,startDate:D.startDate,endDate:D.endDate,defaultDate:D.defaultDate,defaultTime:D.defaultTime,minDate:D.minDate,maxDate:D.maxDate,startDay:D.startDay,labelFormat:D.labelFormat,valueFormat:D.valueFormat,timeFormat:D.timeFormat,timeConfig:_,festivalMethod:D.festivalMethod,disabledMethod:D.disabledMethod,selectDay:D.selectDay,onChange:ee,onConfirm:te,onRevert:ae})]),(0,_vue.h)("div",{class:"vxe-date-picker--layout-footer-wrapper"},[(0,_vue.h)("div",{class:"vxe-date-picker--layout-footer-custom"},h?h({}):[M("footer")]),t||m?(0,_vue.h)("div",{class:"vxe-date-picker--layout-footer-btns"},[t?(0,_vue.h)(_button.default,{size:"mini",disabled:""===v||_xeUtils.default.eqNull(v),content:(0,_ui.getI18n)("vxe.button.clear"),onClick:j}):(0,_ui.renderEmptyElement)(I),m?(0,_vue.h)(_button.default,{size:"mini",status:"primary",content:(0,_ui.getI18n)("vxe.button.confirm"),onClick:X}):(0,_ui.renderEmptyElement)(I)]):(0,_ui.renderEmptyElement)(I)])]),C?(0,_vue.h)("div",{class:"vxe-date-picker--layout-right-wrapper"},C({})):M("right",!0)]),x?(0,_vue.h)("div",{class:"vxe-date-picker--layout-bottom-wrapper"},x({})):M("bottom")])]:[])])})()]))},I},render(){return this.renderVN()}});