bit-ng-library 13.1.1 → 13.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +4 -0
- package/esm2020/lib/sharedlibrary/components/footer/bit-footer.component.mjs +18 -8
- package/fesm2015/bit-ng-library.mjs +18 -8
- package/fesm2015/bit-ng-library.mjs.map +1 -1
- package/fesm2020/bit-ng-library.mjs +17 -7
- package/fesm2020/bit-ng-library.mjs.map +1 -1
- package/lib/sharedlibrary/components/footer/bit-footer.component.d.ts +1 -0
- package/lib/sharedlibrary/components/footer/bit-footer.component.d.ts.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -26,6 +26,10 @@ 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
|
+
## [13.1.2] - 2022-05-09
|
|
30
|
+
|
|
31
|
+
Corregido bug de bug en bit-footer al volver de un formulario a la lista, momento en que desaparecía el footer. (la solución completa del bug requiere de cambios en base-list-filter.component.ts de los proyectos)
|
|
32
|
+
|
|
29
33
|
## [13.1.1] - 2022-02-22
|
|
30
34
|
|
|
31
35
|
Corregido bug de CustomValidators cuando se usaba en forms con diversos campos de longitud limitada. Se mostraba siempre el mismo mensaje para todos, aunque se especificase un validador con longitud diferente en cada campo.
|
|
@@ -80,7 +80,9 @@ export class BitFooterComponent {
|
|
|
80
80
|
if (propName === "totalItems") {
|
|
81
81
|
this.totalItems = changedProp.currentValue;
|
|
82
82
|
console.log(`new totalItems ${this.totalItems}`);
|
|
83
|
-
changedProp.previousValue !== changedProp.currentValue
|
|
83
|
+
if (changedProp.previousValue !== changedProp.currentValue) {
|
|
84
|
+
this.calculatePageLinkSize(); //recalculamos
|
|
85
|
+
}
|
|
84
86
|
this.maxCurrentItems = this.filter ? this.filter.pagina * this.filter.resultados : -1;
|
|
85
87
|
}
|
|
86
88
|
else if (propName === "filter") {
|
|
@@ -89,7 +91,12 @@ export class BitFooterComponent {
|
|
|
89
91
|
this.maxCurrentItems = this.filter?.pagina * this.filter?.resultados;
|
|
90
92
|
}
|
|
91
93
|
console.log(`new filter ${this.filter?.pagina} - ${this.maxCurrentItems}`);
|
|
92
|
-
changedProp.previousValue !== changedProp.currentValue
|
|
94
|
+
if (changedProp.previousValue !== changedProp.currentValue) {
|
|
95
|
+
this.calculatePageLinkSize(); //recalculamos
|
|
96
|
+
if (!this.filter?.pagina || this.filter.pagina <= 1) {
|
|
97
|
+
this.goToFirstPage();
|
|
98
|
+
}
|
|
99
|
+
}
|
|
93
100
|
}
|
|
94
101
|
}
|
|
95
102
|
if (this.pc && this.changeRef) {
|
|
@@ -117,11 +124,7 @@ export class BitFooterComponent {
|
|
|
117
124
|
//notificamos que los elementos por página han cambiado
|
|
118
125
|
this.onNewPageSize.emit(event.rows);
|
|
119
126
|
this.itemsPerPage = event.rows;
|
|
120
|
-
|
|
121
|
-
//volvemos a la primera página
|
|
122
|
-
this.pc._first = 1;
|
|
123
|
-
this.pc.updatePageLinks();
|
|
124
|
-
}
|
|
127
|
+
this.goToFirstPage();
|
|
125
128
|
this.calculatePageLinkSize(); // recalculamos el número de enlaces de página
|
|
126
129
|
}
|
|
127
130
|
else {
|
|
@@ -129,6 +132,13 @@ export class BitFooterComponent {
|
|
|
129
132
|
this.onPageChange.emit(event.page + 1);
|
|
130
133
|
}
|
|
131
134
|
}
|
|
135
|
+
goToFirstPage() {
|
|
136
|
+
if (this.pc) {
|
|
137
|
+
//volvemos a la primera página
|
|
138
|
+
this.pc._first = 1;
|
|
139
|
+
this.pc.updatePageLinks();
|
|
140
|
+
}
|
|
141
|
+
}
|
|
132
142
|
getStyle() {
|
|
133
143
|
if (this.fixed && this.typeFooter === BitFooterComponent.TYPE_LIST || this.typeFooter === BitFooterComponent.TYPE_SCROLL) {
|
|
134
144
|
if (this.totalItems > 0) {
|
|
@@ -251,4 +261,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImpor
|
|
|
251
261
|
}], onNewPageSize: [{
|
|
252
262
|
type: Output
|
|
253
263
|
}] } });
|
|
254
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYml0LWZvb3Rlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iaXQtbmctbGlicmFyeS9zcmMvbGliL3NoYXJlZGxpYnJhcnkvY29tcG9uZW50cy9mb290ZXIvYml0LWZvb3Rlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iaXQtbmctbGlicmFyeS9zcmMvbGliL3NoYXJlZGxpYnJhcnkvY29tcG9uZW50cy9mb290ZXIvYml0LWZvb3Rlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBRXZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUdMLE1BQU0sRUFFTixTQUFTLEVBQ1YsTUFBTSxlQUFlLENBQUM7QUFHdkIsT0FBTyxFQUFFLG9CQUFvQixFQUFFLFVBQVUsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ3BGLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7Ozs7OztBQUlwRDs7SUFFSTtBQU1KLE1BQU0sT0FBTyxrQkFBa0I7SUF5QzdCLFlBQW9CLGdCQUFrQyxFQUNsQyxTQUE0QjtRQUQ1QixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBQ2xDLGNBQVMsR0FBVCxTQUFTLENBQW1CO1FBekJoRCxrQkFBYSxHQUFZLElBQUksQ0FBQztRQUU5QixVQUFLLEdBQVksSUFBSSxDQUFDLENBQUMsbUVBQW1FO1FBUTFGLDBCQUFxQixHQUFZLElBQUksQ0FBQztRQUV0QywrQkFBMEIsR0FBWSxJQUFJLENBQUM7UUFFM0MsaUJBQVksR0FBRyxJQUFJLFlBQVksRUFBVSxDQUFDLENBQUMsK0NBQStDO1FBRTFGLGtCQUFhLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQyxDQUFDLDhEQUE4RDtRQUUxRyxxQkFBZ0IsR0FBVyxVQUFVLENBQUMsZUFBZSxDQUFD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QURwQixLQUFLO2dCQUdOLDBCQUEwQjtzQkFEekIsS0FBSztnQkFHTixZQUFZO3NCQURYLE1BQU07Z0JBR1AsYUFBYTtzQkFEWixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcclxuICBDaGFuZ2VEZXRlY3RvclJlZixcclxuICBDb21wb25lbnQsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIElucHV0LFxyXG4gIE9uQ2hhbmdlcyxcclxuICBPbkluaXQsXHJcbiAgT3V0cHV0LFxyXG4gIFNpbXBsZUNoYW5nZSxcclxuICBWaWV3Q2hpbGRcclxufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQge1BhZ2luYXRvcn0gZnJvbSBcInByaW1lbmcvcGFnaW5hdG9yXCI7XHJcbmltcG9ydCB7T2JzZXJ2YWJsZX0gZnJvbSBcInJ4anNcIjtcclxuaW1wb3J0IHsgQkFTRV9SRVNVTFRBRE9TX1BBR0UsIEJhc2VGaWx0ZXIgfSBmcm9tICcuLi8uLi8uLi9iYXNlL3NoYXJlZC9iYXNlLmZpbHRlcic7XHJcbmltcG9ydCB7IFBhZ2VTdGF0dXMgfSBmcm9tICcuLi8uLi9nbG9iYWwuY29uc3RhbnRzJztcclxuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzJztcclxuXHJcblxyXG4vKipcclxuICogQ29tcG9uZW50ZSBxdWUgbXVlc3RyYSB1biBwYWdpbmFkb3IgZW4gbGEgc2VjY2nDs24gZm9vdGVyLlxyXG4gKiovXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiBcImJpdC1mb290ZXJcIixcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICB0ZW1wbGF0ZVVybDogXCJiaXQtZm9vdGVyLmNvbXBvbmVudC5odG1sXCJcclxufSlcclxuZXhwb3J0IGNsYXNzIEJpdEZvb3RlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzIHtcclxuICBwdWJsaWMgc3RhdGljIFRZUEVfTElTVDogc3RyaW5nID0gXCJsaXN0XCI7XHJcbiAgcHVibGljIHN0YXRpYyBUWVBFX1NDUk9MTDogc3RyaW5nID0gXCJzY3JvbGxcIjtcclxuICBwdWJsaWMgc3RhdGljIFRZUEVfRk9STTogc3RyaW5nID0gXCJmb3JtXCI7XHJcbiAgcHVibGljIHN0YXRpYyBUWVBFX0JMQU5LOiBzdHJpbmcgPSBcImJsYW5rXCI7XHJcblxyXG4gIHB1YmxpYyBzdGF0aWMgTU9SRV9SRVNVTFRTID0gLTE7XHJcblxyXG4gIEBWaWV3Q2hpbGQoXCJwY1wiKVxyXG4gIHBjOiBQYWdpbmF0b3I7XHJcbiAgQElucHV0KClcclxuICB0b3RhbEl0ZW1zOiBudW1iZXI7ICAgICAvLyBOw7ptZXJvIHRvdGFsIGRlIGVsZW1lbnRvcyByZWN1cGVyYWRvcyBkZSBsYSBjb25zdWx0YVxyXG4gIEBJbnB1dCgpXHJcbiAgZmlsdGVyOiBCYXNlRmlsdGVyO1xyXG4gIEBJbnB1dCgpXHJcbiAgcGFnaW5hdG9yOiBib29sZWFuO1xyXG4gIEBJbnB1dCgpXHJcbiAgbW9zdHJhckF2aXNvczogYm9vbGVhbiA9IHRydWU7XHJcbiAgQElucHV0KClcclxuICBmaXhlZDogYm9vbGVhbiA9IHRydWU7IC8vIEluZGljYXLDoSBzaSBsbyBxdWVyZW1vcyBmaWpvIGFiYWpvIGVuIGxhIHDDoWdpbmEuIFBvciBkZWZlY3RvIHPDrS5cclxuICBASW5wdXQoKVxyXG4gIG1lc3NhZ2VzOiBNYXA8UGFnZVN0YXR1cywgc3RyaW5nPjtcclxuICBASW5wdXQoKVxyXG4gIHN0YXR1czogUGFnZVN0YXR1czsgLy8gRGV0ZXJtaW5hIGVuIHF1w6kgZXN0YWRvIGVzdMOhIGxhIHDDoWdpbmE6IFBhZ2VTdGF0dXMuSW5pdCwgUGFnZVN0YXR1cy5TRUFSQ0hJTkcsIFBhZ2VTdGF0dXMuRklOSVNIX1NFQVJDSFxyXG4gIEBJbnB1dChcInR5cGVcIilcclxuICB0eXBlRm9vdGVyOiBzdHJpbmc7XHJcbiAgQElucHV0KClcclxuICBtb3N0cmFyRW5sYWNlc1BhZ2luYXM6IGJvb2xlYW4gPSB0cnVlO1xyXG4gIEBJbnB1dCgpXHJcbiAgbW9zdHJhclByaW1lcmFVbHRpbWFQYWdpbmE6IGJvb2xlYW4gPSB0cnVlO1xyXG4gIEBPdXRwdXQoKVxyXG4gIG9uUGFnZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8bnVtYmVyPigpOyAvL3BhcmEgbm90aWZpY2FyIGNhbWJpb3MgZW4gbGEgcMOhZ2luYSBhIG1vc3RyYXJcclxuICBAT3V0cHV0KClcclxuICBvbk5ld1BhZ2VTaXplID0gbmV3IEV2ZW50RW1pdHRlcjxudW1iZXI+KCk7IC8vcGFyYSBub3RpZmljYXIgY2FtYmlvcyBlbiBsb3MgZWxlbWVudG9zIGEgbW9zdHJhciBwb3IgcMOhZ2luYVxyXG5cclxuICBiYXNlSXRlbXNQZXJQYWdlOiBudW1iZXIgPSBCYXNlRmlsdGVyLlJFU1VMVEFET1NfUEFHRTsgLy8gZ3VhcmRhbW9zIGVsIG7Dum1lcm8gZGUgcmVzdWx0YWRvcyBwcmUtY29uZmlndXJhZG9zIHBvciBww6FnaW5hIHBhcmEgbW9zdHJhciBsYSBsaXN0YSBkZSB4LCB4KzEwIHkgeCsyMFxyXG4gIHBhZ2VMaW5rU2l6ZTogbnVtYmVyOyAvLyBuw7ptZXJvIGRlIGVubGFjZXMgZW4gZWwgcGFnaW5hZG9yIHBhcmEgcG9kZXIgbmF2ZWdhciBoYWNpYSBkZWxhbnRlIG8gZGV0csOhc1xyXG4gIGl0ZW1zUGVyUGFnZTogbnVtYmVyID0gQmFzZUZpbHRlci5SRVNVTFRBRE9TX1BBR0U7IC8vIG7Dum1lcm8gZGUgZWxlbWVudG9zIHBvciBww6FnaW5hIHF1ZSBtb3N0cmFtb3NcclxuXHJcbiAgbWF4Q3VycmVudEl0ZW1zOiBudW1iZXIgPSAtMTtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSB0cmFuc2xhdGVTZXJ2aWNlOiBUcmFuc2xhdGVTZXJ2aWNlLFxyXG4gICAgICAgICAgICAgIHByaXZhdGUgY2hhbmdlUmVmOiBDaGFuZ2VEZXRlY3RvclJlZikge1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy50eXBlRm9vdGVyID09IHVuZGVmaW5lZCkge1xyXG4gICAgICB0aGlzLnR5cGVGb290ZXIgPSBcImxpc3RcIjtcclxuICAgIH1cclxuICAgIGlmICh0aGlzLnBhZ2luYXRvciA9PSB1bmRlZmluZWQpIHtcclxuICAgICAgdGhpcy5wYWdpbmF0b3IgPSBmYWxzZTtcclxuICAgIH1cclxuICAgIC8vbWVuc2FqZXMgcG9yIGRlZmVjdG8gc2kgbm8gdmllbmVuIGRlZmluaWRvc1xyXG4gICAgaWYgKHRoaXMubWVzc2FnZXMgPT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgIHRoaXMuc2V0TWVzc2FnZXMoKTtcclxuICAgICAgdGhpcy5tZXNzYWdlcy5zZXQoUGFnZVN0YXR1cy5FcnJvciwgXCJiaXRuZ2xpYnJhcnkuZm9vdGVyLmVycm9yXCIpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBzZXRNZXNzYWdlcygpIHtcclxuICAgIGNvbnNvbGUubG9nKFwiZGVmaW5pbW9zIGxvcyBtZW5zYWplcyBkZWwgZm9vdGVyIGRlIG1hbmVyYSBlc3TDoW5kYXJcIik7XHJcbiAgICB0aGlzLm1lc3NhZ2VzID0gbmV3IE1hcDxQYWdlU3RhdHVzLCBzdHJpbmc+KCk7XHJcbiAgICBpZiAodGhpcy5pc0Zvb3Rlckxpc3QoKSB8fCB0aGlzLmlzRm9vdGVyU2Nyb2xsKCkpIHtcclxuICAgICAgdGhpcy5tZXNzYWdlcy5zZXQoUGFnZVN0YXR1cy5Jbml0LCBcImJpdG5nbGlicmFyeS5mb290ZXIubGlzdC5pbml0XCIpO1xyXG4gICAgICB0aGlzLm1lc3NhZ2VzLnNldChQYWdlU3RhdHVzLlNlYXJjaGluZywgXCJiaXRuZ2xpYnJhcnkuZm9vdGVyLmxpc3Quc2VhcmNoaW5nXCIpO1xyXG4gICAgICB0aGlzLm1lc3NhZ2VzLnNldChQYWdlU3RhdHVzLkVtcHR5UmVzdWx0LCBcImJpdG5nbGlicmFyeS5mb290ZXIubGlzdC5lbXB0eXJlc3VsdFwiKTtcclxuICAgICAgdGhpcy5tZXNzYWdlcy5zZXQoUGFnZVN0YXR1cy5GaW5pc2hTZWFyY2gsIFwiYml0bmdsaWJyYXJ5LmZvb3Rlci5saXN0LmZpbmlzaHNlYXJjaFwiKTtcclxuICAgICAgdGhpcy5tZXNzYWdlcy5zZXQoQml0Rm9vdGVyQ29tcG9uZW50Lk1PUkVfUkVTVUxUUywgXCJiaXRuZ2xpYnJhcnkuZm9vdGVyLmxpc3QubW9yZXJlc3VsdHNcIilcclxuICAgIH0gZWxzZSBpZiAodGhpcy5pc0Zvb3RlckZvcm0oKSkge1xyXG4gICAgICB0aGlzLm1lc3NhZ2VzLnNldChQYWdlU3RhdHVzLkluaXQsIFwiYml0bmdsaWJyYXJ5LmZvb3Rlci5mb3JtLmluaXRcIik7XHJcbiAgICAgIHRoaXMubWVzc2FnZXMuc2V0KFBhZ2VTdGF0dXMuU2VhcmNoaW5nLCBcImJpdG5nbGlicmFyeS5mb290ZXIuZm9ybS5zZWFyY2hpbmdcIik7XHJcbiAgICAgIHRoaXMubWVzc2FnZXMuc2V0KFBhZ2VTdGF0dXMuRmluaXNoU2VhcmNoLCBcImJpdG5nbGlicmFyeS5mb290ZXIuZm9ybS5maW5pc2hzZWFyY2hcIik7XHJcbiAgICAgIHRoaXMubWVzc2FnZXMuc2V0KFBhZ2VTdGF0dXMuUmVhZE9ubHksIFwiYml0bmdsaWJyYXJ5LmZvb3Rlci5saXN0LnJlYWRvbmx5XCIpO1xyXG4gICAgfSBlbHNlIGlmICh0aGlzLnR5cGVGb290ZXIgPT09IEJpdEZvb3RlckNvbXBvbmVudC5UWVBFX0JMQU5LKSB7XHJcbiAgICAgIGNvbnNvbGUubG9nKFwidGhlIGZvb3RlciBpcyBCTEFOSyFcIik7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBDdWFuZG8gdGVuZ2Ftb3MgbGEgcmVmZXJlbmNpYSBhbCBjb21wb25lbnRlIHBhZ2luYXRvciBhY3R1YWxpemFtb3MgaW50ZXJuYW1lbnRlIGVsIG7Dum1lcm8gZGUgcMOhZ2luYSB5IGVsIG7Dum1lcm8gZGUgcMOhZ2luYXNcclxuICAgKiBkZWwgZGVzcGxlZ2FibGUgY29uIGxhIGluZm9ybWFjacOzbiBkZWwgZmlsdHJvIHByb3BvcmNpb25hZG9cclxuICAgKi9cclxuICBuZ0FmdGVyVmlld0luaXQoKSB7XHJcbiAgICBpZiAodGhpcy5wYykge1xyXG4gICAgICB0aGlzLml0ZW1zUGVyUGFnZSA9IHRoaXMuZmlsdGVyLnJlc3VsdGFkb3M7XHJcbiAgICAgIGNvbnNvbGUubG9nKGB0aGlzLmZpbHRlci5yZXN1bHRhZG9zICR7dGhpcy5maWx0ZXIucmVzdWx0YWRvc31gKTtcclxuICAgICAgY29uc29sZS5sb2coYHRoaXMuZmlsdGVyLnBhZ2luYSAke3RoaXMuZmlsdGVyLnBhZ2luYX1gKTtcclxuICAgICAgdGhpcy5wYy5yb3dzID0gdGhpcy5maWx0ZXIucmVzdWx0YWRvcztcclxuICAgICAgdGhpcy5wYy5fZmlyc3QgPSAodGhpcy5maWx0ZXIucGFnaW5hIC0gMSkgKiB0aGlzLnBjLnJvd3M7XHJcbiAgICAgIHRoaXMucGMudXBkYXRlUGFnZUxpbmtzKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBFc2N1Y2hhcmVtb3MgYSBjYW1iaW9zIGVuIGxhcyBwcm9waWVkYWRlcyB0b3RhbEl0ZW1zIHBhcmEgYWN0dWFsaXphciBlbCBwYWdpbmFkb3IgY29uIHJlc3BlY3RvIGEgbGFzIHDDoWdpbmFzIHF1ZSBtb3N0cmFtb3NcclxuICAgKi9cclxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiB7IFtwcm9wS2V5OiBzdHJpbmddOiBTaW1wbGVDaGFuZ2UgfSkge1xyXG4gICAgZm9yIChsZXQgcHJvcE5hbWUgaW4gY2hhbmdlcykge1xyXG4gICAgICBsZXQgY2hhbmdlZFByb3AgPSBjaGFuZ2VzW3Byb3BOYW1lXTtcclxuICAgICAgaWYgKHByb3BOYW1lID09PSBcInRvdGFsSXRlbXNcIikge1xyXG4gICAgICAgIHRoaXMudG90YWxJdGVtcyA9IGNoYW5nZWRQcm9wLmN1cnJlbnRWYWx1ZTtcclxuICAgICAgICBjb25zb2xlLmxvZyhgbmV3IHRvdGFsSXRlbXMgJHt0aGlzLnRvdGFsSXRlbXN9YCk7XHJcbiAgICAgICAgY2hhbmdlZFByb3AucHJldmlvdXNWYWx1ZSAhPT0gY2hhbmdlZFByb3AuY3VycmVudFZhbHVlID8gdGhpcy5jYWxjdWxhdGVQYWdlTGlua1NpemUoKSA6IHVuZGVmaW5lZDsgLy9yZWNhbGN1bGFtb3NcclxuICAgICAgICB0aGlzLm1heEN1cnJlbnRJdGVtcyA9IHRoaXMuZmlsdGVyID8gdGhpcy5maWx0ZXIucGFnaW5hICogdGhpcy5maWx0ZXIucmVzdWx0YWRvcyA6IC0xO1xyXG4gICAgICB9IGVsc2UgaWYgKHByb3BOYW1lID09PSBcImZpbHRlclwiKSB7XHJcbiAgICAgICAgdGhpcy5maWx0ZXIgPSBjaGFuZ2VkUHJvcC5jdXJyZW50VmFsdWU7XHJcbiAgICAgICAgaWYgKHRoaXMuZmlsdGVyPy5wYWdpbmEgKiB0aGlzLmZpbHRlcj8ucmVzdWx0YWRvcyA+IHRoaXMubWF4Q3VycmVudEl0ZW1zKSB7XHJcbiAgICAgICAgICB0aGlzLm1heEN1cnJlbnRJdGVtcyA9IHRoaXMuZmlsdGVyPy5wYWdpbmEgKiB0aGlzLmZpbHRlcj8ucmVzdWx0YWRvcztcclxuICAgICAgICB9XHJcbiAgICAgICAgY29uc29sZS5sb2coYG5ldyBmaWx0ZXIgJHt0aGlzLmZpbHRlcj8ucGFnaW5hfSAtICR7dGhpcy5tYXhDdXJyZW50SXRlbXN9YCk7XHJcbiAgICAgICAgY2hhbmdlZFByb3AucHJldmlvdXNWYWx1ZSAhPT0gY2hhbmdlZFByb3AuY3VycmVudFZhbHVlID8gdGhpcy5jYWxjdWxhdGVQYWdlTGlua1NpemUoKSA6IHVuZGVmaW5lZDsgLy9yZWNhbGN1bGFtb3NcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgaWYgKHRoaXMucGMgJiYgdGhpcy5jaGFuZ2VSZWYpIHtcclxuICAgICAgY29uc29sZS5sb2coJ3VwZGF0ZVBhZ2VMaW5rcycpO1xyXG4gICAgICB0aGlzLnBjLnVwZGF0ZVBhZ2VMaW5rcygpO1xyXG4gICAgICB0aGlzLmNoYW5nZVJlZi5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKiogQ2FsY3VsYSBlbCBuw7ptZXJvIGRlIGVubGFjZXMgdmlzaWJsZXMgZW4gZWwgcGFnaW5hZG9yIChlbiBlbCByYW5nbyBlbnRyZSAxIHkgQkFTRV9SRVNVTFRBRE9TX1BBR0UpLiAqL1xyXG4gIGNhbGN1bGF0ZVBhZ2VMaW5rU2l6ZSgpIHtcclxuICAgIGNvbnNvbGUubG9nKGBjYWxjdWxhdGVQYWdlTGlua1NpemUgdG90YWxJdGVtczogJHt0aGlzLnRvdGFsSXRlbXN9IGl0ZW1zUGVyUGFnZToke3RoaXMuaXRlbXNQZXJQYWdlfWApO1xyXG4gICAgdGhpcy5wYWdlTGlua1NpemUgPSBNYXRoLmNlaWwodGhpcy50b3RhbEl0ZW1zIC8gdGhpcy5pdGVtc1BlclBhZ2UpO1xyXG4gICAgaWYgKHRoaXMucGFnZUxpbmtTaXplIDwgMSkge1xyXG4gICAgICB0aGlzLnBhZ2VMaW5rU2l6ZSA9IDE7XHJcbiAgICB9XHJcbiAgICBpZiAodGhpcy5wYWdlTGlua1NpemUgPiBCQVNFX1JFU1VMVEFET1NfUEFHRSkge1xyXG4gICAgICB0aGlzLnBhZ2VMaW5rU2l6ZSA9IEJBU0VfUkVTVUxUQURPU19QQUdFO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqIEVzdGFibGVjZSBlbCBuw7ptZXJvIGRlIHDDoWdpbmEgZW4gbGEgdmlzdWFsaXphY2nDs24gZGUgcmVzdWx0YWRvcy4gU2UgaW52b2NhIGN1YW5kbyBlbCB1c3VhcmlvIGNhbWJpYSBlbCBuw7ptZXJvIGRlIHJlc3VsdGFkb3MgYSBtb3N0cmFyIG8gY2FtYmlhIGRlIHDDoWdpbmEgKi9cclxuICBwYWdpbmF0ZShldmVudDogYW55KTogdm9pZCB7XHJcbiAgICBjb25zb2xlLmxvZyhcIlBhZ2UgY2hhbmdlZCB0b1wiLCBldmVudC5wYWdlKTtcclxuICAgIGlmIChldmVudC5yb3dzICE9PSB0aGlzLml0ZW1zUGVyUGFnZSkge1xyXG4gICAgICAvLyBoYW4gY2FtYmlhZG8gZWwgbsO6bWVybyBkZSBlbGVtZW50b3MgcG9yIHDDoWdpbmFcclxuICAgICAgLy9ub3RpZmljYW1vcyBxdWUgbG9zIGVsZW1lbnRvcyBwb3IgcMOhZ2luYSBoYW4gY2FtYmlhZG9cclxuICAgICAgdGhpcy5vbk5ld1BhZ2VTaXplLmVtaXQoZXZlbnQucm93cyk7XHJcbiAgICAgIHRoaXMuaXRlbXNQZXJQYWdlID0gZXZlbnQucm93cztcclxuICAgICAgaWYgKHRoaXMucGMpIHtcclxuICAgICAgICAvL3ZvbHZlbW9zIGEgbGEgcHJpbWVyYSBww6FnaW5hXHJcbiAgICAgICAgdGhpcy5wYy5fZmlyc3QgPSAxO1xyXG4gICAgICAgIHRoaXMucGMudXBkYXRlUGFnZUxpbmtzKCk7XHJcbiAgICAgIH1cclxuICAgICAgdGhpcy5jYWxjdWxhdGVQYWdlTGlua1NpemUoKTsgLy8gcmVjYWxjdWxhbW9zIGVsIG7Dum1lcm8gZGUgZW5sYWNlcyBkZSBww6FnaW5hXHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICAvLyBub3RpZmljYW1vcyBhIG51ZXN0cm8gcGFww6EgcXVlIGxhIHDDoWdpbmEgaGEgY2FtYmlhZG9cclxuICAgICAgdGhpcy5vblBhZ2VDaGFuZ2UuZW1pdChldmVudC5wYWdlICsgMSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBnZXRTdHlsZSgpIHtcclxuICAgIGlmICh0aGlzLmZpeGVkICYmIHRoaXMudHlwZUZvb3RlciA9PT0gQml0Rm9vdGVyQ29tcG9uZW50LlRZUEVfTElTVCB8fCB0aGlzLnR5cGVGb290ZXIgPT09IEJpdEZvb3RlckNvbXBvbmVudC5UWVBFX1NDUk9MTCkge1xyXG4gICAgICBpZiAodGhpcy50b3RhbEl0ZW1zID4gMCkge1xyXG4gICAgICAgIHJldHVybiBcImZvb3RlciBuYXZiYXItZml4ZWQtYm90dG9tXCI7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgcmV0dXJuIFwiZm9vdGVyIG5hdmJhci1maXhlZC1ib3R0b20tNjBcIjtcclxuICAgICAgfVxyXG4gICAgfSBlbHNlIGlmICh0aGlzLmZpeGVkICYmIHRoaXMudHlwZUZvb3RlciA9PT0gQml0Rm9vdGVyQ29tcG9uZW50LlRZUEVfRk9STSkge1xyXG4gICAgICByZXR1cm4gXCJmb290ZXIgbmF2YmFyLWZpeGVkLWJvdHRvbS1mb3JtXCI7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXR1cm4gXCJmb290ZXJcIjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGlzRm9vdGVyTGlzdCgpIHtcclxuICAgIHJldHVybiB0aGlzLnR5cGVGb290ZXIgPT09IEJpdEZvb3RlckNvbXBvbmVudC5UWVBFX0xJU1Q7XHJcbiAgfVxyXG5cclxuICBpc0Zvb3RlclNjcm9sbCgpIHtcclxuICAgIHJldHVybiB0aGlzLnR5cGVGb290ZXIgPT09IEJpdEZvb3RlckNvbXBvbmVudC5UWVBFX1NDUk9MTDtcclxuICB9XHJcblxyXG4gIGlzRm9vdGVyRm9ybSgpIHtcclxuICAgIHJldHVybiB0aGlzLnR5cGVGb290ZXIgPT09IEJpdEZvb3RlckNvbXBvbmVudC5UWVBFX0ZPUk07XHJcbiAgfVxyXG5cclxuICAvKiogRmxhZzogbGEgcMOhZ2luYSBlc3TDoSByZWFsaXphbmRvIGxhIGLDunNxdWVkYS4gKi9cclxuICBnZXQgc2VhcmNoSW5pdGlhdGVkKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuc3RhdHVzID09PSBQYWdlU3RhdHVzLkluaXQgfHwgdGhpcy5zdGF0dXMgPT0gUGFnZVN0YXR1cy5SZXNldCB8fCAhdGhpcy5zdGF0dXM7XHJcbiAgfVxyXG5cclxuICAvKiogRmxhZzogbGEgcMOhZ2luYSBlc3TDoSByZWFsaXphbmRvIGxhIGLDunNxdWVkYS4gKi9cclxuICBnZXQgc2VhcmNoaW5nKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuc3RhdHVzID09PSBQYWdlU3RhdHVzLlNlYXJjaGluZztcclxuICB9XHJcblxyXG4gIC8qKiBGbGFnOiBsYSBww6FnaW5hIGhhIGZpbmFsaXphZG8gbGEgw7psdGltYSBiw7pzcXVlZGEuICovXHJcbiAgZ2V0IHNlYXJjaEZpbmlzaGVkKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuc3RhdHVzID09PSBQYWdlU3RhdHVzLkZpbmlzaFNlYXJjaDtcclxuICB9XHJcblxyXG4gIC8qKiBGbGFnOiBsYSBww6FnaW5hIGVzdMOhIGVuIG1vZG8gc29sbyBsZWN0dXJhICovXHJcbiAgZ2V0IHJlYWRPbmx5KCkge1xyXG4gICAgcmV0dXJuIHRoaXMuc3RhdHVzID09IFBhZ2VTdGF0dXMuUmVhZE9ubHk7XHJcbiAgfVxyXG5cclxuICAvKiogRmxhZzogbGEgcMOhZ2luYSBoYSBmaW5hbGl6YWRvIGNvbiBlcnJvciAqL1xyXG4gIGdldCBlcnJvcigpIHtcclxuICAgIHJldHVybiB0aGlzLnN0YXR1cyA9PSBQYWdlU3RhdHVzLkVycm9yO1xyXG4gIH1cclxuXHJcbiAgLyoqIEZsYWc6IGVuY29udHJhZG8gcmVzdWx0YWRvLiAqL1xyXG4gIGdldCBmb3VuZFJlc3VsdCgpIHtcclxuICAgIHJldHVybiAoXHJcbiAgICAgIHRoaXMuc3RhdHVzID09PSBQYWdlU3RhdHVzLkZpbmlzaFNlYXJjaCAmJlxyXG4gICAgICAoKHRoaXMudHlwZUZvb3RlciA9PT0gQml0Rm9vdGVyQ29tcG9uZW50LlRZUEVfTElTVCAmJiB0aGlzLnRvdGFsSXRlbXMgPiAwKVxyXG4gICAgICAgIHx8IHRoaXMudHlwZUZvb3RlciA9PT0gQml0Rm9vdGVyQ29tcG9uZW50LlRZUEVfRk9STVxyXG4gICAgICAgIHx8ICh0aGlzLnR5cGVGb290ZXIgPT09IEJpdEZvb3RlckNvbXBvbmVudC5UWVBFX1NDUk9MTCAmJiB0aGlzLnRvdGFsSXRlbXMgPD0gdGhpcy5tYXhDdXJyZW50SXRlbXMpKVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIC8qKiBGbGFnOiBoYXkgbcOhcyByZXN1bHRhZG9zIChzY3JvbGwpLiAqL1xyXG4gIGdldCBtb3JlUmVzdWx0cygpIHtcclxuICAgIHJldHVybiAoXHJcbiAgICAgIHRoaXMuc3RhdHVzID09PSBQYWdlU3RhdHVzLkZpbmlzaFNlYXJjaCAmJlxyXG4gICAgICAodGhpcy50eXBlRm9vdGVyID09PSBCaXRGb290ZXJDb21wb25lbnQuVFlQRV9TQ1JPTEwgJiYgdGhpcy50b3RhbEl0ZW1zID4gdGhpcy5tYXhDdXJyZW50SXRlbXMpXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgLyoqIEZsYWc6IG5vIGhheSByZXN1bHRhZG9zLiAqL1xyXG4gIGdldCBlbXB0eVJlc3VsdCgpIHtcclxuICAgIHJldHVybiB0aGlzLnN0YXR1cyA9PT0gUGFnZVN0YXR1cy5GaW5pc2hTZWFyY2ggJiYgdGhpcy50b3RhbEl0ZW1zID09PSAwO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGluaXRNZXNzYWdlKCk6IE9ic2VydmFibGU8c3RyaW5nPiB7XHJcbiAgICByZXR1cm4gdGhpcy50cmFuc2xhdGVTZXJ2aWNlLnNlbGVjdFRyYW5zbGF0ZSh0aGlzLm1lc3NhZ2VzLmdldChQYWdlU3RhdHVzLkluaXQpKTtcclxuICB9XHJcblxyXG4gIGdldCBzZWFyY2hpbmdNZXNzYWdlKCk6IE9ic2VydmFibGU8c3RyaW5nPiB7XHJcbiAgICByZXR1cm4gdGhpcy50cmFuc2xhdGVTZXJ2aWNlLnNlbGVjdFRyYW5zbGF0ZSh0aGlzLm1lc3NhZ2VzLmdldChQYWdlU3RhdHVzLlNlYXJjaGluZykpO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGZpbmlzaE1lc3NhZ2UoKTogT2JzZXJ2YWJsZTxzdHJpbmc+IHtcclxuICAgIHJldHVybiB0aGlzLnRyYW5zbGF0ZVNlcnZpY2Uuc2VsZWN0VHJhbnNsYXRlKHRoaXMubWVzc2FnZXMuZ2V0KFBhZ2VTdGF0dXMuRmluaXNoU2VhcmNoKSk7XHJcbiAgfVxyXG5cclxuICBnZXQgbW9yZVJlc3VsdHNNZXNzYWdlKCk6IE9ic2VydmFibGU8c3RyaW5nPiB7XHJcbiAgICByZXR1cm4gdGhpcy50cmFuc2xhdGVTZXJ2aWNlLnNlbGVjdFRyYW5zbGF0ZSh0aGlzLm1lc3NhZ2VzLmdldChCaXRGb290ZXJDb21wb25lbnQuTU9SRV9SRVNVTFRTKSk7XHJcbiAgfVxyXG5cclxuICBnZXQgZW1wdHlNZXNzYWdlKCk6IE9ic2VydmFibGU8c3RyaW5nPiB7XHJcbiAgICByZXR1cm4gdGhpcy50cmFuc2xhdGVTZXJ2aWNlLnNlbGVjdFRyYW5zbGF0ZSh0aGlzLm1lc3NhZ2VzLmdldChQYWdlU3RhdHVzLkVtcHR5UmVzdWx0KSk7XHJcbiAgfVxyXG5cclxuICBnZXQgcmVhZE9ubHlNZXNzYWdlKCk6IE9ic2VydmFibGU8c3RyaW5nPiB7XHJcbiAgICByZXR1cm4gdGhpcy50cmFuc2xhdGVTZXJ2aWNlLnNlbGVjdFRyYW5zbGF0ZSh0aGlzLm1lc3NhZ2VzLmdldChQYWdlU3RhdHVzLlJlYWRPbmx5KSk7XHJcbiAgfVxyXG5cclxuICBnZXQgZXJyb3JNZXNzYWdlKCk6IE9ic2VydmFibGU8c3RyaW5nPiB7XHJcbiAgICByZXR1cm4gdGhpcy50cmFuc2xhdGVTZXJ2aWNlLnNlbGVjdFRyYW5zbGF0ZSh0aGlzLm1lc3NhZ2VzLmdldChQYWdlU3RhdHVzLkVycm9yKSk7XHJcbiAgfVxyXG59XHJcbiIsIjxmb290ZXIgW2NsYXNzXT1cImdldFN0eWxlKClcIj5cclxuICA8ZGl2IGNsYXNzPVwiZ3JpZFwiPlxyXG4gICAgPGRpdiBjbGFzcz1cImNvbC0xMiBtZDpjb2wtMiBsZzpjb2wtMlwiICpuZ0lmPVwidHlwZUZvb3RlciA9PT0gJ2xpc3QnXCIgW2hpZGRlbl09XCIhdGhpcy5zdGF0dXMgfHwgZW1wdHlSZXN1bHRcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cIm51bWVyby1yZXN1bHRhZG9zXCI+XHJcbiAgICAgICAgPGxhYmVsPnt7XCJiaXRuZ2xpYnJhcnkuZm9vdGVyLnJlc3VsdHNcIiB8IHRyYW5zbG9jb319PC9sYWJlbD5cclxuICAgICAgICA8c3Bhbj57e3RvdGFsSXRlbXN9fTwvc3Bhbj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgY2xhc3M9XCJjb2wtMTIgbWQ6Y29sLTIgbGc6Y29sLTJcIiAqbmdJZj1cInR5cGVGb290ZXIgPT09ICdzY3JvbGwnXCIgW2hpZGRlbl09XCIhdGhpcy5zdGF0dXMgfHwgZW1wdHlSZXN1bHRcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cIm51bWVyby1yZXN1bHRhZG9zLXNjcm9sbFwiPlxyXG4gICAgICAgIDxsYWJlbD57e1wiYml0bmdsaWJyYXJ5LmZvb3Rlci5yZXN1bHRzXCIgfCB0cmFuc2xvY299fTwvbGFiZWw+XHJcbiAgICAgICAgPHNwYW4gKm5nSWY9XCJtYXhDdXJyZW50SXRlbXMgPj0gdG90YWxJdGVtc1wiPnt7dG90YWxJdGVtc319PC9zcGFuPlxyXG4gICAgICAgIDxzcGFuICpuZ0lmPVwibWF4Q3VycmVudEl0ZW1zIDwgdG90YWxJdGVtc1wiPnt7bWF4Q3VycmVudEl0ZW1zfX0gLyB7e3RvdGFsSXRlbXN9fTwvc3Bhbj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuXHJcbiAgICA8ZGl2IGNsYXNzPVwiY29sLTEyIG1kOmNvbC03IGxnOmNvbC03IHAtdGV4dC1jZW50ZXJcIiAqbmdJZj1cInR5cGVGb290ZXIgPT09ICdsaXN0J1wiXHJcbiAgICAgICAgIFtoaWRkZW5dPVwiIXRoaXMuc3RhdHVzIHx8IGVtcHR5UmVzdWx0XCI+XHJcbiAgICAgIDxwLXBhZ2luYXRvciAqbmdJZj1cInBhZ2luYXRvclwiICNwY1xyXG4gICAgICAgICAgICAgICAgICAgW3Jvd3NdPVwiaXRlbXNQZXJQYWdlXCJcclxuICAgICAgICAgICAgICAgICAgIFt0b3RhbFJlY29yZHNdPVwidG90YWxJdGVtc1wiXHJcbiAgICAgICAgICAgICAgICAgICBbcGFnZUxpbmtTaXplXT1cIm1vc3RyYXJFbmxhY2VzUGFnaW5hcyA/IHBhZ2VMaW5rU2l6ZSA6IDFcIlxyXG4gICAgICAgICAgICAgICAgICAgW3Jvd3NQZXJQYWdlT3B0aW9uc109XCJbYmFzZUl0ZW1zUGVyUGFnZSxiYXNlSXRlbXNQZXJQYWdlKjUsYmFzZUl0ZW1zUGVyUGFnZSoyNSxiYXNlSXRlbXNQZXJQYWdlKjUwXVwiXHJcbiAgICAgICAgICAgICAgICAgICBbc2hvd1BhZ2VMaW5rc109XCJ0cnVlXCJcclxuICAgICAgICAgICAgICAgICAgIFtzaG93SnVtcFRvUGFnZURyb3Bkb3duXT1cImZhbHNlXCJcclxuICAgICAgICAgICAgICAgICAgIFtzaG93Rmlyc3RMYXN0SWNvbl09XCJtb3N0cmFyUHJpbWVyYVVsdGltYVBhZ2luYSA/IHRydWUgOiBtYXhDdXJyZW50SXRlbXMgPj0gdG90YWxJdGVtc1wiXHJcbiAgICAgICAgICAgICAgICAgICAob25QYWdlQ2hhbmdlKT1cInBhZ2luYXRlKCRldmVudClcIj48L3AtcGFnaW5hdG9yPlxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2IGNsYXNzPVwiY29sLTEyIG1kOmNvbC0zIGxnOmNvbC0zXCI+XHJcbiAgICAgIDxkaXYgKm5nSWY9XCJzZWFyY2hJbml0aWF0ZWRcIlxyXG4gICAgICAgICAgIFtjbGFzc05hbWVdPVwidHlwZUZvb3RlciA9PT0gJ3Njcm9sbCcgPyAnbWVuc2FqZS1zY3JvbGwgbWVuc2FqZS1pbmZvJyA6ICdtZW5zYWplIG1lbnNhamUtaW5mbydcIj5cclxuICAgICAgICA8aSBjbGFzcz1cImZhIGZhLWluZm9cIj48L2k+XHJcbiAgICAgICAgPHNwYW4+e3tpbml0TWVzc2FnZSB8IGFzeW5jfX08L3NwYW4+XHJcbiAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgPGRpdiAqbmdJZj1cInNlYXJjaGluZ1wiXHJcbiAgICAgICAgICAgW2NsYXNzTmFtZV09XCJ0eXBlRm9vdGVyID09PSAnc2Nyb2xsJyA/ICdtZW5zYWplLXNjcm9sbCBtZW5zYWplLWluZm8nIDogJ21lbnNhamUgbWVuc2FqZS1pbmZvJ1wiPlxyXG4gICAgICAgIDxpIGNsYXNzPVwiZmEgZmEtaW5mb1wiPjwvaT5cclxuICAgICAgICA8c3Bhbj57e3NlYXJjaGluZ01lc3NhZ2UgfCBhc3luY319PC9zcGFuPlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDxkaXYgKm5nSWY9XCJyZWFkT25seVwiXHJcbiAgICAgICAgICAgW2NsYXNzTmFtZV09XCJ0eXBlRm9vdGVyID09PSAnc2Nyb2xsJyA/ICdtZW5zYWplLXNjcm9sbCBtZW5zYWplLWluZm8nIDogJ21lbnNhamUgbWVuc2FqZS1pbmZvJ1wiPlxyXG4gICAgICAgIDxpIGNsYXNzPVwiZmEgZmEtaW5mb1wiPjwvaT5cclxuICAgICAgICA8c3Bhbj57e3JlYWRPbmx5TWVzc2FnZSB8IGFzeW5jfX08L3NwYW4+XHJcbiAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgPGRpdiAqbmdJZj1cImZvdW5kUmVzdWx0XCJcclxuICAgICAgICAgICBbY2xhc3NOYW1lXT1cInR5cGVGb290ZXIgPT09ICdzY3JvbGwnID8gJ21lbnNhamUtc2Nyb2xsIG1lbnNhamUtaW5mbycgOiAnbWVuc2FqZSBtZW5zYWplLWluZm8nXCI+XHJcbiAgICAgICAgPGkgY2xhc3M9XCJmYSBmYS1pbmZvXCI+PC9pPlxyXG4gICAgICAgIDxzcGFuPnt7ZmluaXNoTWVzc2FnZSB8IGFzeW5jfX08L3NwYW4+XHJcbiAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgPGRpdiAqbmdJZj1cIm1vcmVSZXN1bHRzXCJcclxuICAgICAgICAgICBbY2xhc3NOYW1lXT1cInR5cGVGb290ZXIgPT09ICdzY3JvbGwnID8gJ21lbnNhamUtc2Nyb2xsIG1lbnNhamUtaW5mbycgOiAnbWVuc2FqZSBtZW5zYWplLWluZm8nXCI+XHJcbiAgICAgICAgPGkgY2xhc3M9XCJmYSBmYS1pbmZvXCI+PC9pPlxyXG4gICAgICAgIDxzcGFuPnt7bW9yZVJlc3VsdHNNZXNzYWdlIHwgYXN5bmN9fTwvc3Bhbj5cclxuICAgICAgPC9kaXY+XHJcblxyXG4gICAgICA8ZGl2ICpuZ0lmPVwiZW1wdHlSZXN1bHRcIlxyXG4gICAgICAgICAgIFtjbGFzc05hbWVdPVwidHlwZUZvb3RlciA9PT0gJ3Njcm9sbCcgPyAnbWVuc2FqZS1zY3JvbGwgbWVuc2FqZS1pbmZvJyA6ICdtZW5zYWplIG1lbnNhamUtaW5mbydcIj5cclxuICAgICAgICA8aSBjbGFzcz1cImZhIGZhLWV4Y2xhbWF0aW9uXCI+PC9pPlxyXG4gICAgICAgIDxzcGFuPnt7ZW1wdHlNZXNzYWdlIHwgYXN5bmN9fTwvc3Bhbj5cclxuICAgICAgPC9kaXY+XHJcblxyXG4gICAgICA8ZGl2ICpuZ0lmPVwiZXJyb3JcIlxyXG4gICAgICAgICAgIFtjbGFzc05hbWVdPVwidHlwZUZvb3RlciA9PT0gJ3Njcm9sbCcgPyAnbWVuc2FqZS1zY3JvbGwgbWVuc2FqZS1pbmZvJyA6ICdtZW5zYWplIG1lbnNhamUtaW5mbydcIj5cclxuICAgICAgICA8aSBjbGFzcz1cImZhIGZhLWV4Y2xhbWF0aW9uLXRyaWFuZ2xlXCI+PC9pPlxyXG4gICAgICAgIDxzcGFuPnt7ZXJyb3JNZXNzYWdlIHwgYXN5bmN9fTwvc3Bhbj5cclxuICAgICAgPC9kaXY+XHJcblxyXG4gICAgICA8Yml0LWhlbHA+PC9iaXQtaGVscD5cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG48L2Zvb3Rlcj5cclxuIl19
|
|
264
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYml0LWZvb3Rlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iaXQtbmctbGlicmFyeS9zcmMvbGliL3NoYXJlZGxpYnJhcnkvY29tcG9uZW50cy9mb290ZXIvYml0LWZvb3Rlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iaXQtbmctbGlicmFyeS9zcmMvbGliL3NoYXJlZGxpYnJhcnkvY29tcG9uZW50cy9mb290ZXIvYml0LWZvb3Rlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBRXZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUdMLE1BQU0sRUFFTixTQUFTLEVBQ1YsTUFBTSxlQUFlLENBQUM7QUFHdkIsT0FBTyxFQUFFLG9CQUFvQixFQUFFLFVBQVUsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ3BGLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7Ozs7OztBQUlwRDs7SUFFSTtBQU1KLE1BQU0sT0FBTyxrQkFBa0I7SUF5QzdCLFlBQW9CLGdCQUFrQyxFQUNsQyxTQUE0QjtRQUQ1QixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBQ2xDLGNBQVMsR0FBVCxTQUFTLENBQW1CO1FBekJoRCxrQkFBYSxHQUFZLElBQUksQ0FBQztRQUU5QixVQUFLLEdBQVksSUFBSSxDQUFDLENBQUMsbUVBQW1FO1FBUTFGLDBCQUFxQixHQUFZLElBQUksQ0FBQztRQUV0QywrQkFBMEIsR0FBWSxJQUFJLENBQUM7UUFFM0MsaUJBQVksR0FBRyxJQUFJLFlBQVksRUFBVSxDQUFDLENBQUMsK0NBQStDO1FBRTFGLGtCQUFhLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQyxDQUFDLDhEQUE4RDtRQUUxRyxxQkFBZ0IsR0FBVyxVQUFVLENBQUMsZUFBZSxDQUFD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QVM7c0JBRFIsS0FBSztnQkFHTixhQUFhO3NCQURaLEtBQUs7Z0JBR04sS0FBSztzQkFESixLQUFLO2dCQUdOLFFBQVE7c0JBRFAsS0FBSztnQkFHTixNQUFNO3NCQURMLEtBQUs7Z0JBR04sVUFBVTtzQkFEVCxLQUFLO3VCQUFDLE1BQU07Z0JBR2IscUJBQXFCO3NCQURwQixLQUFLO2dCQUdOLDBCQUEwQjtzQkFEekIsS0FBSztnQkFHTixZQUFZO3NCQURYLE1BQU07Z0JBR1AsYUFBYTtzQkFEWixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcclxuICBDaGFuZ2VEZXRlY3RvclJlZixcclxuICBDb21wb25lbnQsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIElucHV0LFxyXG4gIE9uQ2hhbmdlcyxcclxuICBPbkluaXQsXHJcbiAgT3V0cHV0LFxyXG4gIFNpbXBsZUNoYW5nZSxcclxuICBWaWV3Q2hpbGRcclxufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQge1BhZ2luYXRvcn0gZnJvbSBcInByaW1lbmcvcGFnaW5hdG9yXCI7XHJcbmltcG9ydCB7T2JzZXJ2YWJsZX0gZnJvbSBcInJ4anNcIjtcclxuaW1wb3J0IHsgQkFTRV9SRVNVTFRBRE9TX1BBR0UsIEJhc2VGaWx0ZXIgfSBmcm9tICcuLi8uLi8uLi9iYXNlL3NoYXJlZC9iYXNlLmZpbHRlcic7XHJcbmltcG9ydCB7IFBhZ2VTdGF0dXMgfSBmcm9tICcuLi8uLi9nbG9iYWwuY29uc3RhbnRzJztcclxuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzJztcclxuXHJcblxyXG4vKipcclxuICogQ29tcG9uZW50ZSBxdWUgbXVlc3RyYSB1biBwYWdpbmFkb3IgZW4gbGEgc2VjY2nDs24gZm9vdGVyLlxyXG4gKiovXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiBcImJpdC1mb290ZXJcIixcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICB0ZW1wbGF0ZVVybDogXCJiaXQtZm9vdGVyLmNvbXBvbmVudC5odG1sXCJcclxufSlcclxuZXhwb3J0IGNsYXNzIEJpdEZvb3RlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzIHtcclxuICBwdWJsaWMgc3RhdGljIFRZUEVfTElTVDogc3RyaW5nID0gXCJsaXN0XCI7XHJcbiAgcHVibGljIHN0YXRpYyBUWVBFX1NDUk9MTDogc3RyaW5nID0gXCJzY3JvbGxcIjtcclxuICBwdWJsaWMgc3RhdGljIFRZUEVfRk9STTogc3RyaW5nID0gXCJmb3JtXCI7XHJcbiAgcHVibGljIHN0YXRpYyBUWVBFX0JMQU5LOiBzdHJpbmcgPSBcImJsYW5rXCI7XHJcblxyXG4gIHB1YmxpYyBzdGF0aWMgTU9SRV9SRVNVTFRTID0gLTE7XHJcblxyXG4gIEBWaWV3Q2hpbGQoXCJwY1wiKVxyXG4gIHBjOiBQYWdpbmF0b3I7XHJcbiAgQElucHV0KClcclxuICB0b3RhbEl0ZW1zOiBudW1iZXI7ICAgICAvLyBOw7ptZXJvIHRvdGFsIGRlIGVsZW1lbnRvcyByZWN1cGVyYWRvcyBkZSBsYSBjb25zdWx0YVxyXG4gIEBJbnB1dCgpXHJcbiAgZmlsdGVyOiBCYXNlRmlsdGVyO1xyXG4gIEBJbnB1dCgpXHJcbiAgcGFnaW5hdG9yOiBib29sZWFuO1xyXG4gIEBJbnB1dCgpXHJcbiAgbW9zdHJhckF2aXNvczogYm9vbGVhbiA9IHRydWU7XHJcbiAgQElucHV0KClcclxuICBmaXhlZDogYm9vbGVhbiA9IHRydWU7IC8vIEluZGljYXLDoSBzaSBsbyBxdWVyZW1vcyBmaWpvIGFiYWpvIGVuIGxhIHDDoWdpbmEuIFBvciBkZWZlY3RvIHPDrS5cclxuICBASW5wdXQoKVxyXG4gIG1lc3NhZ2VzOiBNYXA8UGFnZVN0YXR1cywgc3RyaW5nPjtcclxuICBASW5wdXQoKVxyXG4gIHN0YXR1czogUGFnZVN0YXR1czsgLy8gRGV0ZXJtaW5hIGVuIHF1w6kgZXN0YWRvIGVzdMOhIGxhIHDDoWdpbmE6IFBhZ2VTdGF0dXMuSW5pdCwgUGFnZVN0YXR1cy5TRUFSQ0hJTkcsIFBhZ2VTdGF0dXMuRklOSVNIX1NFQVJDSFxyXG4gIEBJbnB1dChcInR5cGVcIilcclxuICB0eXBlRm9vdGVyOiBzdHJpbmc7XHJcbiAgQElucHV0KClcclxuICBtb3N0cmFyRW5sYWNlc1BhZ2luYXM6IGJvb2xlYW4gPSB0cnVlO1xyXG4gIEBJbnB1dCgpXHJcbiAgbW9zdHJhclByaW1lcmFVbHRpbWFQYWdpbmE6IGJvb2xlYW4gPSB0cnVlO1xyXG4gIEBPdXRwdXQoKVxyXG4gIG9uUGFnZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8bnVtYmVyPigpOyAvL3BhcmEgbm90aWZpY2FyIGNhbWJpb3MgZW4gbGEgcMOhZ2luYSBhIG1vc3RyYXJcclxuICBAT3V0cHV0KClcclxuICBvbk5ld1BhZ2VTaXplID0gbmV3IEV2ZW50RW1pdHRlcjxudW1iZXI+KCk7IC8vcGFyYSBub3RpZmljYXIgY2FtYmlvcyBlbiBsb3MgZWxlbWVudG9zIGEgbW9zdHJhciBwb3IgcMOhZ2luYVxyXG5cclxuICBiYXNlSXRlbXNQZXJQYWdlOiBudW1iZXIgPSBCYXNlRmlsdGVyLlJFU1VMVEFET1NfUEFHRTsgLy8gZ3VhcmRhbW9zIGVsIG7Dum1lcm8gZGUgcmVzdWx0YWRvcyBwcmUtY29uZmlndXJhZG9zIHBvciBww6FnaW5hIHBhcmEgbW9zdHJhciBsYSBsaXN0YSBkZSB4LCB4KzEwIHkgeCsyMFxyXG4gIHBhZ2VMaW5rU2l6ZTogbnVtYmVyOyAvLyBuw7ptZXJvIGRlIGVubGFjZXMgZW4gZWwgcGFnaW5hZG9yIHBhcmEgcG9kZXIgbmF2ZWdhciBoYWNpYSBkZWxhbnRlIG8gZGV0csOhc1xyXG4gIGl0ZW1zUGVyUGFnZTogbnVtYmVyID0gQmFzZUZpbHRlci5SRVNVTFRBRE9TX1BBR0U7IC8vIG7Dum1lcm8gZGUgZWxlbWVudG9zIHBvciBww6FnaW5hIHF1ZSBtb3N0cmFtb3NcclxuXHJcbiAgbWF4Q3VycmVudEl0ZW1zOiBudW1iZXIgPSAtMTtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSB0cmFuc2xhdGVTZXJ2aWNlOiBUcmFuc2xhdGVTZXJ2aWNlLFxyXG4gICAgICAgICAgICAgIHByaXZhdGUgY2hhbmdlUmVmOiBDaGFuZ2VEZXRlY3RvclJlZikge1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy50eXBlRm9vdGVyID09IHVuZGVmaW5lZCkge1xyXG4gICAgICB0aGlzLnR5cGVGb290ZXIgPSBcImxpc3RcIjtcclxuICAgIH1cclxuICAgIGlmICh0aGlzLnBhZ2luYXRvciA9PSB1bmRlZmluZWQpIHtcclxuICAgICAgdGhpcy5wYWdpbmF0b3IgPSBmYWxzZTtcclxuICAgIH1cclxuICAgIC8vbWVuc2FqZXMgcG9yIGRlZmVjdG8gc2kgbm8gdmllbmVuIGRlZmluaWRvc1xyXG4gICAgaWYgKHRoaXMubWVzc2FnZXMgPT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgIHRoaXMuc2V0TWVzc2FnZXMoKTtcclxuICAgICAgdGhpcy5tZXNzYWdlcy5zZXQoUGFnZVN0YXR1cy5FcnJvciwgXCJiaXRuZ2xpYnJhcnkuZm9vdGVyLmVycm9yXCIpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBzZXRNZXNzYWdlcygpIHtcclxuICAgIGNvbnNvbGUubG9nKFwiZGVmaW5pbW9zIGxvcyBtZW5zYWplcyBkZWwgZm9vdGVyIGRlIG1hbmVyYSBlc3TDoW5kYXJcIik7XHJcbiAgICB0aGlzLm1lc3NhZ2VzID0gbmV3IE1hcDxQYWdlU3RhdHVzLCBzdHJpbmc+KCk7XHJcbiAgICBpZiAodGhpcy5pc0Zvb3Rlckxpc3QoKSB8fCB0aGlzLmlzRm9vdGVyU2Nyb2xsKCkpIHtcclxuICAgICAgdGhpcy5tZXNzYWdlcy5zZXQoUGFnZVN0YXR1cy5Jbml0LCBcImJpdG5nbGlicmFyeS5mb290ZXIubGlzdC5pbml0XCIpO1xyXG4gICAgICB0aGlzLm1lc3NhZ2VzLnNldChQYWdlU3RhdHVzLlNlYXJjaGluZywgXCJiaXRuZ2xpYnJhcnkuZm9vdGVyLmxpc3Quc2VhcmNoaW5nXCIpO1xyXG4gICAgICB0aGlzLm1lc3NhZ2VzLnNldChQYWdlU3RhdHVzLkVtcHR5UmVzdWx0LCBcImJpdG5nbGlicmFyeS5mb290ZXIubGlzdC5lbXB0eXJlc3VsdFwiKTtcclxuICAgICAgdGhpcy5tZXNzYWdlcy5zZXQoUGFnZVN0YXR1cy5GaW5pc2hTZWFyY2gsIFwiYml0bmdsaWJyYXJ5LmZvb3Rlci5saXN0LmZpbmlzaHNlYXJjaFwiKTtcclxuICAgICAgdGhpcy5tZXNzYWdlcy5zZXQoQml0Rm9vdGVyQ29tcG9uZW50Lk1PUkVfUkVTVUxUUywgXCJiaXRuZ2xpYnJhcnkuZm9vdGVyLmxpc3QubW9yZXJlc3VsdHNcIilcclxuICAgIH0gZWxzZSBpZiAodGhpcy5pc0Zvb3RlckZvcm0oKSkge1xyXG4gICAgICB0aGlzLm1lc3NhZ2VzLnNldChQYWdlU3RhdHVzLkluaXQsIFwiYml0bmdsaWJyYXJ5LmZvb3Rlci5mb3JtLmluaXRcIik7XHJcbiAgICAgIHRoaXMubWVzc2FnZXMuc2V0KFBhZ2VTdGF0dXMuU2VhcmNoaW5nLCBcImJpdG5nbGlicmFyeS5mb290ZXIuZm9ybS5zZWFyY2hpbmdcIik7XHJcbiAgICAgIHRoaXMubWVzc2FnZXMuc2V0KFBhZ2VTdGF0dXMuRmluaXNoU2VhcmNoLCBcImJpdG5nbGlicmFyeS5mb290ZXIuZm9ybS5maW5pc2hzZWFyY2hcIik7XHJcbiAgICAgIHRoaXMubWVzc2FnZXMuc2V0KFBhZ2VTdGF0dXMuUmVhZE9ubHksIFwiYml0bmdsaWJyYXJ5LmZvb3Rlci5saXN0LnJlYWRvbmx5XCIpO1xyXG4gICAgfSBlbHNlIGlmICh0aGlzLnR5cGVGb290ZXIgPT09IEJpdEZvb3RlckNvbXBvbmVudC5UWVBFX0JMQU5LKSB7XHJcbiAgICAgIGNvbnNvbGUubG9nKFwidGhlIGZvb3RlciBpcyBCTEFOSyFcIik7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBDdWFuZG8gdGVuZ2Ftb3MgbGEgcmVmZXJlbmNpYSBhbCBjb21wb25lbnRlIHBhZ2luYXRvciBhY3R1YWxpemFtb3MgaW50ZXJuYW1lbnRlIGVsIG7Dum1lcm8gZGUgcMOhZ2luYSB5IGVsIG7Dum1lcm8gZGUgcMOhZ2luYXNcclxuICAgKiBkZWwgZGVzcGxlZ2FibGUgY29uIGxhIGluZm9ybWFjacOzbiBkZWwgZmlsdHJvIHByb3BvcmNpb25hZG9cclxuICAgKi9cclxuICBuZ0FmdGVyVmlld0luaXQoKSB7XHJcbiAgICBpZiAodGhpcy5wYykge1xyXG4gICAgICB0aGlzLml0ZW1zUGVyUGFnZSA9IHRoaXMuZmlsdGVyLnJlc3VsdGFkb3M7XHJcbiAgICAgIGNvbnNvbGUubG9nKGB0aGlzLmZpbHRlci5yZXN1bHRhZG9zICR7dGhpcy5maWx0ZXIucmVzdWx0YWRvc31gKTtcclxuICAgICAgY29uc29sZS5sb2coYHRoaXMuZmlsdGVyLnBhZ2luYSAke3RoaXMuZmlsdGVyLnBhZ2luYX1gKTtcclxuICAgICAgdGhpcy5wYy5yb3dzID0gdGhpcy5maWx0ZXIucmVzdWx0YWRvcztcclxuICAgICAgdGhpcy5wYy5fZmlyc3QgPSAodGhpcy5maWx0ZXIucGFnaW5hIC0gMSkgKiB0aGlzLnBjLnJvd3M7XHJcbiAgICAgIHRoaXMucGMudXBkYXRlUGFnZUxpbmtzKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBFc2N1Y2hhcmVtb3MgYSBjYW1iaW9zIGVuIGxhcyBwcm9waWVkYWRlcyB0b3RhbEl0ZW1zIHBhcmEgYWN0dWFsaXphciBlbCBwYWdpbmFkb3IgY29uIHJlc3BlY3RvIGEgbGFzIHDDoWdpbmFzIHF1ZSBtb3N0cmFtb3NcclxuICAgKi9cclxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiB7IFtwcm9wS2V5OiBzdHJpbmddOiBTaW1wbGVDaGFuZ2UgfSkge1xyXG4gICAgZm9yIChsZXQgcHJvcE5hbWUgaW4gY2hhbmdlcykge1xyXG4gICAgICBsZXQgY2hhbmdlZFByb3AgPSBjaGFuZ2VzW3Byb3BOYW1lXTtcclxuICAgICAgaWYgKHByb3BOYW1lID09PSBcInRvdGFsSXRlbXNcIikge1xyXG4gICAgICAgIHRoaXMudG90YWxJdGVtcyA9IGNoYW5nZWRQcm9wLmN1cnJlbnRWYWx1ZTtcclxuICAgICAgICBjb25zb2xlLmxvZyhgbmV3IHRvdGFsSXRlbXMgJHt0aGlzLnRvdGFsSXRlbXN9YCk7XHJcbiAgICAgICAgaWYgKGNoYW5nZWRQcm9wLnByZXZpb3VzVmFsdWUgIT09IGNoYW5nZWRQcm9wLmN1cnJlbnRWYWx1ZSkge1xyXG4gICAgICAgICAgdGhpcy5jYWxjdWxhdGVQYWdlTGlua1NpemUoKTsgICAgIC8vcmVjYWxjdWxhbW9zXHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMubWF4Q3VycmVudEl0ZW1zID0gdGhpcy5maWx0ZXIgPyB0aGlzLmZpbHRlci5wYWdpbmEgKiB0aGlzLmZpbHRlci5yZXN1bHRhZG9zIDogLTE7XHJcbiAgICAgIH0gZWxzZSBpZiAocHJvcE5hbWUgPT09IFwiZmlsdGVyXCIpIHtcclxuICAgICAgICB0aGlzLmZpbHRlciA9IGNoYW5nZWRQcm9wLmN1cnJlbnRWYWx1ZTtcclxuICAgICAgICBpZiAodGhpcy5maWx0ZXI/LnBhZ2luYSAqIHRoaXMuZmlsdGVyPy5yZXN1bHRhZG9zID4gdGhpcy5tYXhDdXJyZW50SXRlbXMpIHtcclxuICAgICAgICAgIHRoaXMubWF4Q3VycmVudEl0ZW1zID0gdGhpcy5maWx0ZXI/LnBhZ2luYSAqIHRoaXMuZmlsdGVyPy5yZXN1bHRhZG9zO1xyXG4gICAgICAgIH1cclxuICAgICAgICBjb25zb2xlLmxvZyhgbmV3IGZpbHRlciAke3RoaXMuZmlsdGVyPy5wYWdpbmF9IC0gJHt0aGlzLm1heEN1cnJlbnRJdGVtc31gKTtcclxuICAgICAgICBpZiAoY2hhbmdlZFByb3AucHJldmlvdXNWYWx1ZSAhPT0gY2hhbmdlZFByb3AuY3VycmVudFZhbHVlKSB7XHJcbiAgICAgICAgICB0aGlzLmNhbGN1bGF0ZVBhZ2VMaW5rU2l6ZSgpOyAgICAgLy9yZWNhbGN1bGFtb3NcclxuICAgICAgICAgIGlmICghdGhpcy5maWx0ZXI/LnBhZ2luYSB8fCB0aGlzLmZpbHRlci5wYWdpbmEgPD0gMSkge1xyXG4gICAgICAgICAgICB0aGlzLmdvVG9GaXJzdFBhZ2UoKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIGlmICh0aGlzLnBjICYmIHRoaXMuY2hhbmdlUmVmKSB7XHJcbiAgICAgIGNvbnNvbGUubG9nKCd1cGRhdGVQYWdlTGlua3MnKTtcclxuICAgICAgdGhpcy5wYy51cGRhdGVQYWdlTGlua3MoKTtcclxuICAgICAgdGhpcy5jaGFuZ2VSZWYuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqIENhbGN1bGEgZWwgbsO6bWVybyBkZSBlbmxhY2VzIHZpc2libGVzIGVuIGVsIHBhZ2luYWRvciAoZW4gZWwgcmFuZ28gZW50cmUgMSB5IEJBU0VfUkVTVUxUQURPU19QQUdFKS4gKi9cclxuICBjYWxjdWxhdGVQYWdlTGlua1NpemUoKSB7XHJcbiAgICBjb25zb2xlLmxvZyhgY2FsY3VsYXRlUGFnZUxpbmtTaXplIHRvdGFsSXRlbXM6ICR7dGhpcy50b3RhbEl0ZW1zfSBpdGVtc1BlclBhZ2U6JHt0aGlzLml0ZW1zUGVyUGFnZX1gKTtcclxuICAgIHRoaXMucGFnZUxpbmtTaXplID0gTWF0aC5jZWlsKHRoaXMudG90YWxJdGVtcyAvIHRoaXMuaXRlbXNQZXJQYWdlKTtcclxuICAgIGlmICh0aGlzLnBhZ2VMaW5rU2l6ZSA8IDEpIHtcclxuICAgICAgdGhpcy5wYWdlTGlua1NpemUgPSAxO1xyXG4gICAgfVxyXG4gICAgaWYgKHRoaXMucGFnZUxpbmtTaXplID4gQkFTRV9SRVNVTFRBRE9TX1BBR0UpIHtcclxuICAgICAgdGhpcy5wYWdlTGlua1NpemUgPSBCQVNFX1JFU1VMVEFET1NfUEFHRTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKiBFc3RhYmxlY2UgZWwgbsO6bWVybyBkZSBww6FnaW5hIGVuIGxhIHZpc3VhbGl6YWNpw7NuIGRlIHJlc3VsdGFkb3MuIFNlIGludm9jYSBjdWFuZG8gZWwgdXN1YXJpbyBjYW1iaWEgZWwgbsO6bWVybyBkZSByZXN1bHRhZG9zIGEgbW9zdHJhciBvIGNhbWJpYSBkZSBww6FnaW5hICovXHJcbiAgcGFnaW5hdGUoZXZlbnQ6IGFueSk6IHZvaWQge1xyXG4gICAgY29uc29sZS5sb2coXCJQYWdlIGNoYW5nZWQgdG9cIiwgZXZlbnQucGFnZSk7XHJcbiAgICBpZiAoZXZlbnQucm93cyAhPT0gdGhpcy5pdGVtc1BlclBhZ2UpIHtcclxuICAgICAgLy8gaGFuIGNhbWJpYWRvIGVsIG7Dum1lcm8gZGUgZWxlbWVudG9zIHBvciBww6FnaW5hXHJcbiAgICAgIC8vbm90aWZpY2Ftb3MgcXVlIGxvcyBlbGVtZW50b3MgcG9yIHDDoWdpbmEgaGFuIGNhbWJpYWRvXHJcbiAgICAgIHRoaXMub25OZXdQYWdlU2l6ZS5lbWl0KGV2ZW50LnJvd3MpO1xyXG4gICAgICB0aGlzLml0ZW1zUGVyUGFnZSA9IGV2ZW50LnJvd3M7XHJcbiAgICAgIHRoaXMuZ29Ub0ZpcnN0UGFnZSgpO1xyXG4gICAgICB0aGlzLmNhbGN1bGF0ZVBhZ2VMaW5rU2l6ZSgpOyAvLyByZWNhbGN1bGFtb3MgZWwgbsO6bWVybyBkZSBlbmxhY2VzIGRlIHDDoWdpbmFcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIC8vIG5vdGlmaWNhbW9zIGEgbnVlc3RybyBwYXDDoSBxdWUgbGEgcMOhZ2luYSBoYSBjYW1iaWFkb1xyXG4gICAgICB0aGlzLm9uUGFnZUNoYW5nZS5lbWl0KGV2ZW50LnBhZ2UgKyAxKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgZ29Ub0ZpcnN0UGFnZSgpIHtcclxuICAgIGlmICh0aGlzLnBjKSB7XHJcbiAgICAgIC8vdm9sdmVtb3MgYSBsYSBwcmltZXJhIHDDoWdpbmFcclxuICAgICAgdGhpcy5wYy5fZmlyc3QgPSAxO1xyXG4gICAgICB0aGlzLnBjLnVwZGF0ZVBhZ2VMaW5rcygpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZ2V0U3R5bGUoKSB7XHJcbiAgICBpZiAodGhpcy5maXhlZCAmJiB0aGlzLnR5cGVGb290ZXIgPT09IEJpdEZvb3RlckNvbXBvbmVudC5UWVBFX0xJU1QgfHwgdGhpcy50eXBlRm9vdGVyID09PSBCaXRGb290ZXJDb21wb25lbnQuVFlQRV9TQ1JPTEwpIHtcclxuICAgICAgaWYgKHRoaXMudG90YWxJdGVtcyA+IDApIHtcclxuICAgICAgICByZXR1cm4gXCJmb290ZXIgbmF2YmFyLWZpeGVkLWJvdHRvbVwiO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHJldHVybiBcImZvb3RlciBuYXZiYXItZml4ZWQtYm90dG9tLTYwXCI7XHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSBpZiAodGhpcy5maXhlZCAmJiB0aGlzLnR5cGVGb290ZXIgPT09IEJpdEZvb3RlckNvbXBvbmVudC5UWVBFX0ZPUk0pIHtcclxuICAgICAgcmV0dXJuIFwiZm9vdGVyIG5hdmJhci1maXhlZC1ib3R0b20tZm9ybVwiO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuIFwiZm9vdGVyXCI7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBpc0Zvb3Rlckxpc3QoKSB7XHJcbiAgICByZXR1cm4gdGhpcy50eXBlRm9vdGVyID09PSBCaXRGb290ZXJDb21wb25lbnQuVFlQRV9MSVNUO1xyXG4gIH1cclxuXHJcbiAgaXNGb290ZXJTY3JvbGwoKSB7XHJcbiAgICByZXR1cm4gdGhpcy50eXBlRm9vdGVyID09PSBCaXRGb290ZXJDb21wb25lbnQuVFlQRV9TQ1JPTEw7XHJcbiAgfVxyXG5cclxuICBpc0Zvb3RlckZvcm0oKSB7XHJcbiAgICByZXR1cm4gdGhpcy50eXBlRm9vdGVyID09PSBCaXRGb290ZXJDb21wb25lbnQuVFlQRV9GT1JNO1xyXG4gIH1cclxuXHJcbiAgLyoqIEZsYWc6IGxhIHDDoWdpbmEgZXN0w6EgcmVhbGl6YW5kbyBsYSBiw7pzcXVlZGEuICovXHJcbiAgZ2V0IHNlYXJjaEluaXRpYXRlZCgpIHtcclxuICAgIHJldHVybiB0aGlzLnN0YXR1cyA9PT0gUGFnZVN0YXR1cy5Jbml0IHx8IHRoaXMuc3RhdHVzID09IFBhZ2VTdGF0dXMuUmVzZXQgfHwgIXRoaXMuc3RhdHVzO1xyXG4gIH1cclxuXHJcbiAgLyoqIEZsYWc6IGxhIHDDoWdpbmEgZXN0w6EgcmVhbGl6YW5kbyBsYSBiw7pzcXVlZGEuICovXHJcbiAgZ2V0IHNlYXJjaGluZygpIHtcclxuICAgIHJldHVybiB0aGlzLnN0YXR1cyA9PT0gUGFnZVN0YXR1cy5TZWFyY2hpbmc7XHJcbiAgfVxyXG5cclxuICAvKiogRmxhZzogbGEgcMOhZ2luYSBoYSBmaW5hbGl6YWRvIGxhIMO6bHRpbWEgYsO6c3F1ZWRhLiAqL1xyXG4gIGdldCBzZWFyY2hGaW5pc2hlZCgpIHtcclxuICAgIHJldHVybiB0aGlzLnN0YXR1cyA9PT0gUGFnZVN0YXR1cy5GaW5pc2hTZWFyY2g7XHJcbiAgfVxyXG5cclxuICAvKiogRmxhZzogbGEgcMOhZ2luYSBlc3TDoSBlbiBtb2RvIHNvbG8gbGVjdHVyYSAqL1xyXG4gIGdldCByZWFkT25seSgpIHtcclxuICAgIHJldHVybiB0aGlzLnN0YXR1cyA9PSBQYWdlU3RhdHVzLlJlYWRPbmx5O1xyXG4gIH1cclxuXHJcbiAgLyoqIEZsYWc6IGxhIHDDoWdpbmEgaGEgZmluYWxpemFkbyBjb24gZXJyb3IgKi9cclxuICBnZXQgZXJyb3IoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5zdGF0dXMgPT0gUGFnZVN0YXR1cy5FcnJvcjtcclxuICB9XHJcblxyXG4gIC8qKiBGbGFnOiBlbmNvbnRyYWRvIHJlc3VsdGFkby4gKi9cclxuICBnZXQgZm91bmRSZXN1bHQoKSB7XHJcbiAgICByZXR1cm4gKFxyXG4gICAgICB0aGlzLnN0YXR1cyA9PT0gUGFnZVN0YXR1cy5GaW5pc2hTZWFyY2ggJiZcclxuICAgICAgKCh0aGlzLnR5cGVGb290ZXIgPT09IEJpdEZvb3RlckNvbXBvbmVudC5UWVBFX0xJU1QgJiYgdGhpcy50b3RhbEl0ZW1zID4gMClcclxuICAgICAgICB8fCB0aGlzLnR5cGVGb290ZXIgPT09IEJpdEZvb3RlckNvbXBvbmVudC5UWVBFX0ZPUk1cclxuICAgICAgICB8fCAodGhpcy50eXBlRm9vdGVyID09PSBCaXRGb290ZXJDb21wb25lbnQuVFlQRV9TQ1JPTEwgJiYgdGhpcy50b3RhbEl0ZW1zIDw9IHRoaXMubWF4Q3VycmVudEl0ZW1zKSlcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICAvKiogRmxhZzogaGF5IG3DoXMgcmVzdWx0YWRvcyAoc2Nyb2xsKS4gKi9cclxuICBnZXQgbW9yZVJlc3VsdHMoKSB7XHJcbiAgICByZXR1cm4gKFxyXG4gICAgICB0aGlzLnN0YXR1cyA9PT0gUGFnZVN0YXR1cy5GaW5pc2hTZWFyY2ggJiZcclxuICAgICAgKHRoaXMudHlwZUZvb3RlciA9PT0gQml0Rm9vdGVyQ29tcG9uZW50LlRZUEVfU0NST0xMICYmIHRoaXMudG90YWxJdGVtcyA+IHRoaXMubWF4Q3VycmVudEl0ZW1zKVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIC8qKiBGbGFnOiBubyBoYXkgcmVzdWx0YWRvcy4gKi9cclxuICBnZXQgZW1wdHlSZXN1bHQoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5zdGF0dXMgPT09IFBhZ2VTdGF0dXMuRmluaXNoU2VhcmNoICYmIHRoaXMudG90YWxJdGVtcyA9PT0gMDtcclxuICB9XHJcblxyXG4gIGdldCBpbml0TWVzc2FnZSgpOiBPYnNlcnZhYmxlPHN0cmluZz4ge1xyXG4gICAgcmV0dXJuIHRoaXMudHJhbnNsYXRlU2VydmljZS5zZWxlY3RUcmFuc2xhdGUodGhpcy5tZXNzYWdlcy5nZXQoUGFnZVN0YXR1cy5Jbml0KSk7XHJcbiAgfVxyXG5cclxuICBnZXQgc2VhcmNoaW5nTWVzc2FnZSgpOiBPYnNlcnZhYmxlPHN0cmluZz4ge1xyXG4gICAgcmV0dXJuIHRoaXMudHJhbnNsYXRlU2VydmljZS5zZWxlY3RUcmFuc2xhdGUodGhpcy5tZXNzYWdlcy5nZXQoUGFnZVN0YXR1cy5TZWFyY2hpbmcpKTtcclxuICB9XHJcblxyXG4gIGdldCBmaW5pc2hNZXNzYWdlKCk6IE9ic2VydmFibGU8c3RyaW5nPiB7XHJcbiAgICByZXR1cm4gdGhpcy50cmFuc2xhdGVTZXJ2aWNlLnNlbGVjdFRyYW5zbGF0ZSh0aGlzLm1lc3NhZ2VzLmdldChQYWdlU3RhdHVzLkZpbmlzaFNlYXJjaCkpO1xyXG4gIH1cclxuXHJcbiAgZ2V0IG1vcmVSZXN1bHRzTWVzc2FnZSgpOiBPYnNlcnZhYmxlPHN0cmluZz4ge1xyXG4gICAgcmV0dXJuIHRoaXMudHJhbnNsYXRlU2VydmljZS5zZWxlY3RUcmFuc2xhdGUodGhpcy5tZXNzYWdlcy5nZXQoQml0Rm9vdGVyQ29tcG9uZW50Lk1PUkVfUkVTVUxUUykpO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGVtcHR5TWVzc2FnZSgpOiBPYnNlcnZhYmxlPHN0cmluZz4ge1xyXG4gICAgcmV0dXJuIHRoaXMudHJhbnNsYXRlU2VydmljZS5zZWxlY3RUcmFuc2xhdGUodGhpcy5tZXNzYWdlcy5nZXQoUGFnZVN0YXR1cy5FbXB0eVJlc3VsdCkpO1xyXG4gIH1cclxuXHJcbiAgZ2V0IHJlYWRPbmx5TWVzc2FnZSgpOiBPYnNlcnZhYmxlPHN0cmluZz4ge1xyXG4gICAgcmV0dXJuIHRoaXMudHJhbnNsYXRlU2VydmljZS5zZWxlY3RUcmFuc2xhdGUodGhpcy5tZXNzYWdlcy5nZXQoUGFnZVN0YXR1cy5SZWFkT25seSkpO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGVycm9yTWVzc2FnZSgpOiBPYnNlcnZhYmxlPHN0cmluZz4ge1xyXG4gICAgcmV0dXJuIHRoaXMudHJhbnNsYXRlU2VydmljZS5zZWxlY3RUcmFuc2xhdGUodGhpcy5tZXNzYWdlcy5nZXQoUGFnZVN0YXR1cy5FcnJvcikpO1xyXG4gIH1cclxufVxyXG4iLCI8Zm9vdGVyIFtjbGFzc109XCJnZXRTdHlsZSgpXCI+XHJcbiAgPGRpdiBjbGFzcz1cImdyaWRcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJjb2wtMTIgbWQ6Y29sLTIgbGc6Y29sLTJcIiAqbmdJZj1cInR5cGVGb290ZXIgPT09ICdsaXN0J1wiIFtoaWRkZW5dPVwiIXRoaXMuc3RhdHVzIHx8IGVtcHR5UmVzdWx0XCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJudW1lcm8tcmVzdWx0YWRvc1wiPlxyXG4gICAgICAgIDxsYWJlbD57e1wiYml0bmdsaWJyYXJ5LmZvb3Rlci5yZXN1bHRzXCIgfCB0cmFuc2xvY299fTwvbGFiZWw+XHJcbiAgICAgICAgPHNwYW4+e3t0b3RhbEl0ZW1zfX08L3NwYW4+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2IGNsYXNzPVwiY29sLTEyIG1kOmNvbC0yIGxnOmNvbC0yXCIgKm5nSWY9XCJ0eXBlRm9vdGVyID09PSAnc2Nyb2xsJ1wiIFtoaWRkZW5dPVwiIXRoaXMuc3RhdHVzIHx8IGVtcHR5UmVzdWx0XCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJudW1lcm8tcmVzdWx0YWRvcy1zY3JvbGxcIj5cclxuICAgICAgICA8bGFiZWw+e3tcImJpdG5nbGlicmFyeS5mb290ZXIucmVzdWx0c1wiIHwgdHJhbnNsb2NvfX08L2xhYmVsPlxyXG4gICAgICAgIDxzcGFuICpuZ0lmPVwibWF4Q3VycmVudEl0ZW1zID49IHRvdGFsSXRlbXNcIj57e3RvdGFsSXRlbXN9fTwvc3Bhbj5cclxuICAgICAgICA8c3BhbiAqbmdJZj1cIm1heEN1cnJlbnRJdGVtcyA8IHRvdGFsSXRlbXNcIj57e21heEN1cnJlbnRJdGVtc319IC8ge3t0b3RhbEl0ZW1zfX08L3NwYW4+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcblxyXG4gICAgPGRpdiBjbGFzcz1cImNvbC0xMiBtZDpjb2wtNyBsZzpjb2wtNyBwLXRleHQtY2VudGVyXCIgKm5nSWY9XCJ0eXBlRm9vdGVyID09PSAnbGlzdCdcIlxyXG4gICAgICAgICBbaGlkZGVuXT1cIiF0aGlzLnN0YXR1cyB8fCBlbXB0eVJlc3VsdFwiPlxyXG4gICAgICA8cC1wYWdpbmF0b3IgKm5nSWY9XCJwYWdpbmF0b3JcIiAjcGNcclxuICAgICAgICAgICAgICAgICAgIFtyb3dzXT1cIml0ZW1zUGVyUGFnZVwiXHJcbiAgICAgICAgICAgICAgICAgICBbdG90YWxSZWNvcmRzXT1cInRvdGFsSXRlbXNcIlxyXG4gICAgICAgICAgICAgICAgICAgW3BhZ2VMaW5rU2l6ZV09XCJtb3N0cmFyRW5sYWNlc1BhZ2luYXMgPyBwYWdlTGlua1NpemUgOiAxXCJcclxuICAgICAgICAgICAgICAgICAgIFtyb3dzUGVyUGFnZU9wdGlvbnNdPVwiW2Jhc2VJdGVtc1BlclBhZ2UsYmFzZUl0ZW1zUGVyUGFnZSo1LGJhc2VJdGVtc1BlclBhZ2UqMjUsYmFzZUl0ZW1zUGVyUGFnZSo1MF1cIlxyXG4gICAgICAgICAgICAgICAgICAgW3Nob3dQYWdlTGlua3NdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICAgICAgICBbc2hvd0p1bXBUb1BhZ2VEcm9wZG93bl09XCJmYWxzZVwiXHJcbiAgICAgICAgICAgICAgICAgICBbc2hvd0ZpcnN0TGFzdEljb25dPVwibW9zdHJhclByaW1lcmFVbHRpbWFQYWdpbmEgPyB0cnVlIDogbWF4Q3VycmVudEl0ZW1zID49IHRvdGFsSXRlbXNcIlxyXG4gICAgICAgICAgICAgICAgICAgKG9uUGFnZUNoYW5nZSk9XCJwYWdpbmF0ZSgkZXZlbnQpXCI+PC9wLXBhZ2luYXRvcj5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz1cImNvbC0xMiBtZDpjb2wtMyBsZzpjb2wtM1wiPlxyXG4gICAgICA8ZGl2ICpuZ0lmPVwic2VhcmNoSW5pdGlhdGVkXCJcclxuICAgICAgICAgICBbY2xhc3NOYW1lXT1cInR5cGVGb290ZXIgPT09ICdzY3JvbGwnID8gJ21lbnNhamUtc2Nyb2xsIG1lbnNhamUtaW5mbycgOiAnbWVuc2FqZSBtZW5zYWplLWluZm8nXCI+XHJcbiAgICAgICAgPGkgY2xhc3M9XCJmYSBmYS1pbmZvXCI+PC9pPlxyXG4gICAgICAgIDxzcGFuPnt7aW5pdE1lc3NhZ2UgfCBhc3luY319PC9zcGFuPlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDxkaXYgKm5nSWY9XCJzZWFyY2hpbmdcIlxyXG4gICAgICAgICAgIFtjbGFzc05hbWVdPVwidHlwZUZvb3RlciA9PT0gJ3Njcm9sbCcgPyAnbWVuc2FqZS1zY3JvbGwgbWVuc2FqZS1pbmZvJyA6ICdtZW5zYWplIG1lbnNhamUtaW5mbydcIj5cclxuICAgICAgICA8aSBjbGFzcz1cImZhIGZhLWluZm9cIj48L2k+XHJcbiAgICAgICAgPHNwYW4+e3tzZWFyY2hpbmdNZXNzYWdlIHwgYXN5bmN9fTwvc3Bhbj5cclxuICAgICAgPC9kaXY+XHJcblxyXG4gICAgICA8ZGl2ICpuZ0lmPVwicmVhZE9ubHlcIlxyXG4gICAgICAgICAgIFtjbGFzc05hbWVdPVwidHlwZUZvb3RlciA9PT0gJ3Njcm9sbCcgPyAnbWVuc2FqZS1zY3JvbGwgbWVuc2FqZS1pbmZvJyA6ICdtZW5zYWplIG1lbnNhamUtaW5mbydcIj5cclxuICAgICAgICA8aSBjbGFzcz1cImZhIGZhLWluZm9cIj48L2k+XHJcbiAgICAgICAgPHNwYW4+e3tyZWFkT25seU1lc3NhZ2UgfCBhc3luY319PC9zcGFuPlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDxkaXYgKm5nSWY9XCJmb3VuZFJlc3VsdFwiXHJcbiAgICAgICAgICAgW2NsYXNzTmFtZV09XCJ0eXBlRm9vdGVyID09PSAnc2Nyb2xsJyA/ICdtZW5zYWplLXNjcm9sbCBtZW5zYWplLWluZm8nIDogJ21lbnNhamUgbWVuc2FqZS1pbmZvJ1wiPlxyXG4gICAgICAgIDxpIGNsYXNzPVwiZmEgZmEtaW5mb1wiPjwvaT5cclxuICAgICAgICA8c3Bhbj57e2ZpbmlzaE1lc3NhZ2UgfCBhc3luY319PC9zcGFuPlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDxkaXYgKm5nSWY9XCJtb3JlUmVzdWx0c1wiXHJcbiAgICAgICAgICAgW2NsYXNzTmFtZV09XCJ0eXBlRm9vdGVyID09PSAnc2Nyb2xsJyA/ICdtZW5zYWplLXNjcm9sbCBtZW5zYWplLWluZm8nIDogJ21lbnNhamUgbWVuc2FqZS1pbmZvJ1wiPlxyXG4gICAgICAgIDxpIGNsYXNzPVwiZmEgZmEtaW5mb1wiPjwvaT5cclxuICAgICAgICA8c3Bhbj57e21vcmVSZXN1bHRzTWVzc2FnZSB8IGFzeW5jfX08L3NwYW4+XHJcbiAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgPGRpdiAqbmdJZj1cImVtcHR5UmVzdWx0XCJcclxuICAgICAgICAgICBbY2xhc3NOYW1lXT1cInR5cGVGb290ZXIgPT09ICdzY3JvbGwnID8gJ21lbnNhamUtc2Nyb2xsIG1lbnNhamUtaW5mbycgOiAnbWVuc2FqZSBtZW5zYWplLWluZm8nXCI+XHJcbiAgICAgICAgPGkgY2xhc3M9XCJmYSBmYS1leGNsYW1hdGlvblwiPjwvaT5cclxuICAgICAgICA8c3Bhbj57e2VtcHR5TWVzc2FnZSB8IGFzeW5jfX08L3NwYW4+XHJcbiAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgPGRpdiAqbmdJZj1cImVycm9yXCJcclxuICAgICAgICAgICBbY2xhc3NOYW1lXT1cInR5cGVGb290ZXIgPT09ICdzY3JvbGwnID8gJ21lbnNhamUtc2Nyb2xsIG1lbnNhamUtaW5mbycgOiAnbWVuc2FqZSBtZW5zYWplLWluZm8nXCI+XHJcbiAgICAgICAgPGkgY2xhc3M9XCJmYSBmYS1leGNsYW1hdGlvbi10cmlhbmdsZVwiPjwvaT5cclxuICAgICAgICA8c3Bhbj57e2Vycm9yTWVzc2FnZSB8IGFzeW5jfX08L3NwYW4+XHJcbiAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgPGJpdC1oZWxwPjwvYml0LWhlbHA+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuPC9mb290ZXI+XHJcbiJdfQ==
|
|
@@ -2642,13 +2642,15 @@ class BitFooterComponent {
|
|
|
2642
2642
|
* Escucharemos a cambios en las propiedades totalItems para actualizar el paginador con respecto a las páginas que mostramos
|
|
2643
2643
|
*/
|
|
2644
2644
|
ngOnChanges(changes) {
|
|
2645
|
-
var _a, _b, _c, _d, _e;
|
|
2645
|
+
var _a, _b, _c, _d, _e, _f;
|
|
2646
2646
|
for (let propName in changes) {
|
|
2647
2647
|
let changedProp = changes[propName];
|
|
2648
2648
|
if (propName === "totalItems") {
|
|
2649
2649
|
this.totalItems = changedProp.currentValue;
|
|
2650
2650
|
console.log(`new totalItems ${this.totalItems}`);
|
|
2651
|
-
changedProp.previousValue !== changedProp.currentValue
|
|
2651
|
+
if (changedProp.previousValue !== changedProp.currentValue) {
|
|
2652
|
+
this.calculatePageLinkSize(); //recalculamos
|
|
2653
|
+
}
|
|
2652
2654
|
this.maxCurrentItems = this.filter ? this.filter.pagina * this.filter.resultados : -1;
|
|
2653
2655
|
}
|
|
2654
2656
|
else if (propName === "filter") {
|
|
@@ -2657,7 +2659,12 @@ class BitFooterComponent {
|
|
|
2657
2659
|
this.maxCurrentItems = ((_c = this.filter) === null || _c === void 0 ? void 0 : _c.pagina) * ((_d = this.filter) === null || _d === void 0 ? void 0 : _d.resultados);
|
|
2658
2660
|
}
|
|
2659
2661
|
console.log(`new filter ${(_e = this.filter) === null || _e === void 0 ? void 0 : _e.pagina} - ${this.maxCurrentItems}`);
|
|
2660
|
-
changedProp.previousValue !== changedProp.currentValue
|
|
2662
|
+
if (changedProp.previousValue !== changedProp.currentValue) {
|
|
2663
|
+
this.calculatePageLinkSize(); //recalculamos
|
|
2664
|
+
if (!((_f = this.filter) === null || _f === void 0 ? void 0 : _f.pagina) || this.filter.pagina <= 1) {
|
|
2665
|
+
this.goToFirstPage();
|
|
2666
|
+
}
|
|
2667
|
+
}
|
|
2661
2668
|
}
|
|
2662
2669
|
}
|
|
2663
2670
|
if (this.pc && this.changeRef) {
|
|
@@ -2685,11 +2692,7 @@ class BitFooterComponent {
|
|
|
2685
2692
|
//notificamos que los elementos por página han cambiado
|
|
2686
2693
|
this.onNewPageSize.emit(event.rows);
|
|
2687
2694
|
this.itemsPerPage = event.rows;
|
|
2688
|
-
|
|
2689
|
-
//volvemos a la primera página
|
|
2690
|
-
this.pc._first = 1;
|
|
2691
|
-
this.pc.updatePageLinks();
|
|
2692
|
-
}
|
|
2695
|
+
this.goToFirstPage();
|
|
2693
2696
|
this.calculatePageLinkSize(); // recalculamos el número de enlaces de página
|
|
2694
2697
|
}
|
|
2695
2698
|
else {
|
|
@@ -2697,6 +2700,13 @@ class BitFooterComponent {
|
|
|
2697
2700
|
this.onPageChange.emit(event.page + 1);
|
|
2698
2701
|
}
|
|
2699
2702
|
}
|
|
2703
|
+
goToFirstPage() {
|
|
2704
|
+
if (this.pc) {
|
|
2705
|
+
//volvemos a la primera página
|
|
2706
|
+
this.pc._first = 1;
|
|
2707
|
+
this.pc.updatePageLinks();
|
|
2708
|
+
}
|
|
2709
|
+
}
|
|
2700
2710
|
getStyle() {
|
|
2701
2711
|
if (this.fixed && this.typeFooter === BitFooterComponent.TYPE_LIST || this.typeFooter === BitFooterComponent.TYPE_SCROLL) {
|
|
2702
2712
|
if (this.totalItems > 0) {
|