@mapcomponents/react-maplibre 0.1.57 → 0.1.59

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 (276) hide show
  1. package/.eslintignore +11 -0
  2. package/.eslintrc.js +20 -0
  3. package/.github/workflows/check-formatting.yml +46 -0
  4. package/.prettierignore +11 -0
  5. package/.prettierrc.json +6 -0
  6. package/CHANGELOG.md +18 -0
  7. package/coverage/clover.xml +229 -77
  8. package/coverage/coverage-final.json +43 -37
  9. package/coverage/lcov-report/index.html +65 -20
  10. package/coverage/lcov-report/src/components/MapLibreMap/MapLibreMap.tsx.html +83 -83
  11. package/coverage/lcov-report/src/components/MapLibreMap/index.html +1 -1
  12. package/coverage/lcov-report/src/components/MlCenterPosition/MlCenterPosition.tsx.html +66 -66
  13. package/coverage/lcov-report/src/components/MlCenterPosition/index.html +1 -1
  14. package/coverage/lcov-report/src/components/MlCreatePdfButton/MlCreatePdfButton.tsx.html +30 -30
  15. package/coverage/lcov-report/src/components/MlCreatePdfButton/index.html +1 -1
  16. package/coverage/lcov-report/src/components/MlCreatePdfForm/MlCreatePdfForm.tsx.html +202 -0
  17. package/coverage/lcov-report/src/components/MlCreatePdfForm/index.html +116 -0
  18. package/coverage/lcov-report/src/components/MlFeatureEditor/MlFeatureEditor.tsx.html +99 -99
  19. package/coverage/lcov-report/src/components/MlFeatureEditor/index.html +1 -1
  20. package/coverage/lcov-report/src/components/MlFillExtrusionLayer/MlFillExtrusionLayer.tsx.html +66 -66
  21. package/coverage/lcov-report/src/components/MlFillExtrusionLayer/index.html +1 -1
  22. package/coverage/lcov-report/src/components/MlFollowGps/MlFollowGps.tsx.html +221 -221
  23. package/coverage/lcov-report/src/components/MlFollowGps/index.html +1 -1
  24. package/coverage/lcov-report/src/components/MlGPXViewer/MlGPXViewer.tsx.html +308 -308
  25. package/coverage/lcov-report/src/components/MlGPXViewer/gpxConverter.js.html +497 -497
  26. package/coverage/lcov-report/src/components/MlGPXViewer/index.html +1 -1
  27. package/coverage/lcov-report/src/components/MlGeoJsonLayer/MlGeoJsonLayer.tsx.html +85 -85
  28. package/coverage/lcov-report/src/components/MlGeoJsonLayer/index.html +1 -1
  29. package/coverage/lcov-report/src/components/MlGeojsonLayerWithSource/MlGeojsonLayerWithSource.tsx.html +469 -0
  30. package/coverage/lcov-report/src/components/MlGeojsonLayerWithSource/index.html +116 -0
  31. package/coverage/lcov-report/src/components/MlImageMarkerLayer/MlImageMarkerLayer.tsx.html +140 -140
  32. package/coverage/lcov-report/src/components/MlImageMarkerLayer/index.html +1 -1
  33. package/coverage/lcov-report/src/components/MlLayer/MlLayer.tsx.html +37 -37
  34. package/coverage/lcov-report/src/components/MlLayer/index.html +1 -1
  35. package/coverage/lcov-report/src/components/MlLayerMagnify/MlLayerMagnify.tsx.html +179 -179
  36. package/coverage/lcov-report/src/components/MlLayerMagnify/index.html +1 -1
  37. package/coverage/lcov-report/src/components/MlLayerSwipe/MlLayerSwipe.tsx.html +113 -113
  38. package/coverage/lcov-report/src/components/MlLayerSwipe/index.html +1 -1
  39. package/coverage/lcov-report/src/components/MlLayerSwitcher/MlLayerSwitcher.js.html +181 -181
  40. package/coverage/lcov-report/src/components/MlLayerSwitcher/components/LayerBox.js.html +58 -58
  41. package/coverage/lcov-report/src/components/MlLayerSwitcher/components/index.html +1 -1
  42. package/coverage/lcov-report/src/components/MlLayerSwitcher/index.html +1 -1
  43. package/coverage/lcov-report/src/components/MlMarker/MlMarker.tsx.html +108 -108
  44. package/coverage/lcov-report/src/components/MlMarker/index.html +1 -1
  45. package/coverage/lcov-report/src/components/MlMeasureTool/MlMeasureTool.tsx.html +39 -39
  46. package/coverage/lcov-report/src/components/MlMeasureTool/index.html +1 -1
  47. package/coverage/lcov-report/src/components/MlNavigationCompass/MlNavigationCompass.tsx.html +183 -183
  48. package/coverage/lcov-report/src/components/MlNavigationCompass/index.html +1 -1
  49. package/coverage/lcov-report/src/components/MlNavigationTools/MlNavigationTools.tsx.html +163 -163
  50. package/coverage/lcov-report/src/components/MlNavigationTools/index.html +1 -1
  51. package/coverage/lcov-report/src/components/MlOsmLayer/MlOsmLayer.js.html +50 -50
  52. package/coverage/lcov-report/src/components/MlOsmLayer/MlOsmLayer.stories_.js.html +30 -30
  53. package/coverage/lcov-report/src/components/MlOsmLayer/index.html +1 -1
  54. package/coverage/lcov-report/src/components/MlScaleReference/MlScaleReference.js.html +83 -83
  55. package/coverage/lcov-report/src/components/MlScaleReference/index.html +1 -1
  56. package/coverage/lcov-report/src/components/MlShareMapState/MlShareMapState.js.html +204 -204
  57. package/coverage/lcov-report/src/components/MlShareMapState/index.html +1 -1
  58. package/coverage/lcov-report/src/components/MlSpatialElevationProfile/MlSpatialElevationProfile.js.html +180 -180
  59. package/coverage/lcov-report/src/components/MlSpatialElevationProfile/index.html +1 -1
  60. package/coverage/lcov-report/src/components/MlThreeJsLayer/MlThreeJsLayer.js.html +163 -163
  61. package/coverage/lcov-report/src/components/MlThreeJsLayer/index.html +1 -1
  62. package/coverage/lcov-report/src/components/MlTransitionGeoJsonLayer/MlTransitionGeoJsonLayer.tsx.html +136 -136
  63. package/coverage/lcov-report/src/components/MlTransitionGeoJsonLayer/index.html +1 -1
  64. package/coverage/lcov-report/src/components/MlUseMapDebugger/MlUseMapDebugger.js.html +53 -53
  65. package/coverage/lcov-report/src/components/MlUseMapDebugger/index.html +1 -1
  66. package/coverage/lcov-report/src/components/MlVectorTileLayer/MlVectorTileLayer.tsx.html +123 -123
  67. package/coverage/lcov-report/src/components/MlVectorTileLayer/index.html +1 -1
  68. package/coverage/lcov-report/src/components/MlWmsFeatureInfoPopup/MlWmsFeatureInfoPopup.js.html +35 -35
  69. package/coverage/lcov-report/src/components/MlWmsFeatureInfoPopup/index.html +1 -1
  70. package/coverage/lcov-report/src/components/MlWmsLayer/MlWmsLayer.tsx.html +155 -155
  71. package/coverage/lcov-report/src/components/MlWmsLayer/index.html +1 -1
  72. package/coverage/lcov-report/src/components/MlWmsLoader/MlWmsLoader.tsx.html +255 -255
  73. package/coverage/lcov-report/src/components/MlWmsLoader/index.html +1 -1
  74. package/coverage/lcov-report/src/contexts/MapContext.tsx.html +66 -66
  75. package/coverage/lcov-report/src/contexts/SimpleDataContext.js.html +1 -1
  76. package/coverage/lcov-report/src/contexts/SimpleDataProvider.js.html +48 -48
  77. package/coverage/lcov-report/src/contexts/index.html +1 -1
  78. package/coverage/lcov-report/src/hooks/exportMap/index.html +131 -0
  79. package/coverage/lcov-report/src/hooks/exportMap/index.ts.html +175 -0
  80. package/coverage/lcov-report/src/hooks/exportMap/lib.ts.html +646 -0
  81. package/coverage/lcov-report/src/hooks/index.html +48 -18
  82. package/coverage/lcov-report/src/hooks/useLayer.ts.html +230 -188
  83. package/coverage/lcov-report/src/hooks/useLayerEvent.js.html +232 -0
  84. package/coverage/lcov-report/src/hooks/useMap.ts.html +72 -69
  85. package/coverage/lcov-report/src/hooks/useMapState.ts.html +145 -145
  86. package/coverage/lcov-report/src/hooks/useSource.ts.html +337 -0
  87. package/coverage/lcov-report/src/hooks/useWms.js.html +72 -72
  88. package/coverage/lcov-report/src/index.html +1 -1
  89. package/coverage/lcov-report/src/index.ts.html +11 -2
  90. package/coverage/lcov.info +448 -151
  91. package/dist/components/MlCreatePdfForm/MlCreatePdfForm.d.ts +24 -0
  92. package/dist/components/MlCreatePdfForm/MlCreatePdfForm.stories.d.ts +13 -0
  93. package/dist/components/MlCreatePdfForm/lib/PdfContext.d.ts +21 -0
  94. package/dist/components/MlCreatePdfForm/lib/PdfForm.d.ts +10 -0
  95. package/dist/components/MlCreatePdfForm/lib/PdfPreview.d.ts +13 -0
  96. package/dist/components/MlCreatePdfForm/lib/pdf.templates.d.ts +11 -0
  97. package/dist/components/MlFeatureEditor/lib/create_vertex.d.ts +1 -1
  98. package/dist/components/MlGeojsonLayerWithSource/MlGeojsonLayerWithSource.d.ts +22 -0
  99. package/dist/components/MlGeojsonLayerWithSource/MlGeojsonLayerWithSource.stories.d.ts +10 -0
  100. package/dist/components/MlLayerSwipe/MlLayerSwipe.d.ts +1 -1
  101. package/dist/components/MlWmsLayer/MlWmsLayer.d.ts +2 -2
  102. package/dist/decorators/MapContextDecoratorHooks.d.ts +2 -0
  103. package/dist/hooks/exportMap/index.d.ts +11 -0
  104. package/dist/hooks/exportMap/lib.d.ts +36 -0
  105. package/dist/hooks/useLayer.d.ts +6 -5
  106. package/dist/hooks/useLayerEvent.d.ts +2 -0
  107. package/dist/hooks/useMap.d.ts +1 -1
  108. package/dist/hooks/useMapState.stories.d.ts +2 -2
  109. package/dist/hooks/useSource.d.ts +17 -0
  110. package/dist/hooks/useSources.stories.d.ts +13 -0
  111. package/dist/index.d.ts +3 -0
  112. package/dist/index.esm.js +1055 -315
  113. package/dist/index.esm.js.map +1 -1
  114. package/eslintErrorTest.js +10 -0
  115. package/package.json +7 -1
  116. package/public/thumbnails/MlCreatePdfForm.png +0 -0
  117. package/src/components/MapLibreMap/MapLibreMap.stories.js +72 -72
  118. package/src/components/MapLibreMap/MapLibreMap.test.js +60 -60
  119. package/src/components/MapLibreMap/MapLibreMap.tsx +82 -82
  120. package/src/components/MapLibreMap/lib/MapLibreGlWrapper.test.js +343 -343
  121. package/src/components/MapLibreMap/lib/MapLibreGlWrapper.ts +619 -619
  122. package/src/components/MlBasicComponent.js +25 -25
  123. package/src/components/MlCenterPosition/MlCenterPosition.stories.js +6 -6
  124. package/src/components/MlCenterPosition/MlCenterPosition.tsx +65 -65
  125. package/src/components/MlComponentTemplate/MlComponentTemplate.stories.js +5 -5
  126. package/src/components/MlComponentTemplate/MlComponentTemplate.tsx +23 -23
  127. package/src/components/MlCreatePdfButton/{MlCreatePdfButton.meta.json → MlCreatePdfButton.meta_.json} +0 -0
  128. package/src/components/MlCreatePdfButton/MlCreatePdfButton.stories.js +16 -16
  129. package/src/components/MlCreatePdfButton/MlCreatePdfButton.tsx +29 -29
  130. package/src/components/MlCreatePdfButton/lib/createPdf.ts +175 -175
  131. package/src/components/MlCreatePdfButton/lib/nominatimMap.ts +51 -51
  132. package/src/components/MlCreatePdfForm/MlCreatePdfForm.doc.de.md +3 -0
  133. package/src/components/MlCreatePdfForm/MlCreatePdfForm.meta.json +15 -0
  134. package/src/components/MlCreatePdfForm/MlCreatePdfForm.stories.tsx +152 -0
  135. package/src/components/MlCreatePdfForm/MlCreatePdfForm.tsx +39 -0
  136. package/src/components/MlCreatePdfForm/lib/PdfContext.tsx +53 -0
  137. package/src/components/MlCreatePdfForm/lib/PdfForm.tsx +161 -0
  138. package/src/components/MlCreatePdfForm/lib/PdfPreview.tsx +399 -0
  139. package/src/components/MlCreatePdfForm/lib/pdf.templates.ts +82 -0
  140. package/src/components/MlFeatureEditor/MlFeatureEditor.stories.js +55 -55
  141. package/src/components/MlFeatureEditor/MlFeatureEditor.test.js +105 -105
  142. package/src/components/MlFeatureEditor/MlFeatureEditor.tsx +119 -119
  143. package/src/components/MlFeatureEditor/custom-direct-select-mode.js +208 -208
  144. package/src/components/MlFeatureEditor/custom-polygon-mode.js +148 -148
  145. package/src/components/MlFeatureEditor/custom-select-mode.js +314 -314
  146. package/src/components/MlFeatureEditor/lib/common_selectors.js +34 -34
  147. package/src/components/MlFeatureEditor/lib/constants.js +61 -61
  148. package/src/components/MlFeatureEditor/lib/constrain_feature_movement.js +51 -51
  149. package/src/components/MlFeatureEditor/lib/create_midpoint.js +30 -30
  150. package/src/components/MlFeatureEditor/lib/create_supplementary_points.js +82 -82
  151. package/src/components/MlFeatureEditor/lib/create_vertex.js +16 -16
  152. package/src/components/MlFeatureEditor/lib/double_click_zoom.js +23 -23
  153. package/src/components/MlFeatureEditor/lib/euclidean_distance.js +3 -3
  154. package/src/components/MlFeatureEditor/lib/features_at.js +23 -23
  155. package/src/components/MlFeatureEditor/lib/get_features_and_set_cursor.js +15 -15
  156. package/src/components/MlFeatureEditor/lib/is_click.js +8 -8
  157. package/src/components/MlFeatureEditor/lib/is_event_at_coordinates.js +2 -2
  158. package/src/components/MlFeatureEditor/lib/is_tap.js +6 -6
  159. package/src/components/MlFeatureEditor/lib/map_event_to_bounding_box.js +4 -4
  160. package/src/components/MlFeatureEditor/lib/mode_handler.js +105 -105
  161. package/src/components/MlFeatureEditor/lib/mouse_event_point.js +5 -5
  162. package/src/components/MlFeatureEditor/lib/move_features.js +33 -33
  163. package/src/components/MlFeatureEditor/lib/sort_features.js +25 -25
  164. package/src/components/MlFeatureEditor/lib/string_set.js +36 -36
  165. package/src/components/MlFeatureEditor/lib/string_sets_are_equal.js +2 -2
  166. package/src/components/MlFeatureEditor/lib/theme.js +230 -230
  167. package/src/components/MlFeatureEditor/lib/to_dense_array.js +1 -1
  168. package/src/components/MlFeatureEditor/lib/utils.js +40 -40
  169. package/src/components/MlFillExtrusionLayer/MlFillExtrusionLayer.stories.js +9 -9
  170. package/src/components/MlFillExtrusionLayer/MlFillExtrusionLayer.test.js +4 -4
  171. package/src/components/MlFillExtrusionLayer/MlFillExtrusionLayer.tsx +65 -65
  172. package/src/components/MlFollowGps/MlFollowGps.stories.js +6 -6
  173. package/src/components/MlFollowGps/MlFollowGps.test.js +44 -44
  174. package/src/components/MlFollowGps/MlFollowGps.tsx +220 -220
  175. package/src/components/MlGPXViewer/MlGPXViewer.stories.js +15 -15
  176. package/src/components/MlGPXViewer/MlGPXViewer.test.js +12 -12
  177. package/src/components/MlGPXViewer/MlGPXViewer.tsx +345 -345
  178. package/src/components/MlGPXViewer/gpxConverter.js +496 -496
  179. package/src/components/MlGPXViewer/util/GeoJsonContext.ts +4 -4
  180. package/src/components/MlGPXViewer/util/GeoJsonProvider.tsx +16 -16
  181. package/src/components/MlGeoJsonLayer/MlGeoJsonLayer.stories.js +34 -34
  182. package/src/components/MlGeoJsonLayer/MlGeoJsonLayer.test.js +8 -8
  183. package/src/components/MlGeoJsonLayer/MlGeoJsonLayer.tsx +84 -84
  184. package/src/components/MlGeoJsonLayer/util/getDefaultLayerTypeByGeometry.ts +21 -21
  185. package/src/components/MlGeoJsonLayer/util/getDefaultPaintPropsByType.ts +27 -27
  186. package/src/components/MlGeojsonLayerWithSource/MlGeojsonLayerWithSource.doc.de.md +3 -0
  187. package/src/components/MlGeojsonLayerWithSource/MlGeojsonLayerWithSource.meta_.json +15 -0
  188. package/src/components/MlGeojsonLayerWithSource/MlGeojsonLayerWithSource.stories.js +19 -0
  189. package/src/components/MlGeojsonLayerWithSource/MlGeojsonLayerWithSource.tsx +128 -0
  190. package/src/components/MlImageMarkerLayer/MlImageMarkerLayer.stories.js +28 -28
  191. package/src/components/MlImageMarkerLayer/MlImageMarkerLayer.test.js +8 -8
  192. package/src/components/MlImageMarkerLayer/MlImageMarkerLayer.tsx +162 -162
  193. package/src/components/MlLayer/MlLayer.stories.js +5 -5
  194. package/src/components/MlLayer/MlLayer.test.js +86 -86
  195. package/src/components/MlLayer/MlLayer.tsx +36 -36
  196. package/src/components/MlLayerMagnify/MlLayerMagnify.stories.js +21 -21
  197. package/src/components/MlLayerMagnify/MlLayerMagnify.test.js +54 -54
  198. package/src/components/MlLayerMagnify/MlLayerMagnify.tsx +201 -201
  199. package/src/components/MlLayerSwipe/MlLayerSwipe.stories.js +20 -20
  200. package/src/components/MlLayerSwipe/MlLayerSwipe.test.js +54 -54
  201. package/src/components/MlLayerSwipe/MlLayerSwipe.tsx +130 -130
  202. package/src/components/MlLayerSwitcher/MlLayerSwitcher.js +194 -194
  203. package/src/components/MlLayerSwitcher/MlLayerSwitcher.stories.js +85 -85
  204. package/src/components/MlLayerSwitcher/components/LayerBox.js +57 -57
  205. package/src/components/MlMarker/MlMarker.stories.js +7 -7
  206. package/src/components/MlMarker/MlMarker.tsx +119 -119
  207. package/src/components/MlMeasureTool/MlMeasureTool.stories.js +64 -64
  208. package/src/components/MlMeasureTool/MlMeasureTool.tsx +38 -38
  209. package/src/components/MlNavigationCompass/MlNavigationCompass.stories.js +45 -45
  210. package/src/components/MlNavigationCompass/MlNavigationCompass.test.js +40 -40
  211. package/src/components/MlNavigationCompass/MlNavigationCompass.tsx +192 -192
  212. package/src/components/MlNavigationTools/MlNavigationTools.stories.js +18 -18
  213. package/src/components/MlNavigationTools/MlNavigationTools.tsx +173 -173
  214. package/src/components/MlOsmLayer/MlOsmLayer.js +49 -49
  215. package/src/components/MlOsmLayer/MlOsmLayer.stories_.js +29 -29
  216. package/src/components/MlOsmLayer/MlOsmLayer.test.js +8 -8
  217. package/src/components/MlScaleReference/MlScaleReference.js +82 -82
  218. package/src/components/MlScaleReference/MlScaleReference.stories.js +27 -27
  219. package/src/components/MlShareMapState/MlShareMapState.js +203 -203
  220. package/src/components/MlShareMapState/MlShareMapState.stories.js +68 -68
  221. package/src/components/MlSpatialElevationProfile/MlSpatialElevationProfile.js +201 -201
  222. package/src/components/MlSpatialElevationProfile/MlSpatialElevationProfile.stories.js +35 -35
  223. package/src/components/MlSpatialElevationProfile/MlSpatialElevationProfile.test.js +8 -8
  224. package/src/components/MlThreeJsLayer/MlThreeJsLayer.js +186 -186
  225. package/src/components/MlThreeJsLayer/MlThreeJsLayer.stories.js +21 -21
  226. package/src/components/MlThreeJsLayer/MlThreeJsLayer.test.js +24 -24
  227. package/src/components/MlThreeJsLayer/lib/GLTFLoader.js +3327 -3327
  228. package/src/components/MlTransitionGeoJsonLayer/MlTransitionGeoJsonLayer.stories.js +31 -30
  229. package/src/components/MlTransitionGeoJsonLayer/MlTransitionGeoJsonLayer.test.js +8 -8
  230. package/src/components/MlTransitionGeoJsonLayer/MlTransitionGeoJsonLayer.tsx +146 -146
  231. package/src/components/MlTransitionGeoJsonLayer/util/transitionFunctions.js +207 -207
  232. package/src/components/MlUseMapDebugger/MlUseMapDebugger.js +52 -52
  233. package/src/components/MlUseMapDebugger/MlUseMapDebugger.stories.js +13 -13
  234. package/src/components/MlVectorTileLayer/MlVectorTileLayer.stories.js +27 -27
  235. package/src/components/MlVectorTileLayer/MlVectorTileLayer.test.js +27 -27
  236. package/src/components/MlVectorTileLayer/MlVectorTileLayer.tsx +137 -137
  237. package/src/components/MlWmsFeatureInfoPopup/MlWmsFeatureInfoPopup.js +34 -34
  238. package/src/components/MlWmsFeatureInfoPopup/MlWmsFeatureInfoPopup.stories.js +7 -7
  239. package/src/components/MlWmsLayer/MlWmsLayer.stories.js +26 -26
  240. package/src/components/MlWmsLayer/MlWmsLayer.test.js +8 -8
  241. package/src/components/MlWmsLayer/MlWmsLayer.tsx +167 -167
  242. package/src/components/MlWmsLoader/MlWmsLoader.stories.js +27 -27
  243. package/src/components/MlWmsLoader/MlWmsLoader.tsx +254 -254
  244. package/src/contexts/MapComponentsProvider.test.js +229 -229
  245. package/src/contexts/MapContext.tsx +65 -65
  246. package/src/contexts/SimpleDataProvider.js +47 -47
  247. package/src/contexts/SimpleDataProvider.test.js +29 -29
  248. package/src/custom.d.tsx +14 -14
  249. package/src/decorators/MapContextDecorator.js +22 -22
  250. package/src/decorators/MapContextDecoratorHooks.js +34 -0
  251. package/src/decorators/MultiMapContextDecorator.js +63 -63
  252. package/src/decorators/NoNavToolsDecorator.js +17 -17
  253. package/src/decorators/ThemeWrapper.jsx +1 -1
  254. package/src/hooks/assets/pointWG.json +13 -0
  255. package/src/hooks/exportMap/index.ts +30 -0
  256. package/src/hooks/exportMap/lib.ts +187 -0
  257. package/src/hooks/useLayer.test.js +188 -188
  258. package/src/hooks/useLayer.ts +194 -180
  259. package/src/hooks/useLayerEvent.js +49 -0
  260. package/src/hooks/useMap.ts +67 -66
  261. package/src/hooks/useMapState.stories.js +78 -78
  262. package/src/hooks/useMapState.ts +161 -161
  263. package/src/hooks/useSource.ts +84 -0
  264. package/src/hooks/useSources.stories.js +232 -0
  265. package/src/hooks/useWms.js +71 -71
  266. package/src/index.ts +3 -0
  267. package/src/setupTests.js +86 -86
  268. package/src/ui_components/ImageLoader.js +62 -62
  269. package/src/ui_components/Legend.js +34 -34
  270. package/src/ui_components/LoadingOverlay.js +29 -29
  271. package/src/ui_components/LoadingOverlayContext.js +68 -68
  272. package/src/ui_components/Sidebar.js +80 -80
  273. package/src/ui_components/Tooltip.js +9 -9
  274. package/src/ui_components/TopToolbar.js +23 -23
  275. package/src/util/layerRemovalTest.js +111 -111
  276. package/src/util/sourceRemovalTest.js +103 -103
@@ -3,27 +3,27 @@ import AppBar from "@mui/material/AppBar";
3
3
  import Toolbar from "@mui/material/Toolbar";
4
4
 
5
5
  export default function TopToolbar(props) {
6
- return (
7
- <div
8
- style={{
9
- flexGrow: 1,
10
- zIndex: 120,
11
- position: "absolute",
12
- top: 0,
13
- left: 0,
14
- right: 0,
15
- }}
16
- >
17
- <AppBar
18
- sx={{
19
- minHeight: "62px",
20
- backgroundColor: "#f1f1f1",
21
- }}
22
- color="primary"
23
- position="static"
24
- >
25
- <Toolbar>{props.children}</Toolbar>
26
- </AppBar>
27
- </div>
28
- );
6
+ return (
7
+ <div
8
+ style={{
9
+ flexGrow: 1,
10
+ zIndex: 120,
11
+ position: "absolute",
12
+ top: 0,
13
+ left: 0,
14
+ right: 0,
15
+ }}
16
+ >
17
+ <AppBar
18
+ sx={{
19
+ minHeight: "62px",
20
+ backgroundColor: "#f1f1f1",
21
+ }}
22
+ color="primary"
23
+ position="static"
24
+ >
25
+ <Toolbar>{props.children}</Toolbar>
26
+ </AppBar>
27
+ </div>
28
+ );
29
29
  }
@@ -4,118 +4,118 @@ import { MapContext, MapComponentsProvider } from "../index";
4
4
  import MapLibreMap from "./../components/MapLibreMap/MapLibreMap";
5
5
 
6
6
  const layerRemovalTest = (
7
- ComponentName,
8
- Component,
9
- regexLayerNameTest,
10
- humanReadableLayerName,
11
- beforeWrapperInit,
12
- afterWrapperInit,
13
- createWrapperFunction
7
+ ComponentName,
8
+ Component,
9
+ regexLayerNameTest,
10
+ humanReadableLayerName,
11
+ beforeWrapperInit,
12
+ afterWrapperInit,
13
+ createWrapperFunction
14
14
  ) => {
15
- const TestComponent = (props) => {
16
- const [layerVisible, setLayerVisible] = useState(true);
17
- const [refreshTrigger, setRefreshTrigger] = useState(0);
18
- const mapContext = useContext(MapContext);
19
-
20
- return (
21
- <>
22
- <MapLibreMap />
23
-
24
- {layerVisible && Component}
25
-
26
- <button
27
- className="toggle_layer_visible"
28
- onClick={() => {
29
- setLayerVisible(!layerVisible);
30
- }}
31
- >
32
- toggle layer visible
33
- </button>
34
- <button
35
- className="trigger_refresh"
36
- onClick={() => {
37
- setRefreshTrigger(refreshTrigger + 1);
38
- }}
39
- >
40
- refresh
41
- </button>
42
- <div className="layers_json">
43
- {mapContext.map &&
44
- refreshTrigger &&
45
- JSON.stringify(mapContext.map.map.layers)}
46
- </div>
47
- </>
48
- );
49
- };
50
-
51
- const createWrapper =
52
- (typeof createWrapperFunction === "function" && createWrapperFunction) ||
53
- (() =>
54
- mount(
55
- <MapComponentsProvider>
56
- <TestComponent />
57
- </MapComponentsProvider>
58
- ));
59
-
60
- describe(ComponentName, () => {
61
- it(
62
- "should add a Layer with the id '" +
63
- humanReadableLayerName +
64
- "' to the MapLibre instance",
65
- async () => {
66
- if (typeof beforeWrapperInit === "function") {
67
- await beforeWrapperInit();
68
- }
69
-
70
- const wrapper = createWrapper(TestComponent);
71
-
72
- if (typeof afterWrapperInit === "function") {
73
- await afterWrapperInit();
74
- }
75
-
76
- wrapper.find(".trigger_refresh").simulate("click");
77
-
78
- // debug helper
79
- //console.log('layer removal test')
80
- //console.log(wrapper.find(".layers_json").text());
81
- //console.log(regexLayerNameTest.toString());
82
- //console.log(regexLayerNameTest.test(wrapper.find(".layers_json").text()));
83
- expect(regexLayerNameTest.test(wrapper.find(".layers_json").text())).toEqual(
84
- true
85
- );
86
- }
87
- );
88
-
89
- it(
90
- "should remove a Layer with the id '" +
91
- humanReadableLayerName +
92
- "' from the MapLibre instance",
93
- async () => {
94
- if (typeof beforeWrapperInit === "function") {
95
- await beforeWrapperInit();
96
- }
97
-
98
- const wrapper = createWrapper(TestComponent);
99
-
100
- if (typeof afterWrapperInit === "function") {
101
- await afterWrapperInit();
102
- }
103
-
104
- wrapper.find(".trigger_refresh").simulate("click");
105
-
106
- expect(regexLayerNameTest.test(wrapper.find(".layers_json").text())).toEqual(
107
- true
108
- );
109
-
110
- wrapper.find(".toggle_layer_visible").simulate("click");
111
- wrapper.find(".trigger_refresh").simulate("click");
112
-
113
- expect(regexLayerNameTest.test(wrapper.find(".layers_json").text())).toEqual(
114
- false
115
- );
116
- }
117
- );
118
- });
15
+ const TestComponent = (props) => {
16
+ const [layerVisible, setLayerVisible] = useState(true);
17
+ const [refreshTrigger, setRefreshTrigger] = useState(0);
18
+ const mapContext = useContext(MapContext);
19
+
20
+ return (
21
+ <>
22
+ <MapLibreMap />
23
+
24
+ {layerVisible && Component}
25
+
26
+ <button
27
+ className="toggle_layer_visible"
28
+ onClick={() => {
29
+ setLayerVisible(!layerVisible);
30
+ }}
31
+ >
32
+ toggle layer visible
33
+ </button>
34
+ <button
35
+ className="trigger_refresh"
36
+ onClick={() => {
37
+ setRefreshTrigger(refreshTrigger + 1);
38
+ }}
39
+ >
40
+ refresh
41
+ </button>
42
+ <div className="layers_json">
43
+ {mapContext.map &&
44
+ refreshTrigger &&
45
+ JSON.stringify(mapContext.map.map.layers)}
46
+ </div>
47
+ </>
48
+ );
49
+ };
50
+
51
+ const createWrapper =
52
+ (typeof createWrapperFunction === "function" && createWrapperFunction) ||
53
+ (() =>
54
+ mount(
55
+ <MapComponentsProvider>
56
+ <TestComponent />
57
+ </MapComponentsProvider>
58
+ ));
59
+
60
+ describe(ComponentName, () => {
61
+ it(
62
+ "should add a Layer with the id '" +
63
+ humanReadableLayerName +
64
+ "' to the MapLibre instance",
65
+ async () => {
66
+ if (typeof beforeWrapperInit === "function") {
67
+ await beforeWrapperInit();
68
+ }
69
+
70
+ const wrapper = createWrapper(TestComponent);
71
+
72
+ if (typeof afterWrapperInit === "function") {
73
+ await afterWrapperInit();
74
+ }
75
+
76
+ wrapper.find(".trigger_refresh").simulate("click");
77
+
78
+ // debug helper
79
+ //console.log('layer removal test')
80
+ //console.log(wrapper.find(".layers_json").text());
81
+ //console.log(regexLayerNameTest.toString());
82
+ //console.log(regexLayerNameTest.test(wrapper.find(".layers_json").text()));
83
+ expect(regexLayerNameTest.test(wrapper.find(".layers_json").text())).toEqual(
84
+ true
85
+ );
86
+ }
87
+ );
88
+
89
+ it(
90
+ "should remove a Layer with the id '" +
91
+ humanReadableLayerName +
92
+ "' from the MapLibre instance",
93
+ async () => {
94
+ if (typeof beforeWrapperInit === "function") {
95
+ await beforeWrapperInit();
96
+ }
97
+
98
+ const wrapper = createWrapper(TestComponent);
99
+
100
+ if (typeof afterWrapperInit === "function") {
101
+ await afterWrapperInit();
102
+ }
103
+
104
+ wrapper.find(".trigger_refresh").simulate("click");
105
+
106
+ expect(regexLayerNameTest.test(wrapper.find(".layers_json").text())).toEqual(
107
+ true
108
+ );
109
+
110
+ wrapper.find(".toggle_layer_visible").simulate("click");
111
+ wrapper.find(".trigger_refresh").simulate("click");
112
+
113
+ expect(regexLayerNameTest.test(wrapper.find(".layers_json").text())).toEqual(
114
+ false
115
+ );
116
+ }
117
+ );
118
+ });
119
119
  };
120
120
 
121
121
  export default layerRemovalTest;
@@ -4,110 +4,110 @@ import { MapContext, MapComponentsProvider } from "../index";
4
4
  import MapLibreMap from "./../components/MapLibreMap/MapLibreMap";
5
5
 
6
6
  const sourceRemovalTest = (
7
- ComponentName,
8
- Component,
9
- regexLayerNameTest,
10
- humanReadableLayerName,
11
- beforeWrapperInit,
12
- afterWrapperInit
7
+ ComponentName,
8
+ Component,
9
+ regexLayerNameTest,
10
+ humanReadableLayerName,
11
+ beforeWrapperInit,
12
+ afterWrapperInit
13
13
  ) => {
14
- const TestComponent = (props) => {
15
- const [layerVisible, setLayerVisible] = useState(true);
16
- const [refreshTrigger, setRefreshTrigger] = useState(0);
17
- const mapContext = useContext(MapContext);
18
-
19
- return (
20
- <>
21
- <MapLibreMap />
22
-
23
- {layerVisible && Component}
24
-
25
- <button
26
- className="toggle_layer_visible"
27
- onClick={() => {
28
- setLayerVisible(!layerVisible);
29
- }}
30
- >
31
- toggle layer visible
32
- </button>
33
- <button
34
- className="trigger_refresh"
35
- onClick={() => {
36
- setRefreshTrigger(refreshTrigger + 1);
37
- }}
38
- >
39
- refresh
40
- </button>
41
- <div className="sources_json">
42
- {mapContext.map &&
43
- refreshTrigger &&
44
- JSON.stringify(mapContext.map.map.sources)}
45
- </div>
46
- </>
47
- );
48
- };
49
-
50
- const createWrapper = () =>
51
- mount(
52
- <MapComponentsProvider>
53
- <TestComponent />
54
- </MapComponentsProvider>
55
- );
56
-
57
- describe(ComponentName, () => {
58
- it(
59
- "should add a Source with the id '" +
60
- humanReadableLayerName +
61
- "' to the MapLibre instance",
62
- async () => {
63
- if (typeof beforeWrapperInit === "function") {
64
- await beforeWrapperInit();
65
- }
66
-
67
- const wrapper = createWrapper();
68
-
69
- if (typeof afterWrapperInit === "function") {
70
- await afterWrapperInit();
71
- }
72
-
73
- wrapper.find(".trigger_refresh").simulate("click");
74
-
75
- expect(
76
- regexLayerNameTest.test(wrapper.find(".sources_json").text())
77
- ).toEqual(true);
78
- }
79
- );
80
-
81
- it(
82
- "should remove a Source with the id '" +
83
- humanReadableLayerName +
84
- "' from the MapLibre instance",
85
- async () => {
86
- if (typeof beforeWrapperInit === "function") {
87
- await beforeWrapperInit();
88
- }
89
-
90
- const wrapper = createWrapper();
91
-
92
- if (typeof afterWrapperInit === "function") {
93
- await afterWrapperInit();
94
- }
95
-
96
- wrapper.find(".trigger_refresh").simulate("click");
97
-
98
- expect(
99
- regexLayerNameTest.test(wrapper.find(".sources_json").text())
100
- ).toEqual(true);
101
-
102
- wrapper.find(".toggle_layer_visible").simulate("click");
103
- wrapper.find(".trigger_refresh").simulate("click");
104
-
105
- expect(
106
- regexLayerNameTest.test(wrapper.find(".sources_json").text())
107
- ).toEqual(false);
108
- }
109
- );
110
- });
14
+ const TestComponent = (props) => {
15
+ const [layerVisible, setLayerVisible] = useState(true);
16
+ const [refreshTrigger, setRefreshTrigger] = useState(0);
17
+ const mapContext = useContext(MapContext);
18
+
19
+ return (
20
+ <>
21
+ <MapLibreMap />
22
+
23
+ {layerVisible && Component}
24
+
25
+ <button
26
+ className="toggle_layer_visible"
27
+ onClick={() => {
28
+ setLayerVisible(!layerVisible);
29
+ }}
30
+ >
31
+ toggle layer visible
32
+ </button>
33
+ <button
34
+ className="trigger_refresh"
35
+ onClick={() => {
36
+ setRefreshTrigger(refreshTrigger + 1);
37
+ }}
38
+ >
39
+ refresh
40
+ </button>
41
+ <div className="sources_json">
42
+ {mapContext.map &&
43
+ refreshTrigger &&
44
+ JSON.stringify(mapContext.map.map.sources)}
45
+ </div>
46
+ </>
47
+ );
48
+ };
49
+
50
+ const createWrapper = () =>
51
+ mount(
52
+ <MapComponentsProvider>
53
+ <TestComponent />
54
+ </MapComponentsProvider>
55
+ );
56
+
57
+ describe(ComponentName, () => {
58
+ it(
59
+ "should add a Source with the id '" +
60
+ humanReadableLayerName +
61
+ "' to the MapLibre instance",
62
+ async () => {
63
+ if (typeof beforeWrapperInit === "function") {
64
+ await beforeWrapperInit();
65
+ }
66
+
67
+ const wrapper = createWrapper();
68
+
69
+ if (typeof afterWrapperInit === "function") {
70
+ await afterWrapperInit();
71
+ }
72
+
73
+ wrapper.find(".trigger_refresh").simulate("click");
74
+
75
+ expect(
76
+ regexLayerNameTest.test(wrapper.find(".sources_json").text())
77
+ ).toEqual(true);
78
+ }
79
+ );
80
+
81
+ it(
82
+ "should remove a Source with the id '" +
83
+ humanReadableLayerName +
84
+ "' from the MapLibre instance",
85
+ async () => {
86
+ if (typeof beforeWrapperInit === "function") {
87
+ await beforeWrapperInit();
88
+ }
89
+
90
+ const wrapper = createWrapper();
91
+
92
+ if (typeof afterWrapperInit === "function") {
93
+ await afterWrapperInit();
94
+ }
95
+
96
+ wrapper.find(".trigger_refresh").simulate("click");
97
+
98
+ expect(
99
+ regexLayerNameTest.test(wrapper.find(".sources_json").text())
100
+ ).toEqual(true);
101
+
102
+ wrapper.find(".toggle_layer_visible").simulate("click");
103
+ wrapper.find(".trigger_refresh").simulate("click");
104
+
105
+ expect(
106
+ regexLayerNameTest.test(wrapper.find(".sources_json").text())
107
+ ).toEqual(false);
108
+ }
109
+ );
110
+ });
111
111
  };
112
112
 
113
113
  export default sourceRemovalTest;