@kdcloudjs/kdesign 1.7.33-stable.12 → 1.7.33-stable.13
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/CHANGELOG.md +71 -0
- package/dist/kdesign.css +1 -1
- package/dist/kdesign.css.map +1 -1
- package/dist/kdesign.js +103 -120
- package/dist/kdesign.js.map +1 -1
- package/dist/kdesign.min.css +1 -1
- package/dist/kdesign.min.js +6 -6
- package/dist/kdesign.min.js.map +1 -1
- package/es/date-picker/panel/time/time.js +18 -3
- package/es/date-picker/range-picker.js +18 -47
- package/lib/date-picker/panel/time/time.js +17 -2
- package/lib/date-picker/range-picker.js +18 -47
- package/package.json +1 -1
|
@@ -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 =
|
|
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) {
|
|
@@ -143,17 +135,7 @@ var InternalRangePicker = function InternalRangePicker(props, ref) {
|
|
|
143
135
|
// 原始数据
|
|
144
136
|
var _useMergedState3 = useMergedState(null, {
|
|
145
137
|
value: value,
|
|
146
|
-
defaultValue: defaultValue
|
|
147
|
-
postState: function postState(values) {
|
|
148
|
-
if (picker === 'time' || picker === 'date' && showTime) {
|
|
149
|
-
return order ? reorderValues(values) : values;
|
|
150
|
-
} else {
|
|
151
|
-
if (isErrorValues(values)) {
|
|
152
|
-
return [values[0], null];
|
|
153
|
-
}
|
|
154
|
-
return values;
|
|
155
|
-
}
|
|
156
|
-
}
|
|
138
|
+
defaultValue: defaultValue
|
|
157
139
|
}),
|
|
158
140
|
_useMergedState4 = _slicedToArray(_useMergedState3, 2),
|
|
159
141
|
dateValue = _useMergedState4[0],
|
|
@@ -226,15 +208,7 @@ var InternalRangePicker = function InternalRangePicker(props, ref) {
|
|
|
226
208
|
var _onTextChange = function onTextChange(newText, index) {
|
|
227
209
|
var inputTempDate;
|
|
228
210
|
if (newText === '') {
|
|
229
|
-
|
|
230
|
-
inputTempDate = selectedValue[1];
|
|
231
|
-
} else if (index === 1 && selectedValue && selectedValue.length === 2) {
|
|
232
|
-
inputTempDate = selectedValue[0];
|
|
233
|
-
}
|
|
234
|
-
if (inputTempDate) {
|
|
235
|
-
triggerChange(updateValues(selectedValue, inputTempDate, index), index);
|
|
236
|
-
setViewDate(inputTempDate, index);
|
|
237
|
-
}
|
|
211
|
+
triggerChange(updateValues(selectedValue, null, index), index);
|
|
238
212
|
} else if (newText && newText.length === _format.length) {
|
|
239
213
|
inputTempDate = parseDate(newText, _format);
|
|
240
214
|
var disabledFunc = index === 0 ? disabledStartDate : disabledEndDate;
|
|
@@ -358,12 +332,20 @@ var InternalRangePicker = function InternalRangePicker(props, ref) {
|
|
|
358
332
|
}
|
|
359
333
|
}, 0);
|
|
360
334
|
};
|
|
335
|
+
var triggerChangeInner = function triggerChangeInner(values) {
|
|
336
|
+
if (typeof value === 'undefined') {
|
|
337
|
+
setInnerValue(values);
|
|
338
|
+
}
|
|
339
|
+
if (onChange && (!isEqual(getValue(dateValue, 0), getValue(values, 0)) || !isEqual(getValue(dateValue, 1), getValue(values, 1)))) {
|
|
340
|
+
onChange(values, [values && values[0] ? formatDate(values[0], _format) : '', values && values[1] ? formatDate(values[1], _format) : '']);
|
|
341
|
+
}
|
|
342
|
+
};
|
|
361
343
|
var triggerChange = function triggerChange(newValue, sourceIndex) {
|
|
362
344
|
var values = newValue;
|
|
363
345
|
var startValue = getValue(values, 0);
|
|
364
346
|
var endValue = getValue(values, 1);
|
|
365
347
|
if (startValue && endValue && isAfter(startValue, endValue)) {
|
|
366
|
-
if (picker === 'week' && !isSameWeek(startValue, endValue) || picker === 'quarter' && !isSameQuarter(startValue, endValue) || picker !== 'week' && picker !== 'quarter' && picker !== 'time' && !isSameDay(startValue, endValue)) {
|
|
348
|
+
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)) {
|
|
367
349
|
if (sourceIndex === 0) {
|
|
368
350
|
values = [startValue, null];
|
|
369
351
|
endValue = null;
|
|
@@ -372,8 +354,6 @@ var InternalRangePicker = function InternalRangePicker(props, ref) {
|
|
|
372
354
|
values = [null, endValue];
|
|
373
355
|
}
|
|
374
356
|
openRecordsRef.current = _defineProperty({}, sourceIndex, true);
|
|
375
|
-
} else if (picker === 'time' && order === true) {
|
|
376
|
-
values = reorderValues(values);
|
|
377
357
|
}
|
|
378
358
|
}
|
|
379
359
|
setSelectedValue(values);
|
|
@@ -389,28 +369,25 @@ var InternalRangePicker = function InternalRangePicker(props, ref) {
|
|
|
389
369
|
var canEndValueTrigger = canValueTrigger(endValue, 1, mergedDisabled, allowEmpty);
|
|
390
370
|
var canTrigger = values === null || canStartValueTrigger && canEndValueTrigger;
|
|
391
371
|
if (canTrigger) {
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
372
|
+
if (order) {
|
|
373
|
+
triggerChangeInner(reorderValues(values));
|
|
374
|
+
} else {
|
|
375
|
+
triggerChangeInner(values);
|
|
395
376
|
}
|
|
396
377
|
}
|
|
378
|
+
var curValue = getValue(values, sourceIndex);
|
|
397
379
|
var nextOpenIndex = null;
|
|
398
380
|
if (sourceIndex === 0 && !mergedDisabled[1]) {
|
|
399
381
|
nextOpenIndex = 1;
|
|
400
382
|
} else if (sourceIndex === 1 && !mergedDisabled[0]) {
|
|
401
383
|
nextOpenIndex = 0;
|
|
402
384
|
}
|
|
403
|
-
if (nextOpenIndex !== null && nextOpenIndex !== mergedActivePickerIndex && (!openRecordsRef.current[nextOpenIndex] || !getValue(values, nextOpenIndex)) &&
|
|
385
|
+
if (nextOpenIndex !== null && nextOpenIndex !== mergedActivePickerIndex && (!openRecordsRef.current[nextOpenIndex] || !getValue(values, nextOpenIndex)) && curValue) {
|
|
404
386
|
triggerOpenAndFocus(nextOpenIndex);
|
|
405
|
-
} else {
|
|
387
|
+
} else if (curValue) {
|
|
406
388
|
triggerOpen(false, sourceIndex);
|
|
407
389
|
}
|
|
408
390
|
};
|
|
409
|
-
// useOnClickOutside([popperRef, inputDivRef], () => {
|
|
410
|
-
// setViewDate(null, 0)
|
|
411
|
-
// setViewDate(null, 1)
|
|
412
|
-
// setHoverRangedValue([null, null])
|
|
413
|
-
// })
|
|
414
391
|
var onSelect = function onSelect(date, type) {
|
|
415
392
|
var values = updateValues(selectedValue, date, mergedActivePickerIndex);
|
|
416
393
|
if (type === 'inner') {
|
|
@@ -451,12 +428,6 @@ var InternalRangePicker = function InternalRangePicker(props, ref) {
|
|
|
451
428
|
useEffect(function () {
|
|
452
429
|
if (!mergedOpen) {
|
|
453
430
|
setSelectedValue(dateValue);
|
|
454
|
-
if (!startValueTexts.length || startValueTexts[0] === '') {
|
|
455
|
-
triggerStartTextChange('');
|
|
456
|
-
}
|
|
457
|
-
if (!endValueTexts.length || endValueTexts[0] === '') {
|
|
458
|
-
triggerEndTextChange('');
|
|
459
|
-
}
|
|
460
431
|
setViewDate(null, 0);
|
|
461
432
|
setViewDate(null, 1);
|
|
462
433
|
setHoverRangedValue([null, null]);
|
|
@@ -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 =
|
|
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) {
|
|
@@ -155,17 +147,7 @@ var InternalRangePicker = function InternalRangePicker(props, ref) {
|
|
|
155
147
|
// 原始数据
|
|
156
148
|
var _useMergedState3 = (0, _hooks.useMergedState)(null, {
|
|
157
149
|
value: value,
|
|
158
|
-
defaultValue: defaultValue
|
|
159
|
-
postState: function postState(values) {
|
|
160
|
-
if (picker === 'time' || picker === 'date' && showTime) {
|
|
161
|
-
return order ? reorderValues(values) : values;
|
|
162
|
-
} else {
|
|
163
|
-
if (isErrorValues(values)) {
|
|
164
|
-
return [values[0], null];
|
|
165
|
-
}
|
|
166
|
-
return values;
|
|
167
|
-
}
|
|
168
|
-
}
|
|
150
|
+
defaultValue: defaultValue
|
|
169
151
|
}),
|
|
170
152
|
_useMergedState4 = (0, _slicedToArray2.default)(_useMergedState3, 2),
|
|
171
153
|
dateValue = _useMergedState4[0],
|
|
@@ -238,15 +220,7 @@ var InternalRangePicker = function InternalRangePicker(props, ref) {
|
|
|
238
220
|
var _onTextChange = function onTextChange(newText, index) {
|
|
239
221
|
var inputTempDate;
|
|
240
222
|
if (newText === '') {
|
|
241
|
-
|
|
242
|
-
inputTempDate = selectedValue[1];
|
|
243
|
-
} else if (index === 1 && selectedValue && selectedValue.length === 2) {
|
|
244
|
-
inputTempDate = selectedValue[0];
|
|
245
|
-
}
|
|
246
|
-
if (inputTempDate) {
|
|
247
|
-
triggerChange((0, _utils2.updateValues)(selectedValue, inputTempDate, index), index);
|
|
248
|
-
setViewDate(inputTempDate, index);
|
|
249
|
-
}
|
|
223
|
+
triggerChange((0, _utils2.updateValues)(selectedValue, null, index), index);
|
|
250
224
|
} else if (newText && newText.length === _format.length) {
|
|
251
225
|
inputTempDate = (0, _dateFns.parseDate)(newText, _format);
|
|
252
226
|
var disabledFunc = index === 0 ? disabledStartDate : disabledEndDate;
|
|
@@ -370,12 +344,20 @@ var InternalRangePicker = function InternalRangePicker(props, ref) {
|
|
|
370
344
|
}
|
|
371
345
|
}, 0);
|
|
372
346
|
};
|
|
347
|
+
var triggerChangeInner = function triggerChangeInner(values) {
|
|
348
|
+
if (typeof value === 'undefined') {
|
|
349
|
+
setInnerValue(values);
|
|
350
|
+
}
|
|
351
|
+
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)))) {
|
|
352
|
+
onChange(values, [values && values[0] ? (0, _dateFns.formatDate)(values[0], _format) : '', values && values[1] ? (0, _dateFns.formatDate)(values[1], _format) : '']);
|
|
353
|
+
}
|
|
354
|
+
};
|
|
373
355
|
var triggerChange = function triggerChange(newValue, sourceIndex) {
|
|
374
356
|
var values = newValue;
|
|
375
357
|
var startValue = (0, _utils2.getValue)(values, 0);
|
|
376
358
|
var endValue = (0, _utils2.getValue)(values, 1);
|
|
377
359
|
if (startValue && endValue && (0, _dateFns.isAfter)(startValue, endValue)) {
|
|
378
|
-
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)) {
|
|
360
|
+
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)) {
|
|
379
361
|
if (sourceIndex === 0) {
|
|
380
362
|
values = [startValue, null];
|
|
381
363
|
endValue = null;
|
|
@@ -384,8 +366,6 @@ var InternalRangePicker = function InternalRangePicker(props, ref) {
|
|
|
384
366
|
values = [null, endValue];
|
|
385
367
|
}
|
|
386
368
|
openRecordsRef.current = (0, _defineProperty2.default)({}, sourceIndex, true);
|
|
387
|
-
} else if (picker === 'time' && order === true) {
|
|
388
|
-
values = reorderValues(values);
|
|
389
369
|
}
|
|
390
370
|
}
|
|
391
371
|
setSelectedValue(values);
|
|
@@ -401,28 +381,25 @@ var InternalRangePicker = function InternalRangePicker(props, ref) {
|
|
|
401
381
|
var canEndValueTrigger = canValueTrigger(endValue, 1, mergedDisabled, allowEmpty);
|
|
402
382
|
var canTrigger = values === null || canStartValueTrigger && canEndValueTrigger;
|
|
403
383
|
if (canTrigger) {
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
384
|
+
if (order) {
|
|
385
|
+
triggerChangeInner(reorderValues(values));
|
|
386
|
+
} else {
|
|
387
|
+
triggerChangeInner(values);
|
|
407
388
|
}
|
|
408
389
|
}
|
|
390
|
+
var curValue = (0, _utils2.getValue)(values, sourceIndex);
|
|
409
391
|
var nextOpenIndex = null;
|
|
410
392
|
if (sourceIndex === 0 && !mergedDisabled[1]) {
|
|
411
393
|
nextOpenIndex = 1;
|
|
412
394
|
} else if (sourceIndex === 1 && !mergedDisabled[0]) {
|
|
413
395
|
nextOpenIndex = 0;
|
|
414
396
|
}
|
|
415
|
-
if (nextOpenIndex !== null && nextOpenIndex !== mergedActivePickerIndex && (!openRecordsRef.current[nextOpenIndex] || !(0, _utils2.getValue)(values, nextOpenIndex)) &&
|
|
397
|
+
if (nextOpenIndex !== null && nextOpenIndex !== mergedActivePickerIndex && (!openRecordsRef.current[nextOpenIndex] || !(0, _utils2.getValue)(values, nextOpenIndex)) && curValue) {
|
|
416
398
|
triggerOpenAndFocus(nextOpenIndex);
|
|
417
|
-
} else {
|
|
399
|
+
} else if (curValue) {
|
|
418
400
|
triggerOpen(false, sourceIndex);
|
|
419
401
|
}
|
|
420
402
|
};
|
|
421
|
-
// useOnClickOutside([popperRef, inputDivRef], () => {
|
|
422
|
-
// setViewDate(null, 0)
|
|
423
|
-
// setViewDate(null, 1)
|
|
424
|
-
// setHoverRangedValue([null, null])
|
|
425
|
-
// })
|
|
426
403
|
var onSelect = function onSelect(date, type) {
|
|
427
404
|
var values = (0, _utils2.updateValues)(selectedValue, date, mergedActivePickerIndex);
|
|
428
405
|
if (type === 'inner') {
|
|
@@ -463,12 +440,6 @@ var InternalRangePicker = function InternalRangePicker(props, ref) {
|
|
|
463
440
|
(0, _react.useEffect)(function () {
|
|
464
441
|
if (!mergedOpen) {
|
|
465
442
|
setSelectedValue(dateValue);
|
|
466
|
-
if (!startValueTexts.length || startValueTexts[0] === '') {
|
|
467
|
-
triggerStartTextChange('');
|
|
468
|
-
}
|
|
469
|
-
if (!endValueTexts.length || endValueTexts[0] === '') {
|
|
470
|
-
triggerEndTextChange('');
|
|
471
|
-
}
|
|
472
443
|
setViewDate(null, 0);
|
|
473
444
|
setViewDate(null, 1);
|
|
474
445
|
setHoverRangedValue([null, null]);
|