@igo2/context 16.2.0 → 17.0.0-next.0

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 (71) hide show
  1. package/esm2022/lib/context-import-export/context-import-export/context-import-export.component.mjs +39 -16
  2. package/esm2022/lib/context-import-export/context-import-export.module.mjs +10 -66
  3. package/esm2022/lib/context-import-export/shared/context-export.service.mjs +4 -4
  4. package/esm2022/lib/context-import-export/shared/context-export.utils.mjs +1 -1
  5. package/esm2022/lib/context-import-export/shared/context-import.service.mjs +5 -5
  6. package/esm2022/lib/context-import-export/shared/context-import.utils.mjs +1 -1
  7. package/esm2022/lib/context-manager/context-edit/context-edit-binding.directive.mjs +8 -7
  8. package/esm2022/lib/context-manager/context-edit/context-edit.component.mjs +10 -9
  9. package/esm2022/lib/context-manager/context-form/context-form.component.mjs +30 -14
  10. package/esm2022/lib/context-manager/context-item/context-item.component.mjs +28 -13
  11. package/esm2022/lib/context-manager/context-list/context-list-binding.directive.mjs +9 -7
  12. package/esm2022/lib/context-manager/context-list/context-list.component.mjs +44 -17
  13. package/esm2022/lib/context-manager/context-manager.module.mjs +23 -102
  14. package/esm2022/lib/context-manager/context-permissions/context-permissions-binding.directive.mjs +8 -7
  15. package/esm2022/lib/context-manager/context-permissions/context-permissions.component.mjs +45 -16
  16. package/esm2022/lib/context-manager/index.mjs +19 -1
  17. package/esm2022/lib/context-manager/shared/context.interface.mjs +1 -1
  18. package/esm2022/lib/context-manager/shared/context.service.mjs +6 -6
  19. package/esm2022/lib/context-manager/shared/layer-context.directive.mjs +10 -7
  20. package/esm2022/lib/context-manager/shared/map-context.directive.mjs +7 -6
  21. package/esm2022/lib/context-map-button/bookmark-button/bookmark-button.component.mjs +12 -8
  22. package/esm2022/lib/context-map-button/bookmark-button/bookmark-dialog.component.mjs +25 -11
  23. package/esm2022/lib/context-map-button/context-map-button.module.mjs +16 -75
  24. package/esm2022/lib/context-map-button/index.mjs +10 -1
  25. package/esm2022/lib/context-map-button/poi-button/poi-button.component.mjs +28 -13
  26. package/esm2022/lib/context-map-button/poi-button/poi-dialog.component.mjs +25 -11
  27. package/esm2022/lib/context-map-button/poi-button/shared/poi.service.mjs +5 -5
  28. package/esm2022/lib/context-map-button/user-button/user-button.component.mjs +22 -11
  29. package/esm2022/lib/context-map-button/user-button/user-dialog.component.mjs +15 -7
  30. package/esm2022/lib/context.module.mjs +9 -11
  31. package/esm2022/lib/share-map/index.mjs +9 -1
  32. package/esm2022/lib/share-map/share-map/share-map-api.component.mjs +30 -14
  33. package/esm2022/lib/share-map/share-map/share-map-url.component.mjs +26 -13
  34. package/esm2022/lib/share-map/share-map/share-map.component.mjs +19 -11
  35. package/esm2022/lib/share-map/share-map.module.mjs +10 -50
  36. package/esm2022/lib/share-map/shared/share-map.service.mjs +6 -6
  37. package/esm2022/lib/sidenav/sidenav.component.mjs +29 -16
  38. package/esm2022/lib/sidenav/sidenav.module.mjs +10 -46
  39. package/fesm2022/igo2-context.mjs +1359 -1381
  40. package/fesm2022/igo2-context.mjs.map +1 -1
  41. package/lib/context-import-export/context-import-export/context-import-export.component.d.ts +1 -1
  42. package/lib/context-import-export/context-import-export.module.d.ts +4 -15
  43. package/lib/context-manager/context-edit/context-edit-binding.directive.d.ts +1 -1
  44. package/lib/context-manager/context-edit/context-edit.component.d.ts +1 -1
  45. package/lib/context-manager/context-form/context-form.component.d.ts +1 -1
  46. package/lib/context-manager/context-item/context-item.component.d.ts +1 -1
  47. package/lib/context-manager/context-list/context-list-binding.directive.d.ts +1 -1
  48. package/lib/context-manager/context-list/context-list.component.d.ts +1 -1
  49. package/lib/context-manager/context-manager.module.d.ts +6 -22
  50. package/lib/context-manager/context-permissions/context-permissions-binding.directive.d.ts +1 -1
  51. package/lib/context-manager/context-permissions/context-permissions.component.d.ts +1 -1
  52. package/lib/context-manager/index.d.ts +7 -0
  53. package/lib/context-manager/shared/layer-context.directive.d.ts +1 -1
  54. package/lib/context-manager/shared/map-context.directive.d.ts +1 -1
  55. package/lib/context-map-button/bookmark-button/bookmark-button.component.d.ts +1 -1
  56. package/lib/context-map-button/bookmark-button/bookmark-dialog.component.d.ts +1 -1
  57. package/lib/context-map-button/context-map-button.module.d.ts +5 -18
  58. package/lib/context-map-button/index.d.ts +4 -0
  59. package/lib/context-map-button/poi-button/poi-button.component.d.ts +1 -1
  60. package/lib/context-map-button/poi-button/poi-dialog.component.d.ts +1 -1
  61. package/lib/context-map-button/user-button/user-button.component.d.ts +1 -1
  62. package/lib/context-map-button/user-button/user-dialog.component.d.ts +1 -1
  63. package/lib/context.module.d.ts +9 -9
  64. package/lib/share-map/index.d.ts +4 -0
  65. package/lib/share-map/share-map/share-map-api.component.d.ts +1 -1
  66. package/lib/share-map/share-map/share-map-url.component.d.ts +1 -1
  67. package/lib/share-map/share-map/share-map.component.d.ts +1 -1
  68. package/lib/share-map/share-map.module.d.ts +4 -11
  69. package/lib/sidenav/sidenav.component.d.ts +1 -1
  70. package/lib/sidenav/sidenav.module.d.ts +4 -10
  71. package/package.json +13 -13
@@ -1,12 +1,14 @@
1
+ import { NgIf } from '@angular/common';
1
2
  import { Component, Input } from '@angular/core';
3
+ import { MatTabsModule } from '@angular/material/tabs';
2
4
  import { ConfigService } from '@igo2/core';
5
+ import { TranslateModule } from '@ngx-translate/core';
6
+ import { ShareMapApiComponent } from './share-map-api.component';
7
+ import { ShareMapUrlComponent } from './share-map-url.component';
3
8
  import * as i0 from "@angular/core";
4
9
  import * as i1 from "@igo2/core";
5
- import * as i2 from "@angular/common";
6
- import * as i3 from "@angular/material/tabs";
7
- import * as i4 from "./share-map-url.component";
8
- import * as i5 from "./share-map-api.component";
9
- import * as i6 from "@ngx-translate/core";
10
+ import * as i2 from "@angular/material/tabs";
11
+ import * as i3 from "@ngx-translate/core";
10
12
  export class ShareMapComponent {
11
13
  config;
12
14
  map;
@@ -15,13 +17,19 @@ export class ShareMapComponent {
15
17
  this.config = config;
16
18
  this.hasApi = this.config.getConfig('context.url') ? true : false;
17
19
  }
18
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ShareMapComponent, deps: [{ token: i1.ConfigService }], target: i0.ɵɵFactoryTarget.Component });
19
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ShareMapComponent, selector: "igo-share-map", inputs: { map: "map" }, ngImport: i0, template: "<mat-tab-group *ngIf=\"hasApi\">\n <mat-tab [label]=\"'igo.context.shareMap.shareWithApi' | translate\">\n <igo-share-map-api [map]=\"map\"></igo-share-map-api>\n </mat-tab>\n <mat-tab [label]=\"'igo.context.shareMap.shareWithUrl' | translate\">\n <igo-share-map-url [map]=\"map\"></igo-share-map-url>\n </mat-tab>\n</mat-tab-group>\n\n<igo-share-map-url *ngIf=\"!hasApi\" [map]=\"map\"></igo-share-map-url>\n", styles: [""], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.MatTab, selector: "mat-tab", inputs: ["disabled"], exportAs: ["matTab"] }, { kind: "component", type: i3.MatTabGroup, selector: "mat-tab-group", inputs: ["color", "disableRipple", "fitInkBarToContent", "mat-stretch-tabs"], exportAs: ["matTabGroup"] }, { kind: "component", type: i4.ShareMapUrlComponent, selector: "igo-share-map-url", inputs: ["map"] }, { kind: "component", type: i5.ShareMapApiComponent, selector: "igo-share-map-api", inputs: ["map"] }, { kind: "pipe", type: i6.TranslatePipe, name: "translate" }] });
20
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: ShareMapComponent, deps: [{ token: i1.ConfigService }], target: i0.ɵɵFactoryTarget.Component });
21
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.1", type: ShareMapComponent, isStandalone: true, selector: "igo-share-map", inputs: { map: "map" }, ngImport: i0, template: "<mat-tab-group *ngIf=\"hasApi\">\n <mat-tab [label]=\"'igo.context.shareMap.shareWithApi' | translate\">\n <igo-share-map-api [map]=\"map\"></igo-share-map-api>\n </mat-tab>\n <mat-tab [label]=\"'igo.context.shareMap.shareWithUrl' | translate\">\n <igo-share-map-url [map]=\"map\"></igo-share-map-url>\n </mat-tab>\n</mat-tab-group>\n\n<igo-share-map-url *ngIf=\"!hasApi\" [map]=\"map\"></igo-share-map-url>\n", styles: [""], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatTabsModule }, { kind: "component", type: i2.MatTab, selector: "mat-tab", inputs: ["disabled", "label", "aria-label", "aria-labelledby", "labelClass", "bodyClass"], exportAs: ["matTab"] }, { kind: "component", type: i2.MatTabGroup, selector: "mat-tab-group", inputs: ["color", "fitInkBarToContent", "mat-stretch-tabs", "dynamicHeight", "selectedIndex", "headerPosition", "animationDuration", "contentTabIndex", "disablePagination", "disableRipple", "preserveContent", "backgroundColor"], outputs: ["selectedIndexChange", "focusChange", "animationDone", "selectedTabChange"], exportAs: ["matTabGroup"] }, { kind: "component", type: ShareMapApiComponent, selector: "igo-share-map-api", inputs: ["map"] }, { kind: "component", type: ShareMapUrlComponent, selector: "igo-share-map-url", inputs: ["map"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }] });
20
22
  }
21
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ShareMapComponent, decorators: [{
23
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: ShareMapComponent, decorators: [{
22
24
  type: Component,
23
- args: [{ selector: 'igo-share-map', template: "<mat-tab-group *ngIf=\"hasApi\">\n <mat-tab [label]=\"'igo.context.shareMap.shareWithApi' | translate\">\n <igo-share-map-api [map]=\"map\"></igo-share-map-api>\n </mat-tab>\n <mat-tab [label]=\"'igo.context.shareMap.shareWithUrl' | translate\">\n <igo-share-map-url [map]=\"map\"></igo-share-map-url>\n </mat-tab>\n</mat-tab-group>\n\n<igo-share-map-url *ngIf=\"!hasApi\" [map]=\"map\"></igo-share-map-url>\n" }]
24
- }], ctorParameters: function () { return [{ type: i1.ConfigService }]; }, propDecorators: { map: [{
25
+ args: [{ selector: 'igo-share-map', standalone: true, imports: [
26
+ NgIf,
27
+ MatTabsModule,
28
+ ShareMapApiComponent,
29
+ ShareMapUrlComponent,
30
+ TranslateModule
31
+ ], template: "<mat-tab-group *ngIf=\"hasApi\">\n <mat-tab [label]=\"'igo.context.shareMap.shareWithApi' | translate\">\n <igo-share-map-api [map]=\"map\"></igo-share-map-api>\n </mat-tab>\n <mat-tab [label]=\"'igo.context.shareMap.shareWithUrl' | translate\">\n <igo-share-map-url [map]=\"map\"></igo-share-map-url>\n </mat-tab>\n</mat-tab-group>\n\n<igo-share-map-url *ngIf=\"!hasApi\" [map]=\"map\"></igo-share-map-url>\n" }]
32
+ }], ctorParameters: () => [{ type: i1.ConfigService }], propDecorators: { map: [{
25
33
  type: Input
26
34
  }] } });
27
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hhcmUtbWFwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbnRleHQvc3JjL2xpYi9zaGFyZS1tYXAvc2hhcmUtbWFwL3NoYXJlLW1hcC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb250ZXh0L3NyYy9saWIvc2hhcmUtbWFwL3NoYXJlLW1hcC9zaGFyZS1tYXAuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFakQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLFlBQVksQ0FBQzs7Ozs7Ozs7QUFRM0MsTUFBTSxPQUFPLGlCQUFpQjtJQUtSO0lBSlgsR0FBRyxDQUFTO0lBRWQsTUFBTSxHQUFHLEtBQUssQ0FBQztJQUV0QixZQUFvQixNQUFxQjtRQUFyQixXQUFNLEdBQU4sTUFBTSxDQUFlO1FBQ3ZDLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO0lBQ3BFLENBQUM7d0dBUFUsaUJBQWlCOzRGQUFqQixpQkFBaUIsNkVDVjlCLHFhQVVBOzs0RkRBYSxpQkFBaUI7a0JBTDdCLFNBQVM7K0JBQ0UsZUFBZTtvR0FLaEIsR0FBRztzQkFBWCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuaW1wb3J0IHsgQ29uZmlnU2VydmljZSB9IGZyb20gJ0BpZ28yL2NvcmUnO1xyXG5pbXBvcnQgdHlwZSB7IElnb01hcCB9IGZyb20gJ0BpZ28yL2dlbyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2lnby1zaGFyZS1tYXAnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9zaGFyZS1tYXAuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3NoYXJlLW1hcC5jb21wb25lbnQuc2NzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTaGFyZU1hcENvbXBvbmVudCB7XHJcbiAgQElucHV0KCkgbWFwOiBJZ29NYXA7XHJcblxyXG4gIHB1YmxpYyBoYXNBcGkgPSBmYWxzZTtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBjb25maWc6IENvbmZpZ1NlcnZpY2UpIHtcclxuICAgIHRoaXMuaGFzQXBpID0gdGhpcy5jb25maWcuZ2V0Q29uZmlnKCdjb250ZXh0LnVybCcpID8gdHJ1ZSA6IGZhbHNlO1xyXG4gIH1cclxufVxyXG4iLCI8bWF0LXRhYi1ncm91cCAqbmdJZj1cImhhc0FwaVwiPlxuICA8bWF0LXRhYiBbbGFiZWxdPVwiJ2lnby5jb250ZXh0LnNoYXJlTWFwLnNoYXJlV2l0aEFwaScgfCB0cmFuc2xhdGVcIj5cbiAgICA8aWdvLXNoYXJlLW1hcC1hcGkgW21hcF09XCJtYXBcIj48L2lnby1zaGFyZS1tYXAtYXBpPlxuICA8L21hdC10YWI+XG4gIDxtYXQtdGFiIFtsYWJlbF09XCInaWdvLmNvbnRleHQuc2hhcmVNYXAuc2hhcmVXaXRoVXJsJyB8IHRyYW5zbGF0ZVwiPlxuICAgIDxpZ28tc2hhcmUtbWFwLXVybCBbbWFwXT1cIm1hcFwiPjwvaWdvLXNoYXJlLW1hcC11cmw+XG4gIDwvbWF0LXRhYj5cbjwvbWF0LXRhYi1ncm91cD5cblxuPGlnby1zaGFyZS1tYXAtdXJsICpuZ0lmPVwiIWhhc0FwaVwiIFttYXBdPVwibWFwXCI+PC9pZ28tc2hhcmUtbWFwLXVybD5cbiJdfQ==
35
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hhcmUtbWFwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbnRleHQvc3JjL2xpYi9zaGFyZS1tYXAvc2hhcmUtbWFwL3NoYXJlLW1hcC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb250ZXh0L3NyYy9saWIvc2hhcmUtbWFwL3NoYXJlLW1hcC9zaGFyZS1tYXAuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUV2RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBRzNDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUV0RCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNqRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQzs7Ozs7QUFlakUsTUFBTSxPQUFPLGlCQUFpQjtJQUtSO0lBSlgsR0FBRyxDQUFTO0lBRWQsTUFBTSxHQUFHLEtBQUssQ0FBQztJQUV0QixZQUFvQixNQUFxQjtRQUFyQixXQUFNLEdBQU4sTUFBTSxDQUFlO1FBQ3ZDLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO0lBQ3BFLENBQUM7dUdBUFUsaUJBQWlCOzJGQUFqQixpQkFBaUIsaUdDekI5QixxYUFVQSwwRERRSSxJQUFJLDRGQUNKLGFBQWEsNG1CQUNiLG9CQUFvQiwrRUFDcEIsb0JBQW9CLDhFQUNwQixlQUFlOzsyRkFHTixpQkFBaUI7a0JBYjdCLFNBQVM7K0JBQ0UsZUFBZSxjQUdiLElBQUksV0FDUDt3QkFDUCxJQUFJO3dCQUNKLGFBQWE7d0JBQ2Isb0JBQW9CO3dCQUNwQixvQkFBb0I7d0JBQ3BCLGVBQWU7cUJBQ2hCO2tGQUdRLEdBQUc7c0JBQVgsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nSWYgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE1hdFRhYnNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90YWJzJztcclxuXHJcbmltcG9ydCB7IENvbmZpZ1NlcnZpY2UgfSBmcm9tICdAaWdvMi9jb3JlJztcclxuaW1wb3J0IHR5cGUgeyBJZ29NYXAgfSBmcm9tICdAaWdvMi9nZW8nO1xyXG5cclxuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XHJcblxyXG5pbXBvcnQgeyBTaGFyZU1hcEFwaUNvbXBvbmVudCB9IGZyb20gJy4vc2hhcmUtbWFwLWFwaS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBTaGFyZU1hcFVybENvbXBvbmVudCB9IGZyb20gJy4vc2hhcmUtbWFwLXVybC5jb21wb25lbnQnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdpZ28tc2hhcmUtbWFwJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vc2hhcmUtbWFwLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9zaGFyZS1tYXAuY29tcG9uZW50LnNjc3MnXSxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIGltcG9ydHM6IFtcclxuICAgIE5nSWYsXHJcbiAgICBNYXRUYWJzTW9kdWxlLFxyXG4gICAgU2hhcmVNYXBBcGlDb21wb25lbnQsXHJcbiAgICBTaGFyZU1hcFVybENvbXBvbmVudCxcclxuICAgIFRyYW5zbGF0ZU1vZHVsZVxyXG4gIF1cclxufSlcclxuZXhwb3J0IGNsYXNzIFNoYXJlTWFwQ29tcG9uZW50IHtcclxuICBASW5wdXQoKSBtYXA6IElnb01hcDtcclxuXHJcbiAgcHVibGljIGhhc0FwaSA9IGZhbHNlO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNvbmZpZzogQ29uZmlnU2VydmljZSkge1xyXG4gICAgdGhpcy5oYXNBcGkgPSB0aGlzLmNvbmZpZy5nZXRDb25maWcoJ2NvbnRleHQudXJsJykgPyB0cnVlIDogZmFsc2U7XHJcbiAgfVxyXG59XHJcbiIsIjxtYXQtdGFiLWdyb3VwICpuZ0lmPVwiaGFzQXBpXCI+XG4gIDxtYXQtdGFiIFtsYWJlbF09XCInaWdvLmNvbnRleHQuc2hhcmVNYXAuc2hhcmVXaXRoQXBpJyB8IHRyYW5zbGF0ZVwiPlxuICAgIDxpZ28tc2hhcmUtbWFwLWFwaSBbbWFwXT1cIm1hcFwiPjwvaWdvLXNoYXJlLW1hcC1hcGk+XG4gIDwvbWF0LXRhYj5cbiAgPG1hdC10YWIgW2xhYmVsXT1cIidpZ28uY29udGV4dC5zaGFyZU1hcC5zaGFyZVdpdGhVcmwnIHwgdHJhbnNsYXRlXCI+XG4gICAgPGlnby1zaGFyZS1tYXAtdXJsIFttYXBdPVwibWFwXCI+PC9pZ28tc2hhcmUtbWFwLXVybD5cbiAgPC9tYXQtdGFiPlxuPC9tYXQtdGFiLWdyb3VwPlxuXG48aWdvLXNoYXJlLW1hcC11cmwgKm5nSWY9XCIhaGFzQXBpXCIgW21hcF09XCJtYXBcIj48L2lnby1zaGFyZS1tYXAtdXJsPlxuIl19
@@ -1,66 +1,26 @@
1
- import { CommonModule } from '@angular/common';
2
1
  import { NgModule } from '@angular/core';
3
- import { FormsModule, ReactiveFormsModule } from '@angular/forms';
4
- import { MatButtonModule } from '@angular/material/button';
5
- import { MatFormFieldModule } from '@angular/material/form-field';
6
- import { MatIconModule } from '@angular/material/icon';
7
- import { MatInputModule } from '@angular/material/input';
8
- import { MatTabsModule } from '@angular/material/tabs';
9
- import { MatTooltipModule } from '@angular/material/tooltip';
10
- import { IgoCustomHtmlModule } from '@igo2/common';
11
- import { IgoLanguageModule } from '@igo2/core';
12
2
  import { ShareMapApiComponent } from './share-map/share-map-api.component';
13
3
  import { ShareMapUrlComponent } from './share-map/share-map-url.component';
14
4
  import { ShareMapComponent } from './share-map/share-map.component';
15
5
  import * as i0 from "@angular/core";
6
+ /**
7
+ * @deprecated import the components/directives directly or SHARE_MAP_DIRECTIVES for the set
8
+ */
16
9
  export class IgoShareMapModule {
17
10
  static forRoot() {
18
11
  return {
19
12
  ngModule: IgoShareMapModule
20
13
  };
21
14
  }
22
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: IgoShareMapModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
23
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: IgoShareMapModule, declarations: [ShareMapComponent, ShareMapUrlComponent, ShareMapApiComponent], imports: [CommonModule,
24
- FormsModule,
25
- ReactiveFormsModule,
26
- MatIconModule,
27
- MatTooltipModule,
28
- MatTabsModule,
29
- MatFormFieldModule,
30
- MatInputModule,
31
- MatButtonModule,
32
- IgoLanguageModule,
33
- IgoCustomHtmlModule], exports: [ShareMapComponent, ShareMapUrlComponent, ShareMapApiComponent] });
34
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: IgoShareMapModule, imports: [CommonModule,
35
- FormsModule,
36
- ReactiveFormsModule,
37
- MatIconModule,
38
- MatTooltipModule,
39
- MatTabsModule,
40
- MatFormFieldModule,
41
- MatInputModule,
42
- MatButtonModule,
43
- IgoLanguageModule,
44
- IgoCustomHtmlModule] });
15
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: IgoShareMapModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
16
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.2.1", ngImport: i0, type: IgoShareMapModule, imports: [ShareMapComponent, ShareMapUrlComponent, ShareMapApiComponent], exports: [ShareMapComponent, ShareMapUrlComponent, ShareMapApiComponent] });
17
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: IgoShareMapModule, imports: [ShareMapComponent, ShareMapUrlComponent, ShareMapApiComponent] });
45
18
  }
46
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: IgoShareMapModule, decorators: [{
19
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: IgoShareMapModule, decorators: [{
47
20
  type: NgModule,
48
21
  args: [{
49
- imports: [
50
- CommonModule,
51
- FormsModule,
52
- ReactiveFormsModule,
53
- MatIconModule,
54
- MatTooltipModule,
55
- MatTabsModule,
56
- MatFormFieldModule,
57
- MatInputModule,
58
- MatButtonModule,
59
- IgoLanguageModule,
60
- IgoCustomHtmlModule
61
- ],
62
- exports: [ShareMapComponent, ShareMapUrlComponent, ShareMapApiComponent],
63
- declarations: [ShareMapComponent, ShareMapUrlComponent, ShareMapApiComponent]
22
+ imports: [ShareMapComponent, ShareMapUrlComponent, ShareMapApiComponent],
23
+ exports: [ShareMapComponent, ShareMapUrlComponent, ShareMapApiComponent]
64
24
  }]
65
25
  }] });
66
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hhcmUtbWFwLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbnRleHQvc3JjL2xpYi9zaGFyZS1tYXAvc2hhcmUtbWFwLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUF1QixRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDOUQsT0FBTyxFQUFFLFdBQVcsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUU3RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDbkQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sWUFBWSxDQUFDO0FBRS9DLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQzNFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQzNFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDOztBQW1CcEUsTUFBTSxPQUFPLGlCQUFpQjtJQUM1QixNQUFNLENBQUMsT0FBTztRQUNaLE9BQU87WUFDTCxRQUFRLEVBQUUsaUJBQWlCO1NBQzVCLENBQUM7SUFDSixDQUFDO3dHQUxVLGlCQUFpQjt5R0FBakIsaUJBQWlCLGlCQUZiLGlCQUFpQixFQUFFLG9CQUFvQixFQUFFLG9CQUFvQixhQWIxRSxZQUFZO1lBQ1osV0FBVztZQUNYLG1CQUFtQjtZQUNuQixhQUFhO1lBQ2IsZ0JBQWdCO1lBQ2hCLGFBQWE7WUFDYixrQkFBa0I7WUFDbEIsY0FBYztZQUNkLGVBQWU7WUFDZixpQkFBaUI7WUFDakIsbUJBQW1CLGFBRVgsaUJBQWlCLEVBQUUsb0JBQW9CLEVBQUUsb0JBQW9CO3lHQUc1RCxpQkFBaUIsWUFmMUIsWUFBWTtZQUNaLFdBQVc7WUFDWCxtQkFBbUI7WUFDbkIsYUFBYTtZQUNiLGdCQUFnQjtZQUNoQixhQUFhO1lBQ2Isa0JBQWtCO1lBQ2xCLGNBQWM7WUFDZCxlQUFlO1lBQ2YsaUJBQWlCO1lBQ2pCLG1CQUFtQjs7NEZBS1YsaUJBQWlCO2tCQWpCN0IsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUU7d0JBQ1AsWUFBWTt3QkFDWixXQUFXO3dCQUNYLG1CQUFtQjt3QkFDbkIsYUFBYTt3QkFDYixnQkFBZ0I7d0JBQ2hCLGFBQWE7d0JBQ2Isa0JBQWtCO3dCQUNsQixjQUFjO3dCQUNkLGVBQWU7d0JBQ2YsaUJBQWlCO3dCQUNqQixtQkFBbUI7cUJBQ3BCO29CQUNELE9BQU8sRUFBRSxDQUFDLGlCQUFpQixFQUFFLG9CQUFvQixFQUFFLG9CQUFvQixDQUFDO29CQUN4RSxZQUFZLEVBQUUsQ0FBQyxpQkFBaUIsRUFBRSxvQkFBb0IsRUFBRSxvQkFBb0IsQ0FBQztpQkFDOUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBNb2R1bGVXaXRoUHJvdmlkZXJzLCBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBGb3Jtc01vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgTWF0QnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcclxuaW1wb3J0IHsgTWF0Rm9ybUZpZWxkTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZm9ybS1maWVsZCc7XHJcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcclxuaW1wb3J0IHsgTWF0SW5wdXRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pbnB1dCc7XHJcbmltcG9ydCB7IE1hdFRhYnNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90YWJzJztcclxuaW1wb3J0IHsgTWF0VG9vbHRpcE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Rvb2x0aXAnO1xyXG5cclxuaW1wb3J0IHsgSWdvQ3VzdG9tSHRtbE1vZHVsZSB9IGZyb20gJ0BpZ28yL2NvbW1vbic7XHJcbmltcG9ydCB7IElnb0xhbmd1YWdlTW9kdWxlIH0gZnJvbSAnQGlnbzIvY29yZSc7XHJcblxyXG5pbXBvcnQgeyBTaGFyZU1hcEFwaUNvbXBvbmVudCB9IGZyb20gJy4vc2hhcmUtbWFwL3NoYXJlLW1hcC1hcGkuY29tcG9uZW50JztcclxuaW1wb3J0IHsgU2hhcmVNYXBVcmxDb21wb25lbnQgfSBmcm9tICcuL3NoYXJlLW1hcC9zaGFyZS1tYXAtdXJsLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFNoYXJlTWFwQ29tcG9uZW50IH0gZnJvbSAnLi9zaGFyZS1tYXAvc2hhcmUtbWFwLmNvbXBvbmVudCc7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gIGltcG9ydHM6IFtcclxuICAgIENvbW1vbk1vZHVsZSxcclxuICAgIEZvcm1zTW9kdWxlLFxyXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcclxuICAgIE1hdEljb25Nb2R1bGUsXHJcbiAgICBNYXRUb29sdGlwTW9kdWxlLFxyXG4gICAgTWF0VGFic01vZHVsZSxcclxuICAgIE1hdEZvcm1GaWVsZE1vZHVsZSxcclxuICAgIE1hdElucHV0TW9kdWxlLFxyXG4gICAgTWF0QnV0dG9uTW9kdWxlLFxyXG4gICAgSWdvTGFuZ3VhZ2VNb2R1bGUsXHJcbiAgICBJZ29DdXN0b21IdG1sTW9kdWxlXHJcbiAgXSxcclxuICBleHBvcnRzOiBbU2hhcmVNYXBDb21wb25lbnQsIFNoYXJlTWFwVXJsQ29tcG9uZW50LCBTaGFyZU1hcEFwaUNvbXBvbmVudF0sXHJcbiAgZGVjbGFyYXRpb25zOiBbU2hhcmVNYXBDb21wb25lbnQsIFNoYXJlTWFwVXJsQ29tcG9uZW50LCBTaGFyZU1hcEFwaUNvbXBvbmVudF1cclxufSlcclxuZXhwb3J0IGNsYXNzIElnb1NoYXJlTWFwTW9kdWxlIHtcclxuICBzdGF0aWMgZm9yUm9vdCgpOiBNb2R1bGVXaXRoUHJvdmlkZXJzPElnb1NoYXJlTWFwTW9kdWxlPiB7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICBuZ01vZHVsZTogSWdvU2hhcmVNYXBNb2R1bGVcclxuICAgIH07XHJcbiAgfVxyXG59XHJcbiJdfQ==
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hhcmUtbWFwLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbnRleHQvc3JjL2xpYi9zaGFyZS1tYXAvc2hhcmUtbWFwLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQXVCLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUU5RCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUMzRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUMzRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQzs7QUFFcEU7O0dBRUc7QUFLSCxNQUFNLE9BQU8saUJBQWlCO0lBQzVCLE1BQU0sQ0FBQyxPQUFPO1FBQ1osT0FBTztZQUNMLFFBQVEsRUFBRSxpQkFBaUI7U0FDNUIsQ0FBQztJQUNKLENBQUM7dUdBTFUsaUJBQWlCO3dHQUFqQixpQkFBaUIsWUFIbEIsaUJBQWlCLEVBQUUsb0JBQW9CLEVBQUUsb0JBQW9CLGFBQzdELGlCQUFpQixFQUFFLG9CQUFvQixFQUFFLG9CQUFvQjt3R0FFNUQsaUJBQWlCLFlBSGxCLGlCQUFpQixFQUFFLG9CQUFvQixFQUFFLG9CQUFvQjs7MkZBRzVELGlCQUFpQjtrQkFKN0IsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUUsQ0FBQyxpQkFBaUIsRUFBRSxvQkFBb0IsRUFBRSxvQkFBb0IsQ0FBQztvQkFDeEUsT0FBTyxFQUFFLENBQUMsaUJBQWlCLEVBQUUsb0JBQW9CLEVBQUUsb0JBQW9CLENBQUM7aUJBQ3pFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTW9kdWxlV2l0aFByb3ZpZGVycywgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbmltcG9ydCB7IFNoYXJlTWFwQXBpQ29tcG9uZW50IH0gZnJvbSAnLi9zaGFyZS1tYXAvc2hhcmUtbWFwLWFwaS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBTaGFyZU1hcFVybENvbXBvbmVudCB9IGZyb20gJy4vc2hhcmUtbWFwL3NoYXJlLW1hcC11cmwuY29tcG9uZW50JztcclxuaW1wb3J0IHsgU2hhcmVNYXBDb21wb25lbnQgfSBmcm9tICcuL3NoYXJlLW1hcC9zaGFyZS1tYXAuY29tcG9uZW50JztcclxuXHJcbi8qKlxyXG4gKiBAZGVwcmVjYXRlZCBpbXBvcnQgdGhlIGNvbXBvbmVudHMvZGlyZWN0aXZlcyBkaXJlY3RseSBvciBTSEFSRV9NQVBfRElSRUNUSVZFUyBmb3IgdGhlIHNldFxyXG4gKi9cclxuQE5nTW9kdWxlKHtcclxuICBpbXBvcnRzOiBbU2hhcmVNYXBDb21wb25lbnQsIFNoYXJlTWFwVXJsQ29tcG9uZW50LCBTaGFyZU1hcEFwaUNvbXBvbmVudF0sXHJcbiAgZXhwb3J0czogW1NoYXJlTWFwQ29tcG9uZW50LCBTaGFyZU1hcFVybENvbXBvbmVudCwgU2hhcmVNYXBBcGlDb21wb25lbnRdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBJZ29TaGFyZU1hcE1vZHVsZSB7XHJcbiAgc3RhdGljIGZvclJvb3QoKTogTW9kdWxlV2l0aFByb3ZpZGVyczxJZ29TaGFyZU1hcE1vZHVsZT4ge1xyXG4gICAgcmV0dXJuIHtcclxuICAgICAgbmdNb2R1bGU6IElnb1NoYXJlTWFwTW9kdWxlXHJcbiAgICB9O1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -207,15 +207,15 @@ export class ShareMapService {
207
207
  }
208
208
  return addedLayersQueryParams;
209
209
  }
210
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ShareMapService, deps: [{ token: i1.ContextService }, { token: i2.RouteService, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
211
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ShareMapService, providedIn: 'root' });
210
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: ShareMapService, deps: [{ token: i1.ContextService }, { token: i2.RouteService, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
211
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: ShareMapService, providedIn: 'root' });
212
212
  }
213
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ShareMapService, decorators: [{
213
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: ShareMapService, decorators: [{
214
214
  type: Injectable,
215
215
  args: [{
216
216
  providedIn: 'root'
217
217
  }]
218
- }], ctorParameters: function () { return [{ type: i1.ContextService }, { type: i2.RouteService, decorators: [{
218
+ }], ctorParameters: () => [{ type: i1.ContextService }, { type: i2.RouteService, decorators: [{
219
219
  type: Optional
220
- }] }]; } });
221
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hhcmUtbWFwLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb250ZXh0L3NyYy9saWIvc2hhcmUtbWFwL3NoYXJlZC9zaGFyZS1tYXAuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVyRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBSzFDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQzs7OztBQUs5RSxNQUFNLE9BQU8sZUFBZTtJQUloQjtJQUNZO0lBSmQsUUFBUSxHQUFHLEVBQUUsQ0FBQztJQUV0QixZQUNVLGNBQThCLEVBQ2xCLEtBQW1CO1FBRC9CLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQUNsQixVQUFLLEdBQUwsS0FBSyxDQUFjO1FBRXZDLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFO1lBQzFDLElBQUksTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFO2dCQUNsQixJQUFJLENBQUMsUUFBUSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQzthQUNoQztRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELGFBQWEsQ0FBQyxVQUFVO1FBQ3RCLE9BQU8sSUFBSSxDQUFDLFFBQVE7WUFDbEIsQ0FBQyxDQUFDLEdBQUcsUUFBUSxDQUFDLE1BQU0sR0FBRyxRQUFRLENBQUMsUUFBUSxZQUNwQyxVQUFVLENBQUMsR0FDYixTQUFTLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDMUIsQ0FBQyxDQUFDLEdBQUcsUUFBUSxDQUFDLE1BQU0sR0FBRyxRQUFRLENBQUMsUUFBUSxZQUFZLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQztJQUN6RSxDQUFDO0lBRUQsbUJBQW1C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LE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQztZQUN4RCxDQUFDLENBQUMsQ0FBQztZQUNILGtCQUFrQixHQUFHLGtCQUFrQixDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUM7Z0JBQ25ELENBQUMsQ0FBQyxrQkFBa0IsQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO2dCQUNqQyxDQUFDLENBQUMsa0JBQWtCLENBQUM7WUFDdkIsaUJBQWlCLEdBQUcsaUJBQWlCLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQztnQkFDakQsQ0FBQyxDQUFDLGlCQUFpQixDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7Z0JBQ2hDLENBQUMsQ0FBQyxpQkFBaUIsQ0FBQztZQUN0QixzQkFBc0IsR0FBRyxHQUFHLFVBQVUsSUFBSSxrQkFBa0IsSUFBSSxTQUFTLElBQUksaUJBQWlCLEVBQUUsQ0FBQztTQUNsRztRQUVELE9BQU8sc0JBQXNCLENBQUM7SUFDaEMsQ0FBQzt3R0F0UVUsZUFBZTs0R0FBZixlQUFlLGNBRmQsTUFBTTs7NEZBRVAsZUFBZTtrQkFIM0IsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkI7OzBCQU1JLFFBQVEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBPcHRpb25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBSb3V0ZVNlcnZpY2UgfSBmcm9tICdAaWdvMi9jb3JlJztcbmltcG9ydCB7IExheWVyLCBXTVNEYXRhU291cmNlT3B0aW9ucyB9IGZyb20gJ0BpZ28yL2dlbyc7XG5pbXBvcnQgdHlwZSB7IElnb01hcCB9IGZyb20gJ0BpZ28yL2dlbyc7XG5cbmltcG9ydCB7IERldGFpbGVkQ29udGV4dCB9IGZyb20gJy4uLy4uL2NvbnRleHQtbWFuYWdlci9zaGFyZWQvY29udGV4dC5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgQ29udGV4dFNlcnZpY2UgfSBmcm9tICcuLi8uLi9jb250ZXh0LW1hbmFnZXIvc2hhcmVkL2NvbnRleHQuc2VydmljZSc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIFNoYXJlTWFwU2VydmljZSB7XG4gIHByaXZhdGUgbGFuZ3VhZ2UgPSAnJztcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGNvbnRleHRTZXJ2aWNlOiBDb250ZXh0U2VydmljZSxcbiAgICBAT3B0aW9uYWwoKSBwcml2YXRlIHJvdXRlOiBSb3V0ZVNlcnZpY2VcbiAgKSB7XG4gICAgdGhpcy5yb3V0ZS5xdWVyeVBhcmFtcy5zdWJzY3JpYmUoKHBhcmFtcykgPT4ge1xuICAgICAgaWYgKHBhcmFtc1snbGFuZyddKSB7XG4gICAgICAgIHRoaXMubGFuZ3VhZ2UgPSBwYXJhbXNbJ2xhbmcnXTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIGdldFVybFdpdGhBcGkoZm9ybVZhbHVlcykge1xuICAgIHJldHVybiB0aGlzLmxhbmd1YWdlXG4gICAgICA/IGAke2xvY2F0aW9uLm9yaWdpbiArIGxvY2F0aW9uLnBhdGhuYW1lfT9jb250ZXh0PSR7XG4gICAgICAgICAgZm9ybVZhbHVlcy51cmlcbiAgICAgICAgfSZsYW5nPSR7dGhpcy5sYW5ndWFnZX1gXG4gICAgICA6IGAke2xvY2F0aW9uLm9yaWdpbiArIGxvY2F0aW9uLnBhdGhuYW1lfT9jb250ZXh0PSR7Zm9ybVZhbHVlcy51cml9YDtcbiAgfVxuXG4gIGNyZWF0ZUNvbnRleHRTaGFyZWQobWFwOiBJZ29NYXAsIGZvcm1WYWx1ZXMpIHtcbiAgICBjb25zdCBjb250ZXh0ID0gdGhpcy5jb250ZXh0U2VydmljZS5nZXRDb250ZXh0RnJvbU1hcChtYXApO1xuICAgIGNvbnRleHQuc2NvcGUgPSAncHVibGljJztcbiAgICBjb250ZXh0LnRpdGxlID0gZm9ybVZhbHVlcy50aXRsZTtcbiAgICBjb250ZXh0LnVyaSA9IGZvcm1WYWx1ZXMudXJpO1xuICAgIHJldHVybiB0aGlzLmNvbnRleHRTZXJ2aWNlLmNyZWF0ZShjb250ZXh0KTtcbiAgfVxuXG4gIHVwZGF0ZUNvbnRleHRTaGFyZWQobWFwOiBJZ29NYXAsIGZvcm1WYWx1ZXMsIGlkOiBzdHJpbmcpIHtcbiAgICBjb25zdCBjb250ZXh0ID0gdGhpcy5jb250ZXh0U2VydmljZS5nZXRDb250ZXh0RnJvbU1hcChtYXApO1xuICAgIHJldHVybiB0aGlzLmNvbnRleHRTZXJ2aWNlLnVwZGF0ZShpZCwge1xuICAgICAgdGl0bGU6IGZvcm1WYWx1ZXMudGl0bGUsXG4gICAgICBtYXA6IGNvbnRleHQubWFwXG4gICAgfSBhcyBEZXRhaWxlZENvbnRleHQpO1xuICB9XG5cbiAgZ2V0VXJsV2l0aG91dEFwaShtYXA6IElnb01hcCwgcHVibGljU2hhcmVPcHRpb24pIHtcbiAgICBpZiAoXG4gICAgICAhdGhpcy5yb3V0ZSB8fFxuICAgICAgIXRoaXMucm91dGUub3B0aW9ucy52aXNpYmxlT25MYXllcnNLZXkgfHxcbiAgICAgICF0aGlzLnJvdXRlLm9wdGlvbnMudmlzaWJsZU9mZkxheWVyc0tleSB8fFxuICAgICAgIW1hcC52aWV3Q29udHJvbGxlci5nZXRab29tKClcbiAgICApIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgY29uc3QgbGxjID0gcHVibGljU2hhcmVPcHRpb24ubGF5ZXJsaXN0Q29udHJvbHMucXVlcnlzdHJpbmc7XG5cbiAgICBsZXQgdmlzaWJsZUtleSA9IHRoaXMucm91dGUub3B0aW9ucy52aXNpYmxlT25MYXllcnNLZXk7XG4gICAgbGV0IGludmlzaWJsZUtleSA9IHRoaXMucm91dGUub3B0aW9ucy52aXNpYmxlT2ZmTGF5ZXJzS2V5O1xuICAgIGNvbnN0IGxheWVycyA9IG1hcC5sYXllcnM7XG5cbiAgICBjb25zdCB2aXNpYmxlTGF5ZXJzID0gbGF5ZXJzLmZpbHRlcihcbiAgICAgIChsYXkpID0+IGxheS52aXNpYmxlICYmICFsYXkuaXNJZ29JbnRlcm5hbExheWVyXG4gICAgKTtcbiAgICBjb25zdCBpbnZpc2libGVMYXllcnMgPSBsYXllcnMuZmlsdGVyKFxuICAgICAgKGxheSkgPT4gIWxheS52aXNpYmxlICYmICFsYXkuaXNJZ29JbnRlcm5hbExheWVyXG4gICAgKTtcblxuICAgIGlmICh2aXNpYmxlTGF5ZXJzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgdmlzaWJsZUtleSA9ICcnO1xuICAgIH1cbiAgICBpZiAoaW52aXNpYmxlTGF5ZXJzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgaW52aXNpYmxlS2V5ID0gJyc7XG4gICAgfVxuXG4gICAgbGV0IGxheWVyc1VybCA9ICcnO1xuICAgIGxldCBsYXllcnNUb0xvb3AgPSBbXTtcbiAgICBpZiAodmlzaWJsZUxheWVycy5sZW5ndGggPiBpbnZpc2libGVMYXllcnMubGVuZ3RoKSB7XG4gICAgICBsYXllcnNVcmwgPSBgJHt2aXNpYmxlS2V5fT0qJiR7aW52aXNpYmxlS2V5fT1gO1xuICAgICAgbGF5ZXJzVG9Mb29wID0gaW52aXNpYmxlTGF5ZXJzO1xuICAgIH0gZWxzZSB7XG4gICAgICBsYXllcnNVcmwgPSBgJHtpbnZpc2libGVLZXl9PSomJHt2aXNpYmxlS2V5fT1gO1xuICAgICAgbGF5ZXJzVG9Mb29wID0gdmlzaWJsZUxheWVycztcbiAgICB9XG5cbiAgICBmb3IgKGNvbnN0IGxheWVyIG9mIGxheWVyc1RvTG9vcCkge1xuICAgICAgaWYgKGxheWVyLmlkKSB7XG4gICAgICAgIGxheWVyc1VybCArPSBsYXllci5pZCArICcsJztcbiAgICAgIH1cbiAgICB9XG4gICAgY29uc3QgY29udGV4dExheWVyc0lEID0gW107XG4gICAgY29uc3QgY29udGV4dExheWVycyA9IHRoaXMuY29udGV4dFNlcnZpY2UuY29udGV4dCQudmFsdWUubGF5ZXJzO1xuICAgIGZvciAoY29uc3QgY29udGV4dExheWVyIG9mIGNvbnRleHRMYXllcnMpIHtcbiAgICAgIGlmIChcbiAgICAgICAgdHlwZW9mIGNvbnRleHRMYXllci5pZCAhPT0gJ3VuZGVmaW5lZCcgfHxcbiAgICAgICAgdHlwZW9mIGNvbnRleHRMYXllci5zb3VyY2UgIT09ICd1bmRlZmluZWQnXG4gICAgICApIHtcbiAgICAgICAgY29udGV4dExheWVyc0lELnB1c2goY29udGV4dExheWVyLmlkIHx8IGNvbnRleHRMYXllci5zb3VyY2UuaWQpO1xuICAgICAgfVxuICAgIH1cblxuICAgIGNvbnN0IGFkZGVkTGF5ZXJzUXVlcnlQYXJhbXNXbXMgPSB0aGlzLm1ha2VMYXllcnNCeVNlcnZpY2UoXG4gICAgICBsYXllcnMsXG4gICAgICBjb250ZXh0TGF5ZXJzSUQsXG4gICAgICAnd21zJ1xuICAgICk7XG4gICAgY29uc3QgYWRkZWRMYXllcnNRdWVyeVBhcmFtc1dtdHMgPSB0aGlzLm1ha2VMYXllcnNCeVNlcnZpY2UoXG4gICAgICBsYXllcnMsXG4gICAgICBjb250ZXh0TGF5ZXJzSUQsXG4gICAgICAnd210cydcbiAgICApO1xuICAgIGNvbnN0IGFkZGVkTGF5ZXJzUXVlcnlQYXJhbXNBcmNnaXNSZXN0ID0gdGhpcy5tYWtlTGF5ZXJzQnlTZXJ2aWNlKFxuICAgICAgbGF5ZXJzLFxuICAgICAgY29udGV4dExheWVyc0lELFxuICAgICAgJ2FyY2dpc3Jlc3QnXG4gICAgKTtcbiAgICBjb25zdCBhZGRlZExheWVyc1F1ZXJ5UGFyYW1zSW1hZ2VBcmNnaXNSZXN0ID0gdGhpcy5tYWtlTGF5ZXJzQnlTZXJ2aWNlKFxuICAgICAgbGF5ZXJzLFxuICAgICAgY29udGV4dExheWVyc0lELFxuICAgICAgJ2ltYWdlYXJjZ2lzcmVzdCdcbiAgICApO1xuICAgIGNvbnN0IGFkZGVkTGF5ZXJzUXVlcnlQYXJhbXNUaWxlQXJjZ2lzUmVzdCA9IHRoaXMubWFrZUxheWVyc0J5U2VydmljZShcbiAgICAgIGxheWVycyxcbiAgICAgIGNvbnRleHRMYXllcnNJRCxcbiAgICAgICd0aWxlYXJjZ2lzcmVzdCdcbiAgICApO1xuXG4gICAgbGF5ZXJzVXJsID0gbGF5ZXJzVXJsLnN1YnN0cigwLCBsYXllcnNVcmwubGVuZ3RoIC0gMSk7XG5cbiAgICBjb25zdCB6b29tS2V5ID0gdGhpcy5yb3V0ZS5vcHRpb25zLnpvb21LZXk7XG4gICAgY29uc3QgY2VudGVyS2V5ID0gdGhpcy5yb3V0ZS5vcHRpb25zLmNlbnRlcktleTtcbiAgICBjb25zdCBjb250ZXh0S2V5ID0gdGhpcy5yb3V0ZS5vcHRpb25zLmNvbnRleHRLZXk7XG5cbiAgICBjb25zdCB6b29tID0gYCR7em9vbUtleX09JHttYXAudmlld0NvbnRyb2xsZXIuZ2V0Wm9vbSgpfWA7XG4gICAgY29uc3QgYXJyYXlDZW50ZXIgPSBtYXAudmlld0NvbnRyb2xsZXIuZ2V0Q2VudGVyKCdFUFNHOjQzMjYnKSB8fCBbXTtcbiAgICBjb25zdCBsb25nID0gYXJyYXlDZW50ZXJbMF0udG9GaXhlZCg1KS5yZXBsYWNlKC9cXC4oW14wXSspMCskLywgJy4kMScpO1xuICAgIGNvbnN0IGxhdCA9IGFycmF5Q2VudGVyWzFdLnRvRml4ZWQoNSkucmVwbGFjZSgvXFwuKFteMF0rKTArJC8sICcuJDEnKTtcbiAgICBjb25zdCBjZW50ZXIgPSBgJHtjZW50ZXJLZXl9PSR7bG9uZ30sJHtsYXR9YC5yZXBsYWNlKC8uMDAwMDAvZywgJycpO1xuICAgIGxldCBjb250ZXh0ID0gJyc7XG4gICAgaWYgKHRoaXMuY29udGV4dFNlcnZpY2UuY29udGV4dCQudmFsdWUpIHtcbiAgICAgIGNvbnRleHQgPSBgJHtjb250ZXh0S2V5fT0ke3RoaXMuY29udGV4dFNlcnZpY2UuY29udGV4dCQudmFsdWUudXJpfWA7XG4gICAgfVxuXG4gICAgbGV0IHVybCA9IHRoaXMubGFuZ3VhZ2VcbiAgICAgID8gYCR7bG9jYXRpb24ub3JpZ2lufSR7bG9jYXRpb24ucGF0aG5hbWV9PyR7Y29udGV4dH0mJHt6b29tfSYke2NlbnRlcn0mJHtsYXllcnNVcmx9JiR7bGxjfSYke2FkZGVkTGF5ZXJzUXVlcnlQYXJhbXNXbXN9JiR7bGxjfSYke2FkZGVkTGF5ZXJzUXVlcnlQYXJhbXNXbXRzfSYke2FkZGVkTGF5ZXJzUXVlcnlQYXJhbXNBcmNnaXNSZXN0fSYke2FkZGVkTGF5ZXJzUXVlcnlQYXJhbXNJbWFnZUFyY2dpc1Jlc3R9JiR7YWRkZWRMYXllcnNRdWVyeVBhcmFtc1RpbGVBcmNnaXNSZXN0fSZsYW5nPSR7dGhpcy5sYW5ndWFnZX1gXG4gICAgICA6IGAke2xvY2F0aW9uLm9yaWdpbn0ke2xvY2F0aW9uLnBhdGhuYW1lfT8ke2NvbnRleHR9JiR7em9vbX0mJHtjZW50ZXJ9JiR7bGF5ZXJzVXJsfSYke2xsY30mJHthZGRlZExheWVyc1F1ZXJ5UGFyYW1zV21zfSYke2xsY30mJHthZGRlZExheWVyc1F1ZXJ5UGFyYW1zV210c30mJHthZGRlZExheWVyc1F1ZXJ5UGFyYW1zQXJjZ2lzUmVzdH0mJHthZGRlZExheWVyc1F1ZXJ5UGFyYW1zSW1hZ2VBcmNnaXNSZXN0fSYke2FkZGVkTGF5ZXJzUXVlcnlQYXJhbXNUaWxlQXJjZ2lzUmVzdH1gO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgNTsgaSsrKSB7XG4gICAgICB1cmwgPSB1cmwucmVwbGFjZSgvJiYvZywgJyYnKTtcbiAgICAgIHVybCA9IHVybC5lbmRzV2l0aCgnJicpID8gdXJsLnNsaWNlKDAsIC0xKSA6IHVybDtcbiAgICB9XG4gICAgdXJsID0gdXJsLmVuZHNXaXRoKCcmJykgPyB1cmwuc2xpY2UoMCwgLTEpIDogdXJsO1xuICAgIHVybCA9IHVybC5yZXBsYWNlKCc/JndtJywgJyZ3bScpO1xuICAgIHVybCA9IHVybC5yZXBsYWNlKCc/JicsICc/Jyk7XG5cbiAgICByZXR1cm4gdXJsO1xuICB9XG5cbiAgcHJpdmF0ZSBtYWtlTGF5ZXJzQnlTZXJ2aWNlKFxuICAgIGxheWVyczogTGF5ZXJbXSxcbiAgICBjb250ZXh0TGF5ZXJzSUQ6IGFueVtdLFxuICAgIHR5cGVTZXJ2aWNlOiBzdHJpbmdcbiAgKTogc3RyaW5nIHtcbiAgICBjb25zdCBhZGRlZExheWVyc0J5U2VydmljZSA9IFtdO1xuICAgIGZvciAoY29uc3QgbGF5ZXIgb2YgbGF5ZXJzLmZpbHRlcihcbiAgICAgIChsKSA9PiBsLmRhdGFTb3VyY2Uub3B0aW9ucz8udHlwZSA9PT0gdHlwZVNlcnZpY2VcbiAgICApKSB7XG4gICAgICBpZiAoY29udGV4dExheWVyc0lELmluZGV4T2YobGF5ZXIuaWQpID09PSAtMSkge1xuICAgICAgICBsZXQgbGlua1VybCA9IGVuY29kZVVSSUNvbXBvbmVudCgobGF5ZXIuZGF0YVNvdXJjZS5vcHRpb25zIGFzIGFueSkudXJsKTtcbiAgICAgICAgbGV0IGFkZGVkTGF5ZXIgPSAnJztcbiAgICAgICAgbGV0IGxheWVyVmVyc2lvbjogc3RyaW5nO1xuICAgICAgICBzd2l0Y2ggKGxheWVyLmRhdGFTb3VyY2Uub3B0aW9ucy50eXBlLnRvTG93ZXJDYXNlKCkpIHtcbiAgICAgICAgICBjYXNlICd3bXMnOlxuICAgICAgICAgICAgY29uc3QgZGF0YXNvdXJjZU9wdGlvbnMgPSBsYXllci5kYXRhU291cmNlXG4gICAgICAgICAgICAgIC5vcHRpb25zIGFzIFdNU0RhdGFTb3VyY2VPcHRpb25zO1xuICAgICAgICAgICAgYWRkZWRMYXllciA9IGVuY29kZVVSSUNvbXBvbmVudChkYXRhc291cmNlT3B0aW9ucy5wYXJhbXMuTEFZRVJTKTtcbiAgICAgICAgICAgIGxheWVyVmVyc2lvbiA9XG4gICAgICAgICAgICAgIGRhdGFzb3VyY2VPcHRpb25zLnBhcmFtcy5WRVJTSU9OID09PSAnMS4zLjAnXG4gICAgICAgICAgICAgICAgPyBsYXllclZlcnNpb25cbiAgICAgICAgICAgICAgICA6IGRhdGFzb3VyY2VPcHRpb25zLnBhcmFtcy5WRVJTSU9OO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgY2FzZSAnd210cyc6XG4gICAgICAgICAgY2FzZSAnYXJjZ2lzcmVzdCc6XG4gICAgICAgICAgY2FzZSAnaW1hZ2VhcmNnaXNyZXN0JzpcbiAgICAgICAgICBjYXNlICd0aWxlYXJjZ2lzcmVzdCc6XG4gICAgICAgICAgICBhZGRlZExheWVyID0gZW5jb2RlVVJJQ29tcG9uZW50KFxuICAgICAgICAgICAgICAobGF5ZXIuZGF0YVNvdXJjZS5vcHRpb25zIGFzIGFueSkubGF5ZXJcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBhZGRlZExheWVyUG9zaXRpb24gPSBgJHthZGRlZExheWVyfTppZ296JHtsYXllci56SW5kZXh9YDtcblxuICAgICAgICBsZXQgdmVyc2lvbiA9ICcnO1xuICAgICAgICBpZiAobGF5ZXJWZXJzaW9uKSB7XG4gICAgICAgICAgY29uc3Qgb3BlcmF0b3IgPVxuICAgICAgICAgICAgKGxheWVyLmRhdGFTb3VyY2Uub3B0aW9ucyBhcyBhbnkpLnVybC5pbmRleE9mKCc/JykgPT09IC0xXG4gICAgICAgICAgICAgID8gJz8nXG4gICAgICAgICAgICAgIDogJyYnO1xuICAgICAgICAgIHZlcnNpb24gPSBlbmNvZGVVUklDb21wb25lbnQoYCR7b3BlcmF0b3J9VkVSU0lPTj0ke2xheWVyVmVyc2lvbn1gKTtcbiAgICAgICAgfVxuICAgICAgICBsaW5rVXJsID0gYCR7bGlua1VybH0ke3ZlcnNpb259YDtcblxuICAgICAgICBpZiAoXG4gICAgICAgICAgIWFkZGVkTGF5ZXJzQnlTZXJ2aWNlLmZpbmQoKGRlZmluZWRVcmwpID0+IGRlZmluZWRVcmwudXJsID09PSBsaW5rVXJsKVxuICAgICAgICApIHtcbiAgICAgICAgICBhZGRlZExheWVyc0J5U2VydmljZS5wdXNoKHtcbiAgICAgICAgICAgIHVybDogbGlua1VybCxcbiAgICAgICAgICAgIGxheWVyczogW2FkZGVkTGF5ZXJQb3NpdGlvbl1cbiAgICAgICAgICB9KTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBhZGRlZExheWVyc0J5U2VydmljZS5mb3JFYWNoKChzZXJ2aWNlKSA9PiB7XG4gICAgICAgICAgICBpZiAoc2VydmljZS51cmwgPT09IGxpbmtVcmwpIHtcbiAgICAgICAgICAgICAgc2VydmljZS5sYXllcnMucHVzaChhZGRlZExheWVyUG9zaXRpb24pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgbGV0IGFkZGVkTGF5ZXJzUXVlcnlQYXJhbXMgPSAnJztcbiAgICBpZiAoYWRkZWRMYXllcnNCeVNlcnZpY2UubGVuZ3RoID49IDEpIHtcbiAgICAgIGxldCBsaW5rVXJsS2V5O1xuICAgICAgbGV0IGxheWVyc0tleTtcbiAgICAgIC8qXG4gICAgICBjb25zdCBsaW5rVXJsS2V5ID0gKHR5cGVTZXJ2aWNlID09PSAnd21zJykgPyB0aGlzLnJvdXRlLm9wdGlvbnMud21zVXJsS2V5IDpcbiAgICAgICAgKHR5cGVTZXJ2aWNlID09PSAnd210cycpID8gdGhpcy5yb3V0ZS5vcHRpb25zLndtdHNVcmxLZXkgOiAnJyA7XG4gICAgICBjb25zdCBsYXllcnNLZXkgPSAodHlwZVNlcnZpY2UgPT09ICd3bXMnKSA/IHRoaXMucm91dGUub3B0aW9ucy53bXNMYXllcnNLZXkgOlxuICAgICAgICAodHlwZVNlcnZpY2UgPT09ICd3bXRzJykgPyB0aGlzLnJvdXRlLm9wdGlvbnMud210c0xheWVyc0tleSA6ICcnIDtcbiovXG4gICAgICBzd2l0Y2ggKHR5cGVTZXJ2aWNlLnRvTG93ZXJDYXNlKCkpIHtcbiAgICAgICAgY2FzZSAnd21zJzpcbiAgICAgICAgICBsaW5rVXJsS2V5ID0gdGhpcy5yb3V0ZS5vcHRpb25zLndtc1VybEtleTtcbiAgICAgICAgICBsYXllcnNLZXkgPSB0aGlzLnJvdXRlLm9wdGlvbnMud21zTGF5ZXJzS2V5O1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlICd3bXRzJzpcbiAgICAgICAgICBsaW5rVXJsS2V5ID0gdGhpcy5yb3V0ZS5vcHRpb25zLndtdHNVcmxLZXk7XG4gICAgICAgICAgbGF5ZXJzS2V5ID0gdGhpcy5yb3V0ZS5vcHRpb25zLndtdHNMYXllcnNLZXk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgJ2FyY2dpc3Jlc3QnOlxuICAgICAgICAgIGxpbmtVcmxLZXkgPSB0aGlzLnJvdXRlLm9wdGlvbnMuYXJjZ2lzVXJsS2V5O1xuICAgICAgICAgIGxheWVyc0tleSA9IHRoaXMucm91dGUub3B0aW9ucy5hcmNnaXNMYXllcnNLZXk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgJ2ltYWdlYXJjZ2lzcmVzdCc6XG4gICAgICAgICAgbGlua1VybEtleSA9IHRoaXMucm91dGUub3B0aW9ucy5pYXJjZ2lzVXJsS2V5O1xuICAgICAgICAgIGxheWVyc0tleSA9IHRoaXMucm91dGUub3B0aW9ucy5pYXJjZ2lzTGF5ZXJzS2V5O1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlICd0aWxlYXJjZ2lzcmVzdCc6XG4gICAgICAgICAgbGlua1VybEtleSA9IHRoaXMucm91dGUub3B0aW9ucy50YXJjZ2lzVXJsS2V5O1xuICAgICAgICAgIGxheWVyc0tleSA9IHRoaXMucm91dGUub3B0aW9ucy50YXJjZ2lzTGF5ZXJzS2V5O1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgIGxpbmtVcmxLZXkgPSAnJztcbiAgICAgICAgICBsYXllcnNLZXkgPSAnJztcbiAgICAgIH1cblxuICAgICAgbGV0IGxpbmtVcmxRdWVyeVBhcmFtcyA9ICcnO1xuICAgICAgbGV0IGxheWVyc1F1ZXJ5UGFyYW1zID0gJyc7XG4gICAgICBhZGRlZExheWVyc0J5U2VydmljZS5mb3JFYWNoKChzZXJ2aWNlKSA9PiB7XG4gICAgICAgIGxpbmtVcmxRdWVyeVBhcmFtcyArPSBgJHtzZXJ2aWNlLnVybH0sYDtcbiAgICAgICAgbGF5ZXJzUXVlcnlQYXJhbXMgKz0gYCgke3NlcnZpY2UubGF5ZXJzLmpvaW4oJywnKX0pLGA7XG4gICAgICB9KTtcbiAgICAgIGxpbmtVcmxRdWVyeVBhcmFtcyA9IGxpbmtVcmxRdWVyeVBhcmFtcy5lbmRzV2l0aCgnLCcpXG4gICAgICAgID8gbGlua1VybFF1ZXJ5UGFyYW1zLnNsaWNlKDAsIC0xKVxuICAgICAgICA6IGxpbmtVcmxRdWVyeVBhcmFtcztcbiAgICAgIGxheWVyc1F1ZXJ5UGFyYW1zID0gbGF5ZXJzUXVlcnlQYXJhbXMuZW5kc1dpdGgoJywnKVxuICAgICAgICA/IGxheWVyc1F1ZXJ5UGFyYW1zLnNsaWNlKDAsIC0xKVxuICAgICAgICA6IGxheWVyc1F1ZXJ5UGFyYW1zO1xuICAgICAgYWRkZWRMYXllcnNRdWVyeVBhcmFtcyA9IGAke2xpbmtVcmxLZXl9PSR7bGlua1VybFF1ZXJ5UGFyYW1zfSYke2xheWVyc0tleX09JHtsYXllcnNRdWVyeVBhcmFtc31gO1xuICAgIH1cblxuICAgIHJldHVybiBhZGRlZExheWVyc1F1ZXJ5UGFyYW1zO1xuICB9XG59XG4iXX0=
220
+ }] }] });
221
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hhcmUtbWFwLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb250ZXh0L3NyYy9saWIvc2hhcmUtbWFwL3NoYXJlZC9zaGFyZS1tYXAuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVyRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBSzFDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQzs7OztBQUs5RSxNQUFNLE9BQU8sZUFBZTtJQUloQjtJQUNZO0lBSmQsUUFBUSxHQUFHLEVBQUUsQ0FBQztJQUV0QixZQUNVLGNBQThCLEVBQ2xCLEtBQW1CO1FBRC9CLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQUNsQixVQUFLLEdBQUwsS0FBSyxDQUFjO1FBRXZDLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFO1lBQzFDLElBQUksTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7Z0JBQ25CLElBQUksQ0FBQyxRQUFRLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQ2pDLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxhQUFhLENBQUMsVUFBVTtRQUN0QixPQUFPLElBQUksQ0FBQyxRQUFRO1lBQ2xCLENBQUMsQ0FBQyxHQUFHLFFBQVEsQ0FBQyxNQUFNLEdBQUcsUUFBUSxDQUFDLFFBQVEsWUFDcEMsVUFBVSxDQUFDLEdBQ2IsU0FBUyxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQzFCLENBQUMsQ0FBQyxHQUFHLFFBQVEsQ0FBQyxNQUFNLEdBQUcsUUFBUSxDQUFDLFFBQVEsWUFBWSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUM7SUFDekUsQ0FBQztJ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QUNuQixDQUFDO1lBRUQsSUFBSSxrQkFBa0IsR0FBRyxFQUFFLENBQUM7WUFDNUIsSUFBSSxpQkFBaUIsR0FBRyxFQUFFLENBQUM7WUFDM0Isb0JBQW9CLENBQUMsT0FBTyxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUU7Z0JBQ3ZDLGtCQUFrQixJQUFJLEdBQUcsT0FBTyxDQUFDLEdBQUcsR0FBRyxDQUFDO2dCQUN4QyxpQkFBaUIsSUFBSSxJQUFJLE9BQU8sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUM7WUFDeEQsQ0FBQyxDQUFDLENBQUM7WUFDSCxrQkFBa0IsR0FBRyxrQkFBa0IsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDO2dCQUNuRCxDQUFDLENBQUMsa0JBQWtCLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztnQkFDakMsQ0FBQyxDQUFDLGtCQUFrQixDQUFDO1lBQ3ZCLGlCQUFpQixHQUFHLGlCQUFpQixDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUM7Z0JBQ2pELENBQUMsQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO2dCQUNoQyxDQUFDLENBQUMsaUJBQWlCLENBQUM7WUFDdEIsc0JBQXNCLEdBQUcsR0FBRyxVQUFVLElBQUksa0JBQWtCLElBQUksU0FBUyxJQUFJLGlCQUFpQixFQUFFLENBQUM7UUFDbkcsQ0FBQztRQUVELE9BQU8sc0JBQXNCLENBQUM7SUFDaEMsQ0FBQzt1R0F0UVUsZUFBZTsyR0FBZixlQUFlLGNBRmQsTUFBTTs7MkZBRVAsZUFBZTtrQkFIM0IsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkI7OzBCQU1JLFFBQVEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBPcHRpb25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuaW1wb3J0IHsgUm91dGVTZXJ2aWNlIH0gZnJvbSAnQGlnbzIvY29yZSc7XHJcbmltcG9ydCB7IExheWVyLCBXTVNEYXRhU291cmNlT3B0aW9ucyB9IGZyb20gJ0BpZ28yL2dlbyc7XHJcbmltcG9ydCB0eXBlIHsgSWdvTWFwIH0gZnJvbSAnQGlnbzIvZ2VvJztcclxuXHJcbmltcG9ydCB7IERldGFpbGVkQ29udGV4dCB9IGZyb20gJy4uLy4uL2NvbnRleHQtbWFuYWdlci9zaGFyZWQvY29udGV4dC5pbnRlcmZhY2UnO1xyXG5pbXBvcnQgeyBDb250ZXh0U2VydmljZSB9IGZyb20gJy4uLy4uL2NvbnRleHQtbWFuYWdlci9zaGFyZWQvY29udGV4dC5zZXJ2aWNlJztcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIFNoYXJlTWFwU2VydmljZSB7XHJcbiAgcHJpdmF0ZSBsYW5ndWFnZSA9ICcnO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgY29udGV4dFNlcnZpY2U6IENvbnRleHRTZXJ2aWNlLFxyXG4gICAgQE9wdGlvbmFsKCkgcHJpdmF0ZSByb3V0ZTogUm91dGVTZXJ2aWNlXHJcbiAgKSB7XHJcbiAgICB0aGlzLnJvdXRlLnF1ZXJ5UGFyYW1zLnN1YnNjcmliZSgocGFyYW1zKSA9PiB7XHJcbiAgICAgIGlmIChwYXJhbXNbJ2xhbmcnXSkge1xyXG4gICAgICAgIHRoaXMubGFuZ3VhZ2UgPSBwYXJhbXNbJ2xhbmcnXTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBnZXRVcmxXaXRoQXBpKGZvcm1WYWx1ZXMpIHtcclxuICAgIHJldHVybiB0aGlzLmxhbmd1YWdlXHJcbiAgICAgID8gYCR7bG9jYXRpb24ub3JpZ2luICsgbG9jYXRpb24ucGF0aG5hbWV9P2NvbnRleHQ9JHtcclxuICAgICAgICAgIGZvcm1WYWx1ZXMudXJpXHJcbiAgICAgICAgfSZsYW5nPSR7dGhpcy5sYW5ndWFnZX1gXHJcbiAgICAgIDogYCR7bG9jYXRpb24ub3JpZ2luICsgbG9jYXRpb24ucGF0aG5hbWV9P2NvbnRleHQ9JHtmb3JtVmFsdWVzLnVyaX1gO1xyXG4gIH1cclxuXHJcbiAgY3JlYXRlQ29udGV4dFNoYXJlZChtYXA6IElnb01hcCwgZm9ybVZhbHVlcykge1xyXG4gICAgY29uc3QgY29udGV4dCA9IHRoaXMuY29udGV4dFNlcnZpY2UuZ2V0Q29udGV4dEZyb21NYXAobWFwKTtcclxuICAgIGNvbnRleHQuc2NvcGUgPSAncHVibGljJztcclxuICAgIGNvbnRleHQudGl0bGUgPSBmb3JtVmFsdWVzLnRpdGxlO1xyXG4gICAgY29udGV4dC51cmkgPSBmb3JtVmFsdWVzLnVyaTtcclxuICAgIHJldHVybiB0aGlzLmNvbnRleHRTZXJ2aWNlLmNyZWF0ZShjb250ZXh0KTtcclxuICB9XHJcblxyXG4gIHVwZGF0ZUNvbnRleHRTaGFyZWQobWFwOiBJZ29NYXAsIGZvcm1WYWx1ZXMsIGlkOiBzdHJpbmcpIHtcclxuICAgIGNvbnN0IGNvbnRleHQgPSB0aGlzLmNvbnRleHRTZXJ2aWNlLmdldENvbnRleHRGcm9tTWFwKG1hcCk7XHJcbiAgICByZXR1cm4gdGhpcy5jb250ZXh0U2VydmljZS51cGRhdGUoaWQsIHtcclxuICAgICAgdGl0bGU6IGZvcm1WYWx1ZXMudGl0bGUsXHJcbiAgICAgIG1hcDogY29udGV4dC5tYXBcclxuICAgIH0gYXMgRGV0YWlsZWRDb250ZXh0KTtcclxuICB9XHJcblxyXG4gIGdldFVybFdpdGhvdXRBcGkobWFwOiBJZ29NYXAsIHB1YmxpY1NoYXJlT3B0aW9uKSB7XHJcbiAgICBpZiAoXHJcbiAgICAgICF0aGlzLnJvdXRlIHx8XHJcbiAgICAgICF0aGlzLnJvdXRlLm9wdGlvbnMudmlzaWJsZU9uTGF5ZXJzS2V5IHx8XHJcbiAgICAgICF0aGlzLnJvdXRlLm9wdGlvbnMudmlzaWJsZU9mZkxheWVyc0tleSB8fFxyXG4gICAgICAhbWFwLnZpZXdDb250cm9sbGVyLmdldFpvb20oKVxyXG4gICAgKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIGNvbnN0IGxsYyA9IHB1YmxpY1NoYXJlT3B0aW9uLmxheWVybGlzdENvbnRyb2xzLnF1ZXJ5c3RyaW5nO1xyXG5cclxuICAgIGxldCB2aXNpYmxlS2V5ID0gdGhpcy5yb3V0ZS5vcHRpb25zLnZpc2libGVPbkxheWVyc0tleTtcclxuICAgIGxldCBpbnZpc2libGVLZXkgPSB0aGlzLnJvdXRlLm9wdGlvbnMudmlzaWJsZU9mZkxheWVyc0tleTtcclxuICAgIGNvbnN0IGxheWVycyA9IG1hcC5sYXllcnM7XHJcblxyXG4gICAgY29uc3QgdmlzaWJsZUxheWVycyA9IGxheWVycy5maWx0ZXIoXHJcbiAgICAgIChsYXkpID0+IGxheS52aXNpYmxlICYmICFsYXkuaXNJZ29JbnRlcm5hbExheWVyXHJcbiAgICApO1xyXG4gICAgY29uc3QgaW52aXNpYmxlTGF5ZXJzID0gbGF5ZXJzLmZpbHRlcihcclxuICAgICAgKGxheSkgPT4gIWxheS52aXNpYmxlICYmICFsYXkuaXNJZ29JbnRlcm5hbExheWVyXHJcbiAgICApO1xyXG5cclxuICAgIGlmICh2aXNpYmxlTGF5ZXJzLmxlbmd0aCA9PT0gMCkge1xyXG4gICAgICB2aXNpYmxlS2V5ID0gJyc7XHJcbiAgICB9XHJcbiAgICBpZiAoaW52aXNpYmxlTGF5ZXJzLmxlbmd0aCA9PT0gMCkge1xyXG4gICAgICBpbnZpc2libGVLZXkgPSAnJztcclxuICAgIH1cclxuXHJcbiAgICBsZXQgbGF5ZXJzVXJsID0gJyc7XHJcbiAgICBsZXQgbGF5ZXJzVG9Mb29wID0gW107XHJcbiAgICBpZiAodmlzaWJsZUxheWVycy5sZW5ndGggPiBpbnZpc2libGVMYXllcnMubGVuZ3RoKSB7XHJcbiAgICAgIGxheWVyc1VybCA9IGAke3Zpc2libGVLZXl9PSomJHtpbnZpc2libGVLZXl9PWA7XHJcbiAgICAgIGxheWVyc1RvTG9vcCA9IGludmlzaWJsZUxheWVycztcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGxheWVyc1VybCA9IGAke2ludmlzaWJsZUtleX09KiYke3Zpc2libGVLZXl9PWA7XHJcbiAgICAgIGxheWVyc1RvTG9vcCA9IHZpc2libGVMYXllcnM7XHJcbiAgICB9XHJcblxyXG4gICAgZm9yIChjb25zdCBsYXllciBvZiBsYXllcnNUb0xvb3ApIHtcclxuICAgICAgaWYgKGxheWVyLmlkKSB7XHJcbiAgICAgICAgbGF5ZXJzVXJsICs9IGxheWVyLmlkICsgJywnO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBjb25zdCBjb250ZXh0TGF5ZXJzSUQgPSBbXTtcclxuICAgIGNvbnN0IGNvbnRleHRMYXllcnMgPSB0aGlzLmNvbnRleHRTZXJ2aWNlLmNvbnRleHQkLnZhbHVlLmxheWVycztcclxuICAgIGZvciAoY29uc3QgY29udGV4dExheWVyIG9mIGNvbnRleHRMYXllcnMpIHtcclxuICAgICAgaWYgKFxyXG4gICAgICAgIHR5cGVvZiBjb250ZXh0TGF5ZXIuaWQgIT09ICd1bmRlZmluZWQnIHx8XHJcbiAgICAgICAgdHlwZW9mIGNvbnRleHRMYXllci5zb3VyY2UgIT09ICd1bmRlZmluZWQnXHJcbiAgICAgICkge1xyXG4gICAgICAgIGNvbnRleHRMYXllcnNJRC5wdXNoKGNvbnRleHRMYXllci5pZCB8fCBjb250ZXh0TGF5ZXIuc291cmNlLmlkKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IGFkZGVkTGF5ZXJzUXVlcnlQYXJhbXNXbXMgPSB0aGlzLm1ha2VMYXllcnNCeVNlcnZpY2UoXHJcbiAgICAgIGxheWVycyxcclxuICAgICAgY29udGV4dExheWVyc0lELFxyXG4gICAgICAnd21zJ1xyXG4gICAgKTtcclxuICAgIGNvbnN0IGFkZGVkTGF5ZXJzUXVlcnlQYXJhbXNXbXRzID0gdGhpcy5tYWtlTGF5ZXJzQnlTZXJ2aWNlKFxyXG4gICAgICBsYXllcnMsXHJcbiAgICAgIGNvbnRleHRMYXllcnNJRCxcclxuICAgICAgJ3dtdHMnXHJcbiAgICApO1xyXG4gICAgY29uc3QgYWRkZWRMYXllcnNRdWVyeVBhcmFtc0FyY2dpc1Jlc3QgPSB0aGlzLm1ha2VMYXllcnNCeVNlcnZpY2UoXHJcbiAgICAgIGxheWVycyxcclxuICAgICAgY29udGV4dExheWVyc0lELFxyXG4gICAgICAnYXJjZ2lzcmVzdCdcclxuICAgICk7XHJcbiAgICBjb25zdCBhZGRlZExheWVyc1F1ZXJ5UGFyYW1zSW1hZ2VBcmNnaXNSZXN0ID0gdGhpcy5tYWtlTGF5ZXJzQnlTZXJ2aWNlKFxyXG4gICAgICBsYXllcnMsXHJcbiAgICAgIGNvbnRleHRMYXllcnNJRCxcclxuICAgICAgJ2ltYWdlYXJjZ2lzcmVzdCdcclxuICAgICk7XHJcbiAgICBjb25zdCBhZGRlZExheWVyc1F1ZXJ5UGFyYW1zVGlsZUFyY2dpc1Jlc3QgPSB0aGlzLm1ha2VMYXllcnNCeVNlcnZpY2UoXHJcbiAgICAgIGxheWVycyxcclxuICAgICAgY29udGV4dExheWVyc0lELFxyXG4gICAgICAndGlsZWFyY2dpc3Jlc3QnXHJcbiAgICApO1xyXG5cclxuICAgIGxheWVyc1VybCA9IGxheWVyc1VybC5zdWJzdHIoMCwgbGF5ZXJzVXJsLmxlbmd0aCAtIDEpO1xyXG5cclxuICAgIGNvbnN0IHpvb21LZXkgPSB0aGlzLnJvdXRlLm9wdGlvbnMuem9vbUtleTtcclxuICAgIGNvbnN0IGNlbnRlcktleSA9IHRoaXMucm91dGUub3B0aW9ucy5jZW50ZXJLZXk7XHJcbiAgICBjb25zdCBjb250ZXh0S2V5ID0gdGhpcy5yb3V0ZS5vcHRpb25zLmNvbnRleHRLZXk7XHJcblxyXG4gICAgY29uc3Qgem9vbSA9IGAke3pvb21LZXl9PSR7bWFwLnZpZXdDb250cm9sbGVyLmdldFpvb20oKX1gO1xyXG4gICAgY29uc3QgYXJyYXlDZW50ZXIgPSBtYXAudmlld0NvbnRyb2xsZXIuZ2V0Q2VudGVyKCdFUFNHOjQzMjYnKSB8fCBbXTtcclxuICAgIGNvbnN0IGxvbmcgPSBhcnJheUNlbnRlclswXS50b0ZpeGVkKDUpLnJlcGxhY2UoL1xcLihbXjBdKykwKyQvLCAnLiQxJyk7XHJcbiAgICBjb25zdCBsYXQgPSBhcnJheUNlbnRlclsxXS50b0ZpeGVkKDUpLnJlcGxhY2UoL1xcLihbXjBdKykwKyQvLCAnLiQxJyk7XHJcbiAgICBjb25zdCBjZW50ZXIgPSBgJHtjZW50ZXJLZXl9PSR7bG9uZ30sJHtsYXR9YC5yZXBsYWNlKC8uMDAwMDAvZywgJycpO1xyXG4gICAgbGV0IGNvbnRleHQgPSAnJztcclxuICAgIGlmICh0aGlzLmNvbnRleHRTZXJ2aWNlLmNvbnRleHQkLnZhbHVlKSB7XHJcbiAgICAgIGNvbnRleHQgPSBgJHtjb250ZXh0S2V5fT0ke3RoaXMuY29udGV4dFNlcnZpY2UuY29udGV4dCQudmFsdWUudXJpfWA7XHJcbiAgICB9XHJcblxyXG4gICAgbGV0IHVybCA9IHRoaXMubGFuZ3VhZ2VcclxuICAgICAgPyBgJHtsb2NhdGlvbi5vcmlnaW59JHtsb2NhdGlvbi5wYXRobmFtZX0/JHtjb250ZXh0fSYke3pvb219JiR7Y2VudGVyfSYke2xheWVyc1VybH0mJHtsbGN9JiR7YWRkZWRMYXllcnNRdWVyeVBhcmFtc1dtc30mJHtsbGN9JiR7YWRkZWRMYXllcnNRdWVyeVBhcmFtc1dtdHN9JiR7YWRkZWRMYXllcnNRdWVyeVBhcmFtc0FyY2dpc1Jlc3R9JiR7YWRkZWRMYXllcnNRdWVyeVBhcmFtc0ltYWdlQXJjZ2lzUmVzdH0mJHthZGRlZExheWVyc1F1ZXJ5UGFyYW1zVGlsZUFyY2dpc1Jlc3R9Jmxhbmc9JHt0aGlzLmxhbmd1YWdlfWBcclxuICAgICAgOiBgJHtsb2NhdGlvbi5vcmlnaW59JHtsb2NhdGlvbi5wYXRobmFtZX0/JHtjb250ZXh0fSYke3pvb219JiR7Y2VudGVyfSYke2xheWVyc1VybH0mJHtsbGN9JiR7YWRkZWRMYXllcnNRdWVyeVBhcmFtc1dtc30mJHtsbGN9JiR7YWRkZWRMYXllcnNRdWVyeVBhcmFtc1dtdHN9JiR7YWRkZWRMYXllcnNRdWVyeVBhcmFtc0FyY2dpc1Jlc3R9JiR7YWRkZWRMYXllcnNRdWVyeVBhcmFtc0ltYWdlQXJjZ2lzUmVzdH0mJHthZGRlZExheWVyc1F1ZXJ5UGFyYW1zVGlsZUFyY2dpc1Jlc3R9YDtcclxuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgNTsgaSsrKSB7XHJcbiAgICAgIHVybCA9IHVybC5yZXBsYWNlKC8mJi9nLCAnJicpO1xyXG4gICAgICB1cmwgPSB1cmwuZW5kc1dpdGgoJyYnKSA/IHVybC5zbGljZSgwLCAtMSkgOiB1cmw7XHJcbiAgICB9XHJcbiAgICB1cmwgPSB1cmwuZW5kc1dpdGgoJyYnKSA/IHVybC5zbGljZSgwLCAtMSkgOiB1cmw7XHJcbiAgICB1cmwgPSB1cmwucmVwbGFjZSgnPyZ3bScsICcmd20nKTtcclxuICAgIHVybCA9IHVybC5yZXBsYWNlKCc/JicsICc/Jyk7XHJcblxyXG4gICAgcmV0dXJuIHVybDtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgbWFrZUxheWVyc0J5U2VydmljZShcclxuICAgIGxheWVyczogTGF5ZXJbXSxcclxuICAgIGNvbnRleHRMYXllcnNJRDogYW55W10sXHJcbiAgICB0eXBlU2VydmljZTogc3RyaW5nXHJcbiAgKTogc3RyaW5nIHtcclxuICAgIGNvbnN0IGFkZGVkTGF5ZXJzQnlTZXJ2aWNlID0gW107XHJcbiAgICBmb3IgKGNvbnN0IGxheWVyIG9mIGxheWVycy5maWx0ZXIoXHJcbiAgICAgIChsKSA9PiBsLmRhdGFTb3VyY2Uub3B0aW9ucz8udHlwZSA9PT0gdHlwZVNlcnZpY2VcclxuICAgICkpIHtcclxuICAgICAgaWYgKGNvbnRleHRMYXllcnNJRC5pbmRleE9mKGxheWVyLmlkKSA9PT0gLTEpIHtcclxuICAgICAgICBsZXQgbGlua1VybCA9IGVuY29kZVVSSUNvbXBvbmVudCgobGF5ZXIuZGF0YVNvdXJjZS5vcHRpb25zIGFzIGFueSkudXJsKTtcclxuICAgICAgICBsZXQgYWRkZWRMYXllciA9ICcnO1xyXG4gICAgICAgIGxldCBsYXllclZlcnNpb246IHN0cmluZztcclxuICAgICAgICBzd2l0Y2ggKGxheWVyLmRhdGFTb3VyY2Uub3B0aW9ucy50eXBlLnRvTG93ZXJDYXNlKCkpIHtcclxuICAgICAgICAgIGNhc2UgJ3dtcyc6XHJcbiAgICAgICAgICAgIGNvbnN0IGRhdGFzb3VyY2VPcHRpb25zID0gbGF5ZXIuZGF0YVNvdXJjZVxyXG4gICAgICAgICAgICAgIC5vcHRpb25zIGFzIFdNU0RhdGFTb3VyY2VPcHRpb25zO1xyXG4gICAgICAgICAgICBhZGRlZExheWVyID0gZW5jb2RlVVJJQ29tcG9uZW50KGRhdGFzb3VyY2VPcHRpb25zLnBhcmFtcy5MQVlFUlMpO1xyXG4gICAgICAgICAgICBsYXllclZlcnNpb24gPVxyXG4gICAgICAgICAgICAgIGRhdGFzb3VyY2VPcHRpb25zLnBhcmFtcy5WRVJTSU9OID09PSAnMS4zLjAnXHJcbiAgICAgICAgICAgICAgICA/IGxheWVyVmVyc2lvblxyXG4gICAgICAgICAgICAgICAgOiBkYXRhc291cmNlT3B0aW9ucy5wYXJhbXMuVkVSU0lPTjtcclxuICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICBjYXNlICd3bXRzJzpcclxuICAgICAgICAgIGNhc2UgJ2FyY2dpc3Jlc3QnOlxyXG4gICAgICAgICAgY2FzZSAnaW1hZ2VhcmNnaXNyZXN0JzpcclxuICAgICAgICAgIGNhc2UgJ3RpbGVhcmNnaXNyZXN0JzpcclxuICAgICAgICAgICAgYWRkZWRMYXllciA9IGVuY29kZVVSSUNvbXBvbmVudChcclxuICAgICAgICAgICAgICAobGF5ZXIuZGF0YVNvdXJjZS5vcHRpb25zIGFzIGFueSkubGF5ZXJcclxuICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGNvbnN0IGFkZGVkTGF5ZXJQb3NpdGlvbiA9IGAke2FkZGVkTGF5ZXJ9Omlnb3oke2xheWVyLnpJbmRleH1gO1xyXG5cclxuICAgICAgICBsZXQgdmVyc2lvbiA9ICcnO1xyXG4gICAgICAgIGlmIChsYXllclZlcnNpb24pIHtcclxuICAgICAgICAgIGNvbnN0IG9wZXJhdG9yID1cclxuICAgICAgICAgICAgKGxheWVyLmRhdGFTb3VyY2Uub3B0aW9ucyBhcyBhbnkpLnVybC5pbmRleE9mKCc/JykgPT09IC0xXHJcbiAgICAgICAgICAgICAgPyAnPydcclxuICAgICAgICAgICAgICA6ICcmJztcclxuICAgICAgICAgIHZlcnNpb24gPSBlbmNvZGVVUklDb21wb25lbnQoYCR7b3BlcmF0b3J9VkVSU0lPTj0ke2xheWVyVmVyc2lvbn1gKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgbGlua1VybCA9IGAke2xpbmtVcmx9JHt2ZXJzaW9ufWA7XHJcblxyXG4gICAgICAgIGlmIChcclxuICAgICAgICAgICFhZGRlZExheWVyc0J5U2VydmljZS5maW5kKChkZWZpbmVkVXJsKSA9PiBkZWZpbmVkVXJsLnVybCA9PT0gbGlua1VybClcclxuICAgICAgICApIHtcclxuICAgICAgICAgIGFkZGVkTGF5ZXJzQnlTZXJ2aWNlLnB1c2goe1xyXG4gICAgICAgICAgICB1cmw6IGxpbmtVcmwsXHJcbiAgICAgICAgICAgIGxheWVyczogW2FkZGVkTGF5ZXJQb3NpdGlvbl1cclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICBhZGRlZExheWVyc0J5U2VydmljZS5mb3JFYWNoKChzZXJ2aWNlKSA9PiB7XHJcbiAgICAgICAgICAgIGlmIChzZXJ2aWNlLnVybCA9PT0gbGlua1VybCkge1xyXG4gICAgICAgICAgICAgIHNlcnZpY2UubGF5ZXJzLnB1c2goYWRkZWRMYXllclBvc2l0aW9uKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgbGV0IGFkZGVkTGF5ZXJzUXVlcnlQYXJhbXMgPSAnJztcclxuICAgIGlmIChhZGRlZExheWVyc0J5U2VydmljZS5sZW5ndGggPj0gMSkge1xyXG4gICAgICBsZXQgbGlua1VybEtleTtcclxuICAgICAgbGV0IGxheWVyc0tleTtcclxuICAgICAgLypcclxuICAgICAgY29uc3QgbGlua1VybEtleSA9ICh0eXBlU2VydmljZSA9PT0gJ3dtcycpID8gdGhpcy5yb3V0ZS5vcHRpb25zLndtc1VybEtleSA6XHJcbiAgICAgICAgKHR5cGVTZXJ2aWNlID09PSAnd210cycpID8gdGhpcy5yb3V0ZS5vcHRpb25zLndtdHNVcmxLZXkgOiAnJyA7XHJcbiAgICAgIGNvbnN0IGxheWVyc0tleSA9ICh0eXBlU2VydmljZSA9PT0gJ3dtcycpID8gdGhpcy5yb3V0ZS5vcHRpb25zLndtc0xheWVyc0tleSA6XHJcbiAgICAgICAgKHR5cGVTZXJ2aWNlID09PSAnd210cycpID8gdGhpcy5yb3V0ZS5vcHRpb25zLndtdHNMYXllcnNLZXkgOiAnJyA7XHJcbiovXHJcbiAgICAgIHN3aXRjaCAodHlwZVNlcnZpY2UudG9Mb3dlckNhc2UoKSkge1xyXG4gICAgICAgIGNhc2UgJ3dtcyc6XHJcbiAgICAgICAgICBsaW5rVXJsS2V5ID0gdGhpcy5yb3V0ZS5vcHRpb25zLndtc1VybEtleTtcclxuICAgICAgICAgIGxheWVyc0tleSA9IHRoaXMucm91dGUub3B0aW9ucy53bXNMYXllcnNLZXk7XHJcbiAgICAgICAgICBicmVhaztcclxuICAgICAgICBjYXNlICd3bXRzJzpcclxuICAgICAgICAgIGxpbmtVcmxLZXkgPSB0aGlzLnJvdXRlLm9wdGlvbnMud210c1VybEtleTtcclxuICAgICAgICAgIGxheWVyc0tleSA9IHRoaXMucm91dGUub3B0aW9ucy53bXRzTGF5ZXJzS2V5O1xyXG4gICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgY2FzZSAnYXJjZ2lzcmVzdCc6XHJcbiAgICAgICAgICBsaW5rVXJsS2V5ID0gdGhpcy5yb3V0ZS5vcHRpb25zLmFyY2dpc1VybEtleTtcclxuICAgICAgICAgIGxheWVyc0tleSA9IHRoaXMucm91dGUub3B0aW9ucy5hcmNnaXNMYXllcnNLZXk7XHJcbiAgICAgICAgICBicmVhaztcclxuICAgICAgICBjYXNlICdpbWFnZWFyY2dpc3Jlc3QnOlxyXG4gICAgICAgICAgbGlua1VybEtleSA9IHRoaXMucm91dGUub3B0aW9ucy5pYXJjZ2lzVXJsS2V5O1xyXG4gICAgICAgICAgbGF5ZXJzS2V5ID0gdGhpcy5yb3V0ZS5vcHRpb25zLmlhcmNnaXNMYXllcnNLZXk7XHJcbiAgICAgICAgICBicmVhaztcclxuICAgICAgICBjYXNlICd0aWxlYXJjZ2lzcmVzdCc6XHJcbiAgICAgICAgICBsaW5rVXJsS2V5ID0gdGhpcy5yb3V0ZS5vcHRpb25zLnRhcmNnaXNVcmxLZXk7XHJcbiAgICAgICAgICBsYXllcnNLZXkgPSB0aGlzLnJvdXRlLm9wdGlvbnMudGFyY2dpc0xheWVyc0tleTtcclxuICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgICBsaW5rVXJsS2V5ID0gJyc7XHJcbiAgICAgICAgICBsYXllcnNLZXkgPSAnJztcclxuICAgICAgfVxyXG5cclxuICAgICAgbGV0IGxpbmtVcmxRdWVyeVBhcmFtcyA9ICcnO1xyXG4gICAgICBsZXQgbGF5ZXJzUXVlcnlQYXJhbXMgPSAnJztcclxuICAgICAgYWRkZWRMYXllcnNCeVNlcnZpY2UuZm9yRWFjaCgoc2VydmljZSkgPT4ge1xyXG4gICAgICAgIGxpbmtVcmxRdWVyeVBhcmFtcyArPSBgJHtzZXJ2aWNlLnVybH0sYDtcclxuICAgICAgICBsYXllcnNRdWVyeVBhcmFtcyArPSBgKCR7c2VydmljZS5sYXllcnMuam9pbignLCcpfSksYDtcclxuICAgICAgfSk7XHJcbiAgICAgIGxpbmtVcmxRdWVyeVBhcmFtcyA9IGxpbmtVcmxRdWVyeVBhcmFtcy5lbmRzV2l0aCgnLCcpXHJcbiAgICAgICAgPyBsaW5rVXJsUXVlcnlQYXJhbXMuc2xpY2UoMCwgLTEpXHJcbiAgICAgICAgOiBsaW5rVXJsUXVlcnlQYXJhbXM7XHJcbiAgICAgIGxheWVyc1F1ZXJ5UGFyYW1zID0gbGF5ZXJzUXVlcnlQYXJhbXMuZW5kc1dpdGgoJywnKVxyXG4gICAgICAgID8gbGF5ZXJzUXVlcnlQYXJhbXMuc2xpY2UoMCwgLTEpXHJcbiAgICAgICAgOiBsYXllcnNRdWVyeVBhcmFtcztcclxuICAgICAgYWRkZWRMYXllcnNRdWVyeVBhcmFtcyA9IGAke2xpbmtVcmxLZXl9PSR7bGlua1VybFF1ZXJ5UGFyYW1zfSYke2xheWVyc0tleX09JHtsYXllcnNRdWVyeVBhcmFtc31gO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBhZGRlZExheWVyc1F1ZXJ5UGFyYW1zO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -1,18 +1,21 @@
1
+ import { NgIf } from '@angular/common';
1
2
  import { Component, Input } from '@angular/core';
3
+ import { MatButtonModule } from '@angular/material/button';
4
+ import { MatIconModule } from '@angular/material/icon';
5
+ import { MatSidenavModule } from '@angular/material/sidenav';
6
+ import { MatTooltipModule } from '@angular/material/tooltip';
2
7
  import { Title } from '@angular/platform-browser';
3
- import { getEntityTitle } from '@igo2/common';
4
- import { FeatureMotion, moveToOlFeatures } from '@igo2/geo';
8
+ import { FlexibleComponent, PanelComponent, getEntityTitle } from '@igo2/common';
9
+ import { FeatureDetailsComponent, FeatureMotion, moveToOlFeatures } from '@igo2/geo';
5
10
  import olFormatGeoJSON from 'ol/format/GeoJSON';
11
+ import { TranslateModule } from '@ngx-translate/core';
6
12
  import * as i0 from "@angular/core";
7
13
  import * as i1 from "@angular/platform-browser";
8
- import * as i2 from "@angular/common";
9
- import * as i3 from "@angular/material/icon";
10
- import * as i4 from "@angular/material/button";
11
- import * as i5 from "@angular/material/sidenav";
12
- import * as i6 from "@angular/material/tooltip";
13
- import * as i7 from "@igo2/common";
14
- import * as i8 from "@igo2/geo";
15
- import * as i9 from "@ngx-translate/core";
14
+ import * as i2 from "@angular/material/sidenav";
15
+ import * as i3 from "@angular/material/button";
16
+ import * as i4 from "@angular/material/tooltip";
17
+ import * as i5 from "@angular/material/icon";
18
+ import * as i6 from "@ngx-translate/core";
16
19
  export class SidenavComponent {
17
20
  titleService;
18
21
  format = new olFormatGeoJSON();
@@ -85,13 +88,23 @@ export class SidenavComponent {
85
88
  this.topPanelState = 'initial';
86
89
  }
87
90
  }
88
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SidenavComponent, deps: [{ token: i1.Title }], target: i0.ɵɵFactoryTarget.Component });
89
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SidenavComponent, selector: "igo-sidenav", inputs: { map: "map", opened: "opened", feature: "feature", tool: "tool", media: "media", title: "title" }, ngImport: i0, template: "<mat-sidenav #sidenav igoSidenavShim mode=\"side\" [opened]=\"opened\">\n <div class=\"igo-sidenav-content\">\n <igo-flexible\n #topPanel\n initial=\"50%\"\n initialMobile=\"100%\"\n expanded=\"calc(100% - 58px)\"\n [state]=\"topPanelState\"\n >\n <div class=\"igo-content\">\n <igo-panel [title]=\"tool ? (tool.title | translate) : title\">\n <button\n mat-icon-button\n panelLeftButton\n tooltip-position=\"below\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"'igo.context.sidenav.goBack' | translate\"\n *ngIf=\"tool\"\n >\n <mat-icon svgIcon=\"arrow-back\"></mat-icon>\n </button>\n\n <button\n mat-icon-button\n panelRightButton\n tooltip-position=\"below\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"'igo.context.sidenav.mainMenu' | translate\"\n *ngIf=\"tool\"\n >\n <mat-icon svgIcon=\"menu\"></mat-icon>\n </button>\n </igo-panel>\n </div>\n\n <div igoFlexibleFill class=\"igo-content\">\n <igo-panel [title]=\"featureTitle\" *ngIf=\"feature && media !== 'mobile'\">\n <button\n mat-icon-button\n panelLeftButton\n class=\"igo-icon-button\"\n (click)=\"toggleTopPanel()\"\n >\n <mat-icon\n [svgIcon]=\"\n ['collapsed', 'initial'].indexOf(topPanel.state) >= 0\n ? 'arrow_downward'\n : 'arrow_upward'\n \"\n ></mat-icon>\n </button>\n\n <button\n mat-icon-button\n panelRightButton\n class=\"igo-icon-button\"\n (click)=\"zoomToFeatureExtent()\"\n *ngIf=\"feature.geometry\"\n >\n <mat-icon svgIcon=\"zoom-in\"></mat-icon>\n </button>\n\n <igo-feature-details\n [feature]=\"feature\"\n *ngIf=\"['collapsed', 'initial'].indexOf(topPanel.state) >= 0\"\n >\n </igo-feature-details>\n </igo-panel>\n </div>\n </igo-flexible>\n </div>\n</mat-sidenav>\n", styles: [":host ::ng-deep .igo-flexible-fill .igo-container,.igo-sidenav-content .igo-flexible-fill .igo-container{box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box}:host ::ng-deep .igo-flexible-fill .igo-container,.igo-sidenav-content .igo-flexible-fill .igo-container{border-top-width:1px;border-top-style:solid;border-top-color:#0003}mat-sidenav{-o-box-shadow:2px 0px 2px 0px #dddddd;box-shadow:2px 0 2px #ddd}:host{background-color:#fff}:host ::ng-deep mat-sidenav{z-index:3!important}mat-sidenav{width:400px}@media only screen and (orientation:portrait) and (max-width: 599px),only screen and (orientation:landscape) and (max-width: 959px){mat-sidenav{width:calc(100% - 45px)}}.igo-sidenav-content{margin-top:50px;height:calc(100% - 50px)}igo-feature-details ::ng-deep table{width:100%}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i4.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i5.MatSidenav, selector: "mat-sidenav", inputs: ["fixedInViewport", "fixedTopGap", "fixedBottomGap"], exportAs: ["matSidenav"] }, { kind: "directive", type: i6.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "component", type: i7.PanelComponent, selector: "igo-panel", inputs: ["title", "withHeader", "cursorPointer"] }, { kind: "component", type: i7.FlexibleComponent, selector: "igo-flexible", inputs: ["initial", "collapsed", "expanded", "initialMobile", "collapsedMobile", "expandedMobile", "direction", "state"] }, { kind: "component", type: i8.FeatureDetailsComponent, selector: "igo-feature-details", inputs: ["source", "map", "toolbox", "feature"], outputs: ["routeEvent", "selectFeature", "htmlDisplayEvent"] }, { kind: "pipe", type: i9.TranslatePipe, name: "translate" }] });
91
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: SidenavComponent, deps: [{ token: i1.Title }], target: i0.ɵɵFactoryTarget.Component });
92
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.1", type: SidenavComponent, isStandalone: true, selector: "igo-sidenav", inputs: { map: "map", opened: "opened", feature: "feature", tool: "tool", media: "media", title: "title" }, ngImport: i0, template: "<mat-sidenav #sidenav igoSidenavShim mode=\"side\" [opened]=\"opened\">\n <div class=\"igo-sidenav-content\">\n <igo-flexible\n #topPanel\n initial=\"50%\"\n initialMobile=\"100%\"\n expanded=\"calc(100% - 58px)\"\n [state]=\"topPanelState\"\n >\n <div class=\"igo-content\">\n <igo-panel [title]=\"tool ? (tool.title | translate) : title\">\n <button\n mat-icon-button\n panelLeftButton\n tooltip-position=\"below\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"'igo.context.sidenav.goBack' | translate\"\n *ngIf=\"tool\"\n >\n <mat-icon svgIcon=\"arrow-back\"></mat-icon>\n </button>\n\n <button\n mat-icon-button\n panelRightButton\n tooltip-position=\"below\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"'igo.context.sidenav.mainMenu' | translate\"\n *ngIf=\"tool\"\n >\n <mat-icon svgIcon=\"menu\"></mat-icon>\n </button>\n </igo-panel>\n </div>\n\n <div igoFlexibleFill class=\"igo-content\">\n <igo-panel [title]=\"featureTitle\" *ngIf=\"feature && media !== 'mobile'\">\n <button\n mat-icon-button\n panelLeftButton\n class=\"igo-icon-button\"\n (click)=\"toggleTopPanel()\"\n >\n <mat-icon\n [svgIcon]=\"\n ['collapsed', 'initial'].indexOf(topPanel.state) >= 0\n ? 'arrow_downward'\n : 'arrow_upward'\n \"\n ></mat-icon>\n </button>\n\n <button\n mat-icon-button\n panelRightButton\n class=\"igo-icon-button\"\n (click)=\"zoomToFeatureExtent()\"\n *ngIf=\"feature.geometry\"\n >\n <mat-icon svgIcon=\"zoom-in\"></mat-icon>\n </button>\n\n <igo-feature-details\n [feature]=\"feature\"\n *ngIf=\"['collapsed', 'initial'].indexOf(topPanel.state) >= 0\"\n >\n </igo-feature-details>\n </igo-panel>\n </div>\n </igo-flexible>\n </div>\n</mat-sidenav>\n", styles: [":host ::ng-deep .igo-flexible-fill .igo-container,.igo-sidenav-content .igo-flexible-fill .igo-container{box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box}:host ::ng-deep .igo-flexible-fill .igo-container,.igo-sidenav-content .igo-flexible-fill .igo-container{border-top-width:1px;border-top-style:solid;border-top-color:#0003}mat-sidenav{-moz-box-shadow:2px 0px 2px 0px #dddddd;-webkit-box-shadow:2px 0px 2px 0px #dddddd;-o-box-shadow:2px 0px 2px 0px #dddddd;box-shadow:2px 0 2px #ddd}:host{background-color:#fff}:host ::ng-deep mat-sidenav{z-index:3!important}mat-sidenav{width:400px}@media only screen and (orientation:portrait) and (max-width: 599px),only screen and (orientation:landscape) and (max-width: 959px){mat-sidenav{width:calc(100% - 45px)}}.igo-sidenav-content{margin-top:50px;height:calc(100% - 50px)}igo-feature-details ::ng-deep table{width:100%}\n"], dependencies: [{ kind: "ngmodule", type: MatSidenavModule }, { kind: "component", type: i2.MatSidenav, selector: "mat-sidenav", inputs: ["fixedInViewport", "fixedTopGap", "fixedBottomGap"], exportAs: ["matSidenav"] }, { kind: "component", type: FlexibleComponent, selector: "igo-flexible", inputs: ["initial", "collapsed", "expanded", "initialMobile", "collapsedMobile", "expandedMobile", "direction", "state"] }, { kind: "component", type: PanelComponent, selector: "igo-panel", inputs: ["title", "withHeader", "cursorPointer"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "ngmodule", type: MatTooltipModule }, { kind: "directive", type: i4.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: FeatureDetailsComponent, selector: "igo-feature-details", inputs: ["source", "map", "toolbox", "feature"], outputs: ["routeEvent", "selectFeature", "htmlDisplayEvent"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i6.TranslatePipe, name: "translate" }] });
90
93
  }
91
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SidenavComponent, decorators: [{
94
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: SidenavComponent, decorators: [{
92
95
  type: Component,
93
- args: [{ selector: 'igo-sidenav', template: "<mat-sidenav #sidenav igoSidenavShim mode=\"side\" [opened]=\"opened\">\n <div class=\"igo-sidenav-content\">\n <igo-flexible\n #topPanel\n initial=\"50%\"\n initialMobile=\"100%\"\n expanded=\"calc(100% - 58px)\"\n [state]=\"topPanelState\"\n >\n <div class=\"igo-content\">\n <igo-panel [title]=\"tool ? (tool.title | translate) : title\">\n <button\n mat-icon-button\n panelLeftButton\n tooltip-position=\"below\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"'igo.context.sidenav.goBack' | translate\"\n *ngIf=\"tool\"\n >\n <mat-icon svgIcon=\"arrow-back\"></mat-icon>\n </button>\n\n <button\n mat-icon-button\n panelRightButton\n tooltip-position=\"below\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"'igo.context.sidenav.mainMenu' | translate\"\n *ngIf=\"tool\"\n >\n <mat-icon svgIcon=\"menu\"></mat-icon>\n </button>\n </igo-panel>\n </div>\n\n <div igoFlexibleFill class=\"igo-content\">\n <igo-panel [title]=\"featureTitle\" *ngIf=\"feature && media !== 'mobile'\">\n <button\n mat-icon-button\n panelLeftButton\n class=\"igo-icon-button\"\n (click)=\"toggleTopPanel()\"\n >\n <mat-icon\n [svgIcon]=\"\n ['collapsed', 'initial'].indexOf(topPanel.state) >= 0\n ? 'arrow_downward'\n : 'arrow_upward'\n \"\n ></mat-icon>\n </button>\n\n <button\n mat-icon-button\n panelRightButton\n class=\"igo-icon-button\"\n (click)=\"zoomToFeatureExtent()\"\n *ngIf=\"feature.geometry\"\n >\n <mat-icon svgIcon=\"zoom-in\"></mat-icon>\n </button>\n\n <igo-feature-details\n [feature]=\"feature\"\n *ngIf=\"['collapsed', 'initial'].indexOf(topPanel.state) >= 0\"\n >\n </igo-feature-details>\n </igo-panel>\n </div>\n </igo-flexible>\n </div>\n</mat-sidenav>\n", styles: [":host ::ng-deep .igo-flexible-fill .igo-container,.igo-sidenav-content .igo-flexible-fill .igo-container{box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box}:host ::ng-deep .igo-flexible-fill .igo-container,.igo-sidenav-content .igo-flexible-fill .igo-container{border-top-width:1px;border-top-style:solid;border-top-color:#0003}mat-sidenav{-o-box-shadow:2px 0px 2px 0px #dddddd;box-shadow:2px 0 2px #ddd}:host{background-color:#fff}:host ::ng-deep mat-sidenav{z-index:3!important}mat-sidenav{width:400px}@media only screen and (orientation:portrait) and (max-width: 599px),only screen and (orientation:landscape) and (max-width: 959px){mat-sidenav{width:calc(100% - 45px)}}.igo-sidenav-content{margin-top:50px;height:calc(100% - 50px)}igo-feature-details ::ng-deep table{width:100%}\n"] }]
94
- }], ctorParameters: function () { return [{ type: i1.Title }]; }, propDecorators: { map: [{
96
+ args: [{ selector: 'igo-sidenav', standalone: true, imports: [
97
+ MatSidenavModule,
98
+ FlexibleComponent,
99
+ PanelComponent,
100
+ NgIf,
101
+ MatButtonModule,
102
+ MatTooltipModule,
103
+ MatIconModule,
104
+ FeatureDetailsComponent,
105
+ TranslateModule
106
+ ], template: "<mat-sidenav #sidenav igoSidenavShim mode=\"side\" [opened]=\"opened\">\n <div class=\"igo-sidenav-content\">\n <igo-flexible\n #topPanel\n initial=\"50%\"\n initialMobile=\"100%\"\n expanded=\"calc(100% - 58px)\"\n [state]=\"topPanelState\"\n >\n <div class=\"igo-content\">\n <igo-panel [title]=\"tool ? (tool.title | translate) : title\">\n <button\n mat-icon-button\n panelLeftButton\n tooltip-position=\"below\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"'igo.context.sidenav.goBack' | translate\"\n *ngIf=\"tool\"\n >\n <mat-icon svgIcon=\"arrow-back\"></mat-icon>\n </button>\n\n <button\n mat-icon-button\n panelRightButton\n tooltip-position=\"below\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"'igo.context.sidenav.mainMenu' | translate\"\n *ngIf=\"tool\"\n >\n <mat-icon svgIcon=\"menu\"></mat-icon>\n </button>\n </igo-panel>\n </div>\n\n <div igoFlexibleFill class=\"igo-content\">\n <igo-panel [title]=\"featureTitle\" *ngIf=\"feature && media !== 'mobile'\">\n <button\n mat-icon-button\n panelLeftButton\n class=\"igo-icon-button\"\n (click)=\"toggleTopPanel()\"\n >\n <mat-icon\n [svgIcon]=\"\n ['collapsed', 'initial'].indexOf(topPanel.state) >= 0\n ? 'arrow_downward'\n : 'arrow_upward'\n \"\n ></mat-icon>\n </button>\n\n <button\n mat-icon-button\n panelRightButton\n class=\"igo-icon-button\"\n (click)=\"zoomToFeatureExtent()\"\n *ngIf=\"feature.geometry\"\n >\n <mat-icon svgIcon=\"zoom-in\"></mat-icon>\n </button>\n\n <igo-feature-details\n [feature]=\"feature\"\n *ngIf=\"['collapsed', 'initial'].indexOf(topPanel.state) >= 0\"\n >\n </igo-feature-details>\n </igo-panel>\n </div>\n </igo-flexible>\n </div>\n</mat-sidenav>\n", styles: [":host ::ng-deep .igo-flexible-fill .igo-container,.igo-sidenav-content .igo-flexible-fill .igo-container{box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box}:host ::ng-deep .igo-flexible-fill .igo-container,.igo-sidenav-content .igo-flexible-fill .igo-container{border-top-width:1px;border-top-style:solid;border-top-color:#0003}mat-sidenav{-moz-box-shadow:2px 0px 2px 0px #dddddd;-webkit-box-shadow:2px 0px 2px 0px #dddddd;-o-box-shadow:2px 0px 2px 0px #dddddd;box-shadow:2px 0 2px #ddd}:host{background-color:#fff}:host ::ng-deep mat-sidenav{z-index:3!important}mat-sidenav{width:400px}@media only screen and (orientation:portrait) and (max-width: 599px),only screen and (orientation:landscape) and (max-width: 959px){mat-sidenav{width:calc(100% - 45px)}}.igo-sidenav-content{margin-top:50px;height:calc(100% - 50px)}igo-feature-details ::ng-deep table{width:100%}\n"] }]
107
+ }], ctorParameters: () => [{ type: i1.Title }], propDecorators: { map: [{
95
108
  type: Input
96
109
  }], opened: [{
97
110
  type: Input
@@ -104,4 +117,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
104
117
  }], title: [{
105
118
  type: Input
106
119
  }] } });
107
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZW5hdi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb250ZXh0L3NyYy9saWIvc2lkZW5hdi9zaWRlbmF2LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbnRleHQvc3JjL2xpYi9zaWRlbmF2L3NpZGVuYXYuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakQsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRWxELE9BQU8sRUFBdUIsY0FBYyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBRW5FLE9BQU8sRUFBVyxhQUFhLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFHckUsT0FBTyxlQUFlLE1BQU0sbUJBQW1CLENBQUM7Ozs7Ozs7Ozs7O0FBT2hELE1BQU0sT0FBTyxnQkFBZ0I7SUErRFI7SUE5RFgsTUFBTSxHQUFHLElBQUksZUFBZSxFQUFFLENBQUM7SUFDdkMsSUFDSSxHQUFHO1FBQ0wsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDO0lBQ25CLENBQUM7SUFDRCxJQUFJLEdBQUcsQ0FBQyxLQUFhO1FBQ25CLElBQUksQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDO0lBQ3BCLENBQUM7SUFDTyxJQUFJLENBQVM7SUFDckIsSUFDSSxNQUFNO1FBQ1IsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDO0lBQ3RCLENBQUM7SUFDRCxJQUFJLE1BQU0sQ0FBQyxLQUFjO1FBQ3ZCLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO0lBQ3ZCLENBQUM7SUFDTyxPQUFPLENBQVU7SUFFekIsSUFDSSxPQUFPO1FBQ1QsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQ3ZCLENBQUM7SUFDRCxJQUFJLE9BQU8sQ0FBQyxLQUFjO1FBQ3hCLElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDO0lBQ3hCLENBQUM7SUFDTyxRQUFRLENBQVU7SUFFMUIsSUFDSSxJQUFJO1FBQ04sT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3BCLENBQUM7SUFDRCxJQUFJLElBQUksQ0FBQyxLQUFXO1FBQ2xCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO0lBQ3JCLENBQUM7SUFDTyxLQUFLLENBQU87SUFFcEIsSUFDSSxLQUFLO1FBQ1AsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQ3JCLENBQUM7SUFDRCxJQUFJLEtBQUssQ0FBQyxLQUFZO1FBQ3BCLElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO0lBQ3RCLENBQUM7SUFDTyxNQUFNLENBQVE7SUFFdEIsSUFDSSxLQUFLO1FBQ1AsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQ3JCLENBQUM7SUFDRCxJQUFJLEtBQUssQ0FBQyxLQUFhO1FBQ3JCLElBQUksS0FBSyxFQUFFO1lBQ1QsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7U0FDckI7SUFDSCxDQUFDO0lBQ08sTUFBTSxDQUFTO0lBRWhCLGFBQWEsR0FBa0IsU0FBUyxDQUFDO0lBRWhELElBQUksWUFBWTtRQUNkLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO0lBQ2pFLENBQUM7SUFFRCxZQUFtQixZQUFtQjtRQUFuQixpQkFBWSxHQUFaLFlBQVksQ0FBTztRQUNwQyxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDN0MsQ0FBQztJQUVELG1CQUFtQjtRQUNqQixJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxFQUFFO1lBQ3pCLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUU7Z0JBQ3RELGNBQWMsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLFVBQVU7Z0JBQ3ZDLGlCQUFpQixFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsY0FBYzthQUMzQyxDQUFDLENBQUM7WUFDSCxnQkFBZ0IsQ0FDZCxJQUFJLENBQUMsR0FBRyxDQUFDLGNBQWMsRUFDdkIsQ0FBQyxTQUFTLENBQUMsRUFDWCxhQUFhLENBQUMsSUFBSSxDQUNuQixDQUFDO1NBQ0g7SUFDSCxDQUFDO0lBRUQsY0FBYztRQUNaLElBQUksSUFBSSxDQUFDLGFBQWEsS0FBSyxTQUFTLEVBQUU7WUFDcEMsSUFBSSxDQUFDLGFBQWEsR0FBRyxVQUFVLENBQUM7U0FDakM7YUFBTTtZQUNMLElBQUksQ0FBQyxhQUFhLEdBQUcsU0FBUyxDQUFDO1NBQ2hDO0lBQ0gsQ0FBQzt3R0F2RlUsZ0JBQWdCOzRGQUFoQixnQkFBZ0IsK0pDZjdCLHd0RUF3RUE7OzRGRHpEYSxnQkFBZ0I7a0JBTDVCLFNBQVM7K0JBQ0UsYUFBYTs0RkFPbkIsR0FBRztzQkFETixLQUFLO2dCQVNGLE1BQU07c0JBRFQsS0FBSztnQkFVRixPQUFPO3NCQURWLEtBQUs7Z0JBVUYsSUFBSTtzQkFEUCxLQUFLO2dCQVVGLEtBQUs7c0JBRFIsS0FBSztnQkFVRixLQUFLO3NCQURSLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFRpdGxlIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XHJcblxyXG5pbXBvcnQgeyBGbGV4aWJsZVN0YXRlLCBUb29sLCBnZXRFbnRpdHlUaXRsZSB9IGZyb20gJ0BpZ28yL2NvbW1vbic7XHJcbmltcG9ydCB0eXBlIHsgTWVkaWEgfSBmcm9tICdAaWdvMi9jb3JlJztcclxuaW1wb3J0IHsgRmVhdHVyZSwgRmVhdHVyZU1vdGlvbiwgbW92ZVRvT2xGZWF0dXJlcyB9IGZyb20gJ0BpZ28yL2dlbyc7XHJcbmltcG9ydCB0eXBlIHsgSWdvTWFwIH0gZnJvbSAnQGlnbzIvZ2VvJztcclxuXHJcbmltcG9ydCBvbEZvcm1hdEdlb0pTT04gZnJvbSAnb2wvZm9ybWF0L0dlb0pTT04nO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdpZ28tc2lkZW5hdicsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3NpZGVuYXYuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3NpZGVuYXYuY29tcG9uZW50LnNjc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgU2lkZW5hdkNvbXBvbmVudCB7XHJcbiAgcHJpdmF0ZSBmb3JtYXQgPSBuZXcgb2xGb3JtYXRHZW9KU09OKCk7XHJcbiAgQElucHV0KClcclxuICBnZXQgbWFwKCk6IElnb01hcCB7XHJcbiAgICByZXR1cm4gdGhpcy5fbWFwO1xyXG4gIH1cclxuICBzZXQgbWFwKHZhbHVlOiBJZ29NYXApIHtcclxuICAgIHRoaXMuX21hcCA9IHZhbHVlO1xyXG4gIH1cclxuICBwcml2YXRlIF9tYXA6IElnb01hcDtcclxuICBASW5wdXQoKVxyXG4gIGdldCBvcGVuZWQoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5fb3BlbmVkO1xyXG4gIH1cclxuICBzZXQgb3BlbmVkKHZhbHVlOiBib29sZWFuKSB7XHJcbiAgICB0aGlzLl9vcGVuZWQgPSB2YWx1ZTtcclxuICB9XHJcbiAgcHJpdmF0ZSBfb3BlbmVkOiBib29sZWFuO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIGdldCBmZWF0dXJlKCk6IEZlYXR1cmUge1xyXG4gICAgcmV0dXJuIHRoaXMuX2ZlYXR1cmU7XHJcbiAgfVxyXG4gIHNldCBmZWF0dXJlKHZhbHVlOiBGZWF0dXJlKSB7XHJcbiAgICB0aGlzLl9mZWF0dXJlID0gdmFsdWU7XHJcbiAgfVxyXG4gIHByaXZhdGUgX2ZlYXR1cmU6IEZlYXR1cmU7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgZ2V0IHRvb2woKTogVG9vbCB7XHJcbiAgICByZXR1cm4gdGhpcy5fdG9vbDtcclxuICB9XHJcbiAgc2V0IHRvb2wodmFsdWU6IFRvb2wpIHtcclxuICAgIHRoaXMuX3Rvb2wgPSB2YWx1ZTtcclxuICB9XHJcbiAgcHJpdmF0ZSBfdG9vbDogVG9vbDtcclxuXHJcbiAgQElucHV0KClcclxuICBnZXQgbWVkaWEoKTogTWVkaWEge1xyXG4gICAgcmV0dXJuIHRoaXMuX21lZGlhO1xyXG4gIH1cclxuICBzZXQgbWVkaWEodmFsdWU6IE1lZGlhKSB7XHJcbiAgICB0aGlzLl9tZWRpYSA9IHZhbHVlO1xyXG4gIH1cclxuICBwcml2YXRlIF9tZWRpYTogTWVkaWE7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgZ2V0IHRpdGxlKCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdGhpcy5fdGl0bGU7XHJcbiAgfVxyXG4gIHNldCB0aXRsZSh2YWx1ZTogc3RyaW5nKSB7XHJcbiAgICBpZiAodmFsdWUpIHtcclxuICAgICAgdGhpcy5fdGl0bGUgPSB2YWx1ZTtcclxuICAgIH1cclxuICB9XHJcbiAgcHJpdmF0ZSBfdGl0bGU6IHN0cmluZztcclxuXHJcbiAgcHVibGljIHRvcFBhbmVsU3RhdGU6IEZsZXhpYmxlU3RhdGUgPSAnaW5pdGlhbCc7XHJcblxyXG4gIGdldCBmZWF0dXJlVGl0bGUoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB0aGlzLmZlYXR1cmUgPyBnZXRFbnRpdHlUaXRsZSh0aGlzLmZlYXR1cmUpIDogdW5kZWZpbmVkO1xyXG4gIH1cclxuXHJcbiAgY29uc3RydWN0b3IocHVibGljIHRpdGxlU2VydmljZTogVGl0bGUpIHtcclxuICAgIHRoaXMuX3RpdGxlID0gdGhpcy50aXRsZVNlcnZpY2UuZ2V0VGl0bGUoKTtcclxuICB9XHJcblxyXG4gIHpvb21Ub0ZlYXR1cmVFeHRlbnQoKSB7XHJcbiAgICBpZiAodGhpcy5mZWF0dXJlLmdlb21ldHJ5KSB7XHJcbiAgICAgIGNvbnN0IG9sRmVhdHVyZSA9IHRoaXMuZm9ybWF0LnJlYWRGZWF0dXJlKHRoaXMuZmVhdHVyZSwge1xyXG4gICAgICAgIGRhdGFQcm9qZWN0aW9uOiB0aGlzLmZlYXR1cmUucHJvamVjdGlvbixcclxuICAgICAgICBmZWF0dXJlUHJvamVjdGlvbjogdGhpcy5tYXAudmlld1Byb2plY3Rpb25cclxuICAgICAgfSk7XHJcbiAgICAgIG1vdmVUb09sRmVhdHVyZXMoXHJcbiAgICAgICAgdGhpcy5tYXAudmlld0NvbnRyb2xsZXIsXHJcbiAgICAgICAgW29sRmVhdHVyZV0sXHJcbiAgICAgICAgRmVhdHVyZU1vdGlvbi5ab29tXHJcbiAgICAgICk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICB0b2dnbGVUb3BQYW5lbCgpIHtcclxuICAgIGlmICh0aGlzLnRvcFBhbmVsU3RhdGUgPT09ICdpbml0aWFsJykge1xyXG4gICAgICB0aGlzLnRvcFBhbmVsU3RhdGUgPSAnZXhwYW5kZWQnO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy50b3BQYW5lbFN0YXRlID0gJ2luaXRpYWwnO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCI8bWF0LXNpZGVuYXYgI3NpZGVuYXYgaWdvU2lkZW5hdlNoaW0gbW9kZT1cInNpZGVcIiBbb3BlbmVkXT1cIm9wZW5lZFwiPlxuICA8ZGl2IGNsYXNzPVwiaWdvLXNpZGVuYXYtY29udGVudFwiPlxuICAgIDxpZ28tZmxleGlibGVcbiAgICAgICN0b3BQYW5lbFxuICAgICAgaW5pdGlhbD1cIjUwJVwiXG4gICAgICBpbml0aWFsTW9iaWxlPVwiMTAwJVwiXG4gICAgICBleHBhbmRlZD1cImNhbGMoMTAwJSAtIDU4cHgpXCJcbiAgICAgIFtzdGF0ZV09XCJ0b3BQYW5lbFN0YXRlXCJcbiAgICA+XG4gICAgICA8ZGl2IGNsYXNzPVwiaWdvLWNvbnRlbnRcIj5cbiAgICAgICAgPGlnby1wYW5lbCBbdGl0bGVdPVwidG9vbCA/ICh0b29sLnRpdGxlIHwgdHJhbnNsYXRlKSA6IHRpdGxlXCI+XG4gICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgbWF0LWljb24tYnV0dG9uXG4gICAgICAgICAgICBwYW5lbExlZnRCdXR0b25cbiAgICAgICAgICAgIHRvb2x0aXAtcG9zaXRpb249XCJiZWxvd1wiXG4gICAgICAgICAgICBtYXRUb29sdGlwU2hvd0RlbGF5PVwiNTAwXCJcbiAgICAgICAgICAgIFttYXRUb29sdGlwXT1cIidpZ28uY29udGV4dC5zaWRlbmF2LmdvQmFjaycgfCB0cmFuc2xhdGVcIlxuICAgICAgICAgICAgKm5nSWY9XCJ0b29sXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICA8bWF0LWljb24gc3ZnSWNvbj1cImFycm93LWJhY2tcIj48L21hdC1pY29uPlxuICAgICAgICAgIDwvYnV0dG9uPlxuXG4gICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgbWF0LWljb24tYnV0dG9uXG4gICAgICAgICAgICBwYW5lbFJpZ2h0QnV0dG9uXG4gICAgICAgICAgICB0b29sdGlwLXBvc2l0aW9uPVwiYmVsb3dcIlxuICAgICAgICAgICAgbWF0VG9vbHRpcFNob3dEZWxheT1cIjUwMFwiXG4gICAgICAgICAgICBbbWF0VG9vbHRpcF09XCInaWdvLmNvbnRleHQuc2lkZW5hdi5tYWluTWVudScgfCB0cmFuc2xhdGVcIlxuICAgICAgICAgICAgKm5nSWY9XCJ0b29sXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICA8bWF0LWljb24gc3ZnSWNvbj1cIm1lbnVcIj48L21hdC1pY29uPlxuICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8L2lnby1wYW5lbD5cbiAgICAgIDwvZGl2PlxuXG4gICAgICA8ZGl2IGlnb0ZsZXhpYmxlRmlsbCBjbGFzcz1cImlnby1jb250ZW50XCI+XG4gICAgICAgIDxpZ28tcGFuZWwgW3RpdGxlXT1cImZlYXR1cmVUaXRsZVwiICpuZ0lmPVwiZmVhdHVyZSAmJiBtZWRpYSAhPT0gJ21vYmlsZSdcIj5cbiAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICBtYXQtaWNvbi1idXR0b25cbiAgICAgICAgICAgIHBhbmVsTGVmdEJ1dHRvblxuICAgICAgICAgICAgY2xhc3M9XCJpZ28taWNvbi1idXR0b25cIlxuICAgICAgICAgICAgKGNsaWNrKT1cInRvZ2dsZVRvcFBhbmVsKClcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxtYXQtaWNvblxuICAgICAgICAgICAgICBbc3ZnSWNvbl09XCJcbiAgICAgICAgICAgICAgICBbJ2NvbGxhcHNlZCcsICdpbml0aWFsJ10uaW5kZXhPZih0b3BQYW5lbC5zdGF0ZSkgPj0gMFxuICAgICAgICAgICAgICAgICAgPyAnYXJyb3dfZG93bndhcmQnXG4gICAgICAgICAgICAgICAgICA6ICdhcnJvd191cHdhcmQnXG4gICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICA+PC9tYXQtaWNvbj5cbiAgICAgICAgICA8L2J1dHRvbj5cblxuICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgIG1hdC1pY29uLWJ1dHRvblxuICAgICAgICAgICAgcGFuZWxSaWdodEJ1dHRvblxuICAgICAgICAgICAgY2xhc3M9XCJpZ28taWNvbi1idXR0b25cIlxuICAgICAgICAgICAgKGNsaWNrKT1cInpvb21Ub0ZlYXR1cmVFeHRlbnQoKVwiXG4gICAgICAgICAgICAqbmdJZj1cImZlYXR1cmUuZ2VvbWV0cnlcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxtYXQtaWNvbiBzdmdJY29uPVwiem9vbS1pblwiPjwvbWF0LWljb24+XG4gICAgICAgICAgPC9idXR0b24+XG5cbiAgICAgICAgICA8aWdvLWZlYXR1cmUtZGV0YWlsc1xuICAgICAgICAgICAgW2ZlYXR1cmVdPVwiZmVhdHVyZVwiXG4gICAgICAgICAgICAqbmdJZj1cIlsnY29sbGFwc2VkJywgJ2luaXRpYWwnXS5pbmRleE9mKHRvcFBhbmVsLnN0YXRlKSA+PSAwXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgPC9pZ28tZmVhdHVyZS1kZXRhaWxzPlxuICAgICAgICA8L2lnby1wYW5lbD5cbiAgICAgIDwvZGl2PlxuICAgIDwvaWdvLWZsZXhpYmxlPlxuICA8L2Rpdj5cbjwvbWF0LXNpZGVuYXY+XG4iXX0=
120
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZW5hdi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb250ZXh0L3NyYy9saWIvc2lkZW5hdi9zaWRlbmF2LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbnRleHQvc3JjL2xpYi9zaWRlbmF2L3NpZGVuYXYuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDN0QsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDN0QsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRWxELE9BQU8sRUFDTCxpQkFBaUIsRUFFakIsY0FBYyxFQUVkLGNBQWMsRUFDZixNQUFNLGNBQWMsQ0FBQztBQUV0QixPQUFPLEVBRUwsdUJBQXVCLEVBQ3ZCLGFBQWEsRUFDYixnQkFBZ0IsRUFDakIsTUFBTSxXQUFXLENBQUM7QUFHbkIsT0FBTyxlQUFlLE1BQU0sbUJBQW1CLENBQUM7QUFFaEQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDOzs7Ozs7OztBQW1CdEQsTUFBTSxPQUFPLGdCQUFnQjtJQStEUjtJQTlEWCxNQUFNLEdBQUcsSUFBSSxlQUFlLEVBQUUsQ0FBQztJQUN2QyxJQUNJLEdBQUc7UUFDTCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUM7SUFDbkIsQ0FBQztJQUNELElBQUksR0FB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YSxjQUdYLElBQUksV0FDUDt3QkFDUCxnQkFBZ0I7d0JBQ2hCLGlCQUFpQjt3QkFDakIsY0FBYzt3QkFDZCxJQUFJO3dCQUNKLGVBQWU7d0JBQ2YsZ0JBQWdCO3dCQUNoQixhQUFhO3dCQUNiLHVCQUF1Qjt3QkFDdkIsZUFBZTtxQkFDaEI7MEVBS0csR0FBRztzQkFETixLQUFLO2dCQVNGLE1BQU07c0JBRFQsS0FBSztnQkFVRixPQUFPO3NCQURWLEtBQUs7Z0JBVUYsSUFBSTtzQkFEUCxLQUFLO2dCQVVGLEtBQUs7c0JBRFIsS0FBSztnQkFVRixLQUFLO3NCQURSLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ0lmIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBNYXRCdXR0b25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xyXG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XHJcbmltcG9ydCB7IE1hdFNpZGVuYXZNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zaWRlbmF2JztcclxuaW1wb3J0IHsgTWF0VG9vbHRpcE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Rvb2x0aXAnO1xyXG5pbXBvcnQgeyBUaXRsZSB9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xyXG5cclxuaW1wb3J0IHtcclxuICBGbGV4aWJsZUNvbXBvbmVudCxcclxuICBGbGV4aWJsZVN0YXRlLFxyXG4gIFBhbmVsQ29tcG9uZW50LFxyXG4gIFRvb2wsXHJcbiAgZ2V0RW50aXR5VGl0bGVcclxufSBmcm9tICdAaWdvMi9jb21tb24nO1xyXG5pbXBvcnQgdHlwZSB7IE1lZGlhIH0gZnJvbSAnQGlnbzIvY29yZSc7XHJcbmltcG9ydCB7XHJcbiAgRmVhdHVyZSxcclxuICBGZWF0dXJlRGV0YWlsc0NvbXBvbmVudCxcclxuICBGZWF0dXJlTW90aW9uLFxyXG4gIG1vdmVUb09sRmVhdHVyZXNcclxufSBmcm9tICdAaWdvMi9nZW8nO1xyXG5pbXBvcnQgdHlwZSB7IElnb01hcCB9IGZyb20gJ0BpZ28yL2dlbyc7XHJcblxyXG5pbXBvcnQgb2xGb3JtYXRHZW9KU09OIGZyb20gJ29sL2Zvcm1hdC9HZW9KU09OJztcclxuXHJcbmltcG9ydCB7IFRyYW5zbGF0ZU1vZHVsZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdpZ28tc2lkZW5hdicsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3NpZGVuYXYuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3NpZGVuYXYuY29tcG9uZW50LnNjc3MnXSxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIGltcG9ydHM6IFtcclxuICAgIE1hdFNpZGVuYXZNb2R1bGUsXHJcbiAgICBGbGV4aWJsZUNvbXBvbmVudCxcclxuICAgIFBhbmVsQ29tcG9uZW50LFxyXG4gICAgTmdJZixcclxuICAgIE1hdEJ1dHRvbk1vZHVsZSxcclxuICAgIE1hdFRvb2x0aXBNb2R1bGUsXHJcbiAgICBNYXRJY29uTW9kdWxlLFxyXG4gICAgRmVhdHVyZURldGFpbHNDb21wb25lbnQsXHJcbiAgICBUcmFuc2xhdGVNb2R1bGVcclxuICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTaWRlbmF2Q29tcG9uZW50IHtcclxuICBwcml2YXRlIGZvcm1hdCA9IG5ldyBvbEZvcm1hdEdlb0pTT04oKTtcclxuICBASW5wdXQoKVxyXG4gIGdldCBtYXAoKTogSWdvTWFwIHtcclxuICAgIHJldHVybiB0aGlzLl9tYXA7XHJcbiAgfVxyXG4gIHNldCBtYXAodmFsdWU6IElnb01hcCkge1xyXG4gICAgdGhpcy5fbWFwID0gdmFsdWU7XHJcbiAgfVxyXG4gIHByaXZhdGUgX21hcDogSWdvTWFwO1xyXG4gIEBJbnB1dCgpXHJcbiAgZ2V0IG9wZW5lZCgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLl9vcGVuZWQ7XHJcbiAgfVxyXG4gIHNldCBvcGVuZWQodmFsdWU6IGJvb2xlYW4pIHtcclxuICAgIHRoaXMuX29wZW5lZCA9IHZhbHVlO1xyXG4gIH1cclxuICBwcml2YXRlIF9vcGVuZWQ6IGJvb2xlYW47XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgZ2V0IGZlYXR1cmUoKTogRmVhdHVyZSB7XHJcbiAgICByZXR1cm4gdGhpcy5fZmVhdHVyZTtcclxuICB9XHJcbiAgc2V0IGZlYXR1cmUodmFsdWU6IEZlYXR1cmUpIHtcclxuICAgIHRoaXMuX2ZlYXR1cmUgPSB2YWx1ZTtcclxuICB9XHJcbiAgcHJpdmF0ZSBfZmVhdHVyZTogRmVhdHVyZTtcclxuXHJcbiAgQElucHV0KClcclxuICBnZXQgdG9vbCgpOiBUb29sIHtcclxuICAgIHJldHVybiB0aGlzLl90b29sO1xyXG4gIH1cclxuICBzZXQgdG9vbCh2YWx1ZTogVG9vbCkge1xyXG4gICAgdGhpcy5fdG9vbCA9IHZhbHVlO1xyXG4gIH1cclxuICBwcml2YXRlIF90b29sOiBUb29sO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIGdldCBtZWRpYSgpOiBNZWRpYSB7XHJcbiAgICByZXR1cm4gdGhpcy5fbWVkaWE7XHJcbiAgfVxyXG4gIHNldCBtZWRpYSh2YWx1ZTogTWVkaWEpIHtcclxuICAgIHRoaXMuX21lZGlhID0gdmFsdWU7XHJcbiAgfVxyXG4gIHByaXZhdGUgX21lZGlhOiBNZWRpYTtcclxuXHJcbiAgQElucHV0KClcclxuICBnZXQgdGl0bGUoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB0aGlzLl90aXRsZTtcclxuICB9XHJcbiAgc2V0IHRpdGxlKHZhbHVlOiBzdHJpbmcpIHtcclxuICAgIGlmICh2YWx1ZSkge1xyXG4gICAgICB0aGlzLl90aXRsZSA9IHZhbHVlO1xyXG4gICAgfVxyXG4gIH1cclxuICBwcml2YXRlIF90aXRsZTogc3RyaW5nO1xyXG5cclxuICBwdWJsaWMgdG9wUGFuZWxTdGF0ZTogRmxleGlibGVTdGF0ZSA9ICdpbml0aWFsJztcclxuXHJcbiAgZ2V0IGZlYXR1cmVUaXRsZSgpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMuZmVhdHVyZSA/IGdldEVudGl0eVRpdGxlKHRoaXMuZmVhdHVyZSkgOiB1bmRlZmluZWQ7XHJcbiAgfVxyXG5cclxuICBjb25zdHJ1Y3RvcihwdWJsaWMgdGl0bGVTZXJ2aWNlOiBUaXRsZSkge1xyXG4gICAgdGhpcy5fdGl0bGUgPSB0aGlzLnRpdGxlU2VydmljZS5nZXRUaXRsZSgpO1xyXG4gIH1cclxuXHJcbiAgem9vbVRvRmVhdHVyZUV4dGVudCgpIHtcclxuICAgIGlmICh0aGlzLmZlYXR1cmUuZ2VvbWV0cnkpIHtcclxuICAgICAgY29uc3Qgb2xGZWF0dXJlID0gdGhpcy5mb3JtYXQucmVhZEZlYXR1cmUodGhpcy5mZWF0dXJlLCB7XHJcbiAgICAgICAgZGF0YVByb2plY3Rpb246IHRoaXMuZmVhdHVyZS5wcm9qZWN0aW9uLFxyXG4gICAgICAgIGZlYXR1cmVQcm9qZWN0aW9uOiB0aGlzLm1hcC52aWV3UHJvamVjdGlvblxyXG4gICAgICB9KTtcclxuICAgICAgbW92ZVRvT2xGZWF0dXJlcyhcclxuICAgICAgICB0aGlzLm1hcC52aWV3Q29udHJvbGxlcixcclxuICAgICAgICBbb2xGZWF0dXJlXSxcclxuICAgICAgICBGZWF0dXJlTW90aW9uLlpvb21cclxuICAgICAgKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHRvZ2dsZVRvcFBhbmVsKCkge1xyXG4gICAgaWYgKHRoaXMudG9wUGFuZWxTdGF0ZSA9PT0gJ2luaXRpYWwnKSB7XHJcbiAgICAgIHRoaXMudG9wUGFuZWxTdGF0ZSA9ICdleHBhbmRlZCc7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnRvcFBhbmVsU3RhdGUgPSAnaW5pdGlhbCc7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIjxtYXQtc2lkZW5hdiAjc2lkZW5hdiBpZ29TaWRlbmF2U2hpbSBtb2RlPVwic2lkZVwiIFtvcGVuZWRdPVwib3BlbmVkXCI+XG4gIDxkaXYgY2xhc3M9XCJpZ28tc2lkZW5hdi1jb250ZW50XCI+XG4gICAgPGlnby1mbGV4aWJsZVxuICAgICAgI3RvcFBhbmVsXG4gICAgICBpbml0aWFsPVwiNTAlXCJcbiAgICAgIGluaXRpYWxNb2JpbGU9XCIxMDAlXCJcbiAgICAgIGV4cGFuZGVkPVwiY2FsYygxMDAlIC0gNThweClcIlxuICAgICAgW3N0YXRlXT1cInRvcFBhbmVsU3RhdGVcIlxuICAgID5cbiAgICAgIDxkaXYgY2xhc3M9XCJpZ28tY29udGVudFwiPlxuICAgICAgICA8aWdvLXBhbmVsIFt0aXRsZV09XCJ0b29sID8gKHRvb2wudGl0bGUgfCB0cmFuc2xhdGUpIDogdGl0bGVcIj5cbiAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICBtYXQtaWNvbi1idXR0b25cbiAgICAgICAgICAgIHBhbmVsTGVmdEJ1dHRvblxuICAgICAgICAgICAgdG9vbHRpcC1wb3NpdGlvbj1cImJlbG93XCJcbiAgICAgICAgICAgIG1hdFRvb2x0aXBTaG93RGVsYXk9XCI1MDBcIlxuICAgICAgICAgICAgW21hdFRvb2x0aXBdPVwiJ2lnby5jb250ZXh0LnNpZGVuYXYuZ29CYWNrJyB8IHRyYW5zbGF0ZVwiXG4gICAgICAgICAgICAqbmdJZj1cInRvb2xcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxtYXQtaWNvbiBzdmdJY29uPVwiYXJyb3ctYmFja1wiPjwvbWF0LWljb24+XG4gICAgICAgICAgPC9idXR0b24+XG5cbiAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICBtYXQtaWNvbi1idXR0b25cbiAgICAgICAgICAgIHBhbmVsUmlnaHRCdXR0b25cbiAgICAgICAgICAgIHRvb2x0aXAtcG9zaXRpb249XCJiZWxvd1wiXG4gICAgICAgICAgICBtYXRUb29sdGlwU2hvd0RlbGF5PVwiNTAwXCJcbiAgICAgICAgICAgIFttYXRUb29sdGlwXT1cIidpZ28uY29udGV4dC5zaWRlbmF2Lm1haW5NZW51JyB8IHRyYW5zbGF0ZVwiXG4gICAgICAgICAgICAqbmdJZj1cInRvb2xcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxtYXQtaWNvbiBzdmdJY29uPVwibWVudVwiPjwvbWF0LWljb24+XG4gICAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDwvaWdvLXBhbmVsPlxuICAgICAgPC9kaXY+XG5cbiAgICAgIDxkaXYgaWdvRmxleGlibGVGaWxsIGNsYXNzPVwiaWdvLWNvbnRlbnRcIj5cbiAgICAgICAgPGlnby1wYW5lbCBbdGl0bGVdPVwiZmVhdHVyZVRpdGxlXCIgKm5nSWY9XCJmZWF0dXJlICYmIG1lZGlhICE9PSAnbW9iaWxlJ1wiPlxuICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgIG1hdC1pY29uLWJ1dHRvblxuICAgICAgICAgICAgcGFuZWxMZWZ0QnV0dG9uXG4gICAgICAgICAgICBjbGFzcz1cImlnby1pY29uLWJ1dHRvblwiXG4gICAgICAgICAgICAoY2xpY2spPVwidG9nZ2xlVG9wUGFuZWwoKVwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPG1hdC1pY29uXG4gICAgICAgICAgICAgIFtzdmdJY29uXT1cIlxuICAgICAgICAgICAgICAgIFsnY29sbGFwc2VkJywgJ2luaXRpYWwnXS5pbmRleE9mKHRvcFBhbmVsLnN0YXRlKSA+PSAwXG4gICAgICAgICAgICAgICAgICA/ICdhcnJvd19kb3dud2FyZCdcbiAgICAgICAgICAgICAgICAgIDogJ2Fycm93X3Vwd2FyZCdcbiAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgID48L21hdC1pY29uPlxuICAgICAgICAgIDwvYnV0dG9uPlxuXG4gICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgbWF0LWljb24tYnV0dG9uXG4gICAgICAgICAgICBwYW5lbFJpZ2h0QnV0dG9uXG4gICAgICAgICAgICBjbGFzcz1cImlnby1pY29uLWJ1dHRvblwiXG4gICAgICAgICAgICAoY2xpY2spPVwiem9vbVRvRmVhdHVyZUV4dGVudCgpXCJcbiAgICAgICAgICAgICpuZ0lmPVwiZmVhdHVyZS5nZW9tZXRyeVwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPG1hdC1pY29uIHN2Z0ljb249XCJ6b29tLWluXCI+PC9tYXQtaWNvbj5cbiAgICAgICAgICA8L2J1dHRvbj5cblxuICAgICAgICAgIDxpZ28tZmVhdHVyZS1kZXRhaWxzXG4gICAgICAgICAgICBbZmVhdHVyZV09XCJmZWF0dXJlXCJcbiAgICAgICAgICAgICpuZ0lmPVwiWydjb2xsYXBzZWQnLCAnaW5pdGlhbCddLmluZGV4T2YodG9wUGFuZWwuc3RhdGUpID49IDBcIlxuICAgICAgICAgID5cbiAgICAgICAgICA8L2lnby1mZWF0dXJlLWRldGFpbHM+XG4gICAgICAgIDwvaWdvLXBhbmVsPlxuICAgICAgPC9kaXY+XG4gICAgPC9pZ28tZmxleGlibGU+XG4gIDwvZGl2PlxuPC9tYXQtc2lkZW5hdj5cbiJdfQ==
@@ -1,60 +1,24 @@
1
- import { CommonModule } from '@angular/common';
2
1
  import { NgModule } from '@angular/core';
3
- import { MatButtonModule } from '@angular/material/button';
4
- import { MatIconModule } from '@angular/material/icon';
5
- import { MatSidenavModule } from '@angular/material/sidenav';
6
- import { MatTooltipModule } from '@angular/material/tooltip';
7
- import { IgoFlexibleModule, IgoPanelModule } from '@igo2/common';
8
- import { IgoLanguageModule } from '@igo2/core';
9
- import { IgoFeatureModule } from '@igo2/geo';
10
- import { IgoContextManagerModule } from '../context-manager/context-manager.module';
11
2
  import { SidenavComponent } from './sidenav.component';
12
3
  import * as i0 from "@angular/core";
4
+ /**
5
+ * @deprecated import the SidenavComponent directly
6
+ */
13
7
  export class IgoSidenavModule {
14
8
  static forRoot() {
15
9
  return {
16
10
  ngModule: IgoSidenavModule
17
11
  };
18
12
  }
19
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: IgoSidenavModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
20
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: IgoSidenavModule, declarations: [SidenavComponent], imports: [CommonModule,
21
- MatIconModule,
22
- MatButtonModule,
23
- MatSidenavModule,
24
- MatTooltipModule,
25
- IgoLanguageModule,
26
- IgoPanelModule,
27
- IgoFlexibleModule,
28
- IgoFeatureModule,
29
- IgoContextManagerModule], exports: [SidenavComponent] });
30
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: IgoSidenavModule, imports: [CommonModule,
31
- MatIconModule,
32
- MatButtonModule,
33
- MatSidenavModule,
34
- MatTooltipModule,
35
- IgoLanguageModule,
36
- IgoPanelModule,
37
- IgoFlexibleModule,
38
- IgoFeatureModule,
39
- IgoContextManagerModule] });
13
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: IgoSidenavModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
14
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.2.1", ngImport: i0, type: IgoSidenavModule, imports: [SidenavComponent], exports: [SidenavComponent] });
15
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: IgoSidenavModule, imports: [SidenavComponent] });
40
16
  }
41
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: IgoSidenavModule, decorators: [{
17
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: IgoSidenavModule, decorators: [{
42
18
  type: NgModule,
43
19
  args: [{
44
- imports: [
45
- CommonModule,
46
- MatIconModule,
47
- MatButtonModule,
48
- MatSidenavModule,
49
- MatTooltipModule,
50
- IgoLanguageModule,
51
- IgoPanelModule,
52
- IgoFlexibleModule,
53
- IgoFeatureModule,
54
- IgoContextManagerModule
55
- ],
56
- exports: [SidenavComponent],
57
- declarations: [SidenavComponent]
20
+ imports: [SidenavComponent],
21
+ exports: [SidenavComponent]
58
22
  }]
59
23
  }] });
60
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZW5hdi5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb250ZXh0L3NyYy9saWIvc2lkZW5hdi9zaWRlbmF2Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUF1QixRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDOUQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUU3RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsY0FBYyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ2pFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUMvQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFFN0MsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDcEYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0scUJBQXFCLENBQUM7O0FBa0J2RCxNQUFNLE9BQU8sZ0JBQWdCO0lBQzNCLE1BQU0sQ0FBQyxPQUFPO1FBQ1osT0FBTztZQUNMLFFBQVEsRUFBRSxnQkFBZ0I7U0FDM0IsQ0FBQztJQUNKLENBQUM7d0dBTFUsZ0JBQWdCO3lHQUFoQixnQkFBZ0IsaUJBRlosZ0JBQWdCLGFBWjdCLFlBQVk7WUFDWixhQUFhO1lBQ2IsZUFBZTtZQUNmLGdCQUFnQjtZQUNoQixnQkFBZ0I7WUFDaEIsaUJBQWlCO1lBQ2pCLGNBQWM7WUFDZCxpQkFBaUI7WUFDakIsZ0JBQWdCO1lBQ2hCLHVCQUF1QixhQUVmLGdCQUFnQjt5R0FHZixnQkFBZ0IsWUFkekIsWUFBWTtZQUNaLGFBQWE7WUFDYixlQUFlO1lBQ2YsZ0JBQWdCO1lBQ2hCLGdCQUFnQjtZQUNoQixpQkFBaUI7WUFDakIsY0FBYztZQUNkLGlCQUFpQjtZQUNqQixnQkFBZ0I7WUFDaEIsdUJBQXVCOzs0RkFLZCxnQkFBZ0I7a0JBaEI1QixRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRTt3QkFDUCxZQUFZO3dCQUNaLGFBQWE7d0JBQ2IsZUFBZTt3QkFDZixnQkFBZ0I7d0JBQ2hCLGdCQUFnQjt3QkFDaEIsaUJBQWlCO3dCQUNqQixjQUFjO3dCQUNkLGlCQUFpQjt3QkFDakIsZ0JBQWdCO3dCQUNoQix1QkFBdUI7cUJBQ3hCO29CQUNELE9BQU8sRUFBRSxDQUFDLGdCQUFnQixDQUFDO29CQUMzQixZQUFZLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQztpQkFDakMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBNb2R1bGVXaXRoUHJvdmlkZXJzLCBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBNYXRCdXR0b25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xyXG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XHJcbmltcG9ydCB7IE1hdFNpZGVuYXZNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zaWRlbmF2JztcclxuaW1wb3J0IHsgTWF0VG9vbHRpcE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Rvb2x0aXAnO1xyXG5cclxuaW1wb3J0IHsgSWdvRmxleGlibGVNb2R1bGUsIElnb1BhbmVsTW9kdWxlIH0gZnJvbSAnQGlnbzIvY29tbW9uJztcclxuaW1wb3J0IHsgSWdvTGFuZ3VhZ2VNb2R1bGUgfSBmcm9tICdAaWdvMi9jb3JlJztcclxuaW1wb3J0IHsgSWdvRmVhdHVyZU1vZHVsZSB9IGZyb20gJ0BpZ28yL2dlbyc7XHJcblxyXG5pbXBvcnQgeyBJZ29Db250ZXh0TWFuYWdlck1vZHVsZSB9IGZyb20gJy4uL2NvbnRleHQtbWFuYWdlci9jb250ZXh0LW1hbmFnZXIubW9kdWxlJztcclxuaW1wb3J0IHsgU2lkZW5hdkNvbXBvbmVudCB9IGZyb20gJy4vc2lkZW5hdi5jb21wb25lbnQnO1xyXG5cclxuQE5nTW9kdWxlKHtcclxuICBpbXBvcnRzOiBbXHJcbiAgICBDb21tb25Nb2R1bGUsXHJcbiAgICBNYXRJY29uTW9kdWxlLFxyXG4gICAgTWF0QnV0dG9uTW9kdWxlLFxyXG4gICAgTWF0U2lkZW5hdk1vZHVsZSxcclxuICAgIE1hdFRvb2x0aXBNb2R1bGUsXHJcbiAgICBJZ29MYW5ndWFnZU1vZHVsZSxcclxuICAgIElnb1BhbmVsTW9kdWxlLFxyXG4gICAgSWdvRmxleGlibGVNb2R1bGUsXHJcbiAgICBJZ29GZWF0dXJlTW9kdWxlLFxyXG4gICAgSWdvQ29udGV4dE1hbmFnZXJNb2R1bGVcclxuICBdLFxyXG4gIGV4cG9ydHM6IFtTaWRlbmF2Q29tcG9uZW50XSxcclxuICBkZWNsYXJhdGlvbnM6IFtTaWRlbmF2Q29tcG9uZW50XVxyXG59KVxyXG5leHBvcnQgY2xhc3MgSWdvU2lkZW5hdk1vZHVsZSB7XHJcbiAgc3RhdGljIGZvclJvb3QoKTogTW9kdWxlV2l0aFByb3ZpZGVyczxJZ29TaWRlbmF2TW9kdWxlPiB7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICBuZ01vZHVsZTogSWdvU2lkZW5hdk1vZHVsZVxyXG4gICAgfTtcclxuICB9XHJcbn1cclxuIl19
24
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZW5hdi5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb250ZXh0L3NyYy9saWIvc2lkZW5hdi9zaWRlbmF2Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQXVCLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUU5RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7QUFFdkQ7O0dBRUc7QUFLSCxNQUFNLE9BQU8sZ0JBQWdCO0lBQzNCLE1BQU0sQ0FBQyxPQUFPO1FBQ1osT0FBTztZQUNMLFFBQVEsRUFBRSxnQkFBZ0I7U0FDM0IsQ0FBQztJQUNKLENBQUM7dUdBTFUsZ0JBQWdCO3dHQUFoQixnQkFBZ0IsWUFIakIsZ0JBQWdCLGFBQ2hCLGdCQUFnQjt3R0FFZixnQkFBZ0IsWUFIakIsZ0JBQWdCOzsyRkFHZixnQkFBZ0I7a0JBSjVCLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFLENBQUMsZ0JBQWdCLENBQUM7b0JBQzNCLE9BQU8sRUFBRSxDQUFDLGdCQUFnQixDQUFDO2lCQUM1QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE1vZHVsZVdpdGhQcm92aWRlcnMsIE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5pbXBvcnQgeyBTaWRlbmF2Q29tcG9uZW50IH0gZnJvbSAnLi9zaWRlbmF2LmNvbXBvbmVudCc7XHJcblxyXG4vKipcclxuICogQGRlcHJlY2F0ZWQgaW1wb3J0IHRoZSBTaWRlbmF2Q29tcG9uZW50IGRpcmVjdGx5XHJcbiAqL1xyXG5ATmdNb2R1bGUoe1xyXG4gIGltcG9ydHM6IFtTaWRlbmF2Q29tcG9uZW50XSxcclxuICBleHBvcnRzOiBbU2lkZW5hdkNvbXBvbmVudF1cclxufSlcclxuZXhwb3J0IGNsYXNzIElnb1NpZGVuYXZNb2R1bGUge1xyXG4gIHN0YXRpYyBmb3JSb290KCk6IE1vZHVsZVdpdGhQcm92aWRlcnM8SWdvU2lkZW5hdk1vZHVsZT4ge1xyXG4gICAgcmV0dXJuIHtcclxuICAgICAgbmdNb2R1bGU6IElnb1NpZGVuYXZNb2R1bGVcclxuICAgIH07XHJcbiAgfVxyXG59XHJcbiJdfQ==