vxe-pc-ui 4.15.24 → 4.15.25
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.
- package/dist/all.esm.js +220 -94
- package/dist/style.css +1 -1
- package/dist/style.min.css +1 -1
- package/es/date-panel/src/date-panel.js +79 -52
- package/es/date-panel/src/util.js +11 -1
- package/es/date-picker/src/date-picker.js +17 -12
- package/es/date-range-picker/src/date-range-picker.js +104 -19
- package/es/icon/style.css +1 -1
- package/es/style.css +1 -1
- package/es/style.min.css +1 -1
- package/es/ui/index.js +1 -1
- package/es/ui/src/log.js +1 -1
- package/lib/date-panel/src/date-panel.js +87 -51
- package/lib/date-panel/src/date-panel.min.js +1 -1
- package/lib/date-panel/src/util.js +14 -2
- package/lib/date-panel/src/util.min.js +1 -1
- package/lib/date-picker/src/date-picker.js +19 -12
- package/lib/date-picker/src/date-picker.min.js +1 -1
- package/lib/date-range-picker/src/date-range-picker.js +119 -18
- package/lib/date-range-picker/src/date-range-picker.min.js +1 -1
- package/lib/icon/style/style.css +1 -1
- package/lib/icon/style/style.min.css +1 -1
- package/lib/index.umd.js +239 -84
- package/lib/index.umd.min.js +1 -1
- package/lib/style.css +1 -1
- package/lib/style.min.css +1 -1
- package/lib/ui/index.js +1 -1
- package/lib/ui/index.min.js +1 -1
- package/lib/ui/src/log.js +1 -1
- package/lib/ui/src/log.min.js +1 -1
- package/package.json +1 -1
- package/packages/date-panel/src/date-panel.ts +85 -54
- package/packages/date-panel/src/util.ts +14 -2
- package/packages/date-picker/src/date-picker.ts +18 -12
- package/packages/date-range-picker/src/date-range-picker.ts +102 -19
- package/types/components/date-panel.d.ts +4 -2
- package/types/components/date-range-picker.d.ts +2 -2
- /package/es/icon/{iconfont.1783233742355.ttf → iconfont.1783247320664.ttf} +0 -0
- /package/es/icon/{iconfont.1783233742355.woff → iconfont.1783247320664.woff} +0 -0
- /package/es/icon/{iconfont.1783233742355.woff2 → iconfont.1783247320664.woff2} +0 -0
- /package/es/{iconfont.1783233742355.ttf → iconfont.1783247320664.ttf} +0 -0
- /package/es/{iconfont.1783233742355.woff → iconfont.1783247320664.woff} +0 -0
- /package/es/{iconfont.1783233742355.woff2 → iconfont.1783247320664.woff2} +0 -0
- /package/lib/icon/style/{iconfont.1783233742355.ttf → iconfont.1783247320664.ttf} +0 -0
- /package/lib/icon/style/{iconfont.1783233742355.woff → iconfont.1783247320664.woff} +0 -0
- /package/lib/icon/style/{iconfont.1783233742355.woff2 → iconfont.1783247320664.woff2} +0 -0
- /package/lib/{iconfont.1783233742355.ttf → iconfont.1783247320664.ttf} +0 -0
- /package/lib/{iconfont.1783233742355.woff → iconfont.1783247320664.woff} +0 -0
- /package/lib/{iconfont.1783233742355.woff2 → iconfont.1783247320664.woff2} +0 -0
package/dist/all.esm.js
CHANGED
|
@@ -81,7 +81,7 @@ function checkDynamic() {
|
|
|
81
81
|
}
|
|
82
82
|
|
|
83
83
|
const { log } = VxeUI;
|
|
84
|
-
const uiVersion = `ui v${"4.15.
|
|
84
|
+
const uiVersion = `ui v${"4.15.25"}`;
|
|
85
85
|
function createComponentLog(name) {
|
|
86
86
|
const tableVersion = VxeUI.tableVersion ? `table v${VxeUI.tableVersion}` : '';
|
|
87
87
|
const ganttVersion = VxeUI.ganttVersion ? `gantt v${VxeUI.ganttVersion}` : '';
|
|
@@ -95,7 +95,7 @@ function createComponentLog(name) {
|
|
|
95
95
|
const warnLog$g = log.create('warn', uiVersion);
|
|
96
96
|
log.create('error', uiVersion);
|
|
97
97
|
|
|
98
|
-
const version = "4.15.
|
|
98
|
+
const version = "4.15.25";
|
|
99
99
|
VxeUI.uiVersion = version;
|
|
100
100
|
VxeUI.dynamicApp = dynamicApp;
|
|
101
101
|
function config(options) {
|
|
@@ -3866,7 +3866,7 @@ dynamicApp.use(VxeButton);
|
|
|
3866
3866
|
VxeUI.component(VxeButtonComponent);
|
|
3867
3867
|
const Button = VxeButton;
|
|
3868
3868
|
|
|
3869
|
-
const { errLog: errLog$
|
|
3869
|
+
const { errLog: errLog$i } = createComponentLog('backtop');
|
|
3870
3870
|
function createInternalData$j() {
|
|
3871
3871
|
return {
|
|
3872
3872
|
targetEl: null
|
|
@@ -4044,13 +4044,13 @@ var VxeBacktopComponent = defineVxeComponent({
|
|
|
4044
4044
|
const { target } = props;
|
|
4045
4045
|
if (!target) {
|
|
4046
4046
|
removeScrollEvent();
|
|
4047
|
-
errLog$
|
|
4047
|
+
errLog$i('vxe.error.reqProp', ['target']);
|
|
4048
4048
|
return;
|
|
4049
4049
|
}
|
|
4050
4050
|
if (XEUtils.isString(target)) {
|
|
4051
4051
|
const tEl = document.querySelector(target);
|
|
4052
4052
|
if (!tEl) {
|
|
4053
|
-
errLog$
|
|
4053
|
+
errLog$i('vxe.error.errProp', [`target=${target}`, 'body']);
|
|
4054
4054
|
}
|
|
4055
4055
|
const { targetEl } = internalData;
|
|
4056
4056
|
if (targetEl !== tEl) {
|
|
@@ -4572,7 +4572,7 @@ function parseDateValue(val, type, options) {
|
|
|
4572
4572
|
const { valueFormat } = options;
|
|
4573
4573
|
if (val) {
|
|
4574
4574
|
if (type === 'time') {
|
|
4575
|
-
return toStringTimeDate(XEUtils.isArray(val) ?
|
|
4575
|
+
return toStringTimeDate(XEUtils.isArray(val) ? XEUtils.last(val) : val);
|
|
4576
4576
|
}
|
|
4577
4577
|
if (XEUtils.isNumber(val) || /^[0-9]{10,15}$/.test(`${val}`)) {
|
|
4578
4578
|
return new Date(Number(val));
|
|
@@ -4753,6 +4753,16 @@ function checkDateInputFormat(numStr, formatKey) {
|
|
|
4753
4753
|
}
|
|
4754
4754
|
return numVal;
|
|
4755
4755
|
}
|
|
4756
|
+
const getPrevYear = (date, size = 1) => {
|
|
4757
|
+
const currtYear = date.getFullYear();
|
|
4758
|
+
date.setFullYear(currtYear - size);
|
|
4759
|
+
return date;
|
|
4760
|
+
};
|
|
4761
|
+
const getNextYear = (date, size = 1) => {
|
|
4762
|
+
const currtYear = date.getFullYear();
|
|
4763
|
+
date.setFullYear(currtYear + size);
|
|
4764
|
+
return date;
|
|
4765
|
+
};
|
|
4756
4766
|
const getPrevMonth = (date) => {
|
|
4757
4767
|
const currtYear = date.getFullYear();
|
|
4758
4768
|
const currMonth = date.getMonth();
|
|
@@ -4778,7 +4788,7 @@ const getNextMonth = (date) => {
|
|
|
4778
4788
|
return date;
|
|
4779
4789
|
};
|
|
4780
4790
|
|
|
4781
|
-
const { errLog: errLog$
|
|
4791
|
+
const { errLog: errLog$h } = createComponentLog('calendar');
|
|
4782
4792
|
const { menus: menus$2, getConfig: getConfig$2, getI18n: getI18n$1 } = VxeUI;
|
|
4783
4793
|
var VxeCalendarComponent = defineVxeComponent({
|
|
4784
4794
|
name: 'VxeCalendar',
|
|
@@ -6046,7 +6056,7 @@ var VxeCalendarComponent = defineVxeComponent({
|
|
|
6046
6056
|
const { menuConfig } = props;
|
|
6047
6057
|
const VxeUIContextMenu = VxeUI.getComponent('VxeContextMenu');
|
|
6048
6058
|
if (menuConfig && !VxeUIContextMenu) {
|
|
6049
|
-
errLog$
|
|
6059
|
+
errLog$h('vxe.error.reqComp', ['vxe-context-menu']);
|
|
6050
6060
|
}
|
|
6051
6061
|
dateOpenPanel();
|
|
6052
6062
|
});
|
|
@@ -6859,7 +6869,7 @@ function clearRowAnimate(elem, clss) {
|
|
|
6859
6869
|
}, 500);
|
|
6860
6870
|
}
|
|
6861
6871
|
|
|
6862
|
-
const { errLog: errLog$
|
|
6872
|
+
const { errLog: errLog$g } = createComponentLog('tree');
|
|
6863
6873
|
function getRowKeyByField(row, keyField) {
|
|
6864
6874
|
return row ? ('' + (row[keyField] || '')) : '';
|
|
6865
6875
|
}
|
|
@@ -8356,17 +8366,17 @@ var VxeListComponent = defineVxeComponent({
|
|
|
8356
8366
|
const keyField = computeKeyField.value;
|
|
8357
8367
|
if (!keyField) {
|
|
8358
8368
|
if (showRadio) {
|
|
8359
|
-
errLog$
|
|
8369
|
+
errLog$g('vxe.error.reqSupportProp', ['show-radio', 'row-config.keyField']);
|
|
8360
8370
|
}
|
|
8361
8371
|
if (showCheckbox) {
|
|
8362
|
-
errLog$
|
|
8372
|
+
errLog$g('vxe.error.reqSupportProp', ['show-checkbox', 'row-config.keyField']);
|
|
8363
8373
|
}
|
|
8364
8374
|
if (isDrag) {
|
|
8365
|
-
errLog$
|
|
8375
|
+
errLog$g('vxe.error.reqSupportProp', ['drag-config', 'row-config.keyField']);
|
|
8366
8376
|
}
|
|
8367
8377
|
}
|
|
8368
8378
|
if (useKey && !keyField) {
|
|
8369
|
-
errLog$
|
|
8379
|
+
errLog$g('vxe.error.reqSupportProp', ['row-config.useKey', 'row-config.keyField']);
|
|
8370
8380
|
}
|
|
8371
8381
|
if (props.autoResize) {
|
|
8372
8382
|
const el = refElem.value;
|
|
@@ -17430,6 +17440,7 @@ dynamicApp.use(VxeCountdown);
|
|
|
17430
17440
|
VxeUI.component(VxeCountdownComponent);
|
|
17431
17441
|
const Countdown = VxeCountdown;
|
|
17432
17442
|
|
|
17443
|
+
const { errLog: errLog$f } = createComponentLog('date-panel');
|
|
17433
17444
|
var VxeDatePanelComponent = defineVxeComponent({
|
|
17434
17445
|
name: 'VxeDatePanel',
|
|
17435
17446
|
props: {
|
|
@@ -17515,32 +17526,26 @@ var VxeDatePanelComponent = defineVxeComponent({
|
|
|
17515
17526
|
currentDate: null
|
|
17516
17527
|
});
|
|
17517
17528
|
const internalData = {
|
|
17518
|
-
yearSize:
|
|
17519
|
-
monthSize:
|
|
17520
|
-
quarterSize:
|
|
17529
|
+
yearSize: 16,
|
|
17530
|
+
monthSize: 12,
|
|
17531
|
+
quarterSize: 4,
|
|
17521
17532
|
hpTimeout: undefined
|
|
17522
17533
|
};
|
|
17523
17534
|
const refElem = ref();
|
|
17524
17535
|
const refPanelWrapper = ref();
|
|
17525
17536
|
const refInputTimeBody = ref();
|
|
17526
|
-
const
|
|
17527
|
-
refElem
|
|
17528
|
-
};
|
|
17529
|
-
const $xeDatePanel = {
|
|
17530
|
-
xID,
|
|
17531
|
-
props,
|
|
17532
|
-
context,
|
|
17533
|
-
reactData,
|
|
17534
|
-
internalData,
|
|
17535
|
-
getRefMaps: () => refMaps
|
|
17536
|
-
};
|
|
17537
|
-
const computeIsDateTimeType = computed(() => {
|
|
17537
|
+
const computeIsTimeType = computed(() => {
|
|
17538
17538
|
const { type } = props;
|
|
17539
|
-
return type === 'time'
|
|
17539
|
+
return type === 'time';
|
|
17540
|
+
});
|
|
17541
|
+
const computeIsTimeOrDateTimeType = computed(() => {
|
|
17542
|
+
const { type } = props;
|
|
17543
|
+
const isTimeType = computeIsTimeType.value;
|
|
17544
|
+
return isTimeType || type === 'datetime';
|
|
17540
17545
|
});
|
|
17541
17546
|
const computeIsDatePanelType = computed(() => {
|
|
17542
|
-
const
|
|
17543
|
-
return
|
|
17547
|
+
const isTimeOrDateTimeType = computeIsTimeOrDateTimeType.value;
|
|
17548
|
+
return isTimeOrDateTimeType || ['date', 'week', 'month', 'quarter', 'year'].indexOf(props.type) > -1;
|
|
17544
17549
|
});
|
|
17545
17550
|
const computeDateStartDate = computed(() => {
|
|
17546
17551
|
return props.startDate ? XEUtils.toStringDate(props.startDate) : null;
|
|
@@ -17549,19 +17554,25 @@ var VxeDatePanelComponent = defineVxeComponent({
|
|
|
17549
17554
|
return props.endDate ? XEUtils.toStringDate(props.endDate) : null;
|
|
17550
17555
|
});
|
|
17551
17556
|
const computeDateListValue = computed(() => {
|
|
17552
|
-
const { modelValue } = props;
|
|
17557
|
+
const { modelValue, valueFormat } = props;
|
|
17553
17558
|
const isDatePanelType = computeIsDatePanelType.value;
|
|
17554
17559
|
const dateValueFormat = computeDateValueFormat.value;
|
|
17560
|
+
const restList = [];
|
|
17555
17561
|
if (modelValue && isDatePanelType) {
|
|
17556
|
-
|
|
17557
|
-
|
|
17558
|
-
if (
|
|
17559
|
-
|
|
17562
|
+
(XEUtils.isArray(modelValue) ? modelValue : XEUtils.toValueString(modelValue).split(',')).forEach(val => {
|
|
17563
|
+
let strVal = val;
|
|
17564
|
+
if (val) {
|
|
17565
|
+
if (valueFormat === 'timestamp') {
|
|
17566
|
+
if (XEUtils.isString(val) && /^\d+$/.test(val)) {
|
|
17567
|
+
strVal = Number(strVal);
|
|
17568
|
+
}
|
|
17569
|
+
}
|
|
17570
|
+
const date = parseDate(strVal, dateValueFormat);
|
|
17571
|
+
restList.push(date);
|
|
17560
17572
|
}
|
|
17561
|
-
return date;
|
|
17562
17573
|
});
|
|
17563
17574
|
}
|
|
17564
|
-
return
|
|
17575
|
+
return restList;
|
|
17565
17576
|
});
|
|
17566
17577
|
const computeDateMultipleValue = computed(() => {
|
|
17567
17578
|
const dateListValue = computeDateListValue.value;
|
|
@@ -17634,8 +17645,8 @@ var VxeDatePanelComponent = defineVxeComponent({
|
|
|
17634
17645
|
});
|
|
17635
17646
|
const computeDateHMSTime = computed(() => {
|
|
17636
17647
|
const dateValue = computeDateValue.value;
|
|
17637
|
-
const
|
|
17638
|
-
return dateValue &&
|
|
17648
|
+
const isTimeOrDateTimeType = computeIsTimeOrDateTimeType.value;
|
|
17649
|
+
return dateValue && isTimeOrDateTimeType ? (dateValue.getHours() * 3600 + dateValue.getMinutes() * 60 + dateValue.getSeconds()) * 1000 : 0;
|
|
17639
17650
|
});
|
|
17640
17651
|
const computeDateLabelFormat = computed(() => {
|
|
17641
17652
|
const { labelFormat } = props;
|
|
@@ -17653,7 +17664,7 @@ var VxeDatePanelComponent = defineVxeComponent({
|
|
|
17653
17664
|
const currFullYear = currentDate.getFullYear();
|
|
17654
17665
|
const selectFullYear = selectMonth.getFullYear();
|
|
17655
17666
|
const startYearDate = new Date(selectFullYear - selectFullYear % yearSize, 0, 1);
|
|
17656
|
-
for (let index =
|
|
17667
|
+
for (let index = 0; index < yearSize; index++) {
|
|
17657
17668
|
const date = XEUtils.getWhatYear(startYearDate, index, 'first');
|
|
17658
17669
|
const itemFullYear = date.getFullYear();
|
|
17659
17670
|
years.push({
|
|
@@ -17753,7 +17764,7 @@ var VxeDatePanelComponent = defineVxeComponent({
|
|
|
17753
17764
|
const currQuarter = getDateQuarter(currentDate);
|
|
17754
17765
|
const firstYear = XEUtils.getWhatYear(selectMonth, 0, 'first');
|
|
17755
17766
|
const selFullYear = firstYear.getFullYear();
|
|
17756
|
-
for (let index =
|
|
17767
|
+
for (let index = 0; index < quarterSize; index++) {
|
|
17757
17768
|
const date = XEUtils.getWhatQuarter(firstYear, index);
|
|
17758
17769
|
const itemFullYear = date.getFullYear();
|
|
17759
17770
|
const itemQuarter = getDateQuarter(date);
|
|
@@ -17782,7 +17793,7 @@ var VxeDatePanelComponent = defineVxeComponent({
|
|
|
17782
17793
|
const currFullYear = currentDate.getFullYear();
|
|
17783
17794
|
const currMonth = currentDate.getMonth();
|
|
17784
17795
|
const selFullYear = XEUtils.getWhatYear(selectMonth, 0, 'first').getFullYear();
|
|
17785
|
-
for (let index =
|
|
17796
|
+
for (let index = 0; index < monthSize; index++) {
|
|
17786
17797
|
const date = XEUtils.getWhatYear(selectMonth, 0, index);
|
|
17787
17798
|
const itemFullYear = date.getFullYear();
|
|
17788
17799
|
const itemMonth = date.getMonth();
|
|
@@ -17860,8 +17871,8 @@ var VxeDatePanelComponent = defineVxeComponent({
|
|
|
17860
17871
|
const timeOpts = computeTimeOpts.value;
|
|
17861
17872
|
const { hours: hourOptions, hourDisabledMethod } = timeOpts;
|
|
17862
17873
|
const list = [];
|
|
17863
|
-
const
|
|
17864
|
-
if (
|
|
17874
|
+
const isTimeOrDateTimeType = computeIsTimeOrDateTimeType.value;
|
|
17875
|
+
if (isTimeOrDateTimeType) {
|
|
17865
17876
|
if (hourOptions && hourOptions.length) {
|
|
17866
17877
|
hourOptions.forEach(item => {
|
|
17867
17878
|
if (XEUtils.isNumber(item) || XEUtils.isString(item)) {
|
|
@@ -17899,8 +17910,8 @@ var VxeDatePanelComponent = defineVxeComponent({
|
|
|
17899
17910
|
const timeOpts = computeTimeOpts.value;
|
|
17900
17911
|
const { minutes: minuteOptions, minuteDisabledMethod } = timeOpts;
|
|
17901
17912
|
const list = [];
|
|
17902
|
-
const
|
|
17903
|
-
if (
|
|
17913
|
+
const isTimeOrDateTimeType = computeIsTimeOrDateTimeType.value;
|
|
17914
|
+
if (isTimeOrDateTimeType) {
|
|
17904
17915
|
if (minuteOptions && minuteOptions.length) {
|
|
17905
17916
|
minuteOptions.forEach(item => {
|
|
17906
17917
|
if (XEUtils.isNumber(item) || XEUtils.isString(item)) {
|
|
@@ -17948,8 +17959,8 @@ var VxeDatePanelComponent = defineVxeComponent({
|
|
|
17948
17959
|
const timeOpts = computeTimeOpts.value;
|
|
17949
17960
|
const { seconds: secondOptions, secondDisabledMethod } = timeOpts;
|
|
17950
17961
|
const list = [];
|
|
17951
|
-
const
|
|
17952
|
-
if (
|
|
17962
|
+
const isTimeOrDateTimeType = computeIsTimeOrDateTimeType.value;
|
|
17963
|
+
if (isTimeOrDateTimeType) {
|
|
17953
17964
|
if (secondOptions && secondOptions.length) {
|
|
17954
17965
|
secondOptions.forEach(item => {
|
|
17955
17966
|
if (XEUtils.isNumber(item) || XEUtils.isString(item)) {
|
|
@@ -17983,6 +17994,22 @@ var VxeDatePanelComponent = defineVxeComponent({
|
|
|
17983
17994
|
}
|
|
17984
17995
|
return list;
|
|
17985
17996
|
});
|
|
17997
|
+
const refMaps = {
|
|
17998
|
+
refElem
|
|
17999
|
+
};
|
|
18000
|
+
const computeMaps = {
|
|
18001
|
+
computeSize,
|
|
18002
|
+
computeYearList
|
|
18003
|
+
};
|
|
18004
|
+
const $xeDatePanel = {
|
|
18005
|
+
xID,
|
|
18006
|
+
props,
|
|
18007
|
+
context,
|
|
18008
|
+
reactData,
|
|
18009
|
+
internalData,
|
|
18010
|
+
getRefMaps: () => refMaps,
|
|
18011
|
+
getComputeMaps: () => computeMaps
|
|
18012
|
+
};
|
|
17986
18013
|
const updateModelValue = (modelValue) => {
|
|
17987
18014
|
const { type } = props;
|
|
17988
18015
|
const dateValueFormat = computeDateValueFormat.value;
|
|
@@ -17994,7 +18021,7 @@ var VxeDatePanelComponent = defineVxeComponent({
|
|
|
17994
18021
|
const parseDate = (value, format) => {
|
|
17995
18022
|
const { type, multiple } = props;
|
|
17996
18023
|
if (type === 'time') {
|
|
17997
|
-
return toStringTimeDate(XEUtils.isArray(value) ?
|
|
18024
|
+
return toStringTimeDate(XEUtils.isArray(value) ? XEUtils.last(value) : value);
|
|
17998
18025
|
}
|
|
17999
18026
|
if (XEUtils.isArray(value)) {
|
|
18000
18027
|
return XEUtils.toStringDate(XEUtils.last(value), format);
|
|
@@ -18148,14 +18175,15 @@ var VxeDatePanelComponent = defineVxeComponent({
|
|
|
18148
18175
|
const dateChange = (date, isReload) => {
|
|
18149
18176
|
const { modelValue, multiple, valueSort } = props;
|
|
18150
18177
|
const { datetimePanelValue } = reactData;
|
|
18151
|
-
const
|
|
18178
|
+
const isTimeType = computeIsTimeType.value;
|
|
18179
|
+
const isTimeOrDateTimeType = computeIsTimeOrDateTimeType.value;
|
|
18152
18180
|
const dateValueFormat = computeDateValueFormat.value;
|
|
18153
18181
|
const firstDayOfWeek = computeFirstDayOfWeek.value;
|
|
18154
18182
|
if (props.type === 'week') {
|
|
18155
18183
|
const sWeek = XEUtils.toNumber(props.selectDay);
|
|
18156
18184
|
date = XEUtils.getWhatWeek(date, 0, sWeek, firstDayOfWeek);
|
|
18157
18185
|
}
|
|
18158
|
-
else if (
|
|
18186
|
+
else if (isTimeOrDateTimeType) {
|
|
18159
18187
|
if (datetimePanelValue) {
|
|
18160
18188
|
date.setHours(datetimePanelValue.getHours());
|
|
18161
18189
|
date.setMinutes(datetimePanelValue.getMinutes());
|
|
@@ -18164,10 +18192,10 @@ var VxeDatePanelComponent = defineVxeComponent({
|
|
|
18164
18192
|
}
|
|
18165
18193
|
const inpVal = XEUtils.toDateString(date, dateValueFormat, { firstDay: firstDayOfWeek });
|
|
18166
18194
|
dateCheckMonth(date);
|
|
18167
|
-
if (multiple) {
|
|
18195
|
+
if (!isTimeType && multiple) {
|
|
18168
18196
|
const overCount = computeOverCount.value;
|
|
18169
18197
|
// 如果为多选
|
|
18170
|
-
if (
|
|
18198
|
+
if (isTimeOrDateTimeType) {
|
|
18171
18199
|
// 如果是datetime特殊类型
|
|
18172
18200
|
const dateListValue = isReload ? [] : [...computeDateListValue.value];
|
|
18173
18201
|
let datetimeRest = [];
|
|
@@ -18503,19 +18531,21 @@ var VxeDatePanelComponent = defineVxeComponent({
|
|
|
18503
18531
|
};
|
|
18504
18532
|
const dateConfirmEvent = (evnt) => {
|
|
18505
18533
|
const { multiple } = props;
|
|
18506
|
-
const { datetimePanelValue } = reactData;
|
|
18534
|
+
const { datetimePanelValue, currentDate } = reactData;
|
|
18507
18535
|
const dateValue = computeDateValue.value;
|
|
18508
|
-
const
|
|
18509
|
-
|
|
18536
|
+
const isTimeType = computeIsTimeType.value;
|
|
18537
|
+
const isTimeOrDateTimeType = computeIsTimeOrDateTimeType.value;
|
|
18538
|
+
if (isTimeOrDateTimeType) {
|
|
18510
18539
|
const dateValueFormat = computeDateValueFormat.value;
|
|
18511
|
-
if (multiple) {
|
|
18540
|
+
if (!isTimeType && multiple) {
|
|
18512
18541
|
// 如果为多选
|
|
18513
18542
|
const dateMultipleValue = computeDateMultipleValue.value;
|
|
18514
|
-
|
|
18543
|
+
const dateListValue = computeDateListValue.value;
|
|
18544
|
+
if (isTimeOrDateTimeType) {
|
|
18515
18545
|
// 如果是datetime特殊类型
|
|
18516
|
-
const
|
|
18546
|
+
const listVals = dateListValue.length ? [...dateListValue] : [];
|
|
18517
18547
|
const datetimeRest = [];
|
|
18518
|
-
|
|
18548
|
+
listVals.forEach(item => {
|
|
18519
18549
|
if (item) {
|
|
18520
18550
|
if (datetimePanelValue) {
|
|
18521
18551
|
item.setHours(datetimePanelValue.getHours());
|
|
@@ -18533,7 +18563,7 @@ var VxeDatePanelComponent = defineVxeComponent({
|
|
|
18533
18563
|
}
|
|
18534
18564
|
}
|
|
18535
18565
|
else {
|
|
18536
|
-
dateChange(dateValue ||
|
|
18566
|
+
dateChange(dateValue || currentDate);
|
|
18537
18567
|
}
|
|
18538
18568
|
}
|
|
18539
18569
|
hidePanel();
|
|
@@ -18559,7 +18589,7 @@ var VxeDatePanelComponent = defineVxeComponent({
|
|
|
18559
18589
|
};
|
|
18560
18590
|
const dateOpenPanel = () => {
|
|
18561
18591
|
const { type, defaultDate, defaultTime } = props;
|
|
18562
|
-
const
|
|
18592
|
+
const isTimeOrDateTimeType = computeIsTimeOrDateTimeType.value;
|
|
18563
18593
|
const dateValue = computeDateValue.value;
|
|
18564
18594
|
if (['year', 'quarter', 'month', 'week'].indexOf(type) > -1) {
|
|
18565
18595
|
reactData.datePanelType = type;
|
|
@@ -18587,7 +18617,7 @@ var VxeDatePanelComponent = defineVxeComponent({
|
|
|
18587
18617
|
dateNowHandle();
|
|
18588
18618
|
}
|
|
18589
18619
|
}
|
|
18590
|
-
if (
|
|
18620
|
+
if (isTimeOrDateTimeType) {
|
|
18591
18621
|
let dtPanelValue = reactData.datePanelValue;
|
|
18592
18622
|
if (!dtPanelValue) {
|
|
18593
18623
|
dtPanelValue = XEUtils.getWhatDay(Date.now(), 0, 'first');
|
|
@@ -19194,6 +19224,12 @@ var VxeDatePanelComponent = defineVxeComponent({
|
|
|
19194
19224
|
});
|
|
19195
19225
|
initValue();
|
|
19196
19226
|
dateOpenPanel();
|
|
19227
|
+
onMounted(() => {
|
|
19228
|
+
const { type, multiple } = props;
|
|
19229
|
+
if (multiple && type === 'time') {
|
|
19230
|
+
errLog$f('vxe.error.notSupportProp', [`type=${type}`, 'multiple=true', 'multiple=false']);
|
|
19231
|
+
}
|
|
19232
|
+
});
|
|
19197
19233
|
$xeDatePanel.renderVN = renderVN;
|
|
19198
19234
|
return $xeDatePanel;
|
|
19199
19235
|
},
|
|
@@ -19428,20 +19464,25 @@ var VxeDatePickerComponent = defineVxeComponent({
|
|
|
19428
19464
|
}
|
|
19429
19465
|
return disabled;
|
|
19430
19466
|
});
|
|
19431
|
-
const
|
|
19467
|
+
const computeIsTimeType = computed(() => {
|
|
19432
19468
|
const { type } = props;
|
|
19433
|
-
return type === 'time'
|
|
19469
|
+
return type === 'time';
|
|
19470
|
+
});
|
|
19471
|
+
const computeIsTimeOrDateTimeType = computed(() => {
|
|
19472
|
+
const { type } = props;
|
|
19473
|
+
const isTimeType = computeIsTimeType.value;
|
|
19474
|
+
return isTimeType || type === 'datetime';
|
|
19434
19475
|
});
|
|
19435
19476
|
const computeIsDatePickerType = computed(() => {
|
|
19436
|
-
const
|
|
19437
|
-
return
|
|
19477
|
+
const isTimeOrDateTimeType = computeIsTimeOrDateTimeType.value;
|
|
19478
|
+
return isTimeOrDateTimeType || ['date', 'week', 'month', 'quarter', 'year'].indexOf(props.type) > -1;
|
|
19438
19479
|
});
|
|
19439
19480
|
const computeIsClearable = computed(() => {
|
|
19440
19481
|
return props.clearable;
|
|
19441
19482
|
});
|
|
19442
19483
|
const computeIsDatePanelType = computed(() => {
|
|
19443
|
-
const
|
|
19444
|
-
return
|
|
19484
|
+
const isTimeOrDateTimeType = computeIsTimeOrDateTimeType.value;
|
|
19485
|
+
return isTimeOrDateTimeType || ['date', 'week', 'month', 'quarter', 'year'].indexOf(props.type) > -1;
|
|
19445
19486
|
});
|
|
19446
19487
|
const computeDateListValue = computed(() => {
|
|
19447
19488
|
const { modelValue, type, multiple } = props;
|
|
@@ -19655,7 +19696,7 @@ var VxeDatePickerComponent = defineVxeComponent({
|
|
|
19655
19696
|
};
|
|
19656
19697
|
const dateChange = (date, isReload) => {
|
|
19657
19698
|
const { modelValue, multiple } = props;
|
|
19658
|
-
const
|
|
19699
|
+
const isTimeOrDateTimeType = computeIsTimeOrDateTimeType.value;
|
|
19659
19700
|
const dateValueFormat = computeDateValueFormat.value;
|
|
19660
19701
|
const firstDayOfWeek = computeFirstDayOfWeek.value;
|
|
19661
19702
|
if (props.type === 'week') {
|
|
@@ -19666,7 +19707,7 @@ var VxeDatePickerComponent = defineVxeComponent({
|
|
|
19666
19707
|
if (multiple) {
|
|
19667
19708
|
const overCount = computeOverCount.value;
|
|
19668
19709
|
// 如果为多选
|
|
19669
|
-
if (
|
|
19710
|
+
if (isTimeOrDateTimeType) {
|
|
19670
19711
|
// 如果是datetime特殊类型
|
|
19671
19712
|
const dateListValue = [...computeDateListValue.value];
|
|
19672
19713
|
const datetimeRest = [];
|
|
@@ -20219,9 +20260,9 @@ var VxeDatePickerComponent = defineVxeComponent({
|
|
|
20219
20260
|
const panelChangeEvent = (params) => {
|
|
20220
20261
|
const { multiple, autoClose } = props;
|
|
20221
20262
|
const { value, $event } = params;
|
|
20222
|
-
const
|
|
20263
|
+
const isTimeOrDateTimeType = computeIsTimeOrDateTimeType.value;
|
|
20223
20264
|
handleChange(value, $event);
|
|
20224
|
-
if (!multiple && !
|
|
20265
|
+
if (!multiple && !isTimeOrDateTimeType) {
|
|
20225
20266
|
if (autoClose) {
|
|
20226
20267
|
hidePanel();
|
|
20227
20268
|
}
|
|
@@ -20505,7 +20546,7 @@ var VxeDatePickerComponent = defineVxeComponent({
|
|
|
20505
20546
|
const btnTransfer = computeBtnTransfer.value;
|
|
20506
20547
|
const shortcutOpts = computeShortcutOpts.value;
|
|
20507
20548
|
const isClearable = computeIsClearable.value;
|
|
20508
|
-
const
|
|
20549
|
+
const isTimeOrDateTimeType = computeIsTimeOrDateTimeType.value;
|
|
20509
20550
|
const shortcutList = computeShortcutList.value;
|
|
20510
20551
|
const timeOpts = computeTimeOpts.value;
|
|
20511
20552
|
const dateStartDate = computeDateStartDate.value;
|
|
@@ -20519,7 +20560,7 @@ var VxeDatePickerComponent = defineVxeComponent({
|
|
|
20519
20560
|
const rightSlot = slots.right;
|
|
20520
20561
|
const ppClassName = popupOpts.className;
|
|
20521
20562
|
const hasShortcutBtn = shortcutList.length > 0;
|
|
20522
|
-
const showConfirmBtn = (showConfirmButton === null ? (
|
|
20563
|
+
const showConfirmBtn = (showConfirmButton === null ? (isTimeOrDateTimeType || multiple) : showConfirmButton);
|
|
20523
20564
|
const showClearBtn = (showClearButton === null ? (isClearable && showConfirmBtn && type !== 'time') : showClearButton);
|
|
20524
20565
|
return h(Teleport, {
|
|
20525
20566
|
to: 'body',
|
|
@@ -20833,8 +20874,8 @@ function createReactData$d() {
|
|
|
20833
20874
|
isActivated: false,
|
|
20834
20875
|
selectStValue: '',
|
|
20835
20876
|
selectEdValue: '',
|
|
20836
|
-
paneStartVal:
|
|
20837
|
-
paneEndVal:
|
|
20877
|
+
paneStartVal: [],
|
|
20878
|
+
paneEndVal: []
|
|
20838
20879
|
};
|
|
20839
20880
|
}
|
|
20840
20881
|
function createInternalData$c() {
|
|
@@ -21067,9 +21108,14 @@ var VxeDateRangePickerComponent = defineVxeComponent({
|
|
|
21067
21108
|
const { startValue, endValue } = props;
|
|
21068
21109
|
return `${startValue || ''}${endValue || ''}`;
|
|
21069
21110
|
});
|
|
21070
|
-
const
|
|
21111
|
+
const computeIsTimeType = computed(() => {
|
|
21071
21112
|
const { type } = props;
|
|
21072
|
-
return type === 'time'
|
|
21113
|
+
return type === 'time';
|
|
21114
|
+
});
|
|
21115
|
+
const computeIsTimeOrDateTimeType = computed(() => {
|
|
21116
|
+
const { type } = props;
|
|
21117
|
+
const isTimeType = computeIsTimeType.value;
|
|
21118
|
+
return isTimeType || type === 'datetime';
|
|
21073
21119
|
});
|
|
21074
21120
|
const computeIsDatePickerType = computed(() => {
|
|
21075
21121
|
return ['date', 'week', 'month', 'quarter', 'year'].indexOf(props.type) > -1;
|
|
@@ -21221,7 +21267,7 @@ var VxeDateRangePickerComponent = defineVxeComponent({
|
|
|
21221
21267
|
};
|
|
21222
21268
|
};
|
|
21223
21269
|
const updateModelValue = (isModel) => {
|
|
21224
|
-
const { modelValue, startValue, endValue } = props;
|
|
21270
|
+
const { modelValue, startValue, endValue, valueFormat } = props;
|
|
21225
21271
|
let restObj = {
|
|
21226
21272
|
sValue: '',
|
|
21227
21273
|
eValue: ''
|
|
@@ -21242,8 +21288,20 @@ var VxeDateRangePickerComponent = defineVxeComponent({
|
|
|
21242
21288
|
restObj = paraeUpdateModel();
|
|
21243
21289
|
}
|
|
21244
21290
|
}
|
|
21245
|
-
|
|
21246
|
-
|
|
21291
|
+
let startRest = restObj.sValue;
|
|
21292
|
+
let endRest = restObj.eValue;
|
|
21293
|
+
if (valueFormat === 'timestamp') {
|
|
21294
|
+
if (XEUtils.isString(startRest) && /^\d+$/.test(startRest)) {
|
|
21295
|
+
startRest = Number(startRest);
|
|
21296
|
+
}
|
|
21297
|
+
if (XEUtils.isString(endRest) && /^\d+$/.test(endRest)) {
|
|
21298
|
+
endRest = Number(endRest);
|
|
21299
|
+
}
|
|
21300
|
+
}
|
|
21301
|
+
reactData.selectStValue = startRest;
|
|
21302
|
+
reactData.selectEdValue = endRest;
|
|
21303
|
+
reactData.paneEndVal = [startRest, endRest];
|
|
21304
|
+
reactData.paneStartVal = [startRest, endRest];
|
|
21247
21305
|
};
|
|
21248
21306
|
const triggerEvent = (evnt) => {
|
|
21249
21307
|
const { selectStValue, selectEdValue } = reactData;
|
|
@@ -21407,12 +21465,17 @@ var VxeDateRangePickerComponent = defineVxeComponent({
|
|
|
21407
21465
|
triggerEvent(evnt);
|
|
21408
21466
|
};
|
|
21409
21467
|
const confirmEvent = (evnt) => {
|
|
21468
|
+
const isTimeType = computeIsTimeType.value;
|
|
21410
21469
|
const $startDatePanel = refStartDatePanel.value;
|
|
21411
21470
|
const $endDatePanel = refEndDatePanel.value;
|
|
21412
21471
|
if ($startDatePanel && $endDatePanel) {
|
|
21413
21472
|
const startValue = $startDatePanel.getModelValue();
|
|
21414
21473
|
const endValue = $endDatePanel.getModelValue();
|
|
21415
|
-
if (
|
|
21474
|
+
if (isTimeType) {
|
|
21475
|
+
$startDatePanel.confirmByEvent(evnt);
|
|
21476
|
+
$endDatePanel.confirmByEvent(evnt);
|
|
21477
|
+
}
|
|
21478
|
+
else if ((startValue && !endValue) || (!startValue && endValue)) {
|
|
21416
21479
|
handleChange('', '', evnt);
|
|
21417
21480
|
}
|
|
21418
21481
|
else {
|
|
@@ -21442,11 +21505,16 @@ var VxeDateRangePickerComponent = defineVxeComponent({
|
|
|
21442
21505
|
else {
|
|
21443
21506
|
startValue = currValue || XEUtils.last(paneVals);
|
|
21444
21507
|
}
|
|
21445
|
-
reactData.paneEndVal = [startValue, endValue]
|
|
21446
|
-
reactData.paneStartVal = [startValue, endValue]
|
|
21508
|
+
reactData.paneEndVal = [startValue, endValue];
|
|
21509
|
+
reactData.paneStartVal = [startValue, endValue];
|
|
21447
21510
|
handleChange(startValue, endValue, $event);
|
|
21448
21511
|
handleSelectClose();
|
|
21449
|
-
if (
|
|
21512
|
+
if (selectStatus) {
|
|
21513
|
+
if (startValue && endValue) {
|
|
21514
|
+
internalData.selectStatus = false;
|
|
21515
|
+
}
|
|
21516
|
+
}
|
|
21517
|
+
else {
|
|
21450
21518
|
internalData.selectStatus = true;
|
|
21451
21519
|
}
|
|
21452
21520
|
nextTick(() => {
|
|
@@ -21472,11 +21540,16 @@ var VxeDateRangePickerComponent = defineVxeComponent({
|
|
|
21472
21540
|
else {
|
|
21473
21541
|
endValue = currValue || XEUtils.last(paneVals);
|
|
21474
21542
|
}
|
|
21475
|
-
reactData.paneEndVal = [startValue, endValue]
|
|
21476
|
-
reactData.paneStartVal = [startValue, endValue]
|
|
21543
|
+
reactData.paneEndVal = [startValue, endValue];
|
|
21544
|
+
reactData.paneStartVal = [startValue, endValue];
|
|
21477
21545
|
handleChange(startValue, endValue, $event);
|
|
21478
21546
|
handleSelectClose();
|
|
21479
|
-
if (
|
|
21547
|
+
if (selectStatus) {
|
|
21548
|
+
if (startValue && endValue) {
|
|
21549
|
+
internalData.selectStatus = false;
|
|
21550
|
+
}
|
|
21551
|
+
}
|
|
21552
|
+
else {
|
|
21480
21553
|
internalData.selectStatus = true;
|
|
21481
21554
|
}
|
|
21482
21555
|
nextTick(() => {
|
|
@@ -21508,6 +21581,21 @@ var VxeDateRangePickerComponent = defineVxeComponent({
|
|
|
21508
21581
|
}
|
|
21509
21582
|
break;
|
|
21510
21583
|
}
|
|
21584
|
+
case 'month':
|
|
21585
|
+
case 'quarter': {
|
|
21586
|
+
if (endYear <= startYear) {
|
|
21587
|
+
$endDatePanel.setPanelDate(getNextYear(startPanelDate));
|
|
21588
|
+
}
|
|
21589
|
+
break;
|
|
21590
|
+
}
|
|
21591
|
+
case 'year': {
|
|
21592
|
+
const { computeYearList } = $startDatePanel.getComputeMaps();
|
|
21593
|
+
const yearList = computeYearList.value;
|
|
21594
|
+
if (yearList.some((item) => XEUtils.isDateSame(item.date, endPanelDate, 'yyyy'))) {
|
|
21595
|
+
$endDatePanel.setPanelDate(getNextYear(startPanelDate, yearList.length));
|
|
21596
|
+
}
|
|
21597
|
+
break;
|
|
21598
|
+
}
|
|
21511
21599
|
}
|
|
21512
21600
|
};
|
|
21513
21601
|
const startPanelDateBtnChangeEvent = () => {
|
|
@@ -21531,6 +21619,17 @@ var VxeDateRangePickerComponent = defineVxeComponent({
|
|
|
21531
21619
|
$endDatePanel.setPanelDate(getNextMonth(startPanelDate));
|
|
21532
21620
|
break;
|
|
21533
21621
|
}
|
|
21622
|
+
case 'month':
|
|
21623
|
+
case 'quarter': {
|
|
21624
|
+
$endDatePanel.setPanelDate(getNextYear(startPanelDate));
|
|
21625
|
+
break;
|
|
21626
|
+
}
|
|
21627
|
+
case 'year': {
|
|
21628
|
+
const { computeYearList } = $startDatePanel.getComputeMaps();
|
|
21629
|
+
const yearList = computeYearList.value;
|
|
21630
|
+
$endDatePanel.setPanelDate(getNextYear(startPanelDate, yearList.length));
|
|
21631
|
+
break;
|
|
21632
|
+
}
|
|
21534
21633
|
}
|
|
21535
21634
|
}
|
|
21536
21635
|
else {
|
|
@@ -21562,6 +21661,21 @@ var VxeDateRangePickerComponent = defineVxeComponent({
|
|
|
21562
21661
|
}
|
|
21563
21662
|
break;
|
|
21564
21663
|
}
|
|
21664
|
+
case 'month':
|
|
21665
|
+
case 'quarter': {
|
|
21666
|
+
if (startYear >= endYear) {
|
|
21667
|
+
$startDatePanel.setPanelDate(getPrevYear(endPanelDate));
|
|
21668
|
+
}
|
|
21669
|
+
break;
|
|
21670
|
+
}
|
|
21671
|
+
case 'year': {
|
|
21672
|
+
const { computeYearList } = $endDatePanel.getComputeMaps();
|
|
21673
|
+
const yearList = computeYearList.value;
|
|
21674
|
+
if (yearList.some((item) => XEUtils.isDateSame(item.date, startPanelDate, 'yyyy'))) {
|
|
21675
|
+
$startDatePanel.setPanelDate(getPrevYear(endPanelDate, yearList.length));
|
|
21676
|
+
}
|
|
21677
|
+
break;
|
|
21678
|
+
}
|
|
21565
21679
|
}
|
|
21566
21680
|
};
|
|
21567
21681
|
const endPanelDateBtnChangeEvent = () => {
|
|
@@ -21585,6 +21699,17 @@ var VxeDateRangePickerComponent = defineVxeComponent({
|
|
|
21585
21699
|
$startDatePanel.setPanelDate(getPrevMonth(endPanelDate));
|
|
21586
21700
|
break;
|
|
21587
21701
|
}
|
|
21702
|
+
case 'month':
|
|
21703
|
+
case 'quarter': {
|
|
21704
|
+
$startDatePanel.setPanelDate(getPrevYear(endPanelDate));
|
|
21705
|
+
break;
|
|
21706
|
+
}
|
|
21707
|
+
case 'year': {
|
|
21708
|
+
const { computeYearList } = $endDatePanel.getComputeMaps();
|
|
21709
|
+
const yearList = computeYearList.value;
|
|
21710
|
+
$startDatePanel.setPanelDate(getPrevYear(endPanelDate, yearList.length));
|
|
21711
|
+
break;
|
|
21712
|
+
}
|
|
21588
21713
|
}
|
|
21589
21714
|
}
|
|
21590
21715
|
else {
|
|
@@ -21877,7 +22002,8 @@ var VxeDateRangePickerComponent = defineVxeComponent({
|
|
|
21877
22002
|
const isClearable = computeIsClearable.value;
|
|
21878
22003
|
const panelLabelObj = computePanelLabelObj.value;
|
|
21879
22004
|
const shortcutList = computeShortcutList.value;
|
|
21880
|
-
const
|
|
22005
|
+
const isTimeType = computeIsTimeType.value;
|
|
22006
|
+
const isTimeOrDateTimeType = computeIsTimeOrDateTimeType.value;
|
|
21881
22007
|
const defaultDates = computeDefaultDates.value;
|
|
21882
22008
|
const defaultTimes = computeDefaultTimes.value;
|
|
21883
22009
|
const timeOpts = computeTimeOpts.value;
|
|
@@ -21893,7 +22019,7 @@ var VxeDateRangePickerComponent = defineVxeComponent({
|
|
|
21893
22019
|
const [sdDate, edDate] = defaultDates;
|
|
21894
22020
|
const [sdTime, edTime] = defaultTimes;
|
|
21895
22021
|
const hasShortcutBtn = shortcutList.length > 0;
|
|
21896
|
-
const showConfirmBtn = (showConfirmButton === null ? (
|
|
22022
|
+
const showConfirmBtn = (showConfirmButton === null ? (isTimeOrDateTimeType || !autoClose) : showConfirmButton);
|
|
21897
22023
|
const showClearBtn = (showClearButton === null ? isClearable : showClearButton);
|
|
21898
22024
|
return h(Teleport, {
|
|
21899
22025
|
to: 'body',
|
|
@@ -21948,7 +22074,7 @@ var VxeDateRangePickerComponent = defineVxeComponent({
|
|
|
21948
22074
|
h(VxeDatePanel, {
|
|
21949
22075
|
ref: refStartDatePanel,
|
|
21950
22076
|
modelValue: paneStartVal,
|
|
21951
|
-
multiple:
|
|
22077
|
+
multiple: !isTimeType,
|
|
21952
22078
|
valueSort: true,
|
|
21953
22079
|
limitCount: 3,
|
|
21954
22080
|
defaultMode: 'first',
|
|
@@ -21975,7 +22101,7 @@ var VxeDateRangePickerComponent = defineVxeComponent({
|
|
|
21975
22101
|
h(VxeDatePanel, {
|
|
21976
22102
|
ref: refEndDatePanel,
|
|
21977
22103
|
modelValue: paneEndVal,
|
|
21978
|
-
multiple:
|
|
22104
|
+
multiple: !isTimeType,
|
|
21979
22105
|
valueSort: true,
|
|
21980
22106
|
limitCount: 3,
|
|
21981
22107
|
defaultMode: 'last',
|