mobility-toolbox-js 2.3.10 → 2.4.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 (471) hide show
  1. package/api/RealtimeAPI.d.ts +290 -0
  2. package/api/RealtimeAPI.d.ts.map +1 -0
  3. package/api/RealtimeAPI.js +483 -0
  4. package/api/RoutingAPI.d.ts +37 -0
  5. package/api/RoutingAPI.d.ts.map +1 -0
  6. package/api/RoutingAPI.js +35 -0
  7. package/api/StopsAPI.d.ts +38 -0
  8. package/api/StopsAPI.d.ts.map +1 -0
  9. package/api/StopsAPI.js +36 -0
  10. package/api/index.d.ts +4 -0
  11. package/api/index.d.ts.map +1 -0
  12. package/api/typedefs.d.ts +179 -0
  13. package/api/typedefs.d.ts.map +1 -0
  14. package/{src/api → api}/typedefs.js +1 -11
  15. package/common/api/HttpAPI.d.ts +31 -0
  16. package/common/api/HttpAPI.d.ts.map +1 -0
  17. package/common/api/HttpAPI.js +57 -0
  18. package/common/api/WebSocketAPI.d.ts +153 -0
  19. package/common/api/WebSocketAPI.d.ts.map +1 -0
  20. package/common/api/WebSocketAPI.js +341 -0
  21. package/common/controls/ControlCommon.d.ts +76 -0
  22. package/common/controls/ControlCommon.d.ts.map +1 -0
  23. package/common/controls/ControlCommon.js +150 -0
  24. package/common/controls/CopyrightControlCommon.d.ts +13 -0
  25. package/common/controls/CopyrightControlCommon.d.ts.map +1 -0
  26. package/common/controls/CopyrightControlCommon.js +34 -0
  27. package/common/controls/StopFinderControlCommon.d.ts +55 -0
  28. package/common/controls/StopFinderControlCommon.d.ts.map +1 -0
  29. package/common/controls/StopFinderControlCommon.js +144 -0
  30. package/common/index.d.ts +3 -0
  31. package/common/index.d.ts.map +1 -0
  32. package/common/layers/LayerCommon.d.ts +94 -0
  33. package/common/layers/LayerCommon.d.ts.map +1 -0
  34. package/common/layers/LayerCommon.js +244 -0
  35. package/common/mixins/RealtimeLayerMixin.d.ts +288 -0
  36. package/common/mixins/RealtimeLayerMixin.d.ts.map +1 -0
  37. package/common/mixins/RealtimeLayerMixin.js +779 -0
  38. package/common/mixins/UserInteractionsLayerMixin.d.ts +60 -0
  39. package/common/mixins/UserInteractionsLayerMixin.d.ts.map +1 -0
  40. package/common/mixins/UserInteractionsLayerMixin.js +241 -0
  41. package/common/styles/index.d.ts +5 -0
  42. package/common/styles/index.d.ts.map +1 -0
  43. package/common/styles/realtimeDefaultStyle.d.ts +36 -0
  44. package/common/styles/realtimeDefaultStyle.d.ts.map +1 -0
  45. package/common/styles/realtimeDefaultStyle.js +276 -0
  46. package/common/styles/realtimeDelayStyle.d.ts +12 -0
  47. package/common/styles/realtimeDelayStyle.d.ts.map +1 -0
  48. package/common/styles/realtimeDelayStyle.js +13 -0
  49. package/common/styles/realtimeHeadingStyle.d.ts +12 -0
  50. package/common/styles/realtimeHeadingStyle.d.ts.map +1 -0
  51. package/common/styles/realtimeHeadingStyle.js +87 -0
  52. package/common/styles/realtimeSimpleStyle.d.ts +4 -0
  53. package/common/styles/realtimeSimpleStyle.d.ts.map +1 -0
  54. package/common/styles/realtimeSimpleStyle.js +23 -0
  55. package/common/typedefs.d.ts +183 -0
  56. package/common/typedefs.d.ts.map +1 -0
  57. package/{src/common → common}/typedefs.js +1 -1
  58. package/common/utils/compareDepartures.d.ts +11 -0
  59. package/common/utils/compareDepartures.d.ts.map +1 -0
  60. package/common/utils/compareDepartures.js +35 -0
  61. package/common/utils/createCanvas.d.ts +11 -0
  62. package/common/utils/createCanvas.d.ts.map +1 -0
  63. package/common/utils/createCanvas.js +28 -0
  64. package/common/utils/createRealtimeFilters.d.ts +13 -0
  65. package/common/utils/createRealtimeFilters.d.ts.map +1 -0
  66. package/common/utils/createRealtimeFilters.js +74 -0
  67. package/common/utils/debounceDeparturesMessages.d.ts +13 -0
  68. package/common/utils/debounceDeparturesMessages.d.ts.map +1 -0
  69. package/common/utils/debounceDeparturesMessages.js +28 -0
  70. package/common/utils/debounceWebsocketMessages.d.ts +12 -0
  71. package/common/utils/debounceWebsocketMessages.d.ts.map +1 -0
  72. package/common/utils/debounceWebsocketMessages.js +30 -0
  73. package/common/utils/getLayersAsFlatArray.d.ts +4 -0
  74. package/common/utils/getLayersAsFlatArray.d.ts.map +1 -0
  75. package/common/utils/getLayersAsFlatArray.js +16 -0
  76. package/common/utils/getMapboxMapCopyrights.d.ts +18 -0
  77. package/common/utils/getMapboxMapCopyrights.d.ts.map +1 -0
  78. package/common/utils/getMapboxMapCopyrights.js +30 -0
  79. package/common/utils/getMapboxRender.d.ts +8 -0
  80. package/common/utils/getMapboxRender.d.ts.map +1 -0
  81. package/common/utils/getMapboxRender.js +88 -0
  82. package/common/utils/getMaplibreRender.d.ts +9 -0
  83. package/common/utils/getMaplibreRender.d.ts.map +1 -0
  84. package/common/utils/getMaplibreRender.js +40 -0
  85. package/{src/common/utils/getRealtimeModeSuffix.ts → common/utils/getRealtimeModeSuffix.d.ts} +2 -4
  86. package/common/utils/getRealtimeModeSuffix.d.ts.map +1 -0
  87. package/common/utils/getRealtimeModeSuffix.js +7 -0
  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 +18 -0
  91. package/common/utils/getVehiclePosition.d.ts +16 -0
  92. package/common/utils/getVehiclePosition.d.ts.map +1 -0
  93. package/common/utils/getVehiclePosition.js +72 -0
  94. package/common/utils/index.d.ts +18 -0
  95. package/common/utils/index.d.ts.map +1 -0
  96. package/{src/common → common}/utils/index.js +2 -1
  97. package/common/utils/realtimeConfig.d.ts +53 -0
  98. package/common/utils/realtimeConfig.d.ts.map +1 -0
  99. package/common/utils/realtimeConfig.js +202 -0
  100. package/common/utils/removeDuplicate.d.ts +10 -0
  101. package/common/utils/removeDuplicate.d.ts.map +1 -0
  102. package/common/utils/removeDuplicate.js +15 -0
  103. package/common/utils/renderTrajectories.d.ts +17 -0
  104. package/common/utils/renderTrajectories.d.ts.map +1 -0
  105. package/common/utils/renderTrajectories.js +110 -0
  106. package/common/utils/sortAndFilterDepartures.d.ts +16 -0
  107. package/common/utils/sortAndFilterDepartures.d.ts.map +1 -0
  108. package/common/utils/sortAndFilterDepartures.js +58 -0
  109. package/common/utils/sortByDelay.d.ts +4 -0
  110. package/common/utils/sortByDelay.d.ts.map +1 -0
  111. package/common/utils/sortByDelay.js +21 -0
  112. package/common/utils/timeUtils.d.ts +24 -0
  113. package/common/utils/timeUtils.d.ts.map +1 -0
  114. package/common/utils/timeUtils.js +39 -0
  115. package/iife.d.ts +3 -0
  116. package/iife.d.ts.map +1 -0
  117. package/{src/iife.js → iife.js} +1 -3
  118. package/index.d.ts +10 -0
  119. package/index.d.ts.map +1 -0
  120. package/index.js +10 -0
  121. package/mapbox/controls/CopyrightControl.d.ts +29 -0
  122. package/mapbox/controls/CopyrightControl.d.ts.map +1 -0
  123. package/{src/mapbox/controls/CopyrightControl.ts → mapbox/controls/CopyrightControl.js} +21 -26
  124. package/mapbox/controls/index.d.ts +2 -0
  125. package/mapbox/controls/index.d.ts.map +1 -0
  126. package/mapbox/index.d.ts +6 -0
  127. package/mapbox/index.d.ts.map +1 -0
  128. package/mapbox/layers/Layer.d.ts +59 -0
  129. package/mapbox/layers/Layer.d.ts.map +1 -0
  130. package/mapbox/layers/Layer.js +101 -0
  131. package/mapbox/layers/RealtimeLayer.d.ts +180 -0
  132. package/mapbox/layers/RealtimeLayer.d.ts.map +1 -0
  133. package/mapbox/layers/RealtimeLayer.js +270 -0
  134. package/mapbox/layers/index.d.ts +3 -0
  135. package/mapbox/layers/index.d.ts.map +1 -0
  136. package/mapbox/utils/getMercatorResolution.d.ts +9 -0
  137. package/mapbox/utils/getMercatorResolution.d.ts.map +1 -0
  138. package/mapbox/utils/getMercatorResolution.js +18 -0
  139. package/mapbox/utils/getSourceCoordinates.d.ts +9 -0
  140. package/mapbox/utils/getSourceCoordinates.d.ts.map +1 -0
  141. package/mapbox/utils/getSourceCoordinates.js +27 -0
  142. package/mapbox/utils/index.d.ts +3 -0
  143. package/mapbox/utils/index.d.ts.map +1 -0
  144. package/mbt.js +64822 -0
  145. package/mbt.js.map +7 -0
  146. package/mbt.min.js +1090 -0
  147. package/mbt.min.js.map +7 -0
  148. package/ol/controls/CopyrightControl.d.ts +31 -0
  149. package/ol/controls/CopyrightControl.d.ts.map +1 -0
  150. package/ol/controls/CopyrightControl.js +68 -0
  151. package/ol/controls/RoutingControl.d.ts +193 -0
  152. package/ol/controls/RoutingControl.d.ts.map +1 -0
  153. package/ol/controls/RoutingControl.js +631 -0
  154. package/ol/controls/StopFinderControl.d.ts +30 -0
  155. package/ol/controls/StopFinderControl.d.ts.map +1 -0
  156. package/{src/ol/controls/StopFinderControl.ts → ol/controls/StopFinderControl.js} +7 -10
  157. package/ol/controls/index.d.ts +4 -0
  158. package/ol/controls/index.d.ts.map +1 -0
  159. package/ol/index.d.ts +6 -0
  160. package/ol/index.d.ts.map +1 -0
  161. package/ol/layers/Layer.d.ts +86 -0
  162. package/ol/layers/Layer.d.ts.map +1 -0
  163. package/ol/layers/Layer.js +174 -0
  164. package/ol/layers/MapGlLayer.d.ts +67 -0
  165. package/ol/layers/MapGlLayer.d.ts.map +1 -0
  166. package/ol/layers/MapGlLayer.js +218 -0
  167. package/ol/layers/MapboxLayer.d.ts +50 -0
  168. package/ol/layers/MapboxLayer.d.ts.map +1 -0
  169. package/ol/layers/MapboxLayer.js +109 -0
  170. package/ol/layers/MapboxStyleLayer.d.ts +131 -0
  171. package/ol/layers/MapboxStyleLayer.d.ts.map +1 -0
  172. package/ol/layers/MapboxStyleLayer.js +369 -0
  173. package/{src/ol/layers/MaplibreLayer.ts → ol/layers/MaplibreLayer.d.ts} +10 -21
  174. package/ol/layers/MaplibreLayer.d.ts.map +1 -0
  175. package/ol/layers/MaplibreLayer.js +34 -0
  176. package/ol/layers/RealtimeLayer.d.ts +202 -0
  177. package/ol/layers/RealtimeLayer.d.ts.map +1 -0
  178. package/ol/layers/RealtimeLayer.js +332 -0
  179. package/ol/layers/RoutingLayer.d.ts +35 -0
  180. package/ol/layers/RoutingLayer.d.ts.map +1 -0
  181. package/ol/layers/RoutingLayer.js +85 -0
  182. package/ol/layers/VectorLayer.d.ts +25 -0
  183. package/ol/layers/VectorLayer.d.ts.map +1 -0
  184. package/ol/layers/VectorLayer.js +38 -0
  185. package/ol/layers/WMSLayer.d.ts +42 -0
  186. package/ol/layers/WMSLayer.d.ts.map +1 -0
  187. package/ol/layers/WMSLayer.js +88 -0
  188. package/ol/layers/index.d.ts +9 -0
  189. package/ol/layers/index.d.ts.map +1 -0
  190. package/ol/styles/fullTrajectoryDelayStyle.d.ts +4 -0
  191. package/ol/styles/fullTrajectoryDelayStyle.d.ts.map +1 -0
  192. package/ol/styles/fullTrajectoryDelayStyle.js +33 -0
  193. package/ol/styles/fullTrajectoryStyle.d.ts +5 -0
  194. package/ol/styles/fullTrajectoryStyle.d.ts.map +1 -0
  195. package/ol/styles/fullTrajectoryStyle.js +44 -0
  196. package/ol/styles/index.d.ts +3 -0
  197. package/ol/styles/index.d.ts.map +1 -0
  198. package/package.json +1 -1
  199. package/setupTests.d.ts +2 -0
  200. package/setupTests.d.ts.map +1 -0
  201. package/{src/setupTests.js → setupTests.js} +7 -12
  202. package/.esdoc.js +0 -18
  203. package/.eslintignore +0 -1
  204. package/.eslintrc.js +0 -25
  205. package/.fixpackrc +0 -20
  206. package/.github/workflows/build.yml +0 -16
  207. package/.github/workflows/conventional-pr-title.yml +0 -16
  208. package/.github/workflows/cypress.yml +0 -101
  209. package/.github/workflows/test.yml +0 -17
  210. package/.husky/commit-msg +0 -4
  211. package/.husky/post-checkout +0 -4
  212. package/.husky/post-merge +0 -4
  213. package/.husky/post-rebase +0 -4
  214. package/.husky/pre-commit +0 -4
  215. package/.lintstagedrc.js +0 -10
  216. package/.nvmrc +0 -1
  217. package/.prettierrc.js +0 -5
  218. package/.stylelintrc.js +0 -4
  219. package/CHANGELOG.md +0 -132
  220. package/LICENSE +0 -21
  221. package/MIGRATION-V2.md +0 -248
  222. package/README.md +0 -42
  223. package/__mocks__/mapbox-gl.js +0 -81
  224. package/__mocks__/maplibre-gl.js +0 -81
  225. package/babel.config.js +0 -9
  226. package/commitlint.config.js +0 -1
  227. package/cypress/e2e/examples/api.cy.js +0 -7
  228. package/cypress/e2e/examples/examples.cy.js +0 -7
  229. package/cypress/e2e/examples/navigation.cy.js +0 -29
  230. package/cypress/fixtures/example.json +0 -5
  231. package/cypress/plugins/index.js +0 -21
  232. package/cypress/support/commands.js +0 -25
  233. package/cypress/support/e2e.js +0 -20
  234. package/cypress.config.ts +0 -15
  235. package/data/fetchRoute.json +0 -292
  236. package/data/fetchTrajectories.json +0 -18
  237. package/data/fetchTrajectoryById.json +0 -3
  238. package/data/fetchTrajectoryStations.json +0 -18
  239. package/data/stopsSearch.json +0 -15
  240. package/dependabot.yml +0 -15
  241. package/doc/.eslintrc.json +0 -1
  242. package/doc/README.md +0 -34
  243. package/doc/next.config.js +0 -16
  244. package/doc/package.json +0 -41
  245. package/doc/pages/404.js +0 -5
  246. package/doc/pages/_app.js +0 -61
  247. package/doc/pages/_document.js +0 -64
  248. package/doc/pages/doc/[...slug].js +0 -23
  249. package/doc/pages/doc.js +0 -23
  250. package/doc/pages/example/[example].js +0 -52
  251. package/doc/pages/examples.js +0 -34
  252. package/doc/pages/index.js +0 -25
  253. package/doc/public/README.md +0 -15
  254. package/doc/public/favicon.ico +0 -0
  255. package/doc/public/static/assets/Lato-Black.ttf +0 -0
  256. package/doc/public/static/assets/Lato-BlackItalic.ttf +0 -0
  257. package/doc/public/static/assets/Lato-Bold.ttf +0 -0
  258. package/doc/public/static/assets/Lato-BoldItalic.ttf +0 -0
  259. package/doc/public/static/assets/Lato-Italic.ttf +0 -0
  260. package/doc/public/static/assets/Lato-Light.ttf +0 -0
  261. package/doc/public/static/assets/Lato-LightItalic.ttf +0 -0
  262. package/doc/public/static/assets/Lato-Regular.ttf +0 -0
  263. package/doc/public/static/assets/Lato-Thin.ttf +0 -0
  264. package/doc/public/static/assets/Lato-ThinItalic.ttf +0 -0
  265. package/doc/public/static/assets/OFL.txt +0 -93
  266. package/doc/public/static/examples/assets/tralis-live-map/index.js +0 -11
  267. package/doc/public/static/examples/assets/tralis-live-map/s1kreis.svg +0 -105
  268. package/doc/public/static/examples/assets/tralis-live-map/s20kreis.svg +0 -101
  269. package/doc/public/static/examples/assets/tralis-live-map/s2kreis.svg +0 -95
  270. package/doc/public/static/examples/assets/tralis-live-map/s3kreis.svg +0 -95
  271. package/doc/public/static/examples/assets/tralis-live-map/s4kreis.svg +0 -95
  272. package/doc/public/static/examples/assets/tralis-live-map/s6kreis.svg +0 -95
  273. package/doc/public/static/examples/assets/tralis-live-map/s7kreis.svg +0 -95
  274. package/doc/public/static/examples/assets/tralis-live-map/s8kreis.svg +0 -93
  275. package/doc/public/static/examples/assets/tralis-live-map/unknown.svg +0 -107
  276. package/doc/public/static/examples/layers.html +0 -11
  277. package/doc/public/static/examples/layers.js +0 -97
  278. package/doc/public/static/examples/mb-copyright.html +0 -26
  279. package/doc/public/static/examples/mb-copyright.js +0 -37
  280. package/doc/public/static/examples/mb-tracker.html +0 -1
  281. package/doc/public/static/examples/mb-tracker.js +0 -40
  282. package/doc/public/static/examples/mb-tracker.md +0 -1
  283. package/doc/public/static/examples/mb-tralis.html +0 -1
  284. package/doc/public/static/examples/mb-tralis.js +0 -34
  285. package/doc/public/static/examples/ol-copyright.html +0 -26
  286. package/doc/public/static/examples/ol-copyright.js +0 -43
  287. package/doc/public/static/examples/ol-mapbox-layer.html +0 -1
  288. package/doc/public/static/examples/ol-mapbox-layer.js +0 -28
  289. package/doc/public/static/examples/ol-mapbox-style-layer.html +0 -12
  290. package/doc/public/static/examples/ol-mapbox-style-layer.js +0 -48
  291. package/doc/public/static/examples/ol-query.html +0 -32
  292. package/doc/public/static/examples/ol-query.js +0 -83
  293. package/doc/public/static/examples/ol-routing.html +0 -26
  294. package/doc/public/static/examples/ol-routing.js +0 -65
  295. package/doc/public/static/examples/ol-routing.md +0 -1
  296. package/doc/public/static/examples/ol-stop-finder.html +0 -15
  297. package/doc/public/static/examples/ol-stop-finder.js +0 -35
  298. package/doc/public/static/examples/ol-stop-finder.md +0 -1
  299. package/doc/public/static/examples/ol-tracker.html +0 -1
  300. package/doc/public/static/examples/ol-tracker.js +0 -41
  301. package/doc/public/static/examples/ol-tracker.md +0 -1
  302. package/doc/public/static/examples/ol-tralis.html +0 -5
  303. package/doc/public/static/examples/ol-tralis.js +0 -62
  304. package/doc/public/static/examples/tralis-live-map.html +0 -1
  305. package/doc/public/static/examples/tralis-live-map.js +0 -67
  306. package/doc/public/static/examples/tralis-live-map.md +0 -3
  307. package/doc/public/static/img/live_tracker_mb.jpg +0 -0
  308. package/doc/public/static/img/live_tracker_munich.jpg +0 -0
  309. package/doc/public/static/img/live_tracker_ol.jpg +0 -0
  310. package/doc/public/static/img/mapbox.jpg +0 -0
  311. package/doc/public/static/img/mapbox_style.jpg +0 -0
  312. package/doc/public/static/img/ol-copyright.png +0 -0
  313. package/doc/public/static/img/query_objects.jpg +0 -0
  314. package/doc/public/static/img/routing.jpg +0 -0
  315. package/doc/public/static/img/simple_map.jpg +0 -0
  316. package/doc/public/static/img/stops.jpg +0 -0
  317. package/doc/public/vercel.svg +0 -4
  318. package/doc/src/components/CodeSandboxButton.js +0 -102
  319. package/doc/src/components/Documentation.js +0 -42
  320. package/doc/src/components/Esdoc/Anchor.js +0 -57
  321. package/doc/src/components/Esdoc/ClassDoc.js +0 -272
  322. package/doc/src/components/Esdoc/DeprecatedHTML.js +0 -16
  323. package/doc/src/components/Esdoc/DetailDocs.js +0 -279
  324. package/doc/src/components/Esdoc/DetailHTML.js +0 -33
  325. package/doc/src/components/Esdoc/DirectSubclassHTML.js +0 -30
  326. package/doc/src/components/Esdoc/DocBuilderUtils.js +0 -697
  327. package/doc/src/components/Esdoc/DocLinkHTML.js +0 -63
  328. package/doc/src/components/Esdoc/DocsLinkHTML.js +0 -38
  329. package/doc/src/components/Esdoc/Esdoc.js +0 -63
  330. package/doc/src/components/Esdoc/EsdocContent.js +0 -56
  331. package/doc/src/components/Esdoc/EsdocNavigation.js +0 -13
  332. package/doc/src/components/Esdoc/EsdocSearch.js +0 -78
  333. package/doc/src/components/Esdoc/ExperimentalHTML.js +0 -17
  334. package/doc/src/components/Esdoc/ExtendsChainHTML.js +0 -32
  335. package/doc/src/components/Esdoc/FileDocLinkHTML.js +0 -62
  336. package/doc/src/components/Esdoc/IdentifiersDoc.js +0 -113
  337. package/doc/src/components/Esdoc/IndirectSubclassHTML.js +0 -30
  338. package/doc/src/components/Esdoc/InheritedSummaryDoc.js +0 -70
  339. package/doc/src/components/Esdoc/InheritedSummaryHTML.js +0 -38
  340. package/doc/src/components/Esdoc/MixinClassesHTML.js +0 -29
  341. package/doc/src/components/Esdoc/NavDoc.js +0 -112
  342. package/doc/src/components/Esdoc/OverrideMethod.js +0 -44
  343. package/doc/src/components/Esdoc/OverrideMethodDescription.js +0 -35
  344. package/doc/src/components/Esdoc/Properties.js +0 -89
  345. package/doc/src/components/Esdoc/README.md +0 -45
  346. package/doc/src/components/Esdoc/SignatureHTML.js +0 -123
  347. package/doc/src/components/Esdoc/SingleDoc.js +0 -31
  348. package/doc/src/components/Esdoc/SummaryDoc.js +0 -160
  349. package/doc/src/components/Esdoc/SummaryHTML.js +0 -96
  350. package/doc/src/components/Esdoc/TypeDocLinkHTML.js +0 -251
  351. package/doc/src/components/Esdoc/index.js +0 -7
  352. package/doc/src/components/Esdoc/taffydb.js +0 -2070
  353. package/doc/src/components/Example.js +0 -200
  354. package/doc/src/components/ExampleCard.js +0 -126
  355. package/doc/src/components/Examples.js +0 -78
  356. package/doc/src/components/Home.js +0 -121
  357. package/doc/src/components/TrackerExample.js +0 -39
  358. package/doc/src/examples.js +0 -117
  359. package/doc/styles/App.scss +0 -53
  360. package/doc/styles/identifiers.css +0 -38
  361. package/doc/styles/search.css +0 -76
  362. package/doc/styles/style.css +0 -603
  363. package/esdoc/README.md +0 -27
  364. package/esdoc/plugins/MyPlugin.js +0 -69
  365. package/esdoc/plugins/dynamic-property-plugin/Plugin.js +0 -50
  366. package/esdoc/plugins/externals-plugin/Plugin.js +0 -45
  367. package/esdoc/plugins/externals-plugin/externals.js +0 -93
  368. package/esdoc/plugins/optional-chaining-plugin/Plugin.js +0 -8
  369. package/global-setup.js +0 -3
  370. package/jest.config.js +0 -24
  371. package/pull_request_template.md +0 -17
  372. package/scripts/read-pkg-json.js +0 -22
  373. package/src/api/RealtimeAPI.test.js +0 -144
  374. package/src/api/RealtimeAPI.ts +0 -712
  375. package/src/api/RoutingAPI.test.js +0 -41
  376. package/src/api/RoutingAPI.ts +0 -47
  377. package/src/api/StopsAPI.test.js +0 -34
  378. package/src/api/StopsAPI.ts +0 -45
  379. package/src/common/api/HttpAPI.test.js +0 -68
  380. package/src/common/api/HttpAPI.ts +0 -77
  381. package/src/common/api/WebSocketAPI.test.js +0 -421
  382. package/src/common/api/WebSocketAPI.ts +0 -515
  383. package/src/common/controls/ControlCommon.test.js +0 -106
  384. package/src/common/controls/ControlCommon.ts +0 -194
  385. package/src/common/controls/CopyrightControlCommon.ts +0 -41
  386. package/src/common/controls/StopFinderControlCommon.ts +0 -192
  387. package/src/common/layers/LayerCommon.test.js +0 -158
  388. package/src/common/layers/LayerCommon.ts +0 -321
  389. package/src/common/mixins/RealtimeLayerMixin.ts +0 -1168
  390. package/src/common/mixins/UserInteractionsLayerMixin.test.js +0 -227
  391. package/src/common/mixins/UserInteractionsLayerMixin.ts +0 -352
  392. package/src/common/styles/realtimeDefaultStyle.ts +0 -436
  393. package/src/common/styles/realtimeDelayStyle.ts +0 -27
  394. package/src/common/styles/realtimeHeadingStyle.ts +0 -138
  395. package/src/common/styles/realtimeSimpleStyle.ts +0 -25
  396. package/src/common/utils/compareDepartures.ts +0 -46
  397. package/src/common/utils/createCanvas.ts +0 -33
  398. package/src/common/utils/createRealtimeFilters.test.js +0 -100
  399. package/src/common/utils/createRealtimeFilters.ts +0 -96
  400. package/src/common/utils/debounceDeparturesMessages.ts +0 -52
  401. package/src/common/utils/debounceWebsocketMessages.ts +0 -47
  402. package/src/common/utils/getLayersAsFlatArray.ts +0 -17
  403. package/src/common/utils/getMapboxMapCopyrights.test.js +0 -47
  404. package/src/common/utils/getMapboxMapCopyrights.ts +0 -52
  405. package/src/common/utils/getMapboxRender.ts +0 -104
  406. package/src/common/utils/getMaplibreRender.ts +0 -54
  407. package/src/common/utils/getUrlWithParams.ts +0 -21
  408. package/src/common/utils/getVehiclePosition.ts +0 -92
  409. package/src/common/utils/realtimeConfig.test.js +0 -57
  410. package/src/common/utils/realtimeConfig.ts +0 -228
  411. package/src/common/utils/removeDuplicate.test.js +0 -22
  412. package/src/common/utils/removeDuplicate.ts +0 -22
  413. package/src/common/utils/renderTrajectories.ts +0 -194
  414. package/src/common/utils/sortAndFilterDepartures.ts +0 -78
  415. package/src/common/utils/sortByDelay.ts +0 -29
  416. package/src/common/utils/timeUtils.test.js +0 -16
  417. package/src/common/utils/timeUtils.ts +0 -45
  418. package/src/index.js +0 -10
  419. package/src/mapbox/layers/Layer.test.js +0 -217
  420. package/src/mapbox/layers/Layer.ts +0 -144
  421. package/src/mapbox/layers/RealtimeLayer.test.js +0 -13
  422. package/src/mapbox/layers/RealtimeLayer.ts +0 -350
  423. package/src/mapbox/utils/getMercatorResolution.ts +0 -21
  424. package/src/mapbox/utils/getSourceCoordinates.ts +0 -34
  425. package/src/ol/README.md +0 -0
  426. package/src/ol/controls/CopyrightControl.test.js +0 -211
  427. package/src/ol/controls/CopyrightControl.ts +0 -82
  428. package/src/ol/controls/RoutingControl.test.js +0 -205
  429. package/src/ol/controls/RoutingControl.ts +0 -869
  430. package/src/ol/controls/StopFinderControl.test.js +0 -59
  431. package/src/ol/controls/snapshots/RoutingControlRouteGen10.json +0 -58
  432. package/src/ol/controls/snapshots/RoutingControlRouteGen100.json +0 -292
  433. package/src/ol/controls/snapshots/RoutingControlRouteGen30.json +0 -69
  434. package/src/ol/controls/snapshots/RoutingControlRouteGen5.json +0 -58
  435. package/src/ol/controls/snapshots/RoutingControlRouteOSM.json +0 -759
  436. package/src/ol/controls/snapshots/RoutingControlStation1.json +0 -60
  437. package/src/ol/controls/snapshots/RoutingControlStation2.json +0 -49
  438. package/src/ol/layers/Layer.test.js +0 -212
  439. package/src/ol/layers/Layer.ts +0 -252
  440. package/src/ol/layers/MapGlLayer.ts +0 -294
  441. package/src/ol/layers/MapboxLayer.test.js +0 -190
  442. package/src/ol/layers/MapboxLayer.ts +0 -136
  443. package/src/ol/layers/MapboxStyleLayer.test.js +0 -258
  444. package/src/ol/layers/MapboxStyleLayer.ts +0 -466
  445. package/src/ol/layers/RealtimeLayer.test.js +0 -84
  446. package/src/ol/layers/RealtimeLayer.ts +0 -465
  447. package/src/ol/layers/RoutingLayer.test.js +0 -48
  448. package/src/ol/layers/RoutingLayer.ts +0 -113
  449. package/src/ol/layers/VectorLayer.test.js +0 -87
  450. package/src/ol/layers/VectorLayer.ts +0 -48
  451. package/src/ol/layers/WMSLayer.test.js +0 -65
  452. package/src/ol/layers/WMSLayer.ts +0 -114
  453. package/src/ol/styles/fullTrajectoryDelayStyle.ts +0 -37
  454. package/src/ol/styles/fullTrajectoryStyle.ts +0 -56
  455. package/tsconfig.json +0 -23
  456. /package/{src/api → api}/index.js +0 -0
  457. /package/{src/common → common}/index.js +0 -0
  458. /package/{src/common → common}/styles/index.js +0 -0
  459. /package/{src/mapbox → mapbox}/controls/index.js +0 -0
  460. /package/{src/mapbox → mapbox}/index.js +0 -0
  461. /package/{src/mapbox → mapbox}/layers/index.js +0 -0
  462. /package/{src/mapbox → mapbox}/utils/index.js +0 -0
  463. /package/{src/ol → ol}/controls/index.js +0 -0
  464. /package/{src/ol → ol}/index.js +0 -0
  465. /package/{src/ol → ol}/layers/index.js +0 -0
  466. /package/{src/ol → ol}/styles/index.js +0 -0
  467. /package/{src/types → types}/common.d.ts +0 -0
  468. /package/{src/types → types}/index.d.ts +0 -0
  469. /package/{src/types → types}/realtime.d.ts +0 -0
  470. /package/{src/types → types}/routing.d.ts +0 -0
  471. /package/{src/types → types}/stops.d.ts +0 -0
@@ -1,194 +0,0 @@
1
- import type { Map as OlMap } from 'ol';
2
- import BaseObject from 'ol/Object';
3
- import type { AnyMap, AnyMapboxMap } from '../../types';
4
-
5
- export type ControlCommonOptions = {
6
- active?: Boolean;
7
- element?: HTMLElement;
8
- target?: HTMLElement;
9
- render?: () => void;
10
- };
11
-
12
- /**
13
- * A class representing a control to display on map.
14
- *
15
- * @example
16
- * const control = new Control();
17
- *
18
- * @classproperty {ol/Map~Map|mapboxgl.Map} map - The map which the control refers to.
19
- * @classproperty {boolean} active - Active the control.
20
- * @classproperty {HTMLElement} element - The HTML element used to render the control.
21
- * @classproperty {HTMLElement} target - The HTML element where to render the element property. Default is the map's element. Read only.
22
- */
23
- class ControlCommon extends BaseObject {
24
- active: Boolean;
25
-
26
- map?: AnyMap;
27
-
28
- target?: HTMLElement;
29
-
30
- element?: HTMLElement;
31
-
32
- /**
33
- * Constructor
34
- *
35
- * @param {Object} [options] Control options.
36
- * @param {boolean} [options.active = true] Whether the control is active or not.
37
- * @param {HTMLElement} [options.element] The HTML element used to render the control.
38
- * @param {HTMLElement} [options.target] The HTML element where to render the element property. Default is the map's element.
39
- * @param {function} [options.render] Render function called whenever the control needs to be rerendered.
40
- */
41
- constructor(options: ControlCommonOptions = {}) {
42
- super(options);
43
- this.defineProperties(options);
44
-
45
- const { active } = {
46
- active: options.active !== false,
47
- ...options,
48
- };
49
-
50
- /**
51
- * @private
52
- */
53
- this.active = active;
54
- }
55
-
56
- /**
57
- * Define control's properties.
58
- *
59
- * @private
60
- * @private
61
- */
62
- defineProperties(options: ControlCommonOptions) {
63
- const { target, element, render } = {
64
- ...options,
65
- };
66
-
67
- Object.defineProperties(this, {
68
- active: {
69
- get: () => this.get('active'),
70
- set: (newActive) => {
71
- this.set('active', newActive);
72
- if (newActive) {
73
- this.activate();
74
- } else {
75
- this.deactivate();
76
- }
77
- this.render();
78
- },
79
- },
80
- map: {
81
- get: () => this.get('map'),
82
- set: (map) => {
83
- // Remove previous node.
84
- if (this.map && this.element && this.element.parentNode) {
85
- this.element.parentNode.removeChild(this.element);
86
- }
87
-
88
- // Clean listeners
89
- this.deactivate();
90
-
91
- this.set('map', map);
92
-
93
- if (this.map) {
94
- // Add new node
95
- const targett =
96
- this.target ||
97
- ((this.map as OlMap).getTargetElement &&
98
- (this.map as OlMap).getTargetElement()) ||
99
- ((this.map as AnyMapboxMap).getContainer &&
100
- (this.map as AnyMapboxMap).getContainer());
101
-
102
- if (!this.element) {
103
- this.createDefaultElement();
104
- }
105
-
106
- if (this.element) {
107
- targett.appendChild(this.element);
108
- }
109
-
110
- // Add listeners
111
- if (this.active) {
112
- this.activate();
113
- }
114
- }
115
- this.render();
116
- },
117
- },
118
- target: {
119
- value: target,
120
- },
121
- element: {
122
- value: element,
123
- writable: true,
124
- },
125
- render: {
126
- /** @private */
127
- value: render || this.render,
128
- writable: true,
129
- },
130
- });
131
- }
132
-
133
- /**
134
- * Attach the control to the map. Add events, html element ...
135
- */
136
- attachToMap(map: AnyMap) {
137
- this.map = map;
138
- }
139
-
140
- /**
141
- * Detach the control From the map. Remove events, html element ..
142
- */
143
- detachFromMap() {
144
- this.map = undefined;
145
- }
146
-
147
- /**
148
- * Add listeners then renders the control.
149
- * To be defined in inherited classes.
150
- */
151
- activate() {
152
- this.deactivate();
153
- }
154
-
155
- /**
156
- * Remove listeners added by activate() function then renders the control.
157
- * To be defined in inherited classes.
158
- */
159
- // eslint-disable-next-line class-methods-use-this
160
- deactivate() {
161
- // eslint-disable-next-line no-console
162
- console.error(
163
- 'The function deactivate() must be implemented in subclasses',
164
- );
165
- }
166
-
167
- /**
168
- * The default render function. It renders content in the HTML element.
169
- * To be defined in inherited classes.
170
- *
171
- * @private
172
- */
173
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
174
- render(options?: any) {
175
- // eslint-disable-next-line no-console
176
- console.error('The function render() must be implemented in subclasses');
177
- }
178
-
179
- /**
180
- * The default element to display if this.element is not defined.
181
- * To be defined in inherited classes.
182
- *
183
- * @private
184
- */
185
- // eslint-disable-next-line class-methods-use-this
186
- createDefaultElement() {
187
- // eslint-disable-next-line no-console
188
- console.error(
189
- 'The function createDefaultElement() must be implemented in subclasses',
190
- );
191
- }
192
- }
193
-
194
- export default ControlCommon;
@@ -1,41 +0,0 @@
1
- /* eslint-disable max-classes-per-file */
2
- import ControlCommon from './ControlCommon';
3
-
4
- /**
5
- * A class representing a copyright control to display on map.
6
- * This class only draw an html element, with an empty string in it.
7
- * Use subclasses to use it in an ol or mapbox map.
8
- */
9
- class CopyrightControlCommon extends ControlCommon {
10
- render() {
11
- if (!this.element) {
12
- return;
13
- }
14
- this.element.innerHTML = this.active
15
- ? this.getCopyrights().join(' | ')
16
- : '';
17
- }
18
-
19
- createDefaultElement() {
20
- this.element = document.createElement('div');
21
- this.element.id = 'mbt-copyright';
22
- Object.assign(this.element.style, {
23
- position: 'absolute',
24
- bottom: 0,
25
- right: 0,
26
- fontSize: '.8rem',
27
- padding: '0 10px',
28
- });
29
- }
30
-
31
- getCopyrights() {
32
- // eslint-disable-next-line no-console
33
- console.error(
34
- 'The getCopyrights() function must be implemented in subclasses.',
35
- this,
36
- );
37
- return [] as string[];
38
- }
39
- }
40
-
41
- export default CopyrightControlCommon;
@@ -1,192 +0,0 @@
1
- /* eslint-disable no-empty-function */
2
- /* eslint-disable no-useless-constructor */
3
- /* eslint-disable class-methods-use-this */
4
- /* eslint-disable max-classes-per-file */
5
- import { FeatureCollection } from '@turf/helpers';
6
- import { Feature } from 'geojson';
7
- import { StopsAPI } from '../../api';
8
- import { StopsAPIOptions } from '../../api/StopsAPI';
9
- import { StopsParameters } from '../../types';
10
- import ControlCommon, { ControlCommonOptions } from './ControlCommon';
11
-
12
- export type StopFinderControlCommonOptions = ControlCommonOptions &
13
- StopsAPIOptions & {
14
- placeholder?: string;
15
- apiParams: StopsParameters;
16
- };
17
-
18
- /**
19
- * A class representing a stop finder control to display on map.
20
- * This class only draw the html elements.
21
- * The geographic logic must be implemented by subclasses.
22
- */
23
- class StopFinderControlCommon extends ControlCommon {
24
- apiParams: StopsParameters;
25
-
26
- placeholder: string;
27
-
28
- api: StopsAPI;
29
-
30
- abortController?: AbortController;
31
-
32
- suggestionsElt?: HTMLElement;
33
-
34
- inputElt?: HTMLInputElement;
35
-
36
- clearElt?: HTMLDivElement;
37
-
38
- /**
39
- * Constructor.
40
- *
41
- * @param {Object} options Map options
42
- * @param {string} options.apiKey Access key for [geOps services](https://developer.geops.io/). See StopsAPI.
43
- * @param {string} [options.url='https://api.geops.io/tracker/v1'] Stops service url. See StopsAPI.
44
- * @param {string} [options.placeholder='Search for a stop...'] Input field placeholder.
45
- * @param {StopsSearchParams} [options.apiParams={ limit: 20 }] Request parameters. See [Stops service documentation](https://developer.geops.io/apis/5dcbd702a256d90001cf1361/).
46
- */
47
- constructor(options: StopFinderControlCommonOptions) {
48
- super(options);
49
- const { apiParams, apiKey, url, placeholder } = options || {};
50
-
51
- this.apiParams = { limit: 20, ...(apiParams || {}) };
52
- this.placeholder = placeholder || 'Search for a stop...';
53
-
54
- const apiOptions: { apiKey?: string; url?: string } = { apiKey };
55
- if (url) {
56
- apiOptions.url = url;
57
- }
58
- this.api = new StopsAPI(apiOptions);
59
- this.abortController = new AbortController();
60
- }
61
-
62
- deactivate() {}
63
-
64
- render(featureCollection?: FeatureCollection) {
65
- const suggestions = featureCollection?.features || [];
66
- if (!this.suggestionsElt) {
67
- return;
68
- }
69
-
70
- this.suggestionsElt.style.display = suggestions.length ? 'block' : 'none';
71
-
72
- this.suggestionsElt.innerHTML = '';
73
-
74
- suggestions.forEach((suggestion) => {
75
- const suggElt = document.createElement('div');
76
- suggElt.innerHTML = suggestion?.properties?.name;
77
- suggElt.onclick = () => {
78
- // @ts-ignore
79
- this.onSuggestionClick(suggestion);
80
- };
81
- Object.assign(suggElt.style, {
82
- padding: '5px 12px',
83
- });
84
- this.suggestionsElt?.appendChild(suggElt);
85
- });
86
- }
87
-
88
- createDefaultElement() {
89
- /**
90
- * Define a default element.
91
- */
92
- this.element = document.createElement('div');
93
- this.element.id = 'mbt-search';
94
- Object.assign(this.element.style, {
95
- position: 'absolute',
96
- top: 0,
97
- left: '50px',
98
- margin: '10px',
99
- display: 'flex',
100
- flexDirection: 'column',
101
- width: '320px',
102
- });
103
-
104
- // Create input element
105
- this.inputElt = document.createElement('input');
106
- this.inputElt.type = 'text';
107
- this.inputElt.placeholder = this.placeholder;
108
- this.inputElt.autocomplete = 'off';
109
- this.inputElt.onkeyup = (evt) => {
110
- this.abortController?.abort();
111
- this.abortController = new AbortController();
112
- // @ts-ignore
113
- this.search(evt.target.value, this.abortController);
114
- };
115
- Object.assign(this.inputElt.style, {
116
- padding: '10px 30px 10px 10px',
117
- });
118
- this.element.appendChild(this.inputElt);
119
-
120
- // Create suggestions list element
121
- this.suggestionsElt = document.createElement('div');
122
- Object.assign(this.suggestionsElt.style, {
123
- backgroundColor: 'white',
124
- overflowY: 'auto',
125
- cursor: 'pointer',
126
- });
127
- this.element.appendChild(this.suggestionsElt);
128
-
129
- this.clearElt = document.createElement('div');
130
- Object.assign(this.clearElt.style, {
131
- display: 'none',
132
- position: 'absolute',
133
- right: '0',
134
- padding: '0 10px',
135
- fontSize: '200%',
136
- cursor: 'pointer',
137
- });
138
- this.clearElt.innerHTML = '×';
139
- this.clearElt.onclick = () => this.clear();
140
- this.element.appendChild(this.clearElt);
141
- }
142
-
143
- /**
144
- * Launch a search.
145
- *
146
- * @param {String} query The query to search for.
147
- * @param {AbortController} abortController Abort controller used to cancel the request.
148
- * @return {Promise<Array<GeoJSONFeature>>} An array of GeoJSON features with coordinates in [EPSG:4326](http://epsg.io/4326).
149
- */
150
- search(q: string, abortController: AbortController) {
151
- if (q !== undefined || q !== null) {
152
- this.apiParams.q = q;
153
- }
154
-
155
- if (this.clearElt) {
156
- this.clearElt.style.display = 'block';
157
- }
158
-
159
- return this.api
160
- .search(
161
- this.apiParams,
162
- abortController && { signal: abortController.signal },
163
- )
164
- .then((data) => {
165
- this.render(data as FeatureCollection);
166
- })
167
- .catch(() => {
168
- this.render();
169
- });
170
- }
171
-
172
- /**
173
- * To be defined in inherited class
174
- */
175
- // eslint-disable-next-line no-unused-vars, @typescript-eslint/no-unused-vars
176
- onSuggestionClick(suggestion: Feature) {}
177
-
178
- /**
179
- * Clear the search field and close the control.
180
- */
181
- clear() {
182
- if (!this.suggestionsElt || !this.inputElt || !this.clearElt) {
183
- return;
184
- }
185
-
186
- this.inputElt.value = '';
187
- this.suggestionsElt.innerHTML = '';
188
- this.clearElt.style.display = 'none';
189
- }
190
- }
191
-
192
- export default StopFinderControlCommon;
@@ -1,158 +0,0 @@
1
- import VectorLayer from 'ol/layer/Vector';
2
- import VectorSource from 'ol/source/Vector';
3
- import Layer from './LayerCommon';
4
-
5
- const olLayer = new VectorLayer({ source: new VectorSource() });
6
-
7
- describe('Layer', () => {
8
- test('should initialize.', () => {
9
- const layer = new Layer({ name: 'Layer', olLayer });
10
- expect(layer).toBeInstanceOf(Layer);
11
- });
12
-
13
- test('should define default properties.', () => {
14
- const options = {
15
- name: 'Layer',
16
- key: 'Layerkey',
17
- olLayer,
18
- };
19
- const layer = new Layer(options);
20
-
21
- expect(layer).toBeInstanceOf(Layer);
22
- expect(layer.options).toEqual(options);
23
- expect(layer.name).toEqual(options.name);
24
- expect(layer.key).toEqual('Layerkey');
25
- expect(layer.hitTolerance).toBe(5);
26
- expect(layer.copyrights).toEqual([]);
27
- expect(layer.visible).toBe(true);
28
- expect(layer.properties).toEqual({});
29
- expect(layer.map).toBe(undefined);
30
- expect(layer.group).toBe(undefined);
31
- });
32
-
33
- test('should be visible by default.', () => {
34
- const layer = new Layer();
35
- expect(layer.visible).toBe(true);
36
- });
37
-
38
- test('should be hidden using constructor.', () => {
39
- const layer = new Layer({ visible: false });
40
- expect(layer.visible).toBe(false);
41
- });
42
-
43
- test('should be hidden using setter.', () => {
44
- const layer = new Layer();
45
- layer.visible = false;
46
- expect(layer.visible).toBe(false);
47
- });
48
-
49
- test('should visibility stay unchanged', () => {
50
- const layer = new Layer();
51
- layer.visible = false;
52
- expect(layer.visible).toBe(false);
53
- });
54
-
55
- test('should return its name.', () => {
56
- const layer = new Layer({ name: 'Layer' });
57
- expect(layer.name).toEqual('Layer');
58
- });
59
-
60
- test('should called detachFromMap on initialization.', () => {
61
- const layer = new Layer();
62
- const spy = jest.spyOn(layer, 'detachFromMap');
63
- layer.attachToMap();
64
- expect(spy).toHaveBeenCalledTimes(1);
65
- });
66
-
67
- test('should properties correctly set and get.', () => {
68
- const layer = new Layer({
69
- name: 'Layer',
70
- olLayer,
71
- properties: {
72
- abc: 'foo',
73
- },
74
- });
75
- expect(layer).toBeInstanceOf(Layer);
76
- expect(layer.get('abc')).toEqual('foo');
77
-
78
- layer.set('abc', 'bar');
79
- expect(layer.get('abc')).toEqual('bar');
80
- });
81
-
82
- test('should set children', () => {
83
- const layer = new Layer({
84
- children: [new Layer(), new Layer()],
85
- });
86
- expect(layer.children.length).toBe(2);
87
- expect(layer.children[0].parent).toBe(layer);
88
- expect(layer.children[1].parent).toBe(layer);
89
- });
90
-
91
- test('should initialize copyrights property.', () => {
92
- const layer = new Layer({
93
- name: 'Layer',
94
- olLayer,
95
- copyrights: ['&copy: copyright', 'another copyright'],
96
- });
97
-
98
- expect(layer.copyrights[0]).toEqual('&copy: copyright');
99
- });
100
-
101
- test('should set and get copyright property.', () => {
102
- const layer = new Layer({
103
- name: 'Layer',
104
- olLayer,
105
- });
106
- expect(layer).toBeInstanceOf(Layer);
107
- expect(layer.copyright).toEqual(undefined);
108
-
109
- layer.copyright = '&copy; OSM Contributors';
110
- expect(layer.copyright).toEqual('&copy; OSM Contributors');
111
- });
112
-
113
- describe('#attachToMap()', () => {
114
- test('should set map.', () => {
115
- const layer = new Layer({
116
- name: 'Layer',
117
- olLayer,
118
- });
119
-
120
- expect(layer.map).toBe(undefined);
121
- const obj = {};
122
- layer.attachToMap(obj);
123
- expect(layer.map).toBe(obj);
124
- });
125
-
126
- test('should call terminate.', () => {
127
- const layer = new Layer({
128
- name: 'Layer',
129
- olLayer,
130
- });
131
- const spy = jest.spyOn(layer, 'detachFromMap');
132
- layer.attachToMap();
133
- expect(spy).toHaveBeenCalledTimes(1);
134
- });
135
- });
136
-
137
- describe('#getFeatureInfoAtCoordinate()', () => {
138
- test('return an empty fetaureInfo object and display an error message', (done) => {
139
- // eslint-disable-next-line no-console
140
- console.error = jest.fn();
141
- const layer = new Layer({
142
- name: 'Layer',
143
- olLayer,
144
- });
145
- const coord = [0, 0];
146
- layer.getFeatureInfoAtCoordinate(coord).then((featureInfo) => {
147
- expect(featureInfo.features).toEqual([]);
148
- expect(featureInfo.layer).toEqual(layer);
149
- expect(featureInfo.coordinate).toEqual(coord);
150
- // eslint-disable-next-line no-console
151
- expect(console.error).toHaveBeenCalledTimes(1);
152
- done();
153
- // eslint-disable-next-line no-console
154
- console.error.mockRestore();
155
- });
156
- });
157
- });
158
- });