ng-miam 3.4.6 → 3.5.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundles/ng-miam.umd.js +844 -668
- package/bundles/ng-miam.umd.js.map +1 -1
- package/bundles/ng-miam.umd.min.js +1 -1
- package/bundles/ng-miam.umd.min.js.map +1 -1
- package/esm2015/lib/_components/abstracts/abstract-recipe-card.component.js +13 -3
- package/esm2015/lib/_models/index.js +2 -1
- package/esm2015/lib/_models/ingredient.js +3 -3
- package/esm2015/lib/_models/recipe.js +2 -1
- package/esm2015/lib/_models/tag.js +22 -0
- package/esm2015/lib/_services/groceries-lists.service.js +10 -13
- package/esm2015/lib/_services/index.js +2 -1
- package/esm2015/lib/_services/recipes.service.js +13 -8
- package/esm2015/lib/_services/tags.service.js +29 -0
- package/esm2015/lib/_web-components/basket-preview/basket-preview-block/basket-preview-block.component.js +2 -2
- package/esm2015/lib/_web-components/basket-preview/basket-preview-line/basket-preview-line.component.js +162 -172
- package/esm2015/lib/_web-components/basket-preview/replace-item/replace-item.component.js +23 -34
- package/esm2015/lib/_web-components/catalog-list/catalog-list.component.js +2 -2
- package/esm2015/lib/_web-components/catalog-recipe-card/catalog-recipe-card.component.js +97 -85
- package/esm2015/lib/_web-components/order-button/order-button.component.js +1 -1
- package/esm2015/lib/_web-components/recipe-card/recipe-card.component.js +96 -81
- package/esm2015/lib/_web-components/recipe-details/recipe-details.component.js +268 -194
- package/esm2015/lib/_web-components/recipe-modal/recipe-modal.component.js +3 -3
- package/esm2015/lib/_web-components/recipes-history/recipes-history.component.js +4 -2
- package/fesm2015/ng-miam.js +787 -654
- package/fesm2015/ng-miam.js.map +1 -1
- package/lib/_components/abstracts/abstract-recipe-card.component.d.ts +2 -0
- package/lib/_models/index.d.ts +1 -0
- package/lib/_models/ingredient.d.ts +1 -1
- package/lib/_models/tag.d.ts +15 -0
- package/lib/_services/context.service.d.ts +1 -1
- package/lib/_services/groceries-lists.service.d.ts +2 -2
- package/lib/_services/index.d.ts +1 -0
- package/lib/_services/recipes.service.d.ts +4 -2
- package/lib/_services/tags.service.d.ts +14 -0
- package/lib/_web-components/basket-preview/replace-item/replace-item.component.d.ts +1 -2
- package/lib/_web-components/recipe-card/recipe-card.component.d.ts +1 -1
- package/lib/_web-components/recipe-details/recipe-details.component.d.ts +6 -2
- package/package.json +1 -1
|
@@ -17,6 +17,7 @@ import { RecipePricing } from '../_models/recipe-pricing';
|
|
|
17
17
|
import { SponsorService } from './sponsor.service';
|
|
18
18
|
import { PointOfSalesService } from './point-of-sales.service';
|
|
19
19
|
import { PackageService } from './package.service';
|
|
20
|
+
import { TagsService } from './tags.service';
|
|
20
21
|
import * as i0 from "@angular/core";
|
|
21
22
|
import * as i1 from "@angular/common/http";
|
|
22
23
|
import * as i2 from "./recipe-provider.service";
|
|
@@ -30,9 +31,10 @@ import * as i9 from "./recipe-steps.service";
|
|
|
30
31
|
import * as i10 from "./recipe-events.service";
|
|
31
32
|
import * as i11 from "./sponsor.service";
|
|
32
33
|
import * as i12 from "./package.service";
|
|
34
|
+
import * as i13 from "./tags.service";
|
|
33
35
|
const MIAM_API_HOST = `${environment.miamAPI}/api/v1/`;
|
|
34
36
|
export class RecipesService extends Service {
|
|
35
|
-
constructor(http, providerService, statusService, typeService, suppliersService, posService, listsService, ingredientsService, recipeStepsService, recipeEventsService, sponsorService, packageService) {
|
|
37
|
+
constructor(http, providerService, statusService, typeService, suppliersService, posService, listsService, ingredientsService, recipeStepsService, recipeEventsService, sponsorService, packageService, tagsService) {
|
|
36
38
|
super();
|
|
37
39
|
this.http = http;
|
|
38
40
|
this.providerService = providerService;
|
|
@@ -46,6 +48,7 @@ export class RecipesService extends Service {
|
|
|
46
48
|
this.recipeEventsService = recipeEventsService;
|
|
47
49
|
this.sponsorService = sponsorService;
|
|
48
50
|
this.packageService = packageService;
|
|
51
|
+
this.tagsService = tagsService;
|
|
49
52
|
this.resource = Recipe;
|
|
50
53
|
this.type = 'recipes';
|
|
51
54
|
this.displayedRecipe$ = new BehaviorSubject(null);
|
|
@@ -86,7 +89,7 @@ export class RecipesService extends Service {
|
|
|
86
89
|
return this.all({
|
|
87
90
|
page,
|
|
88
91
|
remotefilter: Object.assign(Object.assign({}, filters), { random: this.randomSeed }),
|
|
89
|
-
include: ['ingredients', 'recipe-steps', 'recipe-status', 'recipe-type', 'sponsors', 'recipe-provider']
|
|
92
|
+
include: ['ingredients', 'recipe-steps', 'recipe-status', 'recipe-type', 'sponsors', 'recipe-provider', 'tags']
|
|
90
93
|
}).pipe(skipWhile(result => result.is_loading), map(result => result.data));
|
|
91
94
|
}
|
|
92
95
|
// DEPRECATED / use TTL instead
|
|
@@ -96,7 +99,9 @@ export class RecipesService extends Service {
|
|
|
96
99
|
return of(recipe);
|
|
97
100
|
}
|
|
98
101
|
else {
|
|
99
|
-
return this.get(recipeId, {
|
|
102
|
+
return this.get(recipeId, {
|
|
103
|
+
include: ['ingredients', 'recipe-steps', 'recipe-status', 'recipe-type', 'sponsors', 'tags']
|
|
104
|
+
}).pipe(tap(r => this.recipes.push(r)));
|
|
100
105
|
}
|
|
101
106
|
}
|
|
102
107
|
// Debounce to let enough time for the pos to be defined
|
|
@@ -107,7 +112,7 @@ export class RecipesService extends Service {
|
|
|
107
112
|
if (results[1]) {
|
|
108
113
|
supplierFilter = `supplier_id=${results[0].id}&pos_id=${results[1].id}`;
|
|
109
114
|
}
|
|
110
|
-
const url = MIAM_API_HOST + `recipes/suggestions?${supplierFilter}&include=ingredients,recipe-steps,sponsors,recipe-type`;
|
|
115
|
+
const url = MIAM_API_HOST + `recipes/suggestions?${supplierFilter}&include=ingredients,recipe-steps,sponsors,recipe-type,tags`;
|
|
111
116
|
return this.http.post(url, body);
|
|
112
117
|
}), map((returnedRecipes) => {
|
|
113
118
|
const recipes = this.newCollection();
|
|
@@ -136,7 +141,7 @@ export class RecipesService extends Service {
|
|
|
136
141
|
if (!recipeId) {
|
|
137
142
|
return;
|
|
138
143
|
}
|
|
139
|
-
this.get(recipeId, { include: ['ingredients', 'recipe-steps', 'recipe-type', 'sponsors'] })
|
|
144
|
+
this.get(recipeId, { include: ['ingredients', 'recipe-steps', 'recipe-type', 'sponsors', 'tags'] })
|
|
140
145
|
.pipe(skipWhile(recipe => recipe.is_loading))
|
|
141
146
|
.subscribe(recipe => {
|
|
142
147
|
this.displayObject(recipe, { previewAllowed, guests, previewMode });
|
|
@@ -195,12 +200,12 @@ export class RecipesService extends Service {
|
|
|
195
200
|
this.randomSeed = Date.now();
|
|
196
201
|
}
|
|
197
202
|
}
|
|
198
|
-
RecipesService.ɵfac = function RecipesService_Factory(t) { return new (t || RecipesService)(i0.ɵɵinject(i1.HttpClient), i0.ɵɵinject(i2.RecipeProviderService), i0.ɵɵinject(i3.RecipeStatusService), i0.ɵɵinject(i4.RecipeTypeService), i0.ɵɵinject(i5.SuppliersService), i0.ɵɵinject(i6.PointOfSalesService), i0.ɵɵinject(i7.GroceriesListsService), i0.ɵɵinject(i8.IngredientsService), i0.ɵɵinject(i9.RecipeStepsService), i0.ɵɵinject(i10.RecipeEventsService), i0.ɵɵinject(i11.SponsorService), i0.ɵɵinject(i12.PackageService)); };
|
|
203
|
+
RecipesService.ɵfac = function RecipesService_Factory(t) { return new (t || RecipesService)(i0.ɵɵinject(i1.HttpClient), i0.ɵɵinject(i2.RecipeProviderService), i0.ɵɵinject(i3.RecipeStatusService), i0.ɵɵinject(i4.RecipeTypeService), i0.ɵɵinject(i5.SuppliersService), i0.ɵɵinject(i6.PointOfSalesService), i0.ɵɵinject(i7.GroceriesListsService), i0.ɵɵinject(i8.IngredientsService), i0.ɵɵinject(i9.RecipeStepsService), i0.ɵɵinject(i10.RecipeEventsService), i0.ɵɵinject(i11.SponsorService), i0.ɵɵinject(i12.PackageService), i0.ɵɵinject(i13.TagsService)); };
|
|
199
204
|
RecipesService.ɵprov = i0.ɵɵdefineInjectable({ token: RecipesService, factory: RecipesService.ɵfac, providedIn: 'root' });
|
|
200
205
|
/*@__PURE__*/ (function () { i0.ɵsetClassMetadata(RecipesService, [{
|
|
201
206
|
type: Injectable,
|
|
202
207
|
args: [{
|
|
203
208
|
providedIn: 'root'
|
|
204
209
|
}]
|
|
205
|
-
}], function () { return [{ type: i1.HttpClient }, { type: i2.RecipeProviderService }, { type: i3.RecipeStatusService }, { type: i4.RecipeTypeService }, { type: i5.SuppliersService }, { type: i6.PointOfSalesService }, { type: i7.GroceriesListsService }, { type: i8.IngredientsService }, { type: i9.RecipeStepsService }, { type: i10.RecipeEventsService }, { type: i11.SponsorService }, { type: i12.PackageService }]; }, null); })();
|
|
206
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVjaXBlcy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6Ii9idWlsZHMvbWlhbS9uZy1taWFtLXNkay9wcm9qZWN0cy9uZy1taWFtL3NyYy8iLCJzb3VyY2VzIjpbImxpYi9fc2VydmljZXMvcmVjaXBlcy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pELE9BQU8sRUFBRSxHQUFHLEVBQUUsRUFBRSxFQUFjLFFBQVEsRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3JGLE9BQU8sRUFBRSxPQUFPLEVBQXNCLE1BQU0sYUFBYSxDQUFDO0FBQzFELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUMzQyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUMxRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsWUFBWSxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzlFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNsRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDMUQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFNUQsT0FBTyxFQUFFLGdCQUFnQixFQUFF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QUM7SUFFTyxTQUFTLENBQUMsVUFBa0IsRUFBRSxLQUFhO1FBQ2pELE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQztZQUNkLFVBQVUsRUFBRSxvQkFBb0IsVUFBVSxFQUFFO1lBQzVDLFlBQVksRUFBRTtnQkFDWixRQUFRLEVBQUUsS0FBSztnQkFDZixRQUFRLEVBQUUsWUFBWTthQUN2QjtTQUNGLENBQUMsQ0FBQTtJQUNKLENBQUM7SUFFRDs7O09BR0c7SUFDSyxhQUFhO1FBQ25CLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDO0lBQy9CLENBQUM7OzRFQXZOVSxjQUFjO3NEQUFkLGNBQWMsV0FBZCxjQUFjLG1CQUZiLE1BQU07a0RBRVAsY0FBYztjQUgxQixVQUFVO2VBQUM7Z0JBQ1YsVUFBVSxFQUFFLE1BQU07YUFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFdmVudEVtaXR0ZXIsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGlpZiwgb2YsIE9ic2VydmFibGUsIGZvcmtKb2luLCBCZWhhdmlvclN1YmplY3QsIGNvbWJpbmVMYXRlc3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFNlcnZpY2UsIERvY3VtZW50Q29sbGVjdGlvbiB9IGZyb20gJ25neC1qc29uYXBpJztcbmltcG9ydCB7IFJlY2lwZSB9IGZyb20gJy4uL19tb2RlbHMvcmVjaXBlJztcbmltcG9ydCB7IFJlY2lwZVByb3ZpZGVyU2VydmljZSB9IGZyb20gJy4vcmVjaXBlLXByb3ZpZGVyLnNlcnZpY2UnO1xuaW1wb3J0IHsgUmVjaXBlU3RhdHVzU2VydmljZSB9IGZyb20gJy4vcmVjaXBlLXN0YXR1cy5zZXJ2aWNlJztcbmltcG9ydCB7IFJlY2lwZVR5cGVTZXJ2aWNlIH0gZnJvbSAnLi9yZWNpcGUtdHlwZS5zZXJ2aWNlJztcbmltcG9ydCB7IEdyb2Nlcmllc0xpc3RzU2VydmljZSB9IGZyb20gJy4vZ3JvY2VyaWVzLWxpc3RzLnNlcnZpY2UnO1xuaW1wb3J0IHsgUmVjaXBlRXZlbnRzU2VydmljZSB9IGZyb20gJy4vcmVjaXBlLWV2ZW50cy5zZXJ2aWNlJztcbmltcG9ydCB7IGRlYm91bmNlVGltZSwgbWFwLCBza2lwV2hpbGUsIHN3aXRjaE1hcCwgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IGVudmlyb25tZW50IH0gZnJvbSAnLi4vZW52aXJvbm1lbnRzL2Vudmlyb25tZW50JztcbmltcG9ydCB7IEluZ3JlZGllbnRzU2VydmljZSB9IGZyb20gJy4vaW5ncmVkaWVudHMuc2VydmljZSc7XG5pbXBvcnQgeyBSZWNpcGVTdGVwc1NlcnZpY2UgfSBmcm9tICcuL3JlY2lwZS1zdGVwcy5zZXJ2aWNlJztcbmltcG9ydCB7IE1pYW1SZWNpcGUgfSBmcm9tICcuLi9fdHlwZXMvcmVjaXBlJztcbmltcG9ydCB7IFN1cHBsaWVyc1NlcnZpY2UgfSBmcm9tICcuL3N1cHBsaWVycy5zZXJ2aWNlJztcbmltcG9ydCB7IFJlY2lwZVByaWNpbmcgfSBmcm9tICcuLi9fbW9kZWxzL3JlY2lwZS1wcmljaW5nJztcbmltcG9ydCB7IFNwb25zb3JTZXJ2aWNlIH0gZnJvbSAnLi9zcG9uc29yLnNlcnZpY2UnO1xuaW1wb3J0IHsgUG9pbnRPZlNhbGVzU2VydmljZSB9IGZyb20gJy4vcG9pbnQtb2Ytc2FsZXMuc2VydmljZSc7XG5pbXBvcnQgeyBQYWNrYWdlU2VydmljZSB9IGZyb20gJy4vcGFja2FnZS5zZXJ2aWNlJztcblxuY29uc3QgTUlBTV9BUElfSE9TVCA9IGAke2Vudmlyb25tZW50Lm1pYW1BUEl9L2FwaS92MS9gO1xuXG5pbnRlcmZhY2UgUmVjaXBlRGlzcGxheSB7XG4gIHByZXZpZXdBbGxvd2VkOiBib29sZWFuO1xuICByZWNpcGU6IFJlY2lwZTtcbiAgcHJldmlld01vZGU6IGJvb2xlYW47XG59XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIFJlY2lwZXNTZXJ2aWNlIGV4dGVuZHMgU2VydmljZTxSZWNpcGU+IHtcblxuICByZXNvdXJjZSA9IFJlY2lwZTtcbiAgdHlwZSA9ICdyZWNpcGVzJztcbiAgZGlzcGxheWVkUmVjaXBlJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8UmVjaXBlRGlzcGxheT4obnVsbCk7XG4gIGRpc3BsYXlIZWxwZXIkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSk7XG4gIGRpc3BsYXllZFJlY2lwZUNoYW5nZWQgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG4gIGhpZGRlbiA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcblxuICBwcml2YXRlIHJhbmRvbVNlZWQ6IG51bWJlcjtcbiAgcHJpdmF0ZSBwYWdlTnVtYmVyID0gMTtcbiAgcHJpdmF0ZSByZWNpcGVzOiBSZWNpcGVbXSA9IFtdO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgaHR0cDogSHR0cENsaWVudCxcbiAgICBwcml2YXRlIHByb3ZpZGVyU2VydmljZTogUmVjaXBlUHJvdmlkZXJTZXJ2aWNlLFxuICAgIHByaXZhdGUgc3RhdHVzU2VydmljZTogUmVjaXBlU3RhdHVzU2VydmljZSxcbiAgICBwcml2YXRlIHR5cGVTZXJ2aWNlOiBSZWNpcGVUeXBlU2VydmljZSxcbiAgICBwcml2YXRlIHN1cHBsaWVyc1NlcnZpY2U6IFN1cHBsaWVyc1NlcnZpY2UsXG4gICAgcHJpdmF0ZSBwb3NTZXJ2aWNlOiBQb2ludE9mU2FsZXNTZXJ2aWNlLFxuICAgIHByaXZhdGUgbGlzdHNTZXJ2aWNlOiBHcm9jZXJpZXNMaXN0c1NlcnZpY2UsXG4gICAgcHJpdmF0ZSBpbmdyZWRpZW50c1NlcnZpY2U6IEluZ3JlZGllbnRzU2VydmljZSxcbiAgICBwcml2YXRlIHJlY2lwZVN0ZXBzU2VydmljZTogUmVjaXBlU3RlcHNTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVjaXBlRXZlbnRzU2VydmljZTogUmVjaXBlRXZlbnRzU2VydmljZSxcbiAgICBwcml2YXRlIHNwb25zb3JTZXJ2aWNlOiBTcG9uc29yU2VydmljZSxcbiAgICBwcml2YXRlIHBhY2thZ2VTZXJ2aWNlOiBQYWNrYWdlU2VydmljZVxuICApIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMucmVnaXN0ZXIoKTtcbiAgICB0aGlzLmludFJhbmRvbVNlZWQoKTtcbiAgfVxuXG4gIGxvYWRSZWNpcGVzKCk6IE9ic2VydmFibGU8UmVjaXBlW10+IHtcbiAgICBjb25zdCBsaXN0ID0gdGhpcy5saXN0c1NlcnZpY2UubGlzdCQudmFsdWU7XG4gICAgaWYgKCFsaXN0KSB7XG4gICAgICByZXR1cm4gb2YobnVsbCk7XG4gICAgfSBlbHNlIGlmIChsaXN0LmF0dHJpYnV0ZXNbJ3JlY2lwZXMtaW5mb3MnXS5sZW5ndGggPT09IDApIHtcbiAgICAgIHJldHVybiBvZihbXSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGZvcmtKb2luKGxpc3QuYXR0cmlidXRlc1sncmVjaXBlcy1pbmZvcyddLm1hcChpbmZvID0+IHtcbiAgICAgIHJldHVybiB0aGlzLmdldE9yRmV0Y2goaW5mby5pZCkucGlwZShcbiAgICAgICAgc2tpcFdoaWxlKHIgPT4gci5pc19sb2FkaW5nKSxcbiAgICAgICAgdGFwKHIgPT4gci5tb2RpZmllZEd1ZXN0cyA9IGluZm8uZ3Vlc3RzKVxuICAgICAgKTtcbiAgICB9KSk7XG4gIH1cblxuICAvLyBDcmVhdGUgcmVjaXBlICYgYXBwZW5kIHRvIGdyb2NlcmllcyBsaXN0XG4gIGdldE9yQ3JlYXRlKHJlY2lwZSwgb3BlbkJhc2tldDogYm9vbGVhbiA9IGZhbHNlKSB7XG4gICAgY29uc3QgcHJvdmlkZXIgPSB0aGlzLnByb3ZpZGVyU2VydmljZS5nZXRDYWNoZWQoKTtcbiAgICBjb25zdCBleHRJZCA9IHRoaXMuY3JlYXRlRXh0SWQocmVjaXBlLnRpdGxlKTtcblxuICAgIC8vIENoZWNrIGlmIGV4aXN0cyBvciBjcmVhdGUgaXRcbiAgICByZXR1cm4gdGhpcy5nZXRSZWNpcGUocHJvdmlkZXIuaWQsIGV4dElkKS5waXBlKFxuICAgICAgc2tpcFdoaWxlKHIgPT4gci5pc19sb2FkaW5nKSxcbiAgICAgIC8vIE5PVEUgOiBhZGRpbmcgb2Yodm9pZCAwKSBmb3IgZmFsc3kgb2JzZXJ2YWJsZSAobmd4LWpzb25hcGkgaXMgdHJpZ2dlcmluZyBhbiBodHRwIHJlcXVlc3Qgd2hlbiBzYXZlKCkgY2FsbGVkKVxuICAgICAgc3dpdGNoTWFwKChyKSA9PiBpaWYoKCkgPT4gISFyLmRhdGEubGVuZ3RoLCBvZihyLmRhdGFbMF0pLCBvZih2b2lkIDApLnBpcGUoc3dpdGNoTWFwKF8gPT4gdGhpcy5jcmVhdGUoZXh0SWQsIHJlY2lwZSkpKSkpLFxuICAgICAgLy8gQXBwZW5kIHJlY2lwZSB0byBjdXJyZW50IHNhdmVkIGxpc3RcbiAgICAgIHN3aXRjaE1hcCgocikgPT4gdGhpcy5saXN0c1NlcnZpY2UuYXBwZW5kUmVjaXBlVG9MaXN0KHIuaWQsIHIubW9kaWZpZWRHdWVzdHMsIG9wZW5CYXNrZXQpKVxuICAgICk7XG5cbiAgfVxuXG4gIGdldFJhbmRvbShwYWdlID0geyBudW1iZXI6IHRoaXMucGFnZU51bWJlciwgc2l6ZTogMSB9LCBmaWx0ZXJzOiBvYmplY3QgPSB7IHJldmlld2VkOiB0cnVlLCBleGNsdWRlX25vX3BpY3R1cmU6IHRydWUgfSxcbiAgICAgICAgICAgIGNsZWFyID0gZmFsc2UpOiBPYnNlcnZhYmxlPFJlY2lwZVtdPiB7XG4gICAgdGhpcy5wYWdlTnVtYmVyKys7XG4gICAgLy8gRmV0Y2ggcmFuZG9tIHJlY2lwZXNcbiAgICByZXR1cm4gdGhpcy5hbGwoe1xuICAgICAgcGFnZSxcbiAgICAgIHJlbW90ZWZpbHRlcjogT2JqZWN0LmFzc2lnbih7Li4uZmlsdGVyc30sIHsgcmFuZG9tOiB0aGlzLnJhbmRvbVNlZWR9KSxcbiAgICAgIGluY2x1ZGU6IFsnaW5ncmVkaWVudHMnLCAncmVjaXBlLXN0ZXBzJywgJ3JlY2lwZS1zdGF0dXMnLCAncmVjaXBlLXR5cGUnLCAnc3BvbnNvcnMnLCAncmVjaXBlLXByb3ZpZGVyJ11cbiAgICB9KS5waXBlKFxuICAgICAgc2tpcFdoaWxlKHJlc3VsdCA9PiByZXN1bHQuaXNfbG9hZGluZyksXG4gICAgICBtYXAocmVzdWx0ID0+IHJlc3VsdC5kYXRhKVxuICAgICk7XG4gIH1cblxuICAvLyBERVBSRUNBVEVEIC8gdXNlIFRUTCBpbnN0ZWFkXG4gIGdldE9yRmV0Y2gocmVjaXBlSWQpOiBPYnNlcnZhYmxlPFJlY2lwZT4ge1xuICAgIGNvbnN0IHJlY2lwZSA9IHRoaXMucmVjaXBlcy5maW5kKHIgPT4gci5pZCA9PT0gcmVjaXBlSWQpO1xuICAgIGlmIChyZWNpcGUpIHtcbiAgICAgIHJldHVybiBvZihyZWNpcGUpO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gdGhpcy5nZXQocmVjaXBlSWQsIHsgaW5jbHVkZTogWydpbmdyZWRpZW50cycsICdyZWNpcGUtc3RlcHMnLCAncmVjaXBlLXN0YXR1cycsICdyZWNpcGUtdHlwZScsICdzcG9uc29ycycgXSB9KS5waXBlKFxuICAgICAgICB0YXAociA9PiB0aGlzLnJlY2lwZXMucHVzaChyKSlcbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgLy8gRGVib3VuY2UgdG8gbGV0IGVub3VnaCB0aW1lIGZvciB0aGUgcG9zIHRvIGJlIGRlZmluZWRcbiAgZ2V0U3VnZ2VzdGlvbihcbiAgICBzaGVsZl9pbmdyZWRpZW50c19pZHM6IHN0cmluZ1tdLFxuICAgIGN1cnJlbnRfaW5ncmVkaWVudHNfaWRzOiBzdHJpbmdbXSxcbiAgICBiYXNrZXRfaW5ncmVkaWVudHNfaWRzOiBzdHJpbmdbXSxcbiAgICBncm91cF9pZDogc3RyaW5nXG4gICk6IE9ic2VydmFibGU8UmVjaXBlW10+IHtcbiAgICByZXR1cm4gY29tYmluZUxhdGVzdChbdGhpcy5zdXBwbGllcnNTZXJ2aWNlLnN1cHBsaWVyJCwgdGhpcy5wb3NTZXJ2aWNlLnBvcyRdKS5waXBlKFxuICAgICAgc2tpcFdoaWxlKHJlc3VsdHMgPT4gIXJlc3VsdHNbMF0pLFxuICAgICAgZGVib3VuY2VUaW1lKDEwMCksXG4gICAgICBzd2l0Y2hNYXAocmVzdWx0cyA9PiB7XG4gICAgICAgIGNvbnN0IGJvZHkgPSB7IHNoZWxmX2luZ3JlZGllbnRzX2lkcywgY3VycmVudF9pbmdyZWRpZW50c19pZHMsIGJhc2tldF9pbmdyZWRpZW50c19pZHMsIGdyb3VwX2lkIH07XG4gICAgICAgIGxldCBzdXBwbGllckZpbHRlciA9IGBzdXBwbGllcl9pZD0ke3Jlc3VsdHNbMF0uaWR9YDtcbiAgICAgICAgaWYgKHJlc3VsdHNbMV0pIHtcbiAgICAgICAgICBzdXBwbGllckZpbHRlciA9IGBzdXBwbGllcl9pZD0ke3Jlc3VsdHNbMF0uaWR9JnBvc19pZD0ke3Jlc3VsdHNbMV0uaWR9YDtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCB1cmwgPSBNSUFNX0FQSV9IT1NUICsgYHJlY2lwZXMvc3VnZ2VzdGlvbnM/JHtzdXBwbGllckZpbHRlcn0maW5jbHVkZT1pbmdyZWRpZW50cyxyZWNpcGUtc3RlcHMsc3BvbnNvcnMscmVjaXBlLXR5cGVgO1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLnBvc3QodXJsLCBib2R5KTtcbiAgICAgIH0pLFxuICAgICAgbWFwKChyZXR1cm5lZFJlY2lwZXM6IERvY3VtZW50Q29sbGVjdGlvbjxSZWNpcGU+KSA9PiB7XG4gICAgICAgIGNvbnN0IHJlY2lwZXMgPSB0aGlzLm5ld0NvbGxlY3Rpb24oKTtcbiAgICAgICAgcmVjaXBlcy5maWxsKHJldHVybmVkUmVjaXBlcyk7XG4gICAgICAgIHJldHVybiByZWNpcGVzLmRhdGE7XG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICBnZXRQcmljaW5nKHJlY2lwZUlkLCBwb3NJZCwgc2VydmVzID0gbnVsbCk6IE9ic2VydmFibGU8UmVjaXBlUHJpY2luZz4ge1xuICAgIGlmICghcmVjaXBlSWQpIHtcbiAgICAgIHJldHVybiBvZihudWxsKTtcbiAgICB9XG5cbiAgICBsZXQgdXJsID0gTUlBTV9BUElfSE9TVCArIGByZWNpcGVzLyR7cmVjaXBlSWR9L3ByaWNpbmc/cG9pbnRfb2Zfc2FsZV9pZD0ke3Bvc0lkfWA7XG4gICAgaWYgKHNlcnZlcykge1xuICAgICAgdXJsICs9IGAmc2VydmVzPSR7c2VydmVzfWA7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHVybCkucGlwZShcbiAgICAgIG1hcChyZXN1bHQgPT4gbmV3IFJlY2lwZVByaWNpbmcocmVzdWx0KSlcbiAgICApO1xuICB9XG5cbiAgY3JlYXRlRnJvbVVybChzb3VyY2U6IHN0cmluZywgZXh0X2xpbms6IHN0cmluZyk6IE9ic2VydmFibGU8UmVjaXBlPiB7XG4gICAgaWYgKCFzb3VyY2UgfHwgIWV4dF9saW5rKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ05vIHNvdXJjZSBvciByZWNpcGUgbGluayBwcm92aWRlZCcpO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChgJHtlbnZpcm9ubWVudC5taWFtQVBJfS9hcGkvdjEvcmVjaXBlcy9mcm9tX3VybGAsIHsgc291cmNlLCBleHRfbGluayB9KS5waXBlKFxuICAgICAgbWFwKChyZXN1bHQ6IGFueSkgPT4gcmVzdWx0LmRhdGEgYXMgUmVjaXBlKVxuICAgICk7XG4gIH1cblxuICAvLyBPcGVuIG1vZGFsIHNob3dpbmcgcmVjaXBlIGRldGFpbHNcbiAgZGlzcGxheShyZWNpcGVJZDogc3RyaW5nLCB7IHByZXZpZXdBbGxvd2VkID0gdHJ1ZSwgZ3Vlc3RzID0gbnVsbCwgcHJldmlld01vZGUgPSBmYWxzZX0pIHtcbiAgICBpZiAoIXJlY2lwZUlkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5nZXQocmVjaXBlSWQsIHsgaW5jbHVkZTogWydpbmdyZWRpZW50cycsICdyZWNpcGUtc3RlcHMnLCAncmVjaXBlLXR5cGUnLCAnc3BvbnNvcnMnXSB9KVxuICAgICAgLnBpcGUoc2tpcFdoaWxlKHJlY2lwZSA9PiByZWNpcGUuaXNfbG9hZGluZykpXG4gICAgICAuc3Vic2NyaWJlKHJlY2lwZSA9PiB7XG4gICAgICAgIHRoaXMuZGlzcGxheU9iamVjdChyZWNpcGUsIHtwcmV2aWV3QWxsb3dlZCwgZ3Vlc3RzLCBwcmV2aWV3TW9kZSB9KTtcbiAgICAgIH0pO1xuICB9XG5cbiAgZGlzcGxheU9iamVjdChyZWNpcGU6IFJlY2lwZSwgeyBwcmV2aWV3QWxsb3dlZCA9IHRydWUsIGd1ZXN0cyA9IG51bGwsIHByZXZpZXdNb2RlID0gZmFsc2V9KXtcbiAgICBpZiAoIXJlY2lwZSl7XG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICByZWNpcGUubW9kaWZpZWRHdWVzdHMgPSBndWVzdHMgfHwgK3JlY2lwZS5ndWVzdHM7XG4gICAgdGhpcy5kaXNwbGF5ZWRSZWNpcGUkLm5leHQoeyBwcmV2aWV3QWxsb3dlZCAsIHJlY2lwZSwgcHJldmlld01vZGUgfSk7XG4gICAgaWYgKCFwcmV2aWV3TW9kZSkge1xuICAgICAgdGhpcy5yZWNpcGVFdmVudHNTZXJ2aWNlLnNlbmRFdmVudChyZWNpcGUsIHRoaXMucmVjaXBlRXZlbnRzU2VydmljZS5BQ1RJT05fRElTUExBWUVEKTtcbiAgICB9XG4gIH1cblxuICB0b2dnbGVIZWxwZXIoKSB7XG4gICAgdGhpcy5kaXNwbGF5SGVscGVyJC5uZXh0KCF0aGlzLmRpc3BsYXlIZWxwZXIkLnZhbHVlKTtcbiAgfVxuXG4gIGhpZGUoKSB7XG4gICAgdGhpcy5kaXNwbGF5ZWRSZWNpcGUkLm5leHQobnVsbCk7XG4gICAgdGhpcy5oaWRkZW4uZW1pdCh0cnVlKTtcbiAgfVxuXG4gIHByaXZhdGUgY3JlYXRlKGV4dElkOiBzdHJpbmcsIHJlY2lwZSA6IE1pYW1SZWNpcGUpIHtcbiAgICBjb25zdCByID0gdGhpcy5uZXcoKTtcbiAgICAvLyBDb3B5IHJlY2lwZSBpbnRvIGF0dHJpYnV0ZXNcbiAgICBPYmplY3QuYXNzaWduKHIuYXR0cmlidXRlcywgcmVjaXBlKTtcbiAgICAvLyBTZXQgcHJvdmlkZXIgJiBzdGF0dXMgKGNhY2hlZCBmcm9tIGluaXRpYWxpemVkIHZhciBNSUFNX1NUQVRVU19JRCAmIE1JQU1fUFJPVklERVJfSUQpXG4gICAgci5hZGRSZWxhdGlvbnNoaXAodGhpcy5wcm92aWRlclNlcnZpY2UuZ2V0Q2FjaGVkKCksICdyZWNpcGUtcHJvdmlkZXInKTtcbiAgICByLmFkZFJlbGF0aW9uc2hpcCh0aGlzLnN0YXR1c1NlcnZpY2UuZ2V0Q2FjaGVkKCksICdyZWNpcGUtc3RhdHVzJyk7XG4gICAgLy8gVE9ETyA6IGhhcmQgY29kZWQgKHBsYXQgcHJpbmNpcGFsIGFzIHR5cGUpXG4gICAgci5hZGRSZWxhdGlvbnNoaXAodGhpcy50eXBlU2VydmljZS5nZXRUeXBlQnlOYW1lKCdwbGF0IHByaW5jaXBhbCcpLCAncmVjaXBlLXR5cGUnKTtcbiAgICAvLyBPdmVycmlkZSBzcGVjaWZpYyBtaWFtIHJlc2VydmVkIGF0dHJpYnV0ZXNcbiAgICByLmF0dHJpYnV0ZXMuc291cmNlID0gbnVsbDtcbiAgICByLmF0dHJpYnV0ZXMuZGVzY3JpcHRpb24gPSBudWxsO1xuICAgIHIuYXR0cmlidXRlc1snZXh0LWlkJ10gPSBleHRJZDtcbiAgICByZXR1cm4gci5zYXZlKCkucGlwZShcbiAgICAgIHNraXBXaGlsZSgocjogYW55KSA9PiByLmlzX2xvYWRpbmcpLFxuICAgICAgbWFwKChyOiBhbnkpID0+IHIuZGF0YSlcbiAgICApXG4gIH1cblxuICBwcml2YXRlIGNyZWF0ZUV4dElkKHRpdGxlOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIGNvbnN0IHByb3ZpZGVyID0gdGhpcy5wcm92aWRlclNlcnZpY2UuZ2V0Q2FjaGVkKCk7XG4gICAgcmV0dXJuIGAke3Byb3ZpZGVyLmF0dHJpYnV0ZXMubmFtZS5zbGljZSgwLCAzKS50b1VwcGVyQ2FzZSgpfS0ke3RpdGxlLnJlcGxhY2UoL1xccysvZ20sICctJykudG9Mb3dlckNhc2UoKX1gO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRSZWNpcGUocHJvdmlkZXJJZDogc3RyaW5nLCBleHRJZDogc3RyaW5nKSB7XG4gICAgcmV0dXJuIHRoaXMuYWxsKHtcbiAgICAgIGJlZm9yZXBhdGg6IGByZWNpcGUtcHJvdmlkZXJzLyR7cHJvdmlkZXJJZH1gLFxuICAgICAgcmVtb3RlZmlsdGVyOiB7XG4gICAgICAgICdleHQtaWQnOiBleHRJZCxcbiAgICAgICAgJ2FjdGl2ZSc6ICd0cnVlLGZhbHNlJ1xuICAgICAgfVxuICAgIH0pXG4gIH1cblxuICAvKipcbiAgICogaGVscCB1cyB0byBrZWVwIGEgdHJhY2sgb2YgcmFuZG9tIFxuICAgKiBhbmQgYXZvaWQgdG8gc2hvdyBzYW1lIHJlY2lwZSBtdXRpcGxlIHRpbWVzXG4gICAqL1xuICBwcml2YXRlIGludFJhbmRvbVNlZWQoKTogdm9pZCB7XG4gICAgdGhpcy5yYW5kb21TZWVkID0gRGF0ZS5ub3coKTtcbiAgfVxuXG59XG4iXX0=
|
|
210
|
+
}], function () { return [{ type: i1.HttpClient }, { type: i2.RecipeProviderService }, { type: i3.RecipeStatusService }, { type: i4.RecipeTypeService }, { type: i5.SuppliersService }, { type: i6.PointOfSalesService }, { type: i7.GroceriesListsService }, { type: i8.IngredientsService }, { type: i9.RecipeStepsService }, { type: i10.RecipeEventsService }, { type: i11.SponsorService }, { type: i12.PackageService }, { type: i13.TagsService }]; }, null); })();
|
|
211
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVjaXBlcy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6Ii9idWlsZHMvbWlhbS9uZy1taWFtLXNkay9wcm9qZWN0cy9uZy1taWFtL3NyYy8iLCJzb3VyY2VzIjpbImxpYi9fc2VydmljZXMvcmVjaXBlcy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pELE9BQU8sRUFBRSxHQUFHLEVBQUUsRUFBRSxFQUFjLFFBQVEsRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3JGLE9BQU8sRUFBRSxPQUFPLEVBQXNCLE1BQU0sYUFBYSxDQUFDO0FBQzFELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUMzQyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUMxRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsWUFBWSxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzlFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNsRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDMUQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFNUQsT0FBTyxFQUFFLGdCQUFnQixFQUFF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QyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsV0FBVyxFQUFFLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsR0FBRyxDQUFDLENBQUMsV0FBVyxFQUFFLEVBQUUsQ0FBQztJQUM5RyxDQUFDO0lBRU8sU0FBUyxDQUFDLFVBQWtCLEVBQUUsS0FBYTtRQUNqRCxPQUFPLElBQUksQ0FBQyxHQUFHLENBQUM7WUFDZCxVQUFVLEVBQUUsb0JBQW9CLFVBQVUsRUFBRTtZQUM1QyxZQUFZLEVBQUU7Z0JBQ1osUUFBUSxFQUFFLEtBQUs7Z0JBQ2YsUUFBUSxFQUFFLFlBQVk7YUFDdkI7U0FDRixDQUFDLENBQUE7SUFDSixDQUFDO0lBRUQ7OztPQUdHO0lBQ0ssYUFBYTtRQUNuQixJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQztJQUMvQixDQUFDOzs0RUExTlUsY0FBYztzREFBZCxjQUFjLFdBQWQsY0FBYyxtQkFGYixNQUFNO2tEQUVQLGNBQWM7Y0FIMUIsVUFBVTtlQUFDO2dCQUNWLFVBQVUsRUFBRSxNQUFNO2FBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRXZlbnRFbWl0dGVyLCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBpaWYsIG9mLCBPYnNlcnZhYmxlLCBmb3JrSm9pbiwgQmVoYXZpb3JTdWJqZWN0LCBjb21iaW5lTGF0ZXN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBTZXJ2aWNlLCBEb2N1bWVudENvbGxlY3Rpb24gfSBmcm9tICduZ3gtanNvbmFwaSc7XG5pbXBvcnQgeyBSZWNpcGUgfSBmcm9tICcuLi9fbW9kZWxzL3JlY2lwZSc7XG5pbXBvcnQgeyBSZWNpcGVQcm92aWRlclNlcnZpY2UgfSBmcm9tICcuL3JlY2lwZS1wcm92aWRlci5zZXJ2aWNlJztcbmltcG9ydCB7IFJlY2lwZVN0YXR1c1NlcnZpY2UgfSBmcm9tICcuL3JlY2lwZS1zdGF0dXMuc2VydmljZSc7XG5pbXBvcnQgeyBSZWNpcGVUeXBlU2VydmljZSB9IGZyb20gJy4vcmVjaXBlLXR5cGUuc2VydmljZSc7XG5pbXBvcnQgeyBHcm9jZXJpZXNMaXN0c1NlcnZpY2UgfSBmcm9tICcuL2dyb2Nlcmllcy1saXN0cy5zZXJ2aWNlJztcbmltcG9ydCB7IFJlY2lwZUV2ZW50c1NlcnZpY2UgfSBmcm9tICcuL3JlY2lwZS1ldmVudHMuc2VydmljZSc7XG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUsIG1hcCwgc2tpcFdoaWxlLCBzd2l0Y2hNYXAsIHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBlbnZpcm9ubWVudCB9IGZyb20gJy4uL2Vudmlyb25tZW50cy9lbnZpcm9ubWVudCc7XG5pbXBvcnQgeyBJbmdyZWRpZW50c1NlcnZpY2UgfSBmcm9tICcuL2luZ3JlZGllbnRzLnNlcnZpY2UnO1xuaW1wb3J0IHsgUmVjaXBlU3RlcHNTZXJ2aWNlIH0gZnJvbSAnLi9yZWNpcGUtc3RlcHMuc2VydmljZSc7XG5pbXBvcnQgeyBNaWFtUmVjaXBlIH0gZnJvbSAnLi4vX3R5cGVzL3JlY2lwZSc7XG5pbXBvcnQgeyBTdXBwbGllcnNTZXJ2aWNlIH0gZnJvbSAnLi9zdXBwbGllcnMuc2VydmljZSc7XG5pbXBvcnQgeyBSZWNpcGVQcmljaW5nIH0gZnJvbSAnLi4vX21vZGVscy9yZWNpcGUtcHJpY2luZyc7XG5pbXBvcnQgeyBTcG9uc29yU2VydmljZSB9IGZyb20gJy4vc3BvbnNvci5zZXJ2aWNlJztcbmltcG9ydCB7IFBvaW50T2ZTYWxlc1NlcnZpY2UgfSBmcm9tICcuL3BvaW50LW9mLXNhbGVzLnNlcnZpY2UnO1xuaW1wb3J0IHsgUGFja2FnZVNlcnZpY2UgfSBmcm9tICcuL3BhY2thZ2Uuc2VydmljZSc7XG5pbXBvcnQgeyBUYWdzU2VydmljZSB9IGZyb20gJy4vdGFncy5zZXJ2aWNlJztcblxuY29uc3QgTUlBTV9BUElfSE9TVCA9IGAke2Vudmlyb25tZW50Lm1pYW1BUEl9L2FwaS92MS9gO1xuXG5pbnRlcmZhY2UgUmVjaXBlRGlzcGxheSB7XG4gIHByZXZpZXdBbGxvd2VkOiBib29sZWFuO1xuICByZWNpcGU6IFJlY2lwZTtcbiAgcHJldmlld01vZGU6IGJvb2xlYW47XG59XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIFJlY2lwZXNTZXJ2aWNlIGV4dGVuZHMgU2VydmljZTxSZWNpcGU+IHtcblxuICByZXNvdXJjZSA9IFJlY2lwZTtcbiAgdHlwZSA9ICdyZWNpcGVzJztcbiAgZGlzcGxheWVkUmVjaXBlJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8UmVjaXBlRGlzcGxheT4obnVsbCk7XG4gIGRpc3BsYXlIZWxwZXIkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSk7XG4gIGRpc3BsYXllZFJlY2lwZUNoYW5nZWQgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG4gIGhpZGRlbiA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcblxuICBwcml2YXRlIHJhbmRvbVNlZWQ6IG51bWJlcjtcbiAgcHJpdmF0ZSBwYWdlTnVtYmVyID0gMTtcbiAgcHJpdmF0ZSByZWNpcGVzOiBSZWNpcGVbXSA9IFtdO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgaHR0cDogSHR0cENsaWVudCxcbiAgICBwcml2YXRlIHByb3ZpZGVyU2VydmljZTogUmVjaXBlUHJvdmlkZXJTZXJ2aWNlLFxuICAgIHByaXZhdGUgc3RhdHVzU2VydmljZTogUmVjaXBlU3RhdHVzU2VydmljZSxcbiAgICBwcml2YXRlIHR5cGVTZXJ2aWNlOiBSZWNpcGVUeXBlU2VydmljZSxcbiAgICBwcml2YXRlIHN1cHBsaWVyc1NlcnZpY2U6IFN1cHBsaWVyc1NlcnZpY2UsXG4gICAgcHJpdmF0ZSBwb3NTZXJ2aWNlOiBQb2ludE9mU2FsZXNTZXJ2aWNlLFxuICAgIHByaXZhdGUgbGlzdHNTZXJ2aWNlOiBHcm9jZXJpZXNMaXN0c1NlcnZpY2UsXG4gICAgcHJpdmF0ZSBpbmdyZWRpZW50c1NlcnZpY2U6IEluZ3JlZGllbnRzU2VydmljZSxcbiAgICBwcml2YXRlIHJlY2lwZVN0ZXBzU2VydmljZTogUmVjaXBlU3RlcHNTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVjaXBlRXZlbnRzU2VydmljZTogUmVjaXBlRXZlbnRzU2VydmljZSxcbiAgICBwcml2YXRlIHNwb25zb3JTZXJ2aWNlOiBTcG9uc29yU2VydmljZSxcbiAgICBwcml2YXRlIHBhY2thZ2VTZXJ2aWNlOiBQYWNrYWdlU2VydmljZSxcbiAgICBwcml2YXRlIHRhZ3NTZXJ2aWNlOiBUYWdzU2VydmljZVxuICApIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMucmVnaXN0ZXIoKTtcbiAgICB0aGlzLmludFJhbmRvbVNlZWQoKTtcbiAgfVxuXG4gIGxvYWRSZWNpcGVzKCk6IE9ic2VydmFibGU8UmVjaXBlW10+IHtcbiAgICBjb25zdCBsaXN0ID0gdGhpcy5saXN0c1NlcnZpY2UubGlzdCQudmFsdWU7XG4gICAgaWYgKCFsaXN0KSB7XG4gICAgICByZXR1cm4gb2YobnVsbCk7XG4gICAgfSBlbHNlIGlmIChsaXN0LmF0dHJpYnV0ZXNbJ3JlY2lwZXMtaW5mb3MnXS5sZW5ndGggPT09IDApIHtcbiAgICAgIHJldHVybiBvZihbXSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGZvcmtKb2luKGxpc3QuYXR0cmlidXRlc1sncmVjaXBlcy1pbmZvcyddLm1hcChpbmZvID0+IHtcbiAgICAgIHJldHVybiB0aGlzLmdldE9yRmV0Y2goaW5mby5pZCkucGlwZShcbiAgICAgICAgc2tpcFdoaWxlKHIgPT4gci5pc19sb2FkaW5nKSxcbiAgICAgICAgdGFwKHIgPT4gci5tb2RpZmllZEd1ZXN0cyA9IGluZm8uZ3Vlc3RzKVxuICAgICAgKTtcbiAgICB9KSk7XG4gIH1cblxuICAvLyBDcmVhdGUgcmVjaXBlICYgYXBwZW5kIHRvIGdyb2NlcmllcyBsaXN0XG4gIGdldE9yQ3JlYXRlKHJlY2lwZSwgb3BlbkJhc2tldDogYm9vbGVhbiA9IGZhbHNlKSB7XG4gICAgY29uc3QgcHJvdmlkZXIgPSB0aGlzLnByb3ZpZGVyU2VydmljZS5nZXRDYWNoZWQoKTtcbiAgICBjb25zdCBleHRJZCA9IHRoaXMuY3JlYXRlRXh0SWQocmVjaXBlLnRpdGxlKTtcblxuICAgIC8vIENoZWNrIGlmIGV4aXN0cyBvciBjcmVhdGUgaXRcbiAgICByZXR1cm4gdGhpcy5nZXRSZWNpcGUocHJvdmlkZXIuaWQsIGV4dElkKS5waXBlKFxuICAgICAgc2tpcFdoaWxlKHIgPT4gci5pc19sb2FkaW5nKSxcbiAgICAgIC8vIE5PVEUgOiBhZGRpbmcgb2Yodm9pZCAwKSBmb3IgZmFsc3kgb2JzZXJ2YWJsZSAobmd4LWpzb25hcGkgaXMgdHJpZ2dlcmluZyBhbiBodHRwIHJlcXVlc3Qgd2hlbiBzYXZlKCkgY2FsbGVkKVxuICAgICAgc3dpdGNoTWFwKChyKSA9PiBpaWYoKCkgPT4gISFyLmRhdGEubGVuZ3RoLCBvZihyLmRhdGFbMF0pLCBvZih2b2lkIDApLnBpcGUoc3dpdGNoTWFwKF8gPT4gdGhpcy5jcmVhdGUoZXh0SWQsIHJlY2lwZSkpKSkpLFxuICAgICAgLy8gQXBwZW5kIHJlY2lwZSB0byBjdXJyZW50IHNhdmVkIGxpc3RcbiAgICAgIHN3aXRjaE1hcCgocikgPT4gdGhpcy5saXN0c1NlcnZpY2UuYXBwZW5kUmVjaXBlVG9MaXN0KHIuaWQsIHIubW9kaWZpZWRHdWVzdHMsIG9wZW5CYXNrZXQpKVxuICAgICk7XG5cbiAgfVxuXG4gIGdldFJhbmRvbShwYWdlID0geyBudW1iZXI6IHRoaXMucGFnZU51bWJlciwgc2l6ZTogMSB9LCBmaWx0ZXJzOiBvYmplY3QgPSB7IHJldmlld2VkOiB0cnVlLCBleGNsdWRlX25vX3BpY3R1cmU6IHRydWUgfSxcbiAgICAgICAgICAgIGNsZWFyID0gZmFsc2UpOiBPYnNlcnZhYmxlPFJlY2lwZVtdPiB7XG4gICAgdGhpcy5wYWdlTnVtYmVyKys7XG4gICAgLy8gRmV0Y2ggcmFuZG9tIHJlY2lwZXNcbiAgICByZXR1cm4gdGhpcy5hbGwoe1xuICAgICAgcGFnZSxcbiAgICAgIHJlbW90ZWZpbHRlcjogT2JqZWN0LmFzc2lnbih7Li4uZmlsdGVyc30sIHsgcmFuZG9tOiB0aGlzLnJhbmRvbVNlZWR9KSxcbiAgICAgIGluY2x1ZGU6IFsnaW5ncmVkaWVudHMnLCAncmVjaXBlLXN0ZXBzJywgJ3JlY2lwZS1zdGF0dXMnLCAncmVjaXBlLXR5cGUnLCAnc3BvbnNvcnMnLCAncmVjaXBlLXByb3ZpZGVyJywgJ3RhZ3MnXVxuICAgIH0pLnBpcGUoXG4gICAgICBza2lwV2hpbGUocmVzdWx0ID0+IHJlc3VsdC5pc19sb2FkaW5nKSxcbiAgICAgIG1hcChyZXN1bHQgPT4gcmVzdWx0LmRhdGEpXG4gICAgKTtcbiAgfVxuXG4gIC8vIERFUFJFQ0FURUQgLyB1c2UgVFRMIGluc3RlYWRcbiAgZ2V0T3JGZXRjaChyZWNpcGVJZCk6IE9ic2VydmFibGU8UmVjaXBlPiB7XG4gICAgY29uc3QgcmVjaXBlID0gdGhpcy5yZWNpcGVzLmZpbmQociA9PiByLmlkID09PSByZWNpcGVJZCk7XG4gICAgaWYgKHJlY2lwZSkge1xuICAgICAgcmV0dXJuIG9mKHJlY2lwZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB0aGlzLmdldChyZWNpcGVJZCwge1xuICAgICAgICBpbmNsdWRlOiBbJ2luZ3JlZGllbnRzJywgJ3JlY2lwZS1zdGVwcycsICdyZWNpcGUtc3RhdHVzJywgJ3JlY2lwZS10eXBlJywgJ3Nwb25zb3JzJywgJ3RhZ3MnIF1cbiAgICAgIH0pLnBpcGUoXG4gICAgICAgIHRhcChyID0+IHRoaXMucmVjaXBlcy5wdXNoKHIpKVxuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICAvLyBEZWJvdW5jZSB0byBsZXQgZW5vdWdoIHRpbWUgZm9yIHRoZSBwb3MgdG8gYmUgZGVmaW5lZFxuICBnZXRTdWdnZXN0aW9uKFxuICAgIHNoZWxmX2luZ3JlZGllbnRzX2lkczogc3RyaW5nW10sXG4gICAgY3VycmVudF9pbmdyZWRpZW50c19pZHM6IHN0cmluZ1tdLFxuICAgIGJhc2tldF9pbmdyZWRpZW50c19pZHM6IHN0cmluZ1tdLFxuICAgIGdyb3VwX2lkOiBzdHJpbmdcbiAgKTogT2JzZXJ2YWJsZTxSZWNpcGVbXT4ge1xuICAgIHJldHVybiBjb21iaW5lTGF0ZXN0KFt0aGlzLnN1cHBsaWVyc1NlcnZpY2Uuc3VwcGxpZXIkLCB0aGlzLnBvc1NlcnZpY2UucG9zJF0pLnBpcGUoXG4gICAgICBza2lwV2hpbGUocmVzdWx0cyA9PiAhcmVzdWx0c1swXSksXG4gICAgICBkZWJvdW5jZVRpbWUoMTAwKSxcbiAgICAgIHN3aXRjaE1hcChyZXN1bHRzID0+IHtcbiAgICAgICAgY29uc3QgYm9keSA9IHsgc2hlbGZfaW5ncmVkaWVudHNfaWRzLCBjdXJyZW50X2luZ3JlZGllbnRzX2lkcywgYmFza2V0X2luZ3JlZGllbnRzX2lkcywgZ3JvdXBfaWQgfTtcbiAgICAgICAgbGV0IHN1cHBsaWVyRmlsdGVyID0gYHN1cHBsaWVyX2lkPSR7cmVzdWx0c1swXS5pZH1gO1xuICAgICAgICBpZiAocmVzdWx0c1sxXSkge1xuICAgICAgICAgIHN1cHBsaWVyRmlsdGVyID0gYHN1cHBsaWVyX2lkPSR7cmVzdWx0c1swXS5pZH0mcG9zX2lkPSR7cmVzdWx0c1sxXS5pZH1gO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IHVybCA9IE1JQU1fQVBJX0hPU1QgKyBgcmVjaXBlcy9zdWdnZXN0aW9ucz8ke3N1cHBsaWVyRmlsdGVyfSZpbmNsdWRlPWluZ3JlZGllbnRzLHJlY2lwZS1zdGVwcyxzcG9uc29ycyxyZWNpcGUtdHlwZSx0YWdzYDtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHVybCwgYm9keSk7XG4gICAgICB9KSxcbiAgICAgIG1hcCgocmV0dXJuZWRSZWNpcGVzOiBEb2N1bWVudENvbGxlY3Rpb248UmVjaXBlPikgPT4ge1xuICAgICAgICBjb25zdCByZWNpcGVzID0gdGhpcy5uZXdDb2xsZWN0aW9uKCk7XG4gICAgICAgIHJlY2lwZXMuZmlsbChyZXR1cm5lZFJlY2lwZXMpO1xuICAgICAgICByZXR1cm4gcmVjaXBlcy5kYXRhO1xuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgZ2V0UHJpY2luZyhyZWNpcGVJZCwgcG9zSWQsIHNlcnZlcyA9IG51bGwpOiBPYnNlcnZhYmxlPFJlY2lwZVByaWNpbmc+IHtcbiAgICBpZiAoIXJlY2lwZUlkKSB7XG4gICAgICByZXR1cm4gb2YobnVsbCk7XG4gICAgfVxuXG4gICAgbGV0IHVybCA9IE1JQU1fQVBJX0hPU1QgKyBgcmVjaXBlcy8ke3JlY2lwZUlkfS9wcmljaW5nP3BvaW50X29mX3NhbGVfaWQ9JHtwb3NJZH1gO1xuICAgIGlmIChzZXJ2ZXMpIHtcbiAgICAgIHVybCArPSBgJnNlcnZlcz0ke3NlcnZlc31gO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5odHRwLmdldCh1cmwpLnBpcGUoXG4gICAgICBtYXAocmVzdWx0ID0+IG5ldyBSZWNpcGVQcmljaW5nKHJlc3VsdCkpXG4gICAgKTtcbiAgfVxuXG4gIGNyZWF0ZUZyb21Vcmwoc291cmNlOiBzdHJpbmcsIGV4dF9saW5rOiBzdHJpbmcpOiBPYnNlcnZhYmxlPFJlY2lwZT4ge1xuICAgIGlmICghc291cmNlIHx8ICFleHRfbGluaykge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdObyBzb3VyY2Ugb3IgcmVjaXBlIGxpbmsgcHJvdmlkZWQnKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3QoYCR7ZW52aXJvbm1lbnQubWlhbUFQSX0vYXBpL3YxL3JlY2lwZXMvZnJvbV91cmxgLCB7IHNvdXJjZSwgZXh0X2xpbmsgfSkucGlwZShcbiAgICAgIG1hcCgocmVzdWx0OiBhbnkpID0+IHJlc3VsdC5kYXRhIGFzIFJlY2lwZSlcbiAgICApO1xuICB9XG5cbiAgLy8gT3BlbiBtb2RhbCBzaG93aW5nIHJlY2lwZSBkZXRhaWxzXG4gIGRpc3BsYXkocmVjaXBlSWQ6IHN0cmluZywgeyBwcmV2aWV3QWxsb3dlZCA9IHRydWUsIGd1ZXN0cyA9IG51bGwsIHByZXZpZXdNb2RlID0gZmFsc2V9KSB7XG4gICAgaWYgKCFyZWNpcGVJZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuZ2V0KHJlY2lwZUlkLCB7IGluY2x1ZGU6IFsnaW5ncmVkaWVudHMnLCAncmVjaXBlLXN0ZXBzJywgJ3JlY2lwZS10eXBlJywgJ3Nwb25zb3JzJywgJ3RhZ3MnXSB9KVxuICAgICAgLnBpcGUoc2tpcFdoaWxlKHJlY2lwZSA9PiByZWNpcGUuaXNfbG9hZGluZykpXG4gICAgICAuc3Vic2NyaWJlKHJlY2lwZSA9PiB7XG4gICAgICAgIHRoaXMuZGlzcGxheU9iamVjdChyZWNpcGUsIHtwcmV2aWV3QWxsb3dlZCwgZ3Vlc3RzLCBwcmV2aWV3TW9kZSB9KTtcbiAgICAgIH0pO1xuICB9XG5cbiAgZGlzcGxheU9iamVjdChyZWNpcGU6IFJlY2lwZSwgeyBwcmV2aWV3QWxsb3dlZCA9IHRydWUsIGd1ZXN0cyA9IG51bGwsIHByZXZpZXdNb2RlID0gZmFsc2V9KXtcbiAgICBpZiAoIXJlY2lwZSl7XG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICByZWNpcGUubW9kaWZpZWRHdWVzdHMgPSBndWVzdHMgfHwgK3JlY2lwZS5ndWVzdHM7XG4gICAgdGhpcy5kaXNwbGF5ZWRSZWNpcGUkLm5leHQoeyBwcmV2aWV3QWxsb3dlZCAsIHJlY2lwZSwgcHJldmlld01vZGUgfSk7XG4gICAgaWYgKCFwcmV2aWV3TW9kZSkge1xuICAgICAgdGhpcy5yZWNpcGVFdmVudHNTZXJ2aWNlLnNlbmRFdmVudChyZWNpcGUsIHRoaXMucmVjaXBlRXZlbnRzU2VydmljZS5BQ1RJT05fRElTUExBWUVEKTtcbiAgICB9XG4gIH1cblxuICB0b2dnbGVIZWxwZXIoKSB7XG4gICAgdGhpcy5kaXNwbGF5SGVscGVyJC5uZXh0KCF0aGlzLmRpc3BsYXlIZWxwZXIkLnZhbHVlKTtcbiAgfVxuXG4gIGhpZGUoKSB7XG4gICAgdGhpcy5kaXNwbGF5ZWRSZWNpcGUkLm5leHQobnVsbCk7XG4gICAgdGhpcy5oaWRkZW4uZW1pdCh0cnVlKTtcbiAgfVxuXG4gIHByaXZhdGUgY3JlYXRlKGV4dElkOiBzdHJpbmcsIHJlY2lwZSA6IE1pYW1SZWNpcGUpIHtcbiAgICBjb25zdCByID0gdGhpcy5uZXcoKTtcbiAgICAvLyBDb3B5IHJlY2lwZSBpbnRvIGF0dHJpYnV0ZXNcbiAgICBPYmplY3QuYXNzaWduKHIuYXR0cmlidXRlcywgcmVjaXBlKTtcbiAgICAvLyBTZXQgcHJvdmlkZXIgJiBzdGF0dXMgKGNhY2hlZCBmcm9tIGluaXRpYWxpemVkIHZhciBNSUFNX1NUQVRVU19JRCAmIE1JQU1fUFJPVklERVJfSUQpXG4gICAgci5hZGRSZWxhdGlvbnNoaXAodGhpcy5wcm92aWRlclNlcnZpY2UuZ2V0Q2FjaGVkKCksICdyZWNpcGUtcHJvdmlkZXInKTtcbiAgICByLmFkZFJlbGF0aW9uc2hpcCh0aGlzLnN0YXR1c1NlcnZpY2UuZ2V0Q2FjaGVkKCksICdyZWNpcGUtc3RhdHVzJyk7XG4gICAgLy8gVE9ETyA6IGhhcmQgY29kZWQgKHBsYXQgcHJpbmNpcGFsIGFzIHR5cGUpXG4gICAgci5hZGRSZWxhdGlvbnNoaXAodGhpcy50eXBlU2VydmljZS5nZXRUeXBlQnlOYW1lKCdwbGF0IHByaW5jaXBhbCcpLCAncmVjaXBlLXR5cGUnKTtcbiAgICAvLyBPdmVycmlkZSBzcGVjaWZpYyBtaWFtIHJlc2VydmVkIGF0dHJpYnV0ZXNcbiAgICByLmF0dHJpYnV0ZXMuc291cmNlID0gbnVsbDtcbiAgICByLmF0dHJpYnV0ZXMuZGVzY3JpcHRpb24gPSBudWxsO1xuICAgIHIuYXR0cmlidXRlc1snZXh0LWlkJ10gPSBleHRJZDtcbiAgICByZXR1cm4gci5zYXZlKCkucGlwZShcbiAgICAgIHNraXBXaGlsZSgocjogYW55KSA9PiByLmlzX2xvYWRpbmcpLFxuICAgICAgbWFwKChyOiBhbnkpID0+IHIuZGF0YSlcbiAgICApXG4gIH1cblxuICBwcml2YXRlIGNyZWF0ZUV4dElkKHRpdGxlOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIGNvbnN0IHByb3ZpZGVyID0gdGhpcy5wcm92aWRlclNlcnZpY2UuZ2V0Q2FjaGVkKCk7XG4gICAgcmV0dXJuIGAke3Byb3ZpZGVyLmF0dHJpYnV0ZXMubmFtZS5zbGljZSgwLCAzKS50b1VwcGVyQ2FzZSgpfS0ke3RpdGxlLnJlcGxhY2UoL1xccysvZ20sICctJykudG9Mb3dlckNhc2UoKX1gO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRSZWNpcGUocHJvdmlkZXJJZDogc3RyaW5nLCBleHRJZDogc3RyaW5nKSB7XG4gICAgcmV0dXJuIHRoaXMuYWxsKHtcbiAgICAgIGJlZm9yZXBhdGg6IGByZWNpcGUtcHJvdmlkZXJzLyR7cHJvdmlkZXJJZH1gLFxuICAgICAgcmVtb3RlZmlsdGVyOiB7XG4gICAgICAgICdleHQtaWQnOiBleHRJZCxcbiAgICAgICAgJ2FjdGl2ZSc6ICd0cnVlLGZhbHNlJ1xuICAgICAgfVxuICAgIH0pXG4gIH1cblxuICAvKipcbiAgICogaGVscCB1cyB0byBrZWVwIGEgdHJhY2sgb2YgcmFuZG9tIFxuICAgKiBhbmQgYXZvaWQgdG8gc2hvdyBzYW1lIHJlY2lwZSBtdXRpcGxlIHRpbWVzXG4gICAqL1xuICBwcml2YXRlIGludFJhbmRvbVNlZWQoKTogdm9pZCB7XG4gICAgdGhpcy5yYW5kb21TZWVkID0gRGF0ZS5ub3coKTtcbiAgfVxuXG59XG4iXX0=
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { HttpClient } from '@angular/common/http';
|
|
2
|
+
import { Injectable } from '@angular/core';
|
|
3
|
+
import { Service } from 'ngx-jsonapi';
|
|
4
|
+
import { Tag } from '../_models/tag';
|
|
5
|
+
import { environment } from '../environments/environment';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
import * as i1 from "@angular/common/http";
|
|
8
|
+
const MIAM_API_HOST = `${environment.miamAPI}/api/v1/`;
|
|
9
|
+
export class TagsService extends Service {
|
|
10
|
+
constructor(http) {
|
|
11
|
+
super();
|
|
12
|
+
this.http = http;
|
|
13
|
+
this.resource = Tag;
|
|
14
|
+
this.type = 'tags';
|
|
15
|
+
this.register();
|
|
16
|
+
}
|
|
17
|
+
autocomplete(searchStr) {
|
|
18
|
+
return this.http.get(MIAM_API_HOST + `tags/autocomplete/${searchStr}`);
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
TagsService.ɵfac = function TagsService_Factory(t) { return new (t || TagsService)(i0.ɵɵinject(i1.HttpClient)); };
|
|
22
|
+
TagsService.ɵprov = i0.ɵɵdefineInjectable({ token: TagsService, factory: TagsService.ɵfac, providedIn: 'root' });
|
|
23
|
+
/*@__PURE__*/ (function () { i0.ɵsetClassMetadata(TagsService, [{
|
|
24
|
+
type: Injectable,
|
|
25
|
+
args: [{
|
|
26
|
+
providedIn: 'root'
|
|
27
|
+
}]
|
|
28
|
+
}], function () { return [{ type: i1.HttpClient }]; }, null); })();
|
|
29
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFncy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6Ii9idWlsZHMvbWlhbS9uZy1taWFtLXNkay9wcm9qZWN0cy9uZy1taWFtL3NyYy8iLCJzb3VyY2VzIjpbImxpYi9fc2VydmljZXMvdGFncy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNsRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDdEMsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3JDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQzs7O0FBRzFELE1BQU0sYUFBYSxHQUFHLEdBQUcsV0FBVyxDQUFDLE9BQU8sVUFBVSxDQUFDO0FBS3ZELE1BQU0sT0FBTyxXQUFZLFNBQVEsT0FBWTtJQUszQyxZQUNVLElBQWdCO1FBRXhCLEtBQUssRUFBRSxDQUFDO1FBRkEsU0FBSSxHQUFKLElBQUksQ0FBWTtRQUpuQixhQUFRLEdBQUcsR0FBRyxDQUFDO1FBQ2YsU0FBSSxHQUFHLE1BQU0sQ0FBQztRQU1uQixJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDbEIsQ0FBQztJQUVELFlBQVksQ0FBQyxTQUFpQjtRQUM1QixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLGFBQWEsR0FBRyxxQkFBcUIsU0FBUyxFQUFFLENBQUMsQ0FBQztJQUN6RSxDQUFDOztzRUFkVSxXQUFXO21EQUFYLFdBQVcsV0FBWCxXQUFXLG1CQUZWLE1BQU07a0RBRVAsV0FBVztjQUh2QixVQUFVO2VBQUM7Z0JBQ1YsVUFBVSxFQUFFLE1BQU07YUFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU2VydmljZSB9IGZyb20gJ25neC1qc29uYXBpJztcbmltcG9ydCB7IFRhZyB9IGZyb20gJy4uL19tb2RlbHMvdGFnJztcbmltcG9ydCB7IGVudmlyb25tZW50IH0gZnJvbSAnLi4vZW52aXJvbm1lbnRzL2Vudmlyb25tZW50JztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcblxuY29uc3QgTUlBTV9BUElfSE9TVCA9IGAke2Vudmlyb25tZW50Lm1pYW1BUEl9L2FwaS92MS9gO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBUYWdzU2VydmljZSBleHRlbmRzIFNlcnZpY2U8VGFnPiB7XG5cbiAgcHVibGljIHJlc291cmNlID0gVGFnO1xuICBwdWJsaWMgdHlwZSA9ICd0YWdzJztcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGh0dHA6IEh0dHBDbGllbnRcbiAgKSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLnJlZ2lzdGVyKCk7XG4gIH1cblxuICBhdXRvY29tcGxldGUoc2VhcmNoU3RyOiBzdHJpbmcpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KE1JQU1fQVBJX0hPU1QgKyBgdGFncy9hdXRvY29tcGxldGUvJHtzZWFyY2hTdHJ9YCk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -206,7 +206,7 @@ export class BasketPreviewBlockComponent {
|
|
|
206
206
|
this.cdr.detectChanges();
|
|
207
207
|
}
|
|
208
208
|
removeRecipe(line) {
|
|
209
|
-
this.listsService.removeRecipeFromList(line.id);
|
|
209
|
+
this.listsService.removeRecipeFromList(line.id).subscribe();
|
|
210
210
|
}
|
|
211
211
|
updateRecipe(line) {
|
|
212
212
|
this.listsService.updateRecipeGuests(line.id, line.count);
|
|
@@ -304,4 +304,4 @@ BasketPreviewBlockComponent.ɵcmp = i0.ɵɵdefineComponent({ type: BasketPreview
|
|
|
304
304
|
type: ViewChildren,
|
|
305
305
|
args: [BasketPreviewLineComponent]
|
|
306
306
|
}] }); })();
|
|
307
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFza2V0LXByZXZpZXctYmxvY2suY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Ii9idWlsZHMvbWlhbS9uZy1taWFtLXNkay9wcm9qZWN0cy9uZy1taWFtL3NyYy8iLCJzb3VyY2VzIjpbImxpYi9fd2ViLWNvbXBvbmVudHMvYmFza2V0LXByZXZpZXcvYmFza2V0LXByZXZpZXctYmxvY2svYmFza2V0LXByZXZpZXctYmxvY2suY29tcG9uZW50LnRzIiwibGliL193ZWItY29tcG9uZW50cy9iYXNrZXQtcHJldmlldy9iYXNrZXQtcHJldmlldy1ibG9jay9iYXNrZXQtcHJldmlldy1ibG9jay5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUVULEtBQUssRUFFTCxpQkFBaUIsRUFDakIsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixNQUFNLEVBQ04sWUFBWSxFQUNaLFlBQVksRUFDYixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQWdCLGVBQWUsRUFBRSxhQUFhLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDcEUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDbkYsT0FBTyxFQUFFLGNBQWMsRUFBZSxNQUFNLG9DQUFvQyxDQUFDO0FBRWpGLE9BQU8sRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3JELE9BQU8sTUFBTSxNQUFNLGtCQUFrQixDQUFDO0FBQ3RDLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHNEQUFzRCxDQUFDO0FBQ2xHLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQ2hGLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUNwRSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDakQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHFCQUFxQixDQUFDOzs7Ozs7Ozs7Ozs7Ozs7SUNsQjNDLGtDQUNFO0lBRG1HLHdNQUFTLDRDQUFvQyxJQUFDO0lBQ2pKLG1DQUE4RjtJQUM5Riw0QkFBTTtJQUFBLHNDQUFzQjtJQUFBLGlCQUFPO0lBQ3JDLGlCQUFTOzs7SUFGUSxlQUF1QjtJQUF2Qiw2Q0FBdUI7Ozs7O0lBSDVDLDZCQUNFO0lBQUEsK0JBQ0U7SUFBQSw2R0FDRTtJQUdGLCtCQUNFO0lBRDBILHFOQUF1QjtJQUNqSixtQ0FBbUY7SUFDckYsaUJBQU07SUFDUixpQkFBTTtJQUNSLGlCQUFLOzs7SUFSTyxlQUFpQjtJQUFqQix1Q0FBaUI7SUFJK0IsZUFBbUU7SUFBbkUsdUVBQW1FO0lBQ25GLGVBQTZCO0lBQTdCLGtEQUE2Qjs7Ozs7SUFNckUsdURBUzZCO0lBSjdCLDZSQUFnQywwUkFBQSwrVEFBQTtJQUlqQyxpQkFBOEI7Ozs7SUFQN0IsK0JBQWEsb0NBQUEsZ0NBQUEsbUxBQUE7Ozs7SUFRZixnREFBNE07SUFBNUYsaVVBQVksNkRBQXVELElBQUM7SUFBQyxpQkFBdUI7OztJQUE1SSxtSkFBK0M7OztJQUc3Ryx5QkFBc0I7SUFBQSx5R0FBa0Y7SUFBQSxpQkFBSTs7O0lBRjlHLCtCQUNFO0lBQUEseUJBQUc7SUFBQSx5QkFBRztJQUFBLHNFQUE0QztJQUFBLGlCQUFJO0lBQUEsaUJBQUk7SUFDMUQsMEdBQXNCO0lBQ3hCLGlCQUFNOzs7SUFERCxlQUFrQjtJQUFsQix5Q0FBa0I7OztJQWR6QiwrQkFDSTtJQUFBLHdKQVNEO0lBQ0QsMElBQXFMO0lBQ3JMLHdHQUNFO0lBR0osaUJBQU07OztJQWRGLGVBQTBCO0lBQTFCLHNDQUEwQjtJQVNOLGVBQXlDO0lBQXpDLHlJQUF5QztJQUMxRCxlQUFrRDtJQUFsRCxzRkFBa0Q7OztJQU16RCwrQkFDRTtJQUFBLGlDQUFpQztJQUNqQywyQkFBSztJQUFBLHVDQUF1QjtJQUFBLGlCQUFNO0lBQ3BDLGlCQUFNOzs7SUFsQ1IsNkJBQ0U7SUFBQSwrRkFDRTtJQVdGLGlHQUNJO0lBaUJKLGlHQUNFO0lBR0osMEJBQWU7OztJQWxDVCxlQUFpQjtJQUFqQix1Q0FBaUI7SUFZeUIsZUFBaUI7SUFBakIsdUNBQWlCO0lBa0JULGVBQWU7SUFBZixxQ0FBZTs7O0lBaEN6RSxpQ0FDRTtJQUFBLG9HQUNFOztJQW1DSixpQkFBTTs7OztJQXBDVSxlQUFvRDtJQUFwRCwyRUFBb0QsaUJBQUE7OztJQXNDcEUsdUNBQTZDOzs7SUFHM0MsK0JBQ0U7SUFBQSw0QkFBTTtJQUFBLDBGQUEyRDtJQUFBLGlCQUFPO0lBQ3hFLHFCQUNBO0lBQUEsNEJBQU07SUFBQSwyREFBc0M7SUFBQSxpQkFBTztJQUNyRCxpQkFBTTs7QURmUixNQUFNLE9BQU8sMkJBQTJCO0lBbUJ0QyxZQUNVLEdBQXNCLEVBQ3ZCLFlBQW1DLEVBQ25DLFVBQStCLEVBQzlCLGNBQThCLEVBQy9CLGNBQThCLEVBQzdCLFlBQTBCO1FBTDFCLFFBQUcsR0FBSCxHQUFHLENBQW1CO1FBQ3ZCLGlCQUFZLEdBQVosWUFBWSxDQUF1QjtRQUNuQyxlQUFVLEdBQVYsVUFBVSxDQUFxQjtRQUM5QixtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFDL0IsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBQzdCLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBdkIzQixlQUFVLEdBQUcsS0FBSyxDQUFDO1FBQ2xCLGlCQUFZLEdBQUcsSUFBSSxZQUFZLEVBQWUsQ0FBQztRQUMvQyxzQkFBaUIsR0FBRyxJQUFJLFlBQVksRUFBVSxDQUFDO1FBR2xELGNBQVMsR0FBRyxJQUFJLENBQUM7UUFFakIsWUFBTyxHQUFHLEtBQUssQ0FBQztRQUN2QixlQUFVLEdBQUcsS0FBSyxDQUFDO1FBQ25CLFNBQUksR0FBRyxJQUFJLENBQUM7UUFDWixhQUFRLEdBQUcsS0FBSyxDQUFDO1FBSVQsa0JBQWEsR0FBRyxFQUFFLENBQUM7UUFDbkIsZ0JBQVcsR0FBRyxFQUFFLENBQUM7UUFXdkIsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLFVBQVUsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDLE9BQU8sQ0FBQztJQUM3RSxDQUFDO0lBRUYsUUFBUTtRQUNOLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxlQUFlLENBQUMsRUFBRSxlQUFlLEVBQUUsSUFBSSxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUUsYUFBYSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7UUFDM0csSUFBSSxDQUFDLGFBQWEsR0FBRztZQUNuQixJQUFJLENBQUMsY0FBYyxDQUFDLGtCQUFrQixFQUFFLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFO2dCQUN2RCxJQUFJLENBQUMsVUFBVSxHQUFHLEdBQUcsQ0FBQztnQkFDdEIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxhQUFhLEVBQUUsQ0FBQztZQUMzQixDQUFDLENBQUM7WUFDRixJQUFJLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUN2RSxhQUFhLENBQUMsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUNqRSxTQUFTLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUNoRCxHQUFHLENBQUMsT0FBTyxDQUFDLEVBQUU7Z0JBQ1osTUFBTSxJQUFJLEdBQUcsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUN4QixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsZUFBZSxDQUFDLElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxlQUFlLENBQUMsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO2dCQUMvRixJQUFJLENBQUMsR0FBRyxDQUFDLGFBQWEsRUFBRSxDQUFDO1lBQzNCLENBQUMsQ0FBQyxDQUNILENBQUMsU0FBUyxFQUFFO1lBQ2IsSUFBSSxDQUFDLGNBQWMsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUNyQyxHQUFHLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsRUFBRSxLQUFLLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLEVBQ3hHLFNBQVMsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxJQUFJLE9BQU8sQ0FBQyxNQUFNLEtBQUssQ0FBQyxDQUFDLEVBQ3RELEdBQUcsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FDN0MsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO2dCQUNmLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO2dCQUNyQixJQUFJLENBQUMsR0FBRyxDQUFDLGFBQWEsRUFBRSxDQUFDO1lBQzNCLENBQUMsQ0FBQztZQUNGLElBQUksQ0FBQyxjQUFjLENBQUMsWUFBWSxDQUFDLElBQUksQ0FDbkMsR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FDNUMsQ0FBQyxTQUFTLEVBQUU7U0FDZCxDQUFDO0lBQ0osQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEdBQWlCLEVBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO0lBQ3ZFLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLFNBQVMsR0FBRyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUM7UUFDakMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUMzQixDQUFDO0lBRUQsWUFBWSxDQUFDLElBQXVCO1FBQ2xDLElBQUksQ0FBQyxZQUFZLENBQUMsb0JBQW9CLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ2xELENBQUM7SUFFRCxZQUFZLENBQUMsSUFBdUI7UUFDbEMsSUFBSSxDQUFDLFlBQVksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsRUFBRSxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMxRCxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMxQyxDQUFDO0lBRUQsWUFBWTtRQUNWLElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLEVBQUUsSUFBSSxJQUFJLENBQUMsV0FBVyxDQUFDLFFBQVEsRUFBRSxDQUFDLGFBQWEsRUFBRTtZQUM1RSxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsYUFBYSxFQUFFLENBQUM7U0FDdEQ7SUFDSCxDQUFDO0lBRUQsZ0JBQWdCLENBQUMsS0FBbUc7UUFDbEgsSUFBSSxDQUFDLEdBQUcsQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUMzQixDQUFDO0lBRU8sY0FBYyxDQUFDLFFBQTZCO1FBQ2xELElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFO1lBQ2YsYUFBYTtZQUNiLElBQUksQ0FBQyxLQUFLLEdBQUcsUUFBUSxDQUFDO1NBQ3ZCO2FBQU07WUFDTCxNQUFNLFdBQVcsR0FBRyxFQUFFLENBQUM7WUFDdkIsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQXVCLEVBQUUsRUFBRTtnQkFDM0MsV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7Z0JBQzFCLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7Z0JBQzVELElBQUksWUFBWSxFQUFFO29CQUNoQiw2Q0FBNkM7b0JBQzdDLE1BQU0sQ0FBQyxNQUFNLENBQUMsWUFBWSxFQUFFLElBQUksQ0FBQyxDQUFDO29CQUVsQyx3Q0FBd0M7b0JBQ3hDLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO29CQUNoRixZQUFZLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRSxDQUFDO29CQUVoQyxxRkFBcUY7b0JBQ3JGLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUM7b0JBQ2pFLE1BQU0sSUFBSSxHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLGtCQUFrQixDQUFDLEdBQUcsR0FBRyxHQUFHLENBQUMsQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO29CQUN4RyxJQUFJLElBQUksS0FBSyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxZQUFZLENBQUMsYUFBYSxDQUFDLEtBQUssRUFBRTt3QkFDMUUsWUFBWSxDQUFDLGlCQUFpQixFQUFFLENBQUM7d0JBQ2pDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxHQUFHLElBQUksQ0FBQztxQkFDbEM7aUJBQ0Y7cUJBQU07b0JBQ0wsaUNBQWlDO29CQUNqQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztpQkFDdkI7WUFDSCxDQUFDLENBQUMsQ0FBQztZQUNILHVCQUF1QjtZQUN2QixNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztTQUN0RDtRQUNELElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDM0IsQ0FBQztJQUVELFNBQVMsQ0FBQyxPQUFPO1FBRWYscUNBQXFDO1FBQ3JDLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNqQixNQUFNLGNBQWMsR0FBSSxRQUFRLENBQUMsc0JBQXNCLENBQUMsc0JBQXNCLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNuRixJQUFJLGNBQWMsRUFBRTtnQkFDbEIsY0FBYyxDQUFDLFNBQVMsR0FBRyxDQUFDLENBQUM7Z0JBQzdCLE9BQU87YUFDUjtZQUNELE9BQU8sQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUN6QixPQUFPO1NBQ1I7UUFFRCwrQkFBK0I7UUFDL0IsT0FBTyxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQzNCLENBQUM7O3NHQTNJVSwyQkFBMkI7Z0VBQTNCLDJCQUEyQjt1QkFLeEIsMEJBQTBCOzs7OztRQ3BDMUMsNEVBQ0U7UUFxQ0YsNkhBQ0E7UUFFQSw2SEFDRTs7O1FBMUNvQixzQ0FBNkIsaUJBQUE7O2tERCtCdEMsMkJBQTJCO2NBUHZDLFNBQVM7ZUFBQztnQkFDVCxRQUFRLEVBQUUsOEJBQThCO2dCQUN4QyxXQUFXLEVBQUUsdUNBQXVDO2dCQUNwRCxTQUFTLEVBQUUsQ0FBQyx1Q0FBdUMsQ0FBQztnQkFDcEQsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7Z0JBQ3JDLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO2FBQ2hEOytOQUVVLFFBQVE7a0JBQWhCLEtBQUs7WUFDRyxVQUFVO2tCQUFsQixLQUFLO1lBQ0ksWUFBWTtrQkFBckIsTUFBTTtZQUNHLGlCQUFpQjtrQkFBMUIsTUFBTTtZQUNtQyxjQUFjO2tCQUF2RCxZQUFZO21CQUFDLDBCQUEwQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgT25Jbml0LFxuICBJbnB1dCxcbiAgT25EZXN0cm95LFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBPdXRwdXQsXG4gIEV2ZW50RW1pdHRlcixcbiAgVmlld0NoaWxkcmVuXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uLCBCZWhhdmlvclN1YmplY3QsIGNvbWJpbmVMYXRlc3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEdyb2Nlcmllc0xpc3RzU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL19zZXJ2aWNlcy9ncm9jZXJpZXMtbGlzdHMuc2VydmljZSc7XG5pbXBvcnQgeyBCYXNrZXRzU2VydmljZSwgQmFza2V0U3RhdHMgfSBmcm9tICcuLi8uLi8uLi9fc2VydmljZXMvYmFza2V0cy5zZXJ2aWNlJztcbmltcG9ydCB7IEJhc2tldFByZXZpZXdMaW5lIH0gZnJvbSAnLi4vLi4vLi4vX21vZGVscy9iYXNrZXQtcHJldmlldy1saW5lJztcbmltcG9ydCB7IHNraXBXaGlsZSwgdGFwLCBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgcmVtb3ZlIGZyb20gJ2xvZGFzaC1lcy9yZW1vdmUnO1xuaW1wb3J0IHsgQmFza2V0UHJldmlld0xpbmVDb21wb25lbnQgfSBmcm9tICcuLi9iYXNrZXQtcHJldmlldy1saW5lL2Jhc2tldC1wcmV2aWV3LWxpbmUuY29tcG9uZW50JztcbmltcG9ydCB7IFBvaW50T2ZTYWxlc1NlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9fc2VydmljZXMvcG9pbnQtb2Ytc2FsZXMuc2VydmljZSc7XG5pbXBvcnQgeyBDb250ZXh0U2VydmljZSB9IGZyb20gJy4uLy4uLy4uL19zZXJ2aWNlcy9jb250ZXh0LnNlcnZpY2UnO1xuaW1wb3J0IHsgSWNvbiB9IGZyb20gJy4uLy4uLy4uL190eXBlcy9pY29uLmVudW0nO1xuaW1wb3J0IHsgTWVkaWFNYXRjaGVyIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2xheW91dCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ25nLW1pYW0tYmFza2V0LXByZXZpZXctYmxvY2snLFxuICB0ZW1wbGF0ZVVybDogJy4vYmFza2V0LXByZXZpZXctYmxvY2suY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9iYXNrZXQtcHJldmlldy1ibG9jay5jb21wb25lbnQuc2NzcyddLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBCYXNrZXRQcmV2aWV3QmxvY2tDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIEBJbnB1dCgpIHJlY2lwZUlkOiBzdHJpbmc7XG4gIEBJbnB1dCgpIHNob3dOb3RpY2UgPSBmYWxzZTtcbiAgQE91dHB1dCgpIHN0YXRzVXBkYXRlZCA9IG5ldyBFdmVudEVtaXR0ZXI8QmFza2V0U3RhdHM+KCk7XG4gIEBPdXRwdXQoKSBndWVzdENvdW50Q2hhbmdlZCA9IG5ldyBFdmVudEVtaXR0ZXI8bnVtYmVyPigpO1xuICBAVmlld0NoaWxkcmVuKEJhc2tldFByZXZpZXdMaW5lQ29tcG9uZW50KSBsaW5lQ29tcG9uZW50czogQmFza2V0UHJldmlld0xpbmVDb21wb25lbnRbXTtcblxuICBwdWJsaWMgc2hvd0xpbmVzID0gdHJ1ZTtcbiAgcHVibGljIGxpbmVzOiBCYXNrZXRQcmV2aWV3TGluZVtdO1xuICBwdWJsaWMgbG9hZGluZyA9IGZhbHNlO1xuICBjb3JzSXNzdWVzID0gZmFsc2U7XG4gIGljb24gPSBJY29uO1xuICBpc01vYmlsZSA9IGZhbHNlO1xuXG4gIGJsb2NrU3RhdGVzOiBCZWhhdmlvclN1YmplY3Q8eyBjdXJyZW50T3BlbkxpbmU6IHN0cmluZywgb3ZlcmxheU9wZW46IGJvb2xlYW4sIGxpbmVDb21wb25lbnQ6IEJhc2tldFByZXZpZXdMaW5lQ29tcG9uZW50IH0+O1xuXG4gIHByaXZhdGUgc3Vic2NyaXB0aW9ucyA9IFtdO1xuICBwcml2YXRlIGxpbmVzSGFzaGVzID0ge307XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBjZHI6IENoYW5nZURldGVjdG9yUmVmLFxuICAgIHB1YmxpYyBsaXN0c1NlcnZpY2U6IEdyb2Nlcmllc0xpc3RzU2VydmljZSxcbiAgICBwdWJsaWMgcG9zU2VydmljZTogUG9pbnRPZlNhbGVzU2VydmljZSxcbiAgICBwcml2YXRlIGNvbnRleHRTZXJ2aWNlOiBDb250ZXh0U2VydmljZSxcbiAgICBwdWJsaWMgYmFza2V0c1NlcnZpY2U6IEJhc2tldHNTZXJ2aWNlLFxuICAgIHByaXZhdGUgbWVkaWFNYXRjaGVyOiBNZWRpYU1hdGNoZXIsXG4gICkge1xuXG4gICAgdGhpcy5pc01vYmlsZSA9IHRoaXMubWVkaWFNYXRjaGVyLm1hdGNoTWVkaWEoJyhtYXgtd2lkdGg6IDEwMjNweCknKS5tYXRjaGVzO1xuICAgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMuYmxvY2tTdGF0ZXMgPSBuZXcgQmVoYXZpb3JTdWJqZWN0KHsgY3VycmVudE9wZW5MaW5lOiBudWxsLCBvdmVybGF5T3BlbjogZmFsc2UsIGxpbmVDb21wb25lbnQ6IG51bGwgfSk7XG4gICAgdGhpcy5zdWJzY3JpcHRpb25zID0gW1xuICAgICAgdGhpcy5jb250ZXh0U2VydmljZS5nZXRDT1JTSXNzdWVzU3RhdGUoKS5zdWJzY3JpYmUocmVzID0+IHtcbiAgICAgICAgdGhpcy5jb3JzSXNzdWVzID0gcmVzO1xuICAgICAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICB9KSxcbiAgICAgIHRoaXMuYmxvY2tTdGF0ZXMuc3Vic2NyaWJlKG5ld1N0YXRlID0+IHRoaXMuaGFuZGVsYmxvY2tTdGF0ZShuZXdTdGF0ZSkpLFxuICAgICAgY29tYmluZUxhdGVzdChbdGhpcy5saXN0c1NlcnZpY2UubGlzdCQsIHRoaXMucG9zU2VydmljZS5wb3MkXSkucGlwZShcbiAgICAgICAgc2tpcFdoaWxlKHJlc3VsdHMgPT4gIXJlc3VsdHNbMF0gfHwgIXJlc3VsdHNbMV0pLFxuICAgICAgICB0YXAocmVzdWx0cyA9PiB7XG4gICAgICAgICAgY29uc3QgbGlzdCA9IHJlc3VsdHNbMF07XG4gICAgICAgICAgdGhpcy5sb2FkaW5nID0gbGlzdC5hdHRyaWJ1dGVzWydyZWNpcGVzLWluZm9zJ10gJiYgbGlzdC5hdHRyaWJ1dGVzWydyZWNpcGVzLWluZm9zJ10ubGVuZ3RoID4gMDtcbiAgICAgICAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICAgIH0pXG4gICAgICApLnN1YnNjcmliZSgpLFxuICAgICAgdGhpcy5iYXNrZXRzU2VydmljZS5iYXNrZXRQcmV2aWV3JC5waXBlKFxuICAgICAgICBtYXAocHJldmlldyA9PiAocHJldmlldyAmJiB0aGlzLnJlY2lwZUlkKSA/IHByZXZpZXcuZmlsdGVyKGxpbmUgPT4gbGluZS5pZCA9PT0gdGhpcy5yZWNpcGVJZCkgOiBwcmV2aWV3KSxcbiAgICAgICAgc2tpcFdoaWxlKHByZXZpZXcgPT4gIXByZXZpZXcgfHwgcHJldmlldy5sZW5ndGggPT09IDApLFxuICAgICAgICB0YXAocHJldmlldyA9PiB0aGlzLnJlZnJlc2hQcmV2aWV3KHByZXZpZXcpKVxuICAgICAgKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgfSksXG4gICAgICB0aGlzLmJhc2tldHNTZXJ2aWNlLmJhc2tldFN0YXRzJC5waXBlKFxuICAgICAgICB0YXAoc3RhdHMgPT4gdGhpcy5zdGF0c1VwZGF0ZWQuZW1pdChzdGF0cykpXG4gICAgICApLnN1YnNjcmliZSgpXG4gICAgXTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5mb3JFYWNoKChzdWI6IFN1YnNjcmlwdGlvbikgPT4gc3ViLnVuc3Vic2NyaWJlKCkpO1xuICB9XG5cbiAgdG9nZ2xlTGluZXMoKSB7XG4gICAgdGhpcy5zaG93TGluZXMgPSAhdGhpcy5zaG93TGluZXM7XG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG5cbiAgcmVtb3ZlUmVjaXBlKGxpbmU6IEJhc2tldFByZXZpZXdMaW5lKSB7XG4gICAgdGhpcy5saXN0c1NlcnZpY2UucmVtb3ZlUmVjaXBlRnJvbUxpc3QobGluZS5pZCk7XG4gIH1cblxuICB1cGRhdGVSZWNpcGUobGluZTogQmFza2V0UHJldmlld0xpbmUpIHtcbiAgICB0aGlzLmxpc3RzU2VydmljZS51cGRhdGVSZWNpcGVHdWVzdHMobGluZS5pZCwgbGluZS5jb3VudCk7XG4gICAgdGhpcy5ndWVzdENvdW50Q2hhbmdlZC5lbWl0KGxpbmUuY291bnQpO1xuICB9XG5cbiAgY2xvc2VPdmVybGF5KCkge1xuICAgIGlmICh0aGlzLmJsb2NrU3RhdGVzLmdldFZhbHVlKCkgJiYgdGhpcy5ibG9ja1N0YXRlcy5nZXRWYWx1ZSgpLmxpbmVDb21wb25lbnQpIHtcbiAgICAgIHRoaXMuYmxvY2tTdGF0ZXMudmFsdWUubGluZUNvbXBvbmVudC5wcm9kdWN0Q2hvc2VuKCk7XG4gICAgfVxuICB9XG5cbiAgaGFuZGVsYmxvY2tTdGF0ZShzdGF0ZTogeyBjdXJyZW50T3BlbkxpbmU6IHN0cmluZywgb3ZlcmxheU9wZW46IGJvb2xlYW4sIGxpbmVDb21wb25lbnQ6IEJhc2tldFByZXZpZXdMaW5lQ29tcG9uZW50IH0pIHtcbiAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XG4gIH1cblxuICBwcml2YXRlIHJlZnJlc2hQcmV2aWV3KG5ld0xpbmVzOiBCYXNrZXRQcmV2aWV3TGluZVtdKSB7XG4gICAgaWYgKCF0aGlzLmxpbmVzKSB7XG4gICAgICAvLyBGaXJzdCBsb2FkXG4gICAgICB0aGlzLmxpbmVzID0gbmV3TGluZXM7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnN0IG5ld0xpbmVzSWRzID0gW107XG4gICAgICBuZXdMaW5lcy5mb3JFYWNoKChsaW5lOiBCYXNrZXRQcmV2aWV3TGluZSkgPT4ge1xuICAgICAgICBuZXdMaW5lc0lkcy5wdXNoKGxpbmUuaWQpO1xuICAgICAgICBjb25zdCBleGlzdGluZ0xpbmUgPSB0aGlzLmxpbmVzLmZpbmQobCA9PiBsLmlkID09PSBsaW5lLmlkKTtcbiAgICAgICAgaWYgKGV4aXN0aW5nTGluZSkge1xuICAgICAgICAgIC8vIFVwZGF0ZSBleGlzdGluZyBvYmplY3Qgd2l0aCBpdHMgbmV3IHZhbHVlc1xuICAgICAgICAgIE9iamVjdC5hc3NpZ24oZXhpc3RpbmdMaW5lLCBsaW5lKTtcblxuICAgICAgICAgIC8vIE1hcmsgYmFza2V0IGxpbmVzIGNvbXBvbmVudCBmb3IgY2hlY2tcbiAgICAgICAgICBjb25zdCBleGlzdGluZ0NvbXAgPSB0aGlzLmxpbmVDb21wb25lbnRzLmZpbmQoY29tcCA9PiBjb21wLmxpbmUuaWQgPT09IGxpbmUuaWQpO1xuICAgICAgICAgIGV4aXN0aW5nQ29tcC5jZHIubWFya0ZvckNoZWNrKCk7XG5cbiAgICAgICAgICAvLyBGb3JjZSByZWxvYWQgdGhlIGJhc2tldCBlbnRyaWVzIGlmIHRoZWlyIHF1YW50aXRpZXMgb3Igc2VsZWN0ZWQgaXRlbXMgaGF2ZSBjaGFuZ2VkXG4gICAgICAgICAgY29uc3QgZW50cmllcyA9IGxpbmUuZW50cmllcy5mb3VuZC5zb3J0KGUgPT4gcGFyc2VJbnQoZS5pZCwgMTApKTtcbiAgICAgICAgICBjb25zdCBoYXNoID0gZW50cmllcy5tYXAoZSA9PiBlLmF0dHJpYnV0ZXNbJ3NlbGVjdGVkLWl0ZW0taWQnXSArICctJyArIGUuYXR0cmlidXRlcy5xdWFudGl0eSkuam9pbignLycpO1xuICAgICAgICAgIGlmIChoYXNoICE9PSB0aGlzLmxpbmVzSGFzaGVzW2xpbmUuaWRdICYmIGV4aXN0aW5nQ29tcC5lbnRyaWVzTGluZXMkLnZhbHVlKSB7XG4gICAgICAgICAgICBleGlzdGluZ0NvbXAuYnVpbGRFbnRyaWVzTGluZXMoKTtcbiAgICAgICAgICAgIHRoaXMubGluZXNIYXNoZXNbbGluZS5pZF0gPSBoYXNoO1xuICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAvLyBQdXNoIHRoZSBuZXcgbGluZSB0byB0aGUgYXJyYXlcbiAgICAgICAgICB0aGlzLmxpbmVzLnB1c2gobGluZSk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgICAgLy8gUmVtb3ZlIGRlbGV0ZWQgbGluZXNcbiAgICAgIHJlbW92ZSh0aGlzLmxpbmVzLCBsID0+ICFuZXdMaW5lc0lkcy5pbmNsdWRlcyhsLmlkKSk7XG4gICAgfVxuICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgfVxuXG4gIHNjcm9sbHRvcChlbGVtZW50KXtcblxuICAgIC8vIHNjcm9sbCB0b3AgYmFzZSBvbiBtb2RhbCBjb250YWluZXJcbiAgICBpZiAodGhpcy5pc01vYmlsZSkge1xuICAgICAgY29uc3QgbW9kYWxDb250YWluZXIgPSAgZG9jdW1lbnQuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZSgnbWlhbS13cmFwcGVyLXByZXZpZXcnKVswXTtcbiAgICAgIGlmIChtb2RhbENvbnRhaW5lcikge1xuICAgICAgICBtb2RhbENvbnRhaW5lci5zY3JvbGxUb3AgPSAwO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgICBlbGVtZW50LnNjcm9sbEludG9WaWV3KCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgLy8gc2Nyb2xsIGJhc2Ugb24gZ2xvYmFsIHdpbmRvd1xuICAgIGVsZW1lbnQuc2Nyb2xsSW50b1ZpZXcoKTtcbiAgfVxufVxuIiwiPGRpdiAjcHJldmlld0Jsb2NrVG9wICpuZ0lmPSchY29yc0lzc3VlcyBlbHNlIGNvcnMnIGNsYXNzPVwibWlhbS1iYXNrZXQtcHJldmlldy1ibG9ja1wiPlxuICA8bmctY29udGFpbmVyICpuZ0lmPVwiKHBvc1NlcnZpY2UuaXNQb3NWYWxpZCgpIHwgYXN5bmMpIGVsc2Ugbm9Qb3NcIj5cbiAgICA8aDMgKm5nSWY9XCIhcmVjaXBlSWRcIiBjbGFzcz1cIm1pYW0tYmFza2V0LXByZXZpZXctYmxvY2tfX2hlYWRlclwiPlxuICAgICAgPGRpdiBjbGFzcz1cIm1pYW0tYmFza2V0LXByZXZpZXctYmxvY2tfX2hlYWRlcl9fYWN0aW9uc1wiPlxuICAgICAgICA8YnV0dG9uICpuZ0lmPVwic2hvd0xpbmVzXCIgY2xhc3M9XCJtLWJ1dHRvbi1zZWNvbmRhcnkgbWlhbS1iYXNrZXQtcHJldmlldy1ibG9ja19faGVhZGVyX19lbXB0eS1iYXNrZXRcIiAoY2xpY2spPVwibGlzdHNTZXJ2aWNlLnJlbW92ZVJlY2lwZXNGcm9tTGlzdCgpXCI+XG4gICAgICAgICAgPG5nLW1pYW0taWNvbiAgW2ljb25OYW1lXT1cImljb24uVHJhc2hcIiBwcmltYXJ5Q29sb3I9XCJ2YXIoLS1tLWNvbG9yLXNlY29uZGFyeSlcIj48L25nLW1pYW0taWNvbj5cbiAgICAgICAgICA8c3Bhbj5SZXRpcmVyIHRvdXMgbGVzIHJlcGFzPC9zcGFuPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgPGRpdiBjbGFzcz1cIm1pYW0tYmFza2V0LXByZXZpZXctYmxvY2tfX2hlYWRlcl9fY2hldnJvblwiIFtuZ0NsYXNzXT1cInsnbWlhbS1iYXNrZXQtcHJldmlldy1ibG9ja19fY2hldnJvbl9fZG93bic6IXNob3dMaW5lc31cIiAoY2xpY2spPVwidG9nZ2xlTGluZXMoKVwiPlxuICAgICAgICAgIDxuZy1taWFtLWljb24gaGVpZ2h0PSczMicgd2lkdGg9JzMyJyAgW2ljb25OYW1lXT1cImljb24uQ2hldnJvbkRvd25cIj48L25nLW1pYW0taWNvbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L2gzPlxuICBcbiAgICA8ZGl2IGNsYXNzPVwibWlhbS1iYXNrZXQtcHJldmlldy1ibG9ja19fbGluZXNcIiAqbmdJZj1cInNob3dMaW5lc1wiPlxuICAgICAgICA8bmctbWlhbS1iYXNrZXQtcHJldmlldy1saW5lXG4gICAgICAgICpuZ0Zvcj1cImxldCBsaW5lIG9mIGxpbmVzXCJcbiAgICAgICAgW2xpbmVdPVwibGluZVwiXG4gICAgICAgIFtibG9ja1N0YXRlc109XCJibG9ja1N0YXRlc1wiXG4gICAgICAgIFt1bmlxdWVMaW5lXT1cInJlY2lwZUlkXCJcbiAgICAgICAgKHJlbW92ZWQpPVwicmVtb3ZlUmVjaXBlKCRldmVudClcIlxuICAgICAgICAoY291bnRDaGFuZ2VkKT1cInVwZGF0ZVJlY2lwZSgkZXZlbnQpXCJcbiAgICAgICAgKHJlcGxhY2VJdGVtKT0nc2Nyb2xsdG9wKHByZXZpZXdCbG9ja1RvcCknXG4gICAgICAgIFtuZ1N0eWxlXT1cInsnZGlzcGxheSc6IGJsb2NrU3RhdGVzPy52YWx1ZT8ub3ZlcmxheU9wZW4gPyAnbm9uZScgOiAnYmxvY2snfSBcIlxuICAgICAgPjwvbmctbWlhbS1iYXNrZXQtcHJldmlldy1saW5lPlxuICAgICAgPG5nLW1pYW0tcmVwbGFjZS1pdGVtICpuZ0lmPVwiIGJsb2NrU3RhdGVzPy52YWx1ZT8ub3ZlcmxheU9wZW4gXCIgW2xpbmVdPVwiYmxvY2tTdGF0ZXM/LnZhbHVlPy5saW5lQ29tcG9uZW50LmxpbmVcIiAoc2VsZWN0ZWQpPVwiYmxvY2tTdGF0ZXM/LnZhbHVlPy5saW5lQ29tcG9uZW50LnByb2R1Y3RDaG9zZW4oJGV2ZW50KVwiPjwvbmctbWlhbS1yZXBsYWNlLWl0ZW0+XG4gICAgICA8ZGl2ICpuZ0lmPVwiIWxvYWRpbmcgJiYgKCFsaW5lcyB8fCBsaW5lcy5sZW5ndGggPT09IDApXCIgY2xhc3M9XCJtaWFtLWJhc2tldC1wcmV2aWV3LWJsb2NrX19saW5lc19fbm90LWZvdW5kXCI+XG4gICAgICAgIDxwPjxiPlZvdXMgbidhdmV6IHBhcyBlbmNvcmUgc8OpbGVjdGlvbm7DqSBkZSByZXBhcy48L2I+PC9wPlxuICAgICAgICA8cCAqbmdJZj1cInNob3dOb3RpY2VcIj5OYXZpZ3VleiB2ZXJzIGxhIHBhZ2UgZCd1bmUgcmVjZXR0ZSwgcHVpcyBjbGlxdWV6IHN1ciBcIkNvbW1hbmRlciBsZXMgaW5ncsOpZGllbnRzXCIuPC9wPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIFxuICAgIDxkaXYgY2xhc3M9XCJtaWFtLWJhc2tldC1wcmV2aWV3LWJsb2NrX19saW5lc19fbG9hZGVyXCIgKm5nSWY9XCJsb2FkaW5nXCI+XG4gICAgICA8bmctbWlhbS1sb2FkZXI+PC9uZy1taWFtLWxvYWRlcj5cbiAgICAgIDxkaXY+Q2hhcmdlbWVudCBkZXMgcmVwYXMuLi48L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9uZy1jb250YWluZXI+XG48L2Rpdj5cbjxuZy10ZW1wbGF0ZSAjY29ycz5cbjxuZy1taWFtLWNvcnMtb3ZlcmxheT48L25nLW1pYW0tY29ycy1vdmVybGF5PlxuPC9uZy10ZW1wbGF0ZT5cbjxuZy10ZW1wbGF0ZSAjbm9Qb3M+XG4gIDxkaXYgY2xhc3M9XCJtaWFtLWJhc2tldC1wcmV2aWV3LWJsb2NrX19ub1Bvc1wiPlxuICAgIDxzcGFuPkTDqXNvbMOpLCBjZSBtYWdhc2luIG5lIHBlcm1ldCBwYXMgZGUgc8OpbGVjdGlvbm5lciBkZXMgcmVwYXMuPC9zcGFuPiBcbiAgICA8YnI+XG4gICAgPHNwYW4+VmV1aWxsZXogc8OpbGVjdGlvbm5lciB1biBhdXRyZSBtYWdhc2luPC9zcGFuPlxuICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
|
|
307
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFza2V0LXByZXZpZXctYmxvY2suY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Ii9idWlsZHMvbWlhbS9uZy1taWFtLXNkay9wcm9qZWN0cy9uZy1taWFtL3NyYy8iLCJzb3VyY2VzIjpbImxpYi9fd2ViLWNvbXBvbmVudHMvYmFza2V0LXByZXZpZXcvYmFza2V0LXByZXZpZXctYmxvY2svYmFza2V0LXByZXZpZXctYmxvY2suY29tcG9uZW50LnRzIiwibGliL193ZWItY29tcG9uZW50cy9iYXNrZXQtcHJldmlldy9iYXNrZXQtcHJldmlldy1ibG9jay9iYXNrZXQtcHJldmlldy1ibG9jay5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUVULEtBQUssRUFFTCxpQkFBaUIsRUFDakIsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixNQUFNLEVBQ04sWUFBWSxFQUNaLFlBQVksRUFDYixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQWdCLGVBQWUsRUFBRSxhQUFhLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDcEUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDbkYsT0FBTyxFQUFFLGNBQWMsRUFBZSxNQUFNLG9DQUFvQyxDQUFDO0FBRWpGLE9BQU8sRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3JELE9BQU8sTUFBTSxNQUFNLGtCQUFrQixDQUFDO0FBQ3RDLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHNEQUFzRCxDQUFDO0FBQ2xHLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQ2hGLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUNwRSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDakQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFN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ZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgT25Jbml0LFxuICBJbnB1dCxcbiAgT25EZXN0cm95LFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBPdXRwdXQsXG4gIEV2ZW50RW1pdHRlcixcbiAgVmlld0NoaWxkcmVuXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uLCBCZWhhdmlvclN1YmplY3QsIGNvbWJpbmVMYXRlc3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEdyb2Nlcmllc0xpc3RzU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL19zZXJ2aWNlcy9ncm9jZXJpZXMtbGlzdHMuc2VydmljZSc7XG5pbXBvcnQgeyBCYXNrZXRzU2VydmljZSwgQmFza2V0U3RhdHMgfSBmcm9tICcuLi8uLi8uLi9fc2VydmljZXMvYmFza2V0cy5zZXJ2aWNlJztcbmltcG9ydCB7IEJhc2tldFByZXZpZXdMaW5lIH0gZnJvbSAnLi4vLi4vLi4vX21vZGVscy9iYXNrZXQtcHJldmlldy1saW5lJztcbmltcG9ydCB7IHNraXBXaGlsZSwgdGFwLCBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgcmVtb3ZlIGZyb20gJ2xvZGFzaC1lcy9yZW1vdmUnO1xuaW1wb3J0IHsgQmFza2V0UHJldmlld0xpbmVDb21wb25lbnQgfSBmcm9tICcuLi9iYXNrZXQtcHJldmlldy1saW5lL2Jhc2tldC1wcmV2aWV3LWxpbmUuY29tcG9uZW50JztcbmltcG9ydCB7IFBvaW50T2ZTYWxlc1NlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9fc2VydmljZXMvcG9pbnQtb2Ytc2FsZXMuc2VydmljZSc7XG5pbXBvcnQgeyBDb250ZXh0U2VydmljZSB9IGZyb20gJy4uLy4uLy4uL19zZXJ2aWNlcy9jb250ZXh0LnNlcnZpY2UnO1xuaW1wb3J0IHsgSWNvbiB9IGZyb20gJy4uLy4uLy4uL190eXBlcy9pY29uLmVudW0nO1xuaW1wb3J0IHsgTWVkaWFNYXRjaGVyIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2xheW91dCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ25nLW1pYW0tYmFza2V0LXByZXZpZXctYmxvY2snLFxuICB0ZW1wbGF0ZVVybDogJy4vYmFza2V0LXByZXZpZXctYmxvY2suY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9iYXNrZXQtcHJldmlldy1ibG9jay5jb21wb25lbnQuc2NzcyddLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBCYXNrZXRQcmV2aWV3QmxvY2tDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIEBJbnB1dCgpIHJlY2lwZUlkOiBzdHJpbmc7XG4gIEBJbnB1dCgpIHNob3dOb3RpY2UgPSBmYWxzZTtcbiAgQE91dHB1dCgpIHN0YXRzVXBkYXRlZCA9IG5ldyBFdmVudEVtaXR0ZXI8QmFza2V0U3RhdHM+KCk7XG4gIEBPdXRwdXQoKSBndWVzdENvdW50Q2hhbmdlZCA9IG5ldyBFdmVudEVtaXR0ZXI8bnVtYmVyPigpO1xuICBAVmlld0NoaWxkcmVuKEJhc2tldFByZXZpZXdMaW5lQ29tcG9uZW50KSBsaW5lQ29tcG9uZW50czogQmFza2V0UHJldmlld0xpbmVDb21wb25lbnRbXTtcblxuICBwdWJsaWMgc2hvd0xpbmVzID0gdHJ1ZTtcbiAgcHVibGljIGxpbmVzOiBCYXNrZXRQcmV2aWV3TGluZVtdO1xuICBwdWJsaWMgbG9hZGluZyA9IGZhbHNlO1xuICBjb3JzSXNzdWVzID0gZmFsc2U7XG4gIGljb24gPSBJY29uO1xuICBpc01vYmlsZSA9IGZhbHNlO1xuXG4gIGJsb2NrU3RhdGVzOiBCZWhhdmlvclN1YmplY3Q8eyBjdXJyZW50T3BlbkxpbmU6IHN0cmluZywgb3ZlcmxheU9wZW46IGJvb2xlYW4sIGxpbmVDb21wb25lbnQ6IEJhc2tldFByZXZpZXdMaW5lQ29tcG9uZW50IH0+O1xuXG4gIHByaXZhdGUgc3Vic2NyaXB0aW9ucyA9IFtdO1xuICBwcml2YXRlIGxpbmVzSGFzaGVzID0ge307XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBjZHI6IENoYW5nZURldGVjdG9yUmVmLFxuICAgIHB1YmxpYyBsaXN0c1NlcnZpY2U6IEdyb2Nlcmllc0xpc3RzU2VydmljZSxcbiAgICBwdWJsaWMgcG9zU2VydmljZTogUG9pbnRPZlNhbGVzU2VydmljZSxcbiAgICBwcml2YXRlIGNvbnRleHRTZXJ2aWNlOiBDb250ZXh0U2VydmljZSxcbiAgICBwdWJsaWMgYmFza2V0c1NlcnZpY2U6IEJhc2tldHNTZXJ2aWNlLFxuICAgIHByaXZhdGUgbWVkaWFNYXRjaGVyOiBNZWRpYU1hdGNoZXIsXG4gICkge1xuXG4gICAgdGhpcy5pc01vYmlsZSA9IHRoaXMubWVkaWFNYXRjaGVyLm1hdGNoTWVkaWEoJyhtYXgtd2lkdGg6IDEwMjNweCknKS5tYXRjaGVzO1xuICAgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMuYmxvY2tTdGF0ZXMgPSBuZXcgQmVoYXZpb3JTdWJqZWN0KHsgY3VycmVudE9wZW5MaW5lOiBudWxsLCBvdmVybGF5T3BlbjogZmFsc2UsIGxpbmVDb21wb25lbnQ6IG51bGwgfSk7XG4gICAgdGhpcy5zdWJzY3JpcHRpb25zID0gW1xuICAgICAgdGhpcy5jb250ZXh0U2VydmljZS5nZXRDT1JTSXNzdWVzU3RhdGUoKS5zdWJzY3JpYmUocmVzID0+IHtcbiAgICAgICAgdGhpcy5jb3JzSXNzdWVzID0gcmVzO1xuICAgICAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICB9KSxcbiAgICAgIHRoaXMuYmxvY2tTdGF0ZXMuc3Vic2NyaWJlKG5ld1N0YXRlID0+IHRoaXMuaGFuZGVsYmxvY2tTdGF0ZShuZXdTdGF0ZSkpLFxuICAgICAgY29tYmluZUxhdGVzdChbdGhpcy5saXN0c1NlcnZpY2UubGlzdCQsIHRoaXMucG9zU2VydmljZS5wb3MkXSkucGlwZShcbiAgICAgICAgc2tpcFdoaWxlKHJlc3VsdHMgPT4gIXJlc3VsdHNbMF0gfHwgIXJlc3VsdHNbMV0pLFxuICAgICAgICB0YXAocmVzdWx0cyA9PiB7XG4gICAgICAgICAgY29uc3QgbGlzdCA9IHJlc3VsdHNbMF07XG4gICAgICAgICAgdGhpcy5sb2FkaW5nID0gbGlzdC5hdHRyaWJ1dGVzWydyZWNpcGVzLWluZm9zJ10gJiYgbGlzdC5hdHRyaWJ1dGVzWydyZWNpcGVzLWluZm9zJ10ubGVuZ3RoID4gMDtcbiAgICAgICAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICAgIH0pXG4gICAgICApLnN1YnNjcmliZSgpLFxuICAgICAgdGhpcy5iYXNrZXRzU2VydmljZS5iYXNrZXRQcmV2aWV3JC5waXBlKFxuICAgICAgICBtYXAocHJldmlldyA9PiAocHJldmlldyAmJiB0aGlzLnJlY2lwZUlkKSA/IHByZXZpZXcuZmlsdGVyKGxpbmUgPT4gbGluZS5pZCA9PT0gdGhpcy5yZWNpcGVJZCkgOiBwcmV2aWV3KSxcbiAgICAgICAgc2tpcFdoaWxlKHByZXZpZXcgPT4gIXByZXZpZXcgfHwgcHJldmlldy5sZW5ndGggPT09IDApLFxuICAgICAgICB0YXAocHJldmlldyA9PiB0aGlzLnJlZnJlc2hQcmV2aWV3KHByZXZpZXcpKVxuICAgICAgKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgfSksXG4gICAgICB0aGlzLmJhc2tldHNTZXJ2aWNlLmJhc2tldFN0YXRzJC5waXBlKFxuICAgICAgICB0YXAoc3RhdHMgPT4gdGhpcy5zdGF0c1VwZGF0ZWQuZW1pdChzdGF0cykpXG4gICAgICApLnN1YnNjcmliZSgpXG4gICAgXTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5mb3JFYWNoKChzdWI6IFN1YnNjcmlwdGlvbikgPT4gc3ViLnVuc3Vic2NyaWJlKCkpO1xuICB9XG5cbiAgdG9nZ2xlTGluZXMoKSB7XG4gICAgdGhpcy5zaG93TGluZXMgPSAhdGhpcy5zaG93TGluZXM7XG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG5cbiAgcmVtb3ZlUmVjaXBlKGxpbmU6IEJhc2tldFByZXZpZXdMaW5lKSB7XG4gICAgdGhpcy5saXN0c1NlcnZpY2UucmVtb3ZlUmVjaXBlRnJvbUxpc3QobGluZS5pZCkuc3Vic2NyaWJlKCk7XG4gIH1cblxuICB1cGRhdGVSZWNpcGUobGluZTogQmFza2V0UHJldmlld0xpbmUpIHtcbiAgICB0aGlzLmxpc3RzU2VydmljZS51cGRhdGVSZWNpcGVHdWVzdHMobGluZS5pZCwgbGluZS5jb3VudCk7XG4gICAgdGhpcy5ndWVzdENvdW50Q2hhbmdlZC5lbWl0KGxpbmUuY291bnQpO1xuICB9XG5cbiAgY2xvc2VPdmVybGF5KCkge1xuICAgIGlmICh0aGlzLmJsb2NrU3RhdGVzLmdldFZhbHVlKCkgJiYgdGhpcy5ibG9ja1N0YXRlcy5nZXRWYWx1ZSgpLmxpbmVDb21wb25lbnQpIHtcbiAgICAgIHRoaXMuYmxvY2tTdGF0ZXMudmFsdWUubGluZUNvbXBvbmVudC5wcm9kdWN0Q2hvc2VuKCk7XG4gICAgfVxuICB9XG5cbiAgaGFuZGVsYmxvY2tTdGF0ZShzdGF0ZTogeyBjdXJyZW50T3BlbkxpbmU6IHN0cmluZywgb3ZlcmxheU9wZW46IGJvb2xlYW4sIGxpbmVDb21wb25lbnQ6IEJhc2tldFByZXZpZXdMaW5lQ29tcG9uZW50IH0pIHtcbiAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XG4gIH1cblxuICBwcml2YXRlIHJlZnJlc2hQcmV2aWV3KG5ld0xpbmVzOiBCYXNrZXRQcmV2aWV3TGluZVtdKSB7XG4gICAgaWYgKCF0aGlzLmxpbmVzKSB7XG4gICAgICAvLyBGaXJzdCBsb2FkXG4gICAgICB0aGlzLmxpbmVzID0gbmV3TGluZXM7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnN0IG5ld0xpbmVzSWRzID0gW107XG4gICAgICBuZXdMaW5lcy5mb3JFYWNoKChsaW5lOiBCYXNrZXRQcmV2aWV3TGluZSkgPT4ge1xuICAgICAgICBuZXdMaW5lc0lkcy5wdXNoKGxpbmUuaWQpO1xuICAgICAgICBjb25zdCBleGlzdGluZ0xpbmUgPSB0aGlzLmxpbmVzLmZpbmQobCA9PiBsLmlkID09PSBsaW5lLmlkKTtcbiAgICAgICAgaWYgKGV4aXN0aW5nTGluZSkge1xuICAgICAgICAgIC8vIFVwZGF0ZSBleGlzdGluZyBvYmplY3Qgd2l0aCBpdHMgbmV3IHZhbHVlc1xuICAgICAgICAgIE9iamVjdC5hc3NpZ24oZXhpc3RpbmdMaW5lLCBsaW5lKTtcblxuICAgICAgICAgIC8vIE1hcmsgYmFza2V0IGxpbmVzIGNvbXBvbmVudCBmb3IgY2hlY2tcbiAgICAgICAgICBjb25zdCBleGlzdGluZ0NvbXAgPSB0aGlzLmxpbmVDb21wb25lbnRzLmZpbmQoY29tcCA9PiBjb21wLmxpbmUuaWQgPT09IGxpbmUuaWQpO1xuICAgICAgICAgIGV4aXN0aW5nQ29tcC5jZHIubWFya0ZvckNoZWNrKCk7XG5cbiAgICAgICAgICAvLyBGb3JjZSByZWxvYWQgdGhlIGJhc2tldCBlbnRyaWVzIGlmIHRoZWlyIHF1YW50aXRpZXMgb3Igc2VsZWN0ZWQgaXRlbXMgaGF2ZSBjaGFuZ2VkXG4gICAgICAgICAgY29uc3QgZW50cmllcyA9IGxpbmUuZW50cmllcy5mb3VuZC5zb3J0KGUgPT4gcGFyc2VJbnQoZS5pZCwgMTApKTtcbiAgICAgICAgICBjb25zdCBoYXNoID0gZW50cmllcy5tYXAoZSA9PiBlLmF0dHJpYnV0ZXNbJ3NlbGVjdGVkLWl0ZW0taWQnXSArICctJyArIGUuYXR0cmlidXRlcy5xdWFudGl0eSkuam9pbignLycpO1xuICAgICAgICAgIGlmIChoYXNoICE9PSB0aGlzLmxpbmVzSGFzaGVzW2xpbmUuaWRdICYmIGV4aXN0aW5nQ29tcC5lbnRyaWVzTGluZXMkLnZhbHVlKSB7XG4gICAgICAgICAgICBleGlzdGluZ0NvbXAuYnVpbGRFbnRyaWVzTGluZXMoKTtcbiAgICAgICAgICAgIHRoaXMubGluZXNIYXNoZXNbbGluZS5pZF0gPSBoYXNoO1xuICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAvLyBQdXNoIHRoZSBuZXcgbGluZSB0byB0aGUgYXJyYXlcbiAgICAgICAgICB0aGlzLmxpbmVzLnB1c2gobGluZSk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgICAgLy8gUmVtb3ZlIGRlbGV0ZWQgbGluZXNcbiAgICAgIHJlbW92ZSh0aGlzLmxpbmVzLCBsID0+ICFuZXdMaW5lc0lkcy5pbmNsdWRlcyhsLmlkKSk7XG4gICAgfVxuICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgfVxuXG4gIHNjcm9sbHRvcChlbGVtZW50KXtcblxuICAgIC8vIHNjcm9sbCB0b3AgYmFzZSBvbiBtb2RhbCBjb250YWluZXJcbiAgICBpZiAodGhpcy5pc01vYmlsZSkge1xuICAgICAgY29uc3QgbW9kYWxDb250YWluZXIgPSAgZG9jdW1lbnQuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZSgnbWlhbS13cmFwcGVyLXByZXZpZXcnKVswXTtcbiAgICAgIGlmIChtb2RhbENvbnRhaW5lcikge1xuICAgICAgICBtb2RhbENvbnRhaW5lci5zY3JvbGxUb3AgPSAwO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgICBlbGVtZW50LnNjcm9sbEludG9WaWV3KCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgLy8gc2Nyb2xsIGJhc2Ugb24gZ2xvYmFsIHdpbmRvd1xuICAgIGVsZW1lbnQuc2Nyb2xsSW50b1ZpZXcoKTtcbiAgfVxufVxuIiwiPGRpdiAjcHJldmlld0Jsb2NrVG9wICpuZ0lmPSchY29yc0lzc3VlcyBlbHNlIGNvcnMnIGNsYXNzPVwibWlhbS1iYXNrZXQtcHJldmlldy1ibG9ja1wiPlxuICA8bmctY29udGFpbmVyICpuZ0lmPVwiKHBvc1NlcnZpY2UuaXNQb3NWYWxpZCgpIHwgYXN5bmMpIGVsc2Ugbm9Qb3NcIj5cbiAgICA8aDMgKm5nSWY9XCIhcmVjaXBlSWRcIiBjbGFzcz1cIm1pYW0tYmFza2V0LXByZXZpZXctYmxvY2tfX2hlYWRlclwiPlxuICAgICAgPGRpdiBjbGFzcz1cIm1pYW0tYmFza2V0LXByZXZpZXctYmxvY2tfX2hlYWRlcl9fYWN0aW9uc1wiPlxuICAgICAgICA8YnV0dG9uICpuZ0lmPVwic2hvd0xpbmVzXCIgY2xhc3M9XCJtLWJ1dHRvbi1zZWNvbmRhcnkgbWlhbS1iYXNrZXQtcHJldmlldy1ibG9ja19faGVhZGVyX19lbXB0eS1iYXNrZXRcIiAoY2xpY2spPVwibGlzdHNTZXJ2aWNlLnJlbW92ZVJlY2lwZXNGcm9tTGlzdCgpXCI+XG4gICAgICAgICAgPG5nLW1pYW0taWNvbiAgW2ljb25OYW1lXT1cImljb24uVHJhc2hcIiBwcmltYXJ5Q29sb3I9XCJ2YXIoLS1tLWNvbG9yLXNlY29uZGFyeSlcIj48L25nLW1pYW0taWNvbj5cbiAgICAgICAgICA8c3Bhbj5SZXRpcmVyIHRvdXMgbGVzIHJlcGFzPC9zcGFuPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgPGRpdiBjbGFzcz1cIm1pYW0tYmFza2V0LXByZXZpZXctYmxvY2tfX2hlYWRlcl9fY2hldnJvblwiIFtuZ0NsYXNzXT1cInsnbWlhbS1iYXNrZXQtcHJldmlldy1ibG9ja19fY2hldnJvbl9fZG93bic6IXNob3dMaW5lc31cIiAoY2xpY2spPVwidG9nZ2xlTGluZXMoKVwiPlxuICAgICAgICAgIDxuZy1taWFtLWljb24gaGVpZ2h0PSczMicgd2lkdGg9JzMyJyAgW2ljb25OYW1lXT1cImljb24uQ2hldnJvbkRvd25cIj48L25nLW1pYW0taWNvbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L2gzPlxuICBcbiAgICA8ZGl2IGNsYXNzPVwibWlhbS1iYXNrZXQtcHJldmlldy1ibG9ja19fbGluZXNcIiAqbmdJZj1cInNob3dMaW5lc1wiPlxuICAgICAgICA8bmctbWlhbS1iYXNrZXQtcHJldmlldy1saW5lXG4gICAgICAgICpuZ0Zvcj1cImxldCBsaW5lIG9mIGxpbmVzXCJcbiAgICAgICAgW2xpbmVdPVwibGluZVwiXG4gICAgICAgIFtibG9ja1N0YXRlc109XCJibG9ja1N0YXRlc1wiXG4gICAgICAgIFt1bmlxdWVMaW5lXT1cInJlY2lwZUlkXCJcbiAgICAgICAgKHJlbW92ZWQpPVwicmVtb3ZlUmVjaXBlKCRldmVudClcIlxuICAgICAgICAoY291bnRDaGFuZ2VkKT1cInVwZGF0ZVJlY2lwZSgkZXZlbnQpXCJcbiAgICAgICAgKHJlcGxhY2VJdGVtKT0nc2Nyb2xsdG9wKHByZXZpZXdCbG9ja1RvcCknXG4gICAgICAgIFtuZ1N0eWxlXT1cInsnZGlzcGxheSc6IGJsb2NrU3RhdGVzPy52YWx1ZT8ub3ZlcmxheU9wZW4gPyAnbm9uZScgOiAnYmxvY2snfSBcIlxuICAgICAgPjwvbmctbWlhbS1iYXNrZXQtcHJldmlldy1saW5lPlxuICAgICAgPG5nLW1pYW0tcmVwbGFjZS1pdGVtICpuZ0lmPVwiIGJsb2NrU3RhdGVzPy52YWx1ZT8ub3ZlcmxheU9wZW4gXCIgW2xpbmVdPVwiYmxvY2tTdGF0ZXM/LnZhbHVlPy5saW5lQ29tcG9uZW50LmxpbmVcIiAoc2VsZWN0ZWQpPVwiYmxvY2tTdGF0ZXM/LnZhbHVlPy5saW5lQ29tcG9uZW50LnByb2R1Y3RDaG9zZW4oJGV2ZW50KVwiPjwvbmctbWlhbS1yZXBsYWNlLWl0ZW0+XG4gICAgICA8ZGl2ICpuZ0lmPVwiIWxvYWRpbmcgJiYgKCFsaW5lcyB8fCBsaW5lcy5sZW5ndGggPT09IDApXCIgY2xhc3M9XCJtaWFtLWJhc2tldC1wcmV2aWV3LWJsb2NrX19saW5lc19fbm90LWZvdW5kXCI+XG4gICAgICAgIDxwPjxiPlZvdXMgbidhdmV6IHBhcyBlbmNvcmUgc8OpbGVjdGlvbm7DqSBkZSByZXBhcy48L2I+PC9wPlxuICAgICAgICA8cCAqbmdJZj1cInNob3dOb3RpY2VcIj5OYXZpZ3VleiB2ZXJzIGxhIHBhZ2UgZCd1bmUgcmVjZXR0ZSwgcHVpcyBjbGlxdWV6IHN1ciBcIkNvbW1hbmRlciBsZXMgaW5ncsOpZGllbnRzXCIuPC9wPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIFxuICAgIDxkaXYgY2xhc3M9XCJtaWFtLWJhc2tldC1wcmV2aWV3LWJsb2NrX19saW5lc19fbG9hZGVyXCIgKm5nSWY9XCJsb2FkaW5nXCI+XG4gICAgICA8bmctbWlhbS1sb2FkZXI+PC9uZy1taWFtLWxvYWRlcj5cbiAgICAgIDxkaXY+Q2hhcmdlbWVudCBkZXMgcmVwYXMuLi48L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9uZy1jb250YWluZXI+XG48L2Rpdj5cbjxuZy10ZW1wbGF0ZSAjY29ycz5cbjxuZy1taWFtLWNvcnMtb3ZlcmxheT48L25nLW1pYW0tY29ycy1vdmVybGF5PlxuPC9uZy10ZW1wbGF0ZT5cbjxuZy10ZW1wbGF0ZSAjbm9Qb3M+XG4gIDxkaXYgY2xhc3M9XCJtaWFtLWJhc2tldC1wcmV2aWV3LWJsb2NrX19ub1Bvc1wiPlxuICAgIDxzcGFuPkTDqXNvbMOpLCBjZSBtYWdhc2luIG5lIHBlcm1ldCBwYXMgZGUgc8OpbGVjdGlvbm5lciBkZXMgcmVwYXMuPC9zcGFuPiBcbiAgICA8YnI+XG4gICAgPHNwYW4+VmV1aWxsZXogc8OpbGVjdGlvbm5lciB1biBhdXRyZSBtYWdhc2luPC9zcGFuPlxuICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
|