vxe-pc-ui 3.15.23 → 3.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.
Files changed (51) hide show
  1. package/es/date-panel/src/date-panel.js +96 -53
  2. package/es/date-panel/src/util.js +40 -3
  3. package/es/date-picker/src/date-picker.js +20 -13
  4. package/es/date-range-picker/src/date-range-picker.js +296 -132
  5. package/es/icon/style.css +1 -1
  6. package/es/style.css +1 -1
  7. package/es/style.min.css +1 -1
  8. package/es/tooltip/src/tooltip.js +34 -21
  9. package/es/ui/index.js +1 -1
  10. package/es/ui/src/log.js +1 -1
  11. package/lib/date-panel/src/date-panel.js +110 -54
  12. package/lib/date-panel/src/date-panel.min.js +1 -1
  13. package/lib/date-panel/src/util.js +43 -5
  14. package/lib/date-panel/src/util.min.js +1 -1
  15. package/lib/date-picker/src/date-picker.js +20 -13
  16. package/lib/date-picker/src/date-picker.min.js +1 -1
  17. package/lib/date-range-picker/src/date-range-picker.js +318 -139
  18. package/lib/date-range-picker/src/date-range-picker.min.js +1 -1
  19. package/lib/icon/style/style.css +1 -1
  20. package/lib/icon/style/style.min.css +1 -1
  21. package/lib/index.umd.js +538 -240
  22. package/lib/index.umd.min.js +1 -1
  23. package/lib/style.css +1 -1
  24. package/lib/style.min.css +1 -1
  25. package/lib/tooltip/src/tooltip.js +36 -21
  26. package/lib/tooltip/src/tooltip.min.js +1 -1
  27. package/lib/ui/index.js +1 -1
  28. package/lib/ui/index.min.js +1 -1
  29. package/lib/ui/src/log.js +1 -1
  30. package/lib/ui/src/log.min.js +1 -1
  31. package/package.json +1 -1
  32. package/packages/date-panel/src/date-panel.ts +102 -54
  33. package/packages/date-panel/src/util.ts +42 -3
  34. package/packages/date-picker/src/date-picker.ts +21 -13
  35. package/packages/date-range-picker/src/date-range-picker.ts +296 -131
  36. package/packages/tooltip/src/tooltip.ts +41 -20
  37. package/types/components/date-panel.d.ts +18 -3
  38. package/types/components/date-range-picker.d.ts +5 -3
  39. package/types/components/tooltip.d.ts +1 -1
  40. /package/es/icon/{iconfont.1783073807010.ttf → iconfont.1783247770465.ttf} +0 -0
  41. /package/es/icon/{iconfont.1783073807010.woff → iconfont.1783247770465.woff} +0 -0
  42. /package/es/icon/{iconfont.1783073807010.woff2 → iconfont.1783247770465.woff2} +0 -0
  43. /package/es/{iconfont.1783073807010.ttf → iconfont.1783247770465.ttf} +0 -0
  44. /package/es/{iconfont.1783073807010.woff → iconfont.1783247770465.woff} +0 -0
  45. /package/es/{iconfont.1783073807010.woff2 → iconfont.1783247770465.woff2} +0 -0
  46. /package/lib/icon/style/{iconfont.1783073807010.ttf → iconfont.1783247770465.ttf} +0 -0
  47. /package/lib/icon/style/{iconfont.1783073807010.woff → iconfont.1783247770465.woff} +0 -0
  48. /package/lib/icon/style/{iconfont.1783073807010.woff2 → iconfont.1783247770465.woff2} +0 -0
  49. /package/lib/{iconfont.1783073807010.ttf → iconfont.1783247770465.ttf} +0 -0
  50. /package/lib/{iconfont.1783073807010.woff → iconfont.1783247770465.woff} +0 -0
  51. /package/lib/{iconfont.1783073807010.woff2 → iconfont.1783247770465.woff2} +0 -0
@@ -4,6 +4,28 @@ import { getConfig, createEvent, globalMixins } from '../../ui';
4
4
  import { getLastZIndex, nextZIndex } from '../../ui/src/utils';
5
5
  import { toCssUnit } from '../../ui/src/dom';
6
6
  import { getSlotVNs } from '../../ui/src/vn';
7
+ function createReactData() {
8
+ return {
9
+ target: null,
10
+ isUpdate: false,
11
+ visible: false,
12
+ tipPos: null,
13
+ tipContent: '',
14
+ tipActive: false,
15
+ tipTarget: null,
16
+ tipZindex: 0,
17
+ tipStore: {
18
+ style: {},
19
+ placement: '',
20
+ arrowStyle: {}
21
+ }
22
+ };
23
+ }
24
+ function createInternalData() {
25
+ return {
26
+ // showDelayTip: undefined
27
+ };
28
+ }
7
29
  export default {
8
30
  name: 'VxeTooltip',
9
31
  mixins: [
@@ -89,27 +111,10 @@ export default {
89
111
  }
90
112
  },
91
113
  data() {
92
- const reactData = {
93
- target: null,
94
- isUpdate: false,
95
- visible: false,
96
- tipPos: null,
97
- tipContent: '',
98
- tipActive: false,
99
- tipTarget: null,
100
- tipZindex: 0,
101
- tipStore: {
102
- style: {},
103
- placement: '',
104
- arrowStyle: {}
105
- }
106
- };
107
- const internalData = {};
108
- return {
109
- xID: XEUtils.uniqueId(),
110
- reactData,
111
- internalData
112
- };
114
+ const xID = XEUtils.uniqueId();
115
+ const reactData = createReactData();
116
+ return Object.assign(Object.assign({}, {}), { xID,
117
+ reactData });
113
118
  },
114
119
  computed: Object.assign(Object.assign({}, {}), { computeWrapperStyle() {
115
120
  const $xeTooltip = this;
@@ -573,6 +578,7 @@ export default {
573
578
  },
574
579
  created() {
575
580
  const $xeTooltip = this;
581
+ $xeTooltip.internalData = createInternalData();
576
582
  $xeTooltip.handleDelayFn();
577
583
  },
578
584
  mounted() {
@@ -638,6 +644,13 @@ export default {
638
644
  }
639
645
  }
640
646
  },
647
+ destroyed() {
648
+ const $xeTooltip = this;
649
+ const reactData = $xeTooltip.reactData;
650
+ const internalData = $xeTooltip.internalData;
651
+ XEUtils.assign(reactData, createReactData());
652
+ XEUtils.assign(internalData, createInternalData());
653
+ },
641
654
  render(h) {
642
655
  return this.renderVN(h);
643
656
  }
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 = "3.15.23";
4
+ export const version = "3.15.25";
5
5
  VxeUI.uiVersion = version;
6
6
  VxeUI.dynamicApp = dynamicApp;
7
7
  export function config(options) {
package/es/ui/src/log.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import { VxeUI } from '@vxe-ui/core';
2
2
  const { log } = VxeUI;
3
- const uiVersion = `ui v${"3.15.23"}`;
3
+ const uiVersion = `ui v${"3.15.25"}`;
4
4
  export function createComponentLog(name) {
5
5
  const tableVersion = VxeUI.tableVersion ? `table v${VxeUI.tableVersion}` : '';
6
6
  const ganttVersion = VxeUI.ganttVersion ? `gantt v${VxeUI.ganttVersion}` : '';
@@ -9,6 +9,7 @@ var _comp = require("../../ui/src/comp");
9
9
  var _xeUtils = _interopRequireDefault(require("xe-utils"));
10
10
  var _ui = require("../../ui");
11
11
  var _util = require("./util");
12
+ var _log = require("../../ui/src/log");
12
13
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
13
14
  function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
14
15
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
@@ -19,6 +20,8 @@ function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r)
19
20
  function _iterableToArray(r) { if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r); }
20
21
  function _arrayWithoutHoles(r) { if (Array.isArray(r)) return _arrayLikeToArray(r); }
21
22
  function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
23
+ var _createComponentLog = (0, _log.createComponentLog)('date-panel'),
24
+ errLog = _createComponentLog.errLog;
22
25
  var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defineVxeComponent)({
23
26
  name: 'VxeDatePanel',
24
27
  mixins: [_ui.globalMixins.sizeMixin],
@@ -27,7 +30,7 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
27
30
  event: 'modelValue'
28
31
  },
29
32
  props: {
30
- value: [String, Number, Date],
33
+ value: [String, Number, Date, Array],
31
34
  type: {
32
35
  type: String,
33
36
  default: 'date'
@@ -60,6 +63,7 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
60
63
  return (0, _ui.getConfig)().datePanel.endDate;
61
64
  }
62
65
  },
66
+ defaultMode: String,
63
67
  defaultDate: [String, Number, Date],
64
68
  defaultTime: [String, Number, Date],
65
69
  minDate: [String, Number, Date],
@@ -73,6 +77,7 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
73
77
  labelFormat: String,
74
78
  valueFormat: String,
75
79
  timeFormat: String,
80
+ valueSort: Boolean,
76
81
  festivalMethod: {
77
82
  type: Function,
78
83
  default: function _default() {
@@ -110,9 +115,9 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
110
115
  currentDate: null
111
116
  };
112
117
  var internalData = {
113
- yearSize: 12,
114
- monthSize: 20,
115
- quarterSize: 8,
118
+ yearSize: 16,
119
+ monthSize: 12,
120
+ quarterSize: 4,
116
121
  hpTimeout: undefined
117
122
  };
118
123
  return {
@@ -122,17 +127,24 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
122
127
  };
123
128
  },
124
129
  computed: Object.assign(Object.assign({}, {}), {
125
- computeIsDateTimeType: function computeIsDateTimeType() {
130
+ computeIsTimeType: function computeIsTimeType() {
126
131
  var $xeDatePanel = this;
127
132
  var props = $xeDatePanel;
128
133
  var type = props.type;
129
- return type === 'time' || type === 'datetime';
134
+ return type === 'time';
135
+ },
136
+ computeIsTimeOrDateTimeType: function computeIsTimeOrDateTimeType() {
137
+ var $xeDatePanel = this;
138
+ var props = $xeDatePanel;
139
+ var type = props.type;
140
+ var isTimeType = $xeDatePanel.computeIsTimeType;
141
+ return isTimeType || type === 'datetime';
130
142
  },
131
143
  computeIsDatePanelType: function computeIsDatePanelType() {
132
144
  var $xeDatePanel = this;
133
145
  var props = $xeDatePanel;
134
- var isDateTimeType = $xeDatePanel.computeIsDateTimeType;
135
- return isDateTimeType || ['date', 'week', 'month', 'quarter', 'year'].indexOf(props.type) > -1;
146
+ var isTimeOrDateTimeType = $xeDatePanel.computeIsTimeOrDateTimeType;
147
+ return isTimeOrDateTimeType || ['date', 'week', 'month', 'quarter', 'year'].indexOf(props.type) > -1;
136
148
  },
137
149
  computeDateStartDate: function computeDateStartDate() {
138
150
  var $xeDatePanel = this;
@@ -148,19 +160,25 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
148
160
  var $xeDatePanel = this;
149
161
  var props = $xeDatePanel;
150
162
  var modelValue = props.value,
151
- multiple = props.multiple;
163
+ valueFormat = props.valueFormat;
152
164
  var isDatePanelType = $xeDatePanel.computeIsDatePanelType;
153
165
  var dateValueFormat = $xeDatePanel.computeDateValueFormat;
154
- if (multiple && modelValue && isDatePanelType) {
155
- return _xeUtils.default.toValueString(modelValue).split(',').map(function (item) {
156
- var date = $xeDatePanel.parseDate(item, dateValueFormat);
157
- if (_xeUtils.default.isValidDate(date)) {
158
- return date;
166
+ var restList = [];
167
+ if (modelValue && isDatePanelType) {
168
+ (_xeUtils.default.isArray(modelValue) ? modelValue : _xeUtils.default.toValueString(modelValue).split(',')).forEach(function (val) {
169
+ var strVal = val;
170
+ if (val) {
171
+ if (valueFormat === 'timestamp') {
172
+ if (_xeUtils.default.isString(val) && /^\d+$/.test(val)) {
173
+ strVal = Number(strVal);
174
+ }
175
+ }
176
+ var date = $xeDatePanel.parseDate(strVal, dateValueFormat);
177
+ restList.push(date);
159
178
  }
160
- return date;
161
179
  });
162
180
  }
163
- return [];
181
+ return restList;
164
182
  },
165
183
  computeDateMultipleValue: function computeDateMultipleValue() {
166
184
  var $xeDatePanel = this;
@@ -209,12 +227,15 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
209
227
  computeDateValue: function computeDateValue() {
210
228
  var $xeDatePanel = this;
211
229
  var props = $xeDatePanel;
212
- var modelValue = props.value;
230
+ var modelValue = props.value,
231
+ defaultMode = props.defaultMode;
213
232
  var isDatePanelType = $xeDatePanel.computeIsDatePanelType;
214
233
  var dateValueFormat = $xeDatePanel.computeDateValueFormat;
215
234
  var val = null;
216
235
  if (modelValue && isDatePanelType) {
217
- var date = $xeDatePanel.parseDate(modelValue, dateValueFormat);
236
+ var vals = _xeUtils.default.isString(modelValue) ? modelValue.split(',') : modelValue;
237
+ var currVal = defaultMode === 'last' ? _xeUtils.default.last(vals) : _xeUtils.default.first(vals);
238
+ var date = $xeDatePanel.parseDate(currVal, dateValueFormat);
218
239
  if (_xeUtils.default.isValidDate(date)) {
219
240
  val = date;
220
241
  }
@@ -255,8 +276,8 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
255
276
  computeDateHMSTime: function computeDateHMSTime() {
256
277
  var $xeDatePanel = this;
257
278
  var dateValue = $xeDatePanel.computeDateValue;
258
- var isDateTimeType = $xeDatePanel.computeIsDateTimeType;
259
- return dateValue && isDateTimeType ? (dateValue.getHours() * 3600 + dateValue.getMinutes() * 60 + dateValue.getSeconds()) * 1000 : 0;
279
+ var isTimeOrDateTimeType = $xeDatePanel.computeIsTimeOrDateTimeType;
280
+ return dateValue && isTimeOrDateTimeType ? (dateValue.getHours() * 3600 + dateValue.getMinutes() * 60 + dateValue.getSeconds()) * 1000 : 0;
260
281
  },
261
282
  computeDateLabelFormat: function computeDateLabelFormat() {
262
283
  var $xeDatePanel = this;
@@ -280,7 +301,7 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
280
301
  var currFullYear = currentDate.getFullYear();
281
302
  var selectFullYear = selectMonth.getFullYear();
282
303
  var startYearDate = new Date(selectFullYear - selectFullYear % yearSize, 0, 1);
283
- for (var index = -4; index < yearSize + 4; index++) {
304
+ for (var index = 0; index < yearSize; index++) {
284
305
  var date = _xeUtils.default.getWhatYear(startYearDate, index, 'first');
285
306
  var itemFullYear = date.getFullYear();
286
307
  years.push({
@@ -392,7 +413,7 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
392
413
  var currQuarter = (0, _util.getDateQuarter)(currentDate);
393
414
  var firstYear = _xeUtils.default.getWhatYear(selectMonth, 0, 'first');
394
415
  var selFullYear = firstYear.getFullYear();
395
- for (var index = -2; index < quarterSize - 2; index++) {
416
+ for (var index = 0; index < quarterSize; index++) {
396
417
  var date = _xeUtils.default.getWhatQuarter(firstYear, index);
397
418
  var itemFullYear = date.getFullYear();
398
419
  var itemQuarter = (0, _util.getDateQuarter)(date);
@@ -426,7 +447,7 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
426
447
  var currFullYear = currentDate.getFullYear();
427
448
  var currMonth = currentDate.getMonth();
428
449
  var selFullYear = _xeUtils.default.getWhatYear(selectMonth, 0, 'first').getFullYear();
429
- for (var index = -4; index < monthSize - 4; index++) {
450
+ for (var index = 0; index < monthSize; index++) {
430
451
  var date = _xeUtils.default.getWhatYear(selectMonth, 0, index);
431
452
  var itemFullYear = date.getFullYear();
432
453
  var itemMonth = date.getMonth();
@@ -512,8 +533,8 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
512
533
  var hourOptions = timeOpts.hours,
513
534
  hourDisabledMethod = timeOpts.hourDisabledMethod;
514
535
  var list = [];
515
- var isDateTimeType = $xeDatePanel.computeIsDateTimeType;
516
- if (isDateTimeType) {
536
+ var isTimeOrDateTimeType = $xeDatePanel.computeIsTimeOrDateTimeType;
537
+ if (isTimeOrDateTimeType) {
517
538
  if (hourOptions && hourOptions.length) {
518
539
  hourOptions.forEach(function (item) {
519
540
  if (_xeUtils.default.isNumber(item) || _xeUtils.default.isString(item)) {
@@ -557,8 +578,8 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
557
578
  var minuteOptions = timeOpts.minutes,
558
579
  minuteDisabledMethod = timeOpts.minuteDisabledMethod;
559
580
  var list = [];
560
- var isDateTimeType = $xeDatePanel.computeIsDateTimeType;
561
- if (isDateTimeType) {
581
+ var isTimeOrDateTimeType = $xeDatePanel.computeIsTimeOrDateTimeType;
582
+ if (isTimeOrDateTimeType) {
562
583
  if (minuteOptions && minuteOptions.length) {
563
584
  minuteOptions.forEach(function (item) {
564
585
  if (_xeUtils.default.isNumber(item) || _xeUtils.default.isString(item)) {
@@ -616,8 +637,8 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
616
637
  var secondOptions = timeOpts.seconds,
617
638
  secondDisabledMethod = timeOpts.secondDisabledMethod;
618
639
  var list = [];
619
- var isDateTimeType = $xeDatePanel.computeIsDateTimeType;
620
- if (isDateTimeType) {
640
+ var isTimeOrDateTimeType = $xeDatePanel.computeIsTimeOrDateTimeType;
641
+ if (isTimeOrDateTimeType) {
621
642
  if (secondOptions && secondOptions.length) {
622
643
  secondOptions.forEach(function (item) {
623
644
  if (_xeUtils.default.isNumber(item) || _xeUtils.default.isString(item)) {
@@ -696,10 +717,10 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
696
717
  var type = props.type,
697
718
  multiple = props.multiple;
698
719
  if (type === 'time') {
699
- return (0, _util.toStringTimeDate)(value);
720
+ return (0, _util.toStringTimeDate)(_xeUtils.default.isArray(value) ? _xeUtils.default.last(value) : value);
700
721
  }
701
722
  if (_xeUtils.default.isArray(value)) {
702
- return _xeUtils.default.toStringDate(value[0], format);
723
+ return _xeUtils.default.toStringDate(_xeUtils.default.last(value), format);
703
724
  }
704
725
  if (_xeUtils.default.isString(value)) {
705
726
  return _xeUtils.default.toStringDate(multiple ? _xeUtils.default.last(value.split(',')) : value, format);
@@ -775,7 +796,7 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
775
796
  });
776
797
  }
777
798
  },
778
- handleChange: function handleChange(value, evnt) {
799
+ handleChange: function handleChange(value, evnt, params) {
779
800
  var $xeDatePanel = this;
780
801
  var props = $xeDatePanel;
781
802
  var reactData = $xeDatePanel.reactData;
@@ -792,7 +813,8 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
792
813
  $xeDatePanel.emitModel(timeNum);
793
814
  if (modelValue !== timeNum) {
794
815
  $xeDatePanel.dispatchEvent('change', {
795
- value: timeNum
816
+ value: timeNum,
817
+ currValue: params ? params.currValue : ''
796
818
  }, evnt);
797
819
  }
798
820
  } else if ((0, _util.hasDateValueType)(valueFormat)) {
@@ -802,14 +824,16 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
802
824
  $xeDatePanel.emitModel(_dateVal);
803
825
  if (modelValue && _dateVal ? _xeUtils.default.toStringDate(modelValue).getTime() !== _dateVal.getTime() : modelValue !== _dateVal) {
804
826
  $xeDatePanel.dispatchEvent('change', {
805
- value: _dateVal
827
+ value: _dateVal,
828
+ currValue: params ? params.currValue : ''
806
829
  }, evnt);
807
830
  }
808
831
  } else {
809
832
  $xeDatePanel.emitModel(value);
810
833
  if (_xeUtils.default.toValueString(modelValue) !== value) {
811
834
  $xeDatePanel.dispatchEvent('change', {
812
- value: value
835
+ value: value,
836
+ currValue: params ? params.currValue : ''
813
837
  }, evnt);
814
838
  }
815
839
  }
@@ -885,15 +909,17 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
885
909
  var props = $xeDatePanel;
886
910
  var reactData = $xeDatePanel.reactData;
887
911
  var modelValue = props.value,
888
- multiple = props.multiple;
912
+ multiple = props.multiple,
913
+ valueSort = props.valueSort;
889
914
  var datetimePanelValue = reactData.datetimePanelValue;
890
- var isDateTimeType = $xeDatePanel.computeIsDateTimeType;
915
+ var isTimeType = $xeDatePanel.computeIsTimeType;
916
+ var isTimeOrDateTimeType = $xeDatePanel.computeIsTimeOrDateTimeType;
891
917
  var dateValueFormat = $xeDatePanel.computeDateValueFormat;
892
918
  var firstDayOfWeek = $xeDatePanel.computeFirstDayOfWeek;
893
919
  if (props.type === 'week') {
894
920
  var sWeek = _xeUtils.default.toNumber(props.selectDay);
895
921
  date = _xeUtils.default.getWhatWeek(date, 0, sWeek, firstDayOfWeek);
896
- } else if (isDateTimeType) {
922
+ } else if (isTimeOrDateTimeType) {
897
923
  if (datetimePanelValue) {
898
924
  date.setHours(datetimePanelValue.getHours());
899
925
  date.setMinutes(datetimePanelValue.getMinutes());
@@ -904,10 +930,10 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
904
930
  firstDay: firstDayOfWeek
905
931
  });
906
932
  $xeDatePanel.dateCheckMonth(date);
907
- if (multiple) {
933
+ if (!isTimeType && multiple) {
908
934
  var overCount = $xeDatePanel.computeOverCount;
909
935
  // 如果为多选
910
- if (isDateTimeType) {
936
+ if (isTimeOrDateTimeType) {
911
937
  // 如果是datetime特殊类型
912
938
  var dateListValue = isReload ? [] : _toConsumableArray($xeDatePanel.computeDateListValue);
913
939
  var datetimeRest = [];
@@ -933,37 +959,53 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
933
959
  datetimeRest.push(item);
934
960
  }
935
961
  });
962
+ // 排序
963
+ if (valueSort) {
964
+ datetimeRest = datetimeRest.sort(function (a, b) {
965
+ return a.getTime() - b.getTime();
966
+ });
967
+ }
936
968
  $xeDatePanel.handleChange(datetimeRest.map(function (date) {
937
969
  return _xeUtils.default.toDateString(date, dateValueFormat);
938
970
  }).join(','), {
939
971
  type: 'update'
972
+ }, {
973
+ currValue: inpVal
940
974
  });
941
975
  } else {
942
976
  var dateMultipleValue = isReload ? [] : $xeDatePanel.computeDateMultipleValue;
977
+ var dateRest = [];
943
978
  // 如果是日期类型
944
979
  if (dateMultipleValue.some(function (val) {
945
980
  return _xeUtils.default.isEqual(val, inpVal);
946
981
  })) {
947
- $xeDatePanel.handleChange(dateMultipleValue.filter(function (val) {
982
+ dateRest = dateMultipleValue.filter(function (val) {
948
983
  return !_xeUtils.default.isEqual(val, inpVal);
949
- }).join(','), {
950
- type: 'update'
951
984
  });
952
985
  } else {
953
986
  if (overCount) {
954
987
  // 如果超出最大多选数量
955
988
  return;
956
989
  }
957
- $xeDatePanel.handleChange(dateMultipleValue.concat([inpVal]).join(','), {
958
- type: 'update'
959
- });
990
+ dateRest = dateMultipleValue.concat([inpVal]);
991
+ }
992
+ // 排序
993
+ if (valueSort) {
994
+ dateRest = dateRest.sort();
960
995
  }
996
+ $xeDatePanel.handleChange(dateRest.join(','), {
997
+ type: 'update'
998
+ }, {
999
+ currValue: inpVal
1000
+ });
961
1001
  }
962
1002
  } else {
963
1003
  // 如果为单选
964
1004
  if (!_xeUtils.default.isEqual(modelValue, inpVal)) {
965
1005
  $xeDatePanel.handleChange(inpVal, {
966
1006
  type: 'update'
1007
+ }, {
1008
+ currValue: inpVal
967
1009
  });
968
1010
  }
969
1011
  }
@@ -1311,17 +1353,19 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
1311
1353
  var multiple = props.multiple;
1312
1354
  var datetimePanelValue = reactData.datetimePanelValue;
1313
1355
  var dateValue = $xeDatePanel.computeDateValue;
1314
- var isDateTimeType = $xeDatePanel.computeIsDateTimeType;
1315
- if (isDateTimeType) {
1356
+ var isTimeType = $xeDatePanel.computeIsTimeType;
1357
+ var isTimeOrDateTimeType = $xeDatePanel.computeIsTimeOrDateTimeType;
1358
+ if (isTimeOrDateTimeType) {
1316
1359
  var dateValueFormat = $xeDatePanel.computeDateValueFormat;
1317
- if (multiple) {
1360
+ if (!isTimeType && multiple) {
1318
1361
  // 如果为多选
1319
1362
  var dateMultipleValue = $xeDatePanel.computeDateMultipleValue;
1320
- if (isDateTimeType) {
1363
+ var dateListValue = $xeDatePanel.computeDateListValue;
1364
+ if (isTimeOrDateTimeType) {
1321
1365
  // 如果是datetime特殊类型
1322
- var dateListValue = _toConsumableArray($xeDatePanel.computeDateListValue);
1366
+ var listVals = dateListValue.length ? _toConsumableArray(dateListValue) : [];
1323
1367
  var datetimeRest = [];
1324
- dateListValue.forEach(function (item) {
1368
+ listVals.forEach(function (item) {
1325
1369
  if (item) {
1326
1370
  if (datetimePanelValue) {
1327
1371
  item.setHours(datetimePanelValue.getHours());
@@ -1378,7 +1422,7 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
1378
1422
  var type = props.type,
1379
1423
  defaultDate = props.defaultDate,
1380
1424
  defaultTime = props.defaultTime;
1381
- var isDateTimeType = $xeDatePanel.computeIsDateTimeType;
1425
+ var isTimeOrDateTimeType = $xeDatePanel.computeIsTimeOrDateTimeType;
1382
1426
  var dateValue = $xeDatePanel.computeDateValue;
1383
1427
  if (['year', 'quarter', 'month', 'week'].indexOf(type) > -1) {
1384
1428
  reactData.datePanelType = type;
@@ -1402,7 +1446,7 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
1402
1446
  $xeDatePanel.dateNowHandle();
1403
1447
  }
1404
1448
  }
1405
- if (isDateTimeType) {
1449
+ if (isTimeOrDateTimeType) {
1406
1450
  var dtPanelValue = reactData.datePanelValue;
1407
1451
  if (!dtPanelValue) {
1408
1452
  dtPanelValue = _xeUtils.default.getWhatDay(Date.now(), 0, 'first');
@@ -1429,6 +1473,12 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
1429
1473
  var reactData = $xeDatePanel.reactData;
1430
1474
  return reactData.inputValue;
1431
1475
  },
1476
+ getViewType: function getViewType() {
1477
+ var $xeDatePanel = this;
1478
+ var reactData = $xeDatePanel.reactData;
1479
+ var datePanelType = reactData.datePanelType;
1480
+ return datePanelType;
1481
+ },
1432
1482
  setPanelDate: function setPanelDate(date) {
1433
1483
  var $xeDatePanel = this;
1434
1484
  if (date) {
@@ -2066,6 +2116,12 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
2066
2116
  },
2067
2117
  created: function created() {
2068
2118
  var $xeDatePanel = this;
2119
+ var props = $xeDatePanel;
2120
+ var type = props.type,
2121
+ multiple = props.multiple;
2122
+ if (multiple && type === 'time') {
2123
+ errLog('vxe.error.notSupportProp', ["type=".concat(type), 'multiple=true', 'multiple=false']);
2124
+ }
2069
2125
  $xeDatePanel.initValue();
2070
2126
  $xeDatePanel.dateOpenPanel();
2071
2127
  },