mobility-toolbox-js 2.0.0-beta.8 → 2.0.0-beta.80

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 (447) hide show
  1. package/api/RealtimeAPI.d.ts +279 -0
  2. package/api/RealtimeAPI.d.ts.map +1 -0
  3. package/api/RealtimeAPI.js +466 -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/index.js +3 -0
  13. package/api/typedefs.d.ts +179 -0
  14. package/api/typedefs.d.ts.map +1 -0
  15. package/{src/api/tralis → api}/typedefs.js +4 -10
  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 +57 -0
  19. package/common/api/WebSocketAPI.d.ts +153 -0
  20. package/common/api/WebSocketAPI.d.ts.map +1 -0
  21. package/common/api/WebSocketAPI.js +341 -0
  22. package/common/controls/ControlCommon.d.ts +76 -0
  23. package/common/controls/ControlCommon.d.ts.map +1 -0
  24. package/common/controls/ControlCommon.js +150 -0
  25. package/common/controls/CopyrightControlCommon.d.ts +13 -0
  26. package/common/controls/CopyrightControlCommon.d.ts.map +1 -0
  27. package/common/controls/CopyrightControlCommon.js +34 -0
  28. package/common/controls/StopFinderControlCommon.d.ts +55 -0
  29. package/common/controls/StopFinderControlCommon.d.ts.map +1 -0
  30. package/common/controls/StopFinderControlCommon.js +144 -0
  31. package/common/index.d.ts +3 -0
  32. package/common/index.d.ts.map +1 -0
  33. package/common/index.js +2 -0
  34. package/common/layers/LayerCommon.d.ts +94 -0
  35. package/common/layers/LayerCommon.d.ts.map +1 -0
  36. package/common/layers/LayerCommon.js +244 -0
  37. package/common/mixins/RealtimeLayerMixin.d.ts +286 -0
  38. package/common/mixins/RealtimeLayerMixin.d.ts.map +1 -0
  39. package/common/mixins/RealtimeLayerMixin.js +776 -0
  40. package/common/mixins/UserInteractionsLayerMixin.d.ts +60 -0
  41. package/common/mixins/UserInteractionsLayerMixin.d.ts.map +1 -0
  42. package/common/mixins/UserInteractionsLayerMixin.js +241 -0
  43. package/common/styles/index.d.ts +5 -0
  44. package/common/styles/index.d.ts.map +1 -0
  45. package/common/styles/index.js +4 -0
  46. package/common/styles/realtimeDefaultStyle.d.ts +36 -0
  47. package/common/styles/realtimeDefaultStyle.d.ts.map +1 -0
  48. package/common/styles/realtimeDefaultStyle.js +275 -0
  49. package/{src/common/styles/trackerDelayStyle.js → common/styles/realtimeDelayStyle.d.ts} +4 -9
  50. package/common/styles/realtimeDelayStyle.d.ts.map +1 -0
  51. package/common/styles/realtimeDelayStyle.js +13 -0
  52. package/common/styles/realtimeHeadingStyle.d.ts +12 -0
  53. package/common/styles/realtimeHeadingStyle.d.ts.map +1 -0
  54. package/common/styles/realtimeHeadingStyle.js +85 -0
  55. package/common/styles/realtimeSimpleStyle.d.ts +4 -0
  56. package/common/styles/realtimeSimpleStyle.d.ts.map +1 -0
  57. package/common/styles/realtimeSimpleStyle.js +23 -0
  58. package/common/typedefs.d.ts +111 -0
  59. package/common/typedefs.d.ts.map +1 -0
  60. package/common/typedefs.js +52 -0
  61. package/common/utils/compareDepartures.d.ts +11 -0
  62. package/common/utils/compareDepartures.d.ts.map +1 -0
  63. package/common/utils/compareDepartures.js +35 -0
  64. package/common/utils/createCanvas.d.ts +10 -0
  65. package/common/utils/createCanvas.d.ts.map +1 -0
  66. package/common/utils/createCanvas.js +27 -0
  67. package/common/utils/createRealtimeFilters.d.ts +13 -0
  68. package/common/utils/createRealtimeFilters.d.ts.map +1 -0
  69. package/common/utils/createRealtimeFilters.js +74 -0
  70. package/common/utils/debounceDeparturesMessages.d.ts +12 -0
  71. package/common/utils/debounceDeparturesMessages.d.ts.map +1 -0
  72. package/common/utils/debounceDeparturesMessages.js +24 -0
  73. package/common/utils/debounceWebsocketMessages.d.ts +11 -0
  74. package/common/utils/debounceWebsocketMessages.d.ts.map +1 -0
  75. package/common/utils/debounceWebsocketMessages.js +29 -0
  76. package/common/utils/getLayersAsFlatArray.d.ts +3 -0
  77. package/common/utils/getLayersAsFlatArray.d.ts.map +1 -0
  78. package/common/utils/getLayersAsFlatArray.js +15 -0
  79. package/common/utils/getMapboxMapCopyrights.d.ts +18 -0
  80. package/common/utils/getMapboxMapCopyrights.d.ts.map +1 -0
  81. package/common/utils/getMapboxMapCopyrights.js +30 -0
  82. package/common/utils/getMapboxRender.d.ts +7 -0
  83. package/common/utils/getMapboxRender.d.ts.map +1 -0
  84. package/common/utils/getMapboxRender.js +87 -0
  85. package/common/utils/getMaplibreRender.d.ts +7 -0
  86. package/common/utils/getMaplibreRender.d.ts.map +1 -0
  87. package/common/utils/getMaplibreRender.js +38 -0
  88. package/common/utils/getRealtimeModeSuffix.d.ts +10 -0
  89. package/common/utils/getRealtimeModeSuffix.d.ts.map +1 -0
  90. package/common/utils/getRealtimeModeSuffix.js +7 -0
  91. package/common/utils/getUrlWithParams.d.ts +9 -0
  92. package/common/utils/getUrlWithParams.d.ts.map +1 -0
  93. package/common/utils/getUrlWithParams.js +18 -0
  94. package/common/utils/getVehiclePosition.d.ts +16 -0
  95. package/common/utils/getVehiclePosition.d.ts.map +1 -0
  96. package/common/utils/getVehiclePosition.js +72 -0
  97. package/common/utils/index.d.ts +17 -0
  98. package/common/utils/index.d.ts.map +1 -0
  99. package/common/utils/index.js +17 -0
  100. package/common/utils/realtimeConfig.d.ts +49 -0
  101. package/common/utils/realtimeConfig.d.ts.map +1 -0
  102. package/common/utils/realtimeConfig.js +173 -0
  103. package/common/utils/removeDuplicate.d.ts +10 -0
  104. package/common/utils/removeDuplicate.d.ts.map +1 -0
  105. package/common/utils/removeDuplicate.js +15 -0
  106. package/common/utils/renderTrajectories.d.ts +17 -0
  107. package/common/utils/renderTrajectories.d.ts.map +1 -0
  108. package/common/utils/renderTrajectories.js +110 -0
  109. package/common/utils/sortAndFilterDepartures.d.ts +16 -0
  110. package/common/utils/sortAndFilterDepartures.d.ts.map +1 -0
  111. package/common/utils/sortAndFilterDepartures.js +58 -0
  112. package/common/utils/sortByDelay.d.ts +3 -0
  113. package/common/utils/sortByDelay.d.ts.map +1 -0
  114. package/common/utils/sortByDelay.js +20 -0
  115. package/common/utils/timeUtils.d.ts +24 -0
  116. package/common/utils/timeUtils.d.ts.map +1 -0
  117. package/{src/common → common}/utils/timeUtils.js +13 -18
  118. package/iife.d.ts +3 -0
  119. package/iife.d.ts.map +1 -0
  120. package/{src/iife.js → iife.js} +1 -3
  121. package/index.d.ts +10 -0
  122. package/index.d.ts.map +1 -0
  123. package/index.js +10 -0
  124. package/mapbox/controls/CopyrightControl.d.ts +29 -0
  125. package/mapbox/controls/CopyrightControl.d.ts.map +1 -0
  126. package/mapbox/controls/CopyrightControl.js +48 -0
  127. package/mapbox/controls/index.d.ts +2 -0
  128. package/mapbox/controls/index.d.ts.map +1 -0
  129. package/mapbox/index.d.ts +6 -0
  130. package/mapbox/index.d.ts.map +1 -0
  131. package/{src/mapbox → mapbox}/index.js +1 -0
  132. package/mapbox/layers/Layer.d.ts +59 -0
  133. package/mapbox/layers/Layer.d.ts.map +1 -0
  134. package/mapbox/layers/Layer.js +101 -0
  135. package/mapbox/layers/RealtimeLayer.d.ts +181 -0
  136. package/mapbox/layers/RealtimeLayer.d.ts.map +1 -0
  137. package/mapbox/layers/RealtimeLayer.js +276 -0
  138. package/mapbox/layers/index.d.ts +3 -0
  139. package/mapbox/layers/index.d.ts.map +1 -0
  140. package/mapbox/layers/index.js +2 -0
  141. package/mapbox/utils/getMercatorResolution.d.ts +9 -0
  142. package/mapbox/utils/getMercatorResolution.d.ts.map +1 -0
  143. package/mapbox/utils/getMercatorResolution.js +18 -0
  144. package/mapbox/utils/getSourceCoordinates.d.ts +9 -0
  145. package/mapbox/utils/getSourceCoordinates.d.ts.map +1 -0
  146. package/mapbox/utils/getSourceCoordinates.js +27 -0
  147. package/mapbox/utils/index.d.ts +3 -0
  148. package/mapbox/utils/index.d.ts.map +1 -0
  149. package/mapbox/utils/index.js +2 -0
  150. package/mbt.js +59981 -0
  151. package/mbt.js.map +7 -0
  152. package/mbt.min.js +1084 -0
  153. package/mbt.min.js.map +7 -0
  154. package/ol/controls/CopyrightControl.d.ts +31 -0
  155. package/ol/controls/CopyrightControl.d.ts.map +1 -0
  156. package/ol/controls/CopyrightControl.js +68 -0
  157. package/ol/controls/RoutingControl.d.ts +193 -0
  158. package/ol/controls/RoutingControl.d.ts.map +1 -0
  159. package/ol/controls/RoutingControl.js +631 -0
  160. package/ol/controls/StopFinderControl.d.ts +30 -0
  161. package/ol/controls/StopFinderControl.d.ts.map +1 -0
  162. package/{src/ol → ol}/controls/StopFinderControl.js +10 -16
  163. package/ol/controls/index.d.ts +4 -0
  164. package/ol/controls/index.d.ts.map +1 -0
  165. package/ol/index.d.ts +6 -0
  166. package/ol/index.d.ts.map +1 -0
  167. package/ol/layers/Layer.d.ts +86 -0
  168. package/ol/layers/Layer.d.ts.map +1 -0
  169. package/ol/layers/Layer.js +160 -0
  170. package/ol/layers/MapGlLayer.d.ts +67 -0
  171. package/ol/layers/MapGlLayer.d.ts.map +1 -0
  172. package/ol/layers/MapGlLayer.js +218 -0
  173. package/ol/layers/MapboxLayer.d.ts +50 -0
  174. package/ol/layers/MapboxLayer.d.ts.map +1 -0
  175. package/ol/layers/MapboxLayer.js +109 -0
  176. package/ol/layers/MapboxStyleLayer.d.ts +129 -0
  177. package/ol/layers/MapboxStyleLayer.d.ts.map +1 -0
  178. package/ol/layers/MapboxStyleLayer.js +374 -0
  179. package/ol/layers/MaplibreLayer.d.ts +28 -0
  180. package/ol/layers/MaplibreLayer.d.ts.map +1 -0
  181. package/ol/layers/MaplibreLayer.js +34 -0
  182. package/ol/layers/RealtimeLayer.d.ts +202 -0
  183. package/ol/layers/RealtimeLayer.d.ts.map +1 -0
  184. package/ol/layers/RealtimeLayer.js +340 -0
  185. package/ol/layers/RoutingLayer.d.ts +34 -0
  186. package/ol/layers/RoutingLayer.d.ts.map +1 -0
  187. package/ol/layers/RoutingLayer.js +85 -0
  188. package/ol/layers/VectorLayer.d.ts +25 -0
  189. package/ol/layers/VectorLayer.d.ts.map +1 -0
  190. package/ol/layers/VectorLayer.js +38 -0
  191. package/ol/layers/WMSLayer.d.ts +42 -0
  192. package/ol/layers/WMSLayer.d.ts.map +1 -0
  193. package/ol/layers/WMSLayer.js +88 -0
  194. package/ol/layers/index.d.ts +9 -0
  195. package/ol/layers/index.d.ts.map +1 -0
  196. package/{src/ol → ol}/layers/index.js +1 -1
  197. package/ol/styles/fullTrajectoryDelayStyle.d.ts +4 -0
  198. package/ol/styles/fullTrajectoryDelayStyle.d.ts.map +1 -0
  199. package/ol/styles/fullTrajectoryDelayStyle.js +33 -0
  200. package/ol/styles/fullTrajectoryStyle.d.ts +5 -0
  201. package/ol/styles/fullTrajectoryStyle.d.ts.map +1 -0
  202. package/ol/styles/fullTrajectoryStyle.js +44 -0
  203. package/ol/styles/index.d.ts +3 -0
  204. package/ol/styles/index.d.ts.map +1 -0
  205. package/package.json +96 -189
  206. package/setupTests.d.ts +2 -0
  207. package/setupTests.d.ts.map +1 -0
  208. package/{src/setupTests.js → setupTests.js} +13 -2
  209. package/types/common.d.ts +122 -0
  210. package/types/index.d.ts +11 -0
  211. package/types/realtime.d.ts +320 -0
  212. package/types/routing.d.ts +206 -0
  213. package/types/stops.d.ts +143 -0
  214. package/.babelrc +0 -6
  215. package/.esdoc.json +0 -17
  216. package/.eslintignore +0 -1
  217. package/.github/workflows/conventional-pr-title.yml +0 -21
  218. package/.github/workflows/cypress.yml +0 -29
  219. package/.github/workflows/nodejs.yml +0 -28
  220. package/.husky/commit-msg +0 -4
  221. package/.husky/post-checkout +0 -4
  222. package/.husky/post-merge +0 -4
  223. package/.husky/post-rebase +0 -4
  224. package/.husky/pre-commit +0 -4
  225. package/.neutrinorc.js +0 -176
  226. package/.nvmrc +0 -1
  227. package/CHANGELOG.md +0 -10
  228. package/LICENSE +0 -21
  229. package/README.md +0 -23
  230. package/__mocks__/mapbox-gl.js +0 -81
  231. package/__mocks__/maplibre-gl.js +0 -81
  232. package/commitlint.config.js +0 -1
  233. package/cypress/fixtures/example.json +0 -5
  234. package/cypress/integration/examples/api.spec.js +0 -7
  235. package/cypress/integration/examples/examples.spec.js +0 -7
  236. package/cypress/integration/examples/navigation.spec.js +0 -29
  237. package/cypress/plugins/index.js +0 -21
  238. package/cypress/support/commands.js +0 -25
  239. package/cypress/support/index.js +0 -20
  240. package/cypress.json +0 -4
  241. package/data/fetchRoute.json +0 -292
  242. package/data/fetchTrajectories.json +0 -18
  243. package/data/fetchTrajectoryById.json +0 -3
  244. package/data/fetchTrajectoryStations.json +0 -18
  245. package/data/stopsSearch.json +0 -15
  246. package/documentation.yml +0 -4
  247. package/esdoc/README.md +0 -27
  248. package/esdoc/plugins/MyPlugin.js +0 -69
  249. package/esdoc/plugins/dynamic-property-plugin/Plugin.js +0 -50
  250. package/esdoc/plugins/externals-plugin/Plugin.js +0 -45
  251. package/esdoc/plugins/externals-plugin/externals.js +0 -96
  252. package/global-setup.js +0 -3
  253. package/index.html +0 -0
  254. package/indexweb.html +0 -49
  255. package/jest.config.js +0 -5
  256. package/pull_request_template.md +0 -17
  257. package/renovate.json +0 -4
  258. package/scripts/read-pkg-json.js +0 -22
  259. package/src/api/index.js +0 -3
  260. package/src/api/routing/RoutingAPI.js +0 -44
  261. package/src/api/routing/RoutingAPI.test.js +0 -41
  262. package/src/api/stops/StopsAPI.js +0 -41
  263. package/src/api/stops/StopsAPI.test.js +0 -34
  264. package/src/api/tralis/TralisAPI.js +0 -731
  265. package/src/api/tralis/TralisAPI.test.js +0 -75
  266. package/src/api/tralis/TralisAPIUtils.js +0 -73
  267. package/src/api/tralis/WebSocketConnector.js +0 -338
  268. package/src/api/tralis/WebSocketConnector.test.js +0 -356
  269. package/src/assets/Lato-Black.ttf +0 -0
  270. package/src/assets/Lato-BlackItalic.ttf +0 -0
  271. package/src/assets/Lato-Bold.ttf +0 -0
  272. package/src/assets/Lato-BoldItalic.ttf +0 -0
  273. package/src/assets/Lato-Italic.ttf +0 -0
  274. package/src/assets/Lato-Light.ttf +0 -0
  275. package/src/assets/Lato-LightItalic.ttf +0 -0
  276. package/src/assets/Lato-Regular.ttf +0 -0
  277. package/src/assets/Lato-Thin.ttf +0 -0
  278. package/src/assets/Lato-ThinItalic.ttf +0 -0
  279. package/src/assets/OFL.txt +0 -93
  280. package/src/common/Tracker.js +0 -197
  281. package/src/common/api/api.js +0 -64
  282. package/src/common/api/api.test.js +0 -68
  283. package/src/common/controls/Control.js +0 -146
  284. package/src/common/controls/Control.test.js +0 -98
  285. package/src/common/index.js +0 -5
  286. package/src/common/layers/Layer.js +0 -404
  287. package/src/common/layers/Layer.test.js +0 -585
  288. package/src/common/mixins/CopyrightMixin.js +0 -48
  289. package/src/common/mixins/SearchMixin.js +0 -176
  290. package/src/common/mixins/TralisLayerMixin.js +0 -930
  291. package/src/common/styles/index.js +0 -4
  292. package/src/common/styles/trackerDefaultStyle.js +0 -333
  293. package/src/common/styles/trackerSimpleStyle.js +0 -22
  294. package/src/common/trackerConfig.js +0 -190
  295. package/src/common/trackerConfig.test.js +0 -25
  296. package/src/common/typedefs.js +0 -23
  297. package/src/common/utils/createTrackerFilters.js +0 -87
  298. package/src/common/utils/createTrackerFilters.test.js +0 -95
  299. package/src/common/utils/getMapboxMapCopyrights.js +0 -32
  300. package/src/common/utils/getMapboxMapCopyrights.test.js +0 -47
  301. package/src/common/utils/getMapboxStyleUrl.js +0 -32
  302. package/src/common/utils/getVehiclePosition.js +0 -72
  303. package/src/common/utils/index.js +0 -5
  304. package/src/common/utils/removeDuplicate.js +0 -22
  305. package/src/common/utils/removeDuplicate.test.js +0 -22
  306. package/src/common/utils/sortByDelay.js +0 -23
  307. package/src/common/utils/timeUtils.test.js +0 -16
  308. package/src/doc/App.js +0 -116
  309. package/src/doc/App.scss +0 -51
  310. package/src/doc/_redirects +0 -2
  311. package/src/doc/components/CodeSandboxButton.js +0 -103
  312. package/src/doc/components/Documentation.js +0 -40
  313. package/src/doc/components/Esdoc/Anchor.js +0 -57
  314. package/src/doc/components/Esdoc/ClassDoc.js +0 -272
  315. package/src/doc/components/Esdoc/DeprecatedHTML.js +0 -16
  316. package/src/doc/components/Esdoc/DetailDocs.js +0 -281
  317. package/src/doc/components/Esdoc/DetailHTML.js +0 -33
  318. package/src/doc/components/Esdoc/DirectSubclassHTML.js +0 -30
  319. package/src/doc/components/Esdoc/DocBuilderUtils.js +0 -694
  320. package/src/doc/components/Esdoc/DocLinkHTML.js +0 -62
  321. package/src/doc/components/Esdoc/DocsLinkHTML.js +0 -38
  322. package/src/doc/components/Esdoc/Esdoc.js +0 -63
  323. package/src/doc/components/Esdoc/EsdocContent.js +0 -51
  324. package/src/doc/components/Esdoc/EsdocNavigation.js +0 -13
  325. package/src/doc/components/Esdoc/EsdocSearch.js +0 -81
  326. package/src/doc/components/Esdoc/ExperimentalHTML.js +0 -17
  327. package/src/doc/components/Esdoc/ExtendsChainHTML.js +0 -32
  328. package/src/doc/components/Esdoc/FileDocLinkHTML.js +0 -60
  329. package/src/doc/components/Esdoc/IdentifiersDoc.js +0 -113
  330. package/src/doc/components/Esdoc/IndirectSubclassHTML.js +0 -30
  331. package/src/doc/components/Esdoc/InheritedSummaryDoc.js +0 -70
  332. package/src/doc/components/Esdoc/InheritedSummaryHTML.js +0 -38
  333. package/src/doc/components/Esdoc/MixinClassesHTML.js +0 -29
  334. package/src/doc/components/Esdoc/NavDoc.js +0 -112
  335. package/src/doc/components/Esdoc/OverrideMethod.js +0 -44
  336. package/src/doc/components/Esdoc/OverrideMethodDescription.js +0 -35
  337. package/src/doc/components/Esdoc/Properties.js +0 -89
  338. package/src/doc/components/Esdoc/README.md +0 -45
  339. package/src/doc/components/Esdoc/SignatureHTML.js +0 -123
  340. package/src/doc/components/Esdoc/SingleDoc.js +0 -31
  341. package/src/doc/components/Esdoc/SummaryDoc.js +0 -160
  342. package/src/doc/components/Esdoc/SummaryHTML.js +0 -96
  343. package/src/doc/components/Esdoc/TypeDocLinkHTML.js +0 -249
  344. package/src/doc/components/Esdoc/css/identifiers.css +0 -38
  345. package/src/doc/components/Esdoc/css/search.css +0 -76
  346. package/src/doc/components/Esdoc/css/style.css +0 -603
  347. package/src/doc/components/Esdoc/index.js +0 -7
  348. package/src/doc/components/Example.js +0 -153
  349. package/src/doc/components/Examples.js +0 -183
  350. package/src/doc/components/Home.js +0 -106
  351. package/src/doc/components/TrackerExample.js +0 -38
  352. package/src/doc/examples/assets/tralis-live-map/index.js +0 -11
  353. package/src/doc/examples/assets/tralis-live-map/s1kreis.svg +0 -105
  354. package/src/doc/examples/assets/tralis-live-map/s20kreis.svg +0 -101
  355. package/src/doc/examples/assets/tralis-live-map/s2kreis.svg +0 -95
  356. package/src/doc/examples/assets/tralis-live-map/s3kreis.svg +0 -95
  357. package/src/doc/examples/assets/tralis-live-map/s4kreis.svg +0 -95
  358. package/src/doc/examples/assets/tralis-live-map/s6kreis.svg +0 -95
  359. package/src/doc/examples/assets/tralis-live-map/s7kreis.svg +0 -95
  360. package/src/doc/examples/assets/tralis-live-map/s8kreis.svg +0 -93
  361. package/src/doc/examples/assets/tralis-live-map/unknown.svg +0 -107
  362. package/src/doc/examples/mb-copyright.html +0 -26
  363. package/src/doc/examples/mb-copyright.js +0 -37
  364. package/src/doc/examples/mb-tracker.html +0 -1
  365. package/src/doc/examples/mb-tracker.js +0 -39
  366. package/src/doc/examples/mb-tracker.md +0 -1
  367. package/src/doc/examples/mb-tralis.html +0 -1
  368. package/src/doc/examples/mb-tralis.js +0 -34
  369. package/src/doc/examples/ol-copyright.html +0 -26
  370. package/src/doc/examples/ol-copyright.js +0 -43
  371. package/src/doc/examples/ol-mapbox-layer.html +0 -1
  372. package/src/doc/examples/ol-mapbox-layer.js +0 -28
  373. package/src/doc/examples/ol-mapbox-layer.md +0 -0
  374. package/src/doc/examples/ol-mapbox-style-layer.html +0 -12
  375. package/src/doc/examples/ol-mapbox-style-layer.js +0 -44
  376. package/src/doc/examples/ol-query.html +0 -32
  377. package/src/doc/examples/ol-query.js +0 -83
  378. package/src/doc/examples/ol-routing.html +0 -26
  379. package/src/doc/examples/ol-routing.js +0 -59
  380. package/src/doc/examples/ol-routing.md +0 -1
  381. package/src/doc/examples/ol-stop-finder.html +0 -15
  382. package/src/doc/examples/ol-stop-finder.js +0 -31
  383. package/src/doc/examples/ol-stop-finder.md +0 -1
  384. package/src/doc/examples/ol-tracker.html +0 -1
  385. package/src/doc/examples/ol-tracker.js +0 -44
  386. package/src/doc/examples/ol-tracker.md +0 -1
  387. package/src/doc/examples/ol-tralis.html +0 -5
  388. package/src/doc/examples/ol-tralis.js +0 -57
  389. package/src/doc/examples/tralis-live-map.html +0 -1
  390. package/src/doc/examples/tralis-live-map.js +0 -51
  391. package/src/doc/examples/tralis-live-map.md +0 -3
  392. package/src/doc/examples.js +0 -107
  393. package/src/doc/img/examples/live_tracker_mb.jpg +0 -0
  394. package/src/doc/img/examples/live_tracker_munich.jpg +0 -0
  395. package/src/doc/img/examples/live_tracker_ol.jpg +0 -0
  396. package/src/doc/img/examples/mapbox.jpg +0 -0
  397. package/src/doc/img/examples/mapbox_style.jpg +0 -0
  398. package/src/doc/img/examples/ol-copyright.png +0 -0
  399. package/src/doc/img/examples/query_objects.jpg +0 -0
  400. package/src/doc/img/examples/routing.jpg +0 -0
  401. package/src/doc/img/examples/simple_map.jpg +0 -0
  402. package/src/doc/img/examples/stops.jpg +0 -0
  403. package/src/doc/img/favico.ico +0 -0
  404. package/src/doc/index.js +0 -21
  405. package/src/index.js +0 -10
  406. package/src/mapbox/controls/CopyrightControl.js +0 -58
  407. package/src/mapbox/layers/Layer.js +0 -118
  408. package/src/mapbox/layers/Layer.test.js +0 -202
  409. package/src/mapbox/layers/TralisLayer.js +0 -329
  410. package/src/mapbox/layers/TralisLayer.test.js +0 -40
  411. package/src/mapbox/layers/index.js +0 -2
  412. package/src/mapbox/utils.js +0 -46
  413. package/src/ol/README.md +0 -0
  414. package/src/ol/controls/CopyrightControl.js +0 -80
  415. package/src/ol/controls/CopyrightControl.test.js +0 -211
  416. package/src/ol/controls/RoutingControl.js +0 -752
  417. package/src/ol/controls/RoutingControl.test.js +0 -216
  418. package/src/ol/controls/StopFinderControl.test.js +0 -59
  419. package/src/ol/controls/snapshots/RoutingControlRouteGen10.json +0 -58
  420. package/src/ol/controls/snapshots/RoutingControlRouteGen100.json +0 -292
  421. package/src/ol/controls/snapshots/RoutingControlRouteGen30.json +0 -69
  422. package/src/ol/controls/snapshots/RoutingControlRouteGen5.json +0 -58
  423. package/src/ol/controls/snapshots/RoutingControlRouteOSM.json +0 -759
  424. package/src/ol/controls/snapshots/RoutingControlStation1.json +0 -60
  425. package/src/ol/controls/snapshots/RoutingControlStation2.json +0 -49
  426. package/src/ol/layers/Layer.js +0 -193
  427. package/src/ol/layers/Layer.test.js +0 -197
  428. package/src/ol/layers/MapboxLayer.js +0 -378
  429. package/src/ol/layers/MapboxLayer.test.js +0 -186
  430. package/src/ol/layers/MapboxStyleLayer.js +0 -417
  431. package/src/ol/layers/MapboxStyleLayer.test.js +0 -262
  432. package/src/ol/layers/MaplibreLayer.js +0 -280
  433. package/src/ol/layers/RoutingLayer.js +0 -91
  434. package/src/ol/layers/RoutingLayer.test.js +0 -49
  435. package/src/ol/layers/TralisLayer.js +0 -359
  436. package/src/ol/layers/TralisLayer.test.js +0 -97
  437. package/src/ol/layers/VectorLayer.js +0 -43
  438. package/src/ol/layers/VectorLayer.test.js +0 -98
  439. package/src/ol/layers/WMSLayer.js +0 -80
  440. package/src/ol/layers/WMSLayer.test.js +0 -84
  441. package/src/ol/styles/fullTrajectoryDelayStyle.js +0 -35
  442. package/src/ol/styles/fullTrajectoryStyle.js +0 -51
  443. package/webpack.config.js +0 -6
  444. /package/{src/mapbox → mapbox}/controls/index.js +0 -0
  445. /package/{src/ol → ol}/controls/index.js +0 -0
  446. /package/{src/ol → ol}/index.js +0 -0
  447. /package/{src/ol → ol}/styles/index.js +0 -0
@@ -1,95 +0,0 @@
1
- import createTrackerFilters from './createTrackerFilters';
2
-
3
- const u1 = {
4
- properties: {
5
- routeIdentifier: '001.000827.004:7',
6
- operator: 'FoO',
7
- line: {
8
- name: 'U1',
9
- },
10
- },
11
- };
12
- const ireta = {
13
- properties: {
14
- routeIdentifier: '0022.000827.004:7',
15
- operator: 'BAR',
16
- line: {
17
- name: 'IRETA',
18
- },
19
- },
20
- };
21
- const arb = {
22
- properties: {
23
- routeIdentifier: '00333.000827.004:7',
24
- operator: 'qux',
25
- line: {
26
- name: 'ARB',
27
- },
28
- },
29
- };
30
-
31
- const trajectories = [u1, ireta, arb];
32
-
33
- describe('#createTrackerFilter()', () => {
34
- test('returns null', () => {
35
- const filterFunc = createTrackerFilters();
36
- expect(filterFunc).toBe(null);
37
- });
38
-
39
- describe('using line', () => {
40
- test('as string', () => {
41
- const filterFunc = createTrackerFilters('u1,foo');
42
- expect(trajectories.filter(filterFunc)).toEqual([u1]);
43
- });
44
-
45
- test('as array of string', () => {
46
- const filterFunc = createTrackerFilters(['u1', 'foo', 'IRETA']);
47
- expect(trajectories.filter(filterFunc)).toEqual([u1, ireta]);
48
- });
49
- });
50
-
51
- describe('using route identifier', () => {
52
- test('as string', () => {
53
- const filterFunc = createTrackerFilters(null, '1,foo');
54
- expect(trajectories.filter(filterFunc)).toEqual([u1]);
55
- });
56
-
57
- test('as array of string', () => {
58
- const filterFunc = createTrackerFilters(null, ['22', 'foo', '1']);
59
- expect(trajectories.filter(filterFunc)).toEqual([u1, ireta]);
60
- });
61
- });
62
-
63
- describe('using operator', () => {
64
- test('as string', () => {
65
- const filterFunc = createTrackerFilters(null, null, 'foo');
66
- expect(trajectories.filter(filterFunc)).toEqual([u1]);
67
- });
68
-
69
- test('as array of string', () => {
70
- const filterFunc = createTrackerFilters(null, null, ['bar', 'foo', '1']);
71
- expect(trajectories.filter(filterFunc)).toEqual([u1, ireta]);
72
- });
73
- });
74
-
75
- describe('using regexLine', () => {
76
- test('as string', () => {
77
- const filterFunc = createTrackerFilters(
78
- null,
79
- null,
80
- null,
81
- '^(S|R$|RE|PE|D|IRE|RB|TER)',
82
- );
83
- expect(trajectories.filter(filterFunc)).toEqual([ireta]);
84
- });
85
-
86
- test('as array of string', () => {
87
- const filterFunc = createTrackerFilters(null, null, null, [
88
- '^IR',
89
- '^ARB$',
90
- 'foo',
91
- ]);
92
- expect(trajectories.filter(filterFunc)).toEqual([ireta, arb]);
93
- });
94
- });
95
- });
@@ -1,32 +0,0 @@
1
- import removeDuplicate from './removeDuplicate';
2
-
3
- /**
4
- * Return the copyright a Mapbox map.
5
- * @param {mapboxgl.Map} map A Mapbox map
6
- * @ignore
7
- */
8
- const getMapboxMapCopyrights = (map) => {
9
- if (!map || !map.style) {
10
- return [];
11
- }
12
- const { sourceCaches } = map.style;
13
- let copyrights = [];
14
-
15
- Object.values(sourceCaches).forEach((sourceCache) => {
16
- if (sourceCache.used) {
17
- const source = sourceCache.getSource();
18
- const attribution =
19
- source.attribution || (source.options && source.options.attribution);
20
-
21
- if (attribution) {
22
- copyrights = copyrights.concat(
23
- attribution.replace(/&copy;/g, '©').split(/(<a.*?<\/a>)/),
24
- );
25
- }
26
- }
27
- });
28
-
29
- return removeDuplicate(copyrights);
30
- };
31
-
32
- export default getMapboxMapCopyrights;
@@ -1,47 +0,0 @@
1
- import getMapboxMapCopyrights from './getMapboxMapCopyrights';
2
-
3
- describe('getMapboxMapCopyrights()', () => {
4
- test('returns an empty array if map is not defined', () => {
5
- expect(getMapboxMapCopyrights().length).toBe(0);
6
- });
7
-
8
- test('returns an empty array if map.style is not defined', () => {
9
- expect(getMapboxMapCopyrights({}).length).toBe(0);
10
- });
11
-
12
- test('returns non depluicated copyrights in an array', () => {
13
- expect(
14
- getMapboxMapCopyrights({
15
- style: {
16
- sourceCaches: {
17
- used: {
18
- used: true,
19
- getSource() {
20
- return {
21
- attribution:
22
- '<a href="https://www.openmaptiles.org/" target="_blank">© OpenMapTiles</a> <a href="https://www.openstreetmap.org/about/" target="_blank">&copy; OpenStreetMap contributors</a>',
23
- };
24
- },
25
- },
26
- 'not used': {
27
- used: false,
28
- },
29
- 'also used': {
30
- used: true,
31
- getSource() {
32
- return {
33
- attribution:
34
- '<a href="https://www.openmaptiles.org/" target="_blank">&copy; OpenMapTiles</a> <a href="https://www.imagico.de/" target="_blank">&copy; imagico</a>',
35
- };
36
- },
37
- },
38
- },
39
- },
40
- }),
41
- ).toEqual([
42
- '<a href="https://www.openmaptiles.org/" target="_blank">© OpenMapTiles</a>',
43
- '<a href="https://www.openstreetmap.org/about/" target="_blank">© OpenStreetMap contributors</a>',
44
- '<a href="https://www.imagico.de/" target="_blank">© imagico</a>',
45
- ]);
46
- });
47
- });
@@ -1,32 +0,0 @@
1
- import qs from 'query-string';
2
-
3
- /**
4
- * Return the styleUrl with apiKey parameters set.
5
- * @param {string} apiKey apiKey value for the mapbox request.
6
- * @param {string} apiKeyName parameter name for apiKey in the mapbox request.
7
- * @param {string} styleUrl mapbox styleUrl value.
8
- * @ignore
9
- */
10
- const getMapboxStyleUrl = (apiKey, apiKeyName, styleUrl) => {
11
- if (apiKey === false) {
12
- return styleUrl;
13
- }
14
- const parsedStyle = qs.parseUrl(styleUrl);
15
- if (!apiKey && parsedStyle.query[apiKeyName]) {
16
- return styleUrl;
17
- }
18
- if (!apiKey) {
19
- // eslint-disable-next-line no-console
20
- console.warn(`No apiKey is defined for request to ${styleUrl}`);
21
- return null;
22
- }
23
- return qs.stringifyUrl({
24
- ...parsedStyle,
25
- query: {
26
- ...parsedStyle.query,
27
- [apiKeyName]: apiKey,
28
- },
29
- });
30
- };
31
-
32
- export default getMapboxStyleUrl;
@@ -1,72 +0,0 @@
1
- import GeomType from 'ol/geom/GeometryType';
2
-
3
- /**
4
- * Interpolate or not the vehicle position from a trajectory at a specific date.
5
- *
6
- * @param {number} now Current date to interpolate a position with. In ms.
7
- * @param {TralisTrajectory} trajectory The trajectory to interpolate.
8
- * @param {boolean} noInterpolate If true, the vehicle position is not interpolated on each render but only once.
9
- * @returns
10
- */
11
- const getVehiclePosition = (now, trajectory, noInterpolate) => {
12
- const {
13
- time_intervals: timeIntervals,
14
- olGeometry: geometry,
15
- coordinate,
16
- } = trajectory.properties;
17
-
18
- let coord;
19
- let rotation;
20
-
21
- if (noInterpolate && coordinate) {
22
- coord = coordinate;
23
- } else if (geometry.getType() === GeomType.POINT) {
24
- coord = geometry.getCoordinates();
25
- } else if (geometry.getType() === GeomType.LINE_STRING) {
26
- const intervals = timeIntervals || [[]];
27
- const firstInterval = intervals[0];
28
- const lastInterval = intervals[intervals.length - 1];
29
-
30
- // Between the last time interval of a trajectory event and the beginning
31
- // of the new trajectory event, there is few seconds, can be 6 to 30
32
- // seconds (that's why the vehicle jumps sometimes).
33
- // So we make the choice here to display the last (or the first) position
34
- // of an trajectory event instead of removing them, if the current date is
35
- // outside the time intervals we display the vehicle at the last (or first) position known.
36
- if (now < firstInterval[0]) {
37
- // Display first position known.
38
- [, , rotation] = firstInterval;
39
- coord = geometry.getFirstCoordinate();
40
- } else if (now > lastInterval[0]) {
41
- // Display last position known.
42
- [, , rotation] = lastInterval;
43
- coord = geometry.getLastCoordinate();
44
- } else {
45
- // Interpolate position using time intervals.
46
- for (let j = 0; j < intervals.length - 1; j += 1) {
47
- // Rotation only available in tralis layer.
48
- const [start, startFrac] = intervals[j];
49
- const [end, endFrac] = intervals[j + 1];
50
-
51
- if (start <= now && now <= end) {
52
- // interpolate position inside the time interval.
53
- const timeFrac = Math.min((now - start) / (end - start), 1);
54
- const geomFrac = timeFrac * (endFrac - startFrac) + startFrac;
55
- coord = geometry.getCoordinateAt(geomFrac);
56
- [, , rotation] = intervals[j];
57
- break;
58
- }
59
- }
60
- }
61
- } else {
62
- // eslint-disable-next-line no-console
63
- console.error(
64
- 'This geometry type is not supported. Only Point or LineString are. Current geometry: ',
65
- geometry,
66
- );
67
- }
68
-
69
- return { coord, rotation };
70
- };
71
-
72
- export default getVehiclePosition;
@@ -1,5 +0,0 @@
1
- export { default as getMapboxStyleUrl } from './getMapboxStyleUrl';
2
- export { default as getMapboxMapCopyrights } from './getMapboxMapCopyrights';
3
- export { default as removeDuplicate } from './removeDuplicate';
4
- export * from './timeUtils';
5
- export { default as sortByDelay } from './sortByDelay';
@@ -1,22 +0,0 @@
1
- /**
2
- * This function remove duplicates lower case string value of an array.
3
- * It removes also null, undefined or non string values.
4
- *
5
- * @param {array} array Array of values.
6
- * @ignore
7
- */
8
- const removeDuplicate = (array) => {
9
- const arrWithoutEmptyValues = array.filter(
10
- (val) => val !== undefined && val !== null && val.trim && val.trim(),
11
- );
12
- const lowerCasesValues = arrWithoutEmptyValues.map((str) =>
13
- str.toLowerCase(),
14
- );
15
- const uniqueLowerCaseValues = [...new Set(lowerCasesValues)];
16
- const uniqueValues = uniqueLowerCaseValues.map((uniqueStr) =>
17
- arrWithoutEmptyValues.find((str) => str.toLowerCase() === uniqueStr),
18
- );
19
- return uniqueValues;
20
- };
21
-
22
- export default removeDuplicate;
@@ -1,22 +0,0 @@
1
- import removeDuplicate from './removeDuplicate';
2
-
3
- describe('removeDuplicate()', () => {
4
- test('removes duplicates', () => {
5
- expect(
6
- removeDuplicate([
7
- 'a',
8
- ' ',
9
- ' ',
10
- 'b',
11
- 'a',
12
- undefined,
13
- null,
14
- 'A',
15
- 0,
16
- 'c',
17
- 'b',
18
- 'B',
19
- ]),
20
- ).toEqual(['a', 'b', 'c']);
21
- });
22
- });
@@ -1,23 +0,0 @@
1
- const sortByDelay = (traj1, traj2) => {
2
- const props1 = traj1.properties;
3
- const props2 = traj2.properties;
4
-
5
- if (props1.delay === null && props2.delay !== null) {
6
- return 1;
7
- }
8
- if (props2.delay === null && props1.delay !== null) {
9
- return -1;
10
- }
11
-
12
- // We put cancelled train inbetween green and yellow trains
13
- // >=180000ms corresponds to yellow train
14
- if (props1.cancelled && !props2.cancelled) {
15
- return props2.delay < 180000 ? -1 : 1;
16
- }
17
- if (props2.cancelled && !props1.cancelled) {
18
- return props1.delay < 180000 ? 1 : -1;
19
- }
20
- return props2.delay - props1.delay;
21
- };
22
-
23
- export default sortByDelay;
@@ -1,16 +0,0 @@
1
- import { getUTCDateString, getUTCTimeString } from './timeUtils';
2
-
3
- describe('timeUtils', () => {
4
- test('getUTCDateString should be correct.', () => {
5
- expect(getUTCDateString(new Date(2020, 5, 30))).toBe('20200630');
6
- expect(
7
- getUTCDateString(new Date('January 1, 2021 00:15:30 GMT+2:00')),
8
- ).toBe('20201231');
9
- });
10
-
11
- test('getUTCTimeString should be correct.', () => {
12
- expect(getUTCTimeString(new Date(2020, 5, 30, 11, 5, 1, 123))).toBe(
13
- '11:5:1.123',
14
- );
15
- });
16
- });
package/src/doc/App.js DELETED
@@ -1,116 +0,0 @@
1
- import React from 'react';
2
- import { ThemeProvider, makeStyles } from '@material-ui/core/styles';
3
- import Container from '@material-ui/core/Container';
4
- import { Outlet, Routes, Route, Navigate, Link } from 'react-router-dom';
5
- import { geopsTheme, Header, Footer } from '@geops/geops-ui';
6
- import Examples from './components/Examples';
7
- import Example from './components/Example';
8
- import Documentation from './components/Documentation';
9
- import Home from './components/Home';
10
-
11
- import 'typeface-lato';
12
- import './App.scss';
13
-
14
- const useStyles = makeStyles({
15
- content: {
16
- flexGrow: 1,
17
- overflowY: 'auto',
18
- paddingBottom: 115,
19
- margin: 'auto',
20
- marginTop: 30,
21
- },
22
- documentation: {
23
- flexGrow: 1,
24
- overflowY: 'auto',
25
- padding: 0,
26
- },
27
- });
28
-
29
- const tabs = [
30
- {
31
- label: 'Home',
32
- component: Link,
33
- to: '/home',
34
- },
35
- {
36
- label: 'API',
37
- component: Link,
38
- to: '/api',
39
- },
40
- {
41
- label: 'Examples',
42
- component: Link,
43
- to: '/examples',
44
- },
45
- {
46
- label: 'Code',
47
- href: 'https://github.com/geops/mobility-toolbox-js',
48
- },
49
- ];
50
-
51
- function Main() {
52
- return (
53
- <ThemeProvider theme={geopsTheme}>
54
- <Header title="mobility-toolbox-js" tabs={tabs} />
55
- <Outlet />
56
- <Footer />
57
- </ThemeProvider>
58
- );
59
- }
60
-
61
- function App() {
62
- const classes = useStyles();
63
-
64
- return (
65
- <Routes>
66
- <Route path="/" element={<Main />}>
67
- <Route index element={<Navigate to="/home" />} />
68
- <Route
69
- index
70
- path="/home"
71
- element={
72
- <Container className={classes.content}>
73
- <Home />
74
- </Container>
75
- }
76
- />
77
- <Route
78
- path="/examples"
79
- element={
80
- <Container className={classes.content}>
81
- <Examples />
82
- </Container>
83
- }
84
- />
85
- <Route
86
- path="/example/:exampleKey"
87
- element={
88
- <Container className={classes.content}>
89
- <Example />
90
- </Container>
91
- }
92
- />
93
- <Route path="/api">
94
- <Route
95
- index
96
- element={
97
- <Container className={classes.documentation} maxWidth={false}>
98
- <Documentation />
99
- </Container>
100
- }
101
- />
102
- <Route
103
- path="*"
104
- element={
105
- <Container className={classes.documentation} maxWidth={false}>
106
- <Documentation />
107
- </Container>
108
- }
109
- />
110
- </Route>
111
- </Route>
112
- </Routes>
113
- );
114
- }
115
-
116
- export default App;
package/src/doc/App.scss DELETED
@@ -1,51 +0,0 @@
1
- html {
2
- height: 100%;
3
- }
4
-
5
- body {
6
- margin: 0;
7
- font-family: Lato, Arial, sans-serif;
8
- color: #353535;
9
- position: relative;
10
- min-height: 100%;
11
- overflow-y: scroll;
12
- font-size: 18px;
13
- }
14
-
15
- a {
16
- text-decoration: none;
17
- color: #76b833;
18
- }
19
-
20
- #map a {
21
- color: initial;
22
- }
23
-
24
- /* geops ui css */
25
- button.geops-ui {
26
- color: #fff;
27
- padding: 5px 15px;
28
- font-size: 18px;
29
- box-sizing: border-box;
30
- transition:
31
- background-color 250ms cubic-bezier(0.4, 0, 0.2, 1) 0ms,
32
- box-shadow 250ms cubic-bezier(0.4, 0, 0.2, 1) 0ms,
33
- border 250ms cubic-bezier(0.4, 0, 0.2, 1) 0ms;
34
- font-weight: 700;
35
- line-height: 24px;
36
- border-radius: 5px;
37
- text-transform: none;
38
- background-color: #76b833;
39
- border: 0;
40
- outline: none;
41
-
42
- &:not([disabled]) {
43
- cursor: pointer;
44
- }
45
-
46
- &:hover {
47
- box-shadow: 0 5px 16px #35353540;
48
- text-decoration: none;
49
- background-color: #76b833;
50
- }
51
- }
@@ -1,2 +0,0 @@
1
- /examples/* /examples/:splat
2
- /* /index.html 200
@@ -1,103 +0,0 @@
1
- import React from 'react';
2
- import PropTypes from 'prop-types';
3
- import { getParameters } from 'codesandbox/lib/api/define';
4
- import { Button, SvgIcon } from '@material-ui/core';
5
- import { makeStyles } from '@material-ui/core/styles';
6
-
7
- const useStyles = makeStyles({
8
- button: {
9
- padding: '5px 15px',
10
- },
11
- });
12
-
13
- function CodeSandboxButton({ html, js, extraFiles, ...props }) {
14
- const classes = useStyles();
15
-
16
- if (!html || !js) {
17
- return null;
18
- }
19
-
20
- const dataSB = {
21
- files: {
22
- 'index.html': {
23
- content: `${html}<script src="index.js"></script>`,
24
- },
25
- 'index.js': {
26
- content: js // eslint-disable-next-line no-template-curly-in-string
27
- .replaceAll('${window.apiKey}', window.apiKey)
28
- .replaceAll('window.apiKey', `'${window.apiKey}'`),
29
- },
30
- 'package.json': {
31
- content: {
32
- name: 'vanilla',
33
- version: '1.0.0',
34
- description: 'Mobility example starter project',
35
- main: 'index.html',
36
- scripts: {
37
- start: 'parcel index.html --open',
38
- build: 'parcel build index.html',
39
- },
40
- dependencies: {
41
- 'mapbox-gl': '1',
42
- 'maplibre-gl': '2',
43
- 'mobility-toolbox-js': 'latest@beta',
44
- ol: '6.3.1',
45
- 'query-string': '6.13.1',
46
- },
47
- devDependencies: {
48
- '@babel/core': '7.2.0',
49
- 'parcel-bundler': '^1.6.1',
50
- },
51
- keywords: [
52
- 'javascript',
53
- 'starter',
54
- 'mobility-toolbox-js',
55
- 'mobility',
56
- 'toolbox',
57
- ],
58
- },
59
- },
60
- ...extraFiles,
61
- },
62
- };
63
- const dataSBStr = getParameters(dataSB);
64
- return (
65
- <form
66
- action="https://codesandbox.io/api/v1/sandboxes/define"
67
- method="POST"
68
- target="_blank"
69
- // eslint-disable-next-line react/jsx-props-no-spreading
70
- {...props}
71
- >
72
- <input type="hidden" name="parameters" value={dataSBStr} />
73
- <Button
74
- type="submit"
75
- className={classes.button}
76
- startIcon={
77
- <SvgIcon fontSize="large">
78
- <path
79
- d="M2 6l10.455-6L22.91 6L23 17.95L12.455 24L2 18V6zm2.088 2.481v4.757l3.345 1.86v3.516l3.972 2.296v-8.272L4.088 8.481zm16.739 0l-7.317 4.157v8.272l3.972-2.296V15.1l3.345-1.861V8.48zM5.134 6.601l7.303 4.144l7.32-4.18l-3.871-2.197l-3.41 1.945l-3.43-1.968L5.133 6.6z"
80
- fill="currentColor"
81
- />
82
- </SvgIcon>
83
- }
84
- >
85
- Edit in Sandbox
86
- </Button>
87
- </form>
88
- );
89
- }
90
-
91
- CodeSandboxButton.propTypes = {
92
- html: PropTypes.string,
93
- js: PropTypes.string,
94
- extraFiles: PropTypes.shape(),
95
- };
96
-
97
- CodeSandboxButton.defaultProps = {
98
- html: null,
99
- js: null,
100
- extraFiles: {},
101
- };
102
-
103
- export default React.memo(CodeSandboxButton);
@@ -1,40 +0,0 @@
1
- import React, { useEffect, useState } from 'react';
2
- import { makeStyles } from '@material-ui/core/styles';
3
- import { useParams, useLocation } from 'react-router-dom';
4
- import Esdoc from './Esdoc/Esdoc';
5
-
6
- const useStyles = makeStyles({
7
- root: {
8
- display: 'flex',
9
- flexGrow: 1,
10
- justifyContent: 'center',
11
- height: '100%',
12
- },
13
- iframe: {
14
- flexGrow: 1,
15
- border: 0,
16
- overflow: 'hidden',
17
- },
18
- });
19
-
20
- function Documentation() {
21
- const classes = useStyles();
22
- const params = useParams();
23
- const { hash } = useLocation();
24
- const [path, setPath] = useState('identifiers%20html');
25
-
26
- useEffect(() => {
27
- const matchPath = (params || {})['*'];
28
- if (matchPath) {
29
- setPath(matchPath.replace(/ /g, '.') + hash);
30
- }
31
- }, [params, hash]);
32
-
33
- return (
34
- <div className={classes.root}>
35
- <Esdoc path={path} />
36
- </div>
37
- );
38
- }
39
-
40
- export default React.memo(Documentation);