@onemrvapublic/design-system 18.2.16-develop.9 → 18.2.16
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/esm2022/shared/index.mjs +1 -2
- package/esm2022/shared/src/lib/adapters/index.mjs +1 -2
- package/esm2022/shared/src/lib/adapters/luxon.date.adapter.mjs +10 -5
- package/esm2022/shared/src/lib/providers/onemrva.date.luxon.year.month.provider.mjs +2 -2
- package/esm2022/shared/src/lib/providers/onemrva.date.native.year.month.provider.mjs +2 -2
- package/fesm2022/onemrvapublic-design-system-shared.mjs +13 -138
- package/fesm2022/onemrvapublic-design-system-shared.mjs.map +1 -1
- package/package.json +1 -1
- package/shared/index.d.ts +0 -1
- package/shared/src/lib/adapters/index.d.ts +0 -1
- package/esm2022/shared/src/lib/adapters/luxon.year-month.date.adapter.mjs +0 -248
- package/esm2022/shared/src/lib/adapters/native.year-month.date.adapter.mjs +0 -59
- package/esm2022/shared/src/lib/modules/index.mjs +0 -3
- package/esm2022/shared/src/lib/modules/shared.datepicker.luxon.module.mjs +0 -46
- package/esm2022/shared/src/lib/modules/shared.datepicker.luxon.year.month.module.mjs +0 -46
- package/shared/src/lib/adapters/luxon.year-month.date.adapter.d.ts +0 -50
- package/shared/src/lib/adapters/native.year-month.date.adapter.d.ts +0 -15
- package/shared/src/lib/modules/index.d.ts +0 -2
- package/shared/src/lib/modules/shared.datepicker.luxon.module.d.ts +0 -12
- package/shared/src/lib/modules/shared.datepicker.luxon.year.month.module.d.ts +0 -12
package/package.json
CHANGED
package/shared/index.d.ts
CHANGED
|
@@ -10,6 +10,5 @@ export * from './src/lib/pipes';
|
|
|
10
10
|
export * from './src/lib/services';
|
|
11
11
|
export * from './src/lib/validators';
|
|
12
12
|
export * from './src/lib/shared.module';
|
|
13
|
-
export * from './src/lib/modules';
|
|
14
13
|
export * from './src/lib/adapters';
|
|
15
14
|
export * from './src/lib/providers';
|
|
@@ -1,248 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @license
|
|
3
|
-
* Copyright Google LLC All Rights Reserved.
|
|
4
|
-
*
|
|
5
|
-
* Use of this source code is governed by an MIT-style license that can be
|
|
6
|
-
* found in the LICENSE file at https://angular.dev/license
|
|
7
|
-
*/
|
|
8
|
-
import { Injectable, inject } from '@angular/core';
|
|
9
|
-
import { DateAdapter, MAT_DATE_LOCALE } from '@angular/material/core';
|
|
10
|
-
import { DateTime as LuxonDateTime, Info as LuxonInfo, } from 'luxon';
|
|
11
|
-
import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
|
|
12
|
-
import { luxonRange, MAT_LUXON_DATE_ADAPTER_OPTIONS, } from './luxon.utils';
|
|
13
|
-
import * as i0 from "@angular/core";
|
|
14
|
-
import * as i1 from "@ngx-translate/core";
|
|
15
|
-
/** Adapts Luxon Dates for use with Angular Material. */
|
|
16
|
-
export class OnemrvaLuxonYearMonthDateAdapter extends DateAdapter {
|
|
17
|
-
constructor(translateService) {
|
|
18
|
-
super();
|
|
19
|
-
this.translateService = translateService;
|
|
20
|
-
const dateLocale = inject(MAT_DATE_LOCALE, { optional: true });
|
|
21
|
-
const options = inject(MAT_LUXON_DATE_ADAPTER_OPTIONS, {
|
|
22
|
-
optional: true,
|
|
23
|
-
});
|
|
24
|
-
this._useUTC = !!options?.useUtc;
|
|
25
|
-
this._firstDayOfWeek = options?.firstDayOfWeek || 0;
|
|
26
|
-
this._defaultOutputCalendar = options?.defaultOutputCalendar || 'gregory';
|
|
27
|
-
this.setLocale(dateLocale || LuxonDateTime.local().locale);
|
|
28
|
-
this.setLocale(this.translateService.currentLang);
|
|
29
|
-
if (this.translateService !== undefined) {
|
|
30
|
-
this.translateService.onLangChange
|
|
31
|
-
.pipe(takeUntilDestroyed())
|
|
32
|
-
.subscribe(({ lang }) => {
|
|
33
|
-
this.setLocale(lang);
|
|
34
|
-
});
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
getYear(date) {
|
|
38
|
-
return date.year;
|
|
39
|
-
}
|
|
40
|
-
getMonth(date) {
|
|
41
|
-
// Luxon works with 1-indexed months whereas our code expects 0-indexed.
|
|
42
|
-
return date.month - 1;
|
|
43
|
-
}
|
|
44
|
-
getDate(date) {
|
|
45
|
-
return date.day;
|
|
46
|
-
}
|
|
47
|
-
getDayOfWeek(date) {
|
|
48
|
-
return date.weekday;
|
|
49
|
-
}
|
|
50
|
-
getMonthNames(style) {
|
|
51
|
-
// Adding outputCalendar option, because LuxonInfo doesn't get effected by LuxonSettings
|
|
52
|
-
return LuxonInfo.months(style, {
|
|
53
|
-
locale: this.locale,
|
|
54
|
-
outputCalendar: this._defaultOutputCalendar,
|
|
55
|
-
});
|
|
56
|
-
}
|
|
57
|
-
getDateNames() {
|
|
58
|
-
// At the time of writing, Luxon doesn't offer similar
|
|
59
|
-
// functionality so we have to fall back to the Intl API.
|
|
60
|
-
const dtf = new Intl.DateTimeFormat(this.locale, {
|
|
61
|
-
day: 'numeric',
|
|
62
|
-
timeZone: 'utc',
|
|
63
|
-
});
|
|
64
|
-
// Format a UTC date in order to avoid DST issues.
|
|
65
|
-
return luxonRange(31, i => dtf.format(LuxonDateTime.utc(2017, 1, i + 1).toJSDate()));
|
|
66
|
-
}
|
|
67
|
-
getDayOfWeekNames(style) {
|
|
68
|
-
// Note that we shift the array once, because Luxon returns Monday as the
|
|
69
|
-
// first day of the week, whereas our logic assumes that it's Sunday. See:
|
|
70
|
-
// https://moment.github.io/luxon/api-docs/index.html#infoweekdays
|
|
71
|
-
const days = LuxonInfo.weekdays(style, { locale: this.locale });
|
|
72
|
-
days.unshift(days.pop());
|
|
73
|
-
return days;
|
|
74
|
-
}
|
|
75
|
-
getYearName(date) {
|
|
76
|
-
return date.toFormat('yyyy', this._getOptions());
|
|
77
|
-
}
|
|
78
|
-
getFirstDayOfWeek() {
|
|
79
|
-
return this._firstDayOfWeek;
|
|
80
|
-
}
|
|
81
|
-
getNumDaysInMonth(date) {
|
|
82
|
-
return date.daysInMonth;
|
|
83
|
-
}
|
|
84
|
-
clone(date) {
|
|
85
|
-
return LuxonDateTime.fromObject(date.toObject(), this._getOptions());
|
|
86
|
-
}
|
|
87
|
-
createDate(year, month, date) {
|
|
88
|
-
const options = this._getOptions();
|
|
89
|
-
if (month < 0 || month > 11) {
|
|
90
|
-
throw Error(`Invalid month index "${month}". Month index has to be between 0 and 11.`);
|
|
91
|
-
}
|
|
92
|
-
if (date < 1) {
|
|
93
|
-
throw Error(`Invalid date "${date}". Date has to be greater than 0.`);
|
|
94
|
-
}
|
|
95
|
-
// Luxon uses 1-indexed months so we need to add one to the month.
|
|
96
|
-
const result = this._useUTC
|
|
97
|
-
? LuxonDateTime.utc(year, month + 1, date, options)
|
|
98
|
-
: LuxonDateTime.local(year, month + 1, date, options);
|
|
99
|
-
if (!this.isValid(result)) {
|
|
100
|
-
throw Error(`Invalid date "${date}". Reason: "${result.invalidReason}".`);
|
|
101
|
-
}
|
|
102
|
-
return result;
|
|
103
|
-
}
|
|
104
|
-
today() {
|
|
105
|
-
const options = this._getOptions();
|
|
106
|
-
return this._useUTC
|
|
107
|
-
? LuxonDateTime.utc(options)
|
|
108
|
-
: LuxonDateTime.local(options);
|
|
109
|
-
}
|
|
110
|
-
parse(value, parseFormat) {
|
|
111
|
-
const options = this._getOptions();
|
|
112
|
-
if (typeof value == 'string' && value.length > 0) {
|
|
113
|
-
const iso8601Date = LuxonDateTime.fromISO(value, options);
|
|
114
|
-
if (this.isValid(iso8601Date)) {
|
|
115
|
-
return iso8601Date;
|
|
116
|
-
}
|
|
117
|
-
const formats = Array.isArray(parseFormat) ? parseFormat : [parseFormat];
|
|
118
|
-
if (!parseFormat.length) {
|
|
119
|
-
throw Error('Formats array must not be empty.');
|
|
120
|
-
}
|
|
121
|
-
for (const format of formats) {
|
|
122
|
-
const fromFormat = LuxonDateTime.fromFormat(value, format, options);
|
|
123
|
-
if (this.isValid(fromFormat)) {
|
|
124
|
-
return fromFormat;
|
|
125
|
-
}
|
|
126
|
-
}
|
|
127
|
-
return this.invalid();
|
|
128
|
-
}
|
|
129
|
-
else if (typeof value === 'number') {
|
|
130
|
-
return LuxonDateTime.fromMillis(value, options);
|
|
131
|
-
}
|
|
132
|
-
else if (value instanceof Date) {
|
|
133
|
-
return LuxonDateTime.fromJSDate(value, options);
|
|
134
|
-
}
|
|
135
|
-
else if (value instanceof LuxonDateTime) {
|
|
136
|
-
return LuxonDateTime.fromMillis(value.toMillis(), options);
|
|
137
|
-
}
|
|
138
|
-
return null;
|
|
139
|
-
}
|
|
140
|
-
format(date, displayFormat) {
|
|
141
|
-
if (!this.isValid(date)) {
|
|
142
|
-
throw Error('LuxonDateAdapter: Cannot format invalid date.');
|
|
143
|
-
}
|
|
144
|
-
if (this._useUTC) {
|
|
145
|
-
return date.setLocale(this.locale).setZone('utc').toFormat(displayFormat);
|
|
146
|
-
}
|
|
147
|
-
else {
|
|
148
|
-
return date.setLocale(this.locale).toFormat(displayFormat);
|
|
149
|
-
}
|
|
150
|
-
}
|
|
151
|
-
addCalendarYears(date, years) {
|
|
152
|
-
return date.reconfigure(this._getOptions()).plus({ years });
|
|
153
|
-
}
|
|
154
|
-
addCalendarMonths(date, months) {
|
|
155
|
-
return date.reconfigure(this._getOptions()).plus({ months });
|
|
156
|
-
}
|
|
157
|
-
addCalendarDays(date, days) {
|
|
158
|
-
return date.reconfigure(this._getOptions()).plus({ days });
|
|
159
|
-
}
|
|
160
|
-
toIso8601(date) {
|
|
161
|
-
return date.toISO();
|
|
162
|
-
}
|
|
163
|
-
/**
|
|
164
|
-
* Returns the given value if given a valid Luxon or null. Deserializes valid ISO 8601 strings
|
|
165
|
-
* (https://www.ietf.org/rfc/rfc3339.txt) and valid Date objects into valid DateTime and empty
|
|
166
|
-
* string into null. Returns an invalid date for all other values.
|
|
167
|
-
*/
|
|
168
|
-
deserialize(value) {
|
|
169
|
-
const options = this._getOptions();
|
|
170
|
-
let date;
|
|
171
|
-
if (value instanceof Date) {
|
|
172
|
-
date = LuxonDateTime.fromJSDate(value, options);
|
|
173
|
-
}
|
|
174
|
-
if (typeof value === 'string') {
|
|
175
|
-
if (!value) {
|
|
176
|
-
return null;
|
|
177
|
-
}
|
|
178
|
-
date = LuxonDateTime.fromISO(value, options);
|
|
179
|
-
}
|
|
180
|
-
if (date && this.isValid(date)) {
|
|
181
|
-
return date;
|
|
182
|
-
}
|
|
183
|
-
return super.deserialize(value);
|
|
184
|
-
}
|
|
185
|
-
isDateInstance(obj) {
|
|
186
|
-
return obj instanceof LuxonDateTime;
|
|
187
|
-
}
|
|
188
|
-
isValid(date) {
|
|
189
|
-
return date.isValid;
|
|
190
|
-
}
|
|
191
|
-
invalid() {
|
|
192
|
-
return LuxonDateTime.invalid('Invalid Luxon DateTime object.');
|
|
193
|
-
}
|
|
194
|
-
setTime(target, hours, minutes, seconds) {
|
|
195
|
-
//if (typeof ngDevMode === 'undefined' || ngDevMode) {
|
|
196
|
-
if (hours < 0 || hours > 23) {
|
|
197
|
-
throw Error(`Invalid hours "${hours}". Hours value must be between 0 and 23.`);
|
|
198
|
-
}
|
|
199
|
-
if (minutes < 0 || minutes > 59) {
|
|
200
|
-
throw Error(`Invalid minutes "${minutes}". Minutes value must be between 0 and 59.`);
|
|
201
|
-
}
|
|
202
|
-
if (seconds < 0 || seconds > 59) {
|
|
203
|
-
throw Error(`Invalid seconds "${seconds}". Seconds value must be between 0 and 59.`);
|
|
204
|
-
}
|
|
205
|
-
//}
|
|
206
|
-
return this.clone(target).set({
|
|
207
|
-
hour: hours,
|
|
208
|
-
minute: minutes,
|
|
209
|
-
second: seconds,
|
|
210
|
-
millisecond: 0,
|
|
211
|
-
});
|
|
212
|
-
}
|
|
213
|
-
getHours(date) {
|
|
214
|
-
return date.hour;
|
|
215
|
-
}
|
|
216
|
-
getMinutes(date) {
|
|
217
|
-
return date.minute;
|
|
218
|
-
}
|
|
219
|
-
getSeconds(date) {
|
|
220
|
-
return date.second;
|
|
221
|
-
}
|
|
222
|
-
parseTime(value, parseFormat) {
|
|
223
|
-
const result = this.parse(value, parseFormat);
|
|
224
|
-
if ((!result || !this.isValid(result)) && typeof value === 'string') {
|
|
225
|
-
// It seems like Luxon doesn't work well cross-browser for strings that have
|
|
226
|
-
// additional characters around the time. Try parsing without those characters.
|
|
227
|
-
return (this.parse(value.replace(/[^0-9:(AM|PM)]/gi, ''), parseFormat) || result);
|
|
228
|
-
}
|
|
229
|
-
return result;
|
|
230
|
-
}
|
|
231
|
-
addSeconds(date, amount) {
|
|
232
|
-
return date.reconfigure(this._getOptions()).plus({ seconds: amount });
|
|
233
|
-
}
|
|
234
|
-
/** Gets the options that should be used when constructing a new `DateTime` object. */
|
|
235
|
-
_getOptions() {
|
|
236
|
-
return {
|
|
237
|
-
zone: this._useUTC ? 'utc' : undefined,
|
|
238
|
-
locale: this.locale,
|
|
239
|
-
outputCalendar: this._defaultOutputCalendar,
|
|
240
|
-
};
|
|
241
|
-
}
|
|
242
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: OnemrvaLuxonYearMonthDateAdapter, deps: [{ token: i1.TranslateService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
243
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: OnemrvaLuxonYearMonthDateAdapter }); }
|
|
244
|
-
}
|
|
245
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: OnemrvaLuxonYearMonthDateAdapter, decorators: [{
|
|
246
|
-
type: Injectable
|
|
247
|
-
}], ctorParameters: () => [{ type: i1.TranslateService }] });
|
|
248
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibHV4b24ueWVhci1tb250aC5kYXRlLmFkYXB0ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vbmVtcnZhL2Rlc2lnbi1zeXN0ZW0vc2hhcmVkL3NyYy9saWIvYWRhcHRlcnMvbHV4b24ueWVhci1tb250aC5kYXRlLmFkYXB0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7OztHQU1HO0FBRUgsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLFdBQVcsRUFBRSxlQUFlLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN0RSxPQUFPLEVBQ0wsUUFBUSxJQUFJLGFBQWEsRUFDekIsSUFBSSxJQUFJLFNBQVMsR0FHbEIsTUFBTSxPQUFPLENBQUM7QUFFZixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNoRSxPQUFPLEVBQ0wsVUFBVSxFQUNWLDhCQUE4QixHQUUvQixNQUFNLGVBQWUsQ0FBQzs7O0FBRXZCLHdEQUF3RDtBQUV4RCxNQUFNLE9BQU8sZ0NBQWlDLFNBQVEsV0FBMEI7SUFLOUUsWUFBb0IsZ0JBQWtDO1FBQ3BELEtBQUssRUFBRSxDQUFDO1FBRFUscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUdwRCxNQUFNLFVBQVUsR0FBRyxNQUFNLENBQUMsZUFBZSxFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7UUFDL0QsTUFBTSxPQUFPLEdBQUcsTUFBTSxDQUNwQiw4QkFBOEIsRUFDOUI7WUFDRSxRQUFRLEVBQUUsSUFBSTtTQUNmLENBQ0YsQ0FBQztRQUVGLElBQUksQ0FBQyxPQUFPLEdBQUcsQ0FBQyxDQUFDLE9BQU8sRUFBRSxNQUFNLENBQUM7UUFDakMsSUFBSSxDQUFDLGVBQWUsR0FBRyxPQUFPLEVBQUUsY0FBYyxJQUFJLENBQUMsQ0FBQztRQUNw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QUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFJLE9BQU8sS0FBSyxLQUFLLFFBQVEsRUFBRSxDQUFDO1lBQ3BFLDRFQUE0RTtZQUM1RSwrRUFBK0U7WUFDL0UsT0FBTyxDQUNMLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxrQkFBa0IsRUFBRSxFQUFFLENBQUMsRUFBRSxXQUFXLENBQUMsSUFBSSxNQUFNLENBQ3pFLENBQUM7UUFDSixDQUFDO1FBRUQsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQztJQUVELFVBQVUsQ0FBQyxJQUFtQixFQUFFLE1BQWM7UUFDNUMsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDO0lBQ3hFLENBQUM7SUFFRCxzRkFBc0Y7SUFDOUUsV0FBVztRQUNqQixPQUFPO1lBQ0wsSUFBSSxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsU0FBUztZQUN0QyxNQUFNLEVBQUUsSUFBSSxDQUFDLE1BQU07WUFDbkIsY0FBYyxFQUFFLElBQUksQ0FBQyxzQkFBc0I7U0FDNUMsQ0FBQztJQUNKLENBQUM7OEdBelNVLGdDQUFnQztrSEFBaEMsZ0NBQWdDOzsyRkFBaEMsZ0NBQWdDO2tCQUQ1QyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQgeyBJbmplY3RhYmxlLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERhdGVBZGFwdGVyLCBNQVRfREFURV9MT0NBTEUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jb3JlJztcbmltcG9ydCB7XG4gIERhdGVUaW1lIGFzIEx1eG9uRGF0ZVRpbWUsXG4gIEluZm8gYXMgTHV4b25JbmZvLFxuICBEYXRlVGltZU9wdGlvbnMgYXMgTHV4b25EYXRlVGltZU9wdGlvbnMsXG4gIENhbGVuZGFyU3lzdGVtIGFzIEx1eG9uQ2FsZW5kYXJTeXN0ZW0sXG59IGZyb20gJ2x1eG9uJztcbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7IHRha2VVbnRpbERlc3Ryb3llZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7XG4gIGx1eG9uUmFuZ2UsXG4gIE1BVF9MVVhPTl9EQVRFX0FEQVBURVJfT1BUSU9OUyxcbiAgTWF0THV4b25EYXRlQWRhcHRlck9wdGlvbnMsXG59IGZyb20gJy4vbHV4b24udXRpbHMnO1xuXG4vKiogQWRhcHRzIEx1eG9uIERhdGVzIGZvciB1c2Ugd2l0aCBBbmd1bGFyIE1hdGVyaWFsLiAqL1xuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIE9uZW1ydmFMdXhvblllYXJNb250aERhdGVBZGFwdGVyIGV4dGVuZHMgRGF0ZUFkYXB0ZXI8THV4b25EYXRlVGltZT4ge1xuICBwcml2YXRlIF91c2VVVEM6IGJvb2xlYW47XG4gIHByaXZhdGUgX2ZpcnN0RGF5T2ZXZWVrOiBudW1iZXI7XG4gIHByaXZhdGUgX2RlZmF1bHRPdXRwdXRDYWxlbmRhcjogTHV4b25DYWxlbmRhclN5c3RlbTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHRyYW5zbGF0ZVNlcnZpY2U6IFRyYW5zbGF0ZVNlcnZpY2UpIHtcbiAgICBzdXBlcigpO1xuXG4gICAgY29uc3QgZGF0ZUxvY2FsZSA9IGluamVjdChNQVRfREFURV9MT0NBTEUsIHsgb3B0aW9uYWw6IHRydWUgfSk7XG4gICAgY29uc3Qgb3B0aW9ucyA9IGluamVjdDxNYXRMdXhvbkRhdGVBZGFwdGVyT3B0aW9ucz4oXG4gICAgICBNQVRfTFVYT05fREFURV9BREFQVEVSX09QVElPTlMsXG4gICAgICB7XG4gICAgICAgIG9wdGlvbmFsOiB0cnVlLFxuICAgICAgfSxcbiAgICApO1xuXG4gICAgdGhpcy5fdXNlVVRDID0gISFvcHRpb25zPy51c2VVdGM7XG4gICAgdGhpcy5fZmlyc3REYXlPZldlZWsgPSBvcHRpb25zPy5maXJzdERheU9mV2VlayB8fCAwO1xuICAgIHRoaXMuX2RlZmF1bHRPdXRwdXRDYWxlbmRhciA9IG9wdGlvbnM/LmRlZmF1bHRPdXRwdXRDYWxlbmRhciB8fCAnZ3JlZ29yeSc7XG4gICAgdGhpcy5zZXRMb2NhbGUoZGF0ZUxvY2FsZSB8fCBMdXhvbkRhdGVUaW1lLmxvY2FsKCkubG9jYWxlKTtcblxuICAgIHRoaXMuc2V0TG9jYWxlKHRoaXMudHJhbnNsYXRlU2VydmljZS5jdXJyZW50TGFuZyk7XG4gICAgaWYgKHRoaXMudHJhbnNsYXRlU2VydmljZSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICB0aGlzLnRyYW5zbGF0ZVNlcnZpY2Uub25MYW5nQ2hhbmdlXG4gICAgICAgIC5waXBlKHRha2VVbnRpbERlc3Ryb3llZCgpKVxuICAgICAgICAuc3Vic2NyaWJlKCh7IGxhbmcgfSkgPT4ge1xuICAgICAgICAgIHRoaXMuc2V0TG9jYWxlKGxhbmcpO1xuICAgICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBnZXRZZWFyKGRhdGU6IEx1eG9uRGF0ZVRpbWUpOiBudW1iZXIge1xuICAgIHJldHVybiBkYXRlLnllYXI7XG4gIH1cblxuICBnZXRNb250aChkYXRlOiBMdXhvbkRhdGVUaW1lKTogbnVtYmVyIHtcbiAgICAvLyBMdXhvbiB3b3JrcyB3aXRoIDEtaW5kZXhlZCBtb250aHMgd2hlcmVhcyBvdXIgY29kZSBleHBlY3RzIDAtaW5kZXhlZC5cbiAgICByZXR1cm4gZGF0ZS5tb250aCAtIDE7XG4gIH1cblxuICBnZXREYXRlKGRhdGU6IEx1eG9uRGF0ZVRpbWUpOiBudW1iZXIge1xuICAgIHJldHVybiBkYXRlLmRheTtcbiAgfVxuXG4gIGdldERheU9mV2VlayhkYXRlOiBMdXhvbkRhdGVUaW1lKTogbnVtYmVyIHtcbiAgICByZXR1cm4gZGF0ZS53ZWVrZGF5O1xuICB9XG5cbiAgZ2V0TW9udGhOYW1lcyhzdHlsZTogJ2xvbmcnIHwgJ3Nob3J0JyB8ICduYXJyb3cnKTogc3RyaW5nW10ge1xuICAgIC8vIEFkZGluZyBvdXRwdXRDYWxlbmRhciBvcHRpb24sIGJlY2F1c2UgTHV4b25JbmZvIGRvZXNuJ3QgZ2V0IGVmZmVjdGVkIGJ5IEx1eG9uU2V0dGluZ3NcbiAgICByZXR1cm4gTHV4b25JbmZvLm1vbnRocyhzdHlsZSwge1xuICAgICAgbG9jYWxlOiB0aGlzLmxvY2FsZSxcbiAgICAgIG91dHB1dENhbGVuZGFyOiB0aGlzLl9kZWZhdWx0T3V0cHV0Q2FsZW5kYXIsXG4gICAgfSk7XG4gIH1cblxuICBnZXREYXRlTmFtZXMoKTogc3RyaW5nW10ge1xuICAgIC8vIEF0IHRoZSB0aW1lIG9mIHdyaXRpbmcsIEx1eG9uIGRvZXNuJ3Qgb2ZmZXIgc2ltaWxhclxuICAgIC8vIGZ1bmN0aW9uYWxpdHkgc28gd2UgaGF2ZSB0byBmYWxsIGJhY2sgdG8gdGhlIEludGwgQVBJLlxuICAgIGNvbnN0IGR0ZiA9IG5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KHRoaXMubG9jYWxlLCB7XG4gICAgICBkYXk6ICdudW1lcmljJyxcbiAgICAgIHRpbWVab25lOiAndXRjJyxcbiAgICB9KTtcblxuICAgIC8vIEZvcm1hdCBhIFVUQyBkYXRlIGluIG9yZGVyIHRvIGF2b2lkIERTVCBpc3N1ZXMuXG4gICAgcmV0dXJuIGx1eG9uUmFuZ2UoMzEsIGkgPT5cbiAgICAgIGR0Zi5mb3JtYXQoTHV4b25EYXRlVGltZS51dGMoMjAxNywgMSwgaSArIDEpLnRvSlNEYXRlKCkpLFxuICAgICk7XG4gIH1cblxuICBnZXREYXlPZldlZWtOYW1lcyhzdHlsZTogJ2xvbmcnIHwgJ3Nob3J0JyB8ICduYXJyb3cnKTogc3RyaW5nW10ge1xuICAgIC8vIE5vdGUgdGhhdCB3ZSBzaGlmdCB0aGUgYXJyYXkgb25jZSwgYmVjYXVzZSBMdXhvbiByZXR1cm5zIE1vbmRheSBhcyB0aGVcbiAgICAvLyBmaXJzdCBkYXkgb2YgdGhlIHdlZWssIHdoZXJlYXMgb3VyIGxvZ2ljIGFzc3VtZXMgdGhhdCBpdCdzIFN1bmRheS4gU2VlOlxuICAgIC8vIGh0dHBzOi8vbW9tZW50LmdpdGh1Yi5pby9sdXhvbi9hcGktZG9jcy9pbmRleC5odG1sI2luZm93ZWVrZGF5c1xuICAgIGNvbnN0IGRheXMgPSBMdXhvbkluZm8ud2Vla2RheXMoc3R5bGUsIHsgbG9jYWxlOiB0aGlzLmxvY2FsZSB9KTtcbiAgICBkYXlzLnVuc2hpZnQoZGF5cy5wb3AoKSEpO1xuICAgIHJldHVybiBkYXlzO1xuICB9XG5cbiAgZ2V0WWVhck5hbWUoZGF0ZTogTHV4b25EYXRlVGltZSk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGRhdGUudG9Gb3JtYXQoJ3l5eXknLCB0aGlzLl9nZXRPcHRpb25zKCkpO1xuICB9XG5cbiAgZ2V0Rmlyc3REYXlPZldlZWsoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5fZmlyc3REYXlPZldlZWs7XG4gIH1cblxuICBnZXROdW1EYXlzSW5Nb250aChkYXRlOiBMdXhvbkRhdGVUaW1lKTogbnVtYmVyIHtcbiAgICByZXR1cm4gZGF0ZS5kYXlzSW5Nb250aCE7XG4gIH1cblxuICBjbG9uZShkYXRlOiBMdXhvbkRhdGVUaW1lKTogTHV4b25EYXRlVGltZSB7XG4gICAgcmV0dXJuIEx1eG9uRGF0ZVRpbWUuZnJvbU9iamVjdChkYXRlLnRvT2JqZWN0KCksIHRoaXMuX2dldE9wdGlvbnMoKSk7XG4gIH1cblxuICBjcmVhdGVEYXRlKHllYXI6IG51bWJlciwgbW9udGg6IG51bWJlciwgZGF0ZTogbnVtYmVyKTogTHV4b25EYXRlVGltZSB7XG4gICAgY29uc3Qgb3B0aW9ucyA9IHRoaXMuX2dldE9wdGlvbnMoKTtcblxuICAgIGlmIChtb250aCA8IDAgfHwgbW9udGggPiAxMSkge1xuICAgICAgdGhyb3cgRXJyb3IoXG4gICAgICAgIGBJbnZhbGlkIG1vbnRoIGluZGV4IFwiJHttb250aH1cIi4gTW9udGggaW5kZXggaGFzIHRvIGJlIGJldHdlZW4gMCBhbmQgMTEuYCxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgaWYgKGRhdGUgPCAxKSB7XG4gICAgICB0aHJvdyBFcnJvcihgSW52YWxpZCBkYXRlIFwiJHtkYXRlfVwiLiBEYXRlIGhhcyB0byBiZSBncmVhdGVyIHRoYW4gMC5gKTtcbiAgICB9XG5cbiAgICAvLyBMdXhvbiB1c2VzIDEtaW5kZXhlZCBtb250aHMgc28gd2UgbmVlZCB0byBhZGQgb25lIHRvIHRoZSBtb250aC5cbiAgICBjb25zdCByZXN1bHQgPSB0aGlzLl91c2VVVENcbiAgICAgID8gTHV4b25EYXRlVGltZS51dGMoeWVhciwgbW9udGggKyAxLCBkYXRlLCBvcHRpb25zKVxuICAgICAgOiBMdXhvbkRhdGVUaW1lLmxvY2FsKHllYXIsIG1vbnRoICsgMSwgZGF0ZSwgb3B0aW9ucyk7XG5cbiAgICBpZiAoIXRoaXMuaXNWYWxpZChyZXN1bHQpKSB7XG4gICAgICB0aHJvdyBFcnJvcihgSW52YWxpZCBkYXRlIFwiJHtkYXRlfVwiLiBSZWFzb246IFwiJHtyZXN1bHQuaW52YWxpZFJlYXNvbn1cIi5gKTtcbiAgICB9XG5cbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG5cbiAgdG9kYXkoKTogTHV4b25EYXRlVGltZSB7XG4gICAgY29uc3Qgb3B0aW9ucyA9IHRoaXMuX2dldE9wdGlvbnMoKTtcblxuICAgIHJldHVybiB0aGlzLl91c2VVVENcbiAgICAgID8gTHV4b25EYXRlVGltZS51dGMob3B0aW9ucylcbiAgICAgIDogTHV4b25EYXRlVGltZS5sb2NhbChvcHRpb25zKTtcbiAgfVxuXG4gIHBhcnNlKHZhbHVlOiBhbnksIHBhcnNlRm9ybWF0OiBzdHJpbmcgfCBzdHJpbmdbXSk6IEx1eG9uRGF0ZVRpbWUgfCBudWxsIHtcbiAgICBjb25zdCBvcHRpb25zOiBMdXhvbkRhdGVUaW1lT3B0aW9ucyA9IHRoaXMuX2dldE9wdGlvbnMoKTtcblxuICAgIGlmICh0eXBlb2YgdmFsdWUgPT0gJ3N0cmluZycgJiYgdmFsdWUubGVuZ3RoID4gMCkge1xuICAgICAgY29uc3QgaXNvODYwMURhdGUgPSBMdXhvbkRhdGVUaW1lLmZyb21JU08odmFsdWUsIG9wdGlvbnMpO1xuXG4gICAgICBpZiAodGhpcy5pc1ZhbGlkKGlzbzg2MDFEYXRlKSkge1xuICAgICAgICByZXR1cm4gaXNvODYwMURhdGU7XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IGZvcm1hdHMgPSBBcnJheS5pc0FycmF5KHBhcnNlRm9ybWF0KSA/IHBhcnNlRm9ybWF0IDogW3BhcnNlRm9ybWF0XTtcblxuICAgICAgaWYgKCFwYXJzZUZvcm1hdC5sZW5ndGgpIHtcbiAgICAgICAgdGhyb3cgRXJyb3IoJ0Zvcm1hdHMgYXJyYXkgbXVzdCBub3QgYmUgZW1wdHkuJyk7XG4gICAgICB9XG5cbiAgICAgIGZvciAoY29uc3QgZm9ybWF0IG9mIGZvcm1hdHMpIHtcbiAgICAgICAgY29uc3QgZnJvbUZvcm1hdCA9IEx1eG9uRGF0ZVRpbWUuZnJvbUZvcm1hdCh2YWx1ZSwgZm9ybWF0LCBvcHRpb25zKTtcblxuICAgICAgICBpZiAodGhpcy5pc1ZhbGlkKGZyb21Gb3JtYXQpKSB7XG4gICAgICAgICAgcmV0dXJuIGZyb21Gb3JtYXQ7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHRoaXMuaW52YWxpZCgpO1xuICAgIH0gZWxzZSBpZiAodHlwZW9mIHZhbHVlID09PSAnbnVtYmVyJykge1xuICAgICAgcmV0dXJuIEx1eG9uRGF0ZVRpbWUuZnJvbU1pbGxpcyh2YWx1ZSwgb3B0aW9ucyk7XG4gICAgfSBlbHNlIGlmICh2YWx1ZSBpbnN0YW5jZW9mIERhdGUpIHtcbiAgICAgIHJldHVybiBMdXhvbkRhdGVUaW1lLmZyb21KU0RhdGUodmFsdWUsIG9wdGlvbnMpO1xuICAgIH0gZWxzZSBpZiAodmFsdWUgaW5zdGFuY2VvZiBMdXhvbkRhdGVUaW1lKSB7XG4gICAgICByZXR1cm4gTHV4b25EYXRlVGltZS5mcm9tTWlsbGlzKHZhbHVlLnRvTWlsbGlzKCksIG9wdGlvbnMpO1xuICAgIH1cblxuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgZm9ybWF0KGRhdGU6IEx1eG9uRGF0ZVRpbWUsIGRpc3BsYXlGb3JtYXQ6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgaWYgKCF0aGlzLmlzVmFsaWQoZGF0ZSkpIHtcbiAgICAgIHRocm93IEVycm9yKCdMdXhvbkRhdGVBZGFwdGVyOiBDYW5ub3QgZm9ybWF0IGludmFsaWQgZGF0ZS4nKTtcbiAgICB9XG4gICAgaWYgKHRoaXMuX3VzZVVUQykge1xuICAgICAgcmV0dXJuIGRhdGUuc2V0TG9jYWxlKHRoaXMubG9jYWxlKS5zZXRab25lKCd1dGMnKS50b0Zvcm1hdChkaXNwbGF5Rm9ybWF0KTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIGRhdGUuc2V0TG9jYWxlKHRoaXMubG9jYWxlKS50b0Zvcm1hdChkaXNwbGF5Rm9ybWF0KTtcbiAgICB9XG4gIH1cblxuICBhZGRDYWxlbmRhclllYXJzKGRhdGU6IEx1eG9uRGF0ZVRpbWUsIHllYXJzOiBudW1iZXIpOiBMdXhvbkRhdGVUaW1lIHtcbiAgICByZXR1cm4gZGF0ZS5yZWNvbmZpZ3VyZSh0aGlzLl9nZXRPcHRpb25zKCkpLnBsdXMoeyB5ZWFycyB9KTtcbiAgfVxuXG4gIGFkZENhbGVuZGFyTW9udGhzKGRhdGU6IEx1eG9uRGF0ZVRpbWUsIG1vbnRoczogbnVtYmVyKTogTHV4b25EYXRlVGltZSB7XG4gICAgcmV0dXJuIGRhdGUucmVjb25maWd1cmUodGhpcy5fZ2V0T3B0aW9ucygpKS5wbHVzKHsgbW9udGhzIH0pO1xuICB9XG5cbiAgYWRkQ2FsZW5kYXJEYXlzKGRhdGU6IEx1eG9uRGF0ZVRpbWUsIGRheXM6IG51bWJlcik6IEx1eG9uRGF0ZVRpbWUge1xuICAgIHJldHVybiBkYXRlLnJlY29uZmlndXJlKHRoaXMuX2dldE9wdGlvbnMoKSkucGx1cyh7IGRheXMgfSk7XG4gIH1cblxuICB0b0lzbzg2MDEoZGF0ZTogTHV4b25EYXRlVGltZSk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGRhdGUudG9JU08oKSE7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB0aGUgZ2l2ZW4gdmFsdWUgaWYgZ2l2ZW4gYSB2YWxpZCBMdXhvbiBvciBudWxsLiBEZXNlcmlhbGl6ZXMgdmFsaWQgSVNPIDg2MDEgc3RyaW5nc1xuICAgKiAoaHR0cHM6Ly93d3cuaWV0Zi5vcmcvcmZjL3JmYzMzMzkudHh0KSBhbmQgdmFsaWQgRGF0ZSBvYmplY3RzIGludG8gdmFsaWQgRGF0ZVRpbWUgYW5kIGVtcHR5XG4gICAqIHN0cmluZyBpbnRvIG51bGwuIFJldHVybnMgYW4gaW52YWxpZCBkYXRlIGZvciBhbGwgb3RoZXIgdmFsdWVzLlxuICAgKi9cbiAgb3ZlcnJpZGUgZGVzZXJpYWxpemUodmFsdWU6IGFueSk6IEx1eG9uRGF0ZVRpbWUgfCBudWxsIHtcbiAgICBjb25zdCBvcHRpb25zID0gdGhpcy5fZ2V0T3B0aW9ucygpO1xuICAgIGxldCBkYXRlOiBMdXhvbkRhdGVUaW1lIHwgdW5kZWZpbmVkO1xuICAgIGlmICh2YWx1ZSBpbnN0YW5jZW9mIERhdGUpIHtcbiAgICAgIGRhdGUgPSBMdXhvbkRhdGVUaW1lLmZyb21KU0RhdGUodmFsdWUsIG9wdGlvbnMpO1xuICAgIH1cbiAgICBpZiAodHlwZW9mIHZhbHVlID09PSAnc3RyaW5nJykge1xuICAgICAgaWYgKCF2YWx1ZSkge1xuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgIH1cbiAgICAgIGRhdGUgPSBMdXhvbkRhdGVUaW1lLmZyb21JU08odmFsdWUsIG9wdGlvbnMpO1xuICAgIH1cbiAgICBpZiAoZGF0ZSAmJiB0aGlzLmlzVmFsaWQoZGF0ZSkpIHtcbiAgICAgIHJldHVybiBkYXRlO1xuICAgIH1cbiAgICByZXR1cm4gc3VwZXIuZGVzZXJpYWxpemUodmFsdWUpO1xuICB9XG5cbiAgaXNEYXRlSW5zdGFuY2Uob2JqOiBhbnkpOiBib29sZWFuIHtcbiAgICByZXR1cm4gb2JqIGluc3RhbmNlb2YgTHV4b25EYXRlVGltZTtcbiAgfVxuXG4gIGlzVmFsaWQoZGF0ZTogTHV4b25EYXRlVGltZSk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBkYXRlLmlzVmFsaWQ7XG4gIH1cblxuICBpbnZhbGlkKCk6IEx1eG9uRGF0ZVRpbWUge1xuICAgIHJldHVybiBMdXhvbkRhdGVUaW1lLmludmFsaWQoJ0ludmFsaWQgTHV4b24gRGF0ZVRpbWUgb2JqZWN0LicpO1xuICB9XG5cbiAgc2V0VGltZShcbiAgICB0YXJnZXQ6IEx1eG9uRGF0ZVRpbWUsXG4gICAgaG91cnM6IG51bWJlcixcbiAgICBtaW51dGVzOiBudW1iZXIsXG4gICAgc2Vjb25kczogbnVtYmVyLFxuICApOiBMdXhvbkRhdGVUaW1lIHtcbiAgICAvL2lmICh0eXBlb2YgbmdEZXZNb2RlID09PSAndW5kZWZpbmVkJyB8fCBuZ0Rldk1vZGUpIHtcbiAgICBpZiAoaG91cnMgPCAwIHx8IGhvdXJzID4gMjMpIHtcbiAgICAgIHRocm93IEVycm9yKFxuICAgICAgICBgSW52YWxpZCBob3VycyBcIiR7aG91cnN9XCIuIEhvdXJzIHZhbHVlIG11c3QgYmUgYmV0d2VlbiAwIGFuZCAyMy5gLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICBpZiAobWludXRlcyA8IDAgfHwgbWludXRlcyA+IDU5KSB7XG4gICAgICB0aHJvdyBFcnJvcihcbiAgICAgICAgYEludmFsaWQgbWludXRlcyBcIiR7bWludXRlc31cIi4gTWludXRlcyB2YWx1ZSBtdXN0IGJlIGJldHdlZW4gMCBhbmQgNTkuYCxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgaWYgKHNlY29uZHMgPCAwIHx8IHNlY29uZHMgPiA1OSkge1xuICAgICAgdGhyb3cgRXJyb3IoXG4gICAgICAgIGBJbnZhbGlkIHNlY29uZHMgXCIke3NlY29uZHN9XCIuIFNlY29uZHMgdmFsdWUgbXVzdCBiZSBiZXR3ZWVuIDAgYW5kIDU5LmAsXG4gICAgICApO1xuICAgIH1cbiAgICAvL31cblxuICAgIHJldHVybiB0aGlzLmNsb25lKHRhcmdldCkuc2V0KHtcbiAgICAgIGhvdXI6IGhvdXJzLFxuICAgICAgbWludXRlOiBtaW51dGVzLFxuICAgICAgc2Vjb25kOiBzZWNvbmRzLFxuICAgICAgbWlsbGlzZWNvbmQ6IDAsXG4gICAgfSk7XG4gIH1cblxuICBnZXRIb3VycyhkYXRlOiBMdXhvbkRhdGVUaW1lKTogbnVtYmVyIHtcbiAgICByZXR1cm4gZGF0ZS5ob3VyO1xuICB9XG5cbiAgZ2V0TWludXRlcyhkYXRlOiBMdXhvbkRhdGVUaW1lKTogbnVtYmVyIHtcbiAgICByZXR1cm4gZGF0ZS5taW51dGU7XG4gIH1cblxuICBnZXRTZWNvbmRzKGRhdGU6IEx1eG9uRGF0ZVRpbWUpOiBudW1iZXIge1xuICAgIHJldHVybiBkYXRlLnNlY29uZDtcbiAgfVxuXG4gIHBhcnNlVGltZSh2YWx1ZTogYW55LCBwYXJzZUZvcm1hdDogc3RyaW5nIHwgc3RyaW5nW10pOiBMdXhvbkRhdGVUaW1lIHwgbnVsbCB7XG4gICAgY29uc3QgcmVzdWx0ID0gdGhpcy5wYXJzZSh2YWx1ZSwgcGFyc2VGb3JtYXQpO1xuXG4gICAgaWYgKCghcmVzdWx0IHx8ICF0aGlzLmlzVmFsaWQocmVzdWx0KSkgJiYgdHlwZW9mIHZhbHVlID09PSAnc3RyaW5nJykge1xuICAgICAgLy8gSXQgc2VlbXMgbGlrZSBMdXhvbiBkb2Vzbid0IHdvcmsgd2VsbCBjcm9zcy1icm93c2VyIGZvciBzdHJpbmdzIHRoYXQgaGF2ZVxuICAgICAgLy8gYWRkaXRpb25hbCBjaGFyYWN0ZXJzIGFyb3VuZCB0aGUgdGltZS4gVHJ5IHBhcnNpbmcgd2l0aG91dCB0aG9zZSBjaGFyYWN0ZXJzLlxuICAgICAgcmV0dXJuIChcbiAgICAgICAgdGhpcy5wYXJzZSh2YWx1ZS5yZXBsYWNlKC9bXjAtOTooQU18UE0pXS9naSwgJycpLCBwYXJzZUZvcm1hdCkgfHwgcmVzdWx0XG4gICAgICApO1xuICAgIH1cblxuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cblxuICBhZGRTZWNvbmRzKGRhdGU6IEx1eG9uRGF0ZVRpbWUsIGFtb3VudDogbnVtYmVyKTogTHV4b25EYXRlVGltZSB7XG4gICAgcmV0dXJuIGRhdGUucmVjb25maWd1cmUodGhpcy5fZ2V0T3B0aW9ucygpKS5wbHVzKHsgc2Vjb25kczogYW1vdW50IH0pO1xuICB9XG5cbiAgLyoqIEdldHMgdGhlIG9wdGlvbnMgdGhhdCBzaG91bGQgYmUgdXNlZCB3aGVuIGNvbnN0cnVjdGluZyBhIG5ldyBgRGF0ZVRpbWVgIG9iamVjdC4gKi9cbiAgcHJpdmF0ZSBfZ2V0T3B0aW9ucygpOiBMdXhvbkRhdGVUaW1lT3B0aW9ucyB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHpvbmU6IHRoaXMuX3VzZVVUQyA/ICd1dGMnIDogdW5kZWZpbmVkLFxuICAgICAgbG9jYWxlOiB0aGlzLmxvY2FsZSxcbiAgICAgIG91dHB1dENhbGVuZGFyOiB0aGlzLl9kZWZhdWx0T3V0cHV0Q2FsZW5kYXIsXG4gICAgfTtcbiAgfVxufVxuIl19
|
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import { NativeDateAdapter } from '@angular/material/core';
|
|
3
|
-
import { DateTime } from 'luxon';
|
|
4
|
-
import { Subject, takeUntil } from 'rxjs';
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
import * as i1 from "@ngx-translate/core";
|
|
7
|
-
export class OnemrvaNativeYearMonthAdapter extends NativeDateAdapter {
|
|
8
|
-
constructor(translateService) {
|
|
9
|
-
super();
|
|
10
|
-
this.translateService = translateService;
|
|
11
|
-
this.destroyNotifier$ = new Subject();
|
|
12
|
-
this.setLocale(this.translateService.currentLang);
|
|
13
|
-
this.translateService.onLangChange
|
|
14
|
-
.pipe(takeUntil(this.destroyNotifier$))
|
|
15
|
-
.subscribe(({ lang }) => {
|
|
16
|
-
this.setLocale(lang);
|
|
17
|
-
});
|
|
18
|
-
}
|
|
19
|
-
format(date, formats) {
|
|
20
|
-
const dt = DateTime.fromJSDate(date);
|
|
21
|
-
return dt.toFormat(formats);
|
|
22
|
-
}
|
|
23
|
-
parse(value, formats) {
|
|
24
|
-
if (value && typeof value === 'string') {
|
|
25
|
-
value = value.replace(/\D/g, '/');
|
|
26
|
-
}
|
|
27
|
-
if (value === null || value === '') {
|
|
28
|
-
return null;
|
|
29
|
-
}
|
|
30
|
-
const dt = DateTime.fromFormat(value, formats.display.dateInput, {
|
|
31
|
-
locale: this.locale,
|
|
32
|
-
});
|
|
33
|
-
if (dt.isValid) {
|
|
34
|
-
return dt.toJSDate();
|
|
35
|
-
}
|
|
36
|
-
for (const format of formats.parse.dateInput) {
|
|
37
|
-
const parsed = DateTime.fromFormat(value, format, {
|
|
38
|
-
locale: this.locale,
|
|
39
|
-
});
|
|
40
|
-
if (parsed.isValid) {
|
|
41
|
-
return parsed.toJSDate();
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
return this.invalid();
|
|
45
|
-
}
|
|
46
|
-
getFirstDayOfWeek() {
|
|
47
|
-
return 1;
|
|
48
|
-
}
|
|
49
|
-
ngOnDestroy() {
|
|
50
|
-
this.destroyNotifier$.next();
|
|
51
|
-
this.destroyNotifier$.complete();
|
|
52
|
-
}
|
|
53
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: OnemrvaNativeYearMonthAdapter, deps: [{ token: i1.TranslateService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
54
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: OnemrvaNativeYearMonthAdapter }); }
|
|
55
|
-
}
|
|
56
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: OnemrvaNativeYearMonthAdapter, decorators: [{
|
|
57
|
-
type: Injectable
|
|
58
|
-
}], ctorParameters: () => [{ type: i1.TranslateService }] });
|
|
59
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF0aXZlLnllYXItbW9udGguZGF0ZS5hZGFwdGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvb25lbXJ2YS9kZXNpZ24tc3lzdGVtL3NoYXJlZC9zcmMvbGliL2FkYXB0ZXJzL25hdGl2ZS55ZWFyLW1vbnRoLmRhdGUuYWRhcHRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBQ3RELE9BQU8sRUFBa0IsaUJBQWlCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUMzRSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sT0FBTyxDQUFDO0FBRWpDLE9BQU8sRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7QUFHMUMsTUFBTSxPQUFPLDZCQUNYLFNBQVEsaUJBQWlCO0lBS3pCLFlBQW9CLGdCQUFrQztRQUNwRCxLQUFLLEVBQUUsQ0FBQztRQURVLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFGOUMscUJBQWdCLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztRQUs3QyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUNsRCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsWUFBWTthQUMvQixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO2FBQ3RDLFNBQVMsQ0FBQyxDQUFDLEVBQUUsSUFBSSxFQUFFLEVBQUUsRUFBRTtZQUN0QixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3ZCLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVRLE1BQU0sQ0FBQyxJQUFVLEVBQUUsT0FBWTtRQUN0QyxNQUFNLEVBQUUsR0FBRyxRQUFRLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3JDLE9BQU8sRUFBRSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUM5QixDQUFDO0lBRVEsS0FBSyxDQUFDLEtBQVUsRUFBRSxPQUF1QjtRQUNoRCxJQUFJLEtBQUssSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRLEVBQUUsQ0FBQztZQUN2QyxLQUFLLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFDcEMsQ0FBQztRQUVELElBQUksS0FBSyxLQUFLLElBQUksSUFBSSxLQUFLLEtBQUssRUFBRSxFQUFFLENBQUM7WUFDbkMsT0FBTyxJQUFJLENBQUM7UUFDZCxDQUFDO1FBRUQsTUFBTSxFQUFFLEdBQUcsUUFBUSxDQUFDLFVBQVUsQ0FBQyxLQUFLLEVBQUUsT0FBTyxDQUFDLE9BQU8sQ0FBQyxTQUFTLEVBQUU7WUFDL0QsTUFBTSxFQUFFLElBQUksQ0FBQyxNQUFNO1NBQ3BCLENBQUMsQ0FBQztRQUVILElBQUksRUFBRSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ2YsT0FBTyxFQUFFLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDdkIsQ0FBQztRQUVELEtBQUssTUFBTSxNQUFNLElBQUksT0FBTyxDQUFDLEtBQUssQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUM3QyxNQUFNLE1BQU0sR0FBRyxRQUFRLENBQUMsVUFBVSxDQUFDLEtBQUssRUFBRSxNQUFNLEVBQUU7Z0JBQ2hELE1BQU0sRUFBRSxJQUFJLENBQUMsTUFBTTthQUNwQixDQUFDLENBQUM7WUFDSCxJQUFJLE1BQU0sQ0FBQyxPQUFPLEVBQUUsQ0FBQztnQkFDbkIsT0FBTyxNQUFNLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDM0IsQ0FBQztRQUNILENBQUM7UUFFRCxPQUFPLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUN4QixDQUFDO0lBRVEsaUJBQWlCO1FBQ3hCLE9BQU8sQ0FBQyxDQUFDO0lBQ1gsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDN0IsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ25DLENBQUM7OEdBMURVLDZCQUE2QjtrSEFBN0IsNkJBQTZCOzsyRkFBN0IsNkJBQTZCO2tCQUR6QyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgT25EZXN0cm95IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXREYXRlRm9ybWF0cywgTmF0aXZlRGF0ZUFkYXB0ZXIgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jb3JlJztcbmltcG9ydCB7IERhdGVUaW1lIH0gZnJvbSAnbHV4b24nO1xuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHsgU3ViamVjdCwgdGFrZVVudGlsIH0gZnJvbSAncnhqcyc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBPbmVtcnZhTmF0aXZlWWVhck1vbnRoQWRhcHRlclxuICBleHRlbmRzIE5hdGl2ZURhdGVBZGFwdGVyXG4gIGltcGxlbWVudHMgT25EZXN0cm95XG57XG4gIHByaXZhdGUgZGVzdHJveU5vdGlmaWVyJCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSB0cmFuc2xhdGVTZXJ2aWNlOiBUcmFuc2xhdGVTZXJ2aWNlKSB7XG4gICAgc3VwZXIoKTtcblxuICAgIHRoaXMuc2V0TG9jYWxlKHRoaXMudHJhbnNsYXRlU2VydmljZS5jdXJyZW50TGFuZyk7XG4gICAgdGhpcy50cmFuc2xhdGVTZXJ2aWNlLm9uTGFuZ0NoYW5nZVxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveU5vdGlmaWVyJCkpXG4gICAgICAuc3Vic2NyaWJlKCh7IGxhbmcgfSkgPT4ge1xuICAgICAgICB0aGlzLnNldExvY2FsZShsYW5nKTtcbiAgICAgIH0pO1xuICB9XG5cbiAgb3ZlcnJpZGUgZm9ybWF0KGRhdGU6IERhdGUsIGZvcm1hdHM6IGFueSk6IHN0cmluZyB7XG4gICAgY29uc3QgZHQgPSBEYXRlVGltZS5mcm9tSlNEYXRlKGRhdGUpO1xuICAgIHJldHVybiBkdC50b0Zvcm1hdChmb3JtYXRzKTtcbiAgfVxuXG4gIG92ZXJyaWRlIHBhcnNlKHZhbHVlOiBhbnksIGZvcm1hdHM6IE1hdERhdGVGb3JtYXRzKTogRGF0ZSB8IG51bGwge1xuICAgIGlmICh2YWx1ZSAmJiB0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnKSB7XG4gICAgICB2YWx1ZSA9IHZhbHVlLnJlcGxhY2UoL1xcRC9nLCAnLycpO1xuICAgIH1cblxuICAgIGlmICh2YWx1ZSA9PT0gbnVsbCB8fCB2YWx1ZSA9PT0gJycpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIGNvbnN0IGR0ID0gRGF0ZVRpbWUuZnJvbUZvcm1hdCh2YWx1ZSwgZm9ybWF0cy5kaXNwbGF5LmRhdGVJbnB1dCwge1xuICAgICAgbG9jYWxlOiB0aGlzLmxvY2FsZSxcbiAgICB9KTtcblxuICAgIGlmIChkdC5pc1ZhbGlkKSB7XG4gICAgICByZXR1cm4gZHQudG9KU0RhdGUoKTtcbiAgICB9XG5cbiAgICBmb3IgKGNvbnN0IGZvcm1hdCBvZiBmb3JtYXRzLnBhcnNlLmRhdGVJbnB1dCkge1xuICAgICAgY29uc3QgcGFyc2VkID0gRGF0ZVRpbWUuZnJvbUZvcm1hdCh2YWx1ZSwgZm9ybWF0LCB7XG4gICAgICAgIGxvY2FsZTogdGhpcy5sb2NhbGUsXG4gICAgICB9KTtcbiAgICAgIGlmIChwYXJzZWQuaXNWYWxpZCkge1xuICAgICAgICByZXR1cm4gcGFyc2VkLnRvSlNEYXRlKCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuaW52YWxpZCgpO1xuICB9XG5cbiAgb3ZlcnJpZGUgZ2V0Rmlyc3REYXlPZldlZWsoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gMTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuZGVzdHJveU5vdGlmaWVyJC5uZXh0KCk7XG4gICAgdGhpcy5kZXN0cm95Tm90aWZpZXIkLmNvbXBsZXRlKCk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
export * from './shared.datepicker.luxon.module';
|
|
2
|
-
export * from './shared.datepicker.luxon.year.month.module';
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vbmVtcnZhL2Rlc2lnbi1zeXN0ZW0vc2hhcmVkL3NyYy9saWIvbW9kdWxlcy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGtDQUFrQyxDQUFDO0FBQ2pELGNBQWMsNkNBQTZDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3NoYXJlZC5kYXRlcGlja2VyLmx1eG9uLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL3NoYXJlZC5kYXRlcGlja2VyLmx1eG9uLnllYXIubW9udGgubW9kdWxlJztcbiJdfQ==
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
import { inject, NgModule } from '@angular/core';
|
|
2
|
-
import { DateAdapter, MAT_DATE_LOCALE, MatNativeDateModule, } from '@angular/material/core';
|
|
3
|
-
import { TranslateModule, TranslateService } from '@ngx-translate/core';
|
|
4
|
-
import { MatDatepickerModule } from '@angular/material/datepicker';
|
|
5
|
-
import { ONEMRVA_MAT_LUXON_DATE_FORMATS } from '../constants';
|
|
6
|
-
import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
|
|
7
|
-
import { provideLuxonDateAdapter } from '@angular/material-luxon-adapter';
|
|
8
|
-
import * as i0 from "@angular/core";
|
|
9
|
-
import * as i1 from "@ngx-translate/core";
|
|
10
|
-
export class OnemrvaDatepickerLuxonSharedModule {
|
|
11
|
-
constructor(translateService) {
|
|
12
|
-
this._adapter = inject(DateAdapter);
|
|
13
|
-
translateService.onLangChange
|
|
14
|
-
.pipe(takeUntilDestroyed())
|
|
15
|
-
.subscribe(value => {
|
|
16
|
-
this._adapter.setLocale(value.lang);
|
|
17
|
-
});
|
|
18
|
-
}
|
|
19
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: OnemrvaDatepickerLuxonSharedModule, deps: [{ token: i1.TranslateService }], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
20
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.8", ngImport: i0, type: OnemrvaDatepickerLuxonSharedModule, imports: [MatDatepickerModule, TranslateModule, MatNativeDateModule] }); }
|
|
21
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: OnemrvaDatepickerLuxonSharedModule, providers: [
|
|
22
|
-
{
|
|
23
|
-
provide: MAT_DATE_LOCALE,
|
|
24
|
-
useFactory: (translateService) => translateService.currentLang,
|
|
25
|
-
deps: [TranslateService],
|
|
26
|
-
},
|
|
27
|
-
provideLuxonDateAdapter(ONEMRVA_MAT_LUXON_DATE_FORMATS),
|
|
28
|
-
], imports: [MatDatepickerModule, TranslateModule, MatNativeDateModule] }); }
|
|
29
|
-
}
|
|
30
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: OnemrvaDatepickerLuxonSharedModule, decorators: [{
|
|
31
|
-
type: NgModule,
|
|
32
|
-
args: [{
|
|
33
|
-
declarations: [],
|
|
34
|
-
imports: [MatDatepickerModule, TranslateModule, MatNativeDateModule],
|
|
35
|
-
exports: [],
|
|
36
|
-
providers: [
|
|
37
|
-
{
|
|
38
|
-
provide: MAT_DATE_LOCALE,
|
|
39
|
-
useFactory: (translateService) => translateService.currentLang,
|
|
40
|
-
deps: [TranslateService],
|
|
41
|
-
},
|
|
42
|
-
provideLuxonDateAdapter(ONEMRVA_MAT_LUXON_DATE_FORMATS),
|
|
43
|
-
],
|
|
44
|
-
}]
|
|
45
|
-
}], ctorParameters: () => [{ type: i1.TranslateService }] });
|
|
46
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hhcmVkLmRhdGVwaWNrZXIubHV4b24ubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvb25lbXJ2YS9kZXNpZ24tc3lzdGVtL3NoYXJlZC9zcmMvbGliL21vZHVsZXMvc2hhcmVkLmRhdGVwaWNrZXIubHV4b24ubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pELE9BQU8sRUFDTCxXQUFXLEVBQ1gsZUFBZSxFQUNmLG1CQUFtQixHQUNwQixNQUFNLHdCQUF3QixDQUFDO0FBQ2hDLE9BQU8sRUFBRSxlQUFlLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN4RSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNuRSxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDOUQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDaEUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0saUNBQWlDLENBQUM7OztBQWUxRSxNQUFNLE9BQU8sa0NBQWtDO0lBSTdDLFlBQVksZ0JBQWtDO1FBSDdCLGFBQVEsR0FDdkIsTUFBTSxDQUFnQyxXQUFXLENBQUMsQ0FBQztRQUduRCxnQkFBZ0IsQ0FBQyxZQUFZO2FBQzFCLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO2FBQzFCLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUNqQixJQUFJLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDdEMsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDOzhHQVZVLGtDQUFrQzsrR0FBbEMsa0NBQWtDLFlBWm5DLG1CQUFtQixFQUFFLGVBQWUsRUFBRSxtQkFBbUI7K0dBWXhELGtDQUFrQyxhQVZsQztZQUNUO2dCQUNFLE9BQU8sRUFBRSxlQUFlO2dCQUN4QixVQUFVLEVBQUUsQ0FBQyxnQkFBa0MsRUFBRSxFQUFFLENBQ2pELGdCQUFnQixDQUFDLFdBQVc7Z0JBQzlCLElBQUksRUFBRSxDQUFDLGdCQUFnQixDQUFDO2FBQ3pCO1lBQ0QsdUJBQXVCLENBQUMsOEJBQThCLENBQUM7U0FDeEQsWUFWUyxtQkFBbUIsRUFBRSxlQUFlLEVBQUUsbUJBQW1COzsyRkFZeEQsa0NBQWtDO2tCQWQ5QyxRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxFQUFFO29CQUNoQixPQUFPLEVBQUUsQ0FBQyxtQkFBbUIsRUFBRSxlQUFlLEVBQUUsbUJBQW1CLENBQUM7b0JBQ3BFLE9BQU8sRUFBRSxFQUFFO29CQUNYLFNBQVMsRUFBRTt3QkFDVDs0QkFDRSxPQUFPLEVBQUUsZUFBZTs0QkFDeEIsVUFBVSxFQUFFLENBQUMsZ0JBQWtDLEVBQUUsRUFBRSxDQUNqRCxnQkFBZ0IsQ0FBQyxXQUFXOzRCQUM5QixJQUFJLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQzt5QkFDekI7d0JBQ0QsdUJBQXVCLENBQUMsOEJBQThCLENBQUM7cUJBQ3hEO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaW5qZWN0LCBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgRGF0ZUFkYXB0ZXIsXG4gIE1BVF9EQVRFX0xPQ0FMRSxcbiAgTWF0TmF0aXZlRGF0ZU1vZHVsZSxcbn0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY29yZSc7XG5pbXBvcnQgeyBUcmFuc2xhdGVNb2R1bGUsIFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7IE1hdERhdGVwaWNrZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kYXRlcGlja2VyJztcbmltcG9ydCB7IE9ORU1SVkFfTUFUX0xVWE9OX0RBVEVfRk9STUFUUyB9IGZyb20gJy4uL2NvbnN0YW50cyc7XG5pbXBvcnQgeyB0YWtlVW50aWxEZXN0cm95ZWQgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQgeyBwcm92aWRlTHV4b25EYXRlQWRhcHRlciB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsLWx1eG9uLWFkYXB0ZXInO1xuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbXSxcbiAgaW1wb3J0czogW01hdERhdGVwaWNrZXJNb2R1bGUsIFRyYW5zbGF0ZU1vZHVsZSwgTWF0TmF0aXZlRGF0ZU1vZHVsZV0sXG4gIGV4cG9ydHM6IFtdLFxuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBNQVRfREFURV9MT0NBTEUsXG4gICAgICB1c2VGYWN0b3J5OiAodHJhbnNsYXRlU2VydmljZTogVHJhbnNsYXRlU2VydmljZSkgPT5cbiAgICAgICAgdHJhbnNsYXRlU2VydmljZS5jdXJyZW50TGFuZyxcbiAgICAgIGRlcHM6IFtUcmFuc2xhdGVTZXJ2aWNlXSxcbiAgICB9LFxuICAgIHByb3ZpZGVMdXhvbkRhdGVBZGFwdGVyKE9ORU1SVkFfTUFUX0xVWE9OX0RBVEVfRk9STUFUUyksXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIE9uZW1ydmFEYXRlcGlja2VyTHV4b25TaGFyZWRNb2R1bGUge1xuICBwcml2YXRlIHJlYWRvbmx5IF9hZGFwdGVyID1cbiAgICBpbmplY3Q8RGF0ZUFkYXB0ZXI8dW5rbm93biwgdW5rbm93bj4+KERhdGVBZGFwdGVyKTtcblxuICBjb25zdHJ1Y3Rvcih0cmFuc2xhdGVTZXJ2aWNlOiBUcmFuc2xhdGVTZXJ2aWNlKSB7XG4gICAgdHJhbnNsYXRlU2VydmljZS5vbkxhbmdDaGFuZ2VcbiAgICAgIC5waXBlKHRha2VVbnRpbERlc3Ryb3llZCgpKVxuICAgICAgLnN1YnNjcmliZSh2YWx1ZSA9PiB7XG4gICAgICAgIHRoaXMuX2FkYXB0ZXIuc2V0TG9jYWxlKHZhbHVlLmxhbmcpO1xuICAgICAgfSk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
import { inject, NgModule } from '@angular/core';
|
|
2
|
-
import { DateAdapter, MAT_DATE_LOCALE, MatNativeDateModule, } from '@angular/material/core';
|
|
3
|
-
import { TranslateModule, TranslateService } from '@ngx-translate/core';
|
|
4
|
-
import { MatDatepickerModule } from '@angular/material/datepicker';
|
|
5
|
-
import { ONEMRVA_MAT_LUXON_YEAR_MONTH_FORMATS } from '../constants';
|
|
6
|
-
import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
|
|
7
|
-
import { provideLuxonDateAdapter } from '@angular/material-luxon-adapter';
|
|
8
|
-
import * as i0 from "@angular/core";
|
|
9
|
-
import * as i1 from "@ngx-translate/core";
|
|
10
|
-
export class OnemrvaDatepickerLuxonYearMonthSharedModule {
|
|
11
|
-
constructor(translateService) {
|
|
12
|
-
this._adapter = inject(DateAdapter);
|
|
13
|
-
translateService.onLangChange
|
|
14
|
-
.pipe(takeUntilDestroyed())
|
|
15
|
-
.subscribe(value => {
|
|
16
|
-
this._adapter.setLocale(value.lang);
|
|
17
|
-
});
|
|
18
|
-
}
|
|
19
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: OnemrvaDatepickerLuxonYearMonthSharedModule, deps: [{ token: i1.TranslateService }], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
20
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.8", ngImport: i0, type: OnemrvaDatepickerLuxonYearMonthSharedModule, imports: [MatDatepickerModule, TranslateModule, MatNativeDateModule] }); }
|
|
21
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: OnemrvaDatepickerLuxonYearMonthSharedModule, providers: [
|
|
22
|
-
{
|
|
23
|
-
provide: MAT_DATE_LOCALE,
|
|
24
|
-
useFactory: (translateService) => translateService.currentLang,
|
|
25
|
-
deps: [TranslateService],
|
|
26
|
-
},
|
|
27
|
-
provideLuxonDateAdapter(ONEMRVA_MAT_LUXON_YEAR_MONTH_FORMATS),
|
|
28
|
-
], imports: [MatDatepickerModule, TranslateModule, MatNativeDateModule] }); }
|
|
29
|
-
}
|
|
30
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: OnemrvaDatepickerLuxonYearMonthSharedModule, decorators: [{
|
|
31
|
-
type: NgModule,
|
|
32
|
-
args: [{
|
|
33
|
-
declarations: [],
|
|
34
|
-
imports: [MatDatepickerModule, TranslateModule, MatNativeDateModule],
|
|
35
|
-
exports: [],
|
|
36
|
-
providers: [
|
|
37
|
-
{
|
|
38
|
-
provide: MAT_DATE_LOCALE,
|
|
39
|
-
useFactory: (translateService) => translateService.currentLang,
|
|
40
|
-
deps: [TranslateService],
|
|
41
|
-
},
|
|
42
|
-
provideLuxonDateAdapter(ONEMRVA_MAT_LUXON_YEAR_MONTH_FORMATS),
|
|
43
|
-
],
|
|
44
|
-
}]
|
|
45
|
-
}], ctorParameters: () => [{ type: i1.TranslateService }] });
|
|
46
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hhcmVkLmRhdGVwaWNrZXIubHV4b24ueWVhci5tb250aC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vbmVtcnZhL2Rlc2lnbi1zeXN0ZW0vc2hhcmVkL3NyYy9saWIvbW9kdWxlcy9zaGFyZWQuZGF0ZXBpY2tlci5sdXhvbi55ZWFyLm1vbnRoLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRCxPQUFPLEVBQ0wsV0FBVyxFQUNYLGVBQWUsRUFDZixtQkFBbUIsR0FDcEIsTUFBTSx3QkFBd0IsQ0FBQztBQUNoQyxPQUFPLEVBQUUsZUFBZSxFQUFFLGdCQUFnQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDeEUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDbkUsT0FBTyxFQUFFLG9DQUFvQyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDOzs7QUFlMUUsTUFBTSxPQUFPLDJDQUEyQztJQUl0RCxZQUFZLGdCQUFrQztRQUg3QixhQUFRLEdBQ3ZCLE1BQU0sQ0FBZ0MsV0FBVyxDQUFDLENBQUM7UUFHbkQsZ0JBQWdCLENBQUMsWUFBWTthQUMxQixJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQzthQUMxQixTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDakIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3RDLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQzs4R0FWVSwyQ0FBMkM7K0dBQTNDLDJDQUEyQyxZQVo1QyxtQkFBbUIsRUFBRSxlQUFlLEVBQUUsbUJBQW1COytHQVl4RCwyQ0FBMkMsYUFWM0M7WUFDVDtnQkFDRSxPQUFPLEVBQUUsZUFBZTtnQkFDeEIsVUFBVSxFQUFFLENBQUMsZ0JBQWtDLEVBQUUsRUFBRSxDQUNqRCxnQkFBZ0IsQ0FBQyxXQUFXO2dCQUM5QixJQUFJLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQzthQUN6QjtZQUNELHVCQUF1QixDQUFDLG9DQUFvQyxDQUFDO1NBQzlELFlBVlMsbUJBQW1CLEVBQUUsZUFBZSxFQUFFLG1CQUFtQjs7MkZBWXhELDJDQUEyQztrQkFkdkQsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUUsRUFBRTtvQkFDaEIsT0FBTyxFQUFFLENBQUMsbUJBQW1CLEVBQUUsZUFBZSxFQUFFLG1CQUFtQixDQUFDO29CQUNwRSxPQUFPLEVBQUUsRUFBRTtvQkFDWCxTQUFTLEVBQUU7d0JBQ1Q7NEJBQ0UsT0FBTyxFQUFFLGVBQWU7NEJBQ3hCLFVBQVUsRUFBRSxDQUFDLGdCQUFrQyxFQUFFLEVBQUUsQ0FDakQsZ0JBQWdCLENBQUMsV0FBVzs0QkFDOUIsSUFBSSxFQUFFLENBQUMsZ0JBQWdCLENBQUM7eUJBQ3pCO3dCQUNELHVCQUF1QixDQUFDLG9DQUFvQyxDQUFDO3FCQUM5RDtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGluamVjdCwgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIERhdGVBZGFwdGVyLFxuICBNQVRfREFURV9MT0NBTEUsXG4gIE1hdE5hdGl2ZURhdGVNb2R1bGUsXG59IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NvcmUnO1xuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlLCBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQgeyBNYXREYXRlcGlja2VyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGF0ZXBpY2tlcic7XG5pbXBvcnQgeyBPTkVNUlZBX01BVF9MVVhPTl9ZRUFSX01PTlRIX0ZPUk1BVFMgfSBmcm9tICcuLi9jb25zdGFudHMnO1xuaW1wb3J0IHsgdGFrZVVudGlsRGVzdHJveWVkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuaW1wb3J0IHsgcHJvdmlkZUx1eG9uRGF0ZUFkYXB0ZXIgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC1sdXhvbi1hZGFwdGVyJztcbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW10sXG4gIGltcG9ydHM6IFtNYXREYXRlcGlja2VyTW9kdWxlLCBUcmFuc2xhdGVNb2R1bGUsIE1hdE5hdGl2ZURhdGVNb2R1bGVdLFxuICBleHBvcnRzOiBbXSxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogTUFUX0RBVEVfTE9DQUxFLFxuICAgICAgdXNlRmFjdG9yeTogKHRyYW5zbGF0ZVNlcnZpY2U6IFRyYW5zbGF0ZVNlcnZpY2UpID0+XG4gICAgICAgIHRyYW5zbGF0ZVNlcnZpY2UuY3VycmVudExhbmcsXG4gICAgICBkZXBzOiBbVHJhbnNsYXRlU2VydmljZV0sXG4gICAgfSxcbiAgICBwcm92aWRlTHV4b25EYXRlQWRhcHRlcihPTkVNUlZBX01BVF9MVVhPTl9ZRUFSX01PTlRIX0ZPUk1BVFMpLFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBPbmVtcnZhRGF0ZXBpY2tlckx1eG9uWWVhck1vbnRoU2hhcmVkTW9kdWxlIHtcbiAgcHJpdmF0ZSByZWFkb25seSBfYWRhcHRlciA9XG4gICAgaW5qZWN0PERhdGVBZGFwdGVyPHVua25vd24sIHVua25vd24+PihEYXRlQWRhcHRlcik7XG5cbiAgY29uc3RydWN0b3IodHJhbnNsYXRlU2VydmljZTogVHJhbnNsYXRlU2VydmljZSkge1xuICAgIHRyYW5zbGF0ZVNlcnZpY2Uub25MYW5nQ2hhbmdlXG4gICAgICAucGlwZSh0YWtlVW50aWxEZXN0cm95ZWQoKSlcbiAgICAgIC5zdWJzY3JpYmUodmFsdWUgPT4ge1xuICAgICAgICB0aGlzLl9hZGFwdGVyLnNldExvY2FsZSh2YWx1ZS5sYW5nKTtcbiAgICAgIH0pO1xuICB9XG59XG4iXX0=
|
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
import { DateAdapter } from '@angular/material/core';
|
|
2
|
-
import { DateTime as LuxonDateTime } from 'luxon';
|
|
3
|
-
import { TranslateService } from '@ngx-translate/core';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
/** Adapts Luxon Dates for use with Angular Material. */
|
|
6
|
-
export declare class OnemrvaLuxonYearMonthDateAdapter extends DateAdapter<LuxonDateTime> {
|
|
7
|
-
private translateService;
|
|
8
|
-
private _useUTC;
|
|
9
|
-
private _firstDayOfWeek;
|
|
10
|
-
private _defaultOutputCalendar;
|
|
11
|
-
constructor(translateService: TranslateService);
|
|
12
|
-
getYear(date: LuxonDateTime): number;
|
|
13
|
-
getMonth(date: LuxonDateTime): number;
|
|
14
|
-
getDate(date: LuxonDateTime): number;
|
|
15
|
-
getDayOfWeek(date: LuxonDateTime): number;
|
|
16
|
-
getMonthNames(style: 'long' | 'short' | 'narrow'): string[];
|
|
17
|
-
getDateNames(): string[];
|
|
18
|
-
getDayOfWeekNames(style: 'long' | 'short' | 'narrow'): string[];
|
|
19
|
-
getYearName(date: LuxonDateTime): string;
|
|
20
|
-
getFirstDayOfWeek(): number;
|
|
21
|
-
getNumDaysInMonth(date: LuxonDateTime): number;
|
|
22
|
-
clone(date: LuxonDateTime): LuxonDateTime;
|
|
23
|
-
createDate(year: number, month: number, date: number): LuxonDateTime;
|
|
24
|
-
today(): LuxonDateTime;
|
|
25
|
-
parse(value: any, parseFormat: string | string[]): LuxonDateTime | null;
|
|
26
|
-
format(date: LuxonDateTime, displayFormat: string): string;
|
|
27
|
-
addCalendarYears(date: LuxonDateTime, years: number): LuxonDateTime;
|
|
28
|
-
addCalendarMonths(date: LuxonDateTime, months: number): LuxonDateTime;
|
|
29
|
-
addCalendarDays(date: LuxonDateTime, days: number): LuxonDateTime;
|
|
30
|
-
toIso8601(date: LuxonDateTime): string;
|
|
31
|
-
/**
|
|
32
|
-
* Returns the given value if given a valid Luxon or null. Deserializes valid ISO 8601 strings
|
|
33
|
-
* (https://www.ietf.org/rfc/rfc3339.txt) and valid Date objects into valid DateTime and empty
|
|
34
|
-
* string into null. Returns an invalid date for all other values.
|
|
35
|
-
*/
|
|
36
|
-
deserialize(value: any): LuxonDateTime | null;
|
|
37
|
-
isDateInstance(obj: any): boolean;
|
|
38
|
-
isValid(date: LuxonDateTime): boolean;
|
|
39
|
-
invalid(): LuxonDateTime;
|
|
40
|
-
setTime(target: LuxonDateTime, hours: number, minutes: number, seconds: number): LuxonDateTime;
|
|
41
|
-
getHours(date: LuxonDateTime): number;
|
|
42
|
-
getMinutes(date: LuxonDateTime): number;
|
|
43
|
-
getSeconds(date: LuxonDateTime): number;
|
|
44
|
-
parseTime(value: any, parseFormat: string | string[]): LuxonDateTime | null;
|
|
45
|
-
addSeconds(date: LuxonDateTime, amount: number): LuxonDateTime;
|
|
46
|
-
/** Gets the options that should be used when constructing a new `DateTime` object. */
|
|
47
|
-
private _getOptions;
|
|
48
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<OnemrvaLuxonYearMonthDateAdapter, never>;
|
|
49
|
-
static ɵprov: i0.ɵɵInjectableDeclaration<OnemrvaLuxonYearMonthDateAdapter>;
|
|
50
|
-
}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { OnDestroy } from '@angular/core';
|
|
2
|
-
import { MatDateFormats, NativeDateAdapter } from '@angular/material/core';
|
|
3
|
-
import { TranslateService } from '@ngx-translate/core';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
export declare class OnemrvaNativeYearMonthAdapter extends NativeDateAdapter implements OnDestroy {
|
|
6
|
-
private translateService;
|
|
7
|
-
private destroyNotifier$;
|
|
8
|
-
constructor(translateService: TranslateService);
|
|
9
|
-
format(date: Date, formats: any): string;
|
|
10
|
-
parse(value: any, formats: MatDateFormats): Date | null;
|
|
11
|
-
getFirstDayOfWeek(): number;
|
|
12
|
-
ngOnDestroy(): void;
|
|
13
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<OnemrvaNativeYearMonthAdapter, never>;
|
|
14
|
-
static ɵprov: i0.ɵɵInjectableDeclaration<OnemrvaNativeYearMonthAdapter>;
|
|
15
|
-
}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import { TranslateService } from '@ngx-translate/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
import * as i1 from "@angular/material/datepicker";
|
|
4
|
-
import * as i2 from "@ngx-translate/core";
|
|
5
|
-
import * as i3 from "@angular/material/core";
|
|
6
|
-
export declare class OnemrvaDatepickerLuxonSharedModule {
|
|
7
|
-
private readonly _adapter;
|
|
8
|
-
constructor(translateService: TranslateService);
|
|
9
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<OnemrvaDatepickerLuxonSharedModule, never>;
|
|
10
|
-
static ɵmod: i0.ɵɵNgModuleDeclaration<OnemrvaDatepickerLuxonSharedModule, never, [typeof i1.MatDatepickerModule, typeof i2.TranslateModule, typeof i3.MatNativeDateModule], never>;
|
|
11
|
-
static ɵinj: i0.ɵɵInjectorDeclaration<OnemrvaDatepickerLuxonSharedModule>;
|
|
12
|
-
}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import { TranslateService } from '@ngx-translate/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
import * as i1 from "@angular/material/datepicker";
|
|
4
|
-
import * as i2 from "@ngx-translate/core";
|
|
5
|
-
import * as i3 from "@angular/material/core";
|
|
6
|
-
export declare class OnemrvaDatepickerLuxonYearMonthSharedModule {
|
|
7
|
-
private readonly _adapter;
|
|
8
|
-
constructor(translateService: TranslateService);
|
|
9
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<OnemrvaDatepickerLuxonYearMonthSharedModule, never>;
|
|
10
|
-
static ɵmod: i0.ɵɵNgModuleDeclaration<OnemrvaDatepickerLuxonYearMonthSharedModule, never, [typeof i1.MatDatepickerModule, typeof i2.TranslateModule, typeof i3.MatNativeDateModule], never>;
|
|
11
|
-
static ɵinj: i0.ɵɵInjectorDeclaration<OnemrvaDatepickerLuxonYearMonthSharedModule>;
|
|
12
|
-
}
|