@porscheinformatik/clr-addons 15.0.0 → 15.2.0
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/clr-addons.module.d.ts +2 -1
- package/datagrid/datagrid-state-persistence/datagrid-state-persistence-model.interface.d.ts +2 -0
- package/datagrid/datagrid-state-persistence/index.d.ts +1 -0
- package/datagrid/datagrid-state-persistence/state-persistence-key.directive.d.ts +13 -4
- package/datagrid/datagrid-state-persistence/state-persistence-options.interface.d.ts +8 -0
- package/daterangepicker/daterange.constants.d.ts +21 -0
- package/daterangepicker/daterangepicker.module.d.ts +17 -0
- package/daterangepicker/directives/abstract-container.component.d.ts +53 -0
- package/daterangepicker/directives/datepicker/datepicker.component.d.ts +65 -0
- package/daterangepicker/directives/daterangepicker/daterangepicker.directive.d.ts +127 -0
- package/daterangepicker/directives/daterangepicker-container/daterangepicker-container.component.d.ts +118 -0
- package/daterangepicker/directives/if-daterange-error.directive.d.ts +40 -0
- package/daterangepicker/index.d.ts +13 -0
- package/daterangepicker/interfaces/daterange-preset.interface.d.ts +8 -0
- package/daterangepicker/interfaces/daterange.interface.d.ts +12 -0
- package/daterangepicker/models/day.model.d.ts +80 -0
- package/daterangepicker/models/popover-positions.model.d.ts +20 -0
- package/daterangepicker/providers/daterange-control-state.service.d.ts +42 -0
- package/daterangepicker/providers/daterange-parsing.service.d.ts +66 -0
- package/daterangepicker/providers/daterange.service.d.ts +38 -0
- package/daterangepicker/providers/opened-datepickers-tracker.service.d.ts +20 -0
- package/daterangepicker/validators/daterange-max.validator.d.ts +32 -0
- package/daterangepicker/validators/daterange-min.validator.d.ts +32 -0
- package/daterangepicker/validators/daterange-order.validator.d.ts +29 -0
- package/daterangepicker/validators/daterange-required.validator.d.ts +29 -0
- package/esm2020/clr-addons.module.mjs +8 -4
- package/esm2020/datagrid/datagrid-state-persistence/column-hidden-state-persistence.directive.mjs +3 -2
- package/esm2020/datagrid/datagrid-state-persistence/datagrid-state-persistence-model.interface.mjs +1 -1
- package/esm2020/datagrid/datagrid-state-persistence/index.mjs +2 -1
- package/esm2020/datagrid/datagrid-state-persistence/state-persistence-key.directive.mjs +58 -12
- package/esm2020/datagrid/datagrid-state-persistence/state-persistence-options.interface.mjs +2 -0
- package/esm2020/daterangepicker/daterange.constants.mjs +27 -0
- package/esm2020/daterangepicker/daterangepicker.module.mjs +58 -0
- package/esm2020/daterangepicker/directives/abstract-container.component.mjs +104 -0
- package/esm2020/daterangepicker/directives/datepicker/datepicker.component.mjs +97 -0
- package/esm2020/daterangepicker/directives/daterangepicker/daterangepicker.directive.mjs +256 -0
- package/esm2020/daterangepicker/directives/daterangepicker-container/daterangepicker-container.component.mjs +251 -0
- package/esm2020/daterangepicker/directives/if-daterange-error.directive.mjs +94 -0
- package/esm2020/daterangepicker/index.mjs +14 -0
- package/esm2020/daterangepicker/interfaces/daterange-preset.interface.mjs +2 -0
- package/esm2020/daterangepicker/interfaces/daterange.interface.mjs +2 -0
- package/esm2020/daterangepicker/models/day.model.mjs +99 -0
- package/esm2020/daterangepicker/models/popover-positions.model.mjs +66 -0
- package/esm2020/daterangepicker/providers/daterange-control-state.service.mjs +62 -0
- package/esm2020/daterangepicker/providers/daterange-parsing.service.mjs +206 -0
- package/esm2020/daterangepicker/providers/daterange.service.mjs +54 -0
- package/esm2020/daterangepicker/providers/opened-datepickers-tracker.service.mjs +36 -0
- package/esm2020/daterangepicker/validators/daterange-max.validator.mjs +85 -0
- package/esm2020/daterangepicker/validators/daterange-min.validator.mjs +85 -0
- package/esm2020/daterangepicker/validators/daterange-order.validator.mjs +75 -0
- package/esm2020/daterangepicker/validators/daterange-required.validator.mjs +71 -0
- package/esm2020/index.mjs +3 -2
- package/esm2020/searchfield/search-field.mjs +7 -5
- package/fesm2015/clr-addons.mjs +1977 -270
- package/fesm2015/clr-addons.mjs.map +1 -1
- package/fesm2020/clr-addons.mjs +1858 -177
- package/fesm2020/clr-addons.mjs.map +1 -1
- package/index.d.ts +1 -0
- package/package.json +3 -3
- package/searchfield/search-field.d.ts +2 -2
- package/styles/clr-addons-phs.css +0 -13
- package/styles/clr-addons-phs.css.map +1 -1
- package/styles/clr-addons-phs.min.css +1 -1
- package/styles/clr-addons-phs.min.css.map +1 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ContentChild, ContentChildren, Directive, ElementRef, Input, QueryList, } from '@angular/core';
|
|
2
|
-
import { ClrDatagrid, ClrDatagridFilter, ClrDatagridPagination } from '@clr/angular';
|
|
2
|
+
import { ClrDatagrid, ClrDatagridFilter, ClrDatagridPagination, ClrDatagridSortOrder, DatagridPropertyComparator, } from '@clr/angular';
|
|
3
3
|
import { delay, Subject } from 'rxjs';
|
|
4
4
|
import { takeUntil } from 'rxjs/operators';
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
@@ -28,8 +28,10 @@ export class StatePersistenceKeyDirective {
|
|
|
28
28
|
const volatileDataState = this.getVolatileDataState();
|
|
29
29
|
const localStorageState = this.getLocalStorageState();
|
|
30
30
|
this.initFilter(volatileDataState);
|
|
31
|
+
this.initSorting(localStorageState);
|
|
31
32
|
this.initDatagridPersister();
|
|
32
|
-
|
|
33
|
+
const paginationPersistenceEnabled = this.options.persistPagination ?? true;
|
|
34
|
+
if (this.pagination?.page && paginationPersistenceEnabled) {
|
|
33
35
|
this.initPageSizePersister(localStorageState);
|
|
34
36
|
this.initCurrentPage(volatileDataState);
|
|
35
37
|
}
|
|
@@ -64,7 +66,8 @@ export class StatePersistenceKeyDirective {
|
|
|
64
66
|
}
|
|
65
67
|
}
|
|
66
68
|
initFilter(savedState) {
|
|
67
|
-
|
|
69
|
+
const filterPersistenceEnabled = this.options.persistFilters ?? true;
|
|
70
|
+
if (savedState.columns && filterPersistenceEnabled) {
|
|
68
71
|
Object.keys(savedState.columns).forEach(prop => {
|
|
69
72
|
const filter = this.getFilter(prop);
|
|
70
73
|
if (filter) {
|
|
@@ -76,13 +79,40 @@ export class StatePersistenceKeyDirective {
|
|
|
76
79
|
});
|
|
77
80
|
}
|
|
78
81
|
}
|
|
82
|
+
initSorting(savedState) {
|
|
83
|
+
const sortPersistenceEnabled = this.options.persistSort ?? true;
|
|
84
|
+
if (savedState.sortBy && sortPersistenceEnabled) {
|
|
85
|
+
this.datagrid.columns.forEach(column => {
|
|
86
|
+
if (this.getSortProperty(column.sortBy) === savedState.sortBy) {
|
|
87
|
+
column.sortOrder = savedState.sortReverse ? ClrDatagridSortOrder.DESC : ClrDatagridSortOrder.ASC;
|
|
88
|
+
}
|
|
89
|
+
else {
|
|
90
|
+
column.sortOrder = ClrDatagridSortOrder.UNSORTED;
|
|
91
|
+
}
|
|
92
|
+
});
|
|
93
|
+
}
|
|
94
|
+
}
|
|
79
95
|
initDatagridPersister() {
|
|
80
96
|
// delay is needed, as onDestroy the filters emit empty values.
|
|
81
97
|
// So delay it to the end of the current cycle, so the directive is also destroyed before it gets the next values
|
|
82
98
|
this.datagrid.refresh.pipe(delay(0), takeUntil(this.destroy$)).subscribe(dgState => {
|
|
83
|
-
|
|
99
|
+
this.persistFiltersAndCurrentPage(dgState);
|
|
100
|
+
this.persistSorting(dgState);
|
|
101
|
+
if (this.canShowPaginationDescription) {
|
|
102
|
+
this.updatePaginationDescription();
|
|
103
|
+
}
|
|
104
|
+
});
|
|
105
|
+
this.datagrid.items.change.pipe(takeUntil(this.destroy$)).subscribe(() => this.updatePaginationDescription());
|
|
106
|
+
}
|
|
107
|
+
persistFiltersAndCurrentPage(dgState) {
|
|
108
|
+
const filterPersistenceEnabled = this.options.persistFilters ?? true;
|
|
109
|
+
const paginationPersistenceEnabled = this.options.persistPagination ?? true;
|
|
110
|
+
const state = this.getVolatileDataState();
|
|
111
|
+
state.columns = state.columns || {};
|
|
112
|
+
if (paginationPersistenceEnabled) {
|
|
84
113
|
state.currentPage = dgState.page?.current;
|
|
85
|
-
|
|
114
|
+
}
|
|
115
|
+
if (filterPersistenceEnabled) {
|
|
86
116
|
Object.keys(state.columns).forEach(prop => (state.columns[prop].filterValue = undefined));
|
|
87
117
|
dgState.filters?.forEach(filter => {
|
|
88
118
|
const property = this.getFilterPropertyName(filter);
|
|
@@ -91,12 +121,17 @@ export class StatePersistenceKeyDirective {
|
|
|
91
121
|
state.columns[property].filterValue = this.enrichFilterValue(filter);
|
|
92
122
|
}
|
|
93
123
|
});
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
124
|
+
}
|
|
125
|
+
(this.useLocalStoreOnly ? localStorage : sessionStorage).setItem(this.options.key, JSON.stringify(state));
|
|
126
|
+
}
|
|
127
|
+
persistSorting(dgState) {
|
|
128
|
+
const sortPersistenceEnabled = this.options.persistSort ?? true;
|
|
129
|
+
if (sortPersistenceEnabled) {
|
|
130
|
+
const state = this.getLocalStorageState();
|
|
131
|
+
state.sortBy = this.getSortProperty(dgState.sort?.by);
|
|
132
|
+
state.sortReverse = dgState.sort?.reverse;
|
|
133
|
+
localStorage.setItem(this.options.key, JSON.stringify(state));
|
|
134
|
+
}
|
|
100
135
|
}
|
|
101
136
|
/**
|
|
102
137
|
* Pagination description must be set by this directive,
|
|
@@ -163,6 +198,17 @@ export class StatePersistenceKeyDirective {
|
|
|
163
198
|
const filterWithProp = filter;
|
|
164
199
|
return (filterWithProp.property?.prop || filterWithProp.property);
|
|
165
200
|
}
|
|
201
|
+
getSortProperty(sortBy) {
|
|
202
|
+
if (sortBy) {
|
|
203
|
+
if (typeof sortBy === 'string') {
|
|
204
|
+
return sortBy;
|
|
205
|
+
}
|
|
206
|
+
if (sortBy instanceof DatagridPropertyComparator) {
|
|
207
|
+
return sortBy.prop;
|
|
208
|
+
}
|
|
209
|
+
}
|
|
210
|
+
return undefined;
|
|
211
|
+
}
|
|
166
212
|
ngOnDestroy() {
|
|
167
213
|
this.destroy$.next();
|
|
168
214
|
this.destroy$.complete();
|
|
@@ -194,4 +240,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.1", ngImpor
|
|
|
194
240
|
type: ContentChildren,
|
|
195
241
|
args: [ClrDatagridFilter, { descendants: true }]
|
|
196
242
|
}] } });
|
|
197
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdGUtcGVyc2lzdGVuY2Uta2V5LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9jbHItYWRkb25zL2RhdGFncmlkL2RhdGFncmlkLXN0YXRlLXBlcnNpc3RlbmNlL3N0YXRlLXBlcnNpc3RlbmNlLWtleS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLFlBQVksRUFDWixlQUFlLEVBQ2YsU0FBUyxFQUNULFVBQVUsRUFDVixLQUFLLEVBRUwsU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxXQUFXLEVBQUUsaUJBQWlCLEVBQThCLHFCQUFxQixFQUFFLE1BQU0sY0FBYyxDQUFDO0FBRWpILE9BQU8sRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3RDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7O0FBRTNDLE1BQU0sU0FBUyxHQUFHLE1BQU0sQ0FBQztBQVV6QixNQUFNLE9BQU8sNEJBQTRCO0lBdUJ2QyxZQUFvQixRQUFxQjtRQUFyQixhQUFRLEdBQVIsUUFBUSxDQUFhO1FBbEJ6QyxzQkFBaUIsR0FBRyxLQUFLLENBQUM7UUFHMUIsMEJBQXFCLEdBQUcsRUFBRSxDQUFDO1FBVzNCLGlDQUE0QixHQUFHLEtBQUssQ0FBQztRQUNyQyxpQ0FBNEIsR0FBRyxLQUFLLENBQUM7UUFDckMsYUFBUSxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7SUFFYSxDQUFDO0lBRTdDLGtCQUFrQjtRQUNoQixJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsWUFBWSxFQUFFO1lBQzdCLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztTQUNiO2FBQU07WUFDTCxVQUFVLENBQUMsR0FBRyxFQUFFO2dCQUNkLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUNkLENBQUMsQ0FBQyxDQUFDO1NBQ0o7SUFD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QkFBVSxVQUFVLGdEQUd0QyxpQkFBaUI7MkZBaEJ2Qiw0QkFBNEI7a0JBSHhDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLDBCQUEwQjtpQkFDckM7a0dBR0MsT0FBTztzQkFETixLQUFLO3VCQUFDLHdCQUF3QjtnQkFJL0IsaUJBQWlCO3NCQURoQixLQUFLO3VCQUFDLHNCQUFzQjtnQkFJN0IscUJBQXFCO3NCQURwQixLQUFLO3VCQUFDLDBCQUEwQjtnQkFJakMsVUFBVTtzQkFEVCxZQUFZO3VCQUFDLHFCQUFxQjtnQkFJbkMsY0FBYztzQkFEYixZQUFZO3VCQUFDLHFCQUFxQixFQUFFLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRTtnQkFJekQsYUFBYTtzQkFEWixlQUFlO3VCQUFDLGlCQUFpQixFQUFFLEVBQUUsV0FBVyxFQUFFLElBQUksRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFmdGVyQ29udGVudEluaXQsXG4gIENvbnRlbnRDaGlsZCxcbiAgQ29udGVudENoaWxkcmVuLFxuICBEaXJlY3RpdmUsXG4gIEVsZW1lbnRSZWYsXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksXG4gIFF1ZXJ5TGlzdCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDbHJEYXRhZ3JpZCwgQ2xyRGF0YWdyaWRGaWx0ZXIsIENsckRhdGFncmlkRmlsdGVySW50ZXJmYWNlLCBDbHJEYXRhZ3JpZFBhZ2luYXRpb24gfSBmcm9tICdAY2xyL2FuZ3VsYXInO1xuaW1wb3J0IHsgQ2xyRGF0YWdyaWRTdGF0ZVBlcnNpc3RlbmNlTW9kZWwgfSBmcm9tICcuL2RhdGFncmlkLXN0YXRlLXBlcnNpc3RlbmNlLW1vZGVsLmludGVyZmFjZSc7XG5pbXBvcnQgeyBkZWxheSwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5jb25zdCBEQVRFX1RZUEUgPSAnZGF0ZSc7XG5cbmludGVyZmFjZSBGaWx0ZXJWYWx1ZVdpdGhNZXRhZGF0YSB7XG4gIHR5cGU6IHN0cmluZztcbiAgdmFsdWU6IHVua25vd247XG59XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tjbHJTdGF0ZVBlcnNpc3RlbmNlS2V5XScsXG59KVxuZXhwb3J0IGNsYXNzIFN0YXRlUGVyc2lzdGVuY2VLZXlEaXJlY3RpdmUgaW1wbGVtZW50cyBBZnRlckNvbnRlbnRJbml0LCBPbkRlc3Ryb3kge1xuICBASW5wdXQoJ2NsclN0YXRlUGVyc2lzdGVuY2VLZXknKVxuICBvcHRpb25zOiB7IGtleTogc3RyaW5nOyBzZXJ2ZXJEcml2ZW46IGJvb2xlYW4gfTtcblxuICBASW5wdXQoJ2NsclVzZUxvY2FsU3RvcmVPbmx5JylcbiAgdXNlTG9jYWxTdG9yZU9ubHkgPSBmYWxzZTtcblxuICBASW5wdXQoJ2NsclBhZ2luYXRpb25EZXNjcmlwdGlvbicpXG4gIHBhZ2luYXRpb25EZXNjcmlwdGlvbiA9ICcnO1xuXG4gIEBDb250ZW50Q2hpbGQoQ2xyRGF0YWdyaWRQYWdpbmF0aW9uKVxuICBwYWdpbmF0aW9uOiBDbHJEYXRhZ3JpZFBhZ2luYXRpb247XG5cbiAgQENvbnRlbnRDaGlsZChDbHJEYXRhZ3JpZFBhZ2luYXRpb24sIHsgcmVhZDogRWxlbWVudFJlZiB9KVxuICBwYWdpbmF0aW9uRWxlbTogRWxlbWVudFJlZjtcblxuICBAQ29udGVudENoaWxkcmVuKENsckRhdGFncmlkRmlsdGVyLCB7IGRlc2NlbmRhbnRzOiB0cnVlIH0pXG4gIGN1c3RvbUZpbHRlcnM6IFF1ZXJ5TGlzdDxDbHJEYXRhZ3JpZEZpbHRlcj47XG5cbiAgY2FuU2hvd1BhZ2luYXRpb25EZXNjcmlwdGlvbiA9IGZhbHNlO1xuICB3YXJuZWRBYm91dEN1c3RvbURlc2NyaXB0aW9uID0gZmFsc2U7XG4gIGRlc3Ryb3kkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGRhdGFncmlkOiBDbHJEYXRhZ3JpZCkge31cblxuICBuZ0FmdGVyQ29udGVudEluaXQoKSB7XG4gICAgaWYgKHRoaXMub3B0aW9ucy5zZXJ2ZXJEcml2ZW4pIHtcbiAgICAgIHRoaXMuaW5pdCgpO1xuICAgIH0gZWxzZSB7XG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgdGhpcy5pbml0KCk7XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGluaXQoKSB7XG4gICAgY29uc3Qgdm9sYXRpbGVEYXRhU3RhdGUgPSB0aGlzLmdldFZvbGF0aWxlRGF0YVN0YXRlKCk7XG4gICAgY29uc3QgbG9jYWxTdG9yYWdlU3RhdGUgPSB0aGlzLmdldExvY2FsU3RvcmFnZVN0YXRlKCk7XG5cbiAgICB0aGlzLmluaXRGaWx0ZXIodm9sYXRpbGVEYXRhU3RhdGUpO1xuICAgIHRoaXMuaW5pdERhdGFncmlkUGVyc2lzdGVyKCk7XG5cbiAgICBpZiAodGhpcy5wYWdpbmF0aW9uICYmIHRoaXMucGFnaW5hdGlvbi5wYWdlKSB7XG4gICAgICB0aGlzLmluaXRQYWdlU2l6ZVBlcnNpc3Rlcihsb2NhbFN0b3JhZ2VTdGF0ZSk7XG4gICAgICB0aGlzLmluaXRDdXJyZW50UGFnZSh2b2xhdGlsZURhdGFTdGF0ZSk7XG4gICAgfVxuICAgIHRoaXMuY2FuU2hvd1BhZ2luYXRpb25EZXNjcmlwdGlvbiA9IHRydWU7XG4gIH1cblxuICAvKipcbiAgICogV2l0aCB0aGlzIG1ldGhvZCBmaWx0ZXJzIGNhbiBiZSBjbGVhcmVkXG4gICAqIEBwYXJhbSBrZXkgVGhlIGtleSBmb3IgY2xyU3RhdGVQZXJzaXN0ZW5jZUtleVxuICAgKiBAcGFyYW0gdXNlTG9jYWxTdG9yZU9ubHkgVGhlIGNsclVzZUxvY2FsU3RvcmVPbmx5IGluZGljYXRvclxuICAgKi9cbiAgc3RhdGljIGNsZWFyRmlsdGVycyhrZXk6IHN0cmluZywgdXNlTG9jYWxTdG9yZU9ubHk6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICBjb25zdCBkYXRhID0gSlNPTi5wYXJzZSgodXNlTG9jYWxTdG9yZU9ubHkgPyBsb2NhbFN0b3JhZ2UgOiBzZXNzaW9uU3RvcmFnZSkuZ2V0SXRlbShrZXkpKSB8fCB7fTtcbiAgICBkYXRhLmNvbHVtbnMgPSB7fTtcbiAgICAodXNlTG9jYWxTdG9yZU9ubHkgPyBsb2NhbFN0b3JhZ2UgOiBzZXNzaW9uU3RvcmFnZSkuc2V0SXRlbShrZXksIEpTT04uc3RyaW5naWZ5KGRhdGEpKTtcbiAgfVxuXG4gIHByaXZhdGUgaW5pdFBhZ2VTaXplUGVyc2lzdGVyKHNhdmVkU3RhdGU6IENsckRhdGFncmlkU3RhdGVQZXJzaXN0ZW5jZU1vZGVsKSB7XG4gICAgLyogcGVyc2lzdCBwYWdlIHNpemUgY2hhbmdlcyBpbiBsb2NhbCBzdG9yYWdlICovXG4gICAgdGhpcy5wYWdpbmF0aW9uLnBhZ2Uuc2l6ZUNoYW5nZS5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSkuc3Vic2NyaWJlKHBhZ2VTaXplID0+IHtcbiAgICAgIGNvbnN0IHN0YXRlID0gdGhpcy5nZXRMb2NhbFN0b3JhZ2VTdGF0ZSgpO1xuICAgICAgc3RhdGUucGFnZVNpemUgPSBwYWdlU2l6ZTtcbiAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKHRoaXMub3B0aW9ucy5rZXksIEpTT04uc3RyaW5naWZ5KHN0YXRlKSk7XG4gICAgfSk7XG5cbiAgICAvKiBpbml0IHBhZ2Ugc2l6ZSBvZiBkYXRhZ3JpZCBpZiBhbHJlYWR5IHBlcnNpc3RlZCBpbiBsb2NhbCBzdG9yYWdlICovXG4gICAgaWYgKHNhdmVkU3RhdGUucGFnZVNpemUpIHtcbiAgICAgIHRoaXMucGFnaW5hdGlvbi5wYWdlLnNpemUgPSBzYXZlZFN0YXRlLnBhZ2VTaXplO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgaW5pdEN1cnJlbnRQYWdlKHNhdmVkU3RhdGU6IENsckRhdGFncmlkU3RhdGVQZXJzaXN0ZW5jZU1vZGVsKSB7XG4gICAgLyogaW5pdCBjdXJyZW50IHBhZ2Ugb2YgZGF0YWdyaWQgaWYgYWxyZWFkeSBwZXJzaXN0ZWQgKi9cbiAgICBpZiAoc2F2ZWRTdGF0ZT8uY3VycmVudFBhZ2UpIHtcbiAgICAgIHRoaXMucGFnaW5hdGlvbi5wYWdlLmN1cnJlbnQgPSBzYXZlZFN0YXRlLmN1cnJlbnRQYWdlO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgaW5pdEZpbHRlcihzYXZlZFN0YXRlOiBDbHJEYXRhZ3JpZFN0YXRlUGVyc2lzdGVuY2VNb2RlbCkge1xuICAgIGlmIChzYXZlZFN0YXRlLmNvbHVtbnMpIHtcbiAgICAgIE9iamVjdC5rZXlzKHNhdmVkU3RhdGUuY29sdW1ucykuZm9yRWFjaChwcm9wID0+IHtcbiAgICAgICAgY29uc3QgZmlsdGVyID0gdGhpcy5nZXRGaWx0ZXIocHJvcCk7XG4gICAgICAgIGlmIChmaWx0ZXIpIHtcbiAgICAgICAgICBjb25zdCBzYXZlZEZpbHRlclZhbHVlID0gc2F2ZWRTdGF0ZS5jb2x1bW5zW3Byb3BdLmZpbHRlclZhbHVlIHx8IHt9O1xuICAgICAgICAgIE9iamVjdC5rZXlzKHNhdmVkRmlsdGVyVmFsdWUpXG4gICAgICAgICAgICAuZmlsdGVyKHZhbHVlS2V5ID0+IHZhbHVlS2V5ICE9PSAncHJvcGVydHknKVxuICAgICAgICAgICAgLmZvckVhY2godmFsdWVLZXkgPT4gKChmaWx0ZXIgYXMgYW55KVt2YWx1ZUtleV0gPSB0aGlzLnBhcnNlRmlsdGVyVmFsdWUoc2F2ZWRGaWx0ZXJWYWx1ZVt2YWx1ZUtleV0pKSk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgaW5pdERhdGFncmlkUGVyc2lzdGVyKCkge1xuICAgIC8vIGRlbGF5IGlzIG5lZWRlZCwgYXMgb25EZXN0cm95IHRoZSBmaWx0ZXJzIGVtaXQgZW1wdHkgdmFsdWVzLlxuICAgIC8vIFNvIGRlbGF5IGl0IHRvIHRoZSBlbmQgb2YgdGhlIGN1cnJlbnQgY3ljbGUsIHNvIHRoZSBkaXJlY3RpdmUgaXMgYWxzbyBkZXN0cm95ZWQgYmVmb3JlIGl0IGdldHMgdGhlIG5leHQgdmFsdWVzXG4gICAgdGhpcy5kYXRhZ3JpZC5yZWZyZXNoLnBpcGUoZGVsYXkoMCksIHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSkuc3Vic2NyaWJlKGRnU3RhdGUgPT4ge1xuICAgICAgY29uc3Qgc3RhdGUgPSB0aGlzLmdldFZvbGF0aWxlRGF0YVN0YXRlKCk7XG5cbiAgICAgIHN0YXRlLmN1cnJlbnRQYWdlID0gZGdTdGF0ZS5wYWdlPy5jdXJyZW50O1xuICAgICAgc3RhdGUuY29sdW1ucyA9IHN0YXRlLmNvbHVtbnMgfHwge307XG4gICAgICBPYmplY3Qua2V5cyhzdGF0ZS5jb2x1bW5zKS5mb3JFYWNoKHByb3AgPT4gKHN0YXRlLmNvbHVtbnNbcHJvcF0uZmlsdGVyVmFsdWUgPSB1bmRlZmluZWQpKTtcbiAgICAgIGRnU3RhdGUuZmlsdGVycz8uZm9yRWFjaChmaWx0ZXIgPT4ge1xuICAgICAgICBjb25zdCBwcm9wZXJ0eSA9IHRoaXMuZ2V0RmlsdGVyUHJvcGVydHlOYW1lKGZpbHRlcik7XG4gICAgICAgIGlmIChwcm9wZXJ0eSkge1xuICAgICAgICAgIHN0YXRlLmNvbHVtbnNbcHJvcGVydHldID0gc3RhdGUuY29sdW1uc1twcm9wZXJ0eV0gfHwge307XG4gICAgICAgICAgc3RhdGUuY29sdW1uc1twcm9wZXJ0eV0uZmlsdGVyVmFsdWUgPSB0aGlzLmVucmljaEZpbHRlclZhbHVlKGZpbHRlcik7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuXG4gICAgICAodGhpcy51c2VMb2NhbFN0b3JlT25seSA/IGxvY2FsU3RvcmFnZSA6IHNlc3Npb25TdG9yYWdlKS5zZXRJdGVtKHRoaXMub3B0aW9ucy5rZXksIEpTT04uc3RyaW5naWZ5KHN0YXRlKSk7XG4gICAgICBpZiAodGhpcy5jYW5TaG93UGFnaW5hdGlvbkRlc2NyaXB0aW9uKSB7XG4gICAgICAgIHRoaXMudXBkYXRlUGFnaW5hdGlvbkRlc2NyaXB0aW9uKCk7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICB0aGlzLmRhdGFncmlkLml0ZW1zLmNoYW5nZS5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSkuc3Vic2NyaWJlKCgpID0+IHRoaXMudXBkYXRlUGFnaW5hdGlvbkRlc2NyaXB0aW9uKCkpO1xuICB9XG5cbiAgLyoqXG4gICAqIFBhZ2luYXRpb24gZGVzY3JpcHRpb24gbXVzdCBiZSBzZXQgYnkgdGhpcyBkaXJlY3RpdmUsXG4gICAqIG90aGVyd2lzZSB3ZSBjYW4ndCB1cGRhdGUgZGF0YWdyaWQgdmFsdWVzIGZyb20gbG9jYWxTdG9yYWdlXG4gICAqIHdpdGhvdXQgZ2V0dGluZyBFeHByZXNzaW9uQ2hhbmdlZEFmdGVySXRIYXNCZWVuQ2hlY2tlZEVycm9yXG4gICAqL1xuICBwcml2YXRlIHVwZGF0ZVBhZ2luYXRpb25EZXNjcmlwdGlvbigpIHtcbiAgICBpZiAodGhpcy5wYWdpbmF0aW9uRWxlbSAmJiB0aGlzLnBhZ2luYXRpb24pIHtcbiAgICAgIGNvbnN0IHBhZ2luYXRpb25EZXNjRWxlbSA9ICg8SFRNTEVsZW1lbnQ+dGhpcy5wYWdpbmF0aW9uRWxlbS5uYXRpdmVFbGVtZW50KS5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKFxuICAgICAgICAncGFnaW5hdGlvbi1kZXNjcmlwdGlvbidcbiAgICAgICk/LlswXTtcbiAgICAgIGlmIChwYWdpbmF0aW9uRGVzY0VsZW0pIHtcbiAgICAgICAgaWYgKCF0aGlzLndhcm5lZEFib3V0Q3VzdG9tRGVzY3JpcHRpb24gJiYgcGFnaW5hdGlvbkRlc2NFbGVtLnRleHRDb250ZW50LnRyaW0oKS5sZW5ndGggIT09IDApIHtcbiAgICAgICAgICBjb25zb2xlLmVycm9yKFxuICAgICAgICAgICAgJ1doZW4gdXNpbmcgY2xyU3RhdGVQZXJzaXN0ZW5jZUtleSBkaXJlY3RpdmUsIHlvdSBzaG91bGQgbm90IHVzZSBjdXN0b20gcGFnaW5hdGlvbiBkZXNjcmlwdGlvbicgK1xuICAgICAgICAgICAgICAnIGluc2lkZSBwYWdpbmF0aW9uIGNvbXBvbmVudCBjb250ZW50LCBidXQgdXNlIFtjbHJQYWdpbmF0aW9uRGVzY3JpcHRpb25dIG9uIGNsci1kYXRhZ3JpZCdcbiAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMud2FybmVkQWJvdXRDdXN0b21EZXNjcmlwdGlvbiA9IHRydWU7XG4gICAgICAgIGlmICh0aGlzLnBhZ2luYXRpb25EZXNjcmlwdGlvbikge1xuICAgICAgICAgIHBhZ2luYXRpb25EZXNjRWxlbS50ZXh0Q29udGVudCA9IHRoaXMucGFnaW5hdGlvbkRlc2NyaXB0aW9uXG4gICAgICAgICAgICAucmVwbGFjZSgne3tmaXJzdH19JywgKHRoaXMucGFnaW5hdGlvbi5maXJzdEl0ZW0gKyAxKS50b1N0cmluZygpKVxuICAgICAgICAgICAgLnJlcGxhY2UoJ3t7bGFzdH19JywgKHRoaXMucGFnaW5hdGlvbi5sYXN0SXRlbSArIDEpLnRvU3RyaW5nKCkpXG4gICAgICAgICAgICAucmVwbGFjZSgne3t0b3RhbH19JywgdGhpcy5wYWdpbmF0aW9uLnRvdGFsSXRlbXMudG9TdHJpbmcoKSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgc3RhdGUgb2Ygdm9sYXRpbGUgZGF0YS4gVGhpcyBjYW4gYmUgaW5mbHVlbmNlZCBieSBjbHJVc2VMb2NhbFN0b3JlT25seS5cbiAgICovXG4gIGdldFZvbGF0aWxlRGF0YVN0YXRlKCk6IENsckRhdGFncmlkU3RhdGVQZXJzaXN0ZW5jZU1vZGVsIHtcbiAgICByZXR1cm4gSlNPTi5wYXJzZSgodGhpcy51c2VMb2NhbFN0b3JlT25seSA/IGxvY2FsU3RvcmFnZSA6IHNlc3Npb25TdG9yYWdlKS5nZXRJdGVtKHRoaXMub3B0aW9ucy5rZXkpKSB8fCB7fTtcbiAgfVxuXG4gIGdldExvY2FsU3RvcmFnZVN0YXRlKCk6IENsckRhdGFncmlkU3RhdGVQZXJzaXN0ZW5jZU1vZGVsIHtcbiAgICByZXR1cm4gSlNPTi5wYXJzZShsb2NhbFN0b3JhZ2UuZ2V0SXRlbSh0aGlzLm9wdGlvbnMua2V5KSkgfHwge307XG4gIH1cblxuICAvKipcbiAgICogQXMgYSBkYXRlIGlzIHNlcmlhbGl6ZWQgYXMgc3RyaW5nLCBidXQgbm90IGRlc2VyaWFsaXplZCBhcyBkYXRlXG4gICAqIHdlIG5lZWQgdG8gYWRkIHNvbWUgbWV0YSBpbmZvcm1hdGlvbiB0byBkbyB0aGF0IG1hbnVhbGx5IGxhdGVyXG4gICAqL1xuICBwcml2YXRlIGVucmljaEZpbHRlclZhbHVlKGZpbHRlcjogUmVjb3JkPHN0cmluZywgdW5rbm93bj4pIHtcbiAgICBjb25zdCByZXN1bHQgPSB7fSBhcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPjtcblxuICAgIE9iamVjdC5rZXlzKGZpbHRlcikuZm9yRWFjaChcbiAgICAgIGtleSA9PlxuICAgICAgICAocmVzdWx0W2tleV0gPVxuICAgICAgICAgIGZpbHRlcltrZXldIGluc3RhbmNlb2YgRGF0ZVxuICAgICAgICAgICAgPyAoe1xuICAgICAgICAgICAgICAgIHR5cGU6IERBVEVfVFlQRSxcbiAgICAgICAgICAgICAgICB2YWx1ZTogZmlsdGVyW2tleV0sXG4gICAgICAgICAgICAgIH0gYXMgRmlsdGVyVmFsdWVXaXRoTWV0YWRhdGEpXG4gICAgICAgICAgICA6IGZpbHRlcltrZXldKVxuICAgICk7XG5cbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG5cbiAgLyoqXG4gICAqIFBhcnNlIGZpbHRlciB2YWx1ZXMgd2l0aCBtZXRhIGluZm9ybWF0aW9uIGxpa2UgZGF0ZSwgd2hpY2ggbmVlZHMgbWFudWFsIGRlc2VyaWFsaXphdGlvbiB0byBhIGRhdGUgb2JqZWN0XG4gICAqL1xuICBwcml2YXRlIHBhcnNlRmlsdGVyVmFsdWUodmFsdWU6IHVua25vd24pOiB1bmtub3duIHtcbiAgICByZXR1cm4gKHZhbHVlIGFzIEZpbHRlclZhbHVlV2l0aE1ldGFkYXRhKT8udHlwZSA9PT0gREFURV9UWVBFXG4gICAgICA/IG5ldyBEYXRlKCh2YWx1ZSBhcyBGaWx0ZXJWYWx1ZVdpdGhNZXRhZGF0YSkudmFsdWUgYXMgc3RyaW5nKVxuICAgICAgOiB2YWx1ZTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0RmlsdGVyKHByb3A6IHN0cmluZyk6IENsckRhdGFncmlkRmlsdGVySW50ZXJmYWNlPHVua25vd24sIHVua25vd24+IHtcbiAgICAvLyBnZXQgZGVmYXVsdCBmaWx0ZXIgb3IgY3VzdG9tIGZpbHRlclxuICAgIHJldHVybiAoXG4gICAgICB0aGlzLmRhdGFncmlkLmNvbHVtbnMuZmluZChjb2wgPT4gY29sLmZpZWxkID09PSBwcm9wKT8uZmlsdGVyIHx8XG4gICAgICB0aGlzLmN1c3RvbUZpbHRlcnMuZmluZChmaWx0ZXIgPT4gdGhpcy5nZXRGaWx0ZXJQcm9wZXJ0eU5hbWUoZmlsdGVyLmZpbHRlcikgPT09IHByb3ApPy5maWx0ZXJcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRGaWx0ZXJQcm9wZXJ0eU5hbWUoZmlsdGVyOiBDbHJEYXRhZ3JpZEZpbHRlckludGVyZmFjZTx1bmtub3duLCB1bmtub3duPik6IHN0cmluZyB7XG4gICAgLy8gZm9yIE5lc3RlZFByb3BlcnR5IHdlIG5lZWQgdG8gZ2V0IHRoZSBvcmlnaW5hbCBwcm9wZXJ0eVxuICAgIGNvbnN0IGZpbHRlcldpdGhQcm9wID0gZmlsdGVyIGFzIHVua25vd24gYXMgeyBwcm9wZXJ0eTogdW5rbm93biB9O1xuICAgIHJldHVybiAoKGZpbHRlcldpdGhQcm9wLnByb3BlcnR5IGFzIFJlY29yZDxzdHJpbmcsIHVua25vd24+KT8ucHJvcCB8fCBmaWx0ZXJXaXRoUHJvcC5wcm9wZXJ0eSkgYXMgc3RyaW5nO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5kZXN0cm95JC5uZXh0KCk7XG4gICAgdGhpcy5kZXN0cm95JC5jb21wbGV0ZSgpO1xuICB9XG59XG4iXX0=
|
|
243
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdGUtcGVyc2lzdGVuY2Uta2V5LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9jbHItYWRkb25zL2RhdGFncmlkL2RhdGFncmlkLXN0YXRlLXBlcnNpc3RlbmNlL3N0YXRlLXBlcnNpc3RlbmNlLWtleS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLFlBQVksRUFDWixlQUFlLEVBQ2YsU0FBUyxFQUNULFVBQVUsRUFDVixLQUFLLEVBRUwsU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDTCxXQUFXLEVBRVgsaUJBQWlCLEVBRWpCLHFCQUFxQixFQUNyQixvQkFBb0IsRUFFcEIsMEJBQTBCLEdBQzNCLE1BQU0sY0FBYyxDQUFDO0FBRXRCLE9BQU8sRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3RDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7O0FBRzNDLE1BQU0sU0FBUyxHQUFHLE1BQU0sQ0FBQztBQVV6QixNQUFNLE9BQU8sNEJBQTRCO0lBOEJ2QyxZQUFvQixRQUFxQjtRQUFyQixhQUFRLEdBQVIsUUFBUSxDQUFhO1FBbEJ6QyxzQkFBaUIsR0FBRyxLQUFLLENBQUM7UUFHMUIsMEJBQXFCLEdBQUcsRUFBRSxDQUFDO1FBVzNCLGlDQUE0QixHQUFHLEtBQUssQ0FBQztRQUNyQyxpQ0FBNEIsR0FBRyxLQUFLLENBQUM7UUFDckMsYUFBUSxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7SUFFYSxDQUFDO0lBRTdDLGtCQUFrQjtRQUNoQixJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsWUFBWSxFQUFFO1lBQzdCLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztTQUNiO2FBQU07WUFDTCxVQUFVLENBQUMsR0FBRyxFQUFFO2dCQUNkLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztZ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QUlqQyxVQUFVO3NCQURULFlBQVk7dUJBQUMscUJBQXFCO2dCQUluQyxjQUFjO3NCQURiLFlBQVk7dUJBQUMscUJBQXFCLEVBQUUsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFO2dCQUl6RCxhQUFhO3NCQURaLGVBQWU7dUJBQUMsaUJBQWlCLEVBQUUsRUFBRSxXQUFXLEVBQUUsSUFBSSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJDb250ZW50SW5pdCxcbiAgQ29udGVudENoaWxkLFxuICBDb250ZW50Q2hpbGRyZW4sXG4gIERpcmVjdGl2ZSxcbiAgRWxlbWVudFJlZixcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgUXVlcnlMaXN0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIENsckRhdGFncmlkLFxuICBDbHJEYXRhZ3JpZENvbXBhcmF0b3JJbnRlcmZhY2UsXG4gIENsckRhdGFncmlkRmlsdGVyLFxuICBDbHJEYXRhZ3JpZEZpbHRlckludGVyZmFjZSxcbiAgQ2xyRGF0YWdyaWRQYWdpbmF0aW9uLFxuICBDbHJEYXRhZ3JpZFNvcnRPcmRlcixcbiAgQ2xyRGF0YWdyaWRTdGF0ZUludGVyZmFjZSxcbiAgRGF0YWdyaWRQcm9wZXJ0eUNvbXBhcmF0b3IsXG59IGZyb20gJ0BjbHIvYW5ndWxhcic7XG5pbXBvcnQgeyBDbHJEYXRhZ3JpZFN0YXRlUGVyc2lzdGVuY2VNb2RlbCB9IGZyb20gJy4vZGF0YWdyaWQtc3RhdGUtcGVyc2lzdGVuY2UtbW9kZWwuaW50ZXJmYWNlJztcbmltcG9ydCB7IGRlbGF5LCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBTdGF0ZVBlcnNpc3RlbmNlT3B0aW9ucyB9IGZyb20gJy4vc3RhdGUtcGVyc2lzdGVuY2Utb3B0aW9ucy5pbnRlcmZhY2UnO1xuXG5jb25zdCBEQVRFX1RZUEUgPSAnZGF0ZSc7XG5cbmludGVyZmFjZSBGaWx0ZXJWYWx1ZVdpdGhNZXRhZGF0YSB7XG4gIHR5cGU6IHN0cmluZztcbiAgdmFsdWU6IHVua25vd247XG59XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tjbHJTdGF0ZVBlcnNpc3RlbmNlS2V5XScsXG59KVxuZXhwb3J0IGNsYXNzIFN0YXRlUGVyc2lzdGVuY2VLZXlEaXJlY3RpdmUgaW1wbGVtZW50cyBBZnRlckNvbnRlbnRJbml0LCBPbkRlc3Ryb3kge1xuICAvKipcbiAgICogQ29uZmlndXJhdGlvbiBvcHRpb25zIGZvciB0aGUgcGVyc2lzdGVuY2UuXG4gICAqICdLZXknIHJlcHJlc2VudHMgdGhlIGxvY2FsIHN0b3JhZ2Uga2V5IHVuZGVyIHdoaWNoIHRoZSBwZXJzaXN0ZW5jZSBzdGF0ZSBpcyBzdG9yZWQuXG4gICAqXG4gICAqIE9wdGlvbmFsIGZpZWxkcyB3aXRoIHRoZSAncGVyc2lzdCcgcHJlZml4IHRvZ2dsZSB0aGUgcGVyc2lzdGVuY2Ugb2YgdGhlIHJlc3BlY3RpdmUgZGF0YWdyaWQgZnVuY3Rpb25hbGl0eSxcbiAgICogdGhlIGRlZmF1bHQgdmFsdWUgaXMgYWx3YXlzICd0cnVlJy5cbiAgICovXG4gIEBJbnB1dCgnY2xyU3RhdGVQZXJzaXN0ZW5jZUtleScpXG4gIG9wdGlvbnM6IFN0YXRlUGVyc2lzdGVuY2VPcHRpb25zO1xuXG4gIEBJbnB1dCgnY2xyVXNlTG9jYWxTdG9yZU9ubHknKVxuICB1c2VMb2NhbFN0b3JlT25seSA9IGZhbHNlO1xuXG4gIEBJbnB1dCgnY2xyUGFnaW5hdGlvbkRlc2NyaXB0aW9uJylcbiAgcGFnaW5hdGlvbkRlc2NyaXB0aW9uID0gJyc7XG5cbiAgQENvbnRlbnRDaGlsZChDbHJEYXRhZ3JpZFBhZ2luYXRpb24pXG4gIHBhZ2luYXRpb246IENsckRhdGFncmlkUGFnaW5hdGlvbjtcblxuICBAQ29udGVudENoaWxkKENsckRhdGFncmlkUGFnaW5hdGlvbiwgeyByZWFkOiBFbGVtZW50UmVmIH0pXG4gIHBhZ2luYXRpb25FbGVtOiBFbGVtZW50UmVmO1xuXG4gIEBDb250ZW50Q2hpbGRyZW4oQ2xyRGF0YWdyaWRGaWx0ZXIsIHsgZGVzY2VuZGFudHM6IHRydWUgfSlcbiAgY3VzdG9tRmlsdGVyczogUXVlcnlMaXN0PENsckRhdGFncmlkRmlsdGVyPjtcblxuICBjYW5TaG93UGFnaW5hdGlvbkRlc2NyaXB0aW9uID0gZmFsc2U7XG4gIHdhcm5lZEFib3V0Q3VzdG9tRGVzY3JpcHRpb24gPSBmYWxzZTtcbiAgZGVzdHJveSQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZGF0YWdyaWQ6IENsckRhdGFncmlkKSB7fVxuXG4gIG5nQWZ0ZXJDb250ZW50SW5pdCgpIHtcbiAgICBpZiAodGhpcy5vcHRpb25zLnNlcnZlckRyaXZlbikge1xuICAgICAgdGhpcy5pbml0KCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICB0aGlzLmluaXQoKTtcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgaW5pdCgpIHtcbiAgICBjb25zdCB2b2xhdGlsZURhdGFTdGF0ZSA9IHRoaXMuZ2V0Vm9sYXRpbGVEYXRhU3RhdGUoKTtcbiAgICBjb25zdCBsb2NhbFN0b3JhZ2VTdGF0ZSA9IHRoaXMuZ2V0TG9jYWxTdG9yYWdlU3RhdGUoKTtcblxuICAgIHRoaXMuaW5pdEZpbHRlcih2b2xhdGlsZURhdGFTdGF0ZSk7XG4gICAgdGhpcy5pbml0U29ydGluZyhsb2NhbFN0b3JhZ2VTdGF0ZSk7XG4gICAgdGhpcy5pbml0RGF0YWdyaWRQZXJzaXN0ZXIoKTtcblxuICAgIGNvbnN0IHBhZ2luYXRpb25QZXJzaXN0ZW5jZUVuYWJsZWQgPSB0aGlzLm9wdGlvbnMucGVyc2lzdFBhZ2luYXRpb24gPz8gdHJ1ZTtcbiAgICBpZiAodGhpcy5wYWdpbmF0aW9uPy5wYWdlICYmIHBhZ2luYXRpb25QZXJzaXN0ZW5jZUVuYWJsZWQpIHtcbiAgICAgIHRoaXMuaW5pdFBhZ2VTaXplUGVyc2lzdGVyKGxvY2FsU3RvcmFnZVN0YXRlKTtcbiAgICAgIHRoaXMuaW5pdEN1cnJlbnRQYWdlKHZvbGF0aWxlRGF0YVN0YXRlKTtcbiAgICB9XG4gICAgdGhpcy5jYW5TaG93UGFnaW5hdGlvbkRlc2NyaXB0aW9uID0gdHJ1ZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBXaXRoIHRoaXMgbWV0aG9kIGZpbHRlcnMgY2FuIGJlIGNsZWFyZWRcbiAgICogQHBhcmFtIGtleSBUaGUga2V5IGZvciBjbHJTdGF0ZVBlcnNpc3RlbmNlS2V5XG4gICAqIEBwYXJhbSB1c2VMb2NhbFN0b3JlT25seSBUaGUgY2xyVXNlTG9jYWxTdG9yZU9ubHkgaW5kaWNhdG9yXG4gICAqL1xuICBzdGF0aWMgY2xlYXJGaWx0ZXJzKGtleTogc3RyaW5nLCB1c2VMb2NhbFN0b3JlT25seTogYm9vbGVhbik6IHZvaWQge1xuICAgIGNvbnN0IGRhdGEgPSBKU09OLnBhcnNlKCh1c2VMb2NhbFN0b3JlT25seSA/IGxvY2FsU3RvcmFnZSA6IHNlc3Npb25TdG9yYWdlKS5nZXRJdGVtKGtleSkpIHx8IHt9O1xuICAgIGRhdGEuY29sdW1ucyA9IHt9O1xuICAgICh1c2VMb2NhbFN0b3JlT25seSA/IGxvY2FsU3RvcmFnZSA6IHNlc3Npb25TdG9yYWdlKS5zZXRJdGVtKGtleSwgSlNPTi5zdHJpbmdpZnkoZGF0YSkpO1xuICB9XG5cbiAgcHJpdmF0ZSBpbml0UGFnZVNpemVQZXJzaXN0ZXIoc2F2ZWRTdGF0ZTogQ2xyRGF0YWdyaWRTdGF0ZVBlcnNpc3RlbmNlTW9kZWwpIHtcbiAgICAvKiBwZXJzaXN0IHBhZ2Ugc2l6ZSBjaGFuZ2VzIGluIGxvY2FsIHN0b3JhZ2UgKi9cbiAgICB0aGlzLnBhZ2luYXRpb24ucGFnZS5zaXplQ2hhbmdlLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKS5zdWJzY3JpYmUocGFnZVNpemUgPT4ge1xuICAgICAgY29uc3Qgc3RhdGUgPSB0aGlzLmdldExvY2FsU3RvcmFnZVN0YXRlKCk7XG4gICAgICBzdGF0ZS5wYWdlU2l6ZSA9IHBhZ2VTaXplO1xuICAgICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0odGhpcy5vcHRpb25zLmtleSwgSlNPTi5zdHJpbmdpZnkoc3RhdGUpKTtcbiAgICB9KTtcblxuICAgIC8qIGluaXQgcGFnZSBzaXplIG9mIGRhdGFncmlkIGlmIGFscmVhZHkgcGVyc2lzdGVkIGluIGxvY2FsIHN0b3JhZ2UgKi9cbiAgICBpZiAoc2F2ZWRTdGF0ZS5wYWdlU2l6ZSkge1xuICAgICAgdGhpcy5wYWdpbmF0aW9uLnBhZ2Uuc2l6ZSA9IHNhdmVkU3RhdGUucGFnZVNpemU7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBpbml0Q3VycmVudFBhZ2Uoc2F2ZWRTdGF0ZTogQ2xyRGF0YWdyaWRTdGF0ZVBlcnNpc3RlbmNlTW9kZWwpIHtcbiAgICAvKiBpbml0IGN1cnJlbnQgcGFnZSBvZiBkYXRhZ3JpZCBpZiBhbHJlYWR5IHBlcnNpc3RlZCAqL1xuICAgIGlmIChzYXZlZFN0YXRlPy5jdXJyZW50UGFnZSkge1xuICAgICAgdGhpcy5wYWdpbmF0aW9uLnBhZ2UuY3VycmVudCA9IHNhdmVkU3RhdGUuY3VycmVudFBhZ2U7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBpbml0RmlsdGVyKHNhdmVkU3RhdGU6IENsckRhdGFncmlkU3RhdGVQZXJzaXN0ZW5jZU1vZGVsKTogdm9pZCB7XG4gICAgY29uc3QgZmlsdGVyUGVyc2lzdGVuY2VFbmFibGVkID0gdGhpcy5vcHRpb25zLnBlcnNpc3RGaWx0ZXJzID8/IHRydWU7XG4gICAgaWYgKHNhdmVkU3RhdGUuY29sdW1ucyAmJiBmaWx0ZXJQZXJzaXN0ZW5jZUVuYWJsZWQpIHtcbiAgICAgIE9iamVjdC5rZXlzKHNhdmVkU3RhdGUuY29sdW1ucykuZm9yRWFjaChwcm9wID0+IHtcbiAgICAgICAgY29uc3QgZmlsdGVyID0gdGhpcy5nZXRGaWx0ZXIocHJvcCk7XG4gICAgICAgIGlmIChmaWx0ZXIpIHtcbiAgICAgICAgICBjb25zdCBzYXZlZEZpbHRlclZhbHVlID0gc2F2ZWRTdGF0ZS5jb2x1bW5zW3Byb3BdLmZpbHRlclZhbHVlIHx8IHt9O1xuICAgICAgICAgIE9iamVjdC5rZXlzKHNhdmVkRmlsdGVyVmFsdWUpXG4gICAgICAgICAgICAuZmlsdGVyKHZhbHVlS2V5ID0+IHZhbHVlS2V5ICE9PSAncHJvcGVydHknKVxuICAgICAgICAgICAgLmZvckVhY2godmFsdWVLZXkgPT4gKChmaWx0ZXIgYXMgYW55KVt2YWx1ZUtleV0gPSB0aGlzLnBhcnNlRmlsdGVyVmFsdWUoc2F2ZWRGaWx0ZXJWYWx1ZVt2YWx1ZUtleV0pKSk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgaW5pdFNvcnRpbmcoc2F2ZWRTdGF0ZTogQ2xyRGF0YWdyaWRTdGF0ZVBlcnNpc3RlbmNlTW9kZWwpOiB2b2lkIHtcbiAgICBjb25zdCBzb3J0UGVyc2lzdGVuY2VFbmFibGVkID0gdGhpcy5vcHRpb25zLnBlcnNpc3RTb3J0ID8/IHRydWU7XG4gICAgaWYgKHNhdmVkU3RhdGUuc29ydEJ5ICYmIHNvcnRQZXJzaXN0ZW5jZUVuYWJsZWQpIHtcbiAgICAgIHRoaXMuZGF0YWdyaWQuY29sdW1ucy5mb3JFYWNoKGNvbHVtbiA9PiB7XG4gICAgICAgIGlmICh0aGlzLmdldFNvcnRQcm9wZXJ0eShjb2x1bW4uc29ydEJ5KSA9PT0gc2F2ZWRTdGF0ZS5zb3J0QnkpIHtcbiAgICAgICAgICBjb2x1bW4uc29ydE9yZGVyID0gc2F2ZWRTdGF0ZS5zb3J0UmV2ZXJzZSA/IENsckRhdGFncmlkU29ydE9yZGVyLkRFU0MgOiBDbHJEYXRhZ3JpZFNvcnRPcmRlci5BU0M7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgY29sdW1uLnNvcnRPcmRlciA9IENsckRhdGFncmlkU29ydE9yZGVyLlVOU09SVEVEO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGluaXREYXRhZ3JpZFBlcnNpc3RlcigpIHtcbiAgICAvLyBkZWxheSBpcyBuZWVkZWQsIGFzIG9uRGVzdHJveSB0aGUgZmlsdGVycyBlbWl0IGVtcHR5IHZhbHVlcy5cbiAgICAvLyBTbyBkZWxheSBpdCB0byB0aGUgZW5kIG9mIHRoZSBjdXJyZW50IGN5Y2xlLCBzbyB0aGUgZGlyZWN0aXZlIGlzIGFsc28gZGVzdHJveWVkIGJlZm9yZSBpdCBnZXRzIHRoZSBuZXh0IHZhbHVlc1xuICAgIHRoaXMuZGF0YWdyaWQucmVmcmVzaC5waXBlKGRlbGF5KDApLCB0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpLnN1YnNjcmliZShkZ1N0YXRlID0+IHtcbiAgICAgIHRoaXMucGVyc2lzdEZpbHRlcnNBbmRDdXJyZW50UGFnZShkZ1N0YXRlKTtcbiAgICAgIHRoaXMucGVyc2lzdFNvcnRpbmcoZGdTdGF0ZSk7XG5cbiAgICAgIGlmICh0aGlzLmNhblNob3dQYWdpbmF0aW9uRGVzY3JpcHRpb24pIHtcbiAgICAgICAgdGhpcy51cGRhdGVQYWdpbmF0aW9uRGVzY3JpcHRpb24oKTtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIHRoaXMuZGF0YWdyaWQuaXRlbXMuY2hhbmdlLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKS5zdWJzY3JpYmUoKCkgPT4gdGhpcy51cGRhdGVQYWdpbmF0aW9uRGVzY3JpcHRpb24oKSk7XG4gIH1cblxuICBwcml2YXRlIHBlcnNpc3RGaWx0ZXJzQW5kQ3VycmVudFBhZ2UoZGdTdGF0ZTogQ2xyRGF0YWdyaWRTdGF0ZUludGVyZmFjZTx1bmtub3duPik6IHZvaWQge1xuICAgIGNvbnN0IGZpbHRlclBlcnNpc3RlbmNlRW5hYmxlZCA9IHRoaXMub3B0aW9ucy5wZXJzaXN0RmlsdGVycyA/PyB0cnVlO1xuICAgIGNvbnN0IHBhZ2luYXRpb25QZXJzaXN0ZW5jZUVuYWJsZWQgPSB0aGlzLm9wdGlvbnMucGVyc2lzdFBhZ2luYXRpb24gPz8gdHJ1ZTtcblxuICAgIGNvbnN0IHN0YXRlID0gdGhpcy5nZXRWb2xhdGlsZURhdGFTdGF0ZSgpO1xuICAgIHN0YXRlLmNvbHVtbnMgPSBzdGF0ZS5jb2x1bW5zIHx8IHt9O1xuXG4gICAgaWYgKHBhZ2luYXRpb25QZXJzaXN0ZW5jZUVuYWJsZWQpIHtcbiAgICAgIHN0YXRlLmN1cnJlbnRQYWdlID0gZGdTdGF0ZS5wYWdlPy5jdXJyZW50O1xuICAgIH1cblxuICAgIGlmIChmaWx0ZXJQZXJzaXN0ZW5jZUVuYWJsZWQpIHtcbiAgICAgIE9iamVjdC5rZXlzKHN0YXRlLmNvbHVtbnMpLmZvckVhY2gocHJvcCA9PiAoc3RhdGUuY29sdW1uc1twcm9wXS5maWx0ZXJWYWx1ZSA9IHVuZGVmaW5lZCkpO1xuICAgICAgZGdTdGF0ZS5maWx0ZXJzPy5mb3JFYWNoKGZpbHRlciA9PiB7XG4gICAgICAgIGNvbnN0IHByb3BlcnR5ID0gdGhpcy5nZXRGaWx0ZXJQcm9wZXJ0eU5hbWUoZmlsdGVyKTtcbiAgICAgICAgaWYgKHByb3BlcnR5KSB7XG4gICAgICAgICAgc3RhdGUuY29sdW1uc1twcm9wZXJ0eV0gPSBzdGF0ZS5jb2x1bW5zW3Byb3BlcnR5XSB8fCB7fTtcbiAgICAgICAgICBzdGF0ZS5jb2x1bW5zW3Byb3BlcnR5XS5maWx0ZXJWYWx1ZSA9IHRoaXMuZW5yaWNoRmlsdGVyVmFsdWUoZmlsdGVyKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgKHRoaXMudXNlTG9jYWxTdG9yZU9ubHkgPyBsb2NhbFN0b3JhZ2UgOiBzZXNzaW9uU3RvcmFnZSkuc2V0SXRlbSh0aGlzLm9wdGlvbnMua2V5LCBKU09OLnN0cmluZ2lmeShzdGF0ZSkpO1xuICB9XG5cbiAgcHJpdmF0ZSBwZXJzaXN0U29ydGluZyhkZ1N0YXRlOiBDbHJEYXRhZ3JpZFN0YXRlSW50ZXJmYWNlPHVua25vd24+KTogdm9pZCB7XG4gICAgY29uc3Qgc29ydFBlcnNpc3RlbmNlRW5hYmxlZCA9IHRoaXMub3B0aW9ucy5wZXJzaXN0U29ydCA/PyB0cnVlO1xuICAgIGlmIChzb3J0UGVyc2lzdGVuY2VFbmFibGVkKSB7XG4gICAgICBjb25zdCBzdGF0ZSA9IHRoaXMuZ2V0TG9jYWxTdG9yYWdlU3RhdGUoKTtcbiAgICAgIHN0YXRlLnNvcnRCeSA9IHRoaXMuZ2V0U29ydFByb3BlcnR5KGRnU3RhdGUuc29ydD8uYnkpO1xuICAgICAgc3RhdGUuc29ydFJldmVyc2UgPSBkZ1N0YXRlLnNvcnQ/LnJldmVyc2U7XG5cbiAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKHRoaXMub3B0aW9ucy5rZXksIEpTT04uc3RyaW5naWZ5KHN0YXRlKSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFBhZ2luYXRpb24gZGVzY3JpcHRpb24gbXVzdCBiZSBzZXQgYnkgdGhpcyBkaXJlY3RpdmUsXG4gICAqIG90aGVyd2lzZSB3ZSBjYW4ndCB1cGRhdGUgZGF0YWdyaWQgdmFsdWVzIGZyb20gbG9jYWxTdG9yYWdlXG4gICAqIHdpdGhvdXQgZ2V0dGluZyBFeHByZXNzaW9uQ2hhbmdlZEFmdGVySXRIYXNCZWVuQ2hlY2tlZEVycm9yXG4gICAqL1xuICBwcml2YXRlIHVwZGF0ZVBhZ2luYXRpb25EZXNjcmlwdGlvbigpIHtcbiAgICBpZiAodGhpcy5wYWdpbmF0aW9uRWxlbSAmJiB0aGlzLnBhZ2luYXRpb24pIHtcbiAgICAgIGNvbnN0IHBhZ2luYXRpb25EZXNjRWxlbSA9ICg8SFRNTEVsZW1lbnQ+dGhpcy5wYWdpbmF0aW9uRWxlbS5uYXRpdmVFbGVtZW50KS5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKFxuICAgICAgICAncGFnaW5hdGlvbi1kZXNjcmlwdGlvbidcbiAgICAgICk/LlswXTtcbiAgICAgIGlmIChwYWdpbmF0aW9uRGVzY0VsZW0pIHtcbiAgICAgICAgaWYgKCF0aGlzLndhcm5lZEFib3V0Q3VzdG9tRGVzY3JpcHRpb24gJiYgcGFnaW5hdGlvbkRlc2NFbGVtLnRleHRDb250ZW50LnRyaW0oKS5sZW5ndGggIT09IDApIHtcbiAgICAgICAgICBjb25zb2xlLmVycm9yKFxuICAgICAgICAgICAgJ1doZW4gdXNpbmcgY2xyU3RhdGVQZXJzaXN0ZW5jZUtleSBkaXJlY3RpdmUsIHlvdSBzaG91bGQgbm90IHVzZSBjdXN0b20gcGFnaW5hdGlvbiBkZXNjcmlwdGlvbicgK1xuICAgICAgICAgICAgICAnIGluc2lkZSBwYWdpbmF0aW9uIGNvbXBvbmVudCBjb250ZW50LCBidXQgdXNlIFtjbHJQYWdpbmF0aW9uRGVzY3JpcHRpb25dIG9uIGNsci1kYXRhZ3JpZCdcbiAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMud2FybmVkQWJvdXRDdXN0b21EZXNjcmlwdGlvbiA9IHRydWU7XG4gICAgICAgIGlmICh0aGlzLnBhZ2luYXRpb25EZXNjcmlwdGlvbikge1xuICAgICAgICAgIHBhZ2luYXRpb25EZXNjRWxlbS50ZXh0Q29udGVudCA9IHRoaXMucGFnaW5hdGlvbkRlc2NyaXB0aW9uXG4gICAgICAgICAgICAucmVwbGFjZSgne3tmaXJzdH19JywgKHRoaXMucGFnaW5hdGlvbi5maXJzdEl0ZW0gKyAxKS50b1N0cmluZygpKVxuICAgICAgICAgICAgLnJlcGxhY2UoJ3t7bGFzdH19JywgKHRoaXMucGFnaW5hdGlvbi5sYXN0SXRlbSArIDEpLnRvU3RyaW5nKCkpXG4gICAgICAgICAgICAucmVwbGFjZSgne3t0b3RhbH19JywgdGhpcy5wYWdpbmF0aW9uLnRvdGFsSXRlbXMudG9TdHJpbmcoKSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgc3RhdGUgb2Ygdm9sYXRpbGUgZGF0YS4gVGhpcyBjYW4gYmUgaW5mbHVlbmNlZCBieSBjbHJVc2VMb2NhbFN0b3JlT25seS5cbiAgICovXG4gIGdldFZvbGF0aWxlRGF0YVN0YXRlKCk6IENsckRhdGFncmlkU3RhdGVQZXJzaXN0ZW5jZU1vZGVsIHtcbiAgICByZXR1cm4gSlNPTi5wYXJzZSgodGhpcy51c2VMb2NhbFN0b3JlT25seSA/IGxvY2FsU3RvcmFnZSA6IHNlc3Npb25TdG9yYWdlKS5nZXRJdGVtKHRoaXMub3B0aW9ucy5rZXkpKSB8fCB7fTtcbiAgfVxuXG4gIGdldExvY2FsU3RvcmFnZVN0YXRlKCk6IENsckRhdGFncmlkU3RhdGVQZXJzaXN0ZW5jZU1vZGVsIHtcbiAgICByZXR1cm4gSlNPTi5wYXJzZShsb2NhbFN0b3JhZ2UuZ2V0SXRlbSh0aGlzLm9wdGlvbnMua2V5KSkgfHwge307XG4gIH1cblxuICAvKipcbiAgICogQXMgYSBkYXRlIGlzIHNlcmlhbGl6ZWQgYXMgc3RyaW5nLCBidXQgbm90IGRlc2VyaWFsaXplZCBhcyBkYXRlXG4gICAqIHdlIG5lZWQgdG8gYWRkIHNvbWUgbWV0YSBpbmZvcm1hdGlvbiB0byBkbyB0aGF0IG1hbnVhbGx5IGxhdGVyXG4gICAqL1xuICBwcml2YXRlIGVucmljaEZpbHRlclZhbHVlKGZpbHRlcjogUmVjb3JkPHN0cmluZywgdW5rbm93bj4pIHtcbiAgICBjb25zdCByZXN1bHQgPSB7fSBhcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPjtcblxuICAgIE9iamVjdC5rZXlzKGZpbHRlcikuZm9yRWFjaChcbiAgICAgIGtleSA9PlxuICAgICAgICAocmVzdWx0W2tleV0gPVxuICAgICAgICAgIGZpbHRlcltrZXldIGluc3RhbmNlb2YgRGF0ZVxuICAgICAgICAgICAgPyAoe1xuICAgICAgICAgICAgICAgIHR5cGU6IERBVEVfVFlQRSxcbiAgICAgICAgICAgICAgICB2YWx1ZTogZmlsdGVyW2tleV0sXG4gICAgICAgICAgICAgIH0gYXMgRmlsdGVyVmFsdWVXaXRoTWV0YWRhdGEpXG4gICAgICAgICAgICA6IGZpbHRlcltrZXldKVxuICAgICk7XG5cbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG5cbiAgLyoqXG4gICAqIFBhcnNlIGZpbHRlciB2YWx1ZXMgd2l0aCBtZXRhIGluZm9ybWF0aW9uIGxpa2UgZGF0ZSwgd2hpY2ggbmVlZHMgbWFudWFsIGRlc2VyaWFsaXphdGlvbiB0byBhIGRhdGUgb2JqZWN0XG4gICAqL1xuICBwcml2YXRlIHBhcnNlRmlsdGVyVmFsdWUodmFsdWU6IHVua25vd24pOiB1bmtub3duIHtcbiAgICByZXR1cm4gKHZhbHVlIGFzIEZpbHRlclZhbHVlV2l0aE1ldGFkYXRhKT8udHlwZSA9PT0gREFURV9UWVBFXG4gICAgICA/IG5ldyBEYXRlKCh2YWx1ZSBhcyBGaWx0ZXJWYWx1ZVdpdGhNZXRhZGF0YSkudmFsdWUgYXMgc3RyaW5nKVxuICAgICAgOiB2YWx1ZTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0RmlsdGVyKHByb3A6IHN0cmluZyk6IENsckRhdGFncmlkRmlsdGVySW50ZXJmYWNlPHVua25vd24sIHVua25vd24+IHtcbiAgICAvLyBnZXQgZGVmYXVsdCBmaWx0ZXIgb3IgY3VzdG9tIGZpbHRlclxuICAgIHJldHVybiAoXG4gICAgICB0aGlzLmRhdGFncmlkLmNvbHVtbnMuZmluZChjb2wgPT4gY29sLmZpZWxkID09PSBwcm9wKT8uZmlsdGVyIHx8XG4gICAgICB0aGlzLmN1c3RvbUZpbHRlcnMuZmluZChmaWx0ZXIgPT4gdGhpcy5nZXRGaWx0ZXJQcm9wZXJ0eU5hbWUoZmlsdGVyLmZpbHRlcikgPT09IHByb3ApPy5maWx0ZXJcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRGaWx0ZXJQcm9wZXJ0eU5hbWUoZmlsdGVyOiBDbHJEYXRhZ3JpZEZpbHRlckludGVyZmFjZTx1bmtub3duLCB1bmtub3duPik6IHN0cmluZyB7XG4gICAgLy8gZm9yIE5lc3RlZFByb3BlcnR5IHdlIG5lZWQgdG8gZ2V0IHRoZSBvcmlnaW5hbCBwcm9wZXJ0eVxuICAgIGNvbnN0IGZpbHRlcldpdGhQcm9wID0gZmlsdGVyIGFzIHVua25vd24gYXMgeyBwcm9wZXJ0eTogdW5rbm93biB9O1xuICAgIHJldHVybiAoKGZpbHRlcldpdGhQcm9wLnByb3BlcnR5IGFzIFJlY29yZDxzdHJpbmcsIHVua25vd24+KT8ucHJvcCB8fCBmaWx0ZXJXaXRoUHJvcC5wcm9wZXJ0eSkgYXMgc3RyaW5nO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRTb3J0UHJvcGVydHkoc29ydEJ5OiBDbHJEYXRhZ3JpZENvbXBhcmF0b3JJbnRlcmZhY2U8dW5rbm93bj4gfCBzdHJpbmcpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICAgIGlmIChzb3J0QnkpIHtcbiAgICAgIGlmICh0eXBlb2Ygc29ydEJ5ID09PSAnc3RyaW5nJykge1xuICAgICAgICByZXR1cm4gc29ydEJ5O1xuICAgICAgfVxuICAgICAgaWYgKHNvcnRCeSBpbnN0YW5jZW9mIERhdGFncmlkUHJvcGVydHlDb21wYXJhdG9yKSB7XG4gICAgICAgIHJldHVybiBzb3J0QnkucHJvcDtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuZGVzdHJveSQubmV4dCgpO1xuICAgIHRoaXMuZGVzdHJveSQuY29tcGxldGUoKTtcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdGUtcGVyc2lzdGVuY2Utb3B0aW9ucy5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvY2xyLWFkZG9ucy9kYXRhZ3JpZC9kYXRhZ3JpZC1zdGF0ZS1wZXJzaXN0ZW5jZS9zdGF0ZS1wZXJzaXN0ZW5jZS1vcHRpb25zLmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBTdGF0ZVBlcnNpc3RlbmNlT3B0aW9ucyB7XG4gIGtleTogc3RyaW5nO1xuICBzZXJ2ZXJEcml2ZW46IGJvb2xlYW47XG4gIHBlcnNpc3RGaWx0ZXJzPzogYm9vbGVhbjtcbiAgcGVyc2lzdFBhZ2luYXRpb24/OiBib29sZWFuO1xuICBwZXJzaXN0U29ydD86IGJvb2xlYW47XG4gIHBlcnNpc3RIaWRkZW5Db2x1bW5zPzogYm9vbGVhbjtcbn1cbiJdfQ==
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
export const USER_INPUT_REGEX = /\d+/g;
|
|
2
|
+
// https://en.wikipedia.org/wiki/Date_format_by_country
|
|
3
|
+
export const LITTLE_ENDIAN_REGEX = /d+.+m+.+y+/i;
|
|
4
|
+
export const MIDDLE_ENDIAN_REGEX = /m+.+d+.+y+/i;
|
|
5
|
+
export const DELIMITER_REGEX = /d+|m+|y+/i;
|
|
6
|
+
export const YEAR = 'YYYY';
|
|
7
|
+
export const MONTH = 'MM';
|
|
8
|
+
export const DATE = 'DD';
|
|
9
|
+
export const LITTLE_ENDIAN = {
|
|
10
|
+
name: 'LITTLE_ENDIAN',
|
|
11
|
+
format: [DATE, MONTH, YEAR],
|
|
12
|
+
};
|
|
13
|
+
export const MIDDLE_ENDIAN = {
|
|
14
|
+
name: 'MIDDLE_ENDIAN',
|
|
15
|
+
format: [MONTH, DATE, YEAR],
|
|
16
|
+
};
|
|
17
|
+
export const BIG_ENDIAN = {
|
|
18
|
+
name: 'BIG_ENDIAN',
|
|
19
|
+
format: [YEAR, MONTH, DATE],
|
|
20
|
+
};
|
|
21
|
+
/** Default separator text. */
|
|
22
|
+
export const SEPARATOR_TEXT_DEFAULT = ' - ';
|
|
23
|
+
export const TRANSLATIONS = {
|
|
24
|
+
from: 'From',
|
|
25
|
+
to: 'To',
|
|
26
|
+
};
|
|
27
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZXJhbmdlLmNvbnN0YW50cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jbHItYWRkb25zL2RhdGVyYW5nZXBpY2tlci9kYXRlcmFuZ2UuY29uc3RhbnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBQyxNQUFNLGdCQUFnQixHQUFHLE1BQU0sQ0FBQztBQUV2Qyx1REFBdUQ7QUFDdkQsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBQUcsYUFBYSxDQUFDO0FBQ2pELE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFHLGFBQWEsQ0FBQztBQUVqRCxNQUFNLENBQUMsTUFBTSxlQUFlLEdBQUcsV0FBVyxDQUFDO0FBRTNDLE1BQU0sQ0FBQyxNQUFNLElBQUksR0FBRyxNQUFNLENBQUM7QUFDM0IsTUFBTSxDQUFDLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQztBQUMxQixNQUFNLENBQUMsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDO0FBU3pCLE1BQU0sQ0FBQyxNQUFNLGFBQWEsR0FBMkI7SUFDbkQsSUFBSSxFQUFFLGVBQWU7SUFDckIsTUFBTSxFQUFFLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRSxJQUFJLENBQUM7Q0FDNUIsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLGFBQWEsR0FBMkI7SUFDbkQsSUFBSSxFQUFFLGVBQWU7SUFDckIsTUFBTSxFQUFFLENBQUMsS0FBSyxFQUFFLElBQUksRUFBRSxJQUFJLENBQUM7Q0FDNUIsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBMkI7SUFDaEQsSUFBSSxFQUFFLFlBQVk7SUFDbEIsTUFBTSxFQUFFLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRSxJQUFJLENBQUM7Q0FDNUIsQ0FBQztBQUVGLDhCQUE4QjtBQUM5QixNQUFNLENBQUMsTUFBTSxzQkFBc0IsR0FBRyxLQUFLLENBQUM7QUFFNUMsTUFBTSxDQUFDLE1BQU0sWUFBWSxHQUFHO0lBQzFCLElBQUksRUFBRSxNQUFNO0lBQ1osRUFBRSxFQUFFLElBQUk7Q0FDVCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IFVTRVJfSU5QVVRfUkVHRVggPSAvXFxkKy9nO1xuXG4vLyBodHRwczovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9EYXRlX2Zvcm1hdF9ieV9jb3VudHJ5XG5leHBvcnQgY29uc3QgTElUVExFX0VORElBTl9SRUdFWCA9IC9kKy4rbSsuK3krL2k7XG5leHBvcnQgY29uc3QgTUlERExFX0VORElBTl9SRUdFWCA9IC9tKy4rZCsuK3krL2k7XG5cbmV4cG9ydCBjb25zdCBERUxJTUlURVJfUkVHRVggPSAvZCt8bSt8eSsvaTtcblxuZXhwb3J0IGNvbnN0IFlFQVIgPSAnWVlZWSc7XG5leHBvcnQgY29uc3QgTU9OVEggPSAnTU0nO1xuZXhwb3J0IGNvbnN0IERBVEUgPSAnREQnO1xuXG5leHBvcnQgdHlwZSBGb3JtYXRUeXBlID0gJ0xJVFRMRV9FTkRJQU4nIHwgJ01JRERMRV9FTkRJQU4nIHwgJ0JJR19FTkRJQU4nO1xuXG5leHBvcnQgdHlwZSBJbnB1dERhdGVEaXNwbGF5Rm9ybWF0ID0ge1xuICByZWFkb25seSBuYW1lOiBGb3JtYXRUeXBlO1xuICByZWFkb25seSBmb3JtYXQ6IFtzdHJpbmcsIHN0cmluZywgc3RyaW5nXTtcbn07XG5cbmV4cG9ydCBjb25zdCBMSVRUTEVfRU5ESUFOOiBJbnB1dERhdGVEaXNwbGF5Rm9ybWF0ID0ge1xuICBuYW1lOiAnTElUVExFX0VORElBTicsXG4gIGZvcm1hdDogW0RBVEUsIE1PTlRILCBZRUFSXSxcbn07XG5cbmV4cG9ydCBjb25zdCBNSURETEVfRU5ESUFOOiBJbnB1dERhdGVEaXNwbGF5Rm9ybWF0ID0ge1xuICBuYW1lOiAnTUlERExFX0VORElBTicsXG4gIGZvcm1hdDogW01PTlRILCBEQVRFLCBZRUFSXSxcbn07XG5cbmV4cG9ydCBjb25zdCBCSUdfRU5ESUFOOiBJbnB1dERhdGVEaXNwbGF5Rm9ybWF0ID0ge1xuICBuYW1lOiAnQklHX0VORElBTicsXG4gIGZvcm1hdDogW1lFQVIsIE1PTlRILCBEQVRFXSxcbn07XG5cbi8qKiBEZWZhdWx0IHNlcGFyYXRvciB0ZXh0LiAqL1xuZXhwb3J0IGNvbnN0IFNFUEFSQVRPUl9URVhUX0RFRkFVTFQgPSAnIC0gJztcblxuZXhwb3J0IGNvbnN0IFRSQU5TTEFUSU9OUyA9IHtcbiAgZnJvbTogJ0Zyb20nLFxuICB0bzogJ1RvJyxcbn07XG4iXX0=
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { CommonModule } from '@angular/common';
|
|
2
|
+
import { NgModule } from '@angular/core';
|
|
3
|
+
import { FormsModule } from '@angular/forms';
|
|
4
|
+
import { ClarityModule, ClrDatepickerModule, ClrIconModule } from '@clr/angular';
|
|
5
|
+
import { ClrDatepickerComponent } from './directives/datepicker/datepicker.component';
|
|
6
|
+
import { ClrDaterangepickerContainerComponent } from './directives/daterangepicker-container/daterangepicker-container.component';
|
|
7
|
+
import { ClrDaterangepickerDirective } from './directives/daterangepicker/daterangepicker.directive';
|
|
8
|
+
import { ClrIfDaterangeErrorDirective } from './directives/if-daterange-error.directive';
|
|
9
|
+
import { ClrDaterangeMaxValidator } from './validators/daterange-max.validator';
|
|
10
|
+
import { ClrDaterangeMinValidator } from './validators/daterange-min.validator';
|
|
11
|
+
import { ClrDaterangeOrderValidator } from './validators/daterange-order.validator';
|
|
12
|
+
import { ClrDaterangeRequiredValidator } from './validators/daterange-required.validator';
|
|
13
|
+
import * as i0 from "@angular/core";
|
|
14
|
+
export class ClrDaterangepickerModule {
|
|
15
|
+
}
|
|
16
|
+
ClrDaterangepickerModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.1", ngImport: i0, type: ClrDaterangepickerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
17
|
+
ClrDaterangepickerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.1", ngImport: i0, type: ClrDaterangepickerModule, declarations: [ClrDatepickerComponent,
|
|
18
|
+
ClrDaterangeMaxValidator,
|
|
19
|
+
ClrDaterangeMinValidator,
|
|
20
|
+
ClrDaterangeOrderValidator,
|
|
21
|
+
ClrDaterangepickerContainerComponent,
|
|
22
|
+
ClrDaterangepickerDirective,
|
|
23
|
+
ClrDaterangeRequiredValidator,
|
|
24
|
+
ClrIfDaterangeErrorDirective], imports: [CommonModule, FormsModule, ClarityModule, ClrDatepickerModule, ClrIconModule], exports: [ClrDaterangeMaxValidator,
|
|
25
|
+
ClrDaterangeMinValidator,
|
|
26
|
+
ClrDaterangeOrderValidator,
|
|
27
|
+
ClrDaterangepickerContainerComponent,
|
|
28
|
+
ClrDaterangepickerDirective,
|
|
29
|
+
ClrDaterangeRequiredValidator,
|
|
30
|
+
ClrIfDaterangeErrorDirective] });
|
|
31
|
+
ClrDaterangepickerModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.1", ngImport: i0, type: ClrDaterangepickerModule, imports: [CommonModule, FormsModule, ClarityModule, ClrDatepickerModule, ClrIconModule] });
|
|
32
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.1", ngImport: i0, type: ClrDaterangepickerModule, decorators: [{
|
|
33
|
+
type: NgModule,
|
|
34
|
+
args: [{
|
|
35
|
+
imports: [CommonModule, FormsModule, ClarityModule, ClrDatepickerModule, ClrIconModule],
|
|
36
|
+
declarations: [
|
|
37
|
+
ClrDatepickerComponent,
|
|
38
|
+
ClrDaterangeMaxValidator,
|
|
39
|
+
ClrDaterangeMinValidator,
|
|
40
|
+
ClrDaterangeOrderValidator,
|
|
41
|
+
ClrDaterangepickerContainerComponent,
|
|
42
|
+
ClrDaterangepickerDirective,
|
|
43
|
+
ClrDaterangeRequiredValidator,
|
|
44
|
+
ClrIfDaterangeErrorDirective,
|
|
45
|
+
],
|
|
46
|
+
entryComponents: [ClrDatepickerComponent],
|
|
47
|
+
exports: [
|
|
48
|
+
ClrDaterangeMaxValidator,
|
|
49
|
+
ClrDaterangeMinValidator,
|
|
50
|
+
ClrDaterangeOrderValidator,
|
|
51
|
+
ClrDaterangepickerContainerComponent,
|
|
52
|
+
ClrDaterangepickerDirective,
|
|
53
|
+
ClrDaterangeRequiredValidator,
|
|
54
|
+
ClrIfDaterangeErrorDirective,
|
|
55
|
+
],
|
|
56
|
+
}]
|
|
57
|
+
}] });
|
|
58
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZXJhbmdlcGlja2VyLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jbHItYWRkb25zL2RhdGVyYW5nZXBpY2tlci9kYXRlcmFuZ2VwaWNrZXIubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsYUFBYSxFQUFFLG1CQUFtQixFQUFFLGFBQWEsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUVqRixPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQztBQUN0RixPQUFPLEVBQUUsb0NBQW9DLEVBQUUsTUFBTSw0RUFBNEUsQ0FBQztBQUNsSSxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSx3REFBd0QsQ0FBQztBQUNyRyxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUN6RixPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUNoRixPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUNoRixPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUNwRixPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQzs7QUF5QjFGLE1BQU0sT0FBTyx3QkFBd0I7O3FIQUF4Qix3QkFBd0I7c0hBQXhCLHdCQUF3QixpQkFwQmpDLHNCQUFzQjtRQUN0Qix3QkFBd0I7UUFDeEIsd0JBQXdCO1FBQ3hCLDBCQUEwQjtRQUMxQixvQ0FBb0M7UUFDcEMsMkJBQTJCO1FBQzNCLDZCQUE2QjtRQUM3Qiw0QkFBNEIsYUFUcEIsWUFBWSxFQUFFLFdBQVcsRUFBRSxhQUFhLEVBQUUsbUJBQW1CLEVBQUUsYUFBYSxhQWFwRix3QkFBd0I7UUFDeEIsd0JBQXdCO1FBQ3hCLDBCQUEwQjtRQUMxQixvQ0FBb0M7UUFDcEMsMkJBQTJCO1FBQzNCLDZCQUE2QjtRQUM3Qiw0QkFBNEI7c0hBR25CLHdCQUF3QixZQXRCekIsWUFBWSxFQUFFLFdBQVcsRUFBRSxhQUFhLEVBQUUsbUJBQW1CLEVBQUUsYUFBYTsyRkFzQjNFLHdCQUF3QjtrQkF2QnBDLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFLENBQUMsWUFBWSxFQUFFLFdBQVcsRUFBRSxhQUFhLEVBQUUsbUJBQW1CLEVBQUUsYUFBYSxDQUFDO29CQUN2RixZQUFZLEVBQUU7d0JBQ1osc0JBQXNCO3dCQUN0Qix3QkFBd0I7d0JBQ3hCLHdCQUF3Qjt3QkFDeEIsMEJBQTBCO3dCQUMxQixvQ0FBb0M7d0JBQ3BDLDJCQUEyQjt3QkFDM0IsNkJBQTZCO3dCQUM3Qiw0QkFBNEI7cUJBQzdCO29CQUNELGVBQWUsRUFBRSxDQUFDLHNCQUFzQixDQUFDO29CQUN6QyxPQUFPLEVBQUU7d0JBQ1Asd0JBQXdCO3dCQUN4Qix3QkFBd0I7d0JBQ3hCLDBCQUEwQjt3QkFDMUIsb0NBQW9DO3dCQUNwQywyQkFBMkI7d0JBQzNCLDZCQUE2Qjt3QkFDN0IsNEJBQTRCO3FCQUM3QjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBDbGFyaXR5TW9kdWxlLCBDbHJEYXRlcGlja2VyTW9kdWxlLCBDbHJJY29uTW9kdWxlIH0gZnJvbSAnQGNsci9hbmd1bGFyJztcblxuaW1wb3J0IHsgQ2xyRGF0ZXBpY2tlckNvbXBvbmVudCB9IGZyb20gJy4vZGlyZWN0aXZlcy9kYXRlcGlja2VyL2RhdGVwaWNrZXIuY29tcG9uZW50JztcbmltcG9ydCB7IENsckRhdGVyYW5nZXBpY2tlckNvbnRhaW5lckNvbXBvbmVudCB9IGZyb20gJy4vZGlyZWN0aXZlcy9kYXRlcmFuZ2VwaWNrZXItY29udGFpbmVyL2RhdGVyYW5nZXBpY2tlci1jb250YWluZXIuY29tcG9uZW50JztcbmltcG9ydCB7IENsckRhdGVyYW5nZXBpY2tlckRpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9kYXRlcmFuZ2VwaWNrZXIvZGF0ZXJhbmdlcGlja2VyLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBDbHJJZkRhdGVyYW5nZUVycm9yRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL2lmLWRhdGVyYW5nZS1lcnJvci5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgQ2xyRGF0ZXJhbmdlTWF4VmFsaWRhdG9yIH0gZnJvbSAnLi92YWxpZGF0b3JzL2RhdGVyYW5nZS1tYXgudmFsaWRhdG9yJztcbmltcG9ydCB7IENsckRhdGVyYW5nZU1pblZhbGlkYXRvciB9IGZyb20gJy4vdmFsaWRhdG9ycy9kYXRlcmFuZ2UtbWluLnZhbGlkYXRvcic7XG5pbXBvcnQgeyBDbHJEYXRlcmFuZ2VPcmRlclZhbGlkYXRvciB9IGZyb20gJy4vdmFsaWRhdG9ycy9kYXRlcmFuZ2Utb3JkZXIudmFsaWRhdG9yJztcbmltcG9ydCB7IENsckRhdGVyYW5nZVJlcXVpcmVkVmFsaWRhdG9yIH0gZnJvbSAnLi92YWxpZGF0b3JzL2RhdGVyYW5nZS1yZXF1aXJlZC52YWxpZGF0b3InO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBGb3Jtc01vZHVsZSwgQ2xhcml0eU1vZHVsZSwgQ2xyRGF0ZXBpY2tlck1vZHVsZSwgQ2xySWNvbk1vZHVsZV0sXG4gIGRlY2xhcmF0aW9uczogW1xuICAgIENsckRhdGVwaWNrZXJDb21wb25lbnQsXG4gICAgQ2xyRGF0ZXJhbmdlTWF4VmFsaWRhdG9yLFxuICAgIENsckRhdGVyYW5nZU1pblZhbGlkYXRvcixcbiAgICBDbHJEYXRlcmFuZ2VPcmRlclZhbGlkYXRvcixcbiAgICBDbHJEYXRlcmFuZ2VwaWNrZXJDb250YWluZXJDb21wb25lbnQsXG4gICAgQ2xyRGF0ZXJhbmdlcGlja2VyRGlyZWN0aXZlLFxuICAgIENsckRhdGVyYW5nZVJlcXVpcmVkVmFsaWRhdG9yLFxuICAgIENscklmRGF0ZXJhbmdlRXJyb3JEaXJlY3RpdmUsXG4gIF0sXG4gIGVudHJ5Q29tcG9uZW50czogW0NsckRhdGVwaWNrZXJDb21wb25lbnRdLFxuICBleHBvcnRzOiBbXG4gICAgQ2xyRGF0ZXJhbmdlTWF4VmFsaWRhdG9yLFxuICAgIENsckRhdGVyYW5nZU1pblZhbGlkYXRvcixcbiAgICBDbHJEYXRlcmFuZ2VPcmRlclZhbGlkYXRvcixcbiAgICBDbHJEYXRlcmFuZ2VwaWNrZXJDb250YWluZXJDb21wb25lbnQsXG4gICAgQ2xyRGF0ZXJhbmdlcGlja2VyRGlyZWN0aXZlLFxuICAgIENsckRhdGVyYW5nZVJlcXVpcmVkVmFsaWRhdG9yLFxuICAgIENscklmRGF0ZXJhbmdlRXJyb3JEaXJlY3RpdmUsXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIENsckRhdGVyYW5nZXBpY2tlck1vZHVsZSB7fVxuIl19
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
import { ContentChild, Directive, HostBinding, Optional } from '@angular/core';
|
|
2
|
+
import { ClrControlError, ClrControlHelper, ClrControlSuccess, ClrLabel, ClrLayout } from '@clr/angular';
|
|
3
|
+
import { DaterangeControlStateService } from '../providers/daterange-control-state.service';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "@clr/angular";
|
|
6
|
+
import * as i2 from "../providers/daterange-control-state.service";
|
|
7
|
+
export class ClrAbstractContainer {
|
|
8
|
+
constructor(clrLayout, daterangeControlStateService) {
|
|
9
|
+
this.clrLayout = clrLayout;
|
|
10
|
+
this.daterangeControlStateService = daterangeControlStateService;
|
|
11
|
+
this.isFormControl = true;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Detect if container is not part of an vertical form to apply correct grid classes.
|
|
15
|
+
*/
|
|
16
|
+
get addLayoutGrid() {
|
|
17
|
+
return !this.clrLayout?.layoutService?.isVertical();
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Wether to show the helper control.
|
|
21
|
+
* @returns Wether to show the helper control.
|
|
22
|
+
*/
|
|
23
|
+
get showHelper() {
|
|
24
|
+
if (this.controlHelperComponent == null) {
|
|
25
|
+
return false;
|
|
26
|
+
}
|
|
27
|
+
// Helper Component exist and the state of the form is NONE (not touched).
|
|
28
|
+
if (!this.daterangeControlStateService.touched) {
|
|
29
|
+
return true;
|
|
30
|
+
}
|
|
31
|
+
// Or there is no success component but the state of the form is VALID - show helper information.
|
|
32
|
+
if (this.controlSuccessComponent == null &&
|
|
33
|
+
this.daterangeControlStateService.touched &&
|
|
34
|
+
!this.daterangeControlStateService.invalid) {
|
|
35
|
+
return true;
|
|
36
|
+
}
|
|
37
|
+
// Or there is no error component but the state of the form is INVALID - show helper information.
|
|
38
|
+
if (this.controlErrorComponent == null && this.daterangeControlStateService.invalid) {
|
|
39
|
+
return true;
|
|
40
|
+
}
|
|
41
|
+
return false;
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Wether to show the valid control.
|
|
45
|
+
* @returns Wether to show the valid control.
|
|
46
|
+
*/
|
|
47
|
+
get showValid() {
|
|
48
|
+
return !this.daterangeControlStateService.invalid && !!this.controlSuccessComponent;
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Wether to show the invalid control.
|
|
52
|
+
* @returns Wether to show the invalid control.
|
|
53
|
+
*/
|
|
54
|
+
get showInvalid() {
|
|
55
|
+
return this.daterangeControlStateService.invalid && !!this.controlErrorComponent;
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Disabled state.
|
|
59
|
+
* @returns Disabled state.
|
|
60
|
+
*/
|
|
61
|
+
get disabled() {
|
|
62
|
+
return this.daterangeControlStateService.disabled;
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* If control is focused.
|
|
66
|
+
* @returns Wether control is focused.
|
|
67
|
+
*/
|
|
68
|
+
get focus() {
|
|
69
|
+
return this.daterangeControlStateService.focused;
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Wether control is invalid.
|
|
73
|
+
* @returns Wether control is invalid.
|
|
74
|
+
*/
|
|
75
|
+
get isInvalid() {
|
|
76
|
+
return this.daterangeControlStateService.invalid;
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
ClrAbstractContainer.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.1", ngImport: i0, type: ClrAbstractContainer, deps: [{ token: i1.ClrLayout, optional: true }, { token: i2.DaterangeControlStateService }], target: i0.ɵɵFactoryTarget.Directive });
|
|
80
|
+
ClrAbstractContainer.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.1", type: ClrAbstractContainer, host: { properties: { "class.clr-form-control": "this.isFormControl", "class.clr-row": "this.addLayoutGrid" } }, queries: [{ propertyName: "labelComponent", first: true, predicate: ClrLabel, descendants: true }, { propertyName: "controlHelperComponent", first: true, predicate: ClrControlHelper, descendants: true }, { propertyName: "controlErrorComponent", first: true, predicate: ClrControlError, descendants: true }, { propertyName: "controlSuccessComponent", first: true, predicate: ClrControlSuccess, descendants: true }], ngImport: i0 });
|
|
81
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.1", ngImport: i0, type: ClrAbstractContainer, decorators: [{
|
|
82
|
+
type: Directive
|
|
83
|
+
}], ctorParameters: function () { return [{ type: i1.ClrLayout, decorators: [{
|
|
84
|
+
type: Optional
|
|
85
|
+
}] }, { type: i2.DaterangeControlStateService }]; }, propDecorators: { isFormControl: [{
|
|
86
|
+
type: HostBinding,
|
|
87
|
+
args: ['class.clr-form-control']
|
|
88
|
+
}], addLayoutGrid: [{
|
|
89
|
+
type: HostBinding,
|
|
90
|
+
args: ['class.clr-row']
|
|
91
|
+
}], labelComponent: [{
|
|
92
|
+
type: ContentChild,
|
|
93
|
+
args: [ClrLabel]
|
|
94
|
+
}], controlHelperComponent: [{
|
|
95
|
+
type: ContentChild,
|
|
96
|
+
args: [ClrControlHelper]
|
|
97
|
+
}], controlErrorComponent: [{
|
|
98
|
+
type: ContentChild,
|
|
99
|
+
args: [ClrControlError]
|
|
100
|
+
}], controlSuccessComponent: [{
|
|
101
|
+
type: ContentChild,
|
|
102
|
+
args: [ClrControlSuccess]
|
|
103
|
+
}] } });
|
|
104
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3QtY29udGFpbmVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9jbHItYWRkb25zL2RhdGVyYW5nZXBpY2tlci9kaXJlY3RpdmVzL2Fic3RyYWN0LWNvbnRhaW5lci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMvRSxPQUFPLEVBQUUsZUFBZSxFQUFFLGdCQUFnQixFQUFFLGlCQUFpQixFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDekcsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sOENBQThDLENBQUM7Ozs7QUFHNUYsTUFBTSxPQUFnQixvQkFBb0I7SUE0RnhDLFlBQ2lDLFNBQW9CLEVBQ2hDLDRCQUEwRDtRQUQ5QyxjQUFTLEdBQVQsU0FBUyxDQUFXO1FBQ2hDLGlDQUE0QixHQUE1Qiw0QkFBNEIsQ0FBOEI7UUE3RnJCLGtCQUFhLEdBQUcsSUFBSSxDQUFDO0lBOEY1RSxDQUFDO0lBNUZKOztPQUVHO0lBQ0gsSUFDVyxhQUFhO1FBQ3RCLE9BQU8sQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLGFBQWEsRUFBRSxVQUFVLEVBQUUsQ0FBQztJQUN0RCxDQUFDO0lBWUQ7OztPQUdHO0lBQ0gsSUFBYyxVQUFVO1FBQ3RCLElBQUksSUFBSSxDQUFDLHNCQUFzQixJQUFJLElBQUksRUFBRTtZQUN2QyxPQUFPLEtBQUssQ0FBQztTQUNkO1FBRUQsMEVBQTBFO1FBQzFFLElBQUksQ0FBQyxJQUFJLENBQUMsNEJBQTRCLENBQUMsT0FBTyxFQUFFO1lBQzlDLE9BQU8sSUFBSSxDQUFDO1NBQ2I7UUFFRCxpR0FBaUc7UUFDakcsSUFDRSxJQUFJLENBQUMsdUJBQXVCLElBQUksSUFBSTtZQUNwQyxJQUFJLENBQUMsNEJBQTRCLENBQUMsT0FBTztZQUN6QyxDQUFDLElBQUksQ0FBQyw0QkFBNEIsQ0FBQyxPQUFPLEVBQzFDO1lBQ0EsT0FBTyxJQUFJLENBQUM7U0FDYjtRQUVELGlHQUFpRztRQUNqRyxJQUFJLElBQUksQ0FBQyxxQkFBcUIsSUFBSSxJQUFJLElBQUksSUFBSSxDQUFDLDRCQUE0QixDQUFDLE9BQU8sRUFBRTtZQUNuRixPQUFPLElBQUksQ0FBQztTQUNiO1FBRUQsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsSUFBYyxTQUFTO1FBQ3JCLE9BQU8sQ0FBQyxJQUFJLENBQUMsNEJBQTRCLENBQUMsT0FBTyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsdUJBQXVCLENBQUM7SUFDdEYsQ0FBQztJQUVEOzs7T0FHRztJQUNILElBQWMsV0FBVztRQUN2QixPQUFPLElBQUksQ0FBQyw0QkFBNEIsQ0FBQyxPQUFPLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQztJQUNuRixDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsSUFBYyxRQUFRO1FBQ3BCLE9BQU8sSUFBSSxDQUFDLDRCQUE0QixDQUFDLFFBQVEsQ0FBQztJQUNwRCxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsSUFBYyxLQUFLO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLDRCQUE0QixDQUFDLE9BQU8sQ0FBQztJQUNuRCxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsSUFBYyxTQUFTO1FBQ3JCLE9BQU8sSUFBSSxDQUFDLDRCQUE0QixDQUFDLE9BQU8sQ0FBQztJQUNuRCxDQUFDOztpSEExRm1CLG9CQUFvQjtxR0FBcEIsb0JBQW9CLHVMQVkxQixRQUFRLHlGQUdSLGdCQUFnQix3RkFFaEIsZUFBZSwwRkFFZixpQkFBaUI7MkZBbkJYLG9CQUFvQjtrQkFEekMsU0FBUzs7MEJBOEZMLFFBQVE7dUZBNUYrQyxhQUFhO3NCQUF0RSxXQUFXO3VCQUFDLHdCQUF3QjtnQkFNMUIsYUFBYTtzQkFEdkIsV0FBVzt1QkFBQyxlQUFlO2dCQU1NLGNBQWM7c0JBQS9DLFlBQVk7dUJBQUMsUUFBUTtnQkFHb0Isc0JBQXNCO3NCQUEvRCxZQUFZO3VCQUFDLGdCQUFnQjtnQkFFVyxxQkFBcUI7c0JBQTdELFlBQVk7dUJBQUMsZUFBZTtnQkFFYyx1QkFBdUI7c0JBQWpFLFlBQVk7dUJBQUMsaUJBQWlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29udGVudENoaWxkLCBEaXJlY3RpdmUsIEhvc3RCaW5kaW5nLCBPcHRpb25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ2xyQ29udHJvbEVycm9yLCBDbHJDb250cm9sSGVscGVyLCBDbHJDb250cm9sU3VjY2VzcywgQ2xyTGFiZWwsIENsckxheW91dCB9IGZyb20gJ0BjbHIvYW5ndWxhcic7XG5pbXBvcnQgeyBEYXRlcmFuZ2VDb250cm9sU3RhdGVTZXJ2aWNlIH0gZnJvbSAnLi4vcHJvdmlkZXJzL2RhdGVyYW5nZS1jb250cm9sLXN0YXRlLnNlcnZpY2UnO1xuXG5ARGlyZWN0aXZlKClcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBDbHJBYnN0cmFjdENvbnRhaW5lciB7XG4gIEBIb3N0QmluZGluZygnY2xhc3MuY2xyLWZvcm0tY29udHJvbCcpIHByb3RlY3RlZCByZWFkb25seSBpc0Zvcm1Db250cm9sID0gdHJ1ZTtcblxuICAvKipcbiAgICogRGV0ZWN0IGlmIGNvbnRhaW5lciBpcyBub3QgcGFydCBvZiBhbiB2ZXJ0aWNhbCBmb3JtIHRvIGFwcGx5IGNvcnJlY3QgZ3JpZCBjbGFzc2VzLlxuICAgKi9cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5jbHItcm93JylcbiAgcHVibGljIGdldCBhZGRMYXlvdXRHcmlkKCkge1xuICAgIHJldHVybiAhdGhpcy5jbHJMYXlvdXQ/LmxheW91dFNlcnZpY2U/LmlzVmVydGljYWwoKTtcbiAgfVxuXG4gIC8qKiBMYWJlbCBjb21wb25lbnQuICovXG4gIEBDb250ZW50Q2hpbGQoQ2xyTGFiZWwpIHByb3RlY3RlZCBsYWJlbENvbXBvbmVudDogQ2xyTGFiZWw7XG5cbiAgLyoqIEhlbHBlciBjb250cm9sIGNvbXBvbmVudC4gKi9cbiAgQENvbnRlbnRDaGlsZChDbHJDb250cm9sSGVscGVyKSBwcm90ZWN0ZWQgY29udHJvbEhlbHBlckNvbXBvbmVudDogQ2xyQ29udHJvbEhlbHBlcjtcbiAgLyoqIEVycm9yIGNvbnRyb2wgY29tcG9uZW50LiAqL1xuICBAQ29udGVudENoaWxkKENsckNvbnRyb2xFcnJvcikgcHJvdGVjdGVkIGNvbnRyb2xFcnJvckNvbXBvbmVudDogQ2xyQ29udHJvbEVycm9yO1xuICAvKiogU3VjY2VzcyBjb250cm9sIGNvbXBvbmVudC4gKi9cbiAgQENvbnRlbnRDaGlsZChDbHJDb250cm9sU3VjY2VzcykgcHJvdGVjdGVkIGNvbnRyb2xTdWNjZXNzQ29tcG9uZW50OiBDbHJDb250cm9sU3VjY2VzcztcblxuICAvKipcbiAgICogV2V0aGVyIHRvIHNob3cgdGhlIGhlbHBlciBjb250cm9sLlxuICAgKiBAcmV0dXJucyBXZXRoZXIgdG8gc2hvdyB0aGUgaGVscGVyIGNvbnRyb2wuXG4gICAqL1xuICBwcm90ZWN0ZWQgZ2V0IHNob3dIZWxwZXIoKTogYm9vbGVhbiB7XG4gICAgaWYgKHRoaXMuY29udHJvbEhlbHBlckNvbXBvbmVudCA9PSBudWxsKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgLy8gSGVscGVyIENvbXBvbmVudCBleGlzdCBhbmQgdGhlIHN0YXRlIG9mIHRoZSBmb3JtIGlzIE5PTkUgKG5vdCB0b3VjaGVkKS5cbiAgICBpZiAoIXRoaXMuZGF0ZXJhbmdlQ29udHJvbFN0YXRlU2VydmljZS50b3VjaGVkKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG5cbiAgICAvLyBPciB0aGVyZSBpcyBubyBzdWNjZXNzIGNvbXBvbmVudCBidXQgdGhlIHN0YXRlIG9mIHRoZSBmb3JtIGlzIFZBTElEIC0gc2hvdyBoZWxwZXIgaW5mb3JtYXRpb24uXG4gICAgaWYgKFxuICAgICAgdGhpcy5jb250cm9sU3VjY2Vzc0NvbXBvbmVudCA9PSBudWxsICYmXG4gICAgICB0aGlzLmRhdGVyYW5nZUNvbnRyb2xTdGF0ZVNlcnZpY2UudG91Y2hlZCAmJlxuICAgICAgIXRoaXMuZGF0ZXJhbmdlQ29udHJvbFN0YXRlU2VydmljZS5pbnZhbGlkXG4gICAgKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG5cbiAgICAvLyBPciB0aGVyZSBpcyBubyBlcnJvciBjb21wb25lbnQgYnV0IHRoZSBzdGF0ZSBvZiB0aGUgZm9ybSBpcyBJTlZBTElEIC0gc2hvdyBoZWxwZXIgaW5mb3JtYXRpb24uXG4gICAgaWYgKHRoaXMuY29udHJvbEVycm9yQ29tcG9uZW50ID09IG51bGwgJiYgdGhpcy5kYXRlcmFuZ2VDb250cm9sU3RhdGVTZXJ2aWNlLmludmFsaWQpIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cblxuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBXZXRoZXIgdG8gc2hvdyB0aGUgdmFsaWQgY29udHJvbC5cbiAgICogQHJldHVybnMgV2V0aGVyIHRvIHNob3cgdGhlIHZhbGlkIGNvbnRyb2wuXG4gICAqL1xuICBwcm90ZWN0ZWQgZ2V0IHNob3dWYWxpZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gIXRoaXMuZGF0ZXJhbmdlQ29udHJvbFN0YXRlU2VydmljZS5pbnZhbGlkICYmICEhdGhpcy5jb250cm9sU3VjY2Vzc0NvbXBvbmVudDtcbiAgfVxuXG4gIC8qKlxuICAgKiBXZXRoZXIgdG8gc2hvdyB0aGUgaW52YWxpZCBjb250cm9sLlxuICAgKiBAcmV0dXJucyBXZXRoZXIgdG8gc2hvdyB0aGUgaW52YWxpZCBjb250cm9sLlxuICAgKi9cbiAgcHJvdGVjdGVkIGdldCBzaG93SW52YWxpZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5kYXRlcmFuZ2VDb250cm9sU3RhdGVTZXJ2aWNlLmludmFsaWQgJiYgISF0aGlzLmNvbnRyb2xFcnJvckNvbXBvbmVudDtcbiAgfVxuXG4gIC8qKlxuICAgKiBEaXNhYmxlZCBzdGF0ZS5cbiAgICogQHJldHVybnMgRGlzYWJsZWQgc3RhdGUuXG4gICAqL1xuICBwcm90ZWN0ZWQgZ2V0IGRpc2FibGVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmRhdGVyYW5nZUNvbnRyb2xTdGF0ZVNlcnZpY2UuZGlzYWJsZWQ7XG4gIH1cblxuICAvKipcbiAgICogSWYgY29udHJvbCBpcyBmb2N1c2VkLlxuICAgKiBAcmV0dXJucyBXZXRoZXIgY29udHJvbCBpcyBmb2N1c2VkLlxuICAgKi9cbiAgcHJvdGVjdGVkIGdldCBmb2N1cygpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5kYXRlcmFuZ2VDb250cm9sU3RhdGVTZXJ2aWNlLmZvY3VzZWQ7XG4gIH1cblxuICAvKipcbiAgICogV2V0aGVyIGNvbnRyb2wgaXMgaW52YWxpZC5cbiAgICogQHJldHVybnMgV2V0aGVyIGNvbnRyb2wgaXMgaW52YWxpZC5cbiAgICovXG4gIHByb3RlY3RlZCBnZXQgaXNJbnZhbGlkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmRhdGVyYW5nZUNvbnRyb2xTdGF0ZVNlcnZpY2UuaW52YWxpZDtcbiAgfVxuXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihcbiAgICBAT3B0aW9uYWwoKSBwcm90ZWN0ZWQgcmVhZG9ubHkgY2xyTGF5b3V0OiBDbHJMYXlvdXQsXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGRhdGVyYW5nZUNvbnRyb2xTdGF0ZVNlcnZpY2U6IERhdGVyYW5nZUNvbnRyb2xTdGF0ZVNlcnZpY2VcbiAgKSB7fVxufVxuIl19
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
import { Component, ElementRef, EventEmitter, Input, Output, ViewChild } from '@angular/core';
|
|
2
|
+
import { ClrDateContainer } from '@clr/angular';
|
|
3
|
+
import { DayModel } from '../../models/day.model';
|
|
4
|
+
import { OpenedDatepickersTrackerService } from '../../providers/opened-datepickers-tracker.service';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "../../providers/opened-datepickers-tracker.service";
|
|
7
|
+
import * as i2 from "@clr/angular";
|
|
8
|
+
export class ClrDatepickerComponent {
|
|
9
|
+
constructor(openedDatepickersTrackerService) {
|
|
10
|
+
this.openedDatepickersTrackerService = openedDatepickersTrackerService;
|
|
11
|
+
/**
|
|
12
|
+
* Text label.
|
|
13
|
+
*/
|
|
14
|
+
this.label = 'Date';
|
|
15
|
+
/**
|
|
16
|
+
* Minimum date that can be selected.
|
|
17
|
+
*/
|
|
18
|
+
this.minDate = undefined;
|
|
19
|
+
/**
|
|
20
|
+
* Maximum date that can be selected.
|
|
21
|
+
*/
|
|
22
|
+
this.maxDate = undefined;
|
|
23
|
+
/**
|
|
24
|
+
* Event triggered when value changes.
|
|
25
|
+
*/
|
|
26
|
+
this.valueChange = new EventEmitter();
|
|
27
|
+
/** List of subscriptions to later destroy. */
|
|
28
|
+
this.subscriptions = [];
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Get date.
|
|
32
|
+
* @returns JavaScript Date object.
|
|
33
|
+
*/
|
|
34
|
+
get date() {
|
|
35
|
+
return this.value?.toDate();
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Set date.
|
|
39
|
+
*/
|
|
40
|
+
set date(val) {
|
|
41
|
+
this.value = val == null ? null : new DayModel(val);
|
|
42
|
+
this.valueChange.emit(this.value);
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Minimum date as attribute string.
|
|
46
|
+
* @returns Minimum date as attribute string.
|
|
47
|
+
*/
|
|
48
|
+
get minDateAttr() {
|
|
49
|
+
return this.minDate?.toHTML5SpecDateString();
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Maximum date as attribute string.
|
|
53
|
+
* @returns Maximum date as attribute string.
|
|
54
|
+
*/
|
|
55
|
+
get maxDateAttr() {
|
|
56
|
+
return this.maxDate?.toHTML5SpecDateString();
|
|
57
|
+
}
|
|
58
|
+
ngAfterViewInit() {
|
|
59
|
+
// eslint-disable-next-line dot-notation -- Need access to this private property.
|
|
60
|
+
const toggleService = this.clrDateContainer['toggleService'];
|
|
61
|
+
this.subscriptions.push(toggleService.openChange.subscribe(openState => {
|
|
62
|
+
this.openedDatepickersTrackerService.track(openState);
|
|
63
|
+
}));
|
|
64
|
+
}
|
|
65
|
+
ngOnDestroy() {
|
|
66
|
+
this.subscriptions.forEach(subscription => subscription.unsubscribe());
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Focus input.
|
|
70
|
+
*/
|
|
71
|
+
focus() {
|
|
72
|
+
this.inputElm.nativeElement.focus();
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
ClrDatepickerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.1", ngImport: i0, type: ClrDatepickerComponent, deps: [{ token: i1.OpenedDatepickersTrackerService }], target: i0.ɵɵFactoryTarget.Component });
|
|
76
|
+
ClrDatepickerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.1", type: ClrDatepickerComponent, selector: "clr-datepicker", inputs: { value: "value", label: "label", minDate: "minDate", maxDate: "maxDate" }, outputs: { valueChange: "valueChange" }, viewQueries: [{ propertyName: "inputElm", first: true, predicate: ["inputElm"], descendants: true }, { propertyName: "clrDateContainer", first: true, predicate: ClrDateContainer, descendants: true }], ngImport: i0, template: "<clr-date-container>\n <label>{{ this.label }}</label>\n <input #inputElm clrDate [(clrDate)]=\"this.date\" [min]=\"this.minDateAttr\" [max]=\"this.maxDateAttr\" />\n</clr-date-container>\n", dependencies: [{ kind: "directive", type: i2.ClrLabel, selector: "label", inputs: ["for"] }, { kind: "component", type: i2.ClrDateContainer, selector: "clr-date-container", inputs: ["clrPosition"] }, { kind: "directive", type: i2.ClrDateInput, selector: "[clrDate]", inputs: ["placeholder", "clrDate", "min", "max", "disabled"], outputs: ["clrDateChange"] }, { kind: "directive", type: i2.ClrDateInputValidator, selector: "[clrDate]" }] });
|
|
77
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.1", ngImport: i0, type: ClrDatepickerComponent, decorators: [{
|
|
78
|
+
type: Component,
|
|
79
|
+
args: [{ selector: 'clr-datepicker', template: "<clr-date-container>\n <label>{{ this.label }}</label>\n <input #inputElm clrDate [(clrDate)]=\"this.date\" [min]=\"this.minDateAttr\" [max]=\"this.maxDateAttr\" />\n</clr-date-container>\n" }]
|
|
80
|
+
}], ctorParameters: function () { return [{ type: i1.OpenedDatepickersTrackerService }]; }, propDecorators: { value: [{
|
|
81
|
+
type: Input
|
|
82
|
+
}], label: [{
|
|
83
|
+
type: Input
|
|
84
|
+
}], minDate: [{
|
|
85
|
+
type: Input
|
|
86
|
+
}], maxDate: [{
|
|
87
|
+
type: Input
|
|
88
|
+
}], inputElm: [{
|
|
89
|
+
type: ViewChild,
|
|
90
|
+
args: ['inputElm']
|
|
91
|
+
}], clrDateContainer: [{
|
|
92
|
+
type: ViewChild,
|
|
93
|
+
args: [ClrDateContainer]
|
|
94
|
+
}], valueChange: [{
|
|
95
|
+
type: Output
|
|
96
|
+
}] } });
|
|
97
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZXBpY2tlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvY2xyLWFkZG9ucy9kYXRlcmFuZ2VwaWNrZXIvZGlyZWN0aXZlcy9kYXRlcGlja2VyL2RhdGVwaWNrZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2Nsci1hZGRvbnMvZGF0ZXJhbmdlcGlja2VyL2RpcmVjdGl2ZXMvZGF0ZXBpY2tlci9kYXRlcGlja2VyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBaUIsU0FBUyxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFhLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDeEgsT0FBTyxFQUFFLGdCQUFnQixFQUEyQixNQUFNLGNBQWMsQ0FBQztBQUd6RSxPQUFPLEVBQUUsUUFBUSxFQUFvQixNQUFNLHdCQUF3QixDQUFDO0FBQ3BFLE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLG9EQUFvRCxDQUFDOzs7O0FBTXJHLE1BQU0sT0FBTyxzQkFBc0I7SUE4RWpDLFlBQW9DLCtCQUFnRTtRQUFoRSxvQ0FBK0IsR0FBL0IsK0JBQStCLENBQWlDO1FBdkVwRzs7V0FFRztRQUVJLFVBQUssR0FBRyxNQUFNLENBQUM7UUFFdEI7O1dBRUc7UUFFSSxZQUFPLEdBQXFCLFNBQVMsQ0FBQztRQUU3Qzs7V0FFRztRQUVJLFlBQU8sR0FBcUIsU0FBUyxDQUFDO1FBYzdDOztXQUVHO1FBRUksZ0JBQVcsR0FBRyxJQUFJLFlBQVksRUFBb0IsQ0FBQztRQWtDMUQsOENBQThDO1FBQ3RDLGtCQUFhLEdBQXdCLEVBQUUsQ0FBQztJQUV1RCxDQUFDO0lBbkN4Rzs7O09BR0c7SUFDSCxJQUFjLElBQUk7UUFDaEIsT0FBTyxJQUFJLENBQUMsS0FBSyxFQUFFLE1BQU0sRUFBRSxDQUFDO0lBQzlCLENBQUM7SUFFRDs7T0FFRztJQUNILElBQWMsSUFBSSxDQUFDLEdBQTRCO1FBQzdDLElBQUksQ0FBQyxLQUFLLEdBQUcsR0FBRyxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNwRCxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUVEOzs7T0FHRztJQUNILElBQWMsV0FBVztRQUN2QixPQUFPLElBQUksQ0FBQyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsQ0FBQztJQUMvQyxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsSUFBYyxXQUFXO1FBQ3ZCLE9BQU8sSUFBSSxDQUFDLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxDQUFDO0lBQy9DLENBQUM7SUFPTSxlQUFlO1FBQ3BCLGlGQUFpRjtRQUNqRixNQUFNLGFBQWEsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsZUFBZSxDQUE0QixDQUFDO1FBQ3hGLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUNyQixhQUFhLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsRUFBRTtZQUM3QyxJQUFJLENBQUMsK0JBQStCLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ3hELENBQUMsQ0FBQyxDQUNILENBQUM7SUFDSixDQUFDO0lBRU0sV0FBVztRQUNoQixJQUFJLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsRUFBRSxDQUFDLFlBQVksQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO0lBQ3pFLENBQUM7SUFFRDs7T0FFRztJQUNJLEtBQUs7UUFDVixJQUFJLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUN0QyxDQUFDOzttSEFuR1Usc0JBQXNCO3VHQUF0QixzQkFBc0IsNFRBa0N0QixnQkFBZ0IsZ0RDN0M3QixpTUFJQTsyRkRPYSxzQkFBc0I7a0JBSmxDLFNBQVM7K0JBQ0UsZ0JBQWdCO3NIQVFuQixLQUFLO3NCQURYLEtBQUs7Z0JBT0MsS0FBSztzQkFEWCxLQUFLO2dCQU9DLE9BQU87c0JBRGIsS0FBSztnQkFPQyxPQUFPO3NCQURiLEtBQUs7Z0JBT0UsUUFBUTtzQkFEZixTQUFTO3VCQUFDLFVBQVU7Z0JBT2IsZ0JBQWdCO3NCQUR2QixTQUFTO3VCQUFDLGdCQUFnQjtnQkFPcEIsV0FBVztzQkFEakIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyVmlld0luaXQsIENvbXBvbmVudCwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25EZXN0cm95LCBPdXRwdXQsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ2xyRGF0ZUNvbnRhaW5lciwgQ2xyUG9wb3ZlclRvZ2dsZVNlcnZpY2UgfSBmcm9tICdAY2xyL2FuZ3VsYXInO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IERheU1vZGVsLCBOdWxsYWJsZURheU1vZGVsIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2RheS5tb2RlbCc7XG5pbXBvcnQgeyBPcGVuZWREYXRlcGlja2Vyc1RyYWNrZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vcHJvdmlkZXJzL29wZW5lZC1kYXRlcGlja2Vycy10cmFja2VyLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjbHItZGF0ZXBpY2tlcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9kYXRlcGlja2VyLmNvbXBvbmVudC5odG1sJyxcbn0pXG5leHBvcnQgY2xhc3MgQ2xyRGF0ZXBpY2tlckNvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveSB7XG4gIC8qKlxuICAgKiBJbnB1dCB2YWx1ZS5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyB2YWx1ZTogTnVsbGFibGVEYXlNb2RlbDtcblxuICAvKipcbiAgICogVGV4dCBsYWJlbC5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBsYWJlbCA9ICdEYXRlJztcblxuICAvKipcbiAgICogTWluaW11bSBkYXRlIHRoYXQgY2FuIGJlIHNlbGVjdGVkLlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIG1pbkRhdGU6IE51bGxhYmxlRGF5TW9kZWwgPSB1bmRlZmluZWQ7XG5cbiAgLyoqXG4gICAqIE1heGltdW0gZGF0ZSB0aGF0IGNhbiBiZSBzZWxlY3RlZC5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBtYXhEYXRlOiBOdWxsYWJsZURheU1vZGVsID0gdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBJbnB1dCBjb250cm9sLlxuICAgKi9cbiAgQFZpZXdDaGlsZCgnaW5wdXRFbG0nKVxuICBwcml2YXRlIGlucHV0RWxtITogRWxlbWVudFJlZjxIVE1MSW5wdXRFbGVtZW50PjtcblxuICAvKipcbiAgICogQ2xhcml0eSBkYXRlcGlja2VyIGNvbnRhaW5lci5cbiAgICovXG4gIEBWaWV3Q2hpbGQoQ2xyRGF0ZUNvbnRhaW5lcilcbiAgcHJpdmF0ZSBjbHJEYXRlQ29udGFpbmVyITogQ2xyRGF0ZUNvbnRhaW5lcjtcblxuICAvKipcbiAgICogRXZlbnQgdHJpZ2dlcmVkIHdoZW4gdmFsdWUgY2hhbmdlcy5cbiAgICovXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgdmFsdWVDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPE51bGxhYmxlRGF5TW9kZWw+KCk7XG5cbiAgLyoqXG4gICAqIEdldCBkYXRlLlxuICAgKiBAcmV0dXJucyBKYXZhU2NyaXB0IERhdGUgb2JqZWN0LlxuICAgKi9cbiAgcHJvdGVjdGVkIGdldCBkYXRlKCk6IERhdGUgfCB1bmRlZmluZWQgfCBudWxsIHtcbiAgICByZXR1cm4gdGhpcy52YWx1ZT8udG9EYXRlKCk7XG4gIH1cblxuICAvKipcbiAgICogU2V0IGRhdGUuXG4gICAqL1xuICBwcm90ZWN0ZWQgc2V0IGRhdGUodmFsOiBEYXRlIHwgdW5kZWZpbmVkIHwgbnVsbCkge1xuICAgIHRoaXMudmFsdWUgPSB2YWwgPT0gbnVsbCA/IG51bGwgOiBuZXcgRGF5TW9kZWwodmFsKTtcbiAgICB0aGlzLnZhbHVlQ2hhbmdlLmVtaXQodGhpcy52YWx1ZSk7XG4gIH1cblxuICAvKipcbiAgICogTWluaW11bSBkYXRlIGFzIGF0dHJpYnV0ZSBzdHJpbmcuXG4gICAqIEByZXR1cm5zIE1pbmltdW0gZGF0ZSBhcyBhdHRyaWJ1dGUgc3RyaW5nLlxuICAgKi9cbiAgcHJvdGVjdGVkIGdldCBtaW5EYXRlQXR0cigpOiBzdHJpbmcgfCB1bmRlZmluZWQgfCBudWxsIHtcbiAgICByZXR1cm4gdGhpcy5taW5EYXRlPy50b0hUTUw1U3BlY0RhdGVTdHJpbmcoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBNYXhpbXVtIGRhdGUgYXMgYXR0cmlidXRlIHN0cmluZy5cbiAgICogQHJldHVybnMgTWF4aW11bSBkYXRlIGFzIGF0dHJpYnV0ZSBzdHJpbmcuXG4gICAqL1xuICBwcm90ZWN0ZWQgZ2V0IG1heERhdGVBdHRyKCk6IHN0cmluZyB8IHVuZGVmaW5lZCB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLm1heERhdGU/LnRvSFRNTDVTcGVjRGF0ZVN0cmluZygpO1xuICB9XG5cbiAgLyoqIExpc3Qgb2Ygc3Vic2NyaXB0aW9ucyB0byBsYXRlciBkZXN0cm95LiAqL1xuICBwcml2YXRlIHN1YnNjcmlwdGlvbnM6IEFycmF5PFN1YnNjcmlwdGlvbj4gPSBbXTtcblxuICBwdWJsaWMgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBvcGVuZWREYXRlcGlja2Vyc1RyYWNrZXJTZXJ2aWNlOiBPcGVuZWREYXRlcGlja2Vyc1RyYWNrZXJTZXJ2aWNlKSB7fVxuXG4gIHB1YmxpYyBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGRvdC1ub3RhdGlvbiAtLSBOZWVkIGFjY2VzcyB0byB0aGlzIHByaXZhdGUgcHJvcGVydHkuXG4gICAgY29uc3QgdG9nZ2xlU2VydmljZSA9IHRoaXMuY2xyRGF0ZUNvbnRhaW5lclsndG9nZ2xlU2VydmljZSddIGFzIENsclBvcG92ZXJUb2dnbGVTZXJ2aWNlO1xuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5wdXNoKFxuICAgICAgdG9nZ2xlU2VydmljZS5vcGVuQ2hhbmdlLnN1YnNjcmliZShvcGVuU3RhdGUgPT4ge1xuICAgICAgICB0aGlzLm9wZW5lZERhdGVwaWNrZXJzVHJhY2tlclNlcnZpY2UudHJhY2sob3BlblN0YXRlKTtcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMuZm9yRWFjaChzdWJzY3JpcHRpb24gPT4gc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCkpO1xuICB9XG5cbiAgLyoqXG4gICAqIEZvY3VzIGlucHV0LlxuICAgKi9cbiAgcHVibGljIGZvY3VzKCk6IHZvaWQge1xuICAgIHRoaXMuaW5wdXRFbG0ubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuICB9XG59XG4iLCI8Y2xyLWRhdGUtY29udGFpbmVyPlxuICA8bGFiZWw+e3sgdGhpcy5sYWJlbCB9fTwvbGFiZWw+XG4gIDxpbnB1dCAjaW5wdXRFbG0gY2xyRGF0ZSBbKGNsckRhdGUpXT1cInRoaXMuZGF0ZVwiIFttaW5dPVwidGhpcy5taW5EYXRlQXR0clwiIFttYXhdPVwidGhpcy5tYXhEYXRlQXR0clwiIC8+XG48L2Nsci1kYXRlLWNvbnRhaW5lcj5cbiJdfQ==
|