@seafile/seafile-calendar 0.0.30 → 0.0.31-APloi0.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.
Files changed (163) hide show
  1. package/assets/index.css +1177 -0
  2. package/dist/rc-calendar.js +72 -50
  3. package/dist/rc-calendar.js.map +1 -1
  4. package/dist/rc-calendar.min.js +1 -1
  5. package/es/Calendar.js +451 -0
  6. package/es/FullCalendar.js +182 -0
  7. package/es/MonthCalendar.js +135 -0
  8. package/es/Picker.js +246 -0
  9. package/es/RangeCalendar.js +876 -0
  10. package/es/calendar/CalendarFooter.js +93 -0
  11. package/es/calendar/CalendarHeader.js +257 -0
  12. package/es/calendar/CalendarRightPanel.js +126 -0
  13. package/es/calendar/OkButton.js +22 -0
  14. package/es/calendar/TimePickerButton.js +28 -0
  15. package/es/calendar/TodayButton.js +28 -0
  16. package/es/date/DateConstants.js +19 -0
  17. package/es/date/DateInput.js +215 -0
  18. package/es/date/DateTBody.js +287 -0
  19. package/es/date/DateTHead.js +86 -0
  20. package/es/date/DateTable.js +32 -0
  21. package/es/decade/DecadePanel.js +181 -0
  22. package/es/full-calendar/CalendarHeader.js +180 -0
  23. package/es/index.js +3 -0
  24. package/es/locale/ar_EG.js +27 -0
  25. package/es/locale/bg_BG.js +27 -0
  26. package/es/locale/ca_ES.js +27 -0
  27. package/es/locale/cs_CZ.js +27 -0
  28. package/es/locale/da_DK.js +27 -0
  29. package/es/locale/de_DE.js +27 -0
  30. package/es/locale/el_GR.js +27 -0
  31. package/es/locale/en_GB.js +27 -0
  32. package/es/locale/en_US.js +28 -0
  33. package/es/locale/es_ES.js +27 -0
  34. package/es/locale/et_EE.js +27 -0
  35. package/es/locale/fa_IR.js +27 -0
  36. package/es/locale/fi_FI.js +27 -0
  37. package/es/locale/fr_BE.js +27 -0
  38. package/es/locale/fr_FR.js +27 -0
  39. package/es/locale/he_IL.js +28 -0
  40. package/es/locale/hi_IN.js +28 -0
  41. package/es/locale/hr_HR.js +28 -0
  42. package/es/locale/hu_HU.js +27 -0
  43. package/es/locale/id_ID.js +28 -0
  44. package/es/locale/is_IS.js +27 -0
  45. package/es/locale/it_IT.js +27 -0
  46. package/es/locale/ja_JP.js +26 -0
  47. package/es/locale/kn_IN.js +28 -0
  48. package/es/locale/ko_KR.js +27 -0
  49. package/es/locale/ku_IQ.js +27 -0
  50. package/es/locale/lv_LV.js +27 -0
  51. package/es/locale/mm_MM.js +28 -0
  52. package/es/locale/mn_MN.js +28 -0
  53. package/es/locale/ms_MY.js +27 -0
  54. package/es/locale/nb_NO.js +27 -0
  55. package/es/locale/nl_BE.js +27 -0
  56. package/es/locale/nl_NL.js +27 -0
  57. package/es/locale/pl_PL.js +27 -0
  58. package/es/locale/pt_BR.js +27 -0
  59. package/es/locale/pt_PT.js +27 -0
  60. package/es/locale/ro_RO.js +28 -0
  61. package/es/locale/ru_RU.js +27 -0
  62. package/es/locale/sk_SK.js +27 -0
  63. package/es/locale/sl_SI.js +27 -0
  64. package/es/locale/sr_RS.js +27 -0
  65. package/es/locale/sv_SE.js +27 -0
  66. package/es/locale/ta_IN.js +28 -0
  67. package/es/locale/th_TH.js +27 -0
  68. package/es/locale/tr_TR.js +27 -0
  69. package/es/locale/ug_CN.js +26 -0
  70. package/es/locale/uk_UA.js +27 -0
  71. package/es/locale/vi_VN.js +28 -0
  72. package/es/locale/zh_CN.js +27 -0
  73. package/es/locale/zh_TW.js +26 -0
  74. package/es/mixin/CalendarMixin.js +123 -0
  75. package/es/mixin/CommonMixin.js +85 -0
  76. package/es/month/MonthPanel.js +154 -0
  77. package/es/month/MonthTable.js +156 -0
  78. package/es/picker/placements.js +35 -0
  79. package/es/range-calendar/CalendarPart.js +151 -0
  80. package/es/util/dayjs.js +17 -0
  81. package/es/util/index.js +545 -0
  82. package/es/util/toTime.js +21 -0
  83. package/es/year/YearPanel.js +194 -0
  84. package/lib/Calendar.js +514 -0
  85. package/lib/FullCalendar.js +221 -0
  86. package/lib/MonthCalendar.js +172 -0
  87. package/lib/Picker.js +283 -0
  88. package/lib/RangeCalendar.js +925 -0
  89. package/lib/calendar/CalendarFooter.js +134 -0
  90. package/lib/calendar/CalendarHeader.js +290 -0
  91. package/lib/calendar/CalendarRightPanel.js +151 -0
  92. package/lib/calendar/OkButton.js +32 -0
  93. package/lib/calendar/TimePickerButton.js +41 -0
  94. package/lib/calendar/TodayButton.js +39 -0
  95. package/lib/date/DateConstants.js +23 -0
  96. package/lib/date/DateInput.js +248 -0
  97. package/lib/date/DateTBody.js +317 -0
  98. package/lib/date/DateTHead.js +106 -0
  99. package/lib/date/DateTable.js +54 -0
  100. package/lib/decade/DecadePanel.js +207 -0
  101. package/lib/full-calendar/CalendarHeader.js +201 -0
  102. package/lib/index.js +12 -0
  103. package/lib/locale/ar_EG.js +31 -0
  104. package/lib/locale/bg_BG.js +31 -0
  105. package/lib/locale/ca_ES.js +31 -0
  106. package/lib/locale/cs_CZ.js +31 -0
  107. package/lib/locale/da_DK.js +31 -0
  108. package/lib/locale/de_DE.js +31 -0
  109. package/lib/locale/el_GR.js +31 -0
  110. package/lib/locale/en_GB.js +31 -0
  111. package/lib/locale/en_US.js +32 -0
  112. package/lib/locale/es_ES.js +31 -0
  113. package/lib/locale/et_EE.js +31 -0
  114. package/lib/locale/fa_IR.js +31 -0
  115. package/lib/locale/fi_FI.js +31 -0
  116. package/lib/locale/fr_BE.js +31 -0
  117. package/lib/locale/fr_FR.js +31 -0
  118. package/lib/locale/he_IL.js +32 -0
  119. package/lib/locale/hi_IN.js +32 -0
  120. package/lib/locale/hr_HR.js +32 -0
  121. package/lib/locale/hu_HU.js +31 -0
  122. package/lib/locale/id_ID.js +32 -0
  123. package/lib/locale/is_IS.js +31 -0
  124. package/lib/locale/it_IT.js +31 -0
  125. package/lib/locale/ja_JP.js +30 -0
  126. package/lib/locale/kn_IN.js +32 -0
  127. package/lib/locale/ko_KR.js +31 -0
  128. package/lib/locale/ku_IQ.js +31 -0
  129. package/lib/locale/lv_LV.js +31 -0
  130. package/lib/locale/mm_MM.js +32 -0
  131. package/lib/locale/mn_MN.js +32 -0
  132. package/lib/locale/ms_MY.js +31 -0
  133. package/lib/locale/nb_NO.js +31 -0
  134. package/lib/locale/nl_BE.js +31 -0
  135. package/lib/locale/nl_NL.js +31 -0
  136. package/lib/locale/pl_PL.js +31 -0
  137. package/lib/locale/pt_BR.js +31 -0
  138. package/lib/locale/pt_PT.js +31 -0
  139. package/lib/locale/ro_RO.js +32 -0
  140. package/lib/locale/ru_RU.js +31 -0
  141. package/lib/locale/sk_SK.js +31 -0
  142. package/lib/locale/sl_SI.js +31 -0
  143. package/lib/locale/sr_RS.js +31 -0
  144. package/lib/locale/sv_SE.js +31 -0
  145. package/lib/locale/ta_IN.js +32 -0
  146. package/lib/locale/th_TH.js +31 -0
  147. package/lib/locale/tr_TR.js +31 -0
  148. package/lib/locale/ug_CN.js +30 -0
  149. package/lib/locale/uk_UA.js +31 -0
  150. package/lib/locale/vi_VN.js +32 -0
  151. package/lib/locale/zh_CN.js +31 -0
  152. package/lib/locale/zh_TW.js +30 -0
  153. package/lib/mixin/CalendarMixin.js +153 -0
  154. package/lib/mixin/CommonMixin.js +106 -0
  155. package/lib/month/MonthPanel.js +179 -0
  156. package/lib/month/MonthTable.js +181 -0
  157. package/lib/picker/placements.js +39 -0
  158. package/lib/range-calendar/CalendarPart.js +184 -0
  159. package/lib/util/dayjs.js +46 -0
  160. package/lib/util/index.js +580 -0
  161. package/lib/util/toTime.js +28 -0
  162. package/lib/year/YearPanel.js +219 -0
  163. package/package.json +1 -1
@@ -0,0 +1,545 @@
1
+ import _extends from 'babel-runtime/helpers/extends';
2
+ import dayjs from 'dayjs';
3
+ import utc from 'dayjs/plugin/utc';
4
+
5
+ dayjs.extend(utc);
6
+ export var getCurrentDate = function getCurrentDate() {
7
+ return dayjs().date();
8
+ };
9
+ export var getCurrentMonth = function getCurrentMonth() {
10
+ return dayjs().month() + 1;
11
+ };
12
+ export var getCurrentYear = function getCurrentYear() {
13
+ return dayjs().year();
14
+ };
15
+ export var getCurrentTime = function getCurrentTime() {
16
+ return dayjs().format('HH:mm');
17
+ };
18
+
19
+ export var DATE_FORMATS = {
20
+ ISO: 'YYYY-MM-DD',
21
+ ISOAndTime: 'YYYY-MM-DD HH:mm',
22
+ US: 'M/D/YYYY',
23
+ USAndTime: 'M/D/YYYY HH:mm',
24
+ European: 'DD/MM/YYYY',
25
+ EuropeanAndTime: 'DD/MM/YYYY HH:mm',
26
+ Germany_Russia_etc: 'DD.MM.YYYY',
27
+ Germany_Russia_etcAndTime: 'DD.MM.YYYY HH:mm'
28
+ };
29
+
30
+ var defaultDisabledTime = {
31
+ disabledHours: function disabledHours() {
32
+ return [];
33
+ },
34
+ disabledMinutes: function disabledMinutes() {
35
+ return [];
36
+ },
37
+ disabledSeconds: function disabledSeconds() {
38
+ return [];
39
+ }
40
+ };
41
+
42
+ export function getTodayTime(value) {
43
+ var today = dayjs();
44
+ today = today.locale(value.locale()).utcOffset(value.utcOffset());
45
+ return today;
46
+ }
47
+
48
+ export function getTitleString(value) {
49
+ return value.format('LL');
50
+ }
51
+
52
+ export function getTodayTimeStr(value) {
53
+ var today = getTodayTime(value);
54
+ return getTitleString(today);
55
+ }
56
+
57
+ export function getMonthName(month) {
58
+ var locale = month.locale();
59
+ var localeData = month.localeData();
60
+ return localeData[locale === 'zh-cn' ? 'months' : 'monthsShort'](month);
61
+ }
62
+
63
+ export function syncTime(from, to) {
64
+ if (!dayjs.isDayjs(from) || !dayjs.isDayjs(to)) return;
65
+ to = to.hour(from.hour());
66
+ to = to.minute(from.minute());
67
+ to = to.second(from.second());
68
+ to = to.millisecond(from.millisecond());
69
+ }
70
+
71
+ export function getTimeConfig(value, disabledTime) {
72
+ var disabledTimeConfig = disabledTime ? disabledTime(value) : {};
73
+ disabledTimeConfig = _extends({}, defaultDisabledTime, disabledTimeConfig);
74
+ return disabledTimeConfig;
75
+ }
76
+
77
+ export function isTimeValidByConfig(value, disabledTimeConfig) {
78
+ var invalidTime = false;
79
+ if (value) {
80
+ var hour = value.hour();
81
+ var minutes = value.minute();
82
+ var seconds = value.second();
83
+ var disabledHours = disabledTimeConfig.disabledHours();
84
+ if (disabledHours.indexOf(hour) === -1) {
85
+ var disabledMinutes = disabledTimeConfig.disabledMinutes(hour);
86
+ if (disabledMinutes.indexOf(minutes) === -1) {
87
+ var disabledSeconds = disabledTimeConfig.disabledSeconds(hour, minutes);
88
+ invalidTime = disabledSeconds.indexOf(seconds) !== -1;
89
+ } else {
90
+ invalidTime = true;
91
+ }
92
+ } else {
93
+ invalidTime = true;
94
+ }
95
+ }
96
+ return !invalidTime;
97
+ }
98
+
99
+ export function isTimeValid(value, disabledTime) {
100
+ var disabledTimeConfig = getTimeConfig(value, disabledTime);
101
+ return isTimeValidByConfig(value, disabledTimeConfig);
102
+ }
103
+
104
+ export function isAllowedDate(value, disabledDate, disabledTime) {
105
+ if (disabledDate) {
106
+ if (disabledDate(value)) {
107
+ return false;
108
+ }
109
+ }
110
+ if (disabledTime) {
111
+ if (!isTimeValid(value, disabledTime)) {
112
+ return false;
113
+ }
114
+ }
115
+ return true;
116
+ }
117
+
118
+ export function formatDate(value, format) {
119
+ if (!value) {
120
+ return '';
121
+ }
122
+
123
+ if (Array.isArray(format)) {
124
+ format = format[0];
125
+ }
126
+
127
+ return value.format(format);
128
+ }
129
+
130
+ export var isLeapYear = function isLeapYear(year) {
131
+ return year % 4 === 0 && year % 100 !== 0 || year % 400 === 0;
132
+ };
133
+
134
+ export function validateCalendarDay(dayStr) {
135
+ if (!/^\d+$/.test(dayStr)) return false;
136
+ var day = Number(dayStr);
137
+ var MONTHS_WITH_31_DAYS = [1, 3, 5, 7, 8, 10, 12];
138
+ var MONTHS_WITH_30_DAYS = [4, 6, 9, 11];
139
+ if (MONTHS_WITH_31_DAYS.includes(getCurrentMonth())) {
140
+ return day >= 1 && day <= 31;
141
+ }
142
+ if (MONTHS_WITH_30_DAYS.includes(getCurrentMonth())) {
143
+ return day >= 1 && day <= 30;
144
+ }
145
+ if (getCurrentMonth() === 2) {
146
+ var year = getCurrentYear();
147
+ if (isLeapYear(year)) {
148
+ return day >= 1 && day <= 29;
149
+ }
150
+ return day >= 1 && day <= 28;
151
+ }
152
+ }
153
+
154
+ export function tokenizeFormattedDate(formatStr, format) {
155
+ var str = formatStr || '';
156
+ var cleanStr = void 0;
157
+ switch (format) {
158
+ case DATE_FORMATS.ISO:
159
+ case DATE_FORMATS.ISOAndTime:
160
+ cleanStr = str.replace(/[^0-9]+/g, '-');
161
+ return cleanStr.split('-').filter(Boolean).map(String);
162
+ case DATE_FORMATS.US:
163
+ case DATE_FORMATS.USAndTime:
164
+ case DATE_FORMATS.European:
165
+ case DATE_FORMATS.EuropeanAndTime:
166
+ cleanStr = str.replace(/[^0-9]+/g, '/');
167
+ return cleanStr.split('/').filter(Boolean).map(String);
168
+ case DATE_FORMATS.Germany_Russia_etc:
169
+ case DATE_FORMATS.Germany_Russia_etcAndTime:
170
+ cleanStr = str.replace(/[^0-9]+/g, '.');
171
+ return cleanStr.split('.').filter(Boolean).map(String);
172
+ default:
173
+ return [];
174
+ }
175
+ }
176
+
177
+ export function hasSpecialChar(str) {
178
+ var matches = str.match(/[^0-9]/g);
179
+ return matches ? matches.length : 0;
180
+ }
181
+
182
+ export function validateTime(inputTime) {
183
+ if (!inputTime || typeof inputTime !== 'string') {
184
+ return getCurrentTime();
185
+ }
186
+ var trimmed = inputTime.trim();
187
+ var timeRegex = /^(\d{2}):(\d{2})$/;
188
+ var match = trimmed.match(timeRegex);
189
+ if (!match) {
190
+ return getCurrentTime();
191
+ }
192
+ var hour = Number(match[1]);
193
+ var minute = Number(match[2]);
194
+ if (hour > 23 || minute > 59) {
195
+ return getCurrentTime();
196
+ }
197
+ return match[1] + ':' + match[2];
198
+ }
199
+
200
+ export function delimate(format) {
201
+ var delimiter = void 0;
202
+ if (format === DATE_FORMATS.Germany_Russia_etc || format === DATE_FORMATS.Germany_Russia_etcAndTime) {
203
+ delimiter = '.';
204
+ } else if (format === DATE_FORMATS.ISO || format === DATE_FORMATS.ISOAndTime) {
205
+ delimiter = '-';
206
+ } else {
207
+ delimiter = '/';
208
+ }
209
+ return delimiter;
210
+ }
211
+
212
+ export function validateCalendarYear(yearStr) {
213
+ var year = yearStr;
214
+ if (!year || isNaN(year)) return getCurrentYear();
215
+ if (year.length === 2) {
216
+ if (Number(year) >= 0 && Number(year) < 69) {
217
+ return year ? '20' + year : getCurrentYear();
218
+ } else if (Number(year) >= 69 && Number(year) < 100) {
219
+ return year ? '19' + year : getCurrentYear();
220
+ }
221
+ }
222
+ if (year.length === 4) {
223
+ return year;
224
+ }
225
+ return year ? year.padStart(4, '0') : getCurrentYear();
226
+ }
227
+
228
+ export function validateAndNormalizeDate(dayStr, monthStr, yearStr) {
229
+ var day = Number(dayStr);
230
+ var month = Number(monthStr);
231
+ var year = yearStr;
232
+ var isInThirtyOneDaysMonths = [1, 3, 5, 7, 8, 10, 12].includes(month);
233
+ var isInThirtyDaysMonths = [4, 6, 9, 11].includes(month);
234
+ var isValidDayThirtyOne = day < 1 || day > 31;
235
+ var isValidDayThirty = day < 1 || day > 30;
236
+ var isValidDayTwentyNight = day < 1 || day > 29;
237
+ var isValidDayTwentyEight = day < 1 || day > 28;
238
+
239
+ if (month > 12 || month < 0 || !month) {
240
+ day = getCurrentDate();
241
+ month = getCurrentMonth();
242
+ year = getCurrentYear();
243
+ }
244
+
245
+ if (isInThirtyOneDaysMonths && isValidDayThirtyOne || isInThirtyDaysMonths && isValidDayThirty) {
246
+ day = getCurrentDate();
247
+ month = getCurrentMonth();
248
+ year = getCurrentYear();
249
+ }
250
+
251
+ if (month === 2) {
252
+ if (isLeapYear(year) && isValidDayTwentyNight) {
253
+ day = getCurrentDate();
254
+ month = getCurrentMonth();
255
+ year = getCurrentYear();
256
+ } else if (isValidDayTwentyEight) {
257
+ day = getCurrentDate();
258
+ month = getCurrentMonth();
259
+ year = getCurrentYear();
260
+ }
261
+ }
262
+ return { day: day, month: month, year: year };
263
+ }
264
+
265
+ export function getDatePart(str) {
266
+ if (typeof str !== 'string') return '';
267
+ var parts = str.trim().split(/\s+/);
268
+ return parts[0];
269
+ }
270
+
271
+ export function initializeStr(str, format) {
272
+ var inputStr = str;
273
+ var inputStrLength = inputStr.length;
274
+ var time = getCurrentTime();
275
+ var hasSpecial = hasSpecialChar(inputStr);
276
+ var formattedArray = tokenizeFormattedDate(inputStr, format);
277
+ var dateDelimater = delimate(format);
278
+ if (format === DATE_FORMATS.ISO) {
279
+ var numStr = inputStr.replace(/[^0-9]/g, '');
280
+ if (numStr.length === 7 || numStr.length === 8) {
281
+ var yearStr = numStr.slice(0, 4);
282
+ var monthStr = numStr.slice(4, 6) || '01';
283
+ var dateStr = numStr.slice(6, numStr.length) || '01';
284
+ var validateYear = validateCalendarYear(yearStr);
285
+
286
+ var _validateAndNormalize = validateAndNormalizeDate(dateStr, monthStr, validateYear),
287
+ day = _validateAndNormalize.day,
288
+ month = _validateAndNormalize.month;
289
+
290
+ var _validateAndNormalize2 = validateAndNormalizeDate(dateStr, monthStr, validateYear),
291
+ year = _validateAndNormalize2.year;
292
+
293
+ day = String(day).padStart(2, 0);
294
+ month = String(month).padStart(2, 0);
295
+ return '' + year + dateDelimater + month + dateDelimater + day;
296
+ }
297
+ if (hasSpecial) {
298
+ var _validateYear = validateCalendarYear(formattedArray[0]);
299
+
300
+ var _validateAndNormalize3 = validateAndNormalizeDate(formattedArray[2] || '01', formattedArray[1] || '01', _validateYear),
301
+ _day = _validateAndNormalize3.day,
302
+ _month = _validateAndNormalize3.month; // eslint-disable-line max-len
303
+
304
+
305
+ var _validateAndNormalize4 = validateAndNormalizeDate(formattedArray[2] || '01', formattedArray[1] || '01', _validateYear),
306
+ _year = _validateAndNormalize4.year; // eslint-disable-line max-len
307
+
308
+
309
+ _day = String(_day).padStart(2, 0);
310
+ _month = String(_month).padStart(2, 0);
311
+ return '' + _year + dateDelimater + _month + dateDelimater + _day;
312
+ } else if (inputStrLength >= 1 && inputStrLength <= 8) {
313
+ var _yearStr = inputStr.slice(0, 4);
314
+ var _monthStr = inputStr.slice(4, 6) || '01';
315
+ var _dateStr = inputStr.slice(6, 8) || '01';
316
+ var _validateYear2 = validateCalendarYear(_yearStr);
317
+
318
+ var _validateAndNormalize5 = validateAndNormalizeDate(_dateStr, _monthStr, _validateYear2),
319
+ _day2 = _validateAndNormalize5.day,
320
+ _month2 = _validateAndNormalize5.month;
321
+
322
+ var _validateAndNormalize6 = validateAndNormalizeDate(_dateStr, _monthStr, _validateYear2),
323
+ _year2 = _validateAndNormalize6.year;
324
+
325
+ _day2 = String(_day2).padStart(2, 0);
326
+ _month2 = String(_month2).padStart(2, 0);
327
+ return '' + _year2 + dateDelimater + _month2 + dateDelimater + _day2;
328
+ } else if (inputStrLength > 8) {
329
+ return '' + getCurrentYear() + dateDelimater + String(getCurrentMonth()).padStart(2, 0) + dateDelimater + String(getCurrentDate()).padStart(2, 0); // eslint-disable-line max-len
330
+ }
331
+ } else if (format === DATE_FORMATS.ISOAndTime) {
332
+ var datePart = getDatePart(inputStr);
333
+ var formattedDateArray = tokenizeFormattedDate(datePart, format);
334
+ var isDateSpecial = hasSpecialChar(datePart);
335
+ var _numStr = datePart.replace(/[^0-9]/g, '');
336
+ if (_numStr.length === 7 || _numStr.length === 8) {
337
+ var _yearStr2 = _numStr.slice(0, 4);
338
+ var _monthStr2 = _numStr.slice(4, 6) || '01';
339
+ var _dateStr2 = _numStr.slice(6, _numStr.length) || '01';
340
+ if (formattedArray.length === 3) {
341
+ time = validateTime(formattedArray[1] + ':' + formattedArray[2]);
342
+ }
343
+ if (formattedArray.length === 4) {
344
+ time = validateTime(formattedArray[2] + ':' + formattedArray[3]);
345
+ }
346
+ if (formattedArray.length === 5) {
347
+ time = validateTime(formattedArray[3] + ':' + formattedArray[4]);
348
+ }
349
+ var _validateYear3 = validateCalendarYear(_yearStr2);
350
+
351
+ var _validateAndNormalize7 = validateAndNormalizeDate(_dateStr2, _monthStr2, _validateYear3),
352
+ _day3 = _validateAndNormalize7.day,
353
+ _month3 = _validateAndNormalize7.month;
354
+
355
+ var _validateAndNormalize8 = validateAndNormalizeDate(_dateStr2, _monthStr2, _validateYear3),
356
+ _year3 = _validateAndNormalize8.year;
357
+
358
+ _day3 = String(_day3).padStart(2, 0);
359
+ _month3 = String(_month3).padStart(2, 0);
360
+ return '' + _year3 + dateDelimater + _month3 + dateDelimater + _day3 + ' ' + time;
361
+ }
362
+ if (isDateSpecial) {
363
+ if (formattedDateArray.length < 3) {
364
+ formattedArray.splice(2, 0, '01');
365
+ }
366
+ var _validateYear4 = validateCalendarYear(formattedArray[0]);
367
+
368
+ var _validateAndNormalize9 = validateAndNormalizeDate(formattedArray[2] || '01', formattedArray[1] || '01', _validateYear4),
369
+ _day4 = _validateAndNormalize9.day,
370
+ _month4 = _validateAndNormalize9.month; // eslint-disable-line max-len
371
+
372
+
373
+ var _validateAndNormalize10 = validateAndNormalizeDate(formattedArray[2] || '01', formattedArray[1] || '01', _validateYear4),
374
+ _year4 = _validateAndNormalize10.year; // eslint-disable-line max-len
375
+
376
+
377
+ time = validateTime(formattedArray[3] + ':' + formattedArray[4]);
378
+ _day4 = String(_day4).padStart(2, 0);
379
+ _month4 = String(_month4).padStart(2, 0);
380
+ return '' + _year4 + dateDelimater + _month4 + dateDelimater + _day4 + ' ' + time;
381
+ } else if (datePart.length >= 1 && datePart.length <= 8) {
382
+ var _yearStr3 = datePart.slice(0, 4);
383
+ var _monthStr3 = datePart.slice(4, 6) || '01';
384
+ var _dateStr3 = datePart.slice(6, 8) || '01';
385
+ var timeParts = tokenizeFormattedDate(inputStr, format);
386
+ time = validateTime(timeParts[1] + ':' + timeParts[2]);
387
+ var _validateYear5 = validateCalendarYear(_yearStr3);
388
+
389
+ var _validateAndNormalize11 = validateAndNormalizeDate(_dateStr3, _monthStr3, _validateYear5),
390
+ _day5 = _validateAndNormalize11.day,
391
+ _month5 = _validateAndNormalize11.month;
392
+
393
+ var _validateAndNormalize12 = validateAndNormalizeDate(_dateStr3, _monthStr3, _validateYear5),
394
+ _year5 = _validateAndNormalize12.year;
395
+
396
+ _day5 = String(_day5).padStart(2, 0);
397
+ _month5 = String(_month5).padStart(2, 0);
398
+ return '' + _year5 + dateDelimater + _month5 + dateDelimater + _day5 + ' ' + time;
399
+ } else if (datePart.length > 8) {
400
+ return '' + getCurrentYear() + dateDelimater + String(getCurrentMonth()).padStart(2, 0) + dateDelimater + String(getCurrentDate()).padStart(2, 0) + ' ' + getCurrentTime(); // eslint-disable-line max-len
401
+ }
402
+ } else if (format === DATE_FORMATS.US) {
403
+ if (hasSpecial) {
404
+ var _validateYear6 = validateCalendarYear(formattedArray[2]);
405
+
406
+ var _validateAndNormalize13 = validateAndNormalizeDate(formattedArray[1] || '1', formattedArray[0], _validateYear6),
407
+ _day6 = _validateAndNormalize13.day,
408
+ _month6 = _validateAndNormalize13.month,
409
+ _year6 = _validateAndNormalize13.year; // eslint-disable-line max-len
410
+
411
+
412
+ return '' + _month6 + dateDelimater + _day6 + dateDelimater + _year6;
413
+ } else if (inputStrLength >= 1 && inputStrLength <= 8) {
414
+ var _monthStr4 = inputStr.slice(0, 2);
415
+ var _dateStr4 = inputStr.slice(2, 4) || '1';
416
+ var _yearStr4 = inputStr.slice(4, inputStr.length);
417
+ var _validateYear7 = validateCalendarYear(_yearStr4);
418
+
419
+ var _validateAndNormalize14 = validateAndNormalizeDate(_dateStr4, _monthStr4, _validateYear7),
420
+ _day7 = _validateAndNormalize14.day,
421
+ _month7 = _validateAndNormalize14.month,
422
+ _year7 = _validateAndNormalize14.year;
423
+
424
+ return '' + _month7 + dateDelimater + _day7 + dateDelimater + _year7; // eslint-disable-line max-len
425
+ } else if (inputStrLength > 8) {
426
+ return '' + String(getCurrentMonth()).padStart(2, 0) + dateDelimater + String(getCurrentDate()).padStart(2, 0) + dateDelimater + getCurrentYear(); // eslint-disable-line max-len
427
+ }
428
+ } else if (format === DATE_FORMATS.USAndTime) {
429
+ var _datePart = getDatePart(inputStr);
430
+ var _formattedDateArray = tokenizeFormattedDate(_datePart, format);
431
+ var _isDateSpecial = hasSpecialChar(_datePart);
432
+ if (_isDateSpecial) {
433
+ if (_formattedDateArray.length < 3) {
434
+ formattedArray.splice(2, 0, String(getCurrentYear()));
435
+ }
436
+ var _validateYear8 = validateCalendarYear(formattedArray[2]);
437
+
438
+ var _validateAndNormalize15 = validateAndNormalizeDate(formattedArray[1] || '1', formattedArray[0], _validateYear8),
439
+ _day8 = _validateAndNormalize15.day,
440
+ _month8 = _validateAndNormalize15.month,
441
+ _year8 = _validateAndNormalize15.year; // eslint-disable-line max-len
442
+
443
+
444
+ time = validateTime(formattedArray[3] + ':' + formattedArray[4]);
445
+ return '' + _month8 + dateDelimater + _day8 + dateDelimater + _year8 + ' ' + time;
446
+ } else if (_datePart.length >= 1 && _datePart.length <= 8) {
447
+ var _monthStr5 = _datePart.slice(0, 2);
448
+ var _dateStr5 = _datePart.slice(2, 4) || '1';
449
+ var _yearStr5 = _datePart.slice(4, _datePart.length);
450
+ var _validateYear9 = validateCalendarYear(_yearStr5); // eslint-disable-line max-len
451
+
452
+ var _validateAndNormalize16 = validateAndNormalizeDate(_dateStr5, _monthStr5, _validateYear9),
453
+ _day9 = _validateAndNormalize16.day,
454
+ _month9 = _validateAndNormalize16.month,
455
+ _year9 = _validateAndNormalize16.year;
456
+
457
+ var _timeParts = tokenizeFormattedDate(inputStr, format);
458
+ time = validateTime(_timeParts[1] + ':' + _timeParts[2]) || getCurrentTime();
459
+ return '' + _month9 + dateDelimater + _day9 + dateDelimater + _year9 + ' ' + time;
460
+ } else if (_datePart.length > 8) {
461
+ return '' + String(getCurrentMonth()).padStart(2, 0) + dateDelimater + String(getCurrentDate()).padStart(2, 0) + dateDelimater + getCurrentYear() + ' ' + getCurrentTime(); // eslint-disable-line max-len
462
+ }
463
+ } else if (format === DATE_FORMATS.European || format === DATE_FORMATS.Germany_Russia_etc) {
464
+ if (hasSpecial) {
465
+ var _validateYear10 = validateCalendarYear(formattedArray[2]);
466
+
467
+ var _validateAndNormalize17 = validateAndNormalizeDate(formattedArray[0], formattedArray[1], _validateYear10),
468
+ _day10 = _validateAndNormalize17.day,
469
+ _month10 = _validateAndNormalize17.month; // eslint-disable-line max-len
470
+
471
+
472
+ var _validateAndNormalize18 = validateAndNormalizeDate(formattedArray[0], formattedArray[1], _validateYear10),
473
+ _year10 = _validateAndNormalize18.year; // eslint-disable-line max-len
474
+
475
+
476
+ _day10 = String(_day10).padStart(2, 0);
477
+ _month10 = String(_month10).padStart(2, 0);
478
+ return '' + _day10 + dateDelimater + _month10 + dateDelimater + _year10;
479
+ } else if (inputStrLength >= 1 && inputStrLength <= 8) {
480
+ var _dateStr6 = inputStr.slice(0, 2);
481
+ var _monthStr6 = inputStr.slice(2, 4) || getCurrentMonth();
482
+ var _yearStr6 = inputStr.slice(4, inputStr.length);
483
+ var _validateYear11 = validateCalendarYear(_yearStr6);
484
+
485
+ var _validateAndNormalize19 = validateAndNormalizeDate(_dateStr6, _monthStr6, _validateYear11),
486
+ _year11 = _validateAndNormalize19.year; // eslint-disable-line max-len
487
+
488
+
489
+ var _validateAndNormalize20 = validateAndNormalizeDate(_dateStr6, _monthStr6, _validateYear11),
490
+ _day11 = _validateAndNormalize20.day,
491
+ _month11 = _validateAndNormalize20.month; // eslint-disable-line max-len
492
+
493
+
494
+ _day11 = String(_day11).padStart(2, 0);
495
+ _month11 = String(_month11).padStart(2, 0);
496
+ return '' + _day11 + dateDelimater + _month11 + dateDelimater + _year11;
497
+ } else if (inputStrLength > 8) {
498
+ return '' + String(getCurrentDate()).padStart(2, 0) + dateDelimater + String(getCurrentMonth()).padStart(2, 0) + dateDelimater + getCurrentYear(); // eslint-disable-line max-len
499
+ }
500
+ } else if (format === DATE_FORMATS.EuropeanAndTime || format === DATE_FORMATS.Germany_Russia_etcAndTime) {
501
+ var _datePart2 = getDatePart(inputStr);
502
+ var _formattedDateArray2 = tokenizeFormattedDate(_datePart2, format);
503
+ var _isDateSpecial2 = hasSpecialChar(_datePart2);
504
+ if (_isDateSpecial2) {
505
+ if (_formattedDateArray2.length < 3) {
506
+ formattedArray.splice(2, 0, String(getCurrentYear()));
507
+ }
508
+ var _validateYear12 = validateCalendarYear(formattedArray[2]);
509
+
510
+ var _validateAndNormalize21 = validateAndNormalizeDate(formattedArray[0], formattedArray[1], _validateYear12),
511
+ _day12 = _validateAndNormalize21.day,
512
+ _month12 = _validateAndNormalize21.month; // eslint-disable-line max-len
513
+
514
+
515
+ var _validateAndNormalize22 = validateAndNormalizeDate(formattedArray[0], formattedArray[1], _validateYear12),
516
+ _year12 = _validateAndNormalize22.year; // eslint-disable-line max-len
517
+
518
+
519
+ time = validateTime(formattedArray[3] + ':' + formattedArray[4]);
520
+ _day12 = String(_day12).padStart(2, 0);
521
+ _month12 = String(_month12).padStart(2, 0);
522
+ return '' + _day12 + dateDelimater + _month12 + dateDelimater + _year12 + ' ' + time;
523
+ } else if (_datePart2.length >= 1 && _datePart2.length <= 8) {
524
+ var _dateStr7 = _datePart2.slice(0, 2);
525
+ var _monthStr7 = _datePart2.slice(2, 4) || getCurrentMonth();
526
+ var _yearStr7 = _datePart2.slice(4, _datePart2.length);
527
+ var _timeParts2 = tokenizeFormattedDate(inputStr, format);
528
+ time = validateTime(_timeParts2[1] + ':' + _timeParts2[2]);
529
+ var _validateYear13 = validateCalendarYear(_yearStr7);
530
+
531
+ var _validateAndNormalize23 = validateAndNormalizeDate(_dateStr7, _monthStr7, _validateYear13),
532
+ _day13 = _validateAndNormalize23.day,
533
+ _month13 = _validateAndNormalize23.month;
534
+
535
+ var _validateAndNormalize24 = validateAndNormalizeDate(_dateStr7, _monthStr7, _validateYear13),
536
+ _year13 = _validateAndNormalize24.year;
537
+
538
+ _day13 = String(_day13).padStart(2, 0);
539
+ _month13 = String(_month13).padStart(2, 0);
540
+ return '' + _day13 + dateDelimater + _month13 + dateDelimater + _year13 + ' ' + time;
541
+ } else if (_datePart2.length > 8) {
542
+ return '' + String(getCurrentDate()).padStart(2, 0) + dateDelimater + String(getCurrentMonth()).padStart(2, 0) + dateDelimater + getCurrentYear() + ' ' + getCurrentTime(); // eslint-disable-line max-len
543
+ }
544
+ }
545
+ }
@@ -0,0 +1,21 @@
1
+ export function goStartMonth(time) {
2
+ return time.clone().startOf('month');
3
+ }
4
+
5
+ export function goEndMonth(time) {
6
+ return time.clone().endOf('month');
7
+ }
8
+
9
+ export function goTime(time, direction, unit) {
10
+ return time.clone().add(direction, unit);
11
+ }
12
+
13
+ export function includesTime() {
14
+ var timeList = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
15
+ var time = arguments[1];
16
+ var unit = arguments[2];
17
+
18
+ return timeList.some(function (t) {
19
+ return t.isSame(time, unit);
20
+ });
21
+ }