@tic-nova/ngx-mapbox-gl 14.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (80) hide show
  1. package/README.md +3 -0
  2. package/esm2022/index.js +32 -0
  3. package/esm2022/index.js.map +1 -0
  4. package/esm2022/lib/control/attribution-control.directive.js +39 -0
  5. package/esm2022/lib/control/attribution-control.directive.js.map +1 -0
  6. package/esm2022/lib/control/control.component.js +62 -0
  7. package/esm2022/lib/control/control.component.js.map +1 -0
  8. package/esm2022/lib/control/fullscreen-control.directive.js +39 -0
  9. package/esm2022/lib/control/fullscreen-control.directive.js.map +1 -0
  10. package/esm2022/lib/control/geolocate-control.directive.js +52 -0
  11. package/esm2022/lib/control/geolocate-control.directive.js.map +1 -0
  12. package/esm2022/lib/control/navigation-control.directive.js +39 -0
  13. package/esm2022/lib/control/navigation-control.directive.js.map +1 -0
  14. package/esm2022/lib/control/scale-control.directive.js +45 -0
  15. package/esm2022/lib/control/scale-control.directive.js.map +1 -0
  16. package/esm2022/lib/draggable/draggable.directive.js +121 -0
  17. package/esm2022/lib/draggable/draggable.directive.js.map +1 -0
  18. package/esm2022/lib/image/image.component.js +79 -0
  19. package/esm2022/lib/image/image.component.js.map +1 -0
  20. package/esm2022/lib/layer/layer.component.js +139 -0
  21. package/esm2022/lib/layer/layer.component.js.map +1 -0
  22. package/esm2022/lib/map/map.component.js +381 -0
  23. package/esm2022/lib/map/map.component.js.map +1 -0
  24. package/esm2022/lib/map/map.service.js +725 -0
  25. package/esm2022/lib/map/map.service.js.map +1 -0
  26. package/esm2022/lib/map/map.types.js +30 -0
  27. package/esm2022/lib/map/map.types.js.map +1 -0
  28. package/esm2022/lib/marker/marker.component.js +114 -0
  29. package/esm2022/lib/marker/marker.component.js.map +1 -0
  30. package/esm2022/lib/markers-for-clusters/markers-for-clusters.component.js +168 -0
  31. package/esm2022/lib/markers-for-clusters/markers-for-clusters.component.js.map +1 -0
  32. package/esm2022/lib/popup/popup.component.js +124 -0
  33. package/esm2022/lib/popup/popup.component.js.map +1 -0
  34. package/esm2022/lib/provide-mapbox-gl.js +8 -0
  35. package/esm2022/lib/provide-mapbox-gl.js.map +1 -0
  36. package/esm2022/lib/source/canvas-source.component.js +74 -0
  37. package/esm2022/lib/source/canvas-source.component.js.map +1 -0
  38. package/esm2022/lib/source/geojson/feature.component.js +42 -0
  39. package/esm2022/lib/source/geojson/feature.component.js.map +1 -0
  40. package/esm2022/lib/source/geojson/geojson-source.component.js +204 -0
  41. package/esm2022/lib/source/geojson/geojson-source.component.js.map +1 -0
  42. package/esm2022/lib/source/image-source.component.js +58 -0
  43. package/esm2022/lib/source/image-source.component.js.map +1 -0
  44. package/esm2022/lib/source/raster-dem-source.component.js +91 -0
  45. package/esm2022/lib/source/raster-dem-source.component.js.map +1 -0
  46. package/esm2022/lib/source/raster-source.component.js +85 -0
  47. package/esm2022/lib/source/raster-source.component.js.map +1 -0
  48. package/esm2022/lib/source/vector-source.component.js +99 -0
  49. package/esm2022/lib/source/vector-source.component.js.map +1 -0
  50. package/esm2022/lib/source/video-source.component.js +80 -0
  51. package/esm2022/lib/source/video-source.component.js.map +1 -0
  52. package/esm2022/ngx-mapbox-gl.js +5 -0
  53. package/esm2022/ngx-mapbox-gl.js.map +1 -0
  54. package/index.d.ts +24 -0
  55. package/lib/control/attribution-control.directive.d.ts +11 -0
  56. package/lib/control/control.component.d.ts +21 -0
  57. package/lib/control/fullscreen-control.directive.d.ts +11 -0
  58. package/lib/control/geolocate-control.directive.d.ts +15 -0
  59. package/lib/control/navigation-control.directive.d.ts +11 -0
  60. package/lib/control/scale-control.directive.d.ts +12 -0
  61. package/lib/draggable/draggable.directive.d.ts +20 -0
  62. package/lib/image/image.component.d.ts +34 -0
  63. package/lib/layer/layer.component.d.ts +422 -0
  64. package/lib/map/map.component.d.ts +185 -0
  65. package/lib/map/map.service.d.ts +123 -0
  66. package/lib/map/map.types.d.ts +72 -0
  67. package/lib/marker/marker.component.d.ts +31 -0
  68. package/lib/markers-for-clusters/markers-for-clusters.component.d.ts +28 -0
  69. package/lib/popup/popup.component.d.ts +33 -0
  70. package/lib/provide-mapbox-gl.d.ts +6 -0
  71. package/lib/source/canvas-source.component.d.ts +23 -0
  72. package/lib/source/geojson/feature.component.d.ts +16 -0
  73. package/lib/source/geojson/geojson-source.component.d.ts +63 -0
  74. package/lib/source/image-source.component.d.ts +22 -0
  75. package/lib/source/raster-dem-source.component.d.ts +23 -0
  76. package/lib/source/raster-source.component.d.ts +23 -0
  77. package/lib/source/vector-source.component.d.ts +24 -0
  78. package/lib/source/video-source.component.d.ts +24 -0
  79. package/ngx-mapbox-gl.d.ts +5 -0
  80. package/package.json +44 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"image.component.js","sourceRoot":"","sources":["../../../../../../libs/ngx-mapbox-gl/src/lib/image/image.component.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n Component,\n EventEmitter,\n NgZone,\n OnChanges,\n OnDestroy,\n OnInit,\n Output,\n SimpleChanges,\n inject,\n input,\n} from '@angular/core';\nimport { fromEvent, Subscription } from 'rxjs';\nimport { filter, startWith, switchMap } from 'rxjs/operators';\nimport { MapService } from '../map/map.service';\nimport type { Map } from 'mapbox-gl';\n\n@Component({\n selector: 'mgl-image',\n template: '',\n})\nexport class ImageComponent implements OnInit, OnDestroy, OnChanges {\n private mapService = inject(MapService);\n private zone = inject(NgZone);\n\n /* Init inputs */\n id = input.required<string>();\n\n /* Dynamic inputs */\n data = input<Parameters<Map['addImage']>[1]>();\n options = input<Parameters<Map['addImage']>[2]>();\n url = input<string>();\n\n @Output() imageError = new EventEmitter<Error>();\n @Output() imageLoaded = new EventEmitter<void>();\n\n private isAdded = false;\n private isAdding = false;\n private sub: Subscription;\n\n ngOnInit() {\n this.sub = this.mapService.mapLoaded$\n .pipe(\n switchMap(() =>\n fromEvent(this.mapService.mapInstance, 'styledata').pipe(\n startWith(undefined),\n filter(\n () =>\n !this.isAdding &&\n !this.mapService.mapInstance.hasImage(this.id()),\n ),\n ),\n ),\n )\n .subscribe(() => this.init());\n }\n\n ngOnChanges(changes: SimpleChanges) {\n if (\n (changes['data'] && !changes['data'].isFirstChange()) ||\n (changes['options'] && !changes['options'].isFirstChange()) ||\n (changes['url'] && !changes['url'].isFirstChange())\n ) {\n this.ngOnDestroy();\n this.ngOnInit();\n }\n }\n\n ngOnDestroy() {\n if (this.isAdded) {\n this.mapService.removeImage(this.id());\n }\n if (this.sub) {\n this.sub.unsubscribe();\n }\n }\n\n private async init() {\n this.isAdding = true;\n if (this.data()) {\n this.mapService.addImage(this.id(), this.data()!, this.options());\n this.isAdded = true;\n this.isAdding = false;\n } else if (this.url()) {\n try {\n await this.mapService.loadAndAddImage(\n this.id(),\n this.url()!,\n this.options(),\n );\n this.isAdded = true;\n this.isAdding = false;\n this.zone.run(() => {\n this.imageLoaded.emit();\n });\n } catch (error) {\n this.zone.run(() => {\n this.imageError.emit(error as Error);\n });\n }\n }\n }\n}\n"]}
@@ -0,0 +1,139 @@
1
+ import { Component, EventEmitter, Output, inject, input, } from '@angular/core';
2
+ import { fromEvent } from 'rxjs';
3
+ import { filter, map, startWith, switchMap } from 'rxjs/operators';
4
+ import { MapService } from '../map/map.service';
5
+ import * as i0 from "@angular/core";
6
+ export class LayerComponent {
7
+ mapService = inject(MapService);
8
+ /* Init inputs */
9
+ id = input.required(...(ngDevMode ? [{ debugName: "id" }] : []));
10
+ source = input(...(ngDevMode ? [undefined, { debugName: "source" }] : []));
11
+ type = input.required(...(ngDevMode ? [{ debugName: "type" }] : []));
12
+ metadata = input(...(ngDevMode ? [undefined, { debugName: "metadata" }] : []));
13
+ sourceLayer = input(...(ngDevMode ? [undefined, { debugName: "sourceLayer" }] : []));
14
+ /* Dynamic inputs */
15
+ filter = input(...(ngDevMode ? [undefined, { debugName: "filter" }] : []));
16
+ layout = input(...(ngDevMode ? [undefined, { debugName: "layout" }] : []));
17
+ paint = input(...(ngDevMode ? [undefined, { debugName: "paint" }] : []));
18
+ before = input(...(ngDevMode ? [undefined, { debugName: "before" }] : []));
19
+ minzoom = input(...(ngDevMode ? [undefined, { debugName: "minzoom" }] : []));
20
+ maxzoom = input(...(ngDevMode ? [undefined, { debugName: "maxzoom" }] : []));
21
+ layerClick = new EventEmitter();
22
+ layerDblClick = new EventEmitter();
23
+ layerMouseDown = new EventEmitter();
24
+ layerMouseUp = new EventEmitter();
25
+ layerMouseEnter = new EventEmitter();
26
+ layerMouseLeave = new EventEmitter();
27
+ layerMouseMove = new EventEmitter();
28
+ layerMouseOver = new EventEmitter();
29
+ layerMouseOut = new EventEmitter();
30
+ layerContextMenu = new EventEmitter();
31
+ layerTouchStart = new EventEmitter();
32
+ layerTouchEnd = new EventEmitter();
33
+ layerTouchCancel = new EventEmitter();
34
+ layerAdded = false;
35
+ sub;
36
+ ngOnInit() {
37
+ this.sub = this.mapService.mapLoaded$
38
+ .pipe(switchMap(() => fromEvent(this.mapService.mapInstance, 'styledata').pipe(map(() => false), filter(() => !this.mapService.mapInstance.getLayer(this.id())), startWith(true))))
39
+ .subscribe((bindEvents) => this.init(bindEvents));
40
+ }
41
+ ngOnChanges(changes) {
42
+ if (!this.layerAdded) {
43
+ return;
44
+ }
45
+ if (changes['paint'] && !changes['paint'].isFirstChange()) {
46
+ this.mapService.setLayerAllPaintProperty(this.id(), changes['paint'].currentValue);
47
+ }
48
+ if (changes['layout'] && !changes['layout'].isFirstChange()) {
49
+ this.mapService.setLayerAllLayoutProperty(this.id(), changes['layout'].currentValue);
50
+ }
51
+ if (changes['filter'] && !changes['filter'].isFirstChange()) {
52
+ this.mapService.setLayerFilter(this.id(), changes['filter'].currentValue);
53
+ }
54
+ if (changes['before'] && !changes['before'].isFirstChange()) {
55
+ this.mapService.setLayerBefore(this.id(), changes['before'].currentValue);
56
+ }
57
+ if ((changes['minzoom'] && !changes['minzoom'].isFirstChange()) ||
58
+ (changes['maxzoom'] && !changes['maxzoom'].isFirstChange())) {
59
+ this.mapService.setLayerZoomRange(this.id(), this.minzoom(), this.maxzoom());
60
+ }
61
+ }
62
+ ngOnDestroy() {
63
+ if (this.layerAdded) {
64
+ this.mapService.removeLayer(this.id());
65
+ }
66
+ if (this.sub) {
67
+ this.sub.unsubscribe();
68
+ }
69
+ }
70
+ init(bindEvents) {
71
+ const layer = {
72
+ layerOptions: {
73
+ id: this.id(),
74
+ type: this.type(),
75
+ source: this.source(),
76
+ metadata: this.metadata(),
77
+ 'source-layer': this.sourceLayer(),
78
+ minzoom: this.minzoom(),
79
+ maxzoom: this.maxzoom(),
80
+ filter: this.filter(),
81
+ layout: this.layout(),
82
+ paint: this.paint(),
83
+ },
84
+ layerEvents: {
85
+ layerClick: this.layerClick,
86
+ layerDblClick: this.layerDblClick,
87
+ layerMouseDown: this.layerMouseDown,
88
+ layerMouseUp: this.layerMouseUp,
89
+ layerMouseEnter: this.layerMouseEnter,
90
+ layerMouseLeave: this.layerMouseLeave,
91
+ layerMouseMove: this.layerMouseMove,
92
+ layerMouseOver: this.layerMouseOver,
93
+ layerMouseOut: this.layerMouseOut,
94
+ layerContextMenu: this.layerContextMenu,
95
+ layerTouchStart: this.layerTouchStart,
96
+ layerTouchEnd: this.layerTouchEnd,
97
+ layerTouchCancel: this.layerTouchCancel,
98
+ },
99
+ };
100
+ this.mapService.addLayer(layer, bindEvents, this.before());
101
+ this.layerAdded = true;
102
+ }
103
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: LayerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
104
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.0.6", type: LayerComponent, isStandalone: true, selector: "mgl-layer", inputs: { id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: true, transformFunction: null }, source: { classPropertyName: "source", publicName: "source", isSignal: true, isRequired: false, transformFunction: null }, type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: true, transformFunction: null }, metadata: { classPropertyName: "metadata", publicName: "metadata", isSignal: true, isRequired: false, transformFunction: null }, sourceLayer: { classPropertyName: "sourceLayer", publicName: "sourceLayer", isSignal: true, isRequired: false, transformFunction: null }, filter: { classPropertyName: "filter", publicName: "filter", isSignal: true, isRequired: false, transformFunction: null }, layout: { classPropertyName: "layout", publicName: "layout", isSignal: true, isRequired: false, transformFunction: null }, paint: { classPropertyName: "paint", publicName: "paint", isSignal: true, isRequired: false, transformFunction: null }, before: { classPropertyName: "before", publicName: "before", isSignal: true, isRequired: false, transformFunction: null }, minzoom: { classPropertyName: "minzoom", publicName: "minzoom", isSignal: true, isRequired: false, transformFunction: null }, maxzoom: { classPropertyName: "maxzoom", publicName: "maxzoom", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { layerClick: "layerClick", layerDblClick: "layerDblClick", layerMouseDown: "layerMouseDown", layerMouseUp: "layerMouseUp", layerMouseEnter: "layerMouseEnter", layerMouseLeave: "layerMouseLeave", layerMouseMove: "layerMouseMove", layerMouseOver: "layerMouseOver", layerMouseOut: "layerMouseOut", layerContextMenu: "layerContextMenu", layerTouchStart: "layerTouchStart", layerTouchEnd: "layerTouchEnd", layerTouchCancel: "layerTouchCancel" }, usesOnChanges: true, ngImport: i0, template: '', isInline: true });
105
+ }
106
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: LayerComponent, decorators: [{
107
+ type: Component,
108
+ args: [{
109
+ selector: 'mgl-layer',
110
+ template: '',
111
+ }]
112
+ }], propDecorators: { id: [{ type: i0.Input, args: [{ isSignal: true, alias: "id", required: true }] }], source: [{ type: i0.Input, args: [{ isSignal: true, alias: "source", required: false }] }], type: [{ type: i0.Input, args: [{ isSignal: true, alias: "type", required: true }] }], metadata: [{ type: i0.Input, args: [{ isSignal: true, alias: "metadata", required: false }] }], sourceLayer: [{ type: i0.Input, args: [{ isSignal: true, alias: "sourceLayer", required: false }] }], filter: [{ type: i0.Input, args: [{ isSignal: true, alias: "filter", required: false }] }], layout: [{ type: i0.Input, args: [{ isSignal: true, alias: "layout", required: false }] }], paint: [{ type: i0.Input, args: [{ isSignal: true, alias: "paint", required: false }] }], before: [{ type: i0.Input, args: [{ isSignal: true, alias: "before", required: false }] }], minzoom: [{ type: i0.Input, args: [{ isSignal: true, alias: "minzoom", required: false }] }], maxzoom: [{ type: i0.Input, args: [{ isSignal: true, alias: "maxzoom", required: false }] }], layerClick: [{
113
+ type: Output
114
+ }], layerDblClick: [{
115
+ type: Output
116
+ }], layerMouseDown: [{
117
+ type: Output
118
+ }], layerMouseUp: [{
119
+ type: Output
120
+ }], layerMouseEnter: [{
121
+ type: Output
122
+ }], layerMouseLeave: [{
123
+ type: Output
124
+ }], layerMouseMove: [{
125
+ type: Output
126
+ }], layerMouseOver: [{
127
+ type: Output
128
+ }], layerMouseOut: [{
129
+ type: Output
130
+ }], layerContextMenu: [{
131
+ type: Output
132
+ }], layerTouchStart: [{
133
+ type: Output
134
+ }], layerTouchEnd: [{
135
+ type: Output
136
+ }], layerTouchCancel: [{
137
+ type: Output
138
+ }] } });
139
+ //# sourceMappingURL=layer.component.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"layer.component.js","sourceRoot":"","sources":["../../../../../../libs/ngx-mapbox-gl/src/lib/layer/layer.component.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n Component,\n EventEmitter,\n OnChanges,\n OnDestroy,\n OnInit,\n Output,\n SimpleChanges,\n inject,\n input,\n} from '@angular/core';\nimport type {\n Layer,\n MapMouseEvent,\n MapTouchEvent,\n Map,\n SourceSpecification,\n LayerSpecification,\n} from 'mapbox-gl';\nimport { fromEvent, Subscription } from 'rxjs';\nimport { filter, map, startWith, switchMap } from 'rxjs/operators';\nimport { MapService, SetupLayer } from '../map/map.service';\nimport { LayerEvents } from '../map/map.types';\n\ntype AnyLayerSource = LayerSpecification['source'] | SourceSpecification;\n\n@Component({\n selector: 'mgl-layer',\n template: '',\n})\nexport class LayerComponent\n implements OnInit, OnDestroy, OnChanges, LayerEvents\n{\n private mapService = inject(MapService);\n\n /* Init inputs */\n id = input.required<Layer['id']>();\n source = input<AnyLayerSource>();\n type = input.required<Layer['type']>();\n metadata = input<Layer['metadata']>();\n sourceLayer = input<Layer['source-layer']>();\n\n /* Dynamic inputs */\n filter = input<Layer['filter']>();\n layout = input<Layer['layout']>();\n paint = input<Layer['paint']>();\n before = input<Parameters<Map['moveLayer']>[1]>();\n minzoom = input<Layer['minzoom']>();\n maxzoom = input<Layer['maxzoom']>();\n\n @Output() layerClick = new EventEmitter<MapMouseEvent>();\n @Output() layerDblClick = new EventEmitter<MapMouseEvent>();\n @Output() layerMouseDown = new EventEmitter<MapMouseEvent>();\n @Output() layerMouseUp = new EventEmitter<MapMouseEvent>();\n @Output() layerMouseEnter = new EventEmitter<MapMouseEvent>();\n @Output() layerMouseLeave = new EventEmitter<MapMouseEvent>();\n @Output() layerMouseMove = new EventEmitter<MapMouseEvent>();\n @Output() layerMouseOver = new EventEmitter<MapMouseEvent>();\n @Output() layerMouseOut = new EventEmitter<MapMouseEvent>();\n @Output() layerContextMenu = new EventEmitter<MapMouseEvent>();\n @Output() layerTouchStart = new EventEmitter<MapTouchEvent>();\n @Output() layerTouchEnd = new EventEmitter<MapTouchEvent>();\n @Output() layerTouchCancel = new EventEmitter<MapTouchEvent>();\n\n private layerAdded = false;\n private sub: Subscription;\n\n ngOnInit() {\n this.sub = this.mapService.mapLoaded$\n .pipe(\n switchMap(() =>\n fromEvent(this.mapService.mapInstance, 'styledata').pipe(\n map(() => false),\n filter(() => !this.mapService.mapInstance.getLayer(this.id())),\n startWith(true),\n ),\n ),\n )\n .subscribe((bindEvents: boolean) => this.init(bindEvents));\n }\n\n ngOnChanges(changes: SimpleChanges) {\n if (!this.layerAdded) {\n return;\n }\n if (changes['paint'] && !changes['paint'].isFirstChange()) {\n this.mapService.setLayerAllPaintProperty(\n this.id(),\n changes['paint'].currentValue!,\n );\n }\n if (changes['layout'] && !changes['layout'].isFirstChange()) {\n this.mapService.setLayerAllLayoutProperty(\n this.id(),\n changes['layout'].currentValue!,\n );\n }\n if (changes['filter'] && !changes['filter'].isFirstChange()) {\n this.mapService.setLayerFilter(\n this.id(),\n changes['filter'].currentValue!,\n );\n }\n if (changes['before'] && !changes['before'].isFirstChange()) {\n this.mapService.setLayerBefore(\n this.id(),\n changes['before'].currentValue!,\n );\n }\n if (\n (changes['minzoom'] && !changes['minzoom'].isFirstChange()) ||\n (changes['maxzoom'] && !changes['maxzoom'].isFirstChange())\n ) {\n this.mapService.setLayerZoomRange(\n this.id(),\n this.minzoom(),\n this.maxzoom(),\n );\n }\n }\n\n ngOnDestroy() {\n if (this.layerAdded) {\n this.mapService.removeLayer(this.id());\n }\n if (this.sub) {\n this.sub.unsubscribe();\n }\n }\n\n private init(bindEvents: boolean) {\n const layer: SetupLayer = {\n layerOptions: {\n id: this.id(),\n type: this.type(),\n source: this.source(),\n metadata: this.metadata(),\n 'source-layer': this.sourceLayer(),\n minzoom: this.minzoom(),\n maxzoom: this.maxzoom(),\n filter: this.filter(),\n layout: this.layout(),\n paint: this.paint(),\n },\n layerEvents: {\n layerClick: this.layerClick,\n layerDblClick: this.layerDblClick,\n layerMouseDown: this.layerMouseDown,\n layerMouseUp: this.layerMouseUp,\n layerMouseEnter: this.layerMouseEnter,\n layerMouseLeave: this.layerMouseLeave,\n layerMouseMove: this.layerMouseMove,\n layerMouseOver: this.layerMouseOver,\n layerMouseOut: this.layerMouseOut,\n layerContextMenu: this.layerContextMenu,\n layerTouchStart: this.layerTouchStart,\n layerTouchEnd: this.layerTouchEnd,\n layerTouchCancel: this.layerTouchCancel,\n },\n };\n this.mapService.addLayer(layer, bindEvents, this.before());\n this.layerAdded = true;\n }\n}\n"]}
@@ -0,0 +1,381 @@
1
+ import { afterNextRender, ChangeDetectionStrategy, Component, ElementRef, EventEmitter, Output, ViewChild, inject, input, } from '@angular/core';
2
+ import { lastValueFrom } from 'rxjs';
3
+ import { MapService } from './map.service';
4
+ import * as i0 from "@angular/core";
5
+ export class MapComponent {
6
+ mapService = inject(MapService);
7
+ /* Init inputs */
8
+ accessToken = input(...(ngDevMode ? [undefined, { debugName: "accessToken" }] : []));
9
+ collectResourceTiming = input(...(ngDevMode ? [undefined, { debugName: "collectResourceTiming" }] : []));
10
+ crossSourceCollisions = input(...(ngDevMode ? [undefined, { debugName: "crossSourceCollisions" }] : []));
11
+ fadeDuration = input(...(ngDevMode ? [undefined, { debugName: "fadeDuration" }] : []));
12
+ hash = input(...(ngDevMode ? [undefined, { debugName: "hash" }] : []));
13
+ refreshExpiredTiles = input(...(ngDevMode ? [undefined, { debugName: "refreshExpiredTiles" }] : []));
14
+ failIfMajorPerformanceCaveat = input(...(ngDevMode ? [undefined, { debugName: "failIfMajorPerformanceCaveat" }] : []));
15
+ bearingSnap = input(...(ngDevMode ? [undefined, { debugName: "bearingSnap" }] : []));
16
+ interactive = input(...(ngDevMode ? [undefined, { debugName: "interactive" }] : []));
17
+ pitchWithRotate = input(...(ngDevMode ? [undefined, { debugName: "pitchWithRotate" }] : []));
18
+ clickTolerance = input(...(ngDevMode ? [undefined, { debugName: "clickTolerance" }] : []));
19
+ attributionControl = input(...(ngDevMode ? [undefined, { debugName: "attributionControl" }] : []));
20
+ logoPosition = input(...(ngDevMode ? [undefined, { debugName: "logoPosition" }] : []));
21
+ maxTileCacheSize = input(...(ngDevMode ? [undefined, { debugName: "maxTileCacheSize" }] : []));
22
+ localIdeographFontFamily = input(...(ngDevMode ? [undefined, { debugName: "localIdeographFontFamily" }] : []));
23
+ preserveDrawingBuffer = input(...(ngDevMode ? [undefined, { debugName: "preserveDrawingBuffer" }] : []));
24
+ trackResize = input(...(ngDevMode ? [undefined, { debugName: "trackResize" }] : []));
25
+ transformRequest = input(...(ngDevMode ? [undefined, { debugName: "transformRequest" }] : []));
26
+ bounds = input(...(ngDevMode ? [undefined, { debugName: "bounds" }] : [])); // Use fitBounds for dynamic input
27
+ antialias = input(...(ngDevMode ? [undefined, { debugName: "antialias" }] : []));
28
+ locale = input(...(ngDevMode ? [undefined, { debugName: "locale" }] : []));
29
+ cooperativeGestures = input(...(ngDevMode ? [undefined, { debugName: "cooperativeGestures" }] : []));
30
+ /* Dynamic inputs */
31
+ minZoom = input(...(ngDevMode ? [undefined, { debugName: "minZoom" }] : []));
32
+ maxZoom = input(...(ngDevMode ? [undefined, { debugName: "maxZoom" }] : []));
33
+ minPitch = input(...(ngDevMode ? [undefined, { debugName: "minPitch" }] : []));
34
+ maxPitch = input(...(ngDevMode ? [undefined, { debugName: "maxPitch" }] : []));
35
+ scrollZoom = input(...(ngDevMode ? [undefined, { debugName: "scrollZoom" }] : []));
36
+ dragRotate = input(...(ngDevMode ? [undefined, { debugName: "dragRotate" }] : []));
37
+ touchPitch = input(...(ngDevMode ? [undefined, { debugName: "touchPitch" }] : []));
38
+ touchZoomRotate = input(...(ngDevMode ? [undefined, { debugName: "touchZoomRotate" }] : []));
39
+ doubleClickZoom = input(...(ngDevMode ? [undefined, { debugName: "doubleClickZoom" }] : []));
40
+ keyboard = input(...(ngDevMode ? [undefined, { debugName: "keyboard" }] : []));
41
+ dragPan = input(...(ngDevMode ? [undefined, { debugName: "dragPan" }] : []));
42
+ boxZoom = input(...(ngDevMode ? [undefined, { debugName: "boxZoom" }] : []));
43
+ style = input(...(ngDevMode ? [undefined, { debugName: "style" }] : []));
44
+ center = input(...(ngDevMode ? [undefined, { debugName: "center" }] : []));
45
+ maxBounds = input(...(ngDevMode ? [undefined, { debugName: "maxBounds" }] : []));
46
+ zoom = input(...(ngDevMode ? [undefined, { debugName: "zoom" }] : []));
47
+ bearing = input(...(ngDevMode ? [undefined, { debugName: "bearing" }] : []));
48
+ pitch = input(...(ngDevMode ? [undefined, { debugName: "pitch" }] : []));
49
+ // First value goes to options.fitBoundsOptions. Subsequents changes are passed to fitBounds
50
+ fitBoundsOptions = input(...(ngDevMode ? [undefined, { debugName: "fitBoundsOptions" }] : []));
51
+ renderWorldCopies = input(...(ngDevMode ? [undefined, { debugName: "renderWorldCopies" }] : []));
52
+ projection = input(...(ngDevMode ? [undefined, { debugName: "projection" }] : []));
53
+ /* Added by ngx-mapbox-gl */
54
+ movingMethod = input('flyTo', ...(ngDevMode ? [{ debugName: "movingMethod" }] : []));
55
+ movingOptions = input(...(ngDevMode ? [undefined, { debugName: "movingOptions" }] : []));
56
+ // => First value is a alias to bounds input (since mapbox 0.53.0). Subsequents changes are passed to fitBounds
57
+ fitBounds = input(...(ngDevMode ? [undefined, { debugName: "fitBounds" }] : []));
58
+ fitScreenCoordinates = input(...(ngDevMode ? [undefined, { debugName: "fitScreenCoordinates" }] : []));
59
+ centerWithPanTo = input(...(ngDevMode ? [undefined, { debugName: "centerWithPanTo" }] : []));
60
+ panToOptions = input(...(ngDevMode ? [undefined, { debugName: "panToOptions" }] : []));
61
+ cursorStyle = input(...(ngDevMode ? [undefined, { debugName: "cursorStyle" }] : []));
62
+ // resizeEmitter = new Subject<MapEvent>();
63
+ // mapResize = outputFromObservable(this.mapResizeEmitter);
64
+ mapResize = new EventEmitter();
65
+ mapRemove = new EventEmitter();
66
+ mapMouseDown = new EventEmitter();
67
+ mapMouseUp = new EventEmitter();
68
+ mapMouseMove = new EventEmitter();
69
+ mapClick = new EventEmitter();
70
+ mapDblClick = new EventEmitter();
71
+ mapMouseOver = new EventEmitter();
72
+ mapMouseOut = new EventEmitter();
73
+ mapContextMenu = new EventEmitter();
74
+ mapTouchStart = new EventEmitter();
75
+ mapTouchEnd = new EventEmitter();
76
+ mapTouchMove = new EventEmitter();
77
+ mapTouchCancel = new EventEmitter();
78
+ mapWheel = new EventEmitter();
79
+ moveStart = new EventEmitter();
80
+ move = new EventEmitter();
81
+ moveEnd = new EventEmitter();
82
+ mapDragStart = new EventEmitter();
83
+ mapDrag = new EventEmitter();
84
+ mapDragEnd = new EventEmitter();
85
+ zoomStart = new EventEmitter();
86
+ zoomEvt = new EventEmitter();
87
+ zoomEnd = new EventEmitter();
88
+ rotateStart = new EventEmitter();
89
+ rotate = new EventEmitter();
90
+ rotateEnd = new EventEmitter();
91
+ pitchStart = new EventEmitter();
92
+ pitchEvt = new EventEmitter();
93
+ pitchEnd = new EventEmitter();
94
+ boxZoomStart = new EventEmitter();
95
+ boxZoomEnd = new EventEmitter();
96
+ boxZoomCancel = new EventEmitter();
97
+ webGlContextLost = new EventEmitter();
98
+ webGlContextRestored = new EventEmitter();
99
+ mapLoad = new EventEmitter();
100
+ mapCreate = new EventEmitter();
101
+ idle = new EventEmitter();
102
+ render = new EventEmitter();
103
+ mapError = new EventEmitter();
104
+ data = new EventEmitter();
105
+ styleData = new EventEmitter();
106
+ sourceData = new EventEmitter();
107
+ dataLoading = new EventEmitter();
108
+ styleDataLoading = new EventEmitter();
109
+ sourceDataLoading = new EventEmitter();
110
+ styleImageMissing = new EventEmitter();
111
+ get mapInstance() {
112
+ return this.mapService.mapInstance;
113
+ }
114
+ mapContainer;
115
+ constructor() {
116
+ afterNextRender(() => {
117
+ this.mapService.setup({
118
+ accessToken: this.accessToken(),
119
+ mapOptions: {
120
+ collectResourceTiming: this.collectResourceTiming(),
121
+ container: this.mapContainer.nativeElement,
122
+ crossSourceCollisions: this.crossSourceCollisions(),
123
+ fadeDuration: this.fadeDuration(),
124
+ minZoom: this.minZoom(),
125
+ maxZoom: this.maxZoom(),
126
+ minPitch: this.minPitch(),
127
+ maxPitch: this.maxPitch(),
128
+ style: this.style(),
129
+ hash: this.hash(),
130
+ interactive: this.interactive(),
131
+ bearingSnap: this.bearingSnap(),
132
+ pitchWithRotate: this.pitchWithRotate(),
133
+ clickTolerance: this.clickTolerance(),
134
+ attributionControl: this.attributionControl(),
135
+ logoPosition: this.logoPosition(),
136
+ failIfMajorPerformanceCaveat: this.failIfMajorPerformanceCaveat(),
137
+ preserveDrawingBuffer: this.preserveDrawingBuffer(),
138
+ refreshExpiredTiles: this.refreshExpiredTiles(),
139
+ maxBounds: this.maxBounds(),
140
+ scrollZoom: this.scrollZoom(),
141
+ boxZoom: this.boxZoom(),
142
+ dragRotate: this.dragRotate(),
143
+ dragPan: this.dragPan(),
144
+ keyboard: this.keyboard(),
145
+ doubleClickZoom: this.doubleClickZoom(),
146
+ touchPitch: this.touchPitch(),
147
+ touchZoomRotate: this.touchZoomRotate(),
148
+ trackResize: this.trackResize(),
149
+ center: this.center(),
150
+ zoom: this.zoom(),
151
+ bearing: this.bearing(),
152
+ pitch: this.pitch(),
153
+ renderWorldCopies: this.renderWorldCopies(),
154
+ maxTileCacheSize: this.maxTileCacheSize(),
155
+ localIdeographFontFamily: this.localIdeographFontFamily(),
156
+ transformRequest: this.transformRequest(),
157
+ bounds: this.bounds() ? this.bounds() : this.fitBounds(),
158
+ fitBoundsOptions: this.fitBoundsOptions(),
159
+ antialias: this.antialias(),
160
+ locale: this.locale(),
161
+ cooperativeGestures: this.cooperativeGestures(),
162
+ projection: this.projection(),
163
+ },
164
+ mapEvents: this,
165
+ });
166
+ if (this.cursorStyle()) {
167
+ this.mapService.changeCanvasCursor(this.cursorStyle());
168
+ }
169
+ });
170
+ }
171
+ ngOnDestroy() {
172
+ this.mapService.destroyMap();
173
+ }
174
+ async ngOnChanges(changes) {
175
+ await lastValueFrom(this.mapService.mapCreated$);
176
+ if (changes['cursorStyle'] && !changes['cursorStyle'].isFirstChange()) {
177
+ this.mapService.changeCanvasCursor(changes['cursorStyle'].currentValue);
178
+ }
179
+ if (changes['projection'] && !changes['projection'].isFirstChange()) {
180
+ this.mapService.updateProjection(changes['projection'].currentValue);
181
+ }
182
+ if (changes['minZoom'] && !changes['minZoom'].isFirstChange()) {
183
+ this.mapService.updateMinZoom(changes['minZoom'].currentValue);
184
+ }
185
+ if (changes['maxZoom'] && !changes['maxZoom'].isFirstChange()) {
186
+ this.mapService.updateMaxZoom(changes['maxZoom'].currentValue);
187
+ }
188
+ if (changes['minPitch'] && !changes['minPitch'].isFirstChange()) {
189
+ this.mapService.updateMinPitch(changes['minPitch'].currentValue);
190
+ }
191
+ if (changes['maxPitch'] && !changes['maxPitch'].isFirstChange()) {
192
+ this.mapService.updateMaxPitch(changes['maxPitch'].currentValue);
193
+ }
194
+ if (changes['renderWorldCopies'] &&
195
+ !changes['renderWorldCopies'].isFirstChange()) {
196
+ this.mapService.updateRenderWorldCopies(changes['renderWorldCopies'].currentValue);
197
+ }
198
+ if (changes['scrollZoom'] && !changes['scrollZoom'].isFirstChange()) {
199
+ this.mapService.updateScrollZoom(changes['scrollZoom'].currentValue);
200
+ }
201
+ if (changes['dragRotate'] && !changes['dragRotate'].isFirstChange()) {
202
+ this.mapService.updateDragRotate(changes['dragRotate'].currentValue);
203
+ }
204
+ if (changes['touchPitch'] && !changes['touchPitch'].isFirstChange()) {
205
+ this.mapService.updateTouchPitch(changes['touchPitch'].currentValue);
206
+ }
207
+ if (changes['touchZoomRotate'] &&
208
+ !changes['touchZoomRotate'].isFirstChange()) {
209
+ this.mapService.updateTouchZoomRotate(changes['touchZoomRotate'].currentValue);
210
+ }
211
+ if (changes['doubleClickZoom'] &&
212
+ !changes['doubleClickZoom'].isFirstChange()) {
213
+ this.mapService.updateDoubleClickZoom(changes['doubleClickZoom'].currentValue);
214
+ }
215
+ if (changes['keyboard'] && !changes['keyboard'].isFirstChange()) {
216
+ this.mapService.updateKeyboard(changes['keyboard'].currentValue);
217
+ }
218
+ if (changes['dragPan'] && !changes['dragPan'].isFirstChange()) {
219
+ this.mapService.updateDragPan(changes['dragPan'].currentValue);
220
+ }
221
+ if (changes['boxZoom'] && !changes['boxZoom'].isFirstChange()) {
222
+ this.mapService.updateBoxZoom(changes['boxZoom'].currentValue);
223
+ }
224
+ if (changes['style'] && !changes['style'].isFirstChange()) {
225
+ this.mapService.updateStyle(changes['style'].currentValue);
226
+ }
227
+ if (changes['maxBounds'] && !changes['maxBounds'].isFirstChange()) {
228
+ this.mapService.updateMaxBounds(changes['maxBounds'].currentValue);
229
+ }
230
+ if (changes['fitBounds'] &&
231
+ changes['fitBounds'].currentValue &&
232
+ !changes['fitBounds'].isFirstChange()) {
233
+ this.mapService.fitBounds(changes['fitBounds'].currentValue, this.fitBoundsOptions());
234
+ }
235
+ if (changes['fitScreenCoordinates'] &&
236
+ changes['fitScreenCoordinates'].currentValue) {
237
+ if ((this.center() || this.zoom() || this.pitch() || this.fitBounds()) &&
238
+ changes['fitScreenCoordinates'].isFirstChange()) {
239
+ console.warn('[ngx-mapbox-gl] center / zoom / pitch / fitBounds inputs are being overridden by fitScreenCoordinates input');
240
+ }
241
+ const bearing = this.bearing();
242
+ this.mapService.fitScreenCoordinates(changes['fitScreenCoordinates'].currentValue, Array.isArray(bearing) ? bearing[0] : bearing || 0, this.movingOptions());
243
+ }
244
+ if (this.centerWithPanTo() &&
245
+ changes['center'] &&
246
+ !changes['center'].isFirstChange() &&
247
+ !changes['zoom'] &&
248
+ !changes['bearing'] &&
249
+ !changes['pitch']) {
250
+ this.mapService.panTo(this.center(), this.panToOptions());
251
+ }
252
+ else if ((changes['center'] && !changes['center'].isFirstChange()) ||
253
+ (changes['zoom'] && !changes['zoom'].isFirstChange()) ||
254
+ (changes['bearing'] &&
255
+ !changes['bearing'].isFirstChange() &&
256
+ !changes['fitScreenCoordinates']) ||
257
+ (changes['pitch'] && !changes['pitch'].isFirstChange())) {
258
+ const zoom = this.zoom();
259
+ const center = this.center();
260
+ const bearing = this.bearing();
261
+ const pitch = this.pitch();
262
+ this.mapService.move(this.movingMethod(), this.movingOptions(), changes['zoom'] && zoom
263
+ ? Array.isArray(zoom)
264
+ ? zoom[0]
265
+ : zoom
266
+ : undefined, changes['center'] ? center : undefined, changes['bearing'] && bearing
267
+ ? Array.isArray(bearing)
268
+ ? bearing[0]
269
+ : bearing
270
+ : undefined, changes['pitch'] && pitch
271
+ ? Array.isArray(pitch)
272
+ ? pitch[0]
273
+ : pitch
274
+ : undefined);
275
+ }
276
+ }
277
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: MapComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
278
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.0.6", type: MapComponent, isStandalone: true, selector: "mgl-map", inputs: { accessToken: { classPropertyName: "accessToken", publicName: "accessToken", isSignal: true, isRequired: false, transformFunction: null }, collectResourceTiming: { classPropertyName: "collectResourceTiming", publicName: "collectResourceTiming", isSignal: true, isRequired: false, transformFunction: null }, crossSourceCollisions: { classPropertyName: "crossSourceCollisions", publicName: "crossSourceCollisions", isSignal: true, isRequired: false, transformFunction: null }, fadeDuration: { classPropertyName: "fadeDuration", publicName: "fadeDuration", isSignal: true, isRequired: false, transformFunction: null }, hash: { classPropertyName: "hash", publicName: "hash", isSignal: true, isRequired: false, transformFunction: null }, refreshExpiredTiles: { classPropertyName: "refreshExpiredTiles", publicName: "refreshExpiredTiles", isSignal: true, isRequired: false, transformFunction: null }, failIfMajorPerformanceCaveat: { classPropertyName: "failIfMajorPerformanceCaveat", publicName: "failIfMajorPerformanceCaveat", isSignal: true, isRequired: false, transformFunction: null }, bearingSnap: { classPropertyName: "bearingSnap", publicName: "bearingSnap", isSignal: true, isRequired: false, transformFunction: null }, interactive: { classPropertyName: "interactive", publicName: "interactive", isSignal: true, isRequired: false, transformFunction: null }, pitchWithRotate: { classPropertyName: "pitchWithRotate", publicName: "pitchWithRotate", isSignal: true, isRequired: false, transformFunction: null }, clickTolerance: { classPropertyName: "clickTolerance", publicName: "clickTolerance", isSignal: true, isRequired: false, transformFunction: null }, attributionControl: { classPropertyName: "attributionControl", publicName: "attributionControl", isSignal: true, isRequired: false, transformFunction: null }, logoPosition: { classPropertyName: "logoPosition", publicName: "logoPosition", isSignal: true, isRequired: false, transformFunction: null }, maxTileCacheSize: { classPropertyName: "maxTileCacheSize", publicName: "maxTileCacheSize", isSignal: true, isRequired: false, transformFunction: null }, localIdeographFontFamily: { classPropertyName: "localIdeographFontFamily", publicName: "localIdeographFontFamily", isSignal: true, isRequired: false, transformFunction: null }, preserveDrawingBuffer: { classPropertyName: "preserveDrawingBuffer", publicName: "preserveDrawingBuffer", isSignal: true, isRequired: false, transformFunction: null }, trackResize: { classPropertyName: "trackResize", publicName: "trackResize", isSignal: true, isRequired: false, transformFunction: null }, transformRequest: { classPropertyName: "transformRequest", publicName: "transformRequest", isSignal: true, isRequired: false, transformFunction: null }, bounds: { classPropertyName: "bounds", publicName: "bounds", isSignal: true, isRequired: false, transformFunction: null }, antialias: { classPropertyName: "antialias", publicName: "antialias", isSignal: true, isRequired: false, transformFunction: null }, locale: { classPropertyName: "locale", publicName: "locale", isSignal: true, isRequired: false, transformFunction: null }, cooperativeGestures: { classPropertyName: "cooperativeGestures", publicName: "cooperativeGestures", isSignal: true, isRequired: false, transformFunction: null }, minZoom: { classPropertyName: "minZoom", publicName: "minZoom", isSignal: true, isRequired: false, transformFunction: null }, maxZoom: { classPropertyName: "maxZoom", publicName: "maxZoom", isSignal: true, isRequired: false, transformFunction: null }, minPitch: { classPropertyName: "minPitch", publicName: "minPitch", isSignal: true, isRequired: false, transformFunction: null }, maxPitch: { classPropertyName: "maxPitch", publicName: "maxPitch", isSignal: true, isRequired: false, transformFunction: null }, scrollZoom: { classPropertyName: "scrollZoom", publicName: "scrollZoom", isSignal: true, isRequired: false, transformFunction: null }, dragRotate: { classPropertyName: "dragRotate", publicName: "dragRotate", isSignal: true, isRequired: false, transformFunction: null }, touchPitch: { classPropertyName: "touchPitch", publicName: "touchPitch", isSignal: true, isRequired: false, transformFunction: null }, touchZoomRotate: { classPropertyName: "touchZoomRotate", publicName: "touchZoomRotate", isSignal: true, isRequired: false, transformFunction: null }, doubleClickZoom: { classPropertyName: "doubleClickZoom", publicName: "doubleClickZoom", isSignal: true, isRequired: false, transformFunction: null }, keyboard: { classPropertyName: "keyboard", publicName: "keyboard", isSignal: true, isRequired: false, transformFunction: null }, dragPan: { classPropertyName: "dragPan", publicName: "dragPan", isSignal: true, isRequired: false, transformFunction: null }, boxZoom: { classPropertyName: "boxZoom", publicName: "boxZoom", isSignal: true, isRequired: false, transformFunction: null }, style: { classPropertyName: "style", publicName: "style", isSignal: true, isRequired: false, transformFunction: null }, center: { classPropertyName: "center", publicName: "center", isSignal: true, isRequired: false, transformFunction: null }, maxBounds: { classPropertyName: "maxBounds", publicName: "maxBounds", isSignal: true, isRequired: false, transformFunction: null }, zoom: { classPropertyName: "zoom", publicName: "zoom", isSignal: true, isRequired: false, transformFunction: null }, bearing: { classPropertyName: "bearing", publicName: "bearing", isSignal: true, isRequired: false, transformFunction: null }, pitch: { classPropertyName: "pitch", publicName: "pitch", isSignal: true, isRequired: false, transformFunction: null }, fitBoundsOptions: { classPropertyName: "fitBoundsOptions", publicName: "fitBoundsOptions", isSignal: true, isRequired: false, transformFunction: null }, renderWorldCopies: { classPropertyName: "renderWorldCopies", publicName: "renderWorldCopies", isSignal: true, isRequired: false, transformFunction: null }, projection: { classPropertyName: "projection", publicName: "projection", isSignal: true, isRequired: false, transformFunction: null }, movingMethod: { classPropertyName: "movingMethod", publicName: "movingMethod", isSignal: true, isRequired: false, transformFunction: null }, movingOptions: { classPropertyName: "movingOptions", publicName: "movingOptions", isSignal: true, isRequired: false, transformFunction: null }, fitBounds: { classPropertyName: "fitBounds", publicName: "fitBounds", isSignal: true, isRequired: false, transformFunction: null }, fitScreenCoordinates: { classPropertyName: "fitScreenCoordinates", publicName: "fitScreenCoordinates", isSignal: true, isRequired: false, transformFunction: null }, centerWithPanTo: { classPropertyName: "centerWithPanTo", publicName: "centerWithPanTo", isSignal: true, isRequired: false, transformFunction: null }, panToOptions: { classPropertyName: "panToOptions", publicName: "panToOptions", isSignal: true, isRequired: false, transformFunction: null }, cursorStyle: { classPropertyName: "cursorStyle", publicName: "cursorStyle", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { mapResize: "mapResize", mapRemove: "mapRemove", mapMouseDown: "mapMouseDown", mapMouseUp: "mapMouseUp", mapMouseMove: "mapMouseMove", mapClick: "mapClick", mapDblClick: "mapDblClick", mapMouseOver: "mapMouseOver", mapMouseOut: "mapMouseOut", mapContextMenu: "mapContextMenu", mapTouchStart: "mapTouchStart", mapTouchEnd: "mapTouchEnd", mapTouchMove: "mapTouchMove", mapTouchCancel: "mapTouchCancel", mapWheel: "mapWheel", moveStart: "moveStart", move: "move", moveEnd: "moveEnd", mapDragStart: "mapDragStart", mapDrag: "mapDrag", mapDragEnd: "mapDragEnd", zoomStart: "zoomStart", zoomEvt: "zoomEvt", zoomEnd: "zoomEnd", rotateStart: "rotateStart", rotate: "rotate", rotateEnd: "rotateEnd", pitchStart: "pitchStart", pitchEvt: "pitchEvt", pitchEnd: "pitchEnd", boxZoomStart: "boxZoomStart", boxZoomEnd: "boxZoomEnd", boxZoomCancel: "boxZoomCancel", webGlContextLost: "webGlContextLost", webGlContextRestored: "webGlContextRestored", mapLoad: "mapLoad", mapCreate: "mapCreate", idle: "idle", render: "render", mapError: "mapError", data: "data", styleData: "styleData", sourceData: "sourceData", dataLoading: "dataLoading", styleDataLoading: "styleDataLoading", sourceDataLoading: "sourceDataLoading", styleImageMissing: "styleImageMissing" }, providers: [MapService], viewQueries: [{ propertyName: "mapContainer", first: true, predicate: ["container"], descendants: true, static: true }], usesOnChanges: true, ngImport: i0, template: '<div #container></div>', isInline: true, styles: [":host{display:block}div{height:100%;width:100%}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
279
+ }
280
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: MapComponent, decorators: [{
281
+ type: Component,
282
+ args: [{ selector: 'mgl-map', template: '<div #container></div>', providers: [MapService], standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, styles: [":host{display:block}div{height:100%;width:100%}\n"] }]
283
+ }], ctorParameters: () => [], propDecorators: { accessToken: [{ type: i0.Input, args: [{ isSignal: true, alias: "accessToken", required: false }] }], collectResourceTiming: [{ type: i0.Input, args: [{ isSignal: true, alias: "collectResourceTiming", required: false }] }], crossSourceCollisions: [{ type: i0.Input, args: [{ isSignal: true, alias: "crossSourceCollisions", required: false }] }], fadeDuration: [{ type: i0.Input, args: [{ isSignal: true, alias: "fadeDuration", required: false }] }], hash: [{ type: i0.Input, args: [{ isSignal: true, alias: "hash", required: false }] }], refreshExpiredTiles: [{ type: i0.Input, args: [{ isSignal: true, alias: "refreshExpiredTiles", required: false }] }], failIfMajorPerformanceCaveat: [{ type: i0.Input, args: [{ isSignal: true, alias: "failIfMajorPerformanceCaveat", required: false }] }], bearingSnap: [{ type: i0.Input, args: [{ isSignal: true, alias: "bearingSnap", required: false }] }], interactive: [{ type: i0.Input, args: [{ isSignal: true, alias: "interactive", required: false }] }], pitchWithRotate: [{ type: i0.Input, args: [{ isSignal: true, alias: "pitchWithRotate", required: false }] }], clickTolerance: [{ type: i0.Input, args: [{ isSignal: true, alias: "clickTolerance", required: false }] }], attributionControl: [{ type: i0.Input, args: [{ isSignal: true, alias: "attributionControl", required: false }] }], logoPosition: [{ type: i0.Input, args: [{ isSignal: true, alias: "logoPosition", required: false }] }], maxTileCacheSize: [{ type: i0.Input, args: [{ isSignal: true, alias: "maxTileCacheSize", required: false }] }], localIdeographFontFamily: [{ type: i0.Input, args: [{ isSignal: true, alias: "localIdeographFontFamily", required: false }] }], preserveDrawingBuffer: [{ type: i0.Input, args: [{ isSignal: true, alias: "preserveDrawingBuffer", required: false }] }], trackResize: [{ type: i0.Input, args: [{ isSignal: true, alias: "trackResize", required: false }] }], transformRequest: [{ type: i0.Input, args: [{ isSignal: true, alias: "transformRequest", required: false }] }], bounds: [{ type: i0.Input, args: [{ isSignal: true, alias: "bounds", required: false }] }], antialias: [{ type: i0.Input, args: [{ isSignal: true, alias: "antialias", required: false }] }], locale: [{ type: i0.Input, args: [{ isSignal: true, alias: "locale", required: false }] }], cooperativeGestures: [{ type: i0.Input, args: [{ isSignal: true, alias: "cooperativeGestures", required: false }] }], minZoom: [{ type: i0.Input, args: [{ isSignal: true, alias: "minZoom", required: false }] }], maxZoom: [{ type: i0.Input, args: [{ isSignal: true, alias: "maxZoom", required: false }] }], minPitch: [{ type: i0.Input, args: [{ isSignal: true, alias: "minPitch", required: false }] }], maxPitch: [{ type: i0.Input, args: [{ isSignal: true, alias: "maxPitch", required: false }] }], scrollZoom: [{ type: i0.Input, args: [{ isSignal: true, alias: "scrollZoom", required: false }] }], dragRotate: [{ type: i0.Input, args: [{ isSignal: true, alias: "dragRotate", required: false }] }], touchPitch: [{ type: i0.Input, args: [{ isSignal: true, alias: "touchPitch", required: false }] }], touchZoomRotate: [{ type: i0.Input, args: [{ isSignal: true, alias: "touchZoomRotate", required: false }] }], doubleClickZoom: [{ type: i0.Input, args: [{ isSignal: true, alias: "doubleClickZoom", required: false }] }], keyboard: [{ type: i0.Input, args: [{ isSignal: true, alias: "keyboard", required: false }] }], dragPan: [{ type: i0.Input, args: [{ isSignal: true, alias: "dragPan", required: false }] }], boxZoom: [{ type: i0.Input, args: [{ isSignal: true, alias: "boxZoom", required: false }] }], style: [{ type: i0.Input, args: [{ isSignal: true, alias: "style", required: false }] }], center: [{ type: i0.Input, args: [{ isSignal: true, alias: "center", required: false }] }], maxBounds: [{ type: i0.Input, args: [{ isSignal: true, alias: "maxBounds", required: false }] }], zoom: [{ type: i0.Input, args: [{ isSignal: true, alias: "zoom", required: false }] }], bearing: [{ type: i0.Input, args: [{ isSignal: true, alias: "bearing", required: false }] }], pitch: [{ type: i0.Input, args: [{ isSignal: true, alias: "pitch", required: false }] }], fitBoundsOptions: [{ type: i0.Input, args: [{ isSignal: true, alias: "fitBoundsOptions", required: false }] }], renderWorldCopies: [{ type: i0.Input, args: [{ isSignal: true, alias: "renderWorldCopies", required: false }] }], projection: [{ type: i0.Input, args: [{ isSignal: true, alias: "projection", required: false }] }], movingMethod: [{ type: i0.Input, args: [{ isSignal: true, alias: "movingMethod", required: false }] }], movingOptions: [{ type: i0.Input, args: [{ isSignal: true, alias: "movingOptions", required: false }] }], fitBounds: [{ type: i0.Input, args: [{ isSignal: true, alias: "fitBounds", required: false }] }], fitScreenCoordinates: [{ type: i0.Input, args: [{ isSignal: true, alias: "fitScreenCoordinates", required: false }] }], centerWithPanTo: [{ type: i0.Input, args: [{ isSignal: true, alias: "centerWithPanTo", required: false }] }], panToOptions: [{ type: i0.Input, args: [{ isSignal: true, alias: "panToOptions", required: false }] }], cursorStyle: [{ type: i0.Input, args: [{ isSignal: true, alias: "cursorStyle", required: false }] }], mapResize: [{
284
+ type: Output
285
+ }], mapRemove: [{
286
+ type: Output
287
+ }], mapMouseDown: [{
288
+ type: Output
289
+ }], mapMouseUp: [{
290
+ type: Output
291
+ }], mapMouseMove: [{
292
+ type: Output
293
+ }], mapClick: [{
294
+ type: Output
295
+ }], mapDblClick: [{
296
+ type: Output
297
+ }], mapMouseOver: [{
298
+ type: Output
299
+ }], mapMouseOut: [{
300
+ type: Output
301
+ }], mapContextMenu: [{
302
+ type: Output
303
+ }], mapTouchStart: [{
304
+ type: Output
305
+ }], mapTouchEnd: [{
306
+ type: Output
307
+ }], mapTouchMove: [{
308
+ type: Output
309
+ }], mapTouchCancel: [{
310
+ type: Output
311
+ }], mapWheel: [{
312
+ type: Output
313
+ }], moveStart: [{
314
+ type: Output
315
+ }], move: [{
316
+ type: Output
317
+ }], moveEnd: [{
318
+ type: Output
319
+ }], mapDragStart: [{
320
+ type: Output
321
+ }], mapDrag: [{
322
+ type: Output
323
+ }], mapDragEnd: [{
324
+ type: Output
325
+ }], zoomStart: [{
326
+ type: Output
327
+ }], zoomEvt: [{
328
+ type: Output
329
+ }], zoomEnd: [{
330
+ type: Output
331
+ }], rotateStart: [{
332
+ type: Output
333
+ }], rotate: [{
334
+ type: Output
335
+ }], rotateEnd: [{
336
+ type: Output
337
+ }], pitchStart: [{
338
+ type: Output
339
+ }], pitchEvt: [{
340
+ type: Output
341
+ }], pitchEnd: [{
342
+ type: Output
343
+ }], boxZoomStart: [{
344
+ type: Output
345
+ }], boxZoomEnd: [{
346
+ type: Output
347
+ }], boxZoomCancel: [{
348
+ type: Output
349
+ }], webGlContextLost: [{
350
+ type: Output
351
+ }], webGlContextRestored: [{
352
+ type: Output
353
+ }], mapLoad: [{
354
+ type: Output
355
+ }], mapCreate: [{
356
+ type: Output
357
+ }], idle: [{
358
+ type: Output
359
+ }], render: [{
360
+ type: Output
361
+ }], mapError: [{
362
+ type: Output
363
+ }], data: [{
364
+ type: Output
365
+ }], styleData: [{
366
+ type: Output
367
+ }], sourceData: [{
368
+ type: Output
369
+ }], dataLoading: [{
370
+ type: Output
371
+ }], styleDataLoading: [{
372
+ type: Output
373
+ }], sourceDataLoading: [{
374
+ type: Output
375
+ }], styleImageMissing: [{
376
+ type: Output
377
+ }], mapContainer: [{
378
+ type: ViewChild,
379
+ args: ['container', { static: true }]
380
+ }] } });
381
+ //# sourceMappingURL=map.component.js.map