@mapcomponents/react-maplibre 0.1.55 → 0.1.56

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 (88) hide show
  1. package/CHANGELOG.md +11 -0
  2. package/coverage/clover.xml +86 -80
  3. package/coverage/coverage-final.json +2 -2
  4. package/coverage/lcov-report/index.html +16 -16
  5. package/coverage/lcov-report/src/components/MapLibreMap/MapLibreMap.tsx.html +1 -1
  6. package/coverage/lcov-report/src/components/MapLibreMap/index.html +1 -1
  7. package/coverage/lcov-report/src/components/MlCenterPosition/MlCenterPosition.tsx.html +1 -1
  8. package/coverage/lcov-report/src/components/MlCenterPosition/index.html +1 -1
  9. package/coverage/lcov-report/src/components/MlCreatePdfButton/MlCreatePdfButton.tsx.html +1 -1
  10. package/coverage/lcov-report/src/components/MlCreatePdfButton/index.html +1 -1
  11. package/coverage/lcov-report/src/components/MlFeatureEditor/MlFeatureEditor.tsx.html +1 -1
  12. package/coverage/lcov-report/src/components/MlFeatureEditor/index.html +1 -1
  13. package/coverage/lcov-report/src/components/MlFillExtrusionLayer/MlFillExtrusionLayer.tsx.html +1 -1
  14. package/coverage/lcov-report/src/components/MlFillExtrusionLayer/index.html +1 -1
  15. package/coverage/lcov-report/src/components/MlFollowGps/MlFollowGps.tsx.html +123 -36
  16. package/coverage/lcov-report/src/components/MlFollowGps/index.html +15 -15
  17. package/coverage/lcov-report/src/components/MlGPXViewer/MlGPXViewer.tsx.html +1 -1
  18. package/coverage/lcov-report/src/components/MlGPXViewer/gpxConverter.js.html +1 -1
  19. package/coverage/lcov-report/src/components/MlGPXViewer/index.html +1 -1
  20. package/coverage/lcov-report/src/components/MlGeoJsonLayer/MlGeoJsonLayer.tsx.html +1 -1
  21. package/coverage/lcov-report/src/components/MlGeoJsonLayer/index.html +1 -1
  22. package/coverage/lcov-report/src/components/MlImageMarkerLayer/MlImageMarkerLayer.tsx.html +1 -1
  23. package/coverage/lcov-report/src/components/MlImageMarkerLayer/index.html +1 -1
  24. package/coverage/lcov-report/src/components/MlLayer/MlLayer.tsx.html +1 -1
  25. package/coverage/lcov-report/src/components/MlLayer/index.html +1 -1
  26. package/coverage/lcov-report/src/components/MlLayerMagnify/MlLayerMagnify.tsx.html +1 -1
  27. package/coverage/lcov-report/src/components/MlLayerMagnify/index.html +1 -1
  28. package/coverage/lcov-report/src/components/MlLayerSwipe/MlLayerSwipe.tsx.html +1 -1
  29. package/coverage/lcov-report/src/components/MlLayerSwipe/index.html +1 -1
  30. package/coverage/lcov-report/src/components/MlLayerSwitcher/MlLayerSwitcher.js.html +1 -1
  31. package/coverage/lcov-report/src/components/MlLayerSwitcher/components/LayerBox.js.html +1 -1
  32. package/coverage/lcov-report/src/components/MlLayerSwitcher/components/index.html +1 -1
  33. package/coverage/lcov-report/src/components/MlLayerSwitcher/index.html +1 -1
  34. package/coverage/lcov-report/src/components/MlMarker/MlMarker.tsx.html +1 -1
  35. package/coverage/lcov-report/src/components/MlMarker/index.html +1 -1
  36. package/coverage/lcov-report/src/components/MlMeasureTool/MlMeasureTool.tsx.html +1 -1
  37. package/coverage/lcov-report/src/components/MlMeasureTool/index.html +1 -1
  38. package/coverage/lcov-report/src/components/MlNavigationCompass/MlNavigationCompass.tsx.html +1 -1
  39. package/coverage/lcov-report/src/components/MlNavigationCompass/index.html +1 -1
  40. package/coverage/lcov-report/src/components/MlNavigationTools/MlNavigationTools.tsx.html +42 -12
  41. package/coverage/lcov-report/src/components/MlNavigationTools/index.html +3 -3
  42. package/coverage/lcov-report/src/components/MlOsmLayer/MlOsmLayer.js.html +1 -1
  43. package/coverage/lcov-report/src/components/MlOsmLayer/MlOsmLayer.stories_.js.html +1 -1
  44. package/coverage/lcov-report/src/components/MlOsmLayer/index.html +1 -1
  45. package/coverage/lcov-report/src/components/MlScaleReference/MlScaleReference.js.html +1 -1
  46. package/coverage/lcov-report/src/components/MlScaleReference/index.html +1 -1
  47. package/coverage/lcov-report/src/components/MlShareMapState/MlShareMapState.js.html +1 -1
  48. package/coverage/lcov-report/src/components/MlShareMapState/index.html +1 -1
  49. package/coverage/lcov-report/src/components/MlSpatialElevationProfile/MlSpatialElevationProfile.js.html +1 -1
  50. package/coverage/lcov-report/src/components/MlSpatialElevationProfile/index.html +1 -1
  51. package/coverage/lcov-report/src/components/MlThreeJsLayer/MlThreeJsLayer.js.html +1 -1
  52. package/coverage/lcov-report/src/components/MlThreeJsLayer/index.html +1 -1
  53. package/coverage/lcov-report/src/components/MlTransitionGeoJsonLayer/MlTransitionGeoJsonLayer.tsx.html +1 -1
  54. package/coverage/lcov-report/src/components/MlTransitionGeoJsonLayer/index.html +1 -1
  55. package/coverage/lcov-report/src/components/MlUseMapDebugger/MlUseMapDebugger.js.html +1 -1
  56. package/coverage/lcov-report/src/components/MlUseMapDebugger/index.html +1 -1
  57. package/coverage/lcov-report/src/components/MlVectorTileLayer/MlVectorTileLayer.tsx.html +1 -1
  58. package/coverage/lcov-report/src/components/MlVectorTileLayer/index.html +1 -1
  59. package/coverage/lcov-report/src/components/MlWmsFeatureInfoPopup/MlWmsFeatureInfoPopup.js.html +1 -1
  60. package/coverage/lcov-report/src/components/MlWmsFeatureInfoPopup/index.html +1 -1
  61. package/coverage/lcov-report/src/components/MlWmsLayer/MlWmsLayer.tsx.html +1 -1
  62. package/coverage/lcov-report/src/components/MlWmsLayer/index.html +1 -1
  63. package/coverage/lcov-report/src/components/MlWmsLoader/MlWmsLoader.tsx.html +1 -1
  64. package/coverage/lcov-report/src/components/MlWmsLoader/index.html +1 -1
  65. package/coverage/lcov-report/src/contexts/MapContext.tsx.html +1 -1
  66. package/coverage/lcov-report/src/contexts/SimpleDataContext.js.html +1 -1
  67. package/coverage/lcov-report/src/contexts/SimpleDataProvider.js.html +1 -1
  68. package/coverage/lcov-report/src/contexts/index.html +1 -1
  69. package/coverage/lcov-report/src/hooks/index.html +1 -1
  70. package/coverage/lcov-report/src/hooks/useLayer.ts.html +1 -1
  71. package/coverage/lcov-report/src/hooks/useMap.ts.html +1 -1
  72. package/coverage/lcov-report/src/hooks/useMapState.ts.html +1 -1
  73. package/coverage/lcov-report/src/hooks/useWms.js.html +1 -1
  74. package/coverage/lcov-report/src/index.html +1 -1
  75. package/coverage/lcov-report/src/index.ts.html +1 -1
  76. package/coverage/lcov.info +170 -159
  77. package/dist/components/MlFollowGps/MlFollowGps.d.ts +26 -6
  78. package/dist/components/MlNavigationTools/MlNavigationTools.d.ts +9 -0
  79. package/dist/components/MlNavigationTools/MlNavigationTools.stories.d.ts +1 -0
  80. package/dist/index.esm.js +118 -46
  81. package/dist/index.esm.js.map +1 -1
  82. package/package.json +1 -1
  83. package/src/components/MlFollowGps/MlFollowGps.stories.js +4 -2
  84. package/src/components/MlFollowGps/MlFollowGps.tsx +53 -24
  85. package/src/components/MlNavigationTools/MlNavigationTools.stories.js +6 -0
  86. package/src/components/MlNavigationTools/MlNavigationTools.tsx +19 -9
  87. package/src/decorators/MapContextDecorator.js +5 -4
  88. package/src/decorators/MultiMapContextDecorator.js +54 -55
@@ -23,16 +23,16 @@
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
26
- <span class="strong">36.65% </span>
26
+ <span class="strong">36.64% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>651/1776</span>
28
+ <span class='fraction'>653/1782</span>
29
29
  </div>
30
30
 
31
31
 
32
32
  <div class='fl pad1y space-right2'>
33
- <span class="strong">29.77% </span>
33
+ <span class="strong">29.62% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>301/1011</span>
35
+ <span class='fraction'>301/1016</span>
36
36
  </div>
37
37
 
38
38
 
@@ -44,9 +44,9 @@
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
- <span class="strong">38.2% </span>
47
+ <span class="strong">38.19% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>627/1641</span>
49
+ <span class='fraction'>629/1647</span>
50
50
  </div>
51
51
 
52
52
 
@@ -170,17 +170,17 @@
170
170
 
171
171
  <tr>
172
172
  <td class="file medium" data-value="src/components/MlFollowGps"><a href="src/components/MlFollowGps/index.html">src/components/MlFollowGps</a></td>
173
- <td data-value="60.78" class="pic medium">
174
- <div class="chart"><div class="cover-fill" style="width: 60%"></div><div class="cover-empty" style="width: 40%"></div></div>
173
+ <td data-value="57.89" class="pic medium">
174
+ <div class="chart"><div class="cover-fill" style="width: 57%"></div><div class="cover-empty" style="width: 43%"></div></div>
175
175
  </td>
176
- <td data-value="60.78" class="pct medium">60.78%</td>
177
- <td data-value="51" class="abs medium">31/51</td>
178
- <td data-value="64" class="pct medium">64%</td>
179
- <td data-value="25" class="abs medium">16/25</td>
176
+ <td data-value="57.89" class="pct medium">57.89%</td>
177
+ <td data-value="57" class="abs medium">33/57</td>
178
+ <td data-value="50" class="pct medium">50%</td>
179
+ <td data-value="32" class="abs medium">16/32</td>
180
180
  <td data-value="70" class="pct medium">70%</td>
181
181
  <td data-value="10" class="abs medium">7/10</td>
182
- <td data-value="62.5" class="pct medium">62.5%</td>
183
- <td data-value="48" class="abs medium">30/48</td>
182
+ <td data-value="59.25" class="pct medium">59.25%</td>
183
+ <td data-value="54" class="abs medium">32/54</td>
184
184
  </tr>
185
185
 
186
186
  <tr>
@@ -356,7 +356,7 @@
356
356
  <td data-value="5.71" class="pct low">5.71%</td>
357
357
  <td data-value="35" class="abs low">2/35</td>
358
358
  <td data-value="0" class="pct low">0%</td>
359
- <td data-value="46" class="abs low">0/46</td>
359
+ <td data-value="44" class="abs low">0/44</td>
360
360
  <td data-value="0" class="pct low">0%</td>
361
361
  <td data-value="8" class="abs low">0/8</td>
362
362
  <td data-value="6.66" class="pct low">6.66%</td>
@@ -566,7 +566,7 @@
566
566
  <div class='footer quiet pad2 space-top1 center small'>
567
567
  Code coverage generated by
568
568
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
569
- at Tue Jul 19 2022 12:57:03 GMT+0000 (Coordinated Universal Time)
569
+ at Thu Aug 11 2022 13:20:32 GMT+0000 (Coordinated Universal Time)
570
570
  </div>
571
571
  <script src="prettify.js"></script>
572
572
  <script>
@@ -427,7 +427,7 @@ export default MapLibreMap;
427
427
  <div class='footer quiet pad2 space-top1 center small'>
428
428
  Code coverage generated by
429
429
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
430
- at Tue Jul 19 2022 12:57:03 GMT+0000 (Coordinated Universal Time)
430
+ at Thu Aug 11 2022 13:20:32 GMT+0000 (Coordinated Universal Time)
431
431
  </div>
432
432
  <script src="../../../prettify.js"></script>
433
433
  <script>
@@ -101,7 +101,7 @@
101
101
  <div class='footer quiet pad2 space-top1 center small'>
102
102
  Code coverage generated by
103
103
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
104
- at Tue Jul 19 2022 12:57:03 GMT+0000 (Coordinated Universal Time)
104
+ at Thu Aug 11 2022 13:20:32 GMT+0000 (Coordinated Universal Time)
105
105
  </div>
106
106
  <script src="../../../prettify.js"></script>
107
107
  <script>
@@ -328,7 +328,7 @@ export default MlCenterPosition;
328
328
  <div class='footer quiet pad2 space-top1 center small'>
329
329
  Code coverage generated by
330
330
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
331
- at Tue Jul 19 2022 12:57:03 GMT+0000 (Coordinated Universal Time)
331
+ at Thu Aug 11 2022 13:20:32 GMT+0000 (Coordinated Universal Time)
332
332
  </div>
333
333
  <script src="../../../prettify.js"></script>
334
334
  <script>
@@ -101,7 +101,7 @@
101
101
  <div class='footer quiet pad2 space-top1 center small'>
102
102
  Code coverage generated by
103
103
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
104
- at Tue Jul 19 2022 12:57:03 GMT+0000 (Coordinated Universal Time)
104
+ at Thu Aug 11 2022 13:20:32 GMT+0000 (Coordinated Universal Time)
105
105
  </div>
106
106
  <script src="../../../prettify.js"></script>
107
107
  <script>
@@ -223,7 +223,7 @@ export default MlCreatePdfButton;
223
223
  <div class='footer quiet pad2 space-top1 center small'>
224
224
  Code coverage generated by
225
225
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
226
- at Tue Jul 19 2022 12:57:03 GMT+0000 (Coordinated Universal Time)
226
+ at Thu Aug 11 2022 13:20:32 GMT+0000 (Coordinated Universal Time)
227
227
  </div>
228
228
  <script src="../../../prettify.js"></script>
229
229
  <script>
@@ -101,7 +101,7 @@
101
101
  <div class='footer quiet pad2 space-top1 center small'>
102
102
  Code coverage generated by
103
103
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
104
- at Tue Jul 19 2022 12:57:03 GMT+0000 (Coordinated Universal Time)
104
+ at Thu Aug 11 2022 13:20:32 GMT+0000 (Coordinated Universal Time)
105
105
  </div>
106
106
  <script src="../../../prettify.js"></script>
107
107
  <script>
@@ -490,7 +490,7 @@ export default MlFeatureEditor;
490
490
  <div class='footer quiet pad2 space-top1 center small'>
491
491
  Code coverage generated by
492
492
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
493
- at Tue Jul 19 2022 12:57:03 GMT+0000 (Coordinated Universal Time)
493
+ at Thu Aug 11 2022 13:20:32 GMT+0000 (Coordinated Universal Time)
494
494
  </div>
495
495
  <script src="../../../prettify.js"></script>
496
496
  <script>
@@ -101,7 +101,7 @@
101
101
  <div class='footer quiet pad2 space-top1 center small'>
102
102
  Code coverage generated by
103
103
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
104
- at Tue Jul 19 2022 12:57:03 GMT+0000 (Coordinated Universal Time)
104
+ at Thu Aug 11 2022 13:20:32 GMT+0000 (Coordinated Universal Time)
105
105
  </div>
106
106
  <script src="../../../prettify.js"></script>
107
107
  <script>
@@ -325,7 +325,7 @@ export default MlFillExtrusionLayer;
325
325
  <div class='footer quiet pad2 space-top1 center small'>
326
326
  Code coverage generated by
327
327
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
328
- at Tue Jul 19 2022 12:57:03 GMT+0000 (Coordinated Universal Time)
328
+ at Thu Aug 11 2022 13:20:32 GMT+0000 (Coordinated Universal Time)
329
329
  </div>
330
330
  <script src="../../../prettify.js"></script>
331
331
  <script>
@@ -101,7 +101,7 @@
101
101
  <div class='footer quiet pad2 space-top1 center small'>
102
102
  Code coverage generated by
103
103
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
104
- at Tue Jul 19 2022 12:57:03 GMT+0000 (Coordinated Universal Time)
104
+ at Thu Aug 11 2022 13:20:32 GMT+0000 (Coordinated Universal Time)
105
105
  </div>
106
106
  <script src="../../../prettify.js"></script>
107
107
  <script>
@@ -23,16 +23,16 @@
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
26
- <span class="strong">60.78% </span>
26
+ <span class="strong">57.89% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>31/51</span>
28
+ <span class='fraction'>33/57</span>
29
29
  </div>
30
30
 
31
31
 
32
32
  <div class='fl pad1y space-right2'>
33
- <span class="strong">64% </span>
33
+ <span class="strong">50% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>16/25</span>
35
+ <span class='fraction'>16/32</span>
36
36
  </div>
37
37
 
38
38
 
@@ -44,9 +44,9 @@
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
- <span class="strong">62.5% </span>
47
+ <span class="strong">59.25% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>30/48</span>
49
+ <span class='fraction'>32/54</span>
50
50
  </div>
51
51
 
52
52
 
@@ -294,7 +294,53 @@
294
294
  <a name='L229'></a><a href='#L229'>229</a>
295
295
  <a name='L230'></a><a href='#L230'>230</a>
296
296
  <a name='L231'></a><a href='#L231'>231</a>
297
- <a name='L232'></a><a href='#L232'>232</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
297
+ <a name='L232'></a><a href='#L232'>232</a>
298
+ <a name='L233'></a><a href='#L233'>233</a>
299
+ <a name='L234'></a><a href='#L234'>234</a>
300
+ <a name='L235'></a><a href='#L235'>235</a>
301
+ <a name='L236'></a><a href='#L236'>236</a>
302
+ <a name='L237'></a><a href='#L237'>237</a>
303
+ <a name='L238'></a><a href='#L238'>238</a>
304
+ <a name='L239'></a><a href='#L239'>239</a>
305
+ <a name='L240'></a><a href='#L240'>240</a>
306
+ <a name='L241'></a><a href='#L241'>241</a>
307
+ <a name='L242'></a><a href='#L242'>242</a>
308
+ <a name='L243'></a><a href='#L243'>243</a>
309
+ <a name='L244'></a><a href='#L244'>244</a>
310
+ <a name='L245'></a><a href='#L245'>245</a>
311
+ <a name='L246'></a><a href='#L246'>246</a>
312
+ <a name='L247'></a><a href='#L247'>247</a>
313
+ <a name='L248'></a><a href='#L248'>248</a>
314
+ <a name='L249'></a><a href='#L249'>249</a>
315
+ <a name='L250'></a><a href='#L250'>250</a>
316
+ <a name='L251'></a><a href='#L251'>251</a>
317
+ <a name='L252'></a><a href='#L252'>252</a>
318
+ <a name='L253'></a><a href='#L253'>253</a>
319
+ <a name='L254'></a><a href='#L254'>254</a>
320
+ <a name='L255'></a><a href='#L255'>255</a>
321
+ <a name='L256'></a><a href='#L256'>256</a>
322
+ <a name='L257'></a><a href='#L257'>257</a>
323
+ <a name='L258'></a><a href='#L258'>258</a>
324
+ <a name='L259'></a><a href='#L259'>259</a>
325
+ <a name='L260'></a><a href='#L260'>260</a>
326
+ <a name='L261'></a><a href='#L261'>261</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
327
+ <span class="cline-any cline-neutral">&nbsp;</span>
328
+ <span class="cline-any cline-neutral">&nbsp;</span>
329
+ <span class="cline-any cline-neutral">&nbsp;</span>
330
+ <span class="cline-any cline-neutral">&nbsp;</span>
331
+ <span class="cline-any cline-neutral">&nbsp;</span>
332
+ <span class="cline-any cline-neutral">&nbsp;</span>
333
+ <span class="cline-any cline-neutral">&nbsp;</span>
334
+ <span class="cline-any cline-neutral">&nbsp;</span>
335
+ <span class="cline-any cline-neutral">&nbsp;</span>
336
+ <span class="cline-any cline-neutral">&nbsp;</span>
337
+ <span class="cline-any cline-neutral">&nbsp;</span>
338
+ <span class="cline-any cline-neutral">&nbsp;</span>
339
+ <span class="cline-any cline-neutral">&nbsp;</span>
340
+ <span class="cline-any cline-neutral">&nbsp;</span>
341
+ <span class="cline-any cline-neutral">&nbsp;</span>
342
+ <span class="cline-any cline-neutral">&nbsp;</span>
343
+ <span class="cline-any cline-neutral">&nbsp;</span>
298
344
  <span class="cline-any cline-neutral">&nbsp;</span>
299
345
  <span class="cline-any cline-neutral">&nbsp;</span>
300
346
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -365,7 +411,7 @@
365
411
  <span class="cline-any cline-neutral">&nbsp;</span>
366
412
  <span class="cline-any cline-neutral">&nbsp;</span>
367
413
  <span class="cline-any cline-yes">9x</span>
368
- <span class="cline-any cline-neutral">&nbsp;</span>
414
+ <span class="cline-any cline-yes">9x</span>
369
415
  <span class="cline-any cline-yes">9x</span>
370
416
  <span class="cline-any cline-yes">9x</span>
371
417
  <span class="cline-any cline-yes">9x</span>
@@ -376,12 +422,20 @@
376
422
  <span class="cline-any cline-no">&nbsp;</span>
377
423
  <span class="cline-any cline-neutral">&nbsp;</span>
378
424
  <span class="cline-any cline-no">&nbsp;</span>
425
+ <span class="cline-any cline-no">&nbsp;</span>
426
+ <span class="cline-any cline-no">&nbsp;</span>
427
+ <span class="cline-any cline-neutral">&nbsp;</span>
379
428
  <span class="cline-any cline-neutral">&nbsp;</span>
380
429
  <span class="cline-any cline-neutral">&nbsp;</span>
381
430
  <span class="cline-any cline-neutral">&nbsp;</span>
382
431
  <span class="cline-any cline-neutral">&nbsp;</span>
383
432
  <span class="cline-any cline-neutral">&nbsp;</span>
384
433
  <span class="cline-any cline-no">&nbsp;</span>
434
+ <span class="cline-any cline-neutral">&nbsp;</span>
435
+ <span class="cline-any cline-neutral">&nbsp;</span>
436
+ <span class="cline-any cline-no">&nbsp;</span>
437
+ <span class="cline-any cline-neutral">&nbsp;</span>
438
+ <span class="cline-any cline-no">&nbsp;</span>
385
439
  <span class="cline-any cline-no">&nbsp;</span>
386
440
  <span class="cline-any cline-no">&nbsp;</span>
387
441
  <span class="cline-any cline-no">&nbsp;</span>
@@ -423,6 +477,8 @@
423
477
  <span class="cline-any cline-neutral">&nbsp;</span>
424
478
  <span class="cline-any cline-yes">3x</span>
425
479
  <span class="cline-any cline-neutral">&nbsp;</span>
480
+ <span class="cline-any cline-yes">3x</span>
481
+ <span class="cline-any cline-neutral">&nbsp;</span>
426
482
  <span class="cline-any cline-neutral">&nbsp;</span>
427
483
  <span class="cline-any cline-yes">9x</span>
428
484
  <span class="cline-any cline-yes">7x</span>
@@ -430,9 +486,6 @@
430
486
  <span class="cline-any cline-yes">5x</span>
431
487
  <span class="cline-any cline-yes">2x</span>
432
488
  <span class="cline-any cline-neutral">&nbsp;</span>
433
- <span class="cline-any cline-neutral">&nbsp;</span>
434
- <span class="cline-any cline-neutral">&nbsp;</span>
435
- <span class="cline-any cline-neutral">&nbsp;</span>
436
489
  <span class="cline-any cline-yes">2x</span>
437
490
  <span class="cline-any cline-yes">1x</span>
438
491
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -491,6 +544,7 @@
491
544
  <span class="cline-any cline-neutral">&nbsp;</span>
492
545
  <span class="cline-any cline-neutral">&nbsp;</span>
493
546
  <span class="cline-any cline-neutral">&nbsp;</span>
547
+ <span class="cline-any cline-neutral">&nbsp;</span>
494
548
  <span class="cline-any cline-yes">3x</span>
495
549
  <span class="cline-any cline-neutral">&nbsp;</span>
496
550
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -501,6 +555,8 @@
501
555
  <span class="cline-any cline-neutral">&nbsp;</span>
502
556
  <span class="cline-any cline-neutral">&nbsp;</span>
503
557
  <span class="cline-any cline-neutral">&nbsp;</span>
558
+ <span class="cline-any cline-neutral">&nbsp;</span>
559
+ <span class="cline-any cline-neutral">&nbsp;</span>
504
560
  <span class="cline-any cline-yes">11x</span>
505
561
  <span class="cline-any cline-neutral">&nbsp;</span>
506
562
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -525,14 +581,17 @@
525
581
  <span class="cline-any cline-neutral">&nbsp;</span>
526
582
  <span class="cline-any cline-neutral">&nbsp;</span>
527
583
  <span class="cline-any cline-neutral">&nbsp;</span>
528
- <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import React, { useEffect, useState, useCallback, useMemo } from "react";
584
+ <span class="cline-any cline-neutral">&nbsp;</span>
585
+ <span class="cline-any cline-neutral">&nbsp;</span>
586
+ <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import React, { useRef, useEffect, useState, useCallback, useMemo } from "react";
529
587
  import useMap from "../../hooks/useMap";
530
588
  import MlGeoJsonLayer from "../MlGeoJsonLayer/MlGeoJsonLayer";
531
589
  &nbsp;
532
- import { Button } from "@mui/material";
533
- import GpsFixedIcon from "@mui/icons-material/GpsFixed";
590
+ import { Button, SxProps } from "@mui/material";
591
+ import GpsFixedIcon from "@mui/icons-material/GpsFixed";
534
592
  &nbsp;
535
593
  import { point, circle, lineArc, Feature, Point } from "@turf/turf";
594
+ import { CircleLayerSpecification, FillLayerSpecification } from "maplibre-gl";
536
595
  &nbsp;
537
596
  interface MlFollowGpsProps {
538
597
  /**
@@ -557,13 +616,29 @@ interface MlFollowGpsProps {
557
616
  * By default, if showUserLocation is true, a transparent circle will be drawn around the user location
558
617
  * indicating the accuracy (95% confidence level) of the user's location. Set to false to disable.
559
618
  */
560
- showAccuracyCircle?: boolean,
619
+ showAccuracyCircle?: boolean;
561
620
  /**
562
- * position circle paint property object, that is passed to the MlGeoJsonLayer responsible for drawing the accuracy circle.
621
+ * Use the MapLibre.flyTo function to center the map to the current users position if true.
622
+ * Otherwise the MapLibre.setCenter function is used.
623
+ */
624
+ useFlyTo?: boolean;
625
+ /**
626
+ * Center map to current position once updated location data is recieved.
627
+ * "false" will center the map once on component activation and then display the updated user location on the map.
628
+ */
629
+ centerUserPosition?: boolean;
630
+ /**
631
+ * Orientation cone paint property object, that is passed to the MlGeoJsonLayer responsible for drawing the orientation cone polygon.
563
632
  * Use any available paint prop from layer type "fill".
564
633
  * https://maplibre.org/maplibre-gl-js-docs/style-spec/layers/#fill
565
634
  */
566
- circlePaint?: any;
635
+ orientationConePaint?: FillLayerSpecification["paint"];
636
+ /**
637
+ * Position circle paint property object, that is passed to the MlGeoJsonLayer responsible for drawing the position circle.
638
+ * Use any available paint prop from layer type "circle".
639
+ * https://maplibre.org/maplibre-gl-js-docs/style-spec/layers/#circle
640
+ */
641
+ circlePaint?: CircleLayerSpecification["paint"];
567
642
  /**
568
643
  * Active button font color
569
644
  */
@@ -573,15 +648,15 @@ interface MlFollowGpsProps {
573
648
  */
574
649
  offColor?: string;
575
650
  /**
576
- * Accuracy paint property object, that is passed to the MlGeoJsonLayer responsible for drawing the accuracy circle.
651
+ * Accuracy paint property object, that is passed to the MlGeoJsonLayer responsible for drawing the accuracy polygon.
577
652
  * Use any available paint prop from layer type "fill".
578
653
  * https://maplibre.org/maplibre-gl-js-docs/style-spec/layers/#fill
579
654
  */
580
- accuracyPaint?: any;
655
+ accuracyPaint?: FillLayerSpecification["paint"];
581
656
  /**
582
657
  * CSS style object that is applied to the button component
583
658
  */
584
- style?: any;
659
+ buttonSx?: SxProps | any;
585
660
  }
586
661
  &nbsp;
587
662
  /**
@@ -596,22 +671,30 @@ const MlFollowGps = (props: MlFollowGpsProps) =&gt; {
596
671
  });
597
672
  &nbsp;
598
673
  const [isFollowed, setIsFollowed] = useState(false);
599
- const [userLocationGeoJson, setUserLocationGeoJson] =
600
- useState&lt;Feature&lt;Point&gt;&gt;();
674
+ const [userLocationGeoJson, setUserLocationGeoJson] = useState&lt;Feature&lt;Point&gt;&gt;();
601
675
  const [locationAccessDenied, setLocationAccessDenied] = useState(false);
602
676
  const [accuracyGeoJson, setAccuracyGeoJson] = useState&lt;Feature&gt;();
603
677
  const [deviceOrientation, setDeviceOrientation] = useState(0);
678
+ const initiallyCentered = useRef(false);
604
679
  &nbsp;
605
680
  const getLocationSuccess = useCallback(
606
681
  <span class="fstat-no" title="function not covered" > (p</span>os) =&gt; {
607
682
  <span class="cstat-no" title="statement not covered" > if (!mapHook.map) <span class="cstat-no" title="statement not covered" >return;</span></span>
608
683
  &nbsp;
609
- <span class="cstat-no" title="statement not covered" > mapHook.map.map.flyTo({</span>
610
- center: [pos.coords.longitude, pos.coords.latitude],
611
- zoom: 18,
612
- speed: 1,
613
- curve: 1,
614
- });
684
+ <span class="cstat-no" title="statement not covered" > if ((!props.centerUserPosition &amp;&amp; !initiallyCentered.current) || props.centerUserPosition) {</span>
685
+ <span class="cstat-no" title="statement not covered" > if (props.useFlyTo) {</span>
686
+ <span class="cstat-no" title="statement not covered" > mapHook.map.map.flyTo({</span>
687
+ center: [pos.coords.longitude, pos.coords.latitude],
688
+ zoom: 18,
689
+ speed: 1,
690
+ curve: 1,
691
+ });
692
+ } else {
693
+ <span class="cstat-no" title="statement not covered" > mapHook.map.map.setCenter([pos.coords.longitude, pos.coords.latitude]);</span>
694
+ }
695
+ &nbsp;
696
+ <span class="cstat-no" title="statement not covered" > initiallyCentered.current = true;</span>
697
+ }
615
698
  <span class="cstat-no" title="statement not covered" > if (!props.showUserLocation) <span class="cstat-no" title="statement not covered" >return;</span></span>
616
699
  const geoJsonPoint = <span class="cstat-no" title="statement not covered" >point([pos.coords.longitude, pos.coords.latitude]);</span>
617
700
  <span class="cstat-no" title="statement not covered" > setUserLocationGeoJson(geoJsonPoint);</span>
@@ -651,6 +734,8 @@ const MlFollowGps = (props: MlFollowGpsProps) =&gt; {
651
734
  return () =&gt; {
652
735
  window.removeEventListener("deviceorientation", _handleOrientation);
653
736
  };
737
+ } else {
738
+ initiallyCentered.current = false;
654
739
  }
655
740
  return;
656
741
  }, [isFollowed]);
@@ -659,10 +744,7 @@ const MlFollowGps = (props: MlFollowGpsProps) =&gt; {
659
744
  if (!mapHook.map) return;
660
745
  &nbsp;
661
746
  if (isFollowed) {
662
- let _watchId = navigator.geolocation.watchPosition(
663
- getLocationSuccess,
664
- getLocationError
665
- );
747
+ let _watchId = navigator.geolocation.watchPosition(getLocationSuccess, getLocationError);
666
748
  &nbsp;
667
749
  return () =&gt; {
668
750
  navigator.geolocation.clearWatch(_watchId);
@@ -694,6 +776,7 @@ const MlFollowGps = (props: MlFollowGpsProps) =&gt; {
694
776
  "fill-color": "#0000ff",
695
777
  "fill-antialias": false,
696
778
  "fill-opacity": 0.3,
779
+ ...props.orientationConePaint,
697
780
  }}
698
781
  insertBeforeLayer={props.insertBeforeLayer}
699
782
  /&gt;
@@ -718,7 +801,7 @@ const MlFollowGps = (props: MlFollowGpsProps) =&gt; {
718
801
  sx={{
719
802
  zIndex: 1002,
720
803
  color: isFollowed ? props.onColor : props.offColor,
721
- ...props.style,
804
+ ...props.buttonSx,
722
805
  }}
723
806
  disabled={locationAccessDenied}
724
807
  onClick={() =&gt; {
@@ -726,7 +809,9 @@ const MlFollowGps = (props: MlFollowGpsProps) =&gt; {
726
809
  }}
727
810
  &gt;
728
811
  {" "}
729
- &lt;GpsFixedIcon sx={{ ...(props.style?.fontSize?{fontSize: props.style?.fontSize}:<span class="branch-1 cbranch-no" title="branch not covered" >{})</span> }} /&gt;{" "}
812
+ &lt;GpsFixedIcon
813
+ sx={{ ...(props.buttonSx?.fontSize ? { fontSize: props.buttonSx?.fontSize } : <span class="branch-1 cbranch-no" title="branch not covered" >{})</span> }}
814
+ /&gt;{" "}
730
815
  &lt;/Button&gt;
731
816
  &lt;/&gt;
732
817
  );
@@ -734,7 +819,7 @@ const MlFollowGps = (props: MlFollowGpsProps) =&gt; {
734
819
  &nbsp;
735
820
  MlFollowGps.defaultProps = {
736
821
  mapId: undefined,
737
- style: {
822
+ buttonSx: {
738
823
  minWidth: "30px",
739
824
  minHeight: "30px",
740
825
  width: "30px",
@@ -753,6 +838,8 @@ MlFollowGps.defaultProps = {
753
838
  showAccuracyCircle: true,
754
839
  showUserLocation: true,
755
840
  showOrientation: true,
841
+ centerUserPosition: true,
842
+ useFlyTo: false,
756
843
  };
757
844
  &nbsp;
758
845
  export default MlFollowGps;
@@ -763,7 +850,7 @@ export default MlFollowGps;
763
850
  <div class='footer quiet pad2 space-top1 center small'>
764
851
  Code coverage generated by
765
852
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
766
- at Tue Jul 19 2022 12:57:03 GMT+0000 (Coordinated Universal Time)
853
+ at Thu Aug 11 2022 13:20:32 GMT+0000 (Coordinated Universal Time)
767
854
  </div>
768
855
  <script src="../../../prettify.js"></script>
769
856
  <script>
@@ -23,16 +23,16 @@
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
26
- <span class="strong">60.78% </span>
26
+ <span class="strong">57.89% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>31/51</span>
28
+ <span class='fraction'>33/57</span>
29
29
  </div>
30
30
 
31
31
 
32
32
  <div class='fl pad1y space-right2'>
33
- <span class="strong">64% </span>
33
+ <span class="strong">50% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>16/25</span>
35
+ <span class='fraction'>16/32</span>
36
36
  </div>
37
37
 
38
38
 
@@ -44,9 +44,9 @@
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
- <span class="strong">62.5% </span>
47
+ <span class="strong">59.25% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>30/48</span>
49
+ <span class='fraction'>32/54</span>
50
50
  </div>
51
51
 
52
52
 
@@ -80,17 +80,17 @@
80
80
  </thead>
81
81
  <tbody><tr>
82
82
  <td class="file medium" data-value="MlFollowGps.tsx"><a href="MlFollowGps.tsx.html">MlFollowGps.tsx</a></td>
83
- <td data-value="60.78" class="pic medium">
84
- <div class="chart"><div class="cover-fill" style="width: 60%"></div><div class="cover-empty" style="width: 40%"></div></div>
83
+ <td data-value="57.89" class="pic medium">
84
+ <div class="chart"><div class="cover-fill" style="width: 57%"></div><div class="cover-empty" style="width: 43%"></div></div>
85
85
  </td>
86
- <td data-value="60.78" class="pct medium">60.78%</td>
87
- <td data-value="51" class="abs medium">31/51</td>
88
- <td data-value="64" class="pct medium">64%</td>
89
- <td data-value="25" class="abs medium">16/25</td>
86
+ <td data-value="57.89" class="pct medium">57.89%</td>
87
+ <td data-value="57" class="abs medium">33/57</td>
88
+ <td data-value="50" class="pct medium">50%</td>
89
+ <td data-value="32" class="abs medium">16/32</td>
90
90
  <td data-value="70" class="pct medium">70%</td>
91
91
  <td data-value="10" class="abs medium">7/10</td>
92
- <td data-value="62.5" class="pct medium">62.5%</td>
93
- <td data-value="48" class="abs medium">30/48</td>
92
+ <td data-value="59.25" class="pct medium">59.25%</td>
93
+ <td data-value="54" class="abs medium">32/54</td>
94
94
  </tr>
95
95
 
96
96
  </tbody>
@@ -101,7 +101,7 @@
101
101
  <div class='footer quiet pad2 space-top1 center small'>
102
102
  Code coverage generated by
103
103
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
104
- at Tue Jul 19 2022 12:57:03 GMT+0000 (Coordinated Universal Time)
104
+ at Thu Aug 11 2022 13:20:32 GMT+0000 (Coordinated Universal Time)
105
105
  </div>
106
106
  <script src="../../../prettify.js"></script>
107
107
  <script>
@@ -1201,7 +1201,7 @@ export default MlGPXViewer;
1201
1201
  <div class='footer quiet pad2 space-top1 center small'>
1202
1202
  Code coverage generated by
1203
1203
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
1204
- at Tue Jul 19 2022 12:57:03 GMT+0000 (Coordinated Universal Time)
1204
+ at Thu Aug 11 2022 13:20:32 GMT+0000 (Coordinated Universal Time)
1205
1205
  </div>
1206
1206
  <script src="../../../prettify.js"></script>
1207
1207
  <script>
@@ -1630,7 +1630,7 @@ export default toGeoJSON;
1630
1630
  <div class='footer quiet pad2 space-top1 center small'>
1631
1631
  Code coverage generated by
1632
1632
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
1633
- at Tue Jul 19 2022 12:57:03 GMT+0000 (Coordinated Universal Time)
1633
+ at Thu Aug 11 2022 13:20:32 GMT+0000 (Coordinated Universal Time)
1634
1634
  </div>
1635
1635
  <script src="../../../prettify.js"></script>
1636
1636
  <script>
@@ -116,7 +116,7 @@
116
116
  <div class='footer quiet pad2 space-top1 center small'>
117
117
  Code coverage generated by
118
118
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
119
- at Tue Jul 19 2022 12:57:03 GMT+0000 (Coordinated Universal Time)
119
+ at Thu Aug 11 2022 13:20:32 GMT+0000 (Coordinated Universal Time)
120
120
  </div>
121
121
  <script src="../../../prettify.js"></script>
122
122
  <script>
@@ -403,7 +403,7 @@ export default MlGeoJsonLayer;
403
403
  <div class='footer quiet pad2 space-top1 center small'>
404
404
  Code coverage generated by
405
405
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
406
- at Tue Jul 19 2022 12:57:03 GMT+0000 (Coordinated Universal Time)
406
+ at Thu Aug 11 2022 13:20:32 GMT+0000 (Coordinated Universal Time)
407
407
  </div>
408
408
  <script src="../../../prettify.js"></script>
409
409
  <script>