bit-ng-library 14.0.6 → 14.0.8
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/README.md +11 -1
- package/esm2020/lib/sharedlibrary/components/footer/bit-footer.component.mjs +45 -57
- package/esm2020/lib/sharedlibrary/components/form/calendar/bit-calendar.component.mjs +5 -2
- package/esm2020/lib/sharedlibrary/components/form/date/bit-date.component.mjs +3 -3
- package/esm2020/lib/sharedlibrary/components/form/datetime/bit-datetime.component.mjs +3 -3
- package/esm2020/lib/sharedlibrary/components/form/time/bit-time.component.mjs +3 -3
- package/fesm2015/bit-ng-library.mjs +57 -65
- package/fesm2015/bit-ng-library.mjs.map +1 -1
- package/fesm2020/bit-ng-library.mjs +54 -63
- package/fesm2020/bit-ng-library.mjs.map +1 -1
- package/lib/sharedlibrary/components/footer/bit-footer.component.d.ts +9 -13
- package/lib/sharedlibrary/components/footer/bit-footer.component.d.ts.map +1 -1
- package/lib/sharedlibrary/components/form/calendar/bit-calendar.component.d.ts +2 -1
- package/lib/sharedlibrary/components/form/calendar/bit-calendar.component.d.ts.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -26,7 +26,17 @@ To get more help on the Angular CLI use `ng help` or go check out the [Angular C
|
|
|
26
26
|
|
|
27
27
|
## changelog
|
|
28
28
|
|
|
29
|
-
## [14.0.
|
|
29
|
+
## [14.0.8] - 2023-02-02
|
|
30
|
+
|
|
31
|
+
se añade a los calendarios una nueva propiedad appendTo que por defecto valdrá body
|
|
32
|
+
|
|
33
|
+
## [14.0.7] - 2023-02-02
|
|
34
|
+
|
|
35
|
+
nueva versión del footer con dos parámetros nuevos:
|
|
36
|
+
visible: que por defecto será true y en el caso de indicar false hará que el footer no se muestre
|
|
37
|
+
forcePageLinkSize: permite forzar a que solo se muestre un número máximo de links de páginas en el paginador. En el caso de que no se especifique el valor será 1
|
|
38
|
+
|
|
39
|
+
## [14.0.6] - 2023-01-25
|
|
30
40
|
|
|
31
41
|
se formatean los campos bit-date y bit-datetime cuando está en modo readonly a formato humano en vez de ISO
|
|
32
42
|
se añade un campo extra detail den BitNotificacionError para sacar el detalle del error sin traducir tal como viene del servidor además del key traducido
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output,
|
|
1
|
+
import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, } from "@angular/core";
|
|
2
2
|
import { BaseFilter, BASE_RESULTADOS_PAGE } from "../../../base/shared/base.filter";
|
|
3
3
|
import { PageStatus } from "../../global.constants";
|
|
4
4
|
import * as i0 from "@angular/core";
|
|
@@ -11,14 +11,15 @@ import * as i5 from "@ngneat/transloco";
|
|
|
11
11
|
* Componente que muestra un paginador en la sección footer.
|
|
12
12
|
**/
|
|
13
13
|
export class BitFooterComponent {
|
|
14
|
-
constructor(translateService
|
|
14
|
+
constructor(translateService) {
|
|
15
15
|
this.translateService = translateService;
|
|
16
|
-
this.changeRef = changeRef;
|
|
17
16
|
this.mostrarAvisos = true;
|
|
18
17
|
this.fixed = true; // Indicará si lo queremos fijo abajo en la página. Por defecto sí.
|
|
19
18
|
this.status = PageStatus.Init; // Determina en qué estado está la página: PageStatus.Init, PageStatus.SEARCHING, PageStatus.FINISH_SEARCH
|
|
20
19
|
this.mostrarEnlacesPaginas = true;
|
|
21
20
|
this.mostrarPrimeraUltimaPagina = true;
|
|
21
|
+
this.visible = true;
|
|
22
|
+
this.forcePageLinkSize = 1; // número de enlaces en el paginador para poder navegar hacia delante o detrás que forzamos a que haya
|
|
22
23
|
this.onPageChange = new EventEmitter(); //para notificar cambios en la página a mostrar
|
|
23
24
|
this.onNewPageSize = new EventEmitter(); //para notificar cambios en los elementos a mostrar por página
|
|
24
25
|
this.baseItemsPerPage = BaseFilter.RESULTADOS_PAGE; // guardamos el número de resultados pre-configurados por página para mostrar la lista de x, x+10 y x+20
|
|
@@ -58,20 +59,6 @@ export class BitFooterComponent {
|
|
|
58
59
|
console.log("the footer is BLANK!");
|
|
59
60
|
}
|
|
60
61
|
}
|
|
61
|
-
/**
|
|
62
|
-
* Cuando tengamos la referencia al componente paginator actualizamos internamente el número de página y el número de páginas
|
|
63
|
-
* del desplegable con la información del filtro proporcionado
|
|
64
|
-
*/
|
|
65
|
-
ngAfterViewInit() {
|
|
66
|
-
if (this.pc) {
|
|
67
|
-
this.itemsPerPage = this.filter.resultados;
|
|
68
|
-
console.log(`this.filter.resultados ${this.filter.resultados}`);
|
|
69
|
-
console.log(`this.filter.pagina ${this.filter.pagina}`);
|
|
70
|
-
this.pc.rows = this.filter.resultados;
|
|
71
|
-
this.pc._first = (this.filter.pagina - 1) * this.pc.rows;
|
|
72
|
-
this.pc.updatePageLinks();
|
|
73
|
-
}
|
|
74
|
-
}
|
|
75
62
|
/**
|
|
76
63
|
* Escucharemos a cambios en las propiedades totalItems para actualizar el paginador con respecto a las páginas que mostramos
|
|
77
64
|
*/
|
|
@@ -80,56 +67,65 @@ export class BitFooterComponent {
|
|
|
80
67
|
let changedProp = changes[propName];
|
|
81
68
|
if (propName === "status") {
|
|
82
69
|
this.status = changedProp.currentValue;
|
|
83
|
-
console.log(
|
|
70
|
+
console.log("status:" + this.status);
|
|
84
71
|
}
|
|
85
72
|
else if (propName === "totalItems") {
|
|
86
73
|
this.totalItems = changedProp.currentValue;
|
|
87
|
-
console.log(
|
|
74
|
+
console.log("totalItems:" + this.totalItems);
|
|
88
75
|
if (changedProp.previousValue !== changedProp.currentValue) {
|
|
89
76
|
this.calculatePageLinkSize(); //recalculamos
|
|
90
77
|
}
|
|
91
|
-
this.
|
|
78
|
+
this.calculateMaxCurrentItems();
|
|
92
79
|
}
|
|
93
80
|
else if (propName === "filter") {
|
|
94
81
|
this.filter = changedProp.currentValue;
|
|
95
|
-
|
|
96
|
-
this.maxCurrentItems = this.filter?.pagina * this.filter?.resultados;
|
|
97
|
-
}
|
|
98
|
-
console.log(`new filter ${this.filter?.pagina} - ${this.maxCurrentItems}`);
|
|
82
|
+
this.calculateMaxCurrentItems();
|
|
99
83
|
if (changedProp.previousValue !== changedProp.currentValue) {
|
|
100
84
|
this.calculatePageLinkSize(); //recalculamos
|
|
101
85
|
if (!this.filter?.pagina || this.filter.pagina <= 1) {
|
|
102
86
|
this.goToFirstPage();
|
|
87
|
+
console.log("goToFirstPage");
|
|
103
88
|
}
|
|
104
89
|
}
|
|
90
|
+
this.first = (this.filter.pagina - 1) * this.filter.resultados;
|
|
91
|
+
console.log("first:" + this.first);
|
|
105
92
|
}
|
|
106
93
|
}
|
|
107
|
-
if (this.pc && this.changeRef) {
|
|
108
|
-
console.log('updatePageLinks');
|
|
109
|
-
this.pc.updatePageLinks();
|
|
110
|
-
this.changeRef.detectChanges();
|
|
111
|
-
}
|
|
112
94
|
}
|
|
113
95
|
showFooter() {
|
|
114
|
-
|
|
96
|
+
// Problema. Estamos obteniendo un status a null cuando regresamos de una ficha
|
|
97
|
+
// status es null porque realmente no se está lanzando ninguna búsqueda por lo que el método updatePageStatus retorna null
|
|
98
|
+
return this.typeFooter === 'list' && this.visible;
|
|
115
99
|
}
|
|
116
100
|
showScroll() {
|
|
117
|
-
return this.typeFooter === 'scroll' && this.
|
|
101
|
+
return this.typeFooter === 'scroll' && this.visible;
|
|
118
102
|
}
|
|
119
103
|
/** Calcula el número de enlaces visibles en el paginador (en el rango entre 1 y BASE_RESULTADOS_PAGE). */
|
|
120
104
|
calculatePageLinkSize() {
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
this.pageLinkSize
|
|
105
|
+
if (this.forcePageLinkSize == 0) {
|
|
106
|
+
console.log(`calculatePageLinkSize totalItems: ${this.totalItems} itemsPerPage:${this.itemsPerPage}`);
|
|
107
|
+
this.pageLinkSize = Math.ceil(this.totalItems / this.itemsPerPage);
|
|
108
|
+
if (this.pageLinkSize < 1) {
|
|
109
|
+
this.pageLinkSize = 1;
|
|
110
|
+
}
|
|
111
|
+
if (this.pageLinkSize > BASE_RESULTADOS_PAGE) {
|
|
112
|
+
this.pageLinkSize = BASE_RESULTADOS_PAGE;
|
|
113
|
+
}
|
|
125
114
|
}
|
|
126
|
-
|
|
127
|
-
this.pageLinkSize =
|
|
115
|
+
else {
|
|
116
|
+
this.pageLinkSize = this.forcePageLinkSize;
|
|
117
|
+
}
|
|
118
|
+
console.log("pageLinkSize", this.pageLinkSize);
|
|
119
|
+
}
|
|
120
|
+
calculateMaxCurrentItems() {
|
|
121
|
+
this.maxCurrentItems = this.filter?.pagina * this.filter?.resultados;
|
|
122
|
+
if (this.maxCurrentItems > this.totalItems) {
|
|
123
|
+
this.maxCurrentItems = this.totalItems;
|
|
128
124
|
}
|
|
129
125
|
}
|
|
130
126
|
/** Establece el número de página en la visualización de resultados. Se invoca cuando el usuario cambia el número de resultados a mostrar o cambia de página */
|
|
131
127
|
paginate(event) {
|
|
132
|
-
console.log("Page changed to"
|
|
128
|
+
console.log("Page changed to:" + event.page + " maxCurrentItems:" + this.maxCurrentItems + " firstElement:" + this.first);
|
|
133
129
|
if (event.rows !== this.itemsPerPage) {
|
|
134
130
|
// han cambiado el número de elementos por página
|
|
135
131
|
//notificamos que los elementos por página han cambiado
|
|
@@ -144,20 +140,11 @@ export class BitFooterComponent {
|
|
|
144
140
|
}
|
|
145
141
|
}
|
|
146
142
|
goToFirstPage() {
|
|
147
|
-
|
|
148
|
-
//volvemos a la primera página
|
|
149
|
-
this.pc._first = 1;
|
|
150
|
-
this.pc.updatePageLinks();
|
|
151
|
-
}
|
|
143
|
+
this.first = 1;
|
|
152
144
|
}
|
|
153
145
|
getStyle() {
|
|
154
146
|
if (this.fixed && this.typeFooter === BitFooterComponent.TYPE_LIST || this.typeFooter === BitFooterComponent.TYPE_SCROLL) {
|
|
155
|
-
|
|
156
|
-
return "footer navbar-fixed-bottom";
|
|
157
|
-
}
|
|
158
|
-
else {
|
|
159
|
-
return "footer navbar-fixed-bottom-60";
|
|
160
|
-
}
|
|
147
|
+
return "footer navbar-fixed-bottom";
|
|
161
148
|
}
|
|
162
149
|
else if (this.fixed && this.typeFooter === BitFooterComponent.TYPE_FORM) {
|
|
163
150
|
return "footer navbar-fixed-bottom-form";
|
|
@@ -238,15 +225,12 @@ BitFooterComponent.TYPE_SCROLL = "scroll";
|
|
|
238
225
|
BitFooterComponent.TYPE_FORM = "form";
|
|
239
226
|
BitFooterComponent.TYPE_BLANK = "blank";
|
|
240
227
|
BitFooterComponent.MORE_RESULTS = -1;
|
|
241
|
-
BitFooterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.8", ngImport: i0, type: BitFooterComponent, deps: [{ token: i1.TranslateService }
|
|
242
|
-
BitFooterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.8", type: BitFooterComponent, selector: "bit-footer", inputs: { totalItems: "totalItems", filter: "filter", paginator: "paginator", mostrarAvisos: "mostrarAvisos", fixed: "fixed", messages: "messages", status: "status", typeFooter: ["type", "typeFooter"], mostrarEnlacesPaginas: "mostrarEnlacesPaginas", mostrarPrimeraUltimaPagina: "mostrarPrimeraUltimaPagina"
|
|
228
|
+
BitFooterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.8", ngImport: i0, type: BitFooterComponent, deps: [{ token: i1.TranslateService }], target: i0.ɵɵFactoryTarget.Component });
|
|
229
|
+
BitFooterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.8", type: BitFooterComponent, selector: "bit-footer", inputs: { totalItems: "totalItems", filter: "filter", paginator: "paginator", mostrarAvisos: "mostrarAvisos", fixed: "fixed", messages: "messages", status: "status", typeFooter: ["type", "typeFooter"], mostrarEnlacesPaginas: "mostrarEnlacesPaginas", mostrarPrimeraUltimaPagina: "mostrarPrimeraUltimaPagina", visible: "visible", forcePageLinkSize: "forcePageLinkSize" }, outputs: { onPageChange: "onPageChange", onNewPageSize: "onNewPageSize" }, usesOnChanges: true, ngImport: i0, template: "<footer [class]=\"getStyle()\">\n <div class=\"grid\">\n <div class=\"col-12 md:col-2 lg:col-2\" *ngIf=\"showFooter()\">\n <div class=\"numero-resultados\">\n <label>{{\"bitnglibrary.footer.results\" | transloco}}</label>\n <span>{{maxCurrentItems}} / {{totalItems}}</span>\n </div>\n </div>\n <div class=\"col-12 md:col-2 lg:col-2\" *ngIf=\"showScroll()\">\n <div class=\"numero-resultados-scroll\">\n <label>{{\"bitnglibrary.footer.results\" | transloco}}</label>\n <span *ngIf=\"maxCurrentItems >= totalItems\">{{totalItems}}</span>\n <span *ngIf=\"maxCurrentItems < totalItems\">{{maxCurrentItems}} / {{totalItems}}</span>\n </div>\n </div>\n\n <div class=\"col-12 md:col-7 lg:col-7 p-text-center\" *ngIf=\"showFooter()\">\n <p-paginator *ngIf=\"paginator\"\n [first]=\"first\"\n [rows]=\"itemsPerPage\"\n [totalRecords]=\"totalItems\"\n [pageLinkSize]=\"mostrarEnlacesPaginas ? pageLinkSize : 1\"\n [rowsPerPageOptions]=\"[baseItemsPerPage,baseItemsPerPage*5,baseItemsPerPage*25,baseItemsPerPage*50]\"\n [showPageLinks]=\"mostrarEnlacesPaginas\"\n [showJumpToPageDropdown]=\"false\"\n [showFirstLastIcon]=\"mostrarPrimeraUltimaPagina ? true : maxCurrentItems >= totalItems\"\n (onPageChange)=\"paginate($event)\"></p-paginator>\n </div>\n <div class=\"col-12 md:col-3 lg:col-3\">\n <div *ngIf=\"searchInitiated\"\n [className]=\"typeFooter === 'scroll' ? 'mensaje-scroll mensaje-info' : 'mensaje mensaje-info'\">\n <i class=\"fa fa-info\"></i>\n <span>{{initMessage | async}}</span>\n </div>\n\n <div *ngIf=\"searching\"\n [className]=\"typeFooter === 'scroll' ? 'mensaje-scroll mensaje-info' : 'mensaje mensaje-info'\">\n <i class=\"fa fa-info\"></i>\n <span>{{searchingMessage | async}}</span>\n </div>\n\n <div *ngIf=\"readOnly\"\n [className]=\"typeFooter === 'scroll' ? 'mensaje-scroll mensaje-info' : 'mensaje mensaje-info'\">\n <i class=\"fa fa-info\"></i>\n <span>{{readOnlyMessage | async}}</span>\n </div>\n\n <div *ngIf=\"foundResult\"\n [className]=\"typeFooter === 'scroll' ? 'mensaje-scroll mensaje-info' : 'mensaje mensaje-info'\">\n <i class=\"fa fa-info\"></i>\n <span>{{finishMessage | async}}</span>\n </div>\n\n <div *ngIf=\"moreResults\"\n [className]=\"typeFooter === 'scroll' ? 'mensaje-scroll mensaje-info' : 'mensaje mensaje-info'\">\n <i class=\"fa fa-info\"></i>\n <span>{{moreResultsMessage | async}}</span>\n </div>\n\n <div *ngIf=\"emptyResult\"\n [className]=\"typeFooter === 'scroll' ? 'mensaje-scroll mensaje-info' : 'mensaje mensaje-info'\">\n <i class=\"fa fa-exclamation\"></i>\n <span>{{emptyMessage | async}}</span>\n </div>\n\n <div *ngIf=\"error\"\n [className]=\"typeFooter === 'scroll' ? 'mensaje-scroll mensaje-info' : 'mensaje mensaje-info'\">\n <i class=\"fa fa-exclamation-triangle\"></i>\n <span>{{errorMessage | async}}</span>\n </div>\n\n <bit-help></bit-help>\n </div>\n </div>\n</footer>\n", dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.Paginator, selector: "p-paginator", inputs: ["pageLinkSize", "style", "styleClass", "alwaysShow", "templateLeft", "templateRight", "dropdownAppendTo", "dropdownScrollHeight", "currentPageReportTemplate", "showCurrentPageReport", "showFirstLastIcon", "totalRecords", "rows", "rowsPerPageOptions", "showJumpToPageDropdown", "showJumpToPageInput", "showPageLinks", "dropdownItemTemplate", "first"], outputs: ["onPageChange"] }, { kind: "component", type: i4.BitHelpComponent, selector: "bit-help" }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "pipe", type: i5.TranslocoPipe, name: "transloco" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
243
230
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.8", ngImport: i0, type: BitFooterComponent, decorators: [{
|
|
244
231
|
type: Component,
|
|
245
|
-
args: [{ selector: "bit-footer", changeDetection: ChangeDetectionStrategy.OnPush, template: "<footer [class]=\"getStyle()\">\n <div class=\"grid\">\n <div class=\"col-12 md:col-2 lg:col-2\" *ngIf=\"showFooter()\">\n <div class=\"numero-resultados\">\n <label>{{\"bitnglibrary.footer.results\" | transloco}}</label>\n <span>{{totalItems}}</span>\n </div>\n </div>\n <div class=\"col-12 md:col-2 lg:col-2\" *ngIf=\"showScroll()\">\n <div class=\"numero-resultados-scroll\">\n <label>{{\"bitnglibrary.footer.results\" | transloco}}</label>\n <span *ngIf=\"maxCurrentItems >= totalItems\">{{totalItems}}</span>\n <span *ngIf=\"maxCurrentItems < totalItems\">{{maxCurrentItems}} / {{totalItems}}</span>\n </div>\n </div>\n\n <div class=\"col-12 md:col-7 lg:col-7 p-text-center\" *ngIf=\"
|
|
246
|
-
}], ctorParameters: function () { return [{ type: i1.TranslateService }
|
|
247
|
-
type: ViewChild,
|
|
248
|
-
args: ["pc"]
|
|
249
|
-
}], totalItems: [{
|
|
232
|
+
args: [{ selector: "bit-footer", changeDetection: ChangeDetectionStrategy.OnPush, template: "<footer [class]=\"getStyle()\">\n <div class=\"grid\">\n <div class=\"col-12 md:col-2 lg:col-2\" *ngIf=\"showFooter()\">\n <div class=\"numero-resultados\">\n <label>{{\"bitnglibrary.footer.results\" | transloco}}</label>\n <span>{{maxCurrentItems}} / {{totalItems}}</span>\n </div>\n </div>\n <div class=\"col-12 md:col-2 lg:col-2\" *ngIf=\"showScroll()\">\n <div class=\"numero-resultados-scroll\">\n <label>{{\"bitnglibrary.footer.results\" | transloco}}</label>\n <span *ngIf=\"maxCurrentItems >= totalItems\">{{totalItems}}</span>\n <span *ngIf=\"maxCurrentItems < totalItems\">{{maxCurrentItems}} / {{totalItems}}</span>\n </div>\n </div>\n\n <div class=\"col-12 md:col-7 lg:col-7 p-text-center\" *ngIf=\"showFooter()\">\n <p-paginator *ngIf=\"paginator\"\n [first]=\"first\"\n [rows]=\"itemsPerPage\"\n [totalRecords]=\"totalItems\"\n [pageLinkSize]=\"mostrarEnlacesPaginas ? pageLinkSize : 1\"\n [rowsPerPageOptions]=\"[baseItemsPerPage,baseItemsPerPage*5,baseItemsPerPage*25,baseItemsPerPage*50]\"\n [showPageLinks]=\"mostrarEnlacesPaginas\"\n [showJumpToPageDropdown]=\"false\"\n [showFirstLastIcon]=\"mostrarPrimeraUltimaPagina ? true : maxCurrentItems >= totalItems\"\n (onPageChange)=\"paginate($event)\"></p-paginator>\n </div>\n <div class=\"col-12 md:col-3 lg:col-3\">\n <div *ngIf=\"searchInitiated\"\n [className]=\"typeFooter === 'scroll' ? 'mensaje-scroll mensaje-info' : 'mensaje mensaje-info'\">\n <i class=\"fa fa-info\"></i>\n <span>{{initMessage | async}}</span>\n </div>\n\n <div *ngIf=\"searching\"\n [className]=\"typeFooter === 'scroll' ? 'mensaje-scroll mensaje-info' : 'mensaje mensaje-info'\">\n <i class=\"fa fa-info\"></i>\n <span>{{searchingMessage | async}}</span>\n </div>\n\n <div *ngIf=\"readOnly\"\n [className]=\"typeFooter === 'scroll' ? 'mensaje-scroll mensaje-info' : 'mensaje mensaje-info'\">\n <i class=\"fa fa-info\"></i>\n <span>{{readOnlyMessage | async}}</span>\n </div>\n\n <div *ngIf=\"foundResult\"\n [className]=\"typeFooter === 'scroll' ? 'mensaje-scroll mensaje-info' : 'mensaje mensaje-info'\">\n <i class=\"fa fa-info\"></i>\n <span>{{finishMessage | async}}</span>\n </div>\n\n <div *ngIf=\"moreResults\"\n [className]=\"typeFooter === 'scroll' ? 'mensaje-scroll mensaje-info' : 'mensaje mensaje-info'\">\n <i class=\"fa fa-info\"></i>\n <span>{{moreResultsMessage | async}}</span>\n </div>\n\n <div *ngIf=\"emptyResult\"\n [className]=\"typeFooter === 'scroll' ? 'mensaje-scroll mensaje-info' : 'mensaje mensaje-info'\">\n <i class=\"fa fa-exclamation\"></i>\n <span>{{emptyMessage | async}}</span>\n </div>\n\n <div *ngIf=\"error\"\n [className]=\"typeFooter === 'scroll' ? 'mensaje-scroll mensaje-info' : 'mensaje mensaje-info'\">\n <i class=\"fa fa-exclamation-triangle\"></i>\n <span>{{errorMessage | async}}</span>\n </div>\n\n <bit-help></bit-help>\n </div>\n </div>\n</footer>\n" }]
|
|
233
|
+
}], ctorParameters: function () { return [{ type: i1.TranslateService }]; }, propDecorators: { totalItems: [{
|
|
250
234
|
type: Input
|
|
251
235
|
}], filter: [{
|
|
252
236
|
type: Input
|
|
@@ -267,9 +251,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.8", ngImpor
|
|
|
267
251
|
type: Input
|
|
268
252
|
}], mostrarPrimeraUltimaPagina: [{
|
|
269
253
|
type: Input
|
|
254
|
+
}], visible: [{
|
|
255
|
+
type: Input
|
|
256
|
+
}], forcePageLinkSize: [{
|
|
257
|
+
type: Input
|
|
270
258
|
}], onPageChange: [{
|
|
271
259
|
type: Output
|
|
272
260
|
}], onNewPageSize: [{
|
|
273
261
|
type: Output
|
|
274
262
|
}] } });
|
|
275
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYml0LWZvb3Rlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iaXQtbmctbGlicmFyeS9zcmMvbGliL3NoYXJlZGxpYnJhcnkvY29tcG9uZW50cy9mb290ZXIvYml0LWZvb3Rlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iaXQtbmctbGlicmFyeS9zcmMvbGliL3NoYXJlZGxpYnJhcnkvY29tcG9uZW50cy9mb290ZXIvYml0LWZvb3Rlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBRXZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUdMLE1BQU0sRUFFTixTQUFTLEVBQ1YsTUFBTSxlQUFlLENBQUM7QUFHdkIsT0FBTyxFQUFFLFVBQVUsRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ3BGLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7Ozs7OztBQUdwRDs7SUFFSTtBQU1KLE1BQU0sT0FBTyxrQkFBa0I7SUF5QzdCLFlBQW9CLGdCQUFrQyxFQUNsQyxTQUE0QjtRQUQ1QixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBQ2xDLGNBQVMsR0FBVCxTQUFTLENBQW1CO1FBekJoRCxrQkFBYSxHQUFZLElBQUksQ0FBQztRQUU5QixVQUFLLEdBQVksSUFBSSxDQUFDLENBQUMsbUVBQW1FO1FBSTFGLFdBQU0sR0FBZSxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUMsMEdBQTBHO1FBSWhKLDBCQUFxQixHQUFZLElBQUksQ0FBQztRQUV0QywrQkFBMEIsR0FBWSxJQUFJLENBQUM7UUFFM0MsaUJBQVksR0FBRyxJQUFJLFlBQVksRUFBVSxDQUFDLENBQUMsK0NBQStDO1FBRTFGLGtCQUFhLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQyxD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QUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ3BGLENBQUM7O0FBalJhLDRCQUFTLEdBQVcsTUFBTSxDQUFDO0FBQzNCLDhCQUFXLEdBQVcsUUFBUSxDQUFDO0FBQy9CLDRCQUFTLEdBQVcsTUFBTSxDQUFDO0FBQzNCLDZCQUFVLEdBQVcsT0FBTyxDQUFDO0FBRTdCLCtCQUFZLEdBQUcsQ0FBQyxDQUFDLENBQUM7K0dBTnJCLGtCQUFrQjttR0FBbEIsa0JBQWtCLGtpQkMxQi9CLGlzR0EwRUE7MkZEaERhLGtCQUFrQjtrQkFMOUIsU0FBUzsrQkFDRSxZQUFZLG1CQUNMLHVCQUF1QixDQUFDLE1BQU07dUlBWS9DLEVBQUU7c0JBREQsU0FBUzt1QkFBQyxJQUFJO2dCQUdmLFVBQVU7c0JBRFQsS0FBSztnQkFHTixNQUFNO3NCQURMLEtBQUs7Z0JBR04sU0FBUztzQkFEUixLQUFLO2dCQUdOLGFBQWE7c0JBRFosS0FBSztnQkFHTixLQUFLO3NCQURKLEtBQUs7Z0JBR04sUUFBUTtzQkFEUCxLQUFLO2dCQUdOLE1BQU07c0JBREwsS0FBSztnQkFHTixVQUFVO3NCQURULEtBQUs7dUJBQUMsTUFBTTtnQkFHYixxQkFBcUI7c0JBRHBCLEtBQUs7Z0JBR04sMEJBQTBCO3NCQUR6QixLQUFLO2dCQUdOLFlBQVk7c0JBRFgsTUFBTTtnQkFHUCxhQUFhO3NCQURaLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgT25DaGFuZ2VzLFxuICBPbkluaXQsXG4gIE91dHB1dCxcbiAgU2ltcGxlQ2hhbmdlLFxuICBWaWV3Q2hpbGRcbn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7UGFnaW5hdG9yfSBmcm9tIFwicHJpbWVuZy9wYWdpbmF0b3JcIjtcbmltcG9ydCB7T2JzZXJ2YWJsZX0gZnJvbSBcInJ4anNcIjtcbmltcG9ydCB7IEJhc2VGaWx0ZXIsIEJBU0VfUkVTVUxUQURPU19QQUdFIH0gZnJvbSBcIi4uLy4uLy4uL2Jhc2Uvc2hhcmVkL2Jhc2UuZmlsdGVyXCI7XG5pbXBvcnQgeyBQYWdlU3RhdHVzIH0gZnJvbSBcIi4uLy4uL2dsb2JhbC5jb25zdGFudHNcIjtcbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tIFwiLi4vLi4vc2VydmljZXNcIjtcblxuLyoqXG4gKiBDb21wb25lbnRlIHF1ZSBtdWVzdHJhIHVuIHBhZ2luYWRvciBlbiBsYSBzZWNjacOzbiBmb290ZXIuXG4gKiovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6IFwiYml0LWZvb3RlclwiLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGVVcmw6IFwiYml0LWZvb3Rlci5jb21wb25lbnQuaHRtbFwiXG59KVxuZXhwb3J0IGNsYXNzIEJpdEZvb3RlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzIHtcbiAgcHVibGljIHN0YXRpYyBUWVBFX0xJU1Q6IHN0cmluZyA9IFwibGlzdFwiO1xuICBwdWJsaWMgc3RhdGljIFRZUEVfU0NST0xMOiBzdHJpbmcgPSBcInNjcm9sbFwiO1xuICBwdWJsaWMgc3RhdGljIFRZUEVfRk9STTogc3RyaW5nID0gXCJmb3JtXCI7XG4gIHB1YmxpYyBzdGF0aWMgVFlQRV9CTEFOSzogc3RyaW5nID0gXCJibGFua1wiO1xuXG4gIHB1YmxpYyBzdGF0aWMgTU9SRV9SRVNVTFRTID0gLTE7XG5cbiAgQFZpZXdDaGlsZChcInBjXCIpXG4gIHBjOiBQYWdpbmF0b3I7XG4gIEBJbnB1dCgpXG4gIHRvdGFsSXRlbXM6IG51bWJlcjsgICAgIC8vIE7Dum1lcm8gdG90YWwgZGUgZWxlbWVudG9zIHJlY3VwZXJhZG9zIGRlIGxhIGNvbnN1bHRhXG4gIEBJbnB1dCgpXG4gIGZpbHRlcjogQmFzZUZpbHRlcjtcbiAgQElucHV0KClcbiAgcGFnaW5hdG9yOiBib29sZWFuO1xuICBASW5wdXQoKVxuICBtb3N0cmFyQXZpc29zOiBib29sZWFuID0gdHJ1ZTtcbiAgQElucHV0KClcbiAgZml4ZWQ6IGJvb2xlYW4gPSB0cnVlOyAvLyBJbmRpY2Fyw6Egc2kgbG8gcXVlcmVtb3MgZmlqbyBhYmFqbyBlbiBsYSBww6FnaW5hLiBQb3IgZGVmZWN0byBzw60uXG4gIEBJbnB1dCgpXG4gIG1lc3NhZ2VzOiBNYXA8UGFnZVN0YXR1cywgc3RyaW5nPjtcbiAgQElucHV0KClcbiAgc3RhdHVzOiBQYWdlU3RhdHVzID0gUGFnZVN0YXR1cy5Jbml0OyAvLyBEZXRlcm1pbmEgZW4gcXXDqSBlc3RhZG8gZXN0w6EgbGEgcMOhZ2luYTogUGFnZVN0YXR1cy5Jbml0LCBQYWdlU3RhdHVzLlNFQVJDSElORywgUGFnZVN0YXR1cy5GSU5JU0hfU0VBUkNIXG4gIEBJbnB1dChcInR5cGVcIilcbiAgdHlwZUZvb3Rlcjogc3RyaW5nO1xuICBASW5wdXQoKVxuICBtb3N0cmFyRW5sYWNlc1BhZ2luYXM6IGJvb2xlYW4gPSB0cnVlO1xuICBASW5wdXQoKVxuICBtb3N0cmFyUHJpbWVyYVVsdGltYVBhZ2luYTogYm9vbGVhbiA9IHRydWU7XG4gIEBPdXRwdXQoKVxuICBvblBhZ2VDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPG51bWJlcj4oKTsgLy9wYXJhIG5vdGlmaWNhciBjYW1iaW9zIGVuIGxhIHDDoWdpbmEgYSBtb3N0cmFyXG4gIEBPdXRwdXQoKVxuICBvbk5ld1BhZ2VTaXplID0gbmV3IEV2ZW50RW1pdHRlcjxudW1iZXI+KCk7IC8vcGFyYSBub3RpZmljYXIgY2FtYmlvcyBlbiBsb3MgZWxlbWVudG9zIGEgbW9zdHJhciBwb3IgcMOhZ2luYVxuXG4gIGJhc2VJdGVtc1BlclBhZ2U6IG51bWJlciA9IEJhc2VGaWx0ZXIuUkVTVUxUQURPU19QQUdFOyAvLyBndWFyZGFtb3MgZWwgbsO6bWVybyBkZSByZXN1bHRhZG9zIHByZS1jb25maWd1cmFkb3MgcG9yIHDDoWdpbmEgcGFyYSBtb3N0cmFyIGxhIGxpc3RhIGRlIHgsIHgrMTAgeSB4KzIwXG4gIHBhZ2VMaW5rU2l6ZTogbnVtYmVyOyAvLyBuw7ptZXJvIGRlIGVubGFjZXMgZW4gZWwgcGFnaW5hZG9yIHBhcmEgcG9kZXIgbmF2ZWdhciBoYWNpYSBkZWxhbnRlIG8gZGV0csOhc1xuICBpdGVtc1BlclBhZ2U6IG51bWJlciA9IEJhc2VGaWx0ZXIuUkVTVUxUQURPU19QQUdFOyAvLyBuw7ptZXJvIGRlIGVsZW1lbnRvcyBwb3IgcMOhZ2luYSBxdWUgbW9zdHJhbW9zXG5cbiAgbWF4Q3VycmVudEl0ZW1zOiBudW1iZXIgPSAtMTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHRyYW5zbGF0ZVNlcnZpY2U6IFRyYW5zbGF0ZVNlcnZpY2UsXG4gICAgICAgICAgICAgIHByaXZhdGUgY2hhbmdlUmVmOiBDaGFuZ2VEZXRlY3RvclJlZikge1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMudHlwZUZvb3RlciA9PSB1bmRlZmluZWQpIHtcbiAgICAgIHRoaXMudHlwZUZvb3RlciA9IFwibGlzdFwiO1xuICAgIH1cbiAgICBpZiAodGhpcy5wYWdpbmF0b3IgPT0gdW5kZWZpbmVkKSB7XG4gICAgICB0aGlzLnBhZ2luYXRvciA9IGZhbHNlO1xuICAgIH1cbiAgICAvL21lbnNhamVzIHBvciBkZWZlY3RvIHNpIG5vIHZpZW5lbiBkZWZpbmlkb3NcbiAgICBpZiAodGhpcy5tZXNzYWdlcyA9PSB1bmRlZmluZWQpIHtcbiAgICAgIHRoaXMuc2V0TWVzc2FnZXMoKTtcbiAgICAgIHRoaXMubWVzc2FnZXMuc2V0KFBhZ2VTdGF0dXMuRXJyb3IsIFwiYml0bmdsaWJyYXJ5LmZvb3Rlci5lcnJvclwiKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHNldE1lc3NhZ2VzKCkge1xuICAgIGNvbnNvbGUubG9nKFwiZGVmaW5pbW9zIGxvcyBtZW5zYWplcyBkZWwgZm9vdGVyIGRlIG1hbmVyYSBlc3TDoW5kYXJcIik7XG4gICAgdGhpcy5tZXNzYWdlcyA9IG5ldyBNYXA8UGFnZVN0YXR1cywgc3RyaW5nPigpO1xuICAgIGlmICh0aGlzLmlzRm9vdGVyTGlzdCgpIHx8IHRoaXMuaXNGb290ZXJTY3JvbGwoKSkge1xuICAgICAgdGhpcy5tZXNzYWdlcy5zZXQoUGFnZVN0YXR1cy5Jbml0LCBcImJpdG5nbGlicmFyeS5mb290ZXIubGlzdC5pbml0XCIpO1xuICAgICAgdGhpcy5tZXNzYWdlcy5zZXQoUGFnZVN0YXR1cy5TZWFyY2hpbmcsIFwiYml0bmdsaWJyYXJ5LmZvb3Rlci5saXN0LnNlYXJjaGluZ1wiKTtcbiAgICAgIHRoaXMubWVzc2FnZXMuc2V0KFBhZ2VTdGF0dXMuRW1wdHlSZXN1bHQsIFwiYml0bmdsaWJyYXJ5LmZvb3Rlci5saXN0LmVtcHR5cmVzdWx0XCIpO1xuICAgICAgdGhpcy5tZXNzYWdlcy5zZXQoUGFnZVN0YXR1cy5GaW5pc2hTZWFyY2gsIFwiYml0bmdsaWJyYXJ5LmZvb3Rlci5saXN0LmZpbmlzaHNlYXJjaFwiKTtcbiAgICAgIHRoaXMubWVzc2FnZXMuc2V0KEJpdEZvb3RlckNvbXBvbmVudC5NT1JFX1JFU1VMVFMsIFwiYml0bmdsaWJyYXJ5LmZvb3Rlci5saXN0Lm1vcmVyZXN1bHRzXCIpXG4gICAgfSBlbHNlIGlmICh0aGlzLmlzRm9vdGVyRm9ybSgpKSB7XG4gICAgICB0aGlzLm1lc3NhZ2VzLnNldChQYWdlU3RhdHVzLkluaXQsIFwiYml0bmdsaWJyYXJ5LmZvb3Rlci5mb3JtLmluaXRcIik7XG4gICAgICB0aGlzLm1lc3NhZ2VzLnNldChQYWdlU3RhdHVzLlNlYXJjaGluZywgXCJiaXRuZ2xpYnJhcnkuZm9vdGVyLmZvcm0uc2VhcmNoaW5nXCIpO1xuICAgICAgdGhpcy5tZXNzYWdlcy5zZXQoUGFnZVN0YXR1cy5GaW5pc2hTZWFyY2gsIFwiYml0bmdsaWJyYXJ5LmZvb3Rlci5mb3JtLmZpbmlzaHNlYXJjaFwiKTtcbiAgICAgIHRoaXMubWVzc2FnZXMuc2V0KFBhZ2VTdGF0dXMuUmVhZE9ubHksIFwiYml0bmdsaWJyYXJ5LmZvb3Rlci5saXN0LnJlYWRvbmx5XCIpO1xuICAgIH0gZWxzZSBpZiAodGhpcy50eXBlRm9vdGVyID09PSBCaXRGb290ZXJDb21wb25lbnQuVFlQRV9CTEFOSykge1xuICAgICAgY29uc29sZS5sb2coXCJ0aGUgZm9vdGVyIGlzIEJMQU5LIVwiKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQ3VhbmRvIHRlbmdhbW9zIGxhIHJlZmVyZW5jaWEgYWwgY29tcG9uZW50ZSBwYWdpbmF0b3IgYWN0dWFsaXphbW9zIGludGVybmFtZW50ZSBlbCBuw7ptZXJvIGRlIHDDoWdpbmEgeSBlbCBuw7ptZXJvIGRlIHDDoWdpbmFzXG4gICAqIGRlbCBkZXNwbGVnYWJsZSBjb24gbGEgaW5mb3JtYWNpw7NuIGRlbCBmaWx0cm8gcHJvcG9yY2lvbmFkb1xuICAgKi9cbiAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIGlmICh0aGlzLnBjKSB7XG4gICAgICB0aGlzLml0ZW1zUGVyUGFnZSA9IHRoaXMuZmlsdGVyLnJlc3VsdGFkb3M7XG4gICAgICBjb25zb2xlLmxvZyhgdGhpcy5maWx0ZXIucmVzdWx0YWRvcyAke3RoaXMuZmlsdGVyLnJlc3VsdGFkb3N9YCk7XG4gICAgICBjb25zb2xlLmxvZyhgdGhpcy5maWx0ZXIucGFnaW5hICR7dGhpcy5maWx0ZXIucGFnaW5hfWApO1xuICAgICAgdGhpcy5wYy5yb3dzID0gdGhpcy5maWx0ZXIucmVzdWx0YWRvcztcbiAgICAgIHRoaXMucGMuX2ZpcnN0ID0gKHRoaXMuZmlsdGVyLnBhZ2luYSAtIDEpICogdGhpcy5wYy5yb3dzO1xuICAgICAgdGhpcy5wYy51cGRhdGVQYWdlTGlua3MoKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogRXNjdWNoYXJlbW9zIGEgY2FtYmlvcyBlbiBsYXMgcHJvcGllZGFkZXMgdG90YWxJdGVtcyBwYXJhIGFjdHVhbGl6YXIgZWwgcGFnaW5hZG9yIGNvbiByZXNwZWN0byBhIGxhcyBww6FnaW5hcyBxdWUgbW9zdHJhbW9zXG4gICAqL1xuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiB7IFtwcm9wS2V5OiBzdHJpbmddOiBTaW1wbGVDaGFuZ2UgfSkge1xuICAgIGZvciAobGV0IHByb3BOYW1lIGluIGNoYW5nZXMpIHtcbiAgICAgIGxldCBjaGFuZ2VkUHJvcCA9IGNoYW5nZXNbcHJvcE5hbWVdO1xuICAgICAgaWYgKHByb3BOYW1lID09PSBcInN0YXR1c1wiKSB7XG4gICAgICAgIHRoaXMuc3RhdHVzID0gY2hhbmdlZFByb3AuY3VycmVudFZhbHVlO1xuICAgICAgICBjb25zb2xlLmxvZyhgbmV3IHN0YXR1cyAke3RoaXMuc3RhdHVzfWApO1xuICAgICAgfSBlbHNlIGlmIChwcm9wTmFtZSA9PT0gXCJ0b3RhbEl0ZW1zXCIpIHtcbiAgICAgICAgdGhpcy50b3RhbEl0ZW1zID0gY2hhbmdlZFByb3AuY3VycmVudFZhbHVlO1xuICAgICAgICBjb25zb2xlLmxvZyhgbmV3IHRvdGFsSXRlbXMgJHt0aGlzLnRvdGFsSXRlbXN9YCk7XG4gICAgICAgIGlmIChjaGFuZ2VkUHJvcC5wcmV2aW91c1ZhbHVlICE9PSBjaGFuZ2VkUHJvcC5jdXJyZW50VmFsdWUpIHtcbiAgICAgICAgICB0aGlzLmNhbGN1bGF0ZVBhZ2VMaW5rU2l6ZSgpOyAgICAgLy9yZWNhbGN1bGFtb3NcbiAgICAgICAgfVxuICAgICAgICB0aGlzLm1heEN1cnJlbnRJdGVtcyA9IHRoaXMuZmlsdGVyID8gdGhpcy5maWx0ZXIucGFnaW5hICogdGhpcy5maWx0ZXIucmVzdWx0YWRvcyA6IC0xO1xuICAgICAgfSBlbHNlIGlmIChwcm9wTmFtZSA9PT0gXCJmaWx0ZXJcIikge1xuICAgICAgICB0aGlzLmZpbHRlciA9IGNoYW5nZWRQcm9wLmN1cnJlbnRWYWx1ZTtcbiAgICAgICAgaWYgKHRoaXMuZmlsdGVyPy5wYWdpbmEgKiB0aGlzLmZpbHRlcj8ucmVzdWx0YWRvcyA+IHRoaXMubWF4Q3VycmVudEl0ZW1zKSB7XG4gICAgICAgICAgdGhpcy5tYXhDdXJyZW50SXRlbXMgPSB0aGlzLmZpbHRlcj8ucGFnaW5hICogdGhpcy5maWx0ZXI/LnJlc3VsdGFkb3M7XG4gICAgICAgIH1cbiAgICAgICAgY29uc29sZS5sb2coYG5ldyBmaWx0ZXIgJHt0aGlzLmZpbHRlcj8ucGFnaW5hfSAtICR7dGhpcy5tYXhDdXJyZW50SXRlbXN9YCk7XG4gICAgICAgIGlmIChjaGFuZ2VkUHJvcC5wcmV2aW91c1ZhbHVlICE9PSBjaGFuZ2VkUHJvcC5jdXJyZW50VmFsdWUpIHtcbiAgICAgICAgICB0aGlzLmNhbGN1bGF0ZVBhZ2VMaW5rU2l6ZSgpOyAgICAgLy9yZWNhbGN1bGFtb3NcbiAgICAgICAgICBpZiAoIXRoaXMuZmlsdGVyPy5wYWdpbmEgfHwgdGhpcy5maWx0ZXIucGFnaW5hIDw9IDEpIHtcbiAgICAgICAgICAgIHRoaXMuZ29Ub0ZpcnN0UGFnZSgpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBpZiAodGhpcy5wYyAmJiB0aGlzLmNoYW5nZVJlZikge1xuICAgICAgY29uc29sZS5sb2coJ3VwZGF0ZVBhZ2VMaW5rcycpO1xuICAgICAgdGhpcy5wYy51cGRhdGVQYWdlTGlua3MoKTtcbiAgICAgIHRoaXMuY2hhbmdlUmVmLmRldGVjdENoYW5nZXMoKTtcbiAgICB9XG4gIH1cblxuICBzaG93Rm9vdGVyKCkge1xuICAgIHJldHVybiB0aGlzLnR5cGVGb290ZXIgPT09ICdsaXN0JyAmJiB0aGlzLnN0YXR1cyA9PSBQYWdlU3RhdHVzLkZpbmlzaFNlYXJjaDtcbiAgfVxuXG4gIHNob3dTY3JvbGwoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMudHlwZUZvb3RlciA9PT0gJ3Njcm9sbCcgJiYgdGhpcy5zdGF0dXMgIT0gbnVsbDtcbiAgfVxuXG4gIC8qKiBDYWxjdWxhIGVsIG7Dum1lcm8gZGUgZW5sYWNlcyB2aXNpYmxlcyBlbiBlbCBwYWdpbmFkb3IgKGVuIGVsIHJhbmdvIGVudHJlIDEgeSBCQVNFX1JFU1VMVEFET1NfUEFHRSkuICovXG4gIGNhbGN1bGF0ZVBhZ2VMaW5rU2l6ZSgpIHtcbiAgICBjb25zb2xlLmxvZyhgY2FsY3VsYXRlUGFnZUxpbmtTaXplIHRvdGFsSXRlbXM6ICR7dGhpcy50b3RhbEl0ZW1zfSBpdGVtc1BlclBhZ2U6JHt0aGlzLml0ZW1zUGVyUGFnZX1gKTtcbiAgICB0aGlzLnBhZ2VMaW5rU2l6ZSA9IE1hdGguY2VpbCh0aGlzLnRvdGFsSXRlbXMgLyB0aGlzLml0ZW1zUGVyUGFnZSk7XG4gICAgaWYgKHRoaXMucGFnZUxpbmtTaXplIDwgMSkge1xuICAgICAgdGhpcy5wYWdlTGlua1NpemUgPSAxO1xuICAgIH1cbiAgICBpZiAodGhpcy5wYWdlTGlua1NpemUgPiBCQVNFX1JFU1VMVEFET1NfUEFHRSkge1xuICAgICAgdGhpcy5wYWdlTGlua1NpemUgPSBCQVNFX1JFU1VMVEFET1NfUEFHRTtcbiAgICB9XG4gIH1cblxuICAvKiogRXN0YWJsZWNlIGVsIG7Dum1lcm8gZGUgcMOhZ2luYSBlbiBsYSB2aXN1YWxpemFjacOzbiBkZSByZXN1bHRhZG9zLiBTZSBpbnZvY2EgY3VhbmRvIGVsIHVzdWFyaW8gY2FtYmlhIGVsIG7Dum1lcm8gZGUgcmVzdWx0YWRvcyBhIG1vc3RyYXIgbyBjYW1iaWEgZGUgcMOhZ2luYSAqL1xuICBwYWdpbmF0ZShldmVudDogYW55KTogdm9pZCB7XG4gICAgY29uc29sZS5sb2coXCJQYWdlIGNoYW5nZWQgdG9cIiwgZXZlbnQucGFnZSk7XG4gICAgaWYgKGV2ZW50LnJvd3MgIT09IHRoaXMuaXRlbXNQZXJQYWdlKSB7XG4gICAgICAvLyBoYW4gY2FtYmlhZG8gZWwgbsO6bWVybyBkZSBlbGVtZW50b3MgcG9yIHDDoWdpbmFcbiAgICAgIC8vbm90aWZpY2Ftb3MgcXVlIGxvcyBlbGVtZW50b3MgcG9yIHDDoWdpbmEgaGFuIGNhbWJpYWRvXG4gICAgICB0aGlzLm9uTmV3UGFnZVNpemUuZW1pdChldmVudC5yb3dzKTtcbiAgICAgIHRoaXMuaXRlbXNQZXJQYWdlID0gZXZlbnQucm93cztcbiAgICAgIHRoaXMuZ29Ub0ZpcnN0UGFnZSgpO1xuICAgICAgdGhpcy5jYWxjdWxhdGVQYWdlTGlua1NpemUoKTsgLy8gcmVjYWxjdWxhbW9zIGVsIG7Dum1lcm8gZGUgZW5sYWNlcyBkZSBww6FnaW5hXG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIG5vdGlmaWNhbW9zIGEgbnVlc3RybyBwYXDDoSBxdWUgbGEgcMOhZ2luYSBoYSBjYW1iaWFkb1xuICAgICAgdGhpcy5vblBhZ2VDaGFuZ2UuZW1pdChldmVudC5wYWdlICsgMSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBnb1RvRmlyc3RQYWdlKCkge1xuICAgIGlmICh0aGlzLnBjKSB7XG4gICAgICAvL3ZvbHZlbW9zIGEgbGEgcHJpbWVyYSBww6FnaW5hXG4gICAgICB0aGlzLnBjLl9maXJzdCA9IDE7XG4gICAgICB0aGlzLnBjLnVwZGF0ZVBhZ2VMaW5rcygpO1xuICAgIH1cbiAgfVxuXG4gIGdldFN0eWxlKCkge1xuICAgIGlmICh0aGlzLmZpeGVkICYmIHRoaXMudHlwZUZvb3RlciA9PT0gQml0Rm9vdGVyQ29tcG9uZW50LlRZUEVfTElTVCB8fCB0aGlzLnR5cGVGb290ZXIgPT09IEJpdEZvb3RlckNvbXBvbmVudC5UWVBFX1NDUk9MTCkge1xuICAgICAgaWYgKHRoaXMudG90YWxJdGVtcyA+IDApIHtcbiAgICAgICAgcmV0dXJuIFwiZm9vdGVyIG5hdmJhci1maXhlZC1ib3R0b21cIjtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiBcImZvb3RlciBuYXZiYXItZml4ZWQtYm90dG9tLTYwXCI7XG4gICAgICB9XG4gICAgfSBlbHNlIGlmICh0aGlzLmZpeGVkICYmIHRoaXMudHlwZUZvb3RlciA9PT0gQml0Rm9vdGVyQ29tcG9uZW50LlRZUEVfRk9STSkge1xuICAgICAgcmV0dXJuIFwiZm9vdGVyIG5hdmJhci1maXhlZC1ib3R0b20tZm9ybVwiO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gXCJmb290ZXJcIjtcbiAgICB9XG4gIH1cblxuICBpc0Zvb3Rlckxpc3QoKSB7XG4gICAgcmV0dXJuIHRoaXMudHlwZUZvb3RlciA9PT0gQml0Rm9vdGVyQ29tcG9uZW50LlRZUEVfTElTVDtcbiAgfVxuXG4gIGlzRm9vdGVyU2Nyb2xsKCkge1xuICAgIHJldHVybiB0aGlzLnR5cGVGb290ZXIgPT09IEJpdEZvb3RlckNvbXBvbmVudC5UWVBFX1NDUk9MTDtcbiAgfVxuXG4gIGlzRm9vdGVyRm9ybSgpIHtcbiAgICByZXR1cm4gdGhpcy50eXBlRm9vdGVyID09PSBCaXRGb290ZXJDb21wb25lbnQuVFlQRV9GT1JNO1xuICB9XG5cbiAgLyoqIEZsYWc6IGxhIHDDoWdpbmEgZXN0w6EgcmVhbGl6YW5kbyBsYSBiw7pzcXVlZGEuICovXG4gIGdldCBzZWFyY2hJbml0aWF0ZWQoKSB7XG4gICAgcmV0dXJuIHRoaXMuc3RhdHVzID09PSBQYWdlU3RhdHVzLkluaXQgfHwgdGhpcy5zdGF0dXMgPT0gUGFnZVN0YXR1cy5SZXNldCB8fCAhdGhpcy5zdGF0dXM7XG4gIH1cblxuICAvKiogRmxhZzogbGEgcMOhZ2luYSBlc3TDoSByZWFsaXphbmRvIGxhIGLDunNxdWVkYS4gKi9cbiAgZ2V0IHNlYXJjaGluZygpIHtcbiAgICByZXR1cm4gdGhpcy5zdGF0dXMgPT09IFBhZ2VTdGF0dXMuU2VhcmNoaW5nO1xuICB9XG5cbiAgLyoqIEZsYWc6IGxhIHDDoWdpbmEgaGEgZmluYWxpemFkbyBsYSDDumx0aW1hIGLDunNxdWVkYS4gKi9cbiAgZ2V0IHNlYXJjaEZpbmlzaGVkKCkge1xuICAgIHJldHVybiB0aGlzLnN0YXR1cyA9PT0gUGFnZVN0YXR1cy5GaW5pc2hTZWFyY2g7XG4gIH1cblxuICAvKiogRmxhZzogbGEgcMOhZ2luYSBlc3TDoSBlbiBtb2RvIHNvbG8gbGVjdHVyYSAqL1xuICBnZXQgcmVhZE9ubHkoKSB7XG4gICAgcmV0dXJuIHRoaXMuc3RhdHVzID09IFBhZ2VTdGF0dXMuUmVhZE9ubHk7XG4gIH1cblxuICAvKiogRmxhZzogbGEgcMOhZ2luYSBoYSBmaW5hbGl6YWRvIGNvbiBlcnJvciAqL1xuICBnZXQgZXJyb3IoKSB7XG4gICAgcmV0dXJuIHRoaXMuc3RhdHVzID09IFBhZ2VTdGF0dXMuRXJyb3I7XG4gIH1cblxuICAvKiogRmxhZzogZW5jb250cmFkbyByZXN1bHRhZG8uICovXG4gIGdldCBmb3VuZFJlc3VsdCgpIHtcbiAgICByZXR1cm4gKFxuICAgICAgdGhpcy5zdGF0dXMgPT09IFBhZ2VTdGF0dXMuRmluaXNoU2VhcmNoICYmXG4gICAgICAoKHRoaXMudHlwZUZvb3RlciA9PT0gQml0Rm9vdGVyQ29tcG9uZW50LlRZUEVfTElTVCAmJiB0aGlzLnRvdGFsSXRlbXMgPiAwKVxuICAgICAgICB8fCB0aGlzLnR5cGVGb290ZXIgPT09IEJpdEZvb3RlckNvbXBvbmVudC5UWVBFX0ZPUk1cbiAgICAgICAgfHwgKHRoaXMudHlwZUZvb3RlciA9PT0gQml0Rm9vdGVyQ29tcG9uZW50LlRZUEVfU0NST0xMICYmIHRoaXMudG90YWxJdGVtcyA8PSB0aGlzLm1heEN1cnJlbnRJdGVtcykpXG4gICAgKTtcbiAgfVxuXG4gIC8qKiBGbGFnOiBoYXkgbcOhcyByZXN1bHRhZG9zIChzY3JvbGwpLiAqL1xuICBnZXQgbW9yZVJlc3VsdHMoKSB7XG4gICAgcmV0dXJuIChcbiAgICAgIHRoaXMuc3RhdHVzID09PSBQYWdlU3RhdHVzLkZpbmlzaFNlYXJjaCAmJlxuICAgICAgKHRoaXMudHlwZUZvb3RlciA9PT0gQml0Rm9vdGVyQ29tcG9uZW50LlRZUEVfU0NST0xMICYmIHRoaXMudG90YWxJdGVtcyA+IHRoaXMubWF4Q3VycmVudEl0ZW1zKVxuICAgICk7XG4gIH1cblxuICAvKiogRmxhZzogbm8gaGF5IHJlc3VsdGFkb3MuICovXG4gIGdldCBlbXB0eVJlc3VsdCgpIHtcbiAgICByZXR1cm4gdGhpcy5zdGF0dXMgPT09IFBhZ2VTdGF0dXMuRmluaXNoU2VhcmNoICYmIHRoaXMudG90YWxJdGVtcyA9PT0gMDtcbiAgfVxuXG4gIGdldCBpbml0TWVzc2FnZSgpOiBPYnNlcnZhYmxlPHN0cmluZz4ge1xuICAgIHJldHVybiB0aGlzLnRyYW5zbGF0ZVNlcnZpY2Uuc2VsZWN0VHJhbnNsYXRlKHRoaXMubWVzc2FnZXMuZ2V0KFBhZ2VTdGF0dXMuSW5pdCkpO1xuICB9XG5cbiAgZ2V0IHNlYXJjaGluZ01lc3NhZ2UoKTogT2JzZXJ2YWJsZTxzdHJpbmc+IHtcbiAgICByZXR1cm4gdGhpcy50cmFuc2xhdGVTZXJ2aWNlLnNlbGVjdFRyYW5zbGF0ZSh0aGlzLm1lc3NhZ2VzLmdldChQYWdlU3RhdHVzLlNlYXJjaGluZykpO1xuICB9XG5cbiAgZ2V0IGZpbmlzaE1lc3NhZ2UoKTogT2JzZXJ2YWJsZTxzdHJpbmc+IHtcbiAgICByZXR1cm4gdGhpcy50cmFuc2xhdGVTZXJ2aWNlLnNlbGVjdFRyYW5zbGF0ZSh0aGlzLm1lc3NhZ2VzLmdldChQYWdlU3RhdHVzLkZpbmlzaFNlYXJjaCkpO1xuICB9XG5cbiAgZ2V0IG1vcmVSZXN1bHRzTWVzc2FnZSgpOiBPYnNlcnZhYmxlPHN0cmluZz4ge1xuICAgIHJldHVybiB0aGlzLnRyYW5zbGF0ZVNlcnZpY2Uuc2VsZWN0VHJhbnNsYXRlKHRoaXMubWVzc2FnZXMuZ2V0KEJpdEZvb3RlckNvbXBvbmVudC5NT1JFX1JFU1VMVFMpKTtcbiAgfVxuXG4gIGdldCBlbXB0eU1lc3NhZ2UoKTogT2JzZXJ2YWJsZTxzdHJpbmc+IHtcbiAgICByZXR1cm4gdGhpcy50cmFuc2xhdGVTZXJ2aWNlLnNlbGVjdFRyYW5zbGF0ZSh0aGlzLm1lc3NhZ2VzLmdldChQYWdlU3RhdHVzLkVtcHR5UmVzdWx0KSk7XG4gIH1cblxuICBnZXQgcmVhZE9ubHlNZXNzYWdlKCk6IE9ic2VydmFibGU8c3RyaW5nPiB7XG4gICAgcmV0dXJuIHRoaXMudHJhbnNsYXRlU2VydmljZS5zZWxlY3RUcmFuc2xhdGUodGhpcy5tZXNzYWdlcy5nZXQoUGFnZVN0YXR1cy5SZWFkT25seSkpO1xuICB9XG5cbiAgZ2V0IGVycm9yTWVzc2FnZSgpOiBPYnNlcnZhYmxlPHN0cmluZz4ge1xuICAgIHJldHVybiB0aGlzLnRyYW5zbGF0ZVNlcnZpY2Uuc2VsZWN0VHJhbnNsYXRlKHRoaXMubWVzc2FnZXMuZ2V0KFBhZ2VTdGF0dXMuRXJyb3IpKTtcbiAgfVxufVxuIiwiPGZvb3RlciBbY2xhc3NdPVwiZ2V0U3R5bGUoKVwiPlxuICA8ZGl2IGNsYXNzPVwiZ3JpZFwiPlxuICAgIDxkaXYgY2xhc3M9XCJjb2wtMTIgbWQ6Y29sLTIgbGc6Y29sLTJcIiAqbmdJZj1cInNob3dGb290ZXIoKVwiPlxuICAgICAgPGRpdiBjbGFzcz1cIm51bWVyby1yZXN1bHRhZG9zXCI+XG4gICAgICAgIDxsYWJlbD57e1wiYml0bmdsaWJyYXJ5LmZvb3Rlci5yZXN1bHRzXCIgfCB0cmFuc2xvY299fTwvbGFiZWw+XG4gICAgICAgIDxzcGFuPnt7dG90YWxJdGVtc319PC9zcGFuPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImNvbC0xMiBtZDpjb2wtMiBsZzpjb2wtMlwiICpuZ0lmPVwic2hvd1Njcm9sbCgpXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwibnVtZXJvLXJlc3VsdGFkb3Mtc2Nyb2xsXCI+XG4gICAgICAgIDxsYWJlbD57e1wiYml0bmdsaWJyYXJ5LmZvb3Rlci5yZXN1bHRzXCIgfCB0cmFuc2xvY299fTwvbGFiZWw+XG4gICAgICAgIDxzcGFuICpuZ0lmPVwibWF4Q3VycmVudEl0ZW1zID49IHRvdGFsSXRlbXNcIj57e3RvdGFsSXRlbXN9fTwvc3Bhbj5cbiAgICAgICAgPHNwYW4gKm5nSWY9XCJtYXhDdXJyZW50SXRlbXMgPCB0b3RhbEl0ZW1zXCI+e3ttYXhDdXJyZW50SXRlbXN9fSAvIHt7dG90YWxJdGVtc319PC9zcGFuPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG5cbiAgICA8ZGl2IGNsYXNzPVwiY29sLTEyIG1kOmNvbC03IGxnOmNvbC03IHAtdGV4dC1jZW50ZXJcIiAqbmdJZj1cInNob3dTY3JvbGwoKVwiPlxuICAgICAgPHAtcGFnaW5hdG9yICpuZ0lmPVwicGFnaW5hdG9yXCIgI3BjXG4gICAgICAgICAgICAgICAgICAgW3Jvd3NdPVwiaXRlbXNQZXJQYWdlXCJcbiAgICAgICAgICAgICAgICAgICBbdG90YWxSZWNvcmRzXT1cInRvdGFsSXRlbXNcIlxuICAgICAgICAgICAgICAgICAgIFtwYWdlTGlua1NpemVdPVwibW9zdHJhckVubGFjZXNQYWdpbmFzID8gcGFnZUxpbmtTaXplIDogMVwiXG4gICAgICAgICAgICAgICAgICAgW3Jvd3NQZXJQYWdlT3B0aW9uc109XCJbYmFzZUl0ZW1zUGVyUGFnZSxiYXNlSXRlbXNQZXJQYWdlKjUsYmFzZUl0ZW1zUGVyUGFnZSoyNSxiYXNlSXRlbXNQZXJQYWdlKjUwXVwiXG4gICAgICAgICAgICAgICAgICAgW3Nob3dQYWdlTGlua3NdPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgICAgW3Nob3dKdW1wVG9QYWdlRHJvcGRvd25dPVwiZmFsc2VcIlxuICAgICAgICAgICAgICAgICAgIFtzaG93Rmlyc3RMYXN0SWNvbl09XCJtb3N0cmFyUHJpbWVyYVVsdGltYVBhZ2luYSA/IHRydWUgOiBtYXhDdXJyZW50SXRlbXMgPj0gdG90YWxJdGVtc1wiXG4gICAgICAgICAgICAgICAgICAgKG9uUGFnZUNoYW5nZSk9XCJwYWdpbmF0ZSgkZXZlbnQpXCI+PC9wLXBhZ2luYXRvcj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiY29sLTEyIG1kOmNvbC0zIGxnOmNvbC0zXCI+XG4gICAgICA8ZGl2ICpuZ0lmPVwic2VhcmNoSW5pdGlhdGVkXCJcbiAgICAgICAgICAgW2NsYXNzTmFtZV09XCJ0eXBlRm9vdGVyID09PSAnc2Nyb2xsJyA/ICdtZW5zYWplLXNjcm9sbCBtZW5zYWplLWluZm8nIDogJ21lbnNhamUgbWVuc2FqZS1pbmZvJ1wiPlxuICAgICAgICA8aSBjbGFzcz1cImZhIGZhLWluZm9cIj48L2k+XG4gICAgICAgIDxzcGFuPnt7aW5pdE1lc3NhZ2UgfCBhc3luY319PC9zcGFuPlxuICAgICAgPC9kaXY+XG5cbiAgICAgIDxkaXYgKm5nSWY9XCJzZWFyY2hpbmdcIlxuICAgICAgICAgICBbY2xhc3NOYW1lXT1cInR5cGVGb290ZXIgPT09ICdzY3JvbGwnID8gJ21lbnNhamUtc2Nyb2xsIG1lbnNhamUtaW5mbycgOiAnbWVuc2FqZSBtZW5zYWplLWluZm8nXCI+XG4gICAgICAgIDxpIGNsYXNzPVwiZmEgZmEtaW5mb1wiPjwvaT5cbiAgICAgICAgPHNwYW4+e3tzZWFyY2hpbmdNZXNzYWdlIHwgYXN5bmN9fTwvc3Bhbj5cbiAgICAgIDwvZGl2PlxuXG4gICAgICA8ZGl2ICpuZ0lmPVwicmVhZE9ubHlcIlxuICAgICAgICAgICBbY2xhc3NOYW1lXT1cInR5cGVGb290ZXIgPT09ICdzY3JvbGwnID8gJ21lbnNhamUtc2Nyb2xsIG1lbnNhamUtaW5mbycgOiAnbWVuc2FqZSBtZW5zYWplLWluZm8nXCI+XG4gICAgICAgIDxpIGNsYXNzPVwiZmEgZmEtaW5mb1wiPjwvaT5cbiAgICAgICAgPHNwYW4+e3tyZWFkT25seU1lc3NhZ2UgfCBhc3luY319PC9zcGFuPlxuICAgICAgPC9kaXY+XG5cbiAgICAgIDxkaXYgKm5nSWY9XCJmb3VuZFJlc3VsdFwiXG4gICAgICAgICAgIFtjbGFzc05hbWVdPVwidHlwZUZvb3RlciA9PT0gJ3Njcm9sbCcgPyAnbWVuc2FqZS1zY3JvbGwgbWVuc2FqZS1pbmZvJyA6ICdtZW5zYWplIG1lbnNhamUtaW5mbydcIj5cbiAgICAgICAgPGkgY2xhc3M9XCJmYSBmYS1pbmZvXCI+PC9pPlxuICAgICAgICA8c3Bhbj57e2ZpbmlzaE1lc3NhZ2UgfCBhc3luY319PC9zcGFuPlxuICAgICAgPC9kaXY+XG5cbiAgICAgIDxkaXYgKm5nSWY9XCJtb3JlUmVzdWx0c1wiXG4gICAgICAgICAgIFtjbGFzc05hbWVdPVwidHlwZUZvb3RlciA9PT0gJ3Njcm9sbCcgPyAnbWVuc2FqZS1zY3JvbGwgbWVuc2FqZS1pbmZvJyA6ICdtZW5zYWplIG1lbnNhamUtaW5mbydcIj5cbiAgICAgICAgPGkgY2xhc3M9XCJmYSBmYS1pbmZvXCI+PC9pPlxuICAgICAgICA8c3Bhbj57e21vcmVSZXN1bHRzTWVzc2FnZSB8IGFzeW5jfX08L3NwYW4+XG4gICAgICA8L2Rpdj5cblxuICAgICAgPGRpdiAqbmdJZj1cImVtcHR5UmVzdWx0XCJcbiAgICAgICAgICAgW2NsYXNzTmFtZV09XCJ0eXBlRm9vdGVyID09PSAnc2Nyb2xsJyA/ICdtZW5zYWplLXNjcm9sbCBtZW5zYWplLWluZm8nIDogJ21lbnNhamUgbWVuc2FqZS1pbmZvJ1wiPlxuICAgICAgICA8aSBjbGFzcz1cImZhIGZhLWV4Y2xhbWF0aW9uXCI+PC9pPlxuICAgICAgICA8c3Bhbj57e2VtcHR5TWVzc2FnZSB8IGFzeW5jfX08L3NwYW4+XG4gICAgICA8L2Rpdj5cblxuICAgICAgPGRpdiAqbmdJZj1cImVycm9yXCJcbiAgICAgICAgICAgW2NsYXNzTmFtZV09XCJ0eXBlRm9vdGVyID09PSAnc2Nyb2xsJyA/ICdtZW5zYWplLXNjcm9sbCBtZW5zYWplLWluZm8nIDogJ21lbnNhamUgbWVuc2FqZS1pbmZvJ1wiPlxuICAgICAgICA8aSBjbGFzcz1cImZhIGZhLWV4Y2xhbWF0aW9uLXRyaWFuZ2xlXCI+PC9pPlxuICAgICAgICA8c3Bhbj57e2Vycm9yTWVzc2FnZSB8IGFzeW5jfX08L3NwYW4+XG4gICAgICA8L2Rpdj5cblxuICAgICAgPGJpdC1oZWxwPjwvYml0LWhlbHA+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9mb290ZXI+XG4iXX0=
|
|
263
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYml0LWZvb3Rlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iaXQtbmctbGlicmFyeS9zcmMvbGliL3NoYXJlZGxpYnJhcnkvY29tcG9uZW50cy9mb290ZXIvYml0LWZvb3Rlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iaXQtbmctbGlicmFyeS9zcmMvbGliL3NoYXJlZGxpYnJhcnkvY29tcG9uZW50cy9mb290ZXIvYml0LWZvb3Rlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUdMLE1BQU0sR0FFUCxNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsVUFBVSxFQUFFLG9CQUFvQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDcEYsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHdCQUF3QixDQUFDOzs7Ozs7O0FBR3BEOztJQUVJO0FBTUosTUFBTSxPQUFPLGtCQUFrQjtJQTJDN0IsWUFBb0IsZ0JBQWtDO1FBQWxDLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUE1QnRELGtCQUFhLEdBQVksSUFBSSxDQUFDO1FBRTlCLFVBQUssR0FBWSxJQUFJLENBQUMsQ0FBQyxtRUFBbUU7UUFJMUYsV0FBTSxHQUFlLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQywwR0FBMEc7UUFJaEosMEJBQXFCLEdBQVksSUFBSSxDQUFDO1FBRXRDLCtCQUEwQixHQUFZLElBQUksQ0FBQztRQUUzQyxZQUFPLEdBQVksSUFBSSxDQUFDO1FBRXhCLHNCQUFpQixHQUFXLENBQUMsQ0FBQyxDQUFDLHNHQUFzRztRQUVySSxpQkFBWSxHQUFHLElBQUksWUFBWSxFQUFVLENBQUMsQ0FBQywrQ0FBK0M7UUFFMUYsa0JBQWEsR0FBRyxJQUFJLFlBQVksRUFBVSxDQUFDLENBQUMsOERBQThEO1FBRTFHLHFCQUFnQixHQUFXLFVBQVUsQ0FBQyxlQUFlLENBQUMsQ0FBQyx3R0FBd0c7UUFDL0osaUJBQVksR0FBVyxVQUFVLENBQUMsZUFBZSxDQUFDLENBQUMsK0NBQStDO1FBR2xHLG9CQUFlLEdBQVcsQ0FBQyxDQUFDLENBQUM7SUFHN0IsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLElBQUksQ0FBQyxVQUFVLElBQUksU0FBUyxFQUFFO1lBQ2hDLElBQUksQ0FBQyxVQUFVLEdBQUcsTUFBTSxDQUFDO1NBQzFCO1FBQ0QsSUFBSSxJQUFJLENBQUMsU0FBUyxJQUFJLFNBQVMsRUFBRTtZQUMvQixJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQztTQUN4QjtRQUNELDZDQUE2QztRQUM3QyxJQUFJLElBQUksQ0FBQyxRQUFRLElBQUksU0FBUyxFQUFFO1lBQzlCLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUNuQixJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsS0FBSyxFQUFFLDJCQUEyQixDQUFDLENBQUM7U0FDbEU7SUFDSCxDQUFDO0lBRU8sV0FBVztRQUNqQixPQUFPLENBQUMsR0FBRyxDQUFDLHNEQUFzRCxDQUFDLENBQUM7UUFDcEUsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLEdBQUcsRUFBc0IsQ0FBQztRQUM5QyxJQUFJLElBQUksQ0FBQyxZQUFZLEVBQUUsSUFBSSxJQUFJLENBQUMsY0FBYyxFQUFFLEVBQUU7WUFDaEQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRSwrQkFBK0IsQ0FBQyxDQUFDO1lBQ3BFLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxTQUFTLEVBQUUsb0NBQW9DLENBQUMsQ0FBQztZQUM5RSxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsV0FBVyxFQUFFLHNDQUFzQyxDQUFDLENBQUM7WUFDbEYsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLFlBQVksRUFBRSx1Q0FBdUMsQ0FBQyxDQUFDO1lBQ3BGLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLGtCQUFrQixDQUFDLFlBQVksRUFBRSxzQ0FBc0MsQ0FBQyxDQUFBO1NBQzNGO2FBQU0sSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFLEVBQUU7WUFDOUIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRSwrQkFBK0IsQ0FBQyxDQUFDO1lBQ3BFLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxTQUFTLEVBQUUsb0NBQW9DLENBQUMsQ0FBQztZQUM5RSxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsWUFBWSxFQUFFLHVDQUF1QyxDQUFDLENBQUM7WUFDcEYsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLFFBQVEsRUFBRSxtQ0FBbUMsQ0FBQyxDQUFDO1NBQzdFO2FBQU0sSUFBSSxJQUFJLENBQUMsVUFBVSxLQUFLLGtCQUFrQixDQUFDLFVBQVUsRUFBRTtZQUM1RCxPQUFPLENBQUMsR0FBRyxDQUFDLHNCQUFzQixDQUFDLENBQUM7U0FDckM7SUFDSCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxXQUFXLENBQUMsT0FBNEM7UUFDdEQsS0FBSyxJQUFJLFFBQVEsSUFBSSxPQUFPLEVBQUU7WUFDNUIsSUFBSSxXQUFXLEdBQUcsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQ3BDLElBQUksUUFBUSxLQUFLLFFBQVEsRUFBRTtnQkFDekIsSUFBSSxDQUFDLE1BQU0sR0FBRyxXQUFXLENBQUMsWUFBWSxDQUFDO2dCQUN2QyxPQUFPLENBQUMsR0FBRyxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7YUFDdEM7aUJBQU0sSUFBSSxRQUFRLEtBQUssWUFBWSxFQUFFO2dCQUNwQyxJQUFJLENBQUMsVUFBVSxHQUFHLFdBQVcsQ0FBQyxZQUFZLENBQUM7Z0JBQzNDLE9BQU8sQ0FBQyxHQUFHLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztnQkFDN0MsSUFBSSxXQUFXLENBQUMsYUFBYSxLQUFLLFdBQVcsQ0FBQyxZQUFZLEVBQUU7b0JBQzFELElBQUksQ0FBQyxxQkFBcUIsRUFBRSxDQUFDLENBQUssY0FBYztpQkFDakQ7Z0JBQ0QsSUFBSSxDQUFDLHdCQUF3QixFQUFFLENBQUM7YUFDakM7aUJBQU0sSUFBSSxRQUFRLEtBQUssUUFBUSxFQUFFO2dCQUNoQyxJQUFJLENBQUMsTUFBTSxHQUFHLFdBQVcsQ0FBQyxZQUFZLENBQUM7Z0JBQ3ZDLElBQUksQ0FBQyx3QkFBd0IsRUFBRSxDQUFDO2dCQUNoQyxJQUFJLFdBQVcsQ0FBQyxhQUFhLEtBQUssV0FBVyxDQUFDLFlBQVksRUFBRTtvQkFDMUQsSUFBSSxDQUFDLHFCQUFxQixFQUFFLENBQUMsQ0FBSyxjQUFjO29CQUNoRCxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxNQUFNLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLElBQUksQ0FBQyxFQUFFO3dCQUNuRCxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7d0JBQ3JCLE9BQU8sQ0FBQyxHQUFHLENBQUMsZUFBZSxDQUFDLENBQUM7cUJBQzlCO2lCQUNGO2dCQUNELElBQUksQ0FBQyxLQUFLLEdBQUcsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQztnQkFDL0QsT0FBTyxDQUFDLEdBQUcsQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO2FBQ3BDO1NBQ0Y7SUFDSCxDQUFDO0lBRUQsVUFBVTtRQUNSLCtFQUErRTtRQUMvRSwySEFBMkg7UUFDM0gsT0FBTyxJQUFJLENBQUMsVUFBVSxLQUFLLE1BQU0sSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDO0lBQ3BELENBQUM7SUFFRCxVQUFVO1FBQ1IsT0FBTyxJQUFJLENBQUMsVUFBVSxLQUFLLFFBQVEsSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDO0lBQ3RELENBQUM7SUFFRCwwR0FBMEc7SUFDMUcscUJBQXFCO1FBQ25CLElBQUksSUFBSSxDQUFDLGlCQUFpQixJQUFJLENBQUMsRUFBRTtZQUMvQixPQUFPLENBQUMsR0FBRyxDQUFDLHFDQUFxQyxJQUFJLENBQUMsVUFBVSxpQkFBaUIsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDLENBQUM7WUFDdEcsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO1lBQ25FLElBQUksSUFBSSxDQUFDLFlBQVksR0FBRyxDQUFDLEVBQUU7Z0JBQ3pCLElBQUksQ0FBQyxZQUFZLEdBQUcsQ0FBQyxDQUFDO2FBQ3ZCO1lBQ0QsSUFBSSxJQUFJLENBQUMsWUFBWSxHQUFHLG9CQUFvQixFQUFFO2dCQUM1QyxJQUFJLENBQUMsWUFBWSxHQUFHLG9CQUFvQixDQUFDO2FBQzFDO1NBQ0Y7YUFBTTtZQUNMLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDO1NBQzVDO1FBQ0QsT0FBTyxDQUFDLEdBQUcsQ0FBQyxjQUFjLEVBQUUsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQ2pELENBQUM7SUFFRCx3QkFBd0I7UUFDdEIsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUMsTUFBTSxFQUFFLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxFQUFFLFVBQVUsQ0FBQztRQUNyRSxJQUFJLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDLFVBQVUsRUFBRTtZQUMxQyxJQUFJLENBQUMsZUFBZSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUM7U0FDeEM7SUFDSCxDQUFDO0lBRUQsK0pBQStKO0lBQy9KLFFBQVEsQ0FBQyxLQUFVO1FBQ2pCLE9BQU8sQ0FBQyxHQUFHLENBQUMsa0JBQWtCLEdBQUcsS0FBSyxDQUFDLElBQUksR0FBRyxtQkFBbUIsR0FBRyxJQUFJLENBQUMsZUFBZSxHQUFHLGdCQUFnQixHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMxSCxJQUFJLEtBQUssQ0FBQyxJQUFJLEtBQUssSUFBSSxDQUFDLFlBQVksRUFBRTtZQUNwQyxpREFBaUQ7WUFDakQsdURBQXVEO1lBQ3ZELElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUNwQyxJQUFJLENBQUMsWUFBWSxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUM7WUFDL0IsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1lBQ3JCLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxDQUFDLENBQUMsOENBQThDO1NBQzdFO2FBQU07WUFDTCx1REFBdUQ7WUFDdkQsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksR0FBRyxDQUFDLENBQUMsQ0FBQztTQUN4QztJQUNILENBQUM7SUFFTyxhQUFhO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDO0lBQ2pCLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxJQUFJLENBQUMsS0FBSyxJQUFJLElBQUksQ0FBQyxVQUFVLEtBQUssa0JBQWtCLENBQUMsU0FBUyxJQUFJLElBQUksQ0FBQyxVQUFVLEtBQUssa0JBQWtCLENBQUMsV0FBVyxFQUFFO1lBQ3hILE9BQU8sNEJBQTRCLENBQUM7U0FDckM7YUFBTSxJQUFJLElBQUksQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLFVBQVUsS0FBSyxrQkFBa0IsQ0FBQyxTQUFTLEVBQUU7WUFDekUsT0FBTyxpQ0FBaUMsQ0FBQztTQUMxQzthQUFNO1lBQ0wsT0FBTyxRQUFRLENBQUM7U0FDakI7SUFDSCxDQUFDO0lBRUQsWUFBWTtRQUNWLE9BQU8sSUFBSSxDQUFDLFVBQVUsS0FBSyxrQkFBa0IsQ0FBQyxTQUFTLENBQUM7SUFDMUQsQ0FBQztJQUVELGNBQWM7UUFDWixPQUFPLElBQUksQ0FBQyxVQUFVLEtBQUssa0JBQWtCLENBQUMsV0FBVyxDQUFDO0lBQzVELENBQUM7SUFFRCxZQUFZO1FBQ1YsT0FBTyxJQUFJLENBQUMsVUFBVSxLQUFLLGtCQUFrQixDQUFDLFNBQVMsQ0FBQztJQUMxRCxDQUFDO0lBRUQsbURBQW1EO0lBQ25ELElBQUksZUFBZTtRQUNqQixPQUFPLElBQUksQ0FBQyxNQUFNLEtBQUssVUFBVSxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsTUFBTSxJQUFJLFVBQVUsQ0FBQyxLQUFLLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQzVGLENBQUM7SUFFRCxtREFBbUQ7SUFDbkQsSUFBSSxTQUFTO1FBQ1gsT0FBTyxJQUFJLENBQUMsTUFBTSxLQUFLLFVBQVUsQ0FBQyxTQUFTLENBQUM7SUFDOUMsQ0FBQztJQUVELHdEQUF3RDtJQUN4RCxJQUFJLGNBQWM7UUFDaEIsT0FBTyxJQUFJLENBQUMsTUFBTSxLQUFLLFVBQVUsQ0FBQyxZQUFZLENBQUM7SUFDakQsQ0FBQztJQUVELGdEQUFnRDtJQUNoRCxJQUFJLFFBQVE7UUFDVixPQUFPLElBQUksQ0FBQyxNQUFNLElBQUksVUFBVSxDQUFDLFFBQVEsQ0FBQztJQUM1QyxDQUFDO0lBRUQsOENBQThDO0lBQzlDLElBQUksS0FBSztRQUNQLE9BQU8sSUFBSSxDQUFDLE1BQU0sSUFBSSxVQUFVLENBQUMsS0FBSyxDQUFDO0lBQ3pDLENBQUM7SUFFRCxrQ0FBa0M7SUFDbEMsSUFBSSxXQUFXO1FBQ2IsT0FBTyxDQUNMLElBQUksQ0FBQyxNQUFNLEtBQUssVUFBVSxDQUFDLFlBQVk7WUFDdkMsQ0FBQyxDQUFDLElBQUksQ0FBQyxVQUFVLEtBQUssa0JBQWtCLENBQUMsU0FBUyxJQUFJLElBQUksQ0FBQyxVQUFVLEdBQUcsQ0FBQyxDQUFDO21CQUNyRSxJQUFJLENBQUMsVUFBVSxLQUFLLGtCQUFrQixDQUFDLFNBQVM7bUJBQ2hELENBQUMsSUFBSSxDQUFDLFVBQVUsS0FBSyxrQkFBa0IsQ0FBQyxXQUFXLElBQUksSUFBSSxDQUFDLFVBQVUsSUFBSSxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FDdEcsQ0FBQztJQUNKLENBQUM7SUFFRCx5Q0FBeUM7SUFDekMsSUFBSSxXQUFXO1FBQ2IsT0FBTyxDQUNMLElBQUksQ0FBQyxNQUFNLEtBQUssVUFBVSxDQUFDLFlBQVk7WUFDdkMsQ0FBQyxJQUFJLENBQUMsVUFBVSxLQUFLLGtCQUFrQixDQUFDLFdBQVcsSUFBSSxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FDL0YsQ0FBQztJQUNKLENBQUM7SUFFRCwrQkFBK0I7SUFDL0IsSUFBSSxXQUFXO1FBQ2IsT0FBTyxJQUFJLENBQUMsTUFBTSxLQUFLLFVBQVUsQ0FBQyxZQUFZLElBQUksSUFBSSxDQUFDLFVBQVUsS0FBSyxDQUFDLENBQUM7SUFDMUUsQ0FBQztJQUVELElBQUksV0FBVztRQUNiLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUNuRixDQUFDO0lBRUQsSUFBSSxnQkFBZ0I7UUFDbEIsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDO0lBQ3hGLENBQUM7SUFFRCxJQUFJLGFBQWE7UUFDZixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUM7SUFDM0YsQ0FBQztJQUVELElBQUksa0JBQWtCO1FBQ3BCLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxrQkFBa0IsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDO0lBQ25HLENBQUM7SUFFRCxJQUFJLFlBQVk7UUFDZCxPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUM7SUFDMUYsQ0FBQztJQUVELElBQUksZUFBZTtRQUNqQixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7SUFDdkYsQ0FBQztJQUVELElBQUksWUFBWTtRQUNkLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUNwRixDQUFDOztBQXBRYSw0QkFBUyxHQUFXLE1BQU0sQ0FBQztBQUMzQiw4QkFBVyxHQUFXLFFBQVEsQ0FBQztBQUMvQiw0QkFBUyxHQUFXLE1BQU0sQ0FBQztBQUMzQiw2QkFBVSxHQUFXLE9BQU8sQ0FBQztBQUU3QiwrQkFBWSxHQUFHLENBQUMsQ0FBQyxDQUFDOytHQU5yQixrQkFBa0I7bUdBQWxCLGtCQUFrQixvZ0JDdkIvQix5ckdBMkVBOzJGRHBEYSxrQkFBa0I7a0JBTDlCLFNBQVM7K0JBQ0UsWUFBWSxtQkFDTCx1QkFBdUIsQ0FBQyxNQUFNO3VHQVkvQyxVQUFVO3NCQURULEtBQUs7Z0JBR04sTUFBTTtzQkFETCxLQUFLO2dCQUdOLFNBQVM7c0JBRFIsS0FBSztnQkFHTixhQUFhO3NCQURaLEtBQUs7Z0JBR04sS0FBSztzQkFESixLQUFLO2dCQUdOLFFBQVE7c0JBRFAsS0FBSztnQkFHTixNQUFNO3NCQURMLEtBQUs7Z0JBR04sVUFBVTtzQkFEVCxLQUFLO3VCQUFDLE1BQU07Z0JBR2IscUJBQXFCO3NCQURwQixLQUFLO2dCQUdOLDBCQUEwQjtzQkFEekIsS0FBSztnQkFHTixPQUFPO3NCQUROLEtBQUs7Z0JBR04saUJBQWlCO3NCQURoQixLQUFLO2dCQUdOLFlBQVk7c0JBRFgsTUFBTTtnQkFHUCxhQUFhO3NCQURaLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPbkNoYW5nZXMsXG4gIE9uSW5pdCxcbiAgT3V0cHV0LFxuICBTaW1wbGVDaGFuZ2UsXG59IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQge09ic2VydmFibGV9IGZyb20gXCJyeGpzXCI7XG5pbXBvcnQgeyBCYXNlRmlsdGVyLCBCQVNFX1JFU1VMVEFET1NfUEFHRSB9IGZyb20gXCIuLi8uLi8uLi9iYXNlL3NoYXJlZC9iYXNlLmZpbHRlclwiO1xuaW1wb3J0IHsgUGFnZVN0YXR1cyB9IGZyb20gXCIuLi8uLi9nbG9iYWwuY29uc3RhbnRzXCI7XG5pbXBvcnQgeyBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSBcIi4uLy4uL3NlcnZpY2VzXCI7XG5cbi8qKlxuICogQ29tcG9uZW50ZSBxdWUgbXVlc3RyYSB1biBwYWdpbmFkb3IgZW4gbGEgc2VjY2nDs24gZm9vdGVyLlxuICoqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiBcImJpdC1mb290ZXJcIixcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlVXJsOiBcImJpdC1mb290ZXIuY29tcG9uZW50Lmh0bWxcIlxufSlcbmV4cG9ydCBjbGFzcyBCaXRGb290ZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcyB7XG4gIHB1YmxpYyBzdGF0aWMgVFlQRV9MSVNUOiBzdHJpbmcgPSBcImxpc3RcIjtcbiAgcHVibGljIHN0YXRpYyBUWVBFX1NDUk9MTDogc3RyaW5nID0gXCJzY3JvbGxcIjtcbiAgcHVibGljIHN0YXRpYyBUWVBFX0ZPUk06IHN0cmluZyA9IFwiZm9ybVwiO1xuICBwdWJsaWMgc3RhdGljIFRZUEVfQkxBTks6IHN0cmluZyA9IFwiYmxhbmtcIjtcblxuICBwdWJsaWMgc3RhdGljIE1PUkVfUkVTVUxUUyA9IC0xO1xuXG4gIEBJbnB1dCgpXG4gIHRvdGFsSXRlbXM6IG51bWJlcjsgICAgIC8vIE7Dum1lcm8gdG90YWwgZGUgZWxlbWVudG9zIHJlY3VwZXJhZG9zIGRlIGxhIGNvbnN1bHRhXG4gIEBJbnB1dCgpXG4gIGZpbHRlcjogQmFzZUZpbHRlcjtcbiAgQElucHV0KClcbiAgcGFnaW5hdG9yOiBib29sZWFuO1xuICBASW5wdXQoKVxuICBtb3N0cmFyQXZpc29zOiBib29sZWFuID0gdHJ1ZTtcbiAgQElucHV0KClcbiAgZml4ZWQ6IGJvb2xlYW4gPSB0cnVlOyAvLyBJbmRpY2Fyw6Egc2kgbG8gcXVlcmVtb3MgZmlqbyBhYmFqbyBlbiBsYSBww6FnaW5hLiBQb3IgZGVmZWN0byBzw60uXG4gIEBJbnB1dCgpXG4gIG1lc3NhZ2VzOiBNYXA8UGFnZVN0YXR1cywgc3RyaW5nPjtcbiAgQElucHV0KClcbiAgc3RhdHVzOiBQYWdlU3RhdHVzID0gUGFnZVN0YXR1cy5Jbml0OyAvLyBEZXRlcm1pbmEgZW4gcXXDqSBlc3RhZG8gZXN0w6EgbGEgcMOhZ2luYTogUGFnZVN0YXR1cy5Jbml0LCBQYWdlU3RhdHVzLlNFQVJDSElORywgUGFnZVN0YXR1cy5GSU5JU0hfU0VBUkNIXG4gIEBJbnB1dChcInR5cGVcIilcbiAgdHlwZUZvb3Rlcjogc3RyaW5nO1xuICBASW5wdXQoKVxuICBtb3N0cmFyRW5sYWNlc1BhZ2luYXM6IGJvb2xlYW4gPSB0cnVlO1xuICBASW5wdXQoKVxuICBtb3N0cmFyUHJpbWVyYVVsdGltYVBhZ2luYTogYm9vbGVhbiA9IHRydWU7XG4gIEBJbnB1dCgpXG4gIHZpc2libGU6IGJvb2xlYW4gPSB0cnVlO1xuICBASW5wdXQoKVxuICBmb3JjZVBhZ2VMaW5rU2l6ZTogbnVtYmVyID0gMTsgLy8gbsO6bWVybyBkZSBlbmxhY2VzIGVuIGVsIHBhZ2luYWRvciBwYXJhIHBvZGVyIG5hdmVnYXIgaGFjaWEgZGVsYW50ZSBvIGRldHLDoXMgcXVlIGZvcnphbW9zIGEgcXVlIGhheWFcbiAgQE91dHB1dCgpXG4gIG9uUGFnZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8bnVtYmVyPigpOyAvL3BhcmEgbm90aWZpY2FyIGNhbWJpb3MgZW4gbGEgcMOhZ2luYSBhIG1vc3RyYXJcbiAgQE91dHB1dCgpXG4gIG9uTmV3UGFnZVNpemUgPSBuZXcgRXZlbnRFbWl0dGVyPG51bWJlcj4oKTsgLy9wYXJhIG5vdGlmaWNhciBjYW1iaW9zIGVuIGxvcyBlbGVtZW50b3MgYSBtb3N0cmFyIHBvciBww6FnaW5hXG5cbiAgYmFzZUl0ZW1zUGVyUGFnZTogbnVtYmVyID0gQmFzZUZpbHRlci5SRVNVTFRBRE9TX1BBR0U7IC8vIGd1YXJkYW1vcyBlbCBuw7ptZXJvIGRlIHJlc3VsdGFkb3MgcHJlLWNvbmZpZ3VyYWRvcyBwb3IgcMOhZ2luYSBwYXJhIG1vc3RyYXIgbGEgbGlzdGEgZGUgeCwgeCsxMCB5IHgrMjBcbiAgaXRlbXNQZXJQYWdlOiBudW1iZXIgPSBCYXNlRmlsdGVyLlJFU1VMVEFET1NfUEFHRTsgLy8gbsO6bWVybyBkZSBlbGVtZW50b3MgcG9yIHDDoWdpbmEgcXVlIG1vc3RyYW1vc1xuICBmaXJzdDogbnVtYmVyO1xuICBwYWdlTGlua1NpemU6IG51bWJlcjsgLy8gbsO6bWVybyBkZSBlbmxhY2VzIGVuIGVsIHBhZ2luYWRvciBwYXJhIHBvZGVyIG5hdmVnYXIgaGFjaWEgZGVsYW50ZSBvIGRldHLDoXNcbiAgbWF4Q3VycmVudEl0ZW1zOiBudW1iZXIgPSAtMTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHRyYW5zbGF0ZVNlcnZpY2U6IFRyYW5zbGF0ZVNlcnZpY2UpIHtcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnR5cGVGb290ZXIgPT0gdW5kZWZpbmVkKSB7XG4gICAgICB0aGlzLnR5cGVGb290ZXIgPSBcImxpc3RcIjtcbiAgICB9XG4gICAgaWYgKHRoaXMucGFnaW5hdG9yID09IHVuZGVmaW5lZCkge1xuICAgICAgdGhpcy5wYWdpbmF0b3IgPSBmYWxzZTtcbiAgICB9XG4gICAgLy9tZW5zYWplcyBwb3IgZGVmZWN0byBzaSBubyB2aWVuZW4gZGVmaW5pZG9zXG4gICAgaWYgKHRoaXMubWVzc2FnZXMgPT0gdW5kZWZpbmVkKSB7XG4gICAgICB0aGlzLnNldE1lc3NhZ2VzKCk7XG4gICAgICB0aGlzLm1lc3NhZ2VzLnNldChQYWdlU3RhdHVzLkVycm9yLCBcImJpdG5nbGlicmFyeS5mb290ZXIuZXJyb3JcIik7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBzZXRNZXNzYWdlcygpIHtcbiAgICBjb25zb2xlLmxvZyhcImRlZmluaW1vcyBsb3MgbWVuc2FqZXMgZGVsIGZvb3RlciBkZSBtYW5lcmEgZXN0w6FuZGFyXCIpO1xuICAgIHRoaXMubWVzc2FnZXMgPSBuZXcgTWFwPFBhZ2VTdGF0dXMsIHN0cmluZz4oKTtcbiAgICBpZiAodGhpcy5pc0Zvb3Rlckxpc3QoKSB8fCB0aGlzLmlzRm9vdGVyU2Nyb2xsKCkpIHtcbiAgICAgIHRoaXMubWVzc2FnZXMuc2V0KFBhZ2VTdGF0dXMuSW5pdCwgXCJiaXRuZ2xpYnJhcnkuZm9vdGVyLmxpc3QuaW5pdFwiKTtcbiAgICAgIHRoaXMubWVzc2FnZXMuc2V0KFBhZ2VTdGF0dXMuU2VhcmNoaW5nLCBcImJpdG5nbGlicmFyeS5mb290ZXIubGlzdC5zZWFyY2hpbmdcIik7XG4gICAgICB0aGlzLm1lc3NhZ2VzLnNldChQYWdlU3RhdHVzLkVtcHR5UmVzdWx0LCBcImJpdG5nbGlicmFyeS5mb290ZXIubGlzdC5lbXB0eXJlc3VsdFwiKTtcbiAgICAgIHRoaXMubWVzc2FnZXMuc2V0KFBhZ2VTdGF0dXMuRmluaXNoU2VhcmNoLCBcImJpdG5nbGlicmFyeS5mb290ZXIubGlzdC5maW5pc2hzZWFyY2hcIik7XG4gICAgICB0aGlzLm1lc3NhZ2VzLnNldChCaXRGb290ZXJDb21wb25lbnQuTU9SRV9SRVNVTFRTLCBcImJpdG5nbGlicmFyeS5mb290ZXIubGlzdC5tb3JlcmVzdWx0c1wiKVxuICAgIH0gZWxzZSBpZiAodGhpcy5pc0Zvb3RlckZvcm0oKSkge1xuICAgICAgdGhpcy5tZXNzYWdlcy5zZXQoUGFnZVN0YXR1cy5Jbml0LCBcImJpdG5nbGlicmFyeS5mb290ZXIuZm9ybS5pbml0XCIpO1xuICAgICAgdGhpcy5tZXNzYWdlcy5zZXQoUGFnZVN0YXR1cy5TZWFyY2hpbmcsIFwiYml0bmdsaWJyYXJ5LmZvb3Rlci5mb3JtLnNlYXJjaGluZ1wiKTtcbiAgICAgIHRoaXMubWVzc2FnZXMuc2V0KFBhZ2VTdGF0dXMuRmluaXNoU2VhcmNoLCBcImJpdG5nbGlicmFyeS5mb290ZXIuZm9ybS5maW5pc2hzZWFyY2hcIik7XG4gICAgICB0aGlzLm1lc3NhZ2VzLnNldChQYWdlU3RhdHVzLlJlYWRPbmx5LCBcImJpdG5nbGlicmFyeS5mb290ZXIubGlzdC5yZWFkb25seVwiKTtcbiAgICB9IGVsc2UgaWYgKHRoaXMudHlwZUZvb3RlciA9PT0gQml0Rm9vdGVyQ29tcG9uZW50LlRZUEVfQkxBTkspIHtcbiAgICAgIGNvbnNvbGUubG9nKFwidGhlIGZvb3RlciBpcyBCTEFOSyFcIik7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEVzY3VjaGFyZW1vcyBhIGNhbWJpb3MgZW4gbGFzIHByb3BpZWRhZGVzIHRvdGFsSXRlbXMgcGFyYSBhY3R1YWxpemFyIGVsIHBhZ2luYWRvciBjb24gcmVzcGVjdG8gYSBsYXMgcMOhZ2luYXMgcXVlIG1vc3RyYW1vc1xuICAgKi9cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogeyBbcHJvcEtleTogc3RyaW5nXTogU2ltcGxlQ2hhbmdlIH0pIHtcbiAgICBmb3IgKGxldCBwcm9wTmFtZSBpbiBjaGFuZ2VzKSB7XG4gICAgICBsZXQgY2hhbmdlZFByb3AgPSBjaGFuZ2VzW3Byb3BOYW1lXTtcbiAgICAgIGlmIChwcm9wTmFtZSA9PT0gXCJzdGF0dXNcIikge1xuICAgICAgICB0aGlzLnN0YXR1cyA9IGNoYW5nZWRQcm9wLmN1cnJlbnRWYWx1ZTtcbiAgICAgICAgY29uc29sZS5sb2coXCJzdGF0dXM6XCIgKyB0aGlzLnN0YXR1cyk7XG4gICAgICB9IGVsc2UgaWYgKHByb3BOYW1lID09PSBcInRvdGFsSXRlbXNcIikge1xuICAgICAgICB0aGlzLnRvdGFsSXRlbXMgPSBjaGFuZ2VkUHJvcC5jdXJyZW50VmFsdWU7XG4gICAgICAgIGNvbnNvbGUubG9nKFwidG90YWxJdGVtczpcIiArIHRoaXMudG90YWxJdGVtcyk7XG4gICAgICAgIGlmIChjaGFuZ2VkUHJvcC5wcmV2aW91c1ZhbHVlICE9PSBjaGFuZ2VkUHJvcC5jdXJyZW50VmFsdWUpIHtcbiAgICAgICAgICB0aGlzLmNhbGN1bGF0ZVBhZ2VMaW5rU2l6ZSgpOyAgICAgLy9yZWNhbGN1bGFtb3NcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmNhbGN1bGF0ZU1heEN1cnJlbnRJdGVtcygpO1xuICAgICAgfSBlbHNlIGlmIChwcm9wTmFtZSA9PT0gXCJmaWx0ZXJcIikge1xuICAgICAgICB0aGlzLmZpbHRlciA9IGNoYW5nZWRQcm9wLmN1cnJlbnRWYWx1ZTtcbiAgICAgICAgdGhpcy5jYWxjdWxhdGVNYXhDdXJyZW50SXRlbXMoKTtcbiAgICAgICAgaWYgKGNoYW5nZWRQcm9wLnByZXZpb3VzVmFsdWUgIT09IGNoYW5nZWRQcm9wLmN1cnJlbnRWYWx1ZSkge1xuICAgICAgICAgIHRoaXMuY2FsY3VsYXRlUGFnZUxpbmtTaXplKCk7ICAgICAvL3JlY2FsY3VsYW1vc1xuICAgICAgICAgIGlmICghdGhpcy5maWx0ZXI/LnBhZ2luYSB8fCB0aGlzLmZpbHRlci5wYWdpbmEgPD0gMSkge1xuICAgICAgICAgICAgdGhpcy5nb1RvRmlyc3RQYWdlKCk7XG4gICAgICAgICAgICBjb25zb2xlLmxvZyhcImdvVG9GaXJzdFBhZ2VcIik7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHRoaXMuZmlyc3QgPSAodGhpcy5maWx0ZXIucGFnaW5hIC0gMSkgKiB0aGlzLmZpbHRlci5yZXN1bHRhZG9zO1xuICAgICAgICBjb25zb2xlLmxvZyhcImZpcnN0OlwiICsgdGhpcy5maXJzdCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgc2hvd0Zvb3RlcigpIHtcbiAgICAvLyBQcm9ibGVtYS4gRXN0YW1vcyBvYnRlbmllbmRvIHVuIHN0YXR1cyBhIG51bGwgY3VhbmRvIHJlZ3Jlc2Ftb3MgZGUgdW5hIGZpY2hhXG4gICAgLy8gc3RhdHVzIGVzIG51bGwgcG9ycXVlIHJlYWxtZW50ZSBubyBzZSBlc3TDoSBsYW56YW5kbyBuaW5ndW5hIGLDunNxdWVkYSBwb3IgbG8gcXVlIGVsIG3DqXRvZG8gdXBkYXRlUGFnZVN0YXR1cyByZXRvcm5hICBudWxsXG4gICAgcmV0dXJuIHRoaXMudHlwZUZvb3RlciA9PT0gJ2xpc3QnICYmIHRoaXMudmlzaWJsZTtcbiAgfVxuXG4gIHNob3dTY3JvbGwoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMudHlwZUZvb3RlciA9PT0gJ3Njcm9sbCcgJiYgdGhpcy52aXNpYmxlO1xuICB9XG5cbiAgLyoqIENhbGN1bGEgZWwgbsO6bWVybyBkZSBlbmxhY2VzIHZpc2libGVzIGVuIGVsIHBhZ2luYWRvciAoZW4gZWwgcmFuZ28gZW50cmUgMSB5IEJBU0VfUkVTVUxUQURPU19QQUdFKS4gKi9cbiAgY2FsY3VsYXRlUGFnZUxpbmtTaXplKCkge1xuICAgIGlmICh0aGlzLmZvcmNlUGFnZUxpbmtTaXplID09IDApIHtcbiAgICAgIGNvbnNvbGUubG9nKGBjYWxjdWxhdGVQYWdlTGlua1NpemUgdG90YWxJdGVtczogJHt0aGlzLnRvdGFsSXRlbXN9IGl0ZW1zUGVyUGFnZToke3RoaXMuaXRlbXNQZXJQYWdlfWApO1xuICAgICAgdGhpcy5wYWdlTGlua1NpemUgPSBNYXRoLmNlaWwodGhpcy50b3RhbEl0ZW1zIC8gdGhpcy5pdGVtc1BlclBhZ2UpO1xuICAgICAgaWYgKHRoaXMucGFnZUxpbmtTaXplIDwgMSkge1xuICAgICAgICB0aGlzLnBhZ2VMaW5rU2l6ZSA9IDE7XG4gICAgICB9XG4gICAgICBpZiAodGhpcy5wYWdlTGlua1NpemUgPiBCQVNFX1JFU1VMVEFET1NfUEFHRSkge1xuICAgICAgICB0aGlzLnBhZ2VMaW5rU2l6ZSA9IEJBU0VfUkVTVUxUQURPU19QQUdFO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnBhZ2VMaW5rU2l6ZSA9IHRoaXMuZm9yY2VQYWdlTGlua1NpemU7XG4gICAgfVxuICAgIGNvbnNvbGUubG9nKFwicGFnZUxpbmtTaXplXCIsIHRoaXMucGFnZUxpbmtTaXplKTtcbiAgfVxuXG4gIGNhbGN1bGF0ZU1heEN1cnJlbnRJdGVtcygpIHtcbiAgICB0aGlzLm1heEN1cnJlbnRJdGVtcyA9IHRoaXMuZmlsdGVyPy5wYWdpbmEgKiB0aGlzLmZpbHRlcj8ucmVzdWx0YWRvcztcbiAgICBpZiAodGhpcy5tYXhDdXJyZW50SXRlbXMgPiB0aGlzLnRvdGFsSXRlbXMpIHtcbiAgICAgIHRoaXMubWF4Q3VycmVudEl0ZW1zID0gdGhpcy50b3RhbEl0ZW1zO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBFc3RhYmxlY2UgZWwgbsO6bWVybyBkZSBww6FnaW5hIGVuIGxhIHZpc3VhbGl6YWNpw7NuIGRlIHJlc3VsdGFkb3MuIFNlIGludm9jYSBjdWFuZG8gZWwgdXN1YXJpbyBjYW1iaWEgZWwgbsO6bWVybyBkZSByZXN1bHRhZG9zIGEgbW9zdHJhciBvIGNhbWJpYSBkZSBww6FnaW5hICovXG4gIHBhZ2luYXRlKGV2ZW50OiBhbnkpOiB2b2lkIHtcbiAgICBjb25zb2xlLmxvZyhcIlBhZ2UgY2hhbmdlZCB0bzpcIiArIGV2ZW50LnBhZ2UgKyBcIiBtYXhDdXJyZW50SXRlbXM6XCIgKyB0aGlzLm1heEN1cnJlbnRJdGVtcyArIFwiIGZpcnN0RWxlbWVudDpcIiArIHRoaXMuZmlyc3QpO1xuICAgIGlmIChldmVudC5yb3dzICE9PSB0aGlzLml0ZW1zUGVyUGFnZSkge1xuICAgICAgLy8gaGFuIGNhbWJpYWRvIGVsIG7Dum1lcm8gZGUgZWxlbWVudG9zIHBvciBww6FnaW5hXG4gICAgICAvL25vdGlmaWNhbW9zIHF1ZSBsb3MgZWxlbWVudG9zIHBvciBww6FnaW5hIGhhbiBjYW1iaWFkb1xuICAgICAgdGhpcy5vbk5ld1BhZ2VTaXplLmVtaXQoZXZlbnQucm93cyk7XG4gICAgICB0aGlzLml0ZW1zUGVyUGFnZSA9IGV2ZW50LnJvd3M7XG4gICAgICB0aGlzLmdvVG9GaXJzdFBhZ2UoKTtcbiAgICAgIHRoaXMuY2FsY3VsYXRlUGFnZUxpbmtTaXplKCk7IC8vIHJlY2FsY3VsYW1vcyBlbCBuw7ptZXJvIGRlIGVubGFjZXMgZGUgcMOhZ2luYVxuICAgIH0gZWxzZSB7XG4gICAgICAvLyBub3RpZmljYW1vcyBhIG51ZXN0cm8gcGFww6EgcXVlIGxhIHDDoWdpbmEgaGEgY2FtYmlhZG9cbiAgICAgIHRoaXMub25QYWdlQ2hhbmdlLmVtaXQoZXZlbnQucGFnZSArIDEpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgZ29Ub0ZpcnN0UGFnZSgpIHtcbiAgICB0aGlzLmZpcnN0ID0gMTtcbiAgfVxuXG4gIGdldFN0eWxlKCkge1xuICAgIGlmICh0aGlzLmZpeGVkICYmIHRoaXMudHlwZUZvb3RlciA9PT0gQml0Rm9vdGVyQ29tcG9uZW50LlRZUEVfTElTVCB8fCB0aGlzLnR5cGVGb290ZXIgPT09IEJpdEZvb3RlckNvbXBvbmVudC5UWVBFX1NDUk9MTCkge1xuICAgICAgcmV0dXJuIFwiZm9vdGVyIG5hdmJhci1maXhlZC1ib3R0b21cIjtcbiAgICB9IGVsc2UgaWYgKHRoaXMuZml4ZWQgJiYgdGhpcy50eXBlRm9vdGVyID09PSBCaXRGb290ZXJDb21wb25lbnQuVFlQRV9GT1JNKSB7XG4gICAgICByZXR1cm4gXCJmb290ZXIgbmF2YmFyLWZpeGVkLWJvdHRvbS1mb3JtXCI7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBcImZvb3RlclwiO1xuICAgIH1cbiAgfVxuXG4gIGlzRm9vdGVyTGlzdCgpIHtcbiAgICByZXR1cm4gdGhpcy50eXBlRm9vdGVyID09PSBCaXRGb290ZXJDb21wb25lbnQuVFlQRV9MSVNUO1xuICB9XG5cbiAgaXNGb290ZXJTY3JvbGwoKSB7XG4gICAgcmV0dXJuIHRoaXMudHlwZUZvb3RlciA9PT0gQml0Rm9vdGVyQ29tcG9uZW50LlRZUEVfU0NST0xMO1xuICB9XG5cbiAgaXNGb290ZXJGb3JtKCkge1xuICAgIHJldHVybiB0aGlzLnR5cGVGb290ZXIgPT09IEJpdEZvb3RlckNvbXBvbmVudC5UWVBFX0ZPUk07XG4gIH1cblxuICAvKiogRmxhZzogbGEgcMOhZ2luYSBlc3TDoSByZWFsaXphbmRvIGxhIGLDunNxdWVkYS4gKi9cbiAgZ2V0IHNlYXJjaEluaXRpYXRlZCgpIHtcbiAgICByZXR1cm4gdGhpcy5zdGF0dXMgPT09IFBhZ2VTdGF0dXMuSW5pdCB8fCB0aGlzLnN0YXR1cyA9PSBQYWdlU3RhdHVzLlJlc2V0IHx8ICF0aGlzLnN0YXR1cztcbiAgfVxuXG4gIC8qKiBGbGFnOiBsYSBww6FnaW5hIGVzdMOhIHJlYWxpemFuZG8gbGEgYsO6c3F1ZWRhLiAqL1xuICBnZXQgc2VhcmNoaW5nKCkge1xuICAgIHJldHVybiB0aGlzLnN0YXR1cyA9PT0gUGFnZVN0YXR1cy5TZWFyY2hpbmc7XG4gIH1cblxuICAvKiogRmxhZzogbGEgcMOhZ2luYSBoYSBmaW5hbGl6YWRvIGxhIMO6bHRpbWEgYsO6c3F1ZWRhLiAqL1xuICBnZXQgc2VhcmNoRmluaXNoZWQoKSB7XG4gICAgcmV0dXJuIHRoaXMuc3RhdHVzID09PSBQYWdlU3RhdHVzLkZpbmlzaFNlYXJjaDtcbiAgfVxuXG4gIC8qKiBGbGFnOiBsYSBww6FnaW5hIGVzdMOhIGVuIG1vZG8gc29sbyBsZWN0dXJhICovXG4gIGdldCByZWFkT25seSgpIHtcbiAgICByZXR1cm4gdGhpcy5zdGF0dXMgPT0gUGFnZVN0YXR1cy5SZWFkT25seTtcbiAgfVxuXG4gIC8qKiBGbGFnOiBsYSBww6FnaW5hIGhhIGZpbmFsaXphZG8gY29uIGVycm9yICovXG4gIGdldCBlcnJvcigpIHtcbiAgICByZXR1cm4gdGhpcy5zdGF0dXMgPT0gUGFnZVN0YXR1cy5FcnJvcjtcbiAgfVxuXG4gIC8qKiBGbGFnOiBlbmNvbnRyYWRvIHJlc3VsdGFkby4gKi9cbiAgZ2V0IGZvdW5kUmVzdWx0KCkge1xuICAgIHJldHVybiAoXG4gICAgICB0aGlzLnN0YXR1cyA9PT0gUGFnZVN0YXR1cy5GaW5pc2hTZWFyY2ggJiZcbiAgICAgICgodGhpcy50eXBlRm9vdGVyID09PSBCaXRGb290ZXJDb21wb25lbnQuVFlQRV9MSVNUICYmIHRoaXMudG90YWxJdGVtcyA+IDApXG4gICAgICAgIHx8IHRoaXMudHlwZUZvb3RlciA9PT0gQml0Rm9vdGVyQ29tcG9uZW50LlRZUEVfRk9STVxuICAgICAgICB8fCAodGhpcy50eXBlRm9vdGVyID09PSBCaXRGb290ZXJDb21wb25lbnQuVFlQRV9TQ1JPTEwgJiYgdGhpcy50b3RhbEl0ZW1zIDw9IHRoaXMubWF4Q3VycmVudEl0ZW1zKSlcbiAgICApO1xuICB9XG5cbiAgLyoqIEZsYWc6IGhheSBtw6FzIHJlc3VsdGFkb3MgKHNjcm9sbCkuICovXG4gIGdldCBtb3JlUmVzdWx0cygpIHtcbiAgICByZXR1cm4gKFxuICAgICAgdGhpcy5zdGF0dXMgPT09IFBhZ2VTdGF0dXMuRmluaXNoU2VhcmNoICYmXG4gICAgICAodGhpcy50eXBlRm9vdGVyID09PSBCaXRGb290ZXJDb21wb25lbnQuVFlQRV9TQ1JPTEwgJiYgdGhpcy50b3RhbEl0ZW1zID4gdGhpcy5tYXhDdXJyZW50SXRlbXMpXG4gICAgKTtcbiAgfVxuXG4gIC8qKiBGbGFnOiBubyBoYXkgcmVzdWx0YWRvcy4gKi9cbiAgZ2V0IGVtcHR5UmVzdWx0KCkge1xuICAgIHJldHVybiB0aGlzLnN0YXR1cyA9PT0gUGFnZVN0YXR1cy5GaW5pc2hTZWFyY2ggJiYgdGhpcy50b3RhbEl0ZW1zID09PSAwO1xuICB9XG5cbiAgZ2V0IGluaXRNZXNzYWdlKCk6IE9ic2VydmFibGU8c3RyaW5nPiB7XG4gICAgcmV0dXJuIHRoaXMudHJhbnNsYXRlU2VydmljZS5zZWxlY3RUcmFuc2xhdGUodGhpcy5tZXNzYWdlcy5nZXQoUGFnZVN0YXR1cy5Jbml0KSk7XG4gIH1cblxuICBnZXQgc2VhcmNoaW5nTWVzc2FnZSgpOiBPYnNlcnZhYmxlPHN0cmluZz4ge1xuICAgIHJldHVybiB0aGlzLnRyYW5zbGF0ZVNlcnZpY2Uuc2VsZWN0VHJhbnNsYXRlKHRoaXMubWVzc2FnZXMuZ2V0KFBhZ2VTdGF0dXMuU2VhcmNoaW5nKSk7XG4gIH1cblxuICBnZXQgZmluaXNoTWVzc2FnZSgpOiBPYnNlcnZhYmxlPHN0cmluZz4ge1xuICAgIHJldHVybiB0aGlzLnRyYW5zbGF0ZVNlcnZpY2Uuc2VsZWN0VHJhbnNsYXRlKHRoaXMubWVzc2FnZXMuZ2V0KFBhZ2VTdGF0dXMuRmluaXNoU2VhcmNoKSk7XG4gIH1cblxuICBnZXQgbW9yZVJlc3VsdHNNZXNzYWdlKCk6IE9ic2VydmFibGU8c3RyaW5nPiB7XG4gICAgcmV0dXJuIHRoaXMudHJhbnNsYXRlU2VydmljZS5zZWxlY3RUcmFuc2xhdGUodGhpcy5tZXNzYWdlcy5nZXQoQml0Rm9vdGVyQ29tcG9uZW50Lk1PUkVfUkVTVUxUUykpO1xuICB9XG5cbiAgZ2V0IGVtcHR5TWVzc2FnZSgpOiBPYnNlcnZhYmxlPHN0cmluZz4ge1xuICAgIHJldHVybiB0aGlzLnRyYW5zbGF0ZVNlcnZpY2Uuc2VsZWN0VHJhbnNsYXRlKHRoaXMubWVzc2FnZXMuZ2V0KFBhZ2VTdGF0dXMuRW1wdHlSZXN1bHQpKTtcbiAgfVxuXG4gIGdldCByZWFkT25seU1lc3NhZ2UoKTogT2JzZXJ2YWJsZTxzdHJpbmc+IHtcbiAgICByZXR1cm4gdGhpcy50cmFuc2xhdGVTZXJ2aWNlLnNlbGVjdFRyYW5zbGF0ZSh0aGlzLm1lc3NhZ2VzLmdldChQYWdlU3RhdHVzLlJlYWRPbmx5KSk7XG4gIH1cblxuICBnZXQgZXJyb3JNZXNzYWdlKCk6IE9ic2VydmFibGU8c3RyaW5nPiB7XG4gICAgcmV0dXJuIHRoaXMudHJhbnNsYXRlU2VydmljZS5zZWxlY3RUcmFuc2xhdGUodGhpcy5tZXNzYWdlcy5nZXQoUGFnZVN0YXR1cy5FcnJvcikpO1xuICB9XG59XG4iLCI8Zm9vdGVyIFtjbGFzc109XCJnZXRTdHlsZSgpXCI+XG4gIDxkaXYgY2xhc3M9XCJncmlkXCI+XG4gICAgPGRpdiBjbGFzcz1cImNvbC0xMiBtZDpjb2wtMiBsZzpjb2wtMlwiICpuZ0lmPVwic2hvd0Zvb3RlcigpXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwibnVtZXJvLXJlc3VsdGFkb3NcIj5cbiAgICAgICAgPGxhYmVsPnt7XCJiaXRuZ2xpYnJhcnkuZm9vdGVyLnJlc3VsdHNcIiB8IHRyYW5zbG9jb319PC9sYWJlbD5cbiAgICAgICAgPHNwYW4+e3ttYXhDdXJyZW50SXRlbXN9fSAvIHt7dG90YWxJdGVtc319PC9zcGFuPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImNvbC0xMiBtZDpjb2wtMiBsZzpjb2wtMlwiICpuZ0lmPVwic2hvd1Njcm9sbCgpXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwibnVtZXJvLXJlc3VsdGFkb3Mtc2Nyb2xsXCI+XG4gICAgICAgIDxsYWJlbD57e1wiYml0bmdsaWJyYXJ5LmZvb3Rlci5yZXN1bHRzXCIgfCB0cmFuc2xvY299fTwvbGFiZWw+XG4gICAgICAgIDxzcGFuICpuZ0lmPVwibWF4Q3VycmVudEl0ZW1zID49IHRvdGFsSXRlbXNcIj57e3RvdGFsSXRlbXN9fTwvc3Bhbj5cbiAgICAgICAgPHNwYW4gKm5nSWY9XCJtYXhDdXJyZW50SXRlbXMgPCB0b3RhbEl0ZW1zXCI+e3ttYXhDdXJyZW50SXRlbXN9fSAvIHt7dG90YWxJdGVtc319PC9zcGFuPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG5cbiAgICA8ZGl2IGNsYXNzPVwiY29sLTEyIG1kOmNvbC03IGxnOmNvbC03IHAtdGV4dC1jZW50ZXJcIiAqbmdJZj1cInNob3dGb290ZXIoKVwiPlxuICAgICAgPHAtcGFnaW5hdG9yICpuZ0lmPVwicGFnaW5hdG9yXCJcbiAgICAgICAgICBbZmlyc3RdPVwiZmlyc3RcIlxuICAgICAgICAgIFtyb3dzXT1cIml0ZW1zUGVyUGFnZVwiXG4gICAgICAgICAgW3RvdGFsUmVjb3Jkc109XCJ0b3RhbEl0ZW1zXCJcbiAgICAgICAgICBbcGFnZUxpbmtTaXplXT1cIm1vc3RyYXJFbmxhY2VzUGFnaW5hcyA/IHBhZ2VMaW5rU2l6ZSA6IDFcIlxuICAgICAgICAgIFtyb3dzUGVyUGFnZU9wdGlvbnNdPVwiW2Jhc2VJdGVtc1BlclBhZ2UsYmFzZUl0ZW1zUGVyUGFnZSo1LGJhc2VJdGVtc1BlclBhZ2UqMjUsYmFzZUl0ZW1zUGVyUGFnZSo1MF1cIlxuICAgICAgICAgIFtzaG93UGFnZUxpbmtzXT1cIm1vc3RyYXJFbmxhY2VzUGFnaW5hc1wiXG4gICAgICAgICAgW3Nob3dKdW1wVG9QYWdlRHJvcGRvd25dPVwiZmFsc2VcIlxuICAgICAgICAgIFtzaG93Rmlyc3RMYXN0SWNvbl09XCJtb3N0cmFyUHJpbWVyYVVsdGltYVBhZ2luYSA/IHRydWUgOiBtYXhDdXJyZW50SXRlbXMgPj0gdG90YWxJdGVtc1wiXG4gICAgICAgICAgKG9uUGFnZUNoYW5nZSk9XCJwYWdpbmF0ZSgkZXZlbnQpXCI+PC9wLXBhZ2luYXRvcj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiY29sLTEyIG1kOmNvbC0zIGxnOmNvbC0zXCI+XG4gICAgICA8ZGl2ICpuZ0lmPVwic2VhcmNoSW5pdGlhdGVkXCJcbiAgICAgICAgICAgW2NsYXNzTmFtZV09XCJ0eXBlRm9vdGVyID09PSAnc2Nyb2xsJyA/ICdtZW5zYWplLXNjcm9sbCBtZW5zYWplLWluZm8nIDogJ21lbnNhamUgbWVuc2FqZS1pbmZvJ1wiPlxuICAgICAgICA8aSBjbGFzcz1cImZhIGZhLWluZm9cIj48L2k+XG4gICAgICAgIDxzcGFuPnt7aW5pdE1lc3NhZ2UgfCBhc3luY319PC9zcGFuPlxuICAgICAgPC9kaXY+XG5cbiAgICAgIDxkaXYgKm5nSWY9XCJzZWFyY2hpbmdcIlxuICAgICAgICAgICBbY2xhc3NOYW1lXT1cInR5cGVGb290ZXIgPT09ICdzY3JvbGwnID8gJ21lbnNhamUtc2Nyb2xsIG1lbnNhamUtaW5mbycgOiAnbWVuc2FqZSBtZW5zYWplLWluZm8nXCI+XG4gICAgICAgIDxpIGNsYXNzPVwiZmEgZmEtaW5mb1wiPjwvaT5cbiAgICAgICAgPHNwYW4+e3tzZWFyY2hpbmdNZXNzYWdlIHwgYXN5bmN9fTwvc3Bhbj5cbiAgICAgIDwvZGl2PlxuXG4gICAgICA8ZGl2ICpuZ0lmPVwicmVhZE9ubHlcIlxuICAgICAgICAgICBbY2xhc3NOYW1lXT1cInR5cGVGb290ZXIgPT09ICdzY3JvbGwnID8gJ21lbnNhamUtc2Nyb2xsIG1lbnNhamUtaW5mbycgOiAnbWVuc2FqZSBtZW5zYWplLWluZm8nXCI+XG4gICAgICAgIDxpIGNsYXNzPVwiZmEgZmEtaW5mb1wiPjwvaT5cbiAgICAgICAgPHNwYW4+e3tyZWFkT25seU1lc3NhZ2UgfCBhc3luY319PC9zcGFuPlxuICAgICAgPC9kaXY+XG5cbiAgICAgIDxkaXYgKm5nSWY9XCJmb3VuZFJlc3VsdFwiXG4gICAgICAgICAgIFtjbGFzc05hbWVdPVwidHlwZUZvb3RlciA9PT0gJ3Njcm9sbCcgPyAnbWVuc2FqZS1zY3JvbGwgbWVuc2FqZS1pbmZvJyA6ICdtZW5zYWplIG1lbnNhamUtaW5mbydcIj5cbiAgICAgICAgPGkgY2xhc3M9XCJmYSBmYS1pbmZvXCI+PC9pPlxuICAgICAgICA8c3Bhbj57e2ZpbmlzaE1lc3NhZ2UgfCBhc3luY319PC9zcGFuPlxuICAgICAgPC9kaXY+XG5cbiAgICAgIDxkaXYgKm5nSWY9XCJtb3JlUmVzdWx0c1wiXG4gICAgICAgICAgIFtjbGFzc05hbWVdPVwidHlwZUZvb3RlciA9PT0gJ3Njcm9sbCcgPyAnbWVuc2FqZS1zY3JvbGwgbWVuc2FqZS1pbmZvJyA6ICdtZW5zYWplIG1lbnNhamUtaW5mbydcIj5cbiAgICAgICAgPGkgY2xhc3M9XCJmYSBmYS1pbmZvXCI+PC9pPlxuICAgICAgICA8c3Bhbj57e21vcmVSZXN1bHRzTWVzc2FnZSB8IGFzeW5jfX08L3NwYW4+XG4gICAgICA8L2Rpdj5cblxuICAgICAgPGRpdiAqbmdJZj1cImVtcHR5UmVzdWx0XCJcbiAgICAgICAgICAgW2NsYXNzTmFtZV09XCJ0eXBlRm9vdGVyID09PSAnc2Nyb2xsJyA/ICdtZW5zYWplLXNjcm9sbCBtZW5zYWplLWluZm8nIDogJ21lbnNhamUgbWVuc2FqZS1pbmZvJ1wiPlxuICAgICAgICA8aSBjbGFzcz1cImZhIGZhLWV4Y2xhbWF0aW9uXCI+PC9pPlxuICAgICAgICA8c3Bhbj57e2VtcHR5TWVzc2FnZSB8IGFzeW5jfX08L3NwYW4+XG4gICAgICA8L2Rpdj5cblxuICAgICAgPGRpdiAqbmdJZj1cImVycm9yXCJcbiAgICAgICAgICAgW2NsYXNzTmFtZV09XCJ0eXBlRm9vdGVyID09PSAnc2Nyb2xsJyA/ICdtZW5zYWplLXNjcm9sbCBtZW5zYWplLWluZm8nIDogJ21lbnNhamUgbWVuc2FqZS1pbmZvJ1wiPlxuICAgICAgICA8aSBjbGFzcz1cImZhIGZhLWV4Y2xhbWF0aW9uLXRyaWFuZ2xlXCI+PC9pPlxuICAgICAgICA8c3Bhbj57e2Vycm9yTWVzc2FnZSB8IGFzeW5jfX08L3NwYW4+XG4gICAgICA8L2Rpdj5cblxuICAgICAgPGJpdC1oZWxwPjwvYml0LWhlbHA+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9mb290ZXI+XG4iXX0=
|
|
@@ -11,6 +11,7 @@ export class BitCalendarComponent extends BitCustomComponent {
|
|
|
11
11
|
this.ayudaService = ayudaService;
|
|
12
12
|
this.translateService = translateService;
|
|
13
13
|
this.showButtonBar = false;
|
|
14
|
+
this.appendTo = "body";
|
|
14
15
|
this.onSelect = new EventEmitter();
|
|
15
16
|
}
|
|
16
17
|
_onTodayClick(event) {
|
|
@@ -28,7 +29,7 @@ export class BitCalendarComponent extends BitCustomComponent {
|
|
|
28
29
|
}
|
|
29
30
|
}
|
|
30
31
|
BitCalendarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.8", ngImport: i0, type: BitCalendarComponent, deps: [{ token: i1.AyudaService }, { token: i2.TranslateService }], target: i0.ɵɵFactoryTarget.Directive });
|
|
31
|
-
BitCalendarComponent.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.8", type: BitCalendarComponent, inputs: { fechaMinima: "fechaMinima", fechaMaxima: "fechaMaxima", calendarReadOnlyInput: "calendarReadOnlyInput", showButtonBar: "showButtonBar", format: "format" }, outputs: { onSelect: "onSelect" }, usesInheritance: true, ngImport: i0 });
|
|
32
|
+
BitCalendarComponent.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.8", type: BitCalendarComponent, inputs: { fechaMinima: "fechaMinima", fechaMaxima: "fechaMaxima", calendarReadOnlyInput: "calendarReadOnlyInput", showButtonBar: "showButtonBar", format: "format", appendTo: "appendTo" }, outputs: { onSelect: "onSelect" }, usesInheritance: true, ngImport: i0 });
|
|
32
33
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.8", ngImport: i0, type: BitCalendarComponent, decorators: [{
|
|
33
34
|
type: Directive
|
|
34
35
|
}], ctorParameters: function () { return [{ type: i1.AyudaService }, { type: i2.TranslateService }]; }, propDecorators: { fechaMinima: [{
|
|
@@ -41,7 +42,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.8", ngImpor
|
|
|
41
42
|
type: Input
|
|
42
43
|
}], format: [{
|
|
43
44
|
type: Input
|
|
45
|
+
}], appendTo: [{
|
|
46
|
+
type: Input
|
|
44
47
|
}], onSelect: [{
|
|
45
48
|
type: Output
|
|
46
49
|
}] } });
|
|
47
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
50
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYml0LWNhbGVuZGFyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2JpdC1uZy1saWJyYXJ5L3NyYy9saWIvc2hhcmVkbGlicmFyeS9jb21wb25lbnRzL2Zvcm0vY2FsZW5kYXIvYml0LWNhbGVuZGFyLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQVUsU0FBUyxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDeEUsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUd0QyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQzs7OztBQUk3RCxnSEFBZ0g7QUFFaEgsTUFBTSxPQUFnQixvQkFBcUIsU0FBUSxrQkFBa0I7SUFvQm5FLFlBQXNCLFlBQTBCLEVBQVksZ0JBQWtDO1FBQzVGLEtBQUssQ0FBQyxZQUFZLENBQUMsQ0FBQztRQURBLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBQVkscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQVg5RixrQkFBYSxHQUFHLEtBQUssQ0FBQztRQUl0QixhQUFRLEdBQVcsTUFBTSxDQUFDO1FBRTFCLGFBQVEsR0FBRyxJQUFJLFlBQVksRUFBTyxDQUFDO0lBT25DLENBQUM7SUFFRCxhQUFhLENBQUMsS0FBSztRQUNqQixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksSUFBSSxFQUFFLENBQUM7UUFDeEIsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3RCLENBQUM7SUFFRCxTQUFTLENBQUMsSUFBVTtRQUNsQixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQztRQUNsQixJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDcEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDM0IsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQztRQUNsQixJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDdEIsQ0FBQzs7aUhBdENtQixvQkFBb0I7cUdBQXBCLG9CQUFvQjsyRkFBcEIsb0JBQW9CO2tCQUR6QyxTQUFTO2tJQUlSLFdBQVc7c0JBRFYsS0FBSztnQkFHTixXQUFXO3NCQURWLEtBQUs7Z0JBR04scUJBQXFCO3NCQURwQixLQUFLO2dCQUdOLGFBQWE7c0JBRFosS0FBSztnQkFHTixNQUFNO3NCQURMLEtBQUs7Z0JBR04sUUFBUTtzQkFEUCxLQUFLO2dCQUdOLFFBQVE7c0JBRFAsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE9uSW5pdCwgRGlyZWN0aXZlLCBPdXRwdXQsIEV2ZW50RW1pdHRlciB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBJbnB1dCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tIFwicnhqcy9vcGVyYXRvcnNcIjtcblxuaW1wb3J0IHsgQml0Q3VzdG9tQ29tcG9uZW50IH0gZnJvbSBcIi4uL2JpdC1jdXN0b20uY29tcG9uZW50XCI7XG5pbXBvcnQgeyBBeXVkYVNlcnZpY2UgfSBmcm9tIFwiLi4vLi4vLi4vc2VydmljZXMvYXl1ZGEuc2VydmljZVwiO1xuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gXCIuLi8uLi8uLi9zZXJ2aWNlcy90cmFuc2xhdGUuc2VydmljZVwiO1xuXG4vKiogQ2xhc2UgZ2VuZXJhbCBwYXJhIGNvbXBvbmVudGVzIHBlcnNvbmFsaXphZG9zIGRlIHRpcG8gRmVjaGEgY29tbyBwdWVkZSBzZXIgQml0RGF0ZSwgQml0VGltZSB5IEJpdERhdGVUaW1lICovXG5ARGlyZWN0aXZlKClcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBCaXRDYWxlbmRhckNvbXBvbmVudCBleHRlbmRzIEJpdEN1c3RvbUNvbXBvbmVudCB7XG4gIC8vIGNhbGVuZGFyaW9zXG4gIEBJbnB1dCgpXG4gIGZlY2hhTWluaW1hOiBEYXRlOyAvLyBmZWNoYSBtw61uaW1hIHNlbGVjY2lvbmFibGVcbiAgQElucHV0KClcbiAgZmVjaGFNYXhpbWE6IERhdGU7IC8vIGZlY2hhIG3DoXhpbWEgc2VsZWNjaW9uYWJsZVxuICBASW5wdXQoKVxuICBjYWxlbmRhclJlYWRPbmx5SW5wdXQ6IGJvb2xlYW47IC8vIGRlc2FiaWxpdGFyIGVkaWNpb24gcG9yIHRlY2xhZG9cbiAgQElucHV0KClcbiAgc2hvd0J1dHRvbkJhciA9IGZhbHNlO1xuICBASW5wdXQoKVxuICBmb3JtYXQ6IHN0cmluZztcbiAgQElucHV0KClcbiAgYXBwZW5kVG86IHN0cmluZyA9IFwiYm9keVwiO1xuICBAT3V0cHV0KClcbiAgb25TZWxlY3QgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcblxuICBsb2NhbGU6IGFueTtcbiAgdmFsdWU6IERhdGU7XG5cbiAgY29uc3RydWN0b3IocHJvdGVjdGVkIGF5dWRhU2VydmljZTogQXl1ZGFTZXJ2aWNlLCBwcm90ZWN0ZWQgdHJhbnNsYXRlU2VydmljZTogVHJhbnNsYXRlU2VydmljZSkge1xuICAgIHN1cGVyKGF5dWRhU2VydmljZSk7XG4gIH1cblxuICBfb25Ub2RheUNsaWNrKGV2ZW50KSB7XG4gICAgdGhpcy52YWx1ZSA9IG5ldyBEYXRlKCk7XG4gICAgdGhpcy5lbWl0TmV3VmFsdWUoKTtcbiAgfVxuXG4gIF9vblNlbGVjdChkYXRlOiBEYXRlKSB7XG4gICAgdGhpcy52YWx1ZSA9IGRhdGU7XG4gICAgdGhpcy5lbWl0TmV3VmFsdWUoKTtcbiAgICB0aGlzLm9uU2VsZWN0LmVtaXQoZGF0ZSk7XG4gIH1cblxuICBfb25DbGVhcigpIHtcbiAgICB0aGlzLnZhbHVlID0gbnVsbDtcbiAgICB0aGlzLmVtaXROZXdWYWx1ZSgpO1xuICB9XG5cbiAgYWJzdHJhY3QgZW1pdE5ld1ZhbHVlKCk7XG5cbn1cbiJdfQ==
|
|
@@ -46,13 +46,13 @@ BitDateComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", versi
|
|
|
46
46
|
provide: NG_VALUE_ACCESSOR,
|
|
47
47
|
useExisting: forwardRef(() => BitDateComponent),
|
|
48
48
|
multi: true
|
|
49
|
-
}], usesInheritance: true, ngImport: i0, template: "<label *ngIf=\"!hideLabel\">\n <ng-content></ng-content> <span *ngIf=\"obligatorio\" class=\"obligatorio fa fa-asterisk\"></span> \n <i *ngIf=\"ayuda\" class=\"btn-ayuda fa fa-question\" (click)=\"showAyuda()\"></i>\n</label>\n<p *ngIf=\"readOnly\" class=\"lectura\" [id]=\"nombre\">{{ value_lectura | date: \"dd/MM/YYYY\" }}</p>\n<p-calendar\n *ngIf=\"!readOnly\"\n class=\"FormControl\"\n id=\"{{ nombre }}\"\n name=\"{{ nombre }}\"\n [disabled]=\"isDisabled\"\n [(ngModel)]=\"value\"\n dateFormat=\"dd/mm/yy\"\n placeholder=\"dd/mm/yyyy\"\n [monthNavigator]=\"true\"\n [readonlyInput]=\"calendarReadOnlyInput\"\n [minDate]=\"fechaMinima\"\n [maxDate]=\"fechaMaxima\"\n [yearNavigator]=\"true\"\n yearRange=\"2000:2050\"\n [firstDayOfWeek]=\"1\"\n [locale]=\"locale\"\n [showButtonBar]=\"showButtonBar\"\n (onSelect)=\"_onSelect(value)\"\n (onClear)=\"_onClear()\"\n (onClearClick)=\"_onClear()\"\n (onFocus)=\"_onFocus()\"\n (onBlur)=\"_onBlur()\"\n attr.data-testid=\"{{ dataTestId }}\"\n>\n</p-calendar>\n<span *ngIf=\"!readOnly\" class=\"glyphicon glyphicon-calendar icono-input\"></span>\n<control-messages *ngIf=\"control != null\" [control]=\"control\" [field]=\"nombre\"></control-messages>\n", dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i6.Calendar, selector: "p-calendar", inputs: ["style", "styleClass", "inputStyle", "inputId", "name", "inputStyleClass", "placeholder", "ariaLabelledBy", "iconAriaLabel", "disabled", "dateFormat", "multipleSeparator", "rangeSeparator", "inline", "showOtherMonths", "selectOtherMonths", "showIcon", "icon", "appendTo", "readonlyInput", "shortYearCutoff", "monthNavigator", "yearNavigator", "hourFormat", "timeOnly", "stepHour", "stepMinute", "stepSecond", "showSeconds", "required", "showOnFocus", "showWeek", "showClear", "dataType", "selectionMode", "maxDateCount", "showButtonBar", "todayButtonStyleClass", "clearButtonStyleClass", "autoZIndex", "baseZIndex", "panelStyleClass", "panelStyle", "keepInvalid", "hideOnDateTimeSelect", "touchUI", "timeSeparator", "focusTrap", "showTransitionOptions", "hideTransitionOptions", "tabindex", "view", "defaultDate", "minDate", "maxDate", "disabledDates", "disabledDays", "yearRange", "showTime", "responsiveOptions", "numberOfMonths", "firstDayOfWeek", "locale"], outputs: ["onFocus", "onBlur", "onClose", "onSelect", "onClear", "onInput", "onTodayClick", "onClearClick", "onMonthChange", "onYearChange", "onClickOutside", "onShow"] }, { kind: "component", type: i7.BitControlMessages, selector: "control-messages", inputs: ["control", "field"] }, { kind: "pipe", type: i4.DatePipe, name: "date" }] });
|
|
49
|
+
}], usesInheritance: true, ngImport: i0, template: "<label *ngIf=\"!hideLabel\">\n <ng-content></ng-content> <span *ngIf=\"obligatorio\" class=\"obligatorio fa fa-asterisk\"></span> \n <i *ngIf=\"ayuda\" class=\"btn-ayuda fa fa-question\" (click)=\"showAyuda()\"></i>\n</label>\n<p *ngIf=\"readOnly\" class=\"lectura\" [id]=\"nombre\">{{ value_lectura | date: \"dd/MM/YYYY\" }}</p>\n<p-calendar\n *ngIf=\"!readOnly\"\n class=\"FormControl\"\n id=\"{{ nombre }}\"\n name=\"{{ nombre }}\"\n [disabled]=\"isDisabled\"\n [(ngModel)]=\"value\"\n dateFormat=\"dd/mm/yy\"\n placeholder=\"dd/mm/yyyy\"\n [monthNavigator]=\"true\"\n [readonlyInput]=\"calendarReadOnlyInput\"\n [minDate]=\"fechaMinima\"\n [maxDate]=\"fechaMaxima\"\n [yearNavigator]=\"true\"\n yearRange=\"2000:2050\"\n [firstDayOfWeek]=\"1\"\n [locale]=\"locale\"\n [showButtonBar]=\"showButtonBar\"\n [appendTo]=\"appendTo\"\n (onSelect)=\"_onSelect(value)\"\n (onClear)=\"_onClear()\"\n (onClearClick)=\"_onClear()\"\n (onFocus)=\"_onFocus()\"\n (onBlur)=\"_onBlur()\"\n attr.data-testid=\"{{ dataTestId }}\"\n>\n</p-calendar>\n<span *ngIf=\"!readOnly\" class=\"glyphicon glyphicon-calendar icono-input\"></span>\n<control-messages *ngIf=\"control != null\" [control]=\"control\" [field]=\"nombre\"></control-messages>\n", dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i6.Calendar, selector: "p-calendar", inputs: ["style", "styleClass", "inputStyle", "inputId", "name", "inputStyleClass", "placeholder", "ariaLabelledBy", "iconAriaLabel", "disabled", "dateFormat", "multipleSeparator", "rangeSeparator", "inline", "showOtherMonths", "selectOtherMonths", "showIcon", "icon", "appendTo", "readonlyInput", "shortYearCutoff", "monthNavigator", "yearNavigator", "hourFormat", "timeOnly", "stepHour", "stepMinute", "stepSecond", "showSeconds", "required", "showOnFocus", "showWeek", "showClear", "dataType", "selectionMode", "maxDateCount", "showButtonBar", "todayButtonStyleClass", "clearButtonStyleClass", "autoZIndex", "baseZIndex", "panelStyleClass", "panelStyle", "keepInvalid", "hideOnDateTimeSelect", "touchUI", "timeSeparator", "focusTrap", "showTransitionOptions", "hideTransitionOptions", "tabindex", "view", "defaultDate", "minDate", "maxDate", "disabledDates", "disabledDays", "yearRange", "showTime", "responsiveOptions", "numberOfMonths", "firstDayOfWeek", "locale"], outputs: ["onFocus", "onBlur", "onClose", "onSelect", "onClear", "onInput", "onTodayClick", "onClearClick", "onMonthChange", "onYearChange", "onClickOutside", "onShow"] }, { kind: "component", type: i7.BitControlMessages, selector: "control-messages", inputs: ["control", "field"] }, { kind: "pipe", type: i4.DatePipe, name: "date" }] });
|
|
50
50
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.8", ngImport: i0, type: BitDateComponent, decorators: [{
|
|
51
51
|
type: Component,
|
|
52
52
|
args: [{ selector: "bit-date", providers: [{
|
|
53
53
|
provide: NG_VALUE_ACCESSOR,
|
|
54
54
|
useExisting: forwardRef(() => BitDateComponent),
|
|
55
55
|
multi: true
|
|
56
|
-
}], template: "<label *ngIf=\"!hideLabel\">\n <ng-content></ng-content> <span *ngIf=\"obligatorio\" class=\"obligatorio fa fa-asterisk\"></span> \n <i *ngIf=\"ayuda\" class=\"btn-ayuda fa fa-question\" (click)=\"showAyuda()\"></i>\n</label>\n<p *ngIf=\"readOnly\" class=\"lectura\" [id]=\"nombre\">{{ value_lectura | date: \"dd/MM/YYYY\" }}</p>\n<p-calendar\n *ngIf=\"!readOnly\"\n class=\"FormControl\"\n id=\"{{ nombre }}\"\n name=\"{{ nombre }}\"\n [disabled]=\"isDisabled\"\n [(ngModel)]=\"value\"\n dateFormat=\"dd/mm/yy\"\n placeholder=\"dd/mm/yyyy\"\n [monthNavigator]=\"true\"\n [readonlyInput]=\"calendarReadOnlyInput\"\n [minDate]=\"fechaMinima\"\n [maxDate]=\"fechaMaxima\"\n [yearNavigator]=\"true\"\n yearRange=\"2000:2050\"\n [firstDayOfWeek]=\"1\"\n [locale]=\"locale\"\n [showButtonBar]=\"showButtonBar\"\n (onSelect)=\"_onSelect(value)\"\n (onClear)=\"_onClear()\"\n (onClearClick)=\"_onClear()\"\n (onFocus)=\"_onFocus()\"\n (onBlur)=\"_onBlur()\"\n attr.data-testid=\"{{ dataTestId }}\"\n>\n</p-calendar>\n<span *ngIf=\"!readOnly\" class=\"glyphicon glyphicon-calendar icono-input\"></span>\n<control-messages *ngIf=\"control != null\" [control]=\"control\" [field]=\"nombre\"></control-messages>\n" }]
|
|
56
|
+
}], template: "<label *ngIf=\"!hideLabel\">\n <ng-content></ng-content> <span *ngIf=\"obligatorio\" class=\"obligatorio fa fa-asterisk\"></span> \n <i *ngIf=\"ayuda\" class=\"btn-ayuda fa fa-question\" (click)=\"showAyuda()\"></i>\n</label>\n<p *ngIf=\"readOnly\" class=\"lectura\" [id]=\"nombre\">{{ value_lectura | date: \"dd/MM/YYYY\" }}</p>\n<p-calendar\n *ngIf=\"!readOnly\"\n class=\"FormControl\"\n id=\"{{ nombre }}\"\n name=\"{{ nombre }}\"\n [disabled]=\"isDisabled\"\n [(ngModel)]=\"value\"\n dateFormat=\"dd/mm/yy\"\n placeholder=\"dd/mm/yyyy\"\n [monthNavigator]=\"true\"\n [readonlyInput]=\"calendarReadOnlyInput\"\n [minDate]=\"fechaMinima\"\n [maxDate]=\"fechaMaxima\"\n [yearNavigator]=\"true\"\n yearRange=\"2000:2050\"\n [firstDayOfWeek]=\"1\"\n [locale]=\"locale\"\n [showButtonBar]=\"showButtonBar\"\n [appendTo]=\"appendTo\"\n (onSelect)=\"_onSelect(value)\"\n (onClear)=\"_onClear()\"\n (onClearClick)=\"_onClear()\"\n (onFocus)=\"_onFocus()\"\n (onBlur)=\"_onBlur()\"\n attr.data-testid=\"{{ dataTestId }}\"\n>\n</p-calendar>\n<span *ngIf=\"!readOnly\" class=\"glyphicon glyphicon-calendar icono-input\"></span>\n<control-messages *ngIf=\"control != null\" [control]=\"control\" [field]=\"nombre\"></control-messages>\n" }]
|
|
57
57
|
}], ctorParameters: function () { return [{ type: i1.AyudaService }, { type: i2.TranslateService }, { type: i3.DateUtils }]; } });
|
|
58
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
58
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYml0LWRhdGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYml0LW5nLWxpYnJhcnkvc3JjL2xpYi9zaGFyZWRsaWJyYXJ5L2NvbXBvbmVudHMvZm9ybS9kYXRlL2JpdC1kYXRlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2JpdC1uZy1saWJyYXJ5L3NyYy9saWIvc2hhcmVkbGlicmFyeS9jb21wb25lbnRzL2Zvcm0vZGF0ZS9iaXQtZGF0ZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN0RCxPQUFPLEVBQXdCLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHekUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBRWpFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDOzs7Ozs7Ozs7QUFXMUUsTUFBTSxPQUFPLGdCQUFpQixTQUFRLG9CQUFvQjtJQUV4RCxZQUFzQixZQUEwQixFQUFZLGdCQUFrQyxFQUFZLFNBQW9CO1FBQzVILEtBQUssQ0FBQyxZQUFZLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQztRQURsQixpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUFZLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFBWSxjQUFTLEdBQVQsU0FBUyxDQUFXO0lBRTlILENBQUM7SUFFRCxJQUFJLGFBQWE7UUFDZixJQUFJLElBQUksQ0FBQyxLQUFLLElBQUksSUFBSSxFQUFFO1lBQ3RCLE9BQU8sRUFBRSxDQUFDO1NBQ1gsQ0FBQyx3REFBd0Q7YUFDckQ7WUFDSCxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLGlCQUFpQixDQUFDLENBQUM7U0FDNUc7SUFDSCxDQUFDO0lBRUQsVUFBVSxDQUFDLENBQVM7UUFDbEIsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxFQUFFO1lBQ2xCLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDO1NBQ25CO2FBQU07WUFDTCxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsZUFBZSxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsaUJBQWlCLENBQUMsQ0FBQztTQUN6RztJQUNILENBQUM7SUFFRCxZQUFZO1FBQ1YsSUFBSSxDQUFDLEdBQVcsSUFBSSxDQUFDO1FBQ3JCLElBQUksSUFBSSxDQUFDLEtBQUssRUFBRTtZQUNkLENBQUMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1NBQ3pHO1FBQ0QsSUFBSSxDQUFDLG9CQUFvQixDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQy9CLENBQUM7OzZHQTdCVSxnQkFBZ0I7aUdBQWhCLGdCQUFnQixtQ0FOaEIsQ0FBQztZQUNWLE9BQU8sRUFBRSxpQkFBaUI7WUFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQztZQUMvQyxLQUFLLEVBQUUsSUFBSTtTQUNaLENBQUMsaURDZkosd3ZDQWtDQTsyRkRqQmEsZ0JBQWdCO2tCQVQ1QixTQUFTOytCQUNFLFVBQVUsYUFFVCxDQUFDOzRCQUNWLE9BQU8sRUFBRSxpQkFBaUI7NEJBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLGlCQUFpQixDQUFDOzRCQUMvQyxLQUFLLEVBQUUsSUFBSTt5QkFDWixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBmb3J3YXJkUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tIFwiQGFuZ3VsYXIvZm9ybXNcIjtcblxuaW1wb3J0IHsgQXl1ZGFTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvYXl1ZGEuc2VydmljZSc7XG5pbXBvcnQgeyBEYXRlVXRpbHMgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9kYXRlLXV0aWxzLnNlcnZpY2UnO1xuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL3RyYW5zbGF0ZS5zZXJ2aWNlJztcbmltcG9ydCB7IEJpdENhbGVuZGFyQ29tcG9uZW50IH0gZnJvbSAnLi4vY2FsZW5kYXIvYml0LWNhbGVuZGFyLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogXCJiaXQtZGF0ZVwiLFxuICB0ZW1wbGF0ZVVybDogXCJiaXQtZGF0ZS5jb21wb25lbnQuaHRtbFwiLFxuICBwcm92aWRlcnM6IFt7XG4gICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gQml0RGF0ZUNvbXBvbmVudCksXG4gICAgbXVsdGk6IHRydWVcbiAgfV1cbn0pXG5leHBvcnQgY2xhc3MgQml0RGF0ZUNvbXBvbmVudCBleHRlbmRzIEJpdENhbGVuZGFyQ29tcG9uZW50IGltcGxlbWVudHMgQ29udHJvbFZhbHVlQWNjZXNzb3Ige1xuXG4gIGNvbnN0cnVjdG9yKHByb3RlY3RlZCBheXVkYVNlcnZpY2U6IEF5dWRhU2VydmljZSwgcHJvdGVjdGVkIHRyYW5zbGF0ZVNlcnZpY2U6IFRyYW5zbGF0ZVNlcnZpY2UsIHByb3RlY3RlZCBkYXRlVXRpbHM6IERhdGVVdGlscykge1xuICAgIHN1cGVyKGF5dWRhU2VydmljZSwgdHJhbnNsYXRlU2VydmljZSk7XG4gIH1cblxuICBnZXQgdmFsdWVfbGVjdHVyYSgpOiBzdHJpbmcge1xuICAgIGlmICh0aGlzLnZhbHVlID09IG51bGwpIHtcbiAgICAgIHJldHVybiBcIlwiO1xuICAgIH0gLy8gc2kgZXMgbnVsbCBvIHVuZGVmaW5lZCAoZXMgbG8gcXVlIGV2YWzDumEgZWwgXCI9PW51bGxcIilcbiAgICBlbHNlIHtcbiAgICAgIHJldHVybiB0aGlzLmRhdGVVdGlscy5nZXREYXRlQXNTdHJpbmcodGhpcy52YWx1ZSwgdGhpcy5mb3JtYXQgPyB0aGlzLmZvcm1hdCA6IERhdGVVdGlscy5GT1JNQVRfU0hPUlRfREFURSk7XG4gICAgfVxuICB9XG5cbiAgd3JpdGVWYWx1ZSh2OiBzdHJpbmcpOiB2b2lkIHtcbiAgICBpZiAoIXYgfHwgdiA9PT0gXCJcIikge1xuICAgICAgdGhpcy52YWx1ZSA9IG51bGw7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMudmFsdWUgPSB0aGlzLmRhdGVVdGlscy5nZXRTdHJpbmdBc0RhdGUodiwgdGhpcy5mb3JtYXQgPyB0aGlzLmZvcm1hdCA6IERhdGVVdGlscy5GT1JNQVRfU0hPUlRfREFURSk7XG4gICAgfVxuICB9XG5cbiAgZW1pdE5ld1ZhbHVlKCkge1xuICAgIGxldCB2OiBzdHJpbmcgPSBudWxsO1xuICAgIGlmICh0aGlzLnZhbHVlKSB7XG4gICAgICB2ID0gdGhpcy5kYXRlVXRpbHMuZ2V0RGF0ZUFzU3RyaW5nKHRoaXMudmFsdWUsIHRoaXMuZm9ybWF0ID8gdGhpcy5mb3JtYXQgOiBEYXRlVXRpbHMuRk9STUFUX1NIT1JUX0RBVEUpO1xuICAgIH1cbiAgICB0aGlzLmNoYW5nZUNvbXBvbmVudFZhbHVlKHYpO1xuICB9XG5cbn1cbiIsIjxsYWJlbCAqbmdJZj1cIiFoaWRlTGFiZWxcIj5cbiAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PiZuYnNwOzxzcGFuICpuZ0lmPVwib2JsaWdhdG9yaW9cIiBjbGFzcz1cIm9ibGlnYXRvcmlvIGZhIGZhLWFzdGVyaXNrXCI+PC9zcGFuPiZuYnNwOyZuYnNwO1xuICA8aSAqbmdJZj1cImF5dWRhXCIgY2xhc3M9XCJidG4tYXl1ZGEgZmEgZmEtcXVlc3Rpb25cIiAoY2xpY2spPVwic2hvd0F5dWRhKClcIj48L2k+XG48L2xhYmVsPlxuPHAgKm5nSWY9XCJyZWFkT25seVwiIGNsYXNzPVwibGVjdHVyYVwiIFtpZF09XCJub21icmVcIj57eyB2YWx1ZV9sZWN0dXJhIHwgZGF0ZTogXCJkZC9NTS9ZWVlZXCIgfX08L3A+XG48cC1jYWxlbmRhclxuICAqbmdJZj1cIiFyZWFkT25seVwiXG4gIGNsYXNzPVwiRm9ybUNvbnRyb2xcIlxuICBpZD1cInt7IG5vbWJyZSB9fVwiXG4gIG5hbWU9XCJ7eyBub21icmUgfX1cIlxuICBbZGlzYWJsZWRdPVwiaXNEaXNhYmxlZFwiXG4gIFsobmdNb2RlbCldPVwidmFsdWVcIlxuICBkYXRlRm9ybWF0PVwiZGQvbW0veXlcIlxuICBwbGFjZWhvbGRlcj1cImRkL21tL3l5eXlcIlxuICBbbW9udGhOYXZpZ2F0b3JdPVwidHJ1ZVwiXG4gIFtyZWFkb25seUlucHV0XT1cImNhbGVuZGFyUmVhZE9ubHlJbnB1dFwiXG4gIFttaW5EYXRlXT1cImZlY2hhTWluaW1hXCJcbiAgW21heERhdGVdPVwiZmVjaGFNYXhpbWFcIlxuICBbeWVhck5hdmlnYXRvcl09XCJ0cnVlXCJcbiAgeWVhclJhbmdlPVwiMjAwMDoyMDUwXCJcbiAgW2ZpcnN0RGF5T2ZXZWVrXT1cIjFcIlxuICBbbG9jYWxlXT1cImxvY2FsZVwiXG4gIFtzaG93QnV0dG9uQmFyXT1cInNob3dCdXR0b25CYXJcIlxuICBbYXBwZW5kVG9dPVwiYXBwZW5kVG9cIlxuICAob25TZWxlY3QpPVwiX29uU2VsZWN0KHZhbHVlKVwiXG4gIChvbkNsZWFyKT1cIl9vbkNsZWFyKClcIlxuICAob25DbGVhckNsaWNrKT1cIl9vbkNsZWFyKClcIlxuICAob25Gb2N1cyk9XCJfb25Gb2N1cygpXCJcbiAgKG9uQmx1cik9XCJfb25CbHVyKClcIlxuICBhdHRyLmRhdGEtdGVzdGlkPVwie3sgZGF0YVRlc3RJZCB9fVwiXG4+XG48L3AtY2FsZW5kYXI+XG48c3BhbiAqbmdJZj1cIiFyZWFkT25seVwiIGNsYXNzPVwiZ2x5cGhpY29uIGdseXBoaWNvbi1jYWxlbmRhciBpY29uby1pbnB1dFwiPjwvc3Bhbj5cbjxjb250cm9sLW1lc3NhZ2VzICpuZ0lmPVwiY29udHJvbCAhPSBudWxsXCIgW2NvbnRyb2xdPVwiY29udHJvbFwiIFtmaWVsZF09XCJub21icmVcIj48L2NvbnRyb2wtbWVzc2FnZXM+XG4iXX0=
|
|
@@ -46,13 +46,13 @@ BitDateTimeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", v
|
|
|
46
46
|
provide: NG_VALUE_ACCESSOR,
|
|
47
47
|
useExisting: forwardRef(() => BitDateTimeComponent),
|
|
48
48
|
multi: true
|
|
49
|
-
}], usesInheritance: true, ngImport: i0, template: "<label *ngIf=\"!hideLabel\">\n <ng-content></ng-content> <span *ngIf=\"obligatorio\" class=\"obligatorio fa fa-asterisk\"></span> \n <i *ngIf=\"ayuda\" class=\"btn-ayuda fa fa-question\" (click)=\"showAyuda()\"></i>\n</label>\n<p *ngIf=\"readOnly\" class=\"lectura\" [id]=\"nombre\">{{ value_lectura | date: \"dd/MM/YYYY HH:mm\" }}</p>\n<p-calendar\n *ngIf=\"!readOnly\"\n class=\"FormControl\"\n id=\"{{ nombre }}\"\n name=\"{{ nombre }}\"\n [disabled]=\"isDisabled\"\n [(ngModel)]=\"value\"\n dateFormat=\"dd/mm/yy\"\n placeholder=\"dd/mm/yyyy hh:mm\"\n [monthNavigator]=\"true\"\n [minDate]=\"fechaMinima\"\n [maxDate]=\"fechaMaxima\"\n [yearNavigator]=\"true\"\n yearRange=\"2000:2050\"\n [locale]=\"locale\"\n [showTime]=\"true\"\n [firstDayOfWeek]=\"1\"\n [showButtonBar]=\"showButtonBar\"\n (onSelect)=\"_onSelect(value)\"\n (onClear)=\"_onClear()\"\n (onClearClick)=\"_onClear()\"\n (onFocus)=\"_onFocus()\"\n (onBlur)=\"_onBlur()\"\n attr.data-testid=\"{{ dataTestId }}\"\n>\n</p-calendar>\n<span *ngIf=\"!readOnly\" class=\"glyphicon glyphicon-calendar icono-input\"></span>\n<control-messages *ngIf=\"control != null\" [control]=\"control\" [field]=\"nombre\"></control-messages>\n", dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i6.Calendar, selector: "p-calendar", inputs: ["style", "styleClass", "inputStyle", "inputId", "name", "inputStyleClass", "placeholder", "ariaLabelledBy", "iconAriaLabel", "disabled", "dateFormat", "multipleSeparator", "rangeSeparator", "inline", "showOtherMonths", "selectOtherMonths", "showIcon", "icon", "appendTo", "readonlyInput", "shortYearCutoff", "monthNavigator", "yearNavigator", "hourFormat", "timeOnly", "stepHour", "stepMinute", "stepSecond", "showSeconds", "required", "showOnFocus", "showWeek", "showClear", "dataType", "selectionMode", "maxDateCount", "showButtonBar", "todayButtonStyleClass", "clearButtonStyleClass", "autoZIndex", "baseZIndex", "panelStyleClass", "panelStyle", "keepInvalid", "hideOnDateTimeSelect", "touchUI", "timeSeparator", "focusTrap", "showTransitionOptions", "hideTransitionOptions", "tabindex", "view", "defaultDate", "minDate", "maxDate", "disabledDates", "disabledDays", "yearRange", "showTime", "responsiveOptions", "numberOfMonths", "firstDayOfWeek", "locale"], outputs: ["onFocus", "onBlur", "onClose", "onSelect", "onClear", "onInput", "onTodayClick", "onClearClick", "onMonthChange", "onYearChange", "onClickOutside", "onShow"] }, { kind: "component", type: i7.BitControlMessages, selector: "control-messages", inputs: ["control", "field"] }, { kind: "pipe", type: i4.DatePipe, name: "date" }] });
|
|
49
|
+
}], usesInheritance: true, ngImport: i0, template: "<label *ngIf=\"!hideLabel\">\n <ng-content></ng-content> <span *ngIf=\"obligatorio\" class=\"obligatorio fa fa-asterisk\"></span> \n <i *ngIf=\"ayuda\" class=\"btn-ayuda fa fa-question\" (click)=\"showAyuda()\"></i>\n</label>\n<p *ngIf=\"readOnly\" class=\"lectura\" [id]=\"nombre\">{{ value_lectura | date: \"dd/MM/YYYY HH:mm\" }}</p>\n<p-calendar\n *ngIf=\"!readOnly\"\n class=\"FormControl\"\n id=\"{{ nombre }}\"\n name=\"{{ nombre }}\"\n [disabled]=\"isDisabled\"\n [(ngModel)]=\"value\"\n dateFormat=\"dd/mm/yy\"\n placeholder=\"dd/mm/yyyy hh:mm\"\n [monthNavigator]=\"true\"\n [minDate]=\"fechaMinima\"\n [maxDate]=\"fechaMaxima\"\n [yearNavigator]=\"true\"\n yearRange=\"2000:2050\"\n [locale]=\"locale\"\n [showTime]=\"true\"\n [firstDayOfWeek]=\"1\"\n [showButtonBar]=\"showButtonBar\"\n [appendTo]=\"appendTo\"\n (onSelect)=\"_onSelect(value)\"\n (onClear)=\"_onClear()\"\n (onClearClick)=\"_onClear()\"\n (onFocus)=\"_onFocus()\"\n (onBlur)=\"_onBlur()\"\n attr.data-testid=\"{{ dataTestId }}\"\n>\n</p-calendar>\n<span *ngIf=\"!readOnly\" class=\"glyphicon glyphicon-calendar icono-input\"></span>\n<control-messages *ngIf=\"control != null\" [control]=\"control\" [field]=\"nombre\"></control-messages>\n", dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i6.Calendar, selector: "p-calendar", inputs: ["style", "styleClass", "inputStyle", "inputId", "name", "inputStyleClass", "placeholder", "ariaLabelledBy", "iconAriaLabel", "disabled", "dateFormat", "multipleSeparator", "rangeSeparator", "inline", "showOtherMonths", "selectOtherMonths", "showIcon", "icon", "appendTo", "readonlyInput", "shortYearCutoff", "monthNavigator", "yearNavigator", "hourFormat", "timeOnly", "stepHour", "stepMinute", "stepSecond", "showSeconds", "required", "showOnFocus", "showWeek", "showClear", "dataType", "selectionMode", "maxDateCount", "showButtonBar", "todayButtonStyleClass", "clearButtonStyleClass", "autoZIndex", "baseZIndex", "panelStyleClass", "panelStyle", "keepInvalid", "hideOnDateTimeSelect", "touchUI", "timeSeparator", "focusTrap", "showTransitionOptions", "hideTransitionOptions", "tabindex", "view", "defaultDate", "minDate", "maxDate", "disabledDates", "disabledDays", "yearRange", "showTime", "responsiveOptions", "numberOfMonths", "firstDayOfWeek", "locale"], outputs: ["onFocus", "onBlur", "onClose", "onSelect", "onClear", "onInput", "onTodayClick", "onClearClick", "onMonthChange", "onYearChange", "onClickOutside", "onShow"] }, { kind: "component", type: i7.BitControlMessages, selector: "control-messages", inputs: ["control", "field"] }, { kind: "pipe", type: i4.DatePipe, name: "date" }] });
|
|
50
50
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.8", ngImport: i0, type: BitDateTimeComponent, decorators: [{
|
|
51
51
|
type: Component,
|
|
52
52
|
args: [{ selector: "bit-datetime", providers: [{
|
|
53
53
|
provide: NG_VALUE_ACCESSOR,
|
|
54
54
|
useExisting: forwardRef(() => BitDateTimeComponent),
|
|
55
55
|
multi: true
|
|
56
|
-
}], template: "<label *ngIf=\"!hideLabel\">\n <ng-content></ng-content> <span *ngIf=\"obligatorio\" class=\"obligatorio fa fa-asterisk\"></span> \n <i *ngIf=\"ayuda\" class=\"btn-ayuda fa fa-question\" (click)=\"showAyuda()\"></i>\n</label>\n<p *ngIf=\"readOnly\" class=\"lectura\" [id]=\"nombre\">{{ value_lectura | date: \"dd/MM/YYYY HH:mm\" }}</p>\n<p-calendar\n *ngIf=\"!readOnly\"\n class=\"FormControl\"\n id=\"{{ nombre }}\"\n name=\"{{ nombre }}\"\n [disabled]=\"isDisabled\"\n [(ngModel)]=\"value\"\n dateFormat=\"dd/mm/yy\"\n placeholder=\"dd/mm/yyyy hh:mm\"\n [monthNavigator]=\"true\"\n [minDate]=\"fechaMinima\"\n [maxDate]=\"fechaMaxima\"\n [yearNavigator]=\"true\"\n yearRange=\"2000:2050\"\n [locale]=\"locale\"\n [showTime]=\"true\"\n [firstDayOfWeek]=\"1\"\n [showButtonBar]=\"showButtonBar\"\n (onSelect)=\"_onSelect(value)\"\n (onClear)=\"_onClear()\"\n (onClearClick)=\"_onClear()\"\n (onFocus)=\"_onFocus()\"\n (onBlur)=\"_onBlur()\"\n attr.data-testid=\"{{ dataTestId }}\"\n>\n</p-calendar>\n<span *ngIf=\"!readOnly\" class=\"glyphicon glyphicon-calendar icono-input\"></span>\n<control-messages *ngIf=\"control != null\" [control]=\"control\" [field]=\"nombre\"></control-messages>\n" }]
|
|
56
|
+
}], template: "<label *ngIf=\"!hideLabel\">\n <ng-content></ng-content> <span *ngIf=\"obligatorio\" class=\"obligatorio fa fa-asterisk\"></span> \n <i *ngIf=\"ayuda\" class=\"btn-ayuda fa fa-question\" (click)=\"showAyuda()\"></i>\n</label>\n<p *ngIf=\"readOnly\" class=\"lectura\" [id]=\"nombre\">{{ value_lectura | date: \"dd/MM/YYYY HH:mm\" }}</p>\n<p-calendar\n *ngIf=\"!readOnly\"\n class=\"FormControl\"\n id=\"{{ nombre }}\"\n name=\"{{ nombre }}\"\n [disabled]=\"isDisabled\"\n [(ngModel)]=\"value\"\n dateFormat=\"dd/mm/yy\"\n placeholder=\"dd/mm/yyyy hh:mm\"\n [monthNavigator]=\"true\"\n [minDate]=\"fechaMinima\"\n [maxDate]=\"fechaMaxima\"\n [yearNavigator]=\"true\"\n yearRange=\"2000:2050\"\n [locale]=\"locale\"\n [showTime]=\"true\"\n [firstDayOfWeek]=\"1\"\n [showButtonBar]=\"showButtonBar\"\n [appendTo]=\"appendTo\"\n (onSelect)=\"_onSelect(value)\"\n (onClear)=\"_onClear()\"\n (onClearClick)=\"_onClear()\"\n (onFocus)=\"_onFocus()\"\n (onBlur)=\"_onBlur()\"\n attr.data-testid=\"{{ dataTestId }}\"\n>\n</p-calendar>\n<span *ngIf=\"!readOnly\" class=\"glyphicon glyphicon-calendar icono-input\"></span>\n<control-messages *ngIf=\"control != null\" [control]=\"control\" [field]=\"nombre\"></control-messages>\n" }]
|
|
57
57
|
}], ctorParameters: function () { return [{ type: i1.AyudaService }, { type: i2.TranslateService }, { type: i3.DateUtils }]; } });
|
|
58
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
58
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYml0LWRhdGV0aW1lLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2JpdC1uZy1saWJyYXJ5L3NyYy9saWIvc2hhcmVkbGlicmFyeS9jb21wb25lbnRzL2Zvcm0vZGF0ZXRpbWUvYml0LWRhdGV0aW1lLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2JpdC1uZy1saWJyYXJ5L3NyYy9saWIvc2hhcmVkbGlicmFyeS9jb21wb25lbnRzL2Zvcm0vZGF0ZXRpbWUvYml0LWRhdGV0aW1lLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQzlELE9BQU8sRUFBd0IsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUV6RSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFHakUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7Ozs7Ozs7OztBQVkxRSxNQUFNLE9BQU8sb0JBQXFCLFNBQVEsb0JBQW9CO0lBRTVELFlBQXNCLFlBQTBCLEVBQVksZ0JBQWtDLEVBQVksU0FBb0I7UUFDNUgsS0FBSyxDQUFDLFlBQVksRUFBRSxnQkFBZ0IsQ0FBQyxDQUFDO1FBRGxCLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBQVkscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUFZLGNBQVMsR0FBVCxTQUFTLENBQVc7SUFFOUgsQ0FBQztJQUVELElBQUksYUFBYTtRQUNmLElBQUksSUFBSSxDQUFDLEtBQUssSUFBSSxJQUFJLEVBQUU7WUFDdEIsT0FBTyxFQUFFLENBQUM7U0FDWCxDQUFDLHdEQUF3RDthQUNyRDtZQUNILE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1NBQy9HO0lBQ0gsQ0FBQztJQUVELFVBQVUsQ0FBQyxDQUFTO1FBQ2xCLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsRUFBRTtZQUNsQixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQztTQUNuQjthQUFNO1lBQ0wsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLGVBQWUsQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLGdCQUFnQixDQUFDLENBQUM7U0FDeEc7SUFDSCxDQUFDO0lBRUQsWUFBWTtRQUNWLElBQUksQ0FBQyxHQUFXLElBQUksQ0FBQztRQUNyQixJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUU7WUFDZCxDQUFDLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1NBQzVHO1FBQ0QsSUFBSSxDQUFDLG9CQUFvQixDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQy9CLENBQUM7O2lIQTdCVSxvQkFBb0I7cUdBQXBCLG9CQUFvQix1Q0FOcEIsQ0FBQztZQUNWLE9BQU8sRUFBRSxpQkFBaUI7WUFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxvQkFBb0IsQ0FBQztZQUNuRCxLQUFLLEVBQUUsSUFBSTtTQUNaLENBQUMsaURDaEJKLDh1Q0FrQ0E7MkZEaEJhLG9CQUFvQjtrQkFUaEMsU0FBUzsrQkFDRSxjQUFjLGFBRWIsQ0FBQzs0QkFDVixPQUFPLEVBQUUsaUJBQWlCOzRCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxxQkFBcUIsQ0FBQzs0QkFDbkQsS0FBSyxFQUFFLElBQUk7eUJBQ1osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgZm9yd2FyZFJlZiwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tIFwiQGFuZ3VsYXIvZm9ybXNcIjtcbmltcG9ydCB7IEF5dWRhU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2F5dWRhLnNlcnZpY2UnO1xuaW1wb3J0IHsgRGF0ZVV0aWxzIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvZGF0ZS11dGlscy5zZXJ2aWNlJztcbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy90cmFuc2xhdGUuc2VydmljZSc7XG5cbmltcG9ydCB7IEJpdENhbGVuZGFyQ29tcG9uZW50IH0gZnJvbSBcIi4uL2NhbGVuZGFyL2JpdC1jYWxlbmRhci5jb21wb25lbnRcIjtcblxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6IFwiYml0LWRhdGV0aW1lXCIsXG4gIHRlbXBsYXRlVXJsOiBcImJpdC1kYXRldGltZS5jb21wb25lbnQuaHRtbFwiLFxuICBwcm92aWRlcnM6IFt7XG4gICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gQml0RGF0ZVRpbWVDb21wb25lbnQpLFxuICAgIG11bHRpOiB0cnVlXG4gIH1dXG59KVxuZXhwb3J0IGNsYXNzIEJpdERhdGVUaW1lQ29tcG9uZW50IGV4dGVuZHMgQml0Q2FsZW5kYXJDb21wb25lbnQgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciB7XG5cbiAgY29uc3RydWN0b3IocHJvdGVjdGVkIGF5dWRhU2VydmljZTogQXl1ZGFTZXJ2aWNlLCBwcm90ZWN0ZWQgdHJhbnNsYXRlU2VydmljZTogVHJhbnNsYXRlU2VydmljZSwgcHJvdGVjdGVkIGRhdGVVdGlsczogRGF0ZVV0aWxzKSB7XG4gICAgc3VwZXIoYXl1ZGFTZXJ2aWNlLCB0cmFuc2xhdGVTZXJ2aWNlKTtcbiAgfVxuXG4gIGdldCB2YWx1ZV9sZWN0dXJhKCk6IHN0cmluZyB7XG4gICAgaWYgKHRoaXMudmFsdWUgPT0gbnVsbCkge1xuICAgICAgcmV0dXJuIFwiXCI7XG4gICAgfSAvLyBzaSBlcyBudWxsIG8gdW5kZWZpbmVkIChlcyBsbyBxdWUgZXZhbMO6YSBlbCBcIj09bnVsbFwiKVxuICAgIGVsc2Uge1xuICAgICAgcmV0dXJuIHRoaXMuZGF0ZVV0aWxzLmdldERhdGVUaW1lQXNTdHJpbmcodGhpcy52YWx1ZSwgdGhpcy5mb3JtYXQgPyB0aGlzLmZvcm1hdCA6IERhdGVVdGlscy5GT1JNQVRfTE9OR19EQVRFKTtcbiAgICB9XG4gIH1cblxuICB3cml0ZVZhbHVlKHY6IHN0cmluZyk6IHZvaWQge1xuICAgIGlmICghdiB8fCB2ID09PSBcIlwiKSB7XG4gICAgICB0aGlzLnZhbHVlID0gbnVsbDtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy52YWx1ZSA9IHRoaXMuZGF0ZVV0aWxzLmdldFN0cmluZ0FzRGF0ZSh2LCB0aGlzLmZvcm1hdCA/IHRoaXMuZm9ybWF0IDogRGF0ZVV0aWxzLkZPUk1BVF9MT05HX0RBVEUpO1xuICAgIH1cbiAgfVxuXG4gIGVtaXROZXdWYWx1ZSgpIHtcbiAgICBsZXQgdjogc3RyaW5nID0gbnVsbDtcbiAgICBpZiAodGhpcy52YWx1ZSkge1xuICAgICAgdiA9IHRoaXMuZGF0ZVV0aWxzLmdldERhdGVUaW1lQXNTdHJpbmcodGhpcy52YWx1ZSwgdGhpcy5mb3JtYXQgPyB0aGlzLmZvcm1hdCA6IERhdGVVdGlscy5GT1JNQVRfTE9OR19EQVRFKTtcbiAgICB9XG4gICAgdGhpcy5jaGFuZ2VDb21wb25lbnRWYWx1ZSh2KTtcbiAgfVxuXG59XG4iLCI8bGFiZWwgKm5nSWY9XCIhaGlkZUxhYmVsXCI+XG4gIDxuZy1jb250ZW50PjwvbmctY29udGVudD4mbmJzcDs8c3BhbiAqbmdJZj1cIm9ibGlnYXRvcmlvXCIgY2xhc3M9XCJvYmxpZ2F0b3JpbyBmYSBmYS1hc3Rlcmlza1wiPjwvc3Bhbj4mbmJzcDsmbmJzcDtcbiAgPGkgKm5nSWY9XCJheXVkYVwiIGNsYXNzPVwiYnRuLWF5dWRhIGZhIGZhLXF1ZXN0aW9uXCIgKGNsaWNrKT1cInNob3dBeXVkYSgpXCI+PC9pPlxuPC9sYWJlbD5cbjxwICpuZ0lmPVwicmVhZE9ubHlcIiBjbGFzcz1cImxlY3R1cmFcIiBbaWRdPVwibm9tYnJlXCI+e3sgdmFsdWVfbGVjdHVyYSB8IGRhdGU6IFwiZGQvTU0vWVlZWSBISDptbVwiIH19PC9wPlxuPHAtY2FsZW5kYXJcbiAgKm5nSWY9XCIhcmVhZE9ubHlcIlxuICBjbGFzcz1cIkZvcm1Db250cm9sXCJcbiAgaWQ9XCJ7eyBub21icmUgfX1cIlxuICBuYW1lPVwie3sgbm9tYnJlIH19XCJcbiAgW2Rpc2FibGVkXT1cImlzRGlzYWJsZWRcIlxuICBbKG5nTW9kZWwpXT1cInZhbHVlXCJcbiAgZGF0ZUZvcm1hdD1cImRkL21tL3l5XCJcbiAgcGxhY2Vob2xkZXI9XCJkZC9tbS95eXl5IGhoOm1tXCJcbiAgW21vbnRoTmF2aWdhdG9yXT1cInRydWVcIlxuICBbbWluRGF0ZV09XCJmZWNoYU1pbmltYVwiXG4gIFttYXhEYXRlXT1cImZlY2hhTWF4aW1hXCJcbiAgW3llYXJOYXZpZ2F0b3JdPVwidHJ1ZVwiXG4gIHllYXJSYW5nZT1cIjIwMDA6MjA1MFwiXG4gIFtsb2NhbGVdPVwibG9jYWxlXCJcbiAgW3Nob3dUaW1lXT1cInRydWVcIlxuICBbZmlyc3REYXlPZldlZWtdPVwiMVwiXG4gIFtzaG93QnV0dG9uQmFyXT1cInNob3dCdXR0b25CYXJcIlxuICBbYXBwZW5kVG9dPVwiYXBwZW5kVG9cIlxuICAob25TZWxlY3QpPVwiX29uU2VsZWN0KHZhbHVlKVwiXG4gIChvbkNsZWFyKT1cIl9vbkNsZWFyKClcIlxuICAob25DbGVhckNsaWNrKT1cIl9vbkNsZWFyKClcIlxuICAob25Gb2N1cyk9XCJfb25Gb2N1cygpXCJcbiAgKG9uQmx1cik9XCJfb25CbHVyKClcIlxuICBhdHRyLmRhdGEtdGVzdGlkPVwie3sgZGF0YVRlc3RJZCB9fVwiXG4+XG48L3AtY2FsZW5kYXI+XG48c3BhbiAqbmdJZj1cIiFyZWFkT25seVwiIGNsYXNzPVwiZ2x5cGhpY29uIGdseXBoaWNvbi1jYWxlbmRhciBpY29uby1pbnB1dFwiPjwvc3Bhbj5cbjxjb250cm9sLW1lc3NhZ2VzICpuZ0lmPVwiY29udHJvbCAhPSBudWxsXCIgW2NvbnRyb2xdPVwiY29udHJvbFwiIFtmaWVsZF09XCJub21icmVcIj48L2NvbnRyb2wtbWVzc2FnZXM+XG4iXX0=
|