fabrikantencore 2.0.13 → 2.0.15

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.
Files changed (37) hide show
  1. package/esm2020/src/app/modules/fabrikantencore/beheer/components/beheer-connect-category-dialog/beheer-connect-category-dialog.component.mjs +6 -6
  2. package/esm2020/src/app/modules/fabrikantencore/beheer/components/beheer-deeplink/beheer-deeplink.component.mjs +43 -0
  3. package/esm2020/src/app/modules/fabrikantencore/beheer/components/beheer-ebo-koppel/beheer-ebo-koppel/beheer-ebo-koppel.component.mjs +55 -41
  4. package/esm2020/src/app/modules/fabrikantencore/beheer/components/beheer-filters/beheer-filters.component.mjs +21 -3
  5. package/esm2020/src/app/modules/fabrikantencore/beheer/components/beheer-nav/beheer-nav.component.mjs +3 -3
  6. package/esm2020/src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products-koppel-filteroption-dailog/beheer-products-koppel-filteroption-dailog.component.mjs +3 -3
  7. package/esm2020/src/app/modules/fabrikantencore/beheer/components/beheer-products/beheer-products.component.mjs +3 -3
  8. package/esm2020/src/app/modules/fabrikantencore/components/fab-categories/fab-categories.component.mjs +2 -2
  9. package/esm2020/src/app/modules/fabrikantencore/components/fab-category-tile/fab-category-tile.component.mjs +2 -2
  10. package/esm2020/src/app/modules/fabrikantencore/components/fab-filters/fab-filters.component.mjs +2 -2
  11. package/esm2020/src/app/modules/fabrikantencore/components/fab-iframe/fab-iframe.component.mjs +29 -0
  12. package/esm2020/src/app/modules/fabrikantencore/components/fab-product/fab-product.component.mjs +23 -6
  13. package/esm2020/src/app/modules/fabrikantencore/components/fab-product-select/fab-product-select.component.mjs +2 -2
  14. package/esm2020/src/app/modules/fabrikantencore/components/fab-start/fab-start.component.mjs +2 -2
  15. package/esm2020/src/app/modules/fabrikantencore/components/fab-texture/fab-texture.component.mjs +38 -0
  16. package/esm2020/src/app/modules/fabrikantencore/components/fab-webgl-viewer/fab-webgl-viewer.component.mjs +3 -3
  17. package/esm2020/src/app/modules/fabrikantencore/fabrikantencore.module.mjs +18 -7
  18. package/esm2020/src/app/modules/fabrikantencore/services/fabrikanten.service.mjs +40 -8
  19. package/esm2020/src/app/modules/fabrikantencore/services/navigate.service.mjs +2 -2
  20. package/esm2020/src/app/modules/fabrikantencore/services/projectsetting.service.mjs +2 -1
  21. package/esm2020/src/app/modules/fabrikantencore/services/texture.service.mjs +33 -0
  22. package/esm2020/src/app/modules/fabrikantencore/swagger/SwaggerClient.mjs +490 -25
  23. package/fesm2015/fabrikantencore.mjs +791 -128
  24. package/fesm2015/fabrikantencore.mjs.map +1 -1
  25. package/fesm2020/fabrikantencore.mjs +790 -128
  26. package/fesm2020/fabrikantencore.mjs.map +1 -1
  27. package/package.json +1 -1
  28. package/src/app/modules/fabrikantencore/beheer/components/beheer-deeplink/beheer-deeplink.component.d.ts +16 -0
  29. package/src/app/modules/fabrikantencore/beheer/components/beheer-ebo-koppel/beheer-ebo-koppel/beheer-ebo-koppel.component.d.ts +1 -1
  30. package/src/app/modules/fabrikantencore/beheer/components/beheer-filters/beheer-filters.component.d.ts +1 -0
  31. package/src/app/modules/fabrikantencore/components/fab-iframe/fab-iframe.component.d.ts +12 -0
  32. package/src/app/modules/fabrikantencore/components/fab-product/fab-product.component.d.ts +5 -2
  33. package/src/app/modules/fabrikantencore/components/fab-texture/fab-texture.component.d.ts +18 -0
  34. package/src/app/modules/fabrikantencore/fabrikantencore.module.d.ts +27 -24
  35. package/src/app/modules/fabrikantencore/services/fabrikanten.service.d.ts +7 -2
  36. package/src/app/modules/fabrikantencore/services/texture.service.d.ts +12 -0
  37. package/src/app/modules/fabrikantencore/swagger/SwaggerClient.d.ts +154 -20
@@ -15,6 +15,8 @@ import * as i10 from "@angular/material/core";
15
15
  import * as i11 from "../../../components/fab-loader/fab-loader.component";
16
16
  export class BeheerConnectCategoryDialogComponent {
17
17
  constructor(dialogRef, data, CategoriesApiClient) {
18
+ //this.DOType = data.dotype;
19
+ //this.DONaam = data.donaam;
18
20
  this.dialogRef = dialogRef;
19
21
  this.data = data;
20
22
  this.CategoriesApiClient = CategoriesApiClient;
@@ -22,9 +24,7 @@ export class BeheerConnectCategoryDialogComponent {
22
24
  this.DOType = "DOType";
23
25
  this.DONaam = "DONaam";
24
26
  this.CategoryName = "";
25
- this.DOType = data.dotype;
26
- this.DONaam = data.donaam;
27
- this.CategoryName = data.donaam;
27
+ //this.CategoryName = data.donaam;
28
28
  }
29
29
  ngOnInit() {
30
30
  this.LoadCategories();
@@ -66,12 +66,12 @@ export class BeheerConnectCategoryDialogComponent {
66
66
  }
67
67
  }
68
68
  BeheerConnectCategoryDialogComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: BeheerConnectCategoryDialogComponent, deps: [{ token: i1.MatDialogRef }, { token: MAT_DIALOG_DATA }, { token: i2.CategoriesApiClient }], target: i0.ɵɵFactoryTarget.Component });
69
- BeheerConnectCategoryDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.0", type: BeheerConnectCategoryDialogComponent, selector: "app-beheer-connect-category-dialog", ngImport: i0, template: "<div *ngIf=\"Loading\">\r\n <app-fab-loader></app-fab-loader>\r\n</div>\r\n\r\n<div *ngIf=\"!Loading\">\r\n <mat-tab-group>\r\n <mat-tab label=\"Nieuw\">\r\n <div class=\"bar\">\r\n <mat-form-field appearance=\"fill\" class=\"full-width\">\r\n <mat-label>{{ DOType }}</mat-label>\r\n <input matInput [(ngModel)]=\"DONaam\" readonly>\r\n </mat-form-field>\r\n\r\n <mat-form-field appearance=\"fill\" class=\"full-width\">\r\n <mat-label>Naam</mat-label>\r\n <input matInput [(ngModel)]=\"CategoryName\">\r\n </mat-form-field>\r\n </div>\r\n\r\n <div class=\"bar tool-bar\">\r\n <button mat-raised-button (click)=\"Nieuw()\">Toevoegen</button>\r\n </div>\r\n </mat-tab>\r\n <mat-tab label=\"Bestaand\">\r\n <div class=\"bar\">\r\n <mat-form-field appearance=\"fill\" class=\"full-width\">\r\n <mat-label>{{ DOType }}</mat-label>\r\n <input matInput [(ngModel)]=\"DONaam\" readonly>\r\n </mat-form-field>\r\n\r\n <mat-form-field appearance=\"fill\" class=\"full-width\">\r\n <mat-label>Category</mat-label>\r\n <mat-select [(ngModel)]=\"CategorySelected\">\r\n <mat-option *ngFor=\"let category of CategoriesViewModel.categories\" [value]=\"category.id\">\r\n {{category.name}}\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n </div>\r\n\r\n <div class=\"bar tool-bar\">\r\n <button mat-raised-button (click)=\"Bestaand()\">Toevoegen</button>\r\n </div>\r\n </mat-tab>\r\n </mat-tab-group>\r\n</div>\r\n", styles: [""], dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4.MatLabel, selector: "mat-label" }, { kind: "directive", type: i5.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "directive", type: i6.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i6.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i7.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i8.MatTabGroup, selector: "mat-tab-group", inputs: ["color", "disableRipple"], exportAs: ["matTabGroup"] }, { kind: "component", type: i8.MatTab, selector: "mat-tab", inputs: ["disabled", "label", "aria-label", "aria-labelledby", "labelClass", "bodyClass"], exportAs: ["matTab"] }, { kind: "component", type: i9.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex"], exportAs: ["matSelect"] }, { kind: "component", type: i10.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "component", type: i11.FabLoaderComponent, selector: "app-fab-loader" }] });
69
+ BeheerConnectCategoryDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.0", type: BeheerConnectCategoryDialogComponent, selector: "app-beheer-connect-category-dialog", ngImport: i0, template: "<div *ngIf=\"Loading\">\r\n <app-fab-loader></app-fab-loader>\r\n</div>\r\n\r\n<div *ngIf=\"!Loading\">\r\n <mat-tab-group>\r\n <mat-tab label=\"Nieuw\">\r\n <div class=\"bar\">\r\n <!--<mat-form-field appearance=\"fill\" class=\"full-width\">\r\n <mat-label>{{ DOType }}</mat-label>\r\n <input matInput [(ngModel)]=\"DONaam\" readonly>\r\n </mat-form-field>-->\r\n\r\n <mat-form-field appearance=\"fill\" class=\"full-width\">\r\n <mat-label>Naam</mat-label>\r\n <input matInput [(ngModel)]=\"CategoryName\">\r\n </mat-form-field>\r\n </div>\r\n\r\n <div class=\"bar tool-bar\">\r\n <button mat-raised-button (click)=\"Nieuw()\">Toevoegen</button>\r\n </div>\r\n </mat-tab>\r\n <mat-tab label=\"Bestaand\">\r\n <div class=\"bar\">\r\n <!--<mat-form-field appearance=\"fill\" class=\"full-width\">\r\n <mat-label>{{ DOType }}</mat-label>\r\n <input matInput [(ngModel)]=\"DONaam\" readonly>\r\n </mat-form-field>-->\r\n\r\n <mat-form-field appearance=\"fill\" class=\"full-width\">\r\n <mat-label>Category</mat-label>\r\n <mat-select [(ngModel)]=\"CategorySelected\">\r\n <mat-option *ngFor=\"let category of CategoriesViewModel.categories\" [value]=\"category.id\">\r\n {{category.name}}\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n </div>\r\n\r\n <div class=\"bar tool-bar\">\r\n <button mat-raised-button (click)=\"Bestaand()\">Toevoegen</button>\r\n </div>\r\n </mat-tab>\r\n </mat-tab-group>\r\n</div>\r\n", styles: [""], dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4.MatLabel, selector: "mat-label" }, { kind: "directive", type: i5.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "directive", type: i6.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i6.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i7.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i8.MatTabGroup, selector: "mat-tab-group", inputs: ["color", "disableRipple"], exportAs: ["matTabGroup"] }, { kind: "component", type: i8.MatTab, selector: "mat-tab", inputs: ["disabled", "label", "aria-label", "aria-labelledby", "labelClass", "bodyClass"], exportAs: ["matTab"] }, { kind: "component", type: i9.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex"], exportAs: ["matSelect"] }, { kind: "component", type: i10.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "component", type: i11.FabLoaderComponent, selector: "app-fab-loader" }] });
70
70
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: BeheerConnectCategoryDialogComponent, decorators: [{
71
71
  type: Component,
72
- args: [{ selector: 'app-beheer-connect-category-dialog', template: "<div *ngIf=\"Loading\">\r\n <app-fab-loader></app-fab-loader>\r\n</div>\r\n\r\n<div *ngIf=\"!Loading\">\r\n <mat-tab-group>\r\n <mat-tab label=\"Nieuw\">\r\n <div class=\"bar\">\r\n <mat-form-field appearance=\"fill\" class=\"full-width\">\r\n <mat-label>{{ DOType }}</mat-label>\r\n <input matInput [(ngModel)]=\"DONaam\" readonly>\r\n </mat-form-field>\r\n\r\n <mat-form-field appearance=\"fill\" class=\"full-width\">\r\n <mat-label>Naam</mat-label>\r\n <input matInput [(ngModel)]=\"CategoryName\">\r\n </mat-form-field>\r\n </div>\r\n\r\n <div class=\"bar tool-bar\">\r\n <button mat-raised-button (click)=\"Nieuw()\">Toevoegen</button>\r\n </div>\r\n </mat-tab>\r\n <mat-tab label=\"Bestaand\">\r\n <div class=\"bar\">\r\n <mat-form-field appearance=\"fill\" class=\"full-width\">\r\n <mat-label>{{ DOType }}</mat-label>\r\n <input matInput [(ngModel)]=\"DONaam\" readonly>\r\n </mat-form-field>\r\n\r\n <mat-form-field appearance=\"fill\" class=\"full-width\">\r\n <mat-label>Category</mat-label>\r\n <mat-select [(ngModel)]=\"CategorySelected\">\r\n <mat-option *ngFor=\"let category of CategoriesViewModel.categories\" [value]=\"category.id\">\r\n {{category.name}}\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n </div>\r\n\r\n <div class=\"bar tool-bar\">\r\n <button mat-raised-button (click)=\"Bestaand()\">Toevoegen</button>\r\n </div>\r\n </mat-tab>\r\n </mat-tab-group>\r\n</div>\r\n" }]
72
+ args: [{ selector: 'app-beheer-connect-category-dialog', template: "<div *ngIf=\"Loading\">\r\n <app-fab-loader></app-fab-loader>\r\n</div>\r\n\r\n<div *ngIf=\"!Loading\">\r\n <mat-tab-group>\r\n <mat-tab label=\"Nieuw\">\r\n <div class=\"bar\">\r\n <!--<mat-form-field appearance=\"fill\" class=\"full-width\">\r\n <mat-label>{{ DOType }}</mat-label>\r\n <input matInput [(ngModel)]=\"DONaam\" readonly>\r\n </mat-form-field>-->\r\n\r\n <mat-form-field appearance=\"fill\" class=\"full-width\">\r\n <mat-label>Naam</mat-label>\r\n <input matInput [(ngModel)]=\"CategoryName\">\r\n </mat-form-field>\r\n </div>\r\n\r\n <div class=\"bar tool-bar\">\r\n <button mat-raised-button (click)=\"Nieuw()\">Toevoegen</button>\r\n </div>\r\n </mat-tab>\r\n <mat-tab label=\"Bestaand\">\r\n <div class=\"bar\">\r\n <!--<mat-form-field appearance=\"fill\" class=\"full-width\">\r\n <mat-label>{{ DOType }}</mat-label>\r\n <input matInput [(ngModel)]=\"DONaam\" readonly>\r\n </mat-form-field>-->\r\n\r\n <mat-form-field appearance=\"fill\" class=\"full-width\">\r\n <mat-label>Category</mat-label>\r\n <mat-select [(ngModel)]=\"CategorySelected\">\r\n <mat-option *ngFor=\"let category of CategoriesViewModel.categories\" [value]=\"category.id\">\r\n {{category.name}}\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n </div>\r\n\r\n <div class=\"bar tool-bar\">\r\n <button mat-raised-button (click)=\"Bestaand()\">Toevoegen</button>\r\n </div>\r\n </mat-tab>\r\n </mat-tab-group>\r\n</div>\r\n" }]
73
73
  }], ctorParameters: function () { return [{ type: i1.MatDialogRef }, { type: undefined, decorators: [{
74
74
  type: Inject,
75
75
  args: [MAT_DIALOG_DATA]
76
76
  }] }, { type: i2.CategoriesApiClient }]; } });
77
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmVoZWVyLWNvbm5lY3QtY2F0ZWdvcnktZGlhbG9nLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvbW9kdWxlcy9mYWJyaWthbnRlbmNvcmUvYmVoZWVyL2NvbXBvbmVudHMvYmVoZWVyLWNvbm5lY3QtY2F0ZWdvcnktZGlhbG9nL2JlaGVlci1jb25uZWN0LWNhdGVnb3J5LWRpYWxvZy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL21vZHVsZXMvZmFicmlrYW50ZW5jb3JlL2JlaGVlci9jb21wb25lbnRzL2JlaGVlci1jb25uZWN0LWNhdGVnb3J5LWRpYWxvZy9iZWhlZXItY29ubmVjdC1jYXRlZ29yeS1kaWFsb2cuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDMUQsT0FBTyxFQUFnQixlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN6RSxPQUFPLEVBQTRDLHFCQUFxQixFQUEwQixNQUFNLGdDQUFnQyxDQUFDOzs7Ozs7Ozs7Ozs7O0FBT3pJLE1BQU0sT0FBTyxvQ0FBb0M7SUFhL0MsWUFBbUIsU0FBNkQsRUFBa0MsSUFBUyxFQUFVLG1CQUF3QztRQUExSixjQUFTLEdBQVQsU0FBUyxDQUFvRDtRQUFrQyxTQUFJLEdBQUosSUFBSSxDQUFLO1FBQVUsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFxQjtRQVh0SyxZQUFPLEdBQVksSUFBSSxDQUFDO1FBRXhCLFdBQU0sR0FBVyxRQUFRLENBQUM7UUFDMUIsV0FBTSxHQUFXLFFBQVEsQ0FBQztRQUUxQixpQkFBWSxHQUFXLEVBQUUsQ0FBQztRQU8vQixJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUM7UUFDMUIsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDO1FBRTFCLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUNsQyxDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztJQUN4QixDQUFDO0lBRU0sS0FBSztRQUNWLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDO1FBRXBCLElBQUksZUFBZSxHQUEwQixJQUFJLHFCQUFxQixFQUFFLENBQUM7UUFFekUsZUFBZSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDO1FBRXpDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxjQUFjLENBQUMsZUFBZSxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsS0FBNkIsRUFBRSxFQUFFO1lBRWpHLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO1lBRXJCLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUNuQyxDQUFDLEVBQUUsQ0FBQyxLQUFlLEVBQUUsRUFBRTtZQUNyQixJQUFJLEtBQUssQ0FBQyxNQUFNLElBQUksR0FBRztnQkFDckIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztpQkFDdkI7Z0JBQ0gsT0FBTyxDQUFDLEdBQUcsQ0FBQyw2QkFBNkIsQ0FBQyxDQUFDO2dCQUMzQyxPQUFPLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDO2FBQ3BCO1lBRUQsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUM7UUFDdkIsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU0sUUFBUTtRQUNiLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0lBQzlDLENBQUM7SUFFTyxjQUFjO1FBQ3BCLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDO1FBRXBCLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxzQkFBc0IsRUFBRSxDQUFDLFNBQVMsQ0FBQyxDQUFDLEtBQTBCLEVBQUUsRUFBRTtZQUN6RixJQUFJLENBQUMsbUJBQW1CLEdBQUcsS0FBSyxDQUFDO1lBQ2pDLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ3ZCLENBQUMsRUFBRSxDQUFDLEtBQWUsRUFBRSxFQUFFO1lBQ3JCLElBQUksS0FBSyxDQUFDLE1BQU0sSUFBSSxHQUFHO2dCQUNyQixPQUFPLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO2lCQUN2QjtnQkFDSCxPQUFPLENBQUMsR0FBRyxDQUFDLDZCQUE2QixDQUFDLENBQUM7Z0JBQzNDLE9BQU8sQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7YUFDcEI7WUFFRCxJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztRQUN2QixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7O2lJQXBFVSxvQ0FBb0MsOENBYTJDLGVBQWU7cUhBYjlGLG9DQUFvQywwRUNUakQsd25EQThDQTsyRkRyQ2Esb0NBQW9DO2tCQUxoRCxTQUFTOytCQUNFLG9DQUFvQzs7MEJBaUJxQyxNQUFNOzJCQUFDLGVBQWUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEluamVjdCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXREaWFsb2dSZWYsIE1BVF9ESUFMT0dfREFUQSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XHJcbmltcG9ydCB7IENhdGVnb3JpZXNBcGlDbGllbnQsIENhdGVnb3JpZXNWaWV3TW9kZWwsIENyZWF0ZUNhdGVnb3J5UmVxdWVzdCwgQ3JlYXRlQ2F0ZWdvcnlSZXNwb25zZSB9IGZyb20gJy4uLy4uLy4uL3N3YWdnZXIvU3dhZ2dlckNsaWVudCc7XHJcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXBwLWJlaGVlci1jb25uZWN0LWNhdGVnb3J5LWRpYWxvZycsXG4gIHRlbXBsYXRlVXJsOiAnLi9iZWhlZXItY29ubmVjdC1jYXRlZ29yeS1kaWFsb2cuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9iZWhlZXItY29ubmVjdC1jYXRlZ29yeS1kaWFsb2cuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBCZWhlZXJDb25uZWN0Q2F0ZWdvcnlEaWFsb2dDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuXG4gIHB1YmxpYyBMb2FkaW5nOiBib29sZWFuID0gdHJ1ZTtcblxuICBwdWJsaWMgRE9UeXBlOiBzdHJpbmcgPSBcIkRPVHlwZVwiO1xuICBwdWJsaWMgRE9OYWFtOiBzdHJpbmcgPSBcIkRPTmFhbVwiO1xuXG4gIHB1YmxpYyBDYXRlZ29yeU5hbWU6IHN0cmluZyA9IFwiXCI7XG5cbiAgcHVibGljIENhdGVnb3J5U2VsZWN0ZWQ6IG51bWJlcjtcblxuICBwdWJsaWMgQ2F0ZWdvcmllc1ZpZXdNb2RlbDogQ2F0ZWdvcmllc1ZpZXdNb2RlbDtcblxuICBjb25zdHJ1Y3RvcihwdWJsaWMgZGlhbG9nUmVmOiBNYXREaWFsb2dSZWY8QmVoZWVyQ29ubmVjdENhdGVnb3J5RGlhbG9nQ29tcG9uZW50PiwgQEluamVjdChNQVRfRElBTE9HX0RBVEEpIHB1YmxpYyBkYXRhOiBhbnksIHByaXZhdGUgQ2F0ZWdvcmllc0FwaUNsaWVudDogQ2F0ZWdvcmllc0FwaUNsaWVudCkge1xuICAgIHRoaXMuRE9UeXBlID0gZGF0YS5kb3R5cGU7XG4gICAgdGhpcy5ET05hYW0gPSBkYXRhLmRvbmFhbTtcblxuICAgIHRoaXMuQ2F0ZWdvcnlOYW1lID0gZGF0YS5kb25hYW07XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLkxvYWRDYXRlZ29yaWVzKCk7XG4gIH1cblxuICBwdWJsaWMgTmlldXcoKTogdm9pZCB7XG4gICAgdGhpcy5Mb2FkaW5nID0gdHJ1ZTtcclxuXHJcbiAgICB2YXIgcmVxdWVzdGNhdGVnb3J5OiBDcmVhdGVDYXRlZ29yeVJlcXVlc3QgPSBuZXcgQ3JlYXRlQ2F0ZWdvcnlSZXF1ZXN0KCk7XHJcblxyXG4gICAgcmVxdWVzdGNhdGVnb3J5Lm5hbWUgPSB0aGlzLkNhdGVnb3J5TmFtZTtcclxuXHJcbiAgICB0aGlzLkNhdGVnb3JpZXNBcGlDbGllbnQuY3JlYXRlQ2F0ZWdvcnkocmVxdWVzdGNhdGVnb3J5KS5zdWJzY3JpYmUoKG1vZGVsOiBDcmVhdGVDYXRlZ29yeVJlc3BvbnNlKSA9PiB7XHJcblxyXG4gICAgICAgIHRoaXMuTG9hZGluZyA9IGZhbHNlO1xyXG5cclxuICAgICAgICB0aGlzLmRpYWxvZ1JlZi5jbG9zZShtb2RlbC5pZCk7XHJcbiAgICB9LCAoZXJyb3I6IFJlc3BvbnNlKSA9PiB7XHJcbiAgICAgIGlmIChlcnJvci5zdGF0dXMgPT0gNDAwKVxyXG4gICAgICAgIGNvbnNvbGUubG9nKGVycm9yLmpzb24oKSk7XHJcbiAgICAgIGVsc2Uge1xyXG4gICAgICAgIGNvbnNvbGUubG9nKCdBbiB1bmV4cGVjdGVkIGVycm9yIG9jY3VyZWQnKTtcclxuICAgICAgICBjb25zb2xlLmxvZyhlcnJvcik7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRoaXMuTG9hZGluZyA9IGZhbHNlO1xyXG4gICAgfSk7XHJcbiAgfVxuXG4gIHB1YmxpYyBCZXN0YWFuZCgpOiB2b2lkIHtcbiAgICB0aGlzLmRpYWxvZ1JlZi5jbG9zZSh0aGlzLkNhdGVnb3J5U2VsZWN0ZWQpO1xyXG4gIH1cblxuICBwcml2YXRlIExvYWRDYXRlZ29yaWVzKCk6IHZvaWQge1xyXG4gICAgdGhpcy5Mb2FkaW5nID0gdHJ1ZTtcclxuXHJcbiAgICB0aGlzLkNhdGVnb3JpZXNBcGlDbGllbnQuZ2V0Q2F0ZWdvcmllc1ZpZXdNb2RlbCgpLnN1YnNjcmliZSgobW9kZWw6IENhdGVnb3JpZXNWaWV3TW9kZWwpID0+IHtcclxuICAgICAgdGhpcy5DYXRlZ29yaWVzVmlld01vZGVsID0gbW9kZWw7XHJcbiAgICAgIHRoaXMuTG9hZGluZyA9IGZhbHNlO1xyXG4gICAgfSwgKGVycm9yOiBSZXNwb25zZSkgPT4ge1xyXG4gICAgICBpZiAoZXJyb3Iuc3RhdHVzID09IDQwMClcclxuICAgICAgICBjb25zb2xlLmxvZyhlcnJvci5qc29uKCkpO1xyXG4gICAgICBlbHNlIHtcclxuICAgICAgICBjb25zb2xlLmxvZygnQW4gdW5leHBlY3RlZCBlcnJvciBvY2N1cmVkJyk7XHJcbiAgICAgICAgY29uc29sZS5sb2coZXJyb3IpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0aGlzLkxvYWRpbmcgPSBmYWxzZTtcclxuICAgIH0pO1xyXG4gIH1cbn1cbiIsIjxkaXYgKm5nSWY9XCJMb2FkaW5nXCI+XHJcbiAgPGFwcC1mYWItbG9hZGVyPjwvYXBwLWZhYi1sb2FkZXI+XHJcbjwvZGl2PlxyXG5cclxuPGRpdiAqbmdJZj1cIiFMb2FkaW5nXCI+XHJcbiAgPG1hdC10YWItZ3JvdXA+XHJcbiAgICA8bWF0LXRhYiBsYWJlbD1cIk5pZXV3XCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJiYXJcIj5cclxuICAgICAgICA8bWF0LWZvcm0tZmllbGQgYXBwZWFyYW5jZT1cImZpbGxcIiBjbGFzcz1cImZ1bGwtd2lkdGhcIj5cclxuICAgICAgICAgIDxtYXQtbGFiZWw+e3sgRE9UeXBlIH19PC9tYXQtbGFiZWw+XHJcbiAgICAgICAgICA8aW5wdXQgbWF0SW5wdXQgWyhuZ01vZGVsKV09XCJET05hYW1cIiByZWFkb25seT5cclxuICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxyXG5cclxuICAgICAgICA8bWF0LWZvcm0tZmllbGQgYXBwZWFyYW5jZT1cImZpbGxcIiBjbGFzcz1cImZ1bGwtd2lkdGhcIj5cclxuICAgICAgICAgIDxtYXQtbGFiZWw+TmFhbTwvbWF0LWxhYmVsPlxyXG4gICAgICAgICAgPGlucHV0IG1hdElucHV0IFsobmdNb2RlbCldPVwiQ2F0ZWdvcnlOYW1lXCI+XHJcbiAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cclxuICAgICAgPC9kaXY+XHJcblxyXG4gICAgICA8ZGl2IGNsYXNzPVwiYmFyIHRvb2wtYmFyXCI+XHJcbiAgICAgICAgPGJ1dHRvbiBtYXQtcmFpc2VkLWJ1dHRvbiAoY2xpY2spPVwiTmlldXcoKVwiPlRvZXZvZWdlbjwvYnV0dG9uPlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvbWF0LXRhYj5cclxuICAgIDxtYXQtdGFiIGxhYmVsPVwiQmVzdGFhbmRcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cImJhclwiPlxyXG4gICAgICAgIDxtYXQtZm9ybS1maWVsZCBhcHBlYXJhbmNlPVwiZmlsbFwiIGNsYXNzPVwiZnVsbC13aWR0aFwiPlxyXG4gICAgICAgICAgPG1hdC1sYWJlbD57eyBET1R5cGUgfX08L21hdC1sYWJlbD5cclxuICAgICAgICAgIDxpbnB1dCBtYXRJbnB1dCBbKG5nTW9kZWwpXT1cIkRPTmFhbVwiIHJlYWRvbmx5PlxyXG4gICAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XHJcblxyXG4gICAgICAgIDxtYXQtZm9ybS1maWVsZCBhcHBlYXJhbmNlPVwiZmlsbFwiIGNsYXNzPVwiZnVsbC13aWR0aFwiPlxyXG4gICAgICAgICAgPG1hdC1sYWJlbD5DYXRlZ29yeTwvbWF0LWxhYmVsPlxyXG4gICAgICAgICAgPG1hdC1zZWxlY3QgWyhuZ01vZGVsKV09XCJDYXRlZ29yeVNlbGVjdGVkXCI+XHJcbiAgICAgICAgICAgIDxtYXQtb3B0aW9uICpuZ0Zvcj1cImxldCBjYXRlZ29yeSBvZiBDYXRlZ29yaWVzVmlld01vZGVsLmNhdGVnb3JpZXNcIiBbdmFsdWVdPVwiY2F0ZWdvcnkuaWRcIj5cclxuICAgICAgICAgICAgICB7e2NhdGVnb3J5Lm5hbWV9fVxyXG4gICAgICAgICAgICA8L21hdC1vcHRpb24+XHJcbiAgICAgICAgICA8L21hdC1zZWxlY3Q+XHJcbiAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cclxuICAgICAgPC9kaXY+XHJcblxyXG4gICAgICA8ZGl2IGNsYXNzPVwiYmFyIHRvb2wtYmFyXCI+XHJcbiAgICAgICAgPGJ1dHRvbiBtYXQtcmFpc2VkLWJ1dHRvbiAoY2xpY2spPVwiQmVzdGFhbmQoKVwiPlRvZXZvZWdlbjwvYnV0dG9uPlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvbWF0LXRhYj5cclxuICA8L21hdC10YWItZ3JvdXA+XHJcbjwvZGl2PlxyXG4iXX0=
77
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmVoZWVyLWNvbm5lY3QtY2F0ZWdvcnktZGlhbG9nLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvbW9kdWxlcy9mYWJyaWthbnRlbmNvcmUvYmVoZWVyL2NvbXBvbmVudHMvYmVoZWVyLWNvbm5lY3QtY2F0ZWdvcnktZGlhbG9nL2JlaGVlci1jb25uZWN0LWNhdGVnb3J5LWRpYWxvZy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL21vZHVsZXMvZmFicmlrYW50ZW5jb3JlL2JlaGVlci9jb21wb25lbnRzL2JlaGVlci1jb25uZWN0LWNhdGVnb3J5LWRpYWxvZy9iZWhlZXItY29ubmVjdC1jYXRlZ29yeS1kaWFsb2cuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDMUQsT0FBTyxFQUFnQixlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN6RSxPQUFPLEVBQTRDLHFCQUFxQixFQUEwQixNQUFNLGdDQUFnQyxDQUFDOzs7Ozs7Ozs7Ozs7O0FBT3pJLE1BQU0sT0FBTyxvQ0FBb0M7SUFhL0MsWUFBbUIsU0FBNkQsRUFBa0MsSUFBUyxFQUFVLG1CQUF3QztRQUMzSyw0QkFBNEI7UUFDNUIsNEJBQTRCO1FBRlgsY0FBUyxHQUFULFNBQVMsQ0FBb0Q7UUFBa0MsU0FBSSxHQUFKLElBQUksQ0FBSztRQUFVLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7UUFYdEssWUFBTyxHQUFZLElBQUksQ0FBQztRQUV4QixXQUFNLEdBQVcsUUFBUSxDQUFDO1FBQzFCLFdBQU0sR0FBVyxRQUFRLENBQUM7UUFFMUIsaUJBQVksR0FBVyxFQUFFLENBQUM7UUFVL0Isa0NBQWtDO0lBQ3BDLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQ3hCLENBQUM7SUFFTSxLQUFLO1FBQ1YsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUM7UUFFcEIsSUFBSSxlQUFlLEdBQTBCLElBQUkscUJBQXFCLEVBQUUsQ0FBQztRQUV6RSxlQUFlLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUM7UUFFekMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLGNBQWMsQ0FBQyxlQUFlLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxLQUE2QixFQUFFLEVBQUU7WUFFakcsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUM7WUFFckIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ25DLENBQUMsRUFBRSxDQUFDLEtBQWUsRUFBRSxFQUFFO1lBQ3JCLElBQUksS0FBSyxDQUFDLE1BQU0sSUFBSSxHQUFHO2dCQUNyQixPQUFPLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO2lCQUN2QjtnQkFDSCxPQUFPLENBQUMsR0FBRyxDQUFDLDZCQUE2QixDQUFDLENBQUM7Z0JBQzNDLE9BQU8sQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7YUFDcEI7WUFFRCxJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztRQUN2QixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTSxRQUFRO1FBQ2IsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUM7SUFDOUMsQ0FBQztJQUVPLGNBQWM7UUFDcEIsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUM7UUFFcEIsSUFBSSxDQUFDLG1CQUFtQixDQUFDLHNCQUFzQixFQUFFLENBQUMsU0FBUyxDQUFDLENBQUMsS0FBMEIsRUFBRSxFQUFFO1lBQ3pGLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxLQUFLLENBQUM7WUFDakMsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUM7UUFDdkIsQ0FBQyxFQUFFLENBQUMsS0FBZSxFQUFFLEVBQUU7WUFDckIsSUFBSSxLQUFLLENBQUMsTUFBTSxJQUFJLEdBQUc7Z0JBQ3JCLE9BQU8sQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7aUJBQ3ZCO2dCQUNILE9BQU8sQ0FBQyxHQUFHLENBQUMsNkJBQTZCLENBQUMsQ0FBQztnQkFDM0MsT0FBTyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQzthQUNwQjtZQUVELElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ3ZCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7aUlBcEVVLG9DQUFvQyw4Q0FhMkMsZUFBZTtxSEFiOUYsb0NBQW9DLDBFQ1RqRCxzb0RBOENBOzJGRHJDYSxvQ0FBb0M7a0JBTGhELFNBQVM7K0JBQ0Usb0NBQW9DOzswQkFpQnFDLE1BQU07MkJBQUMsZUFBZSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5qZWN0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hdERpYWxvZ1JlZiwgTUFUX0RJQUxPR19EQVRBIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcclxuaW1wb3J0IHsgQ2F0ZWdvcmllc0FwaUNsaWVudCwgQ2F0ZWdvcmllc1ZpZXdNb2RlbCwgQ3JlYXRlQ2F0ZWdvcnlSZXF1ZXN0LCBDcmVhdGVDYXRlZ29yeVJlc3BvbnNlIH0gZnJvbSAnLi4vLi4vLi4vc3dhZ2dlci9Td2FnZ2VyQ2xpZW50JztcclxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtYmVoZWVyLWNvbm5lY3QtY2F0ZWdvcnktZGlhbG9nJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2JlaGVlci1jb25uZWN0LWNhdGVnb3J5LWRpYWxvZy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2JlaGVlci1jb25uZWN0LWNhdGVnb3J5LWRpYWxvZy5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIEJlaGVlckNvbm5lY3RDYXRlZ29yeURpYWxvZ0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgcHVibGljIExvYWRpbmc6IGJvb2xlYW4gPSB0cnVlO1xuXG4gIHB1YmxpYyBET1R5cGU6IHN0cmluZyA9IFwiRE9UeXBlXCI7XG4gIHB1YmxpYyBET05hYW06IHN0cmluZyA9IFwiRE9OYWFtXCI7XG5cbiAgcHVibGljIENhdGVnb3J5TmFtZTogc3RyaW5nID0gXCJcIjtcblxuICBwdWJsaWMgQ2F0ZWdvcnlTZWxlY3RlZDogbnVtYmVyO1xuXG4gIHB1YmxpYyBDYXRlZ29yaWVzVmlld01vZGVsOiBDYXRlZ29yaWVzVmlld01vZGVsO1xuXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBkaWFsb2dSZWY6IE1hdERpYWxvZ1JlZjxCZWhlZXJDb25uZWN0Q2F0ZWdvcnlEaWFsb2dDb21wb25lbnQ+LCBASW5qZWN0KE1BVF9ESUFMT0dfREFUQSkgcHVibGljIGRhdGE6IGFueSwgcHJpdmF0ZSBDYXRlZ29yaWVzQXBpQ2xpZW50OiBDYXRlZ29yaWVzQXBpQ2xpZW50KSB7XG4gICAgLy90aGlzLkRPVHlwZSA9IGRhdGEuZG90eXBlO1xuICAgIC8vdGhpcy5ET05hYW0gPSBkYXRhLmRvbmFhbTtcblxuICAgIC8vdGhpcy5DYXRlZ29yeU5hbWUgPSBkYXRhLmRvbmFhbTtcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuTG9hZENhdGVnb3JpZXMoKTtcbiAgfVxuXG4gIHB1YmxpYyBOaWV1dygpOiB2b2lkIHtcbiAgICB0aGlzLkxvYWRpbmcgPSB0cnVlO1xyXG5cclxuICAgIHZhciByZXF1ZXN0Y2F0ZWdvcnk6IENyZWF0ZUNhdGVnb3J5UmVxdWVzdCA9IG5ldyBDcmVhdGVDYXRlZ29yeVJlcXVlc3QoKTtcclxuXHJcbiAgICByZXF1ZXN0Y2F0ZWdvcnkubmFtZSA9IHRoaXMuQ2F0ZWdvcnlOYW1lO1xyXG5cclxuICAgIHRoaXMuQ2F0ZWdvcmllc0FwaUNsaWVudC5jcmVhdGVDYXRlZ29yeShyZXF1ZXN0Y2F0ZWdvcnkpLnN1YnNjcmliZSgobW9kZWw6IENyZWF0ZUNhdGVnb3J5UmVzcG9uc2UpID0+IHtcclxuXHJcbiAgICAgICAgdGhpcy5Mb2FkaW5nID0gZmFsc2U7XHJcblxyXG4gICAgICAgIHRoaXMuZGlhbG9nUmVmLmNsb3NlKG1vZGVsLmlkKTtcclxuICAgIH0sIChlcnJvcjogUmVzcG9uc2UpID0+IHtcclxuICAgICAgaWYgKGVycm9yLnN0YXR1cyA9PSA0MDApXHJcbiAgICAgICAgY29uc29sZS5sb2coZXJyb3IuanNvbigpKTtcclxuICAgICAgZWxzZSB7XHJcbiAgICAgICAgY29uc29sZS5sb2coJ0FuIHVuZXhwZWN0ZWQgZXJyb3Igb2NjdXJlZCcpO1xyXG4gICAgICAgIGNvbnNvbGUubG9nKGVycm9yKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdGhpcy5Mb2FkaW5nID0gZmFsc2U7XHJcbiAgICB9KTtcclxuICB9XG5cbiAgcHVibGljIEJlc3RhYW5kKCk6IHZvaWQge1xuICAgIHRoaXMuZGlhbG9nUmVmLmNsb3NlKHRoaXMuQ2F0ZWdvcnlTZWxlY3RlZCk7XHJcbiAgfVxuXG4gIHByaXZhdGUgTG9hZENhdGVnb3JpZXMoKTogdm9pZCB7XHJcbiAgICB0aGlzLkxvYWRpbmcgPSB0cnVlO1xyXG5cclxuICAgIHRoaXMuQ2F0ZWdvcmllc0FwaUNsaWVudC5nZXRDYXRlZ29yaWVzVmlld01vZGVsKCkuc3Vic2NyaWJlKChtb2RlbDogQ2F0ZWdvcmllc1ZpZXdNb2RlbCkgPT4ge1xyXG4gICAgICB0aGlzLkNhdGVnb3JpZXNWaWV3TW9kZWwgPSBtb2RlbDtcclxuICAgICAgdGhpcy5Mb2FkaW5nID0gZmFsc2U7XHJcbiAgICB9LCAoZXJyb3I6IFJlc3BvbnNlKSA9PiB7XHJcbiAgICAgIGlmIChlcnJvci5zdGF0dXMgPT0gNDAwKVxyXG4gICAgICAgIGNvbnNvbGUubG9nKGVycm9yLmpzb24oKSk7XHJcbiAgICAgIGVsc2Uge1xyXG4gICAgICAgIGNvbnNvbGUubG9nKCdBbiB1bmV4cGVjdGVkIGVycm9yIG9jY3VyZWQnKTtcclxuICAgICAgICBjb25zb2xlLmxvZyhlcnJvcik7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRoaXMuTG9hZGluZyA9IGZhbHNlO1xyXG4gICAgfSk7XHJcbiAgfVxufVxuIiwiPGRpdiAqbmdJZj1cIkxvYWRpbmdcIj5cclxuICA8YXBwLWZhYi1sb2FkZXI+PC9hcHAtZmFiLWxvYWRlcj5cclxuPC9kaXY+XHJcblxyXG48ZGl2ICpuZ0lmPVwiIUxvYWRpbmdcIj5cclxuICA8bWF0LXRhYi1ncm91cD5cclxuICAgIDxtYXQtdGFiIGxhYmVsPVwiTmlldXdcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cImJhclwiPlxyXG4gICAgICAgIDwhLS08bWF0LWZvcm0tZmllbGQgYXBwZWFyYW5jZT1cImZpbGxcIiBjbGFzcz1cImZ1bGwtd2lkdGhcIj5cclxuICAgICAgICAgIDxtYXQtbGFiZWw+e3sgRE9UeXBlIH19PC9tYXQtbGFiZWw+XHJcbiAgICAgICAgICA8aW5wdXQgbWF0SW5wdXQgWyhuZ01vZGVsKV09XCJET05hYW1cIiByZWFkb25seT5cclxuICAgICAgICA8L21hdC1mb3JtLWZpZWxkPi0tPlxyXG5cclxuICAgICAgICA8bWF0LWZvcm0tZmllbGQgYXBwZWFyYW5jZT1cImZpbGxcIiBjbGFzcz1cImZ1bGwtd2lkdGhcIj5cclxuICAgICAgICAgIDxtYXQtbGFiZWw+TmFhbTwvbWF0LWxhYmVsPlxyXG4gICAgICAgICAgPGlucHV0IG1hdElucHV0IFsobmdNb2RlbCldPVwiQ2F0ZWdvcnlOYW1lXCI+XHJcbiAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cclxuICAgICAgPC9kaXY+XHJcblxyXG4gICAgICA8ZGl2IGNsYXNzPVwiYmFyIHRvb2wtYmFyXCI+XHJcbiAgICAgICAgPGJ1dHRvbiBtYXQtcmFpc2VkLWJ1dHRvbiAoY2xpY2spPVwiTmlldXcoKVwiPlRvZXZvZWdlbjwvYnV0dG9uPlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvbWF0LXRhYj5cclxuICAgIDxtYXQtdGFiIGxhYmVsPVwiQmVzdGFhbmRcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cImJhclwiPlxyXG4gICAgICAgIDwhLS08bWF0LWZvcm0tZmllbGQgYXBwZWFyYW5jZT1cImZpbGxcIiBjbGFzcz1cImZ1bGwtd2lkdGhcIj5cclxuICAgICAgICAgIDxtYXQtbGFiZWw+e3sgRE9UeXBlIH19PC9tYXQtbGFiZWw+XHJcbiAgICAgICAgICA8aW5wdXQgbWF0SW5wdXQgWyhuZ01vZGVsKV09XCJET05hYW1cIiByZWFkb25seT5cclxuICAgICAgICA8L21hdC1mb3JtLWZpZWxkPi0tPlxyXG5cclxuICAgICAgICA8bWF0LWZvcm0tZmllbGQgYXBwZWFyYW5jZT1cImZpbGxcIiBjbGFzcz1cImZ1bGwtd2lkdGhcIj5cclxuICAgICAgICAgIDxtYXQtbGFiZWw+Q2F0ZWdvcnk8L21hdC1sYWJlbD5cclxuICAgICAgICAgIDxtYXQtc2VsZWN0IFsobmdNb2RlbCldPVwiQ2F0ZWdvcnlTZWxlY3RlZFwiPlxyXG4gICAgICAgICAgICA8bWF0LW9wdGlvbiAqbmdGb3I9XCJsZXQgY2F0ZWdvcnkgb2YgQ2F0ZWdvcmllc1ZpZXdNb2RlbC5jYXRlZ29yaWVzXCIgW3ZhbHVlXT1cImNhdGVnb3J5LmlkXCI+XHJcbiAgICAgICAgICAgICAge3tjYXRlZ29yeS5uYW1lfX1cclxuICAgICAgICAgICAgPC9tYXQtb3B0aW9uPlxyXG4gICAgICAgICAgPC9tYXQtc2VsZWN0PlxyXG4gICAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XHJcbiAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgPGRpdiBjbGFzcz1cImJhciB0b29sLWJhclwiPlxyXG4gICAgICAgIDxidXR0b24gbWF0LXJhaXNlZC1idXR0b24gKGNsaWNrKT1cIkJlc3RhYW5kKClcIj5Ub2V2b2VnZW48L2J1dHRvbj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L21hdC10YWI+XHJcbiAgPC9tYXQtdGFiLWdyb3VwPlxyXG48L2Rpdj5cclxuIl19
@@ -0,0 +1,43 @@
1
+ import { Component } from '@angular/core';
2
+ import { DeeplinkRequest } from '../../../swagger/SwaggerClient';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "../../../swagger/SwaggerClient";
5
+ import * as i2 from "@angular/common";
6
+ import * as i3 from "@angular/material/form-field";
7
+ import * as i4 from "@angular/material/input";
8
+ import * as i5 from "@angular/forms";
9
+ import * as i6 from "@angular/material/card";
10
+ import * as i7 from "../beheer-nav/beheer-nav.component";
11
+ import * as i8 from "../../../components/fab-loader/fab-loader.component";
12
+ export class BeheerDeeplinkComponent {
13
+ constructor(ProductsApiClient, ChangeDetectorRef) {
14
+ this.ProductsApiClient = ProductsApiClient;
15
+ this.ChangeDetectorRef = ChangeDetectorRef;
16
+ this.Loading = true;
17
+ this.URL = "";
18
+ this.URL = window.location.origin;
19
+ }
20
+ ngOnInit() {
21
+ this.LoadModel();
22
+ }
23
+ GetLink(language, product) {
24
+ return this.URL + "/" + language + "/product/" + product.productURLName;
25
+ }
26
+ LoadModel() {
27
+ this.Loading = true;
28
+ this.ChangeDetectorRef.detectChanges();
29
+ var request = new DeeplinkRequest();
30
+ this.ProductsApiClient.getDeeplinkViewModel(request).subscribe((model) => {
31
+ this.DeeplinkViewModel = model;
32
+ this.Loading = false;
33
+ this.ChangeDetectorRef.detectChanges();
34
+ });
35
+ }
36
+ }
37
+ BeheerDeeplinkComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: BeheerDeeplinkComponent, deps: [{ token: i1.ProductsApiClient }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
38
+ BeheerDeeplinkComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.0", type: BeheerDeeplinkComponent, selector: "app-beheer-deeplink", ngImport: i0, template: "<app-beheer-nav></app-beheer-nav>\r\n\r\n<div *ngIf=\"Loading\">\r\n <app-fab-loader></app-fab-loader>\r\n</div>\r\n\r\n<div *ngIf=\"!Loading\" class=\"main-window\">\r\n <mat-card>\r\n <mat-card-content>\r\n <mat-form-field class=\"full-width\">\r\n <mat-label>URL</mat-label>\r\n <input matInput [(ngModel)]=\"URL\">\r\n </mat-form-field>\r\n\r\n <table class=\"full-width\">\r\n <tr class=\"header\">\r\n <td>Naam</td>\r\n <td>URL Naam</td>\r\n <td>URL</td>\r\n </tr>\r\n <tr *ngFor=\"let product of DeeplinkViewModel.products\">\r\n <td>{{ product.productName }}</td>\r\n <td>{{ product.productURLName }}</td>\r\n <td>\r\n <div *ngFor=\"let language of DeeplinkViewModel.languages\">\r\n <a href=\"{{ GetLink(language, product) }}\" target=\"_blank\">{{ GetLink(language, product) }}</a>\r\n </div>\r\n </td>\r\n </tr>\r\n </table>\r\n </mat-card-content>\r\n </mat-card>\r\n</div>\r\n", styles: [".main-window{padding:5px}.full-width{width:100%}.header{font-weight:700}.header td{border-bottom:1px solid #000}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3.MatLabel, selector: "mat-label" }, { kind: "directive", type: i4.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "directive", type: i5.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i6.MatCard, selector: "mat-card", exportAs: ["matCard"] }, { kind: "directive", type: i6.MatCardContent, selector: "mat-card-content, [mat-card-content], [matCardContent]" }, { kind: "component", type: i7.BeheerNavComponent, selector: "app-beheer-nav" }, { kind: "component", type: i8.FabLoaderComponent, selector: "app-fab-loader" }] });
39
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: BeheerDeeplinkComponent, decorators: [{
40
+ type: Component,
41
+ args: [{ selector: 'app-beheer-deeplink', template: "<app-beheer-nav></app-beheer-nav>\r\n\r\n<div *ngIf=\"Loading\">\r\n <app-fab-loader></app-fab-loader>\r\n</div>\r\n\r\n<div *ngIf=\"!Loading\" class=\"main-window\">\r\n <mat-card>\r\n <mat-card-content>\r\n <mat-form-field class=\"full-width\">\r\n <mat-label>URL</mat-label>\r\n <input matInput [(ngModel)]=\"URL\">\r\n </mat-form-field>\r\n\r\n <table class=\"full-width\">\r\n <tr class=\"header\">\r\n <td>Naam</td>\r\n <td>URL Naam</td>\r\n <td>URL</td>\r\n </tr>\r\n <tr *ngFor=\"let product of DeeplinkViewModel.products\">\r\n <td>{{ product.productName }}</td>\r\n <td>{{ product.productURLName }}</td>\r\n <td>\r\n <div *ngFor=\"let language of DeeplinkViewModel.languages\">\r\n <a href=\"{{ GetLink(language, product) }}\" target=\"_blank\">{{ GetLink(language, product) }}</a>\r\n </div>\r\n </td>\r\n </tr>\r\n </table>\r\n </mat-card-content>\r\n </mat-card>\r\n</div>\r\n", styles: [".main-window{padding:5px}.full-width{width:100%}.header{font-weight:700}.header td{border-bottom:1px solid #000}\n"] }]
42
+ }], ctorParameters: function () { return [{ type: i1.ProductsApiClient }, { type: i0.ChangeDetectorRef }]; } });
43
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmVoZWVyLWRlZXBsaW5rLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvbW9kdWxlcy9mYWJyaWthbnRlbmNvcmUvYmVoZWVyL2NvbXBvbmVudHMvYmVoZWVyLWRlZXBsaW5rL2JlaGVlci1kZWVwbGluay5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL21vZHVsZXMvZmFicmlrYW50ZW5jb3JlL2JlaGVlci9jb21wb25lbnRzL2JlaGVlci1kZWVwbGluay9iZWhlZXItZGVlcGxpbmsuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFxQixTQUFTLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDckUsT0FBTyxFQUFxQixlQUFlLEVBQStDLE1BQU0sZ0NBQWdDLENBQUM7Ozs7Ozs7Ozs7QUFPakksTUFBTSxPQUFPLHVCQUF1QjtJQU1sQyxZQUNVLGlCQUFvQyxFQUNwQyxpQkFBb0M7UUFEcEMsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtRQUNwQyxzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBTnZDLFlBQU8sR0FBWSxJQUFJLENBQUM7UUFFeEIsUUFBRyxHQUFXLEVBQUUsQ0FBQztRQU10QixJQUFJLENBQUMsR0FBRyxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDO0lBQ3BDLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQ25CLENBQUM7SUFFTSxPQUFPLENBQUMsUUFBZ0IsRUFBRSxPQUFpQztRQUNoRSxPQUFPLElBQUksQ0FBQyxHQUFHLEdBQUcsR0FBRyxHQUFHLFFBQVEsR0FBRyxXQUFXLEdBQUcsT0FBTyxDQUFDLGNBQWMsQ0FBQztJQUMxRSxDQUFDO0lBRU8sU0FBUztRQUNmLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDO1FBQ3BCLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUV2QyxJQUFJLE9BQU8sR0FBRyxJQUFJLGVBQWUsRUFBRSxDQUFDO1FBRXBDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxvQkFBb0IsQ0FBQyxPQUFPLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxLQUF3QixFQUFFLEVBQUU7WUFDMUYsSUFBSSxDQUFDLGlCQUFpQixHQUFHLEtBQUssQ0FBQztZQUMvQixJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztZQUNyQixJQUFJLENBQUMsaUJBQWlCLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDekMsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOztvSEFoQ1UsdUJBQXVCO3dHQUF2Qix1QkFBdUIsMkRDUnBDLG9pQ0FpQ0E7MkZEekJhLHVCQUF1QjtrQkFMbkMsU0FBUzsrQkFDRSxxQkFBcUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERlZXBsaW5rVmlld01vZGVsLCBEZWVwbGlua1JlcXVlc3QsIERlZXBsaW5rUHJvZHVjdFZpZXdNb2RlbCwgUHJvZHVjdHNBcGlDbGllbnQgfSBmcm9tICcuLi8uLi8uLi9zd2FnZ2VyL1N3YWdnZXJDbGllbnQnO1xyXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FwcC1iZWhlZXItZGVlcGxpbmsnLFxuICB0ZW1wbGF0ZVVybDogJy4vYmVoZWVyLWRlZXBsaW5rLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vYmVoZWVyLWRlZXBsaW5rLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgQmVoZWVyRGVlcGxpbmtDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuXG4gIHB1YmxpYyBMb2FkaW5nOiBib29sZWFuID0gdHJ1ZTtcbiAgcHVibGljIERlZXBsaW5rVmlld01vZGVsOiBEZWVwbGlua1ZpZXdNb2RlbDtcbiAgcHVibGljIFVSTDogc3RyaW5nID0gXCJcIjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIFByb2R1Y3RzQXBpQ2xpZW50OiBQcm9kdWN0c0FwaUNsaWVudCxcbiAgICBwcml2YXRlIENoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZlxuICApIHtcbiAgICB0aGlzLlVSTCA9IHdpbmRvdy5sb2NhdGlvbi5vcmlnaW47XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuTG9hZE1vZGVsKCk7XHJcbiAgfVxuXG4gIHB1YmxpYyBHZXRMaW5rKGxhbmd1YWdlOiBzdHJpbmcsIHByb2R1Y3Q6IERlZXBsaW5rUHJvZHVjdFZpZXdNb2RlbCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuVVJMICsgXCIvXCIgKyBsYW5ndWFnZSArIFwiL3Byb2R1Y3QvXCIgKyBwcm9kdWN0LnByb2R1Y3RVUkxOYW1lO1xyXG4gIH1cblxuICBwcml2YXRlIExvYWRNb2RlbCgpOiB2b2lkIHtcbiAgICB0aGlzLkxvYWRpbmcgPSB0cnVlO1xyXG4gICAgdGhpcy5DaGFuZ2VEZXRlY3RvclJlZi5kZXRlY3RDaGFuZ2VzKCk7XHJcblxyXG4gICAgdmFyIHJlcXVlc3QgPSBuZXcgRGVlcGxpbmtSZXF1ZXN0KCk7XHJcblxyXG4gICAgdGhpcy5Qcm9kdWN0c0FwaUNsaWVudC5nZXREZWVwbGlua1ZpZXdNb2RlbChyZXF1ZXN0KS5zdWJzY3JpYmUoKG1vZGVsOiBEZWVwbGlua1ZpZXdNb2RlbCkgPT4ge1xyXG4gICAgICB0aGlzLkRlZXBsaW5rVmlld01vZGVsID0gbW9kZWw7XHJcbiAgICAgIHRoaXMuTG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICB0aGlzLkNoYW5nZURldGVjdG9yUmVmLmRldGVjdENoYW5nZXMoKTtcclxuICAgIH0pO1xyXG4gIH1cbn1cbiIsIjxhcHAtYmVoZWVyLW5hdj48L2FwcC1iZWhlZXItbmF2PlxyXG5cclxuPGRpdiAqbmdJZj1cIkxvYWRpbmdcIj5cclxuICA8YXBwLWZhYi1sb2FkZXI+PC9hcHAtZmFiLWxvYWRlcj5cclxuPC9kaXY+XHJcblxyXG48ZGl2ICpuZ0lmPVwiIUxvYWRpbmdcIiBjbGFzcz1cIm1haW4td2luZG93XCI+XHJcbiAgPG1hdC1jYXJkPlxyXG4gICAgPG1hdC1jYXJkLWNvbnRlbnQ+XHJcbiAgICAgIDxtYXQtZm9ybS1maWVsZCBjbGFzcz1cImZ1bGwtd2lkdGhcIj5cclxuICAgICAgICA8bWF0LWxhYmVsPlVSTDwvbWF0LWxhYmVsPlxyXG4gICAgICAgIDxpbnB1dCBtYXRJbnB1dCBbKG5nTW9kZWwpXT1cIlVSTFwiPlxyXG4gICAgICA8L21hdC1mb3JtLWZpZWxkPlxyXG5cclxuICAgICAgPHRhYmxlIGNsYXNzPVwiZnVsbC13aWR0aFwiPlxyXG4gICAgICAgIDx0ciBjbGFzcz1cImhlYWRlclwiPlxyXG4gICAgICAgICAgPHRkPk5hYW08L3RkPlxyXG4gICAgICAgICAgPHRkPlVSTCBOYWFtPC90ZD5cclxuICAgICAgICAgIDx0ZD5VUkw8L3RkPlxyXG4gICAgICAgIDwvdHI+XHJcbiAgICAgICAgPHRyICpuZ0Zvcj1cImxldCBwcm9kdWN0IG9mIERlZXBsaW5rVmlld01vZGVsLnByb2R1Y3RzXCI+XHJcbiAgICAgICAgICA8dGQ+e3sgcHJvZHVjdC5wcm9kdWN0TmFtZSB9fTwvdGQ+XHJcbiAgICAgICAgICA8dGQ+e3sgcHJvZHVjdC5wcm9kdWN0VVJMTmFtZSB9fTwvdGQ+XHJcbiAgICAgICAgICA8dGQ+XHJcbiAgICAgICAgICAgIDxkaXYgKm5nRm9yPVwibGV0IGxhbmd1YWdlIG9mIERlZXBsaW5rVmlld01vZGVsLmxhbmd1YWdlc1wiPlxyXG4gICAgICAgICAgICAgIDxhIGhyZWY9XCJ7eyBHZXRMaW5rKGxhbmd1YWdlLCBwcm9kdWN0KSB9fVwiIHRhcmdldD1cIl9ibGFua1wiPnt7IEdldExpbmsobGFuZ3VhZ2UsIHByb2R1Y3QpIH19PC9hPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDwvdGQ+XHJcbiAgICAgICAgPC90cj5cclxuICAgICAgPC90YWJsZT5cclxuICAgIDwvbWF0LWNhcmQtY29udGVudD5cclxuICA8L21hdC1jYXJkPlxyXG48L2Rpdj5cclxuIl19
@@ -1,7 +1,7 @@
1
1
  import { Component } from '@angular/core';
2
- import { KoppelEBOOptieRequest, ConnectEBODOCategoryRequest, EBOConnectRequestModel } from '../../../../swagger/SwaggerClient';
2
+ import { ConnectEBODOCategoryRequest, EBOConnectRequestModel, ConnectBCBEBODORequest } from '../../../../swagger/SwaggerClient';
3
3
  import { BeheerConnectCategoryDialogComponent } from '../../beheer-connect-category-dialog/beheer-connect-category-dialog.component';
4
- import { BeheerProductsKoppelFilteroptionDailogComponent } from '../../beheer-products/beheer-products-koppel-filteroption-dailog/beheer-products-koppel-filteroption-dailog.component';
4
+ import { BeheerSelectFilterDialogComponent } from '../../beheer-select-filter-dialog/beheer-select-filter-dialog.component';
5
5
  import * as i0 from "@angular/core";
6
6
  import * as i1 from "../../../../swagger/SwaggerClient";
7
7
  import * as i2 from "../../../../services/importsets.service";
@@ -31,50 +31,61 @@ export class BeheerEboKoppelComponent {
31
31
  return this.ImportSetsService.LoadingImportSets || this.LoadingModel;
32
32
  }
33
33
  Connect(id) {
34
- var dialogRef = this.dialog.open(BeheerProductsKoppelFilteroptionDailogComponent);
34
+ var dialogRef = this.dialog.open(BeheerSelectFilterDialogComponent, {
35
+ data: {}
36
+ });
35
37
  dialogRef.afterClosed().subscribe((result) => {
36
- if (result != null) {
37
- if (result.filteroption != null && result.filteroption > 0) {
38
- this.LoadingModel = true;
39
- var request = new KoppelEBOOptieRequest();
40
- request.bcbebodoId = id;
41
- request.filterOptionId = result.filteroption;
42
- request.bcbImportSetId = -1;
43
- this.EBOKoppelApiClient.koppelEBOOptie(request).subscribe((model) => {
44
- this.LoadModel();
45
- }, (error) => {
46
- alert(error);
47
- });
48
- }
49
- else if (result.filter != null) {
50
- //var request2 = new KoppelManyNameRequest();
51
- //request2.bcbProductEigenschapOptieId = id;
52
- //request2.filterId = result.filter;
53
- //this.ProductsApiClient.koppelManyName(request2).subscribe((model: KoppelManyNameResponse) => {
54
- // this.ProductsService.Reload();
55
- //}, (error: Response) => {
56
- // alert(error);
57
- //});
58
- alert("todo");
38
+ if (result?.filter != null) {
39
+ if (result.filter > 0) {
40
+ if (confirm("Weet je het zeker?")) {
41
+ this.LoadingModel = true;
42
+ this.ChangeDetectorRef.detectChanges();
43
+ var request = new ConnectBCBEBODORequest();
44
+ request.filterId = result.filter;
45
+ request.bcbebodoId = id;
46
+ request.bcbImportSetId = this.ImportSetsService.BCBImportSetSelected;
47
+ request.all = false;
48
+ this.EBOKoppelApiClient.connectBCBEBODOFilter(request).subscribe(() => {
49
+ this.LoadModel();
50
+ }, (error) => {
51
+ alert(error);
52
+ });
53
+ }
59
54
  }
60
55
  }
61
- //if (result != null && result > 0) {
62
- //}
63
56
  });
64
57
  }
65
58
  ConnectMany(id) {
66
- //var dialogRef = this.dialog.open(BeheerProductsConnectManynameDialogComponent, {
67
- // data: {
68
- // bcbebodoid: id
69
- // }
70
- //});
59
+ var dialogRef = this.dialog.open(BeheerSelectFilterDialogComponent, {
60
+ data: {}
61
+ });
62
+ dialogRef.afterClosed().subscribe((result) => {
63
+ if (result?.filter != null) {
64
+ if (result.filter > 0) {
65
+ if (confirm("Weet je het zeker?")) {
66
+ this.LoadingModel = true;
67
+ this.ChangeDetectorRef.detectChanges();
68
+ var request = new ConnectBCBEBODORequest();
69
+ request.filterId = result.filter;
70
+ request.bcbebodoId = id;
71
+ request.bcbImportSetId = this.ImportSetsService.BCBImportSetSelected;
72
+ request.all = true;
73
+ this.EBOKoppelApiClient.connectBCBEBODOFilter(request).subscribe(() => {
74
+ this.LoadModel();
75
+ }, (error) => {
76
+ alert(error);
77
+ });
78
+ }
79
+ }
80
+ }
81
+ });
71
82
  }
72
- ConnectCategory(id, dotype, donaam) {
83
+ ConnectCategory(id) {
73
84
  var dialogRef = this.dialog.open(BeheerConnectCategoryDialogComponent, {
74
- data: {
75
- dotype: dotype,
76
- donaam: donaam
77
- }
85
+ //data: {
86
+ // dotype: dotype,
87
+ // donaam: donaam
88
+ //}
78
89
  });
79
90
  dialogRef.afterClosed().subscribe((result) => {
80
91
  if (result != null && result > 0) {
@@ -94,22 +105,25 @@ export class BeheerEboKoppelComponent {
94
105
  LoadModel() {
95
106
  if (this.ImportSetsService.BCBImportSetSelected > 0) {
96
107
  this.LoadingModel = true;
108
+ this.ChangeDetectorRef.detectChanges();
97
109
  var model = new EBOConnectRequestModel();
98
110
  model.importSetId = this.ImportSetsService.BCBImportSetSelected;
99
111
  this.EBOKoppelApiClient.getEBOKoppelViewModel(model).subscribe((model) => {
100
112
  this.EBOKoppelViewModel = model;
101
113
  this.LoadingModel = false;
114
+ this.ChangeDetectorRef.detectChanges();
102
115
  });
103
116
  }
104
117
  else {
105
118
  this.LoadingModel = false;
119
+ this.ChangeDetectorRef.detectChanges();
106
120
  }
107
121
  }
108
122
  }
109
123
  BeheerEboKoppelComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: BeheerEboKoppelComponent, deps: [{ token: i1.EBOKoppelApiClient }, { token: i2.ImportSetsService }, { token: i3.MatDialog }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
110
- BeheerEboKoppelComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.0", type: BeheerEboKoppelComponent, selector: "app-beheer-ebo-koppel", ngImport: i0, template: "<app-beheer-nav></app-beheer-nav>\r\n\r\n<div *ngIf=\"Loading()\">\r\n <app-fab-loader></app-fab-loader>\r\n</div>\r\n<div *ngIf=\"!Loading()\">\r\n <mat-card>\r\n <mat-card-content>\r\n <mat-form-field appearance=\"fill\" class=\"full-width\" *ngIf=\"!ImportSetsService.LoadingImportSets\">\r\n <mat-label>Import set</mat-label>\r\n <mat-select [(ngModel)]=\"ImportSetsService.BCBImportSetSelected\" (change)=\"LoadModel()\">\r\n <mat-option *ngFor=\"let importset of ImportSetsService.BCBImportSetsViewModel.bcbImportSetViewModels\" [value]=\"importset.id\">\r\n {{importset.name}}\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n\r\n <button mat-raised-button (click)=\"LoadModel()\">\r\n Refresh\r\n </button>\r\n </mat-card-content>\r\n </mat-card>\r\n <mat-accordion *ngIf=\"EBOKoppelViewModel != null\">\r\n <mat-expansion-panel *ngFor=\"let type of EBOKoppelViewModel.eboKoppelTypeViewModels\">\r\n <mat-expansion-panel-header>\r\n <mat-panel-title>\r\n {{ type.type }}\r\n </mat-panel-title>\r\n <mat-panel-description>\r\n {{ type.namen.length }} EBO(s)\r\n </mat-panel-description>\r\n </mat-expansion-panel-header>\r\n <div>\r\n <mat-card *ngFor=\"let do of type.namen\" class=\"card\">\r\n <mat-card-content>\r\n <div class=\"row\">\r\n <div class=\"text-div\">\r\n {{ do.doNaam }}\r\n </div>\r\n <div *ngIf=\"!do.connected\">\r\n <!--<button mat-raised-button (click)=\"Connect(do.id)\">\r\n FilterOption\r\n </button>-->\r\n <!--<button mat-raised-button (click)=\"ConnectMany(do.id)\">\r\n FilterOptionMany\r\n </button>-->\r\n <!--<button mat-raised-button (click)=\"ConnectCategory(do.id, do.doType, do.doNaam)\">\r\n Category\r\n </button>-->\r\n </div>\r\n </div>\r\n </mat-card-content>\r\n </mat-card>\r\n </div>\r\n </mat-expansion-panel>\r\n\r\n </mat-accordion>\r\n</div>\r\n", styles: [".card{margin:3px}.row{display:flex;align-items:center;cursor:pointer}.icon-div{width:24px;height:24px}.text-div{flex:auto}\n"], dependencies: [{ kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i5.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i5.MatLabel, selector: "mat-label" }, { kind: "directive", type: i6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i6.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i7.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "directive", type: i8.MatAccordion, selector: "mat-accordion", inputs: ["multi", "hideToggle", "displayMode", "togglePosition"], exportAs: ["matAccordion"] }, { kind: "component", type: i8.MatExpansionPanel, selector: "mat-expansion-panel", inputs: ["disabled", "expanded", "hideToggle", "togglePosition"], outputs: ["opened", "closed", "expandedChange", "afterExpand", "afterCollapse"], exportAs: ["matExpansionPanel"] }, { kind: "component", type: i8.MatExpansionPanelHeader, selector: "mat-expansion-panel-header", inputs: ["tabIndex", "expandedHeight", "collapsedHeight"] }, { kind: "directive", type: i8.MatExpansionPanelTitle, selector: "mat-panel-title" }, { kind: "directive", type: i8.MatExpansionPanelDescription, selector: "mat-panel-description" }, { kind: "component", type: i9.MatCard, selector: "mat-card", exportAs: ["matCard"] }, { kind: "directive", type: i9.MatCardContent, selector: "mat-card-content, [mat-card-content], [matCardContent]" }, { kind: "component", type: i10.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex"], exportAs: ["matSelect"] }, { kind: "component", type: i11.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "component", type: i12.BeheerNavComponent, selector: "app-beheer-nav" }, { kind: "component", type: i13.FabLoaderComponent, selector: "app-fab-loader" }] });
124
+ BeheerEboKoppelComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.0", type: BeheerEboKoppelComponent, selector: "app-beheer-ebo-koppel", ngImport: i0, template: "<app-beheer-nav></app-beheer-nav>\r\n\r\n<div *ngIf=\"Loading()\">\r\n <app-fab-loader></app-fab-loader>\r\n</div>\r\n<div *ngIf=\"!Loading()\" class=\"main-content\">\r\n <mat-card>\r\n <mat-card-content>\r\n <mat-form-field appearance=\"fill\" class=\"full-width\" *ngIf=\"!ImportSetsService.LoadingImportSets\">\r\n <mat-label>Import set</mat-label>\r\n <mat-select [(ngModel)]=\"ImportSetsService.BCBImportSetSelected\" (change)=\"LoadModel()\">\r\n <mat-option *ngFor=\"let importset of ImportSetsService.BCBImportSetsViewModel.bcbImportSetViewModels\" [value]=\"importset.id\">\r\n {{importset.name}}\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n\r\n <button mat-raised-button (click)=\"LoadModel()\">\r\n Refresh\r\n </button>\r\n </mat-card-content>\r\n </mat-card>\r\n <br />\r\n <mat-accordion *ngIf=\"EBOKoppelViewModel != null\">\r\n <mat-expansion-panel *ngFor=\"let type of EBOKoppelViewModel.eboKoppelTypeViewModels\">\r\n <mat-expansion-panel-header>\r\n <mat-panel-title>\r\n {{ type.type }}\r\n </mat-panel-title>\r\n <mat-panel-description>\r\n {{ type.namen.length }}\r\n </mat-panel-description>\r\n </mat-expansion-panel-header>\r\n <div>\r\n <mat-card *ngFor=\"let naam of type.namen\" class=\"card\">\r\n <mat-card-content>\r\n <div class=\"row\">\r\n <div class=\"text-div\">\r\n {{ naam.doNaam }} ({{ naam.ebOs.length }})\r\n </div>\r\n <div class=\"button-row\">\r\n <button mat-raised-button (click)=\"Connect(naam.ebOs[0].id)\">\r\n FilterOption\r\n </button>\r\n <button mat-raised-button (click)=\"ConnectMany(naam.ebOs[0].id)\">\r\n FilterOptionMany\r\n </button>\r\n <button mat-raised-button (click)=\"ConnectCategory(naam.ebOs[0].id)\">\r\n Category\r\n </button>\r\n </div>\r\n </div>\r\n <div *ngFor=\"let ebo of naam.ebOs\" class=\"row eborow\">\r\n <div class=\"text-div\">\r\n {{ ebo.eboNaam }}\r\n </div>\r\n <div>\r\n <div *ngFor=\"let filteroption of ebo.filterOptions\">\r\n {{ filteroption.filterName }}: {{ filteroption.filterOptionName }}\r\n </div>\r\n\r\n <div *ngFor=\"let category of ebo.categories\">\r\n Category: {{ category.categoryName }}\r\n </div>\r\n </div>\r\n </div>\r\n </mat-card-content>\r\n </mat-card>\r\n </div>\r\n </mat-expansion-panel>\r\n\r\n </mat-accordion>\r\n</div>\r\n", styles: [".card{margin:3px}.row{display:flex;align-items:center;cursor:pointer}.eborow{padding:3px;border-bottom:1px solid #000}.main-content{padding:5px}.icon-div{width:24px;height:24px}.text-div{flex:auto}.button-row{display:flex;gap:5px}\n"], dependencies: [{ kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i5.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i5.MatLabel, selector: "mat-label" }, { kind: "directive", type: i6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i6.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i7.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "directive", type: i8.MatAccordion, selector: "mat-accordion", inputs: ["multi", "hideToggle", "displayMode", "togglePosition"], exportAs: ["matAccordion"] }, { kind: "component", type: i8.MatExpansionPanel, selector: "mat-expansion-panel", inputs: ["disabled", "expanded", "hideToggle", "togglePosition"], outputs: ["opened", "closed", "expandedChange", "afterExpand", "afterCollapse"], exportAs: ["matExpansionPanel"] }, { kind: "component", type: i8.MatExpansionPanelHeader, selector: "mat-expansion-panel-header", inputs: ["tabIndex", "expandedHeight", "collapsedHeight"] }, { kind: "directive", type: i8.MatExpansionPanelTitle, selector: "mat-panel-title" }, { kind: "directive", type: i8.MatExpansionPanelDescription, selector: "mat-panel-description" }, { kind: "component", type: i9.MatCard, selector: "mat-card", exportAs: ["matCard"] }, { kind: "directive", type: i9.MatCardContent, selector: "mat-card-content, [mat-card-content], [matCardContent]" }, { kind: "component", type: i10.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex"], exportAs: ["matSelect"] }, { kind: "component", type: i11.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "component", type: i12.BeheerNavComponent, selector: "app-beheer-nav" }, { kind: "component", type: i13.FabLoaderComponent, selector: "app-fab-loader" }] });
111
125
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: BeheerEboKoppelComponent, decorators: [{
112
126
  type: Component,
113
- args: [{ selector: 'app-beheer-ebo-koppel', template: "<app-beheer-nav></app-beheer-nav>\r\n\r\n<div *ngIf=\"Loading()\">\r\n <app-fab-loader></app-fab-loader>\r\n</div>\r\n<div *ngIf=\"!Loading()\">\r\n <mat-card>\r\n <mat-card-content>\r\n <mat-form-field appearance=\"fill\" class=\"full-width\" *ngIf=\"!ImportSetsService.LoadingImportSets\">\r\n <mat-label>Import set</mat-label>\r\n <mat-select [(ngModel)]=\"ImportSetsService.BCBImportSetSelected\" (change)=\"LoadModel()\">\r\n <mat-option *ngFor=\"let importset of ImportSetsService.BCBImportSetsViewModel.bcbImportSetViewModels\" [value]=\"importset.id\">\r\n {{importset.name}}\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n\r\n <button mat-raised-button (click)=\"LoadModel()\">\r\n Refresh\r\n </button>\r\n </mat-card-content>\r\n </mat-card>\r\n <mat-accordion *ngIf=\"EBOKoppelViewModel != null\">\r\n <mat-expansion-panel *ngFor=\"let type of EBOKoppelViewModel.eboKoppelTypeViewModels\">\r\n <mat-expansion-panel-header>\r\n <mat-panel-title>\r\n {{ type.type }}\r\n </mat-panel-title>\r\n <mat-panel-description>\r\n {{ type.namen.length }} EBO(s)\r\n </mat-panel-description>\r\n </mat-expansion-panel-header>\r\n <div>\r\n <mat-card *ngFor=\"let do of type.namen\" class=\"card\">\r\n <mat-card-content>\r\n <div class=\"row\">\r\n <div class=\"text-div\">\r\n {{ do.doNaam }}\r\n </div>\r\n <div *ngIf=\"!do.connected\">\r\n <!--<button mat-raised-button (click)=\"Connect(do.id)\">\r\n FilterOption\r\n </button>-->\r\n <!--<button mat-raised-button (click)=\"ConnectMany(do.id)\">\r\n FilterOptionMany\r\n </button>-->\r\n <!--<button mat-raised-button (click)=\"ConnectCategory(do.id, do.doType, do.doNaam)\">\r\n Category\r\n </button>-->\r\n </div>\r\n </div>\r\n </mat-card-content>\r\n </mat-card>\r\n </div>\r\n </mat-expansion-panel>\r\n\r\n </mat-accordion>\r\n</div>\r\n", styles: [".card{margin:3px}.row{display:flex;align-items:center;cursor:pointer}.icon-div{width:24px;height:24px}.text-div{flex:auto}\n"] }]
127
+ args: [{ selector: 'app-beheer-ebo-koppel', template: "<app-beheer-nav></app-beheer-nav>\r\n\r\n<div *ngIf=\"Loading()\">\r\n <app-fab-loader></app-fab-loader>\r\n</div>\r\n<div *ngIf=\"!Loading()\" class=\"main-content\">\r\n <mat-card>\r\n <mat-card-content>\r\n <mat-form-field appearance=\"fill\" class=\"full-width\" *ngIf=\"!ImportSetsService.LoadingImportSets\">\r\n <mat-label>Import set</mat-label>\r\n <mat-select [(ngModel)]=\"ImportSetsService.BCBImportSetSelected\" (change)=\"LoadModel()\">\r\n <mat-option *ngFor=\"let importset of ImportSetsService.BCBImportSetsViewModel.bcbImportSetViewModels\" [value]=\"importset.id\">\r\n {{importset.name}}\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n\r\n <button mat-raised-button (click)=\"LoadModel()\">\r\n Refresh\r\n </button>\r\n </mat-card-content>\r\n </mat-card>\r\n <br />\r\n <mat-accordion *ngIf=\"EBOKoppelViewModel != null\">\r\n <mat-expansion-panel *ngFor=\"let type of EBOKoppelViewModel.eboKoppelTypeViewModels\">\r\n <mat-expansion-panel-header>\r\n <mat-panel-title>\r\n {{ type.type }}\r\n </mat-panel-title>\r\n <mat-panel-description>\r\n {{ type.namen.length }}\r\n </mat-panel-description>\r\n </mat-expansion-panel-header>\r\n <div>\r\n <mat-card *ngFor=\"let naam of type.namen\" class=\"card\">\r\n <mat-card-content>\r\n <div class=\"row\">\r\n <div class=\"text-div\">\r\n {{ naam.doNaam }} ({{ naam.ebOs.length }})\r\n </div>\r\n <div class=\"button-row\">\r\n <button mat-raised-button (click)=\"Connect(naam.ebOs[0].id)\">\r\n FilterOption\r\n </button>\r\n <button mat-raised-button (click)=\"ConnectMany(naam.ebOs[0].id)\">\r\n FilterOptionMany\r\n </button>\r\n <button mat-raised-button (click)=\"ConnectCategory(naam.ebOs[0].id)\">\r\n Category\r\n </button>\r\n </div>\r\n </div>\r\n <div *ngFor=\"let ebo of naam.ebOs\" class=\"row eborow\">\r\n <div class=\"text-div\">\r\n {{ ebo.eboNaam }}\r\n </div>\r\n <div>\r\n <div *ngFor=\"let filteroption of ebo.filterOptions\">\r\n {{ filteroption.filterName }}: {{ filteroption.filterOptionName }}\r\n </div>\r\n\r\n <div *ngFor=\"let category of ebo.categories\">\r\n Category: {{ category.categoryName }}\r\n </div>\r\n </div>\r\n </div>\r\n </mat-card-content>\r\n </mat-card>\r\n </div>\r\n </mat-expansion-panel>\r\n\r\n </mat-accordion>\r\n</div>\r\n", styles: [".card{margin:3px}.row{display:flex;align-items:center;cursor:pointer}.eborow{padding:3px;border-bottom:1px solid #000}.main-content{padding:5px}.icon-div{width:24px;height:24px}.text-div{flex:auto}.button-row{display:flex;gap:5px}\n"] }]
114
128
  }], ctorParameters: function () { return [{ type: i1.EBOKoppelApiClient }, { type: i2.ImportSetsService }, { type: i3.MatDialog }, { type: i0.ChangeDetectorRef }]; } });
115
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmVoZWVyLWViby1rb3BwZWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9tb2R1bGVzL2ZhYnJpa2FudGVuY29yZS9iZWhlZXIvY29tcG9uZW50cy9iZWhlZXItZWJvLWtvcHBlbC9iZWhlZXItZWJvLWtvcHBlbC9iZWhlZXItZWJvLWtvcHBlbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL21vZHVsZXMvZmFicmlrYW50ZW5jb3JlL2JlaGVlci9jb21wb25lbnRzL2JlaGVlci1lYm8ta29wcGVsL2JlaGVlci1lYm8ta29wcGVsL2JlaGVlci1lYm8ta29wcGVsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBcUIsU0FBUyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBR3JFLE9BQU8sRUFBMEMscUJBQXFCLEVBQTBCLDJCQUEyQixFQUFnQyxzQkFBc0IsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQzdOLE9BQU8sRUFBRSxvQ0FBb0MsRUFBRSxNQUFNLCtFQUErRSxDQUFDO0FBQ3JJLE9BQU8sRUFBRSwrQ0FBK0MsRUFBRSxNQUFNLHVIQUF1SCxDQUFDOzs7Ozs7Ozs7Ozs7Ozs7QUFPeEwsTUFBTSxPQUFPLHdCQUF3QjtJQU1uQyxZQUNVLGtCQUFzQyxFQUN2QyxpQkFBb0MsRUFDcEMsTUFBaUIsRUFDaEIsaUJBQW9DO1FBSHBDLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBb0I7UUFDdkMsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtRQUNwQyxXQUFNLEdBQU4sTUFBTSxDQUFXO1FBQ2hCLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBbUI7UUFOdkMsaUJBQVksR0FBWSxLQUFLLENBQUM7SUFRckMsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsaUJBQWlCLENBQUMsY0FB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QkFDckIsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUNmLENBQUMsQ0FBQyxDQUFDO2FBQ0o7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTSxTQUFTO1FBQ2QsSUFBSSxJQUFJLENBQUMsaUJBQWlCLENBQUMsb0JBQW9CLEdBQUcsQ0FBQyxFQUFFO1lBQ25ELElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDO1lBRXpCLElBQUksS0FBSyxHQUFHLElBQUksc0JBQXNCLEVBQUUsQ0FBQztZQUV6QyxLQUFLLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxvQkFBb0IsQ0FBQztZQUVoRSxJQUFJLENBQUMsa0JBQWtCLENBQUMscUJBQXFCLENBQUMsS0FBSyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsS0FBeUIsRUFBRSxFQUFFO2dCQUMzRixJQUFJLENBQUMsa0JBQWtCLEdBQUcsS0FBSyxDQUFDO2dCQUNoQyxJQUFJLENBQUMsWUFBWSxHQUFHLEtBQUssQ0FBQztZQUM1QixDQUFDLENBQUMsQ0FBQztTQUNKO2FBQ0k7WUFDSCxJQUFJLENBQUMsWUFBWSxHQUFHLEtBQUssQ0FBQztTQUMzQjtJQUNILENBQUM7O3FIQS9HVSx3QkFBd0I7eUdBQXhCLHdCQUF3Qiw2RENackMsNnJFQTBEQTsyRkQ5Q2Esd0JBQXdCO2tCQUxwQyxTQUFTOytCQUNFLHVCQUF1QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBNYXREaWFsb2cgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xyXG5pbXBvcnQgeyBJbXBvcnRTZXRzU2VydmljZSB9IGZyb20gJy4uLy4uLy4uLy4uL3NlcnZpY2VzL2ltcG9ydHNldHMuc2VydmljZSc7XHJcbmltcG9ydCB7IEVCT0tvcHBlbEFwaUNsaWVudCwgRUJPS29wcGVsVmlld01vZGVsLCBLb3BwZWxFQk9PcHRpZVJlcXVlc3QsIEtvcHBlbEVCT09wdGllUmVzcG9uc2UsIENvbm5lY3RFQk9ET0NhdGVnb3J5UmVxdWVzdCwgQ29ubmVjdEVCT0RPQ2F0ZWdvcnlSZXNwb25zZSwgRUJPQ29ubmVjdFJlcXVlc3RNb2RlbCB9IGZyb20gJy4uLy4uLy4uLy4uL3N3YWdnZXIvU3dhZ2dlckNsaWVudCc7XHJcbmltcG9ydCB7IEJlaGVlckNvbm5lY3RDYXRlZ29yeURpYWxvZ0NvbXBvbmVudCB9IGZyb20gJy4uLy4uL2JlaGVlci1jb25uZWN0LWNhdGVnb3J5LWRpYWxvZy9iZWhlZXItY29ubmVjdC1jYXRlZ29yeS1kaWFsb2cuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQmVoZWVyUHJvZHVjdHNLb3BwZWxGaWx0ZXJvcHRpb25EYWlsb2dDb21wb25lbnQgfSBmcm9tICcuLi8uLi9iZWhlZXItcHJvZHVjdHMvYmVoZWVyLXByb2R1Y3RzLWtvcHBlbC1maWx0ZXJvcHRpb24tZGFpbG9nL2JlaGVlci1wcm9kdWN0cy1rb3BwZWwtZmlsdGVyb3B0aW9uLWRhaWxvZy5jb21wb25lbnQnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhcHAtYmVoZWVyLWViby1rb3BwZWwnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9iZWhlZXItZWJvLWtvcHBlbC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vYmVoZWVyLWViby1rb3BwZWwuY29tcG9uZW50LnNjc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgQmVoZWVyRWJvS29wcGVsQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuXHJcbiAgcHVibGljIEVCT0tvcHBlbFZpZXdNb2RlbDogRUJPS29wcGVsVmlld01vZGVsO1xyXG5cclxuICBwdWJsaWMgTG9hZGluZ01vZGVsOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBFQk9Lb3BwZWxBcGlDbGllbnQ6IEVCT0tvcHBlbEFwaUNsaWVudCxcclxuICAgIHB1YmxpYyBJbXBvcnRTZXRzU2VydmljZTogSW1wb3J0U2V0c1NlcnZpY2UsXHJcbiAgICBwdWJsaWMgZGlhbG9nOiBNYXREaWFsb2csXHJcbiAgICBwcml2YXRlIENoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZlxyXG4gICkge1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLkltcG9ydFNldHNTZXJ2aWNlLkxvYWRJbXBvcnRTZXRzKHRoaXMuQ2hhbmdlRGV0ZWN0b3JSZWYpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIExvYWRpbmcoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5JbXBvcnRTZXRzU2VydmljZS5Mb2FkaW5nSW1wb3J0U2V0cyB8fCB0aGlzLkxvYWRpbmdNb2RlbDtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBDb25uZWN0KGlkOiBudW1iZXIpOiB2b2lkIHtcclxuICAgIHZhciBkaWFsb2dSZWYgPSB0aGlzLmRpYWxvZy5vcGVuKEJlaGVlclByb2R1Y3RzS29wcGVsRmlsdGVyb3B0aW9uRGFpbG9nQ29tcG9uZW50KTtcclxuXHJcbiAgICBkaWFsb2dSZWYuYWZ0ZXJDbG9zZWQoKS5zdWJzY3JpYmUoKHJlc3VsdDogYW55KSA9PiB7XHJcbiAgICAgIGlmIChyZXN1bHQgIT0gbnVsbCkge1xyXG4gICAgICAgIGlmIChyZXN1bHQuZmlsdGVyb3B0aW9uICE9IG51bGwgJiYgcmVzdWx0LmZpbHRlcm9wdGlvbiA+IDApIHtcclxuICAgICAgICAgIHRoaXMuTG9hZGluZ01vZGVsID0gdHJ1ZTtcclxuICAgICAgICAgIHZhciByZXF1ZXN0ID0gbmV3IEtvcHBlbEVCT09wdGllUmVxdWVzdCgpO1xyXG5cclxuICAgICAgICAgIHJlcXVlc3QuYmNiZWJvZG9JZCA9IGlkO1xyXG4gICAgICAgICAgcmVxdWVzdC5maWx0ZXJPcHRpb25JZCA9IHJlc3VsdC5maWx0ZXJvcHRpb247XHJcbiAgICAgICAgICByZXF1ZXN0LmJjYkltcG9ydFNldElkID0gLTE7XHJcblxyXG4gICAgICAgICAgdGhpcy5FQk9Lb3BwZWxBcGlDbGllbnQua29wcGVsRUJPT3B0aWUocmVxdWVzdCkuc3Vic2NyaWJlKChtb2RlbDogS29wcGVsRUJPT3B0aWVSZXNwb25zZSkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLkxvYWRNb2RlbCgpO1xyXG4gICAgICAgICAgfSwgKGVycm9yOiBSZXNwb25zZSkgPT4ge1xyXG4gICAgICAgICAgICBhbGVydChlcnJvcik7XHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSBpZiAocmVzdWx0LmZpbHRlciAhPSBudWxsKSB7XHJcbiAgICAgICAgICAvL3ZhciByZXF1ZXN0MiA9IG5ldyBLb3BwZWxNYW55TmFtZVJlcXVlc3QoKTtcclxuXHJcbiAgICAgICAgICAvL3JlcXVlc3QyLmJjYlByb2R1Y3RFaWdlbnNjaGFwT3B0aWVJZCA9IGlkO1xyXG4gICAgICAgICAgLy9yZXF1ZXN0Mi5maWx0ZXJJZCA9IHJlc3VsdC5maWx0ZXI7XHJcblxyXG4gICAgICAgICAgLy90aGlzLlByb2R1Y3RzQXBpQ2xpZW50LmtvcHBlbE1hbnlOYW1lKHJlcXVlc3QyKS5zdWJzY3JpYmUoKG1vZGVsOiBLb3BwZWxNYW55TmFtZVJlc3BvbnNlKSA9PiB7XHJcbiAgICAgICAgICAvLyAgdGhpcy5Qcm9kdWN0c1NlcnZpY2UuUmVsb2FkKCk7XHJcbiAgICAgICAgICAvL30sIChlcnJvcjogUmVzcG9uc2UpID0+IHtcclxuICAgICAgICAgIC8vICBhbGVydChlcnJvcik7XHJcbiAgICAgICAgICAvL30pO1xyXG4gICAgICAgICAgYWxlcnQoXCJ0b2RvXCIpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAvL2lmIChyZXN1bHQgIT0gbnVsbCAmJiByZXN1bHQgPiAwKSB7XHJcblxyXG4gICAgICAvL31cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIENvbm5lY3RNYW55KGlkOiBudW1iZXIpOiB2b2lkIHtcclxuICAgIC8vdmFyIGRpYWxvZ1JlZiA9IHRoaXMuZGlhbG9nLm9wZW4oQmVoZWVyUHJvZHVjdHNDb25uZWN0TWFueW5hbWVEaWFsb2dDb21wb25lbnQsIHtcclxuICAgIC8vICBkYXRhOiB7XHJcbiAgICAvLyAgICBiY2JlYm9kb2lkOiBpZFxyXG4gICAgLy8gIH1cclxuICAgIC8vfSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgQ29ubmVjdENhdGVnb3J5KGlkOiBudW1iZXIsIGRvdHlwZTogc3RyaW5nLCBkb25hYW06IHN0cmluZyk6IHZvaWQge1xyXG4gICAgdmFyIGRpYWxvZ1JlZiA9IHRoaXMuZGlhbG9nLm9wZW4oQmVoZWVyQ29ubmVjdENhdGVnb3J5RGlhbG9nQ29tcG9uZW50LCB7XHJcbiAgICAgIGRhdGE6IHtcclxuICAgICAgICBkb3R5cGU6IGRvdHlwZSxcclxuICAgICAgICBkb25hYW06IGRvbmFhbVxyXG4gICAgICB9XHJcbiAgICB9KTtcclxuXHJcbiAgICBkaWFsb2dSZWYuYWZ0ZXJDbG9zZWQoKS5zdWJzY3JpYmUoKHJlc3VsdDogYW55KSA9PiB7XHJcbiAgICAgIGlmIChyZXN1bHQgIT0gbnVsbCAmJiByZXN1bHQgPiAwKSB7XHJcbiAgICAgICAgdGhpcy5Mb2FkaW5nTW9kZWwgPSB0cnVlO1xyXG4gICAgICAgIHZhciByZXF1ZXN0ID0gbmV3IENvbm5lY3RFQk9ET0NhdGVnb3J5UmVxdWVzdCgpO1xyXG5cclxuICAgICAgICByZXF1ZXN0LmJjYkltcG9ydFNldElkID0gdGhpcy5JbXBvcnRTZXRzU2VydmljZS5CQ0JJbXBvcnRTZXRTZWxlY3RlZDtcclxuICAgICAgICByZXF1ZXN0LmJjYmVib2RvSWQgPSBpZDtcclxuICAgICAgICByZXF1ZXN0LmNhdGVnb3J5SWQgPSByZXN1bHQ7XHJcblxyXG4gICAgICAgIHRoaXMuRUJPS29wcGVsQXBpQ2xpZW50LmNvbm5lY3RFQk9ET0NhdGVnb3J5KHJlcXVlc3QpLnN1YnNjcmliZSgobW9kZWw6IENvbm5lY3RFQk9ET0NhdGVnb3J5UmVzcG9uc2UpID0+IHtcclxuICAgICAgICAgIHRoaXMuTG9hZE1vZGVsKCk7XHJcbiAgICAgICAgfSwgKGVycm9yOiBSZXNwb25zZSkgPT4ge1xyXG4gICAgICAgICAgYWxlcnQoZXJyb3IpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBMb2FkTW9kZWwoKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5JbXBvcnRTZXRzU2VydmljZS5CQ0JJbXBvcnRTZXRTZWxlY3RlZCA+IDApIHtcclxuICAgICAgdGhpcy5Mb2FkaW5nTW9kZWwgPSB0cnVlO1xyXG5cclxuICAgICAgdmFyIG1vZGVsID0gbmV3IEVCT0Nvbm5lY3RSZXF1ZXN0TW9kZWwoKTtcclxuXHJcbiAgICAgIG1vZGVsLmltcG9ydFNldElkID0gdGhpcy5JbXBvcnRTZXRzU2VydmljZS5CQ0JJbXBvcnRTZXRTZWxlY3RlZDtcclxuXHJcbiAgICAgIHRoaXMuRUJPS29wcGVsQXBpQ2xpZW50LmdldEVCT0tvcHBlbFZpZXdNb2RlbChtb2RlbCkuc3Vic2NyaWJlKChtb2RlbDogRUJPS29wcGVsVmlld01vZGVsKSA9PiB7XHJcbiAgICAgICAgdGhpcy5FQk9Lb3BwZWxWaWV3TW9kZWwgPSBtb2RlbDtcclxuICAgICAgICB0aGlzLkxvYWRpbmdNb2RlbCA9IGZhbHNlO1xyXG4gICAgICB9KTtcclxuICAgIH1cclxuICAgIGVsc2Uge1xyXG4gICAgICB0aGlzLkxvYWRpbmdNb2RlbCA9IGZhbHNlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbn1cclxuIiwiPGFwcC1iZWhlZXItbmF2PjwvYXBwLWJlaGVlci1uYXY+XHJcblxyXG48ZGl2ICpuZ0lmPVwiTG9hZGluZygpXCI+XHJcbiAgPGFwcC1mYWItbG9hZGVyPjwvYXBwLWZhYi1sb2FkZXI+XHJcbjwvZGl2PlxyXG48ZGl2ICpuZ0lmPVwiIUxvYWRpbmcoKVwiPlxyXG4gIDxtYXQtY2FyZD5cclxuICAgIDxtYXQtY2FyZC1jb250ZW50PlxyXG4gICAgICA8bWF0LWZvcm0tZmllbGQgYXBwZWFyYW5jZT1cImZpbGxcIiBjbGFzcz1cImZ1bGwtd2lkdGhcIiAqbmdJZj1cIiFJbXBvcnRTZXRzU2VydmljZS5Mb2FkaW5nSW1wb3J0U2V0c1wiPlxyXG4gICAgICAgIDxtYXQtbGFiZWw+SW1wb3J0IHNldDwvbWF0LWxhYmVsPlxyXG4gICAgICAgIDxtYXQtc2VsZWN0IFsobmdNb2RlbCldPVwiSW1wb3J0U2V0c1NlcnZpY2UuQkNCSW1wb3J0U2V0U2VsZWN0ZWRcIiAoY2hhbmdlKT1cIkxvYWRNb2RlbCgpXCI+XHJcbiAgICAgICAgICA8bWF0LW9wdGlvbiAqbmdGb3I9XCJsZXQgaW1wb3J0c2V0IG9mIEltcG9ydFNldHNTZXJ2aWNlLkJDQkltcG9ydFNldHNWaWV3TW9kZWwuYmNiSW1wb3J0U2V0Vmlld01vZGVsc1wiIFt2YWx1ZV09XCJpbXBvcnRzZXQuaWRcIj5cclxuICAgICAgICAgICAge3tpbXBvcnRzZXQubmFtZX19XHJcbiAgICAgICAgICA8L21hdC1vcHRpb24+XHJcbiAgICAgICAgPC9tYXQtc2VsZWN0PlxyXG4gICAgICA8L21hdC1mb3JtLWZpZWxkPlxyXG5cclxuICAgICAgPGJ1dHRvbiBtYXQtcmFpc2VkLWJ1dHRvbiAoY2xpY2spPVwiTG9hZE1vZGVsKClcIj5cclxuICAgICAgICBSZWZyZXNoXHJcbiAgICAgIDwvYnV0dG9uPlxyXG4gICAgPC9tYXQtY2FyZC1jb250ZW50PlxyXG4gIDwvbWF0LWNhcmQ+XHJcbiAgPG1hdC1hY2NvcmRpb24gKm5nSWY9XCJFQk9Lb3BwZWxWaWV3TW9kZWwgIT0gbnVsbFwiPlxyXG4gICAgPG1hdC1leHBhbnNpb24tcGFuZWwgKm5nRm9yPVwibGV0IHR5cGUgb2YgRUJPS29wcGVsVmlld01vZGVsLmVib0tvcHBlbFR5cGVWaWV3TW9kZWxzXCI+XHJcbiAgICAgIDxtYXQtZXhwYW5zaW9uLXBhbmVsLWhlYWRlcj5cclxuICAgICAgICA8bWF0LXBhbmVsLXRpdGxlPlxyXG4gICAgICAgICAge3sgdHlwZS50eXBlIH19XHJcbiAgICAgICAgPC9tYXQtcGFuZWwtdGl0bGU+XHJcbiAgICAgICAgPG1hdC1wYW5lbC1kZXNjcmlwdGlvbj5cclxuICAgICAgICAgIHt7IHR5cGUubmFtZW4ubGVuZ3RoIH19IEVCTyhzKVxyXG4gICAgICAgIDwvbWF0LXBhbmVsLWRlc2NyaXB0aW9uPlxyXG4gICAgICA8L21hdC1leHBhbnNpb24tcGFuZWwtaGVhZGVyPlxyXG4gICAgICA8ZGl2PlxyXG4gICAgICAgIDxtYXQtY2FyZCAqbmdGb3I9XCJsZXQgZG8gb2YgdHlwZS5uYW1lblwiIGNsYXNzPVwiY2FyZFwiPlxyXG4gICAgICAgICAgPG1hdC1jYXJkLWNvbnRlbnQ+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGV4dC1kaXZcIj5cclxuICAgICAgICAgICAgICAgIHt7IGRvLmRvTmFhbSB9fVxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCIhZG8uY29ubmVjdGVkXCI+XHJcbiAgICAgICAgICAgICAgICA8IS0tPGJ1dHRvbiBtYXQtcmFpc2VkLWJ1dHRvbiAoY2xpY2spPVwiQ29ubmVjdChkby5pZClcIj5cclxuICAgICAgICAgICAgICAgICAgRmlsdGVyT3B0aW9uXHJcbiAgICAgICAgICAgICAgICA8L2J1dHRvbj4tLT5cclxuICAgICAgICAgICAgICAgIDwhLS08YnV0dG9uIG1hdC1yYWlzZWQtYnV0dG9uIChjbGljayk9XCJDb25uZWN0TWFueShkby5pZClcIj5cclxuICAgICAgICAgICAgICAgICAgRmlsdGVyT3B0aW9uTWFueVxyXG4gICAgICAgICAgICAgICAgPC9idXR0b24+LS0+XHJcbiAgICAgICAgICAgICAgICA8IS0tPGJ1dHRvbiBtYXQtcmFpc2VkLWJ1dHRvbiAoY2xpY2spPVwiQ29ubmVjdENhdGVnb3J5KGRvLmlkLCBkby5kb1R5cGUsIGRvLmRvTmFhbSlcIj5cclxuICAgICAgICAgICAgICAgICAgQ2F0ZWdvcnlcclxuICAgICAgICAgICAgICAgIDwvYnV0dG9uPi0tPlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDwvbWF0LWNhcmQtY29udGVudD5cclxuICAgICAgICA8L21hdC1jYXJkPlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvbWF0LWV4cGFuc2lvbi1wYW5lbD5cclxuXHJcbiAgPC9tYXQtYWNjb3JkaW9uPlxyXG48L2Rpdj5cclxuIl19
129
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmVoZWVyLWViby1rb3BwZWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9tb2R1bGVzL2ZhYnJpa2FudGVuY29yZS9iZWhlZXIvY29tcG9uZW50cy9iZWhlZXItZWJvLWtvcHBlbC9iZWhlZXItZWJvLWtvcHBlbC9iZWhlZXItZWJvLWtvcHBlbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL21vZHVsZXMvZmFicmlrYW50ZW5jb3JlL2JlaGVlci9jb21wb25lbnRzL2JlaGVlci1lYm8ta29wcGVsL2JlaGVlci1lYm8ta29wcGVsL2JlaGVlci1lYm8ta29wcGVsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBcUIsU0FBUyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBR3JFLE9BQU8sRUFBMEMsMkJBQTJCLEVBQWdDLHNCQUFzQixFQUFFLHNCQUFzQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDdE0sT0FBTyxFQUFFLG9DQUFvQyxFQUFFLE1BQU0sK0VBQStFLENBQUM7QUFDckksT0FBTyxFQUFFLGlDQUFpQyxFQUFFLE1BQU0seUVBQXlFLENBQUM7Ozs7Ozs7Ozs7Ozs7OztBQU81SCxNQUFNLE9BQU8sd0JBQXdCO0lBTW5DLFlBQ1Usa0JBQXNDLEVBQ3ZDLGlCQUFvQyxFQUNwQyxNQUFpQixFQUNoQixpQkFBb0M7UUFIcEMsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFvQjtRQUN2QyxzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBQ3BDLFdBQU0sR0FBTixNQUFNLENBQVc7UUFDaEIsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtRQU52QyxpQkFBWSxHQUFZLEtBQUssQ0FBQztJQVFyQyxDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxjQUFj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SUFBSSxLQUFLLEdBQUcsSUFBSSxzQkFBc0IsRUFBRSxDQUFDO1lBRXpDLEtBQUssQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLG9CQUFvQixDQUFDO1lBRWhFLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxxQkFBcUIsQ0FBQyxLQUFLLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxLQUF5QixFQUFFLEVBQUU7Z0JBQzNGLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxLQUFLLENBQUM7Z0JBQ2hDLElBQUksQ0FBQyxZQUFZLEdBQUcsS0FBSyxDQUFDO2dCQUMxQixJQUFJLENBQUMsaUJBQWlCLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDekMsQ0FBQyxDQUFDLENBQUM7U0FDSjthQUNJO1lBQ0gsSUFBSSxDQUFDLFlBQVksR0FBRyxLQUFLLENBQUM7WUFDMUIsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGFBQWEsRUFBRSxDQUFDO1NBQ3hDO0lBQ0gsQ0FBQzs7cUhBaklVLHdCQUF3Qjt5R0FBeEIsd0JBQXdCLDZEQ1pyQyxvekZBeUVBOzJGRDdEYSx3QkFBd0I7a0JBTHBDLFNBQVM7K0JBQ0UsdUJBQXVCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE1hdERpYWxvZyB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XHJcbmltcG9ydCB7IEltcG9ydFNldHNTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vc2VydmljZXMvaW1wb3J0c2V0cy5zZXJ2aWNlJztcclxuaW1wb3J0IHsgRUJPS29wcGVsQXBpQ2xpZW50LCBFQk9Lb3BwZWxWaWV3TW9kZWwsIENvbm5lY3RFQk9ET0NhdGVnb3J5UmVxdWVzdCwgQ29ubmVjdEVCT0RPQ2F0ZWdvcnlSZXNwb25zZSwgRUJPQ29ubmVjdFJlcXVlc3RNb2RlbCwgQ29ubmVjdEJDQkVCT0RPUmVxdWVzdCB9IGZyb20gJy4uLy4uLy4uLy4uL3N3YWdnZXIvU3dhZ2dlckNsaWVudCc7XHJcbmltcG9ydCB7IEJlaGVlckNvbm5lY3RDYXRlZ29yeURpYWxvZ0NvbXBvbmVudCB9IGZyb20gJy4uLy4uL2JlaGVlci1jb25uZWN0LWNhdGVnb3J5LWRpYWxvZy9iZWhlZXItY29ubmVjdC1jYXRlZ29yeS1kaWFsb2cuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQmVoZWVyU2VsZWN0RmlsdGVyRGlhbG9nQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vYmVoZWVyLXNlbGVjdC1maWx0ZXItZGlhbG9nL2JlaGVlci1zZWxlY3QtZmlsdGVyLWRpYWxvZy5jb21wb25lbnQnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhcHAtYmVoZWVyLWViby1rb3BwZWwnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9iZWhlZXItZWJvLWtvcHBlbC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vYmVoZWVyLWViby1rb3BwZWwuY29tcG9uZW50LnNjc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgQmVoZWVyRWJvS29wcGVsQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuXHJcbiAgcHVibGljIEVCT0tvcHBlbFZpZXdNb2RlbDogRUJPS29wcGVsVmlld01vZGVsO1xyXG5cclxuICBwdWJsaWMgTG9hZGluZ01vZGVsOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBFQk9Lb3BwZWxBcGlDbGllbnQ6IEVCT0tvcHBlbEFwaUNsaWVudCxcclxuICAgIHB1YmxpYyBJbXBvcnRTZXRzU2VydmljZTogSW1wb3J0U2V0c1NlcnZpY2UsXHJcbiAgICBwdWJsaWMgZGlhbG9nOiBNYXREaWFsb2csXHJcbiAgICBwcml2YXRlIENoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZlxyXG4gICkge1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLkltcG9ydFNldHNTZXJ2aWNlLkxvYWRJbXBvcnRTZXRzKHRoaXMuQ2hhbmdlRGV0ZWN0b3JSZWYpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIExvYWRpbmcoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5JbXBvcnRTZXRzU2VydmljZS5Mb2FkaW5nSW1wb3J0U2V0cyB8fCB0aGlzLkxvYWRpbmdNb2RlbDtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBDb25uZWN0KGlkOiBudW1iZXIpOiB2b2lkIHtcclxuICAgIHZhciBkaWFsb2dSZWYgPSB0aGlzLmRpYWxvZy5vcGVuKEJlaGVlclNlbGVjdEZpbHRlckRpYWxvZ0NvbXBvbmVudCwge1xyXG4gICAgICBkYXRhOiB7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG5cclxuICAgIGRpYWxvZ1JlZi5hZnRlckNsb3NlZCgpLnN1YnNjcmliZSgocmVzdWx0OiBhbnkpID0+IHtcclxuICAgICAgICBpZiAocmVzdWx0Py5maWx0ZXIgIT0gbnVsbCkge1xyXG4gICAgICAgICAgaWYgKHJlc3VsdC5maWx0ZXIgPiAwKSB7XHJcbiAgICAgICAgICAgIGlmIChjb25maXJtKFwiV2VldCBqZSBoZXQgemVrZXI/XCIpKSB7XHJcbiAgICAgICAgICAgICAgdGhpcy5Mb2FkaW5nTW9kZWwgPSB0cnVlO1xyXG4gICAgICAgICAgICAgIHRoaXMuQ2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpO1xyXG5cclxuICAgICAgICAgICAgICB2YXIgcmVxdWVzdCA9IG5ldyBDb25uZWN0QkNCRUJPRE9SZXF1ZXN0KCk7XHJcblxyXG4gICAgICAgICAgICAgIHJlcXVlc3QuZmlsdGVySWQgPSByZXN1bHQuZmlsdGVyO1xyXG4gICAgICAgICAgICAgIHJlcXVlc3QuYmNiZWJvZG9JZCA9IGlkO1xyXG4gICAgICAgICAgICAgIHJlcXVlc3QuYmNiSW1wb3J0U2V0SWQgPSB0aGlzLkltcG9ydFNldHNTZXJ2aWNlLkJDQkltcG9ydFNldFNlbGVjdGVkO1xyXG4gICAgICAgICAgICAgIHJlcXVlc3QuYWxsID0gZmFsc2U7XHJcblxyXG4gICAgICAgICAgICAgIHRoaXMuRUJPS29wcGVsQXBpQ2xpZW50LmNvbm5lY3RCQ0JFQk9ET0ZpbHRlcihyZXF1ZXN0KS5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5Mb2FkTW9kZWwoKTtcclxuICAgICAgICAgICAgICB9LCAoZXJyb3I6IFJlc3BvbnNlKSA9PiB7XHJcbiAgICAgICAgICAgICAgICBhbGVydChlcnJvcik7XHJcbiAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBDb25uZWN0TWFueShpZDogbnVtYmVyKTogdm9pZCB7XHJcbiAgICB2YXIgZGlhbG9nUmVmID0gdGhpcy5kaWFsb2cub3BlbihCZWhlZXJTZWxlY3RGaWx0ZXJEaWFsb2dDb21wb25lbnQsIHtcclxuICAgICAgZGF0YToge1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuXHJcbiAgICBkaWFsb2dSZWYuYWZ0ZXJDbG9zZWQoKS5zdWJzY3JpYmUoKHJlc3VsdDogYW55KSA9PiB7XHJcbiAgICAgIGlmIChyZXN1bHQ/LmZpbHRlciAhPSBudWxsKSB7XHJcbiAgICAgICAgaWYgKHJlc3VsdC5maWx0ZXIgPiAwKSB7XHJcbiAgICAgICAgICBpZiAoY29uZmlybShcIldlZXQgamUgaGV0IHpla2VyP1wiKSkge1xyXG4gICAgICAgICAgICB0aGlzLkxvYWRpbmdNb2RlbCA9IHRydWU7XHJcbiAgICAgICAgICAgIHRoaXMuQ2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpO1xyXG5cclxuICAgICAgICAgICAgdmFyIHJlcXVlc3QgPSBuZXcgQ29ubmVjdEJDQkVCT0RPUmVxdWVzdCgpO1xyXG5cclxuICAgICAgICAgICAgcmVxdWVzdC5maWx0ZXJJZCA9IHJlc3VsdC5maWx0ZXI7XHJcbiAgICAgICAgICAgIHJlcXVlc3QuYmNiZWJvZG9JZCA9IGlkO1xyXG4gICAgICAgICAgICByZXF1ZXN0LmJjYkltcG9ydFNldElkID0gdGhpcy5JbXBvcnRTZXRzU2VydmljZS5CQ0JJbXBvcnRTZXRTZWxlY3RlZDtcclxuICAgICAgICAgICAgcmVxdWVzdC5hbGwgPSB0cnVlO1xyXG5cclxuICAgICAgICAgICAgdGhpcy5FQk9Lb3BwZWxBcGlDbGllbnQuY29ubmVjdEJDQkVCT0RPRmlsdGVyKHJlcXVlc3QpLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgdGhpcy5Mb2FkTW9kZWwoKTtcclxuICAgICAgICAgICAgfSwgKGVycm9yOiBSZXNwb25zZSkgPT4ge1xyXG4gICAgICAgICAgICAgIGFsZXJ0KGVycm9yKTtcclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBDb25uZWN0Q2F0ZWdvcnkoaWQ6IG51bWJlcik6IHZvaWQge1xyXG4gICAgdmFyIGRpYWxvZ1JlZiA9IHRoaXMuZGlhbG9nLm9wZW4oQmVoZWVyQ29ubmVjdENhdGVnb3J5RGlhbG9nQ29tcG9uZW50LCB7XHJcbiAgICAgIC8vZGF0YToge1xyXG4gICAgICAvLyAgZG90eXBlOiBkb3R5cGUsXHJcbiAgICAgIC8vICBkb25hYW06IGRvbmFhbVxyXG4gICAgICAvL31cclxuICAgIH0pO1xyXG5cclxuICAgIGRpYWxvZ1JlZi5hZnRlckNsb3NlZCgpLnN1YnNjcmliZSgocmVzdWx0OiBhbnkpID0+IHtcclxuICAgICAgaWYgKHJlc3VsdCAhPSBudWxsICYmIHJlc3VsdCA+IDApIHtcclxuICAgICAgICB0aGlzLkxvYWRpbmdNb2RlbCA9IHRydWU7XHJcbiAgICAgICAgdmFyIHJlcXVlc3QgPSBuZXcgQ29ubmVjdEVCT0RPQ2F0ZWdvcnlSZXF1ZXN0KCk7XHJcblxyXG4gICAgICAgIHJlcXVlc3QuYmNiSW1wb3J0U2V0SWQgPSB0aGlzLkltcG9ydFNldHNTZXJ2aWNlLkJDQkltcG9ydFNldFNlbGVjdGVkO1xyXG4gICAgICAgIHJlcXVlc3QuYmNiZWJvZG9JZCA9IGlkO1xyXG4gICAgICAgIHJlcXVlc3QuY2F0ZWdvcnlJZCA9IHJlc3VsdDtcclxuXHJcbiAgICAgICAgdGhpcy5FQk9Lb3BwZWxBcGlDbGllbnQuY29ubmVjdEVCT0RPQ2F0ZWdvcnkocmVxdWVzdCkuc3Vic2NyaWJlKChtb2RlbDogQ29ubmVjdEVCT0RPQ2F0ZWdvcnlSZXNwb25zZSkgPT4ge1xyXG4gICAgICAgICAgdGhpcy5Mb2FkTW9kZWwoKTtcclxuICAgICAgICB9LCAoZXJyb3I6IFJlc3BvbnNlKSA9PiB7XHJcbiAgICAgICAgICBhbGVydChlcnJvcik7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIExvYWRNb2RlbCgpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLkltcG9ydFNldHNTZXJ2aWNlLkJDQkltcG9ydFNldFNlbGVjdGVkID4gMCkge1xyXG4gICAgICB0aGlzLkxvYWRpbmdNb2RlbCA9IHRydWU7XHJcbiAgICAgIHRoaXMuQ2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpO1xyXG5cclxuICAgICAgdmFyIG1vZGVsID0gbmV3IEVCT0Nvbm5lY3RSZXF1ZXN0TW9kZWwoKTtcclxuXHJcbiAgICAgIG1vZGVsLmltcG9ydFNldElkID0gdGhpcy5JbXBvcnRTZXRzU2VydmljZS5CQ0JJbXBvcnRTZXRTZWxlY3RlZDtcclxuXHJcbiAgICAgIHRoaXMuRUJPS29wcGVsQXBpQ2xpZW50LmdldEVCT0tvcHBlbFZpZXdNb2RlbChtb2RlbCkuc3Vic2NyaWJlKChtb2RlbDogRUJPS29wcGVsVmlld01vZGVsKSA9PiB7XHJcbiAgICAgICAgdGhpcy5FQk9Lb3BwZWxWaWV3TW9kZWwgPSBtb2RlbDtcclxuICAgICAgICB0aGlzLkxvYWRpbmdNb2RlbCA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMuQ2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgICB9KTtcclxuICAgIH1cclxuICAgIGVsc2Uge1xyXG4gICAgICB0aGlzLkxvYWRpbmdNb2RlbCA9IGZhbHNlO1xyXG4gICAgICB0aGlzLkNoYW5nZURldGVjdG9yUmVmLmRldGVjdENoYW5nZXMoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG59XHJcbiIsIjxhcHAtYmVoZWVyLW5hdj48L2FwcC1iZWhlZXItbmF2PlxyXG5cclxuPGRpdiAqbmdJZj1cIkxvYWRpbmcoKVwiPlxyXG4gIDxhcHAtZmFiLWxvYWRlcj48L2FwcC1mYWItbG9hZGVyPlxyXG48L2Rpdj5cclxuPGRpdiAqbmdJZj1cIiFMb2FkaW5nKClcIiBjbGFzcz1cIm1haW4tY29udGVudFwiPlxyXG4gIDxtYXQtY2FyZD5cclxuICAgIDxtYXQtY2FyZC1jb250ZW50PlxyXG4gICAgICA8bWF0LWZvcm0tZmllbGQgYXBwZWFyYW5jZT1cImZpbGxcIiBjbGFzcz1cImZ1bGwtd2lkdGhcIiAqbmdJZj1cIiFJbXBvcnRTZXRzU2VydmljZS5Mb2FkaW5nSW1wb3J0U2V0c1wiPlxyXG4gICAgICAgIDxtYXQtbGFiZWw+SW1wb3J0IHNldDwvbWF0LWxhYmVsPlxyXG4gICAgICAgIDxtYXQtc2VsZWN0IFsobmdNb2RlbCldPVwiSW1wb3J0U2V0c1NlcnZpY2UuQkNCSW1wb3J0U2V0U2VsZWN0ZWRcIiAoY2hhbmdlKT1cIkxvYWRNb2RlbCgpXCI+XHJcbiAgICAgICAgICA8bWF0LW9wdGlvbiAqbmdGb3I9XCJsZXQgaW1wb3J0c2V0IG9mIEltcG9ydFNldHNTZXJ2aWNlLkJDQkltcG9ydFNldHNWaWV3TW9kZWwuYmNiSW1wb3J0U2V0Vmlld01vZGVsc1wiIFt2YWx1ZV09XCJpbXBvcnRzZXQuaWRcIj5cclxuICAgICAgICAgICAge3tpbXBvcnRzZXQubmFtZX19XHJcbiAgICAgICAgICA8L21hdC1vcHRpb24+XHJcbiAgICAgICAgPC9tYXQtc2VsZWN0PlxyXG4gICAgICA8L21hdC1mb3JtLWZpZWxkPlxyXG5cclxuICAgICAgPGJ1dHRvbiBtYXQtcmFpc2VkLWJ1dHRvbiAoY2xpY2spPVwiTG9hZE1vZGVsKClcIj5cclxuICAgICAgICBSZWZyZXNoXHJcbiAgICAgIDwvYnV0dG9uPlxyXG4gICAgPC9tYXQtY2FyZC1jb250ZW50PlxyXG4gIDwvbWF0LWNhcmQ+XHJcbiAgPGJyIC8+XHJcbiAgPG1hdC1hY2NvcmRpb24gKm5nSWY9XCJFQk9Lb3BwZWxWaWV3TW9kZWwgIT0gbnVsbFwiPlxyXG4gICAgPG1hdC1leHBhbnNpb24tcGFuZWwgKm5nRm9yPVwibGV0IHR5cGUgb2YgRUJPS29wcGVsVmlld01vZGVsLmVib0tvcHBlbFR5cGVWaWV3TW9kZWxzXCI+XHJcbiAgICAgIDxtYXQtZXhwYW5zaW9uLXBhbmVsLWhlYWRlcj5cclxuICAgICAgICA8bWF0LXBhbmVsLXRpdGxlPlxyXG4gICAgICAgICAge3sgdHlwZS50eXBlIH19XHJcbiAgICAgICAgPC9tYXQtcGFuZWwtdGl0bGU+XHJcbiAgICAgICAgPG1hdC1wYW5lbC1kZXNjcmlwdGlvbj5cclxuICAgICAgICAgIHt7IHR5cGUubmFtZW4ubGVuZ3RoIH19XHJcbiAgICAgICAgPC9tYXQtcGFuZWwtZGVzY3JpcHRpb24+XHJcbiAgICAgIDwvbWF0LWV4cGFuc2lvbi1wYW5lbC1oZWFkZXI+XHJcbiAgICAgIDxkaXY+XHJcbiAgICAgICAgPG1hdC1jYXJkICpuZ0Zvcj1cImxldCBuYWFtIG9mIHR5cGUubmFtZW5cIiBjbGFzcz1cImNhcmRcIj5cclxuICAgICAgICAgIDxtYXQtY2FyZC1jb250ZW50PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRleHQtZGl2XCI+XHJcbiAgICAgICAgICAgICAgICB7eyBuYWFtLmRvTmFhbSB9fSAoe3sgbmFhbS5lYk9zLmxlbmd0aCB9fSlcclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYnV0dG9uLXJvd1wiPlxyXG4gICAgICAgICAgICAgICAgPGJ1dHRvbiBtYXQtcmFpc2VkLWJ1dHRvbiAoY2xpY2spPVwiQ29ubmVjdChuYWFtLmViT3NbMF0uaWQpXCI+XHJcbiAgICAgICAgICAgICAgICAgIEZpbHRlck9wdGlvblxyXG4gICAgICAgICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICA8YnV0dG9uIG1hdC1yYWlzZWQtYnV0dG9uIChjbGljayk9XCJDb25uZWN0TWFueShuYWFtLmViT3NbMF0uaWQpXCI+XHJcbiAgICAgICAgICAgICAgICAgIEZpbHRlck9wdGlvbk1hbnlcclxuICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgPGJ1dHRvbiBtYXQtcmFpc2VkLWJ1dHRvbiAoY2xpY2spPVwiQ29ubmVjdENhdGVnb3J5KG5hYW0uZWJPc1swXS5pZClcIj5cclxuICAgICAgICAgICAgICAgICAgQ2F0ZWdvcnlcclxuICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiAqbmdGb3I9XCJsZXQgZWJvIG9mIG5hYW0uZWJPc1wiIGNsYXNzPVwicm93IGVib3Jvd1wiPlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0ZXh0LWRpdlwiPlxyXG4gICAgICAgICAgICAgICAge3sgZWJvLmVib05hYW0gfX1cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8ZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiAqbmdGb3I9XCJsZXQgZmlsdGVyb3B0aW9uIG9mIGViby5maWx0ZXJPcHRpb25zXCI+XHJcbiAgICAgICAgICAgICAgICAgIHt7IGZpbHRlcm9wdGlvbi5maWx0ZXJOYW1lIH19OiB7eyBmaWx0ZXJvcHRpb24uZmlsdGVyT3B0aW9uTmFtZSB9fVxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgPGRpdiAqbmdGb3I9XCJsZXQgY2F0ZWdvcnkgb2YgZWJvLmNhdGVnb3JpZXNcIj5cclxuICAgICAgICAgICAgICAgICAgQ2F0ZWdvcnk6IHt7IGNhdGVnb3J5LmNhdGVnb3J5TmFtZSB9fVxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPC9tYXQtY2FyZC1jb250ZW50PlxyXG4gICAgICAgIDwvbWF0LWNhcmQ+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9tYXQtZXhwYW5zaW9uLXBhbmVsPlxyXG5cclxuICA8L21hdC1hY2NvcmRpb24+XHJcbjwvZGl2PlxyXG4iXX0=
@@ -103,6 +103,24 @@ export class BeheerFiltersComponent {
103
103
  Open(filter) {
104
104
  this.FilterViewModel = filter;
105
105
  }
106
+ Sort() {
107
+ if (this.FilterViewModel != null) {
108
+ this.LoadingFilters = true;
109
+ var request = new MoveFilterRequest();
110
+ request.filterId = this.FilterViewModel.id;
111
+ this.FiltersApiClient.sortFilter(request).subscribe(() => {
112
+ this.LoadFilters();
113
+ }, (error) => {
114
+ if (error.status == 400)
115
+ console.log(error.json());
116
+ else {
117
+ console.log('An unexpected error occured');
118
+ console.log(error);
119
+ }
120
+ this.LoadingFilters = false;
121
+ });
122
+ }
123
+ }
106
124
  LoadFilters() {
107
125
  this.LoadingFilters = true;
108
126
  this.FiltersApiClient.getFiltersViewModel().subscribe((model) => {
@@ -127,9 +145,9 @@ export class BeheerFiltersComponent {
127
145
  }
128
146
  }
129
147
  BeheerFiltersComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: BeheerFiltersComponent, deps: [{ token: i1.FiltersApiClient }], target: i0.ɵɵFactoryTarget.Component });
130
- BeheerFiltersComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.0", type: BeheerFiltersComponent, selector: "app-beheer-filters", ngImport: i0, template: "<app-beheer-nav></app-beheer-nav>\r\n\r\n<div *ngIf=\"LoadingFilters\">\r\n <app-fab-loader></app-fab-loader>\r\n</div>\r\n\r\n<div *ngIf=\"!LoadingFilters\" class=\"main-content\">\r\n <div class=\"displayflex\">\r\n <div>\r\n <mat-card>\r\n <mat-card-content>\r\n <div *ngFor=\"let filter of GetFilters(); let i = index;\" class=\"filter-row\">\r\n <div class=\"displayflex\">\r\n <button mat-raised-button *ngIf=\"FilterViewModel != filter\" (click)=\"Open(filter)\" class=\"flexauto\">{{ filter.name }}</button>\r\n <button *ngIf=\"FilterViewModel == filter\" (click)=\"Open(filter)\" class=\"flexauto\">{{ filter.name }}</button>\r\n <button mat-raised-button [disabled]=\"i == 0\" (click)=\"MoveUp(filter)\">&#8593;</button>\r\n <button mat-raised-button [disabled]=\"(i + 1) == GetFilters().length\" (click)=\"MoveDown(filter)\">&#8595;</button>\r\n </div>\r\n <div class=\"options\">\r\n\r\n </div>\r\n </div>\r\n </mat-card-content>\r\n </mat-card>\r\n </div>\r\n <div class=\"flexauto\">\r\n <mat-card>\r\n <mat-card-content>\r\n <div *ngIf=\"FilterViewModel != undefined\">\r\n <div class=\"filter-name\">\r\n Name: {{ FilterViewModel.name }}\r\n </div>\r\n <div class=\"filter-options-container\">\r\n <div *ngFor=\"let option of GetFilterOptions(); let i = index;\" class=\"filter-option\">\r\n <div class=\"filter-option-name\">\r\n {{ option.name }}\r\n </div>\r\n <button mat-raised-button [disabled]=\"i == 0\" (click)=\"MoveUpOption(option)\">&#8593;</button>\r\n <button mat-raised-button [disabled]=\"(i + 1) == GetFilterOptions().length\" (click)=\"MoveDownOption(option)\">&#8595;</button>\r\n </div>\r\n </div>\r\n </div>\r\n </mat-card-content>\r\n </mat-card>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n", styles: [".displayflex{display:flex;gap:10px}.filter-row{font-size:20px;line-height:30px;margin-bottom:10px}.flexauto{flex:auto}.main-content{padding:10px}.filter-name{font-size:20px;padding:10px;border-bottom:1px solid #000}.filter-option:hover{background-color:gray}.filter-options-container{border:1px solid #000;padding:10px;margin:10px}.filter-option{padding:5px;border-bottom:1px solid #000;display:flex;gap:5px}.filter-option-name{flex:auto;line-height:30px;font-size:20px}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i4.MatCard, selector: "mat-card", exportAs: ["matCard"] }, { kind: "directive", type: i4.MatCardContent, selector: "mat-card-content, [mat-card-content], [matCardContent]" }, { kind: "component", type: i5.BeheerNavComponent, selector: "app-beheer-nav" }, { kind: "component", type: i6.FabLoaderComponent, selector: "app-fab-loader" }] });
148
+ BeheerFiltersComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.0", type: BeheerFiltersComponent, selector: "app-beheer-filters", ngImport: i0, template: "<app-beheer-nav></app-beheer-nav>\r\n\r\n<div *ngIf=\"LoadingFilters\">\r\n <app-fab-loader></app-fab-loader>\r\n</div>\r\n\r\n<div *ngIf=\"!LoadingFilters\" class=\"main-content\">\r\n <div class=\"displayflex\">\r\n <div>\r\n <mat-card>\r\n <mat-card-content>\r\n <div *ngFor=\"let filter of GetFilters(); let i = index;\" class=\"filter-row\">\r\n <div class=\"displayflex\">\r\n <button mat-raised-button *ngIf=\"FilterViewModel != filter\" (click)=\"Open(filter)\" class=\"flexauto\">{{ filter.name }}</button>\r\n <button *ngIf=\"FilterViewModel == filter\" (click)=\"Open(filter)\" class=\"flexauto\">{{ filter.name }}</button>\r\n <button mat-raised-button [disabled]=\"i == 0\" (click)=\"MoveUp(filter)\">&#8593;</button>\r\n <button mat-raised-button [disabled]=\"(i + 1) == GetFilters().length\" (click)=\"MoveDown(filter)\">&#8595;</button>\r\n </div>\r\n <div class=\"options\">\r\n\r\n </div>\r\n </div>\r\n </mat-card-content>\r\n </mat-card>\r\n </div>\r\n <div class=\"flexauto\">\r\n <mat-card>\r\n <mat-card-content>\r\n <div *ngIf=\"FilterViewModel != undefined\">\r\n <div class=\"filter-name\">\r\n <div class=\"flexauto\">\r\n Name: {{ FilterViewModel.name }}\r\n </div>\r\n <div>\r\n <button mat-raised-button (click)=\"Sort()\">Sort</button>\r\n </div>\r\n </div>\r\n <div class=\"filter-options-container\">\r\n <div *ngFor=\"let option of GetFilterOptions(); let i = index;\" class=\"filter-option\">\r\n <div class=\"filter-option-name\">\r\n {{ option.name }}\r\n </div>\r\n <button mat-raised-button [disabled]=\"i == 0\" (click)=\"MoveUpOption(option)\">&#8593;</button>\r\n <button mat-raised-button [disabled]=\"(i + 1) == GetFilterOptions().length\" (click)=\"MoveDownOption(option)\">&#8595;</button>\r\n </div>\r\n </div>\r\n </div>\r\n </mat-card-content>\r\n </mat-card>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n", styles: [".displayflex{display:flex;gap:10px}.filter-row{font-size:20px;line-height:30px;margin-bottom:10px}.flexauto{flex:auto}.main-content{padding:10px}.filter-name{font-size:20px;padding:10px;border-bottom:1px solid #000;display:flex}.filter-option:hover{background-color:gray}.filter-options-container{border:1px solid #000;padding:10px;margin:10px}.filter-option{padding:5px;border-bottom:1px solid #000;display:flex;gap:5px}.filter-option-name{flex:auto;line-height:30px;font-size:20px}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i4.MatCard, selector: "mat-card", exportAs: ["matCard"] }, { kind: "directive", type: i4.MatCardContent, selector: "mat-card-content, [mat-card-content], [matCardContent]" }, { kind: "component", type: i5.BeheerNavComponent, selector: "app-beheer-nav" }, { kind: "component", type: i6.FabLoaderComponent, selector: "app-fab-loader" }] });
131
149
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: BeheerFiltersComponent, decorators: [{
132
150
  type: Component,
133
- args: [{ selector: 'app-beheer-filters', template: "<app-beheer-nav></app-beheer-nav>\r\n\r\n<div *ngIf=\"LoadingFilters\">\r\n <app-fab-loader></app-fab-loader>\r\n</div>\r\n\r\n<div *ngIf=\"!LoadingFilters\" class=\"main-content\">\r\n <div class=\"displayflex\">\r\n <div>\r\n <mat-card>\r\n <mat-card-content>\r\n <div *ngFor=\"let filter of GetFilters(); let i = index;\" class=\"filter-row\">\r\n <div class=\"displayflex\">\r\n <button mat-raised-button *ngIf=\"FilterViewModel != filter\" (click)=\"Open(filter)\" class=\"flexauto\">{{ filter.name }}</button>\r\n <button *ngIf=\"FilterViewModel == filter\" (click)=\"Open(filter)\" class=\"flexauto\">{{ filter.name }}</button>\r\n <button mat-raised-button [disabled]=\"i == 0\" (click)=\"MoveUp(filter)\">&#8593;</button>\r\n <button mat-raised-button [disabled]=\"(i + 1) == GetFilters().length\" (click)=\"MoveDown(filter)\">&#8595;</button>\r\n </div>\r\n <div class=\"options\">\r\n\r\n </div>\r\n </div>\r\n </mat-card-content>\r\n </mat-card>\r\n </div>\r\n <div class=\"flexauto\">\r\n <mat-card>\r\n <mat-card-content>\r\n <div *ngIf=\"FilterViewModel != undefined\">\r\n <div class=\"filter-name\">\r\n Name: {{ FilterViewModel.name }}\r\n </div>\r\n <div class=\"filter-options-container\">\r\n <div *ngFor=\"let option of GetFilterOptions(); let i = index;\" class=\"filter-option\">\r\n <div class=\"filter-option-name\">\r\n {{ option.name }}\r\n </div>\r\n <button mat-raised-button [disabled]=\"i == 0\" (click)=\"MoveUpOption(option)\">&#8593;</button>\r\n <button mat-raised-button [disabled]=\"(i + 1) == GetFilterOptions().length\" (click)=\"MoveDownOption(option)\">&#8595;</button>\r\n </div>\r\n </div>\r\n </div>\r\n </mat-card-content>\r\n </mat-card>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n", styles: [".displayflex{display:flex;gap:10px}.filter-row{font-size:20px;line-height:30px;margin-bottom:10px}.flexauto{flex:auto}.main-content{padding:10px}.filter-name{font-size:20px;padding:10px;border-bottom:1px solid #000}.filter-option:hover{background-color:gray}.filter-options-container{border:1px solid #000;padding:10px;margin:10px}.filter-option{padding:5px;border-bottom:1px solid #000;display:flex;gap:5px}.filter-option-name{flex:auto;line-height:30px;font-size:20px}\n"] }]
151
+ args: [{ selector: 'app-beheer-filters', template: "<app-beheer-nav></app-beheer-nav>\r\n\r\n<div *ngIf=\"LoadingFilters\">\r\n <app-fab-loader></app-fab-loader>\r\n</div>\r\n\r\n<div *ngIf=\"!LoadingFilters\" class=\"main-content\">\r\n <div class=\"displayflex\">\r\n <div>\r\n <mat-card>\r\n <mat-card-content>\r\n <div *ngFor=\"let filter of GetFilters(); let i = index;\" class=\"filter-row\">\r\n <div class=\"displayflex\">\r\n <button mat-raised-button *ngIf=\"FilterViewModel != filter\" (click)=\"Open(filter)\" class=\"flexauto\">{{ filter.name }}</button>\r\n <button *ngIf=\"FilterViewModel == filter\" (click)=\"Open(filter)\" class=\"flexauto\">{{ filter.name }}</button>\r\n <button mat-raised-button [disabled]=\"i == 0\" (click)=\"MoveUp(filter)\">&#8593;</button>\r\n <button mat-raised-button [disabled]=\"(i + 1) == GetFilters().length\" (click)=\"MoveDown(filter)\">&#8595;</button>\r\n </div>\r\n <div class=\"options\">\r\n\r\n </div>\r\n </div>\r\n </mat-card-content>\r\n </mat-card>\r\n </div>\r\n <div class=\"flexauto\">\r\n <mat-card>\r\n <mat-card-content>\r\n <div *ngIf=\"FilterViewModel != undefined\">\r\n <div class=\"filter-name\">\r\n <div class=\"flexauto\">\r\n Name: {{ FilterViewModel.name }}\r\n </div>\r\n <div>\r\n <button mat-raised-button (click)=\"Sort()\">Sort</button>\r\n </div>\r\n </div>\r\n <div class=\"filter-options-container\">\r\n <div *ngFor=\"let option of GetFilterOptions(); let i = index;\" class=\"filter-option\">\r\n <div class=\"filter-option-name\">\r\n {{ option.name }}\r\n </div>\r\n <button mat-raised-button [disabled]=\"i == 0\" (click)=\"MoveUpOption(option)\">&#8593;</button>\r\n <button mat-raised-button [disabled]=\"(i + 1) == GetFilterOptions().length\" (click)=\"MoveDownOption(option)\">&#8595;</button>\r\n </div>\r\n </div>\r\n </div>\r\n </mat-card-content>\r\n </mat-card>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n", styles: [".displayflex{display:flex;gap:10px}.filter-row{font-size:20px;line-height:30px;margin-bottom:10px}.flexauto{flex:auto}.main-content{padding:10px}.filter-name{font-size:20px;padding:10px;border-bottom:1px solid #000;display:flex}.filter-option:hover{background-color:gray}.filter-options-container{border:1px solid #000;padding:10px;margin:10px}.filter-option{padding:5px;border-bottom:1px solid #000;display:flex;gap:5px}.filter-option-name{flex:auto;line-height:30px;font-size:20px}\n"] }]
134
152
  }], ctorParameters: function () { return [{ type: i1.FiltersApiClient }]; } });
135
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmVoZWVyLWZpbHRlcnMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9tb2R1bGVzL2ZhYnJpa2FudGVuY29yZS9iZWhlZXIvY29tcG9uZW50cy9iZWhlZXItZmlsdGVycy9iZWhlZXItZmlsdGVycy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL21vZHVsZXMvZmFicmlrYW50ZW5jb3JlL2JlaGVlci9jb21wb25lbnRzL2JlaGVlci1maWx0ZXJzL2JlaGVlci1maWx0ZXJzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDbEQsT0FBTyxFQUF1RCxpQkFBaUIsRUFBRSx1QkFBdUIsRUFBeUIsTUFBTSxnQ0FBZ0MsQ0FBQzs7Ozs7Ozs7QUFPeEssTUFBTSxPQUFPLHNCQUFzQjtJQU1qQyxZQUFvQixnQkFBa0M7UUFBbEMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUovQyxtQkFBYyxHQUFZLElBQUksQ0FBQztRQUUvQixvQkFBZSxHQUFnQyxTQUFTLENBQUM7SUFFTixDQUFDO0lBRTNELFFBQVE7UUFDTixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDckIsQ0FBQztJQUVNLFVBQVU7UUFDZixJQUFJLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxnQkFBZ0IsSUFBSSxTQUFTLEVBQUU7WUFDdkQsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxHQUFHLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO1NBQ3pGO2FBQ0k7WUFDSCxPQUFPLElBQUksS0FBSyxFQUFtQixDQUFDO1NBQ3JD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TGxDLFNBQVM7K0JBQ0Usb0JBQW9CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZpbHRlcnNBcGlDbGllbnQsIEZpbHRlcnNWaWV3TW9kZWwsIEZpbHRlclZpZXdNb2RlbCwgTW92ZUZpbHRlclJlcXVlc3QsIE1vdmVGaWx0ZXJPcHRpb25SZXF1ZXN0LCBGaWx0ZXJPcHRpb25WaWV3TW9kZWwgfSBmcm9tICcuLi8uLi8uLi9zd2FnZ2VyL1N3YWdnZXJDbGllbnQnO1xyXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FwcC1iZWhlZXItZmlsdGVycycsXG4gIHRlbXBsYXRlVXJsOiAnLi9iZWhlZXItZmlsdGVycy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2JlaGVlci1maWx0ZXJzLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgQmVoZWVyRmlsdGVyc0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgcHVibGljIExvYWRpbmdGaWx0ZXJzOiBib29sZWFuID0gdHJ1ZTtcbiAgcHVibGljIEZpbHRlcnNWaWV3TW9kZWw6IEZpbHRlcnNWaWV3TW9kZWw7XG4gIHB1YmxpYyBGaWx0ZXJWaWV3TW9kZWw6IEZpbHRlclZpZXdNb2RlbCB8IHVuZGVmaW5lZCA9IHVuZGVmaW5lZDtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIEZpbHRlcnNBcGlDbGllbnQ6IEZpbHRlcnNBcGlDbGllbnQpIHsgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuTG9hZEZpbHRlcnMoKTtcbiAgfVxuXG4gIHB1YmxpYyBHZXRGaWx0ZXJzKCk6IEZpbHRlclZpZXdNb2RlbFtdIHtcbiAgICBpZiAodGhpcy5GaWx0ZXJzVmlld01vZGVsLmZpbHRlclZpZXdNb2RlbHMgIT0gdW5kZWZpbmVkKSB7XG4gICAgICByZXR1cm4gdGhpcy5GaWx0ZXJzVmlld01vZGVsLmZpbHRlclZpZXdNb2RlbHMuc29ydCgoYSwgYikgPT4gKGEucG9zaXRpb24gLSBiLnBvc2l0aW9uKSk7XHJcbiAgICB9XHJcbiAgICBlbHNlIHtcclxuICAgICAgcmV0dXJuIG5ldyBBcnJheTxGaWx0ZXJWaWV3TW9kZWw+KCk7XHJcbiAgICB9XHJcbiAgfVxuXG4gIHB1YmxpYyBHZXRGaWx0ZXJPcHRpb25zKCk6IEZpbHRlck9wdGlvblZpZXdNb2RlbFtdIHtcbiAgICBpZiAodGhpcy5GaWx0ZXJWaWV3TW9kZWw/LmZpbHRlck9wdGlvblZpZXdNb2RlbHMgIT0gdW5kZWZpbmVkKSB7XG4gICAgICByZXR1cm4gdGhpcy5GaWx0ZXJWaWV3TW9kZWwuZmlsdGVyT3B0aW9uVmlld01vZGVscy5zb3J0KChhLCBiKSA9PiAoYS5wb3NpdGlvbiAtIGIucG9zaXRpb24pKTtcclxuICAgIH1cclxuICAgIGVsc2Uge1xyXG4gICAgICByZXR1cm4gbmV3IEFycmF5PEZpbHRlck9wdGlvblZpZXdNb2RlbD4oKTtcclxuICAgIH1cclxuICB9XG5cbiAgcHVibGljIE1vdmVVcChmaWx0ZXI6IEZpbHRlclZpZXdNb2RlbCkge1xuICAgIHRoaXMuTG9hZGluZ0ZpbHRlcnMgPSB0cnVlO1xuXG4gICAgdmFyIHJlcXVlc3QgPSBuZXcgTW92ZUZpbHRlclJlcXVlc3QoKTtcblxuICAgIHJlcXVlc3QuZmlsdGVySWQgPSBmaWx0ZXIuaWQ7XG4gICAgcmVxdWVzdC51cCA9IHRydWU7XG5cbiAgICB0aGlzLkZpbHRlcnNBcGlDbGllbnQubW92ZUZpbHRlcihyZXF1ZXN0KS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgdGhpcy5Mb2FkRmlsdGVycygpO1xuICAgIH0sIChlcnJvcjogUmVzcG9uc2UpID0+IHtcbiAgICAgIGlmIChlcnJvci5zdGF0dXMgPT0gNDAwKVxuICAgICAgICBjb25zb2xlLmxvZyhlcnJvci5qc29uKCkpO1xuICAgICAgZWxzZSB7XG4gICAgICAgIGNvbnNvbGUubG9nKCdBbiB1bmV4cGVjdGVkIGVycm9yIG9jY3VyZWQnKTtcbiAgICAgICAgY29uc29sZS5sb2coZXJyb3IpO1xuICAgICAgfVxuXG4gICAgICB0aGlzLkxvYWRpbmdGaWx0ZXJzID0gZmFsc2U7XG4gICAgfSk7XHJcbiAgfVxuXG4gIHB1YmxpYyBNb3ZlRG93bihmaWx0ZXI6IEZpbHRlclZpZXdNb2RlbCkge1xuICAgIHRoaXMuTG9hZGluZ0ZpbHRlcnMgPSB0cnVlO1xuXG4gICAgdmFyIHJlcXVlc3QgPSBuZXcgTW92ZUZpbHRlclJlcXVlc3QoKTtcblxuICAgIHJlcXVlc3QuZmlsdGVySWQgPSBmaWx0ZXIuaWQ7XG4gICAgcmVxdWVzdC51cCA9IGZhbHNlO1xuXG4gICAgdGhpcy5GaWx0ZXJzQXBpQ2xpZW50Lm1vdmVGaWx0ZXIocmVxdWVzdCkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRoaXMuTG9hZEZpbHRlcnMoKTtcbiAgICB9LCAoZXJyb3I6IFJlc3BvbnNlKSA9PiB7XG4gICAgICBpZiAoZXJyb3Iuc3RhdHVzID09IDQwMClcbiAgICAgICAgY29uc29sZS5sb2coZXJyb3IuanNvbigpKTtcbiAgICAgIGVsc2Uge1xuICAgICAgICBjb25zb2xlLmxvZygnQW4gdW5leHBlY3RlZCBlcnJvciBvY2N1cmVkJyk7XG4gICAgICAgIGNvbnNvbGUubG9nKGVycm9yKTtcbiAgICAgIH1cblxuICAgICAgdGhpcy5Mb2FkaW5nRmlsdGVycyA9IGZhbHNlO1xuICAgIH0pO1xyXG4gIH1cblxuICBwdWJsaWMgTW92ZVVwT3B0aW9uKG9wdGlvbjogRmlsdGVyT3B0aW9uVmlld01vZGVsKSB7XG4gICAgdGhpcy5Mb2FkaW5nRmlsdGVycyA9IHRydWU7XG5cbiAgICB2YXIgcmVxdWVzdCA9IG5ldyBNb3ZlRmlsdGVyT3B0aW9uUmVxdWVzdCgpO1xuXG4gICAgcmVxdWVzdC5maWx0ZXJPcHRpb25JZCA9IG9wdGlvbi5pZDtcbiAgICByZXF1ZXN0LnVwID0gdHJ1ZTtcblxuICAgIHRoaXMuRmlsdGVyc0FwaUNsaWVudC5tb3ZlRmlsdGVyT3B0aW9uKHJlcXVlc3QpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICB0aGlzLkxvYWRGaWx0ZXJzKCk7XG4gICAgfSwgKGVycm9yOiBSZXNwb25zZSkgPT4ge1xuICAgICAgaWYgKGVycm9yLnN0YXR1cyA9PSA0MDApXG4gICAgICAgIGNvbnNvbGUubG9nKGVycm9yLmpzb24oKSk7XG4gICAgICBlbHNlIHtcbiAgICAgICAgY29uc29sZS5sb2coJ0FuIHVuZXhwZWN0ZWQgZXJyb3Igb2NjdXJlZCcpO1xuICAgICAgICBjb25zb2xlLmxvZyhlcnJvcik7XG4gICAgICB9XG5cbiAgICAgIHRoaXMuTG9hZGluZ0ZpbHRlcnMgPSBmYWxzZTtcbiAgICB9KTtcclxuICB9XG5cbiAgcHVibGljIE1vdmVEb3duT3B0aW9uKG9wdGlvbjogRmlsdGVyT3B0aW9uVmlld01vZGVsKSB7XG4gICAgdGhpcy5Mb2FkaW5nRmlsdGVycyA9IHRydWU7XG5cbiAgICB2YXIgcmVxdWVzdCA9IG5ldyBNb3ZlRmlsdGVyT3B0aW9uUmVxdWVzdCgpO1xuXG4gICAgcmVxdWVzdC5maWx0ZXJPcHRpb25JZCA9IG9wdGlvbi5pZDtcbiAgICByZXF1ZXN0LnVwID0gZmFsc2U7XG5cbiAgICB0aGlzLkZpbHRlcnNBcGlDbGllbnQubW92ZUZpbHRlck9wdGlvbihyZXF1ZXN0KS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgdGhpcy5Mb2FkRmlsdGVycygpO1xuICAgIH0sIChlcnJvcjogUmVzcG9uc2UpID0+IHtcbiAgICAgIGlmIChlcnJvci5zdGF0dXMgPT0gNDAwKVxuICAgICAgICBjb25zb2xlLmxvZyhlcnJvci5qc29uKCkpO1xuICAgICAgZWxzZSB7XG4gICAgICAgIGNvbnNvbGUubG9nKCdBbiB1bmV4cGVjdGVkIGVycm9yIG9jY3VyZWQnKTtcbiAgICAgICAgY29uc29sZS5sb2coZXJyb3IpO1xuICAgICAgfVxuXG4gICAgICB0aGlzLkxvYWRpbmdGaWx0ZXJzID0gZmFsc2U7XG4gICAgfSk7XHJcbiAgfVxuXG4gIHB1YmxpYyBPcGVuKGZpbHRlcjogRmlsdGVyVmlld01vZGVsKSB7XG4gICAgdGhpcy5GaWx0ZXJWaWV3TW9kZWwgPSBmaWx0ZXI7XHJcbiAgfVxuXG4gIHByaXZhdGUgTG9hZEZpbHRlcnMoKTogdm9pZCB7XG4gICAgdGhpcy5Mb2FkaW5nRmlsdGVycyA9IHRydWU7XG5cbiAgICB0aGlzLkZpbHRlcnNBcGlDbGllbnQuZ2V0RmlsdGVyc1ZpZXdNb2RlbCgpLnN1YnNjcmliZSgobW9kZWw6IEZpbHRlcnNWaWV3TW9kZWwpID0+IHtcbiAgICAgIHRoaXMuRmlsdGVyc1ZpZXdNb2RlbCA9IG1vZGVsO1xuXG4gICAgICBpZiAodGhpcy5GaWx0ZXJWaWV3TW9kZWwgIT0gdW5kZWZpbmVkICYmIHRoaXMuRmlsdGVyc1ZpZXdNb2RlbC5maWx0ZXJWaWV3TW9kZWxzICE9IHVuZGVmaW5lZCkge1xuICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IHRoaXMuRmlsdGVyc1ZpZXdNb2RlbC5maWx0ZXJWaWV3TW9kZWxzLmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgICAgICBpZiAodGhpcy5GaWx0ZXJzVmlld01vZGVsLmZpbHRlclZpZXdNb2RlbHNbaV0uaWQgPT0gdGhpcy5GaWx0ZXJWaWV3TW9kZWwuaWQpIHtcclxuICAgICAgICAgICAgdGhpcy5GaWx0ZXJWaWV3TW9kZWwgPSB0aGlzLkZpbHRlcnNWaWV3TW9kZWwuZmlsdGVyVmlld01vZGVsc1tpXTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cblxuICAgICAgdGhpcy5Mb2FkaW5nRmlsdGVycyA9IGZhbHNlO1xuICAgIH0sIChlcnJvcjogUmVzcG9uc2UpID0+IHtcbiAgICAgIGlmIChlcnJvci5zdGF0dXMgPT0gNDAwKVxuICAgICAgICBjb25zb2xlLmxvZyhlcnJvci5qc29uKCkpO1xuICAgICAgZWxzZSB7XG4gICAgICAgIGNvbnNvbGUubG9nKCdBbiB1bmV4cGVjdGVkIGVycm9yIG9jY3VyZWQnKTtcbiAgICAgICAgY29uc29sZS5sb2coZXJyb3IpO1xuICAgICAgfVxuXG4gICAgICB0aGlzLkxvYWRpbmdGaWx0ZXJzID0gZmFsc2U7XG4gICAgfSk7XG4gIH1cbn1cbiIsIjxhcHAtYmVoZWVyLW5hdj48L2FwcC1iZWhlZXItbmF2PlxyXG5cclxuPGRpdiAqbmdJZj1cIkxvYWRpbmdGaWx0ZXJzXCI+XHJcbiAgPGFwcC1mYWItbG9hZGVyPjwvYXBwLWZhYi1sb2FkZXI+XHJcbjwvZGl2PlxyXG5cclxuPGRpdiAqbmdJZj1cIiFMb2FkaW5nRmlsdGVyc1wiIGNsYXNzPVwibWFpbi1jb250ZW50XCI+XHJcbiAgPGRpdiBjbGFzcz1cImRpc3BsYXlmbGV4XCI+XHJcbiAgICA8ZGl2PlxyXG4gICAgICA8bWF0LWNhcmQ+XHJcbiAgICAgICAgPG1hdC1jYXJkLWNvbnRlbnQ+XHJcbiAgICAgICAgICA8ZGl2ICpuZ0Zvcj1cImxldCBmaWx0ZXIgb2YgR2V0RmlsdGVycygpOyBsZXQgaSA9IGluZGV4O1wiIGNsYXNzPVwiZmlsdGVyLXJvd1wiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZGlzcGxheWZsZXhcIj5cclxuICAgICAgICAgICAgICA8YnV0dG9uIG1hdC1yYWlzZWQtYnV0dG9uICpuZ0lmPVwiRmlsdGVyVmlld01vZGVsICE9IGZpbHRlclwiIChjbGljayk9XCJPcGVuKGZpbHRlcilcIiBjbGFzcz1cImZsZXhhdXRvXCI+e3sgZmlsdGVyLm5hbWUgfX08L2J1dHRvbj5cclxuICAgICAgICAgICAgICA8YnV0dG9uICpuZ0lmPVwiRmlsdGVyVmlld01vZGVsID09IGZpbHRlclwiIChjbGljayk9XCJPcGVuKGZpbHRlcilcIiBjbGFzcz1cImZsZXhhdXRvXCI+e3sgZmlsdGVyLm5hbWUgfX08L2J1dHRvbj5cclxuICAgICAgICAgICAgICA8YnV0dG9uIG1hdC1yYWlzZWQtYnV0dG9uIFtkaXNhYmxlZF09XCJpID09IDBcIiAoY2xpY2spPVwiTW92ZVVwKGZpbHRlcilcIj4mIzg1OTM7PC9idXR0b24+XHJcbiAgICAgICAgICAgICAgPGJ1dHRvbiBtYXQtcmFpc2VkLWJ1dHRvbiBbZGlzYWJsZWRdPVwiKGkgKyAxKSA9PSBHZXRGaWx0ZXJzKCkubGVuZ3RoXCIgKGNsaWNrKT1cIk1vdmVEb3duKGZpbHRlcilcIj4mIzg1OTU7PC9idXR0b24+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwib3B0aW9uc1wiPlxyXG5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L21hdC1jYXJkLWNvbnRlbnQ+XHJcbiAgICAgIDwvbWF0LWNhcmQ+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgY2xhc3M9XCJmbGV4YXV0b1wiPlxyXG4gICAgICA8bWF0LWNhcmQ+XHJcbiAgICAgICAgPG1hdC1jYXJkLWNvbnRlbnQ+XHJcbiAgICAgICAgIDxkaXYgKm5nSWY9XCJGaWx0ZXJWaWV3TW9kZWwgIT0gdW5kZWZpbmVkXCI+XHJcbiAgICAgICAgICAgPGRpdiBjbGFzcz1cImZpbHRlci1uYW1lXCI+XHJcbiAgICAgICAgICAgICBOYW1lOiB7eyBGaWx0ZXJWaWV3TW9kZWwubmFtZSB9fVxyXG4gICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgIDxkaXYgY2xhc3M9XCJmaWx0ZXItb3B0aW9ucy1jb250YWluZXJcIj5cclxuICAgICAgICAgICAgIDxkaXYgKm5nRm9yPVwibGV0IG9wdGlvbiBvZiBHZXRGaWx0ZXJPcHRpb25zKCk7IGxldCBpID0gaW5kZXg7XCIgY2xhc3M9XCJmaWx0ZXItb3B0aW9uXCI+XHJcbiAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmaWx0ZXItb3B0aW9uLW5hbWVcIj5cclxuICAgICAgICAgICAgICAgICB7eyBvcHRpb24ubmFtZSB9fVxyXG4gICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgPGJ1dHRvbiBtYXQtcmFpc2VkLWJ1dHRvbiBbZGlzYWJsZWRdPVwiaSA9PSAwXCIgKGNsaWNrKT1cIk1vdmVVcE9wdGlvbihvcHRpb24pXCI+JiM4NTkzOzwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICA8YnV0dG9uIG1hdC1yYWlzZWQtYnV0dG9uIFtkaXNhYmxlZF09XCIoaSArIDEpID09IEdldEZpbHRlck9wdGlvbnMoKS5sZW5ndGhcIiAoY2xpY2spPVwiTW92ZURvd25PcHRpb24ob3B0aW9uKVwiPiYjODU5NTs8L2J1dHRvbj5cclxuICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L21hdC1jYXJkLWNvbnRlbnQ+XHJcbiAgICAgIDwvbWF0LWNhcmQ+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuPC9kaXY+XHJcblxyXG4iXX0=
153
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmVoZWVyLWZpbHRlcnMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9tb2R1bGVzL2ZhYnJpa2FudGVuY29yZS9iZWhlZXIvY29tcG9uZW50cy9iZWhlZXItZmlsdGVycy9iZWhlZXItZmlsdGVycy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL21vZHVsZXMvZmFicmlrYW50ZW5jb3JlL2JlaGVlci9jb21wb25lbnRzL2JlaGVlci1maWx0ZXJzL2JlaGVlci1maWx0ZXJzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDbEQsT0FBTyxFQUF1RCxpQkFBaUIsRUFBRSx1QkFBdUIsRUFBeUIsTUFBTSxnQ0FBZ0MsQ0FBQzs7Ozs7Ozs7QUFPeEssTUFBTSxPQUFPLHNCQUFzQjtJQU1qQyxZQUFvQixnQkFBa0M7UUFBbEMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUovQyxtQkFBYyxHQUFZLElBQUksQ0FBQztRQUUvQixvQkFBZSxHQUFnQyxTQUFTLENBQUM7SUFFTixDQUFDO0lBRTNELFFBQVE7UUFDTixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDckIsQ0FBQztJQUVNLFVBQVU7UUFDZixJQUFJLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxnQkFBZ0IsSUFBSSxTQUFTLEVBQUU7WUFDdkQsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxHQUFHLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO1NBQ3pGO2FBQ0k7WUFDSCxPQUFPLElBQUksS0FBSyxFQUFtQixDQUFDO1NBQ3JD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RSxFQUFFO29CQUN0RSxJQUFJLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLElBQUksSUFBSSxDQUFDLGVBQWUsQ0FBQyxFQUFFLEVBQUU7d0JBQzNFLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQyxDQUFDO3FCQUNsRTtpQkFDRjthQUNGO1lBRUQsSUFBSSxDQUFDLGNBQWMsR0FBRyxLQUFLLENBQUM7UUFDOUIsQ0FBQyxFQUFFLENBQUMsS0FBZSxFQUFFLEVBQUU7WUFDckIsSUFBSSxLQUFLLENBQUMsTUFBTSxJQUFJLEdBQUc7Z0JBQ3JCLE9BQU8sQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7aUJBQ3ZCO2dCQUNILE9BQU8sQ0FBQyxHQUFHLENBQUMsNkJBQTZCLENBQUMsQ0FBQztnQkFDM0MsT0FBTyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQzthQUNwQjtZQUVELElBQUksQ0FBQyxjQUFjLEdBQUcsS0FBSyxDQUFDO1FBQzlCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7bUhBMUtVLHNCQUFzQjt1R0FBdEIsc0JBQXNCLDBEQ1JuQywrc0VBcURBOzJGRDdDYSxzQkFBc0I7a0JBTGxDLFNBQVM7K0JBQ0Usb0JBQW9CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZpbHRlcnNBcGlDbGllbnQsIEZpbHRlcnNWaWV3TW9kZWwsIEZpbHRlclZpZXdNb2RlbCwgTW92ZUZpbHRlclJlcXVlc3QsIE1vdmVGaWx0ZXJPcHRpb25SZXF1ZXN0LCBGaWx0ZXJPcHRpb25WaWV3TW9kZWwgfSBmcm9tICcuLi8uLi8uLi9zd2FnZ2VyL1N3YWdnZXJDbGllbnQnO1xyXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FwcC1iZWhlZXItZmlsdGVycycsXG4gIHRlbXBsYXRlVXJsOiAnLi9iZWhlZXItZmlsdGVycy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2JlaGVlci1maWx0ZXJzLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgQmVoZWVyRmlsdGVyc0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgcHVibGljIExvYWRpbmdGaWx0ZXJzOiBib29sZWFuID0gdHJ1ZTtcbiAgcHVibGljIEZpbHRlcnNWaWV3TW9kZWw6IEZpbHRlcnNWaWV3TW9kZWw7XG4gIHB1YmxpYyBGaWx0ZXJWaWV3TW9kZWw6IEZpbHRlclZpZXdNb2RlbCB8IHVuZGVmaW5lZCA9IHVuZGVmaW5lZDtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIEZpbHRlcnNBcGlDbGllbnQ6IEZpbHRlcnNBcGlDbGllbnQpIHsgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuTG9hZEZpbHRlcnMoKTtcbiAgfVxuXG4gIHB1YmxpYyBHZXRGaWx0ZXJzKCk6IEZpbHRlclZpZXdNb2RlbFtdIHtcbiAgICBpZiAodGhpcy5GaWx0ZXJzVmlld01vZGVsLmZpbHRlclZpZXdNb2RlbHMgIT0gdW5kZWZpbmVkKSB7XG4gICAgICByZXR1cm4gdGhpcy5GaWx0ZXJzVmlld01vZGVsLmZpbHRlclZpZXdNb2RlbHMuc29ydCgoYSwgYikgPT4gKGEucG9zaXRpb24gLSBiLnBvc2l0aW9uKSk7XHJcbiAgICB9XHJcbiAgICBlbHNlIHtcclxuICAgICAgcmV0dXJuIG5ldyBBcnJheTxGaWx0ZXJWaWV3TW9kZWw+KCk7XHJcbiAgICB9XHJcbiAgfVxuXG4gIHB1YmxpYyBHZXRGaWx0ZXJPcHRpb25zKCk6IEZpbHRlck9wdGlvblZpZXdNb2RlbFtdIHtcbiAgICBpZiAodGhpcy5GaWx0ZXJWaWV3TW9kZWw/LmZpbHRlck9wdGlvblZpZXdNb2RlbHMgIT0gdW5kZWZpbmVkKSB7XG4gICAgICByZXR1cm4gdGhpcy5GaWx0ZXJWaWV3TW9kZWwuZmlsdGVyT3B0aW9uVmlld01vZGVscy5zb3J0KChhLCBiKSA9PiAoYS5wb3NpdGlvbiAtIGIucG9zaXRpb24pKTtcclxuICAgIH1cclxuICAgIGVsc2Uge1xyXG4gICAgICByZXR1cm4gbmV3IEFycmF5PEZpbHRlck9wdGlvblZpZXdNb2RlbD4oKTtcclxuICAgIH1cclxuICB9XG5cbiAgcHVibGljIE1vdmVVcChmaWx0ZXI6IEZpbHRlclZpZXdNb2RlbCkge1xuICAgIHRoaXMuTG9hZGluZ0ZpbHRlcnMgPSB0cnVlO1xuXG4gICAgdmFyIHJlcXVlc3QgPSBuZXcgTW92ZUZpbHRlclJlcXVlc3QoKTtcblxuICAgIHJlcXVlc3QuZmlsdGVySWQgPSBmaWx0ZXIuaWQ7XG4gICAgcmVxdWVzdC51cCA9IHRydWU7XG5cbiAgICB0aGlzLkZpbHRlcnNBcGlDbGllbnQubW92ZUZpbHRlcihyZXF1ZXN0KS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgdGhpcy5Mb2FkRmlsdGVycygpO1xuICAgIH0sIChlcnJvcjogUmVzcG9uc2UpID0+IHtcbiAgICAgIGlmIChlcnJvci5zdGF0dXMgPT0gNDAwKVxuICAgICAgICBjb25zb2xlLmxvZyhlcnJvci5qc29uKCkpO1xuICAgICAgZWxzZSB7XG4gICAgICAgIGNvbnNvbGUubG9nKCdBbiB1bmV4cGVjdGVkIGVycm9yIG9jY3VyZWQnKTtcbiAgICAgICAgY29uc29sZS5sb2coZXJyb3IpO1xuICAgICAgfVxuXG4gICAgICB0aGlzLkxvYWRpbmdGaWx0ZXJzID0gZmFsc2U7XG4gICAgfSk7XHJcbiAgfVxuXG4gIHB1YmxpYyBNb3ZlRG93bihmaWx0ZXI6IEZpbHRlclZpZXdNb2RlbCkge1xuICAgIHRoaXMuTG9hZGluZ0ZpbHRlcnMgPSB0cnVlO1xuXG4gICAgdmFyIHJlcXVlc3QgPSBuZXcgTW92ZUZpbHRlclJlcXVlc3QoKTtcblxuICAgIHJlcXVlc3QuZmlsdGVySWQgPSBmaWx0ZXIuaWQ7XG4gICAgcmVxdWVzdC51cCA9IGZhbHNlO1xuXG4gICAgdGhpcy5GaWx0ZXJzQXBpQ2xpZW50Lm1vdmVGaWx0ZXIocmVxdWVzdCkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRoaXMuTG9hZEZpbHRlcnMoKTtcbiAgICB9LCAoZXJyb3I6IFJlc3BvbnNlKSA9PiB7XG4gICAgICBpZiAoZXJyb3Iuc3RhdHVzID09IDQwMClcbiAgICAgICAgY29uc29sZS5sb2coZXJyb3IuanNvbigpKTtcbiAgICAgIGVsc2Uge1xuICAgICAgICBjb25zb2xlLmxvZygnQW4gdW5leHBlY3RlZCBlcnJvciBvY2N1cmVkJyk7XG4gICAgICAgIGNvbnNvbGUubG9nKGVycm9yKTtcbiAgICAgIH1cblxuICAgICAgdGhpcy5Mb2FkaW5nRmlsdGVycyA9IGZhbHNlO1xuICAgIH0pO1xyXG4gIH1cblxuICBwdWJsaWMgTW92ZVVwT3B0aW9uKG9wdGlvbjogRmlsdGVyT3B0aW9uVmlld01vZGVsKSB7XG4gICAgdGhpcy5Mb2FkaW5nRmlsdGVycyA9IHRydWU7XG5cbiAgICB2YXIgcmVxdWVzdCA9IG5ldyBNb3ZlRmlsdGVyT3B0aW9uUmVxdWVzdCgpO1xuXG4gICAgcmVxdWVzdC5maWx0ZXJPcHRpb25JZCA9IG9wdGlvbi5pZDtcbiAgICByZXF1ZXN0LnVwID0gdHJ1ZTtcblxuICAgIHRoaXMuRmlsdGVyc0FwaUNsaWVudC5tb3ZlRmlsdGVyT3B0aW9uKHJlcXVlc3QpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICB0aGlzLkxvYWRGaWx0ZXJzKCk7XG4gICAgfSwgKGVycm9yOiBSZXNwb25zZSkgPT4ge1xuICAgICAgaWYgKGVycm9yLnN0YXR1cyA9PSA0MDApXG4gICAgICAgIGNvbnNvbGUubG9nKGVycm9yLmpzb24oKSk7XG4gICAgICBlbHNlIHtcbiAgICAgICAgY29uc29sZS5sb2coJ0FuIHVuZXhwZWN0ZWQgZXJyb3Igb2NjdXJlZCcpO1xuICAgICAgICBjb25zb2xlLmxvZyhlcnJvcik7XG4gICAgICB9XG5cbiAgICAgIHRoaXMuTG9hZGluZ0ZpbHRlcnMgPSBmYWxzZTtcbiAgICB9KTtcclxuICB9XG5cbiAgcHVibGljIE1vdmVEb3duT3B0aW9uKG9wdGlvbjogRmlsdGVyT3B0aW9uVmlld01vZGVsKSB7XG4gICAgdGhpcy5Mb2FkaW5nRmlsdGVycyA9IHRydWU7XG5cbiAgICB2YXIgcmVxdWVzdCA9IG5ldyBNb3ZlRmlsdGVyT3B0aW9uUmVxdWVzdCgpO1xuXG4gICAgcmVxdWVzdC5maWx0ZXJPcHRpb25JZCA9IG9wdGlvbi5pZDtcbiAgICByZXF1ZXN0LnVwID0gZmFsc2U7XG5cbiAgICB0aGlzLkZpbHRlcnNBcGlDbGllbnQubW92ZUZpbHRlck9wdGlvbihyZXF1ZXN0KS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgdGhpcy5Mb2FkRmlsdGVycygpO1xuICAgIH0sIChlcnJvcjogUmVzcG9uc2UpID0+IHtcbiAgICAgIGlmIChlcnJvci5zdGF0dXMgPT0gNDAwKVxuICAgICAgICBjb25zb2xlLmxvZyhlcnJvci5qc29uKCkpO1xuICAgICAgZWxzZSB7XG4gICAgICAgIGNvbnNvbGUubG9nKCdBbiB1bmV4cGVjdGVkIGVycm9yIG9jY3VyZWQnKTtcbiAgICAgICAgY29uc29sZS5sb2coZXJyb3IpO1xuICAgICAgfVxuXG4gICAgICB0aGlzLkxvYWRpbmdGaWx0ZXJzID0gZmFsc2U7XG4gICAgfSk7XHJcbiAgfVxuXG4gIHB1YmxpYyBPcGVuKGZpbHRlcjogRmlsdGVyVmlld01vZGVsKSB7XG4gICAgdGhpcy5GaWx0ZXJWaWV3TW9kZWwgPSBmaWx0ZXI7XHJcbiAgfVxuXG4gIHB1YmxpYyBTb3J0KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLkZpbHRlclZpZXdNb2RlbCAhPSBudWxsKSB7XG4gICAgICB0aGlzLkxvYWRpbmdGaWx0ZXJzID0gdHJ1ZTtcblxuICAgICAgdmFyIHJlcXVlc3QgPSBuZXcgTW92ZUZpbHRlclJlcXVlc3QoKTtcblxuICAgICAgcmVxdWVzdC5maWx0ZXJJZCA9IHRoaXMuRmlsdGVyVmlld01vZGVsLmlkO1xuXG4gICAgICB0aGlzLkZpbHRlcnNBcGlDbGllbnQuc29ydEZpbHRlcihyZXF1ZXN0KS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICB0aGlzLkxvYWRGaWx0ZXJzKCk7XG4gICAgICB9LCAoZXJyb3I6IFJlc3BvbnNlKSA9PiB7XG4gICAgICAgIGlmIChlcnJvci5zdGF0dXMgPT0gNDAwKVxuICAgICAgICAgIGNvbnNvbGUubG9nKGVycm9yLmpzb24oKSk7XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgIGNvbnNvbGUubG9nKCdBbiB1bmV4cGVjdGVkIGVycm9yIG9jY3VyZWQnKTtcbiAgICAgICAgICBjb25zb2xlLmxvZyhlcnJvcik7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLkxvYWRpbmdGaWx0ZXJzID0gZmFsc2U7XG4gICAgICB9KTtcclxuICAgIH1cclxuICB9XG5cbiAgcHJpdmF0ZSBMb2FkRmlsdGVycygpOiB2b2lkIHtcbiAgICB0aGlzLkxvYWRpbmdGaWx0ZXJzID0gdHJ1ZTtcblxuICAgIHRoaXMuRmlsdGVyc0FwaUNsaWVudC5nZXRGaWx0ZXJzVmlld01vZGVsKCkuc3Vic2NyaWJlKChtb2RlbDogRmlsdGVyc1ZpZXdNb2RlbCkgPT4ge1xuICAgICAgdGhpcy5GaWx0ZXJzVmlld01vZGVsID0gbW9kZWw7XG5cbiAgICAgIGlmICh0aGlzLkZpbHRlclZpZXdNb2RlbCAhPSB1bmRlZmluZWQgJiYgdGhpcy5GaWx0ZXJzVmlld01vZGVsLmZpbHRlclZpZXdNb2RlbHMgIT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgdGhpcy5GaWx0ZXJzVmlld01vZGVsLmZpbHRlclZpZXdNb2RlbHMubGVuZ3RoOyBpKyspIHtcclxuICAgICAgICAgIGlmICh0aGlzLkZpbHRlcnNWaWV3TW9kZWwuZmlsdGVyVmlld01vZGVsc1tpXS5pZCA9PSB0aGlzLkZpbHRlclZpZXdNb2RlbC5pZCkge1xyXG4gICAgICAgICAgICB0aGlzLkZpbHRlclZpZXdNb2RlbCA9IHRoaXMuRmlsdGVyc1ZpZXdNb2RlbC5maWx0ZXJWaWV3TW9kZWxzW2ldO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxuXG4gICAgICB0aGlzLkxvYWRpbmdGaWx0ZXJzID0gZmFsc2U7XG4gICAgfSwgKGVycm9yOiBSZXNwb25zZSkgPT4ge1xuICAgICAgaWYgKGVycm9yLnN0YXR1cyA9PSA0MDApXG4gICAgICAgIGNvbnNvbGUubG9nKGVycm9yLmpzb24oKSk7XG4gICAgICBlbHNlIHtcbiAgICAgICAgY29uc29sZS5sb2coJ0FuIHVuZXhwZWN0ZWQgZXJyb3Igb2NjdXJlZCcpO1xuICAgICAgICBjb25zb2xlLmxvZyhlcnJvcik7XG4gICAgICB9XG5cbiAgICAgIHRoaXMuTG9hZGluZ0ZpbHRlcnMgPSBmYWxzZTtcbiAgICB9KTtcbiAgfVxufVxuIiwiPGFwcC1iZWhlZXItbmF2PjwvYXBwLWJlaGVlci1uYXY+XHJcblxyXG48ZGl2ICpuZ0lmPVwiTG9hZGluZ0ZpbHRlcnNcIj5cclxuICA8YXBwLWZhYi1sb2FkZXI+PC9hcHAtZmFiLWxvYWRlcj5cclxuPC9kaXY+XHJcblxyXG48ZGl2ICpuZ0lmPVwiIUxvYWRpbmdGaWx0ZXJzXCIgY2xhc3M9XCJtYWluLWNvbnRlbnRcIj5cclxuICA8ZGl2IGNsYXNzPVwiZGlzcGxheWZsZXhcIj5cclxuICAgIDxkaXY+XHJcbiAgICAgIDxtYXQtY2FyZD5cclxuICAgICAgICA8bWF0LWNhcmQtY29udGVudD5cclxuICAgICAgICAgIDxkaXYgKm5nRm9yPVwibGV0IGZpbHRlciBvZiBHZXRGaWx0ZXJzKCk7IGxldCBpID0gaW5kZXg7XCIgY2xhc3M9XCJmaWx0ZXItcm93XCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkaXNwbGF5ZmxleFwiPlxyXG4gICAgICAgICAgICAgIDxidXR0b24gbWF0LXJhaXNlZC1idXR0b24gKm5nSWY9XCJGaWx0ZXJWaWV3TW9kZWwgIT0gZmlsdGVyXCIgKGNsaWNrKT1cIk9wZW4oZmlsdGVyKVwiIGNsYXNzPVwiZmxleGF1dG9cIj57eyBmaWx0ZXIubmFtZSB9fTwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgIDxidXR0b24gKm5nSWY9XCJGaWx0ZXJWaWV3TW9kZWwgPT0gZmlsdGVyXCIgKGNsaWNrKT1cIk9wZW4oZmlsdGVyKVwiIGNsYXNzPVwiZmxleGF1dG9cIj57eyBmaWx0ZXIubmFtZSB9fTwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgIDxidXR0b24gbWF0LXJhaXNlZC1idXR0b24gW2Rpc2FibGVkXT1cImkgPT0gMFwiIChjbGljayk9XCJNb3ZlVXAoZmlsdGVyKVwiPiYjODU5Mzs8L2J1dHRvbj5cclxuICAgICAgICAgICAgICA8YnV0dG9uIG1hdC1yYWlzZWQtYnV0dG9uIFtkaXNhYmxlZF09XCIoaSArIDEpID09IEdldEZpbHRlcnMoKS5sZW5ndGhcIiAoY2xpY2spPVwiTW92ZURvd24oZmlsdGVyKVwiPiYjODU5NTs8L2J1dHRvbj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJvcHRpb25zXCI+XHJcblxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvbWF0LWNhcmQtY29udGVudD5cclxuICAgICAgPC9tYXQtY2FyZD5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz1cImZsZXhhdXRvXCI+XHJcbiAgICAgIDxtYXQtY2FyZD5cclxuICAgICAgICA8bWF0LWNhcmQtY29udGVudD5cclxuICAgICAgICAgPGRpdiAqbmdJZj1cIkZpbHRlclZpZXdNb2RlbCAhPSB1bmRlZmluZWRcIj5cclxuICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmlsdGVyLW5hbWVcIj5cclxuICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4YXV0b1wiPlxyXG4gICAgICAgICAgICAgICBOYW1lOiB7eyBGaWx0ZXJWaWV3TW9kZWwubmFtZSB9fVxyXG4gICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICA8ZGl2PlxyXG4gICAgICAgICAgICAgICA8YnV0dG9uIG1hdC1yYWlzZWQtYnV0dG9uIChjbGljayk9XCJTb3J0KClcIj5Tb3J0PC9idXR0b24+XHJcbiAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmlsdGVyLW9wdGlvbnMtY29udGFpbmVyXCI+XHJcbiAgICAgICAgICAgICA8ZGl2ICpuZ0Zvcj1cImxldCBvcHRpb24gb2YgR2V0RmlsdGVyT3B0aW9ucygpOyBsZXQgaSA9IGluZGV4O1wiIGNsYXNzPVwiZmlsdGVyLW9wdGlvblwiPlxyXG4gICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmlsdGVyLW9wdGlvbi1uYW1lXCI+XHJcbiAgICAgICAgICAgICAgICAge3sgb3B0aW9uLm5hbWUgfX1cclxuICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgIDxidXR0b24gbWF0LXJhaXNlZC1idXR0b24gW2Rpc2FibGVkXT1cImkgPT0gMFwiIChjbGljayk9XCJNb3ZlVXBPcHRpb24ob3B0aW9uKVwiPiYjODU5Mzs8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgPGJ1dHRvbiBtYXQtcmFpc2VkLWJ1dHRvbiBbZGlzYWJsZWRdPVwiKGkgKyAxKSA9PSBHZXRGaWx0ZXJPcHRpb25zKCkubGVuZ3RoXCIgKGNsaWNrKT1cIk1vdmVEb3duT3B0aW9uKG9wdGlvbilcIj4mIzg1OTU7PC9idXR0b24+XHJcbiAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9tYXQtY2FyZC1jb250ZW50PlxyXG4gICAgICA8L21hdC1jYXJkPlxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcbjwvZGl2PlxyXG5cclxuIl19