myrta-ui 1.0.25 → 1.0.26

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 (32) hide show
  1. package/esm2020/lib/components/form/input-date-time/constants/value-models.mjs +14 -0
  2. package/esm2020/lib/components/form/input-date-time/enum/timezone.mjs +7 -0
  3. package/esm2020/lib/components/form/input-date-time/helpers/clean-date.mjs +5 -0
  4. package/esm2020/lib/components/form/input-date-time/helpers/cursor-position.mjs +23 -0
  5. package/esm2020/lib/components/form/input-date-time/helpers/formatting-from-models.mjs +10 -0
  6. package/esm2020/lib/components/form/input-date-time/helpers/formatting-moscow-timezone.mjs +10 -0
  7. package/esm2020/lib/components/form/input-date-time/helpers/validate-value-models.mjs +60 -0
  8. package/esm2020/lib/components/form/input-date-time/helpers/value-parser.mjs +39 -0
  9. package/esm2020/lib/components/form/input-date-time/input-date-time.component.mjs +381 -0
  10. package/esm2020/lib/components/form/input-date-time/input-date-time.enum.mjs +7 -0
  11. package/esm2020/lib/components/form/input-date-time/input-date-time.module.mjs +48 -0
  12. package/esm2020/lib/components/form/input-number/input-number.component.mjs +9 -5
  13. package/esm2020/lib/components/form/input-number/input-number.module.mjs +8 -6
  14. package/esm2020/lib/components/form/input-phone/data/country-code.mjs +2 -2
  15. package/esm2020/public-api.mjs +4 -1
  16. package/fesm2015/myrta-ui.mjs +652 -85
  17. package/fesm2015/myrta-ui.mjs.map +1 -1
  18. package/fesm2020/myrta-ui.mjs +651 -84
  19. package/fesm2020/myrta-ui.mjs.map +1 -1
  20. package/lib/components/form/input-date-time/constants/value-models.d.ts +3 -0
  21. package/lib/components/form/input-date-time/enum/timezone.d.ts +6 -0
  22. package/lib/components/form/input-date-time/helpers/clean-date.d.ts +1 -0
  23. package/lib/components/form/input-date-time/helpers/cursor-position.d.ts +1 -0
  24. package/lib/components/form/input-date-time/helpers/formatting-from-models.d.ts +3 -0
  25. package/lib/components/form/input-date-time/helpers/formatting-moscow-timezone.d.ts +2 -0
  26. package/lib/components/form/input-date-time/helpers/validate-value-models.d.ts +19 -0
  27. package/lib/components/form/input-date-time/helpers/value-parser.d.ts +4 -0
  28. package/lib/components/form/input-date-time/input-date-time.component.d.ts +72 -0
  29. package/lib/components/form/input-date-time/input-date-time.enum.d.ts +21 -0
  30. package/lib/components/form/input-date-time/input-date-time.module.d.ts +13 -0
  31. package/package.json +1 -1
  32. package/public-api.d.ts +3 -0
@@ -0,0 +1,14 @@
1
+ export const dateModelConstant = {
2
+ view: '',
3
+ day: '',
4
+ month: '',
5
+ year: '',
6
+ invalid: true
7
+ };
8
+ export const timeModelConstant = {
9
+ view: '',
10
+ hour: '',
11
+ minute: '',
12
+ invalid: true
13
+ };
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsdWUtbW9kZWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXlydGEtdWkvc3JjL2xpYi9jb21wb25lbnRzL2Zvcm0vaW5wdXQtZGF0ZS10aW1lL2NvbnN0YW50cy92YWx1ZS1tb2RlbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxDQUFDLE1BQU0saUJBQWlCLEdBQWM7SUFDMUMsSUFBSSxFQUFFLEVBQUU7SUFDUixHQUFHLEVBQUUsRUFBRTtJQUNQLEtBQUssRUFBRSxFQUFFO0lBQ1QsSUFBSSxFQUFFLEVBQUU7SUFDUixPQUFPLEVBQUUsSUFBSTtDQUNkLENBQUE7QUFFRCxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBYztJQUMxQyxJQUFJLEVBQUUsRUFBRTtJQUNSLElBQUksRUFBRSxFQUFFO0lBQ1IsTUFBTSxFQUFFLEVBQUU7SUFDVixPQUFPLEVBQUUsSUFBSTtDQUNkLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEYXRlTW9kZWwsIFRpbWVNb2RlbCB9IGZyb20gJy4uL2hlbHBlcnMvdmFsaWRhdGUtdmFsdWUtbW9kZWxzJztcclxuXHJcbmV4cG9ydCBjb25zdCBkYXRlTW9kZWxDb25zdGFudDogRGF0ZU1vZGVsID0ge1xyXG4gIHZpZXc6ICcnLFxyXG4gIGRheTogJycsXHJcbiAgbW9udGg6ICcnLFxyXG4gIHllYXI6ICcnLFxyXG4gIGludmFsaWQ6IHRydWVcclxufVxyXG5cclxuZXhwb3J0IGNvbnN0IHRpbWVNb2RlbENvbnN0YW50OiBUaW1lTW9kZWwgPSB7XHJcbiAgdmlldzogJycsXHJcbiAgaG91cjogJycsXHJcbiAgbWludXRlOiAnJyxcclxuICBpbnZhbGlkOiB0cnVlXHJcbn1cclxuIl19
@@ -0,0 +1,7 @@
1
+ export var Timezone;
2
+ (function (Timezone) {
3
+ Timezone[Timezone["default"] = 0] = "default";
4
+ Timezone[Timezone["Europe/Moscow"] = 3] = "Europe/Moscow";
5
+ Timezone[Timezone["America/New_York"] = -5] = "America/New_York";
6
+ })(Timezone || (Timezone = {}));
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZXpvbmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9teXJ0YS11aS9zcmMvbGliL2NvbXBvbmVudHMvZm9ybS9pbnB1dC1kYXRlLXRpbWUvZW51bS90aW1lem9uZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQU4sSUFBWSxRQUlYO0FBSkQsV0FBWSxRQUFRO0lBQ2xCLDZDQUFhLENBQUE7SUFDYix5REFBbUIsQ0FBQTtJQUNuQixnRUFBdUIsQ0FBQTtBQUN6QixDQUFDLEVBSlcsUUFBUSxLQUFSLFFBQVEsUUFJbkIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZW51bSBUaW1lem9uZSB7XHJcbiAgJ2RlZmF1bHQnID0gMCxcclxuICAnRXVyb3BlL01vc2NvdycgPSAzLFxyXG4gICdBbWVyaWNhL05ld19Zb3JrJyA9IC01XHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIFRpbWV6b25lVHlwZSA9ICdkZWZhdWx0JyB8ICdFdXJvcGUvTW9zY293JyB8ICdBbWVyaWNhL05ld19Zb3JrJ1xyXG4iXX0=
@@ -0,0 +1,5 @@
1
+ import dayjs from 'dayjs';
2
+ export const cleanDate = (value) => {
3
+ return dayjs(value).second(0).millisecond(0).toISOString();
4
+ };
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xlYW4tZGF0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL215cnRhLXVpL3NyYy9saWIvY29tcG9uZW50cy9mb3JtL2lucHV0LWRhdGUtdGltZS9oZWxwZXJzL2NsZWFuLWRhdGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLE1BQU0sT0FBTyxDQUFDO0FBRTFCLE1BQU0sQ0FBQyxNQUFNLFNBQVMsR0FBRyxDQUFDLEtBQWEsRUFBVSxFQUFFO0lBQ2pELE9BQU8sS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUMsV0FBVyxFQUFFLENBQUE7QUFDNUQsQ0FBQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGRheWpzIGZyb20gJ2RheWpzJztcclxuXHJcbmV4cG9ydCBjb25zdCBjbGVhbkRhdGUgPSAodmFsdWU6IHN0cmluZyk6IHN0cmluZyA9PiB7XHJcbiAgcmV0dXJuIGRheWpzKHZhbHVlKS5zZWNvbmQoMCkubWlsbGlzZWNvbmQoMCkudG9JU09TdHJpbmcoKVxyXG59XHJcbiJdfQ==
@@ -0,0 +1,23 @@
1
+ export const markPosition = (start, end, pattern = 'date') => {
2
+ if (start) {
3
+ if (start === 1) {
4
+ return { start: 0, end: 2 };
5
+ }
6
+ else if (start === 4) {
7
+ return { start: 3, end: 5 };
8
+ }
9
+ else if (start >= 7 && start <= 9) {
10
+ return { start: 6, end: 10 };
11
+ }
12
+ else if (start === 12) {
13
+ return { start: 11, end: 13 };
14
+ }
15
+ else if (start === 15) {
16
+ return { start: 14, end: 16 };
17
+ }
18
+ else {
19
+ return { start, end };
20
+ }
21
+ }
22
+ };
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3Vyc29yLXBvc2l0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXlydGEtdWkvc3JjL2xpYi9jb21wb25lbnRzL2Zvcm0vaW5wdXQtZGF0ZS10aW1lL2hlbHBlcnMvY3Vyc29yLXBvc2l0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBQyxNQUFNLFlBQVksR0FBRyxDQUFDLEtBQW9CLEVBQUUsR0FBa0IsRUFBRSxVQUFrQixNQUFNLEVBQU8sRUFBRTtJQUN0RyxJQUFJLEtBQUssRUFBRTtRQUNULElBQUksS0FBSyxLQUFLLENBQUMsRUFBRTtZQUNmLE9BQU8sRUFBQyxLQUFLLEVBQUUsQ0FBQyxFQUFFLEdBQUcsRUFBRSxDQUFDLEVBQUMsQ0FBQTtTQUMxQjthQUFNLElBQUksS0FBSyxLQUFLLENBQUMsRUFBRTtZQUN0QixPQUFPLEVBQUMsS0FBSyxFQUFFLENBQUMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxFQUFDLENBQUE7U0FDMUI7YUFBTSxJQUFJLEtBQUssSUFBSSxDQUFDLElBQUksS0FBSyxJQUFJLENBQUMsRUFBRTtZQUNuQyxPQUFPLEVBQUMsS0FBSyxFQUFFLENBQUMsRUFBRSxHQUFHLEVBQUUsRUFBRSxFQUFDLENBQUE7U0FDM0I7YUFBTSxJQUFJLEtBQUssS0FBSyxFQUFFLEVBQUU7WUFDdkIsT0FBTyxFQUFDLEtBQUssRUFBRSxFQUFFLEVBQUUsR0FBRyxFQUFFLEVBQUUsRUFBQyxDQUFBO1NBQzVCO2FBQU0sSUFBSSxLQUFLLEtBQUssRUFBRSxFQUFFO1lBQ3ZCLE9BQU8sRUFBQyxLQUFLLEVBQUUsRUFBRSxFQUFFLEdBQUcsRUFBRSxFQUFFLEVBQUMsQ0FBQTtTQUM1QjthQUNJO1lBQ0gsT0FBTyxFQUFDLEtBQUssRUFBRSxHQUFHLEVBQUMsQ0FBQTtTQUNwQjtLQUNGO0FBQ0gsQ0FBQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IG1hcmtQb3NpdGlvbiA9IChzdGFydDogbnVtYmVyIHwgbnVsbCwgZW5kOiBudW1iZXIgfCBudWxsLCBwYXR0ZXJuOiBzdHJpbmcgPSAnZGF0ZScpOiBhbnkgPT4ge1xyXG4gIGlmIChzdGFydCkge1xyXG4gICAgaWYgKHN0YXJ0ID09PSAxKSB7XHJcbiAgICAgIHJldHVybiB7c3RhcnQ6IDAsIGVuZDogMn1cclxuICAgIH0gZWxzZSBpZiAoc3RhcnQgPT09IDQpIHtcclxuICAgICAgcmV0dXJuIHtzdGFydDogMywgZW5kOiA1fVxyXG4gICAgfSBlbHNlIGlmIChzdGFydCA+PSA3ICYmIHN0YXJ0IDw9IDkpIHtcclxuICAgICAgcmV0dXJuIHtzdGFydDogNiwgZW5kOiAxMH1cclxuICAgIH0gZWxzZSBpZiAoc3RhcnQgPT09IDEyKSB7XHJcbiAgICAgIHJldHVybiB7c3RhcnQ6IDExLCBlbmQ6IDEzfVxyXG4gICAgfSBlbHNlIGlmIChzdGFydCA9PT0gMTUpIHtcclxuICAgICAgcmV0dXJuIHtzdGFydDogMTQsIGVuZDogMTZ9XHJcbiAgICB9XHJcbiAgICBlbHNlIHtcclxuICAgICAgcmV0dXJuIHtzdGFydCwgZW5kfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iXX0=
@@ -0,0 +1,10 @@
1
+ import dayjs from 'dayjs';
2
+ export const formattingFromModels = (dateModel, timeModel, timepicker) => {
3
+ if (timepicker) {
4
+ return dayjs(`${dateModel.year}-${dateModel.month}-${dateModel.day} ${timeModel.hour}:${timeModel.minute}`, 'YYYY-MM-DD HH:mm');
5
+ }
6
+ else {
7
+ return dayjs(`${dateModel.year}-${dateModel.month}-${dateModel.day}`, 'YYYY-MM-DD');
8
+ }
9
+ };
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybWF0dGluZy1mcm9tLW1vZGVscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL215cnRhLXVpL3NyYy9saWIvY29tcG9uZW50cy9mb3JtL2lucHV0LWRhdGUtdGltZS9oZWxwZXJzL2Zvcm1hdHRpbmctZnJvbS1tb2RlbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxLQUFnQixNQUFNLE9BQU8sQ0FBQztBQUVyQyxNQUFNLENBQUMsTUFBTSxvQkFBb0IsR0FBRyxDQUFDLFNBQW9CLEVBQUUsU0FBb0IsRUFBRSxVQUFtQixFQUFTLEVBQUU7SUFDN0csSUFBSSxVQUFVLEVBQUU7UUFDZCxPQUFPLEtBQUssQ0FBQyxHQUFHLFNBQVMsQ0FBQyxJQUFJLElBQUksU0FBUyxDQUFDLEtBQUssSUFBSSxTQUFTLENBQUMsR0FBRyxJQUFJLFNBQVMsQ0FBQyxJQUFJLElBQUksU0FBUyxDQUFDLE1BQU0sRUFBRSxFQUFFLGtCQUFrQixDQUFDLENBQUE7S0FDaEk7U0FBTTtRQUNMLE9BQU8sS0FBSyxDQUFDLEdBQUcsU0FBUyxDQUFDLElBQUksSUFBSSxTQUFTLENBQUMsS0FBSyxJQUFJLFNBQVMsQ0FBQyxHQUFHLEVBQUUsRUFBRSxZQUFZLENBQUMsQ0FBQTtLQUNwRjtBQUNILENBQUMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERhdGVNb2RlbCwgVGltZU1vZGVsIH0gZnJvbSAnLi92YWxpZGF0ZS12YWx1ZS1tb2RlbHMnO1xyXG5pbXBvcnQgZGF5anMsIHsgRGF5anMgfSBmcm9tICdkYXlqcyc7XHJcblxyXG5leHBvcnQgY29uc3QgZm9ybWF0dGluZ0Zyb21Nb2RlbHMgPSAoZGF0ZU1vZGVsOiBEYXRlTW9kZWwsIHRpbWVNb2RlbDogVGltZU1vZGVsLCB0aW1lcGlja2VyOiBib29sZWFuKTogRGF5anMgPT4ge1xyXG4gIGlmICh0aW1lcGlja2VyKSB7XHJcbiAgICByZXR1cm4gZGF5anMoYCR7ZGF0ZU1vZGVsLnllYXJ9LSR7ZGF0ZU1vZGVsLm1vbnRofS0ke2RhdGVNb2RlbC5kYXl9ICR7dGltZU1vZGVsLmhvdXJ9OiR7dGltZU1vZGVsLm1pbnV0ZX1gLCAnWVlZWS1NTS1ERCBISDptbScpXHJcbiAgfSBlbHNlIHtcclxuICAgIHJldHVybiBkYXlqcyhgJHtkYXRlTW9kZWwueWVhcn0tJHtkYXRlTW9kZWwubW9udGh9LSR7ZGF0ZU1vZGVsLmRheX1gLCAnWVlZWS1NTS1ERCcpXHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -0,0 +1,10 @@
1
+ import { Timezone } from '../enum/timezone';
2
+ import dayjs from 'dayjs';
3
+ import timezone from 'dayjs/plugin/timezone';
4
+ import utc from 'dayjs/plugin/utc';
5
+ export const formattingToMoscowTimezone = (date, tz) => {
6
+ dayjs.extend(utc);
7
+ dayjs.extend(timezone);
8
+ return dayjs.utc(date).utcOffset(Timezone[tz], tz !== 'default').toISOString();
9
+ };
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybWF0dGluZy1tb3Njb3ctdGltZXpvbmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9teXJ0YS11aS9zcmMvbGliL2NvbXBvbmVudHMvZm9ybS9pbnB1dC1kYXRlLXRpbWUvaGVscGVycy9mb3JtYXR0aW5nLW1vc2Nvdy10aW1lem9uZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFnQixNQUFNLGtCQUFrQixDQUFDO0FBRTFELE9BQU8sS0FBSyxNQUFNLE9BQU8sQ0FBQztBQUMxQixPQUFPLFFBQVEsTUFBTSx1QkFBdUIsQ0FBQztBQUM3QyxPQUFPLEdBQUcsTUFBTSxrQkFBa0IsQ0FBQztBQUVuQyxNQUFNLENBQUMsTUFBTSwwQkFBMEIsR0FBRyxDQUFDLElBQVMsRUFBRSxFQUFnQixFQUFVLEVBQUU7SUFDaEYsS0FBSyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQTtJQUNqQixLQUFLLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFBO0lBRXRCLE9BQU8sS0FBSyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsS0FBSyxTQUFTLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQTtBQUNoRixDQUFDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUaW1lem9uZSwgVGltZXpvbmVUeXBlIH0gZnJvbSAnLi4vZW51bS90aW1lem9uZSc7XHJcblxyXG5pbXBvcnQgZGF5anMgZnJvbSAnZGF5anMnO1xyXG5pbXBvcnQgdGltZXpvbmUgZnJvbSAnZGF5anMvcGx1Z2luL3RpbWV6b25lJztcclxuaW1wb3J0IHV0YyBmcm9tICdkYXlqcy9wbHVnaW4vdXRjJztcclxuXHJcbmV4cG9ydCBjb25zdCBmb3JtYXR0aW5nVG9Nb3Njb3dUaW1lem9uZSA9IChkYXRlOiBhbnksIHR6OiBUaW1lem9uZVR5cGUpOiBzdHJpbmcgPT4ge1xyXG4gIGRheWpzLmV4dGVuZCh1dGMpXHJcbiAgZGF5anMuZXh0ZW5kKHRpbWV6b25lKVxyXG5cclxuICByZXR1cm4gZGF5anMudXRjKGRhdGUpLnV0Y09mZnNldChUaW1lem9uZVt0el0sIHR6ICE9PSAnZGVmYXVsdCcpLnRvSVNPU3RyaW5nKClcclxufVxyXG4iXX0=
@@ -0,0 +1,60 @@
1
+ import dayjs from 'dayjs';
2
+ import customParseFormat from 'dayjs/plugin/customParseFormat';
3
+ dayjs.extend(customParseFormat);
4
+ export const validateDateModel = (value) => {
5
+ const splitDateAndTime = value.split(' ');
6
+ const dateArray = splitDateAndTime[0].split('.');
7
+ const day = validateDay(dateArray[0]) || '';
8
+ const month = validateMonth(dateArray[1]) || '';
9
+ const year = dateArray[2] || '';
10
+ return {
11
+ view: `${day}${month ? '.' + month : ''}${year ? '.' + year : value[5] ? '.' + '' : ''}`,
12
+ day: day,
13
+ month: month,
14
+ year: year,
15
+ invalid: !(dayjs(`${dateArray[2]}-${dateArray[1]}-${dateArray[0]}`, 'YYYY-MM-DD').isValid() && splitDateAndTime[0].length === 10)
16
+ };
17
+ };
18
+ export const validateTimeModel = (value) => {
19
+ const splitDateAndTime = value.split(' ');
20
+ const timeArray = splitDateAndTime[1] ? splitDateAndTime[1].split(':') : '';
21
+ const hour = validateHours(timeArray[0]) || '';
22
+ const minutes = validateMinutes(timeArray[1]) || '';
23
+ return {
24
+ view: `${hour}${minutes ? ':' + minutes : ''}`,
25
+ hour: hour,
26
+ minute: minutes,
27
+ invalid: !!splitDateAndTime[1] ? splitDateAndTime[1].length !== 5 : true
28
+ };
29
+ };
30
+ export const validateDay = (value) => {
31
+ if (Number(value) > 31) {
32
+ return '31';
33
+ }
34
+ if (value === '00') {
35
+ return '01';
36
+ }
37
+ return value;
38
+ };
39
+ export const validateMonth = (value) => {
40
+ if (Number(value) > 12) {
41
+ return '12';
42
+ }
43
+ if (value === '00') {
44
+ return '01';
45
+ }
46
+ return value;
47
+ };
48
+ export const validateHours = (value) => {
49
+ if (Number(value) > 23) {
50
+ return '23';
51
+ }
52
+ return value;
53
+ };
54
+ export const validateMinutes = (value) => {
55
+ if (Number(value) > 59) {
56
+ return '59';
57
+ }
58
+ return value;
59
+ };
60
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdGUtdmFsdWUtbW9kZWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXlydGEtdWkvc3JjL2xpYi9jb21wb25lbnRzL2Zvcm0vaW5wdXQtZGF0ZS10aW1lL2hlbHBlcnMvdmFsaWRhdGUtdmFsdWUtbW9kZWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxNQUFNLE9BQU8sQ0FBQztBQUMxQixPQUFPLGlCQUFpQixNQUFNLGdDQUFnQyxDQUFDO0FBRS9ELEtBQUssQ0FBQyxNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQTtBQUUvQixNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxDQUFDLEtBQWEsRUFBYSxFQUFFO0lBQzVELE1BQU0sZ0JBQWdCLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQTtJQUN6QyxNQUFNLFNBQVMsR0FBRyxnQkFBZ0IsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUE7SUFDaEQsTUFBTSxHQUFHLEdBQUcsV0FBVyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQTtJQUMzQyxNQUFNLEtBQUssR0FBRyxhQUFhLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFBO0lBQy9DLE1BQU0sSUFBSSxHQUFHLFNBQVMsQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUE7SUFFL0IsT0FBTztRQUNMLElBQUksRUFBRSxHQUFHLEdBQUcsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLEdBQUcsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO1FBQ3hGLEdBQUcsRUFBRSxHQUFHO1FBQ1IsS0FBSyxFQUFFLEtBQUs7UUFDWixJQUFJLEVBQUUsSUFBSTtRQUNWLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLEdBQUcsU0FBUyxDQUFDLENBQUMsQ0FBQyxJQUFJLFNBQVMsQ0FBQyxDQUFDLENBQUMsSUFBSSxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxZQUFZLENBQUMsQ0FBQyxPQUFPLEVBQUUsSUFBSSxnQkFBZ0IsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLEtBQUssRUFBRSxDQUFDO0tBQ2xJLENBQUE7QUFDSCxDQUFDLENBQUE7QUFFRCxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxDQUFDLEtBQWEsRUFBYSxFQUFFO0lBQzVELE1BQU0sZ0JBQWdCLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQTtJQUN6QyxNQUFNLFNBQVMsR0FBRyxnQkFBZ0IsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUE7SUFDM0UsTUFBTSxJQUFJLEdBQUcsYUFBYSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQTtJQUM5QyxNQUFNLE9BQU8sR0FBRyxlQUFlLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFBO0lBRW5ELE9BQU87UUFDTCxJQUFJLEVBQUUsR0FBRyxJQUFJLEdBQUcsT0FBTyxDQUFDLENBQUMsQ0FBQyxHQUFHLEdBQUcsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7UUFDOUMsSUFBSSxFQUFFLElBQUk7UUFDVixNQUFNLEVBQUUsT0FBTztRQUNmLE9BQU8sRUFBRSxDQUFDLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUk7S0FDekUsQ0FBQTtBQUNILENBQUMsQ0FBQTtBQUVELE1BQU0sQ0FBQyxNQUFNLFdBQVcsR0FBRyxDQUFDLEtBQWEsRUFBVSxFQUFFO0lBQ25ELElBQUksTUFBTSxDQUFDLEtBQUssQ0FBQyxHQUFHLEVBQUUsRUFBRTtRQUN0QixPQUFPLElBQUksQ0FBQTtLQUNaO0lBQ0QsSUFBSSxLQUFLLEtBQUssSUFBSSxFQUFFO1FBQ2xCLE9BQU8sSUFBSSxDQUFBO0tBQ1o7SUFDRCxPQUFPLEtBQUssQ0FBQTtBQUNkLENBQUMsQ0FBQTtBQUVELE1BQU0sQ0FBQyxNQUFNLGFBQWEsR0FBRyxDQUFDLEtBQWEsRUFBVSxFQUFFO0lBQ3JELElBQUksTUFBTSxDQUFDLEtBQUssQ0FBQyxHQUFHLEVBQUUsRUFBRTtRQUN0QixPQUFPLElBQUksQ0FBQTtLQUNaO0lBQ0QsSUFBSSxLQUFLLEtBQUssSUFBSSxFQUFFO1FBQ2xCLE9BQU8sSUFBSSxDQUFBO0tBQ1o7SUFDRCxPQUFPLEtBQUssQ0FBQTtBQUNkLENBQUMsQ0FBQTtBQUdELE1BQU0sQ0FBQyxNQUFNLGFBQWEsR0FBRyxDQUFDLEtBQWEsRUFBVSxFQUFFO0lBQ3JELElBQUksTUFBTSxDQUFDLEtBQUssQ0FBQyxHQUFHLEVBQUUsRUFBRTtRQUN0QixPQUFPLElBQUksQ0FBQTtLQUNaO0lBQ0QsT0FBTyxLQUFLLENBQUE7QUFDZCxDQUFDLENBQUE7QUFFRCxNQUFNLENBQUMsTUFBTSxlQUFlLEdBQUcsQ0FBQyxLQUFhLEVBQVUsRUFBRTtJQUN2RCxJQUFJLE1BQU0sQ0FBQyxLQUFLLENBQUMsR0FBRyxFQUFFLEVBQUU7UUFDdEIsT0FBTyxJQUFJLENBQUE7S0FDWjtJQUNELE9BQU8sS0FBSyxDQUFBO0FBQ2QsQ0FBQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGRheWpzIGZyb20gJ2RheWpzJztcclxuaW1wb3J0IGN1c3RvbVBhcnNlRm9ybWF0IGZyb20gJ2RheWpzL3BsdWdpbi9jdXN0b21QYXJzZUZvcm1hdCc7XHJcblxyXG5kYXlqcy5leHRlbmQoY3VzdG9tUGFyc2VGb3JtYXQpXHJcblxyXG5leHBvcnQgY29uc3QgdmFsaWRhdGVEYXRlTW9kZWwgPSAodmFsdWU6IHN0cmluZyk6IERhdGVNb2RlbCA9PiB7XHJcbiAgY29uc3Qgc3BsaXREYXRlQW5kVGltZSA9IHZhbHVlLnNwbGl0KCcgJylcclxuICBjb25zdCBkYXRlQXJyYXkgPSBzcGxpdERhdGVBbmRUaW1lWzBdLnNwbGl0KCcuJylcclxuICBjb25zdCBkYXkgPSB2YWxpZGF0ZURheShkYXRlQXJyYXlbMF0pIHx8ICcnXHJcbiAgY29uc3QgbW9udGggPSB2YWxpZGF0ZU1vbnRoKGRhdGVBcnJheVsxXSkgfHwgJydcclxuICBjb25zdCB5ZWFyID0gZGF0ZUFycmF5WzJdIHx8ICcnXHJcblxyXG4gIHJldHVybiB7XHJcbiAgICB2aWV3OiBgJHtkYXl9JHttb250aCA/ICcuJyArIG1vbnRoIDogJyd9JHt5ZWFyID8gJy4nICsgeWVhciA6IHZhbHVlWzVdID8gJy4nICsgJycgOiAnJ31gLFxyXG4gICAgZGF5OiBkYXksXHJcbiAgICBtb250aDogbW9udGgsXHJcbiAgICB5ZWFyOiB5ZWFyLFxyXG4gICAgaW52YWxpZDogIShkYXlqcyhgJHtkYXRlQXJyYXlbMl19LSR7ZGF0ZUFycmF5WzFdfS0ke2RhdGVBcnJheVswXX1gLCAnWVlZWS1NTS1ERCcpLmlzVmFsaWQoKSAmJiBzcGxpdERhdGVBbmRUaW1lWzBdLmxlbmd0aCA9PT0gMTApXHJcbiAgfVxyXG59XHJcblxyXG5leHBvcnQgY29uc3QgdmFsaWRhdGVUaW1lTW9kZWwgPSAodmFsdWU6IHN0cmluZyk6IFRpbWVNb2RlbCA9PiB7XHJcbiAgY29uc3Qgc3BsaXREYXRlQW5kVGltZSA9IHZhbHVlLnNwbGl0KCcgJylcclxuICBjb25zdCB0aW1lQXJyYXkgPSBzcGxpdERhdGVBbmRUaW1lWzFdID8gc3BsaXREYXRlQW5kVGltZVsxXS5zcGxpdCgnOicpIDogJydcclxuICBjb25zdCBob3VyID0gdmFsaWRhdGVIb3Vycyh0aW1lQXJyYXlbMF0pIHx8ICcnXHJcbiAgY29uc3QgbWludXRlcyA9IHZhbGlkYXRlTWludXRlcyh0aW1lQXJyYXlbMV0pIHx8ICcnXHJcblxyXG4gIHJldHVybiB7XHJcbiAgICB2aWV3OiBgJHtob3VyfSR7bWludXRlcyA/ICc6JyArIG1pbnV0ZXMgOiAnJ31gLFxyXG4gICAgaG91cjogaG91cixcclxuICAgIG1pbnV0ZTogbWludXRlcyxcclxuICAgIGludmFsaWQ6ICEhc3BsaXREYXRlQW5kVGltZVsxXSA/IHNwbGl0RGF0ZUFuZFRpbWVbMV0ubGVuZ3RoICE9PSA1IDogdHJ1ZVxyXG4gIH1cclxufVxyXG5cclxuZXhwb3J0IGNvbnN0IHZhbGlkYXRlRGF5ID0gKHZhbHVlOiBzdHJpbmcpOiBzdHJpbmcgPT4ge1xyXG4gIGlmIChOdW1iZXIodmFsdWUpID4gMzEpIHtcclxuICAgIHJldHVybiAnMzEnXHJcbiAgfVxyXG4gIGlmICh2YWx1ZSA9PT0gJzAwJykge1xyXG4gICAgcmV0dXJuICcwMSdcclxuICB9XHJcbiAgcmV0dXJuIHZhbHVlXHJcbn1cclxuXHJcbmV4cG9ydCBjb25zdCB2YWxpZGF0ZU1vbnRoID0gKHZhbHVlOiBzdHJpbmcpOiBzdHJpbmcgPT4ge1xyXG4gIGlmIChOdW1iZXIodmFsdWUpID4gMTIpIHtcclxuICAgIHJldHVybiAnMTInXHJcbiAgfVxyXG4gIGlmICh2YWx1ZSA9PT0gJzAwJykge1xyXG4gICAgcmV0dXJuICcwMSdcclxuICB9XHJcbiAgcmV0dXJuIHZhbHVlXHJcbn1cclxuXHJcblxyXG5leHBvcnQgY29uc3QgdmFsaWRhdGVIb3VycyA9ICh2YWx1ZTogc3RyaW5nKTogc3RyaW5nID0+IHtcclxuICBpZiAoTnVtYmVyKHZhbHVlKSA+IDIzKSB7XHJcbiAgICByZXR1cm4gJzIzJ1xyXG4gIH1cclxuICByZXR1cm4gdmFsdWVcclxufVxyXG5cclxuZXhwb3J0IGNvbnN0IHZhbGlkYXRlTWludXRlcyA9ICh2YWx1ZTogc3RyaW5nKTogc3RyaW5nID0+IHtcclxuICBpZiAoTnVtYmVyKHZhbHVlKSA+IDU5KSB7XHJcbiAgICByZXR1cm4gJzU5J1xyXG4gIH1cclxuICByZXR1cm4gdmFsdWVcclxufVxyXG5cclxuZXhwb3J0IHR5cGUgRGF0ZU1vZGVsID0ge1xyXG4gIHZpZXc6IHN0cmluZyxcclxuICBkYXk6IHN0cmluZyxcclxuICBtb250aDogc3RyaW5nLFxyXG4gIHllYXI6IHN0cmluZyxcclxuICBpbnZhbGlkOiBib29sZWFuXHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIFRpbWVNb2RlbCA9IHtcclxuICB2aWV3OiBzdHJpbmcsXHJcbiAgaG91cjogc3RyaW5nLFxyXG4gIG1pbnV0ZTogc3RyaW5nLFxyXG4gIGludmFsaWQ6IGJvb2xlYW5cclxufVxyXG4iXX0=
@@ -0,0 +1,39 @@
1
+ import { Timezone } from '../enum/timezone';
2
+ import dayjs from 'dayjs';
3
+ import tz from 'dayjs/plugin/timezone';
4
+ import utc from 'dayjs/plugin/utc';
5
+ export const dateModelValueParse = (value, timezone) => {
6
+ dayjs.extend(utc);
7
+ dayjs.extend(tz);
8
+ const date = timezone === 'default' ? dayjs(value) : dayjs.utc(value).utcOffset(Timezone[timezone]);
9
+ const day = date.date();
10
+ const month = date.month() + 1;
11
+ const year = date.year();
12
+ const formattedDay = String(day).length === 2 ? String(day) : String('0' + day);
13
+ const formattedMonth = String(month).length === 2 ? String(month) : String('0' + month);
14
+ const dateString = `${String(year)}.${String(formattedMonth)}.${String(formattedDay)}`;
15
+ return {
16
+ view: dayjs(dateString).format('DD.MM.YYYY'),
17
+ day: formattedDay,
18
+ month: formattedMonth,
19
+ year: String(year),
20
+ invalid: !(dayjs(dateString).isValid() && dateString.length === 10)
21
+ };
22
+ };
23
+ export const timeModelValueParse = (value, timezone) => {
24
+ dayjs.extend(utc);
25
+ dayjs.extend(tz);
26
+ const date = timezone === 'default' ? dayjs(value) : dayjs.utc(value).utcOffset(Timezone[timezone]);
27
+ const hour = date.hour();
28
+ const minute = date.minute();
29
+ const formattedHour = String(hour).length === 2 ? String(hour) : String('0' + hour);
30
+ const formattedMinute = String(minute).length === 2 ? String(minute) : String('0' + minute);
31
+ const timeString = `${formattedHour}:${formattedMinute}`;
32
+ return {
33
+ view: timeString,
34
+ hour: formattedHour,
35
+ minute: formattedMinute,
36
+ invalid: timeString.length !== 5
37
+ };
38
+ };
39
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsdWUtcGFyc2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXlydGEtdWkvc3JjL2xpYi9jb21wb25lbnRzL2Zvcm0vaW5wdXQtZGF0ZS10aW1lL2hlbHBlcnMvdmFsdWUtcGFyc2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxRQUFRLEVBQWdCLE1BQU0sa0JBQWtCLENBQUM7QUFDMUQsT0FBTyxLQUFLLE1BQU0sT0FBTyxDQUFDO0FBQzFCLE9BQU8sRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3ZDLE9BQU8sR0FBRyxNQUFNLGtCQUFrQixDQUFDO0FBRW5DLE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFHLENBQUMsS0FBYSxFQUFFLFFBQXNCLEVBQWEsRUFBRTtJQUN0RixLQUFLLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFBO0lBQ2pCLEtBQUssQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUE7SUFFaEIsTUFBTSxJQUFJLEdBQUcsUUFBUSxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQTtJQUNuRyxNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUE7SUFDdkIsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssRUFBRSxHQUFHLENBQUMsQ0FBQTtJQUM5QixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUE7SUFDeEIsTUFBTSxZQUFZLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLE1BQU0sS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLEdBQUcsR0FBRyxHQUFHLENBQUMsQ0FBQTtJQUMvRSxNQUFNLGNBQWMsR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsTUFBTSxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsR0FBRyxHQUFHLEtBQUssQ0FBQyxDQUFBO0lBQ3ZGLE1BQU0sVUFBVSxHQUFHLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLE1BQU0sQ0FBQyxjQUFjLENBQUMsSUFBSSxNQUFNLENBQUMsWUFBWSxDQUFDLEVBQUUsQ0FBQTtJQUV0RixPQUFPO1FBQ0wsSUFBSSxFQUFFLEtBQUssQ0FBQyxVQUFVLENBQUMsQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDO1FBQzVDLEdBQUcsRUFBRSxZQUFZO1FBQ2pCLEtBQUssRUFBRSxjQUFjO1FBQ3JCLElBQUksRUFBRSxNQUFNLENBQUMsSUFBSSxDQUFDO1FBQ2xCLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxDQUFDLE9BQU8sRUFBRSxJQUFJLFVBQVUsQ0FBQyxNQUFNLEtBQUssRUFBRSxDQUFDO0tBQ3BFLENBQUE7QUFDSCxDQUFDLENBQUE7QUFFRCxNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBRyxDQUFDLEtBQWEsRUFBRSxRQUFzQixFQUFhLEVBQUU7SUFDdEYsS0FBSyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQTtJQUNqQixLQUFLLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFBO0lBRWhCLE1BQU0sSUFBSSxHQUFHLFFBQVEsS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUE7SUFFbkcsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFBO0lBQ3hCLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQTtJQUM1QixNQUFNLGFBQWEsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsTUFBTSxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsR0FBRyxHQUFHLElBQUksQ0FBQyxDQUFBO0lBQ25GLE1BQU0sZUFBZSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFNLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxHQUFHLEdBQUcsTUFBTSxDQUFDLENBQUE7SUFDM0YsTUFBTSxVQUFVLEdBQUcsR0FBRyxhQUFhLElBQUksZUFBZSxFQUFFLENBQUE7SUFFeEQsT0FBTztRQUNMLElBQUksRUFBRSxVQUFVO1FBQ2hCLElBQUksRUFBRSxhQUFhO1FBQ25CLE1BQU0sRUFBRSxlQUFlO1FBQ3ZCLE9BQU8sRUFBRSxVQUFVLENBQUMsTUFBTSxLQUFLLENBQUM7S0FDakMsQ0FBQTtBQUNILENBQUMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERhdGVNb2RlbCwgVGltZU1vZGVsIH0gZnJvbSAnLi92YWxpZGF0ZS12YWx1ZS1tb2RlbHMnO1xyXG5pbXBvcnQgeyBUaW1lem9uZSwgVGltZXpvbmVUeXBlIH0gZnJvbSAnLi4vZW51bS90aW1lem9uZSc7XHJcbmltcG9ydCBkYXlqcyBmcm9tICdkYXlqcyc7XHJcbmltcG9ydCB0eiBmcm9tICdkYXlqcy9wbHVnaW4vdGltZXpvbmUnO1xyXG5pbXBvcnQgdXRjIGZyb20gJ2RheWpzL3BsdWdpbi91dGMnO1xyXG5cclxuZXhwb3J0IGNvbnN0IGRhdGVNb2RlbFZhbHVlUGFyc2UgPSAodmFsdWU6IHN0cmluZywgdGltZXpvbmU6IFRpbWV6b25lVHlwZSk6IERhdGVNb2RlbCA9PiB7XHJcbiAgZGF5anMuZXh0ZW5kKHV0YylcclxuICBkYXlqcy5leHRlbmQodHopXHJcblxyXG4gIGNvbnN0IGRhdGUgPSB0aW1lem9uZSA9PT0gJ2RlZmF1bHQnID8gZGF5anModmFsdWUpIDogZGF5anMudXRjKHZhbHVlKS51dGNPZmZzZXQoVGltZXpvbmVbdGltZXpvbmVdKVxyXG4gIGNvbnN0IGRheSA9IGRhdGUuZGF0ZSgpXHJcbiAgY29uc3QgbW9udGggPSBkYXRlLm1vbnRoKCkgKyAxXHJcbiAgY29uc3QgeWVhciA9IGRhdGUueWVhcigpXHJcbiAgY29uc3QgZm9ybWF0dGVkRGF5ID0gU3RyaW5nKGRheSkubGVuZ3RoID09PSAyID8gU3RyaW5nKGRheSkgOiBTdHJpbmcoJzAnICsgZGF5KVxyXG4gIGNvbnN0IGZvcm1hdHRlZE1vbnRoID0gU3RyaW5nKG1vbnRoKS5sZW5ndGggPT09IDIgPyBTdHJpbmcobW9udGgpIDogU3RyaW5nKCcwJyArIG1vbnRoKVxyXG4gIGNvbnN0IGRhdGVTdHJpbmcgPSBgJHtTdHJpbmcoeWVhcil9LiR7U3RyaW5nKGZvcm1hdHRlZE1vbnRoKX0uJHtTdHJpbmcoZm9ybWF0dGVkRGF5KX1gXHJcblxyXG4gIHJldHVybiB7XHJcbiAgICB2aWV3OiBkYXlqcyhkYXRlU3RyaW5nKS5mb3JtYXQoJ0RELk1NLllZWVknKSxcclxuICAgIGRheTogZm9ybWF0dGVkRGF5LFxyXG4gICAgbW9udGg6IGZvcm1hdHRlZE1vbnRoLFxyXG4gICAgeWVhcjogU3RyaW5nKHllYXIpLFxyXG4gICAgaW52YWxpZDogIShkYXlqcyhkYXRlU3RyaW5nKS5pc1ZhbGlkKCkgJiYgZGF0ZVN0cmluZy5sZW5ndGggPT09IDEwKVxyXG4gIH1cclxufVxyXG5cclxuZXhwb3J0IGNvbnN0IHRpbWVNb2RlbFZhbHVlUGFyc2UgPSAodmFsdWU6IHN0cmluZywgdGltZXpvbmU6IFRpbWV6b25lVHlwZSk6IFRpbWVNb2RlbCA9PiB7XHJcbiAgZGF5anMuZXh0ZW5kKHV0YylcclxuICBkYXlqcy5leHRlbmQodHopXHJcblxyXG4gIGNvbnN0IGRhdGUgPSB0aW1lem9uZSA9PT0gJ2RlZmF1bHQnID8gZGF5anModmFsdWUpIDogZGF5anMudXRjKHZhbHVlKS51dGNPZmZzZXQoVGltZXpvbmVbdGltZXpvbmVdKVxyXG5cclxuICBjb25zdCBob3VyID0gZGF0ZS5ob3VyKClcclxuICBjb25zdCBtaW51dGUgPSBkYXRlLm1pbnV0ZSgpXHJcbiAgY29uc3QgZm9ybWF0dGVkSG91ciA9IFN0cmluZyhob3VyKS5sZW5ndGggPT09IDIgPyBTdHJpbmcoaG91cikgOiBTdHJpbmcoJzAnICsgaG91cilcclxuICBjb25zdCBmb3JtYXR0ZWRNaW51dGUgPSBTdHJpbmcobWludXRlKS5sZW5ndGggPT09IDIgPyBTdHJpbmcobWludXRlKSA6IFN0cmluZygnMCcgKyBtaW51dGUpXHJcbiAgY29uc3QgdGltZVN0cmluZyA9IGAke2Zvcm1hdHRlZEhvdXJ9OiR7Zm9ybWF0dGVkTWludXRlfWBcclxuXHJcbiAgcmV0dXJuIHtcclxuICAgIHZpZXc6IHRpbWVTdHJpbmcsXHJcbiAgICBob3VyOiBmb3JtYXR0ZWRIb3VyLFxyXG4gICAgbWludXRlOiBmb3JtYXR0ZWRNaW51dGUsXHJcbiAgICBpbnZhbGlkOiB0aW1lU3RyaW5nLmxlbmd0aCAhPT0gNVxyXG4gIH1cclxufVxyXG4iXX0=