mobility-toolbox-js 2.0.0-beta.30 → 2.0.0-beta.34

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 (225) hide show
  1. package/api/RealtimeAPI.d.ts +268 -0
  2. package/api/RealtimeAPI.d.ts.map +1 -0
  3. package/api/RealtimeAPI.js +626 -343
  4. package/api/RoutingAPI.d.ts +33 -0
  5. package/api/RoutingAPI.d.ts.map +1 -0
  6. package/api/RoutingAPI.js +65 -15
  7. package/api/StopsAPI.d.ts +36 -0
  8. package/api/StopsAPI.d.ts.map +1 -0
  9. package/api/StopsAPI.js +70 -12
  10. package/api/index.d.ts +5 -0
  11. package/api/index.d.ts.map +1 -0
  12. package/api/index.js +10 -3
  13. package/api/typedefs.d.ts +105 -0
  14. package/api/typedefs.d.ts.map +1 -0
  15. package/api/typedefs.js +72 -0
  16. package/common/api/HttpAPI.d.ts +31 -0
  17. package/common/api/HttpAPI.d.ts.map +1 -0
  18. package/common/api/HttpAPI.js +82 -30
  19. package/common/api/WebSocketAPI.d.ts +95 -0
  20. package/common/api/WebSocketAPI.d.ts.map +1 -0
  21. package/common/api/WebSocketAPI.js +313 -168
  22. package/common/controls/Control.d.ts +74 -0
  23. package/common/controls/Control.d.ts.map +1 -0
  24. package/common/controls/Control.js +167 -78
  25. package/common/index.d.ts +3 -0
  26. package/common/index.d.ts.map +1 -0
  27. package/common/index.js +18 -2
  28. package/common/layers/Layer.d.ts +80 -0
  29. package/common/layers/Layer.d.ts.map +1 -0
  30. package/common/layers/Layer.js +251 -134
  31. package/common/mixins/CopyrightMixin.d.ts +22 -0
  32. package/common/mixins/CopyrightMixin.d.ts.map +1 -0
  33. package/common/mixins/CopyrightMixin.js +70 -22
  34. package/common/mixins/MapboxLayerMixin.d.ts +27 -0
  35. package/common/mixins/MapboxLayerMixin.d.ts.map +1 -0
  36. package/common/mixins/MapboxLayerMixin.js +240 -0
  37. package/common/mixins/RealtimeLayerMixin.d.ts +58 -0
  38. package/common/mixins/RealtimeLayerMixin.d.ts.map +1 -0
  39. package/common/mixins/RealtimeLayerMixin.js +698 -429
  40. package/common/mixins/StopFinderMixin.d.ts +40 -0
  41. package/common/mixins/StopFinderMixin.d.ts.map +1 -0
  42. package/common/mixins/StopFinderMixin.js +195 -107
  43. package/common/mixins/UserInteractionsLayerMixin.d.ts +42 -0
  44. package/common/mixins/UserInteractionsLayerMixin.d.ts.map +1 -0
  45. package/common/mixins/UserInteractionsLayerMixin.js +222 -121
  46. package/common/styles/index.d.ts +5 -0
  47. package/common/styles/index.d.ts.map +1 -0
  48. package/common/styles/index.js +24 -4
  49. package/common/styles/realtimeDefaultStyle.d.ts +15 -0
  50. package/common/styles/realtimeDefaultStyle.d.ts.map +1 -0
  51. package/common/styles/realtimeDefaultStyle.js +236 -190
  52. package/common/styles/realtimeDelayStyle.d.ts +11 -0
  53. package/common/styles/realtimeDelayStyle.d.ts.map +1 -0
  54. package/common/styles/realtimeDelayStyle.js +25 -7
  55. package/common/styles/realtimeSimpleStyle.d.ts +3 -0
  56. package/common/styles/realtimeSimpleStyle.d.ts.map +1 -0
  57. package/common/styles/realtimeSimpleStyle.js +23 -17
  58. package/common/typedefs.d.ts +50 -0
  59. package/common/typedefs.d.ts.map +1 -0
  60. package/common/typedefs.js +21 -0
  61. package/common/utils/cleanStopTime.d.ts +7 -0
  62. package/common/utils/cleanStopTime.d.ts.map +1 -0
  63. package/common/utils/cleanStopTime.js +28 -17
  64. package/common/utils/compareDepartures.d.ts +9 -0
  65. package/common/utils/compareDepartures.d.ts.map +1 -0
  66. package/common/utils/compareDepartures.js +34 -22
  67. package/common/utils/createCanvas.d.ts +9 -0
  68. package/common/utils/createCanvas.d.ts.map +1 -0
  69. package/common/utils/createCanvas.js +28 -16
  70. package/common/utils/createTrackerFilters.d.ts +12 -0
  71. package/common/utils/createTrackerFilters.d.ts.map +1 -0
  72. package/common/utils/createTrackerFilters.js +75 -54
  73. package/common/utils/getLayersAsFlatArray.d.ts +3 -0
  74. package/common/utils/getLayersAsFlatArray.d.ts.map +1 -0
  75. package/common/utils/getLayersAsFlatArray.js +15 -13
  76. package/common/utils/getMapboxMapCopyrights.d.ts +8 -0
  77. package/common/utils/getMapboxMapCopyrights.d.ts.map +1 -0
  78. package/common/utils/getMapboxMapCopyrights.js +24 -17
  79. package/common/utils/getMapboxRender.d.ts +5 -0
  80. package/common/utils/getMapboxRender.d.ts.map +1 -0
  81. package/common/utils/getMapboxRender.js +77 -0
  82. package/common/utils/getMaplibreRender.d.ts +5 -0
  83. package/common/utils/getMaplibreRender.d.ts.map +1 -0
  84. package/common/utils/getMaplibreRender.js +38 -0
  85. package/common/utils/getRealtimeModeSuffix.d.ts +8 -0
  86. package/common/utils/getRealtimeModeSuffix.d.ts.map +1 -0
  87. package/common/utils/getRealtimeModeSuffix.js +11 -2
  88. package/common/utils/getUrlWithParams.d.ts +9 -0
  89. package/common/utils/getUrlWithParams.d.ts.map +1 -0
  90. package/common/utils/getUrlWithParams.js +20 -10
  91. package/common/utils/getVehiclePosition.d.ts +14 -0
  92. package/common/utils/getVehiclePosition.d.ts.map +1 -0
  93. package/common/utils/getVehiclePosition.js +63 -39
  94. package/common/utils/index.d.ts +12 -0
  95. package/common/utils/index.d.ts.map +1 -0
  96. package/common/utils/index.js +37 -9
  97. package/common/utils/removeDuplicate.d.ts +10 -0
  98. package/common/utils/removeDuplicate.d.ts.map +1 -0
  99. package/common/utils/removeDuplicate.js +29 -7
  100. package/common/utils/renderTrajectories.d.ts +20 -0
  101. package/common/utils/renderTrajectories.d.ts.map +1 -0
  102. package/common/utils/renderTrajectories.js +111 -78
  103. package/common/utils/sortByDelay.d.ts +3 -0
  104. package/common/utils/sortByDelay.d.ts.map +1 -0
  105. package/common/utils/sortByDelay.js +21 -17
  106. package/common/utils/timeUtils.d.ts +5 -0
  107. package/common/utils/timeUtils.d.ts.map +1 -0
  108. package/common/utils/timeUtils.js +47 -18
  109. package/common/utils/trackerConfig.d.ts +24 -0
  110. package/common/utils/trackerConfig.d.ts.map +1 -0
  111. package/common/utils/trackerConfig.js +171 -118
  112. package/iife.d.ts +3 -0
  113. package/iife.d.ts.map +1 -0
  114. package/iife.js +7 -0
  115. package/index.d.ts +6 -0
  116. package/index.d.ts.map +1 -0
  117. package/index.js +10 -7
  118. package/mapbox/controls/CopyrightControl.d.ts +32 -0
  119. package/mapbox/controls/CopyrightControl.d.ts.map +1 -0
  120. package/mapbox/controls/CopyrightControl.js +72 -28
  121. package/mapbox/controls/index.d.ts +2 -0
  122. package/mapbox/controls/index.d.ts.map +1 -0
  123. package/mapbox/controls/index.js +6 -1
  124. package/mapbox/index.d.ts +5 -0
  125. package/mapbox/index.d.ts.map +1 -0
  126. package/mapbox/index.js +20 -4
  127. package/mapbox/layers/Layer.d.ts +47 -0
  128. package/mapbox/layers/Layer.d.ts.map +1 -0
  129. package/mapbox/layers/Layer.js +137 -54
  130. package/mapbox/layers/RealtimeLayer.d.ts +118 -0
  131. package/mapbox/layers/RealtimeLayer.d.ts.map +1 -0
  132. package/mapbox/layers/RealtimeLayer.js +310 -183
  133. package/mapbox/layers/index.d.ts +3 -0
  134. package/mapbox/layers/index.d.ts.map +1 -0
  135. package/mapbox/layers/index.js +7 -2
  136. package/mapbox/utils.d.ts +8 -0
  137. package/mapbox/utils.d.ts.map +1 -0
  138. package/mapbox/utils.js +54 -29
  139. package/mbt.js +2052 -2109
  140. package/mbt.js.map +3 -3
  141. package/mbt.min.js +18 -18
  142. package/mbt.min.js.map +3 -3
  143. package/ol/controls/CopyrightControl.d.ts +31 -0
  144. package/ol/controls/CopyrightControl.d.ts.map +1 -0
  145. package/ol/controls/CopyrightControl.js +89 -41
  146. package/ol/controls/RoutingControl.d.ts +180 -0
  147. package/ol/controls/RoutingControl.d.ts.map +1 -0
  148. package/ol/controls/RoutingControl.js +666 -371
  149. package/ol/controls/StopFinderControl.d.ts +32 -0
  150. package/ol/controls/StopFinderControl.d.ts.map +1 -0
  151. package/ol/controls/StopFinderControl.js +59 -10
  152. package/ol/controls/index.d.ts +4 -0
  153. package/ol/controls/index.d.ts.map +1 -0
  154. package/ol/controls/index.js +9 -3
  155. package/ol/index.d.ts +6 -0
  156. package/ol/index.d.ts.map +1 -0
  157. package/ol/index.js +21 -5
  158. package/ol/layers/Layer.d.ts +49 -0
  159. package/ol/layers/Layer.d.ts.map +1 -0
  160. package/ol/layers/Layer.js +178 -81
  161. package/ol/layers/MapboxLayer.d.ts +42 -0
  162. package/ol/layers/MapboxLayer.d.ts.map +1 -0
  163. package/ol/layers/MapboxLayer.js +131 -198
  164. package/ol/layers/MapboxStyleLayer.d.ts +146 -0
  165. package/ol/layers/MapboxStyleLayer.d.ts.map +1 -0
  166. package/ol/layers/MapboxStyleLayer.js +382 -186
  167. package/ol/layers/MaplibreLayer.d.ts +27 -0
  168. package/ol/layers/MaplibreLayer.d.ts.map +1 -0
  169. package/ol/layers/MaplibreLayer.js +67 -138
  170. package/ol/layers/RealtimeLayer.d.ts +119 -0
  171. package/ol/layers/RealtimeLayer.d.ts.map +1 -0
  172. package/ol/layers/RealtimeLayer.js +327 -184
  173. package/ol/layers/RoutingLayer.d.ts +24 -0
  174. package/ol/layers/RoutingLayer.d.ts.map +1 -0
  175. package/ol/layers/RoutingLayer.js +111 -56
  176. package/ol/layers/VectorLayer.d.ts +23 -0
  177. package/ol/layers/VectorLayer.d.ts.map +1 -0
  178. package/ol/layers/VectorLayer.js +71 -21
  179. package/ol/layers/WMSLayer.d.ts +38 -0
  180. package/ol/layers/WMSLayer.d.ts.map +1 -0
  181. package/ol/layers/WMSLayer.js +105 -37
  182. package/ol/layers/index.d.ts +9 -0
  183. package/ol/layers/index.d.ts.map +1 -0
  184. package/ol/layers/index.js +19 -8
  185. package/ol/styles/fullTrajectoryDelayStyle.d.ts +4 -0
  186. package/ol/styles/fullTrajectoryDelayStyle.d.ts.map +1 -0
  187. package/ol/styles/fullTrajectoryDelayStyle.js +32 -28
  188. package/ol/styles/fullTrajectoryStyle.d.ts +4 -0
  189. package/ol/styles/fullTrajectoryStyle.d.ts.map +1 -0
  190. package/ol/styles/fullTrajectoryStyle.js +44 -40
  191. package/ol/styles/index.d.ts +3 -0
  192. package/ol/styles/index.d.ts.map +1 -0
  193. package/ol/styles/index.js +7 -2
  194. package/package.json +14 -36
  195. package/setupTests.d.ts +2 -0
  196. package/setupTests.d.ts.map +1 -0
  197. package/setupTests.js +15 -0
  198. package/types/index.d.ts +7 -6
  199. package/types/routing.d.ts +25 -25
  200. package/types/stops.d.ts +19 -19
  201. package/api/RealtimeAPI.test.js +0 -67
  202. package/api/RoutingAPI.test.js +0 -25
  203. package/api/StopsAPI.test.js +0 -22
  204. package/common/api/HttpAPI.test.js +0 -50
  205. package/common/api/WebSocketAPI.test.js +0 -311
  206. package/common/controls/Control.test.js +0 -87
  207. package/common/layers/Layer.test.js +0 -134
  208. package/common/mixins/UserInteractionsLayerMixin.test.js +0 -199
  209. package/common/utils/createTrackerFilters.test.js +0 -79
  210. package/common/utils/getMapboxMapCopyrights.test.js +0 -40
  211. package/common/utils/removeDuplicate.test.js +0 -19
  212. package/common/utils/timeUtils.test.js +0 -10
  213. package/common/utils/trackerConfig.test.js +0 -23
  214. package/mapbox/layers/Layer.test.js +0 -182
  215. package/mapbox/layers/RealtimeLayer.test.js +0 -10
  216. package/ol/controls/CopyrightControl.test.js +0 -165
  217. package/ol/controls/RoutingControl.test.js +0 -146
  218. package/ol/controls/StopFinderControl.test.js +0 -48
  219. package/ol/layers/Layer.test.js +0 -175
  220. package/ol/layers/MapboxLayer.test.js +0 -160
  221. package/ol/layers/MapboxStyleLayer.test.js +0 -226
  222. package/ol/layers/RealtimeLayer.test.js +0 -67
  223. package/ol/layers/RoutingLayer.test.js +0 -39
  224. package/ol/layers/VectorLayer.test.js +0 -76
  225. package/ol/layers/WMSLayer.test.js +0 -57
@@ -0,0 +1,32 @@
1
+ export default StopFinderControl;
2
+ /**
3
+ * Search stations.
4
+ *
5
+ * @example
6
+ * import { Map } from 'ol';
7
+ * import { StopFinderControl } from 'mobility-toolbox-js/ol';
8
+ *
9
+ * const map = new Map({
10
+ * target: 'map',
11
+ * });
12
+ *
13
+ * const control = new StopFinderControl({
14
+ * apiKey: [yourApiKey]
15
+ * });
16
+ *
17
+ * control.attachToMap(map);
18
+ *
19
+ *
20
+ * @see <a href="/example/ol-search">Openlayers search example</a>
21
+ *
22
+ * @extends {Control}
23
+ * @implements {StopFinderInterface}
24
+ */
25
+ declare class StopFinderControl extends Control implements StopFinderInterface {
26
+ /**
27
+ * @private
28
+ */
29
+ private onSuggestionClick;
30
+ }
31
+ import Control from "../../common/controls/Control";
32
+ //# sourceMappingURL=StopFinderControl.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StopFinderControl.d.ts","sourceRoot":"","sources":["../../../src/ol/controls/StopFinderControl.js"],"names":[],"mappings":";AAIA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,2DAFgB,mBAAmB;IAGjC;;OAEG;IACH,0BAGC;CACF"}
@@ -1,10 +1,59 @@
1
- import { fromLonLat } from "ol/proj";
2
- import Control from "../../common/controls/Control";
3
- import mixin from "../../common/mixins/StopFinderMixin";
4
- class StopFinderControl extends mixin(Control) {
5
- onSuggestionClick({ geometry }) {
6
- const coord = fromLonLat(geometry.coordinates);
7
- this.map.getView().setCenter(coord);
8
- }
9
- }
10
- export default StopFinderControl;
1
+ "use strict";
2
+ var __extends = (this && this.__extends) || (function () {
3
+ var extendStatics = function (d, b) {
4
+ extendStatics = Object.setPrototypeOf ||
5
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
+ function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
+ return extendStatics(d, b);
8
+ };
9
+ return function (d, b) {
10
+ if (typeof b !== "function" && b !== null)
11
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
12
+ extendStatics(d, b);
13
+ function __() { this.constructor = d; }
14
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
+ };
16
+ })();
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ var proj_1 = require("ol/proj");
19
+ var Control_1 = require("../../common/controls/Control");
20
+ var StopFinderMixin_1 = require("../../common/mixins/StopFinderMixin");
21
+ /**
22
+ * Search stations.
23
+ *
24
+ * @example
25
+ * import { Map } from 'ol';
26
+ * import { StopFinderControl } from 'mobility-toolbox-js/ol';
27
+ *
28
+ * const map = new Map({
29
+ * target: 'map',
30
+ * });
31
+ *
32
+ * const control = new StopFinderControl({
33
+ * apiKey: [yourApiKey]
34
+ * });
35
+ *
36
+ * control.attachToMap(map);
37
+ *
38
+ *
39
+ * @see <a href="/example/ol-search">Openlayers search example</a>
40
+ *
41
+ * @extends {Control}
42
+ * @implements {StopFinderInterface}
43
+ */
44
+ var StopFinderControl = /** @class */ (function (_super) {
45
+ __extends(StopFinderControl, _super);
46
+ function StopFinderControl() {
47
+ return _super !== null && _super.apply(this, arguments) || this;
48
+ }
49
+ /**
50
+ * @private
51
+ */
52
+ StopFinderControl.prototype.onSuggestionClick = function (_a) {
53
+ var geometry = _a.geometry;
54
+ var coord = (0, proj_1.fromLonLat)(geometry.coordinates);
55
+ this.map.getView().setCenter(coord);
56
+ };
57
+ return StopFinderControl;
58
+ }((0, StopFinderMixin_1.default)(Control_1.default)));
59
+ exports.default = StopFinderControl;
@@ -0,0 +1,4 @@
1
+ export { default as CopyrightControl } from "./CopyrightControl";
2
+ export { default as RoutingControl } from "./RoutingControl";
3
+ export { default as StopFinderControl } from "./StopFinderControl";
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ol/controls/index.js"],"names":[],"mappings":""}
@@ -1,3 +1,9 @@
1
- export { default as CopyrightControl } from "./CopyrightControl";
2
- export { default as RoutingControl } from "./RoutingControl";
3
- export { default as StopFinderControl } from "./StopFinderControl";
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.StopFinderControl = exports.RoutingControl = exports.CopyrightControl = void 0;
4
+ var CopyrightControl_1 = require("./CopyrightControl");
5
+ Object.defineProperty(exports, "CopyrightControl", { enumerable: true, get: function () { return CopyrightControl_1.default; } });
6
+ var RoutingControl_1 = require("./RoutingControl");
7
+ Object.defineProperty(exports, "RoutingControl", { enumerable: true, get: function () { return RoutingControl_1.default; } });
8
+ var StopFinderControl_1 = require("./StopFinderControl");
9
+ Object.defineProperty(exports, "StopFinderControl", { enumerable: true, get: function () { return StopFinderControl_1.default; } });
package/ol/index.d.ts ADDED
@@ -0,0 +1,6 @@
1
+ export * from "../api";
2
+ export * from "../common";
3
+ export * from "./controls";
4
+ export * from "./layers";
5
+ export * from "./styles";
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/ol/index.js"],"names":[],"mappings":""}
package/ol/index.js CHANGED
@@ -1,5 +1,21 @@
1
- export * from "../api";
2
- export * from "../common";
3
- export * from "./controls";
4
- export * from "./layers";
5
- export * from "./styles";
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("../api"), exports);
18
+ __exportStar(require("../common"), exports);
19
+ __exportStar(require("./controls"), exports);
20
+ __exportStar(require("./layers"), exports);
21
+ __exportStar(require("./styles"), exports);
@@ -0,0 +1,49 @@
1
+ export default Layer;
2
+ /**
3
+ * A class representing a layer to display on an OpenLayers map.
4
+ *
5
+ * @example
6
+ * import { Layer } from 'mobility-toolbox-js/ol';
7
+ *
8
+ * const layer = new Layer({
9
+ * olLayer: ...,
10
+ * });
11
+ *
12
+ * @see <a href="/example/ol-map">Map example</a>
13
+ *
14
+ * @classproperty {ol/Map~Map} map - The map where the layer is displayed.
15
+ * @extends {Layer}
16
+ */
17
+ declare class Layer {
18
+ /**
19
+ * Define layer's properties.
20
+ *
21
+ * @ignore
22
+ */
23
+ defineProperties(options: any): void;
24
+ /**
25
+ * Initialize the layer and listen to feature clicks.
26
+ * @param {ol/Map~Map} map
27
+ */
28
+ attachToMap(map: any): void;
29
+ /**
30
+ * Terminate what was initialized in init function. Remove layer, events...
31
+ */
32
+ detachFromMap(): void;
33
+ activateUserInteractions(): void;
34
+ singleClickListenerKey: any;
35
+ pointerMoveListenerKey: any;
36
+ deactivateUserInteractions(): void;
37
+ /**
38
+ * Toggle listeners needed when a layer is avisible or not.
39
+ * @private
40
+ */
41
+ private toggleVisibleListeners;
42
+ /**
43
+ * Create a copy of the Layer.
44
+ * @param {Object} newOptions Options to override
45
+ * @return {Layer} A Layer
46
+ */
47
+ clone(newOptions: any): Layer;
48
+ }
49
+ //# sourceMappingURL=Layer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Layer.d.ts","sourceRoot":"","sources":["../../../src/ol/layers/Layer.js"],"names":[],"mappings":";AAIA;;;;;;;;;;;;;;GAcG;AACH;IAqBE;;;;OAIG;IACH,qCAQC;IAED;;;OAGG;IACH,4BAiDC;IAED;;OAEG;IACH,sBAYC;IAED,iCAyBC;IAjBG,4BAGC;IASD,4BAGC;IAIL,mCAEC;IAED;;;OAGG;IACH,+BAMC;IAED;;;;OAIG;IACH,wBAFY,KAAK,CAIhB;CACF"}
@@ -1,83 +1,180 @@
1
- import { unByKey } from "ol/Observable";
2
- import LayerCommon from "../../common/layers/Layer";
3
- import userInteractionsMixin from "../../common/mixins/UserInteractionsLayerMixin";
4
- class Layer extends userInteractionsMixin(LayerCommon) {
5
- constructor(options) {
6
- super(options);
7
- if (this.olLayer) {
8
- this.olLayer.setVisible(this.visible);
1
+ "use strict";
2
+ var __extends = (this && this.__extends) || (function () {
3
+ var extendStatics = function (d, b) {
4
+ extendStatics = Object.setPrototypeOf ||
5
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
+ function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
+ return extendStatics(d, b);
8
+ };
9
+ return function (d, b) {
10
+ if (typeof b !== "function" && b !== null)
11
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
12
+ extendStatics(d, b);
13
+ function __() { this.constructor = d; }
14
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
+ };
16
+ })();
17
+ var __assign = (this && this.__assign) || function () {
18
+ __assign = Object.assign || function(t) {
19
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
20
+ s = arguments[i];
21
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
22
+ t[p] = s[p];
23
+ }
24
+ return t;
25
+ };
26
+ return __assign.apply(this, arguments);
27
+ };
28
+ Object.defineProperty(exports, "__esModule", { value: true });
29
+ var Observable_1 = require("ol/Observable");
30
+ var Layer_1 = require("../../common/layers/Layer");
31
+ var UserInteractionsLayerMixin_1 = require("../../common/mixins/UserInteractionsLayerMixin");
32
+ /**
33
+ * A class representing a layer to display on an OpenLayers map.
34
+ *
35
+ * @example
36
+ * import { Layer } from 'mobility-toolbox-js/ol';
37
+ *
38
+ * const layer = new Layer({
39
+ * olLayer: ...,
40
+ * });
41
+ *
42
+ * @see <a href="/example/ol-map">Map example</a>
43
+ *
44
+ * @classproperty {ol/Map~Map} map - The map where the layer is displayed.
45
+ * @extends {Layer}
46
+ */
47
+ var Layer = /** @class */ (function (_super) {
48
+ __extends(Layer, _super);
49
+ /**
50
+ * Constructor.
51
+ *
52
+ * @param {Object} options
53
+ * @param {ol/layer/Layer~Layer} options.olLayer The layer (required).
54
+ * @param {string} [options.name=uuid()] Layer name. Default use a generated uuid.
55
+ * @param {string} [options.key=uuid().toLowerCase()] Layer key, will use options.name.toLowerCase() if not specified.
56
+ * @param {string} [options.copyright=undefined] Copyright-Statement.
57
+ * @param {Array<Layer>} [options.children=[]] Sublayers.
58
+ * @param {Object} [options.properties={}] Application-specific layer properties.
59
+ * @param {boolean} [options.visible=true] If true this layer is the currently visible layer on the map.
60
+ */
61
+ function Layer(options) {
62
+ var _this = _super.call(this, options) || this;
63
+ if (_this.olLayer) {
64
+ _this.olLayer.setVisible(_this.visible);
65
+ }
66
+ return _this;
9
67
  }
10
- }
11
- defineProperties(options) {
12
- super.defineProperties(options);
13
- Object.defineProperties(this, {
14
- olLayer: { value: options.olLayer, writable: true },
15
- olListenersKeys: {
16
- value: []
17
- }
18
- });
19
- }
20
- attachToMap(map) {
21
- super.attachToMap(map);
22
- if (!this.map) {
23
- return;
24
- }
25
- if (this.olLayer && !this.map?.getLayers()?.getArray()?.includes(this.olLayer)) {
26
- this.map.addLayer(this.olLayer);
27
- }
28
- this.olListenersKeys.push(this.on("change:visible", () => {
29
- if (this.olLayer) {
30
- this.olLayer.setVisible(this.visible);
31
- }
32
- }));
33
- this.olListenersKeys.push(this.map.getLayers().on("remove", (evt) => {
34
- if (evt.element === this.olLayer) {
35
- this.detachFromMap();
36
- }
37
- }));
38
- this.toggleVisibleListeners();
39
- this.olListenersKeys.push(this.on("change:visible", this.toggleVisibleListeners));
40
- if (this.copyrights && this.olLayer) {
41
- const attributions = this.copyrights || [];
42
- if (this.olLayer.getLayers) {
43
- this.olLayer.getLayers().getArray().forEach((layer) => {
44
- layer.getSource()?.setAttributions(attributions);
68
+ /**
69
+ * Define layer's properties.
70
+ *
71
+ * @ignore
72
+ */
73
+ Layer.prototype.defineProperties = function (options) {
74
+ _super.prototype.defineProperties.call(this, options);
75
+ Object.defineProperties(this, {
76
+ olLayer: { value: options.olLayer, writable: true },
77
+ olListenersKeys: {
78
+ value: [],
79
+ },
45
80
  });
46
- } else if (this.olLayer.getSource) {
47
- this.olLayer.getSource()?.setAttributions(attributions);
48
- }
49
- }
50
- }
51
- detachFromMap() {
52
- this.deactivateUserInteractions();
53
- unByKey(this.olListenersKeys);
54
- if (this.olLayer && this.map?.getLayers()?.getArray()?.includes(this.olLayer)) {
55
- this.map.removeLayer(this.olLayer);
56
- }
57
- super.detachFromMap();
58
- }
59
- activateUserInteractions() {
60
- this.deactivateUserInteractions();
61
- if (this.map && this.userInteractions && this.userClickInteractions && this.userClickCallbacks.length) {
62
- this.singleClickListenerKey = this.map.on("singleclick", this.onUserClickCallback);
63
- this.olListenersKeys.push(this.singleClickListenerKey);
64
- }
65
- if (this.map && this.userInteractions && this.userHoverInteractions && this.userHoverCallbacks.length) {
66
- this.pointerMoveListenerKey = this.map.on("pointermove", this.onUserMoveCallback);
67
- }
68
- }
69
- deactivateUserInteractions() {
70
- unByKey([this.pointerMoveListenerKey, this.singleClickListenerKey]);
71
- }
72
- toggleVisibleListeners() {
73
- if (this.visible) {
74
- this.activateUserInteractions();
75
- } else {
76
- this.deactivateUserInteractions();
77
- }
78
- }
79
- clone(newOptions) {
80
- return new Layer({ ...this.options, ...newOptions });
81
- }
82
- }
83
- export default Layer;
81
+ };
82
+ /**
83
+ * Initialize the layer and listen to feature clicks.
84
+ * @param {ol/Map~Map} map
85
+ */
86
+ Layer.prototype.attachToMap = function (map) {
87
+ var _this = this;
88
+ var _a, _b, _c, _d;
89
+ _super.prototype.attachToMap.call(this, map);
90
+ if (!this.map) {
91
+ return;
92
+ }
93
+ if (this.olLayer &&
94
+ !((_c = (_b = (_a = this.map) === null || _a === void 0 ? void 0 : _a.getLayers()) === null || _b === void 0 ? void 0 : _b.getArray()) === null || _c === void 0 ? void 0 : _c.includes(this.olLayer))) {
95
+ this.map.addLayer(this.olLayer);
96
+ }
97
+ this.olListenersKeys.push(this.on('change:visible', function () {
98
+ if (_this.olLayer) {
99
+ _this.olLayer.setVisible(_this.visible);
100
+ }
101
+ }));
102
+ this.olListenersKeys.push(this.map.getLayers().on('remove', function (evt) {
103
+ if (evt.element === _this.olLayer) {
104
+ _this.detachFromMap();
105
+ }
106
+ }));
107
+ this.toggleVisibleListeners();
108
+ this.olListenersKeys.push(this.on('change:visible', this.toggleVisibleListeners));
109
+ // We set the copyright to the source used by the layer.
110
+ if (this.copyrights && this.olLayer) {
111
+ var attributions_1 = this.copyrights || [];
112
+ if (this.olLayer.getLayers) {
113
+ this.olLayer
114
+ .getLayers()
115
+ .getArray()
116
+ .forEach(function (layer) {
117
+ var _a;
118
+ (_a = layer.getSource()) === null || _a === void 0 ? void 0 : _a.setAttributions(attributions_1);
119
+ });
120
+ }
121
+ else if (this.olLayer.getSource) {
122
+ (_d = this.olLayer.getSource()) === null || _d === void 0 ? void 0 : _d.setAttributions(attributions_1);
123
+ }
124
+ }
125
+ };
126
+ /**
127
+ * Terminate what was initialized in init function. Remove layer, events...
128
+ */
129
+ Layer.prototype.detachFromMap = function () {
130
+ var _a, _b, _c;
131
+ this.deactivateUserInteractions();
132
+ (0, Observable_1.unByKey)(this.olListenersKeys);
133
+ if (this.olLayer &&
134
+ ((_c = (_b = (_a = this.map) === null || _a === void 0 ? void 0 : _a.getLayers()) === null || _b === void 0 ? void 0 : _b.getArray()) === null || _c === void 0 ? void 0 : _c.includes(this.olLayer))) {
135
+ this.map.removeLayer(this.olLayer);
136
+ }
137
+ _super.prototype.detachFromMap.call(this);
138
+ };
139
+ Layer.prototype.activateUserInteractions = function () {
140
+ this.deactivateUserInteractions();
141
+ if (this.map &&
142
+ this.userInteractions &&
143
+ this.userClickInteractions &&
144
+ this.userClickCallbacks.length) {
145
+ this.singleClickListenerKey = this.map.on('singleclick', this.onUserClickCallback);
146
+ this.olListenersKeys.push(this.singleClickListenerKey);
147
+ }
148
+ if (this.map &&
149
+ this.userInteractions &&
150
+ this.userHoverInteractions &&
151
+ this.userHoverCallbacks.length) {
152
+ this.pointerMoveListenerKey = this.map.on('pointermove', this.onUserMoveCallback);
153
+ }
154
+ };
155
+ Layer.prototype.deactivateUserInteractions = function () {
156
+ (0, Observable_1.unByKey)([this.pointerMoveListenerKey, this.singleClickListenerKey]);
157
+ };
158
+ /**
159
+ * Toggle listeners needed when a layer is avisible or not.
160
+ * @private
161
+ */
162
+ Layer.prototype.toggleVisibleListeners = function () {
163
+ if (this.visible) {
164
+ this.activateUserInteractions();
165
+ }
166
+ else {
167
+ this.deactivateUserInteractions();
168
+ }
169
+ };
170
+ /**
171
+ * Create a copy of the Layer.
172
+ * @param {Object} newOptions Options to override
173
+ * @return {Layer} A Layer
174
+ */
175
+ Layer.prototype.clone = function (newOptions) {
176
+ return new Layer(__assign(__assign({}, this.options), newOptions));
177
+ };
178
+ return Layer;
179
+ }((0, UserInteractionsLayerMixin_1.default)(Layer_1.default)));
180
+ exports.default = Layer;
@@ -0,0 +1,42 @@
1
+ /**
2
+ * A class representing Mapboxlayer to display on BasicMap
3
+ *
4
+ * @example
5
+ * import { MapboxLayer } from 'mobility-toolbox-js/ol';
6
+ *
7
+ * const layer = new MapboxLayer({
8
+ * url: 'https://maps.geops.io/styles/travic_v2/style.json',
9
+ * apikey: 'yourApiKey',
10
+ * });
11
+ *
12
+ * @classproperty {ol/Map~Map} map - The map where the layer is displayed.
13
+ * @extends {Layer}
14
+ */
15
+ export default class MapboxLayer extends Layer {
16
+ /**
17
+ * Create the mapbox map.
18
+ * @private
19
+ */
20
+ private loadMbMap;
21
+ /** @ignore */
22
+ renderState: {
23
+ center: any[];
24
+ zoom: any;
25
+ rotation: any;
26
+ visible: any;
27
+ opacity: any;
28
+ size: number[];
29
+ };
30
+ /** @ignore */
31
+ copyrights: any[];
32
+ getOlLayerRender(): (frameState: any) => any;
33
+ getMapboxMapClass(): any;
34
+ /**
35
+ * Create a copy of the MapboxLayer.
36
+ * @param {Object} newOptions Options to override
37
+ * @return {MapboxLayer} A MapboxLayer
38
+ */
39
+ clone(newOptions: any): MapboxLayer;
40
+ }
41
+ import Layer from "./Layer";
42
+ //# sourceMappingURL=MapboxLayer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MapboxLayer.d.ts","sourceRoot":"","sources":["../../../src/ol/layers/MapboxLayer.js"],"names":[],"mappings":"AAMA;;;;;;;;;;;;;GAaG;AACH;IA2BE;;;OAGG;IACH,kBA0CC;IA/BC,cAAc;IACd;;;;;;;MAOC;IAOC,cAAc;IACd,kBAA0D;IAiB9D,6CAEC;IAGD,yBAEC;IAED;;;;OAIG;IACH,wBAFY,WAAW,CAItB;CACF"}