@seafile/seafile-calendar 0.0.2 → 0.0.3-Apoi0.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.
Files changed (46) hide show
  1. package/README.md +15 -0
  2. package/assets/index.css +44 -43
  3. package/dist/rc-calendar.css +44 -43
  4. package/dist/rc-calendar.css.map +1 -1
  5. package/dist/rc-calendar.js +1170 -5266
  6. package/dist/rc-calendar.js.map +1 -1
  7. package/dist/rc-calendar.min.css +44 -43
  8. package/dist/rc-calendar.min.css.map +1 -1
  9. package/dist/rc-calendar.min.js +1 -1
  10. package/es/Calendar.js +32 -10
  11. package/es/FullCalendar.js +2 -2
  12. package/es/MonthCalendar.js +8 -8
  13. package/es/RangeCalendar.js +4 -4
  14. package/es/calendar/CalendarHeader.js +2 -2
  15. package/es/calendar/CalendarRightPanel.js +47 -27
  16. package/es/date/DateConstants.js +16 -1
  17. package/es/date/DateInput.js +19 -42
  18. package/es/date/DateTBody.js +19 -11
  19. package/es/date/DateTHead.js +15 -8
  20. package/es/decade/DecadePanel.js +3 -3
  21. package/es/full-calendar/CalendarHeader.js +3 -3
  22. package/es/mixin/CalendarMixin.js +2 -2
  23. package/es/month/MonthTable.js +5 -5
  24. package/es/util/dayjs.js +17 -0
  25. package/es/util/index.js +451 -8
  26. package/es/year/YearPanel.js +5 -13
  27. package/index.d.ts +12 -11
  28. package/lib/Calendar.js +43 -11
  29. package/lib/FullCalendar.js +3 -3
  30. package/lib/MonthCalendar.js +9 -9
  31. package/lib/RangeCalendar.js +7 -7
  32. package/lib/calendar/CalendarHeader.js +2 -2
  33. package/lib/calendar/CalendarRightPanel.js +50 -29
  34. package/lib/date/DateConstants.js +16 -1
  35. package/lib/date/DateInput.js +20 -42
  36. package/lib/date/DateTBody.js +19 -11
  37. package/lib/date/DateTHead.js +15 -11
  38. package/lib/decade/DecadePanel.js +3 -3
  39. package/lib/full-calendar/CalendarHeader.js +3 -3
  40. package/lib/mixin/CalendarMixin.js +3 -3
  41. package/lib/month/MonthTable.js +5 -5
  42. package/lib/util/dayjs.js +46 -0
  43. package/lib/util/index.js +465 -9
  44. package/lib/year/YearPanel.js +5 -13
  45. package/package.json +7 -3
  46. package/HISTORY.md +0 -263
package/lib/util/index.js CHANGED
@@ -1,6 +1,7 @@
1
1
  'use strict';
2
2
 
3
3
  exports.__esModule = true;
4
+ exports.isLeapYear = exports.DATE_FORMATS = exports.getCurrentTime = exports.getCurrentYear = exports.getCurrentMonth = exports.getCurrentDate = undefined;
4
5
 
5
6
  var _extends2 = require('babel-runtime/helpers/extends');
6
7
 
@@ -16,13 +17,51 @@ exports.isTimeValidByConfig = isTimeValidByConfig;
16
17
  exports.isTimeValid = isTimeValid;
17
18
  exports.isAllowedDate = isAllowedDate;
18
19
  exports.formatDate = formatDate;
20
+ exports.validateCalendarDay = validateCalendarDay;
21
+ exports.tokenizeFormattedDate = tokenizeFormattedDate;
22
+ exports.hasSpecialChar = hasSpecialChar;
23
+ exports.validateTime = validateTime;
24
+ exports.delimate = delimate;
25
+ exports.validateCalendarYear = validateCalendarYear;
26
+ exports.validateAndNormalizeDate = validateAndNormalizeDate;
27
+ exports.getDatePart = getDatePart;
28
+ exports.initializeStr = initializeStr;
19
29
 
20
- var _moment = require('moment');
30
+ var _dayjs = require('dayjs');
21
31
 
22
- var _moment2 = _interopRequireDefault(_moment);
32
+ var _dayjs2 = _interopRequireDefault(_dayjs);
33
+
34
+ var _utc = require('dayjs/plugin/utc');
35
+
36
+ var _utc2 = _interopRequireDefault(_utc);
23
37
 
24
38
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
25
39
 
40
+ _dayjs2['default'].extend(_utc2['default']);
41
+ var getCurrentDate = exports.getCurrentDate = function getCurrentDate() {
42
+ return (0, _dayjs2['default'])().date();
43
+ };
44
+ var getCurrentMonth = exports.getCurrentMonth = function getCurrentMonth() {
45
+ return (0, _dayjs2['default'])().month() + 1;
46
+ };
47
+ var getCurrentYear = exports.getCurrentYear = function getCurrentYear() {
48
+ return (0, _dayjs2['default'])().year();
49
+ };
50
+ var getCurrentTime = exports.getCurrentTime = function getCurrentTime() {
51
+ return (0, _dayjs2['default'])().format('HH:mm');
52
+ };
53
+
54
+ var DATE_FORMATS = exports.DATE_FORMATS = {
55
+ ISO: 'YYYY-MM-DD',
56
+ ISOAndTime: 'YYYY-MM-DD HH:mm',
57
+ US: 'M/D/YYYY',
58
+ USAndTime: 'M/D/YYYY HH:mm',
59
+ European: 'DD/MM/YYYY',
60
+ EuropeanAndTime: 'DD/MM/YYYY HH:mm',
61
+ Germany_Russia_etc: 'DD.MM.YYYY',
62
+ Germany_Russia_etcAndTime: 'DD.MM.YYYY HH:mm'
63
+ };
64
+
26
65
  var defaultDisabledTime = {
27
66
  disabledHours: function disabledHours() {
28
67
  return [];
@@ -36,8 +75,8 @@ var defaultDisabledTime = {
36
75
  };
37
76
 
38
77
  function getTodayTime(value) {
39
- var today = (0, _moment2['default'])();
40
- today.locale(value.locale()).utcOffset(value.utcOffset());
78
+ var today = (0, _dayjs2['default'])();
79
+ today = today.locale(value.locale()).utcOffset(value.utcOffset());
41
80
  return today;
42
81
  }
43
82
 
@@ -57,11 +96,11 @@ function getMonthName(month) {
57
96
  }
58
97
 
59
98
  function syncTime(from, to) {
60
- if (!_moment2['default'].isMoment(from) || !_moment2['default'].isMoment(to)) return;
61
- to.hour(from.hour());
62
- to.minute(from.minute());
63
- to.second(from.second());
64
- to.millisecond(from.millisecond());
99
+ if (!_dayjs2['default'].isDayjs(from) || !_dayjs2['default'].isDayjs(to)) return;
100
+ to = to.hour(from.hour());
101
+ to = to.minute(from.minute());
102
+ to = to.second(from.second());
103
+ to = to.millisecond(from.millisecond());
65
104
  }
66
105
 
67
106
  function getTimeConfig(value, disabledTime) {
@@ -121,4 +160,421 @@ function formatDate(value, format) {
121
160
  }
122
161
 
123
162
  return value.format(format);
163
+ }
164
+
165
+ var isLeapYear = exports.isLeapYear = function isLeapYear(year) {
166
+ return year % 4 === 0 && year % 100 !== 0 || year % 400 === 0;
167
+ };
168
+
169
+ function validateCalendarDay(dayStr) {
170
+ if (!/^\d+$/.test(dayStr)) return false;
171
+ var day = Number(dayStr);
172
+ var MONTHS_WITH_31_DAYS = [1, 3, 5, 7, 8, 10, 12];
173
+ var MONTHS_WITH_30_DAYS = [4, 6, 9, 11];
174
+ if (MONTHS_WITH_31_DAYS.includes(getCurrentMonth())) {
175
+ return day >= 1 && day <= 31;
176
+ }
177
+ if (MONTHS_WITH_30_DAYS.includes(getCurrentMonth())) {
178
+ return day >= 1 && day <= 30;
179
+ }
180
+ if (getCurrentMonth() === 2) {
181
+ var year = getCurrentYear();
182
+ if (isLeapYear(year)) {
183
+ return day >= 1 && day <= 29;
184
+ }
185
+ return day >= 1 && day <= 28;
186
+ }
187
+ }
188
+
189
+ function tokenizeFormattedDate(formatStr, format) {
190
+ var str = formatStr || '';
191
+ var cleanStr = void 0;
192
+ switch (format) {
193
+ case DATE_FORMATS.ISO:
194
+ case DATE_FORMATS.ISOAndTime:
195
+ cleanStr = str.replace(/[^0-9]+/g, '-');
196
+ return cleanStr.split('-').filter(Boolean).map(String);
197
+ case DATE_FORMATS.US:
198
+ case DATE_FORMATS.USAndTime:
199
+ case DATE_FORMATS.European:
200
+ case DATE_FORMATS.EuropeanAndTime:
201
+ cleanStr = str.replace(/[^0-9]+/g, '/');
202
+ return cleanStr.split('/').filter(Boolean).map(String);
203
+ case DATE_FORMATS.Germany_Russia_etc:
204
+ case DATE_FORMATS.Germany_Russia_etcAndTime:
205
+ cleanStr = str.replace(/[^0-9]+/g, '.');
206
+ return cleanStr.split('.').filter(Boolean).map(String);
207
+ default:
208
+ return [];
209
+ }
210
+ }
211
+
212
+ function hasSpecialChar(str) {
213
+ var matches = str.match(/[^0-9]/g);
214
+ return matches ? matches.length : 0;
215
+ }
216
+
217
+ function validateTime(inputTime) {
218
+ if (!inputTime || typeof inputTime !== 'string') {
219
+ return getCurrentTime();
220
+ }
221
+ var trimmed = inputTime.trim();
222
+ var timeRegex = /^(\d{2}):(\d{2})$/;
223
+ var match = trimmed.match(timeRegex);
224
+ if (!match) {
225
+ return getCurrentTime();
226
+ }
227
+ var hour = Number(match[1]);
228
+ var minute = Number(match[2]);
229
+ if (hour > 23 || minute > 59) {
230
+ return getCurrentTime();
231
+ }
232
+ return match[1] + ':' + match[2];
233
+ }
234
+
235
+ function delimate(format) {
236
+ var delimiter = void 0;
237
+ if (format === DATE_FORMATS.Germany_Russia_etc || format === DATE_FORMATS.Germany_Russia_etcAndTime) {
238
+ delimiter = '.';
239
+ } else if (format === DATE_FORMATS.ISO || format === DATE_FORMATS.ISOAndTime) {
240
+ delimiter = '-';
241
+ } else {
242
+ delimiter = '/';
243
+ }
244
+ return delimiter;
245
+ }
246
+
247
+ function validateCalendarYear(yearStr) {
248
+ var year = yearStr;
249
+ if (!year || isNaN(year)) return getCurrentYear();
250
+ if (year.length === 2) {
251
+ if (Number(year) >= 0 && Number(year) < 69) {
252
+ return year ? '20' + year : getCurrentYear();
253
+ } else if (Number(year) >= 69 && Number(year) < 100) {
254
+ return year ? '19' + year : getCurrentYear();
255
+ }
256
+ }
257
+ if (year.length === 4) {
258
+ return year;
259
+ }
260
+ return year ? year.padStart(4, '0') : getCurrentYear();
261
+ }
262
+
263
+ function validateAndNormalizeDate(dayStr, monthStr, yearStr) {
264
+ var day = Number(dayStr);
265
+ var month = Number(monthStr);
266
+ var year = yearStr;
267
+ var isInThirtyOneDaysMonths = [1, 3, 5, 7, 8, 10, 12].includes(month);
268
+ var isInThirtyDaysMonths = [4, 6, 9, 11].includes(month);
269
+ var isValidDayThirtyOne = day < 1 || day > 31;
270
+ var isValidDayThirty = day < 1 || day > 30;
271
+ var isValidDayTwentyNight = day < 1 || day > 29;
272
+ var isValidDayTwentyEight = day < 1 || day > 28;
273
+
274
+ if (month > 12 || month < 0 || !month) {
275
+ day = getCurrentDate();
276
+ month = getCurrentMonth();
277
+ year = getCurrentYear();
278
+ }
279
+
280
+ if (isInThirtyOneDaysMonths && isValidDayThirtyOne || isInThirtyDaysMonths && isValidDayThirty) {
281
+ day = getCurrentDate();
282
+ month = getCurrentMonth();
283
+ year = getCurrentYear();
284
+ }
285
+
286
+ if (month === 2) {
287
+ if (isLeapYear(year) && isValidDayTwentyNight) {
288
+ day = getCurrentDate();
289
+ month = getCurrentMonth();
290
+ year = getCurrentYear();
291
+ } else if (isValidDayTwentyEight) {
292
+ day = getCurrentDate();
293
+ month = getCurrentMonth();
294
+ year = getCurrentYear();
295
+ }
296
+ }
297
+ return { day: day, month: month, year: year };
298
+ }
299
+
300
+ function getDatePart(str) {
301
+ if (typeof str !== 'string') return '';
302
+ var parts = str.trim().split(/\s+/);
303
+ return parts[0];
304
+ }
305
+
306
+ function initializeStr(str, format) {
307
+ var inputStr = str;
308
+ var inputStrLength = inputStr.length;
309
+ var time = getCurrentTime();
310
+ var hasSpecial = hasSpecialChar(inputStr);
311
+ var formattedArray = tokenizeFormattedDate(inputStr, format);
312
+ var dateDelimater = delimate(format);
313
+ if (format === DATE_FORMATS.ISO) {
314
+ var numStr = inputStr.replace(/[^0-9]/g, '');
315
+ if (numStr.length === 7 || numStr.length === 8) {
316
+ var yearStr = numStr.slice(0, 4);
317
+ var monthStr = numStr.slice(4, 6) || '01';
318
+ var dateStr = numStr.slice(6, numStr.length) || '01';
319
+ var validateYear = validateCalendarYear(yearStr);
320
+
321
+ var _validateAndNormalize = validateAndNormalizeDate(dateStr, monthStr, validateYear),
322
+ day = _validateAndNormalize.day,
323
+ month = _validateAndNormalize.month;
324
+
325
+ var _validateAndNormalize2 = validateAndNormalizeDate(dateStr, monthStr, validateYear),
326
+ year = _validateAndNormalize2.year;
327
+
328
+ day = String(day).padStart(2, 0);
329
+ month = String(month).padStart(2, 0);
330
+ return '' + year + dateDelimater + month + dateDelimater + day;
331
+ }
332
+ if (hasSpecial) {
333
+ var _validateYear = validateCalendarYear(formattedArray[0]);
334
+
335
+ var _validateAndNormalize3 = validateAndNormalizeDate(formattedArray[2] || '01', formattedArray[1] || '01', _validateYear),
336
+ _day = _validateAndNormalize3.day,
337
+ _month = _validateAndNormalize3.month; // eslint-disable-line max-len
338
+
339
+
340
+ var _validateAndNormalize4 = validateAndNormalizeDate(formattedArray[2] || '01', formattedArray[1] || '01', _validateYear),
341
+ _year = _validateAndNormalize4.year; // eslint-disable-line max-len
342
+
343
+
344
+ _day = String(_day).padStart(2, 0);
345
+ _month = String(_month).padStart(2, 0);
346
+ return '' + _year + dateDelimater + _month + dateDelimater + _day;
347
+ } else if (inputStrLength >= 1 && inputStrLength <= 8) {
348
+ var _yearStr = inputStr.slice(0, 4);
349
+ var _monthStr = inputStr.slice(4, 6) || '01';
350
+ var _dateStr = inputStr.slice(6, 8) || '01';
351
+ var _validateYear2 = validateCalendarYear(_yearStr);
352
+
353
+ var _validateAndNormalize5 = validateAndNormalizeDate(_dateStr, _monthStr, _validateYear2),
354
+ _day2 = _validateAndNormalize5.day,
355
+ _month2 = _validateAndNormalize5.month;
356
+
357
+ var _validateAndNormalize6 = validateAndNormalizeDate(_dateStr, _monthStr, _validateYear2),
358
+ _year2 = _validateAndNormalize6.year;
359
+
360
+ _day2 = String(_day2).padStart(2, 0);
361
+ _month2 = String(_month2).padStart(2, 0);
362
+ return '' + _year2 + dateDelimater + _month2 + dateDelimater + _day2;
363
+ } else if (inputStrLength > 8) {
364
+ return '' + getCurrentYear() + dateDelimater + String(getCurrentMonth()).padStart(2, 0) + dateDelimater + String(getCurrentDate()).padStart(2, 0); // eslint-disable-line max-len
365
+ }
366
+ } else if (format === DATE_FORMATS.ISOAndTime) {
367
+ var datePart = getDatePart(inputStr);
368
+ var formattedDateArray = tokenizeFormattedDate(datePart, format);
369
+ var isDateSpecial = hasSpecialChar(datePart);
370
+ var _numStr = datePart.replace(/[^0-9]/g, '');
371
+ if (_numStr.length === 7 || _numStr.length === 8) {
372
+ var _yearStr2 = _numStr.slice(0, 4);
373
+ var _monthStr2 = _numStr.slice(4, 6) || '01';
374
+ var _dateStr2 = _numStr.slice(6, _numStr.length) || '01';
375
+ if (formattedArray.length === 3) {
376
+ time = validateTime(formattedArray[1] + ':' + formattedArray[2]);
377
+ }
378
+ if (formattedArray.length === 4) {
379
+ time = validateTime(formattedArray[2] + ':' + formattedArray[3]);
380
+ }
381
+ if (formattedArray.length === 5) {
382
+ time = validateTime(formattedArray[3] + ':' + formattedArray[4]);
383
+ }
384
+ var _validateYear3 = validateCalendarYear(_yearStr2);
385
+
386
+ var _validateAndNormalize7 = validateAndNormalizeDate(_dateStr2, _monthStr2, _validateYear3),
387
+ _day3 = _validateAndNormalize7.day,
388
+ _month3 = _validateAndNormalize7.month;
389
+
390
+ var _validateAndNormalize8 = validateAndNormalizeDate(_dateStr2, _monthStr2, _validateYear3),
391
+ _year3 = _validateAndNormalize8.year;
392
+
393
+ _day3 = String(_day3).padStart(2, 0);
394
+ _month3 = String(_month3).padStart(2, 0);
395
+ return '' + _year3 + dateDelimater + _month3 + dateDelimater + _day3 + ' ' + time;
396
+ }
397
+ if (isDateSpecial) {
398
+ if (formattedDateArray.length < 3) {
399
+ formattedArray.splice(2, 0, '01');
400
+ }
401
+ var _validateYear4 = validateCalendarYear(formattedArray[0]);
402
+
403
+ var _validateAndNormalize9 = validateAndNormalizeDate(formattedArray[2] || '01', formattedArray[1] || '01', _validateYear4),
404
+ _day4 = _validateAndNormalize9.day,
405
+ _month4 = _validateAndNormalize9.month; // eslint-disable-line max-len
406
+
407
+
408
+ var _validateAndNormalize10 = validateAndNormalizeDate(formattedArray[2] || '01', formattedArray[1] || '01', _validateYear4),
409
+ _year4 = _validateAndNormalize10.year; // eslint-disable-line max-len
410
+
411
+
412
+ time = validateTime(formattedArray[3] + ':' + formattedArray[4]);
413
+ _day4 = String(_day4).padStart(2, 0);
414
+ _month4 = String(_month4).padStart(2, 0);
415
+ return '' + _year4 + dateDelimater + _month4 + dateDelimater + _day4 + ' ' + time;
416
+ } else if (datePart.length >= 1 && datePart.length <= 8) {
417
+ var _yearStr3 = datePart.slice(0, 4);
418
+ var _monthStr3 = datePart.slice(4, 6) || '01';
419
+ var _dateStr3 = datePart.slice(6, 8) || '01';
420
+ var timeParts = tokenizeFormattedDate(inputStr, format);
421
+ time = validateTime(timeParts[1] + ':' + timeParts[2]);
422
+ var _validateYear5 = validateCalendarYear(_yearStr3);
423
+
424
+ var _validateAndNormalize11 = validateAndNormalizeDate(_dateStr3, _monthStr3, _validateYear5),
425
+ _day5 = _validateAndNormalize11.day,
426
+ _month5 = _validateAndNormalize11.month;
427
+
428
+ var _validateAndNormalize12 = validateAndNormalizeDate(_dateStr3, _monthStr3, _validateYear5),
429
+ _year5 = _validateAndNormalize12.year;
430
+
431
+ _day5 = String(_day5).padStart(2, 0);
432
+ _month5 = String(_month5).padStart(2, 0);
433
+ return '' + _year5 + dateDelimater + _month5 + dateDelimater + _day5 + ' ' + time;
434
+ } else if (datePart.length > 8) {
435
+ return '' + getCurrentYear() + dateDelimater + String(getCurrentMonth()).padStart(2, 0) + dateDelimater + String(getCurrentDate()).padStart(2, 0) + ' ' + getCurrentTime(); // eslint-disable-line max-len
436
+ }
437
+ } else if (format === DATE_FORMATS.US) {
438
+ if (hasSpecial) {
439
+ var _validateYear6 = validateCalendarYear(formattedArray[2]);
440
+
441
+ var _validateAndNormalize13 = validateAndNormalizeDate(formattedArray[1] || '1', formattedArray[0], _validateYear6),
442
+ _day6 = _validateAndNormalize13.day,
443
+ _month6 = _validateAndNormalize13.month,
444
+ _year6 = _validateAndNormalize13.year; // eslint-disable-line max-len
445
+
446
+
447
+ return '' + _month6 + dateDelimater + _day6 + dateDelimater + _year6;
448
+ } else if (inputStrLength >= 1 && inputStrLength <= 8) {
449
+ var _monthStr4 = inputStr.slice(0, 2);
450
+ var _dateStr4 = inputStr.slice(2, 4) || '1';
451
+ var _yearStr4 = inputStr.slice(4, inputStr.length);
452
+ var _validateYear7 = validateCalendarYear(_yearStr4);
453
+
454
+ var _validateAndNormalize14 = validateAndNormalizeDate(_dateStr4, _monthStr4, _validateYear7),
455
+ _day7 = _validateAndNormalize14.day,
456
+ _month7 = _validateAndNormalize14.month,
457
+ _year7 = _validateAndNormalize14.year;
458
+
459
+ return '' + _month7 + dateDelimater + _day7 + dateDelimater + _year7; // eslint-disable-line max-len
460
+ } else if (inputStrLength > 8) {
461
+ return '' + String(getCurrentMonth()).padStart(2, 0) + dateDelimater + String(getCurrentDate()).padStart(2, 0) + dateDelimater + getCurrentYear(); // eslint-disable-line max-len
462
+ }
463
+ } else if (format === DATE_FORMATS.USAndTime) {
464
+ var _datePart = getDatePart(inputStr);
465
+ var _formattedDateArray = tokenizeFormattedDate(_datePart, format);
466
+ var _isDateSpecial = hasSpecialChar(_datePart);
467
+ if (_isDateSpecial) {
468
+ if (_formattedDateArray.length < 3) {
469
+ formattedArray.splice(2, 0, String(getCurrentYear()));
470
+ }
471
+ var _validateYear8 = validateCalendarYear(formattedArray[2]);
472
+
473
+ var _validateAndNormalize15 = validateAndNormalizeDate(formattedArray[1] || '1', formattedArray[0], _validateYear8),
474
+ _day8 = _validateAndNormalize15.day,
475
+ _month8 = _validateAndNormalize15.month,
476
+ _year8 = _validateAndNormalize15.year; // eslint-disable-line max-len
477
+
478
+
479
+ time = validateTime(formattedArray[3] + ':' + formattedArray[4]);
480
+ return '' + _month8 + dateDelimater + _day8 + dateDelimater + _year8 + ' ' + time;
481
+ } else if (_datePart.length >= 1 && _datePart.length <= 8) {
482
+ var _monthStr5 = _datePart.slice(0, 2);
483
+ var _dateStr5 = _datePart.slice(2, 4) || '1';
484
+ var _yearStr5 = _datePart.slice(4, _datePart.length);
485
+ var _validateYear9 = validateCalendarYear(_yearStr5); // eslint-disable-line max-len
486
+
487
+ var _validateAndNormalize16 = validateAndNormalizeDate(_dateStr5, _monthStr5, _validateYear9),
488
+ _day9 = _validateAndNormalize16.day,
489
+ _month9 = _validateAndNormalize16.month,
490
+ _year9 = _validateAndNormalize16.year;
491
+
492
+ var _timeParts = tokenizeFormattedDate(inputStr, format);
493
+ time = validateTime(_timeParts[1] + ':' + _timeParts[2]) || getCurrentTime();
494
+ return '' + _month9 + dateDelimater + _day9 + dateDelimater + _year9 + ' ' + time;
495
+ } else if (_datePart.length > 8) {
496
+ return '' + String(getCurrentMonth()).padStart(2, 0) + dateDelimater + String(getCurrentDate()).padStart(2, 0) + dateDelimater + getCurrentYear() + ' ' + getCurrentTime(); // eslint-disable-line max-len
497
+ }
498
+ } else if (format === DATE_FORMATS.European || format === DATE_FORMATS.Germany_Russia_etc) {
499
+ if (hasSpecial) {
500
+ var _validateYear10 = validateCalendarYear(formattedArray[2]);
501
+
502
+ var _validateAndNormalize17 = validateAndNormalizeDate(formattedArray[0], formattedArray[1], _validateYear10),
503
+ _day10 = _validateAndNormalize17.day,
504
+ _month10 = _validateAndNormalize17.month; // eslint-disable-line max-len
505
+
506
+
507
+ var _validateAndNormalize18 = validateAndNormalizeDate(formattedArray[0], formattedArray[1], _validateYear10),
508
+ _year10 = _validateAndNormalize18.year; // eslint-disable-line max-len
509
+
510
+
511
+ _day10 = String(_day10).padStart(2, 0);
512
+ _month10 = String(_month10).padStart(2, 0);
513
+ return '' + _day10 + dateDelimater + _month10 + dateDelimater + _year10;
514
+ } else if (inputStrLength >= 1 && inputStrLength <= 8) {
515
+ var _dateStr6 = inputStr.slice(0, 2);
516
+ var _monthStr6 = inputStr.slice(2, 4) || getCurrentMonth();
517
+ var _yearStr6 = inputStr.slice(4, inputStr.length);
518
+ var _validateYear11 = validateCalendarYear(_yearStr6);
519
+
520
+ var _validateAndNormalize19 = validateAndNormalizeDate(_dateStr6, _monthStr6, _validateYear11),
521
+ _year11 = _validateAndNormalize19.year; // eslint-disable-line max-len
522
+
523
+
524
+ var _validateAndNormalize20 = validateAndNormalizeDate(_dateStr6, _monthStr6, _validateYear11),
525
+ _day11 = _validateAndNormalize20.day,
526
+ _month11 = _validateAndNormalize20.month; // eslint-disable-line max-len
527
+
528
+
529
+ _day11 = String(_day11).padStart(2, 0);
530
+ _month11 = String(_month11).padStart(2, 0);
531
+ return '' + _day11 + dateDelimater + _month11 + dateDelimater + _year11;
532
+ } else if (inputStrLength > 8) {
533
+ return '' + String(getCurrentDate()).padStart(2, 0) + dateDelimater + String(getCurrentMonth()).padStart(2, 0) + dateDelimater + getCurrentYear(); // eslint-disable-line max-len
534
+ }
535
+ } else if (format === DATE_FORMATS.EuropeanAndTime || format === DATE_FORMATS.Germany_Russia_etcAndTime) {
536
+ var _datePart2 = getDatePart(inputStr);
537
+ var _formattedDateArray2 = tokenizeFormattedDate(_datePart2, format);
538
+ var _isDateSpecial2 = hasSpecialChar(_datePart2);
539
+ if (_isDateSpecial2) {
540
+ if (_formattedDateArray2.length < 3) {
541
+ formattedArray.splice(2, 0, String(getCurrentYear()));
542
+ }
543
+ var _validateYear12 = validateCalendarYear(formattedArray[2]);
544
+
545
+ var _validateAndNormalize21 = validateAndNormalizeDate(formattedArray[0], formattedArray[1], _validateYear12),
546
+ _day12 = _validateAndNormalize21.day,
547
+ _month12 = _validateAndNormalize21.month; // eslint-disable-line max-len
548
+
549
+
550
+ var _validateAndNormalize22 = validateAndNormalizeDate(formattedArray[0], formattedArray[1], _validateYear12),
551
+ _year12 = _validateAndNormalize22.year; // eslint-disable-line max-len
552
+
553
+
554
+ time = validateTime(formattedArray[3] + ':' + formattedArray[4]);
555
+ _day12 = String(_day12).padStart(2, 0);
556
+ _month12 = String(_month12).padStart(2, 0);
557
+ return '' + _day12 + dateDelimater + _month12 + dateDelimater + _year12 + ' ' + time;
558
+ } else if (_datePart2.length >= 1 && _datePart2.length <= 8) {
559
+ var _dateStr7 = _datePart2.slice(0, 2);
560
+ var _monthStr7 = _datePart2.slice(2, 4) || getCurrentMonth();
561
+ var _yearStr7 = _datePart2.slice(4, _datePart2.length);
562
+ var _timeParts2 = tokenizeFormattedDate(inputStr, format);
563
+ time = validateTime(_timeParts2[1] + ':' + _timeParts2[2]);
564
+ var _validateYear13 = validateCalendarYear(_yearStr7);
565
+
566
+ var _validateAndNormalize23 = validateAndNormalizeDate(_dateStr7, _monthStr7, _validateYear13),
567
+ _day13 = _validateAndNormalize23.day,
568
+ _month13 = _validateAndNormalize23.month;
569
+
570
+ var _validateAndNormalize24 = validateAndNormalizeDate(_dateStr7, _monthStr7, _validateYear13),
571
+ _year13 = _validateAndNormalize24.year;
572
+
573
+ _day13 = String(_day13).padStart(2, 0);
574
+ _month13 = String(_month13).padStart(2, 0);
575
+ return '' + _day13 + dateDelimater + _month13 + dateDelimater + _year13 + ' ' + time;
576
+ } else if (_datePart2.length > 8) {
577
+ return '' + String(getCurrentDate()).padStart(2, 0) + dateDelimater + String(getCurrentMonth()).padStart(2, 0) + dateDelimater + getCurrentYear() + ' ' + getCurrentTime(); // eslint-disable-line max-len
578
+ }
579
+ }
124
580
  }
@@ -33,7 +33,7 @@ var COL = 3;
33
33
 
34
34
  function goYear(direction) {
35
35
  var value = this.state.value.clone();
36
- value.add(direction, 'year');
36
+ value = value.add(direction, 'year');
37
37
  this.setState({
38
38
  value: value
39
39
  });
@@ -41,8 +41,8 @@ function goYear(direction) {
41
41
 
42
42
  function chooseYear(year) {
43
43
  var value = this.state.value.clone();
44
- value.year(year);
45
- value.month(this.state.value.month());
44
+ value = value.year(year);
45
+ value = value.month(this.state.value.month());
46
46
  this.setState({
47
47
  value: value
48
48
  });
@@ -107,22 +107,14 @@ var YearPanel = function (_React$Component) {
107
107
  var tds = row.map(function (yearData) {
108
108
  var _classNameMap;
109
109
 
110
- var classNameMap = (_classNameMap = {}, _classNameMap[prefixCls + '-cell'] = 1, _classNameMap[prefixCls + '-selected-cell'] = yearData.year === currentYear, _classNameMap[prefixCls + '-last-decade-cell'] = yearData.year < startYear, _classNameMap[prefixCls + '-next-decade-cell'] = yearData.year > endYear, _classNameMap);
111
- var clickHandler = void 0;
112
- if (yearData.year < startYear) {
113
- clickHandler = _this2.previousDecade;
114
- } else if (yearData.year > endYear) {
115
- clickHandler = _this2.nextDecade;
116
- } else {
117
- clickHandler = chooseYear.bind(_this2, yearData.year);
118
- }
110
+ var classNameMap = (_classNameMap = {}, _classNameMap[prefixCls + '-cell'] = 1, _classNameMap[prefixCls + '-selected-cell'] = yearData.year === currentYear, _classNameMap);
119
111
  return _react2['default'].createElement(
120
112
  'td',
121
113
  {
122
114
  role: 'gridcell',
123
115
  title: yearData.title,
124
116
  key: yearData.content,
125
- onClick: clickHandler,
117
+ onClick: chooseYear.bind(_this2, yearData.year),
126
118
  className: (0, _classnames2['default'])(classNameMap)
127
119
  },
128
120
  _react2['default'].createElement(
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@seafile/seafile-calendar",
3
- "version": "0.0.2",
3
+ "version": "0.0.3Apoi0.1",
4
4
  "description": "React Calendar",
5
5
  "keywords": [
6
6
  "react",
@@ -68,6 +68,7 @@
68
68
  "devDependencies": {
69
69
  "@types/react": "^16.3.13",
70
70
  "async": "~3.1.0",
71
+ "chokidar": "^4.0.3",
71
72
  "dtslint": "^0.9.0",
72
73
  "enzyme": "^3.3.0",
73
74
  "enzyme-adapter-react-16": "^1.1.1",
@@ -91,11 +92,14 @@
91
92
  "dependencies": {
92
93
  "babel-runtime": "6.x",
93
94
  "classnames": "2.x",
94
- "moment": "2.x",
95
+ "dayjs": "1.10.7",
95
96
  "prop-types": "^15.5.8",
96
97
  "rc-trigger": "^2.2.0",
97
98
  "rc-util": "^4.1.1",
98
99
  "react-lifecycles-compat": "^3.0.4"
99
100
  },
100
- "types": "index.d.ts"
101
+ "types": "index.d.ts",
102
+ "overrides": {
103
+ "graceful-fs": "^4.2.11"
104
+ }
101
105
  }