@igo2/context 18.0.1-next.2 → 18.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (68) hide show
  1. package/esm2022/igo2-context.mjs +5 -0
  2. package/esm2022/lib/context-import-export/context-import-export/context-import-export.component.mjs +156 -0
  3. package/esm2022/lib/context-import-export/context-import-export.module.mjs +24 -0
  4. package/esm2022/lib/context-import-export/index.mjs +3 -0
  5. package/esm2022/lib/context-import-export/shared/context-export.errors.mjs +15 -0
  6. package/esm2022/lib/context-import-export/shared/context-export.interface.mjs +2 -0
  7. package/esm2022/lib/context-import-export/shared/context-export.service.mjs +38 -0
  8. package/esm2022/lib/context-import-export/shared/context-export.utils.mjs +15 -0
  9. package/esm2022/lib/context-import-export/shared/context-import.errors.mjs +33 -0
  10. package/esm2022/lib/context-import-export/shared/context-import.service.mjs +82 -0
  11. package/esm2022/lib/context-import-export/shared/context-import.utils.mjs +148 -0
  12. package/esm2022/lib/context-import-export/shared/index.mjs +8 -0
  13. package/esm2022/lib/context-manager/context-edit/context-edit-binding.directive.mjs +56 -0
  14. package/esm2022/lib/context-manager/context-edit/context-edit.component.mjs +35 -0
  15. package/esm2022/lib/context-manager/context-edit/index.mjs +3 -0
  16. package/esm2022/lib/context-manager/context-form/context-form.component.mjs +117 -0
  17. package/esm2022/lib/context-manager/context-form/index.mjs +2 -0
  18. package/esm2022/lib/context-manager/context-item/context-item.component.mjs +96 -0
  19. package/esm2022/lib/context-manager/context-item/index.mjs +2 -0
  20. package/esm2022/lib/context-manager/context-list/context-list-binding.directive.mjs +259 -0
  21. package/esm2022/lib/context-manager/context-list/context-list.component.mjs +424 -0
  22. package/esm2022/lib/context-manager/context-list/context-list.enum.mjs +7 -0
  23. package/esm2022/lib/context-manager/context-list/index.mjs +3 -0
  24. package/esm2022/lib/context-manager/context-manager.directive.mjs +19 -0
  25. package/esm2022/lib/context-manager/context-manager.module.mjs +77 -0
  26. package/esm2022/lib/context-manager/context-permissions/context-permissions-binding.directive.mjs +109 -0
  27. package/esm2022/lib/context-manager/context-permissions/context-permissions.component.mjs +170 -0
  28. package/esm2022/lib/context-manager/context-permissions/index.mjs +3 -0
  29. package/esm2022/lib/context-manager/index.mjs +8 -0
  30. package/esm2022/lib/context-manager/shared/context.enum.mjs +13 -0
  31. package/esm2022/lib/context-manager/shared/context.interface.mjs +2 -0
  32. package/esm2022/lib/context-manager/shared/context.service.mjs +616 -0
  33. package/esm2022/lib/context-manager/shared/index.mjs +6 -0
  34. package/esm2022/lib/context-manager/shared/layer-context.directive.mjs +176 -0
  35. package/esm2022/lib/context-manager/shared/map-context.directive.mjs +68 -0
  36. package/esm2022/lib/context-map-button/bookmark-button/bookmark-button.component.mjs +69 -0
  37. package/esm2022/lib/context-map-button/bookmark-button/bookmark-dialog.component.mjs +37 -0
  38. package/esm2022/lib/context-map-button/bookmark-button/index.mjs +3 -0
  39. package/esm2022/lib/context-map-button/context-map-button.directive.mjs +10 -0
  40. package/esm2022/lib/context-map-button/context-map-button.module.mjs +48 -0
  41. package/esm2022/lib/context-map-button/index.mjs +5 -0
  42. package/esm2022/lib/context-map-button/poi-button/index.mjs +4 -0
  43. package/esm2022/lib/context-map-button/poi-button/poi-button.component.mjs +160 -0
  44. package/esm2022/lib/context-map-button/poi-button/poi-dialog.component.mjs +37 -0
  45. package/esm2022/lib/context-map-button/poi-button/shared/index.mjs +3 -0
  46. package/esm2022/lib/context-map-button/poi-button/shared/poi.interface.mjs +2 -0
  47. package/esm2022/lib/context-map-button/poi-button/shared/poi.service.mjs +38 -0
  48. package/esm2022/lib/context-map-button/user-button/index.mjs +3 -0
  49. package/esm2022/lib/context-map-button/user-button/user-button.animation.mjs +17 -0
  50. package/esm2022/lib/context-map-button/user-button/user-button.component.mjs +82 -0
  51. package/esm2022/lib/context-map-button/user-button/user-dialog.component.mjs +43 -0
  52. package/esm2022/lib/context.module.mjs +42 -0
  53. package/esm2022/lib/environment/environment.interface.mjs +2 -0
  54. package/esm2022/lib/environment/index.mjs +2 -0
  55. package/esm2022/lib/share-map/index.mjs +6 -0
  56. package/esm2022/lib/share-map/share-map/share-map-api.component.mjs +111 -0
  57. package/esm2022/lib/share-map/share-map/share-map-url.component.mjs +78 -0
  58. package/esm2022/lib/share-map/share-map/share-map.component.mjs +35 -0
  59. package/esm2022/lib/share-map/share-map.module.mjs +31 -0
  60. package/esm2022/lib/share-map/shared/index.mjs +2 -0
  61. package/esm2022/lib/share-map/shared/share-map.service.mjs +223 -0
  62. package/esm2022/lib/sidenav/index.mjs +2 -0
  63. package/esm2022/lib/sidenav/sidenav.component.mjs +122 -0
  64. package/esm2022/lib/sidenav/sidenav.module.mjs +24 -0
  65. package/esm2022/public_api.mjs +16 -0
  66. package/fesm2022/igo2-context.mjs +118 -118
  67. package/fesm2022/igo2-context.mjs.map +1 -1
  68. package/package.json +14 -12
@@ -0,0 +1,160 @@
1
+ import { NgFor } from '@angular/common';
2
+ import { Component, Input } from '@angular/core';
3
+ import { MatButtonModule } from '@angular/material/button';
4
+ import { MatOptionModule } from '@angular/material/core';
5
+ import { MatDialog } from '@angular/material/dialog';
6
+ import { MatDividerModule } from '@angular/material/divider';
7
+ import { MatIconModule } from '@angular/material/icon';
8
+ import { MatSelectModule } from '@angular/material/select';
9
+ import { AuthService } from '@igo2/auth';
10
+ import { ConfirmDialogService } from '@igo2/common/confirm-dialog';
11
+ import { StopPropagationDirective } from '@igo2/common/stop-propagation';
12
+ import { LanguageService } from '@igo2/core/language';
13
+ import { IgoLanguageModule } from '@igo2/core/language';
14
+ import { MessageService } from '@igo2/core/message';
15
+ import * as oleasing from 'ol/easing';
16
+ import olPoint from 'ol/geom/Point';
17
+ import * as olproj from 'ol/proj';
18
+ import { take } from 'rxjs/operators';
19
+ import { PoiDialogComponent } from './poi-dialog.component';
20
+ import { PoiService } from './shared/poi.service';
21
+ import * as i0 from "@angular/core";
22
+ import * as i1 from "@angular/material/dialog";
23
+ import * as i2 from "@igo2/auth";
24
+ import * as i3 from "./shared/poi.service";
25
+ import * as i4 from "@igo2/core/message";
26
+ import * as i5 from "@igo2/core/language";
27
+ import * as i6 from "@igo2/common/confirm-dialog";
28
+ import * as i7 from "@angular/material/select";
29
+ import * as i8 from "@angular/material/core";
30
+ import * as i9 from "@angular/material/button";
31
+ import * as i10 from "@angular/material/icon";
32
+ import * as i11 from "@angular/material/divider";
33
+ import * as i12 from "@ngx-translate/core";
34
+ export class PoiButtonComponent {
35
+ dialog;
36
+ authService;
37
+ poiService;
38
+ messageService;
39
+ languageService;
40
+ confirmDialogService;
41
+ get map() {
42
+ return this._map;
43
+ }
44
+ set map(value) {
45
+ this._map = value;
46
+ }
47
+ _map;
48
+ get color() {
49
+ return this._color;
50
+ }
51
+ set color(value) {
52
+ this._color = value;
53
+ }
54
+ _color;
55
+ pois;
56
+ authenticate$$;
57
+ constructor(dialog, authService, poiService, messageService, languageService, confirmDialogService) {
58
+ this.dialog = dialog;
59
+ this.authService = authService;
60
+ this.poiService = poiService;
61
+ this.messageService = messageService;
62
+ this.languageService = languageService;
63
+ this.confirmDialogService = confirmDialogService;
64
+ }
65
+ ngOnInit() {
66
+ this.authenticate$$ = this.authService.authenticate$.subscribe((auth) => {
67
+ if (auth) {
68
+ this.getPois();
69
+ }
70
+ });
71
+ }
72
+ ngOnDestroy() {
73
+ this.authenticate$$.unsubscribe();
74
+ }
75
+ deletePoi(poi) {
76
+ if (poi && poi.id) {
77
+ this.confirmDialogService
78
+ .open(this.languageService.translate.instant('igo.context.poiButton.dialog.confirmDelete'))
79
+ .subscribe((confirm) => {
80
+ if (confirm) {
81
+ this.poiService.delete(poi.id).subscribe(() => {
82
+ this.messageService.info('igo.context.poiButton.dialog.deleteMsg', 'igo.context.poiButton.dialog.deleteTitle', undefined, { value: poi.title });
83
+ this.pois = this.pois.filter((p) => p.id !== poi.id);
84
+ }, (err) => {
85
+ err.error.title = 'DELETE Pois';
86
+ this.messageService.showError(err);
87
+ });
88
+ }
89
+ });
90
+ }
91
+ }
92
+ getPois() {
93
+ this.poiService
94
+ .get()
95
+ .pipe(take(1))
96
+ .subscribe((rep) => {
97
+ this.pois = rep;
98
+ }, (err) => {
99
+ err.error.title = 'GET Pois';
100
+ this.messageService.showError(err);
101
+ });
102
+ }
103
+ createPoi() {
104
+ const view = this.map.ol.getView();
105
+ const proj = view.getProjection().getCode();
106
+ const center = new olPoint(view.getCenter()).transform(proj, 'EPSG:4326');
107
+ const poi = {
108
+ title: '',
109
+ x: center.getCoordinates()[0],
110
+ y: center.getCoordinates()[1],
111
+ zoom: view.getZoom()
112
+ };
113
+ this.dialog
114
+ .open(PoiDialogComponent, { disableClose: false })
115
+ .afterClosed()
116
+ .subscribe((title) => {
117
+ if (title) {
118
+ poi.title = title;
119
+ this.poiService.create(poi).subscribe((newPoi) => {
120
+ this.messageService.success('igo.context.poiButton.dialog.createMsg', 'igo.context.poiButton.dialog.createTitle', undefined, { value: poi.title });
121
+ poi.id = newPoi.id;
122
+ this.pois.push(poi);
123
+ }, (err) => {
124
+ err.error.title = 'POST Pois';
125
+ this.messageService.showError(err);
126
+ });
127
+ }
128
+ });
129
+ }
130
+ zoomOnPoi(id) {
131
+ const poi = this.pois.find((p) => p.id === id);
132
+ const center = olproj.fromLonLat([Number(poi.x), Number(poi.y)], this.map.projection);
133
+ this.map.ol.getView().animate({
134
+ center,
135
+ zoom: poi.zoom,
136
+ duration: 500,
137
+ easing: oleasing.easeOut
138
+ });
139
+ }
140
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PoiButtonComponent, deps: [{ token: i1.MatDialog }, { token: i2.AuthService }, { token: i3.PoiService }, { token: i4.MessageService }, { token: i5.LanguageService }, { token: i6.ConfirmDialogService }], target: i0.ɵɵFactoryTarget.Component });
141
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: PoiButtonComponent, isStandalone: true, selector: "igo-poi-button", inputs: { map: "map", color: "color" }, providers: [PoiService], ngImport: i0, template: "<mat-select\n [placeholder]=\"'igo.context.poiButton.placeholder' | translate\"\n floatPlaceholder=\"never\"\n>\n <mat-option (click)=\"createPoi()\" class=\"poi-option\">\n <div class=\"titlePoi\">\n {{ 'igo.context.poiButton.create' | translate }}\n </div>\n <button\n igoStopPropagation\n mat-icon-button\n color=\"primary\"\n (click)=\"createPoi()\"\n >\n <mat-icon>add-circle</mat-icon>\n </button>\n </mat-option>\n <mat-divider></mat-divider>\n <mat-option\n *ngFor=\"let poi of pois\"\n class=\"poi-option\"\n [value]=\"poi.id\"\n (click)=\"zoomOnPoi(poi.id)\"\n >\n <div class=\"titlePoi\">{{ poi.title }}</div>\n <button\n mat-icon-button\n igoStopPropagation\n color=\"warn\"\n (click)=\"deletePoi(poi)\"\n >\n <mat-icon>delete</mat-icon>\n </button>\n </mat-option>\n</mat-select>\n", styles: [":host{background-color:#fff;padding:0 8px;height:100%}mat-select{width:150px;height:100%}mat-select ::ng-deep .mat-mdc-select-trigger{height:100%}::ng-deep .poi-option .mdc-list-item__primary-text{display:flex;justify-content:space-between;align-items:center;flex:1;overflow:visible}::ng-deep .poi-option button{margin-right:-16px}\n"], dependencies: [{ kind: "ngmodule", type: MatSelectModule }, { kind: "component", type: i7.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "component", type: i8.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "ngmodule", type: MatOptionModule }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i9.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "directive", type: StopPropagationDirective, selector: "[igoStopPropagation]" }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i10.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: MatDividerModule }, { kind: "component", type: i11.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "ngmodule", type: IgoLanguageModule }, { kind: "pipe", type: i12.TranslatePipe, name: "translate" }] });
142
+ }
143
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PoiButtonComponent, decorators: [{
144
+ type: Component,
145
+ args: [{ selector: 'igo-poi-button', standalone: true, imports: [
146
+ MatSelectModule,
147
+ MatOptionModule,
148
+ MatButtonModule,
149
+ StopPropagationDirective,
150
+ MatIconModule,
151
+ MatDividerModule,
152
+ NgFor,
153
+ IgoLanguageModule
154
+ ], providers: [PoiService], template: "<mat-select\n [placeholder]=\"'igo.context.poiButton.placeholder' | translate\"\n floatPlaceholder=\"never\"\n>\n <mat-option (click)=\"createPoi()\" class=\"poi-option\">\n <div class=\"titlePoi\">\n {{ 'igo.context.poiButton.create' | translate }}\n </div>\n <button\n igoStopPropagation\n mat-icon-button\n color=\"primary\"\n (click)=\"createPoi()\"\n >\n <mat-icon>add-circle</mat-icon>\n </button>\n </mat-option>\n <mat-divider></mat-divider>\n <mat-option\n *ngFor=\"let poi of pois\"\n class=\"poi-option\"\n [value]=\"poi.id\"\n (click)=\"zoomOnPoi(poi.id)\"\n >\n <div class=\"titlePoi\">{{ poi.title }}</div>\n <button\n mat-icon-button\n igoStopPropagation\n color=\"warn\"\n (click)=\"deletePoi(poi)\"\n >\n <mat-icon>delete</mat-icon>\n </button>\n </mat-option>\n</mat-select>\n", styles: [":host{background-color:#fff;padding:0 8px;height:100%}mat-select{width:150px;height:100%}mat-select ::ng-deep .mat-mdc-select-trigger{height:100%}::ng-deep .poi-option .mdc-list-item__primary-text{display:flex;justify-content:space-between;align-items:center;flex:1;overflow:visible}::ng-deep .poi-option button{margin-right:-16px}\n"] }]
155
+ }], ctorParameters: () => [{ type: i1.MatDialog }, { type: i2.AuthService }, { type: i3.PoiService }, { type: i4.MessageService }, { type: i5.LanguageService }, { type: i6.ConfirmDialogService }], propDecorators: { map: [{
156
+ type: Input
157
+ }], color: [{
158
+ type: Input
159
+ }] } });
160
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9pLWJ1dHRvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb250ZXh0L3NyYy9saWIvY29udGV4dC1tYXAtYnV0dG9uL3BvaS1idXR0b24vcG9pLWJ1dHRvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb250ZXh0L3NyYy9saWIvY29udGV4dC1tYXAtYnV0dG9uL3BvaS1idXR0b24vcG9pLWJ1dHRvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDeEMsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQXFCLE1BQU0sZUFBZSxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDekQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzdELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFM0QsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUN6QyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUNuRSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUN6RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdEQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDeEQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBR3BELE9BQU8sS0FBSyxRQUFRLE1BQU0sV0FBVyxDQUFDO0FBQ3RDLE9BQU8sT0FBTyxNQUFNLGVBQWUsQ0FBQztBQUNwQyxPQUFPLEtBQUssTUFBTSxNQUFNLFNBQVMsQ0FBQztBQUdsQyxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFdEMsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFNUQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFDOzs7Ozs7Ozs7Ozs7OztBQW1CbEQsTUFBTSxPQUFPLGtCQUFrQjtJQXVCbkI7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBM0JWLElBQ0ksR0FBRztRQUNMLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQztJQUNuQixDQUFDO0lBQ0QsSUFBSSxHQUFHLENBQUMsS0FBYTtRQUNuQixJQUFJLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQztJQUNwQixDQUFDO0lBQ08sSUFBSSxDQUFTO0lBRXJCLElBQ0ksS0FBSztRQUNQLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUNyQixDQUFDO0lBQ0QsSUFBSSxLQUFLLENBQUMsS0FBYTtRQUNyQixJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztJQUN0QixDQUFDO0lBQ08sTUFBTSxDQUFTO0lBRWhCLElBQUksQ0FBUTtJQUNYLGNBQWMsQ0FBZTtJQUVyQyxZQUNVLE1BQWlCLEVBQ2pCLFdBQXdCLEVBQ3hCLFVBQXNCLEVBQ3RCLGNBQThCLEVBQzlCLGVBQWdDLEVBQ2hDLG9CQUEwQztRQUwxQyxXQUFNLEdBQU4sTUFBTSxDQUFXO1FBQ2pCLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBQ3hCLGVBQVUsR0FBVixVQUFVLENBQVk7UUFDdEIsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBQzlCLG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQUNoQyx5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXNCO0lBQ2pELENBQUM7SUFFSixRQUFRO1FBQ04sSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTtZQUN0RSxJQUFJLElBQUksRUFBRSxDQUFDO2dCQUNULElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNqQixDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxjQUFjLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDcEMsQ0FBQztJQUVELFNBQVMsQ0FBQyxHQUFRO1FBQ2hCLElBQUksR0FBRyxJQUFJLEdBQUcsQ0FBQyxFQUFFLEVBQUUsQ0FBQztZQUNsQixJQUFJLENBQUMsb0JBQW9CO2lCQUN0QixJQUFJLENBQ0gsSUFBSSxDQUFDLGVBQWUsQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUNwQyw0Q0FBNEMsQ0FDN0MsQ0FDRjtpQkFDQSxTQUFTLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRTtnQkFDckIsSUFBSSxPQUFPLEVBQUUsQ0FBQztvQkFDWixJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsU0FBUyxDQUN0QyxHQUFHLEVBQUU7d0JBQ0gsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQ3RCLHdDQUF3QyxFQUN4QywwQ0FBMEMsRUFDMUMsU0FBUyxFQUNULEVBQUUsS0FBSyxFQUFFLEdBQUcsQ0FBQyxLQUFLLEVBQUUsQ0FDckIsQ0FBQzt3QkFDRixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxLQUFLLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQztvQkFDdkQsQ0FBQyxFQUNELENBQUMsR0FBRyxFQUFFLEVBQUU7d0JBQ04sR0FBRyxDQUFDLEtBQUssQ0FBQyxLQUFLLEdBQUcsYUFBYSxDQUFDO3dCQUNoQyxJQUFJLENBQUMsY0FBYyxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQztvQkFDckMsQ0FBQyxDQUNGLENBQUM7Z0JBQ0osQ0FBQztZQUNILENBQUMsQ0FBQyxDQUFDO1FBQ1AsQ0FBQztJQUNILENBQUM7SUFFTyxPQUFPO1FBQ2IsSUFBSSxDQUFDLFVBQVU7YUFDWixHQUFHLEVBQUU7YUFDTCxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO2FBQ2IsU0FBUyxDQUNSLENBQUMsR0FBRyxFQUFFLEVBQUU7WUFDTixJQUFJLENBQUMsSUFBSSxHQUFHLEdBQUcsQ0FBQztRQUNsQixDQUFDLEVBQ0QsQ0FBQyxHQUFHLEVBQUUsRUFBRTtZQUNOLEdBQUcsQ0FBQyxLQUFLLENBQUMsS0FBSyxHQUFHLFVBQVUsQ0FBQztZQUM3QixJQUFJLENBQUMsY0FBYyxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNyQyxDQUFDLENBQ0YsQ0FBQztJQUNOLENBQUM7SUFFRCxTQUFTO1FBQ1AsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDbkMsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQzVDLE1BQU0sTUFBTSxHQUFRLElBQUksT0FBTyxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDLFNBQVMsQ0FDekQsSUFBSSxFQUNKLFdBQVcsQ0FDWixDQUFDO1FBRUYsTUFBTSxHQUFHLEdBQVE7WUFDZixLQUFLLEVBQUUsRUFBRTtZQUNULENBQUMsRUFBRSxNQUFNLENBQUMsY0FBYyxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQzdCLENBQUMsRUFBRSxNQUFNLENBQUMsY0FBYyxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQzdCLElBQUksRUFBRSxJQUFJLENBQUMsT0FBTyxFQUFFO1NBQ3JCLENBQUM7UUFFRixJQUFJLENBQUMsTUFBTTthQUNSLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsQ0FBQzthQUNqRCxXQUFXLEVBQUU7YUFDYixTQUFTLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTtZQUNuQixJQUFJLEtBQUssRUFBRSxDQUFDO2dCQUNWLEdBQUcsQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO2dCQUNsQixJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxTQUFTLENBQ25DLENBQUMsTUFBTSxFQUFFLEVBQUU7b0JBQ1QsSUFBSSxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQ3pCLHdDQUF3QyxFQUN4QywwQ0FBMEMsRUFDMUMsU0FBUyxFQUNULEVBQUUsS0FBSyxFQUFFLEdBQUcsQ0FBQyxLQUFLLEVBQUUsQ0FDckIsQ0FBQztvQkFDRixHQUFHLENBQUMsRUFBRSxHQUFHLE1BQU0sQ0FBQyxFQUFFLENBQUM7b0JBQ25CLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO2dCQUN0QixDQUFDLEVBQ0QsQ0FBQyxHQUFHLEVBQUUsRUFBRTtvQkFDTixHQUFHLENBQUMsS0FBSyxDQUFDLEtBQUssR0FBRyxXQUFXLENBQUM7b0JBQzlCLElBQUksQ0FBQyxjQUFjLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxDQUFDO2dCQUNyQyxDQUFDLENBQ0YsQ0FBQztZQUNKLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFRCxTQUFTLENBQUMsRUFBRTtRQUNWLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDO1FBRS9DLE1BQU0sTUFBTSxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQzlCLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQzlCLElBQUksQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUNwQixDQUFDO1FBRUYsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsT0FBTyxFQUFFLENBQUMsT0FBTyxDQUFDO1lBQzVCLE1BQU07WUFDTixJQUFJLEVBQUUsR0FBRyxDQUFDLElBQUk7WUFDZCxRQUFRLEVBQUUsR0FBRztZQUNiLE1BQU0sRUFBRSxRQUFRLENBQUMsT0FBTztTQUN6QixDQUFDLENBQUM7SUFDTCxDQUFDO3dHQS9JVSxrQkFBa0I7NEZBQWxCLGtCQUFrQixxR0FGbEIsQ0FBQyxVQUFVLENBQUMsMEJDM0N6QixrNEJBbUNBLHNZRERJLGVBQWUsbXJCQUNmLGVBQWUsOEJBQ2YsZUFBZSw0SUFDZix3QkFBd0IsZ0VBQ3hCLGFBQWEsb0xBQ2IsZ0JBQWdCLG9JQUNoQixLQUFLLGtIQUNMLGlCQUFpQjs7NEZBSVIsa0JBQWtCO2tCQWpCOUIsU0FBUzsrQkFDRSxnQkFBZ0IsY0FHZCxJQUFJLFdBQ1A7d0JBQ1AsZUFBZTt3QkFDZixlQUFlO3dCQUNmLGVBQWU7d0JBQ2Ysd0JBQXdCO3dCQUN4QixhQUFhO3dCQUNiLGdCQUFnQjt3QkFDaEIsS0FBSzt3QkFDTCxpQkFBaUI7cUJBQ2xCLGFBQ1UsQ0FBQyxVQUFVLENBQUM7K05BSW5CLEdBQUc7c0JBRE4sS0FBSztnQkFVRixLQUFLO3NCQURSLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ0ZvciB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTWF0QnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcbmltcG9ydCB7IE1hdE9wdGlvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NvcmUnO1xuaW1wb3J0IHsgTWF0RGlhbG9nIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcbmltcG9ydCB7IE1hdERpdmlkZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaXZpZGVyJztcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcbmltcG9ydCB7IE1hdFNlbGVjdE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NlbGVjdCc7XG5cbmltcG9ydCB7IEF1dGhTZXJ2aWNlIH0gZnJvbSAnQGlnbzIvYXV0aCc7XG5pbXBvcnQgeyBDb25maXJtRGlhbG9nU2VydmljZSB9IGZyb20gJ0BpZ28yL2NvbW1vbi9jb25maXJtLWRpYWxvZyc7XG5pbXBvcnQgeyBTdG9wUHJvcGFnYXRpb25EaXJlY3RpdmUgfSBmcm9tICdAaWdvMi9jb21tb24vc3RvcC1wcm9wYWdhdGlvbic7XG5pbXBvcnQgeyBMYW5ndWFnZVNlcnZpY2UgfSBmcm9tICdAaWdvMi9jb3JlL2xhbmd1YWdlJztcbmltcG9ydCB7IElnb0xhbmd1YWdlTW9kdWxlIH0gZnJvbSAnQGlnbzIvY29yZS9sYW5ndWFnZSc7XG5pbXBvcnQgeyBNZXNzYWdlU2VydmljZSB9IGZyb20gJ0BpZ28yL2NvcmUvbWVzc2FnZSc7XG5pbXBvcnQgdHlwZSB7IElnb01hcCB9IGZyb20gJ0BpZ28yL2dlbyc7XG5cbmltcG9ydCAqIGFzIG9sZWFzaW5nIGZyb20gJ29sL2Vhc2luZyc7XG5pbXBvcnQgb2xQb2ludCBmcm9tICdvbC9nZW9tL1BvaW50JztcbmltcG9ydCAqIGFzIG9scHJvaiBmcm9tICdvbC9wcm9qJztcblxuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB0YWtlIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBQb2lEaWFsb2dDb21wb25lbnQgfSBmcm9tICcuL3BvaS1kaWFsb2cuY29tcG9uZW50JztcbmltcG9ydCB7IFBvaSB9IGZyb20gJy4vc2hhcmVkL3BvaS5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgUG9pU2VydmljZSB9IGZyb20gJy4vc2hhcmVkL3BvaS5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaWdvLXBvaS1idXR0b24nLFxuICB0ZW1wbGF0ZVVybDogJy4vcG9pLWJ1dHRvbi5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3BvaS1idXR0b24uY29tcG9uZW50LnNjc3MnXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIE1hdFNlbGVjdE1vZHVsZSxcbiAgICBNYXRPcHRpb25Nb2R1bGUsXG4gICAgTWF0QnV0dG9uTW9kdWxlLFxuICAgIFN0b3BQcm9wYWdhdGlvbkRpcmVjdGl2ZSxcbiAgICBNYXRJY29uTW9kdWxlLFxuICAgIE1hdERpdmlkZXJNb2R1bGUsXG4gICAgTmdGb3IsXG4gICAgSWdvTGFuZ3VhZ2VNb2R1bGVcbiAgXSxcbiAgcHJvdmlkZXJzOiBbUG9pU2VydmljZV1cbn0pXG5leHBvcnQgY2xhc3MgUG9pQnV0dG9uQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBASW5wdXQoKVxuICBnZXQgbWFwKCk6IElnb01hcCB7XG4gICAgcmV0dXJuIHRoaXMuX21hcDtcbiAgfVxuICBzZXQgbWFwKHZhbHVlOiBJZ29NYXApIHtcbiAgICB0aGlzLl9tYXAgPSB2YWx1ZTtcbiAgfVxuICBwcml2YXRlIF9tYXA6IElnb01hcDtcblxuICBASW5wdXQoKVxuICBnZXQgY29sb3IoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fY29sb3I7XG4gIH1cbiAgc2V0IGNvbG9yKHZhbHVlOiBzdHJpbmcpIHtcbiAgICB0aGlzLl9jb2xvciA9IHZhbHVlO1xuICB9XG4gIHByaXZhdGUgX2NvbG9yOiBzdHJpbmc7XG5cbiAgcHVibGljIHBvaXM6IFBvaVtdO1xuICBwcml2YXRlIGF1dGhlbnRpY2F0ZSQkOiBTdWJzY3JpcHRpb247XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBkaWFsb2c6IE1hdERpYWxvZyxcbiAgICBwcml2YXRlIGF1dGhTZXJ2aWNlOiBBdXRoU2VydmljZSxcbiAgICBwcml2YXRlIHBvaVNlcnZpY2U6IFBvaVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBtZXNzYWdlU2VydmljZTogTWVzc2FnZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBsYW5ndWFnZVNlcnZpY2U6IExhbmd1YWdlU2VydmljZSxcbiAgICBwcml2YXRlIGNvbmZpcm1EaWFsb2dTZXJ2aWNlOiBDb25maXJtRGlhbG9nU2VydmljZVxuICApIHt9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5hdXRoZW50aWNhdGUkJCA9IHRoaXMuYXV0aFNlcnZpY2UuYXV0aGVudGljYXRlJC5zdWJzY3JpYmUoKGF1dGgpID0+IHtcbiAgICAgIGlmIChhdXRoKSB7XG4gICAgICAgIHRoaXMuZ2V0UG9pcygpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5hdXRoZW50aWNhdGUkJC51bnN1YnNjcmliZSgpO1xuICB9XG5cbiAgZGVsZXRlUG9pKHBvaTogUG9pKSB7XG4gICAgaWYgKHBvaSAmJiBwb2kuaWQpIHtcbiAgICAgIHRoaXMuY29uZmlybURpYWxvZ1NlcnZpY2VcbiAgICAgICAgLm9wZW4oXG4gICAgICAgICAgdGhpcy5sYW5ndWFnZVNlcnZpY2UudHJhbnNsYXRlLmluc3RhbnQoXG4gICAgICAgICAgICAnaWdvLmNvbnRleHQucG9pQnV0dG9uLmRpYWxvZy5jb25maXJtRGVsZXRlJ1xuICAgICAgICAgIClcbiAgICAgICAgKVxuICAgICAgICAuc3Vic2NyaWJlKChjb25maXJtKSA9PiB7XG4gICAgICAgICAgaWYgKGNvbmZpcm0pIHtcbiAgICAgICAgICAgIHRoaXMucG9pU2VydmljZS5kZWxldGUocG9pLmlkKS5zdWJzY3JpYmUoXG4gICAgICAgICAgICAgICgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLm1lc3NhZ2VTZXJ2aWNlLmluZm8oXG4gICAgICAgICAgICAgICAgICAnaWdvLmNvbnRleHQucG9pQnV0dG9uLmRpYWxvZy5kZWxldGVNc2cnLFxuICAgICAgICAgICAgICAgICAgJ2lnby5jb250ZXh0LnBvaUJ1dHRvbi5kaWFsb2cuZGVsZXRlVGl0bGUnLFxuICAgICAgICAgICAgICAgICAgdW5kZWZpbmVkLFxuICAgICAgICAgICAgICAgICAgeyB2YWx1ZTogcG9pLnRpdGxlIH1cbiAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgIHRoaXMucG9pcyA9IHRoaXMucG9pcy5maWx0ZXIoKHApID0+IHAuaWQgIT09IHBvaS5pZCk7XG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIChlcnIpID0+IHtcbiAgICAgICAgICAgICAgICBlcnIuZXJyb3IudGl0bGUgPSAnREVMRVRFIFBvaXMnO1xuICAgICAgICAgICAgICAgIHRoaXMubWVzc2FnZVNlcnZpY2Uuc2hvd0Vycm9yKGVycik7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICk7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGdldFBvaXMoKSB7XG4gICAgdGhpcy5wb2lTZXJ2aWNlXG4gICAgICAuZ2V0KClcbiAgICAgIC5waXBlKHRha2UoMSkpXG4gICAgICAuc3Vic2NyaWJlKFxuICAgICAgICAocmVwKSA9PiB7XG4gICAgICAgICAgdGhpcy5wb2lzID0gcmVwO1xuICAgICAgICB9LFxuICAgICAgICAoZXJyKSA9PiB7XG4gICAgICAgICAgZXJyLmVycm9yLnRpdGxlID0gJ0dFVCBQb2lzJztcbiAgICAgICAgICB0aGlzLm1lc3NhZ2VTZXJ2aWNlLnNob3dFcnJvcihlcnIpO1xuICAgICAgICB9XG4gICAgICApO1xuICB9XG5cbiAgY3JlYXRlUG9pKCkge1xuICAgIGNvbnN0IHZpZXcgPSB0aGlzLm1hcC5vbC5nZXRWaWV3KCk7XG4gICAgY29uc3QgcHJvaiA9IHZpZXcuZ2V0UHJvamVjdGlvbigpLmdldENvZGUoKTtcbiAgICBjb25zdCBjZW50ZXI6IGFueSA9IG5ldyBvbFBvaW50KHZpZXcuZ2V0Q2VudGVyKCkpLnRyYW5zZm9ybShcbiAgICAgIHByb2osXG4gICAgICAnRVBTRzo0MzI2J1xuICAgICk7XG5cbiAgICBjb25zdCBwb2k6IFBvaSA9IHtcbiAgICAgIHRpdGxlOiAnJyxcbiAgICAgIHg6IGNlbnRlci5nZXRDb29yZGluYXRlcygpWzBdLFxuICAgICAgeTogY2VudGVyLmdldENvb3JkaW5hdGVzKClbMV0sXG4gICAgICB6b29tOiB2aWV3LmdldFpvb20oKVxuICAgIH07XG5cbiAgICB0aGlzLmRpYWxvZ1xuICAgICAgLm9wZW4oUG9pRGlhbG9nQ29tcG9uZW50LCB7IGRpc2FibGVDbG9zZTogZmFsc2UgfSlcbiAgICAgIC5hZnRlckNsb3NlZCgpXG4gICAgICAuc3Vic2NyaWJlKCh0aXRsZSkgPT4ge1xuICAgICAgICBpZiAodGl0bGUpIHtcbiAgICAgICAgICBwb2kudGl0bGUgPSB0aXRsZTtcbiAgICAgICAgICB0aGlzLnBvaVNlcnZpY2UuY3JlYXRlKHBvaSkuc3Vic2NyaWJlKFxuICAgICAgICAgICAgKG5ld1BvaSkgPT4ge1xuICAgICAgICAgICAgICB0aGlzLm1lc3NhZ2VTZXJ2aWNlLnN1Y2Nlc3MoXG4gICAgICAgICAgICAgICAgJ2lnby5jb250ZXh0LnBvaUJ1dHRvbi5kaWFsb2cuY3JlYXRlTXNnJyxcbiAgICAgICAgICAgICAgICAnaWdvLmNvbnRleHQucG9pQnV0dG9uLmRpYWxvZy5jcmVhdGVUaXRsZScsXG4gICAgICAgICAgICAgICAgdW5kZWZpbmVkLFxuICAgICAgICAgICAgICAgIHsgdmFsdWU6IHBvaS50aXRsZSB9XG4gICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgIHBvaS5pZCA9IG5ld1BvaS5pZDtcbiAgICAgICAgICAgICAgdGhpcy5wb2lzLnB1c2gocG9pKTtcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAoZXJyKSA9PiB7XG4gICAgICAgICAgICAgIGVyci5lcnJvci50aXRsZSA9ICdQT1NUIFBvaXMnO1xuICAgICAgICAgICAgICB0aGlzLm1lc3NhZ2VTZXJ2aWNlLnNob3dFcnJvcihlcnIpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICB9XG5cbiAgem9vbU9uUG9pKGlkKSB7XG4gICAgY29uc3QgcG9pID0gdGhpcy5wb2lzLmZpbmQoKHApID0+IHAuaWQgPT09IGlkKTtcblxuICAgIGNvbnN0IGNlbnRlciA9IG9scHJvai5mcm9tTG9uTGF0KFxuICAgICAgW051bWJlcihwb2kueCksIE51bWJlcihwb2kueSldLFxuICAgICAgdGhpcy5tYXAucHJvamVjdGlvblxuICAgICk7XG5cbiAgICB0aGlzLm1hcC5vbC5nZXRWaWV3KCkuYW5pbWF0ZSh7XG4gICAgICBjZW50ZXIsXG4gICAgICB6b29tOiBwb2kuem9vbSxcbiAgICAgIGR1cmF0aW9uOiA1MDAsXG4gICAgICBlYXNpbmc6IG9sZWFzaW5nLmVhc2VPdXRcbiAgICB9KTtcbiAgfVxufVxuIiwiPG1hdC1zZWxlY3RcbiAgW3BsYWNlaG9sZGVyXT1cIidpZ28uY29udGV4dC5wb2lCdXR0b24ucGxhY2Vob2xkZXInIHwgdHJhbnNsYXRlXCJcbiAgZmxvYXRQbGFjZWhvbGRlcj1cIm5ldmVyXCJcbj5cbiAgPG1hdC1vcHRpb24gKGNsaWNrKT1cImNyZWF0ZVBvaSgpXCIgY2xhc3M9XCJwb2ktb3B0aW9uXCI+XG4gICAgPGRpdiBjbGFzcz1cInRpdGxlUG9pXCI+XG4gICAgICB7eyAnaWdvLmNvbnRleHQucG9pQnV0dG9uLmNyZWF0ZScgfCB0cmFuc2xhdGUgfX1cbiAgICA8L2Rpdj5cbiAgICA8YnV0dG9uXG4gICAgICBpZ29TdG9wUHJvcGFnYXRpb25cbiAgICAgIG1hdC1pY29uLWJ1dHRvblxuICAgICAgY29sb3I9XCJwcmltYXJ5XCJcbiAgICAgIChjbGljayk9XCJjcmVhdGVQb2koKVwiXG4gICAgPlxuICAgICAgPG1hdC1pY29uPmFkZC1jaXJjbGU8L21hdC1pY29uPlxuICAgIDwvYnV0dG9uPlxuICA8L21hdC1vcHRpb24+XG4gIDxtYXQtZGl2aWRlcj48L21hdC1kaXZpZGVyPlxuICA8bWF0LW9wdGlvblxuICAgICpuZ0Zvcj1cImxldCBwb2kgb2YgcG9pc1wiXG4gICAgY2xhc3M9XCJwb2ktb3B0aW9uXCJcbiAgICBbdmFsdWVdPVwicG9pLmlkXCJcbiAgICAoY2xpY2spPVwiem9vbU9uUG9pKHBvaS5pZClcIlxuICA+XG4gICAgPGRpdiBjbGFzcz1cInRpdGxlUG9pXCI+e3sgcG9pLnRpdGxlIH19PC9kaXY+XG4gICAgPGJ1dHRvblxuICAgICAgbWF0LWljb24tYnV0dG9uXG4gICAgICBpZ29TdG9wUHJvcGFnYXRpb25cbiAgICAgIGNvbG9yPVwid2FyblwiXG4gICAgICAoY2xpY2spPVwiZGVsZXRlUG9pKHBvaSlcIlxuICAgID5cbiAgICAgIDxtYXQtaWNvbj5kZWxldGU8L21hdC1pY29uPlxuICAgIDwvYnV0dG9uPlxuICA8L21hdC1vcHRpb24+XG48L21hdC1zZWxlY3Q+XG4iXX0=
@@ -0,0 +1,37 @@
1
+ import { Component } from '@angular/core';
2
+ import { FormsModule } from '@angular/forms';
3
+ import { MatButtonModule } from '@angular/material/button';
4
+ import { MatDialogActions, MatDialogContent, MatDialogRef, MatDialogTitle } from '@angular/material/dialog';
5
+ import { MatFormFieldModule } from '@angular/material/form-field';
6
+ import { MatInputModule } from '@angular/material/input';
7
+ import { IgoLanguageModule } from '@igo2/core/language';
8
+ import * as i0 from "@angular/core";
9
+ import * as i1 from "@angular/material/dialog";
10
+ import * as i2 from "@angular/material/form-field";
11
+ import * as i3 from "@angular/material/input";
12
+ import * as i4 from "@angular/forms";
13
+ import * as i5 from "@angular/material/button";
14
+ import * as i6 from "@ngx-translate/core";
15
+ export class PoiDialogComponent {
16
+ dialogRef;
17
+ title;
18
+ constructor(dialogRef) {
19
+ this.dialogRef = dialogRef;
20
+ }
21
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PoiDialogComponent, deps: [{ token: i1.MatDialogRef }], target: i0.ɵɵFactoryTarget.Component });
22
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: PoiDialogComponent, isStandalone: true, selector: "igo-poi-dialog", ngImport: i0, template: "<h1 mat-dialog-title class=\"mat-typography\">\n {{ 'igo.context.poiButton.dialog.title' | translate }}\n</h1>\n<div mat-dialog-content>\n <mat-form-field>\n <input\n matInput\n required\n autocomplete=\"off\"\n [placeholder]=\"'igo.context.poiButton.dialog.placeholder' | translate\"\n [(ngModel)]=\"title\"\n />\n </mat-form-field>\n</div>\n<div mat-dialog-actions>\n <button\n mat-button\n color=\"primary\"\n [disabled]=\"!title\"\n (click)=\"dialogRef.close(title)\"\n >\n {{ 'igo.common.confirmDialog.confirmBtn' | translate }}\n </button>\n <button mat-button (click)=\"dialogRef.close(false)\">\n {{ 'igo.common.confirmDialog.cancelBtn' | translate }}\n </button>\n</div>\n", dependencies: [{ kind: "directive", type: MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i2.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i3.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i5.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "ngmodule", type: IgoLanguageModule }, { kind: "pipe", type: i6.TranslatePipe, name: "translate" }] });
23
+ }
24
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PoiDialogComponent, decorators: [{
25
+ type: Component,
26
+ args: [{ selector: 'igo-poi-dialog', standalone: true, imports: [
27
+ MatDialogTitle,
28
+ MatDialogContent,
29
+ MatFormFieldModule,
30
+ MatInputModule,
31
+ FormsModule,
32
+ MatDialogActions,
33
+ MatButtonModule,
34
+ IgoLanguageModule
35
+ ], template: "<h1 mat-dialog-title class=\"mat-typography\">\n {{ 'igo.context.poiButton.dialog.title' | translate }}\n</h1>\n<div mat-dialog-content>\n <mat-form-field>\n <input\n matInput\n required\n autocomplete=\"off\"\n [placeholder]=\"'igo.context.poiButton.dialog.placeholder' | translate\"\n [(ngModel)]=\"title\"\n />\n </mat-form-field>\n</div>\n<div mat-dialog-actions>\n <button\n mat-button\n color=\"primary\"\n [disabled]=\"!title\"\n (click)=\"dialogRef.close(title)\"\n >\n {{ 'igo.common.confirmDialog.confirmBtn' | translate }}\n </button>\n <button mat-button (click)=\"dialogRef.close(false)\">\n {{ 'igo.common.confirmDialog.cancelBtn' | translate }}\n </button>\n</div>\n" }]
36
+ }], ctorParameters: () => [{ type: i1.MatDialogRef }] });
37
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9pLWRpYWxvZy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb250ZXh0L3NyYy9saWIvY29udGV4dC1tYXAtYnV0dG9uL3BvaS1idXR0b24vcG9pLWRpYWxvZy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb250ZXh0L3NyYy9saWIvY29udGV4dC1tYXAtYnV0dG9uL3BvaS1idXR0b24vcG9pLWRpYWxvZy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUNMLGdCQUFnQixFQUNoQixnQkFBZ0IsRUFDaEIsWUFBWSxFQUNaLGNBQWMsRUFDZixNQUFNLDBCQUEwQixDQUFDO0FBQ2xDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUV6RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7Ozs7Ozs7QUFpQnhELE1BQU0sT0FBTyxrQkFBa0I7SUFHVjtJQUZaLEtBQUssQ0FBUztJQUVyQixZQUFtQixTQUEyQztRQUEzQyxjQUFTLEdBQVQsU0FBUyxDQUFrQztJQUFHLENBQUM7d0dBSHZELGtCQUFrQjs0RkFBbEIsa0JBQWtCLDBFQzdCL0Isb3VCQTJCQSw0Q0RSSSxjQUFjLCtIQUNkLGdCQUFnQix3R0FDaEIsa0JBQWtCLHlPQUNsQixjQUFjLDBXQUNkLFdBQVcsNDBCQUNYLGdCQUFnQiwySEFDaEIsZUFBZSwyTkFDZixpQkFBaUI7OzRGQUdSLGtCQUFrQjtrQkFmOUIsU0FBUzsrQkFDRSxnQkFBZ0IsY0FFZCxJQUFJLFdBQ1A7d0JBQ1AsY0FBYzt3QkFDZCxnQkFBZ0I7d0JBQ2hCLGtCQUFrQjt3QkFDbEIsY0FBYzt3QkFDZCxXQUFXO3dCQUNYLGdCQUFnQjt3QkFDaEIsZUFBZTt3QkFDZixpQkFBaUI7cUJBQ2xCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IE1hdEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XG5pbXBvcnQge1xuICBNYXREaWFsb2dBY3Rpb25zLFxuICBNYXREaWFsb2dDb250ZW50LFxuICBNYXREaWFsb2dSZWYsXG4gIE1hdERpYWxvZ1RpdGxlXG59IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XG5pbXBvcnQgeyBNYXRGb3JtRmllbGRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9mb3JtLWZpZWxkJztcbmltcG9ydCB7IE1hdElucHV0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaW5wdXQnO1xuXG5pbXBvcnQgeyBJZ29MYW5ndWFnZU1vZHVsZSB9IGZyb20gJ0BpZ28yL2NvcmUvbGFuZ3VhZ2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdpZ28tcG9pLWRpYWxvZycsXG4gIHRlbXBsYXRlVXJsOiAnLi9wb2ktZGlhbG9nLmNvbXBvbmVudC5odG1sJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIE1hdERpYWxvZ1RpdGxlLFxuICAgIE1hdERpYWxvZ0NvbnRlbnQsXG4gICAgTWF0Rm9ybUZpZWxkTW9kdWxlLFxuICAgIE1hdElucHV0TW9kdWxlLFxuICAgIEZvcm1zTW9kdWxlLFxuICAgIE1hdERpYWxvZ0FjdGlvbnMsXG4gICAgTWF0QnV0dG9uTW9kdWxlLFxuICAgIElnb0xhbmd1YWdlTW9kdWxlXG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgUG9pRGlhbG9nQ29tcG9uZW50IHtcbiAgcHVibGljIHRpdGxlOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IocHVibGljIGRpYWxvZ1JlZjogTWF0RGlhbG9nUmVmPFBvaURpYWxvZ0NvbXBvbmVudD4pIHt9XG59XG4iLCI8aDEgbWF0LWRpYWxvZy10aXRsZSBjbGFzcz1cIm1hdC10eXBvZ3JhcGh5XCI+XG4gIHt7ICdpZ28uY29udGV4dC5wb2lCdXR0b24uZGlhbG9nLnRpdGxlJyB8IHRyYW5zbGF0ZSB9fVxuPC9oMT5cbjxkaXYgbWF0LWRpYWxvZy1jb250ZW50PlxuICA8bWF0LWZvcm0tZmllbGQ+XG4gICAgPGlucHV0XG4gICAgICBtYXRJbnB1dFxuICAgICAgcmVxdWlyZWRcbiAgICAgIGF1dG9jb21wbGV0ZT1cIm9mZlwiXG4gICAgICBbcGxhY2Vob2xkZXJdPVwiJ2lnby5jb250ZXh0LnBvaUJ1dHRvbi5kaWFsb2cucGxhY2Vob2xkZXInIHwgdHJhbnNsYXRlXCJcbiAgICAgIFsobmdNb2RlbCldPVwidGl0bGVcIlxuICAgIC8+XG4gIDwvbWF0LWZvcm0tZmllbGQ+XG48L2Rpdj5cbjxkaXYgbWF0LWRpYWxvZy1hY3Rpb25zPlxuICA8YnV0dG9uXG4gICAgbWF0LWJ1dHRvblxuICAgIGNvbG9yPVwicHJpbWFyeVwiXG4gICAgW2Rpc2FibGVkXT1cIiF0aXRsZVwiXG4gICAgKGNsaWNrKT1cImRpYWxvZ1JlZi5jbG9zZSh0aXRsZSlcIlxuICA+XG4gICAge3sgJ2lnby5jb21tb24uY29uZmlybURpYWxvZy5jb25maXJtQnRuJyB8IHRyYW5zbGF0ZSB9fVxuICA8L2J1dHRvbj5cbiAgPGJ1dHRvbiBtYXQtYnV0dG9uIChjbGljayk9XCJkaWFsb2dSZWYuY2xvc2UoZmFsc2UpXCI+XG4gICAge3sgJ2lnby5jb21tb24uY29uZmlybURpYWxvZy5jYW5jZWxCdG4nIHwgdHJhbnNsYXRlIH19XG4gIDwvYnV0dG9uPlxuPC9kaXY+XG4iXX0=
@@ -0,0 +1,3 @@
1
+ export * from './poi.interface';
2
+ export * from './poi.service';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb250ZXh0L3NyYy9saWIvY29udGV4dC1tYXAtYnV0dG9uL3BvaS1idXR0b24vc2hhcmVkL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsaUJBQWlCLENBQUM7QUFDaEMsY0FBYyxlQUFlLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3BvaS5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9wb2kuc2VydmljZSc7XG4iXX0=
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9pLmludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbnRleHQvc3JjL2xpYi9jb250ZXh0LW1hcC1idXR0b24vcG9pLWJ1dHRvbi9zaGFyZWQvcG9pLmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBQb2kge1xuICBpZD86IHN0cmluZztcbiAgdGl0bGU6IHN0cmluZztcbiAgeDogbnVtYmVyO1xuICB5OiBudW1iZXI7XG4gIHpvb206IG51bWJlcjtcbn1cbiJdfQ==
@@ -0,0 +1,38 @@
1
+ import { HttpClient } from '@angular/common/http';
2
+ import { Injectable } from '@angular/core';
3
+ import { ConfigService } from '@igo2/core/config';
4
+ import { EMPTY } from 'rxjs';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "@angular/common/http";
7
+ import * as i2 from "@igo2/core/config";
8
+ export class PoiService {
9
+ http;
10
+ config;
11
+ baseUrl;
12
+ constructor(http, config) {
13
+ this.http = http;
14
+ this.config = config;
15
+ this.baseUrl = this.config.getConfig('context.url');
16
+ }
17
+ get() {
18
+ if (!this.baseUrl) {
19
+ return EMPTY;
20
+ }
21
+ const url = this.baseUrl + '/pois';
22
+ return this.http.get(url);
23
+ }
24
+ delete(id) {
25
+ const url = this.baseUrl + '/pois/' + id;
26
+ return this.http.delete(url);
27
+ }
28
+ create(context) {
29
+ const url = this.baseUrl + '/pois';
30
+ return this.http.post(url, context);
31
+ }
32
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PoiService, deps: [{ token: i1.HttpClient }, { token: i2.ConfigService }], target: i0.ɵɵFactoryTarget.Injectable });
33
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PoiService });
34
+ }
35
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PoiService, decorators: [{
36
+ type: Injectable
37
+ }], ctorParameters: () => [{ type: i1.HttpClient }, { type: i2.ConfigService }] });
38
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9pLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb250ZXh0L3NyYy9saWIvY29udGV4dC1tYXAtYnV0dG9uL3BvaS1idXR0b24vc2hhcmVkL3BvaS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNsRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUVsRCxPQUFPLEVBQUUsS0FBSyxFQUFjLE1BQU0sTUFBTSxDQUFDOzs7O0FBS3pDLE1BQU0sT0FBTyxVQUFVO0lBSVg7SUFDQTtJQUpGLE9BQU8sQ0FBUztJQUV4QixZQUNVLElBQWdCLEVBQ2hCLE1BQXFCO1FBRHJCLFNBQUksR0FBSixJQUFJLENBQVk7UUFDaEIsV0FBTSxHQUFOLE1BQU0sQ0FBZTtRQUU3QixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQ3RELENBQUM7SUFFRCxHQUFHO1FBQ0QsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNsQixPQUFPLEtBQUssQ0FBQztRQUNmLENBQUM7UUFFRCxNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQztRQUNuQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFRLEdBQUcsQ0FBQyxDQUFDO0lBQ25DLENBQUM7SUFFRCxNQUFNLENBQUMsRUFBVTtRQUNmLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxPQUFPLEdBQUcsUUFBUSxHQUFHLEVBQUUsQ0FBQztRQUN6QyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFPLEdBQUcsQ0FBQyxDQUFDO0lBQ3JDLENBQUM7SUFFRCxNQUFNLENBQUMsT0FBWTtRQUNqQixNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQztRQUNuQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFNLEdBQUcsRUFBRSxPQUFPLENBQUMsQ0FBQztJQUMzQyxDQUFDO3dHQTNCVSxVQUFVOzRHQUFWLFVBQVU7OzRGQUFWLFVBQVU7a0JBRHRCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBDb25maWdTZXJ2aWNlIH0gZnJvbSAnQGlnbzIvY29yZS9jb25maWcnO1xuXG5pbXBvcnQgeyBFTVBUWSwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBQb2kgfSBmcm9tICcuL3BvaS5pbnRlcmZhY2UnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgUG9pU2VydmljZSB7XG4gIHByaXZhdGUgYmFzZVVybDogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgaHR0cDogSHR0cENsaWVudCxcbiAgICBwcml2YXRlIGNvbmZpZzogQ29uZmlnU2VydmljZVxuICApIHtcbiAgICB0aGlzLmJhc2VVcmwgPSB0aGlzLmNvbmZpZy5nZXRDb25maWcoJ2NvbnRleHQudXJsJyk7XG4gIH1cblxuICBnZXQoKTogT2JzZXJ2YWJsZTxQb2lbXT4ge1xuICAgIGlmICghdGhpcy5iYXNlVXJsKSB7XG4gICAgICByZXR1cm4gRU1QVFk7XG4gICAgfVxuXG4gICAgY29uc3QgdXJsID0gdGhpcy5iYXNlVXJsICsgJy9wb2lzJztcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxQb2lbXT4odXJsKTtcbiAgfVxuXG4gIGRlbGV0ZShpZDogc3RyaW5nKTogT2JzZXJ2YWJsZTx2b2lkPiB7XG4gICAgY29uc3QgdXJsID0gdGhpcy5iYXNlVXJsICsgJy9wb2lzLycgKyBpZDtcbiAgICByZXR1cm4gdGhpcy5odHRwLmRlbGV0ZTx2b2lkPih1cmwpO1xuICB9XG5cbiAgY3JlYXRlKGNvbnRleHQ6IFBvaSk6IE9ic2VydmFibGU8UG9pPiB7XG4gICAgY29uc3QgdXJsID0gdGhpcy5iYXNlVXJsICsgJy9wb2lzJztcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8UG9pPih1cmwsIGNvbnRleHQpO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,3 @@
1
+ export * from './user-button.component';
2
+ export * from './user-dialog.component';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb250ZXh0L3NyYy9saWIvY29udGV4dC1tYXAtYnV0dG9uL3VzZXItYnV0dG9uL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYyx5QkFBeUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vdXNlci1idXR0b24uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vdXNlci1kaWFsb2cuY29tcG9uZW50JztcbiJdfQ==
@@ -0,0 +1,17 @@
1
+ import { animate, state, style, transition, trigger } from '@angular/animations';
2
+ export function userButtonSlideInOut() {
3
+ return trigger('userButtonState', [
4
+ state('collapse', style({
5
+ width: '0',
6
+ overflow: 'hidden',
7
+ display: 'none'
8
+ })),
9
+ state('expand', style({
10
+ overflow: 'hidden',
11
+ display: 'display'
12
+ })),
13
+ transition('collapse => expand', animate('200ms')),
14
+ transition('expand => collapse', animate('200ms'))
15
+ ]);
16
+ }
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1idXR0b24uYW5pbWF0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29udGV4dC9zcmMvbGliL2NvbnRleHQtbWFwLWJ1dHRvbi91c2VyLWJ1dHRvbi91c2VyLWJ1dHRvbi5hbmltYXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLE9BQU8sRUFDUCxLQUFLLEVBQ0wsS0FBSyxFQUNMLFVBQVUsRUFDVixPQUFPLEVBQ1IsTUFBTSxxQkFBcUIsQ0FBQztBQUU3QixNQUFNLFVBQVUsb0JBQW9CO0lBQ2xDLE9BQU8sT0FBTyxDQUFDLGlCQUFpQixFQUFFO1FBQ2hDLEtBQUssQ0FDSCxVQUFVLEVBQ1YsS0FBSyxDQUFDO1lBQ0osS0FBSyxFQUFFLEdBQUc7WUFDVixRQUFRLEVBQUUsUUFBUTtZQUNsQixPQUFPLEVBQUUsTUFBTTtTQUNoQixDQUFDLENBQ0g7UUFDRCxLQUFLLENBQ0gsUUFBUSxFQUNSLEtBQUssQ0FBQztZQUNKLFFBQVEsRUFBRSxRQUFRO1lBQ2xCLE9BQU8sRUFBRSxTQUFTO1NBQ25CLENBQUMsQ0FDSDtRQUNELFVBQVUsQ0FBQyxvQkFBb0IsRUFBRSxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDbEQsVUFBVSxDQUFDLG9CQUFvQixFQUFFLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztLQUNuRCxDQUFDLENBQUM7QUFDTCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQW5pbWF0aW9uVHJpZ2dlck1ldGFkYXRhLFxuICBhbmltYXRlLFxuICBzdGF0ZSxcbiAgc3R5bGUsXG4gIHRyYW5zaXRpb24sXG4gIHRyaWdnZXJcbn0gZnJvbSAnQGFuZ3VsYXIvYW5pbWF0aW9ucyc7XG5cbmV4cG9ydCBmdW5jdGlvbiB1c2VyQnV0dG9uU2xpZGVJbk91dCgpOiBBbmltYXRpb25UcmlnZ2VyTWV0YWRhdGEge1xuICByZXR1cm4gdHJpZ2dlcigndXNlckJ1dHRvblN0YXRlJywgW1xuICAgIHN0YXRlKFxuICAgICAgJ2NvbGxhcHNlJyxcbiAgICAgIHN0eWxlKHtcbiAgICAgICAgd2lkdGg6ICcwJyxcbiAgICAgICAgb3ZlcmZsb3c6ICdoaWRkZW4nLFxuICAgICAgICBkaXNwbGF5OiAnbm9uZSdcbiAgICAgIH0pXG4gICAgKSxcbiAgICBzdGF0ZShcbiAgICAgICdleHBhbmQnLFxuICAgICAgc3R5bGUoe1xuICAgICAgICBvdmVyZmxvdzogJ2hpZGRlbicsXG4gICAgICAgIGRpc3BsYXk6ICdkaXNwbGF5J1xuICAgICAgfSlcbiAgICApLFxuICAgIHRyYW5zaXRpb24oJ2NvbGxhcHNlID0+IGV4cGFuZCcsIGFuaW1hdGUoJzIwMG1zJykpLFxuICAgIHRyYW5zaXRpb24oJ2V4cGFuZCA9PiBjb2xsYXBzZScsIGFuaW1hdGUoJzIwMG1zJykpXG4gIF0pO1xufVxuIl19
@@ -0,0 +1,82 @@
1
+ import { NgIf } from '@angular/common';
2
+ import { Component, Input } from '@angular/core';
3
+ import { MatButtonModule } from '@angular/material/button';
4
+ import { MatDialog } from '@angular/material/dialog';
5
+ import { MatIconModule } from '@angular/material/icon';
6
+ import { MatTooltipModule } from '@angular/material/tooltip';
7
+ import { AuthService } from '@igo2/auth';
8
+ import { ConfigService } from '@igo2/core/config';
9
+ import { IgoLanguageModule } from '@igo2/core/language';
10
+ import { PoiButtonComponent } from '../poi-button/poi-button.component';
11
+ import { userButtonSlideInOut } from './user-button.animation';
12
+ import { UserDialogComponent } from './user-dialog.component';
13
+ import * as i0 from "@angular/core";
14
+ import * as i1 from "@angular/material/dialog";
15
+ import * as i2 from "@igo2/core/config";
16
+ import * as i3 from "@igo2/auth";
17
+ import * as i4 from "@angular/material/button";
18
+ import * as i5 from "@angular/material/tooltip";
19
+ import * as i6 from "@angular/material/icon";
20
+ import * as i7 from "@ngx-translate/core";
21
+ export class UserButtonComponent {
22
+ dialog;
23
+ config;
24
+ auth;
25
+ get map() {
26
+ return this._map;
27
+ }
28
+ set map(value) {
29
+ this._map = value;
30
+ }
31
+ _map;
32
+ get color() {
33
+ return this._color;
34
+ }
35
+ set color(value) {
36
+ this._color = value;
37
+ }
38
+ _color;
39
+ expand = false;
40
+ visible = false;
41
+ hasApi = false;
42
+ constructor(dialog, config, auth) {
43
+ this.dialog = dialog;
44
+ this.config = config;
45
+ this.auth = auth;
46
+ this.visible = this.config.getConfig('auth') ? true : false;
47
+ this.hasApi = this.config.getConfig('context.url') !== undefined;
48
+ }
49
+ accountClick() {
50
+ if (this.auth.authenticated) {
51
+ this.expand = !this.expand;
52
+ }
53
+ else {
54
+ this.auth.logout();
55
+ }
56
+ }
57
+ logout() {
58
+ this.expand = false;
59
+ this.auth.logout();
60
+ }
61
+ infoUser() {
62
+ this.dialog.open(UserDialogComponent, { disableClose: false });
63
+ }
64
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: UserButtonComponent, deps: [{ token: i1.MatDialog }, { token: i2.ConfigService }, { token: i3.AuthService }], target: i0.ɵɵFactoryTarget.Component });
65
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: UserButtonComponent, isStandalone: true, selector: "igo-user-button", inputs: { map: "map", color: "color" }, ngImport: i0, template: "<div *ngIf=\"visible\" class=\"igo-user-button-container\">\n <div\n class=\"igo-user-button-more-container\"\n [@userButtonState]=\"expand ? 'expand' : 'collapse'\"\n >\n <igo-poi-button *ngIf=\"hasApi\" [color]=\"color\" [map]=\"map\"></igo-poi-button>\n\n <button\n mat-icon-button\n [matTooltip]=\"'igo.context.userButton.infoTitle' | translate\"\n matTooltipPosition=\"above\"\n [color]=\"color\"\n (click)=\"infoUser()\"\n >\n <mat-icon>info</mat-icon>\n </button>\n\n <button\n mat-icon-button\n [matTooltip]=\"'igo.context.userButton.logout' | translate\"\n matTooltipPosition=\"above\"\n [color]=\"color\"\n (click)=\"logout()\"\n >\n <mat-icon>power_settings_new</mat-icon>\n </button>\n </div>\n\n <button\n mat-icon-button\n [color]=\"auth.authenticated ? color : 'warn'\"\n (click)=\"accountClick()\"\n >\n <mat-icon>account_box</mat-icon>\n </button>\n</div>\n", styles: [":host button{border-radius:0!important}:host button .mat-ripple,:host button .mdc-icon-button__ripple{border-radius:0!important}:host .igo-user-button-container{display:flex;gap:4px}:host .igo-user-button-container button{background-color:#fff}:host .igo-user-button-container button:hover{background-color:#efefef}:host .igo-user-button-more-container{display:flex;gap:4px}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: PoiButtonComponent, selector: "igo-poi-button", inputs: ["map", "color"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i4.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "ngmodule", type: MatTooltipModule }, { kind: "directive", type: i5.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: IgoLanguageModule }, { kind: "pipe", type: i7.TranslatePipe, name: "translate" }], animations: [userButtonSlideInOut()] });
66
+ }
67
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: UserButtonComponent, decorators: [{
68
+ type: Component,
69
+ args: [{ selector: 'igo-user-button', animations: [userButtonSlideInOut()], standalone: true, imports: [
70
+ NgIf,
71
+ PoiButtonComponent,
72
+ MatButtonModule,
73
+ MatTooltipModule,
74
+ MatIconModule,
75
+ IgoLanguageModule
76
+ ], template: "<div *ngIf=\"visible\" class=\"igo-user-button-container\">\n <div\n class=\"igo-user-button-more-container\"\n [@userButtonState]=\"expand ? 'expand' : 'collapse'\"\n >\n <igo-poi-button *ngIf=\"hasApi\" [color]=\"color\" [map]=\"map\"></igo-poi-button>\n\n <button\n mat-icon-button\n [matTooltip]=\"'igo.context.userButton.infoTitle' | translate\"\n matTooltipPosition=\"above\"\n [color]=\"color\"\n (click)=\"infoUser()\"\n >\n <mat-icon>info</mat-icon>\n </button>\n\n <button\n mat-icon-button\n [matTooltip]=\"'igo.context.userButton.logout' | translate\"\n matTooltipPosition=\"above\"\n [color]=\"color\"\n (click)=\"logout()\"\n >\n <mat-icon>power_settings_new</mat-icon>\n </button>\n </div>\n\n <button\n mat-icon-button\n [color]=\"auth.authenticated ? color : 'warn'\"\n (click)=\"accountClick()\"\n >\n <mat-icon>account_box</mat-icon>\n </button>\n</div>\n", styles: [":host button{border-radius:0!important}:host button .mat-ripple,:host button .mdc-icon-button__ripple{border-radius:0!important}:host .igo-user-button-container{display:flex;gap:4px}:host .igo-user-button-container button{background-color:#fff}:host .igo-user-button-container button:hover{background-color:#efefef}:host .igo-user-button-more-container{display:flex;gap:4px}\n"] }]
77
+ }], ctorParameters: () => [{ type: i1.MatDialog }, { type: i2.ConfigService }, { type: i3.AuthService }], propDecorators: { map: [{
78
+ type: Input
79
+ }], color: [{
80
+ type: Input
81
+ }] } });
82
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1idXR0b24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29udGV4dC9zcmMvbGliL2NvbnRleHQtbWFwLWJ1dHRvbi91c2VyLWJ1dHRvbi91c2VyLWJ1dHRvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb250ZXh0L3NyYy9saWIvY29udGV4dC1tYXAtYnV0dG9uL3VzZXItYnV0dG9uL3VzZXItYnV0dG9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN2QyxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUU3RCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNsRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUd4RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUN4RSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQzs7Ozs7Ozs7O0FBaUI5RCxNQUFNLE9BQU8sbUJBQW1CO0lBd0JwQjtJQUNBO0lBQ0Q7SUF6QlQsSUFDSSxHQUFHO1FBQ0wsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDO0lBQ25CLENBQUM7SUFDRCxJQUFJLEdBQUcsQ0FBQyxLQUFhO1FBQ25CLElBQUksQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDO0lBQ3BCLENBQUM7SUFDTyxJQUFJLENBQVM7SUFFckIsSUFDSSxLQUFLO1FBQ1AsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQ3JCLENBQUM7SUFDRCxJQUFJLEtBQUssQ0FBQyxLQUFhO1FBQ3JCLElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO0lBQ3RCLENBQUM7SUFDTyxNQUFNLENBQVM7SUFFaEIsTUFBTSxHQUFHLEtBQUssQ0FBQztJQUNmLE9BQU8sR0FBRyxLQUFLLENBQUM7SUFDaEIsTUFBTSxHQUFHLEtBQUssQ0FBQztJQUV0QixZQUNVLE1BQWlCLEVBQ2pCLE1BQXFCLEVBQ3RCLElBQWlCO1FBRmhCLFdBQU0sR0FBTixNQUFNLENBQVc7UUFDakIsV0FBTSxHQUFOLE1BQU0sQ0FBZTtRQUN0QixTQUFJLEdBQUosSUFBSSxDQUFhO1FBRXhCLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO1FBQzVELElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsYUFBYSxDQUFDLEtBQUssU0FBUyxDQUFDO0lBQ25FLENBQUM7SUFFRCxZQUFZO1FBQ1YsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1lBQzVCLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDO1FBQzdCLENBQUM7YUFBTSxDQUFDO1lBQ04sSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUNyQixDQUFDO0lBQ0gsQ0FBQztJQUVELE1BQU07UUFDSixJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztRQUNwQixJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO0lBQ3JCLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsbUJBQW1CLEVBQUUsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztJQUNqRSxDQUFDO3dHQS9DVSxtQkFBbUI7NEZBQW5CLG1CQUFtQixtSEMvQmhDLHE5QkFvQ0Esa2JEYkksSUFBSSw2RkFDSixrQkFBa0Isb0ZBQ2xCLGVBQWUsMklBQ2YsZ0JBQWdCLDRUQUNoQixhQUFhLG1MQUNiLGlCQUFpQiw4RUFSUCxDQUFDLG9CQUFvQixFQUFFLENBQUM7OzRGQVd6QixtQkFBbUI7a0JBZi9CLFNBQVM7K0JBQ0UsaUJBQWlCLGNBR2YsQ0FBQyxvQkFBb0IsRUFBRSxDQUFDLGNBQ3hCLElBQUksV0FDUDt3QkFDUCxJQUFJO3dCQUNKLGtCQUFrQjt3QkFDbEIsZUFBZTt3QkFDZixnQkFBZ0I7d0JBQ2hCLGFBQWE7d0JBQ2IsaUJBQWlCO3FCQUNsQjtvSUFJRyxHQUFHO3NCQUROLEtBQUs7Z0JBVUYsS0FBSztzQkFEUixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdJZiB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXRCdXR0b25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xuaW1wb3J0IHsgTWF0RGlhbG9nIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcbmltcG9ydCB7IE1hdFRvb2x0aXBNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90b29sdGlwJztcblxuaW1wb3J0IHsgQXV0aFNlcnZpY2UgfSBmcm9tICdAaWdvMi9hdXRoJztcbmltcG9ydCB7IENvbmZpZ1NlcnZpY2UgfSBmcm9tICdAaWdvMi9jb3JlL2NvbmZpZyc7XG5pbXBvcnQgeyBJZ29MYW5ndWFnZU1vZHVsZSB9IGZyb20gJ0BpZ28yL2NvcmUvbGFuZ3VhZ2UnO1xuaW1wb3J0IHR5cGUgeyBJZ29NYXAgfSBmcm9tICdAaWdvMi9nZW8nO1xuXG5pbXBvcnQgeyBQb2lCdXR0b25Db21wb25lbnQgfSBmcm9tICcuLi9wb2ktYnV0dG9uL3BvaS1idXR0b24uY29tcG9uZW50JztcbmltcG9ydCB7IHVzZXJCdXR0b25TbGlkZUluT3V0IH0gZnJvbSAnLi91c2VyLWJ1dHRvbi5hbmltYXRpb24nO1xuaW1wb3J0IHsgVXNlckRpYWxvZ0NvbXBvbmVudCB9IGZyb20gJy4vdXNlci1kaWFsb2cuY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaWdvLXVzZXItYnV0dG9uJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3VzZXItYnV0dG9uLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vdXNlci1idXR0b24uY29tcG9uZW50LnNjc3MnXSxcbiAgYW5pbWF0aW9uczogW3VzZXJCdXR0b25TbGlkZUluT3V0KCldLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgTmdJZixcbiAgICBQb2lCdXR0b25Db21wb25lbnQsXG4gICAgTWF0QnV0dG9uTW9kdWxlLFxuICAgIE1hdFRvb2x0aXBNb2R1bGUsXG4gICAgTWF0SWNvbk1vZHVsZSxcbiAgICBJZ29MYW5ndWFnZU1vZHVsZVxuICBdXG59KVxuZXhwb3J0IGNsYXNzIFVzZXJCdXR0b25Db21wb25lbnQge1xuICBASW5wdXQoKVxuICBnZXQgbWFwKCk6IElnb01hcCB7XG4gICAgcmV0dXJuIHRoaXMuX21hcDtcbiAgfVxuICBzZXQgbWFwKHZhbHVlOiBJZ29NYXApIHtcbiAgICB0aGlzLl9tYXAgPSB2YWx1ZTtcbiAgfVxuICBwcml2YXRlIF9tYXA6IElnb01hcDtcblxuICBASW5wdXQoKVxuICBnZXQgY29sb3IoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fY29sb3I7XG4gIH1cbiAgc2V0IGNvbG9yKHZhbHVlOiBzdHJpbmcpIHtcbiAgICB0aGlzLl9jb2xvciA9IHZhbHVlO1xuICB9XG4gIHByaXZhdGUgX2NvbG9yOiBzdHJpbmc7XG5cbiAgcHVibGljIGV4cGFuZCA9IGZhbHNlO1xuICBwdWJsaWMgdmlzaWJsZSA9IGZhbHNlO1xuICBwdWJsaWMgaGFzQXBpID0gZmFsc2U7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBkaWFsb2c6IE1hdERpYWxvZyxcbiAgICBwcml2YXRlIGNvbmZpZzogQ29uZmlnU2VydmljZSxcbiAgICBwdWJsaWMgYXV0aDogQXV0aFNlcnZpY2VcbiAgKSB7XG4gICAgdGhpcy52aXNpYmxlID0gdGhpcy5jb25maWcuZ2V0Q29uZmlnKCdhdXRoJykgPyB0cnVlIDogZmFsc2U7XG4gICAgdGhpcy5oYXNBcGkgPSB0aGlzLmNvbmZpZy5nZXRDb25maWcoJ2NvbnRleHQudXJsJykgIT09IHVuZGVmaW5lZDtcbiAgfVxuXG4gIGFjY291bnRDbGljaygpIHtcbiAgICBpZiAodGhpcy5hdXRoLmF1dGhlbnRpY2F0ZWQpIHtcbiAgICAgIHRoaXMuZXhwYW5kID0gIXRoaXMuZXhwYW5kO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmF1dGgubG9nb3V0KCk7XG4gICAgfVxuICB9XG5cbiAgbG9nb3V0KCkge1xuICAgIHRoaXMuZXhwYW5kID0gZmFsc2U7XG4gICAgdGhpcy5hdXRoLmxvZ291dCgpO1xuICB9XG5cbiAgaW5mb1VzZXIoKSB7XG4gICAgdGhpcy5kaWFsb2cub3BlbihVc2VyRGlhbG9nQ29tcG9uZW50LCB7IGRpc2FibGVDbG9zZTogZmFsc2UgfSk7XG4gIH1cbn1cbiIsIjxkaXYgKm5nSWY9XCJ2aXNpYmxlXCIgY2xhc3M9XCJpZ28tdXNlci1idXR0b24tY29udGFpbmVyXCI+XG4gIDxkaXZcbiAgICBjbGFzcz1cImlnby11c2VyLWJ1dHRvbi1tb3JlLWNvbnRhaW5lclwiXG4gICAgW0B1c2VyQnV0dG9uU3RhdGVdPVwiZXhwYW5kID8gJ2V4cGFuZCcgOiAnY29sbGFwc2UnXCJcbiAgPlxuICAgIDxpZ28tcG9pLWJ1dHRvbiAqbmdJZj1cImhhc0FwaVwiIFtjb2xvcl09XCJjb2xvclwiIFttYXBdPVwibWFwXCI+PC9pZ28tcG9pLWJ1dHRvbj5cblxuICAgIDxidXR0b25cbiAgICAgIG1hdC1pY29uLWJ1dHRvblxuICAgICAgW21hdFRvb2x0aXBdPVwiJ2lnby5jb250ZXh0LnVzZXJCdXR0b24uaW5mb1RpdGxlJyB8IHRyYW5zbGF0ZVwiXG4gICAgICBtYXRUb29sdGlwUG9zaXRpb249XCJhYm92ZVwiXG4gICAgICBbY29sb3JdPVwiY29sb3JcIlxuICAgICAgKGNsaWNrKT1cImluZm9Vc2VyKClcIlxuICAgID5cbiAgICAgIDxtYXQtaWNvbj5pbmZvPC9tYXQtaWNvbj5cbiAgICA8L2J1dHRvbj5cblxuICAgIDxidXR0b25cbiAgICAgIG1hdC1pY29uLWJ1dHRvblxuICAgICAgW21hdFRvb2x0aXBdPVwiJ2lnby5jb250ZXh0LnVzZXJCdXR0b24ubG9nb3V0JyB8IHRyYW5zbGF0ZVwiXG4gICAgICBtYXRUb29sdGlwUG9zaXRpb249XCJhYm92ZVwiXG4gICAgICBbY29sb3JdPVwiY29sb3JcIlxuICAgICAgKGNsaWNrKT1cImxvZ291dCgpXCJcbiAgICA+XG4gICAgICA8bWF0LWljb24+cG93ZXJfc2V0dGluZ3NfbmV3PC9tYXQtaWNvbj5cbiAgICA8L2J1dHRvbj5cbiAgPC9kaXY+XG5cbiAgPGJ1dHRvblxuICAgIG1hdC1pY29uLWJ1dHRvblxuICAgIFtjb2xvcl09XCJhdXRoLmF1dGhlbnRpY2F0ZWQgPyBjb2xvciA6ICd3YXJuJ1wiXG4gICAgKGNsaWNrKT1cImFjY291bnRDbGljaygpXCJcbiAgPlxuICAgIDxtYXQtaWNvbj5hY2NvdW50X2JveDwvbWF0LWljb24+XG4gIDwvYnV0dG9uPlxuPC9kaXY+XG4iXX0=
@@ -0,0 +1,43 @@
1
+ import { Component } from '@angular/core';
2
+ import { MatButtonModule } from '@angular/material/button';
3
+ import { MatDialogActions, MatDialogContent, MatDialogRef, MatDialogTitle } from '@angular/material/dialog';
4
+ import { AuthService } from '@igo2/auth';
5
+ import { IgoLanguageModule } from '@igo2/core/language';
6
+ import { StorageService } from '@igo2/core/storage';
7
+ import * as i0 from "@angular/core";
8
+ import * as i1 from "@angular/material/dialog";
9
+ import * as i2 from "@igo2/auth";
10
+ import * as i3 from "@igo2/core/storage";
11
+ import * as i4 from "@angular/material/button";
12
+ import * as i5 from "@ngx-translate/core";
13
+ export class UserDialogComponent {
14
+ dialogRef;
15
+ auth;
16
+ storageService;
17
+ user;
18
+ exp;
19
+ constructor(dialogRef, auth, storageService) {
20
+ this.dialogRef = dialogRef;
21
+ this.auth = auth;
22
+ this.storageService = storageService;
23
+ const decodeToken = this.auth.decodeToken();
24
+ this.user = decodeToken?.user;
25
+ this.exp = new Date(decodeToken.exp * 1000).toLocaleString();
26
+ }
27
+ clearPreferences() {
28
+ this.storageService.clear();
29
+ }
30
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: UserDialogComponent, deps: [{ token: i1.MatDialogRef }, { token: i2.AuthService }, { token: i3.StorageService }], target: i0.ɵɵFactoryTarget.Component });
31
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: UserDialogComponent, isStandalone: true, selector: "igo-user-dialog", ngImport: i0, template: "<h1 mat-dialog-title class=\"mat-typography\">\n {{ 'igo.context.userButton.infoTitle' | translate }}\n</h1>\n<div mat-dialog-content class=\"mat-typography\">\n <p>\n {{ 'igo.context.userButton.dialog.user' | translate }}: {{ user.sourceId }}\n </p>\n <p>\n {{ 'igo.context.userButton.dialog.email' | translate }}: {{ user.email }}\n </p>\n <p>{{ 'igo.context.userButton.dialog.expiration' | translate }}: {{ exp }}</p>\n <button mat-stroked-button color=\"primary\" (click)=\"clearPreferences()\">\n {{ 'igo.context.userButton.dialog.clearPreferences' | translate }}\n </button>\n <br />\n</div>\n<div mat-dialog-actions style=\"justify-content: center\">\n <button mat-raised-button color=\"primary\" (click)=\"dialogRef.close(false)\">\n OK\n </button>\n</div>\n", dependencies: [{ kind: "directive", type: MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i4.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "directive", type: MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "ngmodule", type: IgoLanguageModule }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }] });
32
+ }
33
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: UserDialogComponent, decorators: [{
34
+ type: Component,
35
+ args: [{ selector: 'igo-user-dialog', standalone: true, imports: [
36
+ MatDialogTitle,
37
+ MatDialogContent,
38
+ MatButtonModule,
39
+ MatDialogActions,
40
+ IgoLanguageModule
41
+ ], template: "<h1 mat-dialog-title class=\"mat-typography\">\n {{ 'igo.context.userButton.infoTitle' | translate }}\n</h1>\n<div mat-dialog-content class=\"mat-typography\">\n <p>\n {{ 'igo.context.userButton.dialog.user' | translate }}: {{ user.sourceId }}\n </p>\n <p>\n {{ 'igo.context.userButton.dialog.email' | translate }}: {{ user.email }}\n </p>\n <p>{{ 'igo.context.userButton.dialog.expiration' | translate }}: {{ exp }}</p>\n <button mat-stroked-button color=\"primary\" (click)=\"clearPreferences()\">\n {{ 'igo.context.userButton.dialog.clearPreferences' | translate }}\n </button>\n <br />\n</div>\n<div mat-dialog-actions style=\"justify-content: center\">\n <button mat-raised-button color=\"primary\" (click)=\"dialogRef.close(false)\">\n OK\n </button>\n</div>\n" }]
42
+ }], ctorParameters: () => [{ type: i1.MatDialogRef }, { type: i2.AuthService }, { type: i3.StorageService }] });
43
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1kaWFsb2cuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29udGV4dC9zcmMvbGliL2NvbnRleHQtbWFwLWJ1dHRvbi91c2VyLWJ1dHRvbi91c2VyLWRpYWxvZy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb250ZXh0L3NyYy9saWIvY29udGV4dC1tYXAtYnV0dG9uL3VzZXItYnV0dG9uL3VzZXItZGlhbG9nLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFDTCxnQkFBZ0IsRUFDaEIsZ0JBQWdCLEVBQ2hCLFlBQVksRUFDWixjQUFjLEVBQ2YsTUFBTSwwQkFBMEIsQ0FBQztBQUVsQyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQzs7Ozs7OztBQWNwRCxNQUFNLE9BQU8sbUJBQW1CO0lBS3JCO0lBQ0M7SUFDQTtJQU5ILElBQUksQ0FBQztJQUNMLEdBQUcsQ0FBQztJQUVYLFlBQ1MsU0FBNEMsRUFDM0MsSUFBaUIsRUFDakIsY0FBOEI7UUFGL0IsY0FBUyxHQUFULFNBQVMsQ0FBbUM7UUFDM0MsU0FBSSxHQUFKLElBQUksQ0FBYTtRQUNqQixtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFFdEMsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUM1QyxJQUFJLENBQUMsSUFBSSxHQUFHLFdBQVcsRUFBRSxJQUFJLENBQUM7UUFDOUIsSUFBSSxDQUFDLEdBQUcsR0FBRyxJQUFJLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxHQUFHLElBQUksQ0FBQyxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQy9ELENBQUM7SUFFRCxnQkFBZ0I7UUFDZCxJQUFJLENBQUMsY0FBYyxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQzlCLENBQUM7d0dBaEJVLG1CQUFtQjs0RkFBbkIsbUJBQW1CLDJFQ3pCaEMsdXhCQXFCQSw0Q0RISSxjQUFjLCtIQUNkLGdCQUFnQix3R0FDaEIsZUFBZSw0TkFDZixnQkFBZ0IsMkhBQ2hCLGlCQUFpQjs7NEZBR1IsbUJBQW1CO2tCQVovQixTQUFTOytCQUNFLGlCQUFpQixjQUVmLElBQUksV0FDUDt3QkFDUCxjQUFjO3dCQUNkLGdCQUFnQjt3QkFDaEIsZUFBZTt3QkFDZixnQkFBZ0I7d0JBQ2hCLGlCQUFpQjtxQkFDbEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hdEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XG5pbXBvcnQge1xuICBNYXREaWFsb2dBY3Rpb25zLFxuICBNYXREaWFsb2dDb250ZW50LFxuICBNYXREaWFsb2dSZWYsXG4gIE1hdERpYWxvZ1RpdGxlXG59IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XG5cbmltcG9ydCB7IEF1dGhTZXJ2aWNlIH0gZnJvbSAnQGlnbzIvYXV0aCc7XG5pbXBvcnQgeyBJZ29MYW5ndWFnZU1vZHVsZSB9IGZyb20gJ0BpZ28yL2NvcmUvbGFuZ3VhZ2UnO1xuaW1wb3J0IHsgU3RvcmFnZVNlcnZpY2UgfSBmcm9tICdAaWdvMi9jb3JlL3N0b3JhZ2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdpZ28tdXNlci1kaWFsb2cnLFxuICB0ZW1wbGF0ZVVybDogJy4vdXNlci1kaWFsb2cuY29tcG9uZW50Lmh0bWwnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgTWF0RGlhbG9nVGl0bGUsXG4gICAgTWF0RGlhbG9nQ29udGVudCxcbiAgICBNYXRCdXR0b25Nb2R1bGUsXG4gICAgTWF0RGlhbG9nQWN0aW9ucyxcbiAgICBJZ29MYW5ndWFnZU1vZHVsZVxuICBdXG59KVxuZXhwb3J0IGNsYXNzIFVzZXJEaWFsb2dDb21wb25lbnQge1xuICBwdWJsaWMgdXNlcjtcbiAgcHVibGljIGV4cDtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgZGlhbG9nUmVmOiBNYXREaWFsb2dSZWY8VXNlckRpYWxvZ0NvbXBvbmVudD4sXG4gICAgcHJpdmF0ZSBhdXRoOiBBdXRoU2VydmljZSxcbiAgICBwcml2YXRlIHN0b3JhZ2VTZXJ2aWNlOiBTdG9yYWdlU2VydmljZVxuICApIHtcbiAgICBjb25zdCBkZWNvZGVUb2tlbiA9IHRoaXMuYXV0aC5kZWNvZGVUb2tlbigpO1xuICAgIHRoaXMudXNlciA9IGRlY29kZVRva2VuPy51c2VyO1xuICAgIHRoaXMuZXhwID0gbmV3IERhdGUoZGVjb2RlVG9rZW4uZXhwICogMTAwMCkudG9Mb2NhbGVTdHJpbmcoKTtcbiAgfVxuXG4gIGNsZWFyUHJlZmVyZW5jZXMoKSB7XG4gICAgdGhpcy5zdG9yYWdlU2VydmljZS5jbGVhcigpO1xuICB9XG59XG4iLCI8aDEgbWF0LWRpYWxvZy10aXRsZSBjbGFzcz1cIm1hdC10eXBvZ3JhcGh5XCI+XG4gIHt7ICdpZ28uY29udGV4dC51c2VyQnV0dG9uLmluZm9UaXRsZScgfCB0cmFuc2xhdGUgfX1cbjwvaDE+XG48ZGl2IG1hdC1kaWFsb2ctY29udGVudCBjbGFzcz1cIm1hdC10eXBvZ3JhcGh5XCI+XG4gIDxwPlxuICAgIHt7ICdpZ28uY29udGV4dC51c2VyQnV0dG9uLmRpYWxvZy51c2VyJyB8IHRyYW5zbGF0ZSB9fToge3sgdXNlci5zb3VyY2VJZCB9fVxuICA8L3A+XG4gIDxwPlxuICAgIHt7ICdpZ28uY29udGV4dC51c2VyQnV0dG9uLmRpYWxvZy5lbWFpbCcgfCB0cmFuc2xhdGUgfX06IHt7IHVzZXIuZW1haWwgfX1cbiAgPC9wPlxuICA8cD57eyAnaWdvLmNvbnRleHQudXNlckJ1dHRvbi5kaWFsb2cuZXhwaXJhdGlvbicgfCB0cmFuc2xhdGUgfX06IHt7IGV4cCB9fTwvcD5cbiAgPGJ1dHRvbiBtYXQtc3Ryb2tlZC1idXR0b24gY29sb3I9XCJwcmltYXJ5XCIgKGNsaWNrKT1cImNsZWFyUHJlZmVyZW5jZXMoKVwiPlxuICAgIHt7ICdpZ28uY29udGV4dC51c2VyQnV0dG9uLmRpYWxvZy5jbGVhclByZWZlcmVuY2VzJyB8IHRyYW5zbGF0ZSB9fVxuICA8L2J1dHRvbj5cbiAgPGJyIC8+XG48L2Rpdj5cbjxkaXYgbWF0LWRpYWxvZy1hY3Rpb25zIHN0eWxlPVwianVzdGlmeS1jb250ZW50OiBjZW50ZXJcIj5cbiAgPGJ1dHRvbiBtYXQtcmFpc2VkLWJ1dHRvbiBjb2xvcj1cInByaW1hcnlcIiAoY2xpY2spPVwiZGlhbG9nUmVmLmNsb3NlKGZhbHNlKVwiPlxuICAgIE9LXG4gIDwvYnV0dG9uPlxuPC9kaXY+XG4iXX0=
@@ -0,0 +1,42 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { IgoContextImportExportModule } from './context-import-export/context-import-export.module';
3
+ import { IgoContextManagerModule } from './context-manager/context-manager.module';
4
+ import { IgoContextMapButtonModule } from './context-map-button/context-map-button.module';
5
+ import { IgoShareMapModule } from './share-map/share-map.module';
6
+ import { IgoSidenavModule } from './sidenav/sidenav.module';
7
+ import * as i0 from "@angular/core";
8
+ /**
9
+ * @deprecated import the components/directives directly or SHARE_MAP_DIRECTIVES for the set
10
+ */
11
+ export class IgoContextModule {
12
+ static forRoot() {
13
+ return {
14
+ ngModule: IgoContextModule
15
+ };
16
+ }
17
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: IgoContextModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
18
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: IgoContextModule, exports: [IgoContextImportExportModule,
19
+ IgoContextManagerModule,
20
+ IgoContextMapButtonModule,
21
+ IgoShareMapModule,
22
+ IgoSidenavModule] });
23
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: IgoContextModule, imports: [IgoContextImportExportModule,
24
+ IgoContextManagerModule,
25
+ IgoContextMapButtonModule,
26
+ IgoShareMapModule,
27
+ IgoSidenavModule] });
28
+ }
29
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: IgoContextModule, decorators: [{
30
+ type: NgModule,
31
+ args: [{
32
+ declarations: [],
33
+ exports: [
34
+ IgoContextImportExportModule,
35
+ IgoContextManagerModule,
36
+ IgoContextMapButtonModule,
37
+ IgoShareMapModule,
38
+ IgoSidenavModule
39
+ ]
40
+ }]
41
+ }] });
42
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGV4dC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9jb250ZXh0L3NyYy9saWIvY29udGV4dC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUF1QixRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFOUQsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sc0RBQXNELENBQUM7QUFDcEcsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDbkYsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sZ0RBQWdELENBQUM7QUFDM0YsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDakUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7O0FBRTVEOztHQUVHO0FBV0gsTUFBTSxPQUFPLGdCQUFnQjtJQUMzQixNQUFNLENBQUMsT0FBTztRQUNaLE9BQU87WUFDTCxRQUFRLEVBQUUsZ0JBQWdCO1NBQzNCLENBQUM7SUFDSixDQUFDO3dHQUxVLGdCQUFnQjt5R0FBaEIsZ0JBQWdCLFlBUHpCLDRCQUE0QjtZQUM1Qix1QkFBdUI7WUFDdkIseUJBQXlCO1lBQ3pCLGlCQUFpQjtZQUNqQixnQkFBZ0I7eUdBR1AsZ0JBQWdCLFlBUHpCLDRCQUE0QjtZQUM1Qix1QkFBdUI7WUFDdkIseUJBQXlCO1lBQ3pCLGlCQUFpQjtZQUNqQixnQkFBZ0I7OzRGQUdQLGdCQUFnQjtrQkFWNUIsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUUsRUFBRTtvQkFDaEIsT0FBTyxFQUFFO3dCQUNQLDRCQUE0Qjt3QkFDNUIsdUJBQXVCO3dCQUN2Qix5QkFBeUI7d0JBQ3pCLGlCQUFpQjt3QkFDakIsZ0JBQWdCO3FCQUNqQjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE1vZHVsZVdpdGhQcm92aWRlcnMsIE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IElnb0NvbnRleHRJbXBvcnRFeHBvcnRNb2R1bGUgfSBmcm9tICcuL2NvbnRleHQtaW1wb3J0LWV4cG9ydC9jb250ZXh0LWltcG9ydC1leHBvcnQubW9kdWxlJztcbmltcG9ydCB7IElnb0NvbnRleHRNYW5hZ2VyTW9kdWxlIH0gZnJvbSAnLi9jb250ZXh0LW1hbmFnZXIvY29udGV4dC1tYW5hZ2VyLm1vZHVsZSc7XG5pbXBvcnQgeyBJZ29Db250ZXh0TWFwQnV0dG9uTW9kdWxlIH0gZnJvbSAnLi9jb250ZXh0LW1hcC1idXR0b24vY29udGV4dC1tYXAtYnV0dG9uLm1vZHVsZSc7XG5pbXBvcnQgeyBJZ29TaGFyZU1hcE1vZHVsZSB9IGZyb20gJy4vc2hhcmUtbWFwL3NoYXJlLW1hcC5tb2R1bGUnO1xuaW1wb3J0IHsgSWdvU2lkZW5hdk1vZHVsZSB9IGZyb20gJy4vc2lkZW5hdi9zaWRlbmF2Lm1vZHVsZSc7XG5cbi8qKlxuICogQGRlcHJlY2F0ZWQgaW1wb3J0IHRoZSBjb21wb25lbnRzL2RpcmVjdGl2ZXMgZGlyZWN0bHkgb3IgU0hBUkVfTUFQX0RJUkVDVElWRVMgZm9yIHRoZSBzZXRcbiAqL1xuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbXSxcbiAgZXhwb3J0czogW1xuICAgIElnb0NvbnRleHRJbXBvcnRFeHBvcnRNb2R1bGUsXG4gICAgSWdvQ29udGV4dE1hbmFnZXJNb2R1bGUsXG4gICAgSWdvQ29udGV4dE1hcEJ1dHRvbk1vZHVsZSxcbiAgICBJZ29TaGFyZU1hcE1vZHVsZSxcbiAgICBJZ29TaWRlbmF2TW9kdWxlXG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgSWdvQ29udGV4dE1vZHVsZSB7XG4gIHN0YXRpYyBmb3JSb290KCk6IE1vZHVsZVdpdGhQcm92aWRlcnM8SWdvQ29udGV4dE1vZHVsZT4ge1xuICAgIHJldHVybiB7XG4gICAgICBuZ01vZHVsZTogSWdvQ29udGV4dE1vZHVsZVxuICAgIH07XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW52aXJvbm1lbnQuaW50ZXJmYWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29udGV4dC9zcmMvbGliL2Vudmlyb25tZW50L2Vudmlyb25tZW50LmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQXV0aE9wdGlvbnMgfSBmcm9tICdAaWdvMi9hdXRoJztcbmltcG9ydCB7IEltcG9ydEV4cG9ydFNlcnZpY2VPcHRpb25zIH0gZnJvbSAnQGlnbzIvZ2VvJztcblxuaW1wb3J0IHsgQ29udGV4dFNlcnZpY2VPcHRpb25zIH0gZnJvbSAnLi4vY29udGV4dC1tYW5hZ2VyJztcblxuZXhwb3J0IGludGVyZmFjZSBFbnZpcm9ubWVudE9wdGlvbnMge1xuICBhdXRoPzogQXV0aE9wdGlvbnM7XG4gIGNvbnRleHQ/OiBDb250ZXh0U2VydmljZU9wdGlvbnM7XG4gIGZhdm9yaXRlQ29udGV4dDROb25BdXRoZW50aWNhdGVkPzogYm9vbGVhbjtcbiAgaW1wb3J0RXhwb3J0PzogSW1wb3J0RXhwb3J0U2VydmljZU9wdGlvbnM7XG59XG4iXX0=
@@ -0,0 +1,2 @@
1
+ export * from './environment.interface';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb250ZXh0L3NyYy9saWIvZW52aXJvbm1lbnQvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyx5QkFBeUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vZW52aXJvbm1lbnQuaW50ZXJmYWNlJztcbiJdfQ==
@@ -0,0 +1,6 @@
1
+ export * from './shared';
2
+ export * from './share-map.module';
3
+ export * from './share-map/share-map.component';
4
+ export * from './share-map/share-map-url.component';
5
+ export * from './share-map/share-map-api.component';
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb250ZXh0L3NyYy9saWIvc2hhcmUtbWFwL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsVUFBVSxDQUFDO0FBQ3pCLGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLHFDQUFxQyxDQUFDO0FBQ3BELGNBQWMscUNBQXFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3NoYXJlZCc7XG5leHBvcnQgKiBmcm9tICcuL3NoYXJlLW1hcC5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9zaGFyZS1tYXAvc2hhcmUtbWFwLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3NoYXJlLW1hcC9zaGFyZS1tYXAtdXJsLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3NoYXJlLW1hcC9zaGFyZS1tYXAtYXBpLmNvbXBvbmVudCc7XG4iXX0=