@openremote/or-map 1.0.2-alpha → 1.2.0-snapshot.20240512160221

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 (58) hide show
  1. package/@types/maplibre-gl-geocoder.d.ts +2 -0
  2. package/README.md +94 -27
  3. package/lib/index.d.ts +115 -0
  4. package/lib/index.js +41 -0
  5. package/lib/index.js.map +1 -0
  6. package/lib/mapwidget.d.ts +94 -0
  7. package/lib/mapwidget.js +1 -0
  8. package/lib/mapwidget.js.map +1 -0
  9. package/lib/markers/or-map-marker-asset.d.ts +78 -0
  10. package/lib/markers/or-map-marker-asset.js +1 -0
  11. package/lib/markers/or-map-marker-asset.js.map +1 -0
  12. package/{dist → lib}/markers/or-map-marker.d.ts +30 -19
  13. package/lib/markers/or-map-marker.js +70 -0
  14. package/lib/markers/or-map-marker.js.map +1 -0
  15. package/lib/or-map-asset-card.d.ts +70 -0
  16. package/lib/or-map-asset-card.js +18 -0
  17. package/lib/or-map-asset-card.js.map +1 -0
  18. package/lib/style.d.ts +4 -0
  19. package/lib/style.js +230 -0
  20. package/lib/style.js.map +1 -0
  21. package/lib/util.d.ts +19 -0
  22. package/lib/util.js +1 -0
  23. package/lib/util.js.map +1 -0
  24. package/package.json +28 -17
  25. package/@types/mapbox.js.d.ts +0 -139
  26. package/dist/index.d.ts +0 -41
  27. package/dist/index.js +0 -196
  28. package/dist/index.js.map +0 -1
  29. package/dist/mapwidget.d.ts +0 -31
  30. package/dist/mapwidget.js +0 -262
  31. package/dist/mapwidget.js.map +0 -1
  32. package/dist/markers/or-map-marker-asset.d.ts +0 -33
  33. package/dist/markers/or-map-marker-asset.js +0 -76
  34. package/dist/markers/or-map-marker-asset.js.map +0 -1
  35. package/dist/markers/or-map-marker.js +0 -247
  36. package/dist/markers/or-map-marker.js.map +0 -1
  37. package/dist/util.d.ts +0 -6
  38. package/dist/util.js +0 -53
  39. package/dist/util.js.map +0 -1
  40. package/src/index.d.ts +0 -27
  41. package/src/index.js +0 -121
  42. package/src/index.js.map +0 -1
  43. package/src/index.ts +0 -226
  44. package/src/mapwidget.d.ts +0 -21
  45. package/src/mapwidget.js +0 -164
  46. package/src/mapwidget.js.map +0 -1
  47. package/src/mapwidget.ts +0 -302
  48. package/src/markers/or-map-marker-asset.d.ts +0 -17
  49. package/src/markers/or-map-marker-asset.js +0 -87
  50. package/src/markers/or-map-marker-asset.js.map +0 -1
  51. package/src/markers/or-map-marker-asset.ts +0 -79
  52. package/src/markers/or-map-marker.d.ts +0 -23
  53. package/src/markers/or-map-marker.js +0 -125
  54. package/src/markers/or-map-marker.js.map +0 -1
  55. package/src/markers/or-map-marker.ts +0 -270
  56. package/src/util.ts +0 -64
  57. package/tsconfig.json +0 -15
  58. package/tsconfig.tsbuildinfo +0 -10143
package/dist/mapwidget.js DELETED
@@ -1,262 +0,0 @@
1
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
- return new (P || (P = Promise))(function (resolve, reject) {
3
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
4
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
5
- function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }
6
- step((generator = generator.apply(thisArg, _arguments || [])).next());
7
- });
8
- };
9
- import openremote from "@openremote/core";
10
- import rest from "@openremote/rest";
11
- import { Marker as MarkerGL } from "mapbox-gl";
12
- import L from "mapbox.js";
13
- import { Type } from "./index";
14
- import { getLatLng, getLatLngBounds, getLngLat } from "./util";
15
- export class MapWidget {
16
- constructor(type, styleParent, mapContainer) {
17
- this._loaded = false;
18
- this._markersJs = new Map();
19
- this._markersGl = new Map();
20
- this._clickHandlers = new Map();
21
- this._type = type;
22
- this._styleParent = styleParent;
23
- this._mapContainer = mapContainer;
24
- }
25
- setCenter(center) {
26
- this._center = getLngLat(center);
27
- switch (this._type) {
28
- case Type.RASTER:
29
- if (this._mapJs) {
30
- const latLng = getLatLng(this._center) || (this._viewSettings ? getLatLng(this._viewSettings.center) : undefined);
31
- if (latLng) {
32
- this._mapJs.setView(latLng, undefined, { pan: { animate: false }, zoom: { animate: false } });
33
- }
34
- }
35
- break;
36
- case Type.VECTOR:
37
- if (this._mapGl && this._center) {
38
- this._mapGl.setCenter(this._center);
39
- }
40
- break;
41
- }
42
- return this;
43
- }
44
- setZoom(zoom) {
45
- this._zoom = zoom;
46
- switch (this._type) {
47
- case Type.RASTER:
48
- if (this._mapJs && this._zoom) {
49
- this._mapJs.setZoom(this._zoom, { animate: false });
50
- }
51
- break;
52
- case Type.VECTOR:
53
- if (this._mapGl && this._zoom) {
54
- this._mapGl.setZoom(this._zoom);
55
- }
56
- break;
57
- }
58
- return this;
59
- }
60
- load() {
61
- return __awaiter(this, void 0, void 0, function* () {
62
- if (this._loaded) {
63
- return;
64
- }
65
- if (this._type === Type.RASTER) {
66
- if (!MapWidget._mapboxJsStyle) {
67
- // @ts-ignore
68
- MapWidget._mapboxJsStyle = yield import(/* webpackChunkName: "mapbox-js-css" */ "mapbox.js/dist/mapbox.css");
69
- }
70
- // Add style to shadow root
71
- const style = document.createElement("style");
72
- style.id = "mapboxJsStyle";
73
- style.textContent = MapWidget._mapboxJsStyle.default.toString();
74
- this._styleParent.appendChild(style);
75
- const settingsResponse = yield rest.api.MapResource.getSettingsJs();
76
- const settings = settingsResponse.data;
77
- // Load options for current realm or fallback to default if exist
78
- this._viewSettings = settings.options ? settings.options[openremote.getRealm() || "default"] ? settings.options[openremote.getRealm() || "default"] : settings.options.default : null;
79
- let options;
80
- if (this._viewSettings) {
81
- options = {};
82
- // JS zoom is out compared to GL
83
- options.zoom = this._viewSettings.zoom ? this._viewSettings.zoom + 1 : undefined;
84
- options.maxZoom = this._viewSettings.maxZoom ? this._viewSettings.maxZoom - 1 : undefined;
85
- options.minZoom = this._viewSettings.minZoom ? this._viewSettings.minZoom + 1 : undefined;
86
- options.boxZoom = this._viewSettings.boxZoom;
87
- // JS uses lat then lng unlike GL
88
- if (this._viewSettings.bounds) {
89
- options.maxBounds = getLatLngBounds(this._viewSettings.bounds);
90
- }
91
- if (this._viewSettings.center) {
92
- options.center = getLatLng(this._viewSettings.center);
93
- }
94
- if (this._center) {
95
- options.center = getLatLng(this._center);
96
- }
97
- }
98
- this._mapJs = L.mapbox.map(this._mapContainer, settings, options);
99
- if (options && options.maxBounds) {
100
- const minZoom = this._mapJs.getBoundsZoom(options.maxBounds, true);
101
- if (!options.minZoom || options.minZoom < minZoom) {
102
- this._mapJs.setMinZoom(minZoom);
103
- }
104
- }
105
- }
106
- else {
107
- if (!MapWidget._mapboxGlStyle) {
108
- // @ts-ignore
109
- MapWidget._mapboxGlStyle = yield import(/* webpackChunkName: "mapbox-gl-css" */ "mapbox-gl/dist/mapbox-gl.css");
110
- }
111
- // Add style to shadow root
112
- const style = document.createElement("style");
113
- style.id = "mapboxGlStyle";
114
- style.textContent = MapWidget._mapboxGlStyle.default.toString();
115
- this._styleParent.appendChild(style);
116
- const map = yield import(/* webpackChunkName: "mapbox-gl" */ "mapbox-gl");
117
- const settingsResponse = yield rest.api.MapResource.getSettings();
118
- const settings = settingsResponse.data;
119
- // Load options for current realm or fallback to default if exist
120
- this._viewSettings = settings.options ? settings.options[openremote.getRealm() || "default"] ? settings.options[openremote.getRealm() || "default"] : settings.options.default : null;
121
- const options = {
122
- attributionControl: true,
123
- container: this._mapContainer,
124
- style: settings,
125
- transformRequest: (url, resourceType) => {
126
- return {
127
- headers: { Authorization: openremote.getAuthorizationHeader() },
128
- url
129
- };
130
- }
131
- };
132
- if (this._viewSettings) {
133
- options.minZoom = this._viewSettings.minZoom;
134
- options.maxZoom = this._viewSettings.maxZoom;
135
- options.maxBounds = this._viewSettings.bounds;
136
- options.boxZoom = this._viewSettings.boxZoom;
137
- options.zoom = this._viewSettings.zoom;
138
- options.center = this._viewSettings.center;
139
- }
140
- if (this._center) {
141
- options.center = this._center;
142
- }
143
- this._mapGl = new map.Map(options);
144
- }
145
- this._loaded = true;
146
- });
147
- }
148
- addMarker(marker) {
149
- if (marker.lat && marker.lng) {
150
- this._updateMarkerElement(marker, true);
151
- }
152
- }
153
- removeMarker(marker) {
154
- this._updateMarkerElement(marker, false);
155
- }
156
- onMarkerChanged(marker, prop) {
157
- if (!this._loaded) {
158
- return;
159
- }
160
- switch (prop) {
161
- case "lat":
162
- case "lng":
163
- if (marker.lat && marker.lng) {
164
- if (marker._actualMarkerElement) {
165
- this._updateMarkerPosition(marker);
166
- }
167
- else {
168
- this._updateMarkerElement(marker, true);
169
- }
170
- }
171
- else if (marker._actualMarkerElement) {
172
- this._updateMarkerElement(marker, false);
173
- }
174
- break;
175
- }
176
- }
177
- _updateMarkerPosition(marker) {
178
- switch (this._type) {
179
- case Type.RASTER:
180
- const m = this._markersJs.get(marker);
181
- if (m) {
182
- m.setLatLng([marker.lat, marker.lng]);
183
- }
184
- break;
185
- case Type.VECTOR:
186
- const mGl = this._markersGl.get(marker);
187
- if (mGl) {
188
- mGl.setLngLat([marker.lng, marker.lat]);
189
- }
190
- break;
191
- }
192
- }
193
- _updateMarkerElement(marker, doAdd) {
194
- switch (this._type) {
195
- case Type.RASTER:
196
- let m = this._markersJs.get(marker);
197
- if (m) {
198
- this._removeMarkerClickHandler(marker, marker.markerContainer);
199
- marker._actualMarkerElement = undefined;
200
- m.removeFrom(this._mapJs);
201
- this._markersJs.delete(marker);
202
- }
203
- if (doAdd) {
204
- const elem = marker._createMarkerElement();
205
- if (elem) {
206
- const icon = L.divIcon({ html: elem.outerHTML, className: "or-marker-raster" });
207
- m = L.marker([marker.lat, marker.lng], { icon: icon, clickable: marker.interactive });
208
- m.addTo(this._mapJs);
209
- marker._actualMarkerElement = m.getElement() ? m.getElement().firstElementChild : undefined;
210
- if (marker.interactive) {
211
- this._addMarkerClickHandler(marker, marker.markerContainer);
212
- }
213
- this._markersJs.set(marker, m);
214
- }
215
- }
216
- break;
217
- case Type.VECTOR:
218
- let mGl = this._markersGl.get(marker);
219
- if (mGl) {
220
- marker._actualMarkerElement = undefined;
221
- this._removeMarkerClickHandler(marker, mGl.getElement());
222
- mGl.remove();
223
- this._markersGl.delete(marker);
224
- }
225
- if (doAdd) {
226
- const elem = marker._createMarkerElement();
227
- if (elem) {
228
- mGl = new MarkerGL({
229
- element: elem,
230
- anchor: "top-left"
231
- })
232
- .setLngLat([marker.lng, marker.lat])
233
- .addTo(this._mapGl);
234
- this._markersGl.set(marker, mGl);
235
- marker._actualMarkerElement = mGl.getElement();
236
- if (marker.interactive) {
237
- this._addMarkerClickHandler(marker, mGl.getElement());
238
- }
239
- }
240
- }
241
- break;
242
- }
243
- }
244
- _addMarkerClickHandler(marker, elem) {
245
- if (elem) {
246
- const handler = (ev) => {
247
- ev.stopPropagation();
248
- marker._onClick(ev);
249
- };
250
- this._clickHandlers.set(marker, handler);
251
- elem.addEventListener("click", handler);
252
- }
253
- }
254
- _removeMarkerClickHandler(marker, elem) {
255
- const handler = this._clickHandlers.get(marker);
256
- if (handler && elem) {
257
- elem.removeEventListener("click", handler);
258
- this._clickHandlers.delete(marker);
259
- }
260
- }
261
- }
262
- //# sourceMappingURL=mapwidget.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"mapwidget.js","sourceRoot":"","sources":["../src/mapwidget.ts"],"names":[],"mappings":"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"}
@@ -1,33 +0,0 @@
1
- import { PropertyValues } from "lit-element";
2
- import { OrMapMarker } from "./or-map-marker";
3
- import { AttributeEvent, GeoJSONPoint, AssetEvent } from "@openremote/model";
4
- declare const OrMapMarkerAsset_base: (new (...args: any[]) => {
5
- _connectRequested: boolean;
6
- _assetSubscriptionId?: string | undefined;
7
- _attributeSubscriptionId?: string | undefined;
8
- _assetIds?: string[] | undefined;
9
- _statusCallback: (status: import("@openremote/core/dist/event").EventProviderStatus) => void;
10
- connectedCallback(): void;
11
- disconnectedCallback(): void;
12
- connect(): void;
13
- _doConnect(): Promise<void>;
14
- disconnect(): void;
15
- _doDisconnect(): void;
16
- assetIds: string[] | undefined;
17
- _onEventProviderStatusChanged(status: import("@openremote/core/dist/event").EventProviderStatus): void;
18
- _onAttributeEvent(event: AttributeEvent): void;
19
- _onAssetEvent(event: AssetEvent): void;
20
- onAttributeEvent(event: AttributeEvent): void;
21
- onAssetEvent(event: AssetEvent): void;
22
- }) & typeof OrMapMarker;
23
- export declare class OrMapMarkerAsset extends OrMapMarkerAsset_base {
24
- asset?: string;
25
- assetTypeAsIcon: boolean;
26
- constructor();
27
- protected type: string | undefined;
28
- protected shouldUpdate(_changedProperties: PropertyValues): boolean;
29
- onAttributeEvent(event: AttributeEvent): void;
30
- onAssetEvent(event: AssetEvent): void;
31
- protected _updateLocation(location: GeoJSONPoint | null): void;
32
- }
33
- export {};
@@ -1,76 +0,0 @@
1
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
- return c > 3 && r && Object.defineProperty(target, key, r), r;
6
- };
7
- import { customElement, property } from "lit-element";
8
- import { OrMapMarker } from "./or-map-marker";
9
- import { AttributeType, AssetType } from "@openremote/model";
10
- import { subscribe } from "@openremote/core/dist/asset-mixin";
11
- import openremote, { AssetModelUtil } from "@openremote/core";
12
- let OrMapMarkerAsset = class OrMapMarkerAsset extends subscribe(openremote)(OrMapMarker) {
13
- constructor() {
14
- super();
15
- this.assetTypeAsIcon = true;
16
- this.visible = false;
17
- }
18
- set type(type) {
19
- if (!type) {
20
- this.visible = false;
21
- return;
22
- }
23
- if (this.assetTypeAsIcon) {
24
- const descriptor = AssetModelUtil.getAssetDescriptor(type);
25
- const icon = descriptor ? descriptor.icon : AssetType.THING.icon;
26
- this.icon = icon;
27
- }
28
- this.visible = true;
29
- }
30
- shouldUpdate(_changedProperties) {
31
- if (_changedProperties.has("asset")) {
32
- this.lat = undefined;
33
- this.lng = undefined;
34
- this.type = undefined;
35
- this.assetIds = this.asset && this.asset.length > 0 ? [this.asset] : undefined;
36
- if (Object.keys(_changedProperties).length === 1) {
37
- return false;
38
- }
39
- }
40
- return super.shouldUpdate(_changedProperties);
41
- }
42
- onAttributeEvent(event) {
43
- if (event.attributeState.attributeRef.attributeName !== AttributeType.LOCATION.attributeName) {
44
- return;
45
- }
46
- this._updateLocation(event.attributeState.value);
47
- }
48
- onAssetEvent(event) {
49
- switch (event.cause) {
50
- case "READ" /* READ */:
51
- const attr = event.asset && event.asset.attributes && event.asset.attributes.hasOwnProperty("location") ? event.asset.attributes.location : null;
52
- this._updateLocation(attr ? attr.value : null);
53
- case "CREATE" /* CREATE */:
54
- case "UPDATE" /* UPDATE */:
55
- this.type = event.asset.type;
56
- break;
57
- case "DELETE" /* DELETE */:
58
- this.type = undefined;
59
- this.lat = undefined;
60
- this.lng = undefined;
61
- break;
62
- }
63
- }
64
- _updateLocation(location) {
65
- this.lat = location && location.coordinates ? location.coordinates[1] : undefined;
66
- this.lng = location && location.coordinates ? location.coordinates[0] : undefined;
67
- }
68
- };
69
- __decorate([
70
- property({ type: String, reflect: true, attribute: true })
71
- ], OrMapMarkerAsset.prototype, "asset", void 0);
72
- OrMapMarkerAsset = __decorate([
73
- customElement("or-map-marker-asset")
74
- ], OrMapMarkerAsset);
75
- export { OrMapMarkerAsset };
76
- //# sourceMappingURL=or-map-marker-asset.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"or-map-marker-asset.js","sourceRoot":"","sources":["../../src/markers/or-map-marker-asset.ts"],"names":[],"mappings":"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"}
@@ -1,247 +0,0 @@
1
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
- return c > 3 && r && Object.defineProperty(target, key, r), r;
6
- };
7
- var OrMapMarker_1;
8
- import { css, customElement, LitElement, property, query, html } from "lit-element";
9
- export var OrMapMarkerEvent;
10
- (function (OrMapMarkerEvent) {
11
- OrMapMarkerEvent["CLICKED"] = "or-map-marker-clicked";
12
- OrMapMarkerEvent["CHANGED"] = "or-map-marker-changed";
13
- })(OrMapMarkerEvent || (OrMapMarkerEvent = {}));
14
- export class OrMapMarkerChangedEvent extends CustomEvent {
15
- constructor(marker, prop) {
16
- super(OrMapMarkerEvent.CHANGED, {
17
- detail: {
18
- marker: marker,
19
- property: prop
20
- },
21
- bubbles: true,
22
- composed: true
23
- });
24
- }
25
- }
26
- export class OrMapMarkerClickedEvent extends CustomEvent {
27
- constructor(marker) {
28
- super(OrMapMarkerEvent.CLICKED, {
29
- detail: {
30
- marker: marker
31
- },
32
- bubbles: true,
33
- composed: true
34
- });
35
- }
36
- }
37
- export const MarkerStyle = css `
38
- .or-map-marker {
39
- position: absolute; /* This makes mapboxJS behave like mapboxGL */
40
- }
41
-
42
- .marker-container {
43
- position: relative;
44
- transform: var(--or-map-marker-transform, translate(-24px, -45px));
45
- cursor: pointer;
46
- --or-icon-width: var(--or-map-marker-width, 48px);
47
- --or-icon-height: var(--or-map-marker-height, 48px);
48
- --or-icon-fill-color: var(--or-map-marker-fill, #1D5632);
49
- }
50
-
51
- .or-map-marker.interactive .marker-container {
52
- pointer-events: all;
53
- }
54
-
55
- .or-map-marker-default.interactive .marker-container {
56
- pointer-events: none;
57
- --or-icon-pointer-events: visible;
58
- }
59
-
60
- .or-map-marker .marker-icon {
61
- position: absolute;
62
- left: 50%;
63
- top: 50%;
64
- z-index: 1000;
65
- --or-icon-fill-color: var(--or-map-marker-icon-fill, #FFF);
66
- --or-icon-width: var(--or-map-marker-icon-width, 24px);
67
- --or-icon-height: var(--or-map-marker-icon-height, 24px);
68
- transform: var(--or-map-marker-icon-transform, translate(-50%, -19px));
69
- }
70
- `;
71
- /**
72
- * Base class for all map markers.
73
- *
74
- * This component doesn't directly render anything instead it generates DOM that can be added to the map component
75
- */
76
- let OrMapMarker = OrMapMarker_1 = class OrMapMarker extends LitElement {
77
- /**
78
- * Base class for all map markers.
79
- *
80
- * This component doesn't directly render anything instead it generates DOM that can be added to the map component
81
- */
82
- constructor() {
83
- super(...arguments);
84
- this.visible = true;
85
- this.interactive = true;
86
- this.active = false;
87
- }
88
- get markerContainer() {
89
- if (this._actualMarkerElement) {
90
- return this._actualMarkerElement.firstElementChild;
91
- }
92
- }
93
- _onClick(e) {
94
- this.dispatchEvent(new OrMapMarkerClickedEvent(this));
95
- }
96
- _createMarkerElement() {
97
- const markerElem = document.createElement("div");
98
- const markerContainerElem = document.createElement("div");
99
- markerElem.appendChild(markerContainerElem);
100
- this.addMarkerClassNames(markerElem);
101
- this.addMarkerContainerClassNames(markerContainerElem);
102
- let content = this.createMarkerContent();
103
- if (!content) {
104
- // Append default marker
105
- markerElem.classList.add("or-map-marker-default");
106
- content = this.createDefaultMarkerContent();
107
- }
108
- markerContainerElem.appendChild(content);
109
- this.updateInteractive(markerElem);
110
- this.updateVisibility(markerElem);
111
- this.updateActive(markerElem);
112
- return markerElem;
113
- }
114
- /**
115
- * Override in sub types to customise the look of the marker. If undefined returned then a default marker will
116
- * be used instead.
117
- */
118
- createMarkerContent() {
119
- // Append child elements
120
- let hasChildren = false;
121
- let container = document.createElement("div");
122
- if (this._slot) {
123
- this._slot.assignedNodes({ flatten: true }).forEach((child) => {
124
- if (child instanceof HTMLElement) {
125
- container.appendChild(child.cloneNode(true));
126
- hasChildren = true;
127
- }
128
- });
129
- }
130
- if (!hasChildren) {
131
- return;
132
- }
133
- return container;
134
- }
135
- shouldUpdate(_changedProperties) {
136
- if (_changedProperties.has("icon")) {
137
- this.refreshMarkerContent();
138
- }
139
- if (_changedProperties.has("visible")) {
140
- this.updateVisibility(this._actualMarkerElement);
141
- }
142
- if (_changedProperties.has("interactive")) {
143
- this.updateInteractive(this._actualMarkerElement);
144
- }
145
- if (_changedProperties.has("active")) {
146
- this.updateActive(this._actualMarkerElement);
147
- }
148
- _changedProperties.forEach((oldValue, prop) => this._raisePropertyChange(prop));
149
- return false;
150
- }
151
- updateVisibility(container) {
152
- if (container) {
153
- if (this.visible) {
154
- container.removeAttribute("hidden");
155
- }
156
- else {
157
- container.setAttribute("hidden", "true");
158
- }
159
- }
160
- }
161
- updateActive(container) {
162
- if (container) {
163
- if (this.active) {
164
- container.classList.add("active");
165
- }
166
- else {
167
- container.classList.remove("active");
168
- }
169
- }
170
- }
171
- updateInteractive(container) {
172
- if (container) {
173
- if (this.interactive) {
174
- container.classList.add("interactive");
175
- }
176
- else {
177
- container.classList.remove("interactive");
178
- }
179
- }
180
- }
181
- refreshMarkerContent() {
182
- if (this.markerContainer) {
183
- let content = this.createMarkerContent();
184
- if (!content) {
185
- // Append default marker
186
- this._actualMarkerElement.classList.add("or-map-marker-default");
187
- content = this.createDefaultMarkerContent();
188
- }
189
- else {
190
- this._actualMarkerElement.classList.remove("or-map-marker-default");
191
- }
192
- if (this.markerContainer.children.length > 0) {
193
- this.markerContainer.removeChild(this.markerContainer.children[0]);
194
- }
195
- this.markerContainer.appendChild(content);
196
- }
197
- }
198
- render() {
199
- return html `
200
- <slot></slot>
201
- `;
202
- }
203
- _raisePropertyChange(prop) {
204
- this.dispatchEvent(new OrMapMarkerChangedEvent(this, prop));
205
- }
206
- addMarkerClassNames(markerElement) {
207
- markerElement.classList.add("or-map-marker");
208
- }
209
- addMarkerContainerClassNames(markerContainer) {
210
- markerContainer.classList.add("marker-container");
211
- }
212
- createDefaultMarkerContent() {
213
- const div = document.createElement("div");
214
- div.innerHTML = OrMapMarker_1._defaultTemplate(this.icon);
215
- return div;
216
- }
217
- };
218
- OrMapMarker._defaultTemplate = (icon) => `
219
- <or-icon icon="or:marker"></or-icon>
220
- <or-icon class="marker-icon" icon="${icon || ""}"></or-icon>
221
- `;
222
- __decorate([
223
- property({ type: Number, reflect: true, attribute: true })
224
- ], OrMapMarker.prototype, "lat", void 0);
225
- __decorate([
226
- property({ type: Number, reflect: true })
227
- ], OrMapMarker.prototype, "lng", void 0);
228
- __decorate([
229
- property({ type: Boolean })
230
- ], OrMapMarker.prototype, "visible", void 0);
231
- __decorate([
232
- property({ type: String })
233
- ], OrMapMarker.prototype, "icon", void 0);
234
- __decorate([
235
- property({ type: Boolean })
236
- ], OrMapMarker.prototype, "interactive", void 0);
237
- __decorate([
238
- property({ type: Boolean })
239
- ], OrMapMarker.prototype, "active", void 0);
240
- __decorate([
241
- query("slot")
242
- ], OrMapMarker.prototype, "_slot", void 0);
243
- OrMapMarker = OrMapMarker_1 = __decorate([
244
- customElement("or-map-marker")
245
- ], OrMapMarker);
246
- export { OrMapMarker };
247
- //# sourceMappingURL=or-map-marker.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"or-map-marker.js","sourceRoot":"","sources":["../../src/markers/or-map-marker.ts"],"names":[],"mappings":"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"}
package/dist/util.d.ts DELETED
@@ -1,6 +0,0 @@
1
- import { LngLat, LngLatBounds, LngLatBoundsLike, LngLatLike } from "mapbox-gl";
2
- import { LatLng, LatLngBounds } from "mapbox.js";
3
- export declare function getLngLat(lngLatLike?: LngLatLike): LngLat | undefined;
4
- export declare function getLngLatBounds(lngLatBoundsLike?: LngLatBoundsLike): LngLatBounds | undefined;
5
- export declare function getLatLng(lngLatLike?: LngLatLike): LatLng | undefined;
6
- export declare function getLatLngBounds(lngLatBoundsLike?: LngLatBoundsLike): LatLngBounds | undefined;