ng-easycommerce-v18 0.3.17-beta.1 → 0.3.17-beta.3
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 +6 -0
- package/esm2022/lib/classes/filters/filter.mjs +27 -2
- package/esm2022/lib/constants/api.constants.service.mjs +41 -44
- package/esm2022/lib/ec-components/abstractions-components/menu-ec.component.mjs +17 -1
- package/esm2022/lib/ec-components/blocks-ec/block-products-ec/block-products-ec.component.mjs +5 -3
- package/esm2022/lib/ec-components/header-ec/header-ec.component.mjs +33 -24
- package/esm2022/lib/ec-components/related-products-ec/related-products-ec.component.mjs +6 -4
- package/esm2022/lib/ec-components/widgets-ec/magnizoom-ec/magnizoom-ec.component.mjs +4 -2
- package/esm2022/lib/ec-services/analytics/facebook-pixel.service.mjs +4 -2
- package/esm2022/lib/ec-services/analytics/google-analytics.service.mjs +4 -2
- package/esm2022/lib/ec-services/options.service.mjs +27 -3
- package/esm2022/lib/interfaces/options.mjs +1 -1
- package/fesm2022/ng-easycommerce-v18.mjs +154 -74
- 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/header-ec/header-ec.component.d.ts +1 -1
- package/lib/ec-services/options.service.d.ts +4 -0
- package/lib/interfaces/options.d.ts +2 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
# Version 0.3.17-beta.2
|
|
2
|
+
- 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.
|
|
1
3
|
# Version 0.3.17-beta.1
|
|
2
4
|
- Se agrego el isVisible de las categorias a su interfaz
|
|
3
5
|
# Version 0.3.15
|
|
@@ -5,6 +7,10 @@
|
|
|
5
7
|
- Compatibilidad completa con mobile y desktop: cierre automático de pestaña o redirección según navegador.
|
|
6
8
|
- Nuevo control de estado visual (idle / pagando / finalizando) para evitar repeticiones o confusión del usuario.
|
|
7
9
|
- Simplificación de `catch` (RedsysCatchEcComponent) y limpieza de código legacy.
|
|
10
|
+
# Version 0.3.14-beta.2
|
|
11
|
+
- Pruebas para errores en console al desplegar
|
|
12
|
+
# Version 0.3.14-beta.1
|
|
13
|
+
- Pruebas para errores en console al desplegar
|
|
8
14
|
# Version 0.3.13
|
|
9
15
|
- Se hace estable 0.3.12-beta.1.
|
|
10
16
|
- 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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SUFBSSxPQUFPLEdBQUcsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNuRCxJQUFJLE9BQU8sRUFBRSxDQUFDO1lBQ1YsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDMUIsT0FBTyxNQUFNLENBQUM7UUFDbEIsQ0FBQztRQUNELFFBQVEsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDcEIsSUFBSSxJQUFJLENBQUMsUUFBUSxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxFQUFFLENBQUM7Z0JBQ3hDLElBQUksVUFBVSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxNQUFNLENBQUMsQ0FBQztnQkFDMUQsSUFBSSxVQUFVO29CQUFFLE1BQU0sR0FBRyxVQUFVLENBQUM7WUFDeEMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFBO1FBQ0YsT0FBTyxNQUFNLENBQUM7SUFDbEIsQ0FBQyxDQUFBO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGaWx0ZXJFbGVtZW50LCBGaWx0ZXJUeXBlLCBJRmlsdGVyIH0gZnJvbSBcIi4uLy4uL2ludGVyZmFjZXNcIjtcblxuZXhwb3J0IGNsYXNzIEZpbHRlciBpbXBsZW1lbnRzIElGaWx0ZXIgIHtcbiAgICBcbiAgICBkYXRhOiBGaWx0ZXJFbGVtZW50W10gPSBbXTtcbiAgICBtdWx0aTogYm9vbGVhbiA9IGZhbHNlO1xuICAgIFxuICAgIHR5cGUoKTogRmlsdGVyVHlwZSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihcIk1ldGhvZCBub3QgaW1wbGVtZW50ZWQuXCIpO1xuICAgIH1cbiAgICBzZXRDb250ZW50KG9wdGlvbnM6IGFueSk6IHZvaWQge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJNZXRob2Qgbm90IGltcGxlbWVudGVkLlwiKTtcbiAgICB9XG4gICAgZ2V0Q29udGVudCgpOiBGaWx0ZXJFbGVtZW50W10ge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJNZXRob2Qgbm90IGltcGxlbWVudGVkLlwiKTtcbiAgICB9XG4gICAgdG9VcmxQYXJhbXMoKTogc3RyaW5nIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwiTWV0aG9kIG5vdCBpbXBsZW1lbnRlZC5cIik7XG4gICAgfVxuICAgIGNyZWF0ZUVsZW1lbnQoZmlsdGVyOiBhbnksIG9yaWdpbmFsOiBhbnksIGluaXRpYWxWYWx1ZT86IGFueSkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJNZXRob2Qgbm90IGltcGxlbWVudGVkLlwiKTtcbiAgICB9XG4gICAgcmVtb3ZlQWNjZW50cyA9IChzdHI6c3RyaW5nKSA9PiB7XG4gICAgICAgIHJldHVybiBzdHIubm9ybWFsaXplKFwiTkZEXCIpLnJlcGxhY2UoL1tcXHUwMzAwLVxcdTAzNmZdL2csIFwiXCIpO1xuICAgIH1cblxuICAgIHNldFNlbGVjdGVkKGVsZW1lbnQ6YW55LCB2YWx1ZT86YW55KXtcbiAgICAgICAgLy9jb25zb2xlLmxvZyhlbGVtZW50LCB2YWx1ZSk7XG4gICAgICAgICgoZWxlbWVudC5tdWx0aSAhPSB1bmRlZmluZWQpICYmICFlbGVtZW50Lm11bHRpKSA/IHRoaXMuY2xlYW5GaWx0ZXIodGhpcy5kYXRhLCBlbGVtZW50KSA6IG51bGw7XG4gICAgICAgIHRoaXMuc2V0U2VsZWN0ZWRWYWx1ZShlbGVtZW50LCB2YWx1ZSk7XG4gICAgfVxuXG4gICAgY2xlYW5GaWx0ZXIgPSAoZGF0YTphbnksIGVsZW1lbnRfdG9fY2hhbmdlOmFueSkgPT4ge1xuICAgICAgICAvL2NvbnNvbGUubG9nKFwiY2xlYW5GaWx0ZXJcIik7XG4gICAgICAgIGVsZW1lbnRfdG9fY2hhbmdlICYmIGRhdGEuZm9yRWFjaCgoZWxlbWVudDphbnkpID0+IHtcbiAgICAgICAgICAgIGVsZW1lbnRfdG9fY2hhbmdlICE9IGVsZW1lbnQgPyBlbGVtZW50LnNlbGVjdGVkID0gZmFsc2UgOiBudWxsO1xuICAgICAgICAgICAgKGVsZW1lbnQuY2hpbGRyZW4gJiYgZWxlbWVudC5jaGlsZHJlbi5sZW5ndGggPiAwKSAmJiB0aGlzLmNsZWFuRmlsdGVyKGVsZW1lbnQuY2hpbGRyZW4sIGVsZW1lbnRfdG9fY2hhbmdlKTtcbiAgICAgICAgfSlcbiAgICB9XG5cbiAgICBzZXRTZWxlY3RlZFZhbHVlKGVsZW1lbnQ6YW55LCB2YWx1ZT86YW55LCBzdWJsaXN0PzphbnksIG11bHRpPzphbnkpe1xuICAgICAgICBsZXQgZWxlbWVudHMgPSBzdWJsaXN0IHx8IHRoaXMuZGF0YTtcbiAgICAgICAgbGV0IGluZGV4ID0gZWxlbWVudHMuZmluZEluZGV4KChzdWJlbGVtZW50OmFueSkgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIChlbGVtZW50LmNvZGUgfHwgZWxlbWVudCkgPT0gc3ViZWxlbWVudC5jb2RlO1xuICAgICAgICB9KTtcbiAgICAgICAgaWYgKGluZGV4ID49IDApIHtcbiAgICAgICAgICAgIGVsZW1lbnRzW2luZGV4XS5zZWxlY3RlZCA9IGVsZW1lbnRzW2luZGV4XS5zZWxlY3RlZCA/IGZhbHNlIDogdHJ1ZTtcbiAgICAgICAgICAgICFtdWx0aSAmJiBlbGVtZW50cy5mb3JFYWNoKChjaGlsZDphbnksIGk6bnVtYmVyKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKGkgIT0gaW5kZXgpIGNoaWxkLnNlbGVjdGVkID0gZmFsc2U7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgZWxlbWVudHMsXG4gICAgICAgICAgICAgICAgZm91bmRlZDogdHJ1ZVxuICAgICAgICAgICAgfTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGVsZW1lbnRzLnNvbWUoKGVsZW06YW55KSA9PiBlbGVtLnR5cGUgPT0gJ3N1YicpICYmIGVsZW1lbnRzLnNvbWUoXG4gICAgICAgICAgICAgICAgKGZpbHRlcjphbnkpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgbGV0IGZvdW5kZWQgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGZpbHRlci50eXBlID09ICdzdWInKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCByZXN1bHQgPSB0aGlzLnNldFNlbGVjdGVkVmFsdWUoZWxlbWVudCwgdmFsdWUsIGZpbHRlci5jaGlsZHJlbiwgZmlsdGVyLm11bHRpKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChyZXN1bHQgJiYgcmVzdWx0LmZvdW5kZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWx0ZXIuY2hpbGRyZW4gPSByZXN1bHQuZWxlbWVudHM7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm91bmRlZCA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGZvdW5kZWQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgKVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgIH07XG5cbiAgICBnZXRTZWxlY3RlZExpc3QgPSAoKTogYW55ID0+IHRoaXMuZmluZFNlbGVjdGVkKHRoaXMuZGF0YSwgW10pO1xuXG4gICAgZmluZFNlbGVjdGVkID0gKGVsZW1lbnRzOiBhbnlbXSwgcmVzdWx0OmFueSkgPT4ge1xuICAgICAgICBsZXQgZWxlbWVudCA9IGVsZW1lbnRzLmZpbmQoZWxlbSA9PiBlbGVtLnNlbGVjdGVkKTtcbiAgICAgICAgaWYgKGVsZW1lbnQpIHtcbiAgICAgICAgICAgIHJlc3VsdC5wdXNoKGVsZW1lbnQuY29kZSk7XG4gICAgICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgICAgICB9XG4gICAgICAgIGVsZW1lbnRzLmZvckVhY2goZWxlbSA9PiB7XG4gICAgICAgICAgICBpZiAoZWxlbS5jaGlsZHJlbiAmJiBlbGVtLmNoaWxkcmVuLmxlbmd0aCkge1xuICAgICAgICAgICAgICAgIGxldCBuZXdfcmVzdWx0ID0gdGhpcy5maW5kU2VsZWN0ZWQoZWxlbS5jaGlsZHJlbiwgcmVzdWx0KTtcbiAgICAgICAgICAgICAgICBpZiAobmV3X3Jlc3VsdCkgcmVzdWx0ID0gbmV3X3Jlc3VsdDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSlcbiAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICB9XG59XG4iXX0=
|
|
108
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctZWFzeWNvbW1lcmNlLXYxOC9zcmMvbGliL2NsYXNzZXMvZmlsdGVycy9maWx0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUE7O0dBRUc7QUFDSCxTQUFTLGlCQUFpQixDQUFDLEdBQVc7SUFDbEMsSUFBSSxPQUFPLE1BQU0sS0FBSyxXQUFXLElBQUksT0FBTyxNQUFNLENBQUMsU0FBUyxDQUFDLFNBQVMsS0FBSyxVQUFVLEVBQUUsQ0FBQztRQUNwRixPQUFPLEdBQUcsQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUMsT0FBTyxDQUFDLGtCQUFrQixFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ2hFLENBQUM7SUFDRCxrREFBa0Q7SUFDbEQsT0FBTyxHQUFHLENBQUMsT0FBTyxDQUFDLFdBQVcsRUFBRSxHQUFHLENBQUM7U0FDL0IsT0FBTyxDQUFDLFNBQVMsRUFBRSxHQUFHLENBQUM7U0FDdkIsT0FBTyxDQUFDLFNBQVMsRUFBRSxHQUFHLENBQUM7U0FDdkIsT0FBTyxDQUFDLFVBQVUsRUFBRSxHQUFHLENBQUM7U0FDeEIsT0FBTyxDQUFDLFNBQVMsRUFBRSxHQUFHLENBQUM7U0FDdkIsT0FBTyxDQUFDLE9BQU8sRUFBRSxHQUFHLENBQUM7U0FDckIsT0FBTyxDQUFDLE1BQU0sRUFBRSxHQUFHLENBQUM7U0FDcEIsT0FBTyxDQUFDLE1BQU0sRUFBRSxHQUFHLENBQUM7U0FDcEIsT0FBTyxDQUFDLFdBQVcsRUFBRSxHQUFHLENBQUM7U0FDekIsT0FBTyxDQUFDLFNBQVMsRUFBRSxHQUFHLENBQUM7U0FDdkIsT0FBTyxDQUFDLFNBQVMsRUFBRSxHQUFHLENBQUM7U0FDdkIsT0FBTyxDQUFDLFVBQVUsRUFBRSxHQUFHLENBQUM7U0FDeEIsT0FBTyxDQUFDLFNBQVMsRUFBRSxHQUFHLENBQUM7U0FDdkIsT0FBTyxDQUFDLE9BQU8s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Q1YsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDMUIsT0FBTyxNQUFNLENBQUM7UUFDbEIsQ0FBQztRQUNELFFBQVEsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDcEIsSUFBSSxJQUFJLENBQUMsUUFBUSxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxFQUFFLENBQUM7Z0JBQ3hDLElBQUksVUFBVSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxNQUFNLENBQUMsQ0FBQztnQkFDMUQsSUFBSSxVQUFVO29CQUFFLE1BQU0sR0FBRyxVQUFVLENBQUM7WUFDeEMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFBO1FBQ0YsT0FBTyxNQUFNLENBQUM7SUFDbEIsQ0FBQyxDQUFBO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGaWx0ZXJFbGVtZW50LCBGaWx0ZXJUeXBlLCBJRmlsdGVyIH0gZnJvbSBcIi4uLy4uL2ludGVyZmFjZXNcIjtcblxuLyoqXG4gKiBGdW5jacOzbiBhdXhpbGlhciBwYXJhIHJlbW92ZXIgYWNlbnRvcyBkZSBmb3JtYSBzZWd1cmEgcGFyYSBTU1JcbiAqL1xuZnVuY3Rpb24gc2FmZVJlbW92ZUFjY2VudHMoc3RyOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIGlmICh0eXBlb2Ygd2luZG93ICE9PSAndW5kZWZpbmVkJyAmJiB0eXBlb2YgU3RyaW5nLnByb3RvdHlwZS5ub3JtYWxpemUgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgcmV0dXJuIHN0ci5ub3JtYWxpemUoXCJORkRcIikucmVwbGFjZSgvW1xcdTAzMDAtXFx1MDM2Zl0vZywgXCJcIik7XG4gICAgfVxuICAgIC8vIEZhbGxiYWNrIHBhcmEgU1NSIC0gcmVtb3ZlciBhY2VudG9zIG1hbnVhbG1lbnRlXG4gICAgcmV0dXJuIHN0ci5yZXBsYWNlKC9bw6DDocOiw6PDpMOlXS9nLCAnYScpXG4gICAgICAgIC5yZXBsYWNlKC9bw6jDqcOqw6tdL2csICdlJylcbiAgICAgICAgLnJlcGxhY2UoL1vDrMOtw67Dr10vZywgJ2knKVxuICAgICAgICAucmVwbGFjZSgvW8Oyw7PDtMO1w7ZdL2csICdvJylcbiAgICAgICAgLnJlcGxhY2UoL1vDucO6w7vDvF0vZywgJ3UnKVxuICAgICAgICAucmVwbGFjZSgvW8O9w79dL2csICd5JylcbiAgICAgICAgLnJlcGxhY2UoL1vDsV0vZywgJ24nKVxuICAgICAgICAucmVwbGFjZSgvW8OnXS9nLCAnYycpXG4gICAgICAgIC5yZXBsYWNlKC9bw4DDgcOCw4PDhMOFXS9nLCAnQScpXG4gICAgICAgIC5yZXBsYWNlKC9bw4jDicOKw4tdL2csICdFJylcbiAgICAgICAgLnJlcGxhY2UoL1vDjMONw47Dj10vZywgJ0knKVxuICAgICAgICAucmVwbGFjZSgvW8OSw5PDlMOVw5ZdL2csICdPJylcbiAgICAgICAgLnJlcGxhY2UoL1vDmcOaw5vDnF0vZywgJ1UnKVxuICAgICAgICAucmVwbGFjZSgvW8OdxbhdL2csICdZJylcbiAgICAgICAgLnJlcGxhY2UoL1vDkV0vZywgJ04nKVxuICAgICAgICAucmVwbGFjZSgvW8OHXS9nLCAnQycpO1xufVxuXG5leHBvcnQgY2xhc3MgRmlsdGVyIGltcGxlbWVudHMgSUZpbHRlciAge1xuICAgIFxuICAgIGRhdGE6IEZpbHRlckVsZW1lbnRbXSA9IFtdO1xuICAgIG11bHRpOiBib29sZWFuID0gZmFsc2U7XG4gICAgXG4gICAgdHlwZSgpOiBGaWx0ZXJUeXBlIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwiTWV0aG9kIG5vdCBpbXBsZW1lbnRlZC5cIik7XG4gICAgfVxuICAgIHNldENvbnRlbnQob3B0aW9uczogYW55KTogdm9pZCB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihcIk1ldGhvZCBub3QgaW1wbGVtZW50ZWQuXCIpO1xuICAgIH1cbiAgICBnZXRDb250ZW50KCk6IEZpbHRlckVsZW1lbnRbXSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihcIk1ldGhvZCBub3QgaW1wbGVtZW50ZWQuXCIpO1xuICAgIH1cbiAgICB0b1VybFBhcmFtcygpOiBzdHJpbmcge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJNZXRob2Qgbm90IGltcGxlbWVudGVkLlwiKTtcbiAgICB9XG4gICAgY3JlYXRlRWxlbWVudChmaWx0ZXI6IGFueSwgb3JpZ2luYWw6IGFueSwgaW5pdGlhbFZhbHVlPzogYW55KSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihcIk1ldGhvZCBub3QgaW1wbGVtZW50ZWQuXCIpO1xuICAgIH1cbiAgICByZW1vdmVBY2NlbnRzID0gKHN0cjpzdHJpbmcpID0+IHtcbiAgICAgICAgcmV0dXJuIHNhZmVSZW1vdmVBY2NlbnRzKHN0cik7XG4gICAgfVxuXG4gICAgc2V0U2VsZWN0ZWQoZWxlbWVudDphbnksIHZhbHVlPzphbnkpe1xuICAgICAgICAvL2NvbnNvbGUubG9nKGVsZW1lbnQsIHZhbHVlKTtcbiAgICAgICAgKChlbGVtZW50Lm11bHRpICE9IHVuZGVmaW5lZCkgJiYgIWVsZW1lbnQubXVsdGkpID8gdGhpcy5jbGVhbkZpbHRlcih0aGlzLmRhdGEsIGVsZW1lbnQpIDogbnVsbDtcbiAgICAgICAgdGhpcy5zZXRTZWxlY3RlZFZhbHVlKGVsZW1lbnQsIHZhbHVlKTtcbiAgICB9XG5cbiAgICBjbGVhbkZpbHRlciA9IChkYXRhOmFueSwgZWxlbWVudF90b19jaGFuZ2U6YW55KSA9PiB7XG4gICAgICAgIC8vY29uc29sZS5sb2coXCJjbGVhbkZpbHRlclwiKTtcbiAgICAgICAgZWxlbWVudF90b19jaGFuZ2UgJiYgZGF0YS5mb3JFYWNoKChlbGVtZW50OmFueSkgPT4ge1xuICAgICAgICAgICAgZWxlbWVudF90b19jaGFuZ2UgIT0gZWxlbWVudCA/IGVsZW1lbnQuc2VsZWN0ZWQgPSBmYWxzZSA6IG51bGw7XG4gICAgICAgICAgICAoZWxlbWVudC5jaGlsZHJlbiAmJiBlbGVtZW50LmNoaWxkcmVuLmxlbmd0aCA+IDApICYmIHRoaXMuY2xlYW5GaWx0ZXIoZWxlbWVudC5jaGlsZHJlbiwgZWxlbWVudF90b19jaGFuZ2UpO1xuICAgICAgICB9KVxuICAgIH1cblxuICAgIHNldFNlbGVjdGVkVmFsdWUoZWxlbWVudDphbnksIHZhbHVlPzphbnksIHN1Ymxpc3Q/OmFueSwgbXVsdGk/OmFueSl7XG4gICAgICAgIGxldCBlbGVtZW50cyA9IHN1Ymxpc3QgfHwgdGhpcy5kYXRhO1xuICAgICAgICBsZXQgaW5kZXggPSBlbGVtZW50cy5maW5kSW5kZXgoKHN1YmVsZW1lbnQ6YW55KSA9PiB7XG4gICAgICAgICAgICByZXR1cm4gKGVsZW1lbnQuY29kZSB8fCBlbGVtZW50KSA9PSBzdWJlbGVtZW50LmNvZGU7XG4gICAgICAgIH0pO1xuICAgICAgICBpZiAoaW5kZXggPj0gMCkge1xuICAgICAgICAgICAgZWxlbWVudHNbaW5kZXhdLnNlbGVjdGVkID0gZWxlbWVudHNbaW5kZXhdLnNlbGVjdGVkID8gZmFsc2UgOiB0cnVlO1xuICAgICAgICAgICAgIW11bHRpICYmIGVsZW1lbnRzLmZvckVhY2goKGNoaWxkOmFueSwgaTpudW1iZXIpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoaSAhPSBpbmRleCkgY2hpbGQuc2VsZWN0ZWQgPSBmYWxzZTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICBlbGVtZW50cyxcbiAgICAgICAgICAgICAgICBmb3VuZGVkOiB0cnVlXG4gICAgICAgICAgICB9O1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgZWxlbWVudHMuc29tZSgoZWxlbTphbnkpID0+IGVsZW0udHlwZSA9PSAnc3ViJykgJiYgZWxlbWVudHMuc29tZShcbiAgICAgICAgICAgICAgICAoZmlsdGVyOmFueSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBsZXQgZm91bmRlZCA9IGZhbHNlO1xuICAgICAgICAgICAgICAgICAgICBpZiAoZmlsdGVyLnR5cGUgPT0gJ3N1YicpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHJlc3VsdCA9IHRoaXMuc2V0U2VsZWN0ZWRWYWx1ZShlbGVtZW50LCB2YWx1ZSwgZmlsdGVyLmNoaWxkcmVuLCBmaWx0ZXIubXVsdGkpO1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHJlc3VsdCAmJiByZXN1bHQuZm91bmRlZCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbHRlci5jaGlsZHJlbiA9IHJlc3VsdC5lbGVtZW50cztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3VuZGVkID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gZm91bmRlZDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICApXG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgfTtcblxuICAgIGdldFNlbGVjdGVkTGlzdCA9ICgpOiBhbnkgPT4gdGhpcy5maW5kU2VsZWN0ZWQodGhpcy5kYXRhLCBbXSk7XG5cbiAgICBmaW5kU2VsZWN0ZWQgPSAoZWxlbWVudHM6IGFueVtdLCByZXN1bHQ6YW55KSA9PiB7XG4gICAgICAgIGxldCBlbGVtZW50ID0gZWxlbWVudHMuZmluZChlbGVtID0+IGVsZW0uc2VsZWN0ZWQpO1xuICAgICAgICBpZiAoZWxlbWVudCkge1xuICAgICAgICAgICAgcmVzdWx0LnB1c2goZWxlbWVudC5jb2RlKTtcbiAgICAgICAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgICAgIH1cbiAgICAgICAgZWxlbWVudHMuZm9yRWFjaChlbGVtID0+IHtcbiAgICAgICAgICAgIGlmIChlbGVtLmNoaWxkcmVuICYmIGVsZW0uY2hpbGRyZW4ubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgbGV0IG5ld19yZXN1bHQgPSB0aGlzLmZpbmRTZWxlY3RlZChlbGVtLmNoaWxkcmVuLCByZXN1bHQpO1xuICAgICAgICAgICAgICAgIGlmIChuZXdfcmVzdWx0KSByZXN1bHQgPSBuZXdfcmVzdWx0O1xuICAgICAgICAgICAgfVxuICAgICAgICB9KVxuICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -1,92 +1,86 @@
|
|
|
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
|
+
// Browser runtime-config
|
|
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
|
+
// SSR
|
|
50
|
+
if (isPlatformServer(this.platformId)) {
|
|
51
|
+
return this.ssrApiUrl;
|
|
64
52
|
}
|
|
65
|
-
// Fallback
|
|
53
|
+
// Fallback environment
|
|
66
54
|
return this.environment.apiUrl ?? '';
|
|
67
55
|
}
|
|
68
56
|
/**
|
|
69
|
-
*
|
|
70
|
-
|
|
57
|
+
* URL base completa para shop-api con channel y locale
|
|
58
|
+
*/
|
|
59
|
+
getShopApiBase() {
|
|
60
|
+
const channel = this.CHANNEL || 'undefined';
|
|
61
|
+
const locale = this.LOCALE || 'undefined';
|
|
62
|
+
return `${this.API_URL}/${this.SHOP_API_URL}${channel}/?locale=${locale}`;
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* Retorna la url base general (sin shop-api)
|
|
71
66
|
*/
|
|
72
67
|
getUrlBase() {
|
|
73
68
|
return this.API_URL;
|
|
74
69
|
}
|
|
75
70
|
/**
|
|
76
71
|
* Cambia el canal actual
|
|
77
|
-
* @param code
|
|
78
|
-
* @returns
|
|
79
72
|
*/
|
|
80
|
-
setChannel(code) {
|
|
73
|
+
setChannel(code) {
|
|
74
|
+
this.CHANNEL = code;
|
|
75
|
+
}
|
|
81
76
|
setLocale(locale) {
|
|
82
77
|
this._localStorage.setItem(this.LOCALE_KEY, locale);
|
|
83
78
|
this._translate.use(locale.split('_')[0]);
|
|
84
79
|
this.LOCALE = locale;
|
|
85
80
|
}
|
|
86
|
-
//Storage key
|
|
87
81
|
LOCALE_KEY = 'LOCALE';
|
|
88
82
|
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 });
|
|
83
|
+
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
84
|
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ApiConstantsService, providedIn: 'root' });
|
|
91
85
|
}
|
|
92
86
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ApiConstantsService, decorators: [{
|
|
@@ -94,5 +88,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
94
88
|
args: [{
|
|
95
89
|
providedIn: 'root'
|
|
96
90
|
}]
|
|
97
|
-
}], ctorParameters: () => [
|
|
98
|
-
|
|
91
|
+
}], ctorParameters: () => [{ type: undefined, decorators: [{
|
|
92
|
+
type: Inject,
|
|
93
|
+
args: ['API_URL']
|
|
94
|
+
}] }] });
|
|
95
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpLmNvbnN0YW50cy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctZWFzeWNvbW1lcmNlLXYxOC9zcmMvbGliL2NvbnN0YW50cy9hcGkuY29uc3RhbnRzLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsV0FBVyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN4RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFakQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDckQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0scUJBQXFCLENBQUM7O0FBRXZEOztHQUVHO0FBSUgsTUFBTSxPQUFPLG1CQUFtQjtJQWFTO0lBWi9CLGFBQWEsR0FBd0IsTUFBTSxDQUFDLG1CQUFtQixDQUFDLENBQUM7SUFDakUsVUFBVSxHQUFxQixNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUV4RCxXQUFXLEdBQWdCLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO0lBQ3JELFVBQVUsR0FBRyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUM7SUFFakMsUUFBUSxDQUFTO0lBQ2xCLE1BQU0sQ0FBUztJQUVOLFlBQVksR0FBVyxXQUFXLENBQUM7SUFDbkMsT0FBTyxHQUFXLE1BQU0sQ0FBQztJQUV6QyxZQUF1QyxTQUFpQjtRQUFqQixjQUFTLEdBQVQsU0FBUyxDQUFRO1FBQ3RELElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUM7UUFDekMsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQztJQUN4QyxDQUFDO0lBRUQ7O09BRUc7SUFDSCxJQUFXLE9BQU87UUFDaEIsSUFBSSxPQUFPLE1BQU0sS0FBSyxXQUFXLEVBQUUsQ0FBQztZQUNsQyxNQUFNLFNBQVMsR0FBSSxNQUFjLENBQUMsS0FBSyxDQUFDO1lBQ3hDLElBQUksU0FBUyxFQUFFLE9BQU87Z0JBQUUsT0FBTyxTQUFTLENBQUMsT0FBTyxDQUFDO1FBQ25ELENBQUM7UUFDRCxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUM7SUFDdkIsQ0FBQztJQUVELElBQVcsT0FBTyxDQUFDLEtBQWE7UUFDOUIsSUFBSSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUM7SUFDeEIsQ0FBQztJQUVEOztPQUVHO0lBQ0gsSUFBVyxPQUFPO1FBQ2hCLHlCQUF5QjtRQUN6QixJQUFJLE9BQU8sTUFBTSxLQUFLLFdBQVcsRUFBRSxDQUFDO1lBQ2xDLE1BQU0sU0FBUyxHQUFJLE1BQWMsQ0FBQyxLQUFLLENBQUM7WUFDeEMsSUFBSSxTQUFTLEVBQUUsVUFBVTtnQkFBRSxPQUFPLFNBQVMsQ0FBQyxVQUFVLENBQUM7UUFDekQsQ0FBQztRQUVELE1BQU07UUFDTixJQUFJLGdCQUFnQixDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDO1lBQ3RDLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQztRQUN4QixDQUFDO1FBRUQsdUJBQXVCO1FBQ3ZCLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLElBQUksRUFBRSxDQUFDO0lBQ3ZDLENBQUM7SUFFRDs7T0FFRztJQUNJLGNBQWM7UUFDbkIsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU8sSUFBSSxXQUFXLENBQUM7UUFDNUMsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sSUFBSSxXQUFXLENBQUM7UUFDMUMsT0FBTyxHQUFHLElBQUksQ0FBQyxPQUFPLElBQUksSUFBSSxDQUFDLFlBQVksR0FBRyxPQUFPLFlBQVksTUFBTSxFQUFFLENBQUM7SUFDNUUsQ0FBQztJQUVEOztPQUVHO0lBQ0ksVUFBVTtRQUNmLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQztJQUN0QixDQUFDO0lBRUQ7O09BRUc7SUFDSSxVQUFVLENBQUMsSUFBWTtRQUM1QixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQztJQUN0QixDQUFDO0lBRU0sU0FBUyxDQUFDLE1BQWM7UUFDN0IsSUFBSSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxNQUFNLENBQUMsQ0FBQztRQUNwRCxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDMUMsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7SUFDdkIsQ0FBQztJQUVnQixVQUFVLEdBQVcsUUFBUSxDQUFDO0lBQzlCLFdBQVcsR0FBVyxTQUFTLENBQUM7d0dBbEZ0QyxtQkFBbUIsa0JBYVYsU0FBUzs0R0FibEIsbUJBQW1CLGNBRmxCLE1BQU07OzRGQUVQLG1CQUFtQjtrQkFIL0IsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkI7OzBCQWNjLE1BQU07MkJBQUMsU0FBUyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGluamVjdCwgSW5qZWN0YWJsZSwgUExBVEZPUk1fSUQsIEluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgaXNQbGF0Zm9ybVNlcnZlciB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBFTlZJUk9OTUVOVF9UT0tFTiB9IGZyb20gJy4uL3Byb3ZpZGVycyc7XG5pbXBvcnQgeyBFbnZpcm9ubWVudCB9IGZyb20gJy4uL2ludGVyZmFjZXMnO1xuaW1wb3J0IHsgTG9jYWxTdG9yYWdlU2VydmljZSB9IGZyb20gJy4uL2VjLXNlcnZpY2VzJztcbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcblxuLyoqXG4gKiBTZXJ2aWNpbyBxdWUgcHJvdmVlIGRlIGRhdG9zIHJlbGFjaW9uYWRvcyBjb24gbGFzIHBldGljaW9uZXMgYSBsYSBBUElcbiAqL1xuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgQXBpQ29uc3RhbnRzU2VydmljZSB7XG4gIHByaXZhdGUgX2xvY2FsU3RvcmFnZTogTG9jYWxTdG9yYWdlU2VydmljZSA9IGluamVjdChMb2NhbFN0b3JhZ2VTZXJ2aWNlKTtcbiAgcHJpdmF0ZSBfdHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlID0gaW5qZWN0KFRyYW5zbGF0ZVNlcnZpY2UpO1xuXG4gIHByaXZhdGUgZW52aXJvbm1lbnQ6IEVudmlyb25tZW50ID0gaW5qZWN0KEVOVklST05NRU5UX1RPS0VOKTtcbiAgcHJpdmF0ZSBwbGF0Zm9ybUlkID0gaW5qZWN0KFBMQVRGT1JNX0lEKTtcblxuICBwcml2YXRlIF9jaGFubmVsOiBzdHJpbmc7XG4gIHB1YmxpYyBMT0NBTEU6IHN0cmluZztcblxuICBwdWJsaWMgcmVhZG9ubHkgU0hPUF9BUElfVVJMOiBzdHJpbmcgPSAnc2hvcC1hcGkvJztcbiAgcHVibGljIHJlYWRvbmx5IENNU19VUkw6IHN0cmluZyA9ICdjbXMvJztcblxuICBjb25zdHJ1Y3RvcihASW5qZWN0KCdBUElfVVJMJykgcHJpdmF0ZSBzc3JBcGlVcmw6IHN0cmluZykge1xuICAgIHRoaXMuX2NoYW5uZWwgPSB0aGlzLmVudmlyb25tZW50LmNoYW5uZWw7XG4gICAgdGhpcy5MT0NBTEUgPSB0aGlzLmVudmlyb25tZW50LmxvY2FsZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDYW5hbCBhY3R1YWwgZGVsIGZyb250ZW5kXG4gICAqL1xuICBwdWJsaWMgZ2V0IENIQU5ORUwoKTogc3RyaW5nIHtcbiAgICBpZiAodHlwZW9mIHdpbmRvdyAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgIGNvbnN0IHdpbmRvd0VudiA9ICh3aW5kb3cgYXMgYW55KS5fX2VudjtcbiAgICAgIGlmICh3aW5kb3dFbnY/LmNoYW5uZWwpIHJldHVybiB3aW5kb3dFbnYuY2hhbm5lbDtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuX2NoYW5uZWw7XG4gIH1cblxuICBwdWJsaWMgc2V0IENIQU5ORUwodmFsdWU6IHN0cmluZykge1xuICAgIHRoaXMuX2NoYW5uZWwgPSB2YWx1ZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBVUkwgZGVsIGJhY2tlbmQgcGFyYSByZWFsaXphciBsYXMgcGV0aWNpb25lc1xuICAgKi9cbiAgcHVibGljIGdldCBBUElfVVJMKCk6IHN0cmluZyB7XG4gICAgLy8gQnJvd3NlciBydW50aW1lLWNvbmZpZ1xuICAgIGlmICh0eXBlb2Ygd2luZG93ICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgY29uc3Qgd2luZG93RW52ID0gKHdpbmRvdyBhcyBhbnkpLl9fZW52O1xuICAgICAgaWYgKHdpbmRvd0Vudj8uYXBpQmFzZVVybCkgcmV0dXJuIHdpbmRvd0Vudi5hcGlCYXNlVXJsO1xuICAgIH1cblxuICAgIC8vIFNTUlxuICAgIGlmIChpc1BsYXRmb3JtU2VydmVyKHRoaXMucGxhdGZvcm1JZCkpIHtcbiAgICAgIHJldHVybiB0aGlzLnNzckFwaVVybDtcbiAgICB9XG5cbiAgICAvLyBGYWxsYmFjayBlbnZpcm9ubWVudFxuICAgIHJldHVybiB0aGlzLmVudmlyb25tZW50LmFwaVVybCA/PyAnJztcbiAgfVxuXG4gIC8qKlxuICAgKiBVUkwgYmFzZSBjb21wbGV0YSBwYXJhIHNob3AtYXBpIGNvbiBjaGFubmVsIHkgbG9jYWxlXG4gICAqL1xuICBwdWJsaWMgZ2V0U2hvcEFwaUJhc2UoKTogc3RyaW5nIHtcbiAgICBjb25zdCBjaGFubmVsID0gdGhpcy5DSEFOTkVMIHx8ICd1bmRlZmluZWQnO1xuICAgIGNvbnN0IGxvY2FsZSA9IHRoaXMuTE9DQUxFIHx8ICd1bmRlZmluZWQnO1xuICAgIHJldHVybiBgJHt0aGlzLkFQSV9VUkx9LyR7dGhpcy5TSE9QX0FQSV9VUkx9JHtjaGFubmVsfS8/bG9jYWxlPSR7bG9jYWxlfWA7XG4gIH1cblxuICAvKipcbiAgICogUmV0b3JuYSBsYSB1cmwgYmFzZSBnZW5lcmFsIChzaW4gc2hvcC1hcGkpXG4gICAqL1xuICBwdWJsaWMgZ2V0VXJsQmFzZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLkFQSV9VUkw7XG4gIH1cblxuICAvKipcbiAgICogQ2FtYmlhIGVsIGNhbmFsIGFjdHVhbFxuICAgKi9cbiAgcHVibGljIHNldENoYW5uZWwoY29kZTogc3RyaW5nKTogdm9pZCB7XG4gICAgdGhpcy5DSEFOTkVMID0gY29kZTtcbiAgfVxuXG4gIHB1YmxpYyBzZXRMb2NhbGUobG9jYWxlOiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLl9sb2NhbFN0b3JhZ2Uuc2V0SXRlbSh0aGlzLkxPQ0FMRV9LRVksIGxvY2FsZSk7XG4gICAgdGhpcy5fdHJhbnNsYXRlLnVzZShsb2NhbGUuc3BsaXQoJ18nKVswXSk7XG4gICAgdGhpcy5MT0NBTEUgPSBsb2NhbGU7XG4gIH1cblxuICBwcml2YXRlIHJlYWRvbmx5IExPQ0FMRV9LRVk6IHN0cmluZyA9ICdMT0NBTEUnO1xuICBwcml2YXRlIHJlYWRvbmx5IENIQU5ORUxfS0VZOiBzdHJpbmcgPSAnQ0hBTk5FTCc7XG59XG4iXX0=
|
|
@@ -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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LENBQUMsQ0FBQyxDQUNGLENBQUM7SUFDSCxDQUFDO0lBQ0Q7Ozs7S0FJSTtJQUNKLGtCQUFrQixDQUFDLFFBQWtCO1FBQ3BDLE9BQVEsUUFBZ0IsQ0FBQyxTQUFTLEtBQUssSUFBSSxDQUFDO0lBQzdDLENBQUM7d0dBbkhXLGVBQWU7NEZBQWYsZUFBZSx5RUFGakIseUNBQXlDOzs0RkFFdkMsZUFBZTtrQkFOM0IsU0FBUzttQkFBQztvQkFDVixRQUFRLEVBQUUsZUFBZTtvQkFDekIsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLE9BQU8sRUFBRSxFQUFFO29CQUNYLFFBQVEsRUFBRSx5Q0FBeUM7aUJBQ25EIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgYWZ0ZXJOZXh0UmVuZGVyLCBhZnRlclJlbmRlciwgQ29tcG9uZW50LCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEF1dGhTZXJ2aWNlLCBPcHRpb25zU2VydmljZSwgUGFyYW1ldGVyc1NlcnZpY2UgfSBmcm9tICcuLi8uLi9lYy1zZXJ2aWNlcyc7XG5pbXBvcnQgeyBtYXAsIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IENvcmVDb25zdGFudHNTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vY29uc3RhbnRzJztcbmltcG9ydCB7IEF0dHJpYnV0ZSwgQ2F0ZWdvcnksIFBhcmFtZXRlciwgU2VjdGlvbiB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMnO1xuaW1wb3J0IHsgVG9hc3RTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vZWMtc2VydmljZXMvdG9hc3Quc2VydmljZSc7XG4vKipcbiAqIFBhcmEgZGlmZXJlbmNpYXIgbG9zIHRpcG9zIGRlIE1lbnVcbiAqL1xudHlwZSBNZW51VHlwZSA9IFwiY2F0ZWdvcnlcIiB8IFwiYXR0cmlidXRlXCIgfCBcInNlY3Rpb25cIlxuLyoqXG4gKiBDb21wb25lbnRlIHF1ZSBzaXJ2ZSBwYXJhIGFic3RyYWVyIGxhIGZ1bmNpb25hbGlkYWQgcXVlIGNvbXBhcnRlbiBcbiAqIGVsIG1lbsO6IHkgZWwgZm9vdGVyLlxuICogQGNsYXNzIE1lbnVFY0NvbXBvbmVudFxuICovXG5AQ29tcG9uZW50KHtcblx0c2VsZWN0b3I6ICdsaWItZm9vdGVyLWVjJyxcblx0c3RhbmRhbG9uZTogdHJ1ZSxcblx0aW1wb3J0czogW10sXG5cdHRlbXBsYXRlOiAnPHA+TWVudSBhbmQgRm9vdGVyIEhlbHBlciBDb21wb25lbnQ8L3A+J1xufSlcbmV4cG9ydCBjbGFzcyBNZW51RWNDb21wb25lbnQge1xuXHRwcml2YXRlIG9wdGlvbnNTZXJ2aWNlID0gaW5qZWN0KE9wdGlvbnNTZXJ2aWNlKVxuXHRwcml2YXRlIHBhcmFtZXRlcnNTZXJ2aWNlID0gaW5qZWN0KFBhcmFtZXRlcnNTZXJ2aWNlKVxuXHRwcml2YXRlIF9hdXRoU2VydmljZTogQXV0aFNlcnZpY2UgPSBpbmplY3QoQXV0aFNlcnZpY2UpXG5cdHByaXZhdGUgX3RvYXN0U2VydmljZTogVG9hc3RTZXJ2aWNlID0gaW5qZWN0KFRvYXN0U2VydmljZSlcblx0LyoqXG5cdCAqIENvbnN0YW50ZXMgZGVsIGNvcmUuXG5cdCAqL1xuXHRwcml2YXRlIGNvbnN0cyA9IGluamVjdChDb3JlQ29uc3RhbnRzU2VydmljZSlcblxuXHQvKipcblx0ICogT2JzZXJ2YWJsZSBkZSBjYXRlZ29yaWFzXG5cdCAqL1xuXHRwdWJsaWMgY2F0ZWdvcmllcyQ6IE9ic2VydmFibGU8Q2F0ZWdvcnlbXT4gPSB0aGlzLm9wdGlvbnNTZXJ2aWNlLmdldENhdGVnb3JpZXMoKVxuXHQvKipcblx0ICogT2JzZXJ2YWJsZSBkZSBzZWNjaW9uZXNcblx0ICovXG5cdHB1YmxpYyBzZWN0aW9ucyQ6IE9ic2VydmFibGU8U2VjdGlvbltdPiA9IHRoaXMub3B0aW9uc1NlcnZpY2UuZ2V0U2VjdGlvbnMoKVxuXHQvKipcblx0ICogT2JzZXJ2YWJsZSBkZSBhdHJpYnV0b3Ncblx0ICovXG5cdHB1YmxpYyBhdHRyaWJ1dGVzJDogT2JzZXJ2YWJsZTxBdHRyaWJ1dGVbXT4gPSB0aGlzLm9wdGlvbnNTZXJ2aWNlLmdldEF0dHJpYnV0ZXMoKVxuXHQvKipcblx0ICogT2JzZXJ2YWJsZSBkZSBwYXJhbWV0cm9zXG5cdCAqL1xuXHRwdWJsaWMgcGFyYW1ldGVycyQ6IE9ic2VydmFibGU8UGFyYW1ldGVyW10gfCBudWxsPiA9IHRoaXMucGFyYW1ldGVyc1NlcnZpY2UuZ2V0UGFyYW1ldGVycygpXG5cdC8qKlxuXHQgKiBVcmwgcGFyYSBsYXMgaW1hZ2VuZXMgZ3VhcmRhZGVzIGVuIGVsIGJhY2tlbmQuXG5cdCAqL1xuXHRwdWJsaWMgbWVkaWFVcmwgPSB0aGlzLmNvbnN0cy5tZWRpYVVybCgpXG5cdC8qKlxuXHQgKiBGdW5jaW9uIHBhcmEgc2FiZXIgc2kgZXhpc3RlbiB1biBwYXJhbWV0cm8uIFxuXHQgKi9cblx0cHVibGljIGhhc1BhcmFtcyA9IHRoaXMucGFyYW1ldGVyc1NlcnZpY2UuaGFzUGFyYW1zXG5cblx0Y29uc3RydWN0b3IoKSB7IH1cblxuXHRwcm90ZWN0ZWQgYWRkQ2hpbGRyZW4gPSAobWVudVR5cGU6IE1lbnVUeXBlLCBjb2RlOiBzdHJpbmcsIGl0ZW06IGFueSwgc3RhY2tQbGFjZSA9ICdlbmQnKTogdm9pZCA9PiB7XG5cblx0fVxuXG5cdC8qIHByb3RlY3RlZCBhZGRDaGlsZHJlbiA9IChtZW51SXRlbXM6IGFueVtdLCBjb2RlOiBzdHJpbmcsIGl0ZW06IGFueSwgc3RhY2tQbGFjZSA9ICdlbmQnKSA9PiB7XG5cdCAgKHN0YWNrUGxhY2UgPT09ICdzdGFydCcpXG5cdFx0PyBtZW51SXRlbXMuZmluZChpdGVtID0+IGl0ZW0uY29kZT8udG9Mb3dlckNhc2UoKS5pbmNsdWRlcyhjb2RlKSk/LmNoaWxkcmVuLnVuc2hpZnQoaXRlbSlcblx0XHQ6IG1lbnVJdGVtcy5maW5kKGl0ZW0gPT4gaXRlbS5jb2RlPy50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKGNvZGUpKT8uY2hpbGRyZW4ucHVzaChpdGVtKVxuICAgIFxuXHR9ICovXG5cdC8qKlxuXHQgKiBBY3R1YWxpemEgbGFzIGNhdGVnb3JpYXMgYWdyZWdhbmRvIG51ZXZhcy5cblx0ICogQHBhcmFtIGNhdGVnb3JpZXMgXG5cdCAqL1xuXHRwcm90ZWN0ZWQgdXBkYXRlQ2F0ZWdvcmllcyhjYXRlZ29yaWVzOiBDYXRlZ29yeVtdKSB7XG5cdFx0dGhpcy5jYXRlZ29yaWVzJCA9IHRoaXMuY2F0ZWdvcmllcyQucGlwZShtYXAoKGRhdGE6IENhdGVnb3J5W10pID0+IHtcblx0XHRcdHJldHVybiBbLi4uZGF0YSwgLi4uY2F0ZWdvcmllc11cblx0XHR9KSlcblx0fVxuXHQvKipcblx0ICogQWN0dWFsaXphIGxhcyBzZWNjaW9uZXMgYWdyZWdhbmRvIG51ZXZhcy5cblx0ICogQHBhcmFtIHNlY3Rpb25zIFxuXHQgKi9cblx0cHJvdGVjdGVkIHVwZGF0ZVNlY3Rpb25zKHNlY3Rpb25zOiBTZWN0aW9uW10pIHtcblx0XHR0aGlzLnNlY3Rpb25zJCA9IHRoaXMuc2VjdGlvbnMkLnBpcGUobWFwKChkYXRhOiBTZWN0aW9uW10pID0+IHtcblx0XHRcdHJldHVybiBbLi4uZGF0YSwgLi4uc2VjdGlvbnNdXG5cdFx0fSkpXG5cdH1cblx0LyoqXG5cdCAqIEFjdHVhbGl6YSBlbCBtZW7DuiBkZSBhdHJpYnV0b3MgYWdyZWRhbmRvIG51ZXZvcy5cblx0ICogQHBhcmFtIGF0dHJpYnV0ZXMgXG5cdCAqL1xuXHRwcm90ZWN0ZWQgdXBkYXRlQXR0cmlidXRlcyhhdHRyaWJ1dGVzOiBBdHRyaWJ1dGVbXSkge1xuXHRcdHRoaXMuYXR0cmlidXRlcyQgPSB0aGlzLmF0dHJpYnV0ZXMkLnBpcGUobWFwKChkYXRhOiBBdHRyaWJ1dGVbXSkgPT4ge1xuXHRcdFx0cmV0dXJuIFsuLi5kYXRhLCAuLi5hdHRyaWJ1dGVzXVxuXHRcdH0pKVxuXHR9XG5cblx0cHVibGljIGlzQXV0aGVudGljYXRlZCgpIHtcblx0XHRyZXR1cm4gdGhpcy5fYXV0aFNlcnZpY2UuaXNBdXRoZW50aWNhdGVkKCk7XG5cdH1cblxuXHRwdWJsaWMgbG9nb3V0KCkge1xuXHRcdHRoaXMuX2F1dGhTZXJ2aWNlLmxvZ291dCgpO1xuXHRcdHRoaXMuX3RvYXN0U2VydmljZS5zaG93KCdsb2dvdXQtc3VjY2VzcycpO1xuXHRcdHdpbmRvdy5sb2NhdGlvbi5ocmVmID0gJy9ob21lJzsgLy8gUmVkaXJpZ2UgYSBsYSBww6FnaW5hIGRlIGluaWNpbyBkZXNwdcOpcyBkZWwgbG9nb3V0XG5cdH1cblxuXHQvKipcblx0ICogQcOxYWRlIHZhcmlvcyBoaWpvcyBhIHVuYSBzZWNjacOzbiBwb3IgY29kZS5cblx0ICogQHBhcmFtIHNlY3Rpb25Db2RlIEPDs2RpZ28gZGUgbGEgc2VjY2nDs25cblx0ICogQHBhcmFtIGNoaWxkcmVuIEFycmF5IGRlIGhpam9zIGEgYWdyZWdhclxuXHQgKiBAcGFyYW0gc3RhY2tQbGFjZSAnc3RhcnQnIHwgJ2VuZCcgKHBvciBkZWZlY3RvICdlbmQnKVxuXHQgKi9cblx0cHVibGljIGFkZFNlY3Rpb25DaGlsZHJlbihzZWN0aW9uQ29kZTogc3RyaW5nLCBjaGlsZHJlbjogYW55W10sIHN0YWNrUGxhY2U6ICdzdGFydCcgfCAnZW5kJyA9ICdlbmQnKSB7XG5cdFx0dGhpcy5zZWN0aW9ucyQgPSB0aGlzLnNlY3Rpb25zJC5waXBlKFxuXHRcdFx0bWFwKChzZWN0aW9uczogU2VjdGlvbltdKSA9PiB7XG5cdFx0XHRcdHJldHVybiBzZWN0aW9ucy5tYXAoc2VjdGlvbiA9PiB7XG5cdFx0XHRcdFx0aWYgKHNlY3Rpb24uY29kZT8udG9Mb3dlckNhc2UoKSA9PT0gc2VjdGlvbkNvZGUudG9Mb3dlckNhc2UoKSkge1xuXHRcdFx0XHRcdFx0aWYgKCFzZWN0aW9uLmNoaWxkcmVuKSBzZWN0aW9uLmNoaWxkcmVuID0gW107XG5cdFx0XHRcdFx0XHRpZiAoc3RhY2tQbGFjZSA9PT0gJ3N0YXJ0Jykge1xuXHRcdFx0XHRcdFx0XHRzZWN0aW9uLmNoaWxkcmVuID0gWy4uLmNoaWxkcmVuLCAuLi5zZWN0aW9uLmNoaWxkcmVuXTtcblx0XHRcdFx0XHRcdH0gZWxzZSB7XG5cdFx0XHRcdFx0XHRcdHNlY3Rpb24uY2hpbGRyZW4gPSBbLi4uc2VjdGlvbi5jaGlsZHJlbiwgLi4uY2hpbGRyZW5dO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHRyZXR1cm4gc2VjdGlvbjtcblx0XHRcdFx0fSk7XG5cdFx0XHR9KVxuXHRcdCk7XG5cdH1cblx0LyoqXG4gICAqIFZlcmlmaWNhIHNpIHVuYSBjYXRlZ29yw61hIHRpZW5lIGxhIHByb3BpZWRhZCBpc1Zpc2libGUgeSBlc3TDoSBtYXJjYWRhIGNvbW8gdmlzaWJsZVxuICAgKiBAcGFyYW0gY2F0ZWdvcnkgLSBMYSBjYXRlZ29yw61hIGEgdmVyaWZpY2FyXG4gICAqIEByZXR1cm5zIHRydWUgc2kgbGEgY2F0ZWdvcsOtYSBlcyB2aXNpYmxlLCBmYWxzZSBlbiBjYXNvIGNvbnRyYXJpb1xuICAgKi9cblx0aGFzVmlzaWJsZVByb3BlcnR5KGNhdGVnb3J5OiBDYXRlZ29yeSk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiAoY2F0ZWdvcnkgYXMgYW55KS5pc1Zpc2libGUgPT09IHRydWU7XG5cdH1cbn0iXX0=
|
|
148
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS1lYy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1lYXN5Y29tbWVyY2UtdjE4L3NyYy9saWIvZWMtY29tcG9uZW50cy9hYnN0cmFjdGlvbnMtY29tcG9uZW50cy9tZW51LWVjLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWdDLFNBQVMsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDaEYsT0FBTyxFQUFFLFdBQVcsRUFBRSxjQUFjLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNuRixPQUFPLEVBQUUsR0FBRyxFQUFjLE1BQU0sTUFBTSxDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRXZELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQzs7QUFNL0Q7Ozs7R0FJRztBQU9ILE1BQU0sT0FBTyxlQUFlO0lBQ25CLGNBQWMsR0FBRyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUE7SUFDdkMsaUJBQWlCLEdBQUcsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUE7SUFDN0MsWUFBWSxHQUFnQixNQUFNLENBQUMsV0FBVyxDQUFDLENBQUE7SUFDL0MsYUFBYSxHQUFpQixNQUFNLENBQUMsWUFBWSxDQUFDLENBQUE7SUFDMUQ7O09BRUc7SUFDSyxNQUFNLEdBQUcsTUFBTSxDQUFDLG9CQUFvQixDQUFDLENBQUE7SUFFN0M7O09BRUc7SUFDSSxXQUFXLEdBQTJCLElBQUksQ0FBQyxjQUFjLENBQUMsYUFBYSxFQUFFLENBQUE7SUFDaEY7O09BRUc7SUFDSSxTQUFTLEdBQTBCLElBQUksQ0FBQyxjQUFjLENBQUMsV0FBVyxFQUFFLENBQUE7SUFDM0U7O09BRUc7SUFDSSxXQUFXLEdBQTRCLElBQUksQ0FBQyxjQUFjLENBQUMsYUFBYSxFQUFFLENB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QUMvQyxDQUFDO0lBRU0sa0JBQWtCLENBQW9ELElBQVE7UUFDcEYsT0FBTyxJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQztJQUNqRCxDQUFDO3dHQS9JVyxlQUFlOzRGQUFmLGVBQWUseUVBRmpCLHlDQUF5Qzs7NEZBRXZDLGVBQWU7a0JBTjNCLFNBQVM7bUJBQUM7b0JBQ1YsUUFBUSxFQUFFLGVBQWU7b0JBQ3pCLFVBQVUsRUFBRSxJQUFJO29CQUNoQixPQUFPLEVBQUUsRUFBRTtvQkFDWCxRQUFRLEVBQUUseUNBQXlDO2lCQUNuRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGFmdGVyTmV4dFJlbmRlciwgYWZ0ZXJSZW5kZXIsIENvbXBvbmVudCwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBdXRoU2VydmljZSwgT3B0aW9uc1NlcnZpY2UsIFBhcmFtZXRlcnNTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vZWMtc2VydmljZXMnO1xuaW1wb3J0IHsgbWFwLCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBDb3JlQ29uc3RhbnRzU2VydmljZSB9IGZyb20gJy4uLy4uL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBBdHRyaWJ1dGUsIENhdGVnb3J5LCBQYXJhbWV0ZXIsIFNlY3Rpb24gfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzJztcbmltcG9ydCB7IFRvYXN0U2VydmljZSB9IGZyb20gJy4uLy4uL2VjLXNlcnZpY2VzL3RvYXN0LnNlcnZpY2UnO1xuLyoqXG4gKiBQYXJhIGRpZmVyZW5jaWFyIGxvcyB0aXBvcyBkZSBNZW51XG4gKi9cbnR5cGUgTWVudVR5cGUgPSBcImNhdGVnb3J5XCIgfCBcImF0dHJpYnV0ZVwiIHwgXCJzZWN0aW9uXCJcbnR5cGUgVHJlZU5vZGU8VD4gPSBUICYgeyBpc1Zpc2libGU/OiBib29sZWFuOyBjaGlsZHJlbj86IFRbXSB9O1xuLyoqXG4gKiBDb21wb25lbnRlIHF1ZSBzaXJ2ZSBwYXJhIGFic3RyYWVyIGxhIGZ1bmNpb25hbGlkYWQgcXVlIGNvbXBhcnRlbiBcbiAqIGVsIG1lbsO6IHkgZWwgZm9vdGVyLlxuICogQGNsYXNzIE1lbnVFY0NvbXBvbmVudFxuICovXG5AQ29tcG9uZW50KHtcblx0c2VsZWN0b3I6ICdsaWItZm9vdGVyLWVjJyxcblx0c3RhbmRhbG9uZTogdHJ1ZSxcblx0aW1wb3J0czogW10sXG5cdHRlbXBsYXRlOiAnPHA+TWVudSBhbmQgRm9vdGVyIEhlbHBlciBDb21wb25lbnQ8L3A+J1xufSlcbmV4cG9ydCBjbGFzcyBNZW51RWNDb21wb25lbnQge1xuXHRwcml2YXRlIG9wdGlvbnNTZXJ2aWNlID0gaW5qZWN0KE9wdGlvbnNTZXJ2aWNlKVxuXHRwcml2YXRlIHBhcmFtZXRlcnNTZXJ2aWNlID0gaW5qZWN0KFBhcmFtZXRlcnNTZXJ2aWNlKVxuXHRwcml2YXRlIF9hdXRoU2VydmljZTogQXV0aFNlcnZpY2UgPSBpbmplY3QoQXV0aFNlcnZpY2UpXG5cdHByaXZhdGUgX3RvYXN0U2VydmljZTogVG9hc3RTZXJ2aWNlID0gaW5qZWN0KFRvYXN0U2VydmljZSlcblx0LyoqXG5cdCAqIENvbnN0YW50ZXMgZGVsIGNvcmUuXG5cdCAqL1xuXHRwcml2YXRlIGNvbnN0cyA9IGluamVjdChDb3JlQ29uc3RhbnRzU2VydmljZSlcblxuXHQvKipcblx0ICogT2JzZXJ2YWJsZSBkZSBjYXRlZ29yaWFzXG5cdCAqL1xuXHRwdWJsaWMgY2F0ZWdvcmllcyQ6IE9ic2VydmFibGU8Q2F0ZWdvcnlbXT4gPSB0aGlzLm9wdGlvbnNTZXJ2aWNlLmdldENhdGVnb3JpZXMoKVxuXHQvKipcblx0ICogT2JzZXJ2YWJsZSBkZSBzZWNjaW9uZXNcblx0ICovXG5cdHB1YmxpYyBzZWN0aW9ucyQ6IE9ic2VydmFibGU8U2VjdGlvbltdPiA9IHRoaXMub3B0aW9uc1NlcnZpY2UuZ2V0U2VjdGlvbnMoKVxuXHQvKipcblx0ICogT2JzZXJ2YWJsZSBkZSBhdHJpYnV0b3Ncblx0ICovXG5cdHB1YmxpYyBhdHRyaWJ1dGVzJDogT2JzZXJ2YWJsZTxBdHRyaWJ1dGVbXT4gPSB0aGlzLm9wdGlvbnNTZXJ2aWNlLmdldEF0dHJpYnV0ZXMoKVxuXHQvKipcblx0ICogT2JzZXJ2YWJsZSBkZSBwYXJhbWV0cm9zXG5cdCAqL1xuXHRwdWJsaWMgcGFyYW1ldGVycyQ6IE9ic2VydmFibGU8UGFyYW1ldGVyW10gfCBudWxsPiA9IHRoaXMucGFyYW1ldGVyc1NlcnZpY2UuZ2V0UGFyYW1ldGVycygpXG5cdC8qKlxuXHQgKiBVcmwgcGFyYSBsYXMgaW1hZ2VuZXMgZ3VhcmRhZGVzIGVuIGVsIGJhY2tlbmQuXG5cdCAqL1xuXHRwdWJsaWMgbWVkaWFVcmwgPSB0aGlzLmNvbnN0cy5tZWRpYVVybCgpXG5cdC8qKlxuXHQgKiBGdW5jaW9uIHBhcmEgc2FiZXIgc2kgZXhpc3RlbiB1biBwYXJhbWV0cm8uIFxuXHQgKi9cblx0cHVibGljIGhhc1BhcmFtcyA9IHRoaXMucGFyYW1ldGVyc1NlcnZpY2UuaGFzUGFyYW1zXG5cblx0Y29uc3RydWN0b3IoKSB7IH1cblxuXHRwcm90ZWN0ZWQgYWRkQ2hpbGRyZW4gPSAobWVudVR5cGU6IE1lbnVUeXBlLCBjb2RlOiBzdHJpbmcsIGl0ZW06IGFueSwgc3RhY2tQbGFjZSA9ICdlbmQnKTogdm9pZCA9PiB7XG5cblx0fVxuXG5cdC8qIHByb3RlY3RlZCBhZGRDaGlsZHJlbiA9IChtZW51SXRlbXM6IGFueVtdLCBjb2RlOiBzdHJpbmcsIGl0ZW06IGFueSwgc3RhY2tQbGFjZSA9ICdlbmQnKSA9PiB7XG5cdCAgKHN0YWNrUGxhY2UgPT09ICdzdGFydCcpXG5cdFx0PyBtZW51SXRlbXMuZmluZChpdGVtID0+IGl0ZW0uY29kZT8udG9Mb3dlckNhc2UoKS5pbmNsdWRlcyhjb2RlKSk/LmNoaWxkcmVuLnVuc2hpZnQoaXRlbSlcblx0XHQ6IG1lbnVJdGVtcy5maW5kKGl0ZW0gPT4gaXRlbS5jb2RlPy50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKGNvZGUpKT8uY2hpbGRyZW4ucHVzaChpdGVtKVxuICAgIFxuXHR9ICovXG5cdC8qKlxuXHQgKiBBY3R1YWxpemEgbGFzIGNhdGVnb3JpYXMgYWdyZWdhbmRvIG51ZXZhcy5cblx0ICogQHBhcmFtIGNhdGVnb3JpZXMgXG5cdCAqL1xuXHRwcm90ZWN0ZWQgdXBkYXRlQ2F0ZWdvcmllcyhjYXRlZ29yaWVzOiBDYXRlZ29yeVtdKSB7XG5cdFx0dGhpcy5jYXRlZ29yaWVzJCA9IHRoaXMuY2F0ZWdvcmllcyQucGlwZShtYXAoKGRhdGE6IENhdGVnb3J5W10pID0+IHtcblx0XHRcdHJldHVybiBbLi4uZGF0YSwgLi4uY2F0ZWdvcmllc11cblx0XHR9KSlcblx0fVxuXHQvKipcblx0ICogQWN0dWFsaXphIGxhcyBzZWNjaW9uZXMgYWdyZWdhbmRvIG51ZXZhcy5cblx0ICogQHBhcmFtIHNlY3Rpb25zIFxuXHQgKi9cblx0cHJvdGVjdGVkIHVwZGF0ZVNlY3Rpb25zKHNlY3Rpb25zOiBTZWN0aW9uW10pIHtcblx0XHR0aGlzLnNlY3Rpb25zJCA9IHRoaXMuc2VjdGlvbnMkLnBpcGUobWFwKChkYXRhOiBTZWN0aW9uW10pID0+IHtcblx0XHRcdHJldHVybiBbLi4uZGF0YSwgLi4uc2VjdGlvbnNdXG5cdFx0fSkpXG5cdH1cblx0LyoqXG5cdCAqIEFjdHVhbGl6YSBlbCBtZW7DuiBkZSBhdHJpYnV0b3MgYWdyZWRhbmRvIG51ZXZvcy5cblx0ICogQHBhcmFtIGF0dHJpYnV0ZXMgXG5cdCAqL1xuXHRwcm90ZWN0ZWQgdXBkYXRlQXR0cmlidXRlcyhhdHRyaWJ1dGVzOiBBdHRyaWJ1dGVbXSkge1xuXHRcdHRoaXMuYXR0cmlidXRlcyQgPSB0aGlzLmF0dHJpYnV0ZXMkLnBpcGUobWFwKChkYXRhOiBBdHRyaWJ1dGVbXSkgPT4ge1xuXHRcdFx0cmV0dXJuIFsuLi5kYXRhLCAuLi5hdHRyaWJ1dGVzXVxuXHRcdH0pKVxuXHR9XG5cblx0cHVibGljIGlzQXV0aGVudGljYXRlZCgpIHtcblx0XHRyZXR1cm4gdGhpcy5fYXV0aFNlcnZpY2UuaXNBdXRoZW50aWNhdGVkKCk7XG5cdH1cblxuXHRwdWJsaWMgbG9nb3V0KCkge1xuXHRcdHRoaXMuX2F1dGhTZXJ2aWNlLmxvZ291dCgpO1xuXHRcdHRoaXMuX3RvYXN0U2VydmljZS5zaG93KCdsb2dvdXQtc3VjY2VzcycpO1xuXHRcdHdpbmRvdy5sb2NhdGlvbi5ocmVmID0gJy9ob21lJzsgLy8gUmVkaXJpZ2UgYSBsYSBww6FnaW5hIGRlIGluaWNpbyBkZXNwdcOpcyBkZWwgbG9nb3V0XG5cdH1cblxuXHQvKipcblx0ICogQcOxYWRlIHZhcmlvcyBoaWpvcyBhIHVuYSBzZWNjacOzbiBwb3IgY29kZS5cblx0ICogQHBhcmFtIHNlY3Rpb25Db2RlIEPDs2RpZ28gZGUgbGEgc2VjY2nDs25cblx0ICogQHBhcmFtIGNoaWxkcmVuIEFycmF5IGRlIGhpam9zIGEgYWdyZWdhclxuXHQgKiBAcGFyYW0gc3RhY2tQbGFjZSAnc3RhcnQnIHwgJ2VuZCcgKHBvciBkZWZlY3RvICdlbmQnKVxuXHQgKi9cblx0cHVibGljIGFkZFNlY3Rpb25DaGlsZHJlbihzZWN0aW9uQ29kZTogc3RyaW5nLCBjaGlsZHJlbjogYW55W10sIHN0YWNrUGxhY2U6ICdzdGFydCcgfCAnZW5kJyA9ICdlbmQnKSB7XG5cdFx0dGhpcy5zZWN0aW9ucyQgPSB0aGlzLnNlY3Rpb25zJC5waXBlKFxuXHRcdFx0bWFwKChzZWN0aW9uczogU2VjdGlvbltdKSA9PiB7XG5cdFx0XHRcdHJldHVybiBzZWN0aW9ucy5tYXAoc2VjdGlvbiA9PiB7XG5cdFx0XHRcdFx0aWYgKHNlY3Rpb24uY29kZT8udG9Mb3dlckNhc2UoKSA9PT0gc2VjdGlvbkNvZGUudG9Mb3dlckNhc2UoKSkge1xuXHRcdFx0XHRcdFx0aWYgKCFzZWN0aW9uLmNoaWxkcmVuKSBzZWN0aW9uLmNoaWxkcmVuID0gW107XG5cdFx0XHRcdFx0XHRpZiAoc3RhY2tQbGFjZSA9PT0gJ3N0YXJ0Jykge1xuXHRcdFx0XHRcdFx0XHRzZWN0aW9uLmNoaWxkcmVuID0gWy4uLmNoaWxkcmVuLCAuLi5zZWN0aW9uLmNoaWxkcmVuXTtcblx0XHRcdFx0XHRcdH0gZWxzZSB7XG5cdFx0XHRcdFx0XHRcdHNlY3Rpb24uY2hpbGRyZW4gPSBbLi4uc2VjdGlvbi5jaGlsZHJlbiwgLi4uY2hpbGRyZW5dO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHRyZXR1cm4gc2VjdGlvbjtcblx0XHRcdFx0fSk7XG5cdFx0XHR9KVxuXHRcdCk7XG5cdH1cblx0LyoqXG4gICAqIFZlcmlmaWNhIHNpIHVuYSBjYXRlZ29yw61hIHRpZW5lIGxhIHByb3BpZWRhZCBpc1Zpc2libGUgeSBlc3TDoSBtYXJjYWRhIGNvbW8gdmlzaWJsZVxuICAgKiBAcGFyYW0gY2F0ZWdvcnkgLSBMYSBjYXRlZ29yw61hIGEgdmVyaWZpY2FyXG4gICAqIEByZXR1cm5zIHRydWUgc2kgbGEgY2F0ZWdvcsOtYSBlcyB2aXNpYmxlLCBmYWxzZSBlbiBjYXNvIGNvbnRyYXJpb1xuICAgKi9cblx0aGFzVmlzaWJsZVByb3BlcnR5KGNhdGVnb3J5OiBDYXRlZ29yeSk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiAoY2F0ZWdvcnkgYXMgYW55KS5pc1Zpc2libGUgPT09IHRydWU7XG5cdH1cblxuXHRwcml2YXRlIGZpbHRlclZpc2libGVUcmVlPFQgZXh0ZW5kcyB7IGlzVmlzaWJsZT86IGJvb2xlYW47IGNoaWxkcmVuPzogVFtdIH0+KGxpc3Q/OiBUW10pOiBUW10ge1xuXHRcdHJldHVybiAobGlzdCA/PyBbXSlcblx0XHRcdC5maWx0ZXIoKG4pOiBuIGlzIFQgPT4gbj8uaXNWaXNpYmxlID09PSB0cnVlKVxuXHRcdFx0Lm1hcChuID0+ICh7IC4uLm4sIGNoaWxkcmVuOiB0aGlzLmZpbHRlclZpc2libGVUcmVlKG4uY2hpbGRyZW4pIH0gYXMgVCkpO1xuXHR9XG5cblx0Ly8gRXhwb27DqSBzdHJlYW1zIHlhIGZpbHRyYWRvc1xuXHRwdWJsaWMgY2F0ZWdvcmllc1Zpc2libGUkOiBPYnNlcnZhYmxlPENhdGVnb3J5W10+ID0gdGhpcy5jYXRlZ29yaWVzJC5waXBlKFxuXHRcdG1hcCgobGlzdDogQ2F0ZWdvcnlbXSkgPT4gdGhpcy5maWx0ZXJWaXNpYmxlVHJlZTxDYXRlZ29yeT4obGlzdCkpXG5cdCk7XG5cblx0cHVibGljIHNlY3Rpb25zVmlzaWJsZSQ6IE9ic2VydmFibGU8U2VjdGlvbltdPiA9IHRoaXMuc2VjdGlvbnMkLnBpcGUoXG5cdFx0bWFwKChsaXN0OiBTZWN0aW9uW10pID0+IHRoaXMuZmlsdGVyVmlzaWJsZVRyZWU8U2VjdGlvbj4obGlzdCkpXG5cdCk7XG5cblx0cHVibGljIGF0dHJpYnV0ZXNWaXNpYmxlJDogT2JzZXJ2YWJsZTxBdHRyaWJ1dGVbXT4gPSB0aGlzLmF0dHJpYnV0ZXMkLnBpcGUoXG5cdFx0bWFwKChsaXN0OiBBdHRyaWJ1dGVbXSkgPT4gdGhpcy5maWx0ZXJWaXNpYmxlVHJlZTxBdHRyaWJ1dGU+KGxpc3QpKVxuXHQpO1xuXG5cdC8vIEhlbHBlcnMgZGUgY29udmVuaWVuY2lhIG9wY2lvbmFsZXNcblx0cHVibGljIGdldFZpc2libGVDaGlsZHJlbjxUIGV4dGVuZHMgeyBpc1Zpc2libGU/OiBib29sZWFuOyBjaGlsZHJlbj86IFRbXSB9Pihub2RlPzogVCk6IFRbXSB7XG5cdFx0cmV0dXJuIHRoaXMuZmlsdGVyVmlzaWJsZVRyZWUobm9kZT8uY2hpbGRyZW4pO1xuXHR9XG5cblx0cHVibGljIGhhc1Zpc2libGVDaGlsZHJlbjxUIGV4dGVuZHMgeyBpc1Zpc2libGU/OiBib29sZWFuOyBjaGlsZHJlbj86IFRbXSB9Pihub2RlPzogVCk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiB0aGlzLmdldFZpc2libGVDaGlsZHJlbihub2RlKS5sZW5ndGggPiAwO1xuXHR9XG59Il19
|
package/esm2022/lib/ec-components/blocks-ec/block-products-ec/block-products-ec.component.mjs
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Component, CUSTOM_ELEMENTS_SCHEMA, inject, Input, PLATFORM_ID, signal } from '@angular/core';
|
|
2
2
|
import { BlockEcComponent } from '../../abstractions-components';
|
|
3
3
|
import { AnalyticsService } from '../../../ec-services';
|
|
4
|
-
import { CommonModule } from '@angular/common';
|
|
4
|
+
import { CommonModule, isPlatformBrowser } from '@angular/common';
|
|
5
5
|
// import function to register Swiper custom elements
|
|
6
6
|
import { register } from 'swiper/element/bundle';
|
|
7
7
|
import { ProductEcComponent } from "../../product-ec/product-ec.component";
|
|
@@ -66,7 +66,7 @@ export class BlockProductsEcComponent extends BlockEcComponent {
|
|
|
66
66
|
* Permite personalización de las imágenes de las flechas mediante @Input.
|
|
67
67
|
*/
|
|
68
68
|
setupSwiperNavigation() {
|
|
69
|
-
if (this.meta?.styles?.carrousel !== false) {
|
|
69
|
+
if (this.meta?.styles?.carrousel !== false && isPlatformBrowser(this.platformId)) {
|
|
70
70
|
// Usar setTimeout para asegurar que el swiper esté inicializado
|
|
71
71
|
setTimeout(() => {
|
|
72
72
|
this.initializeSwiperWithCustomNavigation();
|
|
@@ -78,6 +78,8 @@ export class BlockProductsEcComponent extends BlockEcComponent {
|
|
|
78
78
|
* Esta función puede ser movida al componente base para reutilización.
|
|
79
79
|
*/
|
|
80
80
|
initializeSwiperWithCustomNavigation() {
|
|
81
|
+
if (!isPlatformBrowser(this.platformId))
|
|
82
|
+
return;
|
|
81
83
|
const prevButton = document.getElementById(`${this.meta?.code}-prev`);
|
|
82
84
|
const nextButton = document.getElementById(`${this.meta?.code}-next`);
|
|
83
85
|
const swiperElement = document.getElementById(this.meta?.code);
|
|
@@ -216,4 +218,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
216
218
|
required: true
|
|
217
219
|
}]
|
|
218
220
|
}] } });
|
|
219
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmxvY2stcHJvZHVjdHMtZWMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctZWFzeWNvbW1lcmNlLXYxOC9zcmMvbGliL2VjLWNvbXBvbmVudHMvYmxvY2tzLWVjL2Jsb2NrLXByb2R1Y3RzLWVjL2Jsb2NrLXByb2R1Y3RzLWVjLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLWVhc3ljb21tZXJjZS12MTgvc3JjL2xpYi9lYy1jb21wb25lbnRzL2Jsb2Nrcy1lYy9ibG9jay1wcm9kdWN0cy1lYy9ibG9jay1wcm9kdWN0cy1lYy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWtDLFNBQVMsRUFBRSxzQkFBc0IsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQWUsTUFBTSxlQUFlLENBQUM7QUFDbkosT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFFakUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDeEQsT0FBTyxFQUFFLFlBQVksRUFBcUIsTUFBTSxpQkFBaUIsQ0FBQztBQUNsRSxxREFBcUQ7QUFDckQsT0FBTyxFQUFFLFFBQVEsRUFBbUIsTUFBTSx1QkFBdUIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQzs7O0FBRTNFLFFBQVEsRUFBRSxDQUFBO0FBQ1Y7Ozs7R0FJRztBQVNILE1BQU0sT0FBTyx3QkFBeUIsU0FBUSxnQkFBZ0I7SUFDNUQsK0NBQStDO0lBQ2hELHlFQUF5RTtJQUNoRSxjQUFjLENBQVUsQ0FBQyxtQ0FBbUM7SUFDNUQsY0FBYyxDQUFVLENBQUMsbUNBQW1DO0lBQzVELGFBQWEsR0FBVyxHQUFHLENBQUM7SUFDNUIsYUFBYSxHQUFXLEdBQUcs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QUFsQixLQUFLO2dCQU1ILFFBQVE7c0JBRlYsS0FBSzt1QkFBQzt3QkFDTixRQUFRLEVBQUUsSUFBSTtxQkFDZDtnQkFNRSxJQUFJO3NCQUZOLEtBQUs7dUJBQUM7d0JBQ04sUUFBUSxFQUFFLElBQUk7cUJBQ2QiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBhZnRlck5leHRSZW5kZXIsIEFmdGVyVmlld0luaXQsIENvbXBvbmVudCwgQ1VTVE9NX0VMRU1FTlRTX1NDSEVNQSwgaW5qZWN0LCBJbnB1dCwgUExBVEZPUk1fSUQsIHNpZ25hbCwgVGVtcGxhdGVSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJsb2NrRWNDb21wb25lbnQgfSBmcm9tICcuLi8uLi9hYnN0cmFjdGlvbnMtY29tcG9uZW50cyc7XG5pbXBvcnQgeyBTd2lwZXJPcHRpb25zIH0gZnJvbSAnc3dpcGVyL3R5cGVzJztcbmltcG9ydCB7IEFuYWx5dGljc1NlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9lYy1zZXJ2aWNlcyc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUsIGlzUGxhdGZvcm1Ccm93c2VyIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbi8vIGltcG9ydCBmdW5jdGlvbiB0byByZWdpc3RlciBTd2lwZXIgY3VzdG9tIGVsZW1lbnRzXG5pbXBvcnQgeyByZWdpc3RlciwgU3dpcGVyQ29udGFpbmVyIH0gZnJvbSAnc3dpcGVyL2VsZW1lbnQvYnVuZGxlJztcbmltcG9ydCB7IFByb2R1Y3RFY0NvbXBvbmVudCB9IGZyb20gXCIuLi8uLi9wcm9kdWN0LWVjL3Byb2R1Y3QtZWMuY29tcG9uZW50XCI7XG5cbnJlZ2lzdGVyKClcbi8qKlxuICogQ29tcG9uZW4gcGFyYSBtYW5lamFyIGxvcyBibG9xdWVzIGRlIHByb2R1Y3Rvcy5cbiAqIEBleHRlbmRzIHtCbG9ja0VjQ29tcG9uZW50fVxuICogQGNsYXNzIEJsb2NrUHJvZHVjdHNFY0NvbXBvbmVudFxuICovXG5AQ29tcG9uZW50KHtcblx0c2VsZWN0b3I6ICdhcHAtYmxvY2stcHJvZHVjdHMtZWMnLFxuXHRzdGFuZGFsb25lOiB0cnVlLFxuXHRpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBQcm9kdWN0RWNDb21wb25lbnRdLFxuXHR0ZW1wbGF0ZVVybDogJy4vYmxvY2stcHJvZHVjdHMtZWMuY29tcG9uZW50Lmh0bWwnLFxuXHRzdHlsZVVybDogJy4vYmxvY2stcHJvZHVjdHMtZWMuY29tcG9uZW50LnNjc3MnLFxuXHRzY2hlbWFzOiBbQ1VTVE9NX0VMRU1FTlRTX1NDSEVNQV1cbn0pXG5leHBvcnQgY2xhc3MgQmxvY2tQcm9kdWN0c0VjQ29tcG9uZW50IGV4dGVuZHMgQmxvY2tFY0NvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQge1xuXHRcdC8vIFBlcnNvbmFsaXphY2nDs24gZGUgbGFzIGZsZWNoYXMgZGUgbmF2ZWdhY2nDs25cblx0Ly8gUG9yIGRlZmVjdG8gdXNhIHPDrW1ib2xvcyBkZSB0ZXh0bywgcGVybyBzZSBwdWVkZW4gZXNwZWNpZmljYXIgaW3DoWdlbmVzXG5cdEBJbnB1dCgpIHByZXZBcnJvd0ltYWdlPzogc3RyaW5nOyAvLyB1bmRlZmluZWQgPSB1c2Egc8OtbWJvbG8gZGUgdGV4dG9cblx0QElucHV0KCkgbmV4dEFycm93SW1hZ2U/OiBzdHJpbmc7IC8vIHVuZGVmaW5lZCA9IHVzYSBzw61tYm9sbyBkZSB0ZXh0b1xuXHRASW5wdXQoKSBwcmV2QXJyb3dUZXh0OiBzdHJpbmcgPSAnPCc7XG5cdEBJbnB1dCgpIG5leHRBcnJvd1RleHQ6IHN0cmluZyA9ICc+Jztcblx0LyoqXG5cdCAqIFNlcnZpY2lvIGRlIEFuYWx5dGljc1xuXHQgKi9cblx0cHJpdmF0ZSBhbmFseXRpY3NTZXJ2aWNlOiBBbmFseXRpY3NTZXJ2aWNlID0gaW5qZWN0KEFuYWx5dGljc1NlcnZpY2UpXG5cdC8qKlxuXHQgKiBTaWduYWwgdXRsaXphZG8gcGFyYSBndWFyZGEgZWwgY29udGVuZWRvciBkZWwgY2FycnVzZWxcblx0ICovXG5cdHN3aXBlckVsZW1lbnQgPSBzaWduYWw8U3dpcGVyQ29udGFpbmVyIHwgbnVsbD4obnVsbClcblx0LyoqXG5cdCAqIElucHV0IHF1ZSByZWNpYmUgdW4gdGVtcGxhdGUgcGFyYSBlbCBwcm9kdWN0by5cblx0ICovXG5cdEBJbnB1dCgpIGFwcFByb2R1Y3Q6IFRlbXBsYXRlUmVmPGFueT4gfCB1bmRlZmluZWQ7XG5cdC8qKlxuXHQgKiBDb2xlY2Npw7NuIGRlIHByb2R1Y3Rvcy5cblx0ICovXG5cdEBJbnB1dCh7XG5cdFx0cmVxdWlyZWQ6IHRydWVcblx0fSkgcHJvZHVjdHM6IGFueTsgLy8gUHJvZHVjdFtdO1xuXHQvKipcblx0ICogQmxvcXVlIHByaW5jaXBhbCBxdWUgY29udGllbmUgbG9zIHByb2R1Y3Rvc1xuXHQgKi9cblx0QElucHV0KHtcblx0XHRyZXF1aXJlZDogdHJ1ZVxuXHR9KSBtZXRhOiBhbnk7XG5cblx0bmdBZnRlclZpZXdJbml0KCkge1xuXHRcdHRoaXMuc2V0dXBTd2lwZXJOYXZpZ2F0aW9uKCk7XG5cdH1cblx0XG5cdHByaXZhdGUgZG9jdW1lbnQ/OiBEb2N1bWVudDtcblx0cHJpdmF0ZSBwbGF0Zm9ybUlkOiBhbnkgPSBpbmplY3QoUExBVEZPUk1fSUQpXG5cblx0LyoqXG5cdCAqIEVqZWN1dGEgZWwgbcOpdG9kbyBgYWZ0ZXJOZXh0UmVuZGVyYHBhcmEgY2FyZ2FyIGxhcyBjb25maWd1cmFjaW9uZXMgbmVjZXNhcmlhcyBcblx0ICogcGFyYSBlbCBjYXJydXNlbCBkZWwgYmFubmVycy4gRXN0byBkZWJlIHNlciBhc2kgZGViaWRvIGEgcXVlIHlhIGRlYmUgZXN0YXIgcHJlc2VudGVcblx0ICogZW4gZWwgRG9tIGVsIGVsZW1lbnQgYDxzd2lwZXItY29udGFpbmVyPmAgcGFyYSBwb2RlciBjb25maWd1cmFybG8uXG5cdCAqL1xuXHRjb25zdHJ1Y3RvcigpIHtcblx0XHRzdXBlcigpXG5cdH1cblx0LyoqXG5cdCAqIEFwbGljYSBlbCBldmVudG8gYHNlbGVjdF9wcm9tb3Rpb25gIGp1bnRvIGNvbiBlbCBiYW5uZXIgcXVlIGludGVyYWN0dWEuXG5cdCAqIEBwYXJhbSBiYW5uZXIgXG5cdCAqL1xuXHRzZWxlY3RQcm9tb3Rpb24oaXRlbTogYW55KTogdm9pZCB7XG5cdFx0dGhpcy5hbmFseXRpY3NTZXJ2aWNlLmNhbGxFdmVudCgnc2VsZWN0X3Byb21vdGlvbicsIGl0ZW0pXG5cdH1cblxuXHQvKipcblx0ICogQ29uZmlndXJhIGxhIG5hdmVnYWNpw7NuIHBlcnNvbmFsaXphZGEgZGVsIFN3aXBlci5cblx0ICogRXN0YSBmdW5jacOzbiBlc3TDoSBkaXNlw7FhZGEgcGFyYSBzZXIgbW92aWRhIGFsIGNvbXBvbmVudGUgYmFzZSBCbG9ja1Byb2R1Y3RzRWNDb21wb25lbnQuXG5cdCAqIFBlcm1pdGUgcGVyc29uYWxpemFjacOzbiBkZSBsYXMgaW3DoWdlbmVzIGRlIGxhcyBmbGVjaGFzIG1lZGlhbnRlIEBJbnB1dC5cblx0ICovXG5cdHByaXZhdGUgc2V0dXBTd2lwZXJOYXZpZ2F0aW9uKCkge1xuXHRcdGlmICh0aGlzLm1ldGE/LnN0eWxlcz8uY2Fycm91c2VsICE9PSBmYWxzZSkge1xuXHRcdFx0Ly8gVXNhciBzZXRUaW1lb3V0IHBhcmEgYXNlZ3VyYXIgcXVlIGVsIHN3aXBlciBlc3TDqSBpbmljaWFsaXphZG9cblx0XHRcdHNldFRpbWVvdXQoKCkgPT4ge1xuXHRcdFx0XHR0aGlzLmluaXRpYWxpemVTd2lwZXJXaXRoQ3VzdG9tTmF2aWdhdGlvbigpO1xuXHRcdFx0fSwgMjAwKTtcblx0XHR9XG5cdH1cblxuXHQvKipcblx0ICogSW5pY2lhbGl6YSBlbCBTd2lwZXIgY29uIG5hdmVnYWNpw7NuIHBlcnNvbmFsaXphZGEuXG5cdCAqIEVzdGEgZnVuY2nDs24gcHVlZGUgc2VyIG1vdmlkYSBhbCBjb21wb25lbnRlIGJhc2UgcGFyYSByZXV0aWxpemFjacOzbi5cblx0ICovXG5cdHByaXZhdGUgaW5pdGlhbGl6ZVN3aXBlcldpdGhDdXN0b21OYXZpZ2F0aW9uKCkge1xuXHRcdGNvbnN0IHByZXZCdXR0b24gPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChgJHt0aGlzLm1ldGE/LmNvZGV9LXByZXZgKTtcblx0XHRjb25zdCBuZXh0QnV0dG9uID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoYCR7dGhpcy5tZXRhPy5jb2RlfS1uZXh0YCk7XG5cdFx0Y29uc3Qgc3dpcGVyRWxlbWVudCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHRoaXMubWV0YT8uY29kZSkgYXMgYW55O1xuXG5cdFx0aWYgKHByZXZCdXR0b24gJiYgbmV4dEJ1dHRvbiAmJiBzd2lwZXJFbGVtZW50KSB7XG5cdFx0XHQvLyBjb25zb2xlLmxvZygnQ29uZmlndXJhbmRvIG5hdmVnYWNpw7NuIHBlcnNvbmFsaXphZGEgcGFyYTonLCB0aGlzLm1ldGE/LmNvZGUpO1xuXHRcdFx0XG5cdFx0XHRjb25zdCBzd2lwZXJDb25maWcgPSB0aGlzLmdldFN3aXBlckNvbmZpZ3VyYXRpb24oKTtcblxuXHRcdFx0Ly8gVmVyaWZpY2FyIHNpIGVsIFN3aXBlciB5YSBlc3TDoSBpbmljaWFsaXphZG9cblx0XHRcdGlmICghc3dpcGVyRWxlbWVudC5zd2lwZXIpIHtcblx0XHRcdFx0dGhpcy5pbml0aWFsaXplTmV3U3dpcGVyKHN3aXBlckVsZW1lbnQsIHN3aXBlckNvbmZpZyk7XG5cdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHR0aGlzLnVwZGF0ZUV4aXN0aW5nU3dpcGVyKHN3aXBlckVsZW1lbnQpO1xuXHRcdFx0fVxuXG5cdFx0XHQvLyBDb25maWd1cmFyIGxvcyBldmVudCBsaXN0ZW5lcnMgcGFyYSBsb3MgYm90b25lc1xuXHRcdFx0dGhpcy5zZXR1cE5hdmlnYXRpb25FdmVudExpc3RlbmVycyhwcmV2QnV0dG9uLCBuZXh0QnV0dG9uLCBzd2lwZXJFbGVtZW50KTtcblx0XHRcdFxuXHRcdFx0Ly8gY29uc29sZS5sb2coJ0V2ZW50IGxpc3RlbmVycyBjb25maWd1cmFkb3MgcGFyYSBsb3MgYm90b25lcyBkZSBuYXZlZ2FjacOzbicpO1xuXHRcdH0gZWxzZSB7XG5cdFx0XHQvLyBjb25zb2xlLmxvZygnTm8gc2UgcHVkaWVyb24gZW5jb250cmFyIGxvcyBlbGVtZW50b3M6Jywge1xuXHRcdFx0Ly8gXHRwcmV2QnV0dG9uOiAhIXByZXZCdXR0b24sXG5cdFx0XHQvLyBcdG5leHRCdXR0b246ICEhbmV4dEJ1dHRvbixcblx0XHRcdC8vIFx0c3dpcGVyRWxlbWVudDogISFzd2lwZXJFbGVtZW50XG5cdFx0XHQvLyB9KTtcblx0XHR9XG5cdH1cblxuXHQvKipcblx0ICogT2J0aWVuZSBsYSBjb25maWd1cmFjacOzbiBiYXNlIGRlbCBTd2lwZXIuXG5cdCAqIEVzdGEgY29uZmlndXJhY2nDs24gcHVlZGUgc2VyIHBlcnNvbmFsaXphZGEgZW4gZWwgZnV0dXJvIG1lZGlhbnRlIEBJbnB1dC5cblx0ICovXG5cdHByaXZhdGUgZ2V0U3dpcGVyQ29uZmlndXJhdGlvbigpIHtcblx0XHRyZXR1cm4ge1xuXHRcdFx0c2xpZGVzUGVyVmlldzogJ2F1dG8nLFxuXHRcdFx0c3BhY2VCZXR3ZWVuOiAxNixcblx0XHRcdHNsaWRlc1Blckdyb3VwOiAxLCAvLyBJbXBvcnRhbnRlOiBtb3ZlcnNlIGRlIHVubyBlbiB1bm9cblx0XHRcdG5hdmlnYXRpb246IGZhbHNlLCAvLyBEZXNoYWJpbGl0YW1vcyBsYSBuYXZlZ2FjacOzbiBwb3IgZGVmZWN0b1xuXHRcdFx0cGFnaW5hdGlvbjogZmFsc2UsXG5cdFx0XHRsb29wOiB0cnVlLFxuXHRcdFx0Z3JhYkN1cnNvcjogdHJ1ZSxcblx0XHRcdGF1dG9wbGF5OiB0cnVlLFxuXHRcdFx0YnJlYWtwb2ludHM6IHtcblx0XHRcdFx0MzIwOiB7XG5cdFx0XHRcdFx0c2xpZGVzUGVyVmlldzogMSxcblx0XHRcdFx0XHRzcGFjZUJldHdlZW46IDgsXG5cdFx0XHRcdFx0c2xpZGVzUGVyR3JvdXA6IDFcblx0XHRcdFx0fSxcblx0XHRcdFx0NTc2OiB7XG5cdFx0XHRcdFx0c2xpZGVzUGVyVmlldzogMixcblx0XHRcdFx0XHRzcGFjZUJldHdlZW46IDEyLFxuXHRcdFx0XHRcdHNsaWRlc1Blckdyb3VwOiAxXG5cdFx0XHRcdH0sXG5cdFx0XHRcdDc2ODoge1xuXHRcdFx0XHRcdHNsaWRlc1BlclZpZXc6IDMsXG5cdFx0XHRcdFx0c3BhY2VCZXR3ZWVuOiAxNixcblx0XHRcdFx0XHRzbGlkZXNQZXJHcm91cDogMVxuXHRcdFx0XHR9LFxuXHRcdFx0XHQxMDI0OiB7XG5cdFx0XHRcdFx0c2xpZGVzUGVyVmlldzogNCxcblx0XHRcdFx0XHRzcGFjZUJldHdlZW46IDE2LFxuXHRcdFx0XHRcdHNsaWRlc1Blckdyb3VwOiAxXG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEluaWNpYWxpemEgdW4gbnVldm8gU3dpcGVyIGNvbiBsYSBjb25maWd1cmFjacOzbiBwcm9wb3JjaW9uYWRhLlxuXHQgKi9cblx0cHJpdmF0ZSBpbml0aWFsaXplTmV3U3dpcGVyKHN3aXBlckVsZW1lbnQ6IGFueSwgY29uZmlnOiBhbnkpIHtcblx0XHQvLyBBc2lnbmFyIGNvbmZpZ3VyYWNpw7NuIGFsIGVsZW1lbnRvXG5cdFx0T2JqZWN0LmFzc2lnbihzd2lwZXJFbGVtZW50LCBjb25maWcpO1xuXHRcdFxuXHRcdC8vIEluaWNpYWxpemFyIGVsIFN3aXBlclxuXHRcdHN3aXBlckVsZW1lbnQuaW5pdGlhbGl6ZSgpO1xuXHRcdFxuXHRcdC8vIGNvbnNvbGUubG9nKCdTd2lwZXIgaW5pY2lhbGl6YWRvIGNvbiBjb25maWd1cmFjacOzbiBwZXJzb25hbGl6YWRhJyk7XG5cdH1cblxuXHQvKipcblx0ICogQWN0dWFsaXphIHVuIFN3aXBlciBleGlzdGVudGUgcGFyYSBhc2VndXJhciBsYSBjb25maWd1cmFjacOzbiBjb3JyZWN0YS5cblx0ICovXG5cdHByaXZhdGUgdXBkYXRlRXhpc3RpbmdTd2lwZXIoc3dpcGVyRWxlbWVudDogYW55KSB7XG5cdFx0Ly8gY29uc29sZS5sb2coJ0FjdHVhbGl6YW5kbyBjb25maWd1cmFjacOzbiBkZSBTd2lwZXIgZXhpc3RlbnRlJyk7XG5cdFx0XG5cdFx0Ly8gRm9yemFyIHNsaWRlc1Blckdyb3VwIGEgMVxuXHRcdHN3aXBlckVsZW1lbnQuc3dpcGVyLnBhcmFtcy5zbGlkZXNQZXJHcm91cCA9IDE7XG5cdFx0c3dpcGVyRWxlbWVudC5zd2lwZXIuYWxsb3dTbGlkZU5leHQgPSB0cnVlO1xuXHRcdHN3aXBlckVsZW1lbnQuc3dpcGVyLmFsbG93U2xpZGVQcmV2ID0gdHJ1ZTtcblx0XHRcblx0XHQvLyBBY3R1YWxpemFyIHRhbWJpw6luIGxvcyBicmVha3BvaW50cyBzaSBleGlzdGVuXG5cdFx0aWYgKHN3aXBlckVsZW1lbnQuc3dpcGVyLnBhcmFtcy5icmVha3BvaW50cykge1xuXHRcdFx0T2JqZWN0LmtleXMoc3dpcGVyRWxlbWVudC5zd2lwZXIucGFyYW1zLmJyZWFrcG9pbnRzKS5mb3JFYWNoKGtleSA9PiB7XG5cdFx0XHRcdHN3aXBlckVsZW1lbnQuc3dpcGVyLnBhcmFtcy5icmVha3BvaW50c1trZXldLnNsaWRlc1Blckdyb3VwID0gMTtcblx0XHRcdH0pO1xuXHRcdH1cblx0XHRcblx0XHRzd2lwZXJFbGVtZW50LnN3aXBlci51cGRhdGUoKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBDb25maWd1cmEgbG9zIGV2ZW50IGxpc3RlbmVycyBwYXJhIGxvcyBib3RvbmVzIGRlIG5hdmVnYWNpw7NuLlxuXHQgKi9cblx0cHJpdmF0ZSBzZXR1cE5hdmlnYXRpb25FdmVudExpc3RlbmVycyhwcmV2QnV0dG9uOiBFbGVtZW50LCBuZXh0QnV0dG9uOiBFbGVtZW50LCBzd2lwZXJFbGVtZW50OiBhbnkpIHtcblx0XHRwcmV2QnV0dG9uLmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgKGUpID0+IHtcblx0XHRcdGUucHJldmVudERlZmF1bHQoKTtcblx0XHRcdGUuc3RvcFByb3BhZ2F0aW9uKCk7XG5cdFx0XHQvLyBjb25zb2xlLmxvZygnQ2xpY2sgZW4gYm90w7NuIGFudGVyaW9yJyk7XG5cdFx0XHRpZiAoc3dpcGVyRWxlbWVudC5zd2lwZXIpIHtcblx0XHRcdFx0c3dpcGVyRWxlbWVudC5zd2lwZXIuc2xpZGVQcmV2KCk7XG5cdFx0XHR9XG5cdFx0fSk7XG5cblx0XHRuZXh0QnV0dG9uLmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgKGUpID0+IHtcblx0XHRcdGUucHJldmVudERlZmF1bHQoKTtcblx0XHRcdGUuc3RvcFByb3BhZ2F0aW9uKCk7XG5cdFx0XHQvLyBjb25zb2xlLmxvZygnQ2xpY2sgZW4gYm90w7NuIHNpZ3VpZW50ZScpO1xuXHRcdFx0aWYgKHN3aXBlckVsZW1lbnQuc3dpcGVyKSB7XG5cdFx0XHRcdHN3aXBlckVsZW1lbnQuc3dpcGVyLnNsaWRlTmV4dCgpO1xuXHRcdFx0fVxuXHRcdH0pO1xuXHR9XG59XG4iLCI8c2VjdGlvbiBbbmdDbGFzc109XCJ0cmltQ2xhc3NCbG9jayhtZXRhLmNvZGUpICsgJyBjb250YWluZXItZmx1aWQnXCI+XG5cbiAgICA8ZGl2IGNsYXNzPVwiYmxvY2tQcm9kdWN0IGJsb2NrLXByb2R1Y3RcIj5cbiAgICAgICAgQGlmKG1ldGEubmFtZSl7XG4gICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtMTIgbXQtNFwiPlxuICAgICAgICAgICAgICAgIDxoMiAgY2xhc3M9XCJmb250LXdlaWdodC1ub3JtYWwgZm9udC1nZFwiPlxuICAgICAgICAgICAgICAgICAgICA8c3Bhbj57e21ldGEubmFtZX19PC9zcGFuPlxuICAgICAgICAgICAgICAgIDwvaDI+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIH1cblxuXG4gICAgICAgIEBpZihtZXRhLnN0eWxlcyAmJiBtZXRhLnN0eWxlcy5jYXJyb3VzZWwgPT0gZmFsc2Upe1xuICAgICAgICA8ZGl2IGNsYXNzPVwicm93IFwiPlxuICAgICAgICAgICAgQGZvciAocHJvZHVjdCBvZiBwcm9kdWN0czsgdHJhY2sgJGluZGV4KSB7XG4gICAgICAgICAgICA8ZGl2IFtjbGFzc109XCInaXRlbSAnKyAnIGNvbC0nKyAobWV0YS5zdHlsZXMuaXRlbXM/LnNtKSArICcgY29sLW1kLScgKyAobWV0YS5zdHlsZXMuaXRlbXM/Lm1kKSAgKyAnIGNvbC1sZy0nICsgKG1ldGEuc3R5bGVzLml0ZW1zPy5sZykgICsgJyBweC0yJ1wiIFtpZF09XCIkaW5kZXhcIj5cbiAgICAgICAgICAgICAgICA8IS0tIHZlcmlmaWNhIHF1ZSBzaSB2aWVuZW4gdW4gdGVtcGxhdGUgcGFyYSB1biBjdXN0b20gYXBwUHJvZHVjdCBsbGFtYWRvIFwiYXBwUHJvZHVjdFwiIGNvbiB1biBvYmpldG8gXCJwcm9kdWN0XCItIHNpbm8gdXNhIHBvciBkZWZlY3RvIGVsIGRlbCBjb3JlIC0tPlxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJhcHBQcm9kdWN0ID8gYXBwUHJvZHVjdCA6IGRlZmF1bHRBcHBQcm9kdWN0OyBjb250ZXh0OiB7cHJvZHVjdDpwcm9kdWN0fVwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICB9XG4gICAgICAgIDwvZGl2PlxuICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgPGRpdiBjbGFzcz1cImNvbnRhaW5lciBwb3NpdGlvbi1yZWxhdGl2ZVwiPlxuICAgICAgICAgICAgPHN3aXBlci1jb250YWluZXIgXG4gICAgICAgICAgICAgICAgaW5pdD1cImZhbHNlXCIgXG4gICAgICAgICAgICAgICAgW2lkXT1cIm1ldGE/LmNvZGVcIlxuICAgICAgICAgICAgICAgIHNsaWRlcy1wZXItdmlldz1cImF1dG9cIlxuICAgICAgICAgICAgICAgIHNwYWNlLWJldHdlZW49XCIxNlwiXG4gICAgICAgICAgICAgICAgc2xpZGVzLXBlci1ncm91cD1cIjFcIlxuICAgICAgICAgICAgICAgIG5hdmlnYXRpb249XCJmYWxzZVwiXG4gICAgICAgICAgICAgICAgcGFnaW5hdGlvbj1cImZhbHNlXCJcbiAgICAgICAgICAgICAgICBsb29wPVwiZmFsc2VcIj5cbiAgICAgICAgICAgICAgICBAZm9yIChwcm9kdWN0IG9mIHByb2R1Y3RzOyB0cmFjayAkaW5kZXgpIHtcbiAgICAgICAgICAgICAgICA8c3dpcGVyLXNsaWRlIGlkPVwic3dpcGVyLXNsaWRlXCI+XG4gICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAgICAgICAgICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwiYXBwUHJvZHVjdCA/IGFwcFByb2R1Y3QgOiBkZWZhdWx0QXBwUHJvZHVjdDsgY29udGV4dDoge3Byb2R1Y3Q6cHJvZHVjdH1cIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICA8L3N3aXBlci1zbGlkZT5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICA8L3N3aXBlci1jb250YWluZXI+XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIDwhLS0gQm90b25lcyBkZSBuYXZlZ2FjacOzbiBwZXJzb25hbGl6YWRvcyAtLT5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzd2lwZXItbmF2aWdhdGlvblwiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzd2lwZXItYnV0dG9uLXByZXZcIiBbaWRdPVwibWV0YT8uY29kZSArICctcHJldidcIj5cbiAgICAgICAgICAgICAgICAgICAgQGlmKHByZXZBcnJvd0ltYWdlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICA8aW1nIFtzcmNdPVwicHJldkFycm93SW1hZ2VcIiBhbHQ9XCJBbnRlcmlvclwiIC8+XG4gICAgICAgICAgICAgICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJhcnJvdy10ZXh0XCI+e3twcmV2QXJyb3dUZXh0fX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3dpcGVyLWJ1dHRvbi1uZXh0XCIgW2lkXT1cIm1ldGE/LmNvZGUgKyAnLW5leHQnXCI+XG4gICAgICAgICAgICAgICAgICAgIEBpZihuZXh0QXJyb3dJbWFnZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBbc3JjXT1cIm5leHRBcnJvd0ltYWdlXCIgYWx0PVwiU2lndWllbnRlXCIgLz5cbiAgICAgICAgICAgICAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImFycm93LXRleHRcIj57e25leHRBcnJvd1RleHR9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICB9XG4gICAgPC9kaXY+XG48L3NlY3Rpb24+XG5cblxuPCEtLSBjb21wb25lbnRlIHBvciBkZWZlY3RvICh0b21hcmEgY29tbyBwcm9kdWN0byBlbCBjb250ZXh0byBwYXNhZG8gY29tbyBcInByb2R1Y3RcIikgLS0+XG48bmctdGVtcGxhdGUgI2RlZmF1bHRBcHBQcm9kdWN0IGxldC1wcm9kdWN0PVwicHJvZHVjdFwiPlxuICAgIDxhcHAtcHJvZHVjdC1lYyBbcHJvZHVjdF09XCJwcm9kdWN0XCI+PC9hcHAtcHJvZHVjdC1lYz5cbjwvbmctdGVtcGxhdGU+Il19
|
|
221
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmxvY2stcHJvZHVjdHMtZWMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctZWFzeWNvbW1lcmNlLXYxOC9zcmMvbGliL2VjLWNvbXBvbmVudHMvYmxvY2tzLWVjL2Jsb2NrLXByb2R1Y3RzLWVjL2Jsb2NrLXByb2R1Y3RzLWVjLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLWVhc3ljb21tZXJjZS12MTgvc3JjL2xpYi9lYy1jb21wb25lbnRzL2Jsb2Nrcy1lYy9ibG9jay1wcm9kdWN0cy1lYy9ibG9jay1wcm9kdWN0cy1lYy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWtDLFNBQVMsRUFBRSxzQkFBc0IsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQWUsTUFBTSxlQUFlLENBQUM7QUFDbkosT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFFakUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDeEQsT0FBTyxFQUFFLFlBQVksRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2xFLHFEQUFxRDtBQUNyRCxPQUFPLEVBQUUsUUFBUSxFQUFtQixNQUFNLHVCQUF1QixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHVDQUF1QyxDQUFDOzs7QUFFM0UsUUFBUSxFQUFFLENBQUE7QUFDVjs7OztHQUlHO0FBU0gsTUFBTSxPQUFPLHdCQUF5QixTQUFRLGdCQUFnQjtJQUM1RCwrQ0FBK0M7SUFDaEQseUVBQXlFO0lBQ2hFLGNBQWMsQ0FBVSxDQUFDLG1DQUFtQztJQUM1RCxjQUFjLENBQVUsQ0FBQyxtQ0FBbUM7SUFDNUQsYUFBYSxHQUFXLEdBQUcsQ0FBQztJQUM1QixhQUFh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d0RBS3hCLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0csY0FBYztzQkFBdEIsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUNHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBWUcsVUFBVTtzQkFBbEIsS0FBSztnQkFNSCxRQUFRO3NCQUZWLEtBQUs7dUJBQUM7d0JBQ04sUUFBUSxFQUFFLElBQUk7cUJBQ2Q7Z0JBTUUsSUFBSTtzQkFGTixLQUFLO3VCQUFDO3dCQUNOLFFBQVEsRUFBRSxJQUFJO3FCQUNkIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgYWZ0ZXJOZXh0UmVuZGVyLCBBZnRlclZpZXdJbml0LCBDb21wb25lbnQsIENVU1RPTV9FTEVNRU5UU19TQ0hFTUEsIGluamVjdCwgSW5wdXQsIFBMQVRGT1JNX0lELCBzaWduYWwsIFRlbXBsYXRlUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCbG9ja0VjQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vYWJzdHJhY3Rpb25zLWNvbXBvbmVudHMnO1xuaW1wb3J0IHsgU3dpcGVyT3B0aW9ucyB9IGZyb20gJ3N3aXBlci90eXBlcyc7XG5pbXBvcnQgeyBBbmFseXRpY3NTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vZWMtc2VydmljZXMnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlLCBpc1BsYXRmb3JtQnJvd3NlciB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG4vLyBpbXBvcnQgZnVuY3Rpb24gdG8gcmVnaXN0ZXIgU3dpcGVyIGN1c3RvbSBlbGVtZW50c1xuaW1wb3J0IHsgcmVnaXN0ZXIsIFN3aXBlckNvbnRhaW5lciB9IGZyb20gJ3N3aXBlci9lbGVtZW50L2J1bmRsZSc7XG5pbXBvcnQgeyBQcm9kdWN0RWNDb21wb25lbnQgfSBmcm9tIFwiLi4vLi4vcHJvZHVjdC1lYy9wcm9kdWN0LWVjLmNvbXBvbmVudFwiO1xuXG5yZWdpc3RlcigpXG4vKipcbiAqIENvbXBvbmVuIHBhcmEgbWFuZWphciBsb3MgYmxvcXVlcyBkZSBwcm9kdWN0b3MuXG4gKiBAZXh0ZW5kcyB7QmxvY2tFY0NvbXBvbmVudH1cbiAqIEBjbGFzcyBCbG9ja1Byb2R1Y3RzRWNDb21wb25lbnRcbiAqL1xuQENvbXBvbmVudCh7XG5cdHNlbGVjdG9yOiAnYXBwLWJsb2NrLXByb2R1Y3RzLWVjJyxcblx0c3RhbmRhbG9uZTogdHJ1ZSxcblx0aW1wb3J0czogW0NvbW1vbk1vZHVsZSwgUHJvZHVjdEVjQ29tcG9uZW50XSxcblx0dGVtcGxhdGVVcmw6ICcuL2Jsb2NrLXByb2R1Y3RzLWVjLmNvbXBvbmVudC5odG1sJyxcblx0c3R5bGVVcmw6ICcuL2Jsb2NrLXByb2R1Y3RzLWVjLmNvbXBvbmVudC5zY3NzJyxcblx0c2NoZW1hczogW0NVU1RPTV9FTEVNRU5UU19TQ0hFTUFdXG59KVxuZXhwb3J0IGNsYXNzIEJsb2NrUHJvZHVjdHNFY0NvbXBvbmVudCBleHRlbmRzIEJsb2NrRWNDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0IHtcblx0XHQvLyBQZXJzb25hbGl6YWNpw7NuIGRlIGxhcyBmbGVjaGFzIGRlIG5hdmVnYWNpw7NuXG5cdC8vIFBvciBkZWZlY3RvIHVzYSBzw61tYm9sb3MgZGUgdGV4dG8sIHBlcm8gc2UgcHVlZGVuIGVzcGVjaWZpY2FyIGltw6FnZW5lc1xuXHRASW5wdXQoKSBwcmV2QXJyb3dJbWFnZT86IHN0cmluZzsgLy8gdW5kZWZpbmVkID0gdXNhIHPDrW1ib2xvIGRlIHRleHRvXG5cdEBJbnB1dCgpIG5leHRBcnJvd0ltYWdlPzogc3RyaW5nOyAvLyB1bmRlZmluZWQgPSB1c2Egc8OtbWJvbG8gZGUgdGV4dG9cblx0QElucHV0KCkgcHJldkFycm93VGV4dDogc3RyaW5nID0gJzwnO1xuXHRASW5wdXQoKSBuZXh0QXJyb3dUZXh0OiBzdHJpbmcgPSAnPic7XG5cdC8qKlxuXHQgKiBTZXJ2aWNpbyBkZSBBbmFseXRpY3Ncblx0ICovXG5cdHByaXZhdGUgYW5hbHl0aWNzU2VydmljZTogQW5hbHl0aWNzU2VydmljZSA9IGluamVjdChBbmFseXRpY3NTZXJ2aWNlKVxuXHQvKipcblx0ICogU2lnbmFsIHV0bGl6YWRvIHBhcmEgZ3VhcmRhIGVsIGNvbnRlbmVkb3IgZGVsIGNhcnJ1c2VsXG5cdCAqL1xuXHRzd2lwZXJFbGVtZW50ID0gc2lnbmFsPFN3aXBlckNvbnRhaW5lciB8IG51bGw+KG51bGwpXG5cdC8qKlxuXHQgKiBJbnB1dCBxdWUgcmVjaWJlIHVuIHRlbXBsYXRlIHBhcmEgZWwgcHJvZHVjdG8uXG5cdCAqL1xuXHRASW5wdXQoKSBhcHBQcm9kdWN0OiBUZW1wbGF0ZVJlZjxhbnk+IHwgdW5kZWZpbmVkO1xuXHQvKipcblx0ICogQ29sZWNjacOzbiBkZSBwcm9kdWN0b3MuXG5cdCAqL1xuXHRASW5wdXQoe1xuXHRcdHJlcXVpcmVkOiB0cnVlXG5cdH0pIHByb2R1Y3RzOiBhbnk7IC8vIFByb2R1Y3RbXTtcblx0LyoqXG5cdCAqIEJsb3F1ZSBwcmluY2lwYWwgcXVlIGNvbnRpZW5lIGxvcyBwcm9kdWN0b3Ncblx0ICovXG5cdEBJbnB1dCh7XG5cdFx0cmVxdWlyZWQ6IHRydWVcblx0fSkgbWV0YTogYW55O1xuXG5cdG5nQWZ0ZXJWaWV3SW5pdCgpIHtcblx0XHR0aGlzLnNldHVwU3dpcGVyTmF2aWdhdGlvbigpO1xuXHR9XG5cdFxuXHRwcml2YXRlIGRvY3VtZW50PzogRG9jdW1lbnQ7XG5cdHByaXZhdGUgcGxhdGZvcm1JZDogYW55ID0gaW5qZWN0KFBMQVRGT1JNX0lEKVxuXG5cdC8qKlxuXHQgKiBFamVjdXRhIGVsIG3DqXRvZG8gYGFmdGVyTmV4dFJlbmRlcmBwYXJhIGNhcmdhciBsYXMgY29uZmlndXJhY2lvbmVzIG5lY2VzYXJpYXMgXG5cdCAqIHBhcmEgZWwgY2FycnVzZWwgZGVsIGJhbm5lcnMuIEVzdG8gZGViZSBzZXIgYXNpIGRlYmlkbyBhIHF1ZSB5YSBkZWJlIGVzdGFyIHByZXNlbnRlXG5cdCAqIGVuIGVsIERvbSBlbCBlbGVtZW50IGA8c3dpcGVyLWNvbnRhaW5lcj5gIHBhcmEgcG9kZXIgY29uZmlndXJhcmxvLlxuXHQgKi9cblx0Y29uc3RydWN0b3IoKSB7XG5cdFx0c3VwZXIoKVxuXHR9XG5cdC8qKlxuXHQgKiBBcGxpY2EgZWwgZXZlbnRvIGBzZWxlY3RfcHJvbW90aW9uYCBqdW50byBjb24gZWwgYmFubmVyIHF1ZSBpbnRlcmFjdHVhLlxuXHQgKiBAcGFyYW0gYmFubmVyIFxuXHQgKi9cblx0c2VsZWN0UHJvbW90aW9uKGl0ZW06IGFueSk6IHZvaWQge1xuXHRcdHRoaXMuYW5hbHl0aWNzU2VydmljZS5jYWxsRXZlbnQoJ3NlbGVjdF9wcm9tb3Rpb24nLCBpdGVtKVxuXHR9XG5cblx0LyoqXG5cdCAqIENvbmZpZ3VyYSBsYSBuYXZlZ2FjacOzbiBwZXJzb25hbGl6YWRhIGRlbCBTd2lwZXIuXG5cdCAqIEVzdGEgZnVuY2nDs24gZXN0w6EgZGlzZcOxYWRhIHBhcmEgc2VyIG1vdmlkYSBhbCBjb21wb25lbnRlIGJhc2UgQmxvY2tQcm9kdWN0c0VjQ29tcG9uZW50LlxuXHQgKiBQZXJtaXRlIHBlcnNvbmFsaXphY2nDs24gZGUgbGFzIGltw6FnZW5lcyBkZSBsYXMgZmxlY2hhcyBtZWRpYW50ZSBASW5wdXQuXG5cdCAqL1xuXHRwcml2YXRlIHNldHVwU3dpcGVyTmF2aWdhdGlvbigpIHtcblx0XHRpZiAodGhpcy5tZXRhPy5zdHlsZXM/LmNhcnJvdXNlbCAhPT0gZmFsc2UgJiYgaXNQbGF0Zm9ybUJyb3dzZXIodGhpcy5wbGF0Zm9ybUlkKSkge1xuXHRcdFx0Ly8gVXNhciBzZXRUaW1lb3V0IHBhcmEgYXNlZ3VyYXIgcXVlIGVsIHN3aXBlciBlc3TDqSBpbmljaWFsaXphZG9cblx0XHRcdHNldFRpbWVvdXQoKCkgPT4ge1xuXHRcdFx0XHR0aGlzLmluaXRpYWxpemVTd2lwZXJXaXRoQ3VzdG9tTmF2aWdhdGlvbigpO1xuXHRcdFx0fSwgMjAwKTtcblx0XHR9XG5cdH1cblxuXHQvKipcblx0ICogSW5pY2lhbGl6YSBlbCBTd2lwZXIgY29uIG5hdmVnYWNpw7NuIHBlcnNvbmFsaXphZGEuXG5cdCAqIEVzdGEgZnVuY2nDs24gcHVlZGUgc2VyIG1vdmlkYSBhbCBjb21wb25lbnRlIGJhc2UgcGFyYSByZXV0aWxpemFjacOzbi5cblx0ICovXG5cdHByaXZhdGUgaW5pdGlhbGl6ZVN3aXBlcldpdGhDdXN0b21OYXZpZ2F0aW9uKCkge1xuXHRcdGlmICghaXNQbGF0Zm9ybUJyb3dzZXIodGhpcy5wbGF0Zm9ybUlkKSkgcmV0dXJuO1xuXHRcdFxuXHRcdGNvbnN0IHByZXZCdXR0b24gPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChgJHt0aGlzLm1ldGE/LmNvZGV9LXByZXZgKTtcblx0XHRjb25zdCBuZXh0QnV0dG9uID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoYCR7dGhpcy5tZXRhPy5jb2RlfS1uZXh0YCk7XG5cdFx0Y29uc3Qgc3dpcGVyRWxlbWVudCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHRoaXMubWV0YT8uY29kZSkgYXMgYW55O1xuXG5cdFx0aWYgKHByZXZCdXR0b24gJiYgbmV4dEJ1dHRvbiAmJiBzd2lwZXJFbGVtZW50KSB7XG5cdFx0XHQvLyBjb25zb2xlLmxvZygnQ29uZmlndXJhbmRvIG5hdmVnYWNpw7NuIHBlcnNvbmFsaXphZGEgcGFyYTonLCB0aGlzLm1ldGE/LmNvZGUpO1xuXHRcdFx0XG5cdFx0XHRjb25zdCBzd2lwZXJDb25maWcgPSB0aGlzLmdldFN3aXBlckNvbmZpZ3VyYXRpb24oKTtcblxuXHRcdFx0Ly8gVmVyaWZpY2FyIHNpIGVsIFN3aXBlciB5YSBlc3TDoSBpbmljaWFsaXphZG9cblx0XHRcdGlmICghc3dpcGVyRWxlbWVudC5zd2lwZXIpIHtcblx0XHRcdFx0dGhpcy5pbml0aWFsaXplTmV3U3dpcGVyKHN3aXBlckVsZW1lbnQsIHN3aXBlckNvbmZpZyk7XG5cdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHR0aGlzLnVwZGF0ZUV4aXN0aW5nU3dpcGVyKHN3aXBlckVsZW1lbnQpO1xuXHRcdFx0fVxuXG5cdFx0XHQvLyBDb25maWd1cmFyIGxvcyBldmVudCBsaXN0ZW5lcnMgcGFyYSBsb3MgYm90b25lc1xuXHRcdFx0dGhpcy5zZXR1cE5hdmlnYXRpb25FdmVudExpc3RlbmVycyhwcmV2QnV0dG9uLCBuZXh0QnV0dG9uLCBzd2lwZXJFbGVtZW50KTtcblx0XHRcdFxuXHRcdFx0Ly8gY29uc29sZS5sb2coJ0V2ZW50IGxpc3RlbmVycyBjb25maWd1cmFkb3MgcGFyYSBsb3MgYm90b25lcyBkZSBuYXZlZ2FjacOzbicpO1xuXHRcdH0gZWxzZSB7XG5cdFx0XHQvLyBjb25zb2xlLmxvZygnTm8gc2UgcHVkaWVyb24gZW5jb250cmFyIGxvcyBlbGVtZW50b3M6Jywge1xuXHRcdFx0Ly8gXHRwcmV2QnV0dG9uOiAhIXByZXZCdXR0b24sXG5cdFx0XHQvLyBcdG5leHRCdXR0b246ICEhbmV4dEJ1dHRvbixcblx0XHRcdC8vIFx0c3dpcGVyRWxlbWVudDogISFzd2lwZXJFbGVtZW50XG5cdFx0XHQvLyB9KTtcblx0XHR9XG5cdH1cblxuXHQvKipcblx0ICogT2J0aWVuZSBsYSBjb25maWd1cmFjacOzbiBiYXNlIGRlbCBTd2lwZXIuXG5cdCAqIEVzdGEgY29uZmlndXJhY2nDs24gcHVlZGUgc2VyIHBlcnNvbmFsaXphZGEgZW4gZWwgZnV0dXJvIG1lZGlhbnRlIEBJbnB1dC5cblx0ICovXG5cdHByaXZhdGUgZ2V0U3dpcGVyQ29uZmlndXJhdGlvbigpIHtcblx0XHRyZXR1cm4ge1xuXHRcdFx0c2xpZGVzUGVyVmlldzogJ2F1dG8nLFxuXHRcdFx0c3BhY2VCZXR3ZWVuOiAxNixcblx0XHRcdHNsaWRlc1Blckdyb3VwOiAxLCAvLyBJbXBvcnRhbnRlOiBtb3ZlcnNlIGRlIHVubyBlbiB1bm9cblx0XHRcdG5hdmlnYXRpb246IGZhbHNlLCAvLyBEZXNoYWJpbGl0YW1vcyBsYSBuYXZlZ2FjacOzbiBwb3IgZGVmZWN0b1xuXHRcdFx0cGFnaW5hdGlvbjogZmFsc2UsXG5cdFx0XHRsb29wOiB0cnVlLFxuXHRcdFx0Z3JhYkN1cnNvcjogdHJ1ZSxcblx0XHRcdGF1dG9wbGF5OiB0cnVlLFxuXHRcdFx0YnJlYWtwb2ludHM6IHtcblx0XHRcdFx0MzIwOiB7XG5cdFx0XHRcdFx0c2xpZGVzUGVyVmlldzogMSxcblx0XHRcdFx0XHRzcGFjZUJldHdlZW46IDgsXG5cdFx0XHRcdFx0c2xpZGVzUGVyR3JvdXA6IDFcblx0XHRcdFx0fSxcblx0XHRcdFx0NTc2OiB7XG5cdFx0XHRcdFx0c2xpZGVzUGVyVmlldzogMixcblx0XHRcdFx0XHRzcGFjZUJldHdlZW46IDEyLFxuXHRcdFx0XHRcdHNsaWRlc1Blckdyb3VwOiAxXG5cdFx0XHRcdH0sXG5cdFx0XHRcdDc2ODoge1xuXHRcdFx0XHRcdHNsaWRlc1BlclZpZXc6IDMsXG5cdFx0XHRcdFx0c3BhY2VCZXR3ZWVuOiAxNixcblx0XHRcdFx0XHRzbGlkZXNQZXJHcm91cDogMVxuXHRcdFx0XHR9LFxuXHRcdFx0XHQxMDI0OiB7XG5cdFx0XHRcdFx0c2xpZGVzUGVyVmlldzogNCxcblx0XHRcdFx0XHRzcGFjZUJldHdlZW46IDE2LFxuXHRcdFx0XHRcdHNsaWRlc1Blckdyb3VwOiAxXG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIEluaWNpYWxpemEgdW4gbnVldm8gU3dpcGVyIGNvbiBsYSBjb25maWd1cmFjacOzbiBwcm9wb3JjaW9uYWRhLlxuXHQgKi9cblx0cHJpdmF0ZSBpbml0aWFsaXplTmV3U3dpcGVyKHN3aXBlckVsZW1lbnQ6IGFueSwgY29uZmlnOiBhbnkpIHtcblx0XHQvLyBBc2lnbmFyIGNvbmZpZ3VyYWNpw7NuIGFsIGVsZW1lbnRvXG5cdFx0T2JqZWN0LmFzc2lnbihzd2lwZXJFbGVtZW50LCBjb25maWcpO1xuXHRcdFxuXHRcdC8vIEluaWNpYWxpemFyIGVsIFN3aXBlclxuXHRcdHN3aXBlckVsZW1lbnQuaW5pdGlhbGl6ZSgpO1xuXHRcdFxuXHRcdC8vIGNvbnNvbGUubG9nKCdTd2lwZXIgaW5pY2lhbGl6YWRvIGNvbiBjb25maWd1cmFjacOzbiBwZXJzb25hbGl6YWRhJyk7XG5cdH1cblxuXHQvKipcblx0ICogQWN0dWFsaXphIHVuIFN3aXBlciBleGlzdGVudGUgcGFyYSBhc2VndXJhciBsYSBjb25maWd1cmFjacOzbiBjb3JyZWN0YS5cblx0ICovXG5cdHByaXZhdGUgdXBkYXRlRXhpc3RpbmdTd2lwZXIoc3dpcGVyRWxlbWVudDogYW55KSB7XG5cdFx0Ly8gY29uc29sZS5sb2coJ0FjdHVhbGl6YW5kbyBjb25maWd1cmFjacOzbiBkZSBTd2lwZXIgZXhpc3RlbnRlJyk7XG5cdFx0XG5cdFx0Ly8gRm9yemFyIHNsaWRlc1Blckdyb3VwIGEgMVxuXHRcdHN3aXBlckVsZW1lbnQuc3dpcGVyLnBhcmFtcy5zbGlkZXNQZXJHcm91cCA9IDE7XG5cdFx0c3dpcGVyRWxlbWVudC5zd2lwZXIuYWxsb3dTbGlkZU5leHQgPSB0cnVlO1xuXHRcdHN3aXBlckVsZW1lbnQuc3dpcGVyLmFsbG93U2xpZGVQcmV2ID0gdHJ1ZTtcblx0XHRcblx0XHQvLyBBY3R1YWxpemFyIHRhbWJpw6luIGxvcyBicmVha3BvaW50cyBzaSBleGlzdGVuXG5cdFx0aWYgKHN3aXBlckVsZW1lbnQuc3dpcGVyLnBhcmFtcy5icmVha3BvaW50cykge1xuXHRcdFx0T2JqZWN0LmtleXMoc3dpcGVyRWxlbWVudC5zd2lwZXIucGFyYW1zLmJyZWFrcG9pbnRzKS5mb3JFYWNoKGtleSA9PiB7XG5cdFx0XHRcdHN3aXBlckVsZW1lbnQuc3dpcGVyLnBhcmFtcy5icmVha3BvaW50c1trZXldLnNsaWRlc1Blckdyb3VwID0gMTtcblx0XHRcdH0pO1xuXHRcdH1cblx0XHRcblx0XHRzd2lwZXJFbGVtZW50LnN3aXBlci51cGRhdGUoKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBDb25maWd1cmEgbG9zIGV2ZW50IGxpc3RlbmVycyBwYXJhIGxvcyBib3RvbmVzIGRlIG5hdmVnYWNpw7NuLlxuXHQgKi9cblx0cHJpdmF0ZSBzZXR1cE5hdmlnYXRpb25FdmVudExpc3RlbmVycyhwcmV2QnV0dG9uOiBFbGVtZW50LCBuZXh0QnV0dG9uOiBFbGVtZW50LCBzd2lwZXJFbGVtZW50OiBhbnkpIHtcblx0XHRwcmV2QnV0dG9uLmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgKGUpID0+IHtcblx0XHRcdGUucHJldmVudERlZmF1bHQoKTtcblx0XHRcdGUuc3RvcFByb3BhZ2F0aW9uKCk7XG5cdFx0XHQvLyBjb25zb2xlLmxvZygnQ2xpY2sgZW4gYm90w7NuIGFudGVyaW9yJyk7XG5cdFx0XHRpZiAoc3dpcGVyRWxlbWVudC5zd2lwZXIpIHtcblx0XHRcdFx0c3dpcGVyRWxlbWVudC5zd2lwZXIuc2xpZGVQcmV2KCk7XG5cdFx0XHR9XG5cdFx0fSk7XG5cblx0XHRuZXh0QnV0dG9uLmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgKGUpID0+IHtcblx0XHRcdGUucHJldmVudERlZmF1bHQoKTtcblx0XHRcdGUuc3RvcFByb3BhZ2F0aW9uKCk7XG5cdFx0XHQvLyBjb25zb2xlLmxvZygnQ2xpY2sgZW4gYm90w7NuIHNpZ3VpZW50ZScpO1xuXHRcdFx0aWYgKHN3aXBlckVsZW1lbnQuc3dpcGVyKSB7XG5cdFx0XHRcdHN3aXBlckVsZW1lbnQuc3dpcGVyLnNsaWRlTmV4dCgpO1xuXHRcdFx0fVxuXHRcdH0pO1xuXHR9XG59XG4iLCI8c2VjdGlvbiBbbmdDbGFzc109XCJ0cmltQ2xhc3NCbG9jayhtZXRhLmNvZGUpICsgJyBjb250YWluZXItZmx1aWQnXCI+XG5cbiAgICA8ZGl2IGNsYXNzPVwiYmxvY2tQcm9kdWN0IGJsb2NrLXByb2R1Y3RcIj5cbiAgICAgICAgQGlmKG1ldGEubmFtZSl7XG4gICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtMTIgbXQtNFwiPlxuICAgICAgICAgICAgICAgIDxoMiAgY2xhc3M9XCJmb250LXdlaWdodC1ub3JtYWwgZm9udC1nZFwiPlxuICAgICAgICAgICAgICAgICAgICA8c3Bhbj57e21ldGEubmFtZX19PC9zcGFuPlxuICAgICAgICAgICAgICAgIDwvaDI+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIH1cblxuXG4gICAgICAgIEBpZihtZXRhLnN0eWxlcyAmJiBtZXRhLnN0eWxlcy5jYXJyb3VzZWwgPT0gZmFsc2Upe1xuICAgICAgICA8ZGl2IGNsYXNzPVwicm93IFwiPlxuICAgICAgICAgICAgQGZvciAocHJvZHVjdCBvZiBwcm9kdWN0czsgdHJhY2sgJGluZGV4KSB7XG4gICAgICAgICAgICA8ZGl2IFtjbGFzc109XCInaXRlbSAnKyAnIGNvbC0nKyAobWV0YS5zdHlsZXMuaXRlbXM/LnNtKSArICcgY29sLW1kLScgKyAobWV0YS5zdHlsZXMuaXRlbXM/Lm1kKSAgKyAnIGNvbC1sZy0nICsgKG1ldGEuc3R5bGVzLml0ZW1zPy5sZykgICsgJyBweC0yJ1wiIFtpZF09XCIkaW5kZXhcIj5cbiAgICAgICAgICAgICAgICA8IS0tIHZlcmlmaWNhIHF1ZSBzaSB2aWVuZW4gdW4gdGVtcGxhdGUgcGFyYSB1biBjdXN0b20gYXBwUHJvZHVjdCBsbGFtYWRvIFwiYXBwUHJvZHVjdFwiIGNvbiB1biBvYmpldG8gXCJwcm9kdWN0XCItIHNpbm8gdXNhIHBvciBkZWZlY3RvIGVsIGRlbCBjb3JlIC0tPlxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJhcHBQcm9kdWN0ID8gYXBwUHJvZHVjdCA6IGRlZmF1bHRBcHBQcm9kdWN0OyBjb250ZXh0OiB7cHJvZHVjdDpwcm9kdWN0fVwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICB9XG4gICAgICAgIDwvZGl2PlxuICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgPGRpdiBjbGFzcz1cImNvbnRhaW5lciBwb3NpdGlvbi1yZWxhdGl2ZVwiPlxuICAgICAgICAgICAgPHN3aXBlci1jb250YWluZXIgXG4gICAgICAgICAgICAgICAgaW5pdD1cImZhbHNlXCIgXG4gICAgICAgICAgICAgICAgW2lkXT1cIm1ldGE/LmNvZGVcIlxuICAgICAgICAgICAgICAgIHNsaWRlcy1wZXItdmlldz1cImF1dG9cIlxuICAgICAgICAgICAgICAgIHNwYWNlLWJldHdlZW49XCIxNlwiXG4gICAgICAgICAgICAgICAgc2xpZGVzLXBlci1ncm91cD1cIjFcIlxuICAgICAgICAgICAgICAgIG5hdmlnYXRpb249XCJmYWxzZVwiXG4gICAgICAgICAgICAgICAgcGFnaW5hdGlvbj1cImZhbHNlXCJcbiAgICAgICAgICAgICAgICBsb29wPVwiZmFsc2VcIj5cbiAgICAgICAgICAgICAgICBAZm9yIChwcm9kdWN0IG9mIHByb2R1Y3RzOyB0cmFjayAkaW5kZXgpIHtcbiAgICAgICAgICAgICAgICA8c3dpcGVyLXNsaWRlIGlkPVwic3dpcGVyLXNsaWRlXCI+XG4gICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAgICAgICAgICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwiYXBwUHJvZHVjdCA/IGFwcFByb2R1Y3QgOiBkZWZhdWx0QXBwUHJvZHVjdDsgY29udGV4dDoge3Byb2R1Y3Q6cHJvZHVjdH1cIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICA8L3N3aXBlci1zbGlkZT5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICA8L3N3aXBlci1jb250YWluZXI+XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIDwhLS0gQm90b25lcyBkZSBuYXZlZ2FjacOzbiBwZXJzb25hbGl6YWRvcyAtLT5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzd2lwZXItbmF2aWdhdGlvblwiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzd2lwZXItYnV0dG9uLXByZXZcIiBbaWRdPVwibWV0YT8uY29kZSArICctcHJldidcIj5cbiAgICAgICAgICAgICAgICAgICAgQGlmKHByZXZBcnJvd0ltYWdlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICA8aW1nIFtzcmNdPVwicHJldkFycm93SW1hZ2VcIiBhbHQ9XCJBbnRlcmlvclwiIC8+XG4gICAgICAgICAgICAgICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJhcnJvdy10ZXh0XCI+e3twcmV2QXJyb3dUZXh0fX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3dpcGVyLWJ1dHRvbi1uZXh0XCIgW2lkXT1cIm1ldGE/LmNvZGUgKyAnLW5leHQnXCI+XG4gICAgICAgICAgICAgICAgICAgIEBpZihuZXh0QXJyb3dJbWFnZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBbc3JjXT1cIm5leHRBcnJvd0ltYWdlXCIgYWx0PVwiU2lndWllbnRlXCIgLz5cbiAgICAgICAgICAgICAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImFycm93LXRleHRcIj57e25leHRBcnJvd1RleHR9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICB9XG4gICAgPC9kaXY+XG48L3NlY3Rpb24+XG5cblxuPCEtLSBjb21wb25lbnRlIHBvciBkZWZlY3RvICh0b21hcmEgY29tbyBwcm9kdWN0byBlbCBjb250ZXh0byBwYXNhZG8gY29tbyBcInByb2R1Y3RcIikgLS0+XG48bmctdGVtcGxhdGUgI2RlZmF1bHRBcHBQcm9kdWN0IGxldC1wcm9kdWN0PVwicHJvZHVjdFwiPlxuICAgIDxhcHAtcHJvZHVjdC1lYyBbcHJvZHVjdF09XCJwcm9kdWN0XCI+PC9hcHAtcHJvZHVjdC1lYz5cbjwvbmctdGVtcGxhdGU+Il19
|