@seafile/seafile-calendar 0.0.31 → 0.0.32-alpha.0
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/assets/index.css +11 -12
- package/dist/rc-calendar.css +11 -12
- package/dist/rc-calendar.css.map +1 -1
- package/dist/rc-calendar.js +108 -72
- package/dist/rc-calendar.js.map +1 -1
- package/dist/rc-calendar.min.css +11 -12
- package/dist/rc-calendar.min.css.map +1 -1
- package/dist/rc-calendar.min.js +1 -1
- package/es/Calendar.js +12 -6
- package/es/date/DateInput.js +51 -37
- package/es/date/DateTBody.js +6 -4
- package/es/util/index.js +14 -2
- package/lib/Calendar.js +11 -5
- package/lib/date/DateInput.js +50 -37
- package/lib/date/DateTBody.js +5 -3
- package/lib/util/index.js +15 -3
- package/package.json +2 -5
package/dist/rc-calendar.js
CHANGED
|
@@ -316,26 +316,28 @@ var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/*!
|
|
|
316
316
|
/* unused harmony export getCurrentYear */
|
|
317
317
|
/* unused harmony export getCurrentTime */
|
|
318
318
|
/* unused harmony export DATE_FORMATS */
|
|
319
|
-
/* harmony export (
|
|
320
|
-
/* harmony export (
|
|
321
|
-
/* harmony export (immutable) */ __webpack_exports__["f"] =
|
|
322
|
-
/* harmony export (immutable) */ __webpack_exports__["
|
|
323
|
-
/* harmony export (immutable) */ __webpack_exports__["
|
|
324
|
-
/* harmony export (immutable) */ __webpack_exports__["c"] =
|
|
319
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return CALENDAR_STATUS; });
|
|
320
|
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "j", function() { return syncCurrentTime; });
|
|
321
|
+
/* harmony export (immutable) */ __webpack_exports__["f"] = getTodayTime;
|
|
322
|
+
/* harmony export (immutable) */ __webpack_exports__["e"] = getTitleString;
|
|
323
|
+
/* harmony export (immutable) */ __webpack_exports__["g"] = getTodayTimeStr;
|
|
324
|
+
/* harmony export (immutable) */ __webpack_exports__["c"] = getMonthName;
|
|
325
|
+
/* harmony export (immutable) */ __webpack_exports__["k"] = syncTime;
|
|
326
|
+
/* harmony export (immutable) */ __webpack_exports__["d"] = getTimeConfig;
|
|
325
327
|
/* unused harmony export isTimeValidByConfig */
|
|
326
328
|
/* unused harmony export isTimeValid */
|
|
327
|
-
/* harmony export (immutable) */ __webpack_exports__["
|
|
328
|
-
/* harmony export (immutable) */ __webpack_exports__["
|
|
329
|
+
/* harmony export (immutable) */ __webpack_exports__["i"] = isAllowedDate;
|
|
330
|
+
/* harmony export (immutable) */ __webpack_exports__["b"] = formatDate;
|
|
329
331
|
/* unused harmony export isLeapYear */
|
|
330
332
|
/* unused harmony export validateCalendarDay */
|
|
331
|
-
/* harmony export (immutable) */ __webpack_exports__["
|
|
333
|
+
/* harmony export (immutable) */ __webpack_exports__["l"] = tokenizeFormattedDate;
|
|
332
334
|
/* unused harmony export hasSpecialChar */
|
|
333
335
|
/* unused harmony export validateTime */
|
|
334
336
|
/* unused harmony export delimate */
|
|
335
337
|
/* unused harmony export validateCalendarYear */
|
|
336
338
|
/* unused harmony export validateAndNormalizeDate */
|
|
337
339
|
/* unused harmony export getDatePart */
|
|
338
|
-
/* harmony export (immutable) */ __webpack_exports__["
|
|
340
|
+
/* harmony export (immutable) */ __webpack_exports__["h"] = initializeStr;
|
|
339
341
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(26);
|
|
340
342
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__);
|
|
341
343
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_dayjs__ = __webpack_require__(20);
|
|
@@ -371,6 +373,18 @@ var DATE_FORMATS = {
|
|
|
371
373
|
Germany_Russia_etcAndTime: 'DD.MM.YYYY HH:mm'
|
|
372
374
|
};
|
|
373
375
|
|
|
376
|
+
var CALENDAR_STATUS = {
|
|
377
|
+
SPECIFIC_TIME: 'specific_time',
|
|
378
|
+
CURRENT_TIME: 'current_time'
|
|
379
|
+
};
|
|
380
|
+
|
|
381
|
+
var syncCurrentTime = function syncCurrentTime(date, status) {
|
|
382
|
+
if (status === CALENDAR_STATUS.CURRENT_TIME) {
|
|
383
|
+
return date.hour(__WEBPACK_IMPORTED_MODULE_1_dayjs___default()().hour()).minute(__WEBPACK_IMPORTED_MODULE_1_dayjs___default()().minute()).second(__WEBPACK_IMPORTED_MODULE_1_dayjs___default()().second());
|
|
384
|
+
}
|
|
385
|
+
return date;
|
|
386
|
+
};
|
|
387
|
+
|
|
374
388
|
var defaultDisabledTime = {
|
|
375
389
|
disabledHours: function disabledHours() {
|
|
376
390
|
return [];
|
|
@@ -822,7 +836,7 @@ function initializeStr(str, format) {
|
|
|
822
836
|
return '' + _day10 + dateDelimater + _month10 + dateDelimater + _year10;
|
|
823
837
|
} else if (inputStrLength >= 1 && inputStrLength <= 8) {
|
|
824
838
|
var _dateStr6 = inputStr.slice(0, 2);
|
|
825
|
-
var _monthStr6 = inputStr.slice(2, 4);
|
|
839
|
+
var _monthStr6 = inputStr.slice(2, 4) || getCurrentMonth();
|
|
826
840
|
var _yearStr6 = inputStr.slice(4, inputStr.length);
|
|
827
841
|
var _validateYear11 = validateCalendarYear(_yearStr6);
|
|
828
842
|
|
|
@@ -866,7 +880,7 @@ function initializeStr(str, format) {
|
|
|
866
880
|
return '' + _day12 + dateDelimater + _month12 + dateDelimater + _year12 + ' ' + time;
|
|
867
881
|
} else if (_datePart2.length >= 1 && _datePart2.length <= 8) {
|
|
868
882
|
var _dateStr7 = _datePart2.slice(0, 2);
|
|
869
|
-
var _monthStr7 = _datePart2.slice(2, 4);
|
|
883
|
+
var _monthStr7 = _datePart2.slice(2, 4) || getCurrentMonth();
|
|
870
884
|
var _yearStr7 = _datePart2.slice(4, _datePart2.length);
|
|
871
885
|
var _timeParts2 = tokenizeFormattedDate(inputStr, format);
|
|
872
886
|
time = validateTime(_timeParts2[1] + ':' + _timeParts2[2]);
|
|
@@ -2760,7 +2774,8 @@ var Calendar = function (_React$Component) {
|
|
|
2760
2774
|
_this.state = {
|
|
2761
2775
|
mode: _this.props.mode || 'date',
|
|
2762
2776
|
value: getMomentObjectIfValid(props.value) || getMomentObjectIfValid(props.defaultValue) || __WEBPACK_IMPORTED_MODULE_9_dayjs___default()(),
|
|
2763
|
-
selectedValue: props.selectedValue || props.defaultSelectedValue
|
|
2777
|
+
selectedValue: props.selectedValue || props.defaultSelectedValue,
|
|
2778
|
+
currentStatus: __WEBPACK_IMPORTED_MODULE_17__util__["a" /* CALENDAR_STATUS */].SPECIFIC_TIME
|
|
2764
2779
|
};
|
|
2765
2780
|
return _this;
|
|
2766
2781
|
}
|
|
@@ -2808,10 +2823,11 @@ var Calendar = function (_React$Component) {
|
|
|
2808
2823
|
showWeekNumber = props.showWeekNumber;
|
|
2809
2824
|
var value = state.value,
|
|
2810
2825
|
selectedValue = state.selectedValue,
|
|
2811
|
-
mode = state.mode
|
|
2826
|
+
mode = state.mode,
|
|
2827
|
+
currentStatus = state.currentStatus;
|
|
2812
2828
|
|
|
2813
2829
|
var showTimePicker = mode === 'time';
|
|
2814
|
-
var disabledTimeConfig = showTimePicker && disabledTime && timePicker ? Object(__WEBPACK_IMPORTED_MODULE_17__util__["
|
|
2830
|
+
var disabledTimeConfig = showTimePicker && disabledTime && timePicker ? Object(__WEBPACK_IMPORTED_MODULE_17__util__["d" /* getTimeConfig */])(selectedValue, disabledTime) : null;
|
|
2815
2831
|
|
|
2816
2832
|
var timePickerEle = null;
|
|
2817
2833
|
|
|
@@ -2833,9 +2849,10 @@ var Calendar = function (_React$Component) {
|
|
|
2833
2849
|
timePickerEle = __WEBPACK_IMPORTED_MODULE_4_react___default.a.cloneElement(timePicker, timePickerProps);
|
|
2834
2850
|
}
|
|
2835
2851
|
var calendarInputPlaceholder = dateInputPlaceholder || (Array.isArray(this.getFormat()) ? this.getFormat()[0] : this.getFormat());
|
|
2852
|
+
var inputFormat = Array.isArray(this.getFormat()) ? this.getFormat() : [this.getFormat()];
|
|
2836
2853
|
|
|
2837
2854
|
var dateInputElement = props.showDateInput ? __WEBPACK_IMPORTED_MODULE_4_react___default.a.createElement(__WEBPACK_IMPORTED_MODULE_16__date_DateInput__["a" /* default */], {
|
|
2838
|
-
format:
|
|
2855
|
+
format: inputFormat,
|
|
2839
2856
|
key: 'date-input',
|
|
2840
2857
|
value: value,
|
|
2841
2858
|
locale: locale,
|
|
@@ -2900,7 +2917,8 @@ var Calendar = function (_React$Component) {
|
|
|
2900
2917
|
onSelect: this.onDateTableSelect,
|
|
2901
2918
|
disabledDate: disabledDate,
|
|
2902
2919
|
showWeekNumber: showWeekNumber,
|
|
2903
|
-
firstDayOfWeek: firstDayOfWeek
|
|
2920
|
+
firstDayOfWeek: firstDayOfWeek,
|
|
2921
|
+
currentStatus: currentStatus
|
|
2904
2922
|
})
|
|
2905
2923
|
),
|
|
2906
2924
|
__WEBPACK_IMPORTED_MODULE_4_react___default.a.createElement(__WEBPACK_IMPORTED_MODULE_12__calendar_CalendarFooter__["a" /* default */], {
|
|
@@ -2932,7 +2950,7 @@ var Calendar = function (_React$Component) {
|
|
|
2932
2950
|
onSelect: this.onDateTableSelect,
|
|
2933
2951
|
onClickRightPanelTime: onClickRightPanelTime,
|
|
2934
2952
|
defaultMinutesTime: this.props.defaultMinutesTime,
|
|
2935
|
-
format:
|
|
2953
|
+
format: inputFormat
|
|
2936
2954
|
})
|
|
2937
2955
|
)
|
|
2938
2956
|
));
|
|
@@ -3075,6 +3093,7 @@ var _initialiseProps = function _initialiseProps() {
|
|
|
3075
3093
|
this.onClear = function () {
|
|
3076
3094
|
_this2.onSelect(null);
|
|
3077
3095
|
_this2.props.onClear();
|
|
3096
|
+
_this2.setState({ currentStatus: __WEBPACK_IMPORTED_MODULE_17__util__["a" /* CALENDAR_STATUS */].CURRENT_TIME });
|
|
3078
3097
|
};
|
|
3079
3098
|
|
|
3080
3099
|
this.onOk = function () {
|
|
@@ -3101,10 +3120,11 @@ var _initialiseProps = function _initialiseProps() {
|
|
|
3101
3120
|
var timePicker = _this2.props.timePicker;
|
|
3102
3121
|
var selectedValue = _this2.state.selectedValue;
|
|
3103
3122
|
|
|
3123
|
+
_this2.setState({ currentStatus: __WEBPACK_IMPORTED_MODULE_17__util__["a" /* CALENDAR_STATUS */].SPECIFIC_TIME });
|
|
3104
3124
|
if (!selectedValue && timePicker) {
|
|
3105
3125
|
var timePickerDefaultValue = timePicker.props.defaultValue;
|
|
3106
3126
|
if (timePickerDefaultValue) {
|
|
3107
|
-
Object(__WEBPACK_IMPORTED_MODULE_17__util__["
|
|
3127
|
+
Object(__WEBPACK_IMPORTED_MODULE_17__util__["k" /* syncTime */])(timePickerDefaultValue, value);
|
|
3108
3128
|
}
|
|
3109
3129
|
}
|
|
3110
3130
|
_this2.onSelect(value);
|
|
@@ -3113,7 +3133,7 @@ var _initialiseProps = function _initialiseProps() {
|
|
|
3113
3133
|
this.onToday = function () {
|
|
3114
3134
|
var value = _this2.state.value;
|
|
3115
3135
|
|
|
3116
|
-
var now = Object(__WEBPACK_IMPORTED_MODULE_17__util__["
|
|
3136
|
+
var now = Object(__WEBPACK_IMPORTED_MODULE_17__util__["f" /* getTodayTime */])(value);
|
|
3117
3137
|
_this2.onSelect(now, {
|
|
3118
3138
|
source: 'todayButton'
|
|
3119
3139
|
});
|
|
@@ -5316,13 +5336,14 @@ var DateTBody = function (_React$Component) {
|
|
|
5316
5336
|
dateRender = props.dateRender,
|
|
5317
5337
|
disabledDate = props.disabledDate,
|
|
5318
5338
|
hoverValue = props.hoverValue,
|
|
5319
|
-
firstDayOfWeek = props.firstDayOfWeek
|
|
5339
|
+
firstDayOfWeek = props.firstDayOfWeek,
|
|
5340
|
+
currentStatus = props.currentStatus;
|
|
5320
5341
|
|
|
5321
5342
|
var iIndex = void 0;
|
|
5322
5343
|
var jIndex = void 0;
|
|
5323
5344
|
var current = void 0;
|
|
5324
5345
|
var dateTable = [];
|
|
5325
|
-
var today = Object(__WEBPACK_IMPORTED_MODULE_7__util___["
|
|
5346
|
+
var today = Object(__WEBPACK_IMPORTED_MODULE_7__util___["f" /* getTodayTime */])(value);
|
|
5326
5347
|
var cellClass = prefixCls + '-cell';
|
|
5327
5348
|
var weekNumberCellClass = prefixCls + '-week-number-cell';
|
|
5328
5349
|
var dateClass = prefixCls + '-date';
|
|
@@ -5384,7 +5405,7 @@ var DateTBody = function (_React$Component) {
|
|
|
5384
5405
|
for (jIndex = 0; jIndex < DATE_ROW_COLUMN_COUNT.DATE_COL_COUNT; jIndex++) {
|
|
5385
5406
|
var next = null;
|
|
5386
5407
|
var last = null;
|
|
5387
|
-
current = dateTable[passed];
|
|
5408
|
+
current = Object(__WEBPACK_IMPORTED_MODULE_7__util___["j" /* syncCurrentTime */])(dateTable[passed], currentStatus);
|
|
5388
5409
|
if (jIndex < DATE_ROW_COLUMN_COUNT.DATE_COL_COUNT - 1) {
|
|
5389
5410
|
next = dateTable[passed + 1];
|
|
5390
5411
|
}
|
|
@@ -5497,7 +5518,7 @@ var DateTBody = function (_React$Component) {
|
|
|
5497
5518
|
onClick: disabled ? undefined : props.onSelect.bind(null, current),
|
|
5498
5519
|
onMouseEnter: disabled ? undefined : props.onDayHover && props.onDayHover.bind(null, current) || undefined,
|
|
5499
5520
|
role: 'gridcell',
|
|
5500
|
-
title: Object(__WEBPACK_IMPORTED_MODULE_7__util___["
|
|
5521
|
+
title: Object(__WEBPACK_IMPORTED_MODULE_7__util___["e" /* getTitleString */])(current),
|
|
5501
5522
|
className: cls
|
|
5502
5523
|
},
|
|
5503
5524
|
dateHtml
|
|
@@ -5536,7 +5557,8 @@ DateTBody.propTypes = {
|
|
|
5536
5557
|
value: __WEBPACK_IMPORTED_MODULE_4_prop_types___default.a.object,
|
|
5537
5558
|
hoverValue: __WEBPACK_IMPORTED_MODULE_4_prop_types___default.a.any,
|
|
5538
5559
|
showWeekNumber: __WEBPACK_IMPORTED_MODULE_4_prop_types___default.a.bool,
|
|
5539
|
-
firstDayOfWeek: __WEBPACK_IMPORTED_MODULE_4_prop_types___default.a.string
|
|
5560
|
+
firstDayOfWeek: __WEBPACK_IMPORTED_MODULE_4_prop_types___default.a.string,
|
|
5561
|
+
currentStatus: __WEBPACK_IMPORTED_MODULE_4_prop_types___default.a.string
|
|
5540
5562
|
};
|
|
5541
5563
|
DateTBody.defaultProps = {
|
|
5542
5564
|
hoverValue: []
|
|
@@ -6067,7 +6089,7 @@ var MonthTable = function (_Component) {
|
|
|
6067
6089
|
months[rowIndex] = [];
|
|
6068
6090
|
for (var colIndex = 0; colIndex < COL; colIndex++) {
|
|
6069
6091
|
current = current.month(index);
|
|
6070
|
-
var content = Object(__WEBPACK_IMPORTED_MODULE_6__util_index__["
|
|
6092
|
+
var content = Object(__WEBPACK_IMPORTED_MODULE_6__util_index__["c" /* getMonthName */])(current);
|
|
6071
6093
|
months[rowIndex][colIndex] = {
|
|
6072
6094
|
value: index,
|
|
6073
6095
|
content: content,
|
|
@@ -6084,7 +6106,7 @@ var MonthTable = function (_Component) {
|
|
|
6084
6106
|
|
|
6085
6107
|
var props = this.props;
|
|
6086
6108
|
var value = this.state.value;
|
|
6087
|
-
var today = Object(__WEBPACK_IMPORTED_MODULE_6__util_index__["
|
|
6109
|
+
var today = Object(__WEBPACK_IMPORTED_MODULE_6__util_index__["f" /* getTodayTime */])(value);
|
|
6088
6110
|
var months = this.months();
|
|
6089
6111
|
var currentMonth = value.month();
|
|
6090
6112
|
var prefixCls = props.prefixCls,
|
|
@@ -6720,7 +6742,7 @@ function TodayButton(_ref) {
|
|
|
6720
6742
|
text = _ref.text;
|
|
6721
6743
|
|
|
6722
6744
|
var localeNow = (!text && timePicker ? locale.now : text) || locale.today;
|
|
6723
|
-
var disabledToday = disabledDate && !Object(__WEBPACK_IMPORTED_MODULE_1__util___["
|
|
6745
|
+
var disabledToday = disabledDate && !Object(__WEBPACK_IMPORTED_MODULE_1__util___["i" /* isAllowedDate */])(Object(__WEBPACK_IMPORTED_MODULE_1__util___["f" /* getTodayTime */])(value), disabledDate);
|
|
6724
6746
|
var isDisabled = disabledToday || disabled;
|
|
6725
6747
|
var disabledTodayClass = isDisabled ? prefixCls + '-today-btn-disabled' : '';
|
|
6726
6748
|
return __WEBPACK_IMPORTED_MODULE_0_react___default.a.createElement(
|
|
@@ -6729,7 +6751,7 @@ function TodayButton(_ref) {
|
|
|
6729
6751
|
className: prefixCls + '-today-btn ' + disabledTodayClass,
|
|
6730
6752
|
role: 'button',
|
|
6731
6753
|
onClick: isDisabled ? null : onToday,
|
|
6732
|
-
title: Object(__WEBPACK_IMPORTED_MODULE_1__util___["
|
|
6754
|
+
title: Object(__WEBPACK_IMPORTED_MODULE_1__util___["g" /* getTodayTimeStr */])(value)
|
|
6733
6755
|
},
|
|
6734
6756
|
localeNow
|
|
6735
6757
|
);
|
|
@@ -6913,7 +6935,7 @@ var CalendarRightPanel = function (_React$Component) {
|
|
|
6913
6935
|
'ul',
|
|
6914
6936
|
null,
|
|
6915
6937
|
this.times.map(function (time) {
|
|
6916
|
-
var parts = Object(__WEBPACK_IMPORTED_MODULE_6__util__["
|
|
6938
|
+
var parts = Object(__WEBPACK_IMPORTED_MODULE_6__util__["l" /* tokenizeFormattedDate */])(selectedDate, _this2.state.localeFormat);
|
|
6917
6939
|
var current = __WEBPACK_IMPORTED_MODULE_5_dayjs___default()(selectedDate + ' ' + time).year(parts[0]).month(parts[1] - 1).date(parts[2]); // eslint-disable-line max-len
|
|
6918
6940
|
current = isZhcn ? current.locale('zh-cn') : current.locale('en-gb');
|
|
6919
6941
|
return __WEBPACK_IMPORTED_MODULE_3_react___default.a.createElement(
|
|
@@ -6988,7 +7010,7 @@ function noop() {}
|
|
|
6988
7010
|
function getNowByCurrentStateValue(value) {
|
|
6989
7011
|
var ret = void 0;
|
|
6990
7012
|
if (value) {
|
|
6991
|
-
ret = Object(__WEBPACK_IMPORTED_MODULE_7__util_index__["
|
|
7013
|
+
ret = Object(__WEBPACK_IMPORTED_MODULE_7__util_index__["f" /* getTodayTime */])(value);
|
|
6992
7014
|
} else {
|
|
6993
7015
|
ret = __WEBPACK_IMPORTED_MODULE_6_dayjs___default()();
|
|
6994
7016
|
}
|
|
@@ -7069,7 +7091,7 @@ var calendarMixinWrapper = function calendarMixinWrapper(ComposeComponent) {
|
|
|
7069
7091
|
}, _this.isAllowedDate = function (value) {
|
|
7070
7092
|
var disabledDate = _this.props.disabledDate;
|
|
7071
7093
|
var disabledTime = _this.props.disabledTime;
|
|
7072
|
-
return Object(__WEBPACK_IMPORTED_MODULE_7__util_index__["
|
|
7094
|
+
return Object(__WEBPACK_IMPORTED_MODULE_7__util_index__["i" /* isAllowedDate */])(value, disabledDate, disabledTime);
|
|
7073
7095
|
}, _temp), __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_possibleConstructorReturn___default()(_this, _ret);
|
|
7074
7096
|
}
|
|
7075
7097
|
|
|
@@ -7267,14 +7289,11 @@ var commonMixinWrapper = function commonMixinWrapper(ComposeComponent) {
|
|
|
7267
7289
|
|
|
7268
7290
|
|
|
7269
7291
|
|
|
7292
|
+
|
|
7270
7293
|
var customParseFormat = __webpack_require__(124);
|
|
7271
7294
|
|
|
7272
7295
|
__WEBPACK_IMPORTED_MODULE_8_dayjs___default.a.extend(customParseFormat);
|
|
7273
7296
|
|
|
7274
|
-
var cachedSelectionStart = void 0;
|
|
7275
|
-
var cachedSelectionEnd = void 0;
|
|
7276
|
-
var dateInputInstance = void 0;
|
|
7277
|
-
|
|
7278
7297
|
var DateInput = function (_React$Component) {
|
|
7279
7298
|
__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_inherits___default()(DateInput, _React$Component);
|
|
7280
7299
|
|
|
@@ -7288,37 +7307,49 @@ var DateInput = function (_React$Component) {
|
|
|
7288
7307
|
var selectedValue = props.selectedValue;
|
|
7289
7308
|
|
|
7290
7309
|
_this.state = {
|
|
7291
|
-
str: Object(__WEBPACK_IMPORTED_MODULE_9__util__["
|
|
7310
|
+
str: Object(__WEBPACK_IMPORTED_MODULE_9__util__["b" /* formatDate */])(selectedValue, _this.props.format),
|
|
7292
7311
|
hasFocus: false,
|
|
7312
|
+
isInputEmpty: false,
|
|
7293
7313
|
localFormat: _this.props.format[0]
|
|
7294
7314
|
};
|
|
7315
|
+
_this.dateInputInstance = __WEBPACK_IMPORTED_MODULE_3_react___default.a.createRef();
|
|
7316
|
+
_this.cachedSelectionStart = null;
|
|
7317
|
+
_this.cachedSelectionEnd = null;
|
|
7295
7318
|
return _this;
|
|
7296
7319
|
}
|
|
7297
7320
|
|
|
7321
|
+
DateInput.prototype.componentDidMount = function componentDidMount() {
|
|
7322
|
+
var _this2 = this;
|
|
7323
|
+
|
|
7324
|
+
setTimeout(function () {
|
|
7325
|
+
_this2.focus();
|
|
7326
|
+
}, 1);
|
|
7327
|
+
};
|
|
7328
|
+
|
|
7298
7329
|
DateInput.prototype.componentDidUpdate = function componentDidUpdate() {
|
|
7299
|
-
if (dateInputInstance && this.state.hasFocus && !(cachedSelectionStart === 0 && cachedSelectionEnd === 0)) {
|
|
7300
|
-
dateInputInstance.setSelectionRange(cachedSelectionStart, cachedSelectionEnd);
|
|
7330
|
+
if (this.dateInputInstance.current && this.state.hasFocus && !(this.cachedSelectionStart === 0 && this.cachedSelectionEnd === 0)) {
|
|
7331
|
+
this.dateInputInstance.current.setSelectionRange(this.cachedSelectionStart, this.cachedSelectionEnd);
|
|
7301
7332
|
}
|
|
7302
7333
|
};
|
|
7303
7334
|
|
|
7304
7335
|
DateInput.getDerivedStateFromProps = function getDerivedStateFromProps(nextProps, state) {
|
|
7305
7336
|
var newState = {};
|
|
7306
7337
|
|
|
7307
|
-
if (dateInputInstance) {
|
|
7308
|
-
cachedSelectionStart = dateInputInstance.selectionStart;
|
|
7309
|
-
cachedSelectionEnd = dateInputInstance.selectionEnd;
|
|
7338
|
+
if (this.dateInputInstance.current) {
|
|
7339
|
+
this.cachedSelectionStart = this.dateInputInstance.current.selectionStart;
|
|
7340
|
+
this.cachedSelectionEnd = this.dateInputInstance.current.selectionEnd;
|
|
7310
7341
|
}
|
|
7311
7342
|
// when popup show, click body will call this, bug!
|
|
7312
7343
|
var selectedValue = nextProps.selectedValue;
|
|
7313
7344
|
if (!state.hasFocus) {
|
|
7314
|
-
newState = { str: Object(__WEBPACK_IMPORTED_MODULE_9__util__["
|
|
7345
|
+
newState = { str: Object(__WEBPACK_IMPORTED_MODULE_9__util__["b" /* formatDate */])(selectedValue, nextProps.format) };
|
|
7315
7346
|
}
|
|
7316
7347
|
|
|
7317
7348
|
return newState;
|
|
7318
7349
|
};
|
|
7319
7350
|
|
|
7320
7351
|
DateInput.getInstance = function getInstance() {
|
|
7321
|
-
return dateInputInstance;
|
|
7352
|
+
return this.dateInputInstance.current;
|
|
7322
7353
|
};
|
|
7323
7354
|
|
|
7324
7355
|
DateInput.prototype.render = function render() {
|
|
@@ -7337,7 +7368,7 @@ var DateInput = function (_React$Component) {
|
|
|
7337
7368
|
'div',
|
|
7338
7369
|
{ className: prefixCls + '-date-input-wrap' },
|
|
7339
7370
|
__WEBPACK_IMPORTED_MODULE_3_react___default.a.createElement('input', {
|
|
7340
|
-
ref: this.
|
|
7371
|
+
ref: this.dateInputInstance,
|
|
7341
7372
|
className: prefixCls + '-input',
|
|
7342
7373
|
value: str,
|
|
7343
7374
|
disabled: props.disabled,
|
|
@@ -7346,10 +7377,11 @@ var DateInput = function (_React$Component) {
|
|
|
7346
7377
|
onKeyDown: this.onKeyDown,
|
|
7347
7378
|
onFocus: this.onFocus,
|
|
7348
7379
|
onBlur: this.onBlur,
|
|
7349
|
-
inputMode: inputMode
|
|
7380
|
+
inputMode: inputMode,
|
|
7381
|
+
tabIndex: '0'
|
|
7350
7382
|
})
|
|
7351
7383
|
),
|
|
7352
|
-
props.showClear
|
|
7384
|
+
props.showClear && __WEBPACK_IMPORTED_MODULE_3_react___default.a.createElement(
|
|
7353
7385
|
'a',
|
|
7354
7386
|
{
|
|
7355
7387
|
role: 'button',
|
|
@@ -7357,7 +7389,7 @@ var DateInput = function (_React$Component) {
|
|
|
7357
7389
|
onClick: this.onClear
|
|
7358
7390
|
},
|
|
7359
7391
|
clearIcon || __WEBPACK_IMPORTED_MODULE_3_react___default.a.createElement('span', { className: prefixCls + '-clear-btn' })
|
|
7360
|
-
)
|
|
7392
|
+
)
|
|
7361
7393
|
);
|
|
7362
7394
|
};
|
|
7363
7395
|
|
|
@@ -7382,60 +7414,64 @@ DateInput.propTypes = {
|
|
|
7382
7414
|
};
|
|
7383
7415
|
|
|
7384
7416
|
var _initialiseProps = function _initialiseProps() {
|
|
7385
|
-
var
|
|
7417
|
+
var _this3 = this;
|
|
7386
7418
|
|
|
7387
7419
|
this.onClear = function () {
|
|
7388
|
-
|
|
7389
|
-
|
|
7420
|
+
_this3.setState({ str: '' });
|
|
7421
|
+
_this3.props.onClear(null);
|
|
7390
7422
|
};
|
|
7391
7423
|
|
|
7392
7424
|
this.onInputChange = function (event) {
|
|
7393
7425
|
var str = event.target.value;
|
|
7394
|
-
var calendarStr = Object(__WEBPACK_IMPORTED_MODULE_9__util__["
|
|
7395
|
-
var _props =
|
|
7426
|
+
var calendarStr = Object(__WEBPACK_IMPORTED_MODULE_9__util__["h" /* initializeStr */])(str, _this3.state.localFormat) || '';
|
|
7427
|
+
var _props = _this3.props,
|
|
7396
7428
|
disabledDate = _props.disabledDate,
|
|
7397
7429
|
format = _props.format,
|
|
7398
7430
|
onChange = _props.onChange,
|
|
7399
7431
|
selectedValue = _props.selectedValue;
|
|
7400
7432
|
|
|
7401
|
-
// 没有内容,合法并直接退出
|
|
7402
7433
|
|
|
7403
|
-
if (!calendarStr) {
|
|
7404
|
-
|
|
7405
|
-
|
|
7434
|
+
if (!str || !calendarStr) {
|
|
7435
|
+
_this3.setState({ isInputEmpty: true });
|
|
7436
|
+
_this3.onClear();
|
|
7406
7437
|
return;
|
|
7407
7438
|
}
|
|
7439
|
+
|
|
7440
|
+
if (_this3.state.isInputEmpty) {
|
|
7441
|
+
_this3.setState({ isInputEmpty: false });
|
|
7442
|
+
}
|
|
7443
|
+
|
|
7408
7444
|
var parsed = __WEBPACK_IMPORTED_MODULE_8_dayjs___default()(calendarStr, format[0]);
|
|
7409
|
-
var value =
|
|
7445
|
+
var value = _this3.props.value.clone();
|
|
7410
7446
|
value = value.year(parsed.year()).month(parsed.month()).date(parsed.date()).hour(parsed.hour()).minute(parsed.minute()).second(parsed.second());
|
|
7411
7447
|
|
|
7412
7448
|
if (!value || disabledDate && disabledDate(value)) {
|
|
7413
|
-
|
|
7449
|
+
_this3.setState({ str: str });
|
|
7414
7450
|
return;
|
|
7415
7451
|
}
|
|
7416
7452
|
|
|
7417
7453
|
if (selectedValue !== value || selectedValue && value && !selectedValue.isSame(value)) {
|
|
7418
|
-
|
|
7454
|
+
_this3.setState({ str: str });
|
|
7419
7455
|
onChange(value);
|
|
7420
7456
|
}
|
|
7421
7457
|
};
|
|
7422
7458
|
|
|
7423
7459
|
this.onFocus = function () {
|
|
7424
|
-
|
|
7460
|
+
_this3.setState({ hasFocus: true });
|
|
7425
7461
|
};
|
|
7426
7462
|
|
|
7427
7463
|
this.onBlur = function () {
|
|
7428
|
-
|
|
7464
|
+
_this3.setState(function (prevState, prevProps) {
|
|
7429
7465
|
return {
|
|
7430
7466
|
hasFocus: false,
|
|
7431
|
-
str: Object(__WEBPACK_IMPORTED_MODULE_9__util__["
|
|
7467
|
+
str: Object(__WEBPACK_IMPORTED_MODULE_9__util__["b" /* formatDate */])(prevProps.value, prevProps.format)
|
|
7432
7468
|
};
|
|
7433
7469
|
});
|
|
7434
7470
|
};
|
|
7435
7471
|
|
|
7436
7472
|
this.onKeyDown = function (event) {
|
|
7437
7473
|
var keyCode = event.keyCode;
|
|
7438
|
-
var _props2 =
|
|
7474
|
+
var _props2 = _this3.props,
|
|
7439
7475
|
onSelect = _props2.onSelect,
|
|
7440
7476
|
value = _props2.value,
|
|
7441
7477
|
disabledDate = _props2.disabledDate;
|
|
@@ -7443,25 +7479,25 @@ var _initialiseProps = function _initialiseProps() {
|
|
|
7443
7479
|
if (keyCode === __WEBPACK_IMPORTED_MODULE_6_rc_util_es_KeyCode__["a" /* default */].ENTER && onSelect) {
|
|
7444
7480
|
var validateDate = !disabledDate || !disabledDate(value);
|
|
7445
7481
|
if (validateDate) {
|
|
7446
|
-
|
|
7482
|
+
if (_this3.state.isInputEmpty) {
|
|
7483
|
+
onSelect(null);
|
|
7484
|
+
} else {
|
|
7485
|
+
onSelect(value.clone());
|
|
7486
|
+
}
|
|
7447
7487
|
}
|
|
7448
7488
|
event.preventDefault();
|
|
7449
7489
|
}
|
|
7450
7490
|
};
|
|
7451
7491
|
|
|
7452
7492
|
this.getRootDOMNode = function () {
|
|
7453
|
-
return __WEBPACK_IMPORTED_MODULE_4_react_dom___default.a.findDOMNode(
|
|
7493
|
+
return __WEBPACK_IMPORTED_MODULE_4_react_dom___default.a.findDOMNode(_this3);
|
|
7454
7494
|
};
|
|
7455
7495
|
|
|
7456
7496
|
this.focus = function () {
|
|
7457
|
-
if (dateInputInstance) {
|
|
7458
|
-
dateInputInstance.focus();
|
|
7497
|
+
if (_this3.dateInputInstance.current) {
|
|
7498
|
+
_this3.dateInputInstance.current.focus();
|
|
7459
7499
|
}
|
|
7460
7500
|
};
|
|
7461
|
-
|
|
7462
|
-
this.saveDateInput = function (dateInput) {
|
|
7463
|
-
dateInputInstance = dateInput;
|
|
7464
|
-
};
|
|
7465
7501
|
};
|
|
7466
7502
|
|
|
7467
7503
|
Object(__WEBPACK_IMPORTED_MODULE_7_react_lifecycles_compat__["a" /* polyfill */])(DateInput);
|