@seafile/seafile-calendar 0.0.29-gzc31 → 0.0.29-prop3.1
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/dist/rc-calendar.js +355 -462
- package/dist/rc-calendar.js.map +1 -1
- package/dist/rc-calendar.min.js +1 -1
- package/es/Calendar.js +3 -4
- package/es/Picker.js +0 -1
- package/es/calendar/CalendarRightPanel.js +2 -2
- package/es/date/DateInput.js +15 -57
- package/es/util/index.js +300 -369
- package/lib/Calendar.js +3 -4
- package/lib/Picker.js +0 -1
- package/lib/calendar/CalendarRightPanel.js +1 -1
- package/lib/date/DateInput.js +15 -56
- package/lib/util/index.js +307 -378
- package/package.json +1 -1
package/lib/util/index.js
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
'use strict';
|
2
2
|
|
3
3
|
exports.__esModule = true;
|
4
|
-
exports.DATE_FORMATS = exports.currentTime = exports.stringCurrentMonth = exports.stringCurrentDate = exports.currentYear = exports.currentMonth = exports.currentDate = undefined;
|
4
|
+
exports.isLeapYear = exports.DATE_FORMATS = exports.currentTime = exports.stringCurrentMonth = exports.stringCurrentDate = exports.currentYear = exports.currentMonth = exports.currentDate = undefined;
|
5
5
|
|
6
6
|
var _extends2 = require('babel-runtime/helpers/extends');
|
7
7
|
|
@@ -17,17 +17,15 @@ exports.isTimeValidByConfig = isTimeValidByConfig;
|
|
17
17
|
exports.isTimeValid = isTimeValid;
|
18
18
|
exports.isAllowedDate = isAllowedDate;
|
19
19
|
exports.formatDate = formatDate;
|
20
|
-
exports.
|
20
|
+
exports.validateCalendarDay = validateCalendarDay;
|
21
|
+
exports.tokenizeFormattedDate = tokenizeFormattedDate;
|
21
22
|
exports.hasSpecialChar = hasSpecialChar;
|
22
|
-
exports.isValidMonth = isValidMonth;
|
23
|
-
exports.isValidDay = isValidDay;
|
24
|
-
exports.fullValidYear = fullValidYear;
|
25
|
-
exports.delimate = delimate;
|
26
|
-
exports.getDateFormatByStr = getDateFormatByStr;
|
27
|
-
exports.isCurrentYear = isCurrentYear;
|
28
23
|
exports.validateTime = validateTime;
|
29
|
-
exports.
|
30
|
-
exports.
|
24
|
+
exports.delimate = delimate;
|
25
|
+
exports.validateCalendarYear = validateCalendarYear;
|
26
|
+
exports.validateCalendarDayAndMonth = validateCalendarDayAndMonth;
|
27
|
+
exports.getDatePart = getDatePart;
|
28
|
+
exports.initializeStr = initializeStr;
|
31
29
|
|
32
30
|
var _dayjs = require('dayjs');
|
33
31
|
|
@@ -158,7 +156,28 @@ function formatDate(value, format) {
|
|
158
156
|
return value.format(format);
|
159
157
|
}
|
160
158
|
|
161
|
-
function
|
159
|
+
function validateCalendarDay(dayStr) {
|
160
|
+
if (!/^\d+$/.test(dayStr)) return false;
|
161
|
+
var day = Number(dayStr);
|
162
|
+
if ([1, 3, 5, 7, 8, 10, 12].includes(currentMonth)) {
|
163
|
+
return day >= 1 && day <= 31;
|
164
|
+
}
|
165
|
+
if ([4, 6, 9, 11].includes(currentMonth)) {
|
166
|
+
return day >= 1 && day <= 30;
|
167
|
+
}
|
168
|
+
if (currentMonth === 2) {
|
169
|
+
var _isLeapYear = function _isLeapYear(year) {
|
170
|
+
return year % 4 === 0 && year % 100 !== 0 || year % 400 === 0;
|
171
|
+
};
|
172
|
+
var year = currentYear;
|
173
|
+
if (_isLeapYear(year)) {
|
174
|
+
return day >= 1 && day <= 29;
|
175
|
+
}
|
176
|
+
return day >= 1 && day <= 28;
|
177
|
+
}
|
178
|
+
}
|
179
|
+
|
180
|
+
function tokenizeFormattedDate(formatStr, format) {
|
162
181
|
var str = formatStr || '';
|
163
182
|
var cleanStr = void 0;
|
164
183
|
switch (format) {
|
@@ -186,38 +205,37 @@ function hasSpecialChar(str) {
|
|
186
205
|
return matches ? matches.length : 0;
|
187
206
|
}
|
188
207
|
|
189
|
-
function
|
190
|
-
if (typeof
|
191
|
-
|
192
|
-
var month = Number(monthStr);
|
193
|
-
if (month >= 1 && month <= 12) {
|
194
|
-
return monthStr;
|
208
|
+
function validateTime(inputTime) {
|
209
|
+
if (!inputTime || typeof inputTime !== 'string') {
|
210
|
+
return currentTime;
|
195
211
|
}
|
196
|
-
|
197
|
-
}
|
198
|
-
|
199
|
-
|
200
|
-
|
201
|
-
var day = Number(dayStr);
|
202
|
-
if ([1, 3, 5, 7, 8, 10, 12].includes(currentMonth)) {
|
203
|
-
return day >= 1 && day <= 31;
|
212
|
+
var trimmed = inputTime.trim();
|
213
|
+
var timeRegex = /^(\d{2}):(\d{2})$/;
|
214
|
+
var match = trimmed.match(timeRegex);
|
215
|
+
if (!match) {
|
216
|
+
return currentTime;
|
204
217
|
}
|
205
|
-
|
206
|
-
|
218
|
+
var hour = Number(match[1]);
|
219
|
+
var minute = Number(match[2]);
|
220
|
+
if (hour > 23 || minute > 59) {
|
221
|
+
return currentTime;
|
207
222
|
}
|
208
|
-
|
209
|
-
|
210
|
-
|
211
|
-
|
212
|
-
|
213
|
-
|
214
|
-
|
215
|
-
|
216
|
-
|
223
|
+
return match[1] + ':' + match[2];
|
224
|
+
}
|
225
|
+
|
226
|
+
function delimate(format) {
|
227
|
+
var delimiter = void 0;
|
228
|
+
if (format === DATE_FORMATS.Germany_Russia_etc || format === DATE_FORMATS.Germany_Russia_etcAndTime) {
|
229
|
+
delimiter = '.';
|
230
|
+
} else if (format === DATE_FORMATS.ISO || format === DATE_FORMATS.ISOAndTime) {
|
231
|
+
delimiter = '-';
|
232
|
+
} else {
|
233
|
+
delimiter = '/';
|
217
234
|
}
|
235
|
+
return delimiter;
|
218
236
|
}
|
219
237
|
|
220
|
-
function
|
238
|
+
function validateCalendarYear(yearStr) {
|
221
239
|
var year = yearStr;
|
222
240
|
if (!year || isNaN(year)) return currentYear;
|
223
241
|
if (year.length === 2) {
|
@@ -233,95 +251,45 @@ function fullValidYear(yearStr) {
|
|
233
251
|
return year ? year.padStart(4, '0') : currentYear;
|
234
252
|
}
|
235
253
|
|
236
|
-
function
|
237
|
-
|
238
|
-
|
239
|
-
delimiter = '.';
|
240
|
-
} else if (formatPrefix === DATE_FORMATS.ISO || formatPrefix === DATE_FORMATS.ISOAndTime) {
|
241
|
-
delimiter = '-';
|
242
|
-
} else {
|
243
|
-
delimiter = '/';
|
244
|
-
}
|
245
|
-
return delimiter;
|
246
|
-
}
|
254
|
+
var isLeapYear = exports.isLeapYear = function isLeapYear(year) {
|
255
|
+
return year % 4 === 0 && year % 100 !== 0 || year % 400 === 0;
|
256
|
+
};
|
247
257
|
|
248
|
-
function
|
249
|
-
var
|
250
|
-
var
|
251
|
-
var
|
252
|
-
|
253
|
-
|
254
|
-
|
255
|
-
|
256
|
-
|
257
|
-
|
258
|
-
|
259
|
-
if (
|
260
|
-
|
261
|
-
|
262
|
-
|
263
|
-
return DATE_FORMATS.USAndTime;
|
264
|
-
}
|
265
|
-
if (format === DATE_FORMATS.European || format === DATE_FORMATS.Germany_Russia_etc) {
|
266
|
-
var day = parts[0],
|
267
|
-
month = parts[1];
|
268
|
-
|
269
|
-
var dayLen = day.length;
|
270
|
-
var monthLen = month.length;
|
271
|
-
if (dayLen === 2 && monthLen === 2) {
|
272
|
-
return 'DD' + delimiter + 'MM' + delimiter + 'YYYY';
|
273
|
-
} else if (dayLen === 2 && monthLen === 1) {
|
274
|
-
return 'DD' + delimiter + 'M' + delimiter + 'YYYY';
|
275
|
-
} else if (dayLen === 1 && monthLen === 2) {
|
276
|
-
return 'D' + delimiter + 'MM' + delimiter + 'YYYY';
|
277
|
-
} else if (dayLen === 1 && monthLen === 1) {
|
278
|
-
return 'D' + delimiter + 'M' + delimiter + 'YYYY';
|
279
|
-
}
|
280
|
-
}
|
281
|
-
if (format === DATE_FORMATS.EuropeanAndTime || format === DATE_FORMATS.Germany_Russia_etcAndTime) {
|
282
|
-
var _day = parts[0],
|
283
|
-
_month = parts[1];
|
284
|
-
|
285
|
-
var _dayLen = _day.length;
|
286
|
-
var _monthLen = _month.length;
|
287
|
-
if (_dayLen === 2 && _monthLen === 2) {
|
288
|
-
return 'DD' + delimiter + 'MM' + delimiter + 'YYYY HH:mm';
|
289
|
-
} else if (_dayLen === 2 && _monthLen === 1) {
|
290
|
-
return 'DD' + delimiter + 'M' + delimiter + 'YYYY HH:mm';
|
291
|
-
} else if (_dayLen === 1 && _monthLen === 2) {
|
292
|
-
return 'D' + delimiter + 'MM' + delimiter + 'YYYY HH:mm';
|
293
|
-
} else if (_dayLen === 1 && _monthLen === 1) {
|
294
|
-
return 'D' + delimiter + 'M' + delimiter + 'YYYY HH:mm';
|
295
|
-
}
|
258
|
+
function validateCalendarDayAndMonth(dayStr, monthStr, yearStr) {
|
259
|
+
var day = Number(dayStr);
|
260
|
+
var month = Number(monthStr);
|
261
|
+
var year = yearStr;
|
262
|
+
var isInThirtyOneDaysMonths = [1, 3, 5, 7, 8, 10, 12].includes(month);
|
263
|
+
var isInThirtyDaysMonths = [4, 6, 9, 11].includes(month);
|
264
|
+
var isValidDayThirtyOne = day < 1 || day > 31;
|
265
|
+
var isValidDayThirty = day < 1 || day > 30;
|
266
|
+
var isValidDayTwentyNight = day < 1 || day > 29;
|
267
|
+
var isValidDayTwentyEight = day < 1 || day > 28;
|
268
|
+
|
269
|
+
if (month > 12 || month < 0 || !month) {
|
270
|
+
day = currentDate;
|
271
|
+
month = currentMonth;
|
272
|
+
year = currentYear;
|
296
273
|
}
|
297
|
-
return format;
|
298
|
-
}
|
299
274
|
|
300
|
-
|
301
|
-
|
302
|
-
|
303
|
-
|
304
|
-
function validateTime(inputTime) {
|
305
|
-
if (!inputTime || typeof inputTime !== 'string') {
|
306
|
-
return currentTime;
|
307
|
-
}
|
308
|
-
var trimmed = inputTime.trim();
|
309
|
-
var timeRegex = /^(\d{2}):(\d{2})$/;
|
310
|
-
var match = trimmed.match(timeRegex);
|
311
|
-
if (!match) {
|
312
|
-
return currentTime;
|
275
|
+
if (isInThirtyOneDaysMonths && isValidDayThirtyOne || isInThirtyDaysMonths && isValidDayThirty) {
|
276
|
+
day = currentDate;
|
277
|
+
month = currentMonth;
|
278
|
+
year = currentYear;
|
313
279
|
}
|
314
|
-
var hour = Number(match[1]);
|
315
|
-
var minute = Number(match[2]);
|
316
|
-
if (hour > 23 || minute > 59) {
|
317
|
-
return currentTime;
|
318
|
-
}
|
319
|
-
return match[1] + ':' + match[2];
|
320
|
-
}
|
321
280
|
|
322
|
-
|
323
|
-
|
324
|
-
|
281
|
+
if (month === 2) {
|
282
|
+
if (isLeapYear(year) && isValidDayTwentyNight) {
|
283
|
+
day = currentDate;
|
284
|
+
month = currentMonth;
|
285
|
+
year = currentYear;
|
286
|
+
} else if (isValidDayTwentyEight) {
|
287
|
+
day = currentDate;
|
288
|
+
month = currentMonth;
|
289
|
+
year = currentYear;
|
290
|
+
}
|
291
|
+
}
|
292
|
+
return { day: day, month: month, year: year };
|
325
293
|
}
|
326
294
|
|
327
295
|
function getDatePart(str) {
|
@@ -330,272 +298,233 @@ function getDatePart(str) {
|
|
330
298
|
return parts[0];
|
331
299
|
}
|
332
300
|
|
333
|
-
function
|
334
|
-
var
|
335
|
-
var
|
336
|
-
var year = void 0;
|
301
|
+
function initializeStr(str, format) {
|
302
|
+
var inputStr = str;
|
303
|
+
var inputStrLength = inputStr.length;
|
337
304
|
var time = currentTime;
|
338
|
-
var
|
339
|
-
|
340
|
-
|
341
|
-
|
342
|
-
if (numStr.length === 7) {
|
343
|
-
year = numStr.slice(0, 4);
|
344
|
-
month = numStr.slice(4, 6).padStart(2, '0');
|
345
|
-
day = numStr.slice(6, 7).padStart(2, '0');
|
346
|
-
if (!isValidDay(day)) {
|
347
|
-
return year + '-' + stringCurrentMonth + '-' + stringCurrentDate;
|
348
|
-
}
|
349
|
-
return year + '-' + month + '-' + day;
|
350
|
-
}
|
305
|
+
var hasSpecial = hasSpecialChar(inputStr);
|
306
|
+
var formattedArray = tokenizeFormattedDate(inputStr, format, DATE_FORMATS);
|
307
|
+
var dateDelimater = delimate(format);
|
308
|
+
if (format === DATE_FORMATS.ISO) {
|
351
309
|
if (hasSpecial) {
|
352
|
-
|
353
|
-
|
354
|
-
|
355
|
-
|
356
|
-
|
357
|
-
|
358
|
-
|
359
|
-
|
360
|
-
|
361
|
-
|
362
|
-
|
363
|
-
|
364
|
-
|
365
|
-
|
366
|
-
|
367
|
-
|
368
|
-
|
369
|
-
|
370
|
-
|
371
|
-
|
372
|
-
|
373
|
-
|
374
|
-
|
375
|
-
|
376
|
-
|
377
|
-
|
378
|
-
|
379
|
-
|
380
|
-
|
381
|
-
|
382
|
-
|
383
|
-
|
384
|
-
}
|
385
|
-
return year + '-' + String(isValidMonth(month)).padStart(2, '0') + '-' + String(day).padStart(2, '0'); // eslint-disable-line max-len
|
386
|
-
}
|
387
|
-
if (str.length === 8) {
|
388
|
-
if (!isValidDay(day)) {
|
389
|
-
return isCurrentYear(year, month, day) + '-' + String(isValidMonth(month)).padStart(2, '0') + '-' + stringCurrentDate; // eslint-disable-line max-len
|
390
|
-
}
|
391
|
-
return isCurrentYear(year, month, day) + '-' + String(isValidMonth(month)).padStart(2, '0') + '-' + String(day).padStart(2, '0'); // eslint-disable-line max-len
|
392
|
-
}
|
393
|
-
if (Number(month) >= 1 && Number(month) <= 12 && isValidDay(day)) {
|
394
|
-
return year + '-' + month.padStart(2, '0') + '-' + String(day).padStart(2, '0');
|
395
|
-
}
|
396
|
-
return year + '-' + (month ? month.padStart(2, '0') : '01') + '-' + (day ? String(day).padStart(2, '0') : '01'); // eslint-disable-line max-len
|
397
|
-
}
|
398
|
-
return currentYear + '/' + stringCurrentMonth + '/' + stringCurrentDate;
|
399
|
-
}
|
400
|
-
if (localeFormat === DATE_FORMATS.ISOAndTime) {
|
401
|
-
var unNormalDate = getDatePart(str);
|
402
|
-
var unNormalDateParts = formatDateLocal(unNormalDate, localeFormat, DATE_FORMATS);
|
403
|
-
var _hasSpecial = hasSpecialChar(unNormalDate);
|
404
|
-
var _numStr = unNormalDate.replace(/[^0-9]/g, '');
|
405
|
-
if (_numStr.length === 7) {
|
406
|
-
year = _numStr.slice(0, 4);
|
407
|
-
month = _numStr.slice(4, 6).padStart(2, '0');
|
408
|
-
day = _numStr.slice(6, 7).padStart(2, '0');
|
409
|
-
if (parts.length === 3) {
|
410
|
-
time = validateTime(parts[1] + ':' + parts[2]);
|
411
|
-
}
|
412
|
-
if (parts.length === 4) {
|
413
|
-
time = validateTime(parts[2] + ':' + parts[3]);
|
414
|
-
}
|
415
|
-
if (parts.length === 5) {
|
416
|
-
time = validateTime(parts[3] + ':' + parts[4]);
|
417
|
-
}
|
418
|
-
if (!isValidDay(day)) {
|
419
|
-
return year + '-' + stringCurrentMonth + '-' + stringCurrentDate + ' ' + time;
|
420
|
-
}
|
421
|
-
return year + '-' + month + '-' + day + ' ' + time;
|
422
|
-
}
|
423
|
-
if (_hasSpecial) {
|
424
|
-
if (unNormalDateParts.length < 3) {
|
425
|
-
parts.splice(2, 0, '1');
|
426
|
-
}
|
427
|
-
year = fullValidYear(parts[0]);
|
428
|
-
month = Number(parts[1]);
|
429
|
-
day = Number(parts[2]);
|
430
|
-
time = validateTime(parts[3] + ':' + parts[4]);
|
431
|
-
if (month >= 1 && month <= 12) {
|
432
|
-
if (isValidDay(day)) {
|
433
|
-
return year + '-' + String(month).padStart(2, '0') + '-' + String(day).padStart(2, '0') + ' ' + time; // eslint-disable-line max-len
|
434
|
-
}
|
435
|
-
return year + '-' + String(month).padStart(2, '0') + '-01 ' + time;
|
436
|
-
}
|
437
|
-
if ((month >= 13 || month < 1) && isNaN(day)) {
|
438
|
-
return year + '-' + stringCurrentMonth + '-' + stringCurrentDate + ' ' + time; // eslint-disable-line max-len
|
439
|
-
}
|
440
|
-
if ((month >= 13 || month < 1) && day) {
|
441
|
-
return String(currentYear) + '-' + stringCurrentMonth + '-' + stringCurrentDate + ' ' + time; // eslint-disable-line max-len
|
442
|
-
}
|
443
|
-
if (!month && !day) {
|
444
|
-
return year + '-01-01 ' + time;
|
445
|
-
}
|
310
|
+
var validateYear = validateCalendarYear(formattedArray[0]);
|
311
|
+
|
312
|
+
var _validateCalendarDayA = validateCalendarDayAndMonth(formattedArray[2] || '01', formattedArray[1] || '01', validateYear),
|
313
|
+
day = _validateCalendarDayA.day,
|
314
|
+
month = _validateCalendarDayA.month; // eslint-disable-line max-len
|
315
|
+
|
316
|
+
|
317
|
+
var _validateCalendarDayA2 = validateCalendarDayAndMonth(formattedArray[2] || '01', formattedArray[1] || '01', validateYear),
|
318
|
+
year = _validateCalendarDayA2.year; // eslint-disable-line max-len
|
319
|
+
|
320
|
+
|
321
|
+
day = String(day).padStart(2, 0);
|
322
|
+
month = String(month).padStart(2, 0);
|
323
|
+
return '' + year + dateDelimater + month + dateDelimater + day;
|
324
|
+
} else if (inputStrLength >= 1 && inputStrLength <= 8) {
|
325
|
+
var yearStr = inputStr.slice(0, 4);
|
326
|
+
var monthStr = inputStr.slice(4, 6) || '01';
|
327
|
+
var dateStr = inputStr.slice(6, 8) || '01';
|
328
|
+
var _validateYear = validateCalendarYear(yearStr);
|
329
|
+
|
330
|
+
var _validateCalendarDayA3 = validateCalendarDayAndMonth(dateStr, monthStr, _validateYear),
|
331
|
+
_day = _validateCalendarDayA3.day,
|
332
|
+
_month = _validateCalendarDayA3.month;
|
333
|
+
|
334
|
+
var _validateCalendarDayA4 = validateCalendarDayAndMonth(dateStr, monthStr, _validateYear),
|
335
|
+
_year = _validateCalendarDayA4.year;
|
336
|
+
|
337
|
+
_day = String(_day).padStart(2, 0);
|
338
|
+
_month = String(_month).padStart(2, 0);
|
339
|
+
return '' + _year + dateDelimater + _month + dateDelimater + _day;
|
340
|
+
} else if (inputStrLength > 8) {
|
341
|
+
return '' + currentYear + dateDelimater + String(currentMonth).padStart(2, 0) + dateDelimater + String(currentDate).padStart(2, 0); // eslint-disable-line max-len
|
446
342
|
}
|
447
|
-
|
448
|
-
|
449
|
-
|
450
|
-
|
451
|
-
|
343
|
+
} else if (format === DATE_FORMATS.ISOAndTime) {
|
344
|
+
var datePart = getDatePart(inputStr);
|
345
|
+
var formattedDateArray = tokenizeFormattedDate(datePart, format);
|
346
|
+
var isDateSpecial = hasSpecialChar(datePart);
|
347
|
+
if (isDateSpecial) {
|
348
|
+
if (formattedDateArray.length < 3) {
|
349
|
+
formattedArray.splice(2, 0, '01');
|
350
|
+
}
|
351
|
+
var _validateYear2 = validateCalendarYear(formattedArray[0]);
|
352
|
+
|
353
|
+
var _validateCalendarDayA5 = validateCalendarDayAndMonth(formattedArray[2] || '01', formattedArray[1] || '01', _validateYear2),
|
354
|
+
_day2 = _validateCalendarDayA5.day,
|
355
|
+
_month2 = _validateCalendarDayA5.month; // eslint-disable-line max-len
|
356
|
+
|
357
|
+
|
358
|
+
var _validateCalendarDayA6 = validateCalendarDayAndMonth(formattedArray[2] || '01', formattedArray[1] || '01', _validateYear2),
|
359
|
+
_year2 = _validateCalendarDayA6.year; // eslint-disable-line max-len
|
360
|
+
|
361
|
+
|
362
|
+
time = validateTime(formattedArray[3] + ':' + formattedArray[4]);
|
363
|
+
_day2 = String(_day2).padStart(2, 0);
|
364
|
+
_month2 = String(_month2).padStart(2, 0);
|
365
|
+
return '' + _year2 + dateDelimater + _month2 + dateDelimater + _day2 + ' ' + time;
|
366
|
+
} else if (datePart.length >= 1 && datePart.length <= 8) {
|
367
|
+
var _yearStr = datePart.slice(0, 4);
|
368
|
+
var _monthStr = datePart.slice(4, 6) || '01';
|
369
|
+
var _dateStr = datePart.slice(6, 8) || '01';
|
370
|
+
var timeParts = tokenizeFormattedDate(inputStr, format);
|
452
371
|
time = validateTime(timeParts[1] + ':' + timeParts[2]);
|
453
|
-
|
454
|
-
|
455
|
-
|
456
|
-
|
457
|
-
|
458
|
-
|
459
|
-
|
460
|
-
|
461
|
-
|
462
|
-
|
463
|
-
|
464
|
-
|
465
|
-
|
466
|
-
|
467
|
-
return isCurrentYear(year, month, day) + '-' + String(isValidMonth(month)).padStart(2, '0') + '-' + stringCurrentDate + ' ' + time; // eslint-disable-line max-len
|
468
|
-
}
|
469
|
-
return isCurrentYear(year, month, day) + '-' + String(isValidMonth(month)).padStart(2, '0') + '-' + String(day).padStart(2, '0') + ' ' + time; // eslint-disable-line max-len
|
470
|
-
}
|
471
|
-
if (Number(month) >= 1 && Number(month) <= 12 && isValidDay(day)) {
|
472
|
-
return year + '-' + month.padStart(2, '0') + '-' + String(day).padStart(2, '0') + ' ' + time;
|
473
|
-
}
|
474
|
-
return year + '-' + (month ? month.padStart(2, '0') : '01') + '-' + (day ? String(day).padStart(2, '0') : '01') + ' ' + time; // eslint-disable-line max-len
|
475
|
-
}
|
476
|
-
return currentYear + '/' + stringCurrentMonth + '/' + stringCurrentDate + ' ' + time;
|
477
|
-
}
|
478
|
-
if (localeFormat === DATE_FORMATS.US) {
|
479
|
-
var _hasSpecial2 = hasSpecialChar(str);
|
480
|
-
if (_hasSpecial2) {
|
481
|
-
month = Number(parts[0]);
|
482
|
-
day = Number(parts[1]);
|
483
|
-
year = fullValidYear(parts[2]);
|
484
|
-
if (month >= 1 && month <= 12 && isValidDay(day)) {
|
485
|
-
return month + '/' + day + '/' + year;
|
486
|
-
}
|
487
|
-
return currentMonth + '/' + currentDate + '/' + currentYear;
|
488
|
-
}
|
489
|
-
if (str.length >= 1 && str.length <= 8) {
|
490
|
-
month = Number(str.slice(0, 2));
|
491
|
-
day = Number(str.slice(2, 4));
|
492
|
-
year = fullValidYear(str.slice(4, str.length));
|
493
|
-
if (month >= 1 && month <= 12) {
|
494
|
-
if (isValidDay(day)) {
|
495
|
-
return month + '/' + day + '/' + year;
|
496
|
-
}
|
497
|
-
if (!day) {
|
498
|
-
return month + '/1/' + year;
|
499
|
-
}
|
500
|
-
return currentMonth + '/' + currentDate + '/' + currentYear;
|
501
|
-
}
|
502
|
-
}
|
503
|
-
return currentMonth + '/' + currentDate + '/' + currentYear;
|
504
|
-
}
|
505
|
-
if (localeFormat === DATE_FORMATS.USAndTime) {
|
506
|
-
var _unNormalDate = getDatePart(str);
|
507
|
-
var _unNormalDateParts = formatDateLocal(_unNormalDate, localeFormat, DATE_FORMATS);
|
508
|
-
var _hasSpecial3 = hasSpecialChar(_unNormalDate);
|
509
|
-
if (_hasSpecial3) {
|
510
|
-
if (_unNormalDateParts.length < 3) {
|
511
|
-
parts.splice(2, 0, String(currentYear));
|
512
|
-
}
|
513
|
-
month = Number(parts[0]);
|
514
|
-
day = Number(parts[1]);
|
515
|
-
year = fullValidYear(parts[2]);
|
516
|
-
time = validateTime(parts[3] + ':' + parts[4]);
|
517
|
-
if (month >= 1 && month <= 12 && isValidDay(day)) {
|
518
|
-
return month + '/' + day + '/' + year + ' ' + time;
|
519
|
-
}
|
520
|
-
return currentMonth + '/' + currentDate + '/' + currentYear + ' ' + time;
|
521
|
-
}
|
522
|
-
if (_unNormalDate.length >= 1 && _unNormalDate.length <= 8) {
|
523
|
-
month = Number(_unNormalDate.slice(0, 2));
|
524
|
-
day = Number(_unNormalDate.slice(2, 4));
|
525
|
-
year = fullValidYear(_unNormalDate.slice(4, _unNormalDate.length));
|
526
|
-
var _timeParts = formatDateLocal(str, localeFormat, DATE_FORMATS);
|
527
|
-
time = validateTime(_timeParts[1] + ':' + _timeParts[2]);
|
528
|
-
if (month >= 1 && month <= 12) {
|
529
|
-
if (isValidDay(day)) {
|
530
|
-
return month + '/' + day + '/' + year + ' ' + time;
|
531
|
-
}
|
532
|
-
if (!day) {
|
533
|
-
return month + '/1/' + year + ' ' + time;
|
534
|
-
}
|
535
|
-
return currentMonth + '/' + currentDate + '/' + currentYear + ' ' + time;
|
536
|
-
}
|
372
|
+
var _validateYear3 = validateCalendarYear(_yearStr);
|
373
|
+
|
374
|
+
var _validateCalendarDayA7 = validateCalendarDayAndMonth(_dateStr, _monthStr, _validateYear3),
|
375
|
+
_day3 = _validateCalendarDayA7.day,
|
376
|
+
_month3 = _validateCalendarDayA7.month;
|
377
|
+
|
378
|
+
var _validateCalendarDayA8 = validateCalendarDayAndMonth(_dateStr, _monthStr, _validateYear3),
|
379
|
+
_year3 = _validateCalendarDayA8.year;
|
380
|
+
|
381
|
+
_day3 = String(_day3).padStart(2, 0);
|
382
|
+
_month3 = String(_month3).padStart(2, 0);
|
383
|
+
return '' + _year3 + dateDelimater + _month3 + dateDelimater + _day3 + ' ' + time;
|
384
|
+
} else if (datePart.length > 8) {
|
385
|
+
return '' + currentYear + dateDelimater + String(currentMonth).padStart(2, 0) + dateDelimater + String(currentDate).padStart(2, 0) + ' ' + currentTime; // eslint-disable-line max-len
|
537
386
|
}
|
538
|
-
|
539
|
-
|
540
|
-
|
541
|
-
|
542
|
-
|
543
|
-
|
544
|
-
|
545
|
-
|
546
|
-
|
547
|
-
|
548
|
-
|
549
|
-
|
387
|
+
} else if (format === DATE_FORMATS.US) {
|
388
|
+
if (hasSpecial) {
|
389
|
+
var _validateYear4 = validateCalendarYear(formattedArray[2]);
|
390
|
+
|
391
|
+
var _validateCalendarDayA9 = validateCalendarDayAndMonth(formattedArray[1] || '1', formattedArray[0], _validateYear4),
|
392
|
+
_day4 = _validateCalendarDayA9.day,
|
393
|
+
_month4 = _validateCalendarDayA9.month,
|
394
|
+
_year4 = _validateCalendarDayA9.year; // eslint-disable-line max-len
|
395
|
+
|
396
|
+
|
397
|
+
return '' + _month4 + dateDelimater + _day4 + dateDelimater + _year4;
|
398
|
+
} else if (inputStrLength >= 1 && inputStrLength <= 8) {
|
399
|
+
var _monthStr2 = inputStr.slice(0, 2);
|
400
|
+
var _dateStr2 = inputStr.slice(2, 4) || '1';
|
401
|
+
var _yearStr2 = inputStr.slice(4, inputStr.length);
|
402
|
+
var _validateYear5 = validateCalendarYear(_yearStr2);
|
403
|
+
|
404
|
+
var _validateCalendarDayA10 = validateCalendarDayAndMonth(_dateStr2, _monthStr2, _validateYear5),
|
405
|
+
_day5 = _validateCalendarDayA10.day,
|
406
|
+
_month5 = _validateCalendarDayA10.month,
|
407
|
+
_year5 = _validateCalendarDayA10.year;
|
408
|
+
|
409
|
+
return '' + _month5 + dateDelimater + _day5 + dateDelimater + _year5; // eslint-disable-line max-len
|
410
|
+
} else if (inputStrLength > 8) {
|
411
|
+
return '' + String(currentMonth).padStart(2, 0) + dateDelimater + String(currentDate).padStart(2, 0) + dateDelimater + currentYear; // eslint-disable-line max-len
|
550
412
|
}
|
551
|
-
|
552
|
-
|
553
|
-
|
554
|
-
|
555
|
-
|
556
|
-
|
557
|
-
|
558
|
-
|
559
|
-
|
560
|
-
|
561
|
-
|
562
|
-
|
563
|
-
|
413
|
+
} else if (format === DATE_FORMATS.USAndTime) {
|
414
|
+
var _datePart = getDatePart(inputStr);
|
415
|
+
var _formattedDateArray = tokenizeFormattedDate(_datePart, format);
|
416
|
+
var _isDateSpecial = hasSpecialChar(_datePart);
|
417
|
+
if (_isDateSpecial) {
|
418
|
+
if (_formattedDateArray.length < 3) {
|
419
|
+
formattedArray.splice(2, 0, String(currentYear));
|
420
|
+
}
|
421
|
+
var _validateYear6 = validateCalendarYear(formattedArray[2]);
|
422
|
+
|
423
|
+
var _validateCalendarDayA11 = validateCalendarDayAndMonth(formattedArray[1] || '1', formattedArray[0], _validateYear6),
|
424
|
+
_day6 = _validateCalendarDayA11.day,
|
425
|
+
_month6 = _validateCalendarDayA11.month,
|
426
|
+
_year6 = _validateCalendarDayA11.year; // eslint-disable-line max-len
|
427
|
+
|
428
|
+
|
429
|
+
time = validateTime(formattedArray[3] + ':' + formattedArray[4]);
|
430
|
+
return '' + _month6 + dateDelimater + _day6 + dateDelimater + _year6 + ' ' + time;
|
431
|
+
} else if (_datePart.length >= 1 && _datePart.length <= 8) {
|
432
|
+
var _monthStr3 = _datePart.slice(0, 2);
|
433
|
+
var _dateStr3 = _datePart.slice(2, 4) || '1';
|
434
|
+
var _yearStr3 = _datePart.slice(4, _datePart.length);
|
435
|
+
var _validateYear7 = validateCalendarYear(_yearStr3); // eslint-disable-line max-len
|
436
|
+
|
437
|
+
var _validateCalendarDayA12 = validateCalendarDayAndMonth(_dateStr3, _monthStr3, _validateYear7),
|
438
|
+
_day7 = _validateCalendarDayA12.day,
|
439
|
+
_month7 = _validateCalendarDayA12.month,
|
440
|
+
_year7 = _validateCalendarDayA12.year;
|
441
|
+
|
442
|
+
var _timeParts = tokenizeFormattedDate(inputStr, format);
|
443
|
+
time = validateTime(_timeParts[1] + ':' + _timeParts[2]) || currentTime;
|
444
|
+
return '' + _month7 + dateDelimater + _day7 + dateDelimater + _year7 + ' ' + time;
|
445
|
+
} else if (_datePart.length > 8) {
|
446
|
+
return '' + String(currentMonth).padStart(2, 0) + dateDelimater + String(currentDate).padStart(2, 0) + dateDelimater + currentYear + ' ' + currentTime; // eslint-disable-line max-len
|
564
447
|
}
|
565
|
-
|
566
|
-
|
567
|
-
|
568
|
-
|
569
|
-
|
570
|
-
|
571
|
-
|
572
|
-
|
573
|
-
|
574
|
-
|
575
|
-
|
576
|
-
|
577
|
-
|
578
|
-
|
579
|
-
|
580
|
-
|
581
|
-
|
582
|
-
|
448
|
+
} else if (format === DATE_FORMATS.European || format === DATE_FORMATS.Germany_Russia_etc) {
|
449
|
+
if (hasSpecial) {
|
450
|
+
var _validateYear8 = validateCalendarYear(formattedArray[2]);
|
451
|
+
|
452
|
+
var _validateCalendarDayA13 = validateCalendarDayAndMonth(formattedArray[0], formattedArray[1], _validateYear8),
|
453
|
+
_day8 = _validateCalendarDayA13.day,
|
454
|
+
_month8 = _validateCalendarDayA13.month; // eslint-disable-line max-len
|
455
|
+
|
456
|
+
|
457
|
+
var _validateCalendarDayA14 = validateCalendarDayAndMonth(formattedArray[0], formattedArray[1], _validateYear8),
|
458
|
+
_year8 = _validateCalendarDayA14.year; // eslint-disable-line max-len
|
459
|
+
|
460
|
+
|
461
|
+
_day8 = String(_day8).padStart(2, 0);
|
462
|
+
_month8 = String(_month8).padStart(2, 0);
|
463
|
+
return '' + _day8 + dateDelimater + _month8 + dateDelimater + _year8;
|
464
|
+
} else if (inputStrLength >= 1 && inputStrLength <= 8) {
|
465
|
+
var _dateStr4 = inputStr.slice(0, 2);
|
466
|
+
var _monthStr4 = inputStr.slice(2, 4);
|
467
|
+
var _yearStr4 = inputStr.slice(4, inputStr.length);
|
468
|
+
var _validateYear9 = validateCalendarYear(_yearStr4);
|
469
|
+
|
470
|
+
var _validateCalendarDayA15 = validateCalendarDayAndMonth(_dateStr4, _monthStr4, _validateYear9),
|
471
|
+
_year9 = _validateCalendarDayA15.year; // eslint-disable-line max-len
|
472
|
+
|
473
|
+
|
474
|
+
var _validateCalendarDayA16 = validateCalendarDayAndMonth(_dateStr4, _monthStr4, _validateYear9),
|
475
|
+
_day9 = _validateCalendarDayA16.day,
|
476
|
+
_month9 = _validateCalendarDayA16.month; // eslint-disable-line max-len
|
477
|
+
|
478
|
+
|
479
|
+
_day9 = String(_day9).padStart(2, 0);
|
480
|
+
_month9 = String(_month9).padStart(2, 0);
|
481
|
+
return '' + _day9 + dateDelimater + _month9 + dateDelimater + _year9;
|
482
|
+
} else if (inputStrLength > 8) {
|
483
|
+
return '' + String(currentDate).padStart(2, 0) + dateDelimater + String(currentMonth).padStart(2, 0) + dateDelimater + currentYear; // eslint-disable-line max-len
|
583
484
|
}
|
584
|
-
|
585
|
-
|
586
|
-
|
587
|
-
|
588
|
-
|
589
|
-
|
590
|
-
|
485
|
+
} else if (format === DATE_FORMATS.EuropeanAndTime || format === DATE_FORMATS.Germany_Russia_etcAndTime) {
|
486
|
+
var _datePart2 = getDatePart(inputStr);
|
487
|
+
var _formattedDateArray2 = tokenizeFormattedDate(_datePart2, format);
|
488
|
+
var _isDateSpecial2 = hasSpecialChar(_datePart2);
|
489
|
+
if (_isDateSpecial2) {
|
490
|
+
if (_formattedDateArray2.length < 3) {
|
491
|
+
formattedArray.splice(2, 0, String(currentYear));
|
492
|
+
}
|
493
|
+
var _validateYear10 = validateCalendarYear(formattedArray[2]);
|
494
|
+
|
495
|
+
var _validateCalendarDayA17 = validateCalendarDayAndMonth(formattedArray[0], formattedArray[1], _validateYear10),
|
496
|
+
_day10 = _validateCalendarDayA17.day,
|
497
|
+
_month10 = _validateCalendarDayA17.month; // eslint-disable-line max-len
|
498
|
+
|
499
|
+
|
500
|
+
var _validateCalendarDayA18 = validateCalendarDayAndMonth(formattedArray[0], formattedArray[1], _validateYear10),
|
501
|
+
_year10 = _validateCalendarDayA18.year; // eslint-disable-line max-len
|
502
|
+
|
503
|
+
|
504
|
+
time = validateTime(formattedArray[3] + ':' + formattedArray[4]);
|
505
|
+
_day10 = String(_day10).padStart(2, 0);
|
506
|
+
_month10 = String(_month10).padStart(2, 0);
|
507
|
+
return '' + _day10 + dateDelimater + _month10 + dateDelimater + _year10 + ' ' + time;
|
508
|
+
} else if (_datePart2.length >= 1 && _datePart2.length <= 8) {
|
509
|
+
var _dateStr5 = _datePart2.slice(0, 2);
|
510
|
+
var _monthStr5 = _datePart2.slice(2, 4);
|
511
|
+
var _yearStr5 = _datePart2.slice(4, _datePart2.length);
|
512
|
+
var _timeParts2 = tokenizeFormattedDate(inputStr, format);
|
591
513
|
time = validateTime(_timeParts2[1] + ':' + _timeParts2[2]);
|
592
|
-
|
593
|
-
|
594
|
-
|
595
|
-
|
596
|
-
|
597
|
-
|
514
|
+
var _validateYear11 = validateCalendarYear(_yearStr5);
|
515
|
+
|
516
|
+
var _validateCalendarDayA19 = validateCalendarDayAndMonth(_dateStr5, _monthStr5, _validateYear11),
|
517
|
+
_day11 = _validateCalendarDayA19.day,
|
518
|
+
_month11 = _validateCalendarDayA19.month;
|
519
|
+
|
520
|
+
var _validateCalendarDayA20 = validateCalendarDayAndMonth(_dateStr5, _monthStr5, _validateYear11),
|
521
|
+
_year11 = _validateCalendarDayA20.year;
|
522
|
+
|
523
|
+
_day11 = String(_day11).padStart(2, 0);
|
524
|
+
_month11 = String(_month11).padStart(2, 0);
|
525
|
+
return '' + _day11 + dateDelimater + _month11 + dateDelimater + _year11 + ' ' + time;
|
526
|
+
} else if (_datePart2.length > 8) {
|
527
|
+
return '' + String(currentDate).padStart(2, 0) + dateDelimater + String(currentMonth).padStart(2, 0) + dateDelimater + currentYear + ' ' + currentTime; // eslint-disable-line max-len
|
598
528
|
}
|
599
|
-
return '' + currentDate + delimiter + currentMonth + delimiter + currentYear + ' ' + time;
|
600
529
|
}
|
601
530
|
}
|