ng-easycommerce-v18 0.3.13 → 0.3.14-beta.10
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 +21 -0
- package/esm2022/lib/classes/filters/filter.mjs +27 -2
- package/esm2022/lib/constants/api.constants.service.mjs +42 -44
- package/esm2022/lib/constants/core.constants.service.mjs +2 -2
- package/esm2022/lib/ec-components/abstractions-components/menu-ec.component.mjs +17 -1
- package/esm2022/lib/ec-components/auth-ec/login-form-ec/login-form-ec.component.mjs +15 -12
- package/esm2022/lib/ec-components/auth-ec/password-reset-ec/password-reset-ec.component.mjs +7 -2
- package/esm2022/lib/ec-components/blocks-ec/block-products-ec/block-products-ec.component.mjs +5 -3
- package/esm2022/lib/ec-components/checkout-ec/payment-ec/payment-methods/mp-redirect-ec/mp-redirect-ec.component.mjs +141 -75
- package/esm2022/lib/ec-components/filters-ec/filters-ec.component.mjs +30 -5
- package/esm2022/lib/ec-components/header-ec/header-ec.component.mjs +32 -23
- package/esm2022/lib/ec-components/product-detail-ec/product-detail-ec.component.mjs +11 -10
- package/esm2022/lib/ec-components/related-products-ec/related-products-ec.component.mjs +6 -4
- package/esm2022/lib/ec-components/stores-ec/stores-ec.component.mjs +21 -6
- package/esm2022/lib/ec-components/widgets-ec/decidir-ec/decidir-ec.component.mjs +5 -3
- package/esm2022/lib/ec-components/widgets-ec/magnizoom-ec/magnizoom-ec.component.mjs +4 -2
- package/esm2022/lib/ec-components/widgets-ec/redsys-catch-ec/redsys-catch-ec.component.mjs +135 -80
- package/esm2022/lib/ec-services/analytics/facebook-pixel.service.mjs +4 -2
- package/esm2022/lib/ec-services/analytics/google-analytics.service.mjs +7 -3
- package/esm2022/lib/ec-services/analytics/gtm.service.mjs +6 -3
- package/esm2022/lib/ec-services/analytics/metricool-pixel.service.mjs +4 -2
- package/esm2022/lib/ec-services/local-storage.service.mjs +21 -7
- package/esm2022/lib/ec-services/ngx-local-storage.service.mjs +24 -7
- package/esm2022/lib/ec-services/options.service.mjs +27 -3
- package/esm2022/lib/interfaces/filter.mjs +1 -1
- package/esm2022/lib/interfaces/options.mjs +1 -1
- package/fesm2022/ng-easycommerce-v18.mjs +603 -316
- package/fesm2022/ng-easycommerce-v18.mjs.map +1 -1
- package/lib/constants/api.constants.service.d.ts +13 -24
- package/lib/ec-components/abstractions-components/menu-ec.component.d.ts +12 -0
- package/lib/ec-components/checkout-ec/payment-ec/payment-methods/mp-redirect-ec/mp-redirect-ec.component.d.ts +38 -16
- package/lib/ec-components/filters-ec/filters-ec.component.d.ts +12 -4
- package/lib/ec-components/header-ec/header-ec.component.d.ts +1 -1
- package/lib/ec-components/stores-ec/stores-ec.component.d.ts +2 -1
- package/lib/ec-components/widgets-ec/redsys-catch-ec/redsys-catch-ec.component.d.ts +26 -5
- package/lib/ec-services/local-storage.service.d.ts +4 -2
- package/lib/ec-services/ngx-local-storage.service.d.ts +4 -2
- package/lib/ec-services/options.service.d.ts +4 -0
- package/lib/interfaces/filter.d.ts +1 -0
- package/lib/interfaces/options.d.ts +2 -0
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,3 +1,24 @@
|
|
|
1
|
+
# Version 0.3.14-beta.7-8-9-10
|
|
2
|
+
- Ajuste en stores-ec platform id privado.
|
|
3
|
+
# Version 0.3.14-beta.6
|
|
4
|
+
- Se modifica archivos para ssr y que no usen document
|
|
5
|
+
# Version 0.3.14-beta.5
|
|
6
|
+
- Pruebas para errores en console al desplegar + merge rama isVisible
|
|
7
|
+
# Version 0.3.14-beta.3
|
|
8
|
+
- Pruebas para errores en console al desplegar
|
|
9
|
+
# Version 0.3.14-beta.2
|
|
10
|
+
- Pruebas para errores en console al desplegar
|
|
11
|
+
# Version 0.3.14-beta.1
|
|
12
|
+
- Pruebas para errores en console al desplegar
|
|
13
|
+
# Version 0.3.17-beta.2
|
|
14
|
+
- Ya estaba contemplado isVisible en el componente `menu-ec.component`, pero se adapto para que devuelva solo las categorias, atributos y secciones visibles y no tener que filtrarlos en el frontend.
|
|
15
|
+
# Version 0.3.17-beta.1
|
|
16
|
+
- Se agrego el isVisible de las categorias a su interfaz
|
|
17
|
+
# Version 0.3.15
|
|
18
|
+
- Refactor del flujo de pago con Mercado Pago (redirect/popup unificado).
|
|
19
|
+
- Compatibilidad completa con mobile y desktop: cierre automático de pestaña o redirección según navegador.
|
|
20
|
+
- Nuevo control de estado visual (idle / pagando / finalizando) para evitar repeticiones o confusión del usuario.
|
|
21
|
+
- Simplificación de `catch` (RedsysCatchEcComponent) y limpieza de código legacy.
|
|
1
22
|
# Version 0.3.13
|
|
2
23
|
- Se hace estable 0.3.12-beta.1.
|
|
3
24
|
- Se hace estable feature/pop-up-inicial.
|
|
@@ -1,3 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Función auxiliar para remover acentos de forma segura para SSR
|
|
3
|
+
*/
|
|
4
|
+
function safeRemoveAccents(str) {
|
|
5
|
+
if (typeof window !== 'undefined' && typeof String.prototype.normalize === 'function') {
|
|
6
|
+
return str.normalize("NFD").replace(/[\u0300-\u036f]/g, "");
|
|
7
|
+
}
|
|
8
|
+
// Fallback para SSR - remover acentos manualmente
|
|
9
|
+
return str.replace(/[àáâãäå]/g, 'a')
|
|
10
|
+
.replace(/[èéêë]/g, 'e')
|
|
11
|
+
.replace(/[ìíîï]/g, 'i')
|
|
12
|
+
.replace(/[òóôõö]/g, 'o')
|
|
13
|
+
.replace(/[ùúûü]/g, 'u')
|
|
14
|
+
.replace(/[ýÿ]/g, 'y')
|
|
15
|
+
.replace(/[ñ]/g, 'n')
|
|
16
|
+
.replace(/[ç]/g, 'c')
|
|
17
|
+
.replace(/[ÀÁÂÃÄÅ]/g, 'A')
|
|
18
|
+
.replace(/[ÈÉÊË]/g, 'E')
|
|
19
|
+
.replace(/[ÌÍÎÏ]/g, 'I')
|
|
20
|
+
.replace(/[ÒÓÔÕÖ]/g, 'O')
|
|
21
|
+
.replace(/[ÙÚÛÜ]/g, 'U')
|
|
22
|
+
.replace(/[ÝŸ]/g, 'Y')
|
|
23
|
+
.replace(/[Ñ]/g, 'N')
|
|
24
|
+
.replace(/[Ç]/g, 'C');
|
|
25
|
+
}
|
|
1
26
|
export class Filter {
|
|
2
27
|
data = [];
|
|
3
28
|
multi = false;
|
|
@@ -17,7 +42,7 @@ export class Filter {
|
|
|
17
42
|
throw new Error("Method not implemented.");
|
|
18
43
|
}
|
|
19
44
|
removeAccents = (str) => {
|
|
20
|
-
return str
|
|
45
|
+
return safeRemoveAccents(str);
|
|
21
46
|
};
|
|
22
47
|
setSelected(element, value) {
|
|
23
48
|
//console.log(element, value);
|
|
@@ -80,4 +105,4 @@ export class Filter {
|
|
|
80
105
|
return result;
|
|
81
106
|
};
|
|
82
107
|
}
|
|
83
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctZWFzeWNvbW1lcmNlLXYxOC9zcmMvbGliL2NsYXNzZXMvZmlsdGVycy9maWx0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxPQUFPLE1BQU07SUFFZixJQUFJLEdBQW9CLEVBQUUsQ0FBQztJQUMzQixLQUFLLEdBQVksS0FBSyxDQUFDO0lBRXZCLElBQUk7UUFDQSxNQUFNLElBQUksS0FBSyxDQUFDLHlCQUF5QixDQUFDLENBQUM7SUFDL0MsQ0FBQztJQUNELFVBQVUsQ0FBQyxPQUFZO1FBQ25CLE1BQU0sSUFBSSxLQUFLLENBQUMseUJBQXlCLENBQUMsQ0FBQztJQUMvQyxDQUFDO0lBQ0QsVUFBVTtRQUNOLE1BQU0sSUFBSSxLQUFLLENBQUMseUJBQXlCLENBQUMsQ0FBQztJQUMvQyxDQUFDO0lBQ0QsV0FBVztRQUNQLE1BQU0sSUFBSSxLQUFLLENBQUMseUJBQXlCLENBQUMsQ0FBQztJQUMvQyxDQUFDO0lBQ0QsYUFBYSxDQUFDLE1BQVcsRUFBRSxRQUFhLEVBQUUsWUFBa0I7UUFDeEQsTUFBTSxJQUFJLEtBQUssQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO0lBQy9DLENBQUM7SUFDRCxhQUFhLEdBQUcsQ0FBQyxHQUFVLEVBQUUsRUFBRTtRQUMzQixPQUFPLEdBQUcsQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUMsT0FBTyxDQUFDLGtCQUFrQixFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ2hFLENBQUMsQ0FBQTtJQUVELFdBQVcsQ0FBQyxPQUFXLEVBQUUsS0FBVTtRQUMvQiw4QkFBOEI7UUFDOUIsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxLQUFLLElBQUksU0FBUyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUks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SUFBSSxPQUFPLEdBQUcsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNuRCxJQUFJLE9BQU8sRUFBRSxDQUFDO1lBQ1YsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDMUIsT0FBTyxNQUFNLENBQUM7UUFDbEIsQ0FBQztRQUNELFFBQVEsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDcEIsSUFBSSxJQUFJLENBQUMsUUFBUSxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxFQUFFLENBQUM7Z0JBQ3hDLElBQUksVUFBVSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxNQUFNLENBQUMsQ0FBQztnQkFDMUQsSUFBSSxVQUFVO29CQUFFLE1BQU0sR0FBRyxVQUFVLENBQUM7WUFDeEMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFBO1FBQ0YsT0FBTyxNQUFNLENBQUM7SUFDbEIsQ0FBQyxDQUFBO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGaWx0ZXJFbGVtZW50LCBGaWx0ZXJUeXBlLCBJRmlsdGVyIH0gZnJvbSBcIi4uLy4uL2ludGVyZmFjZXNcIjtcclxuXHJcbmV4cG9ydCBjbGFzcyBGaWx0ZXIgaW1wbGVtZW50cyBJRmlsdGVyICB7XHJcbiAgICBcclxuICAgIGRhdGE6IEZpbHRlckVsZW1lbnRbXSA9IFtdO1xyXG4gICAgbXVsdGk6IGJvb2xlYW4gPSBmYWxzZTtcclxuICAgIFxyXG4gICAgdHlwZSgpOiBGaWx0ZXJUeXBlIHtcclxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJNZXRob2Qgbm90IGltcGxlbWVudGVkLlwiKTtcclxuICAgIH1cclxuICAgIHNldENvbnRlbnQob3B0aW9uczogYW55KTogdm9pZCB7XHJcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwiTWV0aG9kIG5vdCBpbXBsZW1lbnRlZC5cIik7XHJcbiAgICB9XHJcbiAgICBnZXRDb250ZW50KCk6IEZpbHRlckVsZW1lbnRbXSB7XHJcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwiTWV0aG9kIG5vdCBpbXBsZW1lbnRlZC5cIik7XHJcbiAgICB9XHJcbiAgICB0b1VybFBhcmFtcygpOiBzdHJpbmcge1xyXG4gICAgICAgIHRocm93IG5ldyBFcnJvcihcIk1ldGhvZCBub3QgaW1wbGVtZW50ZWQuXCIpO1xyXG4gICAgfVxyXG4gICAgY3JlYXRlRWxlbWVudChmaWx0ZXI6IGFueSwgb3JpZ2luYWw6IGFueSwgaW5pdGlhbFZhbHVlPzogYW55KSB7XHJcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwiTWV0aG9kIG5vdCBpbXBsZW1lbnRlZC5cIik7XHJcbiAgICB9XHJcbiAgICByZW1vdmVBY2NlbnRzID0gKHN0cjpzdHJpbmcpID0+IHtcclxuICAgICAgICByZXR1cm4gc3RyLm5vcm1hbGl6ZShcIk5GRFwiKS5yZXBsYWNlKC9bXFx1MDMwMC1cXHUwMzZmXS9nLCBcIlwiKTtcclxuICAgIH1cclxuXHJcbiAgICBzZXRTZWxlY3RlZChlbGVtZW50OmFueSwgdmFsdWU/OmFueSl7XHJcbiAgICAgICAgLy9jb25zb2xlLmxvZyhlbGVtZW50LCB2YWx1ZSk7XHJcbiAgICAgICAgKChlbGVtZW50Lm11bHRpICE9IHVuZGVmaW5lZCkgJiYgIWVsZW1lbnQubXVsdGkpID8gdGhpcy5jbGVhbkZpbHRlcih0aGlzLmRhdGEsIGVsZW1lbnQpIDogbnVsbDtcclxuICAgICAgICB0aGlzLnNldFNlbGVjdGVkVmFsdWUoZWxlbWVudCwgdmFsdWUpO1xyXG4gICAgfVxyXG5cclxuICAgIGNsZWFuRmlsdGVyID0gKGRhdGE6YW55LCBlbGVtZW50X3RvX2NoYW5nZTphbnkpID0+IHtcclxuICAgICAgICAvL2NvbnNvbGUubG9nKFwiY2xlYW5GaWx0ZXJcIik7XHJcbiAgICAgICAgZWxlbWVudF90b19jaGFuZ2UgJiYgZGF0YS5mb3JFYWNoKChlbGVtZW50OmFueSkgPT4ge1xyXG4gICAgICAgICAgICBlbGVtZW50X3RvX2NoYW5nZSAhPSBlbGVtZW50ID8gZWxlbWVudC5zZWxlY3RlZCA9IGZhbHNlIDogbnVsbDtcclxuICAgICAgICAgICAgKGVsZW1lbnQuY2hpbGRyZW4gJiYgZWxlbWVudC5jaGlsZHJlbi5sZW5ndGggPiAwKSAmJiB0aGlzLmNsZWFuRmlsdGVyKGVsZW1lbnQuY2hpbGRyZW4sIGVsZW1lbnRfdG9fY2hhbmdlKTtcclxuICAgICAgICB9KVxyXG4gICAgfVxyXG5cclxuICAgIHNldFNlbGVjdGVkVmFsdWUoZWxlbWVudDphbnksIHZhbHVlPzphbnksIHN1Ymxpc3Q/OmFueSwgbXVsdGk/OmFueSl7XHJcbiAgICAgICAgbGV0IGVsZW1lbnRzID0gc3VibGlzdCB8fCB0aGlzLmRhdGE7XHJcbiAgICAgICAgbGV0IGluZGV4ID0gZWxlbWVudHMuZmluZEluZGV4KChzdWJlbGVtZW50OmFueSkgPT4ge1xyXG4gICAgICAgICAgICByZXR1cm4gKGVsZW1lbnQuY29kZSB8fCBlbGVtZW50KSA9PSBzdWJlbGVtZW50LmNvZGU7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgaWYgKGluZGV4ID49IDApIHtcclxuICAgICAgICAgICAgZWxlbWVudHNbaW5kZXhdLnNlbGVjdGVkID0gZWxlbWVudHNbaW5kZXhdLnNlbGVjdGVkID8gZmFsc2UgOiB0cnVlO1xyXG4gICAgICAgICAgICAhbXVsdGkgJiYgZWxlbWVudHMuZm9yRWFjaCgoY2hpbGQ6YW55LCBpOm51bWJlcikgPT4ge1xyXG4gICAgICAgICAgICAgICAgaWYgKGkgIT0gaW5kZXgpIGNoaWxkLnNlbGVjdGVkID0gZmFsc2U7XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgICAgICAgZWxlbWVudHMsXHJcbiAgICAgICAgICAgICAgICBmb3VuZGVkOiB0cnVlXHJcbiAgICAgICAgICAgIH07XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgZWxlbWVudHMuc29tZSgoZWxlbTphbnkpID0+IGVsZW0udHlwZSA9PSAnc3ViJykgJiYgZWxlbWVudHMuc29tZShcclxuICAgICAgICAgICAgICAgIChmaWx0ZXI6YW55KSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgbGV0IGZvdW5kZWQgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgICAgICBpZiAoZmlsdGVyLnR5cGUgPT0gJ3N1YicpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgcmVzdWx0ID0gdGhpcy5zZXRTZWxlY3RlZFZhbHVlKGVsZW1lbnQsIHZhbHVlLCBmaWx0ZXIuY2hpbGRyZW4sIGZpbHRlci5tdWx0aSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChyZXN1bHQgJiYgcmVzdWx0LmZvdW5kZWQpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbHRlci5jaGlsZHJlbiA9IHJlc3VsdC5lbGVtZW50cztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvdW5kZWQgPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBmb3VuZGVkO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICApXHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBudWxsO1xyXG4gICAgfTtcclxuXHJcbiAgICBnZXRTZWxlY3RlZExpc3QgPSAoKTogYW55ID0+IHRoaXMuZmluZFNlbGVjdGVkKHRoaXMuZGF0YSwgW10pO1xyXG5cclxuICAgIGZpbmRTZWxlY3RlZCA9IChlbGVtZW50czogYW55W10sIHJlc3VsdDphbnkpID0+IHtcclxuICAgICAgICBsZXQgZWxlbWVudCA9IGVsZW1lbnRzLmZpbmQoZWxlbSA9PiBlbGVtLnNlbGVjdGVkKTtcclxuICAgICAgICBpZiAoZWxlbWVudCkge1xyXG4gICAgICAgICAgICByZXN1bHQucHVzaChlbGVtZW50LmNvZGUpO1xyXG4gICAgICAgICAgICByZXR1cm4gcmVzdWx0O1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbGVtZW50cy5mb3JFYWNoKGVsZW0gPT4ge1xyXG4gICAgICAgICAgICBpZiAoZWxlbS5jaGlsZHJlbiAmJiBlbGVtLmNoaWxkcmVuLmxlbmd0aCkge1xyXG4gICAgICAgICAgICAgICAgbGV0IG5ld19yZXN1bHQgPSB0aGlzLmZpbmRTZWxlY3RlZChlbGVtLmNoaWxkcmVuLCByZXN1bHQpO1xyXG4gICAgICAgICAgICAgICAgaWYgKG5ld19yZXN1bHQpIHJlc3VsdCA9IG5ld19yZXN1bHQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9KVxyXG4gICAgICAgIHJldHVybiByZXN1bHQ7XHJcbiAgICB9XHJcbn1cclxuIl19
|
|
108
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctZWFzeWNvbW1lcmNlLXYxOC9zcmMvbGliL2NsYXNzZXMvZmlsdGVycy9maWx0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUE7O0dBRUc7QUFDSCxTQUFTLGlCQUFpQixDQUFDLEdBQVc7SUFDbEMsSUFBSSxPQUFPLE1BQU0sS0FBSyxXQUFXLElBQUksT0FBTyxNQUFNLENBQUMsU0FBUyxDQUFDLFNBQVMsS0FBSyxVQUFVLEVBQUUsQ0FBQztRQUNwRixPQUFPLEdBQUcsQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUMsT0FBTyxDQUFDLGtCQUFrQixFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ2hFLENBQUM7SUFDRCxrREFBa0Q7SUFDbEQsT0FBTyxHQUFHLENBQUMsT0FBTyxDQUFDLFdBQVcsRUFBRSxHQUFHLENBQUM7U0FDL0IsT0FBTyxDQUFDLFNBQVMsRUFBRSxHQUFHLENBQUM7U0FDdkIsT0FBTyxDQUFDLFNBQVMsRUFBRSxHQUFHLENBQUM7U0FDdkIsT0FBTyxDQUFDLFVBQVUsRUFBRSxHQUFHLENBQUM7U0FDeEIsT0FBTyxDQUFDLFNBQVMsRUFBRSxHQUFHLENBQUM7U0FDdkIsT0FBTyxDQUFDLE9BQU8sRUFBRSxHQUFHLENBQUM7U0FDckIsT0FBTyxDQUFDLE1BQU0sRUFBRSxHQUFHLENBQUM7U0FDcEIsT0FBTyxDQUFDLE1BQU0sRUFBRSxHQUFHLENBQUM7U0FDcEIsT0FBTyxDQUFDLFdBQVcsRUFBRSxHQUFHLENBQUM7U0FDekIsT0FBTyxDQUFDLFNBQVMsRUFBRSxHQUFHLENBQUM7U0FDdkIsT0FBTyxDQUFDLFNBQVMsRUFBRSxHQUFHLENBQUM7U0FDdkIsT0FBTyxDQUFDLFVBQVUsRUFBRSxHQUFHLENBQUM7U0FDeEIsT0FBTyxDQUFDLFNBQVMsRUFBRSxHQUFHLENBQUM7U0FDdkIsT0FBTyxDQUFDLE9BQU8s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Q1YsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDMUIsT0FBTyxNQUFNLENBQUM7UUFDbEIsQ0FBQztRQUNELFFBQVEsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDcEIsSUFBSSxJQUFJLENBQUMsUUFBUSxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxFQUFFLENBQUM7Z0JBQ3hDLElBQUksVUFBVSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxNQUFNLENBQUMsQ0FBQztnQkFDMUQsSUFBSSxVQUFVO29CQUFFLE1BQU0sR0FBRyxVQUFVLENBQUM7WUFDeEMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFBO1FBQ0YsT0FBTyxNQUFNLENBQUM7SUFDbEIsQ0FBQyxDQUFBO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGaWx0ZXJFbGVtZW50LCBGaWx0ZXJUeXBlLCBJRmlsdGVyIH0gZnJvbSBcIi4uLy4uL2ludGVyZmFjZXNcIjtcclxuXHJcbi8qKlxyXG4gKiBGdW5jacOzbiBhdXhpbGlhciBwYXJhIHJlbW92ZXIgYWNlbnRvcyBkZSBmb3JtYSBzZWd1cmEgcGFyYSBTU1JcclxuICovXHJcbmZ1bmN0aW9uIHNhZmVSZW1vdmVBY2NlbnRzKHN0cjogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgIGlmICh0eXBlb2Ygd2luZG93ICE9PSAndW5kZWZpbmVkJyAmJiB0eXBlb2YgU3RyaW5nLnByb3RvdHlwZS5ub3JtYWxpemUgPT09ICdmdW5jdGlvbicpIHtcclxuICAgICAgICByZXR1cm4gc3RyLm5vcm1hbGl6ZShcIk5GRFwiKS5yZXBsYWNlKC9bXFx1MDMwMC1cXHUwMzZmXS9nLCBcIlwiKTtcclxuICAgIH1cclxuICAgIC8vIEZhbGxiYWNrIHBhcmEgU1NSIC0gcmVtb3ZlciBhY2VudG9zIG1hbnVhbG1lbnRlXHJcbiAgICByZXR1cm4gc3RyLnJlcGxhY2UoL1vDoMOhw6LDo8Okw6VdL2csICdhJylcclxuICAgICAgICAucmVwbGFjZSgvW8Oow6nDqsOrXS9nLCAnZScpXHJcbiAgICAgICAgLnJlcGxhY2UoL1vDrMOtw67Dr10vZywgJ2knKVxyXG4gICAgICAgIC5yZXBsYWNlKC9bw7LDs8O0w7XDtl0vZywgJ28nKVxyXG4gICAgICAgIC5yZXBsYWNlKC9bw7nDusO7w7xdL2csICd1JylcclxuICAgICAgICAucmVwbGFjZSgvW8O9w79dL2csICd5JylcclxuICAgICAgICAucmVwbGFjZSgvW8OxXS9nLCAnbicpXHJcbiAgICAgICAgLnJlcGxhY2UoL1vDp10vZywgJ2MnKVxyXG4gICAgICAgIC5yZXBsYWNlKC9bw4DDgcOCw4PDhMOFXS9nLCAnQScpXHJcbiAgICAgICAgLnJlcGxhY2UoL1vDiMOJw4rDi10vZywgJ0UnKVxyXG4gICAgICAgIC5yZXBsYWNlKC9bw4zDjcOOw49dL2csICdJJylcclxuICAgICAgICAucmVwbGFjZSgvW8OSw5PDlMOVw5ZdL2csICdPJylcclxuICAgICAgICAucmVwbGFjZSgvW8OZw5rDm8OcXS9nLCAnVScpXHJcbiAgICAgICAgLnJlcGxhY2UoL1vDncW4XS9nLCAnWScpXHJcbiAgICAgICAgLnJlcGxhY2UoL1vDkV0vZywgJ04nKVxyXG4gICAgICAgIC5yZXBsYWNlKC9bw4ddL2csICdDJyk7XHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBGaWx0ZXIgaW1wbGVtZW50cyBJRmlsdGVyICB7XHJcbiAgICBcclxuICAgIGRhdGE6IEZpbHRlckVsZW1lbnRbXSA9IFtdO1xyXG4gICAgbXVsdGk6IGJvb2xlYW4gPSBmYWxzZTtcclxuICAgIFxyXG4gICAgdHlwZSgpOiBGaWx0ZXJUeXBlIHtcclxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJNZXRob2Qgbm90IGltcGxlbWVudGVkLlwiKTtcclxuICAgIH1cclxuICAgIHNldENvbnRlbnQob3B0aW9uczogYW55KTogdm9pZCB7XHJcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwiTWV0aG9kIG5vdCBpbXBsZW1lbnRlZC5cIik7XHJcbiAgICB9XHJcbiAgICBnZXRDb250ZW50KCk6IEZpbHRlckVsZW1lbnRbXSB7XHJcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwiTWV0aG9kIG5vdCBpbXBsZW1lbnRlZC5cIik7XHJcbiAgICB9XHJcbiAgICB0b1VybFBhcmFtcygpOiBzdHJpbmcge1xyXG4gICAgICAgIHRocm93IG5ldyBFcnJvcihcIk1ldGhvZCBub3QgaW1wbGVtZW50ZWQuXCIpO1xyXG4gICAgfVxyXG4gICAgY3JlYXRlRWxlbWVudChmaWx0ZXI6IGFueSwgb3JpZ2luYWw6IGFueSwgaW5pdGlhbFZhbHVlPzogYW55KSB7XHJcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwiTWV0aG9kIG5vdCBpbXBsZW1lbnRlZC5cIik7XHJcbiAgICB9XHJcbiAgICByZW1vdmVBY2NlbnRzID0gKHN0cjpzdHJpbmcpID0+IHtcclxuICAgICAgICByZXR1cm4gc2FmZVJlbW92ZUFjY2VudHMoc3RyKTtcclxuICAgIH1cclxuXHJcbiAgICBzZXRTZWxlY3RlZChlbGVtZW50OmFueSwgdmFsdWU/OmFueSl7XHJcbiAgICAgICAgLy9jb25zb2xlLmxvZyhlbGVtZW50LCB2YWx1ZSk7XHJcbiAgICAgICAgKChlbGVtZW50Lm11bHRpICE9IHVuZGVmaW5lZCkgJiYgIWVsZW1lbnQubXVsdGkpID8gdGhpcy5jbGVhbkZpbHRlcih0aGlzLmRhdGEsIGVsZW1lbnQpIDogbnVsbDtcclxuICAgICAgICB0aGlzLnNldFNlbGVjdGVkVmFsdWUoZWxlbWVudCwgdmFsdWUpO1xyXG4gICAgfVxyXG5cclxuICAgIGNsZWFuRmlsdGVyID0gKGRhdGE6YW55LCBlbGVtZW50X3RvX2NoYW5nZTphbnkpID0+IHtcclxuICAgICAgICAvL2NvbnNvbGUubG9nKFwiY2xlYW5GaWx0ZXJcIik7XHJcbiAgICAgICAgZWxlbWVudF90b19jaGFuZ2UgJiYgZGF0YS5mb3JFYWNoKChlbGVtZW50OmFueSkgPT4ge1xyXG4gICAgICAgICAgICBlbGVtZW50X3RvX2NoYW5nZSAhPSBlbGVtZW50ID8gZWxlbWVudC5zZWxlY3RlZCA9IGZhbHNlIDogbnVsbDtcclxuICAgICAgICAgICAgKGVsZW1lbnQuY2hpbGRyZW4gJiYgZWxlbWVudC5jaGlsZHJlbi5sZW5ndGggPiAwKSAmJiB0aGlzLmNsZWFuRmlsdGVyKGVsZW1lbnQuY2hpbGRyZW4sIGVsZW1lbnRfdG9fY2hhbmdlKTtcclxuICAgICAgICB9KVxyXG4gICAgfVxyXG5cclxuICAgIHNldFNlbGVjdGVkVmFsdWUoZWxlbWVudDphbnksIHZhbHVlPzphbnksIHN1Ymxpc3Q/OmFueSwgbXVsdGk/OmFueSl7XHJcbiAgICAgICAgbGV0IGVsZW1lbnRzID0gc3VibGlzdCB8fCB0aGlzLmRhdGE7XHJcbiAgICAgICAgbGV0IGluZGV4ID0gZWxlbWVudHMuZmluZEluZGV4KChzdWJlbGVtZW50OmFueSkgPT4ge1xyXG4gICAgICAgICAgICByZXR1cm4gKGVsZW1lbnQuY29kZSB8fCBlbGVtZW50KSA9PSBzdWJlbGVtZW50LmNvZGU7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgaWYgKGluZGV4ID49IDApIHtcclxuICAgICAgICAgICAgZWxlbWVudHNbaW5kZXhdLnNlbGVjdGVkID0gZWxlbWVudHNbaW5kZXhdLnNlbGVjdGVkID8gZmFsc2UgOiB0cnVlO1xyXG4gICAgICAgICAgICAhbXVsdGkgJiYgZWxlbWVudHMuZm9yRWFjaCgoY2hpbGQ6YW55LCBpOm51bWJlcikgPT4ge1xyXG4gICAgICAgICAgICAgICAgaWYgKGkgIT0gaW5kZXgpIGNoaWxkLnNlbGVjdGVkID0gZmFsc2U7XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgICAgICAgZWxlbWVudHMsXHJcbiAgICAgICAgICAgICAgICBmb3VuZGVkOiB0cnVlXHJcbiAgICAgICAgICAgIH07XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgZWxlbWVudHMuc29tZSgoZWxlbTphbnkpID0+IGVsZW0udHlwZSA9PSAnc3ViJykgJiYgZWxlbWVudHMuc29tZShcclxuICAgICAgICAgICAgICAgIChmaWx0ZXI6YW55KSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgbGV0IGZvdW5kZWQgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgICAgICBpZiAoZmlsdGVyLnR5cGUgPT0gJ3N1YicpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgcmVzdWx0ID0gdGhpcy5zZXRTZWxlY3RlZFZhbHVlKGVsZW1lbnQsIHZhbHVlLCBmaWx0ZXIuY2hpbGRyZW4sIGZpbHRlci5tdWx0aSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChyZXN1bHQgJiYgcmVzdWx0LmZvdW5kZWQpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbHRlci5jaGlsZHJlbiA9IHJlc3VsdC5lbGVtZW50cztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvdW5kZWQgPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBmb3VuZGVkO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICApXHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBudWxsO1xyXG4gICAgfTtcclxuXHJcbiAgICBnZXRTZWxlY3RlZExpc3QgPSAoKTogYW55ID0+IHRoaXMuZmluZFNlbGVjdGVkKHRoaXMuZGF0YSwgW10pO1xyXG5cclxuICAgIGZpbmRTZWxlY3RlZCA9IChlbGVtZW50czogYW55W10sIHJlc3VsdDphbnkpID0+IHtcclxuICAgICAgICBsZXQgZWxlbWVudCA9IGVsZW1lbnRzLmZpbmQoZWxlbSA9PiBlbGVtLnNlbGVjdGVkKTtcclxuICAgICAgICBpZiAoZWxlbWVudCkge1xyXG4gICAgICAgICAgICByZXN1bHQucHVzaChlbGVtZW50LmNvZGUpO1xyXG4gICAgICAgICAgICByZXR1cm4gcmVzdWx0O1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbGVtZW50cy5mb3JFYWNoKGVsZW0gPT4ge1xyXG4gICAgICAgICAgICBpZiAoZWxlbS5jaGlsZHJlbiAmJiBlbGVtLmNoaWxkcmVuLmxlbmd0aCkge1xyXG4gICAgICAgICAgICAgICAgbGV0IG5ld19yZXN1bHQgPSB0aGlzLmZpbmRTZWxlY3RlZChlbGVtLmNoaWxkcmVuLCByZXN1bHQpO1xyXG4gICAgICAgICAgICAgICAgaWYgKG5ld19yZXN1bHQpIHJlc3VsdCA9IG5ld19yZXN1bHQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9KVxyXG4gICAgICAgIHJldHVybiByZXN1bHQ7XHJcbiAgICB9XHJcbn1cclxuIl19
|
|
@@ -1,92 +1,87 @@
|
|
|
1
|
-
import { inject, Injectable } from '@angular/core';
|
|
1
|
+
import { inject, Injectable, PLATFORM_ID, Inject } from '@angular/core';
|
|
2
|
+
import { isPlatformServer } from '@angular/common';
|
|
2
3
|
import { ENVIRONMENT_TOKEN } from '../providers';
|
|
3
4
|
import { LocalStorageService } from '../ec-services';
|
|
4
5
|
import { TranslateService } from '@ngx-translate/core';
|
|
5
6
|
import * as i0 from "@angular/core";
|
|
6
7
|
/**
|
|
7
|
-
* Servicio que provee de datos
|
|
8
|
-
* @export
|
|
9
|
-
* @class ApiConstantsService
|
|
8
|
+
* Servicio que provee de datos relacionados con las peticiones a la API
|
|
10
9
|
*/
|
|
11
10
|
export class ApiConstantsService {
|
|
11
|
+
ssrApiUrl;
|
|
12
12
|
_localStorage = inject(LocalStorageService);
|
|
13
13
|
_translate = inject(TranslateService);
|
|
14
|
-
/**
|
|
15
|
-
* Contiene los datos provisto por el frontend en el archivo environment.ts
|
|
16
|
-
*/
|
|
17
14
|
environment = inject(ENVIRONMENT_TOKEN);
|
|
15
|
+
platformId = inject(PLATFORM_ID);
|
|
16
|
+
_channel;
|
|
17
|
+
LOCALE;
|
|
18
|
+
SHOP_API_URL = 'shop-api/';
|
|
19
|
+
CMS_URL = 'cms/';
|
|
20
|
+
constructor(ssrApiUrl) {
|
|
21
|
+
this.ssrApiUrl = ssrApiUrl;
|
|
22
|
+
this._channel = this.environment.channel;
|
|
23
|
+
this.LOCALE = this.environment.locale;
|
|
24
|
+
}
|
|
18
25
|
/**
|
|
19
26
|
* Canal actual del frontend
|
|
20
27
|
*/
|
|
21
28
|
get CHANNEL() {
|
|
22
|
-
// Verificar si estamos en el navegador (no en SSR)
|
|
23
29
|
if (typeof window !== 'undefined') {
|
|
24
|
-
// Primero intenta leer de window.__env (configurado por Docker)
|
|
25
30
|
const windowEnv = window.__env;
|
|
26
|
-
if (windowEnv?.channel)
|
|
31
|
+
if (windowEnv?.channel)
|
|
27
32
|
return windowEnv.channel;
|
|
28
|
-
}
|
|
29
33
|
}
|
|
30
|
-
// Fallback al environment
|
|
31
34
|
return this._channel;
|
|
32
35
|
}
|
|
33
36
|
set CHANNEL(value) {
|
|
34
37
|
this._channel = value;
|
|
35
38
|
}
|
|
36
|
-
_channel;
|
|
37
|
-
/**
|
|
38
|
-
* Locale actual del frontend
|
|
39
|
-
*/
|
|
40
|
-
LOCALE;
|
|
41
|
-
/**
|
|
42
|
-
* URL para las peticiones a shop-api
|
|
43
|
-
*/
|
|
44
|
-
SHOP_API_URL = 'shop-api/';
|
|
45
|
-
/**
|
|
46
|
-
* URL para las peticiones a cms
|
|
47
|
-
*/
|
|
48
|
-
CMS_URL = 'cms/';
|
|
49
|
-
constructor() {
|
|
50
|
-
this._channel = this.environment.channel;
|
|
51
|
-
this.LOCALE = this.environment.locale;
|
|
52
|
-
}
|
|
53
39
|
/**
|
|
54
40
|
* URL del backend para realizar las peticiones
|
|
55
41
|
*/
|
|
56
42
|
get API_URL() {
|
|
57
|
-
//
|
|
43
|
+
// 1️⃣ Runtime (browser)
|
|
58
44
|
if (typeof window !== 'undefined') {
|
|
59
|
-
// Primero intenta leer de window.__env (configurado por Docker)
|
|
60
45
|
const windowEnv = window.__env;
|
|
61
|
-
if (windowEnv?.
|
|
62
|
-
return windowEnv.
|
|
63
|
-
|
|
46
|
+
if (windowEnv?.apiBaseUrl)
|
|
47
|
+
return windowEnv.apiBaseUrl;
|
|
48
|
+
}
|
|
49
|
+
// 2️⃣ Runtime (SSR / Node)
|
|
50
|
+
if (isPlatformServer(this.platformId)) {
|
|
51
|
+
if (this.ssrApiUrl)
|
|
52
|
+
return this.ssrApiUrl;
|
|
64
53
|
}
|
|
65
|
-
// Fallback
|
|
54
|
+
// 3️⃣ Fallback (environment de Angular)
|
|
66
55
|
return this.environment.apiUrl ?? '';
|
|
67
56
|
}
|
|
68
57
|
/**
|
|
69
|
-
*
|
|
70
|
-
|
|
58
|
+
* URL base completa para shop-api con channel y locale
|
|
59
|
+
*/
|
|
60
|
+
getShopApiBase() {
|
|
61
|
+
const channel = this.CHANNEL || 'undefined';
|
|
62
|
+
const locale = this.LOCALE || 'undefined';
|
|
63
|
+
return `${this.API_URL}/${this.SHOP_API_URL}${channel}/?locale=${locale}`;
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* Retorna la url base general (sin shop-api)
|
|
71
67
|
*/
|
|
72
68
|
getUrlBase() {
|
|
73
69
|
return this.API_URL;
|
|
74
70
|
}
|
|
75
71
|
/**
|
|
76
72
|
* Cambia el canal actual
|
|
77
|
-
* @param code
|
|
78
|
-
* @returns
|
|
79
73
|
*/
|
|
80
|
-
setChannel(code) {
|
|
74
|
+
setChannel(code) {
|
|
75
|
+
this.CHANNEL = code;
|
|
76
|
+
}
|
|
81
77
|
setLocale(locale) {
|
|
82
78
|
this._localStorage.setItem(this.LOCALE_KEY, locale);
|
|
83
79
|
this._translate.use(locale.split('_')[0]);
|
|
84
80
|
this.LOCALE = locale;
|
|
85
81
|
}
|
|
86
|
-
//Storage key
|
|
87
82
|
LOCALE_KEY = 'LOCALE';
|
|
88
83
|
CHANNEL_KEY = 'CHANNEL';
|
|
89
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ApiConstantsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
84
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ApiConstantsService, deps: [{ token: 'API_URL' }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
90
85
|
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ApiConstantsService, providedIn: 'root' });
|
|
91
86
|
}
|
|
92
87
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ApiConstantsService, decorators: [{
|
|
@@ -94,5 +89,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
94
89
|
args: [{
|
|
95
90
|
providedIn: 'root'
|
|
96
91
|
}]
|
|
97
|
-
}], ctorParameters: () => [
|
|
98
|
-
|
|
92
|
+
}], ctorParameters: () => [{ type: undefined, decorators: [{
|
|
93
|
+
type: Inject,
|
|
94
|
+
args: ['API_URL']
|
|
95
|
+
}] }] });
|
|
96
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpLmNvbnN0YW50cy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctZWFzeWNvbW1lcmNlLXYxOC9zcmMvbGliL2NvbnN0YW50cy9hcGkuY29uc3RhbnRzLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsV0FBVyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN4RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFakQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDckQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0scUJBQXFCLENBQUM7O0FBRXZEOztHQUVHO0FBSUgsTUFBTSxPQUFPLG1CQUFtQjtJQWFTO0lBWi9CLGFBQWEsR0FBd0IsTUFBTSxDQUFDLG1CQUFtQixDQUFDLENBQUM7SUFDakUsVUFBVSxHQUFxQixNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUV4RCxXQUFXLEdBQWdCLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO0lBQ3JELFVBQVUsR0FBRyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUM7SUFFakMsUUFBUSxDQUFTO0lBQ2xCLE1BQU0sQ0FBUztJQUVOLFlBQVksR0FBVyxXQUFXLENBQUM7SUFDbkMsT0FBTyxHQUFXLE1BQU0sQ0FBQztJQUV6QyxZQUF1QyxTQUFpQjtRQUFqQixjQUFTLEdBQVQsU0FBUyxDQUFRO1FBQ3RELElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUM7UUFDekMsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQztJQUN4QyxDQUFDO0lBRUQ7O09BRUc7SUFDSCxJQUFXLE9BQU87UUFDaEIsSUFBSSxPQUFPLE1BQU0sS0FBSyxXQUFXLEVBQUUsQ0FBQztZQUNsQyxNQUFNLFNBQVMsR0FBSSxNQUFjLENBQUMsS0FBSyxDQUFDO1lBQ3hDLElBQUksU0FBUyxFQUFFLE9BQU87Z0JBQUUsT0FBTyxTQUFTLENBQUMsT0FBTyxDQUFDO1FBQ25ELENBQUM7UUFDRCxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUM7SUFDdkIsQ0FBQztJQUVELElBQVcsT0FBTyxDQUFDLEtBQWE7UUFDOUIsSUFBSSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUM7SUFDeEIsQ0FBQztJQUVEOztPQUVHO0lBQ0gsSUFBVyxPQUFPO1FBQ2hCLHdCQUF3QjtRQUN4QixJQUFJLE9BQU8sTUFBTSxLQUFLLFdBQVcsRUFBRSxDQUFDO1lBQ2xDLE1BQU0sU0FBUyxHQUFJLE1BQWMsQ0FBQyxLQUFLLENBQUM7WUFDeEMsSUFBSSxTQUFTLEVBQUUsVUFBVTtnQkFBRSxPQUFPLFNBQVMsQ0FBQyxVQUFVLENBQUM7UUFDekQsQ0FBQztRQUVELDJCQUEyQjtRQUMzQixJQUFJLGdCQUFnQixDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDO1lBQ3RDLElBQUksSUFBSSxDQUFDLFNBQVM7Z0JBQUUsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDO1FBQzVDLENBQUM7UUFFRCx3Q0FBd0M7UUFDeEMsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sSUFBSSxFQUFFLENBQUM7SUFDdkMsQ0FBQztJQUVEOztPQUVHO0lBQ0ksY0FBYztRQUNuQixNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsT0FBTyxJQUFJLFdBQVcsQ0FBQztRQUM1QyxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxJQUFJLFdBQVcsQ0FBQztRQUMxQyxPQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU8sSUFBSSxJQUFJLENBQUMsWUFBWSxHQUFHLE9BQU8sWUFBWSxNQUFNLEVBQUUsQ0FBQztJQUM1RSxDQUFDO0lBRUQ7O09BRUc7SUFDSSxVQUFVO1FBQ2YsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDO0lBQ3RCLENBQUM7SUFFRDs7T0FFRztJQUNJLFVBQVUsQ0FBQyxJQUFZO1FBQzVCLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDO0lBQ3RCLENBQUM7SUFFTSxTQUFTLENBQUMsTUFBYztRQUM3QixJQUFJLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQ3BELElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUMxQyxJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztJQUN2QixDQUFDO0lBRWdCLFVBQVUsR0FBVyxRQUFRLENBQUM7SUFDOUIsV0FBVyxHQUFXLFNBQVMsQ0FBQzt3R0FsRnRDLG1CQUFtQixrQkFhVixTQUFTOzRHQWJsQixtQkFBbUIsY0FGbEIsTUFBTTs7NEZBRVAsbUJBQW1CO2tCQUgvQixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQjs7MEJBY2MsTUFBTTsyQkFBQyxTQUFTIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaW5qZWN0LCBJbmplY3RhYmxlLCBQTEFURk9STV9JRCwgSW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IGlzUGxhdGZvcm1TZXJ2ZXIgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBFTlZJUk9OTUVOVF9UT0tFTiB9IGZyb20gJy4uL3Byb3ZpZGVycyc7XHJcbmltcG9ydCB7IEVudmlyb25tZW50IH0gZnJvbSAnLi4vaW50ZXJmYWNlcyc7XHJcbmltcG9ydCB7IExvY2FsU3RvcmFnZVNlcnZpY2UgfSBmcm9tICcuLi9lYy1zZXJ2aWNlcyc7XHJcbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcclxuXHJcbi8qKlxyXG4gKiBTZXJ2aWNpbyBxdWUgcHJvdmVlIGRlIGRhdG9zIHJlbGFjaW9uYWRvcyBjb24gbGFzIHBldGljaW9uZXMgYSBsYSBBUElcclxuICovXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIEFwaUNvbnN0YW50c1NlcnZpY2Uge1xyXG4gIHByaXZhdGUgX2xvY2FsU3RvcmFnZTogTG9jYWxTdG9yYWdlU2VydmljZSA9IGluamVjdChMb2NhbFN0b3JhZ2VTZXJ2aWNlKTtcclxuICBwcml2YXRlIF90cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2UgPSBpbmplY3QoVHJhbnNsYXRlU2VydmljZSk7XHJcblxyXG4gIHByaXZhdGUgZW52aXJvbm1lbnQ6IEVudmlyb25tZW50ID0gaW5qZWN0KEVOVklST05NRU5UX1RPS0VOKTtcclxuICBwcml2YXRlIHBsYXRmb3JtSWQgPSBpbmplY3QoUExBVEZPUk1fSUQpO1xyXG5cclxuICBwcml2YXRlIF9jaGFubmVsOiBzdHJpbmc7XHJcbiAgcHVibGljIExPQ0FMRTogc3RyaW5nO1xyXG5cclxuICBwdWJsaWMgcmVhZG9ubHkgU0hPUF9BUElfVVJMOiBzdHJpbmcgPSAnc2hvcC1hcGkvJztcclxuICBwdWJsaWMgcmVhZG9ubHkgQ01TX1VSTDogc3RyaW5nID0gJ2Ntcy8nO1xyXG5cclxuICBjb25zdHJ1Y3RvcihASW5qZWN0KCdBUElfVVJMJykgcHJpdmF0ZSBzc3JBcGlVcmw6IHN0cmluZykge1xyXG4gICAgdGhpcy5fY2hhbm5lbCA9IHRoaXMuZW52aXJvbm1lbnQuY2hhbm5lbDtcclxuICAgIHRoaXMuTE9DQUxFID0gdGhpcy5lbnZpcm9ubWVudC5sb2NhbGU7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBDYW5hbCBhY3R1YWwgZGVsIGZyb250ZW5kXHJcbiAgICovXHJcbiAgcHVibGljIGdldCBDSEFOTkVMKCk6IHN0cmluZyB7XHJcbiAgICBpZiAodHlwZW9mIHdpbmRvdyAhPT0gJ3VuZGVmaW5lZCcpIHtcclxuICAgICAgY29uc3Qgd2luZG93RW52ID0gKHdpbmRvdyBhcyBhbnkpLl9fZW52O1xyXG4gICAgICBpZiAod2luZG93RW52Py5jaGFubmVsKSByZXR1cm4gd2luZG93RW52LmNoYW5uZWw7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gdGhpcy5fY2hhbm5lbDtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzZXQgQ0hBTk5FTCh2YWx1ZTogc3RyaW5nKSB7XHJcbiAgICB0aGlzLl9jaGFubmVsID0gdmFsdWU7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBVUkwgZGVsIGJhY2tlbmQgcGFyYSByZWFsaXphciBsYXMgcGV0aWNpb25lc1xyXG4gICAqL1xyXG4gIHB1YmxpYyBnZXQgQVBJX1VSTCgpOiBzdHJpbmcge1xyXG4gICAgLy8gMe+4j+KDoyBSdW50aW1lIChicm93c2VyKVxyXG4gICAgaWYgKHR5cGVvZiB3aW5kb3cgIT09ICd1bmRlZmluZWQnKSB7XHJcbiAgICAgIGNvbnN0IHdpbmRvd0VudiA9ICh3aW5kb3cgYXMgYW55KS5fX2VudjtcclxuICAgICAgaWYgKHdpbmRvd0Vudj8uYXBpQmFzZVVybCkgcmV0dXJuIHdpbmRvd0Vudi5hcGlCYXNlVXJsO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIDLvuI/ig6MgUnVudGltZSAoU1NSIC8gTm9kZSlcclxuICAgIGlmIChpc1BsYXRmb3JtU2VydmVyKHRoaXMucGxhdGZvcm1JZCkpIHtcclxuICAgICAgaWYgKHRoaXMuc3NyQXBpVXJsKSByZXR1cm4gdGhpcy5zc3JBcGlVcmw7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gM++4j+KDoyBGYWxsYmFjayAoZW52aXJvbm1lbnQgZGUgQW5ndWxhcilcclxuICAgIHJldHVybiB0aGlzLmVudmlyb25tZW50LmFwaVVybCA/PyAnJztcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFVSTCBiYXNlIGNvbXBsZXRhIHBhcmEgc2hvcC1hcGkgY29uIGNoYW5uZWwgeSBsb2NhbGVcclxuICAgKi9cclxuICBwdWJsaWMgZ2V0U2hvcEFwaUJhc2UoKTogc3RyaW5nIHtcclxuICAgIGNvbnN0IGNoYW5uZWwgPSB0aGlzLkNIQU5ORUwgfHwgJ3VuZGVmaW5lZCc7XHJcbiAgICBjb25zdCBsb2NhbGUgPSB0aGlzLkxPQ0FMRSB8fCAndW5kZWZpbmVkJztcclxuICAgIHJldHVybiBgJHt0aGlzLkFQSV9VUkx9LyR7dGhpcy5TSE9QX0FQSV9VUkx9JHtjaGFubmVsfS8/bG9jYWxlPSR7bG9jYWxlfWA7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBSZXRvcm5hIGxhIHVybCBiYXNlIGdlbmVyYWwgKHNpbiBzaG9wLWFwaSlcclxuICAgKi9cclxuICBwdWJsaWMgZ2V0VXJsQmFzZSgpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMuQVBJX1VSTDtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIENhbWJpYSBlbCBjYW5hbCBhY3R1YWxcclxuICAgKi9cclxuICBwdWJsaWMgc2V0Q2hhbm5lbChjb2RlOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIHRoaXMuQ0hBTk5FTCA9IGNvZGU7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc2V0TG9jYWxlKGxvY2FsZTogc3RyaW5nKTogdm9pZCB7XHJcbiAgICB0aGlzLl9sb2NhbFN0b3JhZ2Uuc2V0SXRlbSh0aGlzLkxPQ0FMRV9LRVksIGxvY2FsZSk7XHJcbiAgICB0aGlzLl90cmFuc2xhdGUudXNlKGxvY2FsZS5zcGxpdCgnXycpWzBdKTtcclxuICAgIHRoaXMuTE9DQUxFID0gbG9jYWxlO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSByZWFkb25seSBMT0NBTEVfS0VZOiBzdHJpbmcgPSAnTE9DQUxFJztcclxuICBwcml2YXRlIHJlYWRvbmx5IENIQU5ORUxfS0VZOiBzdHJpbmcgPSAnQ0hBTk5FTCc7XHJcbn1cclxuIl19
|
|
@@ -91,7 +91,7 @@ export class CoreConstantsService {
|
|
|
91
91
|
}
|
|
92
92
|
}
|
|
93
93
|
// Para SSR, intentar construir desde el document si está disponible
|
|
94
|
-
if (this.document?.location) {
|
|
94
|
+
if (isPlatformBrowser(this.platformId) && this.document?.location) {
|
|
95
95
|
return `${this.document.location.protocol}//${this.document.location.host}`;
|
|
96
96
|
}
|
|
97
97
|
// Intentar obtener desde environment
|
|
@@ -316,4 +316,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
316
316
|
providedIn: 'root'
|
|
317
317
|
}]
|
|
318
318
|
}], ctorParameters: () => [] });
|
|
319
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS5jb25zdGFudHMuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLWVhc3ljb21tZXJjZS12MTgvc3JjL2xpYi9jb25zdGFudHMvY29yZS5jb25zdGFudHMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDaEUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDOUQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRTlELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGNBQWMsQ0FBQzs7QUFDakQ7Ozs7R0FJRztBQUlILE1BQU0sT0FBTyxvQkFBb0I7SUFFekIsV0FBVyxHQUFXLEVBQUUsQ0FBQztJQUNoQzs7T0FFRztJQUNLLFlBQVksR0FBRyxNQUFNLENBQUMsbUJBQW1CLENBQUMsQ0FBQTtJQUNsRDs7T0FFRztJQUNLLFVBQVUsR0FBUSxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUE7SUFDN0M7O09BRUc7SUFDSyxRQUFRLEdBQWEsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFBO0lBQzdDOztPQUVHO0lBQ0ssV0FBVyxHQUFnQixNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQTtJQUM1RDs7T0FFRztJQUNLLE1BQU0sQ0FBUztJQUV2QjtRQUNDLElBQUksaUJBQWlCLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUM7WUFDeEMsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUE7UUFDckIsQ0FBQztJQUNGLENBQUM7SUFDRDs7T0FFRztJQUNJLGtCQUFrQixHQUFXLGFBQWEsQ0FBQztJQUNsRDs7T0FFRztJQUNJLGNBQWMsR0FBVyxXQUFXLENBQUM7SUFDNUM7O09BRUc7SUFD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TyxJQUFJLENBQUMseUJBQXlCLENBQUEsQ0FBQyxDQUFDO0lBRXZFOzs7Ozs7Ozs7Ozs7OztNQWNFO0lBQ00sK0JBQStCLEdBQW9DO1FBQzFFLElBQUksRUFBRSxPQUFPO1FBQ2IsSUFBSSxFQUFFLE9BQU87UUFDYixrQkFBa0IsRUFBRSxLQUFLO1FBQ3pCLFlBQVksRUFBRSxJQUFJO0tBQ2xCLENBQUE7SUFFRCxrQ0FBa0MsR0FBRyxDQUFDLEtBQXNDLEVBQUUsRUFBRTtRQUMvRSxJQUFJLENBQUMsK0JBQStCLEdBQUc7WUFDdEMsR0FBRyxJQUFJLENBQUMsK0JBQStCO1lBQ3ZDLEdBQUcsS0FBSztTQUNSLENBQUE7SUFDRixDQUFDLENBQUE7SUFFRCxrQ0FBa0MsR0FBRyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsK0JBQStCLENBQUE7SUFFeEUsVUFBVTtRQUNoQixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDO0lBQ2xDLENBQUM7SUFFTSxXQUFXLEdBQVksS0FBSyxDQUFDO3dHQTlVeEIsb0JBQW9COzRHQUFwQixvQkFBb0IsY0FGcEIsTUFBTTs7NEZBRU4sb0JBQW9CO2tCQUhoQyxVQUFVO21CQUFDO29CQUNYLFVBQVUsRUFBRSxNQUFNO2lCQUNsQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGluamVjdCwgSW5qZWN0YWJsZSwgUExBVEZPUk1fSUQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQXBpQ29uc3RhbnRzU2VydmljZSB9IGZyb20gJy4vYXBpLmNvbnN0YW50cy5zZXJ2aWNlJztcclxuaW1wb3J0IHsgaXNQbGF0Zm9ybUJyb3dzZXIsIERPQ1VNRU5UIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgQ3VycmVuY3lDb25maWcsIGN1cnJlbmN5VHlwZSwgUGFyYW1zUHJvZHVjdHNXaXRoVW5pcXVlVmFyaWFudCwgRW52aXJvbm1lbnQgfSBmcm9tICcuLi9pbnRlcmZhY2VzJztcclxuaW1wb3J0IHsgRU5WSVJPTk1FTlRfVE9LRU4gfSBmcm9tICcuLi9wcm92aWRlcnMnO1xyXG4vKipcclxuICogU2VydmljaW8gcXVlIHByb3ZlZSBsYXMgY29uc3RhbnRlcyBuZWNlc2FyaWFzIHF1ZSBzZSB1dGlsaXphbiBwb3IgdG9kYSBsYSBhcGxpY2FjacOzbi5cclxuICogQGV4cG9ydFxyXG4gKiBAY2xhc3MgQ29yZUNvbnN0YW50c1NlcnZpY2VcclxuICovXHJcbkBJbmplY3RhYmxlKHtcclxuXHRwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIENvcmVDb25zdGFudHNTZXJ2aWNlIHtcclxuXHJcblx0cHVibGljIHNlYXJjaFZhbHVlOiBzdHJpbmcgPSAnJztcclxuXHQvKipcclxuXHQgKiBTZXJ2aWNpbyBxdWUgY29udGllbmUgbGFzIGNvbnN0YW50ZXMgdXNhZGFzIHBhcmEgbGEgQVBJXHJcblx0ICovXHJcblx0cHJpdmF0ZSBhcGlDb25zdGFudHMgPSBpbmplY3QoQXBpQ29uc3RhbnRzU2VydmljZSlcclxuXHQvKipcclxuXHQgKiBQcm92ZWUgZWwgSUQgZGUgbGEgcGxhdGFmb3JtYSBlbiBkb25kZSBzZSBlc3RhIGVqZWN1dGFuZG8gZWwgY29kaWdvLCBlc3RvIHNpcnZlIHBhcmEgcG9kZXIgZGlmZXJlbmNpYXIgc2kgZXMgZGUgdW4gc2Vydmlkb3IgbyB1biBuYXZlZ2Fkb3Igd2ViLlxyXG5cdCAqL1xyXG5cdHByaXZhdGUgcGxhdGZvcm1JZDogYW55ID0gaW5qZWN0KFBMQVRGT1JNX0lEKVxyXG5cdC8qKlxyXG5cdCAqIERvY3VtZW50IHRva2VuIHBhcmEgYWNjZXNvIFNTUi1jb21wYXRpYmxlIGFsIGRvY3VtZW50b1xyXG5cdCAqL1xyXG5cdHByaXZhdGUgZG9jdW1lbnQ6IERvY3VtZW50ID0gaW5qZWN0KERPQ1VNRU5UKVxyXG5cdC8qKlxyXG5cdCAqIENvbnRpZW5lIGxvcyBkYXRvcyBwcm92aXN0byBwb3IgZWwgZnJvbnRlbmQgZW4gZWwgYXJjaGl2byBlbnZpcm9ubWVudC50c1xyXG5cdCAqL1xyXG5cdHByaXZhdGUgZW52aXJvbm1lbnQ6IEVudmlyb25tZW50ID0gaW5qZWN0KEVOVklST05NRU5UX1RPS0VOKVxyXG5cdC8qKlxyXG5cdCAqIEd1YXJkYSBsYSB2YXJpYWJsZSB3aW5kb3cgZGVsIHdlYiBicm93c2VyLlxyXG5cdCAqL1xyXG5cdHByaXZhdGUgd2luZG93PzpXaW5kb3c7XHJcblxyXG5cdGNvbnN0cnVjdG9yKCkge1xyXG5cdFx0aWYgKGlzUGxhdGZvcm1Ccm93c2VyKHRoaXMucGxhdGZvcm1JZCkpIHtcclxuXHRcdFx0dGhpcy53aW5kb3cgPSB3aW5kb3dcclxuXHRcdH1cclxuXHR9XHJcblx0LyoqXHJcblx0ICogUGF0aCB1c2FkbyBlbiBsYXMgY29sZWNjaW9uZXMgZGUgcHJvZHVjdG9zLlxyXG5cdCAqL1xyXG5cdHB1YmxpYyBQUk9EVUNUX0xJU1RfUk9VVEU6IHN0cmluZyA9ICdjb2xsZWN0aW9uLyc7XHJcblx0LyoqXHJcblx0ICogUGF0aCB1c2FkbyBwYXJhIGFjY2VkZXIgYSBsYXMgc2VjY2lvbmVzLlxyXG5cdCAqL1xyXG5cdHB1YmxpYyBTRUNUSU9OU19ST1VURTogc3RyaW5nID0gJ3NlY3Rpb25zLyc7XHJcblx0LyoqXHJcblx0ICogUGF0aCBxdWUgYWxvamEgbGEgY2FycGV0YSBkZSBsb3MgYXNzZXRzLlxyXG5cdCAqL1xyXG5cdHB1YmxpYyByZWFkb25seSBBU1NFVFNfVVJMOiBzdHJpbmcgPSB0aGlzLmFwaUNvbnN0YW50cy5BUElfVVJMO1xyXG5cdC8qKlxyXG5cdCAqIFJldG9ybmEgbGEgdXJsIGRvbmRlIHNlIGd1YXJkYSBsYXMgaW1hZ2VuZXMuXHJcblx0ICogQHBhcmFtIHBvc3RNZWRpYSBcclxuXHQgKiBAcmV0dXJucyBcclxuXHQgKi9cclxuXHRwdWJsaWMgbWVkaWFVcmwgPSAocG9zdE1lZGlhPzogc3RyaW5nKSA9PiB0aGlzLkFTU0VUU19VUkwgKyAodGhpcy5BU1NFVFNfVVJMID09IHRoaXMuYXBpQ29uc3RhbnRzLkFQSV9VUkwgPyAnbWVkaWEvJyA6ICcnKSArIChwb3N0TWVkaWEgPyBwb3N0TWVkaWEgOiBcImltYWdlL1wiKTtcclxuXHQvKipcclxuXHQgKiBSZXRvcm5hIGxhIHVybCBkb25kZSBzZSBndWFyZGEgbGFzIGltYWdlbmVzLlxyXG5cdCAqIEBwYXJhbSBwb3N0TWVkaWEgXHJcblx0ICogQHJldHVybnMgXHJcblx0ICovXHJcblx0cHVibGljIG1lZGlhSW1hZ2VVcmwgPSAocG9zdE1lZGlhPzogc3RyaW5nKSA9PiB0aGlzLkFTU0VUU19VUkwgKyAodGhpcy5BU1NFVFNfVVJMID09IHRoaXMuYXBpQ29uc3RhbnRzLkFQSV9VUkwgPyAnbWVkaWEvaW1hZ2UvJyA6ICcnKSArIChwb3N0TWVkaWEgPyBwb3N0TWVkaWEgOiBcImltYWdlL1wiKTtcclxuXHQvKipcclxuXHQgKiBSZXRvcm5hIGxhIHVybCBkZWwgc2l0aW8uXHJcblx0ICogQHBhcmFtIHBvc3RNZWRpYSBcclxuXHQgKiBAcmV0dXJucyBcclxuXHQgKi9cclxuXHRwdWJsaWMgdXJsID0gKCkgPT4gdGhpcy5hcGlDb25zdGFudHMuQVBJX1VSTC5yZXBsYWNlKC9cXC8kLywgJycpOyAvLyByZW1vdmUgbGFzdCBzbGFzaFx0XHJcblxyXG5cdC8qKlxyXG5cdCAqIFVSTCBkZWwgc2l0aW8gZnJvbnRlbmQgLSBDb21wYXRpYmxlIGNvbiBBbmd1bGFyIFNTUlxyXG5cdCAqL1xyXG5cdHB1YmxpYyBnZXQgRlJPTlRFTkRfVVJMKCk6IHN0cmluZyB7XHJcblx0XHQvLyBWZXJpZmljYXIgc2kgZXN0YW1vcyBlbiBlbCBuYXZlZ2Fkb3JcclxuXHRcdGlmIChpc1BsYXRmb3JtQnJvd3Nlcih0aGlzLnBsYXRmb3JtSWQpKSB7XHJcblx0XHRcdC8vIFByaW1lcm8gaW50ZW50YSBsZWVyIGRlIHdpbmRvdy5fX2VudiAoY29uZmlndXJhZG8gcG9yIERvY2tlci9DSSlcclxuXHRcdFx0Y29uc3Qgd2luZG93RW52ID0gKHRoaXMud2luZG93IGFzIGFueSk/Ll9fZW52O1xyXG5cdFx0XHRpZiAod2luZG93RW52Py5mcm9udGVuZFVybCkge1xyXG5cdFx0XHRcdC8vIExvZyBwYXJhIGRlYnVnZ2luZyBlbiBkZXNhcnJvbGxvXHJcblx0XHRcdFx0aWYgKCF3aW5kb3dFbnYuZnJvbnRlbmRVcmwuc3RhcnRzV2l0aCgnaHR0cCcpKSB7XHJcblx0XHRcdFx0XHRjb25zb2xlLndhcm4oJ1tGUk9OVEVORF9VUkxdIEludmFsaWQgZnJvbnRlbmRVcmwgZm9ybWF0OicsIHdpbmRvd0Vudi5mcm9udGVuZFVybCk7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdHJldHVybiB3aW5kb3dFbnYuZnJvbnRlbmRVcmw7XHJcblx0XHRcdH1cclxuXHRcdFx0XHJcblx0XHRcdC8vIFNpIG5vIGhheSBjb25maWd1cmFjacOzbiBlc3BlY8OtZmljYSwgY29uc3RydWlyIGRlc2RlIHdpbmRvdy5sb2NhdGlvblxyXG5cdFx0XHRpZiAodGhpcy53aW5kb3c/LmxvY2F0aW9uKSB7XHJcblx0XHRcdFx0Y29uc3QgdXJsID0gYCR7dGhpcy53aW5kb3cubG9jYXRpb24ucHJvdG9jb2x9Ly8ke3RoaXMud2luZG93LmxvY2F0aW9uLmhvc3R9YDtcclxuXHRcdFx0XHQvLyBWZXJpZmljYXIgcXVlIG5vIHNlYSBsb2NhbGhvc3QgbyAxMjcuMC4wLjEgZW4gcHJvZHVjY2nDs25cclxuXHRcdFx0XHRpZiAodXJsLmluY2x1ZGVzKCcxMjcuMC4wLjEnKSB8fCB1cmwuaW5jbHVkZXMoJ2xvY2FsaG9zdCcpKSB7XHJcblx0XHRcdFx0XHRjb25zb2xlLndhcm4oJ1tGUk9OVEVORF9VUkxdIFVzaW5nIGxvY2FsaG9zdCBVUkwgaW4gcHJvZHVjdGlvbiwgY29uc2lkZXIgc2V0dGluZyB3aW5kb3cuX19lbnYuZnJvbnRlbmRVcmwnKTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0cmV0dXJuIHVybDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0XHJcblx0XHQvLyBQYXJhIFNTUiwgaW50ZW50YXIgY29uc3RydWlyIGRlc2RlIGVsIGRvY3VtZW50IHNpIGVzdMOhIGRpc3BvbmlibGVcclxuXHRcdGlmICh0aGlzLmRvY3VtZW50Py5sb2NhdGlvbikge1xyXG5cdFx0XHRyZXR1cm4gYCR7dGhpcy5kb2N1bWVudC5sb2NhdGlvbi5wcm90b2NvbH0vLyR7dGhpcy5kb2N1bWVudC5sb2NhdGlvbi5ob3N0fWA7XHJcblx0XHR9XHJcblx0XHRcclxuXHRcdC8vIEludGVudGFyIG9idGVuZXIgZGVzZGUgZW52aXJvbm1lbnRcclxuXHRcdGlmICh0aGlzLmVudmlyb25tZW50LmZyb250ZW5kVXJsKSB7XHJcblx0XHRcdHJldHVybiB0aGlzLmVudmlyb25tZW50LmZyb250ZW5kVXJsO1xyXG5cdFx0fVxyXG5cdFx0XHJcblx0XHQvLyDDmmx0aW1vIGZhbGxiYWNrIC0gdXNhciBsYSBVUkwgZGVsIEFQSSBzaSBlc3TDoSBjb25maWd1cmFkYSB5IGVzIGFic29sdXRhXHJcblx0XHRjb25zdCBhcGlVcmwgPSB0aGlzLmFwaUNvbnN0YW50cy5BUElfVVJMO1xyXG5cdFx0aWYgKGFwaVVybCAmJiAoYXBpVXJsLnN0YXJ0c1dpdGgoJ2h0dHA6Ly8nKSB8fCBhcGlVcmwuc3RhcnRzV2l0aCgnaHR0cHM6Ly8nKSkpIHtcclxuXHRcdFx0dHJ5IHtcclxuXHRcdFx0XHRjb25zdCB1cmwgPSBuZXcgVVJMKGFwaVVybCk7XHJcblx0XHRcdFx0cmV0dXJuIGAke3VybC5wcm90b2NvbH0vLyR7dXJsLmhvc3R9YDtcclxuXHRcdFx0fSBjYXRjaCAoZSkge1xyXG5cdFx0XHRcdGNvbnNvbGUud2FybignW0ZST05URU5EX1VSTF0gQ291bGQgbm90IHBhcnNlIEFQSSBVUkwgYXMgZmFsbGJhY2s6JywgYXBpVXJsKTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0XHJcblx0XHQvLyBGYWxsYmFjayBmaW5hbCAtIHJldG9ybmFyIFVSTCB2YWPDrWFcclxuXHRcdGNvbnNvbGUud2FybignW0ZST05URU5EX1VSTF0gTm8gdmFsaWQgZnJvbnRlbmQgVVJMIGZvdW5kLCB0aGlzIG1heSBjYXVzZSBpc3N1ZXMgd2l0aCBtZXRhIHRhZ3MnKTtcclxuXHRcdHJldHVybiAnJztcclxuXHR9XHJcblxyXG5cdC8qKlxyXG5cdCAqIFJldG9ybmEgbGEgVVJMIGNvbXBsZXRhIGRlbCBmcm9udGVuZCBjb24gdW5hIHJ1dGEgb3BjaW9uYWxcclxuXHQgKiBAcGFyYW0gcGF0aCAtIFJ1dGEgb3BjaW9uYWwgcGFyYSBhZ3JlZ2FyIGEgbGEgVVJMIGJhc2VcclxuXHQgKiBAcmV0dXJucyB7c3RyaW5nfSBVUkwgY29tcGxldGEgZGVsIGZyb250ZW5kXHJcblx0ICovXHJcblx0cHVibGljIGdldEZyb250ZW5kVXJsID0gKHBhdGg/OiBzdHJpbmcpOiBzdHJpbmcgPT4ge1xyXG5cdFx0Y29uc3QgYmFzZVVybCA9IHRoaXMuRlJPTlRFTkRfVVJMO1xyXG5cdFx0aWYgKCFwYXRoKSB7XHJcblx0XHRcdHJldHVybiBiYXNlVXJsO1xyXG5cdFx0fVxyXG5cdFx0XHJcblx0XHQvLyBBc2VndXJhciBxdWUgbGEgcnV0YSBjb21pZW5jZSBjb24gJy8nIHkgbm8gdGVuZ2EgZG9ibGUgc2xhc2hcclxuXHRcdGNvbnN0IGNsZWFuUGF0aCA9IHBhdGguc3RhcnRzV2l0aCgnLycpID8gcGF0aCA6IGAvJHtwYXRofWA7XHJcblx0XHRjb25zdCBjbGVhbkJhc2VVcmwgPSBiYXNlVXJsLmVuZHNXaXRoKCcvJykgPyBiYXNlVXJsLnNsaWNlKDAsIC0xKSA6IGJhc2VVcmw7XHJcblx0XHRcclxuXHRcdHJldHVybiBgJHtjbGVhbkJhc2VVcmx9JHtjbGVhblBhdGh9YDtcclxuXHR9XHJcblxyXG5cdC8qKlxyXG5cdCAqIFJldG9ybmEgbGEgVVJMIGFic29sdXRhIGRlIHVuYSBpbWFnZW4gcGFyYSBtZXRhIHRhZ3MgKGNvbXBhdGlibGUgY29uIFNTUilcclxuXHQgKiBAcGFyYW0gcG9zdE1lZGlhIC0gUnV0YSBkZSBsYSBpbWFnZW5cclxuXHQgKiBAcmV0dXJucyB7c3RyaW5nfSBVUkwgYWJzb2x1dGEgZGUgbGEgaW1hZ2VuXHJcblx0ICovXHJcblx0cHVibGljIGdldEFic29sdXRlSW1hZ2VVcmwgPSAocG9zdE1lZGlhPzogc3RyaW5nKTogc3RyaW5nID0+IHtcclxuXHRcdC8vIFNpIGxhIFVSTCB5YSBlcyBhYnNvbHV0YSwgZGV2b2x2ZXJsYSB0YWwgY29tbyBlc3TDoVxyXG5cdFx0aWYgKHBvc3RNZWRpYSAmJiAocG9zdE1lZGlhLnN0YXJ0c1dpdGgoJ2h0dHA6Ly8nKSB8fCBwb3N0TWVkaWEuc3RhcnRzV2l0aCgnaHR0cHM6Ly8nKSkpIHtcclxuXHRcdFx0cmV0dXJuIHBvc3RNZWRpYTtcclxuXHRcdH1cclxuXHJcblx0XHQvLyBDb25zdHJ1aXIgbGEgVVJMIGRlIGxhIGltYWdlbiB1c2FuZG8gbGEgVVJMIGRlbCBBUElcclxuXHRcdGNvbnN0IGltYWdlVXJsID0gdGhpcy5tZWRpYUltYWdlVXJsKHBvc3RNZWRpYSk7XHJcblx0XHRcclxuXHRcdC8vIFNpIGxhIFVSTCBkZSBsYSBpbWFnZW4geWEgZXMgYWJzb2x1dGEsIGRldm9sdmVybGFcclxuXHRcdGlmIChpbWFnZVVybC5zdGFydHNXaXRoKCdodHRwOi8vJykgfHwgaW1hZ2VVcmwuc3RhcnRzV2l0aCgnaHR0cHM6Ly8nKSkge1xyXG5cdFx0XHRyZXR1cm4gaW1hZ2VVcmw7XHJcblx0XHR9XHJcblx0XHRcclxuXHRcdC8vIFNpIGVzIHVuYSBVUkwgcmVsYXRpdmEsIGNvbnZlcnRpcmxhIGEgYWJzb2x1dGEgdXNhbmRvIGxhIFVSTCBiYXNlIGRlbCBBUElcclxuXHRcdGNvbnN0IGFwaUJhc2VVcmwgPSB0aGlzLmFwaUNvbnN0YW50cy5BUElfVVJMO1xyXG5cdFx0aWYgKGFwaUJhc2VVcmwuc3RhcnRzV2l0aCgnaHR0cDovLycpIHx8IGFwaUJhc2VVcmwuc3RhcnRzV2l0aCgnaHR0cHM6Ly8nKSkge1xyXG5cdFx0XHQvLyBBUElfVVJMIHlhIGVzIGFic29sdXRhXHJcblx0XHRcdHJldHVybiBpbWFnZVVybDtcclxuXHRcdH1cclxuXHRcdFxyXG5cdFx0Ly8gU2kgQVBJX1VSTCBlcyByZWxhdGl2YSwgdXNhciBsYSBVUkwgZGVsIGZyb250ZW5kIGNvbW8gYmFzZVxyXG5cdFx0Y29uc3QgZnJvbnRlbmRVcmwgPSB0aGlzLkZST05URU5EX1VSTDtcclxuXHRcdGlmICghZnJvbnRlbmRVcmwpIHtcclxuXHRcdFx0cmV0dXJuIGltYWdlVXJsOyAvLyBGYWxsYmFjayBzaSBubyBwb2RlbW9zIGRldGVybWluYXIgbGEgVVJMIGRlbCBmcm9udGVuZFxyXG5cdFx0fVxyXG5cdFx0XHJcblx0XHQvLyBDb25zdHJ1aXIgVVJMIGFic29sdXRhXHJcblx0XHRjb25zdCBjbGVhbkFwaVVybCA9IGFwaUJhc2VVcmwuc3RhcnRzV2l0aCgnLycpID8gYXBpQmFzZVVybC5zdWJzdHJpbmcoMSkgOiBhcGlCYXNlVXJsO1xyXG5cdFx0Y29uc3QgY2xlYW5Gcm9udGVuZFVybCA9IGZyb250ZW5kVXJsLmVuZHNXaXRoKCcvJykgPyBmcm9udGVuZFVybC5zbGljZSgwLCAtMSkgOiBmcm9udGVuZFVybDtcclxuXHRcdGNvbnN0IGNsZWFuSW1hZ2VVcmwgPSBpbWFnZVVybC5zdGFydHNXaXRoKCcvJykgPyBpbWFnZVVybC5zdWJzdHJpbmcoMSkgOiBpbWFnZVVybDtcclxuXHRcdFxyXG5cdFx0cmV0dXJuIGAke2NsZWFuRnJvbnRlbmRVcmx9LyR7Y2xlYW5BcGlVcmx9JHtjbGVhbkltYWdlVXJsfWA7XHJcblx0fVxyXG5cclxuXHQvKipcclxuXHQgKiBSZXRvcm5hIGxhIHVybCBkZSBsYXMgaW1hZ2VuZXMgZGUgbG9zIGJhbm5lcnNcclxuXHQgKiBAcmV0dXJucyBcclxuXHQgKi9cclxuXHRwdWJsaWMgbWVkaWFCYW5uZXJVcmwgPSAoKSA9PiB0aGlzLkFTU0VUU19VUkwgKyAodGhpcy5BU1NFVFNfVVJMID09IHRoaXMuYXBpQ29uc3RhbnRzLkFQSV9VUkwgPyAnbWVkaWEvJyA6ICcnKSArIFwiYmFubmVyLWltYWdlL1wiO1xyXG5cdFxyXG5cdG1lZGlhU3RvcmVVcmwgPSAoKSA9PiB0aGlzLkFTU0VUU19VUkwgKyAodGhpcy5BU1NFVFNfVVJMID09IHRoaXMuYXBpQ29uc3RhbnRzLkFQSV9VUkwgPyAnbWVkaWEvJyA6ICcnKSArIFwic3RvcmUtaW1hZ2UvXCI7XHJcblx0XHJcblx0LyoqXHJcblx0ICogUmV0b3JuYSBgdHJ1ZWAgc2kgbGEgdmlzdGEgZXMgbW9iaWxlLCBgZmFsc2VgIGNhc28gY29udHJhcmlvLlxyXG5cdCAqIEByZXR1cm5zIHtib29sZWFufVxyXG5cdCAqL1xyXG5cdHB1YmxpYyBtb2JpbGVTY3JlZW4gPSAoKTogYm9vbGVhbiA9PiB0aGlzLndpbmRvdyAmJiB0aGlzLndpbmRvdz8uaW5uZXJXaWR0aCA8IDc1MCB8fCBmYWxzZTtcclxuXHQvKipcclxuXHQgKiBDb250aWVuZSBsb3MgdmFsb3JlcyBwYXJhIGxhIG1vbmVkYSBhY3R1YWxcclxuXHQgKi9cclxuXHRwdWJsaWMgY3VycmVuY3k6IEN1cnJlbmN5Q29uZmlnID0ge1xyXG5cdFx0Y29kZTogJ0FSRycsXHJcblx0XHRzeW1ib2w6ICckJyxcclxuXHRcdHBvc2l0aW9uOiAnTGVmdCcsXHJcblx0XHR3aXRob3V0RGVjaW1hbDogZmFsc2VcclxuXHR9O1xyXG5cclxuXHQvKipcclxuXHQgKiBBcnJlZ2xvIGRlIHZhbG9yZXMgdXNhZG9zIHBhcmEgZWwgcGlwZSBjdXJyZW5jeVByaWNlXHJcblx0ICovXHJcblx0cHVibGljIGN1cnJlbmN5VHlwZUNvbmZpZzogQ3VycmVuY3lDb25maWdbXSA9IFtcclxuXHRcdHtcclxuXHRcdFx0Y29kZTogJ0VVUicsXHJcblx0XHRcdHN5bWJvbDogJ+KCrCcsXHJcblx0XHRcdHBvc2l0aW9uOiAnUmlnaHQnLFxyXG5cdFx0XHR3aXRob3V0RGVjaW1hbDogZmFsc2VcclxuXHJcblx0XHR9LFxyXG5cdFx0e1xyXG5cdFx0XHRjb2RlOiAnQVJHJyxcclxuXHRcdFx0c3ltYm9sOiAnJCcsXHJcblx0XHRcdHBvc2l0aW9uOiAnTGVmdCcsXHJcblx0XHRcdHdpdGhvdXREZWNpbWFsOiBmYWxzZVxyXG5cdFx0fSxcclxuXHRcdHtcclxuXHRcdFx0Y29kZTogJ0FSUycsXHJcblx0XHRcdHN5bWJvbDogJyQnLFxyXG5cdFx0XHRwb3NpdGlvbjogJ0xlZnQnLFxyXG5cdFx0XHR3aXRob3V0RGVjaW1hbDogZmFsc2VcclxuXHRcdH0sXHJcblx0XHR7XHJcblx0XHRcdGNvZGU6ICdVU0QnLFxyXG5cdFx0XHRzeW1ib2w6ICckJyxcclxuXHRcdFx0cG9zaXRpb246ICdMZWZ0JyxcclxuXHRcdFx0d2l0aG91dERlY2ltYWw6IGZhbHNlXHJcblx0XHR9LFxyXG5cdFx0e1xyXG5cdFx0XHRjb2RlOiAnUFlHJyxcclxuXHRcdFx0c3ltYm9sOiAnR3MuJyxcclxuXHRcdFx0cG9zaXRpb246ICdMZWZ0JyxcclxuXHRcdFx0d2l0aG91dERlY2ltYWw6IGZhbHNlXHJcblx0XHR9LFxyXG5cdFx0e1xyXG5cdFx0XHRjb2RlOiAnUEVOJyxcclxuXHRcdFx0c3ltYm9sOiAnUy8nLFxyXG5cdFx0XHRwb3NpdGlvbjogJ0xlZnQnLFxyXG5cdFx0XHR3aXRob3V0RGVjaW1hbDogZmFsc2VcclxuXHRcdH0sXHJcblx0XHR7XHJcblx0XHRcdGNvZGU6ICdTRUsnLFxyXG5cdFx0XHRzeW1ib2w6ICdTRUsnLFxyXG5cdFx0XHRwb3NpdGlvbjogJ1JpZ2h0JyxcclxuXHRcdFx0d2l0aG91dERlY2ltYWw6IHRydWVcclxuXHRcdH0sXHJcblx0XVxyXG5cdC8qKlxyXG5cdCAqIENhbWJpYSBsYSBjb25maWd1cmFjacOzbiBkZSBsYSBtb25lZGEuXHJcblx0ICogQHBhcmFtIGN1cnJlbmN5VHlwZUNvbmZpZyBBcnJlZ2xvIGNvbiBsYXMgZGlzdGludGFzIG1vbmVkYXMuXHJcblx0ICovXHJcblx0cHVibGljIHNldEN1cnJlbmN5VHlwZUNvbmZpZyhjdXJyZW5jeVR5cGVDb25maWc6IEN1cnJlbmN5Q29uZmlnW10pIHtcclxuXHRcdHRoaXMuY3VycmVuY3lUeXBlQ29uZmlnID0gY3VycmVuY3lUeXBlQ29uZmlnO1xyXG5cdH1cclxuXHJcblx0LyoqXHJcblx0ICogQHBhcmFtIGN1cnJlbmN5VHlwZUZpbmQgRGVmaW5pciBlbCBjb2RlIGRlbCB0aXBvIGRlIG1vbmVkYSBxdWUgc2UgcXVpZXJhIHV0aWxpemFyLlxyXG5cdCAqIFNpIGVsIHRpcG8gZXMgQ1VTVE9NIHNlIHRvbWFuIGxvcyB2YWxvcmVzIGRlbCBzZWd1bmRvIHBhcmFtZXRybyBkb25kZSBzZSBwdWVkZSBkZWZpbmlyIGxhIHNpbWJvbG9nw61hIHkgcG9zZXNpw7NuIHF1ZSBzZSBxdWllcmEuXHJcblx0ICogQHBhcmFtIGN1c3RvbVR5cGUgRm9ybWF0byBkZWwgcGFyw6FtZXRybyBlamVtcGxvIHsgY29kZTogJ0FSRycsIHN5bWJvbDogJyQnLCBwb3NpdGlvbjogJ0wnICwgd2l0aG91dERlY2ltYWxzOiBmYWxzZSB9ICxcclxuXHQgKiB0b2RhcyBsYXMga2V5IHNvbiBvcGNpb25hbGVzIHkgcG9yIGRlZmVjdG8gc2UgdG9tYW4gbG9zIHZhbG9yZXMgZGVsIGVqZW1wbG8uXHJcblx0ICogQHJldHVybnMgc2UgcmV0b3JuYSBsYSBjb25maWd1cmFjacOzbiBxdWUgc2Ugc2V0ZW8gYSBsYSBwcm9waWVkYWQgY3VycmVuY3kgZGVsIHNlcnZpY2lvLlxyXG5cdCAqL1xyXG5cdHB1YmxpYyBzZXRDdXJyZW5jeShjdXJyZW5jeVR5cGVGaW5kOiBjdXJyZW5jeVR5cGUsIGN1c3RvbVR5cGU/OiBDdXJyZW5jeUNvbmZpZyk6IEN1cnJlbmN5Q29uZmlnIHtcclxuXHRcdHRoaXMuY3VycmVuY3kgPSB0aGlzLmN1cnJlbmN5VHlwZUNvbmZpZy5maW5kKChjdDogQ3VycmVuY3lDb25maWcpID0+IGN0LmNvZGUgPT0gY3VycmVuY3lUeXBlRmluZC50b1VwcGVyQ2FzZSgpKSB8fCB0aGlzLmN1cnJlbmN5XHJcblx0XHRjdXN0b21UeXBlICYmICh0aGlzLmN1cnJlbmN5ID0geyAuLi50aGlzLmN1cnJlbmN5LCAuLi5jdXN0b21UeXBlIH0pXHJcblx0XHRyZXR1cm4gdGhpcy5jdXJyZW5jeTtcclxuXHR9O1xyXG5cclxuXHJcblx0cHVibGljIG1vZGlmeUNoYW5uZWxDb25maWcoY2hhbm5lbENvbmZpZzogYW55KSB7XHJcblx0XHRpZiAoY2hhbm5lbENvbmZpZy5jaGFubmVsIHx8IGNoYW5uZWxDb25maWcuY29kZSlcclxuXHRcdFx0dGhpcy5hcGlDb25zdGFudHMuc2V0Q2hhbm5lbChjaGFubmVsQ29uZmlnLmNoYW5uZWwgfHwgY2hhbm5lbENvbmZpZy5jb2RlKVxyXG5cclxuXHRcdGlmIChjaGFubmVsQ29uZmlnLmxvY2FsZSB8fCBjaGFubmVsQ29uZmlnLmxvY2FsZXMuY29kZSlcclxuXHRcdFx0dGhpcy5hcGlDb25zdGFudHMuc2V0TG9jYWxlKGNoYW5uZWxDb25maWcubG9jYWxlIHx8IGNoYW5uZWxDb25maWcubG9jYWxlcy5jb2RlKVxyXG5cclxuXHRcdGlmIChjaGFubmVsQ29uZmlnLmN1cnJlbmN5IHx8IGNoYW5uZWxDb25maWcuYmFzZUN1cnJlbmN5KVxyXG5cdFx0XHR0aGlzLnNldEN1cnJlbmN5KGNoYW5uZWxDb25maWcuY3VycmVuY3kgfHwgY2hhbm5lbENvbmZpZy5iYXNlQ3VycmVuY3kpXHJcblxyXG5cdFx0cmV0dXJuIGNoYW5uZWxDb25maWc7XHJcblx0fVxyXG5cclxuXHQvKipcclxuXHQqIEBkZXNjcmlwdGlvbiBzZSB1dGlsaXphIHBhcmEgY29uZmlndXJhciBxdWUgZmlsdHJvcyBkZWwgdGlwbyBgU29ydEZpbHRlcmAgc2UgcXVpZXJlIG1vc3RyYXIgZW4gbGEgdmlzdGEuXHJcblx0KiBTZSB1c2FuIGxvcyBjb2RpZ28gZGUgbG9zIGZpbHRyb3MgcGFyYSBpbmRpY2FyIGN1YWxlcyBzZSBkZWJlbiBtb3N0cmFyLlxyXG5cdCovXHJcblx0cHJpdmF0ZSBzb3J0RmlsdGVyczogc3RyaW5nW10gPSBbJ3ByaWNlJywgJ29yZGVyLWFscGgnLCAncmVjZW50J11cclxuXHJcblx0LyoqXHJcblx0ICpcclxuXHQgKiBAcGFyYW0gZmlsdGVyc0NvZGUgYXJyZWdsbyBkZSBzdHJpbmdzIGNvbiBsb3MgY29kaWdvcyBkZSBsb3MgZmlsdHJvcy5cclxuXHQgKiBTaSBzZSBsZSBwYXNhIGVsIHBhcmFtZXRybyAqKmFsbCoqIGVzdGUgbW9zdHJhcmEgdG9kb3MuXHJcblx0ICogQGV4YW1wbGUgcHJpY2UgfCBvcmRlci1hbHBoIHwgcmVjZW50IHwgdXBkYXRlIHwgYWxsXHJcblx0ICogQHJldHVybnNcclxuXHQgKi9cclxuXHRzZXRTb3J0RmlsdGVycyA9IChmaWx0ZXJzQ29kZTogc3RyaW5nW10gPSBbJ2FsbCddKSA9PiB0aGlzLnNvcnRGaWx0ZXJzID0gZmlsdGVyc0NvZGU7XHJcblxyXG5cdGdldFNvcnRGaWx0ZXJzID0gKCkgPT4gdGhpcy5zb3J0RmlsdGVycztcclxuXHJcblx0Ly8gQUJPVVQgUFJPRFVDVFMgXHJcblx0cHJpdmF0ZSBwcm9kdWN0c1dpdGhVbmlxdWVWYXJpYW50OiBib29sZWFuID0gZmFsc2U7XHJcblx0c2V0UHJvZHVjdFdpdGhVbmlxdWVWYXJpYW50KHZhbHVlOiBib29sZWFuKSB7IHRoaXMucHJvZHVjdHNXaXRoVW5pcXVlVmFyaWFudCA9IHZhbHVlOyB9XHJcblx0Z2V0UHJvZHVjdFdpdGhVbmlxdWVWYXJpYW50KCkgeyByZXR1cm4gdGhpcy5wcm9kdWN0c1dpdGhVbmlxdWVWYXJpYW50IH1cclxuXHJcblx0LyoqXHJcblx0KiBAZGVzY3JpcHRpb24gZXN0YSB2YXJpYWJsZSBzZSB1dGlsaXphIHBhcmEgY29uZmlndXJhciBsb3MgcGFyYW1ldHJvcyBjdWFuZG8gc2UgZGVzZWEgbW9zdHJhclxyXG5cdCogdmFyaWFudGVzIGVsIGxpc3RhZG8gZGUgcHJvZHVjdG9zLlxyXG5cdCogQHBhcmFtIHtzdHJpbmd9dHlwZSB0aXBvIGRlIG9wdGlvbnNcclxuXHQqIEBwYXJhbSB7c3RyaW5nfWNvZGUgY29kaWdvIGRlIG9wdGlvbnNcclxuXHQqIEBwYXJhbSB7Ym9vbGVhbn1kZWZhdWx0Rmlyc3RPcHRpb24gYHRydWVgIHRvbWEgZWwgcHJpbWVyIG9wdGlvbiBkZWwgcHJvZHVjdG8gZW4gZ2VuZXJhbFxyXG5cdCogQHBhcmFtIHtib29sZWFufWNoZWNrSWZTdG9jayBgdHJ1ZWAgc2UgcmVhbGl6YSB1biBjaGVxdWVvIGRlIHNpIGxhIHZhcmlhbnRlIHRpZW5lIHN0b2NrIHBhcmEgbW9zdHJhcmxhXHJcblx0KiBAZXhhbXBsZSAgYGBgamF2YXNjcmlwdFxyXG5cdCoge1xyXG5cdCAgIHR5cGU6ICdjb2xvcicsXHJcblx0ICAgY29kZTogJ2NvbG9yJyxcclxuXHQgICBkZWZhdWx0Rmlyc3RPcHRpb246IGZhbHNlICxcclxuXHQgICBjaGVja0lmU3RvY2s6dHJ1ZVxyXG5cdCAgIH0gYGBgXHJcblx0Ki9cclxuXHRwcml2YXRlIHBhcmFtc1Byb2R1Y3RzV2l0aFVuaXF1ZVZhcmlhbnQ6IFBhcmFtc1Byb2R1Y3RzV2l0aFVuaXF1ZVZhcmlhbnQgPSB7XHJcblx0XHR0eXBlOiAnY29sb3InLFxyXG5cdFx0Y29kZTogJ2NvbG9yJyxcclxuXHRcdGRlZmF1bHRGaXJzdE9wdGlvbjogZmFsc2UsXHJcblx0XHRjaGVja0lmU3RvY2s6IHRydWVcclxuXHR9XHJcblxyXG5cdHNldFBhcmFtc1Byb2R1Y3RzV2l0aFVuaXF1ZVZhcmlhbnQgPSAodmFsdWU6IFBhcmFtc1Byb2R1Y3RzV2l0aFVuaXF1ZVZhcmlhbnQpID0+IHtcclxuXHRcdHRoaXMucGFyYW1zUHJvZHVjdHNXaXRoVW5pcXVlVmFyaWFudCA9IHtcclxuXHRcdFx0Li4udGhpcy5wYXJhbXNQcm9kdWN0c1dpdGhVbmlxdWVWYXJpYW50LFxyXG5cdFx0XHQuLi52YWx1ZVxyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0Z2V0UGFyYW1zUHJvZHVjdHNXaXRoVW5pcXVlVmFyaWFudCA9ICgpID0+IHRoaXMucGFyYW1zUHJvZHVjdHNXaXRoVW5pcXVlVmFyaWFudFxyXG5cdFxyXG5cdHB1YmxpYyBnZXRDaGFubmVsKCl7XHJcblx0XHRyZXR1cm4gdGhpcy5hcGlDb25zdGFudHMuQ0hBTk5FTDtcclxuXHR9XHJcblxyXG5cdHB1YmxpYyBmb3JtX3NlbmRlcjogYm9vbGVhbiA9IGZhbHNlO1xyXG59XHJcbiJdfQ==
|
|
319
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS5jb25zdGFudHMuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLWVhc3ljb21tZXJjZS12MTgvc3JjL2xpYi9jb25zdGFudHMvY29yZS5jb25zdGFudHMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDaEUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDOUQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRTlELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGNBQWMsQ0FBQzs7QUFDakQ7Ozs7R0FJRztBQUlILE1BQU0sT0FBTyxvQkFBb0I7SUFFekIsV0FBVyxHQUFXLEVBQUUsQ0FBQztJQUNoQzs7T0FFRztJQUNLLFlBQVksR0FBRyxNQUFNLENBQUMsbUJBQW1CLENBQUMsQ0FBQTtJQUNsRDs7T0FFRztJQUNLLFVBQVUsR0FBUSxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUE7SUFDN0M7O09BRUc7SUFDSyxRQUFRLEdBQWEsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFBO0lBQzdDOztPQUVHO0lBQ0ssV0FBVyxHQUFnQixNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQTtJQUM1RDs7T0FFRztJQUNLLE1BQU0sQ0FBUztJQUV2QjtRQUNDLElBQUksaUJBQWlCLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUM7WUFDeEMsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUE7UUFDckIsQ0FBQztJQUNGLENBQUM7SUFDRDs7T0FFRztJQUNJLGtCQUFrQixHQUFXLGFBQWEsQ0FBQztJQUNsRDs7T0FFRztJQUNJLGNBQWMsR0FBVyxXQUFXLENBQUM7SUFDNUM7O09BRUc7SUFD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LENBQUMsQ0FBQyxDQUFDO0lBQ3ZGLDJCQUEyQixLQUFLLE9BQU8sSUFBSSxDQUFDLHlCQUF5QixDQUFBLENBQUMsQ0FBQztJQUV2RTs7Ozs7Ozs7Ozs7Ozs7TUFjRTtJQUNNLCtCQUErQixHQUFvQztRQUMxRSxJQUFJLEVBQUUsT0FBTztRQUNiLElBQUksRUFBRSxPQUFPO1FBQ2Isa0JBQWtCLEVBQUUsS0FBSztRQUN6QixZQUFZLEVBQUUsSUFBSTtLQUNsQixDQUFBO0lBRUQsa0NBQWtDLEdBQUcsQ0FBQyxLQUFzQyxFQUFFLEVBQUU7UUFDL0UsSUFBSSxDQUFDLCtCQUErQixHQUFHO1lBQ3RDLEdBQUcsSUFBSSxDQUFDLCtCQUErQjtZQUN2QyxHQUFHLEtBQUs7U0FDUixDQUFBO0lBQ0YsQ0FBQyxDQUFBO0lBRUQsa0NBQWtDLEdBQUcsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLCtCQUErQixDQUFBO0lBRXhFLFVBQVU7UUFDaEIsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQztJQUNsQyxDQUFDO0lBRU0sV0FBVyxHQUFZLEtBQUssQ0FBQzt3R0E5VXhCLG9CQUFvQjs0R0FBcEIsb0JBQW9CLGNBRnBCLE1BQU07OzRGQUVOLG9CQUFvQjtrQkFIaEMsVUFBVTttQkFBQztvQkFDWCxVQUFVLEVBQUUsTUFBTTtpQkFDbEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUsIFBMQVRGT1JNX0lEIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEFwaUNvbnN0YW50c1NlcnZpY2UgfSBmcm9tICcuL2FwaS5jb25zdGFudHMuc2VydmljZSc7XHJcbmltcG9ydCB7IGlzUGxhdGZvcm1Ccm93c2VyLCBET0NVTUVOVCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IEN1cnJlbmN5Q29uZmlnLCBjdXJyZW5jeVR5cGUsIFBhcmFtc1Byb2R1Y3RzV2l0aFVuaXF1ZVZhcmlhbnQsIEVudmlyb25tZW50IH0gZnJvbSAnLi4vaW50ZXJmYWNlcyc7XHJcbmltcG9ydCB7IEVOVklST05NRU5UX1RPS0VOIH0gZnJvbSAnLi4vcHJvdmlkZXJzJztcclxuLyoqXHJcbiAqIFNlcnZpY2lvIHF1ZSBwcm92ZWUgbGFzIGNvbnN0YW50ZXMgbmVjZXNhcmlhcyBxdWUgc2UgdXRpbGl6YW4gcG9yIHRvZGEgbGEgYXBsaWNhY2nDs24uXHJcbiAqIEBleHBvcnRcclxuICogQGNsYXNzIENvcmVDb25zdGFudHNTZXJ2aWNlXHJcbiAqL1xyXG5ASW5qZWN0YWJsZSh7XHJcblx0cHJvdmlkZWRJbjogJ3Jvb3QnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDb3JlQ29uc3RhbnRzU2VydmljZSB7XHJcblxyXG5cdHB1YmxpYyBzZWFyY2hWYWx1ZTogc3RyaW5nID0gJyc7XHJcblx0LyoqXHJcblx0ICogU2VydmljaW8gcXVlIGNvbnRpZW5lIGxhcyBjb25zdGFudGVzIHVzYWRhcyBwYXJhIGxhIEFQSVxyXG5cdCAqL1xyXG5cdHByaXZhdGUgYXBpQ29uc3RhbnRzID0gaW5qZWN0KEFwaUNvbnN0YW50c1NlcnZpY2UpXHJcblx0LyoqXHJcblx0ICogUHJvdmVlIGVsIElEIGRlIGxhIHBsYXRhZm9ybWEgZW4gZG9uZGUgc2UgZXN0YSBlamVjdXRhbmRvIGVsIGNvZGlnbywgZXN0byBzaXJ2ZSBwYXJhIHBvZGVyIGRpZmVyZW5jaWFyIHNpIGVzIGRlIHVuIHNlcnZpZG9yIG8gdW4gbmF2ZWdhZG9yIHdlYi5cclxuXHQgKi9cclxuXHRwcml2YXRlIHBsYXRmb3JtSWQ6IGFueSA9IGluamVjdChQTEFURk9STV9JRClcclxuXHQvKipcclxuXHQgKiBEb2N1bWVudCB0b2tlbiBwYXJhIGFjY2VzbyBTU1ItY29tcGF0aWJsZSBhbCBkb2N1bWVudG9cclxuXHQgKi9cclxuXHRwcml2YXRlIGRvY3VtZW50OiBEb2N1bWVudCA9IGluamVjdChET0NVTUVOVClcclxuXHQvKipcclxuXHQgKiBDb250aWVuZSBsb3MgZGF0b3MgcHJvdmlzdG8gcG9yIGVsIGZyb250ZW5kIGVuIGVsIGFyY2hpdm8gZW52aXJvbm1lbnQudHNcclxuXHQgKi9cclxuXHRwcml2YXRlIGVudmlyb25tZW50OiBFbnZpcm9ubWVudCA9IGluamVjdChFTlZJUk9OTUVOVF9UT0tFTilcclxuXHQvKipcclxuXHQgKiBHdWFyZGEgbGEgdmFyaWFibGUgd2luZG93IGRlbCB3ZWIgYnJvd3Nlci5cclxuXHQgKi9cclxuXHRwcml2YXRlIHdpbmRvdz86V2luZG93O1xyXG5cclxuXHRjb25zdHJ1Y3RvcigpIHtcclxuXHRcdGlmIChpc1BsYXRmb3JtQnJvd3Nlcih0aGlzLnBsYXRmb3JtSWQpKSB7XHJcblx0XHRcdHRoaXMud2luZG93ID0gd2luZG93XHJcblx0XHR9XHJcblx0fVxyXG5cdC8qKlxyXG5cdCAqIFBhdGggdXNhZG8gZW4gbGFzIGNvbGVjY2lvbmVzIGRlIHByb2R1Y3Rvcy5cclxuXHQgKi9cclxuXHRwdWJsaWMgUFJPRFVDVF9MSVNUX1JPVVRFOiBzdHJpbmcgPSAnY29sbGVjdGlvbi8nO1xyXG5cdC8qKlxyXG5cdCAqIFBhdGggdXNhZG8gcGFyYSBhY2NlZGVyIGEgbGFzIHNlY2Npb25lcy5cclxuXHQgKi9cclxuXHRwdWJsaWMgU0VDVElPTlNfUk9VVEU6IHN0cmluZyA9ICdzZWN0aW9ucy8nO1xyXG5cdC8qKlxyXG5cdCAqIFBhdGggcXVlIGFsb2phIGxhIGNhcnBldGEgZGUgbG9zIGFzc2V0cy5cclxuXHQgKi9cclxuXHRwdWJsaWMgcmVhZG9ubHkgQVNTRVRTX1VSTDogc3RyaW5nID0gdGhpcy5hcGlDb25zdGFudHMuQVBJX1VSTDtcclxuXHQvKipcclxuXHQgKiBSZXRvcm5hIGxhIHVybCBkb25kZSBzZSBndWFyZGEgbGFzIGltYWdlbmVzLlxyXG5cdCAqIEBwYXJhbSBwb3N0TWVkaWEgXHJcblx0ICogQHJldHVybnMgXHJcblx0ICovXHJcblx0cHVibGljIG1lZGlhVXJsID0gKHBvc3RNZWRpYT86IHN0cmluZykgPT4gdGhpcy5BU1NFVFNfVVJMICsgKHRoaXMuQVNTRVRTX1VSTCA9PSB0aGlzLmFwaUNvbnN0YW50cy5BUElfVVJMID8gJ21lZGlhLycgOiAnJykgKyAocG9zdE1lZGlhID8gcG9zdE1lZGlhIDogXCJpbWFnZS9cIik7XHJcblx0LyoqXHJcblx0ICogUmV0b3JuYSBsYSB1cmwgZG9uZGUgc2UgZ3VhcmRhIGxhcyBpbWFnZW5lcy5cclxuXHQgKiBAcGFyYW0gcG9zdE1lZGlhIFxyXG5cdCAqIEByZXR1cm5zIFxyXG5cdCAqL1xyXG5cdHB1YmxpYyBtZWRpYUltYWdlVXJsID0gKHBvc3RNZWRpYT86IHN0cmluZykgPT4gdGhpcy5BU1NFVFNfVVJMICsgKHRoaXMuQVNTRVRTX1VSTCA9PSB0aGlzLmFwaUNvbnN0YW50cy5BUElfVVJMID8gJ21lZGlhL2ltYWdlLycgOiAnJykgKyAocG9zdE1lZGlhID8gcG9zdE1lZGlhIDogXCJpbWFnZS9cIik7XHJcblx0LyoqXHJcblx0ICogUmV0b3JuYSBsYSB1cmwgZGVsIHNpdGlvLlxyXG5cdCAqIEBwYXJhbSBwb3N0TWVkaWEgXHJcblx0ICogQHJldHVybnMgXHJcblx0ICovXHJcblx0cHVibGljIHVybCA9ICgpID0+IHRoaXMuYXBpQ29uc3RhbnRzLkFQSV9VUkwucmVwbGFjZSgvXFwvJC8sICcnKTsgLy8gcmVtb3ZlIGxhc3Qgc2xhc2hcdFxyXG5cclxuXHQvKipcclxuXHQgKiBVUkwgZGVsIHNpdGlvIGZyb250ZW5kIC0gQ29tcGF0aWJsZSBjb24gQW5ndWxhciBTU1JcclxuXHQgKi9cclxuXHRwdWJsaWMgZ2V0IEZST05URU5EX1VSTCgpOiBzdHJpbmcge1xyXG5cdFx0Ly8gVmVyaWZpY2FyIHNpIGVzdGFtb3MgZW4gZWwgbmF2ZWdhZG9yXHJcblx0XHRpZiAoaXNQbGF0Zm9ybUJyb3dzZXIodGhpcy5wbGF0Zm9ybUlkKSkge1xyXG5cdFx0XHQvLyBQcmltZXJvIGludGVudGEgbGVlciBkZSB3aW5kb3cuX19lbnYgKGNvbmZpZ3VyYWRvIHBvciBEb2NrZXIvQ0kpXHJcblx0XHRcdGNvbnN0IHdpbmRvd0VudiA9ICh0aGlzLndpbmRvdyBhcyBhbnkpPy5fX2VudjtcclxuXHRcdFx0aWYgKHdpbmRvd0Vudj8uZnJvbnRlbmRVcmwpIHtcclxuXHRcdFx0XHQvLyBMb2cgcGFyYSBkZWJ1Z2dpbmcgZW4gZGVzYXJyb2xsb1xyXG5cdFx0XHRcdGlmICghd2luZG93RW52LmZyb250ZW5kVXJsLnN0YXJ0c1dpdGgoJ2h0dHAnKSkge1xyXG5cdFx0XHRcdFx0Y29uc29sZS53YXJuKCdbRlJPTlRFTkRfVVJMXSBJbnZhbGlkIGZyb250ZW5kVXJsIGZvcm1hdDonLCB3aW5kb3dFbnYuZnJvbnRlbmRVcmwpO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHRyZXR1cm4gd2luZG93RW52LmZyb250ZW5kVXJsO1xyXG5cdFx0XHR9XHJcblx0XHRcdFxyXG5cdFx0XHQvLyBTaSBubyBoYXkgY29uZmlndXJhY2nDs24gZXNwZWPDrWZpY2EsIGNvbnN0cnVpciBkZXNkZSB3aW5kb3cubG9jYXRpb25cclxuXHRcdFx0aWYgKHRoaXMud2luZG93Py5sb2NhdGlvbikge1xyXG5cdFx0XHRcdGNvbnN0IHVybCA9IGAke3RoaXMud2luZG93LmxvY2F0aW9uLnByb3RvY29sfS8vJHt0aGlzLndpbmRvdy5sb2NhdGlvbi5ob3N0fWA7XHJcblx0XHRcdFx0Ly8gVmVyaWZpY2FyIHF1ZSBubyBzZWEgbG9jYWxob3N0IG8gMTI3LjAuMC4xIGVuIHByb2R1Y2Npw7NuXHJcblx0XHRcdFx0aWYgKHVybC5pbmNsdWRlcygnMTI3LjAuMC4xJykgfHwgdXJsLmluY2x1ZGVzKCdsb2NhbGhvc3QnKSkge1xyXG5cdFx0XHRcdFx0Y29uc29sZS53YXJuKCdbRlJPTlRFTkRfVVJMXSBVc2luZyBsb2NhbGhvc3QgVVJMIGluIHByb2R1Y3Rpb24sIGNvbnNpZGVyIHNldHRpbmcgd2luZG93Ll9fZW52LmZyb250ZW5kVXJsJyk7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdHJldHVybiB1cmw7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdFxyXG5cdFx0Ly8gUGFyYSBTU1IsIGludGVudGFyIGNvbnN0cnVpciBkZXNkZSBlbCBkb2N1bWVudCBzaSBlc3TDoSBkaXNwb25pYmxlXHJcblx0XHRpZiAoaXNQbGF0Zm9ybUJyb3dzZXIodGhpcy5wbGF0Zm9ybUlkKSAmJiB0aGlzLmRvY3VtZW50Py5sb2NhdGlvbikge1xyXG5cdFx0XHRyZXR1cm4gYCR7dGhpcy5kb2N1bWVudC5sb2NhdGlvbi5wcm90b2NvbH0vLyR7dGhpcy5kb2N1bWVudC5sb2NhdGlvbi5ob3N0fWA7XHJcblx0XHR9XHJcblx0XHRcclxuXHRcdC8vIEludGVudGFyIG9idGVuZXIgZGVzZGUgZW52aXJvbm1lbnRcclxuXHRcdGlmICh0aGlzLmVudmlyb25tZW50LmZyb250ZW5kVXJsKSB7XHJcblx0XHRcdHJldHVybiB0aGlzLmVudmlyb25tZW50LmZyb250ZW5kVXJsO1xyXG5cdFx0fVxyXG5cdFx0XHJcblx0XHQvLyDDmmx0aW1vIGZhbGxiYWNrIC0gdXNhciBsYSBVUkwgZGVsIEFQSSBzaSBlc3TDoSBjb25maWd1cmFkYSB5IGVzIGFic29sdXRhXHJcblx0XHRjb25zdCBhcGlVcmwgPSB0aGlzLmFwaUNvbnN0YW50cy5BUElfVVJMO1xyXG5cdFx0aWYgKGFwaVVybCAmJiAoYXBpVXJsLnN0YXJ0c1dpdGgoJ2h0dHA6Ly8nKSB8fCBhcGlVcmwuc3RhcnRzV2l0aCgnaHR0cHM6Ly8nKSkpIHtcclxuXHRcdFx0dHJ5IHtcclxuXHRcdFx0XHRjb25zdCB1cmwgPSBuZXcgVVJMKGFwaVVybCk7XHJcblx0XHRcdFx0cmV0dXJuIGAke3VybC5wcm90b2NvbH0vLyR7dXJsLmhvc3R9YDtcclxuXHRcdFx0fSBjYXRjaCAoZSkge1xyXG5cdFx0XHRcdGNvbnNvbGUud2FybignW0ZST05URU5EX1VSTF0gQ291bGQgbm90IHBhcnNlIEFQSSBVUkwgYXMgZmFsbGJhY2s6JywgYXBpVXJsKTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0XHJcblx0XHQvLyBGYWxsYmFjayBmaW5hbCAtIHJldG9ybmFyIFVSTCB2YWPDrWFcclxuXHRcdGNvbnNvbGUud2FybignW0ZST05URU5EX1VSTF0gTm8gdmFsaWQgZnJvbnRlbmQgVVJMIGZvdW5kLCB0aGlzIG1heSBjYXVzZSBpc3N1ZXMgd2l0aCBtZXRhIHRhZ3MnKTtcclxuXHRcdHJldHVybiAnJztcclxuXHR9XHJcblxyXG5cdC8qKlxyXG5cdCAqIFJldG9ybmEgbGEgVVJMIGNvbXBsZXRhIGRlbCBmcm9udGVuZCBjb24gdW5hIHJ1dGEgb3BjaW9uYWxcclxuXHQgKiBAcGFyYW0gcGF0aCAtIFJ1dGEgb3BjaW9uYWwgcGFyYSBhZ3JlZ2FyIGEgbGEgVVJMIGJhc2VcclxuXHQgKiBAcmV0dXJucyB7c3RyaW5nfSBVUkwgY29tcGxldGEgZGVsIGZyb250ZW5kXHJcblx0ICovXHJcblx0cHVibGljIGdldEZyb250ZW5kVXJsID0gKHBhdGg/OiBzdHJpbmcpOiBzdHJpbmcgPT4ge1xyXG5cdFx0Y29uc3QgYmFzZVVybCA9IHRoaXMuRlJPTlRFTkRfVVJMO1xyXG5cdFx0aWYgKCFwYXRoKSB7XHJcblx0XHRcdHJldHVybiBiYXNlVXJsO1xyXG5cdFx0fVxyXG5cdFx0XHJcblx0XHQvLyBBc2VndXJhciBxdWUgbGEgcnV0YSBjb21pZW5jZSBjb24gJy8nIHkgbm8gdGVuZ2EgZG9ibGUgc2xhc2hcclxuXHRcdGNvbnN0IGNsZWFuUGF0aCA9IHBhdGguc3RhcnRzV2l0aCgnLycpID8gcGF0aCA6IGAvJHtwYXRofWA7XHJcblx0XHRjb25zdCBjbGVhbkJhc2VVcmwgPSBiYXNlVXJsLmVuZHNXaXRoKCcvJykgPyBiYXNlVXJsLnNsaWNlKDAsIC0xKSA6IGJhc2VVcmw7XHJcblx0XHRcclxuXHRcdHJldHVybiBgJHtjbGVhbkJhc2VVcmx9JHtjbGVhblBhdGh9YDtcclxuXHR9XHJcblxyXG5cdC8qKlxyXG5cdCAqIFJldG9ybmEgbGEgVVJMIGFic29sdXRhIGRlIHVuYSBpbWFnZW4gcGFyYSBtZXRhIHRhZ3MgKGNvbXBhdGlibGUgY29uIFNTUilcclxuXHQgKiBAcGFyYW0gcG9zdE1lZGlhIC0gUnV0YSBkZSBsYSBpbWFnZW5cclxuXHQgKiBAcmV0dXJucyB7c3RyaW5nfSBVUkwgYWJzb2x1dGEgZGUgbGEgaW1hZ2VuXHJcblx0ICovXHJcblx0cHVibGljIGdldEFic29sdXRlSW1hZ2VVcmwgPSAocG9zdE1lZGlhPzogc3RyaW5nKTogc3RyaW5nID0+IHtcclxuXHRcdC8vIFNpIGxhIFVSTCB5YSBlcyBhYnNvbHV0YSwgZGV2b2x2ZXJsYSB0YWwgY29tbyBlc3TDoVxyXG5cdFx0aWYgKHBvc3RNZWRpYSAmJiAocG9zdE1lZGlhLnN0YXJ0c1dpdGgoJ2h0dHA6Ly8nKSB8fCBwb3N0TWVkaWEuc3RhcnRzV2l0aCgnaHR0cHM6Ly8nKSkpIHtcclxuXHRcdFx0cmV0dXJuIHBvc3RNZWRpYTtcclxuXHRcdH1cclxuXHJcblx0XHQvLyBDb25zdHJ1aXIgbGEgVVJMIGRlIGxhIGltYWdlbiB1c2FuZG8gbGEgVVJMIGRlbCBBUElcclxuXHRcdGNvbnN0IGltYWdlVXJsID0gdGhpcy5tZWRpYUltYWdlVXJsKHBvc3RNZWRpYSk7XHJcblx0XHRcclxuXHRcdC8vIFNpIGxhIFVSTCBkZSBsYSBpbWFnZW4geWEgZXMgYWJzb2x1dGEsIGRldm9sdmVybGFcclxuXHRcdGlmIChpbWFnZVVybC5zdGFydHNXaXRoKCdodHRwOi8vJykgfHwgaW1hZ2VVcmwuc3RhcnRzV2l0aCgnaHR0cHM6Ly8nKSkge1xyXG5cdFx0XHRyZXR1cm4gaW1hZ2VVcmw7XHJcblx0XHR9XHJcblx0XHRcclxuXHRcdC8vIFNpIGVzIHVuYSBVUkwgcmVsYXRpdmEsIGNvbnZlcnRpcmxhIGEgYWJzb2x1dGEgdXNhbmRvIGxhIFVSTCBiYXNlIGRlbCBBUElcclxuXHRcdGNvbnN0IGFwaUJhc2VVcmwgPSB0aGlzLmFwaUNvbnN0YW50cy5BUElfVVJMO1xyXG5cdFx0aWYgKGFwaUJhc2VVcmwuc3RhcnRzV2l0aCgnaHR0cDovLycpIHx8IGFwaUJhc2VVcmwuc3RhcnRzV2l0aCgnaHR0cHM6Ly8nKSkge1xyXG5cdFx0XHQvLyBBUElfVVJMIHlhIGVzIGFic29sdXRhXHJcblx0XHRcdHJldHVybiBpbWFnZVVybDtcclxuXHRcdH1cclxuXHRcdFxyXG5cdFx0Ly8gU2kgQVBJX1VSTCBlcyByZWxhdGl2YSwgdXNhciBsYSBVUkwgZGVsIGZyb250ZW5kIGNvbW8gYmFzZVxyXG5cdFx0Y29uc3QgZnJvbnRlbmRVcmwgPSB0aGlzLkZST05URU5EX1VSTDtcclxuXHRcdGlmICghZnJvbnRlbmRVcmwpIHtcclxuXHRcdFx0cmV0dXJuIGltYWdlVXJsOyAvLyBGYWxsYmFjayBzaSBubyBwb2RlbW9zIGRldGVybWluYXIgbGEgVVJMIGRlbCBmcm9udGVuZFxyXG5cdFx0fVxyXG5cdFx0XHJcblx0XHQvLyBDb25zdHJ1aXIgVVJMIGFic29sdXRhXHJcblx0XHRjb25zdCBjbGVhbkFwaVVybCA9IGFwaUJhc2VVcmwuc3RhcnRzV2l0aCgnLycpID8gYXBpQmFzZVVybC5zdWJzdHJpbmcoMSkgOiBhcGlCYXNlVXJsO1xyXG5cdFx0Y29uc3QgY2xlYW5Gcm9udGVuZFVybCA9IGZyb250ZW5kVXJsLmVuZHNXaXRoKCcvJykgPyBmcm9udGVuZFVybC5zbGljZSgwLCAtMSkgOiBmcm9udGVuZFVybDtcclxuXHRcdGNvbnN0IGNsZWFuSW1hZ2VVcmwgPSBpbWFnZVVybC5zdGFydHNXaXRoKCcvJykgPyBpbWFnZVVybC5zdWJzdHJpbmcoMSkgOiBpbWFnZVVybDtcclxuXHRcdFxyXG5cdFx0cmV0dXJuIGAke2NsZWFuRnJvbnRlbmRVcmx9LyR7Y2xlYW5BcGlVcmx9JHtjbGVhbkltYWdlVXJsfWA7XHJcblx0fVxyXG5cclxuXHQvKipcclxuXHQgKiBSZXRvcm5hIGxhIHVybCBkZSBsYXMgaW1hZ2VuZXMgZGUgbG9zIGJhbm5lcnNcclxuXHQgKiBAcmV0dXJucyBcclxuXHQgKi9cclxuXHRwdWJsaWMgbWVkaWFCYW5uZXJVcmwgPSAoKSA9PiB0aGlzLkFTU0VUU19VUkwgKyAodGhpcy5BU1NFVFNfVVJMID09IHRoaXMuYXBpQ29uc3RhbnRzLkFQSV9VUkwgPyAnbWVkaWEvJyA6ICcnKSArIFwiYmFubmVyLWltYWdlL1wiO1xyXG5cdFxyXG5cdG1lZGlhU3RvcmVVcmwgPSAoKSA9PiB0aGlzLkFTU0VUU19VUkwgKyAodGhpcy5BU1NFVFNfVVJMID09IHRoaXMuYXBpQ29uc3RhbnRzLkFQSV9VUkwgPyAnbWVkaWEvJyA6ICcnKSArIFwic3RvcmUtaW1hZ2UvXCI7XHJcblx0XHJcblx0LyoqXHJcblx0ICogUmV0b3JuYSBgdHJ1ZWAgc2kgbGEgdmlzdGEgZXMgbW9iaWxlLCBgZmFsc2VgIGNhc28gY29udHJhcmlvLlxyXG5cdCAqIEByZXR1cm5zIHtib29sZWFufVxyXG5cdCAqL1xyXG5cdHB1YmxpYyBtb2JpbGVTY3JlZW4gPSAoKTogYm9vbGVhbiA9PiB0aGlzLndpbmRvdyAmJiB0aGlzLndpbmRvdz8uaW5uZXJXaWR0aCA8IDc1MCB8fCBmYWxzZTtcclxuXHQvKipcclxuXHQgKiBDb250aWVuZSBsb3MgdmFsb3JlcyBwYXJhIGxhIG1vbmVkYSBhY3R1YWxcclxuXHQgKi9cclxuXHRwdWJsaWMgY3VycmVuY3k6IEN1cnJlbmN5Q29uZmlnID0ge1xyXG5cdFx0Y29kZTogJ0FSRycsXHJcblx0XHRzeW1ib2w6ICckJyxcclxuXHRcdHBvc2l0aW9uOiAnTGVmdCcsXHJcblx0XHR3aXRob3V0RGVjaW1hbDogZmFsc2VcclxuXHR9O1xyXG5cclxuXHQvKipcclxuXHQgKiBBcnJlZ2xvIGRlIHZhbG9yZXMgdXNhZG9zIHBhcmEgZWwgcGlwZSBjdXJyZW5jeVByaWNlXHJcblx0ICovXHJcblx0cHVibGljIGN1cnJlbmN5VHlwZUNvbmZpZzogQ3VycmVuY3lDb25maWdbXSA9IFtcclxuXHRcdHtcclxuXHRcdFx0Y29kZTogJ0VVUicsXHJcblx0XHRcdHN5bWJvbDogJ+KCrCcsXHJcblx0XHRcdHBvc2l0aW9uOiAnUmlnaHQnLFxyXG5cdFx0XHR3aXRob3V0RGVjaW1hbDogZmFsc2VcclxuXHJcblx0XHR9LFxyXG5cdFx0e1xyXG5cdFx0XHRjb2RlOiAnQVJHJyxcclxuXHRcdFx0c3ltYm9sOiAnJCcsXHJcblx0XHRcdHBvc2l0aW9uOiAnTGVmdCcsXHJcblx0XHRcdHdpdGhvdXREZWNpbWFsOiBmYWxzZVxyXG5cdFx0fSxcclxuXHRcdHtcclxuXHRcdFx0Y29kZTogJ0FSUycsXHJcblx0XHRcdHN5bWJvbDogJyQnLFxyXG5cdFx0XHRwb3NpdGlvbjogJ0xlZnQnLFxyXG5cdFx0XHR3aXRob3V0RGVjaW1hbDogZmFsc2VcclxuXHRcdH0sXHJcblx0XHR7XHJcblx0XHRcdGNvZGU6ICdVU0QnLFxyXG5cdFx0XHRzeW1ib2w6ICckJyxcclxuXHRcdFx0cG9zaXRpb246ICdMZWZ0JyxcclxuXHRcdFx0d2l0aG91dERlY2ltYWw6IGZhbHNlXHJcblx0XHR9LFxyXG5cdFx0e1xyXG5cdFx0XHRjb2RlOiAnUFlHJyxcclxuXHRcdFx0c3ltYm9sOiAnR3MuJyxcclxuXHRcdFx0cG9zaXRpb246ICdMZWZ0JyxcclxuXHRcdFx0d2l0aG91dERlY2ltYWw6IGZhbHNlXHJcblx0XHR9LFxyXG5cdFx0e1xyXG5cdFx0XHRjb2RlOiAnUEVOJyxcclxuXHRcdFx0c3ltYm9sOiAnUy8nLFxyXG5cdFx0XHRwb3NpdGlvbjogJ0xlZnQnLFxyXG5cdFx0XHR3aXRob3V0RGVjaW1hbDogZmFsc2VcclxuXHRcdH0sXHJcblx0XHR7XHJcblx0XHRcdGNvZGU6ICdTRUsnLFxyXG5cdFx0XHRzeW1ib2w6ICdTRUsnLFxyXG5cdFx0XHRwb3NpdGlvbjogJ1JpZ2h0JyxcclxuXHRcdFx0d2l0aG91dERlY2ltYWw6IHRydWVcclxuXHRcdH0sXHJcblx0XVxyXG5cdC8qKlxyXG5cdCAqIENhbWJpYSBsYSBjb25maWd1cmFjacOzbiBkZSBsYSBtb25lZGEuXHJcblx0ICogQHBhcmFtIGN1cnJlbmN5VHlwZUNvbmZpZyBBcnJlZ2xvIGNvbiBsYXMgZGlzdGludGFzIG1vbmVkYXMuXHJcblx0ICovXHJcblx0cHVibGljIHNldEN1cnJlbmN5VHlwZUNvbmZpZyhjdXJyZW5jeVR5cGVDb25maWc6IEN1cnJlbmN5Q29uZmlnW10pIHtcclxuXHRcdHRoaXMuY3VycmVuY3lUeXBlQ29uZmlnID0gY3VycmVuY3lUeXBlQ29uZmlnO1xyXG5cdH1cclxuXHJcblx0LyoqXHJcblx0ICogQHBhcmFtIGN1cnJlbmN5VHlwZUZpbmQgRGVmaW5pciBlbCBjb2RlIGRlbCB0aXBvIGRlIG1vbmVkYSBxdWUgc2UgcXVpZXJhIHV0aWxpemFyLlxyXG5cdCAqIFNpIGVsIHRpcG8gZXMgQ1VTVE9NIHNlIHRvbWFuIGxvcyB2YWxvcmVzIGRlbCBzZWd1bmRvIHBhcmFtZXRybyBkb25kZSBzZSBwdWVkZSBkZWZpbmlyIGxhIHNpbWJvbG9nw61hIHkgcG9zZXNpw7NuIHF1ZSBzZSBxdWllcmEuXHJcblx0ICogQHBhcmFtIGN1c3RvbVR5cGUgRm9ybWF0byBkZWwgcGFyw6FtZXRybyBlamVtcGxvIHsgY29kZTogJ0FSRycsIHN5bWJvbDogJyQnLCBwb3NpdGlvbjogJ0wnICwgd2l0aG91dERlY2ltYWxzOiBmYWxzZSB9ICxcclxuXHQgKiB0b2RhcyBsYXMga2V5IHNvbiBvcGNpb25hbGVzIHkgcG9yIGRlZmVjdG8gc2UgdG9tYW4gbG9zIHZhbG9yZXMgZGVsIGVqZW1wbG8uXHJcblx0ICogQHJldHVybnMgc2UgcmV0b3JuYSBsYSBjb25maWd1cmFjacOzbiBxdWUgc2Ugc2V0ZW8gYSBsYSBwcm9waWVkYWQgY3VycmVuY3kgZGVsIHNlcnZpY2lvLlxyXG5cdCAqL1xyXG5cdHB1YmxpYyBzZXRDdXJyZW5jeShjdXJyZW5jeVR5cGVGaW5kOiBjdXJyZW5jeVR5cGUsIGN1c3RvbVR5cGU/OiBDdXJyZW5jeUNvbmZpZyk6IEN1cnJlbmN5Q29uZmlnIHtcclxuXHRcdHRoaXMuY3VycmVuY3kgPSB0aGlzLmN1cnJlbmN5VHlwZUNvbmZpZy5maW5kKChjdDogQ3VycmVuY3lDb25maWcpID0+IGN0LmNvZGUgPT0gY3VycmVuY3lUeXBlRmluZC50b1VwcGVyQ2FzZSgpKSB8fCB0aGlzLmN1cnJlbmN5XHJcblx0XHRjdXN0b21UeXBlICYmICh0aGlzLmN1cnJlbmN5ID0geyAuLi50aGlzLmN1cnJlbmN5LCAuLi5jdXN0b21UeXBlIH0pXHJcblx0XHRyZXR1cm4gdGhpcy5jdXJyZW5jeTtcclxuXHR9O1xyXG5cclxuXHJcblx0cHVibGljIG1vZGlmeUNoYW5uZWxDb25maWcoY2hhbm5lbENvbmZpZzogYW55KSB7XHJcblx0XHRpZiAoY2hhbm5lbENvbmZpZy5jaGFubmVsIHx8IGNoYW5uZWxDb25maWcuY29kZSlcclxuXHRcdFx0dGhpcy5hcGlDb25zdGFudHMuc2V0Q2hhbm5lbChjaGFubmVsQ29uZmlnLmNoYW5uZWwgfHwgY2hhbm5lbENvbmZpZy5jb2RlKVxyXG5cclxuXHRcdGlmIChjaGFubmVsQ29uZmlnLmxvY2FsZSB8fCBjaGFubmVsQ29uZmlnLmxvY2FsZXMuY29kZSlcclxuXHRcdFx0dGhpcy5hcGlDb25zdGFudHMuc2V0TG9jYWxlKGNoYW5uZWxDb25maWcubG9jYWxlIHx8IGNoYW5uZWxDb25maWcubG9jYWxlcy5jb2RlKVxyXG5cclxuXHRcdGlmIChjaGFubmVsQ29uZmlnLmN1cnJlbmN5IHx8IGNoYW5uZWxDb25maWcuYmFzZUN1cnJlbmN5KVxyXG5cdFx0XHR0aGlzLnNldEN1cnJlbmN5KGNoYW5uZWxDb25maWcuY3VycmVuY3kgfHwgY2hhbm5lbENvbmZpZy5iYXNlQ3VycmVuY3kpXHJcblxyXG5cdFx0cmV0dXJuIGNoYW5uZWxDb25maWc7XHJcblx0fVxyXG5cclxuXHQvKipcclxuXHQqIEBkZXNjcmlwdGlvbiBzZSB1dGlsaXphIHBhcmEgY29uZmlndXJhciBxdWUgZmlsdHJvcyBkZWwgdGlwbyBgU29ydEZpbHRlcmAgc2UgcXVpZXJlIG1vc3RyYXIgZW4gbGEgdmlzdGEuXHJcblx0KiBTZSB1c2FuIGxvcyBjb2RpZ28gZGUgbG9zIGZpbHRyb3MgcGFyYSBpbmRpY2FyIGN1YWxlcyBzZSBkZWJlbiBtb3N0cmFyLlxyXG5cdCovXHJcblx0cHJpdmF0ZSBzb3J0RmlsdGVyczogc3RyaW5nW10gPSBbJ3ByaWNlJywgJ29yZGVyLWFscGgnLCAncmVjZW50J11cclxuXHJcblx0LyoqXHJcblx0ICpcclxuXHQgKiBAcGFyYW0gZmlsdGVyc0NvZGUgYXJyZWdsbyBkZSBzdHJpbmdzIGNvbiBsb3MgY29kaWdvcyBkZSBsb3MgZmlsdHJvcy5cclxuXHQgKiBTaSBzZSBsZSBwYXNhIGVsIHBhcmFtZXRybyAqKmFsbCoqIGVzdGUgbW9zdHJhcmEgdG9kb3MuXHJcblx0ICogQGV4YW1wbGUgcHJpY2UgfCBvcmRlci1hbHBoIHwgcmVjZW50IHwgdXBkYXRlIHwgYWxsXHJcblx0ICogQHJldHVybnNcclxuXHQgKi9cclxuXHRzZXRTb3J0RmlsdGVycyA9IChmaWx0ZXJzQ29kZTogc3RyaW5nW10gPSBbJ2FsbCddKSA9PiB0aGlzLnNvcnRGaWx0ZXJzID0gZmlsdGVyc0NvZGU7XHJcblxyXG5cdGdldFNvcnRGaWx0ZXJzID0gKCkgPT4gdGhpcy5zb3J0RmlsdGVycztcclxuXHJcblx0Ly8gQUJPVVQgUFJPRFVDVFMgXHJcblx0cHJpdmF0ZSBwcm9kdWN0c1dpdGhVbmlxdWVWYXJpYW50OiBib29sZWFuID0gZmFsc2U7XHJcblx0c2V0UHJvZHVjdFdpdGhVbmlxdWVWYXJpYW50KHZhbHVlOiBib29sZWFuKSB7IHRoaXMucHJvZHVjdHNXaXRoVW5pcXVlVmFyaWFudCA9IHZhbHVlOyB9XHJcblx0Z2V0UHJvZHVjdFdpdGhVbmlxdWVWYXJpYW50KCkgeyByZXR1cm4gdGhpcy5wcm9kdWN0c1dpdGhVbmlxdWVWYXJpYW50IH1cclxuXHJcblx0LyoqXHJcblx0KiBAZGVzY3JpcHRpb24gZXN0YSB2YXJpYWJsZSBzZSB1dGlsaXphIHBhcmEgY29uZmlndXJhciBsb3MgcGFyYW1ldHJvcyBjdWFuZG8gc2UgZGVzZWEgbW9zdHJhclxyXG5cdCogdmFyaWFudGVzIGVsIGxpc3RhZG8gZGUgcHJvZHVjdG9zLlxyXG5cdCogQHBhcmFtIHtzdHJpbmd9dHlwZSB0aXBvIGRlIG9wdGlvbnNcclxuXHQqIEBwYXJhbSB7c3RyaW5nfWNvZGUgY29kaWdvIGRlIG9wdGlvbnNcclxuXHQqIEBwYXJhbSB7Ym9vbGVhbn1kZWZhdWx0Rmlyc3RPcHRpb24gYHRydWVgIHRvbWEgZWwgcHJpbWVyIG9wdGlvbiBkZWwgcHJvZHVjdG8gZW4gZ2VuZXJhbFxyXG5cdCogQHBhcmFtIHtib29sZWFufWNoZWNrSWZTdG9jayBgdHJ1ZWAgc2UgcmVhbGl6YSB1biBjaGVxdWVvIGRlIHNpIGxhIHZhcmlhbnRlIHRpZW5lIHN0b2NrIHBhcmEgbW9zdHJhcmxhXHJcblx0KiBAZXhhbXBsZSAgYGBgamF2YXNjcmlwdFxyXG5cdCoge1xyXG5cdCAgIHR5cGU6ICdjb2xvcicsXHJcblx0ICAgY29kZTogJ2NvbG9yJyxcclxuXHQgICBkZWZhdWx0Rmlyc3RPcHRpb246IGZhbHNlICxcclxuXHQgICBjaGVja0lmU3RvY2s6dHJ1ZVxyXG5cdCAgIH0gYGBgXHJcblx0Ki9cclxuXHRwcml2YXRlIHBhcmFtc1Byb2R1Y3RzV2l0aFVuaXF1ZVZhcmlhbnQ6IFBhcmFtc1Byb2R1Y3RzV2l0aFVuaXF1ZVZhcmlhbnQgPSB7XHJcblx0XHR0eXBlOiAnY29sb3InLFxyXG5cdFx0Y29kZTogJ2NvbG9yJyxcclxuXHRcdGRlZmF1bHRGaXJzdE9wdGlvbjogZmFsc2UsXHJcblx0XHRjaGVja0lmU3RvY2s6IHRydWVcclxuXHR9XHJcblxyXG5cdHNldFBhcmFtc1Byb2R1Y3RzV2l0aFVuaXF1ZVZhcmlhbnQgPSAodmFsdWU6IFBhcmFtc1Byb2R1Y3RzV2l0aFVuaXF1ZVZhcmlhbnQpID0+IHtcclxuXHRcdHRoaXMucGFyYW1zUHJvZHVjdHNXaXRoVW5pcXVlVmFyaWFudCA9IHtcclxuXHRcdFx0Li4udGhpcy5wYXJhbXNQcm9kdWN0c1dpdGhVbmlxdWVWYXJpYW50LFxyXG5cdFx0XHQuLi52YWx1ZVxyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0Z2V0UGFyYW1zUHJvZHVjdHNXaXRoVW5pcXVlVmFyaWFudCA9ICgpID0+IHRoaXMucGFyYW1zUHJvZHVjdHNXaXRoVW5pcXVlVmFyaWFudFxyXG5cdFxyXG5cdHB1YmxpYyBnZXRDaGFubmVsKCl7XHJcblx0XHRyZXR1cm4gdGhpcy5hcGlDb25zdGFudHMuQ0hBTk5FTDtcclxuXHR9XHJcblxyXG5cdHB1YmxpYyBmb3JtX3NlbmRlcjogYm9vbGVhbiA9IGZhbHNlO1xyXG59XHJcbiJdfQ==
|
|
@@ -117,6 +117,22 @@ export class MenuEcComponent {
|
|
|
117
117
|
hasVisibleProperty(category) {
|
|
118
118
|
return category.isVisible === true;
|
|
119
119
|
}
|
|
120
|
+
filterVisibleTree(list) {
|
|
121
|
+
return (list ?? [])
|
|
122
|
+
.filter((n) => n?.isVisible === true)
|
|
123
|
+
.map(n => ({ ...n, children: this.filterVisibleTree(n.children) }));
|
|
124
|
+
}
|
|
125
|
+
// Exponé streams ya filtrados
|
|
126
|
+
categoriesVisible$ = this.categories$.pipe(map((list) => this.filterVisibleTree(list)));
|
|
127
|
+
sectionsVisible$ = this.sections$.pipe(map((list) => this.filterVisibleTree(list)));
|
|
128
|
+
attributesVisible$ = this.attributes$.pipe(map((list) => this.filterVisibleTree(list)));
|
|
129
|
+
// Helpers de conveniencia opcionales
|
|
130
|
+
getVisibleChildren(node) {
|
|
131
|
+
return this.filterVisibleTree(node?.children);
|
|
132
|
+
}
|
|
133
|
+
hasVisibleChildren(node) {
|
|
134
|
+
return this.getVisibleChildren(node).length > 0;
|
|
135
|
+
}
|
|
120
136
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MenuEcComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
121
137
|
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: MenuEcComponent, isStandalone: true, selector: "lib-footer-ec", ngImport: i0, template: '<p>Menu and Footer Helper Component</p>', isInline: true });
|
|
122
138
|
}
|
|
@@ -129,4 +145,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
129
145
|
template: '<p>Menu and Footer Helper Component</p>'
|
|
130
146
|
}]
|
|
131
147
|
}], ctorParameters: () => [] });
|
|
132
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS1lYy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1lYXN5Y29tbWVyY2UtdjE4L3NyYy9saWIvZWMtY29tcG9uZW50cy9hYnN0cmFjdGlvbnMtY29tcG9uZW50cy9tZW51LWVjLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWdDLFNBQVMsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDaEYsT0FBTyxFQUFFLFdBQVcsRUFBRSxjQUFjLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNuRixPQUFPLEVBQUUsR0FBRyxFQUFjLE1BQU0sTUFBTSxDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRXZELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQzs7QUFLL0Q7Ozs7R0FJRztBQU9ILE1BQU0sT0FBTyxlQUFlO0lBQ25CLGNBQWMsR0FBRyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUE7SUFDdkMsaUJBQWlCLEdBQUcsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUE7SUFDN0MsWUFBWSxHQUFnQixNQUFNLENBQUMsV0FBVyxDQUFDLENBQUE7SUFDL0MsYUFBYSxHQUFpQixNQUFNLENBQUMsWUFBWSxDQUFDLENBQUE7SUFDMUQ7O09BRUc7SUFDSyxNQUFNLEdBQUcsTUFBTSxDQUFDLG9CQUFvQixDQUFDLENBQUE7SUFFN0M7O09BRUc7SUFDSSxXQUFXLEdBQTJCLElBQUksQ0FBQyxjQUFjLENBQUMsYUFBYSxFQUFFLENBQUE7SUFDaEY7O09BRUc7SUFDSSxTQUFTLEdBQTBCLElBQUksQ0FBQyxjQUFjLENBQUMsV0FBVyxFQUFFLENBQUE7SUFDM0U7O09BRUc7SUFDSSxXQUFXLEdBQTRCLElBQUksQ0FBQyxjQUFjLENBQUMsYUFBYSxFQUFFLENB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LENBQUMsQ0FBQyxDQUNGLENBQUM7SUFDSCxDQUFDO0lBQ0Q7Ozs7S0FJSTtJQUNKLGtCQUFrQixDQUFDLFFBQWtCO1FBQ3BDLE9BQVEsUUFBZ0IsQ0FBQyxTQUFTLEtBQUssSUFBSSxDQUFDO0lBQzdDLENBQUM7d0dBbkhXLGVBQWU7NEZBQWYsZUFBZSx5RUFGakIseUNBQXlDOzs0RkFFdkMsZUFBZTtrQkFOM0IsU0FBUzttQkFBQztvQkFDVixRQUFRLEVBQUUsZUFBZTtvQkFDekIsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLE9BQU8sRUFBRSxFQUFFO29CQUNYLFFBQVEsRUFBRSx5Q0FBeUM7aUJBQ25EIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgYWZ0ZXJOZXh0UmVuZGVyLCBhZnRlclJlbmRlciwgQ29tcG9uZW50LCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQXV0aFNlcnZpY2UsIE9wdGlvbnNTZXJ2aWNlLCBQYXJhbWV0ZXJzU2VydmljZSB9IGZyb20gJy4uLy4uL2VjLXNlcnZpY2VzJztcclxuaW1wb3J0IHsgbWFwLCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IENvcmVDb25zdGFudHNTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vY29uc3RhbnRzJztcclxuaW1wb3J0IHsgQXR0cmlidXRlLCBDYXRlZ29yeSwgUGFyYW1ldGVyLCBTZWN0aW9uIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcyc7XHJcbmltcG9ydCB7IFRvYXN0U2VydmljZSB9IGZyb20gJy4uLy4uL2VjLXNlcnZpY2VzL3RvYXN0LnNlcnZpY2UnO1xyXG4vKipcclxuICogUGFyYSBkaWZlcmVuY2lhciBsb3MgdGlwb3MgZGUgTWVudVxyXG4gKi9cclxudHlwZSBNZW51VHlwZSA9IFwiY2F0ZWdvcnlcIiB8IFwiYXR0cmlidXRlXCIgfCBcInNlY3Rpb25cIlxyXG4vKipcclxuICogQ29tcG9uZW50ZSBxdWUgc2lydmUgcGFyYSBhYnN0cmFlciBsYSBmdW5jaW9uYWxpZGFkIHF1ZSBjb21wYXJ0ZW4gXHJcbiAqIGVsIG1lbsO6IHkgZWwgZm9vdGVyLlxyXG4gKiBAY2xhc3MgTWVudUVjQ29tcG9uZW50XHJcbiAqL1xyXG5AQ29tcG9uZW50KHtcclxuXHRzZWxlY3RvcjogJ2xpYi1mb290ZXItZWMnLFxyXG5cdHN0YW5kYWxvbmU6IHRydWUsXHJcblx0aW1wb3J0czogW10sXHJcblx0dGVtcGxhdGU6ICc8cD5NZW51IGFuZCBGb290ZXIgSGVscGVyIENvbXBvbmVudDwvcD4nXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBNZW51RWNDb21wb25lbnQge1xyXG5cdHByaXZhdGUgb3B0aW9uc1NlcnZpY2UgPSBpbmplY3QoT3B0aW9uc1NlcnZpY2UpXHJcblx0cHJpdmF0ZSBwYXJhbWV0ZXJzU2VydmljZSA9IGluamVjdChQYXJhbWV0ZXJzU2VydmljZSlcclxuXHRwcml2YXRlIF9hdXRoU2VydmljZTogQXV0aFNlcnZpY2UgPSBpbmplY3QoQXV0aFNlcnZpY2UpXHJcblx0cHJpdmF0ZSBfdG9hc3RTZXJ2aWNlOiBUb2FzdFNlcnZpY2UgPSBpbmplY3QoVG9hc3RTZXJ2aWNlKVxyXG5cdC8qKlxyXG5cdCAqIENvbnN0YW50ZXMgZGVsIGNvcmUuXHJcblx0ICovXHJcblx0cHJpdmF0ZSBjb25zdHMgPSBpbmplY3QoQ29yZUNvbnN0YW50c1NlcnZpY2UpXHJcblxyXG5cdC8qKlxyXG5cdCAqIE9ic2VydmFibGUgZGUgY2F0ZWdvcmlhc1xyXG5cdCAqL1xyXG5cdHB1YmxpYyBjYXRlZ29yaWVzJDogT2JzZXJ2YWJsZTxDYXRlZ29yeVtdPiA9IHRoaXMub3B0aW9uc1NlcnZpY2UuZ2V0Q2F0ZWdvcmllcygpXHJcblx0LyoqXHJcblx0ICogT2JzZXJ2YWJsZSBkZSBzZWNjaW9uZXNcclxuXHQgKi9cclxuXHRwdWJsaWMgc2VjdGlvbnMkOiBPYnNlcnZhYmxlPFNlY3Rpb25bXT4gPSB0aGlzLm9wdGlvbnNTZXJ2aWNlLmdldFNlY3Rpb25zKClcclxuXHQvKipcclxuXHQgKiBPYnNlcnZhYmxlIGRlIGF0cmlidXRvc1xyXG5cdCAqL1xyXG5cdHB1YmxpYyBhdHRyaWJ1dGVzJDogT2JzZXJ2YWJsZTxBdHRyaWJ1dGVbXT4gPSB0aGlzLm9wdGlvbnNTZXJ2aWNlLmdldEF0dHJpYnV0ZXMoKVxyXG5cdC8qKlxyXG5cdCAqIE9ic2VydmFibGUgZGUgcGFyYW1ldHJvc1xyXG5cdCAqL1xyXG5cdHB1YmxpYyBwYXJhbWV0ZXJzJDogT2JzZXJ2YWJsZTxQYXJhbWV0ZXJbXSB8IG51bGw+ID0gdGhpcy5wYXJhbWV0ZXJzU2VydmljZS5nZXRQYXJhbWV0ZXJzKClcclxuXHQvKipcclxuXHQgKiBVcmwgcGFyYSBsYXMgaW1hZ2VuZXMgZ3VhcmRhZGVzIGVuIGVsIGJhY2tlbmQuXHJcblx0ICovXHJcblx0cHVibGljIG1lZGlhVXJsID0gdGhpcy5jb25zdHMubWVkaWFVcmwoKVxyXG5cdC8qKlxyXG5cdCAqIEZ1bmNpb24gcGFyYSBzYWJlciBzaSBleGlzdGVuIHVuIHBhcmFtZXRyby4gXHJcblx0ICovXHJcblx0cHVibGljIGhhc1BhcmFtcyA9IHRoaXMucGFyYW1ldGVyc1NlcnZpY2UuaGFzUGFyYW1zXHJcblxyXG5cdGNvbnN0cnVjdG9yKCkgeyB9XHJcblxyXG5cdHByb3RlY3RlZCBhZGRDaGlsZHJlbiA9IChtZW51VHlwZTogTWVudVR5cGUsIGNvZGU6IHN0cmluZywgaXRlbTogYW55LCBzdGFja1BsYWNlID0gJ2VuZCcpOiB2b2lkID0+IHtcclxuXHJcblx0fVxyXG5cclxuXHQvKiBwcm90ZWN0ZWQgYWRkQ2hpbGRyZW4gPSAobWVudUl0ZW1zOiBhbnlbXSwgY29kZTogc3RyaW5nLCBpdGVtOiBhbnksIHN0YWNrUGxhY2UgPSAnZW5kJykgPT4ge1xyXG5cdCAgKHN0YWNrUGxhY2UgPT09ICdzdGFydCcpXHJcblx0XHQ/IG1lbnVJdGVtcy5maW5kKGl0ZW0gPT4gaXRlbS5jb2RlPy50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKGNvZGUpKT8uY2hpbGRyZW4udW5zaGlmdChpdGVtKVxyXG5cdFx0OiBtZW51SXRlbXMuZmluZChpdGVtID0+IGl0ZW0uY29kZT8udG9Mb3dlckNhc2UoKS5pbmNsdWRlcyhjb2RlKSk/LmNoaWxkcmVuLnB1c2goaXRlbSlcclxuICAgIFxyXG5cdH0gKi9cclxuXHQvKipcclxuXHQgKiBBY3R1YWxpemEgbGFzIGNhdGVnb3JpYXMgYWdyZWdhbmRvIG51ZXZhcy5cclxuXHQgKiBAcGFyYW0gY2F0ZWdvcmllcyBcclxuXHQgKi9cclxuXHRwcm90ZWN0ZWQgdXBkYXRlQ2F0ZWdvcmllcyhjYXRlZ29yaWVzOiBDYXRlZ29yeVtdKSB7XHJcblx0XHR0aGlzLmNhdGVnb3JpZXMkID0gdGhpcy5jYXRlZ29yaWVzJC5waXBlKG1hcCgoZGF0YTogQ2F0ZWdvcnlbXSkgPT4ge1xyXG5cdFx0XHRyZXR1cm4gWy4uLmRhdGEsIC4uLmNhdGVnb3JpZXNdXHJcblx0XHR9KSlcclxuXHR9XHJcblx0LyoqXHJcblx0ICogQWN0dWFsaXphIGxhcyBzZWNjaW9uZXMgYWdyZWdhbmRvIG51ZXZhcy5cclxuXHQgKiBAcGFyYW0gc2VjdGlvbnMgXHJcblx0ICovXHJcblx0cHJvdGVjdGVkIHVwZGF0ZVNlY3Rpb25zKHNlY3Rpb25zOiBTZWN0aW9uW10pIHtcclxuXHRcdHRoaXMuc2VjdGlvbnMkID0gdGhpcy5zZWN0aW9ucyQucGlwZShtYXAoKGRhdGE6IFNlY3Rpb25bXSkgPT4ge1xyXG5cdFx0XHRyZXR1cm4gWy4uLmRhdGEsIC4uLnNlY3Rpb25zXVxyXG5cdFx0fSkpXHJcblx0fVxyXG5cdC8qKlxyXG5cdCAqIEFjdHVhbGl6YSBlbCBtZW7DuiBkZSBhdHJpYnV0b3MgYWdyZWRhbmRvIG51ZXZvcy5cclxuXHQgKiBAcGFyYW0gYXR0cmlidXRlcyBcclxuXHQgKi9cclxuXHRwcm90ZWN0ZWQgdXBkYXRlQXR0cmlidXRlcyhhdHRyaWJ1dGVzOiBBdHRyaWJ1dGVbXSkge1xyXG5cdFx0dGhpcy5hdHRyaWJ1dGVzJCA9IHRoaXMuYXR0cmlidXRlcyQucGlwZShtYXAoKGRhdGE6IEF0dHJpYnV0ZVtdKSA9PiB7XHJcblx0XHRcdHJldHVybiBbLi4uZGF0YSwgLi4uYXR0cmlidXRlc11cclxuXHRcdH0pKVxyXG5cdH1cclxuXHJcblx0cHVibGljIGlzQXV0aGVudGljYXRlZCgpIHtcclxuXHRcdHJldHVybiB0aGlzLl9hdXRoU2VydmljZS5pc0F1dGhlbnRpY2F0ZWQoKTtcclxuXHR9XHJcblxyXG5cdHB1YmxpYyBsb2dvdXQoKSB7XHJcblx0XHR0aGlzLl9hdXRoU2VydmljZS5sb2dvdXQoKTtcclxuXHRcdHRoaXMuX3RvYXN0U2VydmljZS5zaG93KCdsb2dvdXQtc3VjY2VzcycpO1xyXG5cdFx0d2luZG93LmxvY2F0aW9uLmhyZWYgPSAnL2hvbWUnOyAvLyBSZWRpcmlnZSBhIGxhIHDDoWdpbmEgZGUgaW5pY2lvIGRlc3B1w6lzIGRlbCBsb2dvdXRcclxuXHR9XHJcblxyXG5cdC8qKlxyXG5cdCAqIEHDsWFkZSB2YXJpb3MgaGlqb3MgYSB1bmEgc2VjY2nDs24gcG9yIGNvZGUuXHJcblx0ICogQHBhcmFtIHNlY3Rpb25Db2RlIEPDs2RpZ28gZGUgbGEgc2VjY2nDs25cclxuXHQgKiBAcGFyYW0gY2hpbGRyZW4gQXJyYXkgZGUgaGlqb3MgYSBhZ3JlZ2FyXHJcblx0ICogQHBhcmFtIHN0YWNrUGxhY2UgJ3N0YXJ0JyB8ICdlbmQnIChwb3IgZGVmZWN0byAnZW5kJylcclxuXHQgKi9cclxuXHRwdWJsaWMgYWRkU2VjdGlvbkNoaWxkcmVuKHNlY3Rpb25Db2RlOiBzdHJpbmcsIGNoaWxkcmVuOiBhbnlbXSwgc3RhY2tQbGFjZTogJ3N0YXJ0JyB8ICdlbmQnID0gJ2VuZCcpIHtcclxuXHRcdHRoaXMuc2VjdGlvbnMkID0gdGhpcy5zZWN0aW9ucyQucGlwZShcclxuXHRcdFx0bWFwKChzZWN0aW9uczogU2VjdGlvbltdKSA9PiB7XHJcblx0XHRcdFx0cmV0dXJuIHNlY3Rpb25zLm1hcChzZWN0aW9uID0+IHtcclxuXHRcdFx0XHRcdGlmIChzZWN0aW9uLmNvZGU/LnRvTG93ZXJDYXNlKCkgPT09IHNlY3Rpb25Db2RlLnRvTG93ZXJDYXNlKCkpIHtcclxuXHRcdFx0XHRcdFx0aWYgKCFzZWN0aW9uLmNoaWxkcmVuKSBzZWN0aW9uLmNoaWxkcmVuID0gW107XHJcblx0XHRcdFx0XHRcdGlmIChzdGFja1BsYWNlID09PSAnc3RhcnQnKSB7XHJcblx0XHRcdFx0XHRcdFx0c2VjdGlvbi5jaGlsZHJlbiA9IFsuLi5jaGlsZHJlbiwgLi4uc2VjdGlvbi5jaGlsZHJlbl07XHJcblx0XHRcdFx0XHRcdH0gZWxzZSB7XHJcblx0XHRcdFx0XHRcdFx0c2VjdGlvbi5jaGlsZHJlbiA9IFsuLi5zZWN0aW9uLmNoaWxkcmVuLCAuLi5jaGlsZHJlbl07XHJcblx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdHJldHVybiBzZWN0aW9uO1xyXG5cdFx0XHRcdH0pO1xyXG5cdFx0XHR9KVxyXG5cdFx0KTtcclxuXHR9XHJcblx0LyoqXHJcbiAgICogVmVyaWZpY2Egc2kgdW5hIGNhdGVnb3LDrWEgdGllbmUgbGEgcHJvcGllZGFkIGlzVmlzaWJsZSB5IGVzdMOhIG1hcmNhZGEgY29tbyB2aXNpYmxlXHJcbiAgICogQHBhcmFtIGNhdGVnb3J5IC0gTGEgY2F0ZWdvcsOtYSBhIHZlcmlmaWNhclxyXG4gICAqIEByZXR1cm5zIHRydWUgc2kgbGEgY2F0ZWdvcsOtYSBlcyB2aXNpYmxlLCBmYWxzZSBlbiBjYXNvIGNvbnRyYXJpb1xyXG4gICAqL1xyXG5cdGhhc1Zpc2libGVQcm9wZXJ0eShjYXRlZ29yeTogQ2F0ZWdvcnkpOiBib29sZWFuIHtcclxuXHRcdHJldHVybiAoY2F0ZWdvcnkgYXMgYW55KS5pc1Zpc2libGUgPT09IHRydWU7XHJcblx0fVxyXG59Il19
|
|
148
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS1lYy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1lYXN5Y29tbWVyY2UtdjE4L3NyYy9saWIvZWMtY29tcG9uZW50cy9hYnN0cmFjdGlvbnMtY29tcG9uZW50cy9tZW51LWVjLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWdDLFNBQVMsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDaEYsT0FBTyxFQUFFLFdBQVcsRUFBRSxjQUFjLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNuRixPQUFPLEVBQUUsR0FBRyxFQUFjLE1BQU0sTUFBTSxDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRXZELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQzs7QUFNL0Q7Ozs7R0FJRztBQU9ILE1BQU0sT0FBTyxlQUFlO0lBQ25CLGNBQWMsR0FBRyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUE7SUFDdkMsaUJBQWlCLEdBQUcsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUE7SUFDN0MsWUFBWSxHQUFnQixNQUFNLENBQUMsV0FBVyxDQUFDLENBQUE7SUFDL0MsYUFBYSxHQUFpQixNQUFNLENBQUMsWUFBWSxDQUFDLENBQUE7SUFDMUQ7O09BRUc7SUFDSyxNQUFNLEdBQUcsTUFBTSxDQUFDLG9CQUFvQixDQUFDLENBQUE7SUFFN0M7O09BRUc7SUFDSSxXQUFXLEdBQTJCLElBQUksQ0FBQyxjQUFjLENBQUMsYUFBYSxFQUFFLENBQUE7SUFDaEY7O09BRUc7SUFDSSxTQUFTLEdBQTBCLElBQUksQ0FBQyxjQUFjLENBQUMsV0FBVyxFQUFFLENBQUE7SUFDM0U7O09BRUc7SUFDSSxXQUFXLEdBQTRCLElBQUksQ0FBQyxjQUFjLENBQUMsYUFBYSxFQUFFLENB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QUMvQyxDQUFDO0lBRU0sa0JBQWtCLENBQW9ELElBQVE7UUFDcEYsT0FBTyxJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQztJQUNqRCxDQUFDO3dHQS9JVyxlQUFlOzRGQUFmLGVBQWUseUVBRmpCLHlDQUF5Qzs7NEZBRXZDLGVBQWU7a0JBTjNCLFNBQVM7bUJBQUM7b0JBQ1YsUUFBUSxFQUFFLGVBQWU7b0JBQ3pCLFVBQVUsRUFBRSxJQUFJO29CQUNoQixPQUFPLEVBQUUsRUFBRTtvQkFDWCxRQUFRLEVBQUUseUNBQXlDO2lCQUNuRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGFmdGVyTmV4dFJlbmRlciwgYWZ0ZXJSZW5kZXIsIENvbXBvbmVudCwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEF1dGhTZXJ2aWNlLCBPcHRpb25zU2VydmljZSwgUGFyYW1ldGVyc1NlcnZpY2UgfSBmcm9tICcuLi8uLi9lYy1zZXJ2aWNlcyc7XHJcbmltcG9ydCB7IG1hcCwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBDb3JlQ29uc3RhbnRzU2VydmljZSB9IGZyb20gJy4uLy4uL2NvbnN0YW50cyc7XHJcbmltcG9ydCB7IEF0dHJpYnV0ZSwgQ2F0ZWdvcnksIFBhcmFtZXRlciwgU2VjdGlvbiB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMnO1xyXG5pbXBvcnQgeyBUb2FzdFNlcnZpY2UgfSBmcm9tICcuLi8uLi9lYy1zZXJ2aWNlcy90b2FzdC5zZXJ2aWNlJztcclxuLyoqXHJcbiAqIFBhcmEgZGlmZXJlbmNpYXIgbG9zIHRpcG9zIGRlIE1lbnVcclxuICovXHJcbnR5cGUgTWVudVR5cGUgPSBcImNhdGVnb3J5XCIgfCBcImF0dHJpYnV0ZVwiIHwgXCJzZWN0aW9uXCJcclxudHlwZSBUcmVlTm9kZTxUPiA9IFQgJiB7IGlzVmlzaWJsZT86IGJvb2xlYW47IGNoaWxkcmVuPzogVFtdIH07XHJcbi8qKlxyXG4gKiBDb21wb25lbnRlIHF1ZSBzaXJ2ZSBwYXJhIGFic3RyYWVyIGxhIGZ1bmNpb25hbGlkYWQgcXVlIGNvbXBhcnRlbiBcclxuICogZWwgbWVuw7ogeSBlbCBmb290ZXIuXHJcbiAqIEBjbGFzcyBNZW51RWNDb21wb25lbnRcclxuICovXHJcbkBDb21wb25lbnQoe1xyXG5cdHNlbGVjdG9yOiAnbGliLWZvb3Rlci1lYycsXHJcblx0c3RhbmRhbG9uZTogdHJ1ZSxcclxuXHRpbXBvcnRzOiBbXSxcclxuXHR0ZW1wbGF0ZTogJzxwPk1lbnUgYW5kIEZvb3RlciBIZWxwZXIgQ29tcG9uZW50PC9wPidcclxufSlcclxuZXhwb3J0IGNsYXNzIE1lbnVFY0NvbXBvbmVudCB7XHJcblx0cHJpdmF0ZSBvcHRpb25zU2VydmljZSA9IGluamVjdChPcHRpb25zU2VydmljZSlcclxuXHRwcml2YXRlIHBhcmFtZXRlcnNTZXJ2aWNlID0gaW5qZWN0KFBhcmFtZXRlcnNTZXJ2aWNlKVxyXG5cdHByaXZhdGUgX2F1dGhTZXJ2aWNlOiBBdXRoU2VydmljZSA9IGluamVjdChBdXRoU2VydmljZSlcclxuXHRwcml2YXRlIF90b2FzdFNlcnZpY2U6IFRvYXN0U2VydmljZSA9IGluamVjdChUb2FzdFNlcnZpY2UpXHJcblx0LyoqXHJcblx0ICogQ29uc3RhbnRlcyBkZWwgY29yZS5cclxuXHQgKi9cclxuXHRwcml2YXRlIGNvbnN0cyA9IGluamVjdChDb3JlQ29uc3RhbnRzU2VydmljZSlcclxuXHJcblx0LyoqXHJcblx0ICogT2JzZXJ2YWJsZSBkZSBjYXRlZ29yaWFzXHJcblx0ICovXHJcblx0cHVibGljIGNhdGVnb3JpZXMkOiBPYnNlcnZhYmxlPENhdGVnb3J5W10+ID0gdGhpcy5vcHRpb25zU2VydmljZS5nZXRDYXRlZ29yaWVzKClcclxuXHQvKipcclxuXHQgKiBPYnNlcnZhYmxlIGRlIHNlY2Npb25lc1xyXG5cdCAqL1xyXG5cdHB1YmxpYyBzZWN0aW9ucyQ6IE9ic2VydmFibGU8U2VjdGlvbltdPiA9IHRoaXMub3B0aW9uc1NlcnZpY2UuZ2V0U2VjdGlvbnMoKVxyXG5cdC8qKlxyXG5cdCAqIE9ic2VydmFibGUgZGUgYXRyaWJ1dG9zXHJcblx0ICovXHJcblx0cHVibGljIGF0dHJpYnV0ZXMkOiBPYnNlcnZhYmxlPEF0dHJpYnV0ZVtdPiA9IHRoaXMub3B0aW9uc1NlcnZpY2UuZ2V0QXR0cmlidXRlcygpXHJcblx0LyoqXHJcblx0ICogT2JzZXJ2YWJsZSBkZSBwYXJhbWV0cm9zXHJcblx0ICovXHJcblx0cHVibGljIHBhcmFtZXRlcnMkOiBPYnNlcnZhYmxlPFBhcmFtZXRlcltdIHwgbnVsbD4gPSB0aGlzLnBhcmFtZXRlcnNTZXJ2aWNlLmdldFBhcmFtZXRlcnMoKVxyXG5cdC8qKlxyXG5cdCAqIFVybCBwYXJhIGxhcyBpbWFnZW5lcyBndWFyZGFkZXMgZW4gZWwgYmFja2VuZC5cclxuXHQgKi9cclxuXHRwdWJsaWMgbWVkaWFVcmwgPSB0aGlzLmNvbnN0cy5tZWRpYVVybCgpXHJcblx0LyoqXHJcblx0ICogRnVuY2lvbiBwYXJhIHNhYmVyIHNpIGV4aXN0ZW4gdW4gcGFyYW1ldHJvLiBcclxuXHQgKi9cclxuXHRwdWJsaWMgaGFzUGFyYW1zID0gdGhpcy5wYXJhbWV0ZXJzU2VydmljZS5oYXNQYXJhbXNcclxuXHJcblx0Y29uc3RydWN0b3IoKSB7IH1cclxuXHJcblx0cHJvdGVjdGVkIGFkZENoaWxkcmVuID0gKG1lbnVUeXBlOiBNZW51VHlwZSwgY29kZTogc3RyaW5nLCBpdGVtOiBhbnksIHN0YWNrUGxhY2UgPSAnZW5kJyk6IHZvaWQgPT4ge1xyXG5cclxuXHR9XHJcblxyXG5cdC8qIHByb3RlY3RlZCBhZGRDaGlsZHJlbiA9IChtZW51SXRlbXM6IGFueVtdLCBjb2RlOiBzdHJpbmcsIGl0ZW06IGFueSwgc3RhY2tQbGFjZSA9ICdlbmQnKSA9PiB7XHJcblx0ICAoc3RhY2tQbGFjZSA9PT0gJ3N0YXJ0JylcclxuXHRcdD8gbWVudUl0ZW1zLmZpbmQoaXRlbSA9PiBpdGVtLmNvZGU/LnRvTG93ZXJDYXNlKCkuaW5jbHVkZXMoY29kZSkpPy5jaGlsZHJlbi51bnNoaWZ0KGl0ZW0pXHJcblx0XHQ6IG1lbnVJdGVtcy5maW5kKGl0ZW0gPT4gaXRlbS5jb2RlPy50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKGNvZGUpKT8uY2hpbGRyZW4ucHVzaChpdGVtKVxyXG4gICAgXHJcblx0fSAqL1xyXG5cdC8qKlxyXG5cdCAqIEFjdHVhbGl6YSBsYXMgY2F0ZWdvcmlhcyBhZ3JlZ2FuZG8gbnVldmFzLlxyXG5cdCAqIEBwYXJhbSBjYXRlZ29yaWVzIFxyXG5cdCAqL1xyXG5cdHByb3RlY3RlZCB1cGRhdGVDYXRlZ29yaWVzKGNhdGVnb3JpZXM6IENhdGVnb3J5W10pIHtcclxuXHRcdHRoaXMuY2F0ZWdvcmllcyQgPSB0aGlzLmNhdGVnb3JpZXMkLnBpcGUobWFwKChkYXRhOiBDYXRlZ29yeVtdKSA9PiB7XHJcblx0XHRcdHJldHVybiBbLi4uZGF0YSwgLi4uY2F0ZWdvcmllc11cclxuXHRcdH0pKVxyXG5cdH1cclxuXHQvKipcclxuXHQgKiBBY3R1YWxpemEgbGFzIHNlY2Npb25lcyBhZ3JlZ2FuZG8gbnVldmFzLlxyXG5cdCAqIEBwYXJhbSBzZWN0aW9ucyBcclxuXHQgKi9cclxuXHRwcm90ZWN0ZWQgdXBkYXRlU2VjdGlvbnMoc2VjdGlvbnM6IFNlY3Rpb25bXSkge1xyXG5cdFx0dGhpcy5zZWN0aW9ucyQgPSB0aGlzLnNlY3Rpb25zJC5waXBlKG1hcCgoZGF0YTogU2VjdGlvbltdKSA9PiB7XHJcblx0XHRcdHJldHVybiBbLi4uZGF0YSwgLi4uc2VjdGlvbnNdXHJcblx0XHR9KSlcclxuXHR9XHJcblx0LyoqXHJcblx0ICogQWN0dWFsaXphIGVsIG1lbsO6IGRlIGF0cmlidXRvcyBhZ3JlZGFuZG8gbnVldm9zLlxyXG5cdCAqIEBwYXJhbSBhdHRyaWJ1dGVzIFxyXG5cdCAqL1xyXG5cdHByb3RlY3RlZCB1cGRhdGVBdHRyaWJ1dGVzKGF0dHJpYnV0ZXM6IEF0dHJpYnV0ZVtdKSB7XHJcblx0XHR0aGlzLmF0dHJpYnV0ZXMkID0gdGhpcy5hdHRyaWJ1dGVzJC5waXBlKG1hcCgoZGF0YTogQXR0cmlidXRlW10pID0+IHtcclxuXHRcdFx0cmV0dXJuIFsuLi5kYXRhLCAuLi5hdHRyaWJ1dGVzXVxyXG5cdFx0fSkpXHJcblx0fVxyXG5cclxuXHRwdWJsaWMgaXNBdXRoZW50aWNhdGVkKCkge1xyXG5cdFx0cmV0dXJuIHRoaXMuX2F1dGhTZXJ2aWNlLmlzQXV0aGVudGljYXRlZCgpO1xyXG5cdH1cclxuXHJcblx0cHVibGljIGxvZ291dCgpIHtcclxuXHRcdHRoaXMuX2F1dGhTZXJ2aWNlLmxvZ291dCgpO1xyXG5cdFx0dGhpcy5fdG9hc3RTZXJ2aWNlLnNob3coJ2xvZ291dC1zdWNjZXNzJyk7XHJcblx0XHR3aW5kb3cubG9jYXRpb24uaHJlZiA9ICcvaG9tZSc7IC8vIFJlZGlyaWdlIGEgbGEgcMOhZ2luYSBkZSBpbmljaW8gZGVzcHXDqXMgZGVsIGxvZ291dFxyXG5cdH1cclxuXHJcblx0LyoqXHJcblx0ICogQcOxYWRlIHZhcmlvcyBoaWpvcyBhIHVuYSBzZWNjacOzbiBwb3IgY29kZS5cclxuXHQgKiBAcGFyYW0gc2VjdGlvbkNvZGUgQ8OzZGlnbyBkZSBsYSBzZWNjacOzblxyXG5cdCAqIEBwYXJhbSBjaGlsZHJlbiBBcnJheSBkZSBoaWpvcyBhIGFncmVnYXJcclxuXHQgKiBAcGFyYW0gc3RhY2tQbGFjZSAnc3RhcnQnIHwgJ2VuZCcgKHBvciBkZWZlY3RvICdlbmQnKVxyXG5cdCAqL1xyXG5cdHB1YmxpYyBhZGRTZWN0aW9uQ2hpbGRyZW4oc2VjdGlvbkNvZGU6IHN0cmluZywgY2hpbGRyZW46IGFueVtdLCBzdGFja1BsYWNlOiAnc3RhcnQnIHwgJ2VuZCcgPSAnZW5kJykge1xyXG5cdFx0dGhpcy5zZWN0aW9ucyQgPSB0aGlzLnNlY3Rpb25zJC5waXBlKFxyXG5cdFx0XHRtYXAoKHNlY3Rpb25zOiBTZWN0aW9uW10pID0+IHtcclxuXHRcdFx0XHRyZXR1cm4gc2VjdGlvbnMubWFwKHNlY3Rpb24gPT4ge1xyXG5cdFx0XHRcdFx0aWYgKHNlY3Rpb24uY29kZT8udG9Mb3dlckNhc2UoKSA9PT0gc2VjdGlvbkNvZGUudG9Mb3dlckNhc2UoKSkge1xyXG5cdFx0XHRcdFx0XHRpZiAoIXNlY3Rpb24uY2hpbGRyZW4pIHNlY3Rpb24uY2hpbGRyZW4gPSBbXTtcclxuXHRcdFx0XHRcdFx0aWYgKHN0YWNrUGxhY2UgPT09ICdzdGFydCcpIHtcclxuXHRcdFx0XHRcdFx0XHRzZWN0aW9uLmNoaWxkcmVuID0gWy4uLmNoaWxkcmVuLCAuLi5zZWN0aW9uLmNoaWxkcmVuXTtcclxuXHRcdFx0XHRcdFx0fSBlbHNlIHtcclxuXHRcdFx0XHRcdFx0XHRzZWN0aW9uLmNoaWxkcmVuID0gWy4uLnNlY3Rpb24uY2hpbGRyZW4sIC4uLmNoaWxkcmVuXTtcclxuXHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0cmV0dXJuIHNlY3Rpb247XHJcblx0XHRcdFx0fSk7XHJcblx0XHRcdH0pXHJcblx0XHQpO1xyXG5cdH1cclxuXHQvKipcclxuICAgKiBWZXJpZmljYSBzaSB1bmEgY2F0ZWdvcsOtYSB0aWVuZSBsYSBwcm9waWVkYWQgaXNWaXNpYmxlIHkgZXN0w6EgbWFyY2FkYSBjb21vIHZpc2libGVcclxuICAgKiBAcGFyYW0gY2F0ZWdvcnkgLSBMYSBjYXRlZ29yw61hIGEgdmVyaWZpY2FyXHJcbiAgICogQHJldHVybnMgdHJ1ZSBzaSBsYSBjYXRlZ29yw61hIGVzIHZpc2libGUsIGZhbHNlIGVuIGNhc28gY29udHJhcmlvXHJcbiAgICovXHJcblx0aGFzVmlzaWJsZVByb3BlcnR5KGNhdGVnb3J5OiBDYXRlZ29yeSk6IGJvb2xlYW4ge1xyXG5cdFx0cmV0dXJuIChjYXRlZ29yeSBhcyBhbnkpLmlzVmlzaWJsZSA9PT0gdHJ1ZTtcclxuXHR9XHJcblxyXG5cdHByaXZhdGUgZmlsdGVyVmlzaWJsZVRyZWU8VCBleHRlbmRzIHsgaXNWaXNpYmxlPzogYm9vbGVhbjsgY2hpbGRyZW4/OiBUW10gfT4obGlzdD86IFRbXSk6IFRbXSB7XHJcblx0XHRyZXR1cm4gKGxpc3QgPz8gW10pXHJcblx0XHRcdC5maWx0ZXIoKG4pOiBuIGlzIFQgPT4gbj8uaXNWaXNpYmxlID09PSB0cnVlKVxyXG5cdFx0XHQubWFwKG4gPT4gKHsgLi4ubiwgY2hpbGRyZW46IHRoaXMuZmlsdGVyVmlzaWJsZVRyZWUobi5jaGlsZHJlbikgfSBhcyBUKSk7XHJcblx0fVxyXG5cclxuXHQvLyBFeHBvbsOpIHN0cmVhbXMgeWEgZmlsdHJhZG9zXHJcblx0cHVibGljIGNhdGVnb3JpZXNWaXNpYmxlJDogT2JzZXJ2YWJsZTxDYXRlZ29yeVtdPiA9IHRoaXMuY2F0ZWdvcmllcyQucGlwZShcclxuXHRcdG1hcCgobGlzdDogQ2F0ZWdvcnlbXSkgPT4gdGhpcy5maWx0ZXJWaXNpYmxlVHJlZTxDYXRlZ29yeT4obGlzdCkpXHJcblx0KTtcclxuXHJcblx0cHVibGljIHNlY3Rpb25zVmlzaWJsZSQ6IE9ic2VydmFibGU8U2VjdGlvbltdPiA9IHRoaXMuc2VjdGlvbnMkLnBpcGUoXHJcblx0XHRtYXAoKGxpc3Q6IFNlY3Rpb25bXSkgPT4gdGhpcy5maWx0ZXJWaXNpYmxlVHJlZTxTZWN0aW9uPihsaXN0KSlcclxuXHQpO1xyXG5cclxuXHRwdWJsaWMgYXR0cmlidXRlc1Zpc2libGUkOiBPYnNlcnZhYmxlPEF0dHJpYnV0ZVtdPiA9IHRoaXMuYXR0cmlidXRlcyQucGlwZShcclxuXHRcdG1hcCgobGlzdDogQXR0cmlidXRlW10pID0+IHRoaXMuZmlsdGVyVmlzaWJsZVRyZWU8QXR0cmlidXRlPihsaXN0KSlcclxuXHQpO1xyXG5cclxuXHQvLyBIZWxwZXJzIGRlIGNvbnZlbmllbmNpYSBvcGNpb25hbGVzXHJcblx0cHVibGljIGdldFZpc2libGVDaGlsZHJlbjxUIGV4dGVuZHMgeyBpc1Zpc2libGU/OiBib29sZWFuOyBjaGlsZHJlbj86IFRbXSB9Pihub2RlPzogVCk6IFRbXSB7XHJcblx0XHRyZXR1cm4gdGhpcy5maWx0ZXJWaXNpYmxlVHJlZShub2RlPy5jaGlsZHJlbik7XHJcblx0fVxyXG5cclxuXHRwdWJsaWMgaGFzVmlzaWJsZUNoaWxkcmVuPFQgZXh0ZW5kcyB7IGlzVmlzaWJsZT86IGJvb2xlYW47IGNoaWxkcmVuPzogVFtdIH0+KG5vZGU/OiBUKTogYm9vbGVhbiB7XHJcblx0XHRyZXR1cm4gdGhpcy5nZXRWaXNpYmxlQ2hpbGRyZW4obm9kZSkubGVuZ3RoID4gMDtcclxuXHR9XHJcbn0iXX0=
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import { Component, EventEmitter, inject, Input, Output, signal } from '@angular/core';
|
|
1
|
+
import { Component, EventEmitter, inject, Input, Output, signal, PLATFORM_ID } from '@angular/core';
|
|
2
|
+
import { isPlatformBrowser } from '@angular/common';
|
|
2
3
|
import { LoadingSectionEcComponent } from '../../widgets-ec';
|
|
3
4
|
import { FormBuilder, ReactiveFormsModule, Validators } from '@angular/forms';
|
|
4
5
|
import { Router, RouterLink } from '@angular/router';
|
|
@@ -57,16 +58,18 @@ export class LoginFormEcComponent {
|
|
|
57
58
|
this.loggedIn = true;
|
|
58
59
|
if (this.inCart) {
|
|
59
60
|
// Si se está en el carrito, se cierra el modal de login
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
modalInstance
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
closeButton
|
|
61
|
+
if (isPlatformBrowser(inject(PLATFORM_ID))) {
|
|
62
|
+
const modal = document.getElementById('modalInvitado');
|
|
63
|
+
if (modal) {
|
|
64
|
+
const modalInstance = window.bootstrap?.Modal?.getInstance(modal);
|
|
65
|
+
if (modalInstance) {
|
|
66
|
+
modalInstance.hide();
|
|
67
|
+
}
|
|
68
|
+
else {
|
|
69
|
+
const closeButton = modal.querySelector('[data-bs-dismiss="modal"]');
|
|
70
|
+
if (closeButton) {
|
|
71
|
+
closeButton.click();
|
|
72
|
+
}
|
|
70
73
|
}
|
|
71
74
|
}
|
|
72
75
|
}
|
|
@@ -119,4 +122,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
119
122
|
}], inCart: [{
|
|
120
123
|
type: Input
|
|
121
124
|
}] } });
|
|
122
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9naW4tZm9ybS1lYy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1lYXN5Y29tbWVyY2UtdjE4L3NyYy9saWIvZWMtY29tcG9uZW50cy9hdXRoLWVjL2xvZ2luLWZvcm0tZWMvbG9naW4tZm9ybS1lYy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1lYXN5Y29tbWVyY2UtdjE4L3NyYy9saWIvZWMtY29tcG9uZW50cy9hdXRoLWVjL2xvZ2luLWZvcm0tZWMvbG9naW4tZm9ybS1lYy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkYsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDN0QsT0FBTyxFQUFFLFdBQVcsRUFBYSxtQkFBbUIsRUFBRSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6RixPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxXQUFXLEVBQUUsWUFBWSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFFakUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN0QyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7OztBQVMzQyxNQUFNLE9BQU8sb0JBQW9CO0lBQ3hCLFlBQVksR0FBZ0IsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ2hELFlBQVksR0FBZ0IsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ2hELGFBQWEsR0FBaUIsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQ25ELE9BQU8s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LCBpbmplY3QsIElucHV0LCBPdXRwdXQsIHNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBMb2FkaW5nU2VjdGlvbkVjQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vd2lkZ2V0cy1lYyc7XHJcbmltcG9ydCB7IEZvcm1CdWlsZGVyLCBGb3JtR3JvdXAsIFJlYWN0aXZlRm9ybXNNb2R1bGUsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IFJvdXRlciwgUm91dGVyTGluayB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7IEF1dGhTZXJ2aWNlLCBUb2FzdFNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9lYy1zZXJ2aWNlcyc7XHJcbmltcG9ydCB7IFVzZXJSb2xlVHlwZSB9IGZyb20gJy4uLy4uLy4uL2ludGVyZmFjZXMnO1xyXG5pbXBvcnQgeyBmaXJzdFZhbHVlRnJvbSB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBKc29uUGlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuXHRzZWxlY3RvcjogJ2FwcC1sb2dpbi1mb3JtLWVjJyxcclxuXHRzdGFuZGFsb25lOiB0cnVlLFxyXG5cdGltcG9ydHM6IFtMb2FkaW5nU2VjdGlvbkVjQ29tcG9uZW50LCBSZWFjdGl2ZUZvcm1zTW9kdWxlLCBSb3V0ZXJMaW5rLCBKc29uUGlwZV0sXHJcblx0dGVtcGxhdGVVcmw6ICcuL2xvZ2luLWZvcm0tZWMuY29tcG9uZW50Lmh0bWwnLFxyXG5cdHN0eWxlVXJsOiAnLi9sb2dpbi1mb3JtLWVjLmNvbXBvbmVudC5zY3NzJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgTG9naW5Gb3JtRWNDb21wb25lbnQge1xyXG5cdHByaXZhdGUgX2F1dGhTZXJ2aWNlOiBBdXRoU2VydmljZSA9IGluamVjdChBdXRoU2VydmljZSk7XHJcblx0cHJpdmF0ZSBfZm9ybUJ1aWxkZXI6IEZvcm1CdWlsZGVyID0gaW5qZWN0KEZvcm1CdWlsZGVyKTtcclxuXHRwcml2YXRlIF90b2FzdFNlcnZpY2U6IFRvYXN0U2VydmljZSA9IGluamVjdChUb2FzdFNlcnZpY2UpO1xyXG5cdHByaXZhdGUgX3JvdXRlcjogUm91dGVyID0gaW5qZWN0KFJvdXRlcik7XHJcblx0c2hvd1Bhc3N3b3JkID0gZmFsc2U7XHJcblxyXG5cdC8qKlxyXG5cdCAqIFBhcmFtZXRybyBwYXJhIGluZGljYXIgc2kgdHJhcyBsb2d1ZWFyXHJcblx0ICogZGViZSByZWRpcmVjY2lvbmFyIG8gbm8uXHJcblx0ICovXHJcblx0QElucHV0KCkgcmVkaXJlY3Q6IGJvb2xlYW4gPSB0cnVlO1xyXG5cdC8qKlxyXG5cdCAqIFBhcmFtZXRybyBwYXJhIGluZGljYXIgYSBkb25kZSByZWRpcmVjY2lvbmFyLlxyXG5cdCAqL1xyXG5cdEBJbnB1dCgpIHJlZGlyZWN0VG86IHN0cmluZyA9ICcvJztcclxuXHRAT3V0cHV0KCkgcmVhZHkgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblx0LyoqXHJcblx0ICogTXVlc3RyYSBzaSBlc3RhIGNhcmdhbmRvIG8gbm8uXHJcblx0ICovXHJcblx0cHVibGljIGxvYWRpbmc6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHRwdWJsaWMgbG9nZ2VkSW46IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcblx0QElucHV0KCkgcHVibGljIGluQ2FydDogYm9vbGVhbiA9IGZhbHNlO1xyXG5cdC8qKlxyXG5cdCAqIFNpZ25hbCBxdWUgZ3VhcmRhIGVsIGZvcm11bGFyaW8gZGUgbG9naW4uXHJcblx0ICovXHJcblx0cHVibGljIGxvZ2luRm9ybTogYW55ID0gc2lnbmFsPEZvcm1Hcm91cD4oXHJcblx0XHR0aGlzLl9mb3JtQnVpbGRlci5ncm91cCh7XHJcblx0XHRcdHVzZXJuYW1lOiBbJycsIFZhbGlkYXRvcnMucmVxdWlyZWRdLFxyXG5cdFx0XHRwYXNzd29yZDogWycnLCBWYWxpZGF0b3JzLnJlcXVpcmVkXVxyXG5cdFx0fSlcclxuXHQpO1xyXG5cdC8qKlxyXG5cdCAqIExvZ3VlYSBhbCB1c3VhcmlvIGVuIGxhIHBsYXRhZm9ybWEuXHJcblx0ICogQHBhcmFtICRldmVudCBcclxuXHQgKiBAcGFyYW0gd2l0aFJvbGVzIFxyXG5cdCAqIEByZXR1cm5zIFxyXG5cdCAqL1xyXG5cdHB1YmxpYyBsb2dpbigkZXZlbnQ6IEV2ZW50LCB3aXRoUm9sZXM6IFVzZXJSb2xlVHlwZVtdID0gW10pIHtcclxuXHRcdCRldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xyXG5cdFx0dGhpcy5sb2FkaW5nID0gdHJ1ZTtcclxuXHRcdGlmICghdGhpcy5sb2dpbkZvcm0oKS52YWxpZCkge1xyXG5cdFx0XHR0aGlzLl90b2FzdFNlcnZpY2Uuc2hvdygnbG9naW4tZm9ybS1pbmNvbXBsZXRlJylcclxuXHRcdFx0dGhpcy5sb2FkaW5nID0gZmFsc2U7XHJcblx0XHRcdHJldHVybjtcclxuXHRcdH1cclxuXHRcdGZpcnN0VmFsdWVGcm9tKHRoaXMuX2F1dGhTZXJ2aWNlLmxvZ2luKHRoaXMubG9naW5Gb3JtKCkudmFsdWUsIHdpdGhSb2xlcykpLnRoZW4oXHJcblx0XHRcdChyZXM6IGFueSkgPT4ge1xyXG5cdFx0XHRcdGlmIChyZXMgPT0gJ29rJykge1xyXG5cdFx0XHRcdFx0dGhpcy5yZWFkeS5lbWl0KHRoaXMubG9naW5Gb3JtKCkudmFsdWUudXNlcm5hbWUpO1xyXG5cdFx0XHRcdFx0dGhpcy5fdG9hc3RTZXJ2aWNlLnNob3coJ2xvZ2luLXN1Y2Nlc3MnKTtcclxuXHRcdFx0XHRcdHRoaXMubG9nZ2VkSW4gPSB0cnVlO1xyXG5cdFx0XHRcdFx0aWYgKHRoaXMuaW5DYXJ0KSB7XHJcblx0XHRcdFx0XHRcdC8vIFNpIHNlIGVzdMOhIGVuIGVsIGNhcnJpdG8sIHNlIGNpZXJyYSBlbCBtb2RhbCBkZSBsb2dpblxyXG5cdFx0XHRcdFx0XHRjb25zdCBtb2RhbCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdtb2RhbEludml0YWRvJyk7XHJcblx0XHRcdFx0XHRcdGlmIChtb2RhbCkge1xyXG5cdFx0XHRcdFx0XHRcdGNvbnN0IG1vZGFsSW5zdGFuY2UgPSAod2luZG93IGFzIGFueSkuYm9vdHN0cmFwPy5Nb2RhbD8uZ2V0SW5zdGFuY2UobW9kYWwpO1xyXG5cdFx0XHRcdFx0XHRcdGlmIChtb2RhbEluc3RhbmNlKSB7XHJcblx0XHRcdFx0XHRcdFx0XHRtb2RhbEluc3RhbmNlLmhpZGUoKTtcclxuXHRcdFx0XHRcdFx0XHR9IGVsc2Uge1xyXG5cdFx0XHRcdFx0XHRcdFx0Y29uc3QgY2xvc2VCdXR0b24gPSBtb2RhbC5xdWVyeVNlbGVjdG9yKCdbZGF0YS1icy1kaXNtaXNzPVwibW9kYWxcIl0nKSBhcyBIVE1MRWxlbWVudDtcclxuXHRcdFx0XHRcdFx0XHRcdGlmIChjbG9zZUJ1dHRvbikge1xyXG5cdFx0XHRcdFx0XHRcdFx0XHRjbG9zZUJ1dHRvbi5jbGljaygpO1xyXG5cdFx0XHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHR0aGlzLl9yb3V0ZXIubmF2aWdhdGVCeVVybCgnL2NoZWNrb3V0Jyk7XHJcblx0XHRcdFx0XHR9IGVsc2Uge1xyXG5cdFx0XHRcdFx0XHR0aGlzLnJlZGlyZWN0ICYmIHRoaXMucmVkaXJlY3RIb21lKCk7XHJcblx0XHRcdFx0XHR9XHJcblxyXG5cdFx0XHRcdH0gZWxzZSBpZiAocmVzID09ICdlcnJvcicpIHtcclxuXHRcdFx0XHRcdHRoaXMuX3RvYXN0U2VydmljZS5lcnJvcignbG9naW4tZXJyb3InKVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHR0aGlzLmxvYWRpbmcgPSBmYWxzZTtcclxuXHRcdFx0fSxcclxuXHRcdFx0KGVycjogYW55KSA9PiB7XHJcblx0XHRcdFx0Ly8gTWFuZWpvIGRlIGVycm9yIDQwMVxyXG5cdFx0XHRcdGlmIChlcnI/LnN0YXR1cyA9PT0gNDAxKSB7XHJcblx0XHRcdFx0XHR0aGlzLl90b2FzdFNlcnZpY2Uuc2hvdygnaW52YWxpZC1jcmVkZW50aWFscycpO1xyXG5cdFx0XHRcdH0gZWxzZSB7XHJcblx0XHRcdFx0XHR0aGlzLl90b2FzdFNlcnZpY2UuZXJyb3IoJ2xvZ2luLWVycm9yJyk7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdHRoaXMubG9hZGluZyA9IGZhbHNlO1xyXG5cdFx0XHR9XHJcblx0XHQpXHJcblx0fVxyXG5cdC8qKlxyXG5cdCAqIFNpIGVsIHNlcnZpY2lvIGRlIGF1dGggdGllbmUgY29uZmlndXJhZG8gYSBkb25kZSB2b2x2ZXIsIHNlIGVqZWN1dGFyIGVzZSBjYXNvLlxyXG5cdCAqIERlIGxvIGNvbnRyYXJpbyByZWRpcmlnZSBhbCBjb250ZW5pZG8gZGUgbGEgdmFyaWFibGUgYHJlZGlyZWN0VG9gLlxyXG5cdCAqL1xyXG5cdHJlZGlyZWN0SG9tZSgpIHtcclxuXHRcdGNvbnN0IHJlc29sdmVyRnVuY3Rpb24gPSB0aGlzLl9hdXRoU2VydmljZS5nZXRIb21lUmVzb2x2ZXIoKVxyXG5cdFx0cmVzb2x2ZXJGdW5jdGlvblxyXG5cdFx0XHQ/IHJlc29sdmVyRnVuY3Rpb24oKVxyXG5cdFx0XHQ6IHRoaXMuX3JvdXRlci5uYXZpZ2F0ZUJ5VXJsKHRoaXMucmVkaXJlY3RUbylcclxuXHR9XHJcblx0dG9nZ2xlUGFzc3dvcmQoKSB7XHJcblx0XHR0aGlzLnNob3dQYXNzd29yZCA9ICF0aGlzLnNob3dQYXNzd29yZDtcclxuXHR9XHJcblxyXG5cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwiZC1mbGV4IGZsZXgtY29sdW1uIHBvc2l0aW9uLXJlbGF0aXZlXCI+XHJcbiAgICA8aDEgY2xhc3M9XCJyaWdodC1saW5lIGZmLXVidW50dS1saWdodCBtYi00XCI+PHNwYW4+SW5ncmVzYXI8L3NwYW4+PC9oMT5cclxuICAgIDxwIGNsYXNzPVwiZmYtdWJ1bnR1LWxpZ2h0IGZvbnQtc20gcHItNCBtYi00XCI+XHJcbiAgICAgICAgU2kgeWEgZXN0w6FzIHJlZ2lzdHJhZG8uIEluZ3Jlc2EgZW4gdHUgY3VlbnRhIGNvbiB0dSBlbWFpbCB5IGxhXHJcbiAgICAgICAgY29udHJhc2XDsWEgYWRlY3VhZGEuXHJcbiAgICA8L3A+XHJcbiAgICA8ZGl2IGNsYXNzPVwidy1tZC01MCB3LTEwMCB0ZXh0LWNlbnRlclwiPlxyXG4gICAgICAgIDxmb3JtIFtmb3JtR3JvdXBdPVwibG9naW5Gb3JtKClcIiAoc3VibWl0KT1cImxvZ2luKCRldmVudClcIj5cclxuICAgICAgICAgICAgPGlucHV0IGNsYXNzPVwiZm9ybS1jb250cm9sIG1iLTQgcmFkaXVzLTBcIiB0eXBlPVwiZW1haWxcIiBmb3JtQ29udHJvbE5hbWU9XCJ1c2VybmFtZVwiXHJcbiAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcj1cIkNvcnJlbyBFbGVjdHLDs25pY29cIj5cclxuICAgICAgICAgICAgPGlucHV0IGNsYXNzPVwiZm9ybS1jb250cm9sIG1iLTQgcmFkaXVzLTBcIiB0eXBlPVwicGFzc3dvcmRcIiBmb3JtQ29udHJvbE5hbWU9XCJwYXNzd29yZFwiXHJcbiAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcj1cIkNvbnRyYXNlw7FhXCI+XHJcblxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93IGQtZmxleCBmbGV4LWNvbHVtblwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC0xMiBtYi00XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwic3VibWl0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJiZy1ncmF5IGJvcmRlci0wIHB4LTQgcHktMiBjb2xvci13aGl0ZSBmZi11YnVudHUtbGlnaHRcIj5JTkdSRVNBUjwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLTEyIGQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxhIFtyb3V0ZXJMaW5rXT1cIicvYXV0aC9mb3Jnb3QtcGFzc3dvcmQnXCIgY2xhc3M9XCJmb250LW1kIGZmLXVidW50dS1saWdodFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICDCv09sdmlkw7Mgc3UgY29udHJhc2XDsWE/XHJcbiAgICAgICAgICAgICAgICAgICAgPC9hPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZm9ybT5cclxuICAgIDwvZGl2PlxyXG4gICAgQGlmKGxvYWRpbmcpe1xyXG4gICAgPGFwcC1sb2FkaW5nLXNlY3Rpb24tZWM+PC9hcHAtbG9hZGluZy1zZWN0aW9uLWVjPlxyXG4gICAgfVxyXG48L2Rpdj4iXX0=
|
|
125
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9naW4tZm9ybS1lYy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1lYXN5Y29tbWVyY2UtdjE4L3NyYy9saWIvZWMtY29tcG9uZW50cy9hdXRoLWVjL2xvZ2luLWZvcm0tZWMvbG9naW4tZm9ybS1lYy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1lYXN5Y29tbWVyY2UtdjE4L3NyYy9saWIvZWMtY29tcG9uZW50cy9hdXRoLWVjL2xvZ2luLWZvcm0tZWMvbG9naW4tZm9ybS1lYy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3BHLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3BELE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQzdELE9BQU8sRUFBRSxXQUFXLEVBQWEsbUJBQW1CLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDekYsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsV0FBVyxFQUFFLFlBQVksRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRWpFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDdEMsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7QUFTM0MsTUFBTSxPQUFPLG9CQUFvQjtJQUN4QixZQUFZLEdBQWdCLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUNoRCxZQUFZLEdBQWdCLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FB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S0FBSztnQkFJRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNJLEtBQUs7c0JBQWQsTUFBTTtnQkFPUyxNQUFNO3NCQUFyQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIGluamVjdCwgSW5wdXQsIE91dHB1dCwgc2lnbmFsLCBQTEFURk9STV9JRCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBpc1BsYXRmb3JtQnJvd3NlciB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IExvYWRpbmdTZWN0aW9uRWNDb21wb25lbnQgfSBmcm9tICcuLi8uLi93aWRnZXRzLWVjJztcclxuaW1wb3J0IHsgRm9ybUJ1aWxkZXIsIEZvcm1Hcm91cCwgUmVhY3RpdmVGb3Jtc01vZHVsZSwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgUm91dGVyLCBSb3V0ZXJMaW5rIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuaW1wb3J0IHsgQXV0aFNlcnZpY2UsIFRvYXN0U2VydmljZSB9IGZyb20gJy4uLy4uLy4uL2VjLXNlcnZpY2VzJztcclxuaW1wb3J0IHsgVXNlclJvbGVUeXBlIH0gZnJvbSAnLi4vLi4vLi4vaW50ZXJmYWNlcyc7XHJcbmltcG9ydCB7IGZpcnN0VmFsdWVGcm9tIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IEpzb25QaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG5cdHNlbGVjdG9yOiAnYXBwLWxvZ2luLWZvcm0tZWMnLFxyXG5cdHN0YW5kYWxvbmU6IHRydWUsXHJcblx0aW1wb3J0czogW0xvYWRpbmdTZWN0aW9uRWNDb21wb25lbnQsIFJlYWN0aXZlRm9ybXNNb2R1bGUsIFJvdXRlckxpbmssIEpzb25QaXBlXSxcclxuXHR0ZW1wbGF0ZVVybDogJy4vbG9naW4tZm9ybS1lYy5jb21wb25lbnQuaHRtbCcsXHJcblx0c3R5bGVVcmw6ICcuL2xvZ2luLWZvcm0tZWMuY29tcG9uZW50LnNjc3MnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBMb2dpbkZvcm1FY0NvbXBvbmVudCB7XHJcblx0cHJpdmF0ZSBfYXV0aFNlcnZpY2U6IEF1dGhTZXJ2aWNlID0gaW5qZWN0KEF1dGhTZXJ2aWNlKTtcclxuXHRwcml2YXRlIF9mb3JtQnVpbGRlcjogRm9ybUJ1aWxkZXIgPSBpbmplY3QoRm9ybUJ1aWxkZXIpO1xyXG5cdHByaXZhdGUgX3RvYXN0U2VydmljZTogVG9hc3RTZXJ2aWNlID0gaW5qZWN0KFRvYXN0U2VydmljZSk7XHJcblx0cHJpdmF0ZSBfcm91dGVyOiBSb3V0ZXIgPSBpbmplY3QoUm91dGVyKTtcclxuXHRzaG93UGFzc3dvcmQgPSBmYWxzZTtcclxuXHJcblx0LyoqXHJcblx0ICogUGFyYW1ldHJvIHBhcmEgaW5kaWNhciBzaSB0cmFzIGxvZ3VlYXJcclxuXHQgKiBkZWJlIHJlZGlyZWNjaW9uYXIgbyBuby5cclxuXHQgKi9cclxuXHRASW5wdXQoKSByZWRpcmVjdDogYm9vbGVhbiA9IHRydWU7XHJcblx0LyoqXHJcblx0ICogUGFyYW1ldHJvIHBhcmEgaW5kaWNhciBhIGRvbmRlIHJlZGlyZWNjaW9uYXIuXHJcblx0ICovXHJcblx0QElucHV0KCkgcmVkaXJlY3RUbzogc3RyaW5nID0gJy8nO1xyXG5cdEBPdXRwdXQoKSByZWFkeSA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHQvKipcclxuXHQgKiBNdWVzdHJhIHNpIGVzdGEgY2FyZ2FuZG8gbyBuby5cclxuXHQgKi9cclxuXHRwdWJsaWMgbG9hZGluZzogYm9vbGVhbiA9IGZhbHNlO1xyXG5cdHB1YmxpYyBsb2dnZWRJbjogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuXHRASW5wdXQoKSBwdWJsaWMgaW5DYXJ0OiBib29sZWFuID0gZmFsc2U7XHJcblx0LyoqXHJcblx0ICogU2lnbmFsIHF1ZSBndWFyZGEgZWwgZm9ybXVsYXJpbyBkZSBsb2dpbi5cclxuXHQgKi9cclxuXHRwdWJsaWMgbG9naW5Gb3JtOiBhbnkgPSBzaWduYWw8Rm9ybUdyb3VwPihcclxuXHRcdHRoaXMuX2Zvcm1CdWlsZGVyLmdyb3VwKHtcclxuXHRcdFx0dXNlcm5hbWU6IFsnJywgVmFsaWRhdG9ycy5yZXF1aXJlZF0sXHJcblx0XHRcdHBhc3N3b3JkOiBbJycsIFZhbGlkYXRvcnMucmVxdWlyZWRdXHJcblx0XHR9KVxyXG5cdCk7XHJcblx0LyoqXHJcblx0ICogTG9ndWVhIGFsIHVzdWFyaW8gZW4gbGEgcGxhdGFmb3JtYS5cclxuXHQgKiBAcGFyYW0gJGV2ZW50IFxyXG5cdCAqIEBwYXJhbSB3aXRoUm9sZXMgXHJcblx0ICogQHJldHVybnMgXHJcblx0ICovXHJcblx0cHVibGljIGxvZ2luKCRldmVudDogRXZlbnQsIHdpdGhSb2xlczogVXNlclJvbGVUeXBlW10gPSBbXSkge1xyXG5cdFx0JGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XHJcblx0XHR0aGlzLmxvYWRpbmcgPSB0cnVlO1xyXG5cdFx0aWYgKCF0aGlzLmxvZ2luRm9ybSgpLnZhbGlkKSB7XHJcblx0XHRcdHRoaXMuX3RvYXN0U2VydmljZS5zaG93KCdsb2dpbi1mb3JtLWluY29tcGxldGUnKVxyXG5cdFx0XHR0aGlzLmxvYWRpbmcgPSBmYWxzZTtcclxuXHRcdFx0cmV0dXJuO1xyXG5cdFx0fVxyXG5cdFx0Zmlyc3RWYWx1ZUZyb20odGhpcy5fYXV0aFNlcnZpY2UubG9naW4odGhpcy5sb2dpbkZvcm0oKS52YWx1ZSwgd2l0aFJvbGVzKSkudGhlbihcclxuXHRcdFx0KHJlczogYW55KSA9PiB7XHJcblx0XHRcdFx0aWYgKHJlcyA9PSAnb2snKSB7XHJcblx0XHRcdFx0XHR0aGlzLnJlYWR5LmVtaXQodGhpcy5sb2dpbkZvcm0oKS52YWx1ZS51c2VybmFtZSk7XHJcblx0XHRcdFx0XHR0aGlzLl90b2FzdFNlcnZpY2Uuc2hvdygnbG9naW4tc3VjY2VzcycpO1xyXG5cdFx0XHRcdFx0dGhpcy5sb2dnZWRJbiA9IHRydWU7XHJcblx0XHRcdFx0XHRpZiAodGhpcy5pbkNhcnQpIHtcclxuXHRcdFx0XHRcdFx0Ly8gU2kgc2UgZXN0w6EgZW4gZWwgY2Fycml0bywgc2UgY2llcnJhIGVsIG1vZGFsIGRlIGxvZ2luXHJcblx0XHRcdFx0XHRcdGlmIChpc1BsYXRmb3JtQnJvd3NlcihpbmplY3QoUExBVEZPUk1fSUQpKSkge1xyXG5cdFx0XHRcdFx0XHRcdGNvbnN0IG1vZGFsID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ21vZGFsSW52aXRhZG8nKTtcclxuXHRcdFx0XHRcdFx0XHRpZiAobW9kYWwpIHtcclxuXHRcdFx0XHRcdFx0XHRcdGNvbnN0IG1vZGFsSW5zdGFuY2UgPSAod2luZG93IGFzIGFueSkuYm9vdHN0cmFwPy5Nb2RhbD8uZ2V0SW5zdGFuY2UobW9kYWwpO1xyXG5cdFx0XHRcdFx0XHRcdFx0aWYgKG1vZGFsSW5zdGFuY2UpIHtcclxuXHRcdFx0XHRcdFx0XHRcdFx0bW9kYWxJbnN0YW5jZS5oaWRlKCk7XHJcblx0XHRcdFx0XHRcdFx0XHR9IGVsc2Uge1xyXG5cdFx0XHRcdFx0XHRcdFx0XHRjb25zdCBjbG9zZUJ1dHRvbiA9IG1vZGFsLnF1ZXJ5U2VsZWN0b3IoJ1tkYXRhLWJzLWRpc21pc3M9XCJtb2RhbFwiXScpIGFzIEhUTUxFbGVtZW50O1xyXG5cdFx0XHRcdFx0XHRcdFx0XHRpZiAoY2xvc2VCdXR0b24pIHtcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRjbG9zZUJ1dHRvbi5jbGljaygpO1xyXG5cdFx0XHRcdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdHRoaXMuX3JvdXRlci5uYXZpZ2F0ZUJ5VXJsKCcvY2hlY2tvdXQnKTtcclxuXHRcdFx0XHRcdH0gZWxzZSB7XHJcblx0XHRcdFx0XHRcdHRoaXMucmVkaXJlY3QgJiYgdGhpcy5yZWRpcmVjdEhvbWUoKTtcclxuXHRcdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0fSBlbHNlIGlmIChyZXMgPT0gJ2Vycm9yJykge1xyXG5cdFx0XHRcdFx0dGhpcy5fdG9hc3RTZXJ2aWNlLmVycm9yKCdsb2dpbi1lcnJvcicpXHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdHRoaXMubG9hZGluZyA9IGZhbHNlO1xyXG5cdFx0XHR9LFxyXG5cdFx0XHQoZXJyOiBhbnkpID0+IHtcclxuXHRcdFx0XHQvLyBNYW5lam8gZGUgZXJyb3IgNDAxXHJcblx0XHRcdFx0aWYgKGVycj8uc3RhdHVzID09PSA0MDEpIHtcclxuXHRcdFx0XHRcdHRoaXMuX3RvYXN0U2VydmljZS5zaG93KCdpbnZhbGlkLWNyZWRlbnRpYWxzJyk7XHJcblx0XHRcdFx0fSBlbHNlIHtcclxuXHRcdFx0XHRcdHRoaXMuX3RvYXN0U2VydmljZS5lcnJvcignbG9naW4tZXJyb3InKTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0dGhpcy5sb2FkaW5nID0gZmFsc2U7XHJcblx0XHRcdH1cclxuXHRcdClcclxuXHR9XHJcblx0LyoqXHJcblx0ICogU2kgZWwgc2VydmljaW8gZGUgYXV0aCB0aWVuZSBjb25maWd1cmFkbyBhIGRvbmRlIHZvbHZlciwgc2UgZWplY3V0YXIgZXNlIGNhc28uXHJcblx0ICogRGUgbG8gY29udHJhcmlvIHJlZGlyaWdlIGFsIGNvbnRlbmlkbyBkZSBsYSB2YXJpYWJsZSBgcmVkaXJlY3RUb2AuXHJcblx0ICovXHJcblx0cmVkaXJlY3RIb21lKCkge1xyXG5cdFx0Y29uc3QgcmVzb2x2ZXJGdW5jdGlvbiA9IHRoaXMuX2F1dGhTZXJ2aWNlLmdldEhvbWVSZXNvbHZlcigpXHJcblx0XHRyZXNvbHZlckZ1bmN0aW9uXHJcblx0XHRcdD8gcmVzb2x2ZXJGdW5jdGlvbigpXHJcblx0XHRcdDogdGhpcy5fcm91dGVyLm5hdmlnYXRlQnlVcmwodGhpcy5yZWRpcmVjdFRvKVxyXG5cdH1cclxuXHR0b2dnbGVQYXNzd29yZCgpIHtcclxuXHRcdHRoaXMuc2hvd1Bhc3N3b3JkID0gIXRoaXMuc2hvd1Bhc3N3b3JkO1xyXG5cdH1cclxuXHJcblxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJkLWZsZXggZmxleC1jb2x1bW4gcG9zaXRpb24tcmVsYXRpdmVcIj5cclxuICAgIDxoMSBjbGFzcz1cInJpZ2h0LWxpbmUgZmYtdWJ1bnR1LWxpZ2h0IG1iLTRcIj48c3Bhbj5JbmdyZXNhcjwvc3Bhbj48L2gxPlxyXG4gICAgPHAgY2xhc3M9XCJmZi11YnVudHUtbGlnaHQgZm9udC1zbSBwci00IG1iLTRcIj5cclxuICAgICAgICBTaSB5YSBlc3TDoXMgcmVnaXN0cmFkby4gSW5ncmVzYSBlbiB0dSBjdWVudGEgY29uIHR1IGVtYWlsIHkgbGFcclxuICAgICAgICBjb250cmFzZcOxYSBhZGVjdWFkYS5cclxuICAgIDwvcD5cclxuICAgIDxkaXYgY2xhc3M9XCJ3LW1kLTUwIHctMTAwIHRleHQtY2VudGVyXCI+XHJcbiAgICAgICAgPGZvcm0gW2Zvcm1Hcm91cF09XCJsb2dpbkZvcm0oKVwiIChzdWJtaXQpPVwibG9naW4oJGV2ZW50KVwiPlxyXG4gICAgICAgICAgICA8aW5wdXQgY2xhc3M9XCJmb3JtLWNvbnRyb2wgbWItNCByYWRpdXMtMFwiIHR5cGU9XCJlbWFpbFwiIGZvcm1Db250cm9sTmFtZT1cInVzZXJuYW1lXCJcclxuICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyPVwiQ29ycmVvIEVsZWN0csOzbmljb1wiPlxyXG4gICAgICAgICAgICA8aW5wdXQgY2xhc3M9XCJmb3JtLWNvbnRyb2wgbWItNCByYWRpdXMtMFwiIHR5cGU9XCJwYXNzd29yZFwiIGZvcm1Db250cm9sTmFtZT1cInBhc3N3b3JkXCJcclxuICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyPVwiQ29udHJhc2XDsWFcIj5cclxuXHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3cgZC1mbGV4IGZsZXgtY29sdW1uXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLTEyIG1iLTRcIj5cclxuICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJzdWJtaXRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImJnLWdyYXkgYm9yZGVyLTAgcHgtNCBweS0yIGNvbG9yLXdoaXRlIGZmLXVidW50dS1saWdodFwiPklOR1JFU0FSPC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtMTIgZC1mbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXIgYWxpZ24taXRlbXMtY2VudGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGEgW3JvdXRlckxpbmtdPVwiJy9hdXRoL2ZvcmdvdC1wYXNzd29yZCdcIiBjbGFzcz1cImZvbnQtbWQgZmYtdWJ1bnR1LWxpZ2h0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIMK/T2x2aWTDsyBzdSBjb250cmFzZcOxYT9cclxuICAgICAgICAgICAgICAgICAgICA8L2E+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9mb3JtPlxyXG4gICAgPC9kaXY+XHJcbiAgICBAaWYobG9hZGluZyl7XHJcbiAgICA8YXBwLWxvYWRpbmctc2VjdGlvbi1lYz48L2FwcC1sb2FkaW5nLXNlY3Rpb24tZWM+XHJcbiAgICB9XHJcbjwvZGl2PiJdfQ==
|