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