@kdcloudjs/kdesign 1.7.58 → 1.7.59

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.
@@ -6,7 +6,7 @@ import _filterInstanceProperty from "@babel/runtime-corejs3/core-js-stable/insta
6
6
  import * as React from 'react';
7
7
  import classNames from 'classnames';
8
8
  import TimeColumn from './time-column';
9
- import { formatDate, newDate, setTime as utilSetTime } from '../../utils/date-fns';
9
+ import { formatDate, newDate, setTime as utilSetTime, isValid } from '../../utils/date-fns';
10
10
  import Context from '../../context';
11
11
  import useStateMemo from '../../hooks/use-state-memo';
12
12
  import { leftPad } from '../../utils';
@@ -39,7 +39,9 @@ function TimePanel(props) {
39
39
  minutes = _context$minutes === void 0 ? [] : _context$minutes,
40
40
  _context$seconds = context.seconds,
41
41
  seconds = _context$seconds === void 0 ? [] : _context$seconds,
42
- disabledTimePanel = context.disabledTimePanel;
42
+ disabledTimePanel = context.disabledTimePanel,
43
+ rangeValue = context.rangeValue,
44
+ panelPosition = context.panelPosition;
43
45
  var picker = props.picker,
44
46
  _props$format = props.format,
45
47
  format = _props$format === void 0 ? 'HH:mm:ss' : _props$format,
@@ -72,9 +74,22 @@ function TimePanel(props) {
72
74
  var hour = originHour;
73
75
  // const minute = value ? getMinutes(value) : -1
74
76
  // const second = value ? getSeconds(value) : -1
77
+ var getDefaultDate = function getDefaultDate() {
78
+ if (panelPosition) {
79
+ if (rangeValue && rangeValue[0] && isValid(rangeValue[0])) {
80
+ return rangeValue[0];
81
+ }
82
+ if (rangeValue && rangeValue[1] && isValid(rangeValue[1])) {
83
+ return rangeValue[1];
84
+ }
85
+ } else if (value && isValid(value)) {
86
+ return value;
87
+ }
88
+ return newDate();
89
+ };
75
90
  var setTime = function setTime(isPM, newHour, newMinute, newSecond) {
76
91
  var _a, _b, _c;
77
- var date = value || newDate();
92
+ var date = getDefaultDate();
78
93
  var _hour = newHour > -1 ? newHour : (_a = _findInstanceProperty(rawHours).call(rawHours, function (n) {
79
94
  return !n.disabled;
80
95
  })) === null || _a === void 0 ? void 0 : _a.value;
@@ -30,14 +30,6 @@ function reorderValues(values) {
30
30
  }
31
31
  return values;
32
32
  }
33
- // 范围时间顺序错误时报错
34
- function isErrorValues(values) {
35
- if (values && values[0] && values[1] && isAfter(values[0], values[1])) {
36
- console.error('开始日期在结束日期之后');
37
- return true;
38
- }
39
- return false;
40
- }
41
33
  // 是否可以切换选择器
42
34
  function canValueTrigger(value, index, disabled, allowEmpty) {
43
35
  if (value) {
@@ -145,17 +137,7 @@ var InternalRangePicker = function InternalRangePicker(props, ref) {
145
137
  // 原始数据
146
138
  var _useMergedState3 = useMergedState(null, {
147
139
  value: value,
148
- defaultValue: defaultValue,
149
- postState: function postState(values) {
150
- if (picker === 'time' || picker === 'date' && showTime) {
151
- return order ? reorderValues(values) : values;
152
- } else {
153
- if (isErrorValues(values)) {
154
- return [values[0], null];
155
- }
156
- return values;
157
- }
158
- }
140
+ defaultValue: defaultValue
159
141
  }),
160
142
  _useMergedState4 = _slicedToArray(_useMergedState3, 2),
161
143
  dateValue = _useMergedState4[0],
@@ -352,12 +334,20 @@ var InternalRangePicker = function InternalRangePicker(props, ref) {
352
334
  }
353
335
  }, 0);
354
336
  };
337
+ var triggerChangeInner = function triggerChangeInner(values) {
338
+ if (typeof value === 'undefined') {
339
+ setInnerValue(values);
340
+ }
341
+ if (onChange && (!isEqual(getValue(dateValue, 0), getValue(values, 0)) || !isEqual(getValue(dateValue, 1), getValue(values, 1)))) {
342
+ onChange(values, [values && values[0] ? formatDate(values[0], _format) : '', values && values[1] ? formatDate(values[1], _format) : '']);
343
+ }
344
+ };
355
345
  var triggerChange = function triggerChange(newValue, sourceIndex) {
356
346
  var values = newValue;
357
347
  var startValue = getValue(values, 0);
358
348
  var endValue = getValue(values, 1);
359
349
  if (startValue && endValue && isAfter(startValue, endValue)) {
360
- if (picker === 'week' && !isSameWeek(startValue, endValue) || picker === 'quarter' && !isSameQuarter(startValue, endValue) || picker !== 'week' && picker !== 'quarter' && picker !== 'time' && !isSameDay(startValue, endValue)) {
350
+ if (picker === 'week' && !isSameWeek(startValue, endValue) || picker === 'quarter' && !isSameQuarter(startValue, endValue) || picker === 'time' && !isEqual(startValue, endValue) || picker !== 'week' && picker !== 'quarter' && picker !== 'time' && !isSameDay(startValue, endValue)) {
361
351
  if (sourceIndex === 0) {
362
352
  values = [startValue, null];
363
353
  endValue = null;
@@ -366,8 +356,6 @@ var InternalRangePicker = function InternalRangePicker(props, ref) {
366
356
  values = [null, endValue];
367
357
  }
368
358
  openRecordsRef.current = _defineProperty({}, sourceIndex, true);
369
- } else if (picker === 'time' && order === true) {
370
- values = reorderValues(values);
371
359
  }
372
360
  }
373
361
  setSelectedValue(values);
@@ -383,11 +371,10 @@ var InternalRangePicker = function InternalRangePicker(props, ref) {
383
371
  var canEndValueTrigger = canValueTrigger(endValue, 1, mergedDisabled, allowEmpty);
384
372
  var canTrigger = values === null || canStartValueTrigger && canEndValueTrigger;
385
373
  if (canTrigger) {
386
- if (typeof value === 'undefined') {
387
- setInnerValue(values);
388
- }
389
- if (onChange && (!isEqual(getValue(dateValue, 0), startValue) || !isEqual(getValue(dateValue, 1), endValue))) {
390
- onChange(values, [startStr, endStr]);
374
+ if (order) {
375
+ triggerChangeInner(reorderValues(values));
376
+ } else {
377
+ triggerChangeInner(values);
391
378
  }
392
379
  }
393
380
  var curValue = getValue(values, sourceIndex);
@@ -236,7 +236,7 @@ var InternalTreeSelect = function InternalTreeSelect(props, ref) {
236
236
  }
237
237
  onClear === null || onClear === void 0 ? void 0 : onClear('');
238
238
  setSearchValue('');
239
- onChange === null || onChange === void 0 ? void 0 : onChange(undefined, undefined);
239
+ isMultiple ? onChange === null || onChange === void 0 ? void 0 : onChange('', '') : onChange === null || onChange === void 0 ? void 0 : onChange(undefined, undefined);
240
240
  };
241
241
  // 多选模式下清除某一项
242
242
  var handleRemove = function handleRemove(e, key) {
@@ -51,7 +51,9 @@ function TimePanel(props) {
51
51
  minutes = _context$minutes === void 0 ? [] : _context$minutes,
52
52
  _context$seconds = context.seconds,
53
53
  seconds = _context$seconds === void 0 ? [] : _context$seconds,
54
- disabledTimePanel = context.disabledTimePanel;
54
+ disabledTimePanel = context.disabledTimePanel,
55
+ rangeValue = context.rangeValue,
56
+ panelPosition = context.panelPosition;
55
57
  var picker = props.picker,
56
58
  _props$format = props.format,
57
59
  format = _props$format === void 0 ? 'HH:mm:ss' : _props$format,
@@ -84,9 +86,22 @@ function TimePanel(props) {
84
86
  var hour = originHour;
85
87
  // const minute = value ? getMinutes(value) : -1
86
88
  // const second = value ? getSeconds(value) : -1
89
+ var getDefaultDate = function getDefaultDate() {
90
+ if (panelPosition) {
91
+ if (rangeValue && rangeValue[0] && (0, _dateFns.isValid)(rangeValue[0])) {
92
+ return rangeValue[0];
93
+ }
94
+ if (rangeValue && rangeValue[1] && (0, _dateFns.isValid)(rangeValue[1])) {
95
+ return rangeValue[1];
96
+ }
97
+ } else if (value && (0, _dateFns.isValid)(value)) {
98
+ return value;
99
+ }
100
+ return (0, _dateFns.newDate)();
101
+ };
87
102
  var setTime = function setTime(isPM, newHour, newMinute, newSecond) {
88
103
  var _a, _b, _c;
89
- var date = value || (0, _dateFns.newDate)();
104
+ var date = getDefaultDate();
90
105
  var _hour = newHour > -1 ? newHour : (_a = (0, _find.default)(rawHours).call(rawHours, function (n) {
91
106
  return !n.disabled;
92
107
  })) === null || _a === void 0 ? void 0 : _a.value;
@@ -42,14 +42,6 @@ function reorderValues(values) {
42
42
  }
43
43
  return values;
44
44
  }
45
- // 范围时间顺序错误时报错
46
- function isErrorValues(values) {
47
- if (values && values[0] && values[1] && (0, _dateFns.isAfter)(values[0], values[1])) {
48
- console.error('开始日期在结束日期之后');
49
- return true;
50
- }
51
- return false;
52
- }
53
45
  // 是否可以切换选择器
54
46
  function canValueTrigger(value, index, disabled, allowEmpty) {
55
47
  if (value) {
@@ -157,17 +149,7 @@ var InternalRangePicker = function InternalRangePicker(props, ref) {
157
149
  // 原始数据
158
150
  var _useMergedState3 = (0, _hooks.useMergedState)(null, {
159
151
  value: value,
160
- defaultValue: defaultValue,
161
- postState: function postState(values) {
162
- if (picker === 'time' || picker === 'date' && showTime) {
163
- return order ? reorderValues(values) : values;
164
- } else {
165
- if (isErrorValues(values)) {
166
- return [values[0], null];
167
- }
168
- return values;
169
- }
170
- }
152
+ defaultValue: defaultValue
171
153
  }),
172
154
  _useMergedState4 = (0, _slicedToArray2.default)(_useMergedState3, 2),
173
155
  dateValue = _useMergedState4[0],
@@ -364,12 +346,20 @@ var InternalRangePicker = function InternalRangePicker(props, ref) {
364
346
  }
365
347
  }, 0);
366
348
  };
349
+ var triggerChangeInner = function triggerChangeInner(values) {
350
+ if (typeof value === 'undefined') {
351
+ setInnerValue(values);
352
+ }
353
+ if (onChange && (!(0, _dateFns.isEqual)((0, _utils2.getValue)(dateValue, 0), (0, _utils2.getValue)(values, 0)) || !(0, _dateFns.isEqual)((0, _utils2.getValue)(dateValue, 1), (0, _utils2.getValue)(values, 1)))) {
354
+ onChange(values, [values && values[0] ? (0, _dateFns.formatDate)(values[0], _format) : '', values && values[1] ? (0, _dateFns.formatDate)(values[1], _format) : '']);
355
+ }
356
+ };
367
357
  var triggerChange = function triggerChange(newValue, sourceIndex) {
368
358
  var values = newValue;
369
359
  var startValue = (0, _utils2.getValue)(values, 0);
370
360
  var endValue = (0, _utils2.getValue)(values, 1);
371
361
  if (startValue && endValue && (0, _dateFns.isAfter)(startValue, endValue)) {
372
- if (picker === 'week' && !(0, _isSameWeek.default)(startValue, endValue) || picker === 'quarter' && !(0, _dateFns.isSameQuarter)(startValue, endValue) || picker !== 'week' && picker !== 'quarter' && picker !== 'time' && !(0, _dateFns.isSameDay)(startValue, endValue)) {
362
+ if (picker === 'week' && !(0, _isSameWeek.default)(startValue, endValue) || picker === 'quarter' && !(0, _dateFns.isSameQuarter)(startValue, endValue) || picker === 'time' && !(0, _dateFns.isEqual)(startValue, endValue) || picker !== 'week' && picker !== 'quarter' && picker !== 'time' && !(0, _dateFns.isSameDay)(startValue, endValue)) {
373
363
  if (sourceIndex === 0) {
374
364
  values = [startValue, null];
375
365
  endValue = null;
@@ -378,8 +368,6 @@ var InternalRangePicker = function InternalRangePicker(props, ref) {
378
368
  values = [null, endValue];
379
369
  }
380
370
  openRecordsRef.current = (0, _defineProperty2.default)({}, sourceIndex, true);
381
- } else if (picker === 'time' && order === true) {
382
- values = reorderValues(values);
383
371
  }
384
372
  }
385
373
  setSelectedValue(values);
@@ -395,11 +383,10 @@ var InternalRangePicker = function InternalRangePicker(props, ref) {
395
383
  var canEndValueTrigger = canValueTrigger(endValue, 1, mergedDisabled, allowEmpty);
396
384
  var canTrigger = values === null || canStartValueTrigger && canEndValueTrigger;
397
385
  if (canTrigger) {
398
- if (typeof value === 'undefined') {
399
- setInnerValue(values);
400
- }
401
- if (onChange && (!(0, _dateFns.isEqual)((0, _utils2.getValue)(dateValue, 0), startValue) || !(0, _dateFns.isEqual)((0, _utils2.getValue)(dateValue, 1), endValue))) {
402
- onChange(values, [startStr, endStr]);
386
+ if (order) {
387
+ triggerChangeInner(reorderValues(values));
388
+ } else {
389
+ triggerChangeInner(values);
403
390
  }
404
391
  }
405
392
  var curValue = (0, _utils2.getValue)(values, sourceIndex);
@@ -248,7 +248,7 @@ var InternalTreeSelect = function InternalTreeSelect(props, ref) {
248
248
  }
249
249
  onClear === null || onClear === void 0 ? void 0 : onClear('');
250
250
  setSearchValue('');
251
- onChange === null || onChange === void 0 ? void 0 : onChange(undefined, undefined);
251
+ isMultiple ? onChange === null || onChange === void 0 ? void 0 : onChange('', '') : onChange === null || onChange === void 0 ? void 0 : onChange(undefined, undefined);
252
252
  };
253
253
  // 多选模式下清除某一项
254
254
  var handleRemove = function handleRemove(e, key) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kdcloudjs/kdesign",
3
- "version": "1.7.58",
3
+ "version": "1.7.59",
4
4
  "description": "KDesign 金蝶前端react 组件库",
5
5
  "title": "kdesign",
6
6
  "keywords": [