ng-easycommerce-v18 0.3.20-beta.2 → 0.3.21-beta.1
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 +2 -16
- package/esm2022/lib/classes/filters/attributes-filter.mjs +4 -74
- package/esm2022/lib/classes/filters/category-filter.mjs +26 -105
- package/esm2022/lib/classes/filters/filter-factory.mjs +3 -7
- package/esm2022/lib/classes/filters/price_range-filter.mjs +3 -3
- package/esm2022/lib/constants/core.constants.service.mjs +1 -12
- package/esm2022/lib/ec-components/collection-ec/collection-ec.component.mjs +17 -41
- package/esm2022/lib/ec-components/filters-ec/filters-ec.component.mjs +9 -42
- package/esm2022/lib/ec-components/header-ec/header-ec.component.mjs +5 -13
- package/esm2022/lib/ec-components/price-range-filter/price-range-filter.component.mjs +2 -13
- package/esm2022/lib/ec-components/widgets-ec/redsys-catch-ec/redsys-catch-ec.component.mjs +17 -7
- package/esm2022/lib/ec-services/filters.service.mjs +18 -124
- package/esm2022/lib/ec-services/pagination.service.mjs +22 -70
- package/esm2022/lib/ec-services/products.service.mjs +3 -5
- package/fesm2022/ng-easycommerce-v18.mjs +113 -497
- package/fesm2022/ng-easycommerce-v18.mjs.map +1 -1
- package/lib/classes/filters/attributes-filter.d.ts +0 -24
- package/lib/classes/filters/category-filter.d.ts +3 -30
- package/lib/constants/core.constants.service.d.ts +0 -7
- package/lib/ec-components/collection-ec/collection-ec.component.d.ts +4 -5
- package/lib/ec-components/filters-ec/filters-ec.component.d.ts +0 -13
- package/lib/ec-components/price-range-filter/price-range-filter.component.d.ts +0 -2
- package/lib/ec-services/filters.service.d.ts +1 -18
- package/lib/ec-services/pagination.service.d.ts +5 -21
- package/lib/ec-services/products.service.d.ts +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,19 +1,5 @@
|
|
|
1
|
-
# Version 0.3.
|
|
2
|
-
-
|
|
3
|
-
- Unificación del flujo de filtrado: ahora toda la lógica se basa en URL (params + queryParams) y se hidrata desde `FiltersService.hydrateFromRoute()`.
|
|
4
|
-
- Se optimiza el runtime inicial para evitar ciclos innecesarios y cargar filtros antes del primer render.
|
|
5
|
-
- Se centraliza la sincronización de rangos de precio (filters ↔ pagination ↔ products).
|
|
6
|
-
# Version 0.3.17-beta.4
|
|
7
|
-
- Se agrega if platformID en mas archivos para que no de error al navegar elden.
|
|
8
|
-
# Version 0.3.17-beta.2
|
|
9
|
-
- 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.
|
|
10
|
-
# Version 0.3.17-beta.1
|
|
11
|
-
- Se agrego el isVisible de las categorias a su interfaz
|
|
12
|
-
# Version 0.3.18-beta.2
|
|
13
|
-
- Se optimizar y comenta codigo para que el runtime no sea un bucle y se haga antes de la primera carga
|
|
14
|
-
# Version 0.3.18-beta.1
|
|
15
|
-
- Se modifican servicios y componentes para que funcione el deploy SSR.
|
|
16
|
-
- Se elimina uso de DOM ya que en SSR tira error.
|
|
1
|
+
# Version 0.3.21-beta.1
|
|
2
|
+
- Mejora en el flujo de pago con Mercado Pago en dispositivos móviles: se agrega fallback de redirección cuando `window.close()` es ignorado, asegurando que la pantalla de resultado no quede bloqueada en el catch.
|
|
17
3
|
# Version 0.3.17
|
|
18
4
|
- En el `header-ec.component.ts` se hacen public algunos injectores para poder usarlo en el `header.component.ts` de los frontends.
|
|
19
5
|
# Version 0.3.16
|
|
@@ -1,16 +1,10 @@
|
|
|
1
1
|
import { inject } from "@angular/core";
|
|
2
2
|
import { OptionsService } from "../../ec-services";
|
|
3
3
|
import { Filter } from "./filter";
|
|
4
|
-
/**
|
|
5
|
-
* AttributesFilter
|
|
6
|
-
* - Gestiona el filtro de atributos (estructura de padres/children).
|
|
7
|
-
* - Soporta hidratación desde query params y aplicación de códigos seleccionados.
|
|
8
|
-
*/
|
|
9
4
|
export class AttributesFilter extends Filter {
|
|
10
5
|
_optionsService = inject(OptionsService);
|
|
11
6
|
data = [];
|
|
12
7
|
multi = false;
|
|
13
|
-
_codesFromQuery = null;
|
|
14
8
|
constructor(initialValue, options) {
|
|
15
9
|
super();
|
|
16
10
|
if (options) {
|
|
@@ -18,6 +12,7 @@ export class AttributesFilter extends Filter {
|
|
|
18
12
|
}
|
|
19
13
|
else {
|
|
20
14
|
this._optionsService.getAttributes().subscribe(res => {
|
|
15
|
+
//console.log(res);
|
|
21
16
|
this.setContent(res, initialValue);
|
|
22
17
|
});
|
|
23
18
|
}
|
|
@@ -27,18 +22,10 @@ export class AttributesFilter extends Filter {
|
|
|
27
22
|
const attributes = this._optionsService.generateMenu(options);
|
|
28
23
|
attributes.forEach((filter) => filter = this.createElement(filter, options, initialValue));
|
|
29
24
|
this.data = attributes;
|
|
30
|
-
// Si ya teníamos códigos de la URL guardados, aplicarlos ahora
|
|
31
|
-
if (this._codesFromQuery && this._codesFromQuery.length) {
|
|
32
|
-
// ADDED: Aplicar códigos guardados tras cargar la data.
|
|
33
|
-
this.applyCodes(this._codesFromQuery);
|
|
34
|
-
}
|
|
35
25
|
}
|
|
36
26
|
getContent() {
|
|
37
27
|
return this.data;
|
|
38
28
|
}
|
|
39
|
-
/**
|
|
40
|
-
* ADDED: toUrlParams construye la porción de query string que representa las selecciones de atributos.
|
|
41
|
-
*/
|
|
42
29
|
toUrlParams(actual_url = '&attributeCodes=', sublist, already) {
|
|
43
30
|
let elements = sublist || this.data;
|
|
44
31
|
let aux_url = '';
|
|
@@ -60,14 +47,12 @@ export class AttributesFilter extends Filter {
|
|
|
60
47
|
}
|
|
61
48
|
}
|
|
62
49
|
});
|
|
50
|
+
//console.log(actual_url + aux_url);
|
|
63
51
|
return actual_url + aux_url;
|
|
64
52
|
}
|
|
65
53
|
;
|
|
66
54
|
cleanResult(text) { return text.replace('&attributeCodes=', ''); }
|
|
67
55
|
;
|
|
68
|
-
/**
|
|
69
|
-
* ADDED: createElement transforma cada nodo original en FilterElement y marca selección inicial si corresponde.
|
|
70
|
-
*/
|
|
71
56
|
createElement(filter, original, initialValue) {
|
|
72
57
|
if (filter.type == 'sub') {
|
|
73
58
|
filter.multi = false;
|
|
@@ -80,64 +65,9 @@ export class AttributesFilter extends Filter {
|
|
|
80
65
|
else {
|
|
81
66
|
filter.value = original.code;
|
|
82
67
|
filter.multi = false;
|
|
83
|
-
filter.selected = (initialValue &&
|
|
84
|
-
this.removeAccents(original.slug?.toLowerCase()) === this.removeAccents(initialValue?.toLowerCase()));
|
|
68
|
+
filter.selected = (initialValue && this.removeAccents(original.slug?.toLowerCase()) == this.removeAccents(initialValue?.toLowerCase()));
|
|
85
69
|
}
|
|
86
70
|
return filter;
|
|
87
71
|
}
|
|
88
|
-
/** hidratar desde la URL */
|
|
89
|
-
hydrateFromQuery(params) {
|
|
90
|
-
const raw = params['attributeCodes'];
|
|
91
|
-
if (!raw) {
|
|
92
|
-
// nada en la URL → limpió filtro
|
|
93
|
-
this._codesFromQuery = null;
|
|
94
|
-
this.clearSelection();
|
|
95
|
-
return;
|
|
96
|
-
}
|
|
97
|
-
const codes = String(raw)
|
|
98
|
-
.split('<and>')
|
|
99
|
-
.map(c => c.trim())
|
|
100
|
-
.filter(Boolean);
|
|
101
|
-
if (!codes.length) {
|
|
102
|
-
this._codesFromQuery = null;
|
|
103
|
-
this.clearSelection();
|
|
104
|
-
return;
|
|
105
|
-
}
|
|
106
|
-
this._codesFromQuery = codes;
|
|
107
|
-
// Si ya tengo data cargada, aplico ahora;
|
|
108
|
-
// si no, se aplicará en setContent().
|
|
109
|
-
if (this.data && this.data.length) {
|
|
110
|
-
// ADDED: Aplicar códigos inmediatamente porque la data ya está disponible.
|
|
111
|
-
this.applyCodes(codes);
|
|
112
|
-
}
|
|
113
|
-
}
|
|
114
|
-
/**
|
|
115
|
-
* ADDED: applyCodes recorre la estructura y marca selected=true en los children cuyo código está en 'codes'.
|
|
116
|
-
* Además marca el parent como seleccionado si alguno de sus hijos lo está.
|
|
117
|
-
*/
|
|
118
|
-
applyCodes(codes) {
|
|
119
|
-
this.data?.forEach((parent) => {
|
|
120
|
-
parent.selected = false;
|
|
121
|
-
(parent.children || []).forEach((child) => {
|
|
122
|
-
const code = child.code || child.value;
|
|
123
|
-
const isSelected = codes.includes(code);
|
|
124
|
-
child.selected = isSelected;
|
|
125
|
-
if (isSelected) {
|
|
126
|
-
parent.selected = true;
|
|
127
|
-
}
|
|
128
|
-
});
|
|
129
|
-
});
|
|
130
|
-
}
|
|
131
|
-
/**
|
|
132
|
-
* ADDED: clearSelection desmarca todos los parents y children (restablece el filtro).
|
|
133
|
-
*/
|
|
134
|
-
clearSelection() {
|
|
135
|
-
this.data?.forEach((parent) => {
|
|
136
|
-
parent.selected = false;
|
|
137
|
-
(parent.children || []).forEach((child) => {
|
|
138
|
-
child.selected = false;
|
|
139
|
-
});
|
|
140
|
-
});
|
|
141
|
-
}
|
|
142
72
|
}
|
|
143
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXR0cmlidXRlcy1maWx0ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1lYXN5Y29tbWVyY2UtdjE4L3NyYy9saWIvY2xhc3Nlcy9maWx0ZXJzL2F0dHJpYnV0ZXMtZmlsdGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkMsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRW5ELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFHbEM7Ozs7R0FJRztBQUNILE1BQU0sT0FBTyxnQkFBaUIsU0FBUSxNQUFNO0lBQ2hDLGVBQWUsR0FBbUIsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDO0lBRXhELElBQUksR0FBb0IsRUFBRSxDQUFDO0lBQzNCLEtBQUssR0FBWSxLQUFLLENBQUM7SUFFeEIsZUFBZSxHQUFvQixJQUFJLENBQUM7SUFFaEQsWUFBWSxZQUFrQixFQUFFLE9BQWE7UUFDekMsS0FBSyxFQUFFLENBQUM7UUFDUixJQUFJLE9BQU8sRUFBRSxDQUFDO1lBQ1YsSUFBSSxDQUFDLFVBQVUsQ0FBQyxPQUFPLEVBQUUsWUFBWSxDQUFDLENBQUM7UUFDM0MsQ0FBQzthQUFNLENBQUM7WUFDSixJQUFJLENBQUMsZUFBZSxDQUFDLGFBQWEsRUFBRSxDQUFDLFNBQVMsQ0FDMUMsR0FBRyxDQUFDLEVBQUU7Z0JBQ0YsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLEVBQUUsWUFBWSxDQUFDLENBQUM7WUFDdkMsQ0FBQyxDQUNKLENBQUE7UUFDTCxDQUFDO0lBQ0wsQ0FBQztJQUVRLElBQUksS0FBaUIsT0FBTyxZQUFZLENBQUMsQ0FBQyxDQUFDO0lBRTNDLFVBQVUsQ0FBQyxPQUFZLEVBQUUsWUFBa0I7UUFDaEQsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDOUQsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDLE1BQVcsRUFBRSxFQUFFLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxFQUFFLE9BQU8sRUFBRSxZQUFZLENBQUMsQ0FBQyxDQUFDO1FBQ2hHLElBQUksQ0FBQyxJQUFJLEdBQUcsVUFBVSxDQUFDO1FBRXZCLCtEQUErRDtRQUMvRCxJQUFJLElBQUksQ0FBQyxlQUFlLElBQUksSUFBSSxDQUFDLGVBQWUsQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUN0RCx3REFBd0Q7WUFDeEQsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUM7UUFDMUMsQ0FBQztJQUNMLENBQUM7SUFDUSxVQUFVO1FBQ2YsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDO0lBQ3JCLENBQUM7SUFDRDs7T0FFRztJQUNNLFdBQVcsQ0FBQyxVQUFVLEdBQUcsa0JBQWtCLEVBQUUsT0FBYSxFQUFFLE9BQWE7UUFDOUUsSUFBSSxRQUFRLEdBQUcsT0FBTyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUM7UUFDcEMsSUFBSSxPQUFPLEdBQUcsRUFBRSxDQUFDO1FBQ2pCLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxPQUFZLEVBQUUsRUFBRTtZQUM5QixJQUFJLE9BQU8sQ0FBQyxJQUFJLElBQUksS0FBSyxFQUFFLENBQUM7Z0JBQ3hCLElBQUksTUFBTSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsRUFBRSxFQUFFLE9BQU8sQ0FBQyxRQUFRLEVBQUUsQ0FBQyxVQUFVLElBQUksa0JBQWtCLElBQUksVUFBVSxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUE7Z0JBQzNHLElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQztvQkFBRSxVQUFVLElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUM3RSxDQUFDO2lCQUFNLElBQUksT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDO2dCQUMxQixJQUFJLFVBQVUsSUFBSSxrQkFBa0IsSUFBSSxPQUFPLElBQUksRUFBRSxFQUFFLENBQUM7b0JBQ3BELE9BQU8sR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDO2dCQUMzQixDQUFDO3FCQUNJLENBQUM7b0JBQ0YsSUFBSSxPQUFPLElBQUksRUFBRTt3QkFBRSxPQUFPLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQzs7d0JBQ2hFLE9BQU8sSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7Z0JBQzdDLENBQUM7WUFDTCxDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUE7UUFDRixPQUFPLFVBQVUsR0FBRyxPQUFPLENBQUM7SUFDaEMsQ0FBQztJQUFBLENBQUM7SUFFRixXQUFXLENBQUMsSUFBWSxJQUFJLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxrQkFBa0IsRUFBRSxFQUFFLENBQUMsQ0FBQSxDQUFDLENBQUM7SUFBQSxDQUFDO0lBRTFFOztPQUVHO0lBQ00sYUFBYSxDQUFDLE1BQVcsRUFBRSxRQUFhLEVBQUUsWUFBa0I7UUFDakUsSUFBSSxNQUFNLENBQUMsSUFBSSxJQUFJLEtBQUssRUFBRSxDQUFDO1lBQ3ZCLE1BQU0sQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1lBQ3JCLE1BQU0sQ0FBQyxLQUFLLEdBQUcsTUFBTSxDQUFDO1lBQ3RCLE1BQU0sQ0FBQyxLQUFLLEdBQUcsUUFBUSxDQUFDLElBQUksQ0FBQztZQUM3QixNQUFNLENBQUMsUUFBUSxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUMsS0FBVSxFQUFFLENBQVMsRUFBRSxFQUFFO2dCQUM1RCxPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQyxRQUFRLEVBQUUsWUFBWSxDQUFDLENBQUE7WUFDbEUsQ0FBQyxDQUFDLENBQUM7UUFDUCxDQUFDO2FBQU0sQ0FBQztZQUNKLE1BQU0sQ0FBQyxLQUFLLEdBQUcsUUFBUSxDQUFDLElBQUksQ0FBQztZQUM3QixNQUFNLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztZQUNyQixNQUFNLENBQUMsUUFBUSxHQUFHLENBQ2QsWUFBWTtnQkFDWixJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsV0FBVyxFQUFFLENBQUMsS0FBSyxJQUFJLENBQUMsYUFBYSxDQUFDLFlBQVksRUFBRSxXQUFXLEVBQUUsQ0FBQyxDQUN2RyxDQUFDO1FBQ04sQ0FBQztRQUNELE9BQU8sTUFBTSxDQUFDO0lBQ2xCLENBQUM7SUFFRCw0QkFBNEI7SUFDNUIsZ0JBQWdCLENBQUMsTUFBYztRQUMzQixNQUFNLEdBQUcsR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUVyQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUM7WUFDUCxpQ0FBaUM7WUFDakMsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUM7WUFDNUIsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQ3RCLE9BQU87UUFDWCxDQUFDO1FBRUQsTUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQzthQUNwQixLQUFLLENBQUMsT0FBTyxDQUFDO2FBQ2QsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO2FBQ2xCLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUVyQixJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ2hCLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDO1lBQzVCLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUN0QixPQUFPO1FBQ1gsQ0FBQztRQUVELElBQUksQ0FBQyxlQUFlLEdBQUcsS0FBSyxDQUFDO1FBRTdCLDBDQUEwQztRQUMxQyxzQ0FBc0M7UUFDdEMsSUFBSSxJQUFJLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDaEMsMkVBQTJFO1lBQzNFLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDM0IsQ0FBQztJQUNMLENBQUM7SUFFRDs7O09BR0c7SUFDSyxVQUFVLENBQUMsS0FBZTtRQUM5QixJQUFJLENBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxDQUFDLE1BQVcsRUFBRSxFQUFFO1lBQy9CLE1BQU0sQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDO1lBQ3hCLENBQUMsTUFBTSxDQUFDLFFBQVEsSUFBSSxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxLQUFVLEVBQUUsRUFBRTtnQkFDM0MsTUFBTSxJQUFJLEdBQUcsS0FBSyxDQUFDLElBQUksSUFBSSxLQUFLLENBQUMsS0FBSyxDQUFDO2dCQUN2QyxNQUFNLFVBQVUsR0FBRyxLQUFLLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUN4QyxLQUFLLENBQUMsUUFBUSxHQUFHLFVBQVUsQ0FBQztnQkFDNUIsSUFBSSxVQUFVLEVBQUUsQ0FBQztvQkFDYixNQUFNLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQztnQkFDM0IsQ0FBQztZQUNMLENBQUMsQ0FBQyxDQUFDO1FBQ1AsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQ7O09BRUc7SUFDSyxjQUFjO1FBQ2xCLElBQUksQ0FBQyxJQUFJLEVBQUUsT0FBTyxDQUFDLENBQUMsTUFBVyxFQUFFLEVBQUU7WUFDL0IsTUFBTSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUM7WUFDeEIsQ0FBQyxNQUFNLENBQUMsUUFBUSxJQUFJLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLEtBQVUsRUFBRSxFQUFFO2dCQUMzQyxLQUFLLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQztZQUMzQixDQUFDLENBQUMsQ0FBQztRQUNQLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaW5qZWN0IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IE9wdGlvbnNTZXJ2aWNlIH0gZnJvbSBcIi4uLy4uL2VjLXNlcnZpY2VzXCI7XG5pbXBvcnQgeyBGaWx0ZXJFbGVtZW50LCBGaWx0ZXJUeXBlLCBJRmlsdGVyIH0gZnJvbSBcIi4uLy4uL2ludGVyZmFjZXNcIjtcbmltcG9ydCB7IEZpbHRlciB9IGZyb20gXCIuL2ZpbHRlclwiO1xuaW1wb3J0IHsgUGFyYW1zIH0gZnJvbSBcIkBhbmd1bGFyL3JvdXRlclwiO1xuXG4vKipcbiAqIEF0dHJpYnV0ZXNGaWx0ZXJcbiAqIC0gR2VzdGlvbmEgZWwgZmlsdHJvIGRlIGF0cmlidXRvcyAoZXN0cnVjdHVyYSBkZSBwYWRyZXMvY2hpbGRyZW4pLlxuICogLSBTb3BvcnRhIGhpZHJhdGFjacOzbiBkZXNkZSBxdWVyeSBwYXJhbXMgeSBhcGxpY2FjacOzbiBkZSBjw7NkaWdvcyBzZWxlY2Npb25hZG9zLlxuICovXG5leHBvcnQgY2xhc3MgQXR0cmlidXRlc0ZpbHRlciBleHRlbmRzIEZpbHRlciB7XG4gICAgcHJpdmF0ZSBfb3B0aW9uc1NlcnZpY2U6IE9wdGlvbnNTZXJ2aWNlID0gaW5qZWN0KE9wdGlvbnNTZXJ2aWNlKTtcblxuICAgIG92ZXJyaWRlIGRhdGE6IEZpbHRlckVsZW1lbnRbXSA9IFtdO1xuICAgIG92ZXJyaWRlIG11bHRpOiBib29sZWFuID0gZmFsc2U7XG5cbiAgICBwcml2YXRlIF9jb2Rlc0Zyb21RdWVyeTogc3RyaW5nW10gfCBudWxsID0gbnVsbDtcblxuICAgIGNvbnN0cnVjdG9yKGluaXRpYWxWYWx1ZT86IGFueSwgb3B0aW9ucz86IGFueSkge1xuICAgICAgICBzdXBlcigpO1xuICAgICAgICBpZiAob3B0aW9ucykge1xuICAgICAgICAgICAgdGhpcy5zZXRDb250ZW50KG9wdGlvbnMsIGluaXRpYWxWYWx1ZSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLl9vcHRpb25zU2VydmljZS5nZXRBdHRyaWJ1dGVzKCkuc3Vic2NyaWJlKFxuICAgICAgICAgICAgICAgIHJlcyA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2V0Q29udGVudChyZXMsIGluaXRpYWxWYWx1ZSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgKVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgb3ZlcnJpZGUgdHlwZSgpOiBGaWx0ZXJUeXBlIHsgcmV0dXJuICdhdHRyaWJ1dGVzJzsgfVxuXG4gICAgb3ZlcnJpZGUgc2V0Q29udGVudChvcHRpb25zOiBhbnksIGluaXRpYWxWYWx1ZT86IGFueSk6IHZvaWQge1xuICAgICAgICBjb25zdCBhdHRyaWJ1dGVzID0gdGhpcy5fb3B0aW9uc1NlcnZpY2UuZ2VuZXJhdGVNZW51KG9wdGlvbnMpO1xuICAgICAgICBhdHRyaWJ1dGVzLmZvckVhY2goKGZpbHRlcjogYW55KSA9PiBmaWx0ZXIgPSB0aGlzLmNyZWF0ZUVsZW1lbnQoZmlsdGVyLCBvcHRpb25zLCBpbml0aWFsVmFsdWUpKTtcbiAgICAgICAgdGhpcy5kYXRhID0gYXR0cmlidXRlcztcblxuICAgICAgICAvLyBTaSB5YSB0ZW7DrWFtb3MgY8OzZGlnb3MgZGUgbGEgVVJMIGd1YXJkYWRvcywgYXBsaWNhcmxvcyBhaG9yYVxuICAgICAgICBpZiAodGhpcy5fY29kZXNGcm9tUXVlcnkgJiYgdGhpcy5fY29kZXNGcm9tUXVlcnkubGVuZ3RoKSB7XG4gICAgICAgICAgICAvLyBBRERFRDogQXBsaWNhciBjw7NkaWdvcyBndWFyZGFkb3MgdHJhcyBjYXJnYXIgbGEgZGF0YS5cbiAgICAgICAgICAgIHRoaXMuYXBwbHlDb2Rlcyh0aGlzLl9jb2Rlc0Zyb21RdWVyeSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgb3ZlcnJpZGUgZ2V0Q29udGVudCgpOiBGaWx0ZXJFbGVtZW50W10ge1xuICAgICAgICByZXR1cm4gdGhpcy5kYXRhO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBBRERFRDogdG9VcmxQYXJhbXMgY29uc3RydXllIGxhIHBvcmNpw7NuIGRlIHF1ZXJ5IHN0cmluZyBxdWUgcmVwcmVzZW50YSBsYXMgc2VsZWNjaW9uZXMgZGUgYXRyaWJ1dG9zLlxuICAgICAqL1xuICAgIG92ZXJyaWRlIHRvVXJsUGFyYW1zKGFjdHVhbF91cmwgPSAnJmF0dHJpYnV0ZUNvZGVzPScsIHN1Ymxpc3Q/OiBhbnksIGFscmVhZHk/OiBhbnkpIHtcbiAgICAgICAgbGV0IGVsZW1lbnRzID0gc3VibGlzdCB8fCB0aGlzLmRhdGE7XG4gICAgICAgIGxldCBhdXhfdXJsID0gJyc7XG4gICAgICAgIGVsZW1lbnRzLmZvckVhY2goKGVsZW1lbnQ6IGFueSkgPT4ge1xuICAgICAgICAgICAgaWYgKGVsZW1lbnQudHlwZSA9PSAnc3ViJykge1xuICAgICAgICAgICAgICAgIGxldCByZXN1bHQgPSB0aGlzLnRvVXJsUGFyYW1zKCcnLCBlbGVtZW50LmNoaWxkcmVuLCAoYWN0dWFsX3VybCAhPSAnJmF0dHJpYnV0ZUNvZGVzPScgJiYgYWN0dWFsX3VybCAhPSAnJykpXG4gICAgICAgICAgICAgICAgaWYgKCFhY3R1YWxfdXJsLmluY2x1ZGVzKHJlc3VsdCkpIGFjdHVhbF91cmwgKz0gdGhpcy5jbGVhblJlc3VsdChyZXN1bHQpO1xuICAgICAgICAgICAgfSBlbHNlIGlmIChlbGVtZW50LnNlbGVjdGVkKSB7XG4gICAgICAgICAgICAgICAgaWYgKGFjdHVhbF91cmwgPT0gJyZhdHRyaWJ1dGVDb2Rlcz0nICYmIGF1eF91cmwgPT0gJycpIHtcbiAgICAgICAgICAgICAgICAgICAgYXV4X3VybCA9IGVsZW1lbnQuY29kZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChhdXhfdXJsID09ICcnKSBhdXhfdXJsID0gKGFscmVhZHkgPyAnPGFuZD4nIDogJycpICsgZWxlbWVudC5jb2RlO1xuICAgICAgICAgICAgICAgICAgICBlbHNlIGF1eF91cmwgKz0gKCc8YW5kPicgKyBlbGVtZW50LmNvZGUpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfSlcbiAgICAgICAgcmV0dXJuIGFjdHVhbF91cmwgKyBhdXhfdXJsO1xuICAgIH07XG5cbiAgICBjbGVhblJlc3VsdCh0ZXh0OiBzdHJpbmcpIHsgcmV0dXJuIHRleHQucmVwbGFjZSgnJmF0dHJpYnV0ZUNvZGVzPScsICcnKSB9O1xuXG4gICAgLyoqXG4gICAgICogQURERUQ6IGNyZWF0ZUVsZW1lbnQgdHJhbnNmb3JtYSBjYWRhIG5vZG8gb3JpZ2luYWwgZW4gRmlsdGVyRWxlbWVudCB5IG1hcmNhIHNlbGVjY2nDs24gaW5pY2lhbCBzaSBjb3JyZXNwb25kZS5cbiAgICAgKi9cbiAgICBvdmVycmlkZSBjcmVhdGVFbGVtZW50KGZpbHRlcjogYW55LCBvcmlnaW5hbDogYW55LCBpbml0aWFsVmFsdWU/OiBhbnkpIHtcbiAgICAgICAgaWYgKGZpbHRlci50eXBlID09ICdzdWInKSB7XG4gICAgICAgICAgICBmaWx0ZXIubXVsdGkgPSBmYWxzZTtcbiAgICAgICAgICAgIGZpbHRlci5zaGFwZSA9ICd0ZXh0JztcbiAgICAgICAgICAgIGZpbHRlci52YWx1ZSA9IG9yaWdpbmFsLmNvZGU7XG4gICAgICAgICAgICBmaWx0ZXIuY2hpbGRyZW4gPSBmaWx0ZXIuY2hpbGRyZW4ubWFwKChjaGlsZDogYW55LCBpOiBudW1iZXIpID0+IHtcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5jcmVhdGVFbGVtZW50KGNoaWxkLCBjaGlsZC5jaGlsZHJlbiwgaW5pdGlhbFZhbHVlKVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBmaWx0ZXIudmFsdWUgPSBvcmlnaW5hbC5jb2RlO1xuICAgICAgICAgICAgZmlsdGVyLm11bHRpID0gZmFsc2U7XG4gICAgICAgICAgICBmaWx0ZXIuc2VsZWN0ZWQgPSAoXG4gICAgICAgICAgICAgICAgaW5pdGlhbFZhbHVlICYmXG4gICAgICAgICAgICAgICAgdGhpcy5yZW1vdmVBY2NlbnRzKG9yaWdpbmFsLnNsdWc/LnRvTG93ZXJDYXNlKCkpID09PSB0aGlzLnJlbW92ZUFjY2VudHMoaW5pdGlhbFZhbHVlPy50b0xvd2VyQ2FzZSgpKVxuICAgICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gZmlsdGVyO1xuICAgIH1cblxuICAgIC8qKiBoaWRyYXRhciBkZXNkZSBsYSBVUkwgKi9cbiAgICBoeWRyYXRlRnJvbVF1ZXJ5KHBhcmFtczogUGFyYW1zKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHJhdyA9IHBhcmFtc1snYXR0cmlidXRlQ29kZXMnXTtcblxuICAgICAgICBpZiAoIXJhdykge1xuICAgICAgICAgICAgLy8gbmFkYSBlbiBsYSBVUkwg4oaSIGxpbXBpw7MgZmlsdHJvXG4gICAgICAgICAgICB0aGlzLl9jb2Rlc0Zyb21RdWVyeSA9IG51bGw7XG4gICAgICAgICAgICB0aGlzLmNsZWFyU2VsZWN0aW9uKCk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBjb2RlcyA9IFN0cmluZyhyYXcpXG4gICAgICAgICAgICAuc3BsaXQoJzxhbmQ+JylcbiAgICAgICAgICAgIC5tYXAoYyA9PiBjLnRyaW0oKSlcbiAgICAgICAgICAgIC5maWx0ZXIoQm9vbGVhbik7XG5cbiAgICAgICAgaWYgKCFjb2Rlcy5sZW5ndGgpIHtcbiAgICAgICAgICAgIHRoaXMuX2NvZGVzRnJvbVF1ZXJ5ID0gbnVsbDtcbiAgICAgICAgICAgIHRoaXMuY2xlYXJTZWxlY3Rpb24oKTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuX2NvZGVzRnJvbVF1ZXJ5ID0gY29kZXM7XG5cbiAgICAgICAgLy8gU2kgeWEgdGVuZ28gZGF0YSBjYXJnYWRhLCBhcGxpY28gYWhvcmE7XG4gICAgICAgIC8vIHNpIG5vLCBzZSBhcGxpY2Fyw6EgZW4gc2V0Q29udGVudCgpLlxuICAgICAgICBpZiAodGhpcy5kYXRhICYmIHRoaXMuZGF0YS5sZW5ndGgpIHtcbiAgICAgICAgICAgIC8vIEFEREVEOiBBcGxpY2FyIGPDs2RpZ29zIGlubWVkaWF0YW1lbnRlIHBvcnF1ZSBsYSBkYXRhIHlhIGVzdMOhIGRpc3BvbmlibGUuXG4gICAgICAgICAgICB0aGlzLmFwcGx5Q29kZXMoY29kZXMpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQURERUQ6IGFwcGx5Q29kZXMgcmVjb3JyZSBsYSBlc3RydWN0dXJhIHkgbWFyY2Egc2VsZWN0ZWQ9dHJ1ZSBlbiBsb3MgY2hpbGRyZW4gY3V5byBjw7NkaWdvIGVzdMOhIGVuICdjb2RlcycuXG4gICAgICogQWRlbcOhcyBtYXJjYSBlbCBwYXJlbnQgY29tbyBzZWxlY2Npb25hZG8gc2kgYWxndW5vIGRlIHN1cyBoaWpvcyBsbyBlc3TDoS5cbiAgICAgKi9cbiAgICBwcml2YXRlIGFwcGx5Q29kZXMoY29kZXM6IHN0cmluZ1tdKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZGF0YT8uZm9yRWFjaCgocGFyZW50OiBhbnkpID0+IHtcbiAgICAgICAgICAgIHBhcmVudC5zZWxlY3RlZCA9IGZhbHNlO1xuICAgICAgICAgICAgKHBhcmVudC5jaGlsZHJlbiB8fCBbXSkuZm9yRWFjaCgoY2hpbGQ6IGFueSkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IGNvZGUgPSBjaGlsZC5jb2RlIHx8IGNoaWxkLnZhbHVlO1xuICAgICAgICAgICAgICAgIGNvbnN0IGlzU2VsZWN0ZWQgPSBjb2Rlcy5pbmNsdWRlcyhjb2RlKTtcbiAgICAgICAgICAgICAgICBjaGlsZC5zZWxlY3RlZCA9IGlzU2VsZWN0ZWQ7XG4gICAgICAgICAgICAgICAgaWYgKGlzU2VsZWN0ZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgcGFyZW50LnNlbGVjdGVkID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQURERUQ6IGNsZWFyU2VsZWN0aW9uIGRlc21hcmNhIHRvZG9zIGxvcyBwYXJlbnRzIHkgY2hpbGRyZW4gKHJlc3RhYmxlY2UgZWwgZmlsdHJvKS5cbiAgICAgKi9cbiAgICBwcml2YXRlIGNsZWFyU2VsZWN0aW9uKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmRhdGE/LmZvckVhY2goKHBhcmVudDogYW55KSA9PiB7XG4gICAgICAgICAgICBwYXJlbnQuc2VsZWN0ZWQgPSBmYWxzZTtcbiAgICAgICAgICAgIChwYXJlbnQuY2hpbGRyZW4gfHwgW10pLmZvckVhY2goKGNoaWxkOiBhbnkpID0+IHtcbiAgICAgICAgICAgICAgICBjaGlsZC5zZWxlY3RlZCA9IGZhbHNlO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0pO1xuICAgIH1cbn1cbiJdfQ==
|
|
73
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXR0cmlidXRlcy1maWx0ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1lYXN5Y29tbWVyY2UtdjE4L3NyYy9saWIvY2xhc3Nlcy9maWx0ZXJzL2F0dHJpYnV0ZXMtZmlsdGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkMsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRW5ELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFFbEMsTUFBTSxPQUFPLGdCQUFpQixTQUFRLE1BQU07SUFDaEMsZUFBZSxHQUFtQixNQUFNLENBQUMsY0FBYyxDQUFDLENBQUM7SUFFeEQsSUFBSSxHQUFvQixFQUFFLENBQUM7SUFDM0IsS0FBSyxHQUFZLEtBQUssQ0FBQztJQUVoQyxZQUFZLFlBQWtCLEVBQUUsT0FBWTtRQUN4QyxLQUFLLEVBQUUsQ0FBQztRQUNSLElBQUcsT0FBTyxFQUFDLENBQUM7WUFDUixJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sRUFBRSxZQUFZLENBQUMsQ0FBQztRQUMzQyxDQUFDO2FBQUksQ0FBQztZQUNGLElBQUksQ0FBQyxlQUFlLENBQUMsYUFBYSxFQUFFLENBQUMsU0FBUyxDQUMxQyxHQUFHLENBQUMsRUFBRTtnQkFDRixtQkFBbUI7Z0JBQ25CLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxFQUFFLFlBQVksQ0FBQyxDQUFDO1lBQ3ZDLENBQUMsQ0FDSixDQUFBO1FBQ0wsQ0FBQztJQUNMLENBQUM7SUFFUSxJQUFJLEtBQWlCLE9BQU8sWUFBWSxDQUFDLENBQUMsQ0FBQztJQUUzQyxVQUFVLENBQUMsT0FBWSxFQUFFLFlBQWtCO1FBQ2hELE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQzlE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QUMsSUFBSSxJQUFJLENBQUMsYUFBYSxDQUFDLFlBQVksRUFBRSxXQUFXLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDNUksQ0FBQztRQUNELE9BQU8sTUFBTSxDQUFDO0lBQ2xCLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGluamVjdCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBPcHRpb25zU2VydmljZSB9IGZyb20gXCIuLi8uLi9lYy1zZXJ2aWNlc1wiO1xuaW1wb3J0IHsgRmlsdGVyRWxlbWVudCwgRmlsdGVyVHlwZSwgSUZpbHRlciB9IGZyb20gXCIuLi8uLi9pbnRlcmZhY2VzXCI7XG5pbXBvcnQgeyBGaWx0ZXIgfSBmcm9tIFwiLi9maWx0ZXJcIjtcblxuZXhwb3J0IGNsYXNzIEF0dHJpYnV0ZXNGaWx0ZXIgZXh0ZW5kcyBGaWx0ZXIge1xuICAgIHByaXZhdGUgX29wdGlvbnNTZXJ2aWNlOiBPcHRpb25zU2VydmljZSA9IGluamVjdChPcHRpb25zU2VydmljZSk7XG5cbiAgICBvdmVycmlkZSBkYXRhOiBGaWx0ZXJFbGVtZW50W10gPSBbXTtcbiAgICBvdmVycmlkZSBtdWx0aTogYm9vbGVhbiA9IGZhbHNlO1xuXG4gICAgY29uc3RydWN0b3IoaW5pdGlhbFZhbHVlPzogYW55LCBvcHRpb25zPzphbnkpIHtcbiAgICAgICAgc3VwZXIoKTtcbiAgICAgICAgaWYob3B0aW9ucyl7XG4gICAgICAgICAgICB0aGlzLnNldENvbnRlbnQob3B0aW9ucywgaW5pdGlhbFZhbHVlKTsgXG4gICAgICAgIH1lbHNle1xuICAgICAgICAgICAgdGhpcy5fb3B0aW9uc1NlcnZpY2UuZ2V0QXR0cmlidXRlcygpLnN1YnNjcmliZShcbiAgICAgICAgICAgICAgICByZXMgPT4ge1xuICAgICAgICAgICAgICAgICAgICAvL2NvbnNvbGUubG9nKHJlcyk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2V0Q29udGVudChyZXMsIGluaXRpYWxWYWx1ZSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgKVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgb3ZlcnJpZGUgdHlwZSgpOiBGaWx0ZXJUeXBlIHsgcmV0dXJuICdhdHRyaWJ1dGVzJzsgfVxuXG4gICAgb3ZlcnJpZGUgc2V0Q29udGVudChvcHRpb25zOiBhbnksIGluaXRpYWxWYWx1ZT86IGFueSk6IHZvaWQge1xuICAgICAgICBjb25zdCBhdHRyaWJ1dGVzID0gdGhpcy5fb3B0aW9uc1NlcnZpY2UuZ2VuZXJhdGVNZW51KG9wdGlvbnMpO1xuICAgICAgICBhdHRyaWJ1dGVzLmZvckVhY2goKGZpbHRlcjogYW55KSA9PiBmaWx0ZXIgPSB0aGlzLmNyZWF0ZUVsZW1lbnQoZmlsdGVyLCBvcHRpb25zLCBpbml0aWFsVmFsdWUpKTtcbiAgICAgICAgdGhpcy5kYXRhID0gYXR0cmlidXRlcztcbiAgICB9XG4gICAgb3ZlcnJpZGUgZ2V0Q29udGVudCgpOiBGaWx0ZXJFbGVtZW50W10ge1xuICAgICAgICByZXR1cm4gdGhpcy5kYXRhO1xuICAgIH1cbiAgICBvdmVycmlkZSB0b1VybFBhcmFtcyhhY3R1YWxfdXJsID0gJyZhdHRyaWJ1dGVDb2Rlcz0nLCBzdWJsaXN0PzphbnksIGFscmVhZHk/OmFueSkge1xuICAgICAgICBsZXQgZWxlbWVudHMgPSBzdWJsaXN0IHx8IHRoaXMuZGF0YTtcbiAgICAgICAgbGV0IGF1eF91cmwgPSAnJztcbiAgICAgICAgZWxlbWVudHMuZm9yRWFjaCgoZWxlbWVudDogYW55KSA9PiB7XG4gICAgICAgICAgICBpZiAoZWxlbWVudC50eXBlID09ICdzdWInKSB7XG4gICAgICAgICAgICAgICAgbGV0IHJlc3VsdCA9IHRoaXMudG9VcmxQYXJhbXMoJycsIGVsZW1lbnQuY2hpbGRyZW4sIChhY3R1YWxfdXJsICE9ICcmYXR0cmlidXRlQ29kZXM9JyAmJiBhY3R1YWxfdXJsICE9ICcnKSlcbiAgICAgICAgICAgICAgICBpZiAoIWFjdHVhbF91cmwuaW5jbHVkZXMocmVzdWx0KSkgYWN0dWFsX3VybCArPSB0aGlzLmNsZWFuUmVzdWx0KHJlc3VsdCk7XG4gICAgICAgICAgICB9IGVsc2UgaWYgKGVsZW1lbnQuc2VsZWN0ZWQpIHtcbiAgICAgICAgICAgICAgICBpZiAoYWN0dWFsX3VybCA9PSAnJmF0dHJpYnV0ZUNvZGVzPScgJiYgYXV4X3VybCA9PSAnJykge1xuICAgICAgICAgICAgICAgICAgICBhdXhfdXJsID0gZWxlbWVudC5jb2RlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGF1eF91cmwgPT0gJycpIGF1eF91cmwgPSAoYWxyZWFkeSA/ICc8YW5kPicgOiAnJykgKyBlbGVtZW50LmNvZGU7XG4gICAgICAgICAgICAgICAgICAgIGVsc2UgYXV4X3VybCArPSAoJzxhbmQ+JyArIGVsZW1lbnQuY29kZSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9KVxuICAgICAgICAvL2NvbnNvbGUubG9nKGFjdHVhbF91cmwgKyBhdXhfdXJsKTtcbiAgICAgICAgcmV0dXJuIGFjdHVhbF91cmwgKyBhdXhfdXJsO1xuICAgIH07XG5cbiAgICBjbGVhblJlc3VsdCh0ZXh0OiBzdHJpbmcpIHsgcmV0dXJuIHRleHQucmVwbGFjZSgnJmF0dHJpYnV0ZUNvZGVzPScsICcnKSB9O1xuXG4gICAgb3ZlcnJpZGUgY3JlYXRlRWxlbWVudChmaWx0ZXI6IGFueSwgb3JpZ2luYWw6IGFueSwgaW5pdGlhbFZhbHVlPzogYW55KSB7XG4gICAgICAgIGlmIChmaWx0ZXIudHlwZSA9PSAnc3ViJykge1xuICAgICAgICAgICAgZmlsdGVyLm11bHRpID0gZmFsc2U7XG4gICAgICAgICAgICBmaWx0ZXIuc2hhcGUgPSAndGV4dCc7XG4gICAgICAgICAgICBmaWx0ZXIudmFsdWUgPSBvcmlnaW5hbC5jb2RlO1xuICAgICAgICAgICAgZmlsdGVyLmNoaWxkcmVuID0gZmlsdGVyLmNoaWxkcmVuLm1hcCgoY2hpbGQ6IGFueSwgaTogbnVtYmVyKSA9PntcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5jcmVhdGVFbGVtZW50KGNoaWxkLCBjaGlsZC5jaGlsZHJlbiwgaW5pdGlhbFZhbHVlKVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBmaWx0ZXIudmFsdWUgPSBvcmlnaW5hbC5jb2RlO1xuICAgICAgICAgICAgZmlsdGVyLm11bHRpID0gZmFsc2U7XG4gICAgICAgICAgICBmaWx0ZXIuc2VsZWN0ZWQgPSAoaW5pdGlhbFZhbHVlICYmIHRoaXMucmVtb3ZlQWNjZW50cyhvcmlnaW5hbC5zbHVnPy50b0xvd2VyQ2FzZSgpKSA9PSB0aGlzLnJlbW92ZUFjY2VudHMoaW5pdGlhbFZhbHVlPy50b0xvd2VyQ2FzZSgpKSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGZpbHRlcjtcbiAgICB9XG59XG4iXX0=
|
|
@@ -1,24 +1,17 @@
|
|
|
1
1
|
import { inject } from "@angular/core";
|
|
2
|
-
import {
|
|
2
|
+
import { OptionsService } from "../../ec-services";
|
|
3
3
|
import { Filter } from "./filter";
|
|
4
|
-
/**
|
|
5
|
-
* CategoryFilter
|
|
6
|
-
* - Gestiona el filtro de categorías.
|
|
7
|
-
* - Mantiene la estructura de categorías (parents/children) y permite:
|
|
8
|
-
* * Inicializar desde OptionsService.
|
|
9
|
-
* * Marcar elementos según slug o query param.
|
|
10
|
-
* * Generar porción de query string (&category=...).
|
|
11
|
-
*/
|
|
12
4
|
export class CategoryFilter extends Filter {
|
|
5
|
+
initialValues;
|
|
13
6
|
_optionsService = inject(OptionsService);
|
|
14
|
-
_filtersService = inject(FiltersService);
|
|
15
7
|
data = [];
|
|
16
8
|
multi = false;
|
|
17
|
-
constructor(
|
|
9
|
+
constructor(initialValues) {
|
|
18
10
|
super();
|
|
11
|
+
this.initialValues = initialValues;
|
|
19
12
|
this._optionsService.getCategories().subscribe(res => {
|
|
20
|
-
|
|
21
|
-
this.
|
|
13
|
+
//console.log(res);
|
|
14
|
+
this.setContent(res, initialValues);
|
|
22
15
|
});
|
|
23
16
|
}
|
|
24
17
|
type() {
|
|
@@ -30,109 +23,37 @@ export class CategoryFilter extends Filter {
|
|
|
30
23
|
this.data = categories;
|
|
31
24
|
}
|
|
32
25
|
getContent() {
|
|
33
|
-
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
});
|
|
51
|
-
};
|
|
52
|
-
walk(this.data);
|
|
53
|
-
if (selectedCodes.length > 0) {
|
|
54
|
-
return `&category=${encodeURIComponent(selectedCodes[0])}`;
|
|
55
|
-
}
|
|
56
|
-
return '';
|
|
26
|
+
throw new Error("Method not implemented.");
|
|
27
|
+
}
|
|
28
|
+
toUrlParams(actual_url = '', sublist) {
|
|
29
|
+
let elements = sublist || this.data;
|
|
30
|
+
elements.forEach((element) => {
|
|
31
|
+
if (element.type == 'sub' && !element.selected) {
|
|
32
|
+
const result = this.toUrlParams('', element.children);
|
|
33
|
+
!actual_url.includes(result) ? actual_url += result : null;
|
|
34
|
+
}
|
|
35
|
+
else if (element.selected) {
|
|
36
|
+
if (actual_url == '')
|
|
37
|
+
actual_url = '&category=' + element.value;
|
|
38
|
+
else
|
|
39
|
+
actual_url = element.value;
|
|
40
|
+
}
|
|
41
|
+
});
|
|
42
|
+
return actual_url;
|
|
57
43
|
}
|
|
58
44
|
createElement(filter, original, initialValue) {
|
|
59
45
|
if (filter.type == 'sub') {
|
|
60
46
|
filter.multi = false;
|
|
61
47
|
filter.shape = 'text';
|
|
62
48
|
filter.value = original.code;
|
|
63
|
-
filter.selected = (initialValue &&
|
|
64
|
-
this.removeAccents(original.slug?.toLowerCase()) ===
|
|
65
|
-
this.removeAccents(String(initialValue).toLowerCase()));
|
|
49
|
+
filter.selected = (initialValue && this.removeAccents(original.slug?.toLowerCase()) == this.removeAccents(initialValue?.toLowerCase()));
|
|
66
50
|
filter.children = filter.children.map((child, i) => this.createElement(child, original.children[i], initialValue));
|
|
67
51
|
}
|
|
68
52
|
else {
|
|
69
53
|
filter.value = original.code;
|
|
70
|
-
filter.selected = (initialValue &&
|
|
71
|
-
this.removeAccents(original.slug?.toLowerCase()) ===
|
|
72
|
-
this.removeAccents(String(initialValue).toLowerCase()));
|
|
54
|
+
filter.selected = (initialValue && this.removeAccents(original.slug?.toLowerCase()) == this.removeAccents(initialValue?.toLowerCase()));
|
|
73
55
|
}
|
|
74
56
|
return filter;
|
|
75
57
|
}
|
|
76
|
-
/**
|
|
77
|
-
* setFromSlug
|
|
78
|
-
* - Marca como selected los nodos cuyo slug/path/name coincide con el slug proporcionado.
|
|
79
|
-
* - Utiliza removeAccents para comparar sin tildes y en minúsculas.
|
|
80
|
-
* - No retorna valor, solo modifica this.data.
|
|
81
|
-
*/
|
|
82
|
-
setFromSlug(slug) {
|
|
83
|
-
const target = this.removeAccents(String(slug).toLowerCase());
|
|
84
|
-
const walk = (nodes) => {
|
|
85
|
-
nodes.forEach(n => {
|
|
86
|
-
// ADDED: iniciar sin selección explícita (asegura estado consistente)
|
|
87
|
-
n.selected = false;
|
|
88
|
-
const candidates = [
|
|
89
|
-
n.slug,
|
|
90
|
-
n.path && String(n.path).split('/').filter(Boolean).pop(),
|
|
91
|
-
n.name
|
|
92
|
-
]
|
|
93
|
-
.filter(Boolean)
|
|
94
|
-
.map((s) => this.removeAccents(s.toLowerCase()));
|
|
95
|
-
if (candidates.includes(target)) {
|
|
96
|
-
n.selected = true;
|
|
97
|
-
}
|
|
98
|
-
if (Array.isArray(n.children) && n.children.length) {
|
|
99
|
-
walk(n.children);
|
|
100
|
-
}
|
|
101
|
-
});
|
|
102
|
-
};
|
|
103
|
-
walk(this.data);
|
|
104
|
-
}
|
|
105
|
-
/**
|
|
106
|
-
* hydrateFromQuery
|
|
107
|
-
* - Marca la categoría según el parámetro de query 'category' si existe.
|
|
108
|
-
* - Busca el code exacto en la estructura y marca el nodo correspondiente.
|
|
109
|
-
* - Loggea si se encontró o no la categoría.
|
|
110
|
-
*/
|
|
111
|
-
hydrateFromQuery(query) {
|
|
112
|
-
const raw = query?.['category'];
|
|
113
|
-
if (!raw)
|
|
114
|
-
return;
|
|
115
|
-
const code = String(raw).trim();
|
|
116
|
-
if (!code)
|
|
117
|
-
return;
|
|
118
|
-
const mark = (nodes) => {
|
|
119
|
-
let found = false;
|
|
120
|
-
nodes.forEach(n => {
|
|
121
|
-
if (n.code === code) {
|
|
122
|
-
n.selected = true;
|
|
123
|
-
found = true;
|
|
124
|
-
}
|
|
125
|
-
else {
|
|
126
|
-
n.selected = false;
|
|
127
|
-
}
|
|
128
|
-
if (Array.isArray(n.children) && n.children.length) {
|
|
129
|
-
if (mark(n.children))
|
|
130
|
-
found = true;
|
|
131
|
-
}
|
|
132
|
-
});
|
|
133
|
-
return found;
|
|
134
|
-
};
|
|
135
|
-
const ok = mark(this.data);
|
|
136
|
-
}
|
|
137
58
|
}
|
|
138
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F0ZWdvcnktZmlsdGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctZWFzeWNvbW1lcmNlLXYxOC9zcmMvbGliL2NsYXNzZXMvZmlsdGVycy9jYXRlZ29yeS1maWx0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2QyxPQUFPLEVBQUUsY0FBYyxFQUFFLGNBQWMsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRW5FLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFFbEM7Ozs7Ozs7R0FPRztBQUNILE1BQU0sT0FBTyxjQUFlLFNBQVEsTUFBTTtJQUM5QixlQUFlLEdBQW1CLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUN6RCxlQUFlLEdBQW1CLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUV4RCxJQUFJLEdBQW9CLEVBQUUsQ0FBQztJQUMzQixLQUFLLEdBQVksS0FBSyxDQUFDO0lBRWhDLFlBQVksWUFBa0I7UUFDMUIsS0FBSyxFQUFFLENBQUM7UUFFUixJQUFJLENBQUMsZUFBZSxDQUFDLGFBQWEsRUFBRSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRTtZQUNqRCxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsRUFBRSxZQUFZLENBQUMsQ0FBQztZQUNuQyxJQUFJLENBQUMsZUFBZSxDQUFDLGNBQWMsRUFBRSxDQUFBO1FBQ3pDLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVRLElBQUk7UUFDVCxPQUFPLFlBQVksQ0FBQztJQUN4QixDQUFDO0lBRVEsVUFBVSxDQUFDLE9BQVksRUFBRSxZQUFrQjtRQUNoRCxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUM5RCxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUMsTUFB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LElBQUksR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDaEMsSUFBSSxDQUFDLElBQUk7WUFBRSxPQUFPO1FBRWxCLE1BQU0sSUFBSSxHQUFHLENBQUMsS0FBWSxFQUFXLEVBQUU7WUFDbkMsSUFBSSxLQUFLLEdBQUcsS0FBSyxDQUFDO1lBQ2xCLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUU7Z0JBQ2QsSUFBSSxDQUFDLENBQUMsSUFBSSxLQUFLLElBQUksRUFBRSxDQUFDO29CQUNsQixDQUFDLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQztvQkFDbEIsS0FBSyxHQUFHLElBQUksQ0FBQztnQkFDakIsQ0FBQztxQkFBTSxDQUFDO29CQUNKLENBQUMsQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDO2dCQUN2QixDQUFDO2dCQUNELElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLFFBQVEsQ0FBQyxNQUFNLEVBQUUsQ0FBQztvQkFDakQsSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQzt3QkFBRSxLQUFLLEdBQUcsSUFBSSxDQUFDO2dCQUN2QyxDQUFDO1lBQ0wsQ0FBQyxDQUFDLENBQUM7WUFDSCxPQUFPLEtBQUssQ0FBQztRQUNqQixDQUFDLENBQUM7UUFFRixNQUFNLEVBQUUsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQy9CLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGluamVjdCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBGaWx0ZXJzU2VydmljZSwgT3B0aW9uc1NlcnZpY2UgfSBmcm9tIFwiLi4vLi4vZWMtc2VydmljZXNcIjtcbmltcG9ydCB7IEZpbHRlckVsZW1lbnQsIEZpbHRlclR5cGUgfSBmcm9tIFwiLi4vLi4vaW50ZXJmYWNlc1wiO1xuaW1wb3J0IHsgRmlsdGVyIH0gZnJvbSBcIi4vZmlsdGVyXCI7XG5cbi8qKlxuICogQ2F0ZWdvcnlGaWx0ZXJcbiAqIC0gR2VzdGlvbmEgZWwgZmlsdHJvIGRlIGNhdGVnb3LDrWFzLlxuICogLSBNYW50aWVuZSBsYSBlc3RydWN0dXJhIGRlIGNhdGVnb3LDrWFzIChwYXJlbnRzL2NoaWxkcmVuKSB5IHBlcm1pdGU6XG4gKiAgICogSW5pY2lhbGl6YXIgZGVzZGUgT3B0aW9uc1NlcnZpY2UuXG4gKiAgICogTWFyY2FyIGVsZW1lbnRvcyBzZWfDum4gc2x1ZyBvIHF1ZXJ5IHBhcmFtLlxuICogICAqIEdlbmVyYXIgcG9yY2nDs24gZGUgcXVlcnkgc3RyaW5nICgmY2F0ZWdvcnk9Li4uKS5cbiAqL1xuZXhwb3J0IGNsYXNzIENhdGVnb3J5RmlsdGVyIGV4dGVuZHMgRmlsdGVyIHtcbiAgICBwcml2YXRlIF9vcHRpb25zU2VydmljZTogT3B0aW9uc1NlcnZpY2UgPSBpbmplY3QoT3B0aW9uc1NlcnZpY2UpO1xuICAgIHByaXZhdGUgX2ZpbHRlcnNTZXJ2aWNlOiBGaWx0ZXJzU2VydmljZSA9IGluamVjdChGaWx0ZXJzU2VydmljZSk7XG5cbiAgICBvdmVycmlkZSBkYXRhOiBGaWx0ZXJFbGVtZW50W10gPSBbXTtcbiAgICBvdmVycmlkZSBtdWx0aTogYm9vbGVhbiA9IGZhbHNlO1xuXG4gICAgY29uc3RydWN0b3IoaW5pdGlhbFZhbHVlPzogYW55KSB7XG4gICAgICAgIHN1cGVyKCk7XG5cbiAgICAgICAgdGhpcy5fb3B0aW9uc1NlcnZpY2UuZ2V0Q2F0ZWdvcmllcygpLnN1YnNjcmliZShyZXMgPT4ge1xuICAgICAgICAgICAgdGhpcy5zZXRDb250ZW50KHJlcywgaW5pdGlhbFZhbHVlKTtcbiAgICAgICAgICAgIHRoaXMuX2ZpbHRlcnNTZXJ2aWNlLnJlZnJlc2hGaWx0ZXJzKClcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgb3ZlcnJpZGUgdHlwZSgpOiBGaWx0ZXJUeXBlIHtcbiAgICAgICAgcmV0dXJuICdjYXRlZ29yaWVzJztcbiAgICB9XG5cbiAgICBvdmVycmlkZSBzZXRDb250ZW50KG9wdGlvbnM6IGFueSwgaW5pdGlhbFZhbHVlPzogYW55KTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGNhdGVnb3JpZXMgPSB0aGlzLl9vcHRpb25zU2VydmljZS5nZW5lcmF0ZU1lbnUob3B0aW9ucyk7XG4gICAgICAgIGNhdGVnb3JpZXMuZm9yRWFjaCgoZmlsdGVyOiBhbnksIGk6IG51bWJlcikgPT5cbiAgICAgICAgICAgIGZpbHRlciA9IHRoaXMuY3JlYXRlRWxlbWVudChmaWx0ZXIsIG9wdGlvbnNbaV0sIGluaXRpYWxWYWx1ZSlcbiAgICAgICAgKTtcbiAgICAgICAgdGhpcy5kYXRhID0gY2F0ZWdvcmllcztcbiAgICB9XG5cbiAgICBvdmVycmlkZSBnZXRDb250ZW50KCk6IEZpbHRlckVsZW1lbnRbXSB7XG4gICAgICAgIHJldHVybiB0aGlzLmRhdGE7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogdG9VcmxQYXJhbXNcbiAgICAgKiAtIFJlY29ycmUgbGEgZXN0cnVjdHVyYSB5IGRldnVlbHZlIGxhIHBvcmNpw7NuIGRlIHF1ZXJ5IHN0cmluZyBwYXJhIGxhIGNhdGVnb3LDrWEgc2VsZWNjaW9uYWRhLlxuICAgICAqIC0gUHJpb3JpemEgZWwgcHJpbWVyIHNlbGVjdGVkIGVuY29udHJhZG8gKHNvbG8gdW5hIGNhdGVnb3LDrWEgc2UgZW52w61hKS5cbiAgICAgKi9cbiAgICBvdmVycmlkZSB0b1VybFBhcmFtcygpOiBzdHJpbmcge1xuICAgICAgICBjb25zdCBzZWxlY3RlZENvZGVzOiBzdHJpbmdbXSA9IFtdO1xuXG4gICAgICAgIGNvbnN0IHdhbGsgPSAobm9kZXM6IGFueVtdKSA9PiB7XG4gICAgICAgICAgICBub2Rlcy5mb3JFYWNoKG4gPT4ge1xuICAgICAgICAgICAgICAgIGlmIChuLnNlbGVjdGVkKSB7XG4gICAgICAgICAgICAgICAgICAgIHNlbGVjdGVkQ29kZXMucHVzaChuLmNvZGUgfHwgbi52YWx1ZSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KG4uY2hpbGRyZW4pICYmIG4uY2hpbGRyZW4ubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgICAgIHdhbGsobi5jaGlsZHJlbik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH07XG5cbiAgICAgICAgd2Fsayh0aGlzLmRhdGEpO1xuXG4gICAgICAgIGlmIChzZWxlY3RlZENvZGVzLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgIHJldHVybiBgJmNhdGVnb3J5PSR7ZW5jb2RlVVJJQ29tcG9uZW50KHNlbGVjdGVkQ29kZXNbMF0pfWA7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gJyc7XG4gICAgfVxuXG4gICAgb3ZlcnJpZGUgY3JlYXRlRWxlbWVudChmaWx0ZXI6IGFueSwgb3JpZ2luYWw6IGFueSwgaW5pdGlhbFZhbHVlPzogYW55KSB7XG4gICAgICAgIGlmIChmaWx0ZXIudHlwZSA9PSAnc3ViJykge1xuICAgICAgICAgICAgZmlsdGVyLm11bHRpID0gZmFsc2U7XG4gICAgICAgICAgICBmaWx0ZXIuc2hhcGUgPSAndGV4dCc7XG4gICAgICAgICAgICBmaWx0ZXIudmFsdWUgPSBvcmlnaW5hbC5jb2RlO1xuICAgICAgICAgICAgZmlsdGVyLnNlbGVjdGVkID0gKFxuICAgICAgICAgICAgICAgIGluaXRpYWxWYWx1ZSAmJlxuICAgICAgICAgICAgICAgIHRoaXMucmVtb3ZlQWNjZW50cyhvcmlnaW5hbC5zbHVnPy50b0xvd2VyQ2FzZSgpKSA9PT1cbiAgICAgICAgICAgICAgICB0aGlzLnJlbW92ZUFjY2VudHMoU3RyaW5nKGluaXRpYWxWYWx1ZSkudG9Mb3dlckNhc2UoKSlcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICBmaWx0ZXIuY2hpbGRyZW4gPSBmaWx0ZXIuY2hpbGRyZW4ubWFwKFxuICAgICAgICAgICAgICAgIChjaGlsZDogYW55LCBpOiBudW1iZXIpID0+IHRoaXMuY3JlYXRlRWxlbWVudChjaGlsZCwgb3JpZ2luYWwuY2hpbGRyZW5baV0sIGluaXRpYWxWYWx1ZSlcbiAgICAgICAgICAgICk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBmaWx0ZXIudmFsdWUgPSBvcmlnaW5hbC5jb2RlO1xuICAgICAgICAgICAgZmlsdGVyLnNlbGVjdGVkID0gKFxuICAgICAgICAgICAgICAgIGluaXRpYWxWYWx1ZSAmJlxuICAgICAgICAgICAgICAgIHRoaXMucmVtb3ZlQWNjZW50cyhvcmlnaW5hbC5zbHVnPy50b0xvd2VyQ2FzZSgpKSA9PT1cbiAgICAgICAgICAgICAgICB0aGlzLnJlbW92ZUFjY2VudHMoU3RyaW5nKGluaXRpYWxWYWx1ZSkudG9Mb3dlckNhc2UoKSlcbiAgICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGZpbHRlcjtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBzZXRGcm9tU2x1Z1xuICAgICAqIC0gTWFyY2EgY29tbyBzZWxlY3RlZCBsb3Mgbm9kb3MgY3V5byBzbHVnL3BhdGgvbmFtZSBjb2luY2lkZSBjb24gZWwgc2x1ZyBwcm9wb3JjaW9uYWRvLlxuICAgICAqIC0gVXRpbGl6YSByZW1vdmVBY2NlbnRzIHBhcmEgY29tcGFyYXIgc2luIHRpbGRlcyB5IGVuIG1pbsO6c2N1bGFzLlxuICAgICAqIC0gTm8gcmV0b3JuYSB2YWxvciwgc29sbyBtb2RpZmljYSB0aGlzLmRhdGEuXG4gICAgICovXG4gICAgc2V0RnJvbVNsdWcoc2x1Zzogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHRhcmdldCA9IHRoaXMucmVtb3ZlQWNjZW50cyhTdHJpbmcoc2x1ZykudG9Mb3dlckNhc2UoKSk7XG5cbiAgICAgICAgY29uc3Qgd2FsayA9IChub2RlczogYW55W10pID0+IHtcbiAgICAgICAgICAgIG5vZGVzLmZvckVhY2gobiA9PiB7XG4gICAgICAgICAgICAgICAgLy8gQURERUQ6IGluaWNpYXIgc2luIHNlbGVjY2nDs24gZXhwbMOtY2l0YSAoYXNlZ3VyYSBlc3RhZG8gY29uc2lzdGVudGUpXG4gICAgICAgICAgICAgICAgbi5zZWxlY3RlZCA9IGZhbHNlO1xuICAgICAgICAgICAgICAgIGNvbnN0IGNhbmRpZGF0ZXMgPSBbXG4gICAgICAgICAgICAgICAgICAgIG4uc2x1ZyxcbiAgICAgICAgICAgICAgICAgICAgbi5wYXRoICYmIFN0cmluZyhuLnBhdGgpLnNwbGl0KCcvJykuZmlsdGVyKEJvb2xlYW4pLnBvcCgpLFxuICAgICAgICAgICAgICAgICAgICBuLm5hbWVcbiAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICAgICAgICAgIC5maWx0ZXIoQm9vbGVhbilcbiAgICAgICAgICAgICAgICAgICAgLm1hcCgoczogc3RyaW5nKSA9PiB0aGlzLnJlbW92ZUFjY2VudHMocy50b0xvd2VyQ2FzZSgpKSk7XG5cbiAgICAgICAgICAgICAgICBpZiAoY2FuZGlkYXRlcy5pbmNsdWRlcyh0YXJnZXQpKSB7XG4gICAgICAgICAgICAgICAgICAgIG4uc2VsZWN0ZWQgPSB0cnVlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KG4uY2hpbGRyZW4pICYmIG4uY2hpbGRyZW4ubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgICAgIHdhbGsobi5jaGlsZHJlbik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH07XG5cbiAgICAgICAgd2Fsayh0aGlzLmRhdGEpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIGh5ZHJhdGVGcm9tUXVlcnlcbiAgICAgKiAtIE1hcmNhIGxhIGNhdGVnb3LDrWEgc2Vnw7puIGVsIHBhcsOhbWV0cm8gZGUgcXVlcnkgJ2NhdGVnb3J5JyBzaSBleGlzdGUuXG4gICAgICogLSBCdXNjYSBlbCBjb2RlIGV4YWN0byBlbiBsYSBlc3RydWN0dXJhIHkgbWFyY2EgZWwgbm9kbyBjb3JyZXNwb25kaWVudGUuXG4gICAgICogLSBMb2dnZWEgc2kgc2UgZW5jb250csOzIG8gbm8gbGEgY2F0ZWdvcsOtYS5cbiAgICAgKi9cbiAgICBoeWRyYXRlRnJvbVF1ZXJ5KHF1ZXJ5OiBhbnkpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgcmF3ID0gcXVlcnk/LlsnY2F0ZWdvcnknXTtcbiAgICAgICAgaWYgKCFyYXcpIHJldHVybjtcblxuICAgICAgICBjb25zdCBjb2RlID0gU3RyaW5nKHJhdykudHJpbSgpO1xuICAgICAgICBpZiAoIWNvZGUpIHJldHVybjtcblxuICAgICAgICBjb25zdCBtYXJrID0gKG5vZGVzOiBhbnlbXSk6IGJvb2xlYW4gPT4ge1xuICAgICAgICAgICAgbGV0IGZvdW5kID0gZmFsc2U7XG4gICAgICAgICAgICBub2Rlcy5mb3JFYWNoKG4gPT4ge1xuICAgICAgICAgICAgICAgIGlmIChuLmNvZGUgPT09IGNvZGUpIHtcbiAgICAgICAgICAgICAgICAgICAgbi5zZWxlY3RlZCA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgIGZvdW5kID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBuLnNlbGVjdGVkID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KG4uY2hpbGRyZW4pICYmIG4uY2hpbGRyZW4ubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChtYXJrKG4uY2hpbGRyZW4pKSBmb3VuZCA9IHRydWU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICByZXR1cm4gZm91bmQ7XG4gICAgICAgIH07XG5cbiAgICAgICAgY29uc3Qgb2sgPSBtYXJrKHRoaXMuZGF0YSk7XG4gICAgfVxufSJdfQ==
|
|
59
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F0ZWdvcnktZmlsdGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctZWFzeWNvbW1lcmNlLXYxOC9zcmMvbGliL2NsYXNzZXMvZmlsdGVycy9jYXRlZ29yeS1maWx0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2QyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFbkQsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUVsQyxNQUFNLE9BQU8sY0FBZSxTQUFRLE1BQU07SUFNbEI7SUFMWixlQUFlLEdBQW1CLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUV4RCxJQUFJLEdBQW9CLEVBQUUsQ0FBQztJQUMzQixLQUFLLEdBQVksS0FBSyxDQUFDO0lBRWhDLFlBQW9CLGFBQW1CO1FBQ25DLEtBQUssRUFBRSxDQUFDO1FBRFEsa0JBQWEsR0FBYixhQUFhLENBQU07UUFFbkMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxhQUFhLEVBQUUsQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDakQsbUJBQW1CO1lBQ25CLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxFQUFFLGFBQWEsQ0FBQyxDQUFDO1FBQ3hDLENBQUMsQ0FBQyxDQUFBO0lBQ04sQ0FBQztJQUVRLElBQUk7UUFDVCxPQUFPLFlBQVksQ0FBQztJQUN4QixDQUFDO0lBQ1EsVUFBVSxDQUFDLE9BQVksRUFBRSxZQUFrQjtRQUNoRCxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUM5RCxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUMsTUFBVyxFQUFFLENBQVMsRUFBRSxFQUFFLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxFQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxZQUFZLENBQUMsQ0FBQyxDQUFDO1FBQzlHLElBQUksQ0FBQyxJQUFJLEdBQUcsVUFBVSxDQUFDO0lBQzNCLENBQUM7SUFDUSxVQUFVO1FBQ2YsTUFBTSxJQUFJLEtBQUssQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO0lBQy9DLENBQUM7SUFDUSxXQUFXLENBQUMsVUFBVSxHQUFHLEVBQUUsRUFBRSxPQUFhO1FBQy9DLElBQUksUUFBUSxHQUFHLE9BQU8sSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDO1FBQ3BDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxPQUFZLEVBQUUsRUFBRTtZQUM5QixJQUFJLE9BQU8sQ0FBQyxJQUFJLElBQUksS0FBSyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDO2dCQUM3QyxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLEVBQUUsRUFBRSxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUM7Z0JBQ3RELENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsVUFBVSxJQUFJLE1BQU0sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO1lBQy9ELENBQUM7aUJBQU0sSUFBSSxPQUFPLENBQUMsUUFBUSxFQUFFLENBQUM7Z0JBQzFCLElBQUksVUFBVSxJQUFJLEVBQUU7b0JBQUUsVUFBVSxHQUFHLFlBQVksR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDOztvQkFDM0QsVUFBVSxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUM7WUFDcEMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFBO1FBQ0YsT0FBTyxVQUFVLENBQUM7SUFDdEIsQ0FBQztJQUNRLGFBQWEsQ0FBQyxNQUFXLEVBQUUsUUFBYSxFQUFFLFlBQWtCO1FBQ2pFLElBQUksTUFBTSxDQUFDLElBQUksSUFBSSxLQUFLLEVBQUUsQ0FBQztZQUN2QixNQUFNLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztZQUNyQixNQUFNLENBQUMsS0FBSyxHQUFHLE1BQU0sQ0FBQztZQUN0QixNQUFNLENBQUMsS0FBSyxHQUFHLFFBQVEsQ0FBQyxJQUFJLENBQUM7WUFDN0IsTUFBTSxDQUFDLFFBQVEsR0FBRyxDQUFDLFlBQVksSUFBSSxJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsV0FBVyxFQUFFLENBQUMsSUFBSSxJQUFJLENBQUMsYUFBYSxDQUFDLFlBQVksRUFBRSxXQUFXLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDeEksTUFBTSxDQUFDLFFBQVEsR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEtBQVMsRUFBRSxDQUFRLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsS0FBSyxFQUFFLFFBQVEsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLEVBQUUsWUFBWSxDQUFDLENBQUMsQ0FBQztRQUNsSSxDQUFDO2FBQU0sQ0FBQztZQUNKLE1BQU0sQ0FBQyxLQUFLLEdBQUcsUUFBUSxDQUFDLElBQUksQ0FBQztZQUM3QixNQUFNLENBQUMsUUFBUSxHQUFHLENBQUMsWUFBWSxJQUFJLElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxXQUFXLEVBQUUsQ0FBQyxJQUFJLElBQUksQ0FBQyxhQUFhLENBQUMsWUFBWSxFQUFFLFdBQVcsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUM1SSxDQUFDO1FBQ0QsT0FBTyxNQUFNLENBQUE7SUFDakIsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaW5qZWN0IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IE9wdGlvbnNTZXJ2aWNlIH0gZnJvbSBcIi4uLy4uL2VjLXNlcnZpY2VzXCI7XG5pbXBvcnQgeyBGaWx0ZXJFbGVtZW50LCBGaWx0ZXJUeXBlLCBJRmlsdGVyIH0gZnJvbSBcIi4uLy4uL2ludGVyZmFjZXNcIjtcbmltcG9ydCB7IEZpbHRlciB9IGZyb20gXCIuL2ZpbHRlclwiO1xuXG5leHBvcnQgY2xhc3MgQ2F0ZWdvcnlGaWx0ZXIgZXh0ZW5kcyBGaWx0ZXJ7XG4gICAgcHJpdmF0ZSBfb3B0aW9uc1NlcnZpY2U6IE9wdGlvbnNTZXJ2aWNlID0gaW5qZWN0KE9wdGlvbnNTZXJ2aWNlKTtcblxuICAgIG92ZXJyaWRlIGRhdGE6IEZpbHRlckVsZW1lbnRbXSA9IFtdO1xuICAgIG92ZXJyaWRlIG11bHRpOiBib29sZWFuID0gZmFsc2U7XG5cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIGluaXRpYWxWYWx1ZXM/OiBhbnksKSB7XG4gICAgICAgIHN1cGVyKCk7XG4gICAgICAgIHRoaXMuX29wdGlvbnNTZXJ2aWNlLmdldENhdGVnb3JpZXMoKS5zdWJzY3JpYmUocmVzID0+IHtcbiAgICAgICAgICAgIC8vY29uc29sZS5sb2cocmVzKTtcbiAgICAgICAgICAgIHRoaXMuc2V0Q29udGVudChyZXMsIGluaXRpYWxWYWx1ZXMpO1xuICAgICAgICB9KVxuICAgIH1cblxuICAgIG92ZXJyaWRlIHR5cGUoKTogRmlsdGVyVHlwZSB7XG4gICAgICAgIHJldHVybiAnY2F0ZWdvcmllcyc7XG4gICAgfVxuICAgIG92ZXJyaWRlIHNldENvbnRlbnQob3B0aW9uczogYW55LCBpbml0aWFsVmFsdWU/OiBhbnkpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgY2F0ZWdvcmllcyA9IHRoaXMuX29wdGlvbnNTZXJ2aWNlLmdlbmVyYXRlTWVudShvcHRpb25zKTtcbiAgICAgICAgY2F0ZWdvcmllcy5mb3JFYWNoKChmaWx0ZXI6IGFueSwgaTogbnVtYmVyKSA9PiBmaWx0ZXIgPSB0aGlzLmNyZWF0ZUVsZW1lbnQoZmlsdGVyLCBvcHRpb25zW2ldLCBpbml0aWFsVmFsdWUpKTtcbiAgICAgICAgdGhpcy5kYXRhID0gY2F0ZWdvcmllcztcbiAgICB9XG4gICAgb3ZlcnJpZGUgZ2V0Q29udGVudCgpOiBGaWx0ZXJFbGVtZW50W10ge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJNZXRob2Qgbm90IGltcGxlbWVudGVkLlwiKTtcbiAgICB9XG4gICAgb3ZlcnJpZGUgdG9VcmxQYXJhbXMoYWN0dWFsX3VybCA9ICcnLCBzdWJsaXN0PzogYW55KTogc3RyaW5nIHtcbiAgICAgICAgbGV0IGVsZW1lbnRzID0gc3VibGlzdCB8fCB0aGlzLmRhdGE7XG4gICAgICAgIGVsZW1lbnRzLmZvckVhY2goKGVsZW1lbnQ6IGFueSkgPT4ge1xuICAgICAgICAgICAgaWYgKGVsZW1lbnQudHlwZSA9PSAnc3ViJyAmJiAhZWxlbWVudC5zZWxlY3RlZCkge1xuICAgICAgICAgICAgICAgIGNvbnN0IHJlc3VsdCA9IHRoaXMudG9VcmxQYXJhbXMoJycsIGVsZW1lbnQuY2hpbGRyZW4pO1xuICAgICAgICAgICAgICAgICFhY3R1YWxfdXJsLmluY2x1ZGVzKHJlc3VsdCkgPyBhY3R1YWxfdXJsICs9IHJlc3VsdCA6IG51bGw7XG4gICAgICAgICAgICB9IGVsc2UgaWYgKGVsZW1lbnQuc2VsZWN0ZWQpIHtcbiAgICAgICAgICAgICAgICBpZiAoYWN0dWFsX3VybCA9PSAnJykgYWN0dWFsX3VybCA9ICcmY2F0ZWdvcnk9JyArIGVsZW1lbnQudmFsdWU7XG4gICAgICAgICAgICAgICAgZWxzZSBhY3R1YWxfdXJsID0gZWxlbWVudC52YWx1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSlcbiAgICAgICAgcmV0dXJuIGFjdHVhbF91cmw7XG4gICAgfVxuICAgIG92ZXJyaWRlIGNyZWF0ZUVsZW1lbnQoZmlsdGVyOiBhbnksIG9yaWdpbmFsOiBhbnksIGluaXRpYWxWYWx1ZT86IGFueSkge1xuICAgICAgICBpZiAoZmlsdGVyLnR5cGUgPT0gJ3N1YicpIHtcbiAgICAgICAgICAgIGZpbHRlci5tdWx0aSA9IGZhbHNlO1xuICAgICAgICAgICAgZmlsdGVyLnNoYXBlID0gJ3RleHQnO1xuICAgICAgICAgICAgZmlsdGVyLnZhbHVlID0gb3JpZ2luYWwuY29kZTtcbiAgICAgICAgICAgIGZpbHRlci5zZWxlY3RlZCA9IChpbml0aWFsVmFsdWUgJiYgdGhpcy5yZW1vdmVBY2NlbnRzKG9yaWdpbmFsLnNsdWc/LnRvTG93ZXJDYXNlKCkpID09IHRoaXMucmVtb3ZlQWNjZW50cyhpbml0aWFsVmFsdWU/LnRvTG93ZXJDYXNlKCkpKTtcbiAgICAgICAgICAgIGZpbHRlci5jaGlsZHJlbiA9IGZpbHRlci5jaGlsZHJlbi5tYXAoKGNoaWxkOmFueSwgaTpudW1iZXIpID0+IHRoaXMuY3JlYXRlRWxlbWVudChjaGlsZCwgb3JpZ2luYWwuY2hpbGRyZW5baV0sIGluaXRpYWxWYWx1ZSkpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgZmlsdGVyLnZhbHVlID0gb3JpZ2luYWwuY29kZTtcbiAgICAgICAgICAgIGZpbHRlci5zZWxlY3RlZCA9IChpbml0aWFsVmFsdWUgJiYgdGhpcy5yZW1vdmVBY2NlbnRzKG9yaWdpbmFsLnNsdWc/LnRvTG93ZXJDYXNlKCkpID09IHRoaXMucmVtb3ZlQWNjZW50cyhpbml0aWFsVmFsdWU/LnRvTG93ZXJDYXNlKCkpKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gZmlsdGVyXG4gICAgfVxufVxuIl19
|
|
@@ -7,13 +7,9 @@ export class FilterFactory {
|
|
|
7
7
|
create(filterType, productsFilter) {
|
|
8
8
|
switch (filterType) {
|
|
9
9
|
case 'categories':
|
|
10
|
-
return new CategoryFilter(productsFilter
|
|
11
|
-
? productsFilter.value
|
|
12
|
-
: null);
|
|
10
|
+
return new CategoryFilter(productsFilter ? (productsFilter.type == 'categories' && productsFilter.value) : null);
|
|
13
11
|
case 'attributes':
|
|
14
|
-
return new AttributesFilter(productsFilter
|
|
15
|
-
? productsFilter.value
|
|
16
|
-
: null);
|
|
12
|
+
return new AttributesFilter(productsFilter ? (productsFilter.type == 'attributes' && productsFilter.value) : null);
|
|
17
13
|
case 'dynamics':
|
|
18
14
|
return new DynamicsFilter();
|
|
19
15
|
case 'sort':
|
|
@@ -26,4 +22,4 @@ export class FilterFactory {
|
|
|
26
22
|
}
|
|
27
23
|
}
|
|
28
24
|
}
|
|
29
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
25
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLWZhY3RvcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1lYXN5Y29tbWVyY2UtdjE4L3NyYy9saWIvY2xhc3Nlcy9maWx0ZXJzL2ZpbHRlci1mYWN0b3J5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFbkQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUV4RCxNQUFNLE9BQU8sYUFBYTtJQUNmLE1BQU0sQ0FBQyxVQUFzQixFQUFFLGNBQW1DO1FBQ3JFLFFBQVEsVUFBVSxFQUFFLENBQUM7WUFDakIsS0FBSyxZQUFZO2dCQUNiLE9BQU8sSUFBSSxjQUFjLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxDQUFDLGNBQWMsQ0FBQyxJQUFJLElBQUksWUFBWSxJQUFJLGNBQWMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDckgsS0FBSyxZQUFZO2dCQUNiLE9BQU8sSUFBSSxnQkFBZ0IsQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQUMsY0FBYyxDQUFDLElBQUksSUFBSSxZQUFZLElBQUksY0FBYyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUN2SCxLQUFLLFVBQVU7Z0JBQ1gsT0FBTyxJQUFJLGNBQWMsRUFBRSxDQUFDO1lBQ2hDLEtBQUssTUFBTTtnQkFDUCxPQUFPLElBQUksVUFBVSxFQUFFLENBQUM7WUFDNUIsS0FBSyxhQUFhO2dCQUNkLE9BQU8sSUFBSSxnQkFBZ0IsRUFBRSxDQUFDO1lBQ2xDO2dCQUNJLDREQUE0RDtnQkFDNUQsTUFBTSxJQUFJLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxDQUFBO1FBQzFDLENBQUM7SUFDTCxDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGaWx0ZXJUeXBlLCBJRmlsdGVyLCBQYWdpbmF0aW9uU2V0dGluZ3MgfSBmcm9tIFwiLi4vLi4vaW50ZXJmYWNlc1wiO1xuaW1wb3J0IHsgQXR0cmlidXRlc0ZpbHRlciB9IGZyb20gXCIuL2F0dHJpYnV0ZXMtZmlsdGVyXCI7XG5pbXBvcnQgeyBDYXRlZ29yeUZpbHRlciB9IGZyb20gXCIuL2NhdGVnb3J5LWZpbHRlclwiO1xuaW1wb3J0IHsgRHluYW1pY3NGaWx0ZXIgfSBmcm9tIFwiLi9keW5hbWljcy1maWx0ZXJcIjtcbmltcG9ydCB7IEZpbHRlciB9IGZyb20gXCIuL2ZpbHRlclwiO1xuaW1wb3J0IHsgU29ydEZpbHRlciB9IGZyb20gXCIuL3NvcnQtZmlsdGVyXCI7XG5pbXBvcnQgeyBQcmljZVJhbmdlRmlsdGVyIH0gZnJvbSBcIi4vcHJpY2VfcmFuZ2UtZmlsdGVyXCI7XG5cbmV4cG9ydCBjbGFzcyBGaWx0ZXJGYWN0b3J5IHtcbiAgICBwdWJsaWMgY3JlYXRlKGZpbHRlclR5cGU6IEZpbHRlclR5cGUsIHByb2R1Y3RzRmlsdGVyPzogUGFnaW5hdGlvblNldHRpbmdzKTogRmlsdGVyIHtcbiAgICAgICAgc3dpdGNoIChmaWx0ZXJUeXBlKSB7XG4gICAgICAgICAgICBjYXNlICdjYXRlZ29yaWVzJzpcbiAgICAgICAgICAgICAgICByZXR1cm4gbmV3IENhdGVnb3J5RmlsdGVyKHByb2R1Y3RzRmlsdGVyID8gKHByb2R1Y3RzRmlsdGVyLnR5cGUgPT0gJ2NhdGVnb3JpZXMnICYmIHByb2R1Y3RzRmlsdGVyLnZhbHVlKSA6IG51bGwpO1xuICAgICAgICAgICAgY2FzZSAnYXR0cmlidXRlcyc6XG4gICAgICAgICAgICAgICAgcmV0dXJuIG5ldyBBdHRyaWJ1dGVzRmlsdGVyKHByb2R1Y3RzRmlsdGVyID8gKHByb2R1Y3RzRmlsdGVyLnR5cGUgPT0gJ2F0dHJpYnV0ZXMnICYmIHByb2R1Y3RzRmlsdGVyLnZhbHVlKSA6IG51bGwpO1xuICAgICAgICAgICAgY2FzZSAnZHluYW1pY3MnOlxuICAgICAgICAgICAgICAgIHJldHVybiBuZXcgRHluYW1pY3NGaWx0ZXIoKTtcbiAgICAgICAgICAgIGNhc2UgJ3NvcnQnOlxuICAgICAgICAgICAgICAgIHJldHVybiBuZXcgU29ydEZpbHRlcigpO1xuICAgICAgICAgICAgY2FzZSAncHJpY2VfcmFuZ2UnOlxuICAgICAgICAgICAgICAgIHJldHVybiBuZXcgUHJpY2VSYW5nZUZpbHRlcigpO1xuICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICAvLyBjb25zb2xlLmVycm9yKCdGaWx0ZXIgdHlwZSBub3QgcmVjb2duaXplZDonLCBmaWx0ZXJUeXBlKTtcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJOb3QgaW1wbGVtZW50ZWRcIilcbiAgICAgICAgfVxuICAgIH1cbn1cbiJdfQ==
|
|
@@ -15,8 +15,8 @@ export class PriceRangeFilter extends Filter {
|
|
|
15
15
|
if (options.minPrice != null && options.maxPrice != null) {
|
|
16
16
|
this.minPrice = options.minPrice;
|
|
17
17
|
this.maxPrice = options.maxPrice;
|
|
18
|
-
this.currentMinPrice = options.currentMinPrice ??
|
|
19
|
-
this.currentMaxPrice = options.currentMaxPrice ??
|
|
18
|
+
this.currentMinPrice = options.currentMinPrice ?? this.minPrice;
|
|
19
|
+
this.currentMaxPrice = options.currentMaxPrice ?? this.maxPrice;
|
|
20
20
|
this._loaded = true;
|
|
21
21
|
}
|
|
22
22
|
};
|
|
@@ -56,4 +56,4 @@ export class PriceRangeFilter extends Filter {
|
|
|
56
56
|
this.currentMaxPrice = null;
|
|
57
57
|
};
|
|
58
58
|
}
|
|
59
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
59
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJpY2VfcmFuZ2UtZmlsdGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctZWFzeWNvbW1lcmNlLXYxOC9zcmMvbGliL2NsYXNzZXMvZmlsdGVycy9wcmljZV9yYW5nZS1maWx0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUdsQyxNQUFNLE9BQU8sZ0JBQWlCLFNBQVEsTUFBTTtJQUNoQyxPQUFPLEdBQUcsS0FBSyxDQUFDO0lBRXhCLFFBQVEsR0FBVyxDQUFDLENBQUM7SUFDckIsUUFBUSxHQUFXLENBQUMsQ0FBQztJQUNyQixlQUFlLEdBQWtCLElBQUksQ0FBQztJQUN0QyxlQUFlLEdBQWtCLElBQUksQ0FBQztJQUU3QixJQUFJLEdBQUcsR0FBZSxFQUFFLENBQUMsYUFBYSxDQUFDO0lBRWhELHlDQUF5QztJQUN6QyxJQUFJLFFBQVE7UUFDUixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDeEIsQ0FBQztJQUVELHFEQUFxRDtJQUM1QyxVQUFVLEdBQUcsQ0FBQyxPQUFxRyxFQUFFLEVBQUU7UUFDNUgsSUFBSSxPQUFPLENBQUMsUUFBUSxJQUFJLElBQUksSUFBSSxPQUFPLENBQUMsUUFBUSxJQUFJLElBQUksRUFBRSxDQUFDO1lBQ3ZELElBQUksQ0FBQyxRQUFRLEdBQUcsT0FBTyxDQUFDLFFBQVEsQ0FBQztZQUNqQyxJQUFJLENBQUMsUUFBUSxHQUFHLE9BQU8sQ0FBQyxRQUFRLENBQUM7WUFDakMsSUFBSSxDQUFDLGVBQWUsR0FBRyxPQUFPLENBQUMsZUFBZSxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUM7WUFDaEUsSUFBSSxDQUFDLGVBQWUsR0FBRyxPQUFPLENBQUMsZUFBZSxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUM7WUFDaEUsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUM7UUFDeEIsQ0FBQztJQUNMLENBQUMsQ0FBQTtJQUVELFlBQVksQ0FBQyxHQUFXLEVBQUUsR0FBVztRQUNqQyxJQUFJLENBQUMsUUFBUSxHQUFHLEdBQUcsQ0FBQztRQUNwQixJQUFJLENBQUMsUUFBUSxHQUFHLEdBQUcsQ0FBQztRQUNwQixJQUFJLElBQUksQ0FBQyxlQUFlLEtBQUssSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLGVBQWUsR0FBRyxHQUFHLElBQUksSUFBSSxDQUFDLGVBQWUsR0FBRyxHQUFHLENBQUMsRUFBRSxDQUFDO1lBQzlGLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDO1FBQ2hDLENBQUM7UUFFRCxJQUFJLElBQUksQ0FBQyxlQUFlLEtBQUssSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLGVBQWUsR0FBRyxHQUFHLElBQUksSUFBSSxDQUFDLGVBQWUsR0FBRyxHQUFHLENBQUMsRUFBRSxDQUFDO1lBQzlGLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDO1FBQ2hDLENBQUM7UUFFRCxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQztJQUN4QixDQUFDO0lBRUQsbURBQW1EO0lBQzFDLFdBQVcsR0FBRyxDQUFDLEdBQVcsRUFBRSxHQUFXLEVBQVEsRUFBRTtRQUN0RCxJQUFJLENBQUMsZUFBZSxHQUFHLEdBQUcsS0FBSyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztRQUMxRCxJQUFJLENBQUMsZUFBZSxHQUFHLEdBQUcsS0FBSyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztJQUM5RCxDQUFDLENBQUE7SUFFRCx1REFBdUQ7SUFDdkQsZ0JBQWdCLEdBQUcsR0FBaUMsRUFBRSxDQUFDLENBQUM7UUFDcEQsR0FBRyxFQUFFLElBQUksQ0FBQyxlQUFlLElBQUksSUFBSSxDQUFDLFFBQVM7UUFDM0MsR0FBRyxFQUFFLElBQUksQ0FBQyxlQUFlLElBQUksSUFBSSxDQUFDLFFBQVM7S0FDOUMsQ0FBQyxDQUFBO0lBRUYsMkVBQTJFO0lBQ2xFLFdBQVcsR0FBRyxHQUFXLEVBQUU7UUFDaEMsSUFBSSxNQUFNLEdBQUcsRUFBRSxDQUFDO1FBQ2hCLElBQUksSUFBSSxDQUFDLGVBQWUsSUFBSSxJQUFJO1lBQUUsTUFBTSxJQUFJLGNBQWMsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQ2pGLElBQUksSUFBSSxDQUFDLGVBQWUsSUFBSSxJQUFJO1lBQUUsTUFBTSxJQUFJLGNBQWMsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQ2pGLE9BQU8sTUFBTSxDQUFDO0lBQ2xCLENBQUMsQ0FBQTtJQUVELGlEQUFpRDtJQUNqRCxLQUFLLEdBQUcsR0FBUyxFQUFFO1FBQ2YsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUM7UUFDNUIsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUM7SUFDaEMsQ0FBQyxDQUFBO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGaWx0ZXIgfSBmcm9tIFwiLi9maWx0ZXJcIjtcbmltcG9ydCB7IEZpbHRlckVsZW1lbnQsIEZpbHRlclR5cGUgfSBmcm9tIFwiLi4vLi4vaW50ZXJmYWNlcy9maWx0ZXJcIjtcblxuZXhwb3J0IGNsYXNzIFByaWNlUmFuZ2VGaWx0ZXIgZXh0ZW5kcyBGaWx0ZXIge1xuICAgIHByaXZhdGUgX2xvYWRlZCA9IGZhbHNlO1xuXG4gICAgbWluUHJpY2U6IG51bWJlciA9IDA7XG4gICAgbWF4UHJpY2U6IG51bWJlciA9IDA7XG4gICAgY3VycmVudE1pblByaWNlOiBudW1iZXIgfCBudWxsID0gbnVsbDtcbiAgICBjdXJyZW50TWF4UHJpY2U6IG51bWJlciB8IG51bGwgPSBudWxsO1xuXG4gICAgb3ZlcnJpZGUgdHlwZSA9ICgpOiBGaWx0ZXJUeXBlID0+ICdwcmljZV9yYW5nZSc7XG5cbiAgICAvKiogdHJ1ZSBjdWFuZG8geWEgdGVuZ28gdW4gcmFuZ28gcmVhbCAqL1xuICAgIGdldCBpc0xvYWRlZCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2xvYWRlZDtcbiAgICB9XG5cbiAgICAvLyBNw6l0b2RvIHBhcmEgY29uZmlndXJhciBlbCByYW5nbyBkZSBwcmVjaW9zIGluaWNpYWxcbiAgICBvdmVycmlkZSBzZXRDb250ZW50ID0gKG9wdGlvbnM6IHsgbWluUHJpY2U/OiBudW1iZXI7IG1heFByaWNlPzogbnVtYmVyOyBjdXJyZW50TWluUHJpY2U/OiBudW1iZXI7IGN1cnJlbnRNYXhQcmljZT86IG51bWJlciB9KSA9PiB7XG4gICAgICAgIGlmIChvcHRpb25zLm1pblByaWNlICE9IG51bGwgJiYgb3B0aW9ucy5tYXhQcmljZSAhPSBudWxsKSB7XG4gICAgICAgICAgICB0aGlzLm1pblByaWNlID0gb3B0aW9ucy5taW5QcmljZTtcbiAgICAgICAgICAgIHRoaXMubWF4UHJpY2UgPSBvcHRpb25zLm1heFByaWNlO1xuICAgICAgICAgICAgdGhpcy5jdXJyZW50TWluUHJpY2UgPSBvcHRpb25zLmN1cnJlbnRNaW5QcmljZSA/PyB0aGlzLm1pblByaWNlO1xuICAgICAgICAgICAgdGhpcy5jdXJyZW50TWF4UHJpY2UgPSBvcHRpb25zLmN1cnJlbnRNYXhQcmljZSA/PyB0aGlzLm1heFByaWNlO1xuICAgICAgICAgICAgdGhpcy5fbG9hZGVkID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHVwZGF0ZVByaWNlcyhtaW46IG51bWJlciwgbWF4OiBudW1iZXIpIHtcbiAgICAgICAgdGhpcy5taW5QcmljZSA9IG1pbjtcbiAgICAgICAgdGhpcy5tYXhQcmljZSA9IG1heDtcbiAgICAgICAgaWYgKHRoaXMuY3VycmVudE1pblByaWNlICE9PSBudWxsICYmICh0aGlzLmN1cnJlbnRNaW5QcmljZSA8IG1pbiB8fCB0aGlzLmN1cnJlbnRNaW5QcmljZSA+IG1heCkpIHtcbiAgICAgICAgICAgIHRoaXMuY3VycmVudE1pblByaWNlID0gbnVsbDtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0aGlzLmN1cnJlbnRNYXhQcmljZSAhPT0gbnVsbCAmJiAodGhpcy5jdXJyZW50TWF4UHJpY2UgPiBtYXggfHwgdGhpcy5jdXJyZW50TWF4UHJpY2UgPCBtaW4pKSB7XG4gICAgICAgICAgICB0aGlzLmN1cnJlbnRNYXhQcmljZSA9IG51bGw7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLl9sb2FkZWQgPSB0cnVlO1xuICAgIH1cblxuICAgIC8vIE3DqXRvZG8gcGFyYSBhY3R1YWxpemFyIGxvcyB2YWxvcmVzIHNlbGVjY2lvbmFkb3NcbiAgICBvdmVycmlkZSBzZXRTZWxlY3RlZCA9IChtaW46IG51bWJlciwgbWF4OiBudW1iZXIpOiB2b2lkID0+IHtcbiAgICAgICAgdGhpcy5jdXJyZW50TWluUHJpY2UgPSBtaW4gIT09IHRoaXMubWluUHJpY2UgPyBtaW4gOiBudWxsO1xuICAgICAgICB0aGlzLmN1cnJlbnRNYXhQcmljZSA9IG1heCAhPT0gdGhpcy5tYXhQcmljZSA/IG1heCA6IG51bGw7XG4gICAgfVxuXG4gICAgLy8gUmV0b3JuYSBsb3MgdmFsb3JlcyBzZWxlY2Npb25hZG9zIChyYW5nbyBkZSBwcmVjaW9zKVxuICAgIGdldFNlbGVjdGVkUmFuZ2UgPSAoKTogeyBtaW46IG51bWJlciwgbWF4OiBudW1iZXIgfSA9PiAoe1xuICAgICAgICBtaW46IHRoaXMuY3VycmVudE1pblByaWNlID8/IHRoaXMubWluUHJpY2UhLFxuICAgICAgICBtYXg6IHRoaXMuY3VycmVudE1heFByaWNlID8/IHRoaXMubWF4UHJpY2UhXG4gICAgfSlcblxuICAgIC8vIEdlbmVyYSBsb3MgcGFyw6FtZXRyb3MgZGUgbGEgVVJMIGVuIGJhc2UgYWwgcmFuZ28gZGUgcHJlY2lvcyBzZWxlY2Npb25hZG9cbiAgICBvdmVycmlkZSB0b1VybFBhcmFtcyA9ICgpOiBzdHJpbmcgPT4ge1xuICAgICAgICBsZXQgcGFyYW1zID0gJyc7XG4gICAgICAgIGlmICh0aGlzLmN1cnJlbnRNaW5QcmljZSAhPSBudWxsKSBwYXJhbXMgKz0gYCZwcmljZV9taW49JHt0aGlzLmN1cnJlbnRNaW5QcmljZX1gO1xuICAgICAgICBpZiAodGhpcy5jdXJyZW50TWF4UHJpY2UgIT0gbnVsbCkgcGFyYW1zICs9IGAmcHJpY2VfbWF4PSR7dGhpcy5jdXJyZW50TWF4UHJpY2V9YDtcbiAgICAgICAgcmV0dXJuIHBhcmFtcztcbiAgICB9XG5cbiAgICAvLyBSZXN0YWJsZWNlIGVsIGZpbHRybyBhIGxvcyB2YWxvcmVzIHBvciBkZWZlY3RvXG4gICAgcmVzZXQgPSAoKTogdm9pZCA9PiB7XG4gICAgICAgIHRoaXMuY3VycmVudE1pblByaWNlID0gbnVsbDtcbiAgICAgICAgdGhpcy5jdXJyZW50TWF4UHJpY2UgPSBudWxsO1xuICAgIH1cbn1cbiJdfQ==
|