@igo2/context 18.0.1-next.2 → 18.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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,111 @@
1
+ import { NgIf } from '@angular/common';
2
+ import { Component, Input } from '@angular/core';
3
+ import { FormsModule, ReactiveFormsModule, UntypedFormBuilder } 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 { MatTooltipModule } from '@angular/material/tooltip';
9
+ import { AuthService } from '@igo2/auth';
10
+ import { LanguageService } from '@igo2/core/language';
11
+ import { IgoLanguageModule } from '@igo2/core/language';
12
+ import { MessageService } from '@igo2/core/message';
13
+ import { Clipboard, uuid } from '@igo2/utils';
14
+ import { ShareMapService } from '../shared/share-map.service';
15
+ import * as i0 from "@angular/core";
16
+ import * as i1 from "@igo2/core/language";
17
+ import * as i2 from "@igo2/core/message";
18
+ import * as i3 from "@igo2/auth";
19
+ import * as i4 from "../shared/share-map.service";
20
+ import * as i5 from "@angular/forms";
21
+ import * as i6 from "@angular/material/form-field";
22
+ import * as i7 from "@angular/material/input";
23
+ import * as i8 from "@angular/material/button";
24
+ import * as i9 from "@angular/material/tooltip";
25
+ import * as i10 from "@angular/material/icon";
26
+ import * as i11 from "@ngx-translate/core";
27
+ export class ShareMapApiComponent {
28
+ languageService;
29
+ messageService;
30
+ auth;
31
+ shareMapService;
32
+ formBuilder;
33
+ form;
34
+ map;
35
+ url;
36
+ userId;
37
+ idContextShared;
38
+ constructor(languageService, messageService, auth, shareMapService, formBuilder) {
39
+ this.languageService = languageService;
40
+ this.messageService = messageService;
41
+ this.auth = auth;
42
+ this.shareMapService = shareMapService;
43
+ this.formBuilder = formBuilder;
44
+ }
45
+ ngOnInit() {
46
+ this.auth.authenticate$.subscribe(() => {
47
+ const decodeToken = this.auth.decodeToken();
48
+ this.userId = decodeToken?.user?.id.toString();
49
+ this.buildForm();
50
+ });
51
+ }
52
+ createUrl(values = {}) {
53
+ const inputs = Object.assign({}, values);
54
+ inputs.uri = this.userId ? `${this.userId}-${values.uri}` : values.uri;
55
+ this.url = this.shareMapService.getUrlWithApi(inputs);
56
+ this.shareMapService.createContextShared(this.map, inputs).subscribe((rep) => {
57
+ this.idContextShared = rep.id;
58
+ this.messageService.success('igo.context.contextManager.dialog.saveMsg', 'igo.context.contextManager.dialog.saveTitle', undefined, { value: inputs.title });
59
+ }, (err) => {
60
+ err.error.title = this.languageService.translate.instant('igo.context.shareMap.errorTitle');
61
+ this.messageService.showError(err);
62
+ });
63
+ }
64
+ updateContextShared(values = {}) {
65
+ const inputs = Object.assign({}, values);
66
+ inputs.uri = this.userId ? `${this.userId}-${values.uri}` : values.uri;
67
+ this.shareMapService
68
+ .updateContextShared(this.map, inputs, this.idContextShared)
69
+ .subscribe(() => {
70
+ this.messageService.success('igo.context.contextManager.dialog.saveMsg', 'igo.context.contextManager.dialog.saveTitle', undefined, { value: inputs.title });
71
+ }, (err) => {
72
+ err.error.title = this.languageService.translate.instant('igo.context.shareMap.errorTitle');
73
+ this.messageService.showError(err);
74
+ });
75
+ }
76
+ copyTextToClipboard(textArea) {
77
+ const successful = Clipboard.copy(textArea);
78
+ if (successful) {
79
+ this.messageService.success('igo.context.shareMap.dialog.copyMsg', 'igo.context.shareMap.dialog.copyTitle');
80
+ }
81
+ }
82
+ buildForm() {
83
+ this.url = undefined;
84
+ const id = uuid();
85
+ let title = 'Partage ';
86
+ title += this.userId ? `(${this.userId}-${id})` : `(${id})`;
87
+ this.form = this.formBuilder.group({
88
+ title: [title],
89
+ uri: [id]
90
+ });
91
+ }
92
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ShareMapApiComponent, deps: [{ token: i1.LanguageService }, { token: i2.MessageService }, { token: i3.AuthService }, { token: i4.ShareMapService }, { token: i5.UntypedFormBuilder }], target: i0.ɵɵFactoryTarget.Component });
93
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: ShareMapApiComponent, isStandalone: true, selector: "igo-share-map-api", inputs: { map: "map" }, ngImport: i0, template: "<form class=\"igo-form\" [formGroup]=\"form\" (ngSubmit)=\"createUrl(form.value)\">\n <div class=\"igo-input-container\">\n <mat-form-field>\n <input\n matInput\n required\n [placeholder]=\"'igo.context.contextManager.form.title' | translate\"\n formControlName=\"title\"\n />\n <mat-error>\n {{ 'igo.context.contextManager.form.titleRequired' | translate }}\n </mat-error>\n </mat-form-field>\n </div>\n\n <div id=\"uriInput\" class=\"igo-input-container\">\n <mat-form-field>\n <span *ngIf=\"userId\" class=\"prefix\">{{ userId }}-</span>\n <span class=\"fieldWrapper\">\n <input\n matInput\n required\n [readonly]=\"!userId\"\n [placeholder]=\"'igo.context.contextManager.form.uri' | translate\"\n formControlName=\"uri\"\n />\n </span>\n <mat-error>\n {{ 'igo.context.contextManager.form.uriRequired' | translate }}\n </mat-error>\n </mat-form-field>\n </div>\n\n <div class=\"igo-form-button-group\">\n <button\n *ngIf=\"!url\"\n mat-raised-button\n type=\"submit\"\n [disabled]=\"!form.valid\"\n >\n {{ 'igo.context.shareMap.button' | translate }}\n </button>\n <button\n *ngIf=\"url\"\n mat-raised-button\n type=\"button\"\n (click)=\"updateContextShared(form.value)\"\n >\n {{ 'igo.context.shareMap.refreshBtn' | translate }}\n </button>\n </div>\n</form>\n\n<div *ngIf=\"url\" class=\"igo-input-container linkToShare\">\n <mat-form-field>\n <textarea\n #textArea\n matInput\n readonly\n rows=\"3\"\n class=\"textAreaWithButton\"\n [placeholder]=\"'igo.context.shareMap.placeholderLink' | translate\"\n [value]=\"url\"\n ></textarea>\n <button\n mat-icon-button\n tooltip-position=\"below\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"'igo.context.shareMap.copy' | translate\"\n color=\"primary\"\n (click)=\"copyTextToClipboard(textArea)\"\n >\n <mat-icon>content_copy</mat-icon>\n </button>\n </mat-form-field>\n <div></div>\n</div>\n", styles: ["@charset \"UTF-8\";mat-form-field{width:100%}#uriInput .fieldWrapper{display:block;overflow:hidden}#uriInput .prefix{float:left}.linkToShare\\a0 {padding:25px 5px 5px}.linkToShare\\a0 textarea{resize:none;width:100%;line-height:1.3;height:40px;overflow-y:hidden;word-wrap:normal;word-break:break-all}.linkToShare\\a0 textarea.textAreaWithButton{width:calc(100% - 60px)}.linkToShare\\a0 mat-form-field>button{float:right;margin:-10px 0}.igo-form{padding:20px 5px 5px}.igo-form-button-group{text-align:center;padding-top:10px}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i5.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i5.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i5.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i5.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i5.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i6.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i6.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i7.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i8.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i8.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "ngmodule", type: MatTooltipModule }, { kind: "directive", type: i9.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i10.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: IgoLanguageModule }, { kind: "pipe", type: i11.TranslatePipe, name: "translate" }] });
94
+ }
95
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ShareMapApiComponent, decorators: [{
96
+ type: Component,
97
+ args: [{ selector: 'igo-share-map-api', standalone: true, imports: [
98
+ FormsModule,
99
+ ReactiveFormsModule,
100
+ MatFormFieldModule,
101
+ MatInputModule,
102
+ NgIf,
103
+ MatButtonModule,
104
+ MatTooltipModule,
105
+ MatIconModule,
106
+ IgoLanguageModule
107
+ ], template: "<form class=\"igo-form\" [formGroup]=\"form\" (ngSubmit)=\"createUrl(form.value)\">\n <div class=\"igo-input-container\">\n <mat-form-field>\n <input\n matInput\n required\n [placeholder]=\"'igo.context.contextManager.form.title' | translate\"\n formControlName=\"title\"\n />\n <mat-error>\n {{ 'igo.context.contextManager.form.titleRequired' | translate }}\n </mat-error>\n </mat-form-field>\n </div>\n\n <div id=\"uriInput\" class=\"igo-input-container\">\n <mat-form-field>\n <span *ngIf=\"userId\" class=\"prefix\">{{ userId }}-</span>\n <span class=\"fieldWrapper\">\n <input\n matInput\n required\n [readonly]=\"!userId\"\n [placeholder]=\"'igo.context.contextManager.form.uri' | translate\"\n formControlName=\"uri\"\n />\n </span>\n <mat-error>\n {{ 'igo.context.contextManager.form.uriRequired' | translate }}\n </mat-error>\n </mat-form-field>\n </div>\n\n <div class=\"igo-form-button-group\">\n <button\n *ngIf=\"!url\"\n mat-raised-button\n type=\"submit\"\n [disabled]=\"!form.valid\"\n >\n {{ 'igo.context.shareMap.button' | translate }}\n </button>\n <button\n *ngIf=\"url\"\n mat-raised-button\n type=\"button\"\n (click)=\"updateContextShared(form.value)\"\n >\n {{ 'igo.context.shareMap.refreshBtn' | translate }}\n </button>\n </div>\n</form>\n\n<div *ngIf=\"url\" class=\"igo-input-container linkToShare\">\n <mat-form-field>\n <textarea\n #textArea\n matInput\n readonly\n rows=\"3\"\n class=\"textAreaWithButton\"\n [placeholder]=\"'igo.context.shareMap.placeholderLink' | translate\"\n [value]=\"url\"\n ></textarea>\n <button\n mat-icon-button\n tooltip-position=\"below\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"'igo.context.shareMap.copy' | translate\"\n color=\"primary\"\n (click)=\"copyTextToClipboard(textArea)\"\n >\n <mat-icon>content_copy</mat-icon>\n </button>\n </mat-form-field>\n <div></div>\n</div>\n", styles: ["@charset \"UTF-8\";mat-form-field{width:100%}#uriInput .fieldWrapper{display:block;overflow:hidden}#uriInput .prefix{float:left}.linkToShare\\a0 {padding:25px 5px 5px}.linkToShare\\a0 textarea{resize:none;width:100%;line-height:1.3;height:40px;overflow-y:hidden;word-wrap:normal;word-break:break-all}.linkToShare\\a0 textarea.textAreaWithButton{width:calc(100% - 60px)}.linkToShare\\a0 mat-form-field>button{float:right;margin:-10px 0}.igo-form{padding:20px 5px 5px}.igo-form-button-group{text-align:center;padding-top:10px}\n"] }]
108
+ }], ctorParameters: () => [{ type: i1.LanguageService }, { type: i2.MessageService }, { type: i3.AuthService }, { type: i4.ShareMapService }, { type: i5.UntypedFormBuilder }], propDecorators: { map: [{
109
+ type: Input
110
+ }] } });
111
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hhcmUtbWFwLWFwaS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb250ZXh0L3NyYy9saWIvc2hhcmUtbWFwL3NoYXJlLW1hcC9zaGFyZS1tYXAtYXBpLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbnRleHQvc3JjL2xpYi9zaGFyZS1tYXAvc2hhcmUtbWFwL3NoYXJlLW1hcC1hcGkuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQ3pELE9BQU8sRUFDTCxXQUFXLEVBQ1gsbUJBQW1CLEVBQ25CLGtCQUFrQixFQUVuQixNQUFNLGdCQUFnQixDQUFDO0FBQ3hCLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRTdELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDekMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUVwRCxPQUFPLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUU5QyxPQUFP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LFdBQVcsdzNCQUNYLG1CQUFtQiwrVUFDbkIsa0JBQWtCLHNVQUNsQixjQUFjLDJXQUNkLElBQUksNEZBQ0osZUFBZSx3VUFDZixnQkFBZ0IsNFRBQ2hCLGFBQWEsb0xBQ2IsaUJBQWlCOzs0RkFHUixvQkFBb0I7a0JBakJoQyxTQUFTOytCQUNFLG1CQUFtQixjQUdqQixJQUFJLFdBQ1A7d0JBQ1AsV0FBVzt3QkFDWCxtQkFBbUI7d0JBQ25CLGtCQUFrQjt3QkFDbEIsY0FBYzt3QkFDZCxJQUFJO3dCQUNKLGVBQWU7d0JBQ2YsZ0JBQWdCO3dCQUNoQixhQUFhO3dCQUNiLGlCQUFpQjtxQkFDbEI7ME1BS1EsR0FBRztzQkFBWCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdJZiB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIEZvcm1zTW9kdWxlLFxuICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICBVbnR5cGVkRm9ybUJ1aWxkZXIsXG4gIFVudHlwZWRGb3JtR3JvdXBcbn0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgTWF0QnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcbmltcG9ydCB7IE1hdEZvcm1GaWVsZE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2Zvcm0tZmllbGQnO1xuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xuaW1wb3J0IHsgTWF0SW5wdXRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pbnB1dCc7XG5pbXBvcnQgeyBNYXRUb29sdGlwTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdG9vbHRpcCc7XG5cbmltcG9ydCB7IEF1dGhTZXJ2aWNlIH0gZnJvbSAnQGlnbzIvYXV0aCc7XG5pbXBvcnQgeyBMYW5ndWFnZVNlcnZpY2UgfSBmcm9tICdAaWdvMi9jb3JlL2xhbmd1YWdlJztcbmltcG9ydCB7IElnb0xhbmd1YWdlTW9kdWxlIH0gZnJvbSAnQGlnbzIvY29yZS9sYW5ndWFnZSc7XG5pbXBvcnQgeyBNZXNzYWdlU2VydmljZSB9IGZyb20gJ0BpZ28yL2NvcmUvbWVzc2FnZSc7XG5pbXBvcnQgdHlwZSB7IElnb01hcCB9IGZyb20gJ0BpZ28yL2dlbyc7XG5pbXBvcnQgeyBDbGlwYm9hcmQsIHV1aWQgfSBmcm9tICdAaWdvMi91dGlscyc7XG5cbmltcG9ydCB7IFNoYXJlTWFwU2VydmljZSB9IGZyb20gJy4uL3NoYXJlZC9zaGFyZS1tYXAuc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2lnby1zaGFyZS1tYXAtYXBpJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3NoYXJlLW1hcC1hcGkuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9zaGFyZS1tYXAtYXBpLmNvbXBvbmVudC5zY3NzJ10sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBGb3Jtc01vZHVsZSxcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICAgIE1hdEZvcm1GaWVsZE1vZHVsZSxcbiAgICBNYXRJbnB1dE1vZHVsZSxcbiAgICBOZ0lmLFxuICAgIE1hdEJ1dHRvbk1vZHVsZSxcbiAgICBNYXRUb29sdGlwTW9kdWxlLFxuICAgIE1hdEljb25Nb2R1bGUsXG4gICAgSWdvTGFuZ3VhZ2VNb2R1bGVcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBTaGFyZU1hcEFwaUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIHB1YmxpYyBmb3JtOiBVbnR5cGVkRm9ybUdyb3VwO1xuXG4gIEBJbnB1dCgpIG1hcDogSWdvTWFwO1xuXG4gIHB1YmxpYyB1cmw6IHN0cmluZztcbiAgcHVibGljIHVzZXJJZDogc3RyaW5nO1xuICBwdWJsaWMgaWRDb250ZXh0U2hhcmVkOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBsYW5ndWFnZVNlcnZpY2U6IExhbmd1YWdlU2VydmljZSxcbiAgICBwcml2YXRlIG1lc3NhZ2VTZXJ2aWNlOiBNZXNzYWdlU2VydmljZSxcbiAgICBwcml2YXRlIGF1dGg6IEF1dGhTZXJ2aWNlLFxuICAgIHByaXZhdGUgc2hhcmVNYXBTZXJ2aWNlOiBTaGFyZU1hcFNlcnZpY2UsXG4gICAgcHJpdmF0ZSBmb3JtQnVpbGRlcjogVW50eXBlZEZvcm1CdWlsZGVyXG4gICkge31cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmF1dGguYXV0aGVudGljYXRlJC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgY29uc3QgZGVjb2RlVG9rZW4gPSB0aGlzLmF1dGguZGVjb2RlVG9rZW4oKTtcbiAgICAgIHRoaXMudXNlcklkID0gZGVjb2RlVG9rZW4/LnVzZXI/LmlkLnRvU3RyaW5nKCk7XG4gICAgICB0aGlzLmJ1aWxkRm9ybSgpO1xuICAgIH0pO1xuICB9XG5cbiAgY3JlYXRlVXJsKHZhbHVlczogYW55ID0ge30pIHtcbiAgICBjb25zdCBpbnB1dHMgPSBPYmplY3QuYXNzaWduKHt9LCB2YWx1ZXMpO1xuICAgIGlucHV0cy51cmkgPSB0aGlzLnVzZXJJZCA/IGAke3RoaXMudXNlcklkfS0ke3ZhbHVlcy51cml9YCA6IHZhbHVlcy51cmk7XG4gICAgdGhpcy51cmwgPSB0aGlzLnNoYXJlTWFwU2VydmljZS5nZXRVcmxXaXRoQXBpKGlucHV0cyk7XG4gICAgdGhpcy5zaGFyZU1hcFNlcnZpY2UuY3JlYXRlQ29udGV4dFNoYXJlZCh0aGlzLm1hcCwgaW5wdXRzKS5zdWJzY3JpYmUoXG4gICAgICAocmVwKSA9PiB7XG4gICAgICAgIHRoaXMuaWRDb250ZXh0U2hhcmVkID0gcmVwLmlkO1xuICAgICAgICB0aGlzLm1lc3NhZ2VTZXJ2aWNlLnN1Y2Nlc3MoXG4gICAgICAgICAgJ2lnby5jb250ZXh0LmNvbnRleHRNYW5hZ2VyLmRpYWxvZy5zYXZlTXNnJyxcbiAgICAgICAgICAnaWdvLmNvbnRleHQuY29udGV4dE1hbmFnZXIuZGlhbG9nLnNhdmVUaXRsZScsXG4gICAgICAgICAgdW5kZWZpbmVkLFxuICAgICAgICAgIHsgdmFsdWU6IGlucHV0cy50aXRsZSB9XG4gICAgICAgICk7XG4gICAgICB9LFxuICAgICAgKGVycikgPT4ge1xuICAgICAgICBlcnIuZXJyb3IudGl0bGUgPSB0aGlzLmxhbmd1YWdlU2VydmljZS50cmFuc2xhdGUuaW5zdGFudChcbiAgICAgICAgICAnaWdvLmNvbnRleHQuc2hhcmVNYXAuZXJyb3JUaXRsZSdcbiAgICAgICAgKTtcbiAgICAgICAgdGhpcy5tZXNzYWdlU2VydmljZS5zaG93RXJyb3IoZXJyKTtcbiAgICAgIH1cbiAgICApO1xuICB9XG5cbiAgdXBkYXRlQ29udGV4dFNoYXJlZCh2YWx1ZXM6IGFueSA9IHt9KSB7XG4gICAgY29uc3QgaW5wdXRzID0gT2JqZWN0LmFzc2lnbih7fSwgdmFsdWVzKTtcbiAgICBpbnB1dHMudXJpID0gdGhpcy51c2VySWQgPyBgJHt0aGlzLnVzZXJJZH0tJHt2YWx1ZXMudXJpfWAgOiB2YWx1ZXMudXJpO1xuICAgIHRoaXMuc2hhcmVNYXBTZXJ2aWNlXG4gICAgICAudXBkYXRlQ29udGV4dFNoYXJlZCh0aGlzLm1hcCwgaW5wdXRzLCB0aGlzLmlkQ29udGV4dFNoYXJlZClcbiAgICAgIC5zdWJzY3JpYmUoXG4gICAgICAgICgpID0+IHtcbiAgICAgICAgICB0aGlzLm1lc3NhZ2VTZXJ2aWNlLnN1Y2Nlc3MoXG4gICAgICAgICAgICAnaWdvLmNvbnRleHQuY29udGV4dE1hbmFnZXIuZGlhbG9nLnNhdmVNc2cnLFxuICAgICAgICAgICAgJ2lnby5jb250ZXh0LmNvbnRleHRNYW5hZ2VyLmRpYWxvZy5zYXZlVGl0bGUnLFxuICAgICAgICAgICAgdW5kZWZpbmVkLFxuICAgICAgICAgICAgeyB2YWx1ZTogaW5wdXRzLnRpdGxlIH1cbiAgICAgICAgICApO1xuICAgICAgICB9LFxuICAgICAgICAoZXJyKSA9PiB7XG4gICAgICAgICAgZXJyLmVycm9yLnRpdGxlID0gdGhpcy5sYW5ndWFnZVNlcnZpY2UudHJhbnNsYXRlLmluc3RhbnQoXG4gICAgICAgICAgICAnaWdvLmNvbnRleHQuc2hhcmVNYXAuZXJyb3JUaXRsZSdcbiAgICAgICAgICApO1xuICAgICAgICAgIHRoaXMubWVzc2FnZVNlcnZpY2Uuc2hvd0Vycm9yKGVycik7XG4gICAgICAgIH1cbiAgICAgICk7XG4gIH1cblxuICBjb3B5VGV4dFRvQ2xpcGJvYXJkKHRleHRBcmVhKSB7XG4gICAgY29uc3Qgc3VjY2Vzc2Z1bCA9IENsaXBib2FyZC5jb3B5KHRleHRBcmVhKTtcbiAgICBpZiAoc3VjY2Vzc2Z1bCkge1xuICAgICAgdGhpcy5tZXNzYWdlU2VydmljZS5zdWNjZXNzKFxuICAgICAgICAnaWdvLmNvbnRleHQuc2hhcmVNYXAuZGlhbG9nLmNvcHlNc2cnLFxuICAgICAgICAnaWdvLmNvbnRleHQuc2hhcmVNYXAuZGlhbG9nLmNvcHlUaXRsZSdcbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgYnVpbGRGb3JtKCk6IHZvaWQge1xuICAgIHRoaXMudXJsID0gdW5kZWZpbmVkO1xuICAgIGNvbnN0IGlkID0gdXVpZCgpO1xuICAgIGxldCB0aXRsZSA9ICdQYXJ0YWdlICc7XG4gICAgdGl0bGUgKz0gdGhpcy51c2VySWQgPyBgKCR7dGhpcy51c2VySWR9LSR7aWR9KWAgOiBgKCR7aWR9KWA7XG4gICAgdGhpcy5mb3JtID0gdGhpcy5mb3JtQnVpbGRlci5ncm91cCh7XG4gICAgICB0aXRsZTogW3RpdGxlXSxcbiAgICAgIHVyaTogW2lkXVxuICAgIH0pO1xuICB9XG59XG4iLCI8Zm9ybSBjbGFzcz1cImlnby1mb3JtXCIgW2Zvcm1Hcm91cF09XCJmb3JtXCIgKG5nU3VibWl0KT1cImNyZWF0ZVVybChmb3JtLnZhbHVlKVwiPlxuICA8ZGl2IGNsYXNzPVwiaWdvLWlucHV0LWNvbnRhaW5lclwiPlxuICAgIDxtYXQtZm9ybS1maWVsZD5cbiAgICAgIDxpbnB1dFxuICAgICAgICBtYXRJbnB1dFxuICAgICAgICByZXF1aXJlZFxuICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ2lnby5jb250ZXh0LmNvbnRleHRNYW5hZ2VyLmZvcm0udGl0bGUnIHwgdHJhbnNsYXRlXCJcbiAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwidGl0bGVcIlxuICAgICAgLz5cbiAgICAgIDxtYXQtZXJyb3I+XG4gICAgICAgIHt7ICdpZ28uY29udGV4dC5jb250ZXh0TWFuYWdlci5mb3JtLnRpdGxlUmVxdWlyZWQnIHwgdHJhbnNsYXRlIH19XG4gICAgICA8L21hdC1lcnJvcj5cbiAgICA8L21hdC1mb3JtLWZpZWxkPlxuICA8L2Rpdj5cblxuICA8ZGl2IGlkPVwidXJpSW5wdXRcIiBjbGFzcz1cImlnby1pbnB1dC1jb250YWluZXJcIj5cbiAgICA8bWF0LWZvcm0tZmllbGQ+XG4gICAgICA8c3BhbiAqbmdJZj1cInVzZXJJZFwiIGNsYXNzPVwicHJlZml4XCI+e3sgdXNlcklkIH19LTwvc3Bhbj5cbiAgICAgIDxzcGFuIGNsYXNzPVwiZmllbGRXcmFwcGVyXCI+XG4gICAgICAgIDxpbnB1dFxuICAgICAgICAgIG1hdElucHV0XG4gICAgICAgICAgcmVxdWlyZWRcbiAgICAgICAgICBbcmVhZG9ubHldPVwiIXVzZXJJZFwiXG4gICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIidpZ28uY29udGV4dC5jb250ZXh0TWFuYWdlci5mb3JtLnVyaScgfCB0cmFuc2xhdGVcIlxuICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cInVyaVwiXG4gICAgICAgIC8+XG4gICAgICA8L3NwYW4+XG4gICAgICA8bWF0LWVycm9yPlxuICAgICAgICB7eyAnaWdvLmNvbnRleHQuY29udGV4dE1hbmFnZXIuZm9ybS51cmlSZXF1aXJlZCcgfCB0cmFuc2xhdGUgfX1cbiAgICAgIDwvbWF0LWVycm9yPlxuICAgIDwvbWF0LWZvcm0tZmllbGQ+XG4gIDwvZGl2PlxuXG4gIDxkaXYgY2xhc3M9XCJpZ28tZm9ybS1idXR0b24tZ3JvdXBcIj5cbiAgICA8YnV0dG9uXG4gICAgICAqbmdJZj1cIiF1cmxcIlxuICAgICAgbWF0LXJhaXNlZC1idXR0b25cbiAgICAgIHR5cGU9XCJzdWJtaXRcIlxuICAgICAgW2Rpc2FibGVkXT1cIiFmb3JtLnZhbGlkXCJcbiAgICA+XG4gICAgICB7eyAnaWdvLmNvbnRleHQuc2hhcmVNYXAuYnV0dG9uJyB8IHRyYW5zbGF0ZSB9fVxuICAgIDwvYnV0dG9uPlxuICAgIDxidXR0b25cbiAgICAgICpuZ0lmPVwidXJsXCJcbiAgICAgIG1hdC1yYWlzZWQtYnV0dG9uXG4gICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgIChjbGljayk9XCJ1cGRhdGVDb250ZXh0U2hhcmVkKGZvcm0udmFsdWUpXCJcbiAgICA+XG4gICAgICB7eyAnaWdvLmNvbnRleHQuc2hhcmVNYXAucmVmcmVzaEJ0bicgfCB0cmFuc2xhdGUgfX1cbiAgICA8L2J1dHRvbj5cbiAgPC9kaXY+XG48L2Zvcm0+XG5cbjxkaXYgKm5nSWY9XCJ1cmxcIiBjbGFzcz1cImlnby1pbnB1dC1jb250YWluZXIgbGlua1RvU2hhcmVcIj5cbiAgPG1hdC1mb3JtLWZpZWxkPlxuICAgIDx0ZXh0YXJlYVxuICAgICAgI3RleHRBcmVhXG4gICAgICBtYXRJbnB1dFxuICAgICAgcmVhZG9ubHlcbiAgICAgIHJvd3M9XCIzXCJcbiAgICAgIGNsYXNzPVwidGV4dEFyZWFXaXRoQnV0dG9uXCJcbiAgICAgIFtwbGFjZWhvbGRlcl09XCInaWdvLmNvbnRleHQuc2hhcmVNYXAucGxhY2Vob2xkZXJMaW5rJyB8IHRyYW5zbGF0ZVwiXG4gICAgICBbdmFsdWVdPVwidXJsXCJcbiAgICA+PC90ZXh0YXJlYT5cbiAgICA8YnV0dG9uXG4gICAgICBtYXQtaWNvbi1idXR0b25cbiAgICAgIHRvb2x0aXAtcG9zaXRpb249XCJiZWxvd1wiXG4gICAgICBtYXRUb29sdGlwU2hvd0RlbGF5PVwiNTAwXCJcbiAgICAgIFttYXRUb29sdGlwXT1cIidpZ28uY29udGV4dC5zaGFyZU1hcC5jb3B5JyB8IHRyYW5zbGF0ZVwiXG4gICAgICBjb2xvcj1cInByaW1hcnlcIlxuICAgICAgKGNsaWNrKT1cImNvcHlUZXh0VG9DbGlwYm9hcmQodGV4dEFyZWEpXCJcbiAgICA+XG4gICAgICA8bWF0LWljb24+Y29udGVudF9jb3B5PC9tYXQtaWNvbj5cbiAgICA8L2J1dHRvbj5cbiAgPC9tYXQtZm9ybS1maWVsZD5cbiAgPGRpdj48L2Rpdj5cbjwvZGl2PlxuIl19
@@ -0,0 +1,78 @@
1
+ import { NgIf } from '@angular/common';
2
+ import { ChangeDetectorRef, Component, Input } from '@angular/core';
3
+ import { MatButtonModule } from '@angular/material/button';
4
+ import { MatFormFieldModule } from '@angular/material/form-field';
5
+ import { MatIconModule } from '@angular/material/icon';
6
+ import { MatInputModule } from '@angular/material/input';
7
+ import { CustomHtmlComponent } from '@igo2/common/custom-html';
8
+ import { IgoLanguageModule } from '@igo2/core/language';
9
+ import { MessageService } from '@igo2/core/message';
10
+ import { Clipboard } from '@igo2/utils';
11
+ import { combineLatest } from 'rxjs';
12
+ import { ShareMapService } from '../shared/share-map.service';
13
+ import * as i0 from "@angular/core";
14
+ import * as i1 from "@igo2/core/message";
15
+ import * as i2 from "../shared/share-map.service";
16
+ import * as i3 from "@angular/material/form-field";
17
+ import * as i4 from "@angular/material/input";
18
+ import * as i5 from "@angular/material/button";
19
+ import * as i6 from "@angular/material/icon";
20
+ import * as i7 from "@ngx-translate/core";
21
+ export class ShareMapUrlComponent {
22
+ messageService;
23
+ shareMapService;
24
+ cdRef;
25
+ mapState$$;
26
+ map;
27
+ url;
28
+ publicShareOption = {
29
+ layerlistControls: { querystring: '' }
30
+ };
31
+ constructor(messageService, shareMapService, cdRef) {
32
+ this.messageService = messageService;
33
+ this.shareMapService = shareMapService;
34
+ this.cdRef = cdRef;
35
+ }
36
+ ngOnInit() {
37
+ this.resetUrl();
38
+ this.mapState$$ = combineLatest([
39
+ this.map.viewController.state$,
40
+ this.map.status$
41
+ ]).subscribe(() => {
42
+ this.resetUrl();
43
+ this.cdRef.detectChanges();
44
+ });
45
+ }
46
+ ngAfterViewInit() {
47
+ this.resetUrl();
48
+ }
49
+ ngOnDestroy() {
50
+ this.mapState$$.unsubscribe();
51
+ }
52
+ resetUrl() {
53
+ this.url = this.shareMapService.getUrlWithoutApi(this.map, this.publicShareOption);
54
+ }
55
+ copyTextToClipboard(textArea) {
56
+ const successful = Clipboard.copy(textArea);
57
+ if (successful) {
58
+ this.messageService.success('igo.context.shareMap.dialog.copyMsg', 'igo.context.shareMap.dialog.copyTitle');
59
+ }
60
+ }
61
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ShareMapUrlComponent, deps: [{ token: i1.MessageService }, { token: i2.ShareMapService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
62
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: ShareMapUrlComponent, isStandalone: true, selector: "igo-share-map-url", inputs: { map: "map" }, ngImport: i0, template: "<div class=\"igo-input-container linkToShare\">\n <mat-form-field>\n <textarea\n #textArea\n matInput\n readonly\n rows=\"3\"\n [placeholder]=\"'igo.context.shareMap.placeholderLink' | translate\"\n [value]=\"url\"\n ></textarea>\n </mat-form-field>\n\n <div class=\"igo-form-button-group\">\n <button mat-raised-button (click)=\"copyTextToClipboard(textArea)\">\n <mat-icon>content_copy</mat-icon>\n {{ 'igo.context.shareMap.copy' | translate }}\n </button>\n </div>\n <div>\n <br />\n <section class=\"mat-typography\">\n <div\n *ngIf=\"('igo.context.shareMap.htmlClarifications' | translate) === ''\"\n >\n <h4 *ngIf=\"('igo.context.shareMap.included' | translate) !== ''\">\n {{ 'igo.context.shareMap.included' | translate }}\n </h4>\n <ul>\n <li *ngIf=\"('igo.context.shareMap.context' | translate) !== ''\">\n {{ 'igo.context.shareMap.context' | translate }}\n </li>\n <li *ngIf=\"('igo.context.shareMap.center' | translate) !== ''\">\n {{ 'igo.context.shareMap.center' | translate }}\n </li>\n <li *ngIf=\"('igo.context.shareMap.zoom' | translate) !== ''\">\n {{ 'igo.context.shareMap.zoom' | translate }}\n </li>\n <li *ngIf=\"('igo.context.shareMap.addedLayers' | translate) !== ''\">\n {{ 'igo.context.shareMap.addedLayers' | translate }}\n </li>\n <li\n *ngIf=\"('igo.context.shareMap.visibleInvisible' | translate) !== ''\"\n >\n {{ 'igo.context.shareMap.visibleInvisible' | translate }}\n </li>\n </ul>\n\n <h4 *ngIf=\"('igo.context.shareMap.excluded' | translate) !== ''\">\n {{ 'igo.context.shareMap.excluded' | translate }}\n </h4>\n <ul>\n <li *ngIf=\"('igo.context.shareMap.order' | translate) !== ''\">\n {{ 'igo.context.shareMap.order' | translate }}\n </li>\n <li *ngIf=\"('igo.context.shareMap.opacity' | translate) !== ''\">\n {{ 'igo.context.shareMap.opacity' | translate }}\n </li>\n <li *ngIf=\"('igo.context.shareMap.filterOgc' | translate) !== ''\">\n {{ 'igo.context.shareMap.filterOgc' | translate }}\n </li>\n <li *ngIf=\"('igo.context.shareMap.filterTime' | translate) !== ''\">\n {{ 'igo.context.shareMap.filterTime' | translate }}\n </li>\n </ul>\n </div>\n <igo-custom-html\n class=\"shareCustomPadding\"\n *ngIf=\"('igo.context.shareMap.htmlClarifications' | translate) !== ''\"\n class=\"mat-typography\"\n [html]=\"'igo.context.shareMap.htmlClarifications' | translate\"\n >\n </igo-custom-html>\n </section>\n </div>\n</div>\n", styles: ["@charset \"UTF-8\";mat-form-field{width:100%}.linkToShare\\a0 {padding:25px 5px 5px}.linkToShare\\a0 textarea{resize:none;width:100%;line-height:1.3;height:40px;overflow-y:hidden;word-wrap:normal;word-break:break-all}.linkToShare\\a0 textarea.textAreaWithButton{width:calc(100% - 60px)}.linkToShare\\a0 mat-form-field>button{float:right;margin:-10px 0}.igo-form-button-group{text-align:center;padding-top:10px}igo-custom-html.shareCustomPadding{padding:0}\n"], dependencies: [{ kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i4.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "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: MatIconModule }, { kind: "component", type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: CustomHtmlComponent, selector: "igo-custom-html", inputs: ["html"] }, { kind: "ngmodule", type: IgoLanguageModule }, { kind: "pipe", type: i7.TranslatePipe, name: "translate" }] });
63
+ }
64
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ShareMapUrlComponent, decorators: [{
65
+ type: Component,
66
+ args: [{ selector: 'igo-share-map-url', standalone: true, imports: [
67
+ MatFormFieldModule,
68
+ MatInputModule,
69
+ MatButtonModule,
70
+ MatIconModule,
71
+ NgIf,
72
+ CustomHtmlComponent,
73
+ IgoLanguageModule
74
+ ], template: "<div class=\"igo-input-container linkToShare\">\n <mat-form-field>\n <textarea\n #textArea\n matInput\n readonly\n rows=\"3\"\n [placeholder]=\"'igo.context.shareMap.placeholderLink' | translate\"\n [value]=\"url\"\n ></textarea>\n </mat-form-field>\n\n <div class=\"igo-form-button-group\">\n <button mat-raised-button (click)=\"copyTextToClipboard(textArea)\">\n <mat-icon>content_copy</mat-icon>\n {{ 'igo.context.shareMap.copy' | translate }}\n </button>\n </div>\n <div>\n <br />\n <section class=\"mat-typography\">\n <div\n *ngIf=\"('igo.context.shareMap.htmlClarifications' | translate) === ''\"\n >\n <h4 *ngIf=\"('igo.context.shareMap.included' | translate) !== ''\">\n {{ 'igo.context.shareMap.included' | translate }}\n </h4>\n <ul>\n <li *ngIf=\"('igo.context.shareMap.context' | translate) !== ''\">\n {{ 'igo.context.shareMap.context' | translate }}\n </li>\n <li *ngIf=\"('igo.context.shareMap.center' | translate) !== ''\">\n {{ 'igo.context.shareMap.center' | translate }}\n </li>\n <li *ngIf=\"('igo.context.shareMap.zoom' | translate) !== ''\">\n {{ 'igo.context.shareMap.zoom' | translate }}\n </li>\n <li *ngIf=\"('igo.context.shareMap.addedLayers' | translate) !== ''\">\n {{ 'igo.context.shareMap.addedLayers' | translate }}\n </li>\n <li\n *ngIf=\"('igo.context.shareMap.visibleInvisible' | translate) !== ''\"\n >\n {{ 'igo.context.shareMap.visibleInvisible' | translate }}\n </li>\n </ul>\n\n <h4 *ngIf=\"('igo.context.shareMap.excluded' | translate) !== ''\">\n {{ 'igo.context.shareMap.excluded' | translate }}\n </h4>\n <ul>\n <li *ngIf=\"('igo.context.shareMap.order' | translate) !== ''\">\n {{ 'igo.context.shareMap.order' | translate }}\n </li>\n <li *ngIf=\"('igo.context.shareMap.opacity' | translate) !== ''\">\n {{ 'igo.context.shareMap.opacity' | translate }}\n </li>\n <li *ngIf=\"('igo.context.shareMap.filterOgc' | translate) !== ''\">\n {{ 'igo.context.shareMap.filterOgc' | translate }}\n </li>\n <li *ngIf=\"('igo.context.shareMap.filterTime' | translate) !== ''\">\n {{ 'igo.context.shareMap.filterTime' | translate }}\n </li>\n </ul>\n </div>\n <igo-custom-html\n class=\"shareCustomPadding\"\n *ngIf=\"('igo.context.shareMap.htmlClarifications' | translate) !== ''\"\n class=\"mat-typography\"\n [html]=\"'igo.context.shareMap.htmlClarifications' | translate\"\n >\n </igo-custom-html>\n </section>\n </div>\n</div>\n", styles: ["@charset \"UTF-8\";mat-form-field{width:100%}.linkToShare\\a0 {padding:25px 5px 5px}.linkToShare\\a0 textarea{resize:none;width:100%;line-height:1.3;height:40px;overflow-y:hidden;word-wrap:normal;word-break:break-all}.linkToShare\\a0 textarea.textAreaWithButton{width:calc(100% - 60px)}.linkToShare\\a0 mat-form-field>button{float:right;margin:-10px 0}.igo-form-button-group{text-align:center;padding-top:10px}igo-custom-html.shareCustomPadding{padding:0}\n"] }]
75
+ }], ctorParameters: () => [{ type: i1.MessageService }, { type: i2.ShareMapService }, { type: i0.ChangeDetectorRef }], propDecorators: { map: [{
76
+ type: Input
77
+ }] } });
78
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hhcmUtbWFwLXVybC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb250ZXh0L3NyYy9saWIvc2hhcmUtbWFwL3NoYXJlLW1hcC9zaGFyZS1tYXAtdXJsLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbnRleHQvc3JjL2xpYi9zaGFyZS1tYXAvc2hhcmUtbWFwL3NoYXJlLW1hcC11cmwuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3ZDLE9BQU8sRUFFTCxpQkFBaUIsRUFDakIsU0FBUyxFQUNULEtBQUssRUFHTixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUV6RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN4RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFcEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUV4QyxPQUFPLEVBQWdCLGFBQWEsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUVuRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7Ozs7Ozs7OztBQWlCOUQsTUFBTSxPQUFPLG9CQUFvQjtJQVdyQjtJQUNBO0lBQ0E7SUFaRixVQUFVLENBQWU7SUFFeEIsR0FBRyxDQUFTO0lBRWQsR0FBRyxDQUFTO0lBQ1osaUJBQWlCLEdBQUc7UUFDekIsaUJBQWlCLEVBQUUsRUFBRSxXQUFXLEVBQUUsRUFBRSxFQUFFO0tBQ3ZDLENBQUM7SUFFRixZQUNVLGNBQThCLEVBQzlCLGVBQWdDLEVBQ2hDLEtBQXdCO1FBRnhCLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQUM5QixvQkFBZSxHQUFmLGVBQWUsQ0FBaUI7UUFDaEMsVUFBSyxHQUFMLEtBQUssQ0FBbUI7SUFDL0IsQ0FBQztJQUVKLFFBQVE7UUFDTixJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDaEIsSUFBSSxDQUFDLFVBQVUsR0FBRyxhQUFhLENBQUM7WUFDOUIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxjQUFjLENBQUMsTUFBTTtZQUM5QixJQUFJLENBQUMsR0FBRyxDQUFDLE9BQU87U0FDakIsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDaEIsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ2hCLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDN0IsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsZUFBZTtRQUNiLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUNsQixDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxVQUFVLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDaEMsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsR0FBRyxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsZ0JBQWdCLENBQzlDLElBQUksQ0FBQyxHQUFHLEVBQ1IsSUFBSSxDQUFDLGlCQUFpQixDQUN2QixDQUFDO0lBQ0osQ0FBQztJQUVELG1CQUFtQixDQUFDLFFBQVE7UUFDMUIsTUFBTSxVQUFVLEdBQUcsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUM1QyxJQUFJLFVBQVUsRUFBRSxDQUFDO1lBQ2YsSUFBSSxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQ3pCLHFDQUFxQyxFQUNyQyx1Q0FBdUMsQ0FDeEMsQ0FBQztRQUNKLENBQUM7SUFDSCxDQUFDO3dHQWxEVSxvQkFBb0I7NEZBQXBCLG9CQUFvQixxR0N2Q2pDLHN5RkEyRUEscWdCRDdDSSxrQkFBa0IseU9BQ2xCLGNBQWMsMFdBQ2QsZUFBZSwyTkFDZixhQUFhLG9MQUNiLElBQUksNkZBQ0osbUJBQW1CLDZFQUNuQixpQkFBaUI7OzRGQUdSLG9CQUFvQjtrQkFmaEMsU0FBUzsrQkFDRSxtQkFBbUIsY0FHakIsSUFBSSxXQUNQO3dCQUNQLGtCQUFrQjt3QkFDbEIsY0FBYzt3QkFDZCxlQUFlO3dCQUNmLGFBQWE7d0JBQ2IsSUFBSTt3QkFDSixtQkFBbUI7d0JBQ25CLGlCQUFpQjtxQkFDbEI7aUpBS1EsR0FBRztzQkFBWCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdJZiB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICBBZnRlclZpZXdJbml0LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBJbnB1dCxcbiAgT25EZXN0cm95LFxuICBPbkluaXRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXRCdXR0b25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xuaW1wb3J0IHsgTWF0Rm9ybUZpZWxkTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZm9ybS1maWVsZCc7XG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XG5pbXBvcnQgeyBNYXRJbnB1dE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2lucHV0JztcblxuaW1wb3J0IHsgQ3VzdG9tSHRtbENvbXBvbmVudCB9IGZyb20gJ0BpZ28yL2NvbW1vbi9jdXN0b20taHRtbCc7XG5pbXBvcnQgeyBJZ29MYW5ndWFnZU1vZHVsZSB9IGZyb20gJ0BpZ28yL2NvcmUvbGFuZ3VhZ2UnO1xuaW1wb3J0IHsgTWVzc2FnZVNlcnZpY2UgfSBmcm9tICdAaWdvMi9jb3JlL21lc3NhZ2UnO1xuaW1wb3J0IHR5cGUgeyBJZ29NYXAgfSBmcm9tICdAaWdvMi9nZW8nO1xuaW1wb3J0IHsgQ2xpcGJvYXJkIH0gZnJvbSAnQGlnbzIvdXRpbHMnO1xuXG5pbXBvcnQgeyBTdWJzY3JpcHRpb24sIGNvbWJpbmVMYXRlc3QgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgU2hhcmVNYXBTZXJ2aWNlIH0gZnJvbSAnLi4vc2hhcmVkL3NoYXJlLW1hcC5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaWdvLXNoYXJlLW1hcC11cmwnLFxuICB0ZW1wbGF0ZVVybDogJy4vc2hhcmUtbWFwLXVybC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3NoYXJlLW1hcC11cmwuY29tcG9uZW50LnNjc3MnXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIE1hdEZvcm1GaWVsZE1vZHVsZSxcbiAgICBNYXRJbnB1dE1vZHVsZSxcbiAgICBNYXRCdXR0b25Nb2R1bGUsXG4gICAgTWF0SWNvbk1vZHVsZSxcbiAgICBOZ0lmLFxuICAgIEN1c3RvbUh0bWxDb21wb25lbnQsXG4gICAgSWdvTGFuZ3VhZ2VNb2R1bGVcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBTaGFyZU1hcFVybENvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgcHJpdmF0ZSBtYXBTdGF0ZSQkOiBTdWJzY3JpcHRpb247XG5cbiAgQElucHV0KCkgbWFwOiBJZ29NYXA7XG5cbiAgcHVibGljIHVybDogc3RyaW5nO1xuICBwdWJsaWMgcHVibGljU2hhcmVPcHRpb24gPSB7XG4gICAgbGF5ZXJsaXN0Q29udHJvbHM6IHsgcXVlcnlzdHJpbmc6ICcnIH1cbiAgfTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIG1lc3NhZ2VTZXJ2aWNlOiBNZXNzYWdlU2VydmljZSxcbiAgICBwcml2YXRlIHNoYXJlTWFwU2VydmljZTogU2hhcmVNYXBTZXJ2aWNlLFxuICAgIHByaXZhdGUgY2RSZWY6IENoYW5nZURldGVjdG9yUmVmXG4gICkge31cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnJlc2V0VXJsKCk7XG4gICAgdGhpcy5tYXBTdGF0ZSQkID0gY29tYmluZUxhdGVzdChbXG4gICAgICB0aGlzLm1hcC52aWV3Q29udHJvbGxlci5zdGF0ZSQsXG4gICAgICB0aGlzLm1hcC5zdGF0dXMkXG4gICAgXSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRoaXMucmVzZXRVcmwoKTtcbiAgICAgIHRoaXMuY2RSZWYuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH0pO1xuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIHRoaXMucmVzZXRVcmwoKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMubWFwU3RhdGUkJC51bnN1YnNjcmliZSgpO1xuICB9XG5cbiAgcmVzZXRVcmwoKSB7XG4gICAgdGhpcy51cmwgPSB0aGlzLnNoYXJlTWFwU2VydmljZS5nZXRVcmxXaXRob3V0QXBpKFxuICAgICAgdGhpcy5tYXAsXG4gICAgICB0aGlzLnB1YmxpY1NoYXJlT3B0aW9uXG4gICAgKTtcbiAgfVxuXG4gIGNvcHlUZXh0VG9DbGlwYm9hcmQodGV4dEFyZWEpIHtcbiAgICBjb25zdCBzdWNjZXNzZnVsID0gQ2xpcGJvYXJkLmNvcHkodGV4dEFyZWEpO1xuICAgIGlmIChzdWNjZXNzZnVsKSB7XG4gICAgICB0aGlzLm1lc3NhZ2VTZXJ2aWNlLnN1Y2Nlc3MoXG4gICAgICAgICdpZ28uY29udGV4dC5zaGFyZU1hcC5kaWFsb2cuY29weU1zZycsXG4gICAgICAgICdpZ28uY29udGV4dC5zaGFyZU1hcC5kaWFsb2cuY29weVRpdGxlJ1xuICAgICAgKTtcbiAgICB9XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJpZ28taW5wdXQtY29udGFpbmVyIGxpbmtUb1NoYXJlXCI+XG4gIDxtYXQtZm9ybS1maWVsZD5cbiAgICA8dGV4dGFyZWFcbiAgICAgICN0ZXh0QXJlYVxuICAgICAgbWF0SW5wdXRcbiAgICAgIHJlYWRvbmx5XG4gICAgICByb3dzPVwiM1wiXG4gICAgICBbcGxhY2Vob2xkZXJdPVwiJ2lnby5jb250ZXh0LnNoYXJlTWFwLnBsYWNlaG9sZGVyTGluaycgfCB0cmFuc2xhdGVcIlxuICAgICAgW3ZhbHVlXT1cInVybFwiXG4gICAgPjwvdGV4dGFyZWE+XG4gIDwvbWF0LWZvcm0tZmllbGQ+XG5cbiAgPGRpdiBjbGFzcz1cImlnby1mb3JtLWJ1dHRvbi1ncm91cFwiPlxuICAgIDxidXR0b24gbWF0LXJhaXNlZC1idXR0b24gKGNsaWNrKT1cImNvcHlUZXh0VG9DbGlwYm9hcmQodGV4dEFyZWEpXCI+XG4gICAgICA8bWF0LWljb24+Y29udGVudF9jb3B5PC9tYXQtaWNvbj5cbiAgICAgIHt7ICdpZ28uY29udGV4dC5zaGFyZU1hcC5jb3B5JyB8IHRyYW5zbGF0ZSB9fVxuICAgIDwvYnV0dG9uPlxuICA8L2Rpdj5cbiAgPGRpdj5cbiAgICA8YnIgLz5cbiAgICA8c2VjdGlvbiBjbGFzcz1cIm1hdC10eXBvZ3JhcGh5XCI+XG4gICAgICA8ZGl2XG4gICAgICAgICpuZ0lmPVwiKCdpZ28uY29udGV4dC5zaGFyZU1hcC5odG1sQ2xhcmlmaWNhdGlvbnMnIHwgdHJhbnNsYXRlKSA9PT0gJydcIlxuICAgICAgPlxuICAgICAgICA8aDQgKm5nSWY9XCIoJ2lnby5jb250ZXh0LnNoYXJlTWFwLmluY2x1ZGVkJyB8IHRyYW5zbGF0ZSkgIT09ICcnXCI+XG4gICAgICAgICAge3sgJ2lnby5jb250ZXh0LnNoYXJlTWFwLmluY2x1ZGVkJyB8IHRyYW5zbGF0ZSB9fVxuICAgICAgICA8L2g0PlxuICAgICAgICA8dWw+XG4gICAgICAgICAgPGxpICpuZ0lmPVwiKCdpZ28uY29udGV4dC5zaGFyZU1hcC5jb250ZXh0JyB8IHRyYW5zbGF0ZSkgIT09ICcnXCI+XG4gICAgICAgICAgICB7eyAnaWdvLmNvbnRleHQuc2hhcmVNYXAuY29udGV4dCcgfCB0cmFuc2xhdGUgfX1cbiAgICAgICAgICA8L2xpPlxuICAgICAgICAgIDxsaSAqbmdJZj1cIignaWdvLmNvbnRleHQuc2hhcmVNYXAuY2VudGVyJyB8IHRyYW5zbGF0ZSkgIT09ICcnXCI+XG4gICAgICAgICAgICB7eyAnaWdvLmNvbnRleHQuc2hhcmVNYXAuY2VudGVyJyB8IHRyYW5zbGF0ZSB9fVxuICAgICAgICAgIDwvbGk+XG4gICAgICAgICAgPGxpICpuZ0lmPVwiKCdpZ28uY29udGV4dC5zaGFyZU1hcC56b29tJyB8IHRyYW5zbGF0ZSkgIT09ICcnXCI+XG4gICAgICAgICAgICB7eyAnaWdvLmNvbnRleHQuc2hhcmVNYXAuem9vbScgfCB0cmFuc2xhdGUgfX1cbiAgICAgICAgICA8L2xpPlxuICAgICAgICAgIDxsaSAqbmdJZj1cIignaWdvLmNvbnRleHQuc2hhcmVNYXAuYWRkZWRMYXllcnMnIHwgdHJhbnNsYXRlKSAhPT0gJydcIj5cbiAgICAgICAgICAgIHt7ICdpZ28uY29udGV4dC5zaGFyZU1hcC5hZGRlZExheWVycycgfCB0cmFuc2xhdGUgfX1cbiAgICAgICAgICA8L2xpPlxuICAgICAgICAgIDxsaVxuICAgICAgICAgICAgKm5nSWY9XCIoJ2lnby5jb250ZXh0LnNoYXJlTWFwLnZpc2libGVJbnZpc2libGUnIHwgdHJhbnNsYXRlKSAhPT0gJydcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIHt7ICdpZ28uY29udGV4dC5zaGFyZU1hcC52aXNpYmxlSW52aXNpYmxlJyB8IHRyYW5zbGF0ZSB9fVxuICAgICAgICAgIDwvbGk+XG4gICAgICAgIDwvdWw+XG5cbiAgICAgICAgPGg0ICpuZ0lmPVwiKCdpZ28uY29udGV4dC5zaGFyZU1hcC5leGNsdWRlZCcgfCB0cmFuc2xhdGUpICE9PSAnJ1wiPlxuICAgICAgICAgIHt7ICdpZ28uY29udGV4dC5zaGFyZU1hcC5leGNsdWRlZCcgfCB0cmFuc2xhdGUgfX1cbiAgICAgICAgPC9oND5cbiAgICAgICAgPHVsPlxuICAgICAgICAgIDxsaSAqbmdJZj1cIignaWdvLmNvbnRleHQuc2hhcmVNYXAub3JkZXInIHwgdHJhbnNsYXRlKSAhPT0gJydcIj5cbiAgICAgICAgICAgIHt7ICdpZ28uY29udGV4dC5zaGFyZU1hcC5vcmRlcicgfCB0cmFuc2xhdGUgfX1cbiAgICAgICAgICA8L2xpPlxuICAgICAgICAgIDxsaSAqbmdJZj1cIignaWdvLmNvbnRleHQuc2hhcmVNYXAub3BhY2l0eScgfCB0cmFuc2xhdGUpICE9PSAnJ1wiPlxuICAgICAgICAgICAge3sgJ2lnby5jb250ZXh0LnNoYXJlTWFwLm9wYWNpdHknIHwgdHJhbnNsYXRlIH19XG4gICAgICAgICAgPC9saT5cbiAgICAgICAgICA8bGkgKm5nSWY9XCIoJ2lnby5jb250ZXh0LnNoYXJlTWFwLmZpbHRlck9nYycgfCB0cmFuc2xhdGUpICE9PSAnJ1wiPlxuICAgICAgICAgICAge3sgJ2lnby5jb250ZXh0LnNoYXJlTWFwLmZpbHRlck9nYycgfCB0cmFuc2xhdGUgfX1cbiAgICAgICAgICA8L2xpPlxuICAgICAgICAgIDxsaSAqbmdJZj1cIignaWdvLmNvbnRleHQuc2hhcmVNYXAuZmlsdGVyVGltZScgfCB0cmFuc2xhdGUpICE9PSAnJ1wiPlxuICAgICAgICAgICAge3sgJ2lnby5jb250ZXh0LnNoYXJlTWFwLmZpbHRlclRpbWUnIHwgdHJhbnNsYXRlIH19XG4gICAgICAgICAgPC9saT5cbiAgICAgICAgPC91bD5cbiAgICAgIDwvZGl2PlxuICAgICAgPGlnby1jdXN0b20taHRtbFxuICAgICAgICBjbGFzcz1cInNoYXJlQ3VzdG9tUGFkZGluZ1wiXG4gICAgICAgICpuZ0lmPVwiKCdpZ28uY29udGV4dC5zaGFyZU1hcC5odG1sQ2xhcmlmaWNhdGlvbnMnIHwgdHJhbnNsYXRlKSAhPT0gJydcIlxuICAgICAgICBjbGFzcz1cIm1hdC10eXBvZ3JhcGh5XCJcbiAgICAgICAgW2h0bWxdPVwiJ2lnby5jb250ZXh0LnNoYXJlTWFwLmh0bWxDbGFyaWZpY2F0aW9ucycgfCB0cmFuc2xhdGVcIlxuICAgICAgPlxuICAgICAgPC9pZ28tY3VzdG9tLWh0bWw+XG4gICAgPC9zZWN0aW9uPlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
@@ -0,0 +1,35 @@
1
+ import { NgIf } from '@angular/common';
2
+ import { Component, Input } from '@angular/core';
3
+ import { MatTabsModule } from '@angular/material/tabs';
4
+ import { ConfigService } from '@igo2/core/config';
5
+ import { IgoLanguageModule } from '@igo2/core/language';
6
+ import { ShareMapApiComponent } from './share-map-api.component';
7
+ import { ShareMapUrlComponent } from './share-map-url.component';
8
+ import * as i0 from "@angular/core";
9
+ import * as i1 from "@igo2/core/config";
10
+ import * as i2 from "@angular/material/tabs";
11
+ import * as i3 from "@ngx-translate/core";
12
+ export class ShareMapComponent {
13
+ config;
14
+ map;
15
+ hasApi = false;
16
+ constructor(config) {
17
+ this.config = config;
18
+ this.hasApi = this.config.getConfig('context.url') ? true : false;
19
+ }
20
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ShareMapComponent, deps: [{ token: i1.ConfigService }], target: i0.ɵɵFactoryTarget.Component });
21
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", 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", "aria-label", "aria-labelledby"], 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: IgoLanguageModule }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }] });
22
+ }
23
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ShareMapComponent, decorators: [{
24
+ type: Component,
25
+ args: [{ selector: 'igo-share-map', standalone: true, imports: [
26
+ NgIf,
27
+ MatTabsModule,
28
+ ShareMapApiComponent,
29
+ ShareMapUrlComponent,
30
+ IgoLanguageModule
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: [{
33
+ type: Input
34
+ }] } });
35
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hhcmUtbWFwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbnRleHQvc3JjL2xpYi9zaGFyZS1tYXAvc2hhcmUtbWFwL3NoYXJlLW1hcC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb250ZXh0L3NyYy9saWIvc2hhcmUtbWFwL3NoYXJlLW1hcC9zaGFyZS1tYXAuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUV2RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDbEQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFHeEQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDakUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7Ozs7O0FBZWpFLE1BQU0sT0FBTyxpQkFBaUI7SUFLUjtJQUpYLEdBQUcsQ0FBUztJQUVkLE1BQU0sR0FBRyxLQUFLLENBQUM7SUFFdEIsWUFBb0IsTUFBcUI7UUFBckIsV0FBTSxHQUFOLE1BQU0sQ0FBZTtRQUN2QyxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQztJQUNwRSxDQUFDO3dHQVBVLGlCQUFpQjs0RkFBakIsaUJBQWlCLGlHQ3hCOUIscWFBVUEsMERET0ksSUFBSSw0RkFDSixhQUFhLDZvQkFDYixvQkFBb0IsK0VBQ3BCLG9CQUFvQiw4RUFDcEIsaUJBQWlCOzs0RkFHUixpQkFBaUI7a0JBYjdCLFNBQVM7K0JBQ0UsZUFBZSxjQUdiLElBQUksV0FDUDt3QkFDUCxJQUFJO3dCQUNKLGFBQWE7d0JBQ2Isb0JBQW9CO3dCQUNwQixvQkFBb0I7d0JBQ3BCLGlCQUFpQjtxQkFDbEI7a0ZBR1EsR0FBRztzQkFBWCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdJZiB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXRUYWJzTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdGFicyc7XG5cbmltcG9ydCB7IENvbmZpZ1NlcnZpY2UgfSBmcm9tICdAaWdvMi9jb3JlL2NvbmZpZyc7XG5pbXBvcnQgeyBJZ29MYW5ndWFnZU1vZHVsZSB9IGZyb20gJ0BpZ28yL2NvcmUvbGFuZ3VhZ2UnO1xuaW1wb3J0IHR5cGUgeyBJZ29NYXAgfSBmcm9tICdAaWdvMi9nZW8nO1xuXG5pbXBvcnQgeyBTaGFyZU1hcEFwaUNvbXBvbmVudCB9IGZyb20gJy4vc2hhcmUtbWFwLWFwaS5jb21wb25lbnQnO1xuaW1wb3J0IHsgU2hhcmVNYXBVcmxDb21wb25lbnQgfSBmcm9tICcuL3NoYXJlLW1hcC11cmwuY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaWdvLXNoYXJlLW1hcCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9zaGFyZS1tYXAuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9zaGFyZS1tYXAuY29tcG9uZW50LnNjc3MnXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIE5nSWYsXG4gICAgTWF0VGFic01vZHVsZSxcbiAgICBTaGFyZU1hcEFwaUNvbXBvbmVudCxcbiAgICBTaGFyZU1hcFVybENvbXBvbmVudCxcbiAgICBJZ29MYW5ndWFnZU1vZHVsZVxuICBdXG59KVxuZXhwb3J0IGNsYXNzIFNoYXJlTWFwQ29tcG9uZW50IHtcbiAgQElucHV0KCkgbWFwOiBJZ29NYXA7XG5cbiAgcHVibGljIGhhc0FwaSA9IGZhbHNlO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgY29uZmlnOiBDb25maWdTZXJ2aWNlKSB7XG4gICAgdGhpcy5oYXNBcGkgPSB0aGlzLmNvbmZpZy5nZXRDb25maWcoJ2NvbnRleHQudXJsJykgPyB0cnVlIDogZmFsc2U7XG4gIH1cbn1cbiIsIjxtYXQtdGFiLWdyb3VwICpuZ0lmPVwiaGFzQXBpXCI+XG4gIDxtYXQtdGFiIFtsYWJlbF09XCInaWdvLmNvbnRleHQuc2hhcmVNYXAuc2hhcmVXaXRoQXBpJyB8IHRyYW5zbGF0ZVwiPlxuICAgIDxpZ28tc2hhcmUtbWFwLWFwaSBbbWFwXT1cIm1hcFwiPjwvaWdvLXNoYXJlLW1hcC1hcGk+XG4gIDwvbWF0LXRhYj5cbiAgPG1hdC10YWIgW2xhYmVsXT1cIidpZ28uY29udGV4dC5zaGFyZU1hcC5zaGFyZVdpdGhVcmwnIHwgdHJhbnNsYXRlXCI+XG4gICAgPGlnby1zaGFyZS1tYXAtdXJsIFttYXBdPVwibWFwXCI+PC9pZ28tc2hhcmUtbWFwLXVybD5cbiAgPC9tYXQtdGFiPlxuPC9tYXQtdGFiLWdyb3VwPlxuXG48aWdvLXNoYXJlLW1hcC11cmwgKm5nSWY9XCIhaGFzQXBpXCIgW21hcF09XCJtYXBcIj48L2lnby1zaGFyZS1tYXAtdXJsPlxuIl19
@@ -0,0 +1,31 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { ShareMapApiComponent } from './share-map/share-map-api.component';
3
+ import { ShareMapUrlComponent } from './share-map/share-map-url.component';
4
+ import { ShareMapComponent } from './share-map/share-map.component';
5
+ import * as i0 from "@angular/core";
6
+ export const SHARE_MAP_DIRECTIVES = [
7
+ ShareMapComponent,
8
+ ShareMapUrlComponent,
9
+ ShareMapApiComponent
10
+ ];
11
+ /**
12
+ * @deprecated import the components/directives directly or SHARE_MAP_DIRECTIVES for the set
13
+ */
14
+ export class IgoShareMapModule {
15
+ static forRoot() {
16
+ return {
17
+ ngModule: IgoShareMapModule
18
+ };
19
+ }
20
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: IgoShareMapModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
21
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: IgoShareMapModule, imports: [ShareMapComponent, ShareMapUrlComponent, ShareMapApiComponent], exports: [ShareMapComponent, ShareMapUrlComponent, ShareMapApiComponent] });
22
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: IgoShareMapModule, imports: [ShareMapComponent, ShareMapUrlComponent, ShareMapApiComponent] });
23
+ }
24
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: IgoShareMapModule, decorators: [{
25
+ type: NgModule,
26
+ args: [{
27
+ imports: [ShareMapComponent, ShareMapUrlComponent, ShareMapApiComponent],
28
+ exports: [ShareMapComponent, ShareMapUrlComponent, ShareMapApiComponent]
29
+ }]
30
+ }] });
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hhcmUtbWFwLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbnRleHQvc3JjL2xpYi9zaGFyZS1tYXAvc2hhcmUtbWFwLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQXVCLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUU5RCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUMzRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUMzRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQzs7QUFFcEUsTUFBTSxDQUFDLE1BQU0sb0JBQW9CLEdBQUc7SUFDbEMsaUJBQWlCO0lBQ2pCLG9CQUFvQjtJQUNwQixvQkFBb0I7Q0FDWixDQUFDO0FBRVg7O0dBRUc7QUFLSCxNQUFNLE9BQU8saUJBQWlCO0lBQzVCLE1BQU0sQ0FBQyxPQUFPO1FBQ1osT0FBTztZQUNMLFFBQVEsRUFBRSxpQkFBaUI7U0FDNUIsQ0FBQztJQUNKLENBQUM7d0dBTFUsaUJBQWlCO3lHQUFqQixpQkFBaUIsWUFIbEIsaUJBQWlCLEVBQUUsb0JBQW9CLEVBQUUsb0JBQW9CLGFBQzdELGlCQUFpQixFQUFFLG9CQUFvQixFQUFFLG9CQUFvQjt5R0FFNUQsaUJBQWlCLFlBSGxCLGlCQUFpQixFQUFFLG9CQUFvQixFQUFFLG9CQUFvQjs7NEZBRzVELGlCQUFpQjtrQkFKN0IsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUUsQ0FBQyxpQkFBaUIsRUFBRSxvQkFBb0IsRUFBRSxvQkFBb0IsQ0FBQztvQkFDeEUsT0FBTyxFQUFFLENBQUMsaUJBQWlCLEVBQUUsb0JBQW9CLEVBQUUsb0JBQW9CLENBQUM7aUJBQ3pFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTW9kdWxlV2l0aFByb3ZpZGVycywgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgU2hhcmVNYXBBcGlDb21wb25lbnQgfSBmcm9tICcuL3NoYXJlLW1hcC9zaGFyZS1tYXAtYXBpLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTaGFyZU1hcFVybENvbXBvbmVudCB9IGZyb20gJy4vc2hhcmUtbWFwL3NoYXJlLW1hcC11cmwuY29tcG9uZW50JztcbmltcG9ydCB7IFNoYXJlTWFwQ29tcG9uZW50IH0gZnJvbSAnLi9zaGFyZS1tYXAvc2hhcmUtbWFwLmNvbXBvbmVudCc7XG5cbmV4cG9ydCBjb25zdCBTSEFSRV9NQVBfRElSRUNUSVZFUyA9IFtcbiAgU2hhcmVNYXBDb21wb25lbnQsXG4gIFNoYXJlTWFwVXJsQ29tcG9uZW50LFxuICBTaGFyZU1hcEFwaUNvbXBvbmVudFxuXSBhcyBjb25zdDtcblxuLyoqXG4gKiBAZGVwcmVjYXRlZCBpbXBvcnQgdGhlIGNvbXBvbmVudHMvZGlyZWN0aXZlcyBkaXJlY3RseSBvciBTSEFSRV9NQVBfRElSRUNUSVZFUyBmb3IgdGhlIHNldFxuICovXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbU2hhcmVNYXBDb21wb25lbnQsIFNoYXJlTWFwVXJsQ29tcG9uZW50LCBTaGFyZU1hcEFwaUNvbXBvbmVudF0sXG4gIGV4cG9ydHM6IFtTaGFyZU1hcENvbXBvbmVudCwgU2hhcmVNYXBVcmxDb21wb25lbnQsIFNoYXJlTWFwQXBpQ29tcG9uZW50XVxufSlcbmV4cG9ydCBjbGFzcyBJZ29TaGFyZU1hcE1vZHVsZSB7XG4gIHN0YXRpYyBmb3JSb290KCk6IE1vZHVsZVdpdGhQcm92aWRlcnM8SWdvU2hhcmVNYXBNb2R1bGU+IHtcbiAgICByZXR1cm4ge1xuICAgICAgbmdNb2R1bGU6IElnb1NoYXJlTWFwTW9kdWxlXG4gICAgfTtcbiAgfVxufVxuIl19
@@ -0,0 +1,2 @@
1
+ export * from './share-map.service';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb250ZXh0L3NyYy9saWIvc2hhcmUtbWFwL3NoYXJlZC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHFCQUFxQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9zaGFyZS1tYXAuc2VydmljZSc7XG4iXX0=