@mapvx/web-js 1.2.1 → 1.3.0-dev.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 (95) hide show
  1. package/README.md +2 -0
  2. package/dist/cjs/controllers/routeController.js +19 -19
  3. package/dist/cjs/controllers/routeController.js.map +1 -1
  4. package/dist/cjs/domain/models/categories.js +23 -10
  5. package/dist/cjs/domain/models/categories.js.map +1 -1
  6. package/dist/cjs/domain/models/mapConfig.js +10 -1
  7. package/dist/cjs/domain/models/mapConfig.js.map +1 -1
  8. package/dist/cjs/domain/models/marker.js +86 -80
  9. package/dist/cjs/domain/models/marker.js.map +1 -1
  10. package/dist/cjs/domain/models/routeConfiguration.js +3 -1
  11. package/dist/cjs/domain/models/routeConfiguration.js.map +1 -1
  12. package/dist/cjs/index.js +17 -12
  13. package/dist/cjs/index.js.map +1 -1
  14. package/dist/cjs/logger/logger.js +13 -8
  15. package/dist/cjs/logger/logger.js.map +1 -1
  16. package/dist/cjs/logger/rollbar.js +11 -6
  17. package/dist/cjs/logger/rollbar.js.map +1 -1
  18. package/dist/cjs/map/map.js +549 -28
  19. package/dist/cjs/map/map.js.map +1 -1
  20. package/dist/cjs/map/mapInteractionOptions.js +56 -0
  21. package/dist/cjs/map/mapInteractionOptions.js.map +1 -0
  22. package/dist/cjs/repository/repository.js +25 -26
  23. package/dist/cjs/repository/repository.js.map +1 -1
  24. package/dist/cjs/repository/requester.js +71 -91
  25. package/dist/cjs/repository/requester.js.map +1 -1
  26. package/dist/cjs/sdk.js +18 -0
  27. package/dist/cjs/sdk.js.map +1 -1
  28. package/dist/cjs/utils/3d.js +12 -0
  29. package/dist/cjs/utils/3d.js.map +1 -0
  30. package/dist/cjs/utils/semaphore.js +143 -0
  31. package/dist/cjs/utils/semaphore.js.map +1 -0
  32. package/dist/es/controllers/routeController.d.ts.map +1 -1
  33. package/dist/es/controllers/routeController.js +19 -19
  34. package/dist/es/controllers/routeController.js.map +1 -1
  35. package/dist/es/domain/models/categories.d.ts +34 -10
  36. package/dist/es/domain/models/categories.d.ts.map +1 -1
  37. package/dist/es/domain/models/categories.js +21 -9
  38. package/dist/es/domain/models/categories.js.map +1 -1
  39. package/dist/es/domain/models/configuration.d.ts +8 -0
  40. package/dist/es/domain/models/configuration.d.ts.map +1 -1
  41. package/dist/es/domain/models/mapConfig.d.ts +129 -3
  42. package/dist/es/domain/models/mapConfig.d.ts.map +1 -1
  43. package/dist/es/domain/models/mapConfig.js +9 -0
  44. package/dist/es/domain/models/mapConfig.js.map +1 -1
  45. package/dist/es/domain/models/marker.d.ts +8 -0
  46. package/dist/es/domain/models/marker.d.ts.map +1 -1
  47. package/dist/es/domain/models/marker.js +86 -80
  48. package/dist/es/domain/models/marker.js.map +1 -1
  49. package/dist/es/domain/models/routeConfiguration.d.ts +47 -0
  50. package/dist/es/domain/models/routeConfiguration.d.ts.map +1 -1
  51. package/dist/es/domain/models/routeConfiguration.js +3 -1
  52. package/dist/es/domain/models/routeConfiguration.js.map +1 -1
  53. package/dist/es/index.d.ts +13 -12
  54. package/dist/es/index.d.ts.map +1 -1
  55. package/dist/es/index.js +8 -6
  56. package/dist/es/index.js.map +1 -1
  57. package/dist/es/logger/logger.d.ts.map +1 -1
  58. package/dist/es/logger/logger.js +13 -8
  59. package/dist/es/logger/logger.js.map +1 -1
  60. package/dist/es/logger/rollbar.d.ts.map +1 -1
  61. package/dist/es/logger/rollbar.js +11 -6
  62. package/dist/es/logger/rollbar.js.map +1 -1
  63. package/dist/es/map/map.d.ts +106 -1
  64. package/dist/es/map/map.d.ts.map +1 -1
  65. package/dist/es/map/map.js +551 -30
  66. package/dist/es/map/map.js.map +1 -1
  67. package/dist/es/map/mapInteractionOptions.d.ts +37 -0
  68. package/dist/es/map/mapInteractionOptions.d.ts.map +1 -0
  69. package/dist/es/map/mapInteractionOptions.js +51 -0
  70. package/dist/es/map/mapInteractionOptions.js.map +1 -0
  71. package/dist/es/repository/repository.d.ts +0 -1
  72. package/dist/es/repository/repository.d.ts.map +1 -1
  73. package/dist/es/repository/repository.js +25 -26
  74. package/dist/es/repository/repository.js.map +1 -1
  75. package/dist/es/repository/requester.d.ts +12 -2
  76. package/dist/es/repository/requester.d.ts.map +1 -1
  77. package/dist/es/repository/requester.js +71 -91
  78. package/dist/es/repository/requester.js.map +1 -1
  79. package/dist/es/sdk.d.ts +2 -0
  80. package/dist/es/sdk.d.ts.map +1 -1
  81. package/dist/es/sdk.js +18 -0
  82. package/dist/es/sdk.js.map +1 -1
  83. package/dist/es/utils/3d.d.ts +2 -0
  84. package/dist/es/utils/3d.d.ts.map +1 -0
  85. package/dist/es/utils/3d.js +8 -0
  86. package/dist/es/utils/3d.js.map +1 -0
  87. package/dist/es/utils/semaphore.d.ts +70 -0
  88. package/dist/es/utils/semaphore.d.ts.map +1 -0
  89. package/dist/es/utils/semaphore.js +139 -0
  90. package/dist/es/utils/semaphore.js.map +1 -0
  91. package/dist/umd/index.js +154429 -2148
  92. package/dist/umd/index.js.map +1 -1
  93. package/dist/umd/styles.css +32 -14
  94. package/dist/umd/styles.css.map +1 -1
  95. package/package.json +19 -5
package/README.md CHANGED
@@ -200,6 +200,7 @@ const map = sdk.createMap(container, {
200
200
  ttlMs: 60 * 60 * 1000, // 1 hour
201
201
  persistToServiceWorker: true,
202
202
  preloadAdjacentZooms: false,
203
+ maxConcurrentTileFetches: 6, // Limit parallel tile requests (CDN / WAF friendly)
203
204
  },
204
205
 
205
206
  // Event callbacks
@@ -225,6 +226,7 @@ const map = sdk.createMap(container, {
225
226
  ttlMs: 30 * 60 * 1000, // Cache TTL in ms (default: 30 minutes)
226
227
  persistToServiceWorker: true, // Enable offline caching (default: true)
227
228
  preloadAdjacentZooms: false, // Preload nearby zoom levels (default: false)
229
+ maxConcurrentTileFetches: 6, // Parallelism for cached-tile fetches (default: 6)
228
230
  },
229
231
  })
230
232
 
@@ -2,9 +2,9 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.RouteController = void 0;
4
4
  const marker_1 = require("../domain/models/marker");
5
+ const routeInstance_1 = require("../domain/models/routeInstance");
5
6
  const nav_functions_1 = require("../utils/nav-functions");
6
7
  const utils_1 = require("../utils/utils");
7
- const routeInstance_1 = require("../domain/models/routeInstance");
8
8
  /**
9
9
  * Default padding values for auto-fit by place feature.
10
10
  * Used when padding is not explicitly provided in the animation configuration.
@@ -952,6 +952,24 @@ class RouteController {
952
952
  return;
953
953
  }
954
954
  }
955
+ if (step.startInsideFloor !== step.endInsideFloor) {
956
+ if (waitStartTime == null) {
957
+ instance.conditions.waitStartTime = timestamp;
958
+ instance.conditions.animationId = requestAnimationFrame((time) => this.animateStep(time, instance));
959
+ return;
960
+ }
961
+ if (timestamp - waitStartTime < changeFloorTime * 1000) {
962
+ instance.conditions.animationId = requestAnimationFrame((time) => this.animateStep(time, instance));
963
+ return;
964
+ }
965
+ else {
966
+ this.updatePlaceFloorForRouting(instance, step.endInsidePlace, step.endInsideFloor);
967
+ this.setMarkerLngLat(instance, step.endLocation);
968
+ instance.conditions.waitStartTime = undefined;
969
+ onFinish === null || onFinish === void 0 ? void 0 : onFinish(timestamp);
970
+ return;
971
+ }
972
+ }
955
973
  const distance = nav_functions_1.NavFunctions.distance(start, end);
956
974
  const speed = Math.max(step.distance / stepTime, minimumSpeed !== null && minimumSpeed !== void 0 ? minimumSpeed : 0);
957
975
  if (speed * progressInSeconds > distance) {
@@ -976,24 +994,6 @@ class RouteController {
976
994
  instance.conditions.animationId = requestAnimationFrame((time) => this.animateStep(time, instance));
977
995
  return;
978
996
  }
979
- else if (step.startInsideFloor !== step.endInsideFloor) {
980
- if (waitStartTime == null) {
981
- instance.conditions.waitStartTime = timestamp;
982
- instance.conditions.animationId = requestAnimationFrame((time) => this.animateStep(time, instance));
983
- return;
984
- }
985
- if (timestamp - waitStartTime < changeFloorTime * 1000) {
986
- instance.conditions.animationId = requestAnimationFrame((time) => this.animateStep(time, instance));
987
- return;
988
- }
989
- else {
990
- this.updatePlaceFloorForRouting(instance, step.endInsidePlace, step.endInsideFloor);
991
- this.setMarkerLngLat(instance, step.endLocation);
992
- instance.conditions.waitStartTime = undefined;
993
- onFinish === null || onFinish === void 0 ? void 0 : onFinish(timestamp);
994
- return;
995
- }
996
- }
997
997
  else {
998
998
  onFinish === null || onFinish === void 0 ? void 0 : onFinish(timestamp);
999
999
  return;
@@ -1 +1 @@
1
- {"version":3,"file":"routeController.js","sourceRoot":"","sources":["../../../src/controllers/routeController.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"routeController.js","sourceRoot":"","sources":["../../../src/controllers/routeController.ts"],"names":[],"mappings":"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"}
@@ -1,25 +1,38 @@
1
1
  "use strict";
2
2
  // Category.ts
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
- exports.isBasicWithIcon = exports.isBasicWithLogo = void 0;
4
+ exports.isBasicWithImageUrl = exports.isBasicWithIcon = exports.isBasicWithLogo = void 0;
5
5
  /**
6
- * Checks if the category is a basic with logo.
7
- * @group Utils
8
- * @param category
9
- * @returns
6
+ * Checks if the category carries a logo image.
7
+ * @group Utils
8
+ * @param category - The category to inspect.
9
+ * @returns `true` if the category exposes a non-empty `logo` URL, narrowing it to {@link BasicWithLogo}.
10
10
  */
11
11
  function isBasicWithLogo(category) {
12
- return category.logo !== undefined;
12
+ const input = category;
13
+ return input.logo != null && input.logo !== "";
13
14
  }
14
15
  exports.isBasicWithLogo = isBasicWithLogo;
15
16
  /**
16
- * Checks if the category is a basic with icon.
17
+ * Checks if the category carries a Font Awesome icon.
17
18
  * @group Utils
18
- * @param category
19
- * @returns
19
+ * @param category - The category to inspect.
20
+ * @returns `true` if the category exposes a non-empty `icon` name, narrowing it to {@link BasicWithIcon}.
20
21
  */
21
22
  function isBasicWithIcon(category) {
22
- return category.icon !== undefined;
23
+ const input = category;
24
+ return input.icon != null && input.icon !== "";
23
25
  }
24
26
  exports.isBasicWithIcon = isBasicWithIcon;
27
+ /**
28
+ * Checks if the category carries an image URL.
29
+ * @group Utils
30
+ * @param category - The category to inspect.
31
+ * @returns `true` if the category exposes a non-empty `imageUrl`, narrowing it to {@link BasicWithImageUrl}.
32
+ */
33
+ function isBasicWithImageUrl(category) {
34
+ const input = category;
35
+ return input.imageUrl != null && input.imageUrl !== "";
36
+ }
37
+ exports.isBasicWithImageUrl = isBasicWithImageUrl;
25
38
  //# sourceMappingURL=categories.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"categories.js","sourceRoot":"","sources":["../../../../src/domain/models/categories.ts"],"names":[],"mappings":";AAAA,cAAc;;;AAyKd;;;;;GAKG;AACH,SAAgB,eAAe,CAAC,QAAuB;IACrD,OAAQ,QAA0B,CAAC,IAAI,KAAK,SAAS,CAAA;AACvD,CAAC;AAFD,0CAEC;AAED;;;;;GAKG;AACH,SAAgB,eAAe,CAAC,QAAuB;IACrD,OAAQ,QAA0B,CAAC,IAAI,KAAK,SAAS,CAAA;AACvD,CAAC;AAFD,0CAEC"}
1
+ {"version":3,"file":"categories.js","sourceRoot":"","sources":["../../../../src/domain/models/categories.ts"],"names":[],"mappings":";AAAA,cAAc;;;AA0Ld;;;;;GAKG;AACH,SAAgB,eAAe,CAAC,QAAuB;IACrD,MAAM,KAAK,GAAG,QAAyB,CAAA;IACvC,OAAO,KAAK,CAAC,IAAI,IAAI,IAAI,IAAI,KAAK,CAAC,IAAI,KAAK,EAAE,CAAA;AAChD,CAAC;AAHD,0CAGC;AAED;;;;;GAKG;AACH,SAAgB,eAAe,CAAC,QAAuB;IACrD,MAAM,KAAK,GAAG,QAAyB,CAAA;IACvC,OAAO,KAAK,CAAC,IAAI,IAAI,IAAI,IAAI,KAAK,CAAC,IAAI,KAAK,EAAE,CAAA;AAChD,CAAC;AAHD,0CAGC;AAED;;;;;GAKG;AACH,SAAgB,mBAAmB,CAAC,QAAuB;IACzD,MAAM,KAAK,GAAG,QAA6B,CAAA;IAC3C,OAAO,KAAK,CAAC,QAAQ,IAAI,IAAI,IAAI,KAAK,CAAC,QAAQ,KAAK,EAAE,CAAA;AACxD,CAAC;AAHD,kDAGC"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DEFAULT_TILE_CACHE_CONFIG = void 0;
3
+ exports.MAPLIBRE_MAX_TILE_CACHE_HARD_CAP = exports.DEFAULT_TILE_CACHE_CONFIG = void 0;
4
4
  /**
5
5
  * Default values for tile cache configuration
6
6
  * @internal
@@ -11,5 +11,14 @@ exports.DEFAULT_TILE_CACHE_CONFIG = {
11
11
  ttlMs: 30 * 60 * 1000,
12
12
  persistToServiceWorker: true,
13
13
  preloadAdjacentZooms: false,
14
+ maxConcurrentTileFetches: 6,
14
15
  };
16
+ /**
17
+ * Hard cap for {@link MapTileCacheConfig.maxTiles}.
18
+ * Configurations above this (e.g. millions) are clamped to avoid memory pressure
19
+ * and excessive interaction with the tile CDN / service worker.
20
+ *
21
+ * @internal
22
+ */
23
+ exports.MAPLIBRE_MAX_TILE_CACHE_HARD_CAP = 100000;
15
24
  //# sourceMappingURL=mapConfig.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"mapConfig.js","sourceRoot":"","sources":["../../../../src/domain/models/mapConfig.ts"],"names":[],"mappings":";;;AAyDA;;;GAGG;AACU,QAAA,yBAAyB,GAAiC;IACrE,OAAO,EAAE,IAAI;IACb,QAAQ,EAAE,GAAG;IACb,KAAK,EAAE,EAAE,GAAG,EAAE,GAAG,IAAI;IACrB,sBAAsB,EAAE,IAAI;IAC5B,oBAAoB,EAAE,KAAK;CAC5B,CAAA"}
1
+ {"version":3,"file":"mapConfig.js","sourceRoot":"","sources":["../../../../src/domain/models/mapConfig.ts"],"names":[],"mappings":";;;AAqEA;;;GAGG;AACU,QAAA,yBAAyB,GAAiC;IACrE,OAAO,EAAE,IAAI;IACb,QAAQ,EAAE,GAAG;IACb,KAAK,EAAE,EAAE,GAAG,EAAE,GAAG,IAAI;IACrB,sBAAsB,EAAE,IAAI;IAC5B,oBAAoB,EAAE,KAAK;IAC3B,wBAAwB,EAAE,CAAC;CAC5B,CAAA;AAED;;;;;;GAMG;AACU,QAAA,gCAAgC,GAAG,MAAO,CAAA"}
@@ -48,84 +48,88 @@ class MarkerUtils {
48
48
  * ```
49
49
  */
50
50
  static createMarkerElement(marker) {
51
- var _a, _b, _c, _d;
52
51
  const markerContainer = document.createElement("div");
53
- // Configure specific marker dimensions
54
- const iconWidth = (_b = (_a = marker.iconProperties) === null || _a === void 0 ? void 0 : _a.width) !== null && _b !== void 0 ? _b : 40;
55
- const iconHeight = (_d = (_c = marker.iconProperties) === null || _c === void 0 ? void 0 : _c.height) !== null && _d !== void 0 ? _d : 40;
56
- // Apply base class
57
52
  markerContainer.className = "mapvx-marker";
58
- // Configure classes and dimensions based on text presence
59
- if (marker.text) {
60
- // If text exists, adjust layout according to position
61
- switch (marker.textPosition) {
62
- case TextPosition.top:
63
- case TextPosition.bottom:
64
- markerContainer.classList.add("text-column");
65
- markerContainer.style.width = `${Math.max(iconWidth, 200)}px`;
66
- markerContainer.style.height = "auto";
67
- break;
68
- case TextPosition.left:
69
- case TextPosition.right:
70
- default:
71
- markerContainer.classList.add("text-row");
72
- markerContainer.style.width = "auto";
73
- markerContainer.style.height = `${iconHeight}px`;
74
- break;
75
- }
53
+ this.applyContainerLayout(markerContainer, marker);
54
+ for (const child of this.createMarkerChildren(marker)) {
55
+ markerContainer.appendChild(child);
56
+ }
57
+ return markerContainer;
58
+ }
59
+ /**
60
+ * Applies the marker container's own classes and box size from a config.
61
+ * Shared by {@link createMarkerElement} and {@link MarkerAttribute.updateIcon}
62
+ * so create and update stay in sync (single source of truth for which state
63
+ * classes exist and how the anchored box is sized). It is idempotent, so it
64
+ * also resets stale state when reused to update an existing element.
65
+ *
66
+ * @param container - The `.mapvx-marker` element to configure
67
+ * @param marker - Marker configuration
68
+ */
69
+ static applyContainerLayout(container, marker) {
70
+ var _a, _b, _c, _d;
71
+ // Reset the state classes we own (no-op on a fresh element).
72
+ container.classList.remove("no-text", "interactive");
73
+ // The container box equals the icon box so the out-of-flow label never
74
+ // displaces the icon from the coordinate MapLibre anchors. A caller-
75
+ // provided `element` owns its own size, so we let the box size to it.
76
+ if (marker.element) {
77
+ container.style.width = "";
78
+ container.style.height = "";
76
79
  }
77
80
  else {
78
- // No text, use fixed icon dimensions as in official example
79
- markerContainer.classList.add("no-text");
80
- markerContainer.style.width = `${iconWidth}px`;
81
- markerContainer.style.height = `${iconHeight}px`;
81
+ const iconWidth = (_b = (_a = marker.iconProperties) === null || _a === void 0 ? void 0 : _a.width) !== null && _b !== void 0 ? _b : 40;
82
+ const iconHeight = (_d = (_c = marker.iconProperties) === null || _c === void 0 ? void 0 : _c.height) !== null && _d !== void 0 ? _d : 40;
83
+ container.style.width = `${iconWidth}px`;
84
+ container.style.height = `${iconHeight}px`;
82
85
  }
83
- markerContainer.addEventListener("click", () => {
84
- var _a;
85
- (_a = marker.onClick) === null || _a === void 0 ? void 0 : _a.call(marker);
86
- });
87
- if (marker.element) {
88
- markerContainer.appendChild(marker.element);
89
- return this.setAndCreateText(marker, markerContainer, `${iconHeight}px`, `${iconWidth}px`);
86
+ if (!marker.text) {
87
+ container.classList.add("no-text");
88
+ }
89
+ // Only flag the marker interactive when it actually handles clicks: this
90
+ // flips the out-of-flow label's pointer-events to auto (see styles.css)
91
+ // so the label is hit-testable, while non-clickable labels stay
92
+ // click-through and never block the map.
93
+ if (marker.onClick) {
94
+ container.classList.add("interactive");
90
95
  }
91
- // Create elements in correct order according to textPosition
92
- const iconElement = this.createIconElement(marker, iconWidth, iconHeight);
93
- const textElement = marker.text
94
- ? this.createTextContainer(typeof marker.text === "string"
95
- ? this.createTextElement(marker.text, marker.textProperties)
96
- : marker.text, marker.textPosition)
97
- : null;
98
- // Add elements in correct order
99
- if (marker.textPosition === TextPosition.top || marker.textPosition === TextPosition.left) {
100
- if (textElement)
101
- markerContainer.appendChild(textElement);
102
- markerContainer.appendChild(iconElement);
96
+ }
97
+ /**
98
+ * Builds the in-order children for a marker container: the icon (or the
99
+ * caller-provided element) followed by the optional out-of-flow label. DOM
100
+ * order is irrelevant for placement — the .text-container position classes
101
+ * (top/bottom/left/right) lay the label out around the icon.
102
+ *
103
+ * @param marker - Marker configuration
104
+ * @returns The child elements to append to the container
105
+ */
106
+ static createMarkerChildren(marker) {
107
+ var _a, _b, _c, _d;
108
+ const children = [];
109
+ if (marker.element) {
110
+ children.push(marker.element);
103
111
  }
104
112
  else {
105
- markerContainer.appendChild(iconElement);
106
- if (textElement)
107
- markerContainer.appendChild(textElement);
113
+ const iconWidth = (_b = (_a = marker.iconProperties) === null || _a === void 0 ? void 0 : _a.width) !== null && _b !== void 0 ? _b : 40;
114
+ const iconHeight = (_d = (_c = marker.iconProperties) === null || _c === void 0 ? void 0 : _c.height) !== null && _d !== void 0 ? _d : 40;
115
+ children.push(this.createIconElement(marker, iconWidth, iconHeight));
108
116
  }
109
- return markerContainer;
117
+ if (marker.text) {
118
+ children.push(this.buildTextContainer(marker));
119
+ }
120
+ return children;
110
121
  }
111
122
  /**
112
- * Sets up text positioning and styling for the marker.
123
+ * Builds the positioned label container for a marker.
113
124
  *
114
- * @param markerConfig - Configuration object containing text properties
115
- * @param container - Container element where text will be added
116
- * @param iconHeight - Height of the icon for positioning calculations
117
- * @param iconWidth - Width of the icon for positioning calculations
118
- * @returns Container element with properly positioned text
125
+ * @param marker - Marker configuration; `text` is assumed to be set
126
+ * @returns The `.text-container` element ready to append
119
127
  */
120
- static setAndCreateText(markerConfig, container, iconHeight, iconWidth) {
121
- if (markerConfig.text) {
122
- const textElement = typeof markerConfig.text === "string"
123
- ? this.createTextElement(markerConfig.text, markerConfig.textProperties)
124
- : markerConfig.text;
125
- const textContainer = this.createTextContainer(textElement, markerConfig.textPosition);
126
- container.appendChild(textContainer);
127
- }
128
- return container;
128
+ static buildTextContainer(marker) {
129
+ const textElement = typeof marker.text === "string"
130
+ ? this.createTextElement(marker.text, marker.textProperties)
131
+ : marker.text;
132
+ return this.createTextContainer(textElement, marker.textPosition);
129
133
  }
130
134
  /**
131
135
  * Creates an icon element with proper styling.
@@ -158,7 +162,8 @@ class MarkerUtils {
158
162
  }
159
163
  /**
160
164
  * Creates a text container with proper positioning using CSS classes.
161
- * Uses natural block/flex layout without absolute positioning.
165
+ * The container is absolutely positioned (out of flow) so the label
166
+ * never grows the marker's anchored box.
162
167
  *
163
168
  * @param textElement - The text element to contain
164
169
  * @param textPosition - Desired position relative to the icon
@@ -280,6 +285,10 @@ class MarkerAttribute extends maplibre_gl_1.Marker {
280
285
  anchor: (_a = markerConfig.anchor) !== null && _a !== void 0 ? _a : "center",
281
286
  offset: [0, 0],
282
287
  });
288
+ // Route clicks through an instance-level handler so the latest onClick is
289
+ // always invoked, even after updateIcon replaces the marker content.
290
+ this._userOnClick = markerConfig.onClick;
291
+ this._element.addEventListener("click", () => { var _a; return (_a = this._userOnClick) === null || _a === void 0 ? void 0 : _a.call(this); });
283
292
  this.setLngLat([markerConfig.coordinate.lng, markerConfig.coordinate.lat]);
284
293
  this.setRotationAlignment((_b = markerConfig.rotationAlignment) !== null && _b !== void 0 ? _b : "viewport");
285
294
  this.setPitchAlignment("viewport");
@@ -320,20 +329,17 @@ class MarkerAttribute extends maplibre_gl_1.Marker {
320
329
  * ```
321
330
  */
322
331
  updateIcon(marker) {
323
- var _a, _b;
324
- if (marker.element) {
325
- this._element.innerHTML = "";
326
- this._element.appendChild(marker.element);
327
- }
328
- else {
329
- const markerElement = MarkerUtils.createMarkerElement(marker);
330
- const oldMarkerContent = this._element.querySelector("div");
331
- const newMarkerContent = markerElement.querySelector("div");
332
- if (newMarkerContent) {
333
- (_a = oldMarkerContent === null || oldMarkerContent === void 0 ? void 0 : oldMarkerContent.parentElement) === null || _a === void 0 ? void 0 : _a.replaceChild(newMarkerContent, oldMarkerContent);
334
- }
335
- }
336
- this.setRotationAlignment((_b = marker.rotationAlignment) !== null && _b !== void 0 ? _b : "viewport");
332
+ var _a;
333
+ // Reconfigure the element MapLibre already holds in place, rather than
334
+ // building a throwaway element and grafting pieces of it. MapLibre owns the
335
+ // element's other classes and inline styles (transform, position), which
336
+ // must survive the update; we only reset our own classes/size and swap the
337
+ // children. Both create and update go through the same MarkerUtils helpers,
338
+ // so they cannot drift apart.
339
+ MarkerUtils.applyContainerLayout(this._element, marker);
340
+ this._element.replaceChildren(...MarkerUtils.createMarkerChildren(marker));
341
+ this._userOnClick = marker.onClick;
342
+ this.setRotationAlignment((_a = marker.rotationAlignment) !== null && _a !== void 0 ? _a : "viewport");
337
343
  this.setPitchAlignment("viewport");
338
344
  if (typeof marker.rotation === "number") {
339
345
  this.setRotation(marker.rotation);
@@ -1 +1 @@
1
- {"version":3,"file":"marker.js","sourceRoot":"","sources":["../../../../src/domain/models/marker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"marker.js","sourceRoot":"","sources":["../../../../src/domain/models/marker.ts"],"names":[],"mappings":"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"}
@@ -45,15 +45,17 @@ class InternalGetRouteConfiguration {
45
45
  * @param language The language for the instructions.
46
46
  * @param unitSystem The unit system used for the distance.
47
47
  * @param announceFormat The format used to announce directions in the instructions.
48
+ * @param userBearing The user's heading in degrees used as the reference direction for announcing turns.
48
49
  */
49
50
  constructor(config) {
50
- var _a, _b, _c, _d;
51
+ var _a, _b, _c, _d, _e;
51
52
  this.initialLocation = config.initialLocation;
52
53
  this.finalLocation = config.finalLocation;
53
54
  this.preferAccessibleRoute = (_a = config.preferAccessibleRoute) !== null && _a !== void 0 ? _a : false;
54
55
  this.language = (_b = config.language) !== null && _b !== void 0 ? _b : "en";
55
56
  this.unitSystem = (_c = config.unitSystem) !== null && _c !== void 0 ? _c : UnitSystem.metric;
56
57
  this.announceFormat = (_d = config.announceFormat) !== null && _d !== void 0 ? _d : AnnounceFormat.relative;
58
+ this.userBearing = (_e = config.userBearing) !== null && _e !== void 0 ? _e : 0;
57
59
  }
58
60
  }
59
61
  exports.InternalGetRouteConfiguration = InternalGetRouteConfiguration;