@ucloud-fe/react-components 1.4.3 → 1.4.4
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 +6 -0
- package/dist/main.min.js +1 -1
- package/lib/components/DatePicker/Range.js +18 -6
- package/lib/components/DatePicker/usePicker.d.ts +1 -1
- package/lib/components/DatePicker/usePicker.js +10 -6
- package/lib/components/DatePicker/useRangePicker.d.ts +2 -1
- package/lib/components/DatePicker/useRangePicker.js +3 -2
- package/package.json +1 -1
|
@@ -240,7 +240,7 @@ var Range = function Range(_ref2) {
|
|
|
240
240
|
onInitialChange && onInitialChange(initialValue);
|
|
241
241
|
updateValueWithoutCallOnChange(initialValue);
|
|
242
242
|
}.bind(this));
|
|
243
|
-
var handleStartChange = (0, _react.useCallback)(function (value) {
|
|
243
|
+
var handleStartChange = (0, _react.useCallback)(function (value, isClear) {
|
|
244
244
|
(0, _newArrowCheck2.default)(this, _this3);
|
|
245
245
|
|
|
246
246
|
var _cacheValue = (0, _slicedToArray2.default)(cacheValue, 2),
|
|
@@ -250,7 +250,8 @@ var Range = function Range(_ref2) {
|
|
|
250
250
|
var rangeDateValidResult = (0, _utils.isRangeDateValid)(newValue, rules, precision);
|
|
251
251
|
setRangeError(undefined);
|
|
252
252
|
|
|
253
|
-
if (
|
|
253
|
+
if (isClear) {// noop
|
|
254
|
+
} else if (rangeDateValidResult !== true) {
|
|
254
255
|
var _inputRefE$current;
|
|
255
256
|
|
|
256
257
|
(_inputRefE$current = inputRefE.current) === null || _inputRefE$current === void 0 ? void 0 : _inputRefE$current.focus();
|
|
@@ -274,7 +275,7 @@ var Range = function Range(_ref2) {
|
|
|
274
275
|
|
|
275
276
|
setCacheValue(newValue);
|
|
276
277
|
}.bind(this), [cacheValue, rules, precision, isFirstEditing, locale, onChange]);
|
|
277
|
-
var handleEndChange = (0, _react.useCallback)(function (value) {
|
|
278
|
+
var handleEndChange = (0, _react.useCallback)(function (value, isClear) {
|
|
278
279
|
(0, _newArrowCheck2.default)(this, _this3);
|
|
279
280
|
|
|
280
281
|
var _cacheValue2 = (0, _slicedToArray2.default)(cacheValue, 1),
|
|
@@ -284,7 +285,8 @@ var Range = function Range(_ref2) {
|
|
|
284
285
|
var rangeDateValidResult = (0, _utils.isRangeDateValid)(newValue, rules, precision);
|
|
285
286
|
setRangeError(undefined);
|
|
286
287
|
|
|
287
|
-
if (
|
|
288
|
+
if (isClear) {// noop
|
|
289
|
+
} else if (rangeDateValidResult !== true) {
|
|
288
290
|
var _inputRefS$current;
|
|
289
291
|
|
|
290
292
|
(_inputRefS$current = inputRefS.current) === null || _inputRefS$current === void 0 ? void 0 : _inputRefS$current.focus();
|
|
@@ -308,6 +310,14 @@ var Range = function Range(_ref2) {
|
|
|
308
310
|
|
|
309
311
|
setCacheValue(newValue);
|
|
310
312
|
}.bind(this), [cacheValue, rules, precision, isFirstEditing, locale, onChange]);
|
|
313
|
+
var onClearS = (0, _react.useCallback)(function () {
|
|
314
|
+
(0, _newArrowCheck2.default)(this, _this3);
|
|
315
|
+
handleStartChange(null, true);
|
|
316
|
+
}.bind(this), [handleStartChange]);
|
|
317
|
+
var onClearE = (0, _react.useCallback)(function () {
|
|
318
|
+
(0, _newArrowCheck2.default)(this, _this3);
|
|
319
|
+
handleEndChange(null, true);
|
|
320
|
+
}.bind(this), [handleEndChange]);
|
|
311
321
|
var handleOptionChange = (0, _react.useCallback)(function (value) {
|
|
312
322
|
(0, _newArrowCheck2.default)(this, _this3);
|
|
313
323
|
if (value !== 'custom') onChange(getValueFromOption(options, value));
|
|
@@ -346,7 +356,8 @@ var Range = function Range(_ref2) {
|
|
|
346
356
|
nullable: nullableS,
|
|
347
357
|
placeholder: placeholderS,
|
|
348
358
|
shortcuts: shortcutsS,
|
|
349
|
-
actionRef: actionRefS
|
|
359
|
+
actionRef: actionRefS,
|
|
360
|
+
onClear: onClearS
|
|
350
361
|
}, sharedPickerProps), {}, {
|
|
351
362
|
rules: isFirstEditing === 2 ? _objectSpread(_objectSpread({}, rules), {}, {
|
|
352
363
|
range: [(_rules$range = rules.range) === null || _rules$range === void 0 ? void 0 : _rules$range[0], cacheValue[1]]
|
|
@@ -374,7 +385,8 @@ var Range = function Range(_ref2) {
|
|
|
374
385
|
nullable: nullableE,
|
|
375
386
|
placeholder: placeholderE,
|
|
376
387
|
shortcuts: shortcutsE,
|
|
377
|
-
actionRef: actionRefE
|
|
388
|
+
actionRef: actionRefE,
|
|
389
|
+
onClear: onClearE
|
|
378
390
|
}, sharedPickerProps), {}, {
|
|
379
391
|
rules: isFirstEditing === 2 ? _objectSpread(_objectSpread({}, rules), {}, {
|
|
380
392
|
range: [cacheValue[0], (_rules$range2 = rules.range) === null || _rules$range2 === void 0 ? void 0 : _rules$range2[1]]
|
|
@@ -7,5 +7,5 @@ declare type TProps<D> = {
|
|
|
7
7
|
interface DisplayToFormatAndTimeMode<D> {
|
|
8
8
|
(display?: D): [string[]] | [string[], string[]];
|
|
9
9
|
}
|
|
10
|
-
declare const usePicker: <D>(props: TProps<D>, displayToFormatAndTimeMode: DisplayToFormatAndTimeMode<D>, mode: 'date' | 'month') => any[];
|
|
10
|
+
declare const usePicker: <D>(props: TProps<D>, displayToFormatAndTimeMode: DisplayToFormatAndTimeMode<D>, mode: 'date' | 'month', onClear?: (() => void) | undefined) => any[];
|
|
11
11
|
export default usePicker;
|
|
@@ -106,7 +106,7 @@ var align = {
|
|
|
106
106
|
targetOffset: [0, 0]
|
|
107
107
|
};
|
|
108
108
|
|
|
109
|
-
var usePicker = function usePicker(props, displayToFormatAndTimeMode, mode) {
|
|
109
|
+
var usePicker = function usePicker(props, displayToFormatAndTimeMode, mode, onClear) {
|
|
110
110
|
var _this2 = this;
|
|
111
111
|
|
|
112
112
|
(0, _newArrowCheck2.default)(this, _this);
|
|
@@ -259,7 +259,7 @@ var usePicker = function usePicker(props, displayToFormatAndTimeMode, mode) {
|
|
|
259
259
|
setInputValue('');
|
|
260
260
|
setCalValue(null);
|
|
261
261
|
}.bind(this), []);
|
|
262
|
-
var handleConfirm = (0, _react.useCallback)(function (v) {
|
|
262
|
+
var handleConfirm = (0, _react.useCallback)(function (v, dontChangeVisible) {
|
|
263
263
|
(0, _newArrowCheck2.default)(this, _this2);
|
|
264
264
|
var currentValue = v !== undefined ? v : calValue;
|
|
265
265
|
|
|
@@ -270,13 +270,17 @@ var usePicker = function usePicker(props, displayToFormatAndTimeMode, mode) {
|
|
|
270
270
|
}
|
|
271
271
|
|
|
272
272
|
onChange && onChange(currentValue ? (0, _moment.default)(+currentValue) : null);
|
|
273
|
-
|
|
273
|
+
|
|
274
|
+
if (!dontChangeVisible) {
|
|
275
|
+
setVisible(false);
|
|
276
|
+
}
|
|
274
277
|
}.bind(this), [calValue, nullable, onChange, rules, value]);
|
|
275
278
|
var handleInputClear = (0, _react.useCallback)(function () {
|
|
276
279
|
(0, _newArrowCheck2.default)(this, _this2);
|
|
277
|
-
clear();
|
|
278
|
-
|
|
279
|
-
|
|
280
|
+
clear(); // 不走 onChange,区分两种操作
|
|
281
|
+
|
|
282
|
+
onClear === null || onClear === void 0 ? void 0 : onClear();
|
|
283
|
+
}.bind(this), [clear, onClear]);
|
|
280
284
|
var handleCalendarChange = (0, _react.useCallback)(function (v) {
|
|
281
285
|
(0, _newArrowCheck2.default)(this, _this2);
|
|
282
286
|
v = (0, _utils.getValidDate)(v, rules);
|
|
@@ -7,10 +7,11 @@ export declare type RangePickerRef = {
|
|
|
7
7
|
focus: () => void;
|
|
8
8
|
clear: () => void;
|
|
9
9
|
} | undefined;
|
|
10
|
-
declare const useRangePicker: ({ prefix, type, suffix, actionRef, ...pickProps }: DatePickerProps & {
|
|
10
|
+
declare const useRangePicker: ({ prefix, type, suffix, actionRef, onClear, ...pickProps }: DatePickerProps & {
|
|
11
11
|
prefix?: boolean | undefined;
|
|
12
12
|
type?: "date" | "month" | undefined;
|
|
13
13
|
suffix?: ReactNode;
|
|
14
14
|
actionRef: MutableRefObject<RangeActionRef | undefined>;
|
|
15
|
+
onClear?: (() => void) | undefined;
|
|
15
16
|
}) => any[];
|
|
16
17
|
export default useRangePicker;
|
|
@@ -29,7 +29,7 @@ var _Month = require("./Month");
|
|
|
29
29
|
|
|
30
30
|
var _usePicker3 = _interopRequireDefault(require("./usePicker"));
|
|
31
31
|
|
|
32
|
-
var _excluded = ["prefix", "type", "suffix", "actionRef"];
|
|
32
|
+
var _excluded = ["prefix", "type", "suffix", "actionRef", "onClear"];
|
|
33
33
|
|
|
34
34
|
var _this = void 0;
|
|
35
35
|
|
|
@@ -57,10 +57,11 @@ var useRangePicker = function useRangePicker(_ref) {
|
|
|
57
57
|
type = _ref$type === void 0 ? 'date' : _ref$type,
|
|
58
58
|
suffix = _ref.suffix,
|
|
59
59
|
actionRef = _ref.actionRef,
|
|
60
|
+
onClear = _ref.onClear,
|
|
60
61
|
pickProps = (0, _objectWithoutProperties2.default)(_ref, _excluded);
|
|
61
62
|
var isMonth = type === 'month';
|
|
62
63
|
|
|
63
|
-
var _usePicker = (0, _usePicker3.default)(_objectSpread({}, pickProps), isMonth ? _Month.displayToFormatAndTimeMode : _DatePicker.displayToFormatAndTimeMode, type),
|
|
64
|
+
var _usePicker = (0, _usePicker3.default)(_objectSpread({}, pickProps), isMonth ? _Month.displayToFormatAndTimeMode : _DatePicker.displayToFormatAndTimeMode, type, onClear),
|
|
64
65
|
_usePicker2 = (0, _slicedToArray2.default)(_usePicker, 9),
|
|
65
66
|
inputProps = _usePicker2[0],
|
|
66
67
|
popoverProps = _usePicker2[2],
|